From 58a27fd9d37dfb57a150882143639de74bc934c7 Mon Sep 17 00:00:00 2001 From: Temuulen Ankhbayar Date: Sat, 7 Mar 2026 17:04:51 +0900 Subject: [PATCH] Revert "revert: remove storybook static build and route handler from production" This reverts commit 22ed3a409e53979eceea9361b20d87aefe5d497b. --- .gitignore | 1 - .../assets/AccountInfoDisplay-DWJQCkvO.js | 1 + .../AccountInfoDisplay.stories-CUbdeL1Y.js | 29 + .../AccountStatusCard.stories-v6lNJy7d.js | 1 + .../assets/ActivationForm-B27tsgwI.js | 1 + .../assets/ActivationForm.stories-Bofu_3Gr.js | 39 + .../assets/ActivationStep-DEd_rSq5.js | 1 + .../assets/ActivationStep.stories-CpnVfT1w.js | 41 + .../ActivityTimeline.stories-CXsaEik9.js | 63 + .../storybook/assets/AddonGroup-BSDkN5FG.js | 13 + .../assets/AddonGroup.stories-DTbPGvRs.js | 32 + .../storybook/assets/AddonsStep-BL22SA_U.js | 1 + .../assets/AddonsStep.stories-BngBiy8z.js | 37 + .../assets/AddonsStep.stories-CkxWuUHZ.js | 28 + .../assets/AddressCard.stories-ywY4b4nI.js | 23 + .../AddressConfirmation.stories-ouZdlC2E.js | 16 + .../storybook/assets/AddressForm-CCWrICXS.js | 7 + .../assets/AddressForm.stories-kK1qsigB.js | 52 + .../AddressStepJapan.stories-BKBuOfMf.js | 14 + .../storybook/assets/AlertBanner-Bnlyj1xc.js | 1 + .../assets/AlertBanner.stories-BzkAEqJu.js | 45 + .../storybook/assets/AnimatedCard-DFAiX4zP.js | 1 + .../assets/AnimatedCard.stories-DN795hbd.js | 23 + .../assets/AnimatedSection-CccjFZBU.js | 1 + .../AnimatedSection.stories-BJ1_MTYj.js | 25 + .../assets/ArrowDownTrayIcon-B9boZoDw.js | 1 + .../assets/ArrowLeftIcon-Cw1eswTb.js | 1 + .../assets/ArrowPathIcon-CZjG6RfV.js | 1 + .../assets/ArrowRightIcon--Vuz7Q7x.js | 1 + .../ArrowTopRightOnSquareIcon-CouP_SCN.js | 1 + .../storybook/assets/AuthLayout-DNr24V9g.js | 1 + .../assets/AuthLayout.stories-CPD8T6zA.js | 41 + .../storybook/assets/BackLink-C5IY6wzy.js | 1 + .../assets/BackLink.stories-C6OUjTR3.js | 17 + .../assets/BilingualValue-B84DkgyY.js | 2 + .../assets/BilingualValue.stories-o20kAFvD.js | 21 + .../assets/BillingStatusBadge-CQ1ic61y.js | 1 + .../BillingStatusBadge.stories-94yAz7EP.js | 43 + .../assets/BillingSummary.stories-CfjkLJys.js | 45 + .../assets/CTABanner.stories-FtL8SvK-.js | 1 + .../storybook/assets/CalendarIcon-DHpf4s_h.js | 1 + .../storybook/assets/CardBadge-CfIpSSwP.js | 7 + .../assets/CardBadge.stories-NUWDfuqZ.js | 57 + .../storybook/assets/CardPricing-FcGNWupq.js | 1 + .../assets/CardPricing.stories-U7XUVchG.js | 37 + .../ChangePlanModal.stories-lCI6-fC1.js | 17 + .../assets/Chapter.stories-CzDKpNWz.js | 18 + .../ChatBubbleLeftRightIcon-DfYi9O0H.js | 1 + .../assets/CheckCircleIcon-DrKOIitY.js | 1 + .../assets/CheckCircleIcon-Dva35lTP.js | 1 + .../storybook/assets/CheckIcon-BKJSKBEC.js | 1 + .../CheckoutErrorFallback.stories-BQ4DRuiU.js | 6 + .../assets/CheckoutShell.stories-DuLNb4b_.js | 16 + .../CheckoutStatusBanners.stories-ySBtOPrz.js | 88 + .../assets/ChevronRightIcon-CMQWsJeW.js | 1 + .../assets/ClearFiltersButton-CPCoyXk2.js | 4 + .../ClearFiltersButton.stories-DUreI73q.js | 17 + .../storybook/assets/ClockIcon-BFX11zAZ.js | 1 + .../assets/CollapsibleSection-CChCyQrB.js | 1 + .../CollapsibleSection.stories-C3ZRYcvr.js | 35 + .../assets/Color-YHDXOIA2-BJn0-NzM.js | 1 + .../CompleteAccountStep.stories-CCldt2ko.js | 1 + .../assets/ConfigurationStep-xBkwMSbV.js | 1 + .../ConfigurationStep.stories-BT7t6srM.js | 111 + ...nfigureLoadingSkeleton.stories-CLL7uosX.js | 1 + .../assets/ContactSection.stories-D7pujQk4.js | 21 + .../assets/CreditCardIcon-BBdrpHQs.js | 1 + .../assets/CurrencyYenIcon-Bf5bmWZc.js | 1 + .../assets/DashboardActivityItem-bwWapT3F.js | 1 + .../DashboardActivityItem.stories-n2rSPi9U.js | 79 + .../storybook/assets/DataTable-COYdcx41.js | 11 + .../assets/DataTable.stories-B-_ukgGA.js | 24 + .../assets/DataUsageChart.stories-Cl1vSSZO.js | 63 + .../storybook/assets/DetailHeader-C0ZsoM39.js | 1 + .../assets/DetailHeader.stories-DT70K3Kz.js | 44 + .../assets/DetailStatsGrid-CDkKTM-B.js | 4 + .../DetailStatsGrid.stories-D_oLpbK9.js | 50 + .../assets/DeviceCompatibility-BmppB3yg.js | 1 + .../DeviceCompatibility.stories-ChiNwKar.js | 1 + .../assets/DevicePhoneMobileIcon-SMwjWf6M.js | 1 + .../assets/DocsRenderer-CFRXHY34-CPSpsf6k.js | 575 + .../assets/DocumentTextIcon-Dk_xQMYi.js | 1 + ...EligibilityStatusBadge.stories-D7BkuDHU.js | 23 + .../storybook/assets/EnvelopeIcon-Bx94PDZ6.js | 1 + .../assets/ExclamationCircleIcon-jFfW0Ax_.js | 1 + .../ExclamationTriangleIcon-Di4DJZFg.js | 1 + .../storybook/assets/FeatureCard-DMnf0Xpf.js | 1 + .../assets/FeatureCard.stories-Bvgh88lM.js | 13 + .../assets/FilterDropdown-CUU04WmN.js | 3 + .../assets/FilterDropdown.stories-D8ZH63Jx.js | 35 + .../storybook/assets/FormField-C0UylACv.js | 1 + .../assets/FormField.stories-BKWGauBj.js | 33 + .../assets/FormStep.stories-Bg4DOFI9.js | 22 + .../storybook/assets/FunnelIcon-8nhbwqu0.js | 1 + .../storybook/assets/HelpPanel-rRaRP4jS.js | 1 + .../assets/HelpPanel.stories-BZhqwEh1.js | 13 + .../assets/HeroSection.stories-C94ZiyDm.js | 1 + .../storybook/assets/HowItWorks-CdRnFIF-.js | 2 + .../assets/HowItWorks.stories-Dtl3iW25.js | 15 + .../HowItWorksSection.stories-DyIW3oxb.js | 1 + ...ityVerificationSection.stories-CzqNiDfi.js | 46 + .../storybook/assets/InboxIcon-C_jmd85B.js | 1 + .../storybook/assets/InfoPanel-CAJ6XA4c.js | 1 + .../assets/InfoPanel.stories-CV1LECBr.js | 13 + .../assets/InformationCircleIcon-Clz7d-56.js | 1 + .../assets/InstallationOptions-CKiIJxBe.js | 1 + .../InstallationOptions.stories-BnnJh6fr.js | 26 + .../InstallationStep.stories-DyDnFBPU.js | 28 + ...InternetImportantNotes.stories-dl4oyU2O.js | 1 + ...nternetIneligibleState.stories-B41A9tyD.js | 7 + .../assets/InternetModalShell-jIX05857.js | 5 + .../InternetModalShell.stories-C56JHx5y.js | 40 + .../InternetOfferingCard.stories-D5z-_Afl.js | 65 + .../InternetPendingState.stories-DpnEkMP4.js | 11 + .../InternetPlanCard.stories-CU2Janbw.js | 77 + ...ternetTierPricingModal.stories-D3tV9nr6.js | 29 + .../assets/InvoiceItemRow.stories-BJs_DWl1.js | 28 + .../assets/InvoiceItems.stories-DCnfx23q.js | 26 + .../InvoiceSummaryBar.stories-B0IQCumt.js | 55 + .../assets/InvoiceTable.stories-B6vMrZIR.js | 33 + .../assets/InvoiceTotals.stories-JIfDPO6U.js | 19 + .../assets/JapanAddressForm-CUdYD2hV.js | 10 + .../JapanAddressForm.stories-CoHhyGL3.js | 62 + .../assets/LoadingSkeleton-D14suK9p.js | 1 + .../LoadingSkeleton.stories-pVMJG_-P.js | 1 + .../LoadingSkeletons.stories-CTSadyqV.js | 22 + .../assets/MarketingCheckbox-x7nAFt-_.js | 1 + .../MarketingCheckbox.stories-CqDvHF_f.js | 17 + .../storybook/assets/MetricCard-BR1xVIXz.js | 1 + .../assets/MetricCard.stories-CyBIfbtz.js | 37 + .../storybook/assets/MnpForm-j5Hck9cV.js | 1 + .../assets/MnpForm.stories-IRfEW44T.js | 41 + .../NewCustomerFields.stories-COzH0N4T.js | 49 + .../NotificationBell.stories-BrAAL4Pp.js | 13 + .../NotificationDropdown.stories-DRbE5Maq.js | 13 + .../assets/NotificationItem-Bz_1TnoF.js | 1 + .../NotificationItem.stories-feB8mKiH.js | 72 + .../assets/NumberPortingStep-Bx0osMV8.js | 1 + .../NumberPortingStep.stories-BhRYYpZi.js | 34 + .../assets/OrderCard.stories-D_TTGbJi.js | 63 + .../OrderCardSkeleton.stories-BWQRL5sV.js | 1 + .../OrderConfirmation.stories-QSfVClKV.js | 9 + .../OrderDetailSkeleton.stories-CsIQ7N0Z.js | 5 + .../OrderProgressTimeline.stories-BRHSqsEM.js | 48 + .../assets/OrderServiceIcon-B819JSbi.js | 1 + .../OrderServiceIcon.stories-4p-nQPSW.js | 26 + .../OrderSubmitSection.stories-DSyTqli0.js | 51 + .../storybook/assets/OrderSummary-nn5Jq6Ex.js | 11 + .../assets/OrderSummary.stories-Cocc3tug.js | 106 + .../assets/OtpExpiryDisplay-BGgB7Tk6.js | 1 + .../OtpExpiryDisplay.stories-DQ6_GOyY.js | 21 + .../storybook/assets/OtpInput-6kd_2E0v.js | 1 + .../assets/OtpInput.stories-BqMaWeSV.js | 21 + .../assets/OtpStep.stories-D8ODNRr5.js | 35 + .../storybook/assets/PageLayout-CxVUl3Jy.js | 1 + .../assets/PageLayout.stories-CS-cxF-k.js | 44 + .../assets/PaginationBar-D_k7ztRb.js | 1 + .../assets/PaginationBar.stories-Bs41ecrn.js | 36 + .../PasswordChangeCard.stories-BtEtBsXQ.js | 52 + .../assets/PasswordMatchIndicator-CoUjyU1r.js | 1 + ...PasswordMatchIndicator.stories-BPnGI6X8.js | 9 + .../assets/PasswordRequirements-Iusuj6EU.js | 1 + .../PasswordRequirements.stories-BuqA3NhU.js | 38 + .../assets/PasswordSection-DeRa0d5T.js | 4 + .../PasswordSection.stories-CUGb6CmS.js | 44 + .../PasswordSection.stories-Dd7-O2Dr.js | 53 + .../PasswordSection.stories-Dp7SWmeD.js | 64 + .../storybook/assets/PaymentForm-CHFxVgF8.js | 1 + .../assets/PaymentForm.stories-BSI-pusn.js | 40 + .../PaymentMethodSection.stories-CLy-Cpns.js | 43 + .../storybook/assets/PencilIcon-XQqOFsKO.js | 1 + .../PersonalInfoCard.stories-C5Meizce.js | 39 + .../assets/PersonalInfoFields-bPb0yCUu.js | 5 + .../PersonalInfoFields.stories-C6TPxiFP.js | 53 + .../PersonalInfoFields.stories-J4TMhu6x.js | 53 + .../storybook/assets/PlanCard-C4v7V-Z7.js | 1 + .../assets/PlanCard.stories-BU5JLd60.js | 23 + .../PlanComparisonGuide.stories-B4fWF-h8.js | 6 + .../assets/PlanHeader.stories-Bwxdrl89.js | 30 + .../storybook/assets/PlanNotFound-C-GLleMO.js | 1 + .../assets/PlanNotFound.stories-B9Ze1Ljr.js | 1 + .../assets/PlatinumNotice-BGYq2W5f.js | 1 + .../assets/PlatinumNotice.stories-Bl7xABNE.js | 9 + .../storybook/assets/PlusIcon-DGufmf06.js | 1 + .../assets/PricingDisplay-CBWoWrYN.js | 1 + .../assets/PricingDisplay.stories-Dag-riPk.js | 72 + .../storybook/assets/ProductCard-BA9t2pcL.js | 4 + .../assets/ProductCard.stories-BobRhhaF.js | 86 + .../assets/ProductComparison-DYrBj0kv.js | 1 + .../ProductComparison.stories-DP0gZ24B.js | 42 + ...ProfileLoadingSkeleton.stories-BU-PWcFX.js | 2 + .../assets/ProgressIndicator-zQZ52Xi8.js | 2 + .../ProgressIndicator.stories-Byfc_VnN.js | 26 + .../assets/ProgressSteps-weVdXcqu.js | 1 + .../assets/ProgressSteps.stories-B_lVP3rq.js | 34 + .../PublicOfferingCard.stories-_cAv-Hmi.js | 86 + .../assets/QueryClientProvider-D7wSf7Op.js | 1 + .../assets/QuickAction.stories-CaLW2ODx.js | 28 + .../ReissueSimModal.stories-CiG8OrwL.js | 17 + .../ResidenceCardUploadInput-CGlBhrJf.js | 1 + ...sidenceCardUploadInput.stories-lG6nqfJJ.js | 21 + .../assets/ReviewOrderStep-D8BlP-PO.js | 1 + .../ReviewOrderStep.stories-CLtZmMgB.js | 68 + .../ReviewOrderStep.stories-DQaT1PbR.js | 40 + .../assets/RouteLoading.stories-8Jpgwq8B.js | 20 + .../assets/SearchFilterBar-Ds19v0-P.js | 1 + .../SearchFilterBar.stories-DxwUci-Y.js | 41 + .../storybook/assets/SectionCard-BcUjc-7N.js | 1 + .../assets/SectionCard.stories-BOS6yKH_.js | 27 + .../assets/SectionHeader-Bo81Whai.js | 1 + .../assets/SectionHeader.stories-I03d34Dn.js | 11 + .../storybook/assets/ServerIcon-Cf--50di.js | 1 + .../storybook/assets/ServiceCTA-CNjQQIZn.js | 12 + .../assets/ServiceCTA.stories-B4ZpaOSF.js | 42 + .../storybook/assets/ServiceCard-BJEHFLba.js | 50 + .../assets/ServiceCard.stories-7dEyf33R.js | 52 + ...rviceConfigurationStep.stories-Kiqd8Qig.js | 49 + .../storybook/assets/ServiceFAQ-DgotQw6I.js | 1 + .../assets/ServiceFAQ.stories-BmgNqC-B.js | 20 + .../assets/ServiceHeroCard-C1DUlYtH.js | 1 + .../ServiceHeroCard.stories-B78coRsl.js | 28 + .../assets/ServiceHighlights-BOQJA3wz.js | 2 + .../ServiceHighlights.stories-D4GoZ_5i.js | 9 + .../ServicesBackLink.stories-B5g0HtZH.js | 16 + .../ServicesCarousel.stories-Ba6UYuYL.js | 6 + .../storybook/assets/ServicesHero-BxvrExEF.js | 1 + .../assets/ServicesHero.stories-DhI0dPyd.js | 43 + ...ervicesOverviewContent.stories-Dc0-GGC0.js | 25 + .../SessionTimeoutWarning.stories-BmTm_C0V.js | 9 + .../assets/SetPasswordForm-JAj2IB2C.js | 1 + .../assets/ShieldCheckIcon-BBoI5cMX.js | 1 + .../storybook/assets/SignalIcon-CUFdTwmf.js | 1 + .../assets/SimActions.stories-DbEDRfW_.js | 37 + .../SimCallingRates.stories-D_yJKnJY.js | 1 + .../SimConfigureView.stories-e1VMTQiC.js | 22 + .../assets/SimDetailsCard.stories-BduNzX1g.js | 54 + .../SimFeatureToggles.stories-BKP0N4tw.js | 45 + .../assets/SimFees.stories-MB7Og5JI.js | 1 + .../assets/SimHowItWorksSection-g7Gvkwka.js | 16 + .../SimHowItWorksSection.stories-C1fM1NrP.js | 1 + .../SimOrderProcess.stories-BPKj4bvH.js | 1 + .../storybook/assets/SimPlanCard-Ci7M9oOS.js | 2 + .../assets/SimPlanCard.stories-CNc_VaKU.js | 28 + .../SimPlanTypeSection.stories-DWYvRWOb.js | 18 + .../SimPlansContent.stories-B1C5gMOH.js | 63 + .../SimTypeComparison.stories-CnFVwS9R.js | 1 + .../assets/SimTypeSelector-m-grYnOJ.js | 1 + .../SimTypeSelector.stories-DpuYMLx1.js | 43 + .../storybook/assets/SimTypeStep-DDAAK-Br.js | 1 + .../assets/SimTypeStep.stories-B8JX6W0f.js | 28 + .../assets/SiteFooter.stories-Cz1zqKrh.js | 1 + .../assets/Squares2X2Icon-BMQM_Wy1.js | 1 + .../assets/StatCard.stories-ByQilz1z.js | 41 + .../assets/StatusBadge.stories-DyHwG2dd.js | 23 + .../storybook/assets/StepActions-x37eBfO8.js | 1 + .../assets/StepActions.stories-Dsc7u9rl.js | 43 + .../storybook/assets/StepContent-D57mrCa_.js | 1 + .../assets/StepContent.stories-nOPQZWRB.js | 40 + .../storybook/assets/StepHeader-D_31J9G_.js | 1 + .../assets/StepHeader.stories-BUAXqID2.js | 72 + .../assets/StepIndicator-chJR-dG8.js | 1 + .../assets/StepIndicator.stories-BdRLQJwc.js | 28 + .../storybook/assets/SubCard-1OZIPgEM.js | 1 + .../assets/SubCard.stories-FgNAFG2V.js | 37 + .../SubscriptionCard.stories-DOfk_HBP.js | 39 + .../SubscriptionDetails.stories-BlMknBO7.js | 38 + .../SubscriptionGridCard.stories-zp08ViBs.js | 28 + ...ubscriptionStatusBadge.stories-DhvN9bQ1.js | 29 + .../SubscriptionTable.stories-Crx6kQDq.js | 23 + .../assets/SuccessStep.stories-GoxphLJW.js | 27 + .../storybook/assets/SummaryStats-D6b7Am-p.js | 1 + .../assets/SummaryStats.stories-Bgs7dcLW.js | 31 + ...upportDownloadsSection.stories-CSqHhYLq.js | 6 + .../storybook/assets/TaskCard-BDKND5XO.js | 1 + .../assets/TaskCard.stories-DrZu2XPm.js | 64 + .../assets/TaskList.stories-Cqc9zFS6.js | 52 + .../assets/TermsCheckbox-CIu51LBN.js | 1 + .../assets/TermsCheckbox.stories-BKOMXPZQ.js | 23 + .../assets/TopUpModal.stories-vBYsF3Fd.js | 8 + .../storybook/assets/TruckIcon-C8f1NFCW.js | 1 + .../assets/TrustStrip.stories-DSpC9tt5.js | 1 + .../storybook/assets/UserIcon-BGV2Aso_.js | 1 + .../storybook/assets/UsersIcon-DB1YN4Bz.js | 1 + .../assets/ValidationStatus-Dsgne9Qr.js | 1 + .../ValidationStatus.stories-B5CKE5IR.js | 19 + .../VerificationCard.stories-B-cVK-j0.js | 52 + .../storybook/assets/VpnPlanCard-B5Xn3--e.js | 1 + .../assets/VpnPlanCard.stories-CVRnm0HA.js | 27 + .../VpnPlansContent.stories-CAnr4IUa.js | 71 + .../assets/WhyUsSection.stories-D1s7CEcr.js | 6 + .../storybook/assets/WifiIcon-BRIpHl8i.js | 1 + .../storybook/assets/XCircleIcon-CiVBnngB.js | 1 + .../storybook/assets/XMarkIcon-Bsb1W5VN.js | 1 + .../storybook/assets/ZipCodeInput-C0pEKKnJ.js | 11 + .../assets/ZipCodeInput.stories-BFozAGDn.js | 36 + .../assets/animated-container-DyAZ9gmw.js | 1 + .../animated-container.stories-Bl35KCC2.js | 16 + .../storybook/assets/arrow-left-DP07Iaeg.js | 6 + .../storybook/assets/arrow-right-BNMAry-H.js | 6 + .../storybook/assets/auth.store-CVqT-1lf.js | 1 + .../public/storybook/assets/badge-BdMsasyi.js | 1 + .../assets/badge.stories-CmRWDa_s.js | 35 + .../storybook/assets/building-2-C7pcwIk2.js | 6 + .../storybook/assets/button-C8_cybvS.js | 1 + .../assets/button.stories-ChBuZSRT.js | 41 + .../storybook/assets/calendar-6Kp0KrD6.js | 6 + .../public/storybook/assets/check-DmNqM64J.js | 6 + .../storybook/assets/checkbox-DahUyQbt.js | 1 + .../assets/checkbox.stories-eSDwLnhF.js | 29 + .../storybook/assets/chevron-down-CuGyZVZ6.js | 6 + .../assets/chevron-right-C40ybnlz.js | 6 + .../storybook/assets/chevron-up-xeH5nNuh.js | 6 + .../assets/chunk-XP5HYGXS-BHXC9YeQ.js | 1 + .../assets/circle-check-big-Bab09Iah.js | 6 + .../assets/circle-question-mark-CauZ9VmE.js | 6 + .../storybook/assets/client-B9ae35Ip.js | 33 + .../public/storybook/assets/clock-C92s7kSC.js | 6 + .../public/storybook/assets/cn-CDN07tui.js | 1 + .../storybook/assets/coerce-BirWdn0y.js | 39 + .../storybook/assets/compat-BjFfok0x.js | 1 + .../storybook/assets/constants-Cd_qStHG.js | 1 + .../storybook/assets/contract-CH57by1Y.js | 1 + .../storybook/assets/countries-CY6LSu2r.js | 1 + .../assets/createLucideIcon-CctB0W3q.js | 41 + .../storybook/assets/credit-card-AndvzjKW.js | 6 + .../storybook/assets/currency-CYvr7ZUf.js | 1 + .../public/storybook/assets/date-CJlSVdaN.js | 1 + .../public/storybook/assets/date-Csq1SWDU.js | 1 + .../eligibility-check.store-5rXvIK_a.js | 1 + .../storybook/assets/empty-state-DRUGJ9ip.js | 10 + .../assets/empty-state.stories-Bl3MzzdA.js | 25 + .../assets/entry-preview-Ccf12ZN0.js | 2 + .../assets/entry-preview-docs-CAgjVEX9.js | 46 + .../assets/error-boundary-DIRO_cDI.js | 1 + .../assets/error-fallbacks-kSPsNxmV.js | 3 + .../error-fallbacks.stories-BfOzoOVy.js | 7 + .../assets/error-handling-CCxr4Gjn.js | 1 + .../assets/error-message-DeFFz6H_.js | 1 + .../assets/error-message.stories-Bk6NeitC.js | 16 + .../storybook/assets/error-state-BSicqqE6.js | 1 + .../assets/error-state.stories-DNZf_lpp.js | 25 + .../public/storybook/assets/globe-Bhk-JDfS.js | 6 + .../storybook/assets/helpers-C5Jr5RNp.js | 1 + .../public/storybook/assets/house-pESumjO8.js | 6 + .../storybook/assets/iframe-Ce-ZSiNJ.js | 211 + .../storybook/assets/images/Hero Image.png | Bin 0 -> 318012 bytes .../public/storybook/assets/images/Why_us.png | Bin 0 -> 296772 bytes .../storybook/assets/images/about-us.png | Bin 0 -> 436771 bytes .../assets/images/acronis-quick-assist.svg | 4 + .../storybook/assets/images/arconis.png | Bin 0 -> 1243 bytes .../storybook/assets/images/assist logo.png | Bin 0 -> 33386 bytes .../public/storybook/assets/images/logo.svg | 9 + .../storybook/assets/images/teamviewer-qs.svg | 4 + .../storybook/assets/images/teamviewer.png | Bin 0 -> 1675 bytes .../public/storybook/assets/index-9c86oO0t.js | 1 + .../public/storybook/assets/index-B2V9nFGU.js | 1 + .../public/storybook/assets/index-B9TJ7cVi.js | 240 + .../public/storybook/assets/index-BKyvj4H5.js | 1 + .../public/storybook/assets/index-CNXKWNLp.js | 9 + .../public/storybook/assets/index-DXhM58Yq.js | 1 + .../public/storybook/assets/index-DgH-xKnr.js | 11 + .../public/storybook/assets/index-DrFu-skq.js | 6 + .../public/storybook/assets/index-JhL3uwfD.js | 9 + .../public/storybook/assets/info-Ck405yVi.js | 6 + .../storybook/assets/inline-toast-DQJ-O9wc.js | 1 + .../assets/inline-toast.stories-C7r26mb0.js | 22 + .../public/storybook/assets/input-BbGJiz0K.js | 1 + .../storybook/assets/input-otp-Cin9-T84.js | 25 + .../assets/input-otp.stories-CY0B6CKX.js | 36 + .../assets/input.stories-DQJEJSpR.js | 26 + .../invoice-list-skeleton.stories-QDelhEm_.js | 11 + .../storybook/assets/jsx-runtime-D_zvdyIk.js | 9 + .../public/storybook/assets/label-C25VH7yk.js | 1 + .../assets/label.stories-C7924pCJ.js | 9 + .../storybook/assets/loading-card-BIOTKPal.js | 8 + .../assets/loading-overlay-DMJTiFny.js | 1 + .../loading-overlay.stories-D9BE2_z8.js | 12 + .../public/storybook/assets/logo-f0fprTjz.js | 1 + .../storybook/assets/logo.stories-Bm5-ef62.js | 13 + .../storybook/assets/map-pin-Bm-ztWPO.js | 6 + .../storybook/assets/next-image-69WeRggt.js | 1 + .../storybook/assets/next-link-BmD4fPSy.js | 1 + .../assets/next-navigation-FtRxULo3.js | 1 + .../assets/password-input-D4khGh8v.js | 11 + .../assets/password-input.stories-Dzc6SamA.js | 14 + .../public/storybook/assets/phone-BtPh0Z3S.js | 6 + .../storybook/assets/planName-hiGpUxZ-.js | 1 + .../storybook/assets/preview-B-CtBlTG.css | 1 + .../storybook/assets/preview-B5ll_rq1.js | 2 + .../storybook/assets/preview-B8lJiyuQ.js | 34 + .../storybook/assets/preview-BBWR9nbA.js | 1 + .../storybook/assets/preview-BWzBA1C2.js | 396 + .../storybook/assets/preview-C15U0Fuq.js | 1 + .../storybook/assets/preview-CvbIS5ZJ.js | 1 + .../storybook/assets/preview-DD_OYowb.js | 1 + .../storybook/assets/preview-DGUiP6tS.js | 7 + .../public/storybook/assets/proxy-ZkTvaR74.js | 1 + .../storybook/assets/react-18-BRu_gB4I.js | 1 + .../public/storybook/assets/react-C6W-rNNW.js | 1 + .../storybook/assets/schema-B7GuHPAW.js | 1 + .../storybook/assets/schema-B8i337wU.js | 1 + .../storybook/assets/schema-Cvvg7S_W.js | 1 + .../storybook/assets/schema-DP3xEsUJ.js | 1 + .../storybook/assets/schema-Dok_SHcO.js | 1 + .../storybook/assets/schema-JsDJirqf.js | 1 + .../storybook/assets/search-DSeV2urL.js | 6 + .../storybook/assets/services-GtI5icT3.js | 21 + .../assets/services.store-BMSUdGRF.js | 1 + .../storybook/assets/settings-BcEpseup.js | 6 + .../storybook/assets/shield-check-CusqZMaY.js | 6 + .../storybook/assets/skeleton-ISCbfaf8.js | 6 + .../assets/skeleton.stories-BkI-NupL.js | 18 + .../storybook/assets/smartphone-Dk2P1VMI.js | 6 + .../storybook/assets/sparkles-q054t7ye.js | 6 + .../storybook/assets/spinner-mU4XywER.js | 1 + .../assets/spinner.stories-C7xyY-xZ.js | 20 + .../storybook/assets/status-badge-5pzxe45J.js | 30 + .../assets/status-indicator-C7K_QPts.js | 1 + .../status-indicator.stories-DpTAhFHz.js | 20 + .../storybook/assets/status-pill-wWp9xkwA.js | 1 + .../assets/status-pill.stories-DSoopyF4.js | 26 + .../storybook/assets/step-header-C0A-1Uoh.js | 1 + .../assets/step-header.stories-BOK8zhw2.js | 13 + ...-detail-stats-skeleton.stories-tQl8sJZu.js | 1 + ...n-stats-cards-skeleton.stories-BZw0VqVQ.js | 1 + ...ription-table-skeleton.stories-lLgx0vuW.js | 9 + .../storybook/assets/test-utils-Cye2pOmz.js | 9 + .../public/storybook/assets/text-CXa-DJQz.js | 1 + .../assets/triangle-alert-F5KF_Jv1.js | 6 + .../storybook/assets/use-in-view-Du9cy_vv.js | 1 + .../assets/useFormatCurrency-COf74_bd.js | 1 + .../storybook/assets/useQuery-tNNTAmfW.js | 1 + .../assets/useServicesBasePath-Cd3sXgEE.js | 1 + .../storybook/assets/useZodForm-ByUWfWhF.js | 1 + .../public/storybook/assets/users-BK0QOT9j.js | 6 + .../storybook/assets/view-toggle-ja_vihxz.js | 1 + .../assets/view-toggle.stories-C5Y_8-2K.js | 11 + .../public/storybook/assets/wifi-Df9jtwRo.js | 6 + .../storybook/assets/wrench-BgTvXjQb.js | 6 + .../public/storybook/assets/x-gzkF7O9v.js | 6 + apps/portal/public/storybook/favicon.svg | 1 + apps/portal/public/storybook/iframe.html | 666 + apps/portal/public/storybook/index.html | 169 + apps/portal/public/storybook/index.json | 1 + .../storybook/nunito-sans-bold-italic.woff2 | Bin 0 -> 49460 bytes .../public/storybook/nunito-sans-bold.woff2 | Bin 0 -> 47144 bytes .../public/storybook/nunito-sans-italic.woff2 | Bin 0 -> 49620 bytes .../storybook/nunito-sans-regular.woff2 | Bin 0 -> 47072 bytes apps/portal/public/storybook/project.json | 1 + .../essentials-actions-2/manager-bundle.js | 3 + .../manager-bundle.js | 12 + .../essentials-controls-1/manager-bundle.js | 405 + .../essentials-docs-3/manager-bundle.js | 245 + .../essentials-measure-7/manager-bundle.js | 3 + .../essentials-outline-8/manager-bundle.js | 3 + .../essentials-toolbars-6/manager-bundle.js | 3 + .../essentials-viewport-5/manager-bundle.js | 3 + .../common-manager-bundle.js | 3 + .../storybook/sb-common-assets/favicon.svg | 1 + .../nunito-sans-bold-italic.woff2 | Bin 0 -> 49460 bytes .../sb-common-assets/nunito-sans-bold.woff2 | Bin 0 -> 47144 bytes .../sb-common-assets/nunito-sans-italic.woff2 | Bin 0 -> 49620 bytes .../nunito-sans-regular.woff2 | Bin 0 -> 47072 bytes .../sb-manager/globals-module-info.js | 1052 + .../storybook/sb-manager/globals-runtime.js | 41775 ++++++++++++++++ .../public/storybook/sb-manager/globals.js | 48 + .../public/storybook/sb-manager/runtime.js | 12048 +++++ .../assets/AlertBanner.stories-DOdQIilL.js | 45 + .../assets/AnimatedCard.stories-BXIPNXt3.js | 23 + .../assets/ArrowLeftIcon-Cw1eswTb.js | 1 + .../assets/AuthLayout.stories-DZz_pZ6T.js | 41 + .../assets/BackLink.stories-rV_awW9f.js | 17 + .../assets/CheckCircleIcon-Dva35lTP.js | 1 + .../ClearFiltersButton.stories-B3uMvfsN.js | 20 + .../storybook/assets/ClockIcon-BFX11zAZ.js | 1 + .../assets/Color-YHDXOIA2-B4UdwnFh.js | 1 + .../assets/CreditCardIcon-BBdrpHQs.js | 1 + .../assets/CurrencyYenIcon-Bf5bmWZc.js | 1 + .../assets/DataTable.stories-9jmBKpAW.js | 34 + .../assets/DetailHeader.stories-Dok3UEJe.js | 44 + .../DetailStatsGrid.stories-DjYveHjz.js | 53 + .../assets/DocsRenderer-CFRXHY34-CKdfFmJg.js | 575 + .../assets/DocumentTextIcon-Dk_xQMYi.js | 1 + .../ExclamationTriangleIcon-Di4DJZFg.js | 1 + .../assets/FilterDropdown.stories-D536tOL9.js | 37 + .../assets/FormField.stories-C2WShvZw.js | 33 + .../storybook/assets/FunnelIcon-8nhbwqu0.js | 1 + .../storybook/assets/InboxIcon-C_jmd85B.js | 1 + .../LoadingSkeletons.stories-DQ8T1AQz.js | 22 + .../assets/MetricCard.stories-DWpqb3wA.js | 37 + .../OtpExpiryDisplay.stories-BznirJls.js | 26 + .../assets/OtpInput.stories-DhH4YHQk.js | 21 + .../assets/PageLayout.stories-aCxx3ucd.js | 44 + .../assets/PaginationBar.stories-CQfhWAai.js | 36 + .../storybook/assets/PlusIcon-DGufmf06.js | 1 + .../assets/ProgressSteps.stories-Dk6dYMFW.js | 34 + .../assets/RouteLoading.stories-8Jpgwq8B.js | 20 + .../SearchFilterBar.stories-FBPLk-Sw.js | 41 + .../assets/SectionCard.stories-BR2zVceL.js | 27 + .../assets/SectionHeader.stories-CL5R2SRs.js | 11 + .../assets/ServiceCard.stories-BeZnOswc.js | 106 + .../assets/SiteFooter.stories-B8spKYjp.js | 11 + .../assets/StatusBadge.stories-CDhPvuUx.js | 52 + .../assets/SubCard.stories-YLIiXo-d.js | 37 + .../assets/SummaryStats.stories-By_KVe6o.js | 31 + .../storybook/assets/WifiIcon-BRIpHl8i.js | 1 + .../storybook/assets/XCircleIcon-CiVBnngB.js | 1 + .../storybook/assets/XMarkIcon-Bsb1W5VN.js | 1 + .../assets/animated-container-C9_mETjS.js | 1 + .../animated-container.stories-Cf_6Zw47.js | 16 + .../storybook/assets/badge-THGKCln8.js | 1 + .../assets/badge.stories-DZ4UOTNd.js | 35 + .../storybook/assets/button-BRpS23Um.js | 1 + .../assets/button.stories-Dkdbpjdt.js | 41 + .../storybook/assets/checkbox-CkNip8U9.js | 1 + .../assets/checkbox.stories-CrrIoawq.js | 29 + .../assets/chunk-XP5HYGXS-BHXC9YeQ.js | 1 + .../storybook/assets/client-B9ae35Ip.js | 33 + .../storybook/storybook/assets/cn-CDN07tui.js | 1 + .../assets/createLucideIcon-CctB0W3q.js | 41 + .../storybook/assets/empty-state-Dn5ExuVh.js | 10 + .../assets/empty-state.stories-Bhs4l8D4.js | 25 + .../assets/entry-preview-CAWBCc2K.js | 2 + .../assets/entry-preview-docs-CAgjVEX9.js | 46 + .../error-fallbacks.stories-DFIGIIBw.js | 9 + .../assets/error-message-BPRj6j4J.js | 1 + .../assets/error-message.stories-DRYhOJUz.js | 16 + .../storybook/assets/error-state-BMb61Seu.js | 1 + .../assets/error-state.stories-Ce2qvwol.js | 25 + .../storybook/assets/iframe-NdUp8ZPe.js | 211 + .../storybook/assets/images/Hero Image.png | Bin 0 -> 318012 bytes .../storybook/assets/images/Why_us.png | Bin 0 -> 296772 bytes .../storybook/assets/images/about-us.png | Bin 0 -> 436771 bytes .../assets/images/acronis-quick-assist.svg | 4 + .../storybook/assets/images/arconis.png | Bin 0 -> 1243 bytes .../storybook/assets/images/assist logo.png | Bin 0 -> 33386 bytes .../storybook/assets/images/logo.svg | 9 + .../storybook/assets/images/teamviewer-qs.svg | 4 + .../storybook/assets/images/teamviewer.png | Bin 0 -> 1675 bytes .../storybook/assets/index-B2V9nFGU.js | 1 + .../storybook/assets/index-B9TJ7cVi.js | 240 + .../storybook/assets/index-CQmFDNXX.js | 39 + .../storybook/assets/index-DXhM58Yq.js | 1 + .../storybook/assets/index-DgH-xKnr.js | 11 + .../storybook/assets/index-DrFu-skq.js | 6 + .../storybook/assets/index-JhL3uwfD.js | 9 + .../storybook/assets/inline-toast-y-L-gsjq.js | 9 + .../assets/inline-toast.stories-DrCR8S2r.js | 22 + .../storybook/assets/input-Bg-jPFWQ.js | 1 + .../storybook/assets/input-otp-DDU8kUM3.js | 25 + .../assets/input-otp.stories-BlwBP14_.js | 36 + .../assets/input.stories-U4bYMfe_.js | 26 + .../storybook/assets/jsx-runtime-D_zvdyIk.js | 9 + .../storybook/assets/label-TA9gHgwO.js | 1 + .../assets/label.stories-Mp5FAWXg.js | 9 + .../storybook/assets/loading-card-n9jYaPbt.js | 4 + .../assets/loading-overlay-C2Ag0j6z.js | 1 + .../loading-overlay.stories-BfsvCn89.js | 12 + .../storybook/assets/logo-CI2jDcku.js | 1 + .../storybook/assets/logo.stories-pTyzo8sY.js | 13 + .../storybook/assets/next-link-BmD4fPSy.js | 1 + .../assets/password-input-Cxh0u3tk.js | 11 + .../assets/password-input.stories-D__5-VvC.js | 14 + .../storybook/assets/preview-2uvdJgJm.css | 1 + .../storybook/assets/preview-B8lJiyuQ.js | 34 + .../storybook/assets/preview-BBWR9nbA.js | 1 + .../storybook/assets/preview-BWzBA1C2.js | 396 + .../storybook/assets/preview-ClaTebrS.js | 2 + .../storybook/assets/preview-CvbIS5ZJ.js | 1 + .../storybook/assets/preview-DD_OYowb.js | 1 + .../storybook/assets/preview-DGUiP6tS.js | 7 + .../storybook/assets/preview-DaDnyu0x.js | 1 + .../storybook/assets/proxy-Di0I8TAG.js | 1 + .../storybook/assets/react-18-BRu_gB4I.js | 1 + .../storybook/assets/skeleton-yCggB9qT.js | 6 + .../assets/skeleton.stories-BlD1iGzU.js | 18 + .../storybook/assets/spinner-IhlMjpwE.js | 1 + .../assets/spinner.stories-Bm484wnj.js | 20 + .../assets/status-indicator-Co90vVuv.js | 1 + .../status-indicator.stories-D814U1Xj.js | 20 + .../storybook/assets/status-pill-CvbiHiG1.js | 1 + .../assets/status-pill.stories-W_e0Gwnn.js | 26 + .../storybook/assets/step-header-C0A-1Uoh.js | 1 + .../assets/step-header.stories-BOK8zhw2.js | 13 + .../storybook/assets/test-utils-Cye2pOmz.js | 9 + .../storybook/assets/view-toggle-_zfRjSfN.js | 1 + .../assets/view-toggle.stories-xavRyzWM.js | 11 + .../public/storybook/storybook/favicon.svg | 1 + .../public/storybook/storybook/iframe.html | 666 + .../public/storybook/storybook/index.html | 169 + .../public/storybook/storybook/index.json | 1 + .../storybook/nunito-sans-bold-italic.woff2 | Bin 0 -> 49460 bytes .../storybook/nunito-sans-bold.woff2 | Bin 0 -> 47144 bytes .../storybook/nunito-sans-italic.woff2 | Bin 0 -> 49620 bytes .../storybook/nunito-sans-regular.woff2 | Bin 0 -> 47072 bytes .../public/storybook/storybook/project.json | 1 + .../essentials-actions-2/manager-bundle.js | 3 + .../manager-bundle.js | 12 + .../essentials-controls-1/manager-bundle.js | 405 + .../essentials-docs-3/manager-bundle.js | 245 + .../essentials-measure-7/manager-bundle.js | 3 + .../essentials-outline-8/manager-bundle.js | 3 + .../essentials-toolbars-6/manager-bundle.js | 3 + .../essentials-viewport-5/manager-bundle.js | 3 + .../common-manager-bundle.js | 3 + .../storybook/sb-common-assets/favicon.svg | 1 + .../nunito-sans-bold-italic.woff2 | Bin 0 -> 49460 bytes .../sb-common-assets/nunito-sans-bold.woff2 | Bin 0 -> 47144 bytes .../sb-common-assets/nunito-sans-italic.woff2 | Bin 0 -> 49620 bytes .../nunito-sans-regular.woff2 | Bin 0 -> 47072 bytes .../sb-manager/globals-module-info.js | 1052 + .../storybook/sb-manager/globals-runtime.js | 41775 ++++++++++++++++ .../storybook/storybook/sb-manager/globals.js | 48 + .../storybook/storybook/sb-manager/runtime.js | 12048 +++++ .../src/app/storybook/[[...path]]/route.ts | 61 + image.png | Bin 0 -> 101516 bytes 616 files changed, 124343 insertions(+), 1 deletion(-) create mode 100644 apps/portal/public/storybook/assets/AccountInfoDisplay-DWJQCkvO.js create mode 100644 apps/portal/public/storybook/assets/AccountInfoDisplay.stories-CUbdeL1Y.js create mode 100644 apps/portal/public/storybook/assets/AccountStatusCard.stories-v6lNJy7d.js create mode 100644 apps/portal/public/storybook/assets/ActivationForm-B27tsgwI.js create mode 100644 apps/portal/public/storybook/assets/ActivationForm.stories-Bofu_3Gr.js create mode 100644 apps/portal/public/storybook/assets/ActivationStep-DEd_rSq5.js create mode 100644 apps/portal/public/storybook/assets/ActivationStep.stories-CpnVfT1w.js create mode 100644 apps/portal/public/storybook/assets/ActivityTimeline.stories-CXsaEik9.js create mode 100644 apps/portal/public/storybook/assets/AddonGroup-BSDkN5FG.js create mode 100644 apps/portal/public/storybook/assets/AddonGroup.stories-DTbPGvRs.js create mode 100644 apps/portal/public/storybook/assets/AddonsStep-BL22SA_U.js create mode 100644 apps/portal/public/storybook/assets/AddonsStep.stories-BngBiy8z.js create mode 100644 apps/portal/public/storybook/assets/AddonsStep.stories-CkxWuUHZ.js create mode 100644 apps/portal/public/storybook/assets/AddressCard.stories-ywY4b4nI.js create mode 100644 apps/portal/public/storybook/assets/AddressConfirmation.stories-ouZdlC2E.js create mode 100644 apps/portal/public/storybook/assets/AddressForm-CCWrICXS.js create mode 100644 apps/portal/public/storybook/assets/AddressForm.stories-kK1qsigB.js create mode 100644 apps/portal/public/storybook/assets/AddressStepJapan.stories-BKBuOfMf.js create mode 100644 apps/portal/public/storybook/assets/AlertBanner-Bnlyj1xc.js create mode 100644 apps/portal/public/storybook/assets/AlertBanner.stories-BzkAEqJu.js create mode 100644 apps/portal/public/storybook/assets/AnimatedCard-DFAiX4zP.js create mode 100644 apps/portal/public/storybook/assets/AnimatedCard.stories-DN795hbd.js create mode 100644 apps/portal/public/storybook/assets/AnimatedSection-CccjFZBU.js create mode 100644 apps/portal/public/storybook/assets/AnimatedSection.stories-BJ1_MTYj.js create mode 100644 apps/portal/public/storybook/assets/ArrowDownTrayIcon-B9boZoDw.js create mode 100644 apps/portal/public/storybook/assets/ArrowLeftIcon-Cw1eswTb.js create mode 100644 apps/portal/public/storybook/assets/ArrowPathIcon-CZjG6RfV.js create mode 100644 apps/portal/public/storybook/assets/ArrowRightIcon--Vuz7Q7x.js create mode 100644 apps/portal/public/storybook/assets/ArrowTopRightOnSquareIcon-CouP_SCN.js create mode 100644 apps/portal/public/storybook/assets/AuthLayout-DNr24V9g.js create mode 100644 apps/portal/public/storybook/assets/AuthLayout.stories-CPD8T6zA.js create mode 100644 apps/portal/public/storybook/assets/BackLink-C5IY6wzy.js create mode 100644 apps/portal/public/storybook/assets/BackLink.stories-C6OUjTR3.js create mode 100644 apps/portal/public/storybook/assets/BilingualValue-B84DkgyY.js create mode 100644 apps/portal/public/storybook/assets/BilingualValue.stories-o20kAFvD.js create mode 100644 apps/portal/public/storybook/assets/BillingStatusBadge-CQ1ic61y.js create mode 100644 apps/portal/public/storybook/assets/BillingStatusBadge.stories-94yAz7EP.js create mode 100644 apps/portal/public/storybook/assets/BillingSummary.stories-CfjkLJys.js create mode 100644 apps/portal/public/storybook/assets/CTABanner.stories-FtL8SvK-.js create mode 100644 apps/portal/public/storybook/assets/CalendarIcon-DHpf4s_h.js create mode 100644 apps/portal/public/storybook/assets/CardBadge-CfIpSSwP.js create mode 100644 apps/portal/public/storybook/assets/CardBadge.stories-NUWDfuqZ.js create mode 100644 apps/portal/public/storybook/assets/CardPricing-FcGNWupq.js create mode 100644 apps/portal/public/storybook/assets/CardPricing.stories-U7XUVchG.js create mode 100644 apps/portal/public/storybook/assets/ChangePlanModal.stories-lCI6-fC1.js create mode 100644 apps/portal/public/storybook/assets/Chapter.stories-CzDKpNWz.js create mode 100644 apps/portal/public/storybook/assets/ChatBubbleLeftRightIcon-DfYi9O0H.js create mode 100644 apps/portal/public/storybook/assets/CheckCircleIcon-DrKOIitY.js create mode 100644 apps/portal/public/storybook/assets/CheckCircleIcon-Dva35lTP.js create mode 100644 apps/portal/public/storybook/assets/CheckIcon-BKJSKBEC.js create mode 100644 apps/portal/public/storybook/assets/CheckoutErrorFallback.stories-BQ4DRuiU.js create mode 100644 apps/portal/public/storybook/assets/CheckoutShell.stories-DuLNb4b_.js create mode 100644 apps/portal/public/storybook/assets/CheckoutStatusBanners.stories-ySBtOPrz.js create mode 100644 apps/portal/public/storybook/assets/ChevronRightIcon-CMQWsJeW.js create mode 100644 apps/portal/public/storybook/assets/ClearFiltersButton-CPCoyXk2.js create mode 100644 apps/portal/public/storybook/assets/ClearFiltersButton.stories-DUreI73q.js create mode 100644 apps/portal/public/storybook/assets/ClockIcon-BFX11zAZ.js create mode 100644 apps/portal/public/storybook/assets/CollapsibleSection-CChCyQrB.js create mode 100644 apps/portal/public/storybook/assets/CollapsibleSection.stories-C3ZRYcvr.js create mode 100644 apps/portal/public/storybook/assets/Color-YHDXOIA2-BJn0-NzM.js create mode 100644 apps/portal/public/storybook/assets/CompleteAccountStep.stories-CCldt2ko.js create mode 100644 apps/portal/public/storybook/assets/ConfigurationStep-xBkwMSbV.js create mode 100644 apps/portal/public/storybook/assets/ConfigurationStep.stories-BT7t6srM.js create mode 100644 apps/portal/public/storybook/assets/ConfigureLoadingSkeleton.stories-CLL7uosX.js create mode 100644 apps/portal/public/storybook/assets/ContactSection.stories-D7pujQk4.js create mode 100644 apps/portal/public/storybook/assets/CreditCardIcon-BBdrpHQs.js create mode 100644 apps/portal/public/storybook/assets/CurrencyYenIcon-Bf5bmWZc.js create mode 100644 apps/portal/public/storybook/assets/DashboardActivityItem-bwWapT3F.js create mode 100644 apps/portal/public/storybook/assets/DashboardActivityItem.stories-n2rSPi9U.js create mode 100644 apps/portal/public/storybook/assets/DataTable-COYdcx41.js create mode 100644 apps/portal/public/storybook/assets/DataTable.stories-B-_ukgGA.js create mode 100644 apps/portal/public/storybook/assets/DataUsageChart.stories-Cl1vSSZO.js create mode 100644 apps/portal/public/storybook/assets/DetailHeader-C0ZsoM39.js create mode 100644 apps/portal/public/storybook/assets/DetailHeader.stories-DT70K3Kz.js create mode 100644 apps/portal/public/storybook/assets/DetailStatsGrid-CDkKTM-B.js create mode 100644 apps/portal/public/storybook/assets/DetailStatsGrid.stories-D_oLpbK9.js create mode 100644 apps/portal/public/storybook/assets/DeviceCompatibility-BmppB3yg.js create mode 100644 apps/portal/public/storybook/assets/DeviceCompatibility.stories-ChiNwKar.js create mode 100644 apps/portal/public/storybook/assets/DevicePhoneMobileIcon-SMwjWf6M.js create mode 100644 apps/portal/public/storybook/assets/DocsRenderer-CFRXHY34-CPSpsf6k.js create mode 100644 apps/portal/public/storybook/assets/DocumentTextIcon-Dk_xQMYi.js create mode 100644 apps/portal/public/storybook/assets/EligibilityStatusBadge.stories-D7BkuDHU.js create mode 100644 apps/portal/public/storybook/assets/EnvelopeIcon-Bx94PDZ6.js create mode 100644 apps/portal/public/storybook/assets/ExclamationCircleIcon-jFfW0Ax_.js create mode 100644 apps/portal/public/storybook/assets/ExclamationTriangleIcon-Di4DJZFg.js create mode 100644 apps/portal/public/storybook/assets/FeatureCard-DMnf0Xpf.js create mode 100644 apps/portal/public/storybook/assets/FeatureCard.stories-Bvgh88lM.js create mode 100644 apps/portal/public/storybook/assets/FilterDropdown-CUU04WmN.js create mode 100644 apps/portal/public/storybook/assets/FilterDropdown.stories-D8ZH63Jx.js create mode 100644 apps/portal/public/storybook/assets/FormField-C0UylACv.js create mode 100644 apps/portal/public/storybook/assets/FormField.stories-BKWGauBj.js create mode 100644 apps/portal/public/storybook/assets/FormStep.stories-Bg4DOFI9.js create mode 100644 apps/portal/public/storybook/assets/FunnelIcon-8nhbwqu0.js create mode 100644 apps/portal/public/storybook/assets/HelpPanel-rRaRP4jS.js create mode 100644 apps/portal/public/storybook/assets/HelpPanel.stories-BZhqwEh1.js create mode 100644 apps/portal/public/storybook/assets/HeroSection.stories-C94ZiyDm.js create mode 100644 apps/portal/public/storybook/assets/HowItWorks-CdRnFIF-.js create mode 100644 apps/portal/public/storybook/assets/HowItWorks.stories-Dtl3iW25.js create mode 100644 apps/portal/public/storybook/assets/HowItWorksSection.stories-DyIW3oxb.js create mode 100644 apps/portal/public/storybook/assets/IdentityVerificationSection.stories-CzqNiDfi.js create mode 100644 apps/portal/public/storybook/assets/InboxIcon-C_jmd85B.js create mode 100644 apps/portal/public/storybook/assets/InfoPanel-CAJ6XA4c.js create mode 100644 apps/portal/public/storybook/assets/InfoPanel.stories-CV1LECBr.js create mode 100644 apps/portal/public/storybook/assets/InformationCircleIcon-Clz7d-56.js create mode 100644 apps/portal/public/storybook/assets/InstallationOptions-CKiIJxBe.js create mode 100644 apps/portal/public/storybook/assets/InstallationOptions.stories-BnnJh6fr.js create mode 100644 apps/portal/public/storybook/assets/InstallationStep.stories-DyDnFBPU.js create mode 100644 apps/portal/public/storybook/assets/InternetImportantNotes.stories-dl4oyU2O.js create mode 100644 apps/portal/public/storybook/assets/InternetIneligibleState.stories-B41A9tyD.js create mode 100644 apps/portal/public/storybook/assets/InternetModalShell-jIX05857.js create mode 100644 apps/portal/public/storybook/assets/InternetModalShell.stories-C56JHx5y.js create mode 100644 apps/portal/public/storybook/assets/InternetOfferingCard.stories-D5z-_Afl.js create mode 100644 apps/portal/public/storybook/assets/InternetPendingState.stories-DpnEkMP4.js create mode 100644 apps/portal/public/storybook/assets/InternetPlanCard.stories-CU2Janbw.js create mode 100644 apps/portal/public/storybook/assets/InternetTierPricingModal.stories-D3tV9nr6.js create mode 100644 apps/portal/public/storybook/assets/InvoiceItemRow.stories-BJs_DWl1.js create mode 100644 apps/portal/public/storybook/assets/InvoiceItems.stories-DCnfx23q.js create mode 100644 apps/portal/public/storybook/assets/InvoiceSummaryBar.stories-B0IQCumt.js create mode 100644 apps/portal/public/storybook/assets/InvoiceTable.stories-B6vMrZIR.js create mode 100644 apps/portal/public/storybook/assets/InvoiceTotals.stories-JIfDPO6U.js create mode 100644 apps/portal/public/storybook/assets/JapanAddressForm-CUdYD2hV.js create mode 100644 apps/portal/public/storybook/assets/JapanAddressForm.stories-CoHhyGL3.js create mode 100644 apps/portal/public/storybook/assets/LoadingSkeleton-D14suK9p.js create mode 100644 apps/portal/public/storybook/assets/LoadingSkeleton.stories-pVMJG_-P.js create mode 100644 apps/portal/public/storybook/assets/LoadingSkeletons.stories-CTSadyqV.js create mode 100644 apps/portal/public/storybook/assets/MarketingCheckbox-x7nAFt-_.js create mode 100644 apps/portal/public/storybook/assets/MarketingCheckbox.stories-CqDvHF_f.js create mode 100644 apps/portal/public/storybook/assets/MetricCard-BR1xVIXz.js create mode 100644 apps/portal/public/storybook/assets/MetricCard.stories-CyBIfbtz.js create mode 100644 apps/portal/public/storybook/assets/MnpForm-j5Hck9cV.js create mode 100644 apps/portal/public/storybook/assets/MnpForm.stories-IRfEW44T.js create mode 100644 apps/portal/public/storybook/assets/NewCustomerFields.stories-COzH0N4T.js create mode 100644 apps/portal/public/storybook/assets/NotificationBell.stories-BrAAL4Pp.js create mode 100644 apps/portal/public/storybook/assets/NotificationDropdown.stories-DRbE5Maq.js create mode 100644 apps/portal/public/storybook/assets/NotificationItem-Bz_1TnoF.js create mode 100644 apps/portal/public/storybook/assets/NotificationItem.stories-feB8mKiH.js create mode 100644 apps/portal/public/storybook/assets/NumberPortingStep-Bx0osMV8.js create mode 100644 apps/portal/public/storybook/assets/NumberPortingStep.stories-BhRYYpZi.js create mode 100644 apps/portal/public/storybook/assets/OrderCard.stories-D_TTGbJi.js create mode 100644 apps/portal/public/storybook/assets/OrderCardSkeleton.stories-BWQRL5sV.js create mode 100644 apps/portal/public/storybook/assets/OrderConfirmation.stories-QSfVClKV.js create mode 100644 apps/portal/public/storybook/assets/OrderDetailSkeleton.stories-CsIQ7N0Z.js create mode 100644 apps/portal/public/storybook/assets/OrderProgressTimeline.stories-BRHSqsEM.js create mode 100644 apps/portal/public/storybook/assets/OrderServiceIcon-B819JSbi.js create mode 100644 apps/portal/public/storybook/assets/OrderServiceIcon.stories-4p-nQPSW.js create mode 100644 apps/portal/public/storybook/assets/OrderSubmitSection.stories-DSyTqli0.js create mode 100644 apps/portal/public/storybook/assets/OrderSummary-nn5Jq6Ex.js create mode 100644 apps/portal/public/storybook/assets/OrderSummary.stories-Cocc3tug.js create mode 100644 apps/portal/public/storybook/assets/OtpExpiryDisplay-BGgB7Tk6.js create mode 100644 apps/portal/public/storybook/assets/OtpExpiryDisplay.stories-DQ6_GOyY.js create mode 100644 apps/portal/public/storybook/assets/OtpInput-6kd_2E0v.js create mode 100644 apps/portal/public/storybook/assets/OtpInput.stories-BqMaWeSV.js create mode 100644 apps/portal/public/storybook/assets/OtpStep.stories-D8ODNRr5.js create mode 100644 apps/portal/public/storybook/assets/PageLayout-CxVUl3Jy.js create mode 100644 apps/portal/public/storybook/assets/PageLayout.stories-CS-cxF-k.js create mode 100644 apps/portal/public/storybook/assets/PaginationBar-D_k7ztRb.js create mode 100644 apps/portal/public/storybook/assets/PaginationBar.stories-Bs41ecrn.js create mode 100644 apps/portal/public/storybook/assets/PasswordChangeCard.stories-BtEtBsXQ.js create mode 100644 apps/portal/public/storybook/assets/PasswordMatchIndicator-CoUjyU1r.js create mode 100644 apps/portal/public/storybook/assets/PasswordMatchIndicator.stories-BPnGI6X8.js create mode 100644 apps/portal/public/storybook/assets/PasswordRequirements-Iusuj6EU.js create mode 100644 apps/portal/public/storybook/assets/PasswordRequirements.stories-BuqA3NhU.js create mode 100644 apps/portal/public/storybook/assets/PasswordSection-DeRa0d5T.js create mode 100644 apps/portal/public/storybook/assets/PasswordSection.stories-CUGb6CmS.js create mode 100644 apps/portal/public/storybook/assets/PasswordSection.stories-Dd7-O2Dr.js create mode 100644 apps/portal/public/storybook/assets/PasswordSection.stories-Dp7SWmeD.js create mode 100644 apps/portal/public/storybook/assets/PaymentForm-CHFxVgF8.js create mode 100644 apps/portal/public/storybook/assets/PaymentForm.stories-BSI-pusn.js create mode 100644 apps/portal/public/storybook/assets/PaymentMethodSection.stories-CLy-Cpns.js create mode 100644 apps/portal/public/storybook/assets/PencilIcon-XQqOFsKO.js create mode 100644 apps/portal/public/storybook/assets/PersonalInfoCard.stories-C5Meizce.js create mode 100644 apps/portal/public/storybook/assets/PersonalInfoFields-bPb0yCUu.js create mode 100644 apps/portal/public/storybook/assets/PersonalInfoFields.stories-C6TPxiFP.js create mode 100644 apps/portal/public/storybook/assets/PersonalInfoFields.stories-J4TMhu6x.js create mode 100644 apps/portal/public/storybook/assets/PlanCard-C4v7V-Z7.js create mode 100644 apps/portal/public/storybook/assets/PlanCard.stories-BU5JLd60.js create mode 100644 apps/portal/public/storybook/assets/PlanComparisonGuide.stories-B4fWF-h8.js create mode 100644 apps/portal/public/storybook/assets/PlanHeader.stories-Bwxdrl89.js create mode 100644 apps/portal/public/storybook/assets/PlanNotFound-C-GLleMO.js create mode 100644 apps/portal/public/storybook/assets/PlanNotFound.stories-B9Ze1Ljr.js create mode 100644 apps/portal/public/storybook/assets/PlatinumNotice-BGYq2W5f.js create mode 100644 apps/portal/public/storybook/assets/PlatinumNotice.stories-Bl7xABNE.js create mode 100644 apps/portal/public/storybook/assets/PlusIcon-DGufmf06.js create mode 100644 apps/portal/public/storybook/assets/PricingDisplay-CBWoWrYN.js create mode 100644 apps/portal/public/storybook/assets/PricingDisplay.stories-Dag-riPk.js create mode 100644 apps/portal/public/storybook/assets/ProductCard-BA9t2pcL.js create mode 100644 apps/portal/public/storybook/assets/ProductCard.stories-BobRhhaF.js create mode 100644 apps/portal/public/storybook/assets/ProductComparison-DYrBj0kv.js create mode 100644 apps/portal/public/storybook/assets/ProductComparison.stories-DP0gZ24B.js create mode 100644 apps/portal/public/storybook/assets/ProfileLoadingSkeleton.stories-BU-PWcFX.js create mode 100644 apps/portal/public/storybook/assets/ProgressIndicator-zQZ52Xi8.js create mode 100644 apps/portal/public/storybook/assets/ProgressIndicator.stories-Byfc_VnN.js create mode 100644 apps/portal/public/storybook/assets/ProgressSteps-weVdXcqu.js create mode 100644 apps/portal/public/storybook/assets/ProgressSteps.stories-B_lVP3rq.js create mode 100644 apps/portal/public/storybook/assets/PublicOfferingCard.stories-_cAv-Hmi.js create mode 100644 apps/portal/public/storybook/assets/QueryClientProvider-D7wSf7Op.js create mode 100644 apps/portal/public/storybook/assets/QuickAction.stories-CaLW2ODx.js create mode 100644 apps/portal/public/storybook/assets/ReissueSimModal.stories-CiG8OrwL.js create mode 100644 apps/portal/public/storybook/assets/ResidenceCardUploadInput-CGlBhrJf.js create mode 100644 apps/portal/public/storybook/assets/ResidenceCardUploadInput.stories-lG6nqfJJ.js create mode 100644 apps/portal/public/storybook/assets/ReviewOrderStep-D8BlP-PO.js create mode 100644 apps/portal/public/storybook/assets/ReviewOrderStep.stories-CLtZmMgB.js create mode 100644 apps/portal/public/storybook/assets/ReviewOrderStep.stories-DQaT1PbR.js create mode 100644 apps/portal/public/storybook/assets/RouteLoading.stories-8Jpgwq8B.js create mode 100644 apps/portal/public/storybook/assets/SearchFilterBar-Ds19v0-P.js create mode 100644 apps/portal/public/storybook/assets/SearchFilterBar.stories-DxwUci-Y.js create mode 100644 apps/portal/public/storybook/assets/SectionCard-BcUjc-7N.js create mode 100644 apps/portal/public/storybook/assets/SectionCard.stories-BOS6yKH_.js create mode 100644 apps/portal/public/storybook/assets/SectionHeader-Bo81Whai.js create mode 100644 apps/portal/public/storybook/assets/SectionHeader.stories-I03d34Dn.js create mode 100644 apps/portal/public/storybook/assets/ServerIcon-Cf--50di.js create mode 100644 apps/portal/public/storybook/assets/ServiceCTA-CNjQQIZn.js create mode 100644 apps/portal/public/storybook/assets/ServiceCTA.stories-B4ZpaOSF.js create mode 100644 apps/portal/public/storybook/assets/ServiceCard-BJEHFLba.js create mode 100644 apps/portal/public/storybook/assets/ServiceCard.stories-7dEyf33R.js create mode 100644 apps/portal/public/storybook/assets/ServiceConfigurationStep.stories-Kiqd8Qig.js create mode 100644 apps/portal/public/storybook/assets/ServiceFAQ-DgotQw6I.js create mode 100644 apps/portal/public/storybook/assets/ServiceFAQ.stories-BmgNqC-B.js create mode 100644 apps/portal/public/storybook/assets/ServiceHeroCard-C1DUlYtH.js create mode 100644 apps/portal/public/storybook/assets/ServiceHeroCard.stories-B78coRsl.js create mode 100644 apps/portal/public/storybook/assets/ServiceHighlights-BOQJA3wz.js create mode 100644 apps/portal/public/storybook/assets/ServiceHighlights.stories-D4GoZ_5i.js create mode 100644 apps/portal/public/storybook/assets/ServicesBackLink.stories-B5g0HtZH.js create mode 100644 apps/portal/public/storybook/assets/ServicesCarousel.stories-Ba6UYuYL.js create mode 100644 apps/portal/public/storybook/assets/ServicesHero-BxvrExEF.js create mode 100644 apps/portal/public/storybook/assets/ServicesHero.stories-DhI0dPyd.js create mode 100644 apps/portal/public/storybook/assets/ServicesOverviewContent.stories-Dc0-GGC0.js create mode 100644 apps/portal/public/storybook/assets/SessionTimeoutWarning.stories-BmTm_C0V.js create mode 100644 apps/portal/public/storybook/assets/SetPasswordForm-JAj2IB2C.js create mode 100644 apps/portal/public/storybook/assets/ShieldCheckIcon-BBoI5cMX.js create mode 100644 apps/portal/public/storybook/assets/SignalIcon-CUFdTwmf.js create mode 100644 apps/portal/public/storybook/assets/SimActions.stories-DbEDRfW_.js create mode 100644 apps/portal/public/storybook/assets/SimCallingRates.stories-D_yJKnJY.js create mode 100644 apps/portal/public/storybook/assets/SimConfigureView.stories-e1VMTQiC.js create mode 100644 apps/portal/public/storybook/assets/SimDetailsCard.stories-BduNzX1g.js create mode 100644 apps/portal/public/storybook/assets/SimFeatureToggles.stories-BKP0N4tw.js create mode 100644 apps/portal/public/storybook/assets/SimFees.stories-MB7Og5JI.js create mode 100644 apps/portal/public/storybook/assets/SimHowItWorksSection-g7Gvkwka.js create mode 100644 apps/portal/public/storybook/assets/SimHowItWorksSection.stories-C1fM1NrP.js create mode 100644 apps/portal/public/storybook/assets/SimOrderProcess.stories-BPKj4bvH.js create mode 100644 apps/portal/public/storybook/assets/SimPlanCard-Ci7M9oOS.js create mode 100644 apps/portal/public/storybook/assets/SimPlanCard.stories-CNc_VaKU.js create mode 100644 apps/portal/public/storybook/assets/SimPlanTypeSection.stories-DWYvRWOb.js create mode 100644 apps/portal/public/storybook/assets/SimPlansContent.stories-B1C5gMOH.js create mode 100644 apps/portal/public/storybook/assets/SimTypeComparison.stories-CnFVwS9R.js create mode 100644 apps/portal/public/storybook/assets/SimTypeSelector-m-grYnOJ.js create mode 100644 apps/portal/public/storybook/assets/SimTypeSelector.stories-DpuYMLx1.js create mode 100644 apps/portal/public/storybook/assets/SimTypeStep-DDAAK-Br.js create mode 100644 apps/portal/public/storybook/assets/SimTypeStep.stories-B8JX6W0f.js create mode 100644 apps/portal/public/storybook/assets/SiteFooter.stories-Cz1zqKrh.js create mode 100644 apps/portal/public/storybook/assets/Squares2X2Icon-BMQM_Wy1.js create mode 100644 apps/portal/public/storybook/assets/StatCard.stories-ByQilz1z.js create mode 100644 apps/portal/public/storybook/assets/StatusBadge.stories-DyHwG2dd.js create mode 100644 apps/portal/public/storybook/assets/StepActions-x37eBfO8.js create mode 100644 apps/portal/public/storybook/assets/StepActions.stories-Dsc7u9rl.js create mode 100644 apps/portal/public/storybook/assets/StepContent-D57mrCa_.js create mode 100644 apps/portal/public/storybook/assets/StepContent.stories-nOPQZWRB.js create mode 100644 apps/portal/public/storybook/assets/StepHeader-D_31J9G_.js create mode 100644 apps/portal/public/storybook/assets/StepHeader.stories-BUAXqID2.js create mode 100644 apps/portal/public/storybook/assets/StepIndicator-chJR-dG8.js create mode 100644 apps/portal/public/storybook/assets/StepIndicator.stories-BdRLQJwc.js create mode 100644 apps/portal/public/storybook/assets/SubCard-1OZIPgEM.js create mode 100644 apps/portal/public/storybook/assets/SubCard.stories-FgNAFG2V.js create mode 100644 apps/portal/public/storybook/assets/SubscriptionCard.stories-DOfk_HBP.js create mode 100644 apps/portal/public/storybook/assets/SubscriptionDetails.stories-BlMknBO7.js create mode 100644 apps/portal/public/storybook/assets/SubscriptionGridCard.stories-zp08ViBs.js create mode 100644 apps/portal/public/storybook/assets/SubscriptionStatusBadge.stories-DhvN9bQ1.js create mode 100644 apps/portal/public/storybook/assets/SubscriptionTable.stories-Crx6kQDq.js create mode 100644 apps/portal/public/storybook/assets/SuccessStep.stories-GoxphLJW.js create mode 100644 apps/portal/public/storybook/assets/SummaryStats-D6b7Am-p.js create mode 100644 apps/portal/public/storybook/assets/SummaryStats.stories-Bgs7dcLW.js create mode 100644 apps/portal/public/storybook/assets/SupportDownloadsSection.stories-CSqHhYLq.js create mode 100644 apps/portal/public/storybook/assets/TaskCard-BDKND5XO.js create mode 100644 apps/portal/public/storybook/assets/TaskCard.stories-DrZu2XPm.js create mode 100644 apps/portal/public/storybook/assets/TaskList.stories-Cqc9zFS6.js create mode 100644 apps/portal/public/storybook/assets/TermsCheckbox-CIu51LBN.js create mode 100644 apps/portal/public/storybook/assets/TermsCheckbox.stories-BKOMXPZQ.js create mode 100644 apps/portal/public/storybook/assets/TopUpModal.stories-vBYsF3Fd.js create mode 100644 apps/portal/public/storybook/assets/TruckIcon-C8f1NFCW.js create mode 100644 apps/portal/public/storybook/assets/TrustStrip.stories-DSpC9tt5.js create mode 100644 apps/portal/public/storybook/assets/UserIcon-BGV2Aso_.js create mode 100644 apps/portal/public/storybook/assets/UsersIcon-DB1YN4Bz.js create mode 100644 apps/portal/public/storybook/assets/ValidationStatus-Dsgne9Qr.js create mode 100644 apps/portal/public/storybook/assets/ValidationStatus.stories-B5CKE5IR.js create mode 100644 apps/portal/public/storybook/assets/VerificationCard.stories-B-cVK-j0.js create mode 100644 apps/portal/public/storybook/assets/VpnPlanCard-B5Xn3--e.js create mode 100644 apps/portal/public/storybook/assets/VpnPlanCard.stories-CVRnm0HA.js create mode 100644 apps/portal/public/storybook/assets/VpnPlansContent.stories-CAnr4IUa.js create mode 100644 apps/portal/public/storybook/assets/WhyUsSection.stories-D1s7CEcr.js create mode 100644 apps/portal/public/storybook/assets/WifiIcon-BRIpHl8i.js create mode 100644 apps/portal/public/storybook/assets/XCircleIcon-CiVBnngB.js create mode 100644 apps/portal/public/storybook/assets/XMarkIcon-Bsb1W5VN.js create mode 100644 apps/portal/public/storybook/assets/ZipCodeInput-C0pEKKnJ.js create mode 100644 apps/portal/public/storybook/assets/ZipCodeInput.stories-BFozAGDn.js create mode 100644 apps/portal/public/storybook/assets/animated-container-DyAZ9gmw.js create mode 100644 apps/portal/public/storybook/assets/animated-container.stories-Bl35KCC2.js create mode 100644 apps/portal/public/storybook/assets/arrow-left-DP07Iaeg.js create mode 100644 apps/portal/public/storybook/assets/arrow-right-BNMAry-H.js create mode 100644 apps/portal/public/storybook/assets/auth.store-CVqT-1lf.js create mode 100644 apps/portal/public/storybook/assets/badge-BdMsasyi.js create mode 100644 apps/portal/public/storybook/assets/badge.stories-CmRWDa_s.js create mode 100644 apps/portal/public/storybook/assets/building-2-C7pcwIk2.js create mode 100644 apps/portal/public/storybook/assets/button-C8_cybvS.js create mode 100644 apps/portal/public/storybook/assets/button.stories-ChBuZSRT.js create mode 100644 apps/portal/public/storybook/assets/calendar-6Kp0KrD6.js create mode 100644 apps/portal/public/storybook/assets/check-DmNqM64J.js create mode 100644 apps/portal/public/storybook/assets/checkbox-DahUyQbt.js create mode 100644 apps/portal/public/storybook/assets/checkbox.stories-eSDwLnhF.js create mode 100644 apps/portal/public/storybook/assets/chevron-down-CuGyZVZ6.js create mode 100644 apps/portal/public/storybook/assets/chevron-right-C40ybnlz.js create mode 100644 apps/portal/public/storybook/assets/chevron-up-xeH5nNuh.js create mode 100644 apps/portal/public/storybook/assets/chunk-XP5HYGXS-BHXC9YeQ.js create mode 100644 apps/portal/public/storybook/assets/circle-check-big-Bab09Iah.js create mode 100644 apps/portal/public/storybook/assets/circle-question-mark-CauZ9VmE.js create mode 100644 apps/portal/public/storybook/assets/client-B9ae35Ip.js create mode 100644 apps/portal/public/storybook/assets/clock-C92s7kSC.js create mode 100644 apps/portal/public/storybook/assets/cn-CDN07tui.js create mode 100644 apps/portal/public/storybook/assets/coerce-BirWdn0y.js create mode 100644 apps/portal/public/storybook/assets/compat-BjFfok0x.js create mode 100644 apps/portal/public/storybook/assets/constants-Cd_qStHG.js create mode 100644 apps/portal/public/storybook/assets/contract-CH57by1Y.js create mode 100644 apps/portal/public/storybook/assets/countries-CY6LSu2r.js create mode 100644 apps/portal/public/storybook/assets/createLucideIcon-CctB0W3q.js create mode 100644 apps/portal/public/storybook/assets/credit-card-AndvzjKW.js create mode 100644 apps/portal/public/storybook/assets/currency-CYvr7ZUf.js create mode 100644 apps/portal/public/storybook/assets/date-CJlSVdaN.js create mode 100644 apps/portal/public/storybook/assets/date-Csq1SWDU.js create mode 100644 apps/portal/public/storybook/assets/eligibility-check.store-5rXvIK_a.js create mode 100644 apps/portal/public/storybook/assets/empty-state-DRUGJ9ip.js create mode 100644 apps/portal/public/storybook/assets/empty-state.stories-Bl3MzzdA.js create mode 100644 apps/portal/public/storybook/assets/entry-preview-Ccf12ZN0.js create mode 100644 apps/portal/public/storybook/assets/entry-preview-docs-CAgjVEX9.js create mode 100644 apps/portal/public/storybook/assets/error-boundary-DIRO_cDI.js create mode 100644 apps/portal/public/storybook/assets/error-fallbacks-kSPsNxmV.js create mode 100644 apps/portal/public/storybook/assets/error-fallbacks.stories-BfOzoOVy.js create mode 100644 apps/portal/public/storybook/assets/error-handling-CCxr4Gjn.js create mode 100644 apps/portal/public/storybook/assets/error-message-DeFFz6H_.js create mode 100644 apps/portal/public/storybook/assets/error-message.stories-Bk6NeitC.js create mode 100644 apps/portal/public/storybook/assets/error-state-BSicqqE6.js create mode 100644 apps/portal/public/storybook/assets/error-state.stories-DNZf_lpp.js create mode 100644 apps/portal/public/storybook/assets/globe-Bhk-JDfS.js create mode 100644 apps/portal/public/storybook/assets/helpers-C5Jr5RNp.js create mode 100644 apps/portal/public/storybook/assets/house-pESumjO8.js create mode 100644 apps/portal/public/storybook/assets/iframe-Ce-ZSiNJ.js create mode 100644 apps/portal/public/storybook/assets/images/Hero Image.png create mode 100644 apps/portal/public/storybook/assets/images/Why_us.png create mode 100644 apps/portal/public/storybook/assets/images/about-us.png create mode 100644 apps/portal/public/storybook/assets/images/acronis-quick-assist.svg create mode 100644 apps/portal/public/storybook/assets/images/arconis.png create mode 100644 apps/portal/public/storybook/assets/images/assist logo.png create mode 100644 apps/portal/public/storybook/assets/images/logo.svg create mode 100644 apps/portal/public/storybook/assets/images/teamviewer-qs.svg create mode 100644 apps/portal/public/storybook/assets/images/teamviewer.png create mode 100644 apps/portal/public/storybook/assets/index-9c86oO0t.js create mode 100644 apps/portal/public/storybook/assets/index-B2V9nFGU.js create mode 100644 apps/portal/public/storybook/assets/index-B9TJ7cVi.js create mode 100644 apps/portal/public/storybook/assets/index-BKyvj4H5.js create mode 100644 apps/portal/public/storybook/assets/index-CNXKWNLp.js create mode 100644 apps/portal/public/storybook/assets/index-DXhM58Yq.js create mode 100644 apps/portal/public/storybook/assets/index-DgH-xKnr.js create mode 100644 apps/portal/public/storybook/assets/index-DrFu-skq.js create mode 100644 apps/portal/public/storybook/assets/index-JhL3uwfD.js create mode 100644 apps/portal/public/storybook/assets/info-Ck405yVi.js create mode 100644 apps/portal/public/storybook/assets/inline-toast-DQJ-O9wc.js create mode 100644 apps/portal/public/storybook/assets/inline-toast.stories-C7r26mb0.js create mode 100644 apps/portal/public/storybook/assets/input-BbGJiz0K.js create mode 100644 apps/portal/public/storybook/assets/input-otp-Cin9-T84.js create mode 100644 apps/portal/public/storybook/assets/input-otp.stories-CY0B6CKX.js create mode 100644 apps/portal/public/storybook/assets/input.stories-DQJEJSpR.js create mode 100644 apps/portal/public/storybook/assets/invoice-list-skeleton.stories-QDelhEm_.js create mode 100644 apps/portal/public/storybook/assets/jsx-runtime-D_zvdyIk.js create mode 100644 apps/portal/public/storybook/assets/label-C25VH7yk.js create mode 100644 apps/portal/public/storybook/assets/label.stories-C7924pCJ.js create mode 100644 apps/portal/public/storybook/assets/loading-card-BIOTKPal.js create mode 100644 apps/portal/public/storybook/assets/loading-overlay-DMJTiFny.js create mode 100644 apps/portal/public/storybook/assets/loading-overlay.stories-D9BE2_z8.js create mode 100644 apps/portal/public/storybook/assets/logo-f0fprTjz.js create mode 100644 apps/portal/public/storybook/assets/logo.stories-Bm5-ef62.js create mode 100644 apps/portal/public/storybook/assets/map-pin-Bm-ztWPO.js create mode 100644 apps/portal/public/storybook/assets/next-image-69WeRggt.js create mode 100644 apps/portal/public/storybook/assets/next-link-BmD4fPSy.js create mode 100644 apps/portal/public/storybook/assets/next-navigation-FtRxULo3.js create mode 100644 apps/portal/public/storybook/assets/password-input-D4khGh8v.js create mode 100644 apps/portal/public/storybook/assets/password-input.stories-Dzc6SamA.js create mode 100644 apps/portal/public/storybook/assets/phone-BtPh0Z3S.js create mode 100644 apps/portal/public/storybook/assets/planName-hiGpUxZ-.js create mode 100644 apps/portal/public/storybook/assets/preview-B-CtBlTG.css create mode 100644 apps/portal/public/storybook/assets/preview-B5ll_rq1.js create mode 100644 apps/portal/public/storybook/assets/preview-B8lJiyuQ.js create mode 100644 apps/portal/public/storybook/assets/preview-BBWR9nbA.js create mode 100644 apps/portal/public/storybook/assets/preview-BWzBA1C2.js create mode 100644 apps/portal/public/storybook/assets/preview-C15U0Fuq.js create mode 100644 apps/portal/public/storybook/assets/preview-CvbIS5ZJ.js create mode 100644 apps/portal/public/storybook/assets/preview-DD_OYowb.js create mode 100644 apps/portal/public/storybook/assets/preview-DGUiP6tS.js create mode 100644 apps/portal/public/storybook/assets/proxy-ZkTvaR74.js create mode 100644 apps/portal/public/storybook/assets/react-18-BRu_gB4I.js create mode 100644 apps/portal/public/storybook/assets/react-C6W-rNNW.js create mode 100644 apps/portal/public/storybook/assets/schema-B7GuHPAW.js create mode 100644 apps/portal/public/storybook/assets/schema-B8i337wU.js create mode 100644 apps/portal/public/storybook/assets/schema-Cvvg7S_W.js create mode 100644 apps/portal/public/storybook/assets/schema-DP3xEsUJ.js create mode 100644 apps/portal/public/storybook/assets/schema-Dok_SHcO.js create mode 100644 apps/portal/public/storybook/assets/schema-JsDJirqf.js create mode 100644 apps/portal/public/storybook/assets/search-DSeV2urL.js create mode 100644 apps/portal/public/storybook/assets/services-GtI5icT3.js create mode 100644 apps/portal/public/storybook/assets/services.store-BMSUdGRF.js create mode 100644 apps/portal/public/storybook/assets/settings-BcEpseup.js create mode 100644 apps/portal/public/storybook/assets/shield-check-CusqZMaY.js create mode 100644 apps/portal/public/storybook/assets/skeleton-ISCbfaf8.js create mode 100644 apps/portal/public/storybook/assets/skeleton.stories-BkI-NupL.js create mode 100644 apps/portal/public/storybook/assets/smartphone-Dk2P1VMI.js create mode 100644 apps/portal/public/storybook/assets/sparkles-q054t7ye.js create mode 100644 apps/portal/public/storybook/assets/spinner-mU4XywER.js create mode 100644 apps/portal/public/storybook/assets/spinner.stories-C7xyY-xZ.js create mode 100644 apps/portal/public/storybook/assets/status-badge-5pzxe45J.js create mode 100644 apps/portal/public/storybook/assets/status-indicator-C7K_QPts.js create mode 100644 apps/portal/public/storybook/assets/status-indicator.stories-DpTAhFHz.js create mode 100644 apps/portal/public/storybook/assets/status-pill-wWp9xkwA.js create mode 100644 apps/portal/public/storybook/assets/status-pill.stories-DSoopyF4.js create mode 100644 apps/portal/public/storybook/assets/step-header-C0A-1Uoh.js create mode 100644 apps/portal/public/storybook/assets/step-header.stories-BOK8zhw2.js create mode 100644 apps/portal/public/storybook/assets/subscription-detail-stats-skeleton.stories-tQl8sJZu.js create mode 100644 apps/portal/public/storybook/assets/subscription-stats-cards-skeleton.stories-BZw0VqVQ.js create mode 100644 apps/portal/public/storybook/assets/subscription-table-skeleton.stories-lLgx0vuW.js create mode 100644 apps/portal/public/storybook/assets/test-utils-Cye2pOmz.js create mode 100644 apps/portal/public/storybook/assets/text-CXa-DJQz.js create mode 100644 apps/portal/public/storybook/assets/triangle-alert-F5KF_Jv1.js create mode 100644 apps/portal/public/storybook/assets/use-in-view-Du9cy_vv.js create mode 100644 apps/portal/public/storybook/assets/useFormatCurrency-COf74_bd.js create mode 100644 apps/portal/public/storybook/assets/useQuery-tNNTAmfW.js create mode 100644 apps/portal/public/storybook/assets/useServicesBasePath-Cd3sXgEE.js create mode 100644 apps/portal/public/storybook/assets/useZodForm-ByUWfWhF.js create mode 100644 apps/portal/public/storybook/assets/users-BK0QOT9j.js create mode 100644 apps/portal/public/storybook/assets/view-toggle-ja_vihxz.js create mode 100644 apps/portal/public/storybook/assets/view-toggle.stories-C5Y_8-2K.js create mode 100644 apps/portal/public/storybook/assets/wifi-Df9jtwRo.js create mode 100644 apps/portal/public/storybook/assets/wrench-BgTvXjQb.js create mode 100644 apps/portal/public/storybook/assets/x-gzkF7O9v.js create mode 100644 apps/portal/public/storybook/favicon.svg create mode 100644 apps/portal/public/storybook/iframe.html create mode 100644 apps/portal/public/storybook/index.html create mode 100644 apps/portal/public/storybook/index.json create mode 100644 apps/portal/public/storybook/nunito-sans-bold-italic.woff2 create mode 100644 apps/portal/public/storybook/nunito-sans-bold.woff2 create mode 100644 apps/portal/public/storybook/nunito-sans-italic.woff2 create mode 100644 apps/portal/public/storybook/nunito-sans-regular.woff2 create mode 100644 apps/portal/public/storybook/project.json create mode 100644 apps/portal/public/storybook/sb-addons/essentials-actions-2/manager-bundle.js create mode 100644 apps/portal/public/storybook/sb-addons/essentials-backgrounds-4/manager-bundle.js create mode 100644 apps/portal/public/storybook/sb-addons/essentials-controls-1/manager-bundle.js create mode 100644 apps/portal/public/storybook/sb-addons/essentials-docs-3/manager-bundle.js create mode 100644 apps/portal/public/storybook/sb-addons/essentials-measure-7/manager-bundle.js create mode 100644 apps/portal/public/storybook/sb-addons/essentials-outline-8/manager-bundle.js create mode 100644 apps/portal/public/storybook/sb-addons/essentials-toolbars-6/manager-bundle.js create mode 100644 apps/portal/public/storybook/sb-addons/essentials-viewport-5/manager-bundle.js create mode 100644 apps/portal/public/storybook/sb-addons/storybook-core-core-server-presets-0/common-manager-bundle.js create mode 100644 apps/portal/public/storybook/sb-common-assets/favicon.svg create mode 100644 apps/portal/public/storybook/sb-common-assets/nunito-sans-bold-italic.woff2 create mode 100644 apps/portal/public/storybook/sb-common-assets/nunito-sans-bold.woff2 create mode 100644 apps/portal/public/storybook/sb-common-assets/nunito-sans-italic.woff2 create mode 100644 apps/portal/public/storybook/sb-common-assets/nunito-sans-regular.woff2 create mode 100644 apps/portal/public/storybook/sb-manager/globals-module-info.js create mode 100644 apps/portal/public/storybook/sb-manager/globals-runtime.js create mode 100644 apps/portal/public/storybook/sb-manager/globals.js create mode 100644 apps/portal/public/storybook/sb-manager/runtime.js create mode 100644 apps/portal/public/storybook/storybook/assets/AlertBanner.stories-DOdQIilL.js create mode 100644 apps/portal/public/storybook/storybook/assets/AnimatedCard.stories-BXIPNXt3.js create mode 100644 apps/portal/public/storybook/storybook/assets/ArrowLeftIcon-Cw1eswTb.js create mode 100644 apps/portal/public/storybook/storybook/assets/AuthLayout.stories-DZz_pZ6T.js create mode 100644 apps/portal/public/storybook/storybook/assets/BackLink.stories-rV_awW9f.js create mode 100644 apps/portal/public/storybook/storybook/assets/CheckCircleIcon-Dva35lTP.js create mode 100644 apps/portal/public/storybook/storybook/assets/ClearFiltersButton.stories-B3uMvfsN.js create mode 100644 apps/portal/public/storybook/storybook/assets/ClockIcon-BFX11zAZ.js create mode 100644 apps/portal/public/storybook/storybook/assets/Color-YHDXOIA2-B4UdwnFh.js create mode 100644 apps/portal/public/storybook/storybook/assets/CreditCardIcon-BBdrpHQs.js create mode 100644 apps/portal/public/storybook/storybook/assets/CurrencyYenIcon-Bf5bmWZc.js create mode 100644 apps/portal/public/storybook/storybook/assets/DataTable.stories-9jmBKpAW.js create mode 100644 apps/portal/public/storybook/storybook/assets/DetailHeader.stories-Dok3UEJe.js create mode 100644 apps/portal/public/storybook/storybook/assets/DetailStatsGrid.stories-DjYveHjz.js create mode 100644 apps/portal/public/storybook/storybook/assets/DocsRenderer-CFRXHY34-CKdfFmJg.js create mode 100644 apps/portal/public/storybook/storybook/assets/DocumentTextIcon-Dk_xQMYi.js create mode 100644 apps/portal/public/storybook/storybook/assets/ExclamationTriangleIcon-Di4DJZFg.js create mode 100644 apps/portal/public/storybook/storybook/assets/FilterDropdown.stories-D536tOL9.js create mode 100644 apps/portal/public/storybook/storybook/assets/FormField.stories-C2WShvZw.js create mode 100644 apps/portal/public/storybook/storybook/assets/FunnelIcon-8nhbwqu0.js create mode 100644 apps/portal/public/storybook/storybook/assets/InboxIcon-C_jmd85B.js create mode 100644 apps/portal/public/storybook/storybook/assets/LoadingSkeletons.stories-DQ8T1AQz.js create mode 100644 apps/portal/public/storybook/storybook/assets/MetricCard.stories-DWpqb3wA.js create mode 100644 apps/portal/public/storybook/storybook/assets/OtpExpiryDisplay.stories-BznirJls.js create mode 100644 apps/portal/public/storybook/storybook/assets/OtpInput.stories-DhH4YHQk.js create mode 100644 apps/portal/public/storybook/storybook/assets/PageLayout.stories-aCxx3ucd.js create mode 100644 apps/portal/public/storybook/storybook/assets/PaginationBar.stories-CQfhWAai.js create mode 100644 apps/portal/public/storybook/storybook/assets/PlusIcon-DGufmf06.js create mode 100644 apps/portal/public/storybook/storybook/assets/ProgressSteps.stories-Dk6dYMFW.js create mode 100644 apps/portal/public/storybook/storybook/assets/RouteLoading.stories-8Jpgwq8B.js create mode 100644 apps/portal/public/storybook/storybook/assets/SearchFilterBar.stories-FBPLk-Sw.js create mode 100644 apps/portal/public/storybook/storybook/assets/SectionCard.stories-BR2zVceL.js create mode 100644 apps/portal/public/storybook/storybook/assets/SectionHeader.stories-CL5R2SRs.js create mode 100644 apps/portal/public/storybook/storybook/assets/ServiceCard.stories-BeZnOswc.js create mode 100644 apps/portal/public/storybook/storybook/assets/SiteFooter.stories-B8spKYjp.js create mode 100644 apps/portal/public/storybook/storybook/assets/StatusBadge.stories-CDhPvuUx.js create mode 100644 apps/portal/public/storybook/storybook/assets/SubCard.stories-YLIiXo-d.js create mode 100644 apps/portal/public/storybook/storybook/assets/SummaryStats.stories-By_KVe6o.js create mode 100644 apps/portal/public/storybook/storybook/assets/WifiIcon-BRIpHl8i.js create mode 100644 apps/portal/public/storybook/storybook/assets/XCircleIcon-CiVBnngB.js create mode 100644 apps/portal/public/storybook/storybook/assets/XMarkIcon-Bsb1W5VN.js create mode 100644 apps/portal/public/storybook/storybook/assets/animated-container-C9_mETjS.js create mode 100644 apps/portal/public/storybook/storybook/assets/animated-container.stories-Cf_6Zw47.js create mode 100644 apps/portal/public/storybook/storybook/assets/badge-THGKCln8.js create mode 100644 apps/portal/public/storybook/storybook/assets/badge.stories-DZ4UOTNd.js create mode 100644 apps/portal/public/storybook/storybook/assets/button-BRpS23Um.js create mode 100644 apps/portal/public/storybook/storybook/assets/button.stories-Dkdbpjdt.js create mode 100644 apps/portal/public/storybook/storybook/assets/checkbox-CkNip8U9.js create mode 100644 apps/portal/public/storybook/storybook/assets/checkbox.stories-CrrIoawq.js create mode 100644 apps/portal/public/storybook/storybook/assets/chunk-XP5HYGXS-BHXC9YeQ.js create mode 100644 apps/portal/public/storybook/storybook/assets/client-B9ae35Ip.js create mode 100644 apps/portal/public/storybook/storybook/assets/cn-CDN07tui.js create mode 100644 apps/portal/public/storybook/storybook/assets/createLucideIcon-CctB0W3q.js create mode 100644 apps/portal/public/storybook/storybook/assets/empty-state-Dn5ExuVh.js create mode 100644 apps/portal/public/storybook/storybook/assets/empty-state.stories-Bhs4l8D4.js create mode 100644 apps/portal/public/storybook/storybook/assets/entry-preview-CAWBCc2K.js create mode 100644 apps/portal/public/storybook/storybook/assets/entry-preview-docs-CAgjVEX9.js create mode 100644 apps/portal/public/storybook/storybook/assets/error-fallbacks.stories-DFIGIIBw.js create mode 100644 apps/portal/public/storybook/storybook/assets/error-message-BPRj6j4J.js create mode 100644 apps/portal/public/storybook/storybook/assets/error-message.stories-DRYhOJUz.js create mode 100644 apps/portal/public/storybook/storybook/assets/error-state-BMb61Seu.js create mode 100644 apps/portal/public/storybook/storybook/assets/error-state.stories-Ce2qvwol.js create mode 100644 apps/portal/public/storybook/storybook/assets/iframe-NdUp8ZPe.js create mode 100644 apps/portal/public/storybook/storybook/assets/images/Hero Image.png create mode 100644 apps/portal/public/storybook/storybook/assets/images/Why_us.png create mode 100644 apps/portal/public/storybook/storybook/assets/images/about-us.png create mode 100644 apps/portal/public/storybook/storybook/assets/images/acronis-quick-assist.svg create mode 100644 apps/portal/public/storybook/storybook/assets/images/arconis.png create mode 100644 apps/portal/public/storybook/storybook/assets/images/assist logo.png create mode 100644 apps/portal/public/storybook/storybook/assets/images/logo.svg create mode 100644 apps/portal/public/storybook/storybook/assets/images/teamviewer-qs.svg create mode 100644 apps/portal/public/storybook/storybook/assets/images/teamviewer.png create mode 100644 apps/portal/public/storybook/storybook/assets/index-B2V9nFGU.js create mode 100644 apps/portal/public/storybook/storybook/assets/index-B9TJ7cVi.js create mode 100644 apps/portal/public/storybook/storybook/assets/index-CQmFDNXX.js create mode 100644 apps/portal/public/storybook/storybook/assets/index-DXhM58Yq.js create mode 100644 apps/portal/public/storybook/storybook/assets/index-DgH-xKnr.js create mode 100644 apps/portal/public/storybook/storybook/assets/index-DrFu-skq.js create mode 100644 apps/portal/public/storybook/storybook/assets/index-JhL3uwfD.js create mode 100644 apps/portal/public/storybook/storybook/assets/inline-toast-y-L-gsjq.js create mode 100644 apps/portal/public/storybook/storybook/assets/inline-toast.stories-DrCR8S2r.js create mode 100644 apps/portal/public/storybook/storybook/assets/input-Bg-jPFWQ.js create mode 100644 apps/portal/public/storybook/storybook/assets/input-otp-DDU8kUM3.js create mode 100644 apps/portal/public/storybook/storybook/assets/input-otp.stories-BlwBP14_.js create mode 100644 apps/portal/public/storybook/storybook/assets/input.stories-U4bYMfe_.js create mode 100644 apps/portal/public/storybook/storybook/assets/jsx-runtime-D_zvdyIk.js create mode 100644 apps/portal/public/storybook/storybook/assets/label-TA9gHgwO.js create mode 100644 apps/portal/public/storybook/storybook/assets/label.stories-Mp5FAWXg.js create mode 100644 apps/portal/public/storybook/storybook/assets/loading-card-n9jYaPbt.js create mode 100644 apps/portal/public/storybook/storybook/assets/loading-overlay-C2Ag0j6z.js create mode 100644 apps/portal/public/storybook/storybook/assets/loading-overlay.stories-BfsvCn89.js create mode 100644 apps/portal/public/storybook/storybook/assets/logo-CI2jDcku.js create mode 100644 apps/portal/public/storybook/storybook/assets/logo.stories-pTyzo8sY.js create mode 100644 apps/portal/public/storybook/storybook/assets/next-link-BmD4fPSy.js create mode 100644 apps/portal/public/storybook/storybook/assets/password-input-Cxh0u3tk.js create mode 100644 apps/portal/public/storybook/storybook/assets/password-input.stories-D__5-VvC.js create mode 100644 apps/portal/public/storybook/storybook/assets/preview-2uvdJgJm.css create mode 100644 apps/portal/public/storybook/storybook/assets/preview-B8lJiyuQ.js create mode 100644 apps/portal/public/storybook/storybook/assets/preview-BBWR9nbA.js create mode 100644 apps/portal/public/storybook/storybook/assets/preview-BWzBA1C2.js create mode 100644 apps/portal/public/storybook/storybook/assets/preview-ClaTebrS.js create mode 100644 apps/portal/public/storybook/storybook/assets/preview-CvbIS5ZJ.js create mode 100644 apps/portal/public/storybook/storybook/assets/preview-DD_OYowb.js create mode 100644 apps/portal/public/storybook/storybook/assets/preview-DGUiP6tS.js create mode 100644 apps/portal/public/storybook/storybook/assets/preview-DaDnyu0x.js create mode 100644 apps/portal/public/storybook/storybook/assets/proxy-Di0I8TAG.js create mode 100644 apps/portal/public/storybook/storybook/assets/react-18-BRu_gB4I.js create mode 100644 apps/portal/public/storybook/storybook/assets/skeleton-yCggB9qT.js create mode 100644 apps/portal/public/storybook/storybook/assets/skeleton.stories-BlD1iGzU.js create mode 100644 apps/portal/public/storybook/storybook/assets/spinner-IhlMjpwE.js create mode 100644 apps/portal/public/storybook/storybook/assets/spinner.stories-Bm484wnj.js create mode 100644 apps/portal/public/storybook/storybook/assets/status-indicator-Co90vVuv.js create mode 100644 apps/portal/public/storybook/storybook/assets/status-indicator.stories-D814U1Xj.js create mode 100644 apps/portal/public/storybook/storybook/assets/status-pill-CvbiHiG1.js create mode 100644 apps/portal/public/storybook/storybook/assets/status-pill.stories-W_e0Gwnn.js create mode 100644 apps/portal/public/storybook/storybook/assets/step-header-C0A-1Uoh.js create mode 100644 apps/portal/public/storybook/storybook/assets/step-header.stories-BOK8zhw2.js create mode 100644 apps/portal/public/storybook/storybook/assets/test-utils-Cye2pOmz.js create mode 100644 apps/portal/public/storybook/storybook/assets/view-toggle-_zfRjSfN.js create mode 100644 apps/portal/public/storybook/storybook/assets/view-toggle.stories-xavRyzWM.js create mode 100644 apps/portal/public/storybook/storybook/favicon.svg create mode 100644 apps/portal/public/storybook/storybook/iframe.html create mode 100644 apps/portal/public/storybook/storybook/index.html create mode 100644 apps/portal/public/storybook/storybook/index.json create mode 100644 apps/portal/public/storybook/storybook/nunito-sans-bold-italic.woff2 create mode 100644 apps/portal/public/storybook/storybook/nunito-sans-bold.woff2 create mode 100644 apps/portal/public/storybook/storybook/nunito-sans-italic.woff2 create mode 100644 apps/portal/public/storybook/storybook/nunito-sans-regular.woff2 create mode 100644 apps/portal/public/storybook/storybook/project.json create mode 100644 apps/portal/public/storybook/storybook/sb-addons/essentials-actions-2/manager-bundle.js create mode 100644 apps/portal/public/storybook/storybook/sb-addons/essentials-backgrounds-4/manager-bundle.js create mode 100644 apps/portal/public/storybook/storybook/sb-addons/essentials-controls-1/manager-bundle.js create mode 100644 apps/portal/public/storybook/storybook/sb-addons/essentials-docs-3/manager-bundle.js create mode 100644 apps/portal/public/storybook/storybook/sb-addons/essentials-measure-7/manager-bundle.js create mode 100644 apps/portal/public/storybook/storybook/sb-addons/essentials-outline-8/manager-bundle.js create mode 100644 apps/portal/public/storybook/storybook/sb-addons/essentials-toolbars-6/manager-bundle.js create mode 100644 apps/portal/public/storybook/storybook/sb-addons/essentials-viewport-5/manager-bundle.js create mode 100644 apps/portal/public/storybook/storybook/sb-addons/storybook-core-core-server-presets-0/common-manager-bundle.js create mode 100644 apps/portal/public/storybook/storybook/sb-common-assets/favicon.svg create mode 100644 apps/portal/public/storybook/storybook/sb-common-assets/nunito-sans-bold-italic.woff2 create mode 100644 apps/portal/public/storybook/storybook/sb-common-assets/nunito-sans-bold.woff2 create mode 100644 apps/portal/public/storybook/storybook/sb-common-assets/nunito-sans-italic.woff2 create mode 100644 apps/portal/public/storybook/storybook/sb-common-assets/nunito-sans-regular.woff2 create mode 100644 apps/portal/public/storybook/storybook/sb-manager/globals-module-info.js create mode 100644 apps/portal/public/storybook/storybook/sb-manager/globals-runtime.js create mode 100644 apps/portal/public/storybook/storybook/sb-manager/globals.js create mode 100644 apps/portal/public/storybook/storybook/sb-manager/runtime.js create mode 100644 apps/portal/src/app/storybook/[[...path]]/route.ts create mode 100644 image.png diff --git a/.gitignore b/.gitignore index 926a01ee..de2ccea6 100644 --- a/.gitignore +++ b/.gitignore @@ -130,7 +130,6 @@ public/ .out/ .storybook-out/ storybook-static/ -apps/portal/public/storybook/ # Temporary folders tmp/ diff --git a/apps/portal/public/storybook/assets/AccountInfoDisplay-DWJQCkvO.js b/apps/portal/public/storybook/assets/AccountInfoDisplay-DWJQCkvO.js new file mode 100644 index 00000000..1b69a114 --- /dev/null +++ b/apps/portal/public/storybook/assets/AccountInfoDisplay-DWJQCkvO.js @@ -0,0 +1 @@ +import{j as t}from"./jsx-runtime-D_zvdyIk.js";function m({firstName:r,lastName:n,email:o,address:s}){const i=e=>[e.postcode?`〒${e.postcode}`:"",e.prefectureJa||"",e.cityJa||"",e.townJa||"",e.streetAddress||"",e.buildingName||"",e.roomNumber||""].filter(Boolean).join("");return t.jsxs("div",{className:"p-4 rounded-lg bg-muted/50 border border-border",children:[t.jsx("p",{className:"text-sm text-muted-foreground mb-1",children:"Account details:"}),t.jsxs("p",{className:"font-medium text-foreground",children:[r," ",n]}),t.jsx("p",{className:"text-sm text-muted-foreground mt-1",children:o}),s&&t.jsx("p",{className:"text-sm text-muted-foreground mt-1",children:i(s)})]})}m.__docgenInfo={description:"",methods:[],displayName:"AccountInfoDisplay",props:{firstName:{required:!0,tsType:{name:"string"},description:""},lastName:{required:!0,tsType:{name:"string"},description:""},email:{required:!0,tsType:{name:"string"},description:""},address:{required:!1,tsType:{name:"union",raw:"AddressData | null | undefined",elements:[{name:"AddressData"},{name:"null"},{name:"undefined"}]},description:""}}};export{m as A}; diff --git a/apps/portal/public/storybook/assets/AccountInfoDisplay.stories-CUbdeL1Y.js b/apps/portal/public/storybook/assets/AccountInfoDisplay.stories-CUbdeL1Y.js new file mode 100644 index 00000000..a0381ca8 --- /dev/null +++ b/apps/portal/public/storybook/assets/AccountInfoDisplay.stories-CUbdeL1Y.js @@ -0,0 +1,29 @@ +import{A as l}from"./AccountInfoDisplay-DWJQCkvO.js";import"./jsx-runtime-D_zvdyIk.js";const f={title:"Features/Services/EligibilityCheck/AccountInfoDisplay",component:l,parameters:{layout:"centered"}},a={args:{firstName:"Taro",lastName:"Yamada",email:"taro.yamada@example.com"}},e={args:{firstName:"Taro",lastName:"Yamada",email:"taro.yamada@example.com",address:{postcode:"100-0001",prefectureJa:"東京都",cityJa:"千代田区",townJa:"千代田",streetAddress:"1-1-1",buildingName:"パレスビル",roomNumber:"101"}}},r={args:{firstName:"Jane",lastName:"Smith",email:"jane.smith@example.com",address:null}};var s,t,m;a.parameters={...a.parameters,docs:{...(s=a.parameters)==null?void 0:s.docs,source:{originalSource:`{ + args: { + firstName: "Taro", + lastName: "Yamada", + email: "taro.yamada@example.com" + } +}`,...(m=(t=a.parameters)==null?void 0:t.docs)==null?void 0:m.source}}};var o,n,d;e.parameters={...e.parameters,docs:{...(o=e.parameters)==null?void 0:o.docs,source:{originalSource:`{ + args: { + firstName: "Taro", + lastName: "Yamada", + email: "taro.yamada@example.com", + address: { + postcode: "100-0001", + prefectureJa: "\\u6771\\u4EAC\\u90FD", + cityJa: "\\u5343\\u4EE3\\u7530\\u533A", + townJa: "\\u5343\\u4EE3\\u7530", + streetAddress: "1-1-1", + buildingName: "\\u30D1\\u30EC\\u30B9\\u30D3\\u30EB", + roomNumber: "101" + } + } +}`,...(d=(n=e.parameters)==null?void 0:n.docs)==null?void 0:d.source}}};var c,i,u;r.parameters={...r.parameters,docs:{...(c=r.parameters)==null?void 0:c.docs,source:{originalSource:`{ + args: { + firstName: "Jane", + lastName: "Smith", + email: "jane.smith@example.com", + address: null + } +}`,...(u=(i=r.parameters)==null?void 0:i.docs)==null?void 0:u.source}}};const g=["Default","WithAddress","WithoutAddress"];export{a as Default,e as WithAddress,r as WithoutAddress,g as __namedExportsOrder,f as default}; diff --git a/apps/portal/public/storybook/assets/AccountStatusCard.stories-v6lNJy7d.js b/apps/portal/public/storybook/assets/AccountStatusCard.stories-v6lNJy7d.js new file mode 100644 index 00000000..c2022dcd --- /dev/null +++ b/apps/portal/public/storybook/assets/AccountStatusCard.stories-v6lNJy7d.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{F as c}from"./CheckCircleIcon-Dva35lTP.js";import"./index-JhL3uwfD.js";function o(){return e.jsxs("div",{className:"bg-card text-card-foreground rounded-2xl shadow-[var(--cp-card-shadow)] border border-border overflow-hidden",children:[e.jsx("div",{className:"px-6 py-4 border-b border-border",children:e.jsx("h3",{className:"text-lg font-semibold text-foreground",children:"Account Status"})}),e.jsx("div",{className:"p-6",children:e.jsxs("div",{className:"flex items-center",children:[e.jsx(c,{className:"h-8 w-8 text-success"}),e.jsxs("div",{className:"ml-3",children:[e.jsx("p",{className:"text-sm font-medium text-foreground",children:"Account Active"}),e.jsx("p",{className:"text-xs text-muted-foreground",children:"All systems operational"})]})]})})]})}o.__docgenInfo={description:"",methods:[],displayName:"AccountStatusCard"};const m={title:"Features/Dashboard/AccountStatusCard",component:o,parameters:{layout:"centered"},decorators:[d=>e.jsx("div",{style:{width:400},children:e.jsx(d,{})})]},r={};var s,t,a;r.parameters={...r.parameters,docs:{...(s=r.parameters)==null?void 0:s.docs,source:{originalSource:"{}",...(a=(t=r.parameters)==null?void 0:t.docs)==null?void 0:a.source}}};const u=["Default"];export{r as Default,u as __namedExportsOrder,m as default}; diff --git a/apps/portal/public/storybook/assets/ActivationForm-B27tsgwI.js b/apps/portal/public/storybook/assets/ActivationForm-B27tsgwI.js new file mode 100644 index 00000000..c75fa86d --- /dev/null +++ b/apps/portal/public/storybook/assets/ActivationForm-B27tsgwI.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{C as l}from"./CardPricing-FcGNWupq.js";const m=[{type:"Immediate",title:"Immediate Activation",description:"Activate as soon as your SIM arrives and is set up."},{type:"Scheduled",title:"Scheduled Activation",description:"Pick a go-live date within the next 30 days."}];function u({activationType:d,onActivationTypeChange:s,scheduledActivationDate:o,onScheduledActivationDateChange:c,errors:r,activationFee:n}){return e.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-6",children:m.map(t=>{const i=d===t.type;return e.jsxs("label",{className:`p-6 rounded-xl border text-left transition-shadow duration-[var(--cp-duration-normal)] focus-within:ring-2 focus-within:ring-ring focus-within:ring-offset-2 focus-within:ring-offset-background cursor-pointer flex flex-col gap-3 ${i?"border-primary bg-primary-soft shadow-[var(--cp-shadow-2)]":"border-border hover:bg-muted shadow-[var(--cp-shadow-1)] hover:shadow-[var(--cp-shadow-2)]"}`,children:[e.jsx("input",{type:"radio",name:"activationType",value:t.type,checked:i,onChange:a=>s(a.target.value),className:"sr-only"}),e.jsxs("div",{className:"flex items-start justify-between gap-3",children:[e.jsx("div",{className:"flex-1 min-w-0",children:e.jsx("h4",{className:"text-lg font-semibold text-foreground leading-tight",children:t.title})}),e.jsx("div",{className:`w-5 h-5 rounded-full border-2 flex items-center justify-center flex-shrink-0 ${i?"bg-primary border-primary":"border-border bg-card"}`,"aria-hidden":"true",children:i&&e.jsx("div",{className:"w-2 h-2 bg-primary-foreground rounded-full"})})]}),e.jsx("p",{className:"text-sm text-muted-foreground",children:t.description}),n?e.jsx("div",{className:"pt-3 border-t border-border",children:e.jsx(l,{alignment:"left",size:"md",oneTimePrice:n.amount})}):e.jsx("p",{className:"text-sm text-muted-foreground",children:"Activation fee shown at checkout"}),t.type==="Scheduled"&&e.jsx("div",{className:`overflow-hidden transition-[max-height,opacity] duration-300 ease-out ${i?"max-h-[260px] opacity-100":"max-h-0 opacity-0"}`,"aria-hidden":!i,children:e.jsxs("div",{className:"mt-3",children:[e.jsx("label",{htmlFor:"scheduledActivationDate",className:"block text-sm font-medium text-muted-foreground mb-1",children:"Preferred activation date *"}),e.jsx("input",{type:"date",id:"scheduledActivationDate",value:o,onChange:a=>c(a.target.value),min:new Date().toISOString().split("T")[0],max:new Date(Date.now()+720*60*60*1e3).toISOString().split("T")[0],className:"w-full px-3 py-2 border border-input rounded-md bg-background text-foreground focus:outline-none focus:ring-2 focus:ring-ring focus:border-ring transition-colors"}),r.scheduledActivationDate&&e.jsx("p",{className:"text-danger text-sm mt-1",children:r.scheduledActivationDate}),e.jsx("p",{className:"text-xs text-muted-foreground mt-1",children:"Weekend or holiday requests may be processed on the next business day."})]})})]},t.type)})})}u.__docgenInfo={description:"",methods:[],displayName:"ActivationForm",props:{activationType:{required:!0,tsType:{name:"union",raw:'"Immediate" | "Scheduled"',elements:[{name:"literal",value:'"Immediate"'},{name:"literal",value:'"Scheduled"'}]},description:""},onActivationTypeChange:{required:!0,tsType:{name:"signature",type:"function",raw:'(type: "Immediate" | "Scheduled") => void',signature:{arguments:[{type:{name:"union",raw:'"Immediate" | "Scheduled"',elements:[{name:"literal",value:'"Immediate"'},{name:"literal",value:'"Scheduled"'}]},name:"type"}],return:{name:"void"}}},description:""},scheduledActivationDate:{required:!0,tsType:{name:"string"},description:""},onScheduledActivationDateChange:{required:!0,tsType:{name:"signature",type:"function",raw:"(date: string) => void",signature:{arguments:[{type:{name:"string"},name:"date"}],return:{name:"void"}}},description:""},errors:{required:!0,tsType:{name:"Record",elements:[{name:"string"},{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}]}],raw:"Record"},description:""},activationFee:{required:!1,tsType:{name:"union",raw:"ActivationFeeDetails | undefined",elements:[{name:"ActivationFeeDetails"},{name:"undefined"}]},description:""}}};export{u as A}; diff --git a/apps/portal/public/storybook/assets/ActivationForm.stories-Bofu_3Gr.js b/apps/portal/public/storybook/assets/ActivationForm.stories-Bofu_3Gr.js new file mode 100644 index 00000000..4b829b03 --- /dev/null +++ b/apps/portal/public/storybook/assets/ActivationForm.stories-Bofu_3Gr.js @@ -0,0 +1,39 @@ +import{A}from"./ActivationForm-B27tsgwI.js";import"./jsx-runtime-D_zvdyIk.js";import"./CardPricing-FcGNWupq.js";import"./CurrencyYenIcon-Bf5bmWZc.js";import"./index-JhL3uwfD.js";const T={title:"Features/Services/SIM/ActivationForm",component:A,parameters:{layout:"centered"}},e={args:{activationType:"Immediate",onActivationTypeChange:()=>{},scheduledActivationDate:"",onScheduledActivationDateChange:()=>{},errors:{}}},a={args:{activationType:"Scheduled",onActivationTypeChange:()=>{},scheduledActivationDate:"2026-04-01",onScheduledActivationDateChange:()=>{},errors:{}}},t={args:{activationType:"Immediate",onActivationTypeChange:()=>{},scheduledActivationDate:"",onScheduledActivationDateChange:()=>{},errors:{},activationFee:{name:"Activation Fee",amount:1500}}},n={args:{activationType:"Scheduled",onActivationTypeChange:()=>{},scheduledActivationDate:"",onScheduledActivationDateChange:()=>{},errors:{scheduledActivationDate:"Please select a valid date"}}};var o,i,r;e.parameters={...e.parameters,docs:{...(o=e.parameters)==null?void 0:o.docs,source:{originalSource:`{ + args: { + activationType: "Immediate", + onActivationTypeChange: () => {}, + scheduledActivationDate: "", + onScheduledActivationDateChange: () => {}, + errors: {} + } +}`,...(r=(i=e.parameters)==null?void 0:i.docs)==null?void 0:r.source}}};var c,s,d;a.parameters={...a.parameters,docs:{...(c=a.parameters)==null?void 0:c.docs,source:{originalSource:`{ + args: { + activationType: "Scheduled", + onActivationTypeChange: () => {}, + scheduledActivationDate: "2026-04-01", + onScheduledActivationDateChange: () => {}, + errors: {} + } +}`,...(d=(s=a.parameters)==null?void 0:s.docs)==null?void 0:d.source}}};var v,h,m;t.parameters={...t.parameters,docs:{...(v=t.parameters)==null?void 0:v.docs,source:{originalSource:`{ + args: { + activationType: "Immediate", + onActivationTypeChange: () => {}, + scheduledActivationDate: "", + onScheduledActivationDateChange: () => {}, + errors: {}, + activationFee: { + name: "Activation Fee", + amount: 1500 + } + } +}`,...(m=(h=t.parameters)==null?void 0:h.docs)==null?void 0:m.source}}};var p,u,l;n.parameters={...n.parameters,docs:{...(p=n.parameters)==null?void 0:p.docs,source:{originalSource:`{ + args: { + activationType: "Scheduled", + onActivationTypeChange: () => {}, + scheduledActivationDate: "", + onScheduledActivationDateChange: () => {}, + errors: { + scheduledActivationDate: "Please select a valid date" + } + } +}`,...(l=(u=n.parameters)==null?void 0:u.docs)==null?void 0:l.source}}};const F=["Immediate","Scheduled","WithActivationFee","WithDateError"];export{e as Immediate,a as Scheduled,t as WithActivationFee,n as WithDateError,F as __namedExportsOrder,T as default}; diff --git a/apps/portal/public/storybook/assets/ActivationStep-DEd_rSq5.js b/apps/portal/public/storybook/assets/ActivationStep-DEd_rSq5.js new file mode 100644 index 00000000..ef5185b4 --- /dev/null +++ b/apps/portal/public/storybook/assets/ActivationStep-DEd_rSq5.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import"./DataTable-COYdcx41.js";import"./FormField-C0UylACv.js";import"./OtpInput-6kd_2E0v.js";import"./OtpExpiryDisplay-BGgB7Tk6.js";import"./SearchFilterBar-Ds19v0-P.js";import"./PaginationBar-D_k7ztRb.js";import"./DetailHeader-C0ZsoM39.js";import"./AlertBanner-Bnlyj1xc.js";import"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import"./error-state-BSicqqE6.js";import"./index-BKyvj4H5.js";import"./SectionHeader-Bo81Whai.js";import"./ProgressSteps-weVdXcqu.js";import"./SubCard-1OZIPgEM.js";import{A as d}from"./AnimatedCard-DFAiX4zP.js";import"./ServiceCard-BJEHFLba.js";import"./SummaryStats-D6b7Am-p.js";import"./FilterDropdown-CUU04WmN.js";import"./ClearFiltersButton-CPCoyXk2.js";import"./DetailStatsGrid-CDkKTM-B.js";import"./SectionCard-BcUjc-7N.js";import"./MetricCard-BR1xVIXz.js";import"./BackLink-C5IY6wzy.js";import"./status-badge-5pzxe45J.js";import"./error-boundary-DIRO_cDI.js";import"./error-fallbacks-kSPsNxmV.js";import{B as r}from"./button-C8_cybvS.js";import"./input-BbGJiz0K.js";import"./password-input-D4khGh8v.js";import"./checkbox-DahUyQbt.js";import"./label-C25VH7yk.js";import"./error-message-DeFFz6H_.js";import"./status-pill-wWp9xkwA.js";import"./badge-BdMsasyi.js";import"./spinner-mU4XywER.js";import"./loading-overlay-DMJTiFny.js";import"./empty-state-DRUGJ9ip.js";import"./inline-toast-DQJ-O9wc.js";import"./logo-f0fprTjz.js";import{S as u}from"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./animated-container-DyAZ9gmw.js";import{A as c}from"./ActivationForm-B27tsgwI.js";import{F as l}from"./ArrowLeftIcon-Cw1eswTb.js";import{F as v}from"./ArrowRightIcon--Vuz7Q7x.js";function f({activationType:t,setActivationType:n,scheduledActivationDate:i,setScheduledActivationDate:o,activationFee:a,onNext:m,onBack:p}){const s=()=>{t==="Scheduled"&&!i||m()};return e.jsxs(d,{variant:"static",className:"p-8 transition-all duration-500 ease-in-out transform opacity-100 translate-y-0",children:[e.jsx("div",{className:"mb-6",children:e.jsx(u,{stepNumber:2,title:"Activation",description:"Choose when to start your service"})}),e.jsx(c,{activationType:t||"Immediate",onActivationTypeChange:n,scheduledActivationDate:i,onScheduledActivationDateChange:o,errors:{},activationFee:a}),e.jsxs("div",{className:"flex justify-between mt-6",children:[e.jsx(r,{onClick:p,variant:"outline",leftIcon:e.jsx(l,{className:"w-4 h-4"}),children:"Back to SIM Type"}),e.jsx(r,{onClick:s,rightIcon:e.jsx(v,{className:"w-4 h-4"}),children:"Continue to Add-ons"})]})]})}f.__docgenInfo={description:"",methods:[],displayName:"ActivationStep",props:{onNext:{required:!0,tsType:{name:"signature",type:"function",raw:"() => void",signature:{arguments:[],return:{name:"void"}}},description:""},onBack:{required:!1,tsType:{name:"union",raw:"(() => void) | undefined",elements:[{name:"unknown"},{name:"undefined"}]},description:""},activationType:{required:!0,tsType:{name:"union",raw:'"Immediate" | "Scheduled" | ""',elements:[{name:"literal",value:'"Immediate"'},{name:"literal",value:'"Scheduled"'},{name:"literal",value:'""'}]},description:""},setActivationType:{required:!0,tsType:{name:"signature",type:"function",raw:'(type: "Immediate" | "Scheduled") => void',signature:{arguments:[{type:{name:"union",raw:'"Immediate" | "Scheduled"',elements:[{name:"literal",value:'"Immediate"'},{name:"literal",value:'"Scheduled"'}]},name:"type"}],return:{name:"void"}}},description:""},scheduledActivationDate:{required:!0,tsType:{name:"string"},description:""},setScheduledActivationDate:{required:!0,tsType:{name:"signature",type:"function",raw:"(date: string) => void",signature:{arguments:[{type:{name:"string"},name:"date"}],return:{name:"void"}}},description:""},activationFee:{required:!1,tsType:{name:"union",raw:"ActivationFeeDetails | undefined",elements:[{name:"ActivationFeeDetails"},{name:"undefined"}]},description:""}}};export{f as A}; diff --git a/apps/portal/public/storybook/assets/ActivationStep.stories-CpnVfT1w.js b/apps/portal/public/storybook/assets/ActivationStep.stories-CpnVfT1w.js new file mode 100644 index 00000000..712120da --- /dev/null +++ b/apps/portal/public/storybook/assets/ActivationStep.stories-CpnVfT1w.js @@ -0,0 +1,41 @@ +import{A as S}from"./ActivationStep-DEd_rSq5.js";import"./jsx-runtime-D_zvdyIk.js";import"./DataTable-COYdcx41.js";import"./empty-state-DRUGJ9ip.js";import"./button-C8_cybvS.js";import"./index-JhL3uwfD.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./spinner-mU4XywER.js";import"./PlusIcon-DGufmf06.js";import"./ChevronRightIcon-CMQWsJeW.js";import"./FormField-C0UylACv.js";import"./label-C25VH7yk.js";import"./input-BbGJiz0K.js";import"./error-message-DeFFz6H_.js";import"./ExclamationCircleIcon-jFfW0Ax_.js";import"./OtpInput-6kd_2E0v.js";import"./input-otp-Cin9-T84.js";import"./createLucideIcon-CctB0W3q.js";import"./OtpExpiryDisplay-BGgB7Tk6.js";import"./clock-C92s7kSC.js";import"./SearchFilterBar-Ds19v0-P.js";import"./FunnelIcon-8nhbwqu0.js";import"./XMarkIcon-Bsb1W5VN.js";import"./PaginationBar-D_k7ztRb.js";import"./DetailHeader-C0ZsoM39.js";import"./status-pill-wWp9xkwA.js";import"./AlertBanner-Bnlyj1xc.js";import"./XCircleIcon-CiVBnngB.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./InformationCircleIcon-Clz7d-56.js";import"./CheckCircleIcon-Dva35lTP.js";import"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import"./password-input-D4khGh8v.js";import"./checkbox-DahUyQbt.js";import"./badge-BdMsasyi.js";import"./loading-overlay-DMJTiFny.js";import"./error-state-BSicqqE6.js";import"./ArrowPathIcon-CZjG6RfV.js";import"./inline-toast-DQJ-O9wc.js";import"./index-CNXKWNLp.js";import"./proxy-ZkTvaR74.js";import"./logo-f0fprTjz.js";import"./next-image-69WeRggt.js";import"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./Squares2X2Icon-BMQM_Wy1.js";import"./animated-container-DyAZ9gmw.js";import"./SectionHeader-Bo81Whai.js";import"./ProgressSteps-weVdXcqu.js";import"./SubCard-1OZIPgEM.js";import"./AnimatedCard-DFAiX4zP.js";import"./ServiceCard-BJEHFLba.js";import"./arrow-right-BNMAry-H.js";import"./SummaryStats-D6b7Am-p.js";import"./FilterDropdown-CUU04WmN.js";import"./ClearFiltersButton-CPCoyXk2.js";import"./DetailStatsGrid-CDkKTM-B.js";import"./SectionCard-BcUjc-7N.js";import"./MetricCard-BR1xVIXz.js";import"./BackLink-C5IY6wzy.js";import"./ArrowLeftIcon-Cw1eswTb.js";import"./status-badge-5pzxe45J.js";import"./error-boundary-DIRO_cDI.js";import"./error-fallbacks-kSPsNxmV.js";import"./ActivationForm-B27tsgwI.js";import"./CardPricing-FcGNWupq.js";import"./CurrencyYenIcon-Bf5bmWZc.js";import"./ArrowRightIcon--Vuz7Q7x.js";const wt={title:"Features/Services/SIM/Configure/ActivationStep",component:S,parameters:{layout:"centered"}},t={args:{activationType:"",setActivationType:()=>{},scheduledActivationDate:"",setScheduledActivationDate:()=>{},onNext:()=>{},onBack:()=>{}}},e={args:{activationType:"Immediate",setActivationType:()=>{},scheduledActivationDate:"",setScheduledActivationDate:()=>{},onNext:()=>{},onBack:()=>{}}},i={args:{activationType:"Scheduled",setActivationType:()=>{},scheduledActivationDate:"2026-04-01",setScheduledActivationDate:()=>{},onNext:()=>{},onBack:()=>{}}},o={args:{activationType:"Immediate",setActivationType:()=>{},scheduledActivationDate:"",setScheduledActivationDate:()=>{},activationFee:{name:"Activation Fee",amount:1500},onNext:()=>{},onBack:()=>{}}};var r,a,n;t.parameters={...t.parameters,docs:{...(r=t.parameters)==null?void 0:r.docs,source:{originalSource:`{ + args: { + activationType: "", + setActivationType: () => {}, + scheduledActivationDate: "", + setScheduledActivationDate: () => {}, + onNext: () => {}, + onBack: () => {} + } +}`,...(n=(a=t.parameters)==null?void 0:a.docs)==null?void 0:n.source}}};var p,m,c;e.parameters={...e.parameters,docs:{...(p=e.parameters)==null?void 0:p.docs,source:{originalSource:`{ + args: { + activationType: "Immediate", + setActivationType: () => {}, + scheduledActivationDate: "", + setScheduledActivationDate: () => {}, + onNext: () => {}, + onBack: () => {} + } +}`,...(c=(m=e.parameters)==null?void 0:m.docs)==null?void 0:c.source}}};var s,d,v;i.parameters={...i.parameters,docs:{...(s=i.parameters)==null?void 0:s.docs,source:{originalSource:`{ + args: { + activationType: "Scheduled", + setActivationType: () => {}, + scheduledActivationDate: "2026-04-01", + setScheduledActivationDate: () => {}, + onNext: () => {}, + onBack: () => {} + } +}`,...(v=(d=i.parameters)==null?void 0:d.docs)==null?void 0:v.source}}};var u,l,A;o.parameters={...o.parameters,docs:{...(u=o.parameters)==null?void 0:u.docs,source:{originalSource:`{ + args: { + activationType: "Immediate", + setActivationType: () => {}, + scheduledActivationDate: "", + setScheduledActivationDate: () => {}, + activationFee: { + name: "Activation Fee", + amount: 1500 + }, + onNext: () => {}, + onBack: () => {} + } +}`,...(A=(l=o.parameters)==null?void 0:l.docs)==null?void 0:A.source}}};const zt=["Default","ImmediateSelected","ScheduledSelected","WithActivationFee"];export{t as Default,e as ImmediateSelected,i as ScheduledSelected,o as WithActivationFee,zt as __namedExportsOrder,wt as default}; diff --git a/apps/portal/public/storybook/assets/ActivityTimeline.stories-CXsaEik9.js b/apps/portal/public/storybook/assets/ActivityTimeline.stories-CXsaEik9.js new file mode 100644 index 00000000..79f77f63 --- /dev/null +++ b/apps/portal/public/storybook/assets/ActivityTimeline.stories-CXsaEik9.js @@ -0,0 +1,63 @@ +import{j as t}from"./jsx-runtime-D_zvdyIk.js";import{r as o}from"./index-JhL3uwfD.js";import{D as C}from"./DashboardActivityItem-bwWapT3F.js";import{i as k,c as E,d as M}from"./date-Csq1SWDU.js";import"./index-BKyvj4H5.js";import{fn as P}from"./index-B9TJ7cVi.js";import"./schema-DP3xEsUJ.js";import"./constants-Cd_qStHG.js";import"./coerce-BirWdn0y.js";import"./schema-B8i337wU.js";import"./schema-Dok_SHcO.js";import"./schema-B7GuHPAW.js";import"./currency-CYvr7ZUf.js";import"./CheckCircleIcon-Dva35lTP.js";import"./ChatBubbleLeftRightIcon-DfYi9O0H.js";import"./ServerIcon-Cf--50di.js";import"./DocumentTextIcon-Dk_xQMYi.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./date-CJlSVdaN.js";function L({title:e,titleId:i,...n},a){return o.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:a,"aria-labelledby":i},n),e?o.createElement("title",{id:i},e):null,o.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M2.25 18 9 11.25l4.306 4.306a11.95 11.95 0 0 1 5.814-5.518l2.74-1.22m0 0-5.94-2.281m5.94 2.28-2.28 5.941"}))}const O=o.forwardRef(L);function Y(e){return E(e)?"Today":M(e)?"Yesterday":e.toLocaleDateString("en-US",{month:"short",day:"numeric"})}function z(e){const i=[];for(const n of e){const a=new Date(n.date),r=i.find(s=>k(s.date,a));r?r.activities.push(n):i.push({label:Y(a),date:a,activities:[n]})}return i.sort((n,a)=>a.date.getTime()-n.date.getTime())}function j({activities:e,onItemClick:i,maxItems:n=10}){const a=o.useMemo(()=>{const r=e.slice(0,n);return z(r)},[e,n]);return e.length===0?t.jsxs("div",{className:"text-center py-12",children:[t.jsx("div",{className:"w-12 h-12 rounded-xl bg-muted/50 flex items-center justify-center mx-auto mb-3",children:t.jsx(O,{className:"h-6 w-6 text-muted-foreground/40"})}),t.jsx("h3",{className:"text-sm font-medium text-foreground",children:"No recent activity"}),t.jsx("p",{className:"mt-1 text-sm text-muted-foreground max-w-xs mx-auto",children:"Your account activity will appear here once you start using our services."})]}):t.jsx("div",{className:"space-y-6",children:a.map(r=>t.jsxs("div",{children:[t.jsxs("div",{className:"flex items-center gap-3 mb-3",children:[t.jsx("span",{className:"text-xs font-medium text-muted-foreground uppercase tracking-wide",children:r.label}),t.jsx("div",{className:"flex-1 h-px bg-border"})]}),t.jsx("div",{className:"space-y-0",children:r.activities.map((s,A)=>{const N=s.type==="invoice_created"||s.type==="invoice_paid",T=A===r.activities.length-1;return t.jsx(C,{activity:s,onClick:N&&i?()=>i(s):void 0,showConnector:!T},s.id)})})]},r.label))})}j.__docgenInfo={description:"",methods:[],displayName:"ActivityTimeline",props:{activities:{required:!0,tsType:{name:"Array",elements:[{name:"z.infer",elements:[{name:"activitySchema"}],raw:"z.infer"}],raw:"Activity[]"},description:""},onItemClick:{required:!1,tsType:{name:"signature",type:"function",raw:"(activity: Activity) => void",signature:{arguments:[{type:{name:"z.infer",elements:[{name:"activitySchema"}],raw:"z.infer"},name:"activity"}],return:{name:"void"}}},description:""},maxItems:{required:!1,tsType:{name:"number"},description:"",defaultValue:{value:"10",computed:!1}}}};const l=new Date().toISOString(),F=new Date(Date.now()-864e5).toISOString(),u=new Date(Date.now()-2*864e5).toISOString(),re={title:"Features/Dashboard/ActivityTimeline",component:j,parameters:{layout:"centered"},decorators:[e=>t.jsx("div",{style:{width:560},children:t.jsx(e,{})})]},c={args:{activities:[{id:"act-1",type:"invoice_created",title:"Invoice #1042 created",description:"Monthly internet service",date:l},{id:"act-2",type:"invoice_paid",title:"Invoice #1041 paid",description:"Payment of 5,980 JPY received",date:l},{id:"act-3",type:"service_activated",title:"Fiber 100Mbps activated",description:"Internet service is now active",date:F},{id:"act-4",type:"case_created",title:"Support case opened",description:"Connection issues reported",date:u},{id:"act-5",type:"case_closed",title:"Support case resolved",description:"Connection issue has been fixed",date:u}],onItemClick:P()}},d={args:{activities:[]}},m={args:{activities:[{id:"act-1",type:"invoice_paid",title:"Invoice #1041 paid",description:"Payment of 5,980 JPY received",date:l}]}},p={args:{activities:Array.from({length:20},(e,i)=>({id:`act-${i}`,type:"invoice_created",title:`Invoice #${1e3+i} created`,description:"Monthly service charge",date:new Date(Date.now()-i*864e5).toISOString()})),maxItems:5}};var v,y,f;c.parameters={...c.parameters,docs:{...(v=c.parameters)==null?void 0:v.docs,source:{originalSource:`{ + args: { + activities: [{ + id: "act-1", + type: "invoice_created", + title: "Invoice #1042 created", + description: "Monthly internet service", + date: today + }, { + id: "act-2", + type: "invoice_paid", + title: "Invoice #1041 paid", + description: "Payment of 5,980 JPY received", + date: today + }, { + id: "act-3", + type: "service_activated", + title: "Fiber 100Mbps activated", + description: "Internet service is now active", + date: yesterday + }, { + id: "act-4", + type: "case_created", + title: "Support case opened", + description: "Connection issues reported", + date: twoDaysAgo + }, { + id: "act-5", + type: "case_closed", + title: "Support case resolved", + description: "Connection issue has been fixed", + date: twoDaysAgo + }], + onItemClick: fn() + } +}`,...(f=(y=c.parameters)==null?void 0:y.docs)==null?void 0:f.source}}};var g,h,x;d.parameters={...d.parameters,docs:{...(g=d.parameters)==null?void 0:g.docs,source:{originalSource:`{ + args: { + activities: [] + } +}`,...(x=(h=d.parameters)==null?void 0:h.docs)==null?void 0:x.source}}};var w,S,I;m.parameters={...m.parameters,docs:{...(w=m.parameters)==null?void 0:w.docs,source:{originalSource:`{ + args: { + activities: [{ + id: "act-1", + type: "invoice_paid", + title: "Invoice #1041 paid", + description: "Payment of 5,980 JPY received", + date: today + }] + } +}`,...(I=(S=m.parameters)==null?void 0:S.docs)==null?void 0:I.source}}};var D,b,_;p.parameters={...p.parameters,docs:{...(D=p.parameters)==null?void 0:D.docs,source:{originalSource:`{ + args: { + activities: Array.from({ + length: 20 + }, (_, i) => ({ + id: \`act-\${i}\`, + type: "invoice_created" as const, + title: \`Invoice #\${1000 + i} created\`, + description: "Monthly service charge", + date: new Date(Date.now() - i * 86400000).toISOString() + })), + maxItems: 5 + } +}`,...(_=(b=p.parameters)==null?void 0:b.docs)==null?void 0:_.source}}};const se=["Default","Empty","SingleActivity","LimitedItems"];export{c as Default,d as Empty,p as LimitedItems,m as SingleActivity,se as __namedExportsOrder,re as default}; diff --git a/apps/portal/public/storybook/assets/AddonGroup-BSDkN5FG.js b/apps/portal/public/storybook/assets/AddonGroup-BSDkN5FG.js new file mode 100644 index 00000000..602dba9d --- /dev/null +++ b/apps/portal/public/storybook/assets/AddonGroup-BSDkN5FG.js @@ -0,0 +1,13 @@ +import{j as n}from"./jsx-runtime-D_zvdyIk.js";import{F as c}from"./CheckCircleIcon-DrKOIitY.js";function f(e){const s=[],t=new Set,d=[...e].sort((i,a)=>(i.displayOrder??0)-(a.displayOrder??0));for(const i of d)if(!t.has(i.sku)){if(i.isBundledAddon&&i.bundledAddonId){const a=d.find(u=>u.id===i.bundledAddonId);if(a&&!t.has(a.sku)){const u=y(i,a);s.push(u),t.add(i.sku),t.add(a.sku);continue}}s.push(p(i)),t.add(i.sku)}return s}function y(e,s){const t=e.billingCycle==="Monthly"?e:s,d=e.billingCycle==="Onetime"?e:s,i=t.name.replace(/\s*(Monthly|Installation|Fee)\s*/gi,"").trim();return{id:`bundle-${e.sku}-${s.sku}`,name:i,description:`${i} (monthly service + installation)`,monthlyPrice:typeof t.monthlyPrice=="number"&&t.monthlyPrice>0?t.monthlyPrice:void 0,activationPrice:typeof d.oneTimePrice=="number"&&d.oneTimePrice>0?d.oneTimePrice:void 0,skus:[e.sku,s.sku],isBundled:!0,displayOrder:Math.min(e.displayOrder??0,s.displayOrder??0)}}function p(e){return{id:e.sku,name:e.name,description:e.description||"",monthlyPrice:typeof e.monthlyPrice=="number"&&e.monthlyPrice>0?e.monthlyPrice:void 0,activationPrice:typeof e.oneTimePrice=="number"&&e.oneTimePrice>0?e.oneTimePrice:void 0,skus:[e.sku],isBundled:!1,displayOrder:e.displayOrder??0}}function h({addons:e,selectedAddonSkus:s,onAddonToggle:t,showSkus:d=!1}){const i=s.length===0,a=f(e),u=r=>{if(r.skus.every(l=>s.includes(l)))t(s.filter(l=>!r.skus.includes(l)));else{const l=s.filter(m=>!r.skus.includes(m));t([...l,...r.skus])}};return a.length===0?n.jsx("div",{className:"text-center py-4 text-gray-500",children:n.jsx("p",{children:"No add-ons available for this plan"})}):n.jsxs("div",{className:"space-y-4",children:[a.map(r=>{const o=r.skus.every(l=>s.includes(l));return n.jsxs("label",{className:`flex items-start gap-3 p-4 rounded-lg border-2 cursor-pointer transition-all ${o?"border-green-500 bg-green-50 ring-2 ring-green-100":"border-gray-200 hover:border-gray-300"}`,children:[n.jsx("input",{type:"checkbox",checked:o,onChange:()=>u(r),className:"text-green-600 focus:ring-green-500 mt-1"}),n.jsxs("div",{className:"flex-1",children:[n.jsxs("div",{className:"flex items-center justify-between",children:[n.jsx("span",{className:"font-medium text-gray-900",children:r.name}),o&&n.jsx(c,{className:"h-5 w-5 text-green-600"})]}),n.jsx("p",{className:"text-sm text-gray-600 mt-1",children:r.description}),n.jsxs("div",{className:"flex flex-wrap gap-4 mt-2",children:[r.monthlyPrice!==void 0&&n.jsxs("span",{className:"text-sm font-semibold text-blue-600",children:["¥",r.monthlyPrice.toLocaleString(),"/month"]}),r.activationPrice!==void 0&&n.jsxs("span",{className:"text-sm font-semibold text-orange-600",children:["Activation: ¥",r.activationPrice.toLocaleString()]})]}),r.isBundled&&n.jsxs("div",{className:"text-xs text-green-600 mt-1 flex items-center gap-1",children:[n.jsx("svg",{className:"w-3 h-3",fill:"currentColor",viewBox:"0 0 20 20",children:n.jsx("path",{fillRule:"evenodd",d:"M3.172 5.172a4 4 0 015.656 0L10 6.343l1.172-1.171a4 4 0 115.656 5.656L10 17.657l-6.828-6.829a4 4 0 010-5.656z",clipRule:"evenodd"})}),"Bundle Package"]}),d&&n.jsxs("div",{className:"text-xs text-gray-500 mt-1",children:["SKUs: ",r.skus.join(", ")]})]})]},r.id)}),n.jsxs("div",{"aria-hidden":!i,className:`overflow-hidden rounded-xl border border-dashed border-blue-200/70 bg-blue-50/80 px-5 transition-all duration-300 ease-out ${i?"opacity-100 translate-y-0 max-h-32 py-4":"pointer-events-none opacity-0 -translate-y-2 max-h-0 py-0"}`,children:[n.jsx("p",{className:"text-sm font-medium text-blue-800",children:"No add-ons selected"}),n.jsx("p",{className:"text-xs text-blue-700/80 mt-1",children:"Pick optional services now or continue without extras—add them later anytime."})]})]})}h.__docgenInfo={description:"",methods:[],displayName:"AddonGroup",props:{addons:{required:!0,tsType:{name:"Array",elements:[{name:"signature",type:"object",raw:`{ + id: string; + sku: string; + name: string; + description?: string | undefined; + displayOrder?: number | undefined; + billingCycle?: string | undefined; + monthlyPrice?: number | undefined; + oneTimePrice?: number | undefined; + unitPrice?: number | undefined; + bundledAddonId?: string | undefined; + isBundledAddon?: boolean | undefined; +}`,signature:{properties:[{key:"id",value:{name:"string",required:!0}},{key:"sku",value:{name:"string",required:!0}},{key:"name",value:{name:"string",required:!0}},{key:"description",value:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}],required:!1}},{key:"displayOrder",value:{name:"union",raw:"number | undefined",elements:[{name:"number"},{name:"undefined"}],required:!1}},{key:"billingCycle",value:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}],required:!1}},{key:"monthlyPrice",value:{name:"union",raw:"number | undefined",elements:[{name:"number"},{name:"undefined"}],required:!1}},{key:"oneTimePrice",value:{name:"union",raw:"number | undefined",elements:[{name:"number"},{name:"undefined"}],required:!1}},{key:"unitPrice",value:{name:"union",raw:"number | undefined",elements:[{name:"number"},{name:"undefined"}],required:!1}},{key:"bundledAddonId",value:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}],required:!1}},{key:"isBundledAddon",value:{name:"union",raw:"boolean | undefined",elements:[{name:"boolean"},{name:"undefined"}],required:!1}}]}}],raw:"AddonItem[]"},description:""},selectedAddonSkus:{required:!0,tsType:{name:"Array",elements:[{name:"string"}],raw:"string[]"},description:""},onAddonToggle:{required:!0,tsType:{name:"signature",type:"function",raw:"(skus: string[]) => void",signature:{arguments:[{type:{name:"Array",elements:[{name:"string"}],raw:"string[]"},name:"skus"}],return:{name:"void"}}},description:""},showSkus:{required:!1,tsType:{name:"union",raw:"boolean | undefined",elements:[{name:"boolean"},{name:"undefined"}]},description:"",defaultValue:{value:"false",computed:!1}}}};export{h as A}; diff --git a/apps/portal/public/storybook/assets/AddonGroup.stories-DTbPGvRs.js b/apps/portal/public/storybook/assets/AddonGroup.stories-DTbPGvRs.js new file mode 100644 index 00000000..7279f106 --- /dev/null +++ b/apps/portal/public/storybook/assets/AddonGroup.stories-DTbPGvRs.js @@ -0,0 +1,32 @@ +import{A as k}from"./AddonGroup-BSDkN5FG.js";import"./jsx-runtime-D_zvdyIk.js";import"./CheckCircleIcon-DrKOIitY.js";import"./index-JhL3uwfD.js";const b={title:"Features/Services/Base/AddonGroup",component:k,parameters:{layout:"centered"}},r=[{id:"addon-1",sku:"ADDON-WIFI",name:"Wi-Fi Router Rental",description:"High-speed Wi-Fi router included",displayOrder:1,billingCycle:"Monthly",monthlyPrice:500,oneTimePrice:0},{id:"addon-2",sku:"ADDON-STATIC-IP",name:"Static IP Address",description:"Dedicated static IP for your connection",displayOrder:2,billingCycle:"Monthly",monthlyPrice:1e3,oneTimePrice:0},{id:"addon-3",sku:"ADDON-SECURITY",name:"Security Suite",description:"Antivirus and firewall protection",displayOrder:3,billingCycle:"Monthly",monthlyPrice:300,oneTimePrice:0}],O=[{id:"addon-4",sku:"ADDON-TV-MONTHLY",name:"TV Service Monthly",description:"Streaming TV package",displayOrder:1,billingCycle:"Monthly",monthlyPrice:800,oneTimePrice:0,isBundledAddon:!0,bundledAddonId:"addon-5"},{id:"addon-5",sku:"ADDON-TV-INSTALL",name:"TV Service Installation Fee",description:"One-time setup fee",displayOrder:2,billingCycle:"Onetime",monthlyPrice:0,oneTimePrice:3e3,isBundledAddon:!0,bundledAddonId:"addon-4"}],e={args:{addons:r,selectedAddonSkus:[],onAddonToggle:()=>{}}},d={args:{addons:r,selectedAddonSkus:["ADDON-WIFI","ADDON-SECURITY"],onAddonToggle:()=>{}}},n={args:{addons:[...r,...O],selectedAddonSkus:[],onAddonToggle:()=>{}}},o={args:{addons:r,selectedAddonSkus:["ADDON-WIFI"],onAddonToggle:()=>{},showSkus:!0}},s={args:{addons:[],selectedAddonSkus:[],onAddonToggle:()=>{}}};var a,t,i;e.parameters={...e.parameters,docs:{...(a=e.parameters)==null?void 0:a.docs,source:{originalSource:`{ + args: { + addons: sampleAddons, + selectedAddonSkus: [], + onAddonToggle: () => {} + } +}`,...(i=(t=e.parameters)==null?void 0:t.docs)==null?void 0:i.source}}};var c,l,u;d.parameters={...d.parameters,docs:{...(c=d.parameters)==null?void 0:c.docs,source:{originalSource:`{ + args: { + addons: sampleAddons, + selectedAddonSkus: ["ADDON-WIFI", "ADDON-SECURITY"], + onAddonToggle: () => {} + } +}`,...(u=(l=d.parameters)==null?void 0:l.docs)==null?void 0:u.source}}};var m,A,p;n.parameters={...n.parameters,docs:{...(m=n.parameters)==null?void 0:m.docs,source:{originalSource:`{ + args: { + addons: [...sampleAddons, ...bundledAddons], + selectedAddonSkus: [], + onAddonToggle: () => {} + } +}`,...(p=(A=n.parameters)==null?void 0:A.docs)==null?void 0:p.source}}};var g,S,T;o.parameters={...o.parameters,docs:{...(g=o.parameters)==null?void 0:g.docs,source:{originalSource:`{ + args: { + addons: sampleAddons, + selectedAddonSkus: ["ADDON-WIFI"], + onAddonToggle: () => {}, + showSkus: true + } +}`,...(T=(S=o.parameters)==null?void 0:S.docs)==null?void 0:T.source}}};var y,D,I;s.parameters={...s.parameters,docs:{...(y=s.parameters)==null?void 0:y.docs,source:{originalSource:`{ + args: { + addons: [], + selectedAddonSkus: [], + onAddonToggle: () => {} + } +}`,...(I=(D=s.parameters)==null?void 0:D.docs)==null?void 0:I.source}}};const C=["Default","WithSelection","WithBundledAddons","WithSkus","EmptyAddons"];export{e as Default,s as EmptyAddons,n as WithBundledAddons,d as WithSelection,o as WithSkus,C as __namedExportsOrder,b as default}; diff --git a/apps/portal/public/storybook/assets/AddonsStep-BL22SA_U.js b/apps/portal/public/storybook/assets/AddonsStep-BL22SA_U.js new file mode 100644 index 00000000..03ad3794 --- /dev/null +++ b/apps/portal/public/storybook/assets/AddonsStep-BL22SA_U.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import"./DataTable-COYdcx41.js";import"./FormField-C0UylACv.js";import"./OtpInput-6kd_2E0v.js";import"./OtpExpiryDisplay-BGgB7Tk6.js";import"./SearchFilterBar-Ds19v0-P.js";import"./PaginationBar-D_k7ztRb.js";import"./DetailHeader-C0ZsoM39.js";import"./AlertBanner-Bnlyj1xc.js";import"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import"./error-state-BSicqqE6.js";import"./index-BKyvj4H5.js";import"./SectionHeader-Bo81Whai.js";import"./ProgressSteps-weVdXcqu.js";import"./SubCard-1OZIPgEM.js";import{A as m}from"./AnimatedCard-DFAiX4zP.js";import"./ServiceCard-BJEHFLba.js";import"./SummaryStats-D6b7Am-p.js";import"./FilterDropdown-CUU04WmN.js";import"./ClearFiltersButton-CPCoyXk2.js";import"./DetailStatsGrid-CDkKTM-B.js";import"./SectionCard-BcUjc-7N.js";import"./MetricCard-BR1xVIXz.js";import"./BackLink-C5IY6wzy.js";import"./status-badge-5pzxe45J.js";import"./error-boundary-DIRO_cDI.js";import"./error-fallbacks-kSPsNxmV.js";import{B as t}from"./button-C8_cybvS.js";import"./input-BbGJiz0K.js";import"./password-input-D4khGh8v.js";import"./checkbox-DahUyQbt.js";import"./label-C25VH7yk.js";import"./error-message-DeFFz6H_.js";import"./status-pill-wWp9xkwA.js";import"./badge-BdMsasyi.js";import"./spinner-mU4XywER.js";import"./loading-overlay-DMJTiFny.js";import"./empty-state-DRUGJ9ip.js";import"./inline-toast-DQJ-O9wc.js";import"./logo-f0fprTjz.js";import{S as p}from"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./animated-container-DyAZ9gmw.js";import{A as d}from"./AddonGroup-BSDkN5FG.js";import{F as l}from"./ArrowLeftIcon-Cw1eswTb.js";import{F as c}from"./ArrowRightIcon--Vuz7Q7x.js";function u({addons:r,selectedAddons:i,setSelectedAddons:o,planType:n,onNext:a,onBack:s}){return e.jsxs(m,{variant:"static",className:"p-8 transition-all duration-500 ease-in-out transform opacity-100 translate-y-0",children:[e.jsx("div",{className:"mb-6",children:e.jsx(p,{stepNumber:3,title:"Add-ons",description:"Optional services to enhance your experience"})}),r.length>0?e.jsx(d,{addons:r,selectedAddonSkus:i,onAddonToggle:o,showSkus:!1}):e.jsx("div",{className:"text-center py-8",children:e.jsx("p",{className:"text-muted-foreground",children:n==="DataOnly"?"No add-ons are available for data-only plans.":"No add-ons are available for this plan."})}),e.jsxs("div",{className:"flex justify-between mt-6",children:[e.jsx(t,{onClick:s,variant:"outline",leftIcon:e.jsx(l,{className:"w-4 h-4"}),children:"Back to Activation"}),e.jsx(t,{onClick:a,rightIcon:e.jsx(c,{className:"w-4 h-4"}),children:"Continue to Number Porting"})]})]})}u.__docgenInfo={description:"",methods:[],displayName:"AddonsStep",props:{onNext:{required:!0,tsType:{name:"signature",type:"function",raw:"() => void",signature:{arguments:[],return:{name:"void"}}},description:""},onBack:{required:!1,tsType:{name:"union",raw:"(() => void) | undefined",elements:[{name:"unknown"},{name:"undefined"}]},description:""},addons:{required:!0,tsType:{name:"Array",elements:[{name:"z.infer",elements:[{name:"simCatalogProductSchema"}],raw:"z.infer"}],raw:"SimCatalogProduct[]"},description:""},selectedAddons:{required:!0,tsType:{name:"Array",elements:[{name:"string"}],raw:"string[]"},description:""},setSelectedAddons:{required:!0,tsType:{name:"signature",type:"function",raw:"(addons: string[]) => void",signature:{arguments:[{type:{name:"Array",elements:[{name:"string"}],raw:"string[]"},name:"addons"}],return:{name:"void"}}},description:""},planType:{required:!0,tsType:{name:"string"},description:""}}};export{u as A}; diff --git a/apps/portal/public/storybook/assets/AddonsStep.stories-BngBiy8z.js b/apps/portal/public/storybook/assets/AddonsStep.stories-BngBiy8z.js new file mode 100644 index 00000000..fe326671 --- /dev/null +++ b/apps/portal/public/storybook/assets/AddonsStep.stories-BngBiy8z.js @@ -0,0 +1,37 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{B as a}from"./button-C8_cybvS.js";import"./input-BbGJiz0K.js";import"./password-input-D4khGh8v.js";import"./checkbox-DahUyQbt.js";import"./label-C25VH7yk.js";import"./error-message-DeFFz6H_.js";import"./status-pill-wWp9xkwA.js";import"./badge-BdMsasyi.js";import"./spinner-mU4XywER.js";import"./loading-overlay-DMJTiFny.js";import"./error-state-BSicqqE6.js";import"./empty-state-DRUGJ9ip.js";import"./inline-toast-DQJ-O9wc.js";import"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import"./logo-f0fprTjz.js";import{S as v}from"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./animated-container-DyAZ9gmw.js";import{A as D}from"./AddonGroup-BSDkN5FG.js";import{F as O}from"./ArrowLeftIcon-Cw1eswTb.js";import{F as P}from"./ArrowRightIcon--Vuz7Q7x.js";import"./index-JhL3uwfD.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./createLucideIcon-CctB0W3q.js";import"./ExclamationCircleIcon-jFfW0Ax_.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./ArrowPathIcon-CZjG6RfV.js";import"./PlusIcon-DGufmf06.js";import"./index-CNXKWNLp.js";import"./proxy-ZkTvaR74.js";import"./next-image-69WeRggt.js";import"./Squares2X2Icon-BMQM_Wy1.js";import"./CheckCircleIcon-DrKOIitY.js";function k({addons:f,selectedAddonSkus:S,onAddonToggle:x,isTransitioning:I,onBack:h,onNext:w}){return e.jsxs("div",{className:`bg-white rounded-2xl shadow-lg border border-gray-200/50 p-8 md:p-10 transition-all duration-150 ease-out ${I?"opacity-0 translate-y-2":"opacity-100 translate-y-0"}`,children:[e.jsx("div",{className:"mb-8",children:e.jsx(v,{stepNumber:3,title:"Add-ons",description:"Optional services to enhance your internet experience"})}),e.jsx(D,{addons:f,selectedAddonSkus:S,onAddonToggle:x,showSkus:!1}),e.jsxs("div",{className:"flex justify-between mt-8 pt-6 border-t border-gray-100",children:[e.jsx(a,{onClick:h,variant:"outline",leftIcon:e.jsx(O,{className:"w-4 h-4"}),children:"Back to Installation"}),e.jsx(a,{onClick:w,rightIcon:e.jsx(P,{className:"w-4 h-4"}),className:"min-w-[200px]",children:"Review Order"})]})]})}k.__docgenInfo={description:"",methods:[],displayName:"AddonsStep",props:{addons:{required:!0,tsType:{name:"Array",elements:[{name:"z.infer",elements:[{name:"internetAddonCatalogItemSchema"}],raw:"z.infer"}],raw:"InternetAddonCatalogItem[]"},description:""},selectedAddonSkus:{required:!0,tsType:{name:"Array",elements:[{name:"string"}],raw:"string[]"},description:""},onAddonToggle:{required:!0,tsType:{name:"signature",type:"function",raw:"(newSelectedSkus: string[]) => void",signature:{arguments:[{type:{name:"Array",elements:[{name:"string"}],raw:"string[]"},name:"newSelectedSkus"}],return:{name:"void"}}},description:""},isTransitioning:{required:!0,tsType:{name:"boolean"},description:""},onBack:{required:!0,tsType:{name:"signature",type:"function",raw:"() => void",signature:{arguments:[],return:{name:"void"}}},description:""},onNext:{required:!0,tsType:{name:"signature",type:"function",raw:"() => void",signature:{arguments:[],return:{name:"void"}}},description:""}}};const s=[{id:"addon-001",sku:"INT-ADDON-PHONE",name:"Hikari Denwa (IP Phone)",description:"Home phone service over fiber connection",monthlyPrice:450,oneTimePrice:1e3,displayOrder:1,catalogMetadata:{addonType:"phone"}},{id:"addon-002",sku:"INT-ADDON-EXTENDER",name:"WiFi Range Extender",description:"Extend your WiFi coverage to larger areas",monthlyPrice:300,oneTimePrice:0,displayOrder:2,catalogMetadata:{addonType:"equipment"}},{id:"addon-003",sku:"INT-ADDON-STATIC-IP",name:"Static IP Address",description:"Fixed IP address for hosting or remote access",monthlyPrice:800,oneTimePrice:0,displayOrder:3,catalogMetadata:{addonType:"network"}}],Ne={title:"Features/Services/Internet/Configure/AddonsStep",component:k,parameters:{layout:"centered"}},n={args:{addons:s,selectedAddonSkus:[],onAddonToggle:()=>{},isTransitioning:!1,onBack:()=>{},onNext:()=>{}}},o={args:{addons:s,selectedAddonSkus:["INT-ADDON-PHONE","INT-ADDON-STATIC-IP"],onAddonToggle:()=>{},isTransitioning:!1,onBack:()=>{},onNext:()=>{}}},r={args:{addons:[],selectedAddonSkus:[],onAddonToggle:()=>{},isTransitioning:!1,onBack:()=>{},onNext:()=>{}}},t={args:{addons:s,selectedAddonSkus:[],onAddonToggle:()=>{},isTransitioning:!0,onBack:()=>{},onNext:()=>{}}};var i,d,m;n.parameters={...n.parameters,docs:{...(i=n.parameters)==null?void 0:i.docs,source:{originalSource:`{ + args: { + addons: mockAddons, + selectedAddonSkus: [], + onAddonToggle: () => {}, + isTransitioning: false, + onBack: () => {}, + onNext: () => {} + } +}`,...(m=(d=n.parameters)==null?void 0:d.docs)==null?void 0:m.source}}};var c,p,l;o.parameters={...o.parameters,docs:{...(c=o.parameters)==null?void 0:c.docs,source:{originalSource:`{ + args: { + addons: mockAddons, + selectedAddonSkus: ["INT-ADDON-PHONE", "INT-ADDON-STATIC-IP"], + onAddonToggle: () => {}, + isTransitioning: false, + onBack: () => {}, + onNext: () => {} + } +}`,...(l=(p=o.parameters)==null?void 0:p.docs)==null?void 0:l.source}}};var u,g,A;r.parameters={...r.parameters,docs:{...(u=r.parameters)==null?void 0:u.docs,source:{originalSource:`{ + args: { + addons: [], + selectedAddonSkus: [], + onAddonToggle: () => {}, + isTransitioning: false, + onBack: () => {}, + onNext: () => {} + } +}`,...(A=(g=r.parameters)==null?void 0:g.docs)==null?void 0:A.source}}};var T,N,y;t.parameters={...t.parameters,docs:{...(T=t.parameters)==null?void 0:T.docs,source:{originalSource:`{ + args: { + addons: mockAddons, + selectedAddonSkus: [], + onAddonToggle: () => {}, + isTransitioning: true, + onBack: () => {}, + onNext: () => {} + } +}`,...(y=(N=t.parameters)==null?void 0:N.docs)==null?void 0:y.source}}};const ye=["Default","WithSelections","NoAddonsAvailable","Transitioning"];export{n as Default,r as NoAddonsAvailable,t as Transitioning,o as WithSelections,ye as __namedExportsOrder,Ne as default}; diff --git a/apps/portal/public/storybook/assets/AddonsStep.stories-CkxWuUHZ.js b/apps/portal/public/storybook/assets/AddonsStep.stories-CkxWuUHZ.js new file mode 100644 index 00000000..1e1ff84a --- /dev/null +++ b/apps/portal/public/storybook/assets/AddonsStep.stories-CkxWuUHZ.js @@ -0,0 +1,28 @@ +import{A}from"./AddonsStep-BL22SA_U.js";import"./jsx-runtime-D_zvdyIk.js";import"./DataTable-COYdcx41.js";import"./empty-state-DRUGJ9ip.js";import"./button-C8_cybvS.js";import"./index-JhL3uwfD.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./spinner-mU4XywER.js";import"./PlusIcon-DGufmf06.js";import"./ChevronRightIcon-CMQWsJeW.js";import"./FormField-C0UylACv.js";import"./label-C25VH7yk.js";import"./input-BbGJiz0K.js";import"./error-message-DeFFz6H_.js";import"./ExclamationCircleIcon-jFfW0Ax_.js";import"./OtpInput-6kd_2E0v.js";import"./input-otp-Cin9-T84.js";import"./createLucideIcon-CctB0W3q.js";import"./OtpExpiryDisplay-BGgB7Tk6.js";import"./clock-C92s7kSC.js";import"./SearchFilterBar-Ds19v0-P.js";import"./FunnelIcon-8nhbwqu0.js";import"./XMarkIcon-Bsb1W5VN.js";import"./PaginationBar-D_k7ztRb.js";import"./DetailHeader-C0ZsoM39.js";import"./status-pill-wWp9xkwA.js";import"./AlertBanner-Bnlyj1xc.js";import"./XCircleIcon-CiVBnngB.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./InformationCircleIcon-Clz7d-56.js";import"./CheckCircleIcon-Dva35lTP.js";import"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import"./password-input-D4khGh8v.js";import"./checkbox-DahUyQbt.js";import"./badge-BdMsasyi.js";import"./loading-overlay-DMJTiFny.js";import"./error-state-BSicqqE6.js";import"./ArrowPathIcon-CZjG6RfV.js";import"./inline-toast-DQJ-O9wc.js";import"./index-CNXKWNLp.js";import"./proxy-ZkTvaR74.js";import"./logo-f0fprTjz.js";import"./next-image-69WeRggt.js";import"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./Squares2X2Icon-BMQM_Wy1.js";import"./animated-container-DyAZ9gmw.js";import"./SectionHeader-Bo81Whai.js";import"./ProgressSteps-weVdXcqu.js";import"./SubCard-1OZIPgEM.js";import"./AnimatedCard-DFAiX4zP.js";import"./ServiceCard-BJEHFLba.js";import"./arrow-right-BNMAry-H.js";import"./SummaryStats-D6b7Am-p.js";import"./FilterDropdown-CUU04WmN.js";import"./ClearFiltersButton-CPCoyXk2.js";import"./DetailStatsGrid-CDkKTM-B.js";import"./SectionCard-BcUjc-7N.js";import"./MetricCard-BR1xVIXz.js";import"./BackLink-C5IY6wzy.js";import"./ArrowLeftIcon-Cw1eswTb.js";import"./status-badge-5pzxe45J.js";import"./error-boundary-DIRO_cDI.js";import"./error-fallbacks-kSPsNxmV.js";import"./AddonGroup-BSDkN5FG.js";import"./CheckCircleIcon-DrKOIitY.js";import"./ArrowRightIcon--Vuz7Q7x.js";const Uo={title:"Features/Services/SIM/Configure/AddonsStep",component:A,parameters:{layout:"centered"}},l=[{id:"addon-1",sku:"ADDON-UNLIMITED-CALL",name:"Unlimited Domestic Calling",monthlyPrice:3e3,unitPrice:3e3,oneTimePrice:0,billingCycle:"Monthly",simDataSize:"",simPlanType:"",simHasFamilyDiscount:!1,catalogMetadata:{}},{id:"addon-2",sku:"ADDON-VOICEMAIL",name:"Voicemail",monthlyPrice:300,unitPrice:300,oneTimePrice:0,billingCycle:"Monthly",simDataSize:"",simPlanType:"",simHasFamilyDiscount:!1,catalogMetadata:{}}],o={args:{addons:l,selectedAddons:[],setSelectedAddons:()=>{},planType:"DataSmsVoice",onNext:()=>{},onBack:()=>{}}},t={args:{addons:l,selectedAddons:["ADDON-UNLIMITED-CALL"],setSelectedAddons:()=>{},planType:"DataSmsVoice",onNext:()=>{},onBack:()=>{}}},e={args:{addons:[],selectedAddons:[],setSelectedAddons:()=>{},planType:"DataOnly",onNext:()=>{},onBack:()=>{}}};var r,i,m;o.parameters={...o.parameters,docs:{...(r=o.parameters)==null?void 0:r.docs,source:{originalSource:`{ + args: { + addons: mockAddons, + selectedAddons: [], + setSelectedAddons: () => {}, + planType: "DataSmsVoice", + onNext: () => {}, + onBack: () => {} + } +}`,...(m=(i=o.parameters)==null?void 0:i.docs)==null?void 0:m.source}}};var n,a,p;t.parameters={...t.parameters,docs:{...(n=t.parameters)==null?void 0:n.docs,source:{originalSource:`{ + args: { + addons: mockAddons, + selectedAddons: ["ADDON-UNLIMITED-CALL"], + setSelectedAddons: () => {}, + planType: "DataSmsVoice", + onNext: () => {}, + onBack: () => {} + } +}`,...(p=(a=t.parameters)==null?void 0:a.docs)==null?void 0:p.source}}};var s,d,c;e.parameters={...e.parameters,docs:{...(s=e.parameters)==null?void 0:s.docs,source:{originalSource:`{ + args: { + addons: [], + selectedAddons: [], + setSelectedAddons: () => {}, + planType: "DataOnly", + onNext: () => {}, + onBack: () => {} + } +}`,...(c=(d=e.parameters)==null?void 0:d.docs)==null?void 0:c.source}}};const vo=["Default","WithSelectedAddons","NoAddonsAvailable"];export{o as Default,e as NoAddonsAvailable,t as WithSelectedAddons,vo as __namedExportsOrder,Uo as default}; diff --git a/apps/portal/public/storybook/assets/AddressCard.stories-ywY4b4nI.js b/apps/portal/public/storybook/assets/AddressCard.stories-ywY4b4nI.js new file mode 100644 index 00000000..e441725c --- /dev/null +++ b/apps/portal/public/storybook/assets/AddressCard.stories-ywY4b4nI.js @@ -0,0 +1,23 @@ +import{j as r}from"./jsx-runtime-D_zvdyIk.js";import"./ProductCard-BA9t2pcL.js";import"./PricingDisplay-CBWoWrYN.js";import"./ProductComparison-DYrBj0kv.js";import"./ConfigurationStep-xBkwMSbV.js";import{F as N,A as F}from"./AddressForm-CCWrICXS.js";import"./PaymentForm-CHFxVgF8.js";import"./OrderSummary-nn5Jq6Ex.js";import"./AddonGroup-BSDkN5FG.js";import"./SimTypeSelector-m-grYnOJ.js";import"./ActivationForm-B27tsgwI.js";import"./InstallationOptions-CKiIJxBe.js";import"./MnpForm-j5Hck9cV.js";import{B as p}from"./button-C8_cybvS.js";import"./input-BbGJiz0K.js";import"./password-input-D4khGh8v.js";import"./checkbox-DahUyQbt.js";import"./label-C25VH7yk.js";import"./error-message-DeFFz6H_.js";import"./status-pill-wWp9xkwA.js";import"./badge-BdMsasyi.js";import"./spinner-mU4XywER.js";import"./loading-overlay-DMJTiFny.js";import"./error-state-BSicqqE6.js";import"./empty-state-DRUGJ9ip.js";import"./inline-toast-DQJ-O9wc.js";import"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import"./logo-f0fprTjz.js";import"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./animated-container-DyAZ9gmw.js";import{A as S}from"./AlertBanner-Bnlyj1xc.js";import"./SubCard-1OZIPgEM.js";import"./index-JhL3uwfD.js";import"./index-BKyvj4H5.js";import{g as k}from"./countries-CY6LSu2r.js";import"./JapanAddressForm-CUdYD2hV.js";import"./auth.store-CVqT-1lf.js";import"./FeatureCard-DMnf0Xpf.js";import"./ServiceHeroCard-C1DUlYtH.js";import{F as C}from"./PencilIcon-XQqOFsKO.js";import{F as T}from"./XMarkIcon-Bsb1W5VN.js";import{F as q}from"./CheckIcon-BKJSKBEC.js";import"./DataTable-COYdcx41.js";import"./ChevronRightIcon-CMQWsJeW.js";import"./FormField-C0UylACv.js";import"./cn-CDN07tui.js";import"./OtpInput-6kd_2E0v.js";import"./input-otp-Cin9-T84.js";import"./createLucideIcon-CctB0W3q.js";import"./OtpExpiryDisplay-BGgB7Tk6.js";import"./clock-C92s7kSC.js";import"./SearchFilterBar-Ds19v0-P.js";import"./FunnelIcon-8nhbwqu0.js";import"./PaginationBar-D_k7ztRb.js";import"./DetailHeader-C0ZsoM39.js";import"./SectionHeader-Bo81Whai.js";import"./ProgressSteps-weVdXcqu.js";import"./CheckCircleIcon-Dva35lTP.js";import"./AnimatedCard-DFAiX4zP.js";import"./proxy-ZkTvaR74.js";import"./ServiceCard-BJEHFLba.js";import"./next-link-BmD4fPSy.js";import"./arrow-right-BNMAry-H.js";import"./SummaryStats-D6b7Am-p.js";import"./FilterDropdown-CUU04WmN.js";import"./ClearFiltersButton-CPCoyXk2.js";import"./DetailStatsGrid-CDkKTM-B.js";import"./SectionCard-BcUjc-7N.js";import"./MetricCard-BR1xVIXz.js";import"./BackLink-C5IY6wzy.js";import"./ArrowLeftIcon-Cw1eswTb.js";import"./status-badge-5pzxe45J.js";import"./error-boundary-DIRO_cDI.js";import"./error-fallbacks-kSPsNxmV.js";import"./next-navigation-FtRxULo3.js";import"./CurrencyYenIcon-Bf5bmWZc.js";import"./ArrowRightIcon--Vuz7Q7x.js";import"./InformationCircleIcon-Clz7d-56.js";import"./index-9c86oO0t.js";import"./currency-CYvr7ZUf.js";import"./date-CJlSVdaN.js";import"./text-CXa-DJQz.js";import"./StepIndicator-chJR-dG8.js";import"./StepHeader-D_31J9G_.js";import"./ValidationStatus-Dsgne9Qr.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./StepActions-x37eBfO8.js";import"./StepContent-D57mrCa_.js";import"./HelpPanel-rRaRP4jS.js";import"./InfoPanel-CAJ6XA4c.js";import"./useZodForm-ByUWfWhF.js";import"./error-handling-CCxr4Gjn.js";import"./coerce-BirWdn0y.js";import"./schema-Dok_SHcO.js";import"./schema-B7GuHPAW.js";import"./CreditCardIcon-BBdrpHQs.js";import"./CheckCircleIcon-DrKOIitY.js";import"./SignalIcon-CUFdTwmf.js";import"./EnvelopeIcon-Bx94PDZ6.js";import"./DevicePhoneMobileIcon-SMwjWf6M.js";import"./TruckIcon-C8f1NFCW.js";import"./CardPricing-FcGNWupq.js";import"./index-DXhM58Yq.js";import"./ExclamationCircleIcon-jFfW0Ax_.js";import"./ArrowPathIcon-CZjG6RfV.js";import"./PlusIcon-DGufmf06.js";import"./index-CNXKWNLp.js";import"./next-image-69WeRggt.js";import"./Squares2X2Icon-BMQM_Wy1.js";import"./XCircleIcon-CiVBnngB.js";import"./ZipCodeInput-C0pEKKnJ.js";import"./useQuery-tNNTAmfW.js";import"./QueryClientProvider-D7wSf7Op.js";import"./schema-Cvvg7S_W.js";import"./circle-check-big-Bab09Iah.js";import"./search-DSeV2urL.js";import"./AnimatedSection-CccjFZBU.js";import"./ProgressIndicator-zQZ52Xi8.js";import"./BilingualValue-B84DkgyY.js";import"./sparkles-q054t7ye.js";import"./map-pin-Bm-ztWPO.js";import"./chevron-right-C40ybnlz.js";import"./house-pESumjO8.js";import"./building-2-C7pcwIk2.js";import"./react-C6W-rNNW.js";import"./schema-JsDJirqf.js";import"./check-DmNqM64J.js";function P({address:e}){const i=e.address2||e.address1,t=e.address2&&e.address1?e.address1:null,s=[e.city,e.state,e.postcode].filter(Boolean).join(", "),n=e.country?k(e.country)??e.country:null;return r.jsx("div",{className:"bg-card rounded-lg p-5 border border-border shadow-sm",children:r.jsxs("div",{className:"text-foreground space-y-1.5",children:[i&&r.jsx("p",{className:"font-medium text-base",children:i}),t&&r.jsx("p",{className:"text-muted-foreground",children:t}),s&&r.jsx("p",{className:"text-muted-foreground",children:s}),n&&r.jsx("p",{className:"text-muted-foreground",children:n})]})})}function I({onEdit:e}){return r.jsxs("div",{className:"text-center py-12",children:[r.jsx(N,{className:"h-12 w-12 text-muted-foreground/60 mx-auto mb-4"}),r.jsx("p",{className:"text-muted-foreground mb-4",children:"No address on file"}),r.jsx(p,{onClick:e,leftIcon:r.jsx(C,{className:"h-4 w-4"}),children:"Add Address"})]})}function A({address:e,isEditing:i,isSaving:t,error:s,onEdit:n,onCancel:v,onSave:b,onAddressChange:w}){const d=!!(e.address1||e.city);return r.jsxs("div",{className:"bg-card text-card-foreground rounded-xl border border-border shadow-[var(--cp-shadow-1)]",children:[r.jsx("div",{className:"px-6 py-5 border-b border-border",children:r.jsxs("div",{className:"flex items-center justify-between",children:[r.jsxs("div",{className:"flex items-center space-x-3",children:[r.jsx(N,{className:"h-6 w-6 text-primary"}),r.jsx("h2",{className:"text-xl font-semibold text-foreground",children:"Address Information"})]}),!i&&d&&r.jsx(p,{variant:"outline",size:"sm",onClick:n,leftIcon:r.jsx(C,{className:"h-4 w-4"}),children:"Edit"})]})}),r.jsx("div",{className:"p-6",children:i?r.jsxs("div",{className:"space-y-6",children:[r.jsx(F,{initialAddress:{address1:e.address1,address2:e.address2,city:e.city,state:e.state,postcode:e.postcode,country:e.country,countryCode:e.countryCode,phoneNumber:e.phoneNumber,phoneCountryCode:e.phoneCountryCode},onChange:E=>w(E,!0),title:"Mailing Address"}),r.jsxs("div",{className:"flex items-center justify-end space-x-3 pt-2",children:[r.jsx(p,{variant:"outline",size:"sm",onClick:v,disabled:t,leftIcon:r.jsx(T,{className:"h-4 w-4"}),children:"Cancel"}),r.jsx(p,{size:"sm",onClick:b,isLoading:t,leftIcon:t?void 0:r.jsx(q,{className:"h-4 w-4"}),children:t?"Saving...":"Save Address"})]}),s&&r.jsx(S,{variant:"error",title:"Address Error",children:s})]}):d?r.jsx(P,{address:e}):r.jsx(I,{onEdit:n})})]})}A.__docgenInfo={description:"",methods:[],displayName:"AddressCard",props:{address:{required:!0,tsType:{name:"z.infer",elements:[{name:"addressSchema"}],raw:"z.infer"},description:""},isEditing:{required:!0,tsType:{name:"boolean"},description:""},isSaving:{required:!0,tsType:{name:"boolean"},description:""},error:{required:!1,tsType:{name:"union",raw:"string | null",elements:[{name:"string"},{name:"null"}]},description:""},onEdit:{required:!0,tsType:{name:"signature",type:"function",raw:"() => void",signature:{arguments:[],return:{name:"void"}}},description:""},onCancel:{required:!0,tsType:{name:"signature",type:"function",raw:"() => void",signature:{arguments:[],return:{name:"void"}}},description:""},onSave:{required:!0,tsType:{name:"signature",type:"function",raw:"() => void",signature:{arguments:[],return:{name:"void"}}},description:""},onAddressChange:{required:!0,tsType:{name:"NonNullable",elements:[{name:'AddressFormProps["onChange"]',raw:'AddressFormProps["onChange"]'}],raw:'NonNullable'},description:""}}};const z={address1:"Sunshine Mansion 201",address2:"Nishi-Shinjuku 1-5-3",city:"Shinjuku-ku",state:"Tokyo",postcode:"160-0023",country:"JP",countryCode:"JP",phoneNumber:"+81 90-1234-5678",phoneCountryCode:"81"},B={address1:"",address2:"",city:"",state:"",postcode:"",country:"",countryCode:"",phoneNumber:"",phoneCountryCode:""},it={title:"Features/Account/AddressCard",component:A,parameters:{layout:"padded"}},o={args:{address:z,isEditing:!1,isSaving:!1,error:null,onEdit:()=>{},onCancel:()=>{},onSave:()=>{},onAddressChange:()=>{}}},m={args:{...o.args,address:B}},a={args:{...o.args,isEditing:!0,error:"Failed to save address. Please try again."}};var c,l,u;o.parameters={...o.parameters,docs:{...(c=o.parameters)==null?void 0:c.docs,source:{originalSource:`{ + args: { + address: mockAddress, + isEditing: false, + isSaving: false, + error: null, + onEdit: () => {}, + onCancel: () => {}, + onSave: () => {}, + onAddressChange: () => {} + } +}`,...(u=(l=o.parameters)==null?void 0:l.docs)==null?void 0:u.source}}};var h,y,x;m.parameters={...m.parameters,docs:{...(h=m.parameters)==null?void 0:h.docs,source:{originalSource:`{ + args: { + ...Default.args, + address: emptyAddress + } +}`,...(x=(y=m.parameters)==null?void 0:y.docs)==null?void 0:x.source}}};var f,g,j;a.parameters={...a.parameters,docs:{...(f=a.parameters)==null?void 0:f.docs,source:{originalSource:`{ + args: { + ...Default.args, + isEditing: true, + error: "Failed to save address. Please try again." + } +}`,...(j=(g=a.parameters)==null?void 0:g.docs)==null?void 0:j.source}}};const st=["Default","EmptyAddress","WithError"];export{o as Default,m as EmptyAddress,a as WithError,st as __namedExportsOrder,it as default}; diff --git a/apps/portal/public/storybook/assets/AddressConfirmation.stories-ouZdlC2E.js b/apps/portal/public/storybook/assets/AddressConfirmation.stories-ouZdlC2E.js new file mode 100644 index 00000000..5977e9dc --- /dev/null +++ b/apps/portal/public/storybook/assets/AddressConfirmation.stories-ouZdlC2E.js @@ -0,0 +1,16 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";function f({orderType:a,embedded:x,titleOverride:g}){return e.jsxs("div",{className:"p-6 bg-card border border-border rounded-lg space-y-4",children:[e.jsxs("div",{className:"flex items-center gap-2 mb-4",children:[e.jsx("div",{className:"w-5 h-5 bg-primary/20 rounded"}),e.jsx("h3",{className:"text-lg font-semibold text-foreground",children:g??"Service Address"}),e.jsx("span",{className:"ml-auto px-2 py-1 text-xs rounded-full bg-green-100 text-green-800",children:"Verified"})]}),e.jsxs("div",{className:"text-foreground space-y-1",children:[e.jsx("p",{className:"font-semibold",children:"2-20-9 Wakabayashi"}),e.jsx("p",{className:"text-muted-foreground",children:"Gramercy 201"}),e.jsx("p",{className:"text-muted-foreground",children:"Setagaya-ku, Tokyo 154-0023"}),e.jsx("p",{className:"text-muted-foreground",children:"Japan"})]}),e.jsxs("p",{className:"text-xs text-muted-foreground italic",children:["Order type: ",a??"N/A"," | Embedded: ",String(x??!1)]})]})}const y={title:"Features/Services/Base/AddressConfirmation",component:f,parameters:{layout:"centered"},decorators:[a=>e.jsx("div",{style:{maxWidth:500},children:e.jsx(a,{})})]},r={args:{orderType:"INTERNET",embedded:!1}},s={args:{orderType:"INTERNET",embedded:!0}},d={args:{orderType:"SIM",titleOverride:"Delivery Address"}};var t,o,n;r.parameters={...r.parameters,docs:{...(t=r.parameters)==null?void 0:t.docs,source:{originalSource:`{ + args: { + orderType: "INTERNET", + embedded: false + } +}`,...(n=(o=r.parameters)==null?void 0:o.docs)==null?void 0:n.source}}};var c,m,i;s.parameters={...s.parameters,docs:{...(c=s.parameters)==null?void 0:c.docs,source:{originalSource:`{ + args: { + orderType: "INTERNET", + embedded: true + } +}`,...(i=(m=s.parameters)==null?void 0:m.docs)==null?void 0:i.source}}};var l,p,u;d.parameters={...d.parameters,docs:{...(l=d.parameters)==null?void 0:l.docs,source:{originalSource:`{ + args: { + orderType: "SIM", + titleOverride: "Delivery Address" + } +}`,...(u=(p=d.parameters)==null?void 0:p.docs)==null?void 0:u.source}}};const b=["Default","Embedded","CustomTitle"];export{d as CustomTitle,r as Default,s as Embedded,b as __namedExportsOrder,y as default}; diff --git a/apps/portal/public/storybook/assets/AddressForm-CCWrICXS.js b/apps/portal/public/storybook/assets/AddressForm-CCWrICXS.js new file mode 100644 index 00000000..863ec4db --- /dev/null +++ b/apps/portal/public/storybook/assets/AddressForm-CCWrICXS.js @@ -0,0 +1,7 @@ +import{j as r}from"./jsx-runtime-D_zvdyIk.js";import{r as m}from"./index-JhL3uwfD.js";import{C as M,a as $}from"./countries-CY6LSu2r.js";import{u as W}from"./useZodForm-ByUWfWhF.js";import"./index-BKyvj4H5.js";import{b as Z}from"./schema-Dok_SHcO.js";import{F as V}from"./ExclamationTriangleIcon-Di4DJZFg.js";function H({title:e,titleId:s,...t},n){return m.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:n,"aria-labelledby":s},t),e?m.createElement("title",{id:s},e):null,m.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M15 10.5a3 3 0 1 1-6 0 3 3 0 0 1 6 0Z"}),m.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M19.5 10.5c0 7.142-7.5 11.25-7.5 11.25S4.5 17.642 4.5 10.5a7.5 7.5 0 1 1 15 0Z"}))}const Y=m.forwardRef(H),g=e=>e?e.length===2?e.toUpperCase():$(e)??e:"",G={address1:"Building / Room (Address 1)",address2:"Street / Block (Address 2)",city:"City",state:"State/Prefecture",postcode:"Postcode",country:"Country",countryCode:"Country Code",phoneNumber:"Phone Number",phoneCountryCode:"Country Dialing Code"},J={address1:"Gramercy 201",address2:"2-20-9 Wakabayashi",city:"Tokyo",state:"Tokyo",postcode:"100-0001",country:"Select Country",countryCode:"JP"},Q=["address1","city","state","postcode","country"],K=[{code:"",name:"Select Country"},...M];function y({field:e,type:s="input",hiddenFields:t,required:n,requiredFields:h,labels:c,placeholders:u,formValues:l,disabled:i,variant:w,getFieldError:v,onFieldChange:p,onBlur:x}){if(t.includes(e))return null;const b=n&&h.includes(e),C=v(e),j=!!C,o=`w-full px-3 py-2 border rounded-md focus:outline-none focus:ring-2 transition-colors ${j?"border-red-300 focus:ring-red-500 focus:border-red-500":"border-border focus:ring-blue-500 focus:border-blue-500"} ${i?"bg-muted cursor-not-allowed":"bg-card"}`;return r.jsxs("div",{className:w==="compact"?"mb-3":"mb-4",children:[r.jsxs("label",{className:"block text-sm font-medium text-foreground mb-1",children:[c[e],b&&r.jsx("span",{className:"text-red-500 ml-1",children:"*"})]}),s==="select"?r.jsx("select",{value:l[e]||"",onChange:d=>p(e,d.target.value),onBlur:()=>x(e),className:o,disabled:i,children:K.map(d=>r.jsx("option",{value:d.code,children:d.name},d.code))}):r.jsx("input",{type:"text",value:l[e]||"",onChange:d=>p(e,d.target.value),onBlur:()=>x(e),placeholder:u[e],className:o,disabled:i}),j&&r.jsxs("div",{className:"mt-1 flex items-center gap-1 text-red-600",children:[r.jsx(V,{className:"h-4 w-4 flex-shrink-0"}),r.jsx("span",{className:"text-sm",children:C})]})]},e)}function X({errors:e,hasTouched:s}){return e.length===0||!s?null:r.jsx("div",{className:"mt-4 p-3 bg-red-50 border border-red-200 rounded-lg",children:r.jsxs("div",{className:"flex items-start gap-2",children:[r.jsx(V,{className:"h-5 w-5 text-red-500 flex-shrink-0 mt-0.5"}),r.jsxs("div",{children:[r.jsx("p",{className:"text-sm font-medium text-red-800",children:"Please correct the following:"}),r.jsx("ul",{className:"mt-1 text-sm text-red-700 list-disc list-inside",children:e.map((t,n)=>r.jsx("li",{children:t},n))})]})]})})}function ee(e){const s=g(e.country),t=g(e.countryCode??s);return{address1:e.address1||"",address2:e.address2||"",city:e.city||"",state:e.state||"",postcode:e.postcode||"",country:s,countryCode:t,phoneNumber:e.phoneNumber||"",phoneCountryCode:e.phoneCountryCode||""}}function re(e,s,t){e==="country"?(t("country",s),t("countryCode",s)):e==="countryCode"?(t("countryCode",s),t("country",s)):t(e,s)}function se(e,s,t){const n={...t,[e]:s};return e==="country"?(n.country=s,n.countryCode=s):e==="countryCode"&&(n.countryCode=s,n.country=s),n}function te({title:e,description:s}){return r.jsxs("div",{className:"mb-6",children:[r.jsxs("div",{className:"flex items-center gap-2 mb-2",children:[r.jsx(Y,{className:"h-5 w-5 text-blue-600"}),r.jsx("h3",{className:"text-lg font-semibold text-foreground",children:e})]}),s&&r.jsx("p",{className:"text-sm text-muted-foreground",children:s})]})}function oe(e,s){const t={address1:e.address1,address2:e.address2,city:e.city,state:e.state,postcode:e.postcode,country:e.country,countryCode:e.countryCode,phoneNumber:e.phoneNumber,phoneCountryCode:e.phoneCountryCode};for(const[c,u]of Object.entries(t))if(u!==void 0){const l=c==="country"||c==="countryCode"?g(u):u||"";s(c,l)}const n=g(e.country),h=g(e.countryCode??e.country);s("country",n),s("countryCode",h)}const ne={inline:"",compact:"p-4 bg-muted rounded-lg border border-border",default:"p-6 bg-card border border-border rounded-lg"};function ae({initialAddress:e={},onChange:s,onValidationChange:t,title:n="Address Information",description:h,showTitle:c=!0,required:u=!0,requiredFields:l=Q,hiddenFields:i=[],fieldLabels:w={},fieldPlaceholders:v={},variant:p="default",disabled:x=!1,customValidation:b}){const C={...G,...w},j={...J,...v},o=W({schema:Z,initialValues:ee(e)}),d=(a,T)=>{if(x)return;re(a,T,o.setValue),b&&(t==null||t(b({...o.values,[a]:T})));const E=se(a,T,o.values),D=l.filter(N=>!i.includes(N)).every(N=>E[N]&&String(E[N]).trim());s&&D&&s(E,o.isValid)},S=o.setValue,{address1:k,address2:P,city:R,state:F,postcode:q,country:A,countryCode:L,phoneNumber:z,phoneCountryCode:O}=e??{},I=!!e;m.useEffect(()=>{I&&oe({address1:k,address2:P,city:R,state:F,postcode:q,country:A,countryCode:L,phoneNumber:z,phoneCountryCode:O},S)},[S,I,k,P,R,F,q,A,L,z,O]),m.useEffect(()=>{const a=Object.values(o.errors).filter(Boolean);t==null||t(a)},[o.errors,t]);const _=a=>o.touched[a]?o.errors[a]:void 0,f={hiddenFields:i,required:u,requiredFields:l,labels:C,placeholders:j,formValues:o.values,disabled:x,variant:p,getFieldError:_,onFieldChange:d,onBlur:a=>o.setTouched(a,!0)},B=Object.values(o.errors).filter(Boolean),U=Object.values(o.touched).some(Boolean);return r.jsxs("div",{className:ne[p],children:[c&&r.jsx(te,{title:n,description:h}),r.jsxs("div",{className:"space-y-4",children:[r.jsx(y,{field:"address2",...f}),r.jsx(y,{field:"address1",...f}),r.jsxs("div",{className:`grid gap-4 ${p==="compact"?"grid-cols-1 sm:grid-cols-3":"grid-cols-1 md:grid-cols-3"}`,children:[r.jsx(y,{field:"city",...f}),r.jsx(y,{field:"state",...f}),r.jsx(y,{field:"postcode",...f})]}),r.jsx(y,{field:"country",type:"select",...f})]}),r.jsx(X,{errors:B,hasTouched:U})]})}ae.__docgenInfo={description:"",methods:[],displayName:"AddressForm",props:{initialAddress:{required:!1,tsType:{name:"Partial",elements:[{name:"z.infer",elements:[{name:"addressSchema"}],raw:"z.infer"}],raw:"Partial
"},description:"",defaultValue:{value:"{}",computed:!1}},onChange:{required:!1,tsType:{name:"signature",type:"function",raw:"(address: Address, isValid: boolean) => void",signature:{arguments:[{type:{name:"z.infer",elements:[{name:"addressSchema"}],raw:"z.infer"},name:"address"},{type:{name:"boolean"},name:"isValid"}],return:{name:"void"}}},description:""},onValidationChange:{required:!1,tsType:{name:"signature",type:"function",raw:"(errors: string[]) => void",signature:{arguments:[{type:{name:"Array",elements:[{name:"string"}],raw:"string[]"},name:"errors"}],return:{name:"void"}}},description:""},title:{required:!1,tsType:{name:"string"},description:"",defaultValue:{value:'"Address Information"',computed:!1}},description:{required:!1,tsType:{name:"string"},description:""},showTitle:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"true",computed:!1}},required:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"true",computed:!1}},requiredFields:{required:!1,tsType:{name:"Array",elements:[{name:"unknown"}],raw:"(keyof Address)[]"},description:"",defaultValue:{value:`[ + "address1", + "city", + "state", + "postcode", + "country", +]`,computed:!1}},hiddenFields:{required:!1,tsType:{name:"Array",elements:[{name:"unknown"}],raw:"(keyof Address)[]"},description:"",defaultValue:{value:"[]",computed:!1}},fieldLabels:{required:!1,tsType:{name:"Partial",elements:[{name:"Record",elements:[{name:"z.infer",elements:[{name:"addressSchema"}],raw:"z.infer"},{name:"string"}],raw:"Record"}],raw:"Partial>"},description:"",defaultValue:{value:"{}",computed:!1}},fieldPlaceholders:{required:!1,tsType:{name:"Partial",elements:[{name:"Record",elements:[{name:"z.infer",elements:[{name:"addressSchema"}],raw:"z.infer"},{name:"string"}],raw:"Record"}],raw:"Partial>"},description:"",defaultValue:{value:"{}",computed:!1}},variant:{required:!1,tsType:{name:"union",raw:'"default" | "compact" | "inline"',elements:[{name:"literal",value:'"default"'},{name:"literal",value:'"compact"'},{name:"literal",value:'"inline"'}]},description:"",defaultValue:{value:'"default"',computed:!1}},disabled:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"false",computed:!1}},customValidation:{required:!1,tsType:{name:"signature",type:"function",raw:"(address: Partial
) => string[]",signature:{arguments:[{type:{name:"Partial",elements:[{name:"z.infer",elements:[{name:"addressSchema"}],raw:"z.infer"}],raw:"Partial
"},name:"address"}],return:{name:"Array",elements:[{name:"string"}],raw:"string[]"}}},description:""}}};export{ae as A,Y as F}; diff --git a/apps/portal/public/storybook/assets/AddressForm.stories-kK1qsigB.js b/apps/portal/public/storybook/assets/AddressForm.stories-kK1qsigB.js new file mode 100644 index 00000000..bdf12f5f --- /dev/null +++ b/apps/portal/public/storybook/assets/AddressForm.stories-kK1qsigB.js @@ -0,0 +1,52 @@ +import{j as i}from"./jsx-runtime-D_zvdyIk.js";import{A as D}from"./AddressForm-CCWrICXS.js";import"./index-JhL3uwfD.js";import"./countries-CY6LSu2r.js";import"./useZodForm-ByUWfWhF.js";import"./error-handling-CCxr4Gjn.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./schema-Dok_SHcO.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";const q={title:"Features/Services/Base/AddressForm",component:D,parameters:{layout:"centered"},decorators:[j=>i.jsx("div",{style:{maxWidth:600},children:i.jsx(j,{})})]},e={args:{onChange:()=>{}}},a={args:{initialAddress:{address1:"Gramercy 201",address2:"2-20-9 Wakabayashi",city:"Setagaya-ku",state:"Tokyo",postcode:"154-0023",country:"JP"},onChange:()=>{}}},r={args:{variant:"compact",onChange:()=>{}}},s={args:{variant:"inline",showTitle:!1,onChange:()=>{}}},t={args:{initialAddress:{address1:"Gramercy 201",address2:"2-20-9 Wakabayashi",city:"Setagaya-ku",state:"Tokyo",postcode:"154-0023",country:"JP"},disabled:!0,onChange:()=>{}}},n={args:{title:"Installation Address",description:"Enter the address where internet service will be installed.",onChange:()=>{}}},o={args:{showTitle:!1,onChange:()=>{}}};var d,c,m;e.parameters={...e.parameters,docs:{...(d=e.parameters)==null?void 0:d.docs,source:{originalSource:`{ + args: { + onChange: () => {} + } +}`,...(m=(c=e.parameters)==null?void 0:c.docs)==null?void 0:m.source}}};var l,p,g;a.parameters={...a.parameters,docs:{...(l=a.parameters)==null?void 0:l.docs,source:{originalSource:`{ + args: { + initialAddress: { + address1: "Gramercy 201", + address2: "2-20-9 Wakabayashi", + city: "Setagaya-ku", + state: "Tokyo", + postcode: "154-0023", + country: "JP" + }, + onChange: () => {} + } +}`,...(g=(p=a.parameters)==null?void 0:p.docs)==null?void 0:g.source}}};var u,h,y;r.parameters={...r.parameters,docs:{...(u=r.parameters)==null?void 0:u.docs,source:{originalSource:`{ + args: { + variant: "compact", + onChange: () => {} + } +}`,...(y=(h=r.parameters)==null?void 0:h.docs)==null?void 0:y.source}}};var C,k,S;s.parameters={...s.parameters,docs:{...(C=s.parameters)==null?void 0:C.docs,source:{originalSource:`{ + args: { + variant: "inline", + showTitle: false, + onChange: () => {} + } +}`,...(S=(k=s.parameters)==null?void 0:k.docs)==null?void 0:S.source}}};var T,A,b;t.parameters={...t.parameters,docs:{...(T=t.parameters)==null?void 0:T.docs,source:{originalSource:`{ + args: { + initialAddress: { + address1: "Gramercy 201", + address2: "2-20-9 Wakabayashi", + city: "Setagaya-ku", + state: "Tokyo", + postcode: "154-0023", + country: "JP" + }, + disabled: true, + onChange: () => {} + } +}`,...(b=(A=t.parameters)==null?void 0:A.docs)==null?void 0:b.source}}};var f,v,w;n.parameters={...n.parameters,docs:{...(f=n.parameters)==null?void 0:f.docs,source:{originalSource:`{ + args: { + title: "Installation Address", + description: "Enter the address where internet service will be installed.", + onChange: () => {} + } +}`,...(w=(v=n.parameters)==null?void 0:v.docs)==null?void 0:w.source}}};var x,W,I;o.parameters={...o.parameters,docs:{...(x=o.parameters)==null?void 0:x.docs,source:{originalSource:`{ + args: { + showTitle: false, + onChange: () => {} + } +}`,...(I=(W=o.parameters)==null?void 0:W.docs)==null?void 0:I.source}}};const z=["Default","WithInitialAddress","CompactVariant","InlineVariant","Disabled","CustomTitle","NoTitle"];export{r as CompactVariant,n as CustomTitle,e as Default,t as Disabled,s as InlineVariant,o as NoTitle,a as WithInitialAddress,z as __namedExportsOrder,q as default}; diff --git a/apps/portal/public/storybook/assets/AddressStepJapan.stories-BKBuOfMf.js b/apps/portal/public/storybook/assets/AddressStepJapan.stories-BKBuOfMf.js new file mode 100644 index 00000000..a7950477 --- /dev/null +++ b/apps/portal/public/storybook/assets/AddressStepJapan.stories-BKBuOfMf.js @@ -0,0 +1,14 @@ +import{j as k}from"./jsx-runtime-D_zvdyIk.js";import{r as c}from"./index-JhL3uwfD.js";import{J as V,R as g}from"./JapanAddressForm-CUdYD2hV.js";import{p as I}from"./schema-Cvvg7S_W.js";import"./button-C8_cybvS.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./spinner-mU4XywER.js";import"./input-BbGJiz0K.js";import"./password-input-D4khGh8v.js";import"./createLucideIcon-CctB0W3q.js";import"./checkbox-DahUyQbt.js";import"./label-C25VH7yk.js";import"./error-message-DeFFz6H_.js";import"./ExclamationCircleIcon-jFfW0Ax_.js";import"./status-pill-wWp9xkwA.js";import"./badge-BdMsasyi.js";import"./loading-overlay-DMJTiFny.js";import"./error-state-BSicqqE6.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./ArrowPathIcon-CZjG6RfV.js";import"./empty-state-DRUGJ9ip.js";import"./PlusIcon-DGufmf06.js";import"./inline-toast-DQJ-O9wc.js";import"./index-CNXKWNLp.js";import"./proxy-ZkTvaR74.js";import"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import"./logo-f0fprTjz.js";import"./next-image-69WeRggt.js";import"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./Squares2X2Icon-BMQM_Wy1.js";import"./animated-container-DyAZ9gmw.js";import"./FormField-C0UylACv.js";import"./ZipCodeInput-C0pEKKnJ.js";import"./countries-CY6LSu2r.js";import"./useQuery-tNNTAmfW.js";import"./QueryClientProvider-D7wSf7Op.js";import"./circle-check-big-Bab09Iah.js";import"./search-DSeV2urL.js";import"./AnimatedSection-CccjFZBU.js";import"./ProgressIndicator-zQZ52Xi8.js";import"./BilingualValue-B84DkgyY.js";import"./sparkles-q054t7ye.js";import"./map-pin-Bm-ztWPO.js";import"./chevron-right-C40ybnlz.js";import"./house-pESumjO8.js";import"./building-2-C7pcwIk2.js";import"./text-CXa-DJQz.js";function M(s){const r=I(s);return{address1:r.address1||"",address2:r.address2||"",city:r.city||"",state:r.state||"",postcode:r.postcode||"",country:"JP",countryCode:"JP"}}function R(s){const r=(s.address1||"").trim(),a=r.lastIndexOf(" ");let i=r,e="";if(a>0){const t=r.slice(a+1);/^[0-9A-Z]+$/i.test(t)&&t.length<=10&&(i=r.slice(0,a),e=t)}const m=s.postcode||s.state||s.city?e?g.APARTMENT:g.HOUSE:void 0;return{postcode:s.postcode||"",prefecture:s.state||"",city:s.city||"",town:s.address2||"",streetAddress:"",buildingName:i||"",roomNumber:e||"",residenceType:m,prefectureJa:"",cityJa:"",townJa:""}}function x({form:s,onJapaneseAddressChange:r}){const{values:a,errors:i,touched:e,setValue:n,setTouchedField:m}=s,t=a.address,h=c.useRef(!0),w=c.useMemo(()=>({...{postcode:t.postcode||"",prefecture:t.state||"",city:t.city||"",town:t.address2||"",streetAddress:"",buildingName:"",roomNumber:"",residenceType:void 0,prefectureJa:"",cityJa:"",townJa:""},...R(t)}),[]),d=o=>{const p=`address.${o}`;return e[p]||e.address?i[p]??i[o]:void 0},v={postcode:d("postcode"),prefecture:d("state"),city:d("city"),town:d("address2"),buildingName:d("address1"),roomNumber:d("address1")},C={postcode:e["address.postcode"]||e.address,prefecture:e["address.state"]||e.address,city:e["address.city"]||e.address,town:e["address.address2"]||e.address,buildingName:e["address.address1"]||e.address,roomNumber:e["address.address1"]||e.address},W=c.useCallback((o,p)=>{if(h.current){h.current=!1;return}const u=M(o);n("address",u),r==null||r(o)},[n,r]),j=c.useCallback(o=>{const u={postcode:"address.postcode",prefecture:"address.state",city:"address.city",town:"address.address2",buildingName:"address.address1",roomNumber:"address.address1"}[o];u&&m(u)},[m]);return c.useEffect(()=>{t.country||n("address",{...t,country:"JP",countryCode:"JP"})},[]),k.jsx(V,{initialValues:w,onChange:W,errors:v,touched:C,onBlur:j})}x.__docgenInfo={description:"",methods:[],displayName:"AddressStepJapan",props:{form:{required:!0,tsType:{name:"FormInterface"},description:""},onJapaneseAddressChange:{required:!1,tsType:{name:"signature",type:"function",raw:"(data: BilingualAddress) => void",signature:{arguments:[{type:{name:"z.infer",elements:[{name:"bilingualAddressSchema"}],raw:"z.infer"},name:"data"}],return:{name:"void"}}},description:`Called when Japanese address data changes. +Use this to capture Japanese fields for Salesforce sync.`}}};const _={values:{address:{address1:"",address2:"",city:"",state:"",postcode:"",country:"JP",countryCode:"JP"}},errors:{},touched:{},setValue:()=>{},setTouchedField:()=>{}},q={values:{address:{address1:"Sunshine Mansion 201",address2:"Nishi-Shinjuku",city:"Shinjuku-ku",state:"Tokyo",postcode:"160-0023",country:"JP",countryCode:"JP"}},errors:{},touched:{},setValue:()=>{},setTouchedField:()=>{}},B={values:{address:{address1:"",address2:"",city:"",state:"",postcode:"",country:"JP",countryCode:"JP"}},errors:{"address.postcode":"Postal code is required","address.state":"Prefecture is required"},touched:{address:!0,"address.postcode":!0,"address.state":!0},setValue:()=>{},setTouchedField:()=>{}},ze={title:"Features/Address/AddressStepJapan",component:x,parameters:{layout:"padded"}},l={args:{form:_}},f={args:{form:q}},y={args:{form:B}};var E,J,b;l.parameters={...l.parameters,docs:{...(E=l.parameters)==null?void 0:E.docs,source:{originalSource:`{ + args: { + form: emptyForm + } +}`,...(b=(J=l.parameters)==null?void 0:J.docs)==null?void 0:b.source}}};var F,A,N;f.parameters={...f.parameters,docs:{...(F=f.parameters)==null?void 0:F.docs,source:{originalSource:`{ + args: { + form: filledForm + } +}`,...(N=(A=f.parameters)==null?void 0:A.docs)==null?void 0:N.source}}};var P,S,T;y.parameters={...y.parameters,docs:{...(P=y.parameters)==null?void 0:P.docs,source:{originalSource:`{ + args: { + form: formWithErrors + } +}`,...(T=(S=y.parameters)==null?void 0:S.docs)==null?void 0:T.source}}};const Ue=["Empty","WithExistingAddress","WithValidationErrors"];export{l as Empty,f as WithExistingAddress,y as WithValidationErrors,Ue as __namedExportsOrder,ze as default}; diff --git a/apps/portal/public/storybook/assets/AlertBanner-Bnlyj1xc.js b/apps/portal/public/storybook/assets/AlertBanner-Bnlyj1xc.js new file mode 100644 index 00000000..a8109a6f --- /dev/null +++ b/apps/portal/public/storybook/assets/AlertBanner-Bnlyj1xc.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{F as g}from"./XCircleIcon-CiVBnngB.js";import{F as b}from"./ExclamationTriangleIcon-Di4DJZFg.js";import{F as w}from"./InformationCircleIcon-Clz7d-56.js";import{F as v}from"./CheckCircleIcon-Dva35lTP.js";const j={success:{bg:"bg-success-soft",border:"border-success/30",text:"text-success",icon:"text-success",Icon:v},info:{bg:"bg-info-soft",border:"border-info/30",text:"text-info",icon:"text-info",Icon:w},warning:{bg:"bg-warning-soft",border:"border-warning/35",text:"text-foreground",icon:"text-warning",Icon:b},error:{bg:"bg-danger-soft",border:"border-danger/30",text:"text-danger",icon:"text-danger",Icon:g}};function N({variant:s="info",title:a,children:t,icon:n,size:i="md",elevated:d=!1,onClose:o,className:l,...c}){const r=j[s],m=r.Icon,u=i==="sm"?"p-3":"p-4",f="rounded-xl",p=d?"shadow-sm":"",x=s==="error"||s==="warning"?"alert":"status";return e.jsx("div",{className:[f,u,"border",p,r.bg,r.border,l].filter(Boolean).join(" "),role:x,...c,children:e.jsxs("div",{className:"flex items-start gap-3",children:[e.jsx("div",{className:"mt-0.5 flex-shrink-0",children:n||e.jsx(m,{className:["h-5 w-5",r.icon].join(" ")})}),e.jsxs("div",{className:"flex-1",children:[a&&e.jsx("p",{className:["font-medium",r.text].join(" "),children:a}),t&&e.jsx("div",{className:["text-sm mt-1 text-foreground/80"].join(" "),children:t})]}),o&&e.jsx("button",{onClick:o,"aria-label":"Close alert",className:"text-muted-foreground hover:text-foreground transition-colors",children:"×"})]})})}N.__docgenInfo={description:"",methods:[],displayName:"AlertBanner",props:{variant:{required:!1,tsType:{name:"union",raw:'"success" | "info" | "warning" | "error"',elements:[{name:"literal",value:'"success"'},{name:"literal",value:'"info"'},{name:"literal",value:'"warning"'},{name:"literal",value:'"error"'}]},description:"",defaultValue:{value:'"info"',computed:!1}},title:{required:!1,tsType:{name:"string"},description:""},children:{required:!1,tsType:{name:"ReactReactNode",raw:"React.ReactNode"},description:""},icon:{required:!1,tsType:{name:"ReactReactNode",raw:"React.ReactNode"},description:""},size:{required:!1,tsType:{name:"union",raw:'"sm" | "md"',elements:[{name:"literal",value:'"sm"'},{name:"literal",value:'"md"'}]},description:"",defaultValue:{value:'"md"',computed:!1}},elevated:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"false",computed:!1}},onClose:{required:!1,tsType:{name:"signature",type:"function",raw:"() => void",signature:{arguments:[],return:{name:"void"}}},description:""}}};export{N as A}; diff --git a/apps/portal/public/storybook/assets/AlertBanner.stories-BzkAEqJu.js b/apps/portal/public/storybook/assets/AlertBanner.stories-BzkAEqJu.js new file mode 100644 index 00000000..f6b98cc2 --- /dev/null +++ b/apps/portal/public/storybook/assets/AlertBanner.stories-BzkAEqJu.js @@ -0,0 +1,45 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{A as r}from"./AlertBanner-Bnlyj1xc.js";import"./XCircleIcon-CiVBnngB.js";import"./index-JhL3uwfD.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./InformationCircleIcon-Clz7d-56.js";import"./CheckCircleIcon-Dva35lTP.js";const H={title:"Molecules/AlertBanner",component:r,argTypes:{variant:{control:"select",options:["success","info","warning","error"]},size:{control:"select",options:["sm","md"]},elevated:{control:"boolean"}}},a={args:{variant:"info",title:"New feature available",children:"Check out the new dashboard layout."}},n={args:{variant:"success",title:"Payment received",children:"Your payment has been processed successfully."}},s={args:{variant:"warning",title:"Account expiring",children:"Your subscription expires in 3 days."}},t={args:{variant:"error",title:"Payment failed",children:"Please update your payment method."}},o={render:()=>e.jsxs("div",{className:"flex flex-col gap-4 w-[500px]",children:[e.jsx(r,{variant:"info",title:"Info",children:"Informational message"}),e.jsx(r,{variant:"success",title:"Success",children:"Operation completed"}),e.jsx(r,{variant:"warning",title:"Warning",children:"Attention needed"}),e.jsx(r,{variant:"error",title:"Error",children:"Something went wrong"})]})},i={args:{variant:"info",title:"Dismissible",children:"Click the X to close.",onClose:()=>alert("Closed!")}},c={args:{variant:"warning",title:"Heads up",size:"sm"}};var l,d,m;a.parameters={...a.parameters,docs:{...(l=a.parameters)==null?void 0:l.docs,source:{originalSource:`{ + args: { + variant: "info", + title: "New feature available", + children: "Check out the new dashboard layout." + } +}`,...(m=(d=a.parameters)==null?void 0:d.docs)==null?void 0:m.source}}};var p,u,g;n.parameters={...n.parameters,docs:{...(p=n.parameters)==null?void 0:p.docs,source:{originalSource:`{ + args: { + variant: "success", + title: "Payment received", + children: "Your payment has been processed successfully." + } +}`,...(g=(u=n.parameters)==null?void 0:u.docs)==null?void 0:g.source}}};var h,v,f;s.parameters={...s.parameters,docs:{...(h=s.parameters)==null?void 0:h.docs,source:{originalSource:`{ + args: { + variant: "warning", + title: "Account expiring", + children: "Your subscription expires in 3 days." + } +}`,...(f=(v=s.parameters)==null?void 0:v.docs)==null?void 0:f.source}}};var x,w,y;t.parameters={...t.parameters,docs:{...(x=t.parameters)==null?void 0:x.docs,source:{originalSource:`{ + args: { + variant: "error", + title: "Payment failed", + children: "Please update your payment method." + } +}`,...(y=(w=t.parameters)==null?void 0:w.docs)==null?void 0:y.source}}};var A,S,b;o.parameters={...o.parameters,docs:{...(A=o.parameters)==null?void 0:A.docs,source:{originalSource:`{ + render: () =>
+ Informational message + Operation completed + Attention needed + Something went wrong +
+}`,...(b=(S=o.parameters)==null?void 0:S.docs)==null?void 0:b.source}}};var B,C,j;i.parameters={...i.parameters,docs:{...(B=i.parameters)==null?void 0:B.docs,source:{originalSource:`{ + args: { + variant: "info", + title: "Dismissible", + children: "Click the X to close.", + onClose: () => alert("Closed!") + } +}`,...(j=(C=i.parameters)==null?void 0:C.docs)==null?void 0:j.source}}};var E,I,P;c.parameters={...c.parameters,docs:{...(E=c.parameters)==null?void 0:E.docs,source:{originalSource:`{ + args: { + variant: "warning", + title: "Heads up", + size: "sm" + } +}`,...(P=(I=c.parameters)==null?void 0:I.docs)==null?void 0:P.source}}};const V=["Info","Success","Warning","Error","AllVariants","Closable","Small"];export{o as AllVariants,i as Closable,t as Error,a as Info,c as Small,n as Success,s as Warning,V as __namedExportsOrder,H as default}; diff --git a/apps/portal/public/storybook/assets/AnimatedCard-DFAiX4zP.js b/apps/portal/public/storybook/assets/AnimatedCard-DFAiX4zP.js new file mode 100644 index 00000000..c4daaaad --- /dev/null +++ b/apps/portal/public/storybook/assets/AnimatedCard-DFAiX4zP.js @@ -0,0 +1 @@ +import{j as u}from"./jsx-runtime-D_zvdyIk.js";import{m as c}from"./proxy-ZkTvaR74.js";const m="0 1px 3px 0 rgb(0 0 0 / 0.06), 0 1px 2px -1px rgb(0 0 0 / 0.06)",p="0 4px 6px -1px rgb(0 0 0 / 0.07), 0 2px 4px -2px rgb(0 0 0 / 0.07)";function f({children:s,className:r="",variant:a="default",onClick:n,disabled:e=!1}){const i="bg-card text-card-foreground rounded-xl border",t={default:"border-border",highlighted:"border-primary/35 ring-1 ring-primary/15",success:"border-success/25 ring-1 ring-success/15",static:"border-border"},d=n&&!e?"cursor-pointer":"",o=e?"opacity-50 cursor-not-allowed":"",l=a==="static"||e;return u.jsx(c.div,{className:`${i} ${t[a]} ${d} ${o} ${r}`,initial:{boxShadow:m},whileHover:l?{}:{boxShadow:p},transition:{duration:.2},onClick:e?void 0:n,children:s})}f.__docgenInfo={description:"",methods:[],displayName:"AnimatedCard",props:{children:{required:!0,tsType:{name:"ReactNode"},description:""},className:{required:!1,tsType:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}]},description:"",defaultValue:{value:'""',computed:!1}},variant:{required:!1,tsType:{name:"union",raw:'"default" | "highlighted" | "success" | "static" | undefined',elements:[{name:"literal",value:'"default"'},{name:"literal",value:'"highlighted"'},{name:"literal",value:'"success"'},{name:"literal",value:'"static"'},{name:"undefined"}]},description:"",defaultValue:{value:'"default"',computed:!1}},onClick:{required:!1,tsType:{name:"union",raw:"(() => void) | undefined",elements:[{name:"unknown"},{name:"undefined"}]},description:""},disabled:{required:!1,tsType:{name:"union",raw:"boolean | undefined",elements:[{name:"boolean"},{name:"undefined"}]},description:"",defaultValue:{value:"false",computed:!1}}}};export{f as A}; diff --git a/apps/portal/public/storybook/assets/AnimatedCard.stories-DN795hbd.js b/apps/portal/public/storybook/assets/AnimatedCard.stories-DN795hbd.js new file mode 100644 index 00000000..8761831f --- /dev/null +++ b/apps/portal/public/storybook/assets/AnimatedCard.stories-DN795hbd.js @@ -0,0 +1,23 @@ +import{j as a}from"./jsx-runtime-D_zvdyIk.js";import{A as e}from"./AnimatedCard-DFAiX4zP.js";import"./proxy-ZkTvaR74.js";import"./index-JhL3uwfD.js";const f={title:"Molecules/AnimatedCard",component:e,argTypes:{variant:{control:"select",options:["default","highlighted","success","static"]},disabled:{control:"boolean"}}},s={args:{children:a.jsx("div",{className:"p-6",children:"Default animated card content"})}},r={render:()=>a.jsxs("div",{className:"grid grid-cols-2 gap-4 w-[600px]",children:[a.jsx(e,{variant:"default",children:a.jsx("div",{className:"p-6",children:"Default"})}),a.jsx(e,{variant:"highlighted",children:a.jsx("div",{className:"p-6",children:"Highlighted"})}),a.jsx(e,{variant:"success",children:a.jsx("div",{className:"p-6",children:"Success"})}),a.jsx(e,{variant:"static",children:a.jsx("div",{className:"p-6",children:"Static"})})]})},i={args:{onClick:()=>alert("Clicked!"),children:a.jsx("div",{className:"p-6",children:"Click me! (interactive card)"})}},d={args:{disabled:!0,onClick:()=>{},children:a.jsx("div",{className:"p-6",children:"Disabled card"})}};var c,t,n;s.parameters={...s.parameters,docs:{...(c=s.parameters)==null?void 0:c.docs,source:{originalSource:`{ + args: { + children:
Default animated card content
+ } +}`,...(n=(t=s.parameters)==null?void 0:t.docs)==null?void 0:n.source}}};var l,o,m;r.parameters={...r.parameters,docs:{...(l=r.parameters)==null?void 0:l.docs,source:{originalSource:`{ + render: () =>
+
Default
+
Highlighted
+
Success
+
Static
+
+}`,...(m=(o=r.parameters)==null?void 0:o.docs)==null?void 0:m.source}}};var p,v,h;i.parameters={...i.parameters,docs:{...(p=i.parameters)==null?void 0:p.docs,source:{originalSource:`{ + args: { + onClick: () => alert("Clicked!"), + children:
Click me! (interactive card)
+ } +}`,...(h=(v=i.parameters)==null?void 0:v.docs)==null?void 0:h.source}}};var u,g,x;d.parameters={...d.parameters,docs:{...(u=d.parameters)==null?void 0:u.docs,source:{originalSource:`{ + args: { + disabled: true, + onClick: () => {}, + children:
Disabled card
+ } +}`,...(x=(g=d.parameters)==null?void 0:g.docs)==null?void 0:x.source}}};const D=["Default","AllVariants","Interactive","Disabled"];export{r as AllVariants,s as Default,d as Disabled,i as Interactive,D as __namedExportsOrder,f as default}; diff --git a/apps/portal/public/storybook/assets/AnimatedSection-CccjFZBU.js b/apps/portal/public/storybook/assets/AnimatedSection-CccjFZBU.js new file mode 100644 index 00000000..38f36d17 --- /dev/null +++ b/apps/portal/public/storybook/assets/AnimatedSection-CccjFZBU.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{A as o}from"./index-CNXKWNLp.js";import{m as n}from"./proxy-ZkTvaR74.js";function r({show:t,children:i,delay:a=0}){return e.jsx(o,{initial:!1,children:t&&e.jsx(n.div,{initial:{height:0,opacity:0},animate:{height:"auto",opacity:1},exit:{height:0,opacity:0},transition:{duration:.5,ease:"easeOut",delay:a/1e3},style:{overflow:"hidden"},children:i})})}r.__docgenInfo={description:"",methods:[],displayName:"AnimatedSection",props:{show:{required:!0,tsType:{name:"boolean"},description:""},children:{required:!0,tsType:{name:"ReactReactNode",raw:"React.ReactNode"},description:""},delay:{required:!1,tsType:{name:"number"},description:"",defaultValue:{value:"0",computed:!1}}}};export{r as A}; diff --git a/apps/portal/public/storybook/assets/AnimatedSection.stories-BJ1_MTYj.js b/apps/portal/public/storybook/assets/AnimatedSection.stories-BJ1_MTYj.js new file mode 100644 index 00000000..01fd9569 --- /dev/null +++ b/apps/portal/public/storybook/assets/AnimatedSection.stories-BJ1_MTYj.js @@ -0,0 +1,25 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{A as h}from"./AnimatedSection-CccjFZBU.js";import"./index-CNXKWNLp.js";import"./index-JhL3uwfD.js";import"./proxy-ZkTvaR74.js";const f={title:"Features/Address/AnimatedSection",component:h,parameters:{layout:"centered"}},r={args:{show:!0,delay:0,children:e.jsx("div",{className:"p-4 border border-border rounded-lg bg-card",children:e.jsx("p",{className:"text-foreground",children:"This content is visible with animation."})})}},s={args:{show:!1,delay:0,children:e.jsx("div",{className:"p-4 border border-border rounded-lg bg-card",children:e.jsx("p",{className:"text-foreground",children:"This content is hidden."})})}},a={args:{show:!0,delay:300,children:e.jsx("div",{className:"p-4 border border-border rounded-lg bg-card",children:e.jsx("p",{className:"text-foreground",children:"This content appears with a 300ms delay."})})}};var d,o,n;r.parameters={...r.parameters,docs:{...(d=r.parameters)==null?void 0:d.docs,source:{originalSource:`{ + args: { + show: true, + delay: 0, + children:
+

This content is visible with animation.

+
+ } +}`,...(n=(o=r.parameters)==null?void 0:o.docs)==null?void 0:n.source}}};var t,i,c;s.parameters={...s.parameters,docs:{...(t=s.parameters)==null?void 0:t.docs,source:{originalSource:`{ + args: { + show: false, + delay: 0, + children:
+

This content is hidden.

+
+ } +}`,...(c=(i=s.parameters)==null?void 0:i.docs)==null?void 0:c.source}}};var l,m,p;a.parameters={...a.parameters,docs:{...(l=a.parameters)==null?void 0:l.docs,source:{originalSource:`{ + args: { + show: true, + delay: 300, + children:
+

This content appears with a 300ms delay.

+
+ } +}`,...(p=(m=a.parameters)==null?void 0:m.docs)==null?void 0:p.source}}};const v=["Visible","Hidden","WithDelay"];export{s as Hidden,r as Visible,a as WithDelay,v as __namedExportsOrder,f as default}; diff --git a/apps/portal/public/storybook/assets/ArrowDownTrayIcon-B9boZoDw.js b/apps/portal/public/storybook/assets/ArrowDownTrayIcon-B9boZoDw.js new file mode 100644 index 00000000..b62a6161 --- /dev/null +++ b/apps/portal/public/storybook/assets/ArrowDownTrayIcon-B9boZoDw.js @@ -0,0 +1 @@ +import{r}from"./index-JhL3uwfD.js";function a({title:e,titleId:o,...t},n){return r.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:n,"aria-labelledby":o},t),e?r.createElement("title",{id:o},e):null,r.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M3 16.5v2.25A2.25 2.25 0 0 0 5.25 21h13.5A2.25 2.25 0 0 0 21 18.75V16.5M16.5 12 12 16.5m0 0L7.5 12m4.5 4.5V3"}))}const i=r.forwardRef(a);export{i as F}; diff --git a/apps/portal/public/storybook/assets/ArrowLeftIcon-Cw1eswTb.js b/apps/portal/public/storybook/assets/ArrowLeftIcon-Cw1eswTb.js new file mode 100644 index 00000000..05eb0f9b --- /dev/null +++ b/apps/portal/public/storybook/assets/ArrowLeftIcon-Cw1eswTb.js @@ -0,0 +1 @@ +import{r as e}from"./index-JhL3uwfD.js";function a({title:r,titleId:t,...o},n){return e.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:n,"aria-labelledby":t},o),r?e.createElement("title",{id:t},r):null,e.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M10.5 19.5 3 12m0 0 7.5-7.5M3 12h18"}))}const i=e.forwardRef(a);export{i as F}; diff --git a/apps/portal/public/storybook/assets/ArrowPathIcon-CZjG6RfV.js b/apps/portal/public/storybook/assets/ArrowPathIcon-CZjG6RfV.js new file mode 100644 index 00000000..565bedf2 --- /dev/null +++ b/apps/portal/public/storybook/assets/ArrowPathIcon-CZjG6RfV.js @@ -0,0 +1 @@ +import{r as e}from"./index-JhL3uwfD.js";function n({title:r,titleId:t,...o},a){return e.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:a,"aria-labelledby":t},o),r?e.createElement("title",{id:t},r):null,e.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M16.023 9.348h4.992v-.001M2.985 19.644v-4.992m0 0h4.992m-4.993 0 3.181 3.183a8.25 8.25 0 0 0 13.803-3.7M4.031 9.865a8.25 8.25 0 0 1 13.803-3.7l3.181 3.182m0-4.991v4.99"}))}const i=e.forwardRef(n);export{i as F}; diff --git a/apps/portal/public/storybook/assets/ArrowRightIcon--Vuz7Q7x.js b/apps/portal/public/storybook/assets/ArrowRightIcon--Vuz7Q7x.js new file mode 100644 index 00000000..2f5b3d17 --- /dev/null +++ b/apps/portal/public/storybook/assets/ArrowRightIcon--Vuz7Q7x.js @@ -0,0 +1 @@ +import{r as e}from"./index-JhL3uwfD.js";function a({title:r,titleId:t,...o},n){return e.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:n,"aria-labelledby":t},o),r?e.createElement("title",{id:t},r):null,e.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M13.5 4.5 21 12m0 0-7.5 7.5M21 12H3"}))}const s=e.forwardRef(a);export{s as F}; diff --git a/apps/portal/public/storybook/assets/ArrowTopRightOnSquareIcon-CouP_SCN.js b/apps/portal/public/storybook/assets/ArrowTopRightOnSquareIcon-CouP_SCN.js new file mode 100644 index 00000000..2b52bef9 --- /dev/null +++ b/apps/portal/public/storybook/assets/ArrowTopRightOnSquareIcon-CouP_SCN.js @@ -0,0 +1 @@ +import{r as e}from"./index-JhL3uwfD.js";function a({title:r,titleId:o,...t},n){return e.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:n,"aria-labelledby":o},t),r?e.createElement("title",{id:o},r):null,e.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M13.5 6H5.25A2.25 2.25 0 0 0 3 8.25v10.5A2.25 2.25 0 0 0 5.25 21h10.5A2.25 2.25 0 0 0 18 18.75V10.5m-10.5 6L21 3m0 0h-5.25M21 3v5.25"}))}const s=e.forwardRef(a);export{s as F}; diff --git a/apps/portal/public/storybook/assets/AuthLayout-DNr24V9g.js b/apps/portal/public/storybook/assets/AuthLayout-DNr24V9g.js new file mode 100644 index 00000000..f1ca62b8 --- /dev/null +++ b/apps/portal/public/storybook/assets/AuthLayout-DNr24V9g.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{L as d}from"./next-link-BmD4fPSy.js";import{F as c}from"./ArrowLeftIcon-Cw1eswTb.js";function m({children:r,title:a,subtitle:t,showBackButton:o=!1,backHref:l="/",backLabel:i="Back to Home",wide:n=!1}){const s=n?"max-w-xl":"max-w-md";return e.jsxs("div",{className:"w-full flex flex-col items-center justify-center min-h-[calc(100dvh-4rem)] py-8 sm:py-12",children:[e.jsxs("div",{className:`w-full ${s}`,children:[o&&e.jsx("div",{className:"mb-6",children:e.jsxs(d,{href:l,className:"inline-flex items-center text-sm font-medium text-muted-foreground hover:text-foreground transition-colors group",children:[e.jsx(c,{className:"h-4 w-4 mr-2 transition-transform group-hover:-translate-x-0.5"}),i]})}),e.jsxs("div",{className:"text-center",children:[e.jsx("h1",{className:"text-2xl font-bold tracking-tight text-foreground mb-2 font-heading",children:a}),t&&e.jsx("p",{className:"text-sm text-muted-foreground leading-relaxed max-w-sm mx-auto",children:t})]})]}),e.jsxs("div",{className:`mt-6 w-full ${s}`,children:[e.jsx("div",{className:"bg-card text-card-foreground py-8 px-6 rounded-xl border border-border shadow-sm sm:px-10",children:r}),e.jsx("div",{className:"mt-6 text-center",children:e.jsxs("p",{className:"text-xs text-muted-foreground/60 flex items-center justify-center gap-1.5",children:[e.jsx("span",{className:"h-2 w-2 rounded-full bg-success"}),"Secure login protected by SSL encryption"]})})]})]})}m.__docgenInfo={description:"",methods:[],displayName:"AuthLayout",props:{children:{required:!0,tsType:{name:"ReactReactNode",raw:"React.ReactNode"},description:""},title:{required:!0,tsType:{name:"string"},description:""},subtitle:{required:!1,tsType:{name:"string"},description:""},showBackButton:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"false",computed:!1}},backHref:{required:!1,tsType:{name:"string"},description:"",defaultValue:{value:'"/"',computed:!1}},backLabel:{required:!1,tsType:{name:"string"},description:"",defaultValue:{value:'"Back to Home"',computed:!1}},wide:{required:!1,tsType:{name:"boolean"},description:"Use wider layout for forms with more content like signup",defaultValue:{value:"false",computed:!1}}}};export{m as A}; diff --git a/apps/portal/public/storybook/assets/AuthLayout.stories-CPD8T6zA.js b/apps/portal/public/storybook/assets/AuthLayout.stories-CPD8T6zA.js new file mode 100644 index 00000000..e98f29c9 --- /dev/null +++ b/apps/portal/public/storybook/assets/AuthLayout.stories-CPD8T6zA.js @@ -0,0 +1,41 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{A as m}from"./AuthLayout-DNr24V9g.js";import"./next-link-BmD4fPSy.js";import"./index-JhL3uwfD.js";import"./ArrowLeftIcon-Cw1eswTb.js";const x={title:"Templates/AuthLayout",component:m,parameters:{layout:"fullscreen"},argTypes:{wide:{control:"boolean"},showBackButton:{control:"boolean"}}},r={args:{title:"Welcome back",subtitle:"Sign in to your account to continue",children:e.jsxs("div",{className:"space-y-4",children:[e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-muted-foreground mb-1",children:"Email"}),e.jsx("input",{className:"w-full h-11 px-4 rounded-lg border border-border bg-card text-sm",placeholder:"you@example.com"})]}),e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-muted-foreground mb-1",children:"Password"}),e.jsx("input",{type:"password",className:"w-full h-11 px-4 rounded-lg border border-border bg-card text-sm",placeholder:"Enter password"})]}),e.jsx("button",{className:"w-full h-11 rounded-lg bg-primary text-primary-foreground font-medium text-sm",children:"Sign in"})]})}},t={args:{title:"Create your account",subtitle:"Get started with Assist Solutions services",wide:!0,showBackButton:!0,children:e.jsxs("div",{className:"space-y-4",children:[e.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-muted-foreground mb-1",children:"First Name"}),e.jsx("input",{className:"w-full h-11 px-4 rounded-lg border border-border bg-card text-sm",placeholder:"John"})]}),e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-muted-foreground mb-1",children:"Last Name"}),e.jsx("input",{className:"w-full h-11 px-4 rounded-lg border border-border bg-card text-sm",placeholder:"Doe"})]})]}),e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-muted-foreground mb-1",children:"Email"}),e.jsx("input",{className:"w-full h-11 px-4 rounded-lg border border-border bg-card text-sm",placeholder:"you@example.com"})]}),e.jsx("button",{className:"w-full h-11 rounded-lg bg-primary text-primary-foreground font-medium text-sm",children:"Create Account"})]})}};var o,s,l;r.parameters={...r.parameters,docs:{...(o=r.parameters)==null?void 0:o.docs,source:{originalSource:`{ + args: { + title: "Welcome back", + subtitle: "Sign in to your account to continue", + children:
+
+ + +
+
+ + +
+ +
+ } +}`,...(l=(s=r.parameters)==null?void 0:s.docs)==null?void 0:l.source}}};var d,a,n;t.parameters={...t.parameters,docs:{...(d=t.parameters)==null?void 0:d.docs,source:{originalSource:`{ + args: { + title: "Create your account", + subtitle: "Get started with Assist Solutions services", + wide: true, + showBackButton: true, + children:
+
+
+ + +
+
+ + +
+
+
+ + +
+ +
+ } +}`,...(n=(a=t.parameters)==null?void 0:a.docs)==null?void 0:n.source}}};const g=["Login","SignUp"];export{r as Login,t as SignUp,g as __namedExportsOrder,x as default}; diff --git a/apps/portal/public/storybook/assets/BackLink-C5IY6wzy.js b/apps/portal/public/storybook/assets/BackLink-C5IY6wzy.js new file mode 100644 index 00000000..ac6d5982 --- /dev/null +++ b/apps/portal/public/storybook/assets/BackLink-C5IY6wzy.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{B as o}from"./button-C8_cybvS.js";import{c as t}from"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import{F as m}from"./ArrowLeftIcon-Cw1eswTb.js";const c={left:"justify-start",center:"justify-center",right:"justify-end"};function u({href:a,label:r="Back",align:s="left",className:i,buttonClassName:n,icon:l=e.jsx(m,{className:"w-4 h-4"})}){return e.jsx("div",{className:t("mb-6 flex",c[s],i),children:e.jsx(o,{as:"a",href:a,size:"sm",variant:"ghost",leftIcon:l,className:t("text-muted-foreground hover:text-foreground",n),children:r})})}u.__docgenInfo={description:"",methods:[],displayName:"BackLink",props:{href:{required:!0,tsType:{name:"string"},description:""},label:{required:!1,tsType:{name:"string"},description:"",defaultValue:{value:'"Back"',computed:!1}},align:{required:!1,tsType:{name:"union",raw:'"left" | "center" | "right"',elements:[{name:"literal",value:'"left"'},{name:"literal",value:'"center"'},{name:"literal",value:'"right"'}]},description:"",defaultValue:{value:'"left"',computed:!1}},className:{required:!1,tsType:{name:"string"},description:""},buttonClassName:{required:!1,tsType:{name:"string"},description:""},icon:{required:!1,tsType:{name:"ReactNode"},description:"",defaultValue:{value:'',computed:!1}}}};export{u as B}; diff --git a/apps/portal/public/storybook/assets/BackLink.stories-C6OUjTR3.js b/apps/portal/public/storybook/assets/BackLink.stories-C6OUjTR3.js new file mode 100644 index 00000000..ba5680cc --- /dev/null +++ b/apps/portal/public/storybook/assets/BackLink.stories-C6OUjTR3.js @@ -0,0 +1,17 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{B as n}from"./BackLink-C5IY6wzy.js";import"./button-C8_cybvS.js";import"./index-JhL3uwfD.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./spinner-mU4XywER.js";import"./ArrowLeftIcon-Cw1eswTb.js";const R={title:"Molecules/BackLink",component:n,argTypes:{align:{control:"select",options:["left","center","right"]}}},r={args:{href:"/",label:"Back"}},a={args:{href:"/account",label:"Back to Account"}},t={render:()=>e.jsxs("div",{className:"flex flex-col gap-4 w-96",children:[e.jsx(n,{href:"/",label:"Left aligned",align:"left"}),e.jsx(n,{href:"/",label:"Center aligned",align:"center"}),e.jsx(n,{href:"/",label:"Right aligned",align:"right"})]})};var l,o,s;r.parameters={...r.parameters,docs:{...(l=r.parameters)==null?void 0:l.docs,source:{originalSource:`{ + args: { + href: "/", + label: "Back" + } +}`,...(s=(o=r.parameters)==null?void 0:o.docs)==null?void 0:s.source}}};var c,i,m;a.parameters={...a.parameters,docs:{...(c=a.parameters)==null?void 0:c.docs,source:{originalSource:`{ + args: { + href: "/account", + label: "Back to Account" + } +}`,...(m=(i=a.parameters)==null?void 0:i.docs)==null?void 0:m.source}}};var p,g,d;t.parameters={...t.parameters,docs:{...(p=t.parameters)==null?void 0:p.docs,source:{originalSource:`{ + render: () =>
+ + + +
+}`,...(d=(g=t.parameters)==null?void 0:g.docs)==null?void 0:d.source}}};const S=["Default","CustomLabel","Alignments"];export{t as Alignments,a as CustomLabel,r as Default,S as __namedExportsOrder,R as default}; diff --git a/apps/portal/public/storybook/assets/BilingualValue-B84DkgyY.js b/apps/portal/public/storybook/assets/BilingualValue-B84DkgyY.js new file mode 100644 index 00000000..04313eb7 --- /dev/null +++ b/apps/portal/public/storybook/assets/BilingualValue-B84DkgyY.js @@ -0,0 +1,2 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";function a({romaji:s,japanese:i,placeholder:r,verified:t}){return t?e.jsxs("div",{className:"flex items-baseline gap-2",children:[e.jsx("span",{className:"text-foreground font-medium",children:s}),i&&e.jsxs("span",{className:"text-muted-foreground text-sm",children:["(",i,")"]})]}):e.jsx("span",{className:"text-muted-foreground/60 italic text-sm",children:r})}a.__docgenInfo={description:`Displays a bilingual value with both romaji and Japanese text. +Shows placeholder when not verified.`,methods:[],displayName:"BilingualValue",props:{romaji:{required:!0,tsType:{name:"string"},description:"Romanized (English) value"},japanese:{required:!1,tsType:{name:"string"},description:"Japanese value (optional)"},placeholder:{required:!0,tsType:{name:"string"},description:"Placeholder text when not verified"},verified:{required:!0,tsType:{name:"boolean"},description:"Whether the address has been verified"}}};export{a as B}; diff --git a/apps/portal/public/storybook/assets/BilingualValue.stories-o20kAFvD.js b/apps/portal/public/storybook/assets/BilingualValue.stories-o20kAFvD.js new file mode 100644 index 00000000..cdcdb4bd --- /dev/null +++ b/apps/portal/public/storybook/assets/BilingualValue.stories-o20kAFvD.js @@ -0,0 +1,21 @@ +import{B as l}from"./BilingualValue-B84DkgyY.js";import"./jsx-runtime-D_zvdyIk.js";const j={title:"Features/Address/BilingualValue",component:l,parameters:{layout:"centered"}},e={args:{romaji:"Shinjuku-ku",japanese:"新宿区",placeholder:"—",verified:!0}},r={args:{romaji:"Shinjuku-ku",placeholder:"—",verified:!0}},a={args:{romaji:"",japanese:"",placeholder:"Awaiting verification",verified:!1}};var i,s,o;e.parameters={...e.parameters,docs:{...(i=e.parameters)==null?void 0:i.docs,source:{originalSource:`{ + args: { + romaji: "Shinjuku-ku", + japanese: "新宿区", + placeholder: "—", + verified: true + } +}`,...(o=(s=e.parameters)==null?void 0:s.docs)==null?void 0:o.source}}};var n,t,u;r.parameters={...r.parameters,docs:{...(n=r.parameters)==null?void 0:n.docs,source:{originalSource:`{ + args: { + romaji: "Shinjuku-ku", + placeholder: "—", + verified: true + } +}`,...(u=(t=r.parameters)==null?void 0:t.docs)==null?void 0:u.source}}};var c,d,p;a.parameters={...a.parameters,docs:{...(c=a.parameters)==null?void 0:c.docs,source:{originalSource:`{ + args: { + romaji: "", + japanese: "", + placeholder: "Awaiting verification", + verified: false + } +}`,...(p=(d=a.parameters)==null?void 0:d.docs)==null?void 0:p.source}}};const g=["Verified","VerifiedWithoutJapanese","NotVerified"];export{a as NotVerified,e as Verified,r as VerifiedWithoutJapanese,g as __namedExportsOrder,j as default}; diff --git a/apps/portal/public/storybook/assets/BillingStatusBadge-CQ1ic61y.js b/apps/portal/public/storybook/assets/BillingStatusBadge-CQ1ic61y.js new file mode 100644 index 00000000..16ab6242 --- /dev/null +++ b/apps/portal/public/storybook/assets/BillingStatusBadge-CQ1ic61y.js @@ -0,0 +1 @@ +import{j as a}from"./jsx-runtime-D_zvdyIk.js";import{r as u}from"./index-JhL3uwfD.js";import{S as f}from"./status-pill-wWp9xkwA.js";import{F as t}from"./DocumentTextIcon-Dk_xQMYi.js";import{F as n}from"./ClockIcon-BFX11zAZ.js";import{F as o}from"./ExclamationTriangleIcon-Di4DJZFg.js";import{F as i}from"./CheckCircleIcon-Dva35lTP.js";import{F as p}from"./XCircleIcon-CiVBnngB.js";const w=e=>{switch(e.toLowerCase()){case"paid":return{variant:"success",icon:a.jsx(i,{className:"h-4 w-4"}),label:"Paid"};case"overdue":return{variant:"error",icon:a.jsx(o,{className:"h-4 w-4"}),label:"Overdue"};case"unpaid":return{variant:"warning",icon:a.jsx(n,{className:"h-4 w-4"}),label:"Unpaid"};case"cancelled":case"canceled":return{variant:"neutral",icon:a.jsx(p,{className:"h-4 w-4"}),label:"Cancelled"};case"draft":return{variant:"neutral",icon:a.jsx(t,{className:"h-4 w-4"}),label:"Draft"};case"refunded":return{variant:"info",icon:a.jsx(i,{className:"h-4 w-4"}),label:"Refunded"};case"collections":return{variant:"error",icon:a.jsx(o,{className:"h-4 w-4"}),label:"Collections"};case"payment pending":return{variant:"warning",icon:a.jsx(n,{className:"h-4 w-4"}),label:"Payment Pending"};default:return{variant:"neutral",icon:a.jsx(t,{className:"h-4 w-4"}),label:e}}},l=u.forwardRef(({status:e,showIcon:c=!0,children:s,...d},m)=>{const r=w(e);return a.jsx(f,{ref:m,variant:r.variant,icon:c?r.icon:void 0,label:typeof s=="string"?s:r.label,...d})});l.displayName="BillingStatusBadge";l.__docgenInfo={description:"",methods:[],displayName:"BillingStatusBadge",props:{status:{required:!0,tsType:{name:"string"},description:""},showIcon:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"true",computed:!1}}},composes:["Omit"]};export{l as B}; diff --git a/apps/portal/public/storybook/assets/BillingStatusBadge.stories-94yAz7EP.js b/apps/portal/public/storybook/assets/BillingStatusBadge.stories-94yAz7EP.js new file mode 100644 index 00000000..8caa617c --- /dev/null +++ b/apps/portal/public/storybook/assets/BillingStatusBadge.stories-94yAz7EP.js @@ -0,0 +1,43 @@ +import{B as A}from"./BillingStatusBadge-CQ1ic61y.js";import"./jsx-runtime-D_zvdyIk.js";import"./index-JhL3uwfD.js";import"./status-pill-wWp9xkwA.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./DocumentTextIcon-Dk_xQMYi.js";import"./ClockIcon-BFX11zAZ.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./CheckCircleIcon-Dva35lTP.js";import"./XCircleIcon-CiVBnngB.js";const ss={title:"Features/Billing/BillingStatusBadge",component:A,parameters:{layout:"centered"}},s={args:{status:"Paid"}},e={args:{status:"Unpaid"}},a={args:{status:"Overdue"}},r={args:{status:"Cancelled"}},t={args:{status:"Draft"}},o={args:{status:"Refunded"}},n={args:{status:"Collections"}},c={args:{status:"Payment Pending"}},d={args:{status:"Paid",showIcon:!1}},m={args:{status:"Paid",children:"Payment Complete"}};var u,i,p;s.parameters={...s.parameters,docs:{...(u=s.parameters)==null?void 0:u.docs,source:{originalSource:`{ + args: { + status: "Paid" + } +}`,...(p=(i=s.parameters)==null?void 0:i.docs)==null?void 0:p.source}}};var l,g,P;e.parameters={...e.parameters,docs:{...(l=e.parameters)==null?void 0:l.docs,source:{originalSource:`{ + args: { + status: "Unpaid" + } +}`,...(P=(g=e.parameters)==null?void 0:g.docs)==null?void 0:P.source}}};var f,C,S;a.parameters={...a.parameters,docs:{...(f=a.parameters)==null?void 0:f.docs,source:{originalSource:`{ + args: { + status: "Overdue" + } +}`,...(S=(C=a.parameters)==null?void 0:C.docs)==null?void 0:S.source}}};var y,h,B;r.parameters={...r.parameters,docs:{...(y=r.parameters)==null?void 0:y.docs,source:{originalSource:`{ + args: { + status: "Cancelled" + } +}`,...(B=(h=r.parameters)==null?void 0:h.docs)==null?void 0:B.source}}};var O,v,D;t.parameters={...t.parameters,docs:{...(O=t.parameters)==null?void 0:O.docs,source:{originalSource:`{ + args: { + status: "Draft" + } +}`,...(D=(v=t.parameters)==null?void 0:v.docs)==null?void 0:D.source}}};var I,R,U;o.parameters={...o.parameters,docs:{...(I=o.parameters)==null?void 0:I.docs,source:{originalSource:`{ + args: { + status: "Refunded" + } +}`,...(U=(R=o.parameters)==null?void 0:R.docs)==null?void 0:U.source}}};var b,w,x;n.parameters={...n.parameters,docs:{...(b=n.parameters)==null?void 0:b.docs,source:{originalSource:`{ + args: { + status: "Collections" + } +}`,...(x=(w=n.parameters)==null?void 0:w.docs)==null?void 0:x.source}}};var L,W,_;c.parameters={...c.parameters,docs:{...(L=c.parameters)==null?void 0:L.docs,source:{originalSource:`{ + args: { + status: "Payment Pending" + } +}`,...(_=(W=c.parameters)==null?void 0:W.docs)==null?void 0:_.source}}};var E,F,j;d.parameters={...d.parameters,docs:{...(E=d.parameters)==null?void 0:E.docs,source:{originalSource:`{ + args: { + status: "Paid", + showIcon: false + } +}`,...(j=(F=d.parameters)==null?void 0:F.docs)==null?void 0:j.source}}};var k,q,z;m.parameters={...m.parameters,docs:{...(k=m.parameters)==null?void 0:k.docs,source:{originalSource:`{ + args: { + status: "Paid", + children: "Payment Complete" + } +}`,...(z=(q=m.parameters)==null?void 0:q.docs)==null?void 0:z.source}}};const es=["Paid","Unpaid","Overdue","Cancelled","Draft","Refunded","Collections","PaymentPending","WithoutIcon","CustomLabel"];export{r as Cancelled,n as Collections,m as CustomLabel,t as Draft,a as Overdue,s as Paid,c as PaymentPending,o as Refunded,e as Unpaid,d as WithoutIcon,es as __namedExportsOrder,ss as default}; diff --git a/apps/portal/public/storybook/assets/BillingSummary.stories-CfjkLJys.js b/apps/portal/public/storybook/assets/BillingSummary.stories-CfjkLJys.js new file mode 100644 index 00000000..b4827215 --- /dev/null +++ b/apps/portal/public/storybook/assets/BillingSummary.stories-CfjkLJys.js @@ -0,0 +1,45 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{r as u}from"./index-JhL3uwfD.js";import{L as f}from"./next-link-BmD4fPSy.js";import{c as l}from"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import{F as _}from"./CreditCardIcon-BBdrpHQs.js";import{F as h}from"./ArrowRightIcon--Vuz7Q7x.js";import{F as $}from"./ClockIcon-BFX11zAZ.js";import{F as x}from"./CheckCircleIcon-Dva35lTP.js";import{F as T}from"./ExclamationTriangleIcon-Di4DJZFg.js";import{F as V}from"./index-9c86oO0t.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./currency-CYvr7ZUf.js";import"./date-CJlSVdaN.js";import"./text-CXa-DJQz.js";const{formatCurrency:H}=V;function M({className:r,forwardedRef:a,...t}){return e.jsx("div",{ref:a,className:l("bg-card rounded-lg border border-border p-6",r),...t,children:e.jsxs("div",{className:"animate-pulse",children:[e.jsxs("div",{className:"flex items-center mb-4",children:[e.jsx("div",{className:"w-8 h-8 bg-muted rounded-lg"}),e.jsx("div",{className:"ml-3 h-6 bg-muted rounded w-32"})]}),e.jsxs("div",{className:"space-y-3",children:[e.jsx("div",{className:"h-4 bg-muted rounded w-full"}),e.jsx("div",{className:"h-4 bg-muted rounded w-3/4"}),e.jsx("div",{className:"h-4 bg-muted rounded w-1/2"})]})]})})}const q={error:"text-danger",warning:"text-warning",success:"text-success",neutral:"text-muted-foreground"};function z({item:r,compact:a,formatAmount:t}){const s=r.icon;return e.jsxs("div",{className:"flex items-center justify-between p-3 rounded-lg bg-muted/50",children:[e.jsxs("div",{className:"flex items-center",children:[e.jsx(s,{className:l("w-5 h-5 mr-3",q[r.variant])}),e.jsxs("div",{children:[e.jsx("div",{className:"text-sm font-medium text-foreground",children:r.label}),!a&&r.count>0&&e.jsxs("div",{className:"text-xs text-muted-foreground",children:[r.count," invoice",r.count===1?"":"s"]})]})]}),e.jsxs("div",{className:"text-right",children:[e.jsx("div",{className:"text-lg font-semibold text-foreground",children:t(r.amount)}),a&&r.count>0&&e.jsxs("div",{className:"text-xs text-muted-foreground",children:[r.count," invoice",r.count===1?"":"s"]})]})]})}function G(r){return[{label:"Outstanding",amount:r.totalOutstanding,count:r.invoiceCount.unpaid,variant:r.totalOutstanding>0?"warning":"neutral",icon:r.totalOutstanding>0?$:x},{label:"Overdue",amount:r.totalOverdue,count:r.invoiceCount.overdue,variant:r.totalOverdue>0?"error":"neutral",icon:r.totalOverdue>0?T:x},{label:"Paid This Period",amount:r.totalPaid,count:r.invoiceCount.paid,variant:"success",icon:x}]}const E=u.forwardRef(({summary:r,loading:a=!1,compact:t=!1,className:s,...g},v)=>{const L=u.useCallback(m=>H(m,r.currency),[r.currency]),U=u.useMemo(()=>G(r),[r]);return a?e.jsx(M,{forwardedRef:v,className:s,...g}):e.jsxs("div",{ref:v,className:l("bg-card rounded-lg border border-border transition-all duration-200 hover:shadow-sm",t?"p-4":"p-6",s),...g,children:[e.jsxs("div",{className:"flex items-center justify-between mb-6",children:[e.jsxs("div",{className:"flex items-center",children:[e.jsx("div",{className:"w-8 h-8 bg-primary/10 rounded-lg flex items-center justify-center",children:e.jsx(_,{className:"w-5 h-5 text-primary"})}),e.jsx("h3",{className:"ml-3 text-lg font-semibold text-foreground",children:"Billing Summary"})]}),!t&&e.jsxs(f,{href:"/account/billing",className:"inline-flex items-center text-sm text-primary hover:text-primary-hover font-medium",children:["View All",e.jsx(h,{className:"ml-1 w-4 h-4"})]})]}),e.jsx("div",{className:l("space-y-4",t&&"space-y-3"),children:U.map((m,D)=>e.jsx(z,{item:m,compact:t,formatAmount:L},D))}),!t&&e.jsx("div",{className:"mt-6 pt-4 border-t border-border",children:e.jsxs("div",{className:"flex items-center justify-between text-sm",children:[e.jsx("span",{className:"text-muted-foreground",children:"Total Invoices"}),e.jsx("span",{className:"font-medium text-foreground",children:r.invoiceCount.total})]})}),t&&e.jsx("div",{className:"mt-4 pt-4 border-t border-border",children:e.jsxs(f,{href:"/account/billing",className:"inline-flex items-center text-sm text-primary hover:text-primary-hover font-medium",children:["View All Invoices",e.jsx(h,{className:"ml-1 w-4 h-4"})]})})]})});E.displayName="BillingSummary";const p={totalOutstanding:249.98,totalOverdue:79.99,totalPaid:1520,currency:"EUR",invoiceCount:{total:24,unpaid:3,overdue:1,paid:20}},ce={title:"Features/Billing/BillingSummary",component:E,parameters:{layout:"centered"},decorators:[r=>e.jsx("div",{className:"w-[450px]",children:e.jsx(r,{})})]},n={args:{summary:p}},o={args:{summary:p,compact:!0}},i={args:{summary:p,loading:!0}},d={args:{summary:{totalOutstanding:0,totalOverdue:0,totalPaid:3200,currency:"EUR",invoiceCount:{total:15,unpaid:0,overdue:0,paid:15}}}},c={args:{summary:{totalOutstanding:1500,totalOverdue:800,totalPaid:200,currency:"USD",invoiceCount:{total:10,unpaid:5,overdue:3,paid:2}}}};var j,b,N;n.parameters={...n.parameters,docs:{...(j=n.parameters)==null?void 0:j.docs,source:{originalSource:`{ + args: { + summary: mockSummary + } +}`,...(N=(b=n.parameters)==null?void 0:b.docs)==null?void 0:N.source}}};var y,w,O;o.parameters={...o.parameters,docs:{...(y=o.parameters)==null?void 0:y.docs,source:{originalSource:`{ + args: { + summary: mockSummary, + compact: true + } +}`,...(O=(w=o.parameters)==null?void 0:w.docs)==null?void 0:O.source}}};var S,C,F;i.parameters={...i.parameters,docs:{...(S=i.parameters)==null?void 0:S.docs,source:{originalSource:`{ + args: { + summary: mockSummary, + loading: true + } +}`,...(F=(C=i.parameters)==null?void 0:C.docs)==null?void 0:F.source}}};var R,P,A;d.parameters={...d.parameters,docs:{...(R=d.parameters)==null?void 0:R.docs,source:{originalSource:`{ + args: { + summary: { + totalOutstanding: 0, + totalOverdue: 0, + totalPaid: 3200.0, + currency: "EUR", + invoiceCount: { + total: 15, + unpaid: 0, + overdue: 0, + paid: 15 + } + } + } +}`,...(A=(P=d.parameters)==null?void 0:P.docs)==null?void 0:A.source}}};var I,k,B;c.parameters={...c.parameters,docs:{...(I=c.parameters)==null?void 0:I.docs,source:{originalSource:`{ + args: { + summary: { + totalOutstanding: 1500.0, + totalOverdue: 800.0, + totalPaid: 200.0, + currency: "USD", + invoiceCount: { + total: 10, + unpaid: 5, + overdue: 3, + paid: 2 + } + } + } +}`,...(B=(k=c.parameters)==null?void 0:k.docs)==null?void 0:B.source}}};const le=["Default","Compact","Loading","AllPaid","HighOutstanding"];export{d as AllPaid,o as Compact,n as Default,c as HighOutstanding,i as Loading,le as __namedExportsOrder,ce as default}; diff --git a/apps/portal/public/storybook/assets/CTABanner.stories-FtL8SvK-.js b/apps/portal/public/storybook/assets/CTABanner.stories-FtL8SvK-.js new file mode 100644 index 00000000..3f7ce39f --- /dev/null +++ b/apps/portal/public/storybook/assets/CTABanner.stories-FtL8SvK-.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{B as r}from"./button-C8_cybvS.js";import{A as n}from"./arrow-right-BNMAry-H.js";import"./index-JhL3uwfD.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./spinner-mU4XywER.js";import"./createLucideIcon-CctB0W3q.js";function i(){return e.jsx("div",{"aria-label":"Call to action",className:"bg-primary-soft",children:e.jsxs("div",{className:"mx-auto max-w-3xl px-6 sm:px-10 lg:px-14 py-14 sm:py-16 text-center",children:[e.jsx("h2",{className:"text-2xl sm:text-3xl font-extrabold text-foreground font-heading",children:"Ready to Get Set Up?"}),e.jsx("p",{className:"mt-2 text-base text-muted-foreground",children:"No Japanese required. Our English-speaking team is here to help."}),e.jsxs("div",{className:"mt-6 flex flex-col sm:flex-row items-center justify-center gap-3",children:[e.jsx(r,{as:"a",href:"/services",variant:"pill",size:"lg",rightIcon:e.jsx(n,{className:"h-5 w-5"}),children:"Find Your Plan"}),e.jsx(r,{as:"a",href:"#contact",variant:"pillOutline",size:"lg",children:"Talk to Us"})]})]})})}i.__docgenInfo={description:"",methods:[],displayName:"CTABanner"};const y={title:"Features/LandingPage/CTABanner",component:i,parameters:{layout:"fullscreen"}},t={};var a,s,o;t.parameters={...t.parameters,docs:{...(a=t.parameters)==null?void 0:a.docs,source:{originalSource:"{}",...(o=(s=t.parameters)==null?void 0:s.docs)==null?void 0:o.source}}};const v=["Default"];export{t as Default,v as __namedExportsOrder,y as default}; diff --git a/apps/portal/public/storybook/assets/CalendarIcon-DHpf4s_h.js b/apps/portal/public/storybook/assets/CalendarIcon-DHpf4s_h.js new file mode 100644 index 00000000..6ce5f599 --- /dev/null +++ b/apps/portal/public/storybook/assets/CalendarIcon-DHpf4s_h.js @@ -0,0 +1 @@ +import{r as e}from"./index-JhL3uwfD.js";function a({title:r,titleId:t,...o},n){return e.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:n,"aria-labelledby":t},o),r?e.createElement("title",{id:t},r):null,e.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M6.75 3v2.25M17.25 3v2.25M3 18.75V7.5a2.25 2.25 0 0 1 2.25-2.25h13.5A2.25 2.25 0 0 1 21 7.5v11.25m-18 0A2.25 2.25 0 0 0 5.25 21h13.5A2.25 2.25 0 0 0 21 18.75m-18 0v-7.5A2.25 2.25 0 0 1 5.25 9h13.5A2.25 2.25 0 0 1 21 11.25v7.5"}))}const i=e.forwardRef(a);export{i as F}; diff --git a/apps/portal/public/storybook/assets/CardBadge-CfIpSSwP.js b/apps/portal/public/storybook/assets/CardBadge-CfIpSSwP.js new file mode 100644 index 00000000..7b0a85c5 --- /dev/null +++ b/apps/portal/public/storybook/assets/CardBadge-CfIpSSwP.js @@ -0,0 +1,7 @@ +import{j as l}from"./jsx-runtime-D_zvdyIk.js";function s({text:e,variant:r="default",size:a="md"}){const t=()=>{switch(r){case"gold":return"bg-warning-bg text-warning border-warning-border";case"platinum":return"bg-neutral-bg text-neutral border-neutral-border";case"silver":return"bg-neutral-soft text-neutral border-neutral-border";case"recommended":return"bg-success-bg text-success border-success-border";case"family":return"bg-info-soft text-info border-info-border";case"new":return"bg-primary/10 text-primary border-primary/20";default:return"bg-neutral-soft text-neutral border-neutral-border"}},n=(()=>{switch(a){case"xs":return"text-[11px] px-1.5 py-[2px]";case"sm":return"text-xs px-2 py-0.5";default:return"text-xs px-2.5 py-1"}})();return l.jsx("span",{className:`${n} inline-flex items-center rounded-full font-medium border whitespace-nowrap ${t()}`,children:e})}s.__docgenInfo={description:"",methods:[],displayName:"CardBadge",props:{text:{required:!0,tsType:{name:"string"},description:""},variant:{required:!1,tsType:{name:"union",raw:`| "gold" +| "platinum" +| "silver" +| "recommended" +| "family" +| "new" +| "default"`,elements:[{name:"literal",value:'"gold"'},{name:"literal",value:'"platinum"'},{name:"literal",value:'"silver"'},{name:"literal",value:'"recommended"'},{name:"literal",value:'"family"'},{name:"literal",value:'"new"'},{name:"literal",value:'"default"'}]},description:"",defaultValue:{value:'"default"',computed:!1}},size:{required:!1,tsType:{name:"union",raw:'"xs" | "sm" | "md"',elements:[{name:"literal",value:'"xs"'},{name:"literal",value:'"sm"'},{name:"literal",value:'"md"'}]},description:"",defaultValue:{value:'"md"',computed:!1}}}};export{s as C}; diff --git a/apps/portal/public/storybook/assets/CardBadge.stories-NUWDfuqZ.js b/apps/portal/public/storybook/assets/CardBadge.stories-NUWDfuqZ.js new file mode 100644 index 00000000..f2cc6ff2 --- /dev/null +++ b/apps/portal/public/storybook/assets/CardBadge.stories-NUWDfuqZ.js @@ -0,0 +1,57 @@ +import{j as a}from"./jsx-runtime-D_zvdyIk.js";import{C as e}from"./CardBadge-CfIpSSwP.js";const K={title:"Features/Services/Base/CardBadge",component:e,parameters:{layout:"centered"}},r={args:{text:"Standard"}},t={args:{text:"Gold Plan",variant:"gold"}},s={args:{text:"Platinum",variant:"platinum"}},n={args:{text:"Silver",variant:"silver"}},o={args:{text:"Recommended",variant:"recommended"}},d={args:{text:"Family Plan",variant:"family"}},m={args:{text:"New",variant:"new"}},i={args:{text:"XS Badge",variant:"recommended",size:"xs"}},c={args:{text:"Small Badge",variant:"gold",size:"sm"}},l={render:()=>a.jsxs("div",{className:"flex flex-wrap gap-2",children:[a.jsx(e,{text:"Default",variant:"default"}),a.jsx(e,{text:"Gold",variant:"gold"}),a.jsx(e,{text:"Platinum",variant:"platinum"}),a.jsx(e,{text:"Silver",variant:"silver"}),a.jsx(e,{text:"Recommended",variant:"recommended"}),a.jsx(e,{text:"Family",variant:"family"}),a.jsx(e,{text:"New",variant:"new"})]})};var p,x,u;r.parameters={...r.parameters,docs:{...(p=r.parameters)==null?void 0:p.docs,source:{originalSource:`{ + args: { + text: "Standard" + } +}`,...(u=(x=r.parameters)==null?void 0:x.docs)==null?void 0:u.source}}};var g,v,S;t.parameters={...t.parameters,docs:{...(g=t.parameters)==null?void 0:g.docs,source:{originalSource:`{ + args: { + text: "Gold Plan", + variant: "gold" + } +}`,...(S=(v=t.parameters)==null?void 0:v.docs)==null?void 0:S.source}}};var f,B,w;s.parameters={...s.parameters,docs:{...(f=s.parameters)==null?void 0:f.docs,source:{originalSource:`{ + args: { + text: "Platinum", + variant: "platinum" + } +}`,...(w=(B=s.parameters)==null?void 0:B.docs)==null?void 0:w.source}}};var y,j,C;n.parameters={...n.parameters,docs:{...(y=n.parameters)==null?void 0:y.docs,source:{originalSource:`{ + args: { + text: "Silver", + variant: "silver" + } +}`,...(C=(j=n.parameters)==null?void 0:j.docs)==null?void 0:C.source}}};var P,N,F;o.parameters={...o.parameters,docs:{...(P=o.parameters)==null?void 0:P.docs,source:{originalSource:`{ + args: { + text: "Recommended", + variant: "recommended" + } +}`,...(F=(N=o.parameters)==null?void 0:N.docs)==null?void 0:F.source}}};var R,G,z;d.parameters={...d.parameters,docs:{...(R=d.parameters)==null?void 0:R.docs,source:{originalSource:`{ + args: { + text: "Family Plan", + variant: "family" + } +}`,...(z=(G=d.parameters)==null?void 0:G.docs)==null?void 0:z.source}}};var D,E,A;m.parameters={...m.parameters,docs:{...(D=m.parameters)==null?void 0:D.docs,source:{originalSource:`{ + args: { + text: "New", + variant: "new" + } +}`,...(A=(E=m.parameters)==null?void 0:E.docs)==null?void 0:A.source}}};var V,X,_;i.parameters={...i.parameters,docs:{...(V=i.parameters)==null?void 0:V.docs,source:{originalSource:`{ + args: { + text: "XS Badge", + variant: "recommended", + size: "xs" + } +}`,...(_=(X=i.parameters)==null?void 0:X.docs)==null?void 0:_.source}}};var h,O,b;c.parameters={...c.parameters,docs:{...(h=c.parameters)==null?void 0:h.docs,source:{originalSource:`{ + args: { + text: "Small Badge", + variant: "gold", + size: "sm" + } +}`,...(b=(O=c.parameters)==null?void 0:O.docs)==null?void 0:b.source}}};var k,q,H;l.parameters={...l.parameters,docs:{...(k=l.parameters)==null?void 0:k.docs,source:{originalSource:`{ + render: () =>
+ + + + + + + +
+}`,...(H=(q=l.parameters)==null?void 0:q.docs)==null?void 0:H.source}}};const L=["Default","Gold","Platinum","Silver","Recommended","Family","New","ExtraSmall","Small","AllVariants"];export{l as AllVariants,r as Default,i as ExtraSmall,d as Family,t as Gold,m as New,s as Platinum,o as Recommended,n as Silver,c as Small,L as __namedExportsOrder,K as default}; diff --git a/apps/portal/public/storybook/assets/CardPricing-FcGNWupq.js b/apps/portal/public/storybook/assets/CardPricing-FcGNWupq.js new file mode 100644 index 00000000..a09248ea --- /dev/null +++ b/apps/portal/public/storybook/assets/CardPricing-FcGNWupq.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{F as i}from"./CurrencyYenIcon-Bf5bmWZc.js";function d({monthlyPrice:n,oneTimePrice:a,size:m="md",alignment:s="right"}){const r={sm:{monthlyPrice:"text-xl",monthlyLabel:"text-xs",icon:"h-5 w-5",oneTimePrice:"text-sm",oneTimeLabel:"text-xs"},md:{monthlyPrice:"text-2xl",monthlyLabel:"text-sm",icon:"h-6 w-6",oneTimePrice:"text-base",oneTimeLabel:"text-xs"},lg:{monthlyPrice:"text-3xl",monthlyLabel:"text-base",icon:"h-7 w-7",oneTimePrice:"text-lg",oneTimeLabel:"text-sm"}},o=s==="right"?"text-right":"text-left",l=s==="right"?"justify-end":"justify-start";if(!n&&!a)return null;const t=r[m];return e.jsxs("div",{className:`flex-shrink-0 ${o}`,children:[n&&n>0&&e.jsxs("div",{className:`flex items-baseline gap-1 ${l}`,children:[e.jsx(i,{className:`${t.icon} text-gray-600`}),e.jsx("span",{className:`${t.monthlyPrice} font-bold text-gray-900`,children:n.toLocaleString()}),e.jsx("span",{className:`${t.monthlyLabel} text-gray-500 font-normal`,children:"/month"})]}),a&&a>0&&e.jsxs("div",{className:`flex items-baseline gap-1 ${l} ${n?"mt-1":""}`,children:[e.jsx(i,{className:"h-4 w-4 text-orange-600"}),e.jsx("span",{className:`${t.oneTimePrice} font-semibold text-orange-600`,children:a.toLocaleString()}),e.jsx("span",{className:`${t.oneTimeLabel} text-orange-500`,children:"one-time"})]})]})}d.__docgenInfo={description:"",methods:[],displayName:"CardPricing",props:{monthlyPrice:{required:!1,tsType:{name:"union",raw:"number | null | undefined",elements:[{name:"number"},{name:"null"},{name:"undefined"}]},description:""},oneTimePrice:{required:!1,tsType:{name:"union",raw:"number | null | undefined",elements:[{name:"number"},{name:"null"},{name:"undefined"}]},description:""},size:{required:!1,tsType:{name:"union",raw:'"sm" | "md" | "lg" | undefined',elements:[{name:"literal",value:'"sm"'},{name:"literal",value:'"md"'},{name:"literal",value:'"lg"'},{name:"undefined"}]},description:"",defaultValue:{value:'"md"',computed:!1}},alignment:{required:!1,tsType:{name:"union",raw:'"left" | "right" | undefined',elements:[{name:"literal",value:'"left"'},{name:"literal",value:'"right"'},{name:"undefined"}]},description:"",defaultValue:{value:'"right"',computed:!1}}}};export{d as C}; diff --git a/apps/portal/public/storybook/assets/CardPricing.stories-U7XUVchG.js b/apps/portal/public/storybook/assets/CardPricing.stories-U7XUVchG.js new file mode 100644 index 00000000..cb8266d7 --- /dev/null +++ b/apps/portal/public/storybook/assets/CardPricing.stories-U7XUVchG.js @@ -0,0 +1,37 @@ +import{C as M}from"./CardPricing-FcGNWupq.js";import"./jsx-runtime-D_zvdyIk.js";import"./CurrencyYenIcon-Bf5bmWZc.js";import"./index-JhL3uwfD.js";const F={title:"Features/Services/Base/CardPricing",component:M,parameters:{layout:"centered"}},e={args:{monthlyPrice:4980}},r={args:{oneTimePrice:3300}},s={args:{monthlyPrice:4980,oneTimePrice:3300}},n={args:{monthlyPrice:4980,oneTimePrice:3300,size:"sm"}},o={args:{monthlyPrice:4980,oneTimePrice:3300,size:"lg"}},a={args:{monthlyPrice:4980,oneTimePrice:3300,alignment:"left"}},c={args:{monthlyPrice:null,oneTimePrice:null}};var i,t,m;e.parameters={...e.parameters,docs:{...(i=e.parameters)==null?void 0:i.docs,source:{originalSource:`{ + args: { + monthlyPrice: 4980 + } +}`,...(m=(t=e.parameters)==null?void 0:t.docs)==null?void 0:m.source}}};var l,p,g;r.parameters={...r.parameters,docs:{...(l=r.parameters)==null?void 0:l.docs,source:{originalSource:`{ + args: { + oneTimePrice: 3300 + } +}`,...(g=(p=r.parameters)==null?void 0:p.docs)==null?void 0:g.source}}};var P,d,u;s.parameters={...s.parameters,docs:{...(P=s.parameters)==null?void 0:P.docs,source:{originalSource:`{ + args: { + monthlyPrice: 4980, + oneTimePrice: 3300 + } +}`,...(u=(d=s.parameters)==null?void 0:d.docs)==null?void 0:u.source}}};var y,h,S;n.parameters={...n.parameters,docs:{...(y=n.parameters)==null?void 0:y.docs,source:{originalSource:`{ + args: { + monthlyPrice: 4980, + oneTimePrice: 3300, + size: "sm" + } +}`,...(S=(h=n.parameters)==null?void 0:h.docs)==null?void 0:S.source}}};var T,z,O;o.parameters={...o.parameters,docs:{...(T=o.parameters)==null?void 0:T.docs,source:{originalSource:`{ + args: { + monthlyPrice: 4980, + oneTimePrice: 3300, + size: "lg" + } +}`,...(O=(z=o.parameters)==null?void 0:z.docs)==null?void 0:O.source}}};var f,L,B;a.parameters={...a.parameters,docs:{...(f=a.parameters)==null?void 0:f.docs,source:{originalSource:`{ + args: { + monthlyPrice: 4980, + oneTimePrice: 3300, + alignment: "left" + } +}`,...(B=(L=a.parameters)==null?void 0:L.docs)==null?void 0:B.source}}};var C,x,A;c.parameters={...c.parameters,docs:{...(C=c.parameters)==null?void 0:C.docs,source:{originalSource:`{ + args: { + monthlyPrice: null, + oneTimePrice: null + } +}`,...(A=(x=c.parameters)==null?void 0:x.docs)==null?void 0:A.source}}};const b=["MonthlyOnly","OneTimeOnly","BothPrices","SmallSize","LargeSize","LeftAligned","NoPrices"];export{s as BothPrices,o as LargeSize,a as LeftAligned,e as MonthlyOnly,c as NoPrices,r as OneTimeOnly,n as SmallSize,b as __namedExportsOrder,F as default}; diff --git a/apps/portal/public/storybook/assets/ChangePlanModal.stories-lCI6-fC1.js b/apps/portal/public/storybook/assets/ChangePlanModal.stories-lCI6-fC1.js new file mode 100644 index 00000000..eb780abd --- /dev/null +++ b/apps/portal/public/storybook/assets/ChangePlanModal.stories-lCI6-fC1.js @@ -0,0 +1,17 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{fn as n}from"./index-B9TJ7cVi.js";import{r as b}from"./index-JhL3uwfD.js";import{m as o}from"./proxy-ZkTvaR74.js";import{F as y}from"./XMarkIcon-Bsb1W5VN.js";const j=["5GB","10GB","25GB","50GB"];function w({currentPlanCode:f,onClose:a}){const x=f??"",p=j.filter(s=>s!==x),[h,g]=b.useState("");return e.jsx("div",{className:"fixed inset-0 z-50 overflow-y-auto",children:e.jsxs("div",{className:"flex items-end justify-center min-h-screen pt-4 px-4 pb-20 text-center sm:block sm:p-0",children:[e.jsx(o.div,{className:"fixed inset-0 bg-gray-500 bg-opacity-75","aria-hidden":"true",initial:{opacity:0},animate:{opacity:1}}),e.jsx("span",{className:"hidden sm:inline-block sm:align-middle sm:h-screen","aria-hidden":"true",children:"​"}),e.jsxs(o.div,{className:"relative z-10 inline-block align-bottom bg-white rounded-lg text-left overflow-hidden shadow-xl sm:my-8 sm:align-middle sm:max-w-lg sm:w-full",initial:{opacity:0,scale:.95,y:20},animate:{opacity:1,scale:1,y:0},transition:{duration:.2,ease:"easeOut"},children:[e.jsx("div",{className:"bg-white px-4 pt-5 pb-4 sm:p-6 sm:pb-4",children:e.jsx("div",{className:"sm:flex sm:items-start",children:e.jsxs("div",{className:"mt-3 text-center sm:mt-0 sm:ml-4 sm:text-left w-full",children:[e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsx("h3",{className:"text-lg leading-6 font-medium text-gray-900",children:"Change SIM Plan"}),e.jsx("button",{onClick:a,className:"text-gray-400 hover:text-gray-600",children:e.jsx(y,{className:"h-5 w-5"})})]}),e.jsx("div",{className:"mt-4 space-y-4",children:e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-gray-700",children:"Select New Plan"}),e.jsxs("select",{value:h,onChange:s=>g(s.target.value),className:"mt-1 block w-full rounded-md border-gray-300 shadow-sm focus:border-blue-500 focus:ring-blue-500 text-sm",children:[e.jsx("option",{value:"",children:"Choose a plan"}),p.map(s=>e.jsx("option",{value:s,children:s},s))]}),e.jsx("p",{className:"mt-1 text-xs text-gray-500",children:"Only plans different from your current plan are listed. The change will be scheduled for the 1st of the next month."})]})})]})})}),e.jsxs("div",{className:"bg-gray-50 px-4 py-3 sm:px-6 sm:flex sm:flex-row-reverse",children:[e.jsx("button",{type:"button",className:"w-full inline-flex justify-center rounded-md border border-transparent shadow-sm px-4 py-2 bg-blue-600 text-base font-medium text-white hover:bg-blue-700 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-blue-500 sm:ml-3 sm:w-auto sm:text-sm disabled:opacity-50",children:"Change Plan"}),e.jsx("button",{type:"button",onClick:a,className:"mt-3 w-full inline-flex justify-center rounded-md border border-gray-300 shadow-sm px-4 py-2 bg-white text-base font-medium text-gray-700 hover:bg-gray-50 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-indigo-500 sm:mt-0 sm:ml-3 sm:w-auto sm:text-sm",children:"Back"})]})]})]})})}const k={title:"Features/Subscriptions/Sim/ChangePlanModal",component:w,parameters:{layout:"centered"}},t={args:{subscriptionId:123,currentPlanCode:"10GB",onClose:n(),onSuccess:n(),onError:n()}},r={args:{subscriptionId:123,currentPlanCode:void 0,onClose:n(),onSuccess:n(),onError:n()}};var l,i,c;t.parameters={...t.parameters,docs:{...(l=t.parameters)==null?void 0:l.docs,source:{originalSource:`{ + args: { + subscriptionId: 123, + currentPlanCode: "10GB", + onClose: fn(), + onSuccess: fn(), + onError: fn() + } +}`,...(c=(i=t.parameters)==null?void 0:i.docs)==null?void 0:c.source}}};var m,d,u;r.parameters={...r.parameters,docs:{...(m=r.parameters)==null?void 0:m.docs,source:{originalSource:`{ + args: { + subscriptionId: 123, + currentPlanCode: undefined, + onClose: fn(), + onSuccess: fn(), + onError: fn() + } +}`,...(u=(d=r.parameters)==null?void 0:d.docs)==null?void 0:u.source}}};const E=["Default","NoPlanSelected"];export{t as Default,r as NoPlanSelected,E as __namedExportsOrder,k as default}; diff --git a/apps/portal/public/storybook/assets/Chapter.stories-CzDKpNWz.js b/apps/portal/public/storybook/assets/Chapter.stories-CzDKpNWz.js new file mode 100644 index 00000000..2ef65465 --- /dev/null +++ b/apps/portal/public/storybook/assets/Chapter.stories-CzDKpNWz.js @@ -0,0 +1,18 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{c as i}from"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";function m({children:l,className:p}){return e.jsx("section",{className:i("relative",p),children:l})}m.__docgenInfo={description:"",methods:[],displayName:"Chapter",props:{children:{required:!0,tsType:{name:"ReactReactNode",raw:"React.ReactNode"},description:""},className:{required:!1,tsType:{name:"string"},description:""}}};const f={title:"Features/LandingPage/Chapter",component:m,parameters:{layout:"centered"}},a={args:{children:e.jsxs("div",{className:"p-8",children:[e.jsx("h2",{className:"text-2xl font-bold",children:"Chapter Content"}),e.jsx("p",{className:"mt-2 text-muted-foreground",children:"This is an example section wrapped in a Chapter component."})]})}},s={args:{children:e.jsxs("div",{className:"p-8",children:[e.jsx("h2",{className:"text-2xl font-bold",children:"Styled Chapter"}),e.jsx("p",{className:"mt-2 text-muted-foreground",children:"This chapter has a custom background class."})]}),className:"bg-muted rounded-xl"}};var t,r,n;a.parameters={...a.parameters,docs:{...(t=a.parameters)==null?void 0:t.docs,source:{originalSource:`{ + args: { + children:
+

Chapter Content

+

+ This is an example section wrapped in a Chapter component. +

+
+ } +}`,...(n=(r=a.parameters)==null?void 0:r.docs)==null?void 0:n.source}}};var o,c,d;s.parameters={...s.parameters,docs:{...(o=s.parameters)==null?void 0:o.docs,source:{originalSource:`{ + args: { + children:
+

Styled Chapter

+

This chapter has a custom background class.

+
, + className: "bg-muted rounded-xl" + } +}`,...(d=(c=s.parameters)==null?void 0:c.docs)==null?void 0:d.source}}};const C=["Default","WithCustomClass"];export{a as Default,s as WithCustomClass,C as __namedExportsOrder,f as default}; diff --git a/apps/portal/public/storybook/assets/ChatBubbleLeftRightIcon-DfYi9O0H.js b/apps/portal/public/storybook/assets/ChatBubbleLeftRightIcon-DfYi9O0H.js new file mode 100644 index 00000000..a7ff6478 --- /dev/null +++ b/apps/portal/public/storybook/assets/ChatBubbleLeftRightIcon-DfYi9O0H.js @@ -0,0 +1 @@ +import{r as e}from"./index-JhL3uwfD.js";function n({title:r,titleId:t,...o},a){return e.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:a,"aria-labelledby":t},o),r?e.createElement("title",{id:t},r):null,e.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M20.25 8.511c.884.284 1.5 1.128 1.5 2.097v4.286c0 1.136-.847 2.1-1.98 2.193-.34.027-.68.052-1.02.072v3.091l-3-3c-1.354 0-2.694-.055-4.02-.163a2.115 2.115 0 0 1-.825-.242m9.345-8.334a2.126 2.126 0 0 0-.476-.095 48.64 48.64 0 0 0-8.048 0c-1.131.094-1.976 1.057-1.976 2.192v4.286c0 .837.46 1.58 1.155 1.951m9.345-8.334V6.637c0-1.621-1.152-3.026-2.76-3.235A48.455 48.455 0 0 0 11.25 3c-2.115 0-4.198.137-6.24.402-1.608.209-2.76 1.614-2.76 3.235v6.226c0 1.621 1.152 3.026 2.76 3.235.577.075 1.157.14 1.74.194V21l4.155-4.155"}))}const l=e.forwardRef(n);export{l as F}; diff --git a/apps/portal/public/storybook/assets/CheckCircleIcon-DrKOIitY.js b/apps/portal/public/storybook/assets/CheckCircleIcon-DrKOIitY.js new file mode 100644 index 00000000..7cadb005 --- /dev/null +++ b/apps/portal/public/storybook/assets/CheckCircleIcon-DrKOIitY.js @@ -0,0 +1 @@ +import{r as e}from"./index-JhL3uwfD.js";function o({title:r,titleId:l,...a},t){return e.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:t,"aria-labelledby":l},a),r?e.createElement("title",{id:l},r):null,e.createElement("path",{fillRule:"evenodd",d:"M2.25 12c0-5.385 4.365-9.75 9.75-9.75s9.75 4.365 9.75 9.75-4.365 9.75-9.75 9.75S2.25 17.385 2.25 12Zm13.36-1.814a.75.75 0 1 0-1.22-.872l-3.236 4.53L9.53 12.22a.75.75 0 0 0-1.06 1.06l2.25 2.25a.75.75 0 0 0 1.14-.094l3.75-5.25Z",clipRule:"evenodd"}))}const c=e.forwardRef(o);export{c as F}; diff --git a/apps/portal/public/storybook/assets/CheckCircleIcon-Dva35lTP.js b/apps/portal/public/storybook/assets/CheckCircleIcon-Dva35lTP.js new file mode 100644 index 00000000..90ec6ada --- /dev/null +++ b/apps/portal/public/storybook/assets/CheckCircleIcon-Dva35lTP.js @@ -0,0 +1 @@ +import{r as e}from"./index-JhL3uwfD.js";function a({title:r,titleId:t,...o},n){return e.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:n,"aria-labelledby":t},o),r?e.createElement("title",{id:t},r):null,e.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M9 12.75 11.25 15 15 9.75M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z"}))}const s=e.forwardRef(a);export{s as F}; diff --git a/apps/portal/public/storybook/assets/CheckIcon-BKJSKBEC.js b/apps/portal/public/storybook/assets/CheckIcon-BKJSKBEC.js new file mode 100644 index 00000000..75aecd9f --- /dev/null +++ b/apps/portal/public/storybook/assets/CheckIcon-BKJSKBEC.js @@ -0,0 +1 @@ +import{r as e}from"./index-JhL3uwfD.js";function a({title:r,titleId:t,...o},n){return e.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:n,"aria-labelledby":t},o),r?e.createElement("title",{id:t},r):null,e.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"m4.5 12.75 6 6 9-13.5"}))}const i=e.forwardRef(a);export{i as F}; diff --git a/apps/portal/public/storybook/assets/CheckoutErrorFallback.stories-BQ4DRuiU.js b/apps/portal/public/storybook/assets/CheckoutErrorFallback.stories-BQ4DRuiU.js new file mode 100644 index 00000000..7e5bdc5b --- /dev/null +++ b/apps/portal/public/storybook/assets/CheckoutErrorFallback.stories-BQ4DRuiU.js @@ -0,0 +1,6 @@ +import{j as r}from"./jsx-runtime-D_zvdyIk.js";import{A as c}from"./AlertBanner-Bnlyj1xc.js";import{B as n}from"./button-C8_cybvS.js";import"./XCircleIcon-CiVBnngB.js";import"./index-JhL3uwfD.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./InformationCircleIcon-Clz7d-56.js";import"./CheckCircleIcon-Dva35lTP.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./spinner-mU4XywER.js";function i({shopHref:t}){return r.jsx("div",{className:"max-w-2xl mx-auto py-8",children:r.jsx(c,{variant:"error",title:"Checkout Error",elevated:!0,children:r.jsxs("div",{className:"flex items-center justify-between",children:[r.jsx("span",{children:"Checkout data is not available"}),r.jsx(n,{as:"a",href:t,variant:"link",children:"Back to Services"})]})})})}i.__docgenInfo={description:`Error fallback displayed when checkout data is not available. +Shows an error banner with a link back to services.`,methods:[],displayName:"CheckoutErrorFallback",props:{shopHref:{required:!0,tsType:{name:"string"},description:"The shop href to navigate back to"}}};const w={title:"Features/Checkout/CheckoutErrorFallback",component:i,parameters:{layout:"centered"},decorators:[t=>r.jsx("div",{style:{width:640},children:r.jsx(t,{})})]},e={args:{shopHref:"/account/services"}};var a,o,s;e.parameters={...e.parameters,docs:{...(a=e.parameters)==null?void 0:a.docs,source:{originalSource:`{ + args: { + shopHref: "/account/services" + } +}`,...(s=(o=e.parameters)==null?void 0:o.docs)==null?void 0:s.source}}};const C=["Default"];export{e as Default,C as __namedExportsOrder,w as default}; diff --git a/apps/portal/public/storybook/assets/CheckoutShell.stories-DuLNb4b_.js b/apps/portal/public/storybook/assets/CheckoutShell.stories-DuLNb4b_.js new file mode 100644 index 00000000..0281df90 --- /dev/null +++ b/apps/portal/public/storybook/assets/CheckoutShell.stories-DuLNb4b_.js @@ -0,0 +1,16 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{r as h}from"./index-JhL3uwfD.js";import{L as t}from"./next-link-BmD4fPSy.js";import{L as u}from"./logo-f0fprTjz.js";import{u as n}from"./auth.store-CVqT-1lf.js";import{F as x}from"./ShieldCheckIcon-BBoI5cMX.js";import"./next-image-69WeRggt.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./error-handling-CCxr4Gjn.js";import"./react-C6W-rNNW.js";import"./schema-JsDJirqf.js";import"./schema-Dok_SHcO.js";function d({children:m}){const o=n(s=>s.hasCheckedAuth),a=n(s=>s.checkAuth);return h.useEffect(()=>{o||a()},[a,o]),e.jsxs("div",{className:"min-h-screen flex flex-col bg-background text-foreground",children:[e.jsxs("div",{className:"fixed inset-0 -z-10 overflow-hidden pointer-events-none",children:[e.jsx("div",{className:"absolute top-0 left-1/4 w-96 h-96 bg-primary/5 rounded-full blur-3xl"}),e.jsx("div",{className:"absolute bottom-0 right-1/4 w-96 h-96 bg-primary/5 rounded-full blur-3xl"})]}),e.jsx("header",{className:"sticky top-0 z-40 border-b border-border/50 bg-background/80 backdrop-blur-xl",children:e.jsxs("div",{className:"max-w-[var(--cp-page-max-width)] mx-auto px-[var(--cp-page-padding)] py-3 flex items-center justify-between gap-4",children:[e.jsxs(t,{href:"/",className:"inline-flex items-center gap-3 min-w-0 group",children:[e.jsx("span",{className:"inline-flex items-center justify-center h-11 w-11 rounded-xl bg-white border border-border/60 shadow-lg shadow-[#28A6E0]/10 transition-transform group-hover:scale-105",children:e.jsx(u,{size:28})}),e.jsxs("span",{className:"min-w-0 hidden sm:block",children:[e.jsx("span",{className:"block text-base font-bold leading-tight truncate text-foreground",children:"Assist Solutions"}),e.jsx("span",{className:"block text-xs text-muted-foreground leading-tight truncate",children:"Secure Checkout"})]})]}),e.jsxs("div",{className:"flex items-center gap-4",children:[e.jsxs("div",{className:"hidden sm:flex items-center gap-2 text-sm text-muted-foreground",children:[e.jsx(x,{className:"h-5 w-5 text-success"}),e.jsx("span",{children:"Secure Checkout"})]}),e.jsx(t,{href:"/help",className:"inline-flex items-center rounded-lg px-3 py-2 text-sm font-medium text-muted-foreground hover:text-foreground hover:bg-muted/50 transition-colors",children:"Need Help?"})]})]})}),e.jsx("main",{className:"flex-1",children:e.jsx("div",{className:"max-w-[var(--cp-page-max-width)] mx-auto px-[var(--cp-page-padding)] py-8 sm:py-12",children:m})}),e.jsx("footer",{className:"border-t border-border/50 bg-muted/30",children:e.jsx("div",{className:"max-w-[var(--cp-page-max-width)] mx-auto px-[var(--cp-page-padding)] py-6",children:e.jsxs("div",{className:"flex flex-col sm:flex-row items-center justify-between gap-4 text-sm text-muted-foreground",children:[e.jsxs("div",{children:["© ",new Date().getFullYear()," Assist Solutions"]}),e.jsxs("div",{className:"flex items-center gap-4",children:[e.jsx(t,{href:"#",className:"hover:text-foreground transition-colors",children:"Privacy Policy"}),e.jsx(t,{href:"#",className:"hover:text-foreground transition-colors",children:"Terms of Service"})]})]})})})]})}d.__docgenInfo={description:`CheckoutShell - Minimal shell for checkout flow + +Features: +- Logo linking to homepage +- Security badge +- Support link +- Clean, focused design`,methods:[],displayName:"CheckoutShell",props:{children:{required:!0,tsType:{name:"ReactNode"},description:""}}};const F={title:"Features/Checkout/CheckoutShell",component:d,parameters:{layout:"fullscreen"}},r={args:{children:e.jsxs("div",{className:"text-center py-20",children:[e.jsx("h1",{className:"text-2xl font-bold",children:"Checkout Content Area"}),e.jsx("p",{className:"text-muted-foreground mt-2",children:"This area would contain the checkout form."})]})}};var c,i,l;r.parameters={...r.parameters,docs:{...(c=r.parameters)==null?void 0:c.docs,source:{originalSource:`{ + args: { + children:
+

Checkout Content Area

+

+ This area would contain the checkout form. +

+
+ } +}`,...(l=(i=r.parameters)==null?void 0:i.docs)==null?void 0:l.source}}};const L=["Default"];export{r as Default,L as __namedExportsOrder,F as default}; diff --git a/apps/portal/public/storybook/assets/CheckoutStatusBanners.stories-ySBtOPrz.js b/apps/portal/public/storybook/assets/CheckoutStatusBanners.stories-ySBtOPrz.js new file mode 100644 index 00000000..46354432 --- /dev/null +++ b/apps/portal/public/storybook/assets/CheckoutStatusBanners.stories-ySBtOPrz.js @@ -0,0 +1,88 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{B as l}from"./button-C8_cybvS.js";import{A as t}from"./AlertBanner-Bnlyj1xc.js";import"./index-BKyvj4H5.js";import{fn as r}from"./index-B9TJ7cVi.js";import"./index-JhL3uwfD.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./spinner-mU4XywER.js";import"./XCircleIcon-CiVBnngB.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./InformationCircleIcon-Clz7d-56.js";import"./CheckCircleIcon-Dva35lTP.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";function U(i,n){if(typeof window>"u")return!0;const s=n==null?void 0:n.trim(),a=s?` + +${s}`:"";return window.confirm(`${i}${a}`)}function Y({eligibility:i,eligibilityRequest:n,hasServiceAddress:s,addressLabel:a,userAddress:o,planSku:b}){return i.isLoading?e.jsx(t,{variant:"info",title:"Checking availability…",elevated:!0,children:"We're loading your current eligibility status."}):i.isError?e.jsx(t,{variant:"warning",title:"Unable to verify availability right now",elevated:!0,children:e.jsxs("div",{className:"flex flex-col sm:flex-row sm:items-center gap-3",children:[e.jsx("span",{className:"text-sm text-foreground/80",children:"Please try again in a moment. If this continues, contact support."}),e.jsx(l,{type:"button",size:"sm",className:"sm:ml-auto",onClick:()=>void i.refetch(),children:"Try again"})]})}):i.isPending?e.jsx(t,{variant:"info",title:"Availability review in progress",elevated:!0,children:e.jsxs("div",{className:"flex flex-col sm:flex-row sm:items-center gap-3",children:[e.jsx("span",{className:"text-sm text-foreground/80",children:"We're verifying whether our service is available at your residence. Once eligibility is confirmed, you can submit your internet order."}),e.jsx(l,{as:"a",href:"/account/services/internet",size:"sm",className:"sm:ml-auto",children:"View status"})]})}):i.isNotRequested?e.jsx(J,{eligibilityRequest:n,hasServiceAddress:s,addressLabel:a,userAddress:o,planSku:b}):i.isIneligible?e.jsx(t,{variant:"warning",title:"Service not available",elevated:!0,children:e.jsxs("div",{className:"space-y-2",children:[e.jsx("p",{className:"text-sm text-foreground/80",children:"Our team reviewed your address and determined service isn't available right now."}),e.jsx(Z,{notes:i.notes,requestedAt:i.requestedAt}),e.jsx(l,{as:"a",href:"/account/support/new",size:"sm",children:"Contact support"})]})}):null}function Z({notes:i,requestedAt:n}){return i?e.jsx("p",{className:"text-xs text-muted-foreground",children:i}):n?e.jsxs("p",{className:"text-xs text-muted-foreground",children:["Last updated: ",new Date(n).toLocaleString()]}):null}function J({eligibilityRequest:i,hasServiceAddress:n,addressLabel:s,userAddress:a,planSku:o}){return e.jsx(t,{variant:"info",title:"Eligibility review required",elevated:!0,children:e.jsxs("div",{className:"flex flex-col sm:flex-row sm:items-center gap-3",children:[e.jsx("span",{className:"text-sm text-foreground/80",children:"Request an eligibility review to confirm service availability for your address before submitting an internet order."}),n?e.jsx(l,{type:"button",size:"sm",className:"sm:ml-auto",disabled:i.isPending,isLoading:i.isPending,loadingText:"Requesting…",onClick:()=>void(async()=>{U("Request an eligibility review for this address?",s)&&i.mutate({address:a??void 0,notes:o?`Requested during checkout. Selected plan SKU: ${o}`:"Requested during checkout."})})(),children:"Request review"}):e.jsx(l,{as:"a",href:"/account/settings",size:"sm",className:"sm:ml-auto",children:"Add address"})]})})}function D({activeInternetWarning:i,...n}){return e.jsxs(e.Fragment,{children:[i&&e.jsx(t,{variant:"warning",title:"Existing Internet Subscription",elevated:!0,children:e.jsx("span",{className:"text-sm text-foreground/80",children:i})}),e.jsx(Y,{...n})]})}D.__docgenInfo={description:"",methods:[],displayName:"CheckoutStatusBanners",props:{activeInternetWarning:{required:!0,tsType:{name:"union",raw:"string | null",elements:[{name:"string"},{name:"null"}]},description:""},eligibility:{required:!0,tsType:{name:"signature",type:"object",raw:`{ + isLoading: boolean; + isError: boolean; + isPending: boolean; + isNotRequested: boolean; + isIneligible: boolean; + notes?: string | null | undefined; + requestedAt?: string | null | undefined; + refetch: () => void; +}`,signature:{properties:[{key:"isLoading",value:{name:"boolean",required:!0}},{key:"isError",value:{name:"boolean",required:!0}},{key:"isPending",value:{name:"boolean",required:!0}},{key:"isNotRequested",value:{name:"boolean",required:!0}},{key:"isIneligible",value:{name:"boolean",required:!0}},{key:"notes",value:{name:"union",raw:"string | null | undefined",elements:[{name:"string"},{name:"null"},{name:"undefined"}],required:!1}},{key:"requestedAt",value:{name:"union",raw:"string | null | undefined",elements:[{name:"string"},{name:"null"},{name:"undefined"}],required:!1}},{key:"refetch",value:{name:"signature",type:"function",raw:"() => void",signature:{arguments:[],return:{name:"void"}},required:!0}}]}},description:""},eligibilityRequest:{required:!0,tsType:{name:"signature",type:"object",raw:`{ + isPending: boolean; + mutate: (data: { address?: Partial
| undefined; notes?: string | undefined }) => void; +}`,signature:{properties:[{key:"isPending",value:{name:"boolean",required:!0}},{key:"mutate",value:{name:"signature",type:"function",raw:"(data: { address?: Partial
| undefined; notes?: string | undefined }) => void",signature:{arguments:[{type:{name:"signature",type:"object",raw:"{ address?: Partial
| undefined; notes?: string | undefined }",signature:{properties:[{key:"address",value:{name:"union",raw:"Partial
| undefined",elements:[{name:"Partial",elements:[{name:"z.infer",elements:[{name:"addressSchema"}],raw:"z.infer"}],raw:"Partial
"},{name:"undefined"}],required:!1}},{key:"notes",value:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}],required:!1}}]}},name:"data"}],return:{name:"void"}},required:!0}}]}},description:""},hasServiceAddress:{required:!0,tsType:{name:"boolean"},description:""},addressLabel:{required:!0,tsType:{name:"string"},description:""},userAddress:{required:!1,tsType:{name:"union",raw:"Partial
| undefined",elements:[{name:"Partial",elements:[{name:"z.infer",elements:[{name:"addressSchema"}],raw:"z.infer"}],raw:"Partial
"},{name:"undefined"}]},description:""},planSku:{required:!1,tsType:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}]},description:""}}};const de={title:"Features/Checkout/CheckoutStatusBanners",component:D,parameters:{layout:"centered"},decorators:[i=>e.jsx("div",{style:{width:640},children:e.jsx(i,{})})],args:{activeInternetWarning:null,eligibility:{isLoading:!1,isError:!1,isPending:!1,isNotRequested:!1,isIneligible:!1,notes:null,requestedAt:null,refetch:r()},eligibilityRequest:{isPending:!1,mutate:r()},hasServiceAddress:!0,addressLabel:"123 Tokyo Street, Shibuya-ku, Tokyo",userAddress:{address1:"123 Tokyo Street",city:"Tokyo",state:"Shibuya-ku",postcode:"150-0001",country:"JP"},planSku:"FIBER-100"}},d={},u={args:{activeInternetWarning:"You already have an active internet subscription. Adding a new one may result in duplicate billing."}},c={args:{eligibility:{isLoading:!0,isError:!1,isPending:!1,isNotRequested:!1,isIneligible:!1,refetch:r()}}},m={args:{eligibility:{isLoading:!1,isError:!0,isPending:!1,isNotRequested:!1,isIneligible:!1,refetch:r()}}},g={args:{eligibility:{isLoading:!1,isError:!1,isPending:!0,isNotRequested:!1,isIneligible:!1,refetch:r()}}},f={args:{eligibility:{isLoading:!1,isError:!1,isPending:!1,isNotRequested:!0,isIneligible:!1,refetch:r()}}},p={args:{hasServiceAddress:!1,eligibility:{isLoading:!1,isError:!1,isPending:!1,isNotRequested:!0,isIneligible:!1,refetch:r()}}},y={args:{eligibility:{isLoading:!1,isError:!1,isPending:!1,isNotRequested:!1,isIneligible:!0,notes:"Service is not available in your area due to infrastructure limitations.",requestedAt:"2026-03-01T10:00:00Z",refetch:r()}}};var v,h,x;d.parameters={...d.parameters,docs:{...(v=d.parameters)==null?void 0:v.docs,source:{originalSource:"{}",...(x=(h=d.parameters)==null?void 0:h.docs)==null?void 0:x.source}}};var q,w,N;u.parameters={...u.parameters,docs:{...(q=u.parameters)==null?void 0:q.docs,source:{originalSource:`{ + args: { + activeInternetWarning: "You already have an active internet subscription. Adding a new one may result in duplicate billing." + } +}`,...(N=(w=u.parameters)==null?void 0:w.docs)==null?void 0:N.source}}};var E,P,j;c.parameters={...c.parameters,docs:{...(E=c.parameters)==null?void 0:E.docs,source:{originalSource:`{ + args: { + eligibility: { + isLoading: true, + isError: false, + isPending: false, + isNotRequested: false, + isIneligible: false, + refetch: fn() + } + } +}`,...(j=(P=c.parameters)==null?void 0:P.docs)==null?void 0:j.source}}};var S,A,R;m.parameters={...m.parameters,docs:{...(S=m.parameters)==null?void 0:S.docs,source:{originalSource:`{ + args: { + eligibility: { + isLoading: false, + isError: true, + isPending: false, + isNotRequested: false, + isIneligible: false, + refetch: fn() + } + } +}`,...(R=(A=m.parameters)==null?void 0:A.docs)==null?void 0:R.source}}};var k,I,L;g.parameters={...g.parameters,docs:{...(k=g.parameters)==null?void 0:k.docs,source:{originalSource:`{ + args: { + eligibility: { + isLoading: false, + isError: false, + isPending: true, + isNotRequested: false, + isIneligible: false, + refetch: fn() + } + } +}`,...(L=(I=g.parameters)==null?void 0:I.docs)==null?void 0:L.source}}};var T,W,z;f.parameters={...f.parameters,docs:{...(T=f.parameters)==null?void 0:T.docs,source:{originalSource:`{ + args: { + eligibility: { + isLoading: false, + isError: false, + isPending: false, + isNotRequested: true, + isIneligible: false, + refetch: fn() + } + } +}`,...(z=(W=f.parameters)==null?void 0:W.docs)==null?void 0:z.source}}};var B,C,_;p.parameters={...p.parameters,docs:{...(B=p.parameters)==null?void 0:B.docs,source:{originalSource:`{ + args: { + hasServiceAddress: false, + eligibility: { + isLoading: false, + isError: false, + isPending: false, + isNotRequested: true, + isIneligible: false, + refetch: fn() + } + } +}`,...(_=(C=p.parameters)==null?void 0:C.docs)==null?void 0:_.source}}};var $,F,O;y.parameters={...y.parameters,docs:{...($=y.parameters)==null?void 0:$.docs,source:{originalSource:`{ + args: { + eligibility: { + isLoading: false, + isError: false, + isPending: false, + isNotRequested: false, + isIneligible: true, + notes: "Service is not available in your area due to infrastructure limitations.", + requestedAt: "2026-03-01T10:00:00Z", + refetch: fn() + } + } +}`,...(O=(F=y.parameters)==null?void 0:F.docs)==null?void 0:O.source}}};const ue=["NoWarnings","ActiveInternetWarning","EligibilityLoading","EligibilityError","EligibilityPending","EligibilityNotRequested","EligibilityNotRequestedNoAddress","Ineligible"];export{u as ActiveInternetWarning,m as EligibilityError,c as EligibilityLoading,f as EligibilityNotRequested,p as EligibilityNotRequestedNoAddress,g as EligibilityPending,y as Ineligible,d as NoWarnings,ue as __namedExportsOrder,de as default}; diff --git a/apps/portal/public/storybook/assets/ChevronRightIcon-CMQWsJeW.js b/apps/portal/public/storybook/assets/ChevronRightIcon-CMQWsJeW.js new file mode 100644 index 00000000..1c2ea7a8 --- /dev/null +++ b/apps/portal/public/storybook/assets/ChevronRightIcon-CMQWsJeW.js @@ -0,0 +1 @@ +import{r as e}from"./index-JhL3uwfD.js";function a({title:r,titleId:t,...o},n){return e.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:n,"aria-labelledby":t},o),r?e.createElement("title",{id:t},r):null,e.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"m8.25 4.5 7.5 7.5-7.5 7.5"}))}const s=e.forwardRef(a);export{s as F}; diff --git a/apps/portal/public/storybook/assets/ClearFiltersButton-CPCoyXk2.js b/apps/portal/public/storybook/assets/ClearFiltersButton-CPCoyXk2.js new file mode 100644 index 00000000..c8aa42ae --- /dev/null +++ b/apps/portal/public/storybook/assets/ClearFiltersButton-CPCoyXk2.js @@ -0,0 +1,4 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{c as n}from"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import{F as i}from"./XMarkIcon-Bsb1W5VN.js";function l({onClick:t,show:r=!0,label:s="Clear",className:a}){return r?e.jsxs("button",{onClick:t,className:n("flex items-center gap-1 px-3 py-2 text-sm","text-muted-foreground hover:text-foreground hover:bg-muted","rounded-lg transition-colors",a),children:[e.jsx(i,{className:"h-4 w-4"}),e.jsx("span",{className:"hidden sm:inline",children:s})]}):null}l.__docgenInfo={description:`ClearFiltersButton - Reusable clear filters button with consistent styling. + +Used across list pages (Orders, Support, Invoices) to reset filters. +Only renders when \`show\` is true (defaults to true).`,methods:[],displayName:"ClearFiltersButton",props:{onClick:{required:!0,tsType:{name:"signature",type:"function",raw:"() => void",signature:{arguments:[],return:{name:"void"}}},description:"Callback when button is clicked"},show:{required:!1,tsType:{name:"boolean"},description:"Whether the button should be visible (typically when filters are active)",defaultValue:{value:"true",computed:!1}},label:{required:!1,tsType:{name:"string"},description:'Optional label text (default: "Clear")',defaultValue:{value:'"Clear"',computed:!1}},className:{required:!1,tsType:{name:"string"},description:"Optional additional class names"}}};export{l as C}; diff --git a/apps/portal/public/storybook/assets/ClearFiltersButton.stories-DUreI73q.js b/apps/portal/public/storybook/assets/ClearFiltersButton.stories-DUreI73q.js new file mode 100644 index 00000000..a945b589 --- /dev/null +++ b/apps/portal/public/storybook/assets/ClearFiltersButton.stories-DUreI73q.js @@ -0,0 +1,17 @@ +import{C as u}from"./ClearFiltersButton-CPCoyXk2.js";import"./jsx-runtime-D_zvdyIk.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./XMarkIcon-Bsb1W5VN.js";import"./index-JhL3uwfD.js";const F={title:"Molecules/ClearFiltersButton",component:u},e={args:{onClick:()=>alert("Cleared!"),show:!0}},r={args:{onClick:()=>{},show:!0,label:"Reset Filters"}},s={args:{onClick:()=>{},show:!1}};var o,a,t;e.parameters={...e.parameters,docs:{...(o=e.parameters)==null?void 0:o.docs,source:{originalSource:`{ + args: { + onClick: () => alert("Cleared!"), + show: true + } +}`,...(t=(a=e.parameters)==null?void 0:a.docs)==null?void 0:t.source}}};var n,l,c;r.parameters={...r.parameters,docs:{...(n=r.parameters)==null?void 0:n.docs,source:{originalSource:`{ + args: { + onClick: () => {}, + show: true, + label: "Reset Filters" + } +}`,...(c=(l=r.parameters)==null?void 0:l.docs)==null?void 0:c.source}}};var i,m,p;s.parameters={...s.parameters,docs:{...(i=s.parameters)==null?void 0:i.docs,source:{originalSource:`{ + args: { + onClick: () => {}, + show: false + } +}`,...(p=(m=s.parameters)==null?void 0:m.docs)==null?void 0:p.source}}};const S=["Default","CustomLabel","Hidden"];export{r as CustomLabel,e as Default,s as Hidden,S as __namedExportsOrder,F as default}; diff --git a/apps/portal/public/storybook/assets/ClockIcon-BFX11zAZ.js b/apps/portal/public/storybook/assets/ClockIcon-BFX11zAZ.js new file mode 100644 index 00000000..dbce7cd6 --- /dev/null +++ b/apps/portal/public/storybook/assets/ClockIcon-BFX11zAZ.js @@ -0,0 +1 @@ +import{r as e}from"./index-JhL3uwfD.js";function a({title:r,titleId:o,...t},n){return e.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:n,"aria-labelledby":o},t),r?e.createElement("title",{id:o},r):null,e.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M12 6v6h4.5m4.5 0a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z"}))}const i=e.forwardRef(a);export{i as F}; diff --git a/apps/portal/public/storybook/assets/CollapsibleSection-CChCyQrB.js b/apps/portal/public/storybook/assets/CollapsibleSection-CChCyQrB.js new file mode 100644 index 00000000..7b5d4fd8 --- /dev/null +++ b/apps/portal/public/storybook/assets/CollapsibleSection-CChCyQrB.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{r as d}from"./index-JhL3uwfD.js";import{m as i}from"./proxy-ZkTvaR74.js";import{C as l}from"./chevron-down-CuGyZVZ6.js";import{A as c}from"./index-CNXKWNLp.js";function m({title:r,icon:s,defaultOpen:o=!1,children:a}){const[t,n]=d.useState(o);return e.jsxs("div",{className:"border border-border/60 rounded-xl overflow-hidden bg-card",children:[e.jsxs("button",{type:"button",onClick:()=>n(!t),className:"w-full flex items-center justify-between p-4 text-left hover:bg-muted/30 transition-colors",children:[e.jsxs("div",{className:"flex items-center gap-2.5",children:[e.jsx(s,{className:"w-4 h-4 text-primary"}),e.jsx("span",{className:"text-sm font-medium text-foreground",children:r})]}),e.jsx(i.div,{animate:{rotate:t?180:0},transition:{duration:.2},children:e.jsx(l,{className:"w-4 h-4 text-muted-foreground"})})]}),e.jsx(c,{initial:!1,children:t&&e.jsx(i.div,{initial:{height:0,opacity:0},animate:{height:"auto",opacity:1},exit:{height:0,opacity:0},transition:{duration:.3,ease:"easeOut"},style:{overflow:"hidden"},children:e.jsx("div",{className:"p-4 pt-0 border-t border-border/60",children:a})})})]})}m.__docgenInfo={description:"",methods:[],displayName:"CollapsibleSection",props:{title:{required:!0,tsType:{name:"string"},description:""},icon:{required:!0,tsType:{name:"ElementType"},description:""},defaultOpen:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"false",computed:!1}},children:{required:!0,tsType:{name:"ReactNode"},description:""}}};export{m as C}; diff --git a/apps/portal/public/storybook/assets/CollapsibleSection.stories-C3ZRYcvr.js b/apps/portal/public/storybook/assets/CollapsibleSection.stories-C3ZRYcvr.js new file mode 100644 index 00000000..0b3d3b04 --- /dev/null +++ b/apps/portal/public/storybook/assets/CollapsibleSection.stories-C3ZRYcvr.js @@ -0,0 +1,35 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{C as x}from"./CollapsibleSection-CChCyQrB.js";import{S as f}from"./settings-BcEpseup.js";import{I as g}from"./info-Ck405yVi.js";import{C as h}from"./circle-question-mark-CauZ9VmE.js";import"./index-JhL3uwfD.js";import"./proxy-ZkTvaR74.js";import"./chevron-down-CuGyZVZ6.js";import"./createLucideIcon-CctB0W3q.js";import"./index-CNXKWNLp.js";const T={title:"Features/Services/Base/CollapsibleSection",component:x,parameters:{layout:"centered"},decorators:[u=>e.jsx("div",{style:{maxWidth:500},children:e.jsx(u,{})})]},t={args:{title:"Advanced Settings",icon:f,children:e.jsxs("div",{className:"space-y-2 text-sm text-muted-foreground",children:[e.jsx("p",{children:"Configure advanced settings for your plan."}),e.jsx("p",{children:"These settings are optional and can be changed later."})]})}},s={args:{title:"Important Information",icon:g,defaultOpen:!0,children:e.jsxs("div",{className:"space-y-2 text-sm text-muted-foreground",children:[e.jsx("p",{children:"This section is open by default."}),e.jsx("p",{children:"It contains important details about your service."})]})}},n={args:{title:"Need Help?",icon:h,children:e.jsxs("div",{className:"space-y-3 text-sm",children:[e.jsx("p",{className:"text-muted-foreground",children:"If you need assistance, contact our support team."}),e.jsxs("ul",{className:"list-disc list-inside text-muted-foreground space-y-1",children:[e.jsx("li",{children:"Phone: 0120-XXX-XXX"}),e.jsx("li",{children:"Email: support@example.com"}),e.jsx("li",{children:"Hours: 9:00 - 18:00 JST"})]})]})}};var r,a,o;t.parameters={...t.parameters,docs:{...(r=t.parameters)==null?void 0:r.docs,source:{originalSource:`{ + args: { + title: "Advanced Settings", + icon: Settings, + children:
+

Configure advanced settings for your plan.

+

These settings are optional and can be changed later.

+
+ } +}`,...(o=(a=t.parameters)==null?void 0:a.docs)==null?void 0:o.source}}};var i,c,l;s.parameters={...s.parameters,docs:{...(i=s.parameters)==null?void 0:i.docs,source:{originalSource:`{ + args: { + title: "Important Information", + icon: Info, + defaultOpen: true, + children:
+

This section is open by default.

+

It contains important details about your service.

+
+ } +}`,...(l=(c=s.parameters)==null?void 0:c.docs)==null?void 0:l.source}}};var d,p,m;n.parameters={...n.parameters,docs:{...(d=n.parameters)==null?void 0:d.docs,source:{originalSource:`{ + args: { + title: "Need Help?", + icon: HelpCircle, + children:
+

+ If you need assistance, contact our support team. +

+
    +
  • Phone: 0120-XXX-XXX
  • +
  • Email: support@example.com
  • +
  • Hours: 9:00 - 18:00 JST
  • +
+
+ } +}`,...(m=(p=n.parameters)==null?void 0:p.docs)==null?void 0:m.source}}};const O=["Default","DefaultOpen","HelpSection"];export{t as Default,s as DefaultOpen,n as HelpSection,O as __namedExportsOrder,T as default}; diff --git a/apps/portal/public/storybook/assets/Color-YHDXOIA2-BJn0-NzM.js b/apps/portal/public/storybook/assets/Color-YHDXOIA2-BJn0-NzM.js new file mode 100644 index 00000000..80e9951f --- /dev/null +++ b/apps/portal/public/storybook/assets/Color-YHDXOIA2-BJn0-NzM.js @@ -0,0 +1 @@ +import{d as ce,Z as Y,g as he,v as M,s as fe,Q as de,M as ge,_ as be,a as q}from"./DocsRenderer-CFRXHY34-CPSpsf6k.js";import{r as p,R as m}from"./index-JhL3uwfD.js";import"./iframe-Ce-ZSiNJ.js";import"./jsx-runtime-D_zvdyIk.js";import"./client-B9ae35Ip.js";import"./index-DgH-xKnr.js";import"./index-DrFu-skq.js";var me=q({"../../node_modules/color-name/index.js"(n,o){o.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}}}),Z=q({"../../node_modules/color-convert/conversions.js"(n,o){var c=me(),h={};for(let e of Object.keys(c))h[c[e]]=e;var i={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},lch:{channels:3,labels:"lch"},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}};o.exports=i;for(let e of Object.keys(i)){if(!("channels"in i[e]))throw new Error("missing channels property: "+e);if(!("labels"in i[e]))throw new Error("missing channel labels property: "+e);if(i[e].labels.length!==i[e].channels)throw new Error("channel and label counts mismatch: "+e);let{channels:t,labels:r}=i[e];delete i[e].channels,delete i[e].labels,Object.defineProperty(i[e],"channels",{value:t}),Object.defineProperty(i[e],"labels",{value:r})}i.rgb.hsl=function(e){let t=e[0]/255,r=e[1]/255,a=e[2]/255,l=Math.min(t,r,a),u=Math.max(t,r,a),s=u-l,f,g;u===l?f=0:t===u?f=(r-a)/s:r===u?f=2+(a-t)/s:a===u&&(f=4+(t-r)/s),f=Math.min(f*60,360),f<0&&(f+=360);let b=(l+u)/2;return u===l?g=0:b<=.5?g=s/(u+l):g=s/(2-u-l),[f,g*100,b*100]},i.rgb.hsv=function(e){let t,r,a,l,u,s=e[0]/255,f=e[1]/255,g=e[2]/255,b=Math.max(s,f,g),y=b-Math.min(s,f,g),v=function(w){return(b-w)/6/y+1/2};return y===0?(l=0,u=0):(u=y/b,t=v(s),r=v(f),a=v(g),s===b?l=a-r:f===b?l=1/3+t-a:g===b&&(l=2/3+r-t),l<0?l+=1:l>1&&(l-=1)),[l*360,u*100,b*100]},i.rgb.hwb=function(e){let t=e[0],r=e[1],a=e[2],l=i.rgb.hsl(e)[0],u=1/255*Math.min(t,Math.min(r,a));return a=1-1/255*Math.max(t,Math.max(r,a)),[l,u*100,a*100]},i.rgb.cmyk=function(e){let t=e[0]/255,r=e[1]/255,a=e[2]/255,l=Math.min(1-t,1-r,1-a),u=(1-t-l)/(1-l)||0,s=(1-r-l)/(1-l)||0,f=(1-a-l)/(1-l)||0;return[u*100,s*100,f*100,l*100]};function d(e,t){return(e[0]-t[0])**2+(e[1]-t[1])**2+(e[2]-t[2])**2}i.rgb.keyword=function(e){let t=h[e];if(t)return t;let r=1/0,a;for(let l of Object.keys(c)){let u=c[l],s=d(e,u);s.04045?((t+.055)/1.055)**2.4:t/12.92,r=r>.04045?((r+.055)/1.055)**2.4:r/12.92,a=a>.04045?((a+.055)/1.055)**2.4:a/12.92;let l=t*.4124+r*.3576+a*.1805,u=t*.2126+r*.7152+a*.0722,s=t*.0193+r*.1192+a*.9505;return[l*100,u*100,s*100]},i.rgb.lab=function(e){let t=i.rgb.xyz(e),r=t[0],a=t[1],l=t[2];r/=95.047,a/=100,l/=108.883,r=r>.008856?r**(1/3):7.787*r+16/116,a=a>.008856?a**(1/3):7.787*a+16/116,l=l>.008856?l**(1/3):7.787*l+16/116;let u=116*a-16,s=500*(r-a),f=200*(a-l);return[u,s,f]},i.hsl.rgb=function(e){let t=e[0]/360,r=e[1]/100,a=e[2]/100,l,u,s;if(r===0)return s=a*255,[s,s,s];a<.5?l=a*(1+r):l=a+r-a*r;let f=2*a-l,g=[0,0,0];for(let b=0;b<3;b++)u=t+1/3*-(b-1),u<0&&u++,u>1&&u--,6*u<1?s=f+(l-f)*6*u:2*u<1?s=l:3*u<2?s=f+(l-f)*(2/3-u)*6:s=f,g[b]=s*255;return g},i.hsl.hsv=function(e){let t=e[0],r=e[1]/100,a=e[2]/100,l=r,u=Math.max(a,.01);a*=2,r*=a<=1?a:2-a,l*=u<=1?u:2-u;let s=(a+r)/2,f=a===0?2*l/(u+l):2*r/(a+r);return[t,f*100,s*100]},i.hsv.rgb=function(e){let t=e[0]/60,r=e[1]/100,a=e[2]/100,l=Math.floor(t)%6,u=t-Math.floor(t),s=255*a*(1-r),f=255*a*(1-r*u),g=255*a*(1-r*(1-u));switch(a*=255,l){case 0:return[a,g,s];case 1:return[f,a,s];case 2:return[s,a,g];case 3:return[s,f,a];case 4:return[g,s,a];case 5:return[a,s,f]}},i.hsv.hsl=function(e){let t=e[0],r=e[1]/100,a=e[2]/100,l=Math.max(a,.01),u,s;s=(2-r)*a;let f=(2-r)*l;return u=r*l,u/=f<=1?f:2-f,u=u||0,s/=2,[t,u*100,s*100]},i.hwb.rgb=function(e){let t=e[0]/360,r=e[1]/100,a=e[2]/100,l=r+a,u;l>1&&(r/=l,a/=l);let s=Math.floor(6*t),f=1-a;u=6*t-s,(s&1)!==0&&(u=1-u);let g=r+u*(f-r),b,y,v;switch(s){default:case 6:case 0:b=f,y=g,v=r;break;case 1:b=g,y=f,v=r;break;case 2:b=r,y=f,v=g;break;case 3:b=r,y=g,v=f;break;case 4:b=g,y=r,v=f;break;case 5:b=f,y=r,v=g;break}return[b*255,y*255,v*255]},i.cmyk.rgb=function(e){let t=e[0]/100,r=e[1]/100,a=e[2]/100,l=e[3]/100,u=1-Math.min(1,t*(1-l)+l),s=1-Math.min(1,r*(1-l)+l),f=1-Math.min(1,a*(1-l)+l);return[u*255,s*255,f*255]},i.xyz.rgb=function(e){let t=e[0]/100,r=e[1]/100,a=e[2]/100,l,u,s;return l=t*3.2406+r*-1.5372+a*-.4986,u=t*-.9689+r*1.8758+a*.0415,s=t*.0557+r*-.204+a*1.057,l=l>.0031308?1.055*l**(1/2.4)-.055:l*12.92,u=u>.0031308?1.055*u**(1/2.4)-.055:u*12.92,s=s>.0031308?1.055*s**(1/2.4)-.055:s*12.92,l=Math.min(Math.max(0,l),1),u=Math.min(Math.max(0,u),1),s=Math.min(Math.max(0,s),1),[l*255,u*255,s*255]},i.xyz.lab=function(e){let t=e[0],r=e[1],a=e[2];t/=95.047,r/=100,a/=108.883,t=t>.008856?t**(1/3):7.787*t+16/116,r=r>.008856?r**(1/3):7.787*r+16/116,a=a>.008856?a**(1/3):7.787*a+16/116;let l=116*r-16,u=500*(t-r),s=200*(r-a);return[l,u,s]},i.lab.xyz=function(e){let t=e[0],r=e[1],a=e[2],l,u,s;u=(t+16)/116,l=r/500+u,s=u-a/200;let f=u**3,g=l**3,b=s**3;return u=f>.008856?f:(u-16/116)/7.787,l=g>.008856?g:(l-16/116)/7.787,s=b>.008856?b:(s-16/116)/7.787,l*=95.047,u*=100,s*=108.883,[l,u,s]},i.lab.lch=function(e){let t=e[0],r=e[1],a=e[2],l;l=Math.atan2(a,r)*360/2/Math.PI,l<0&&(l+=360);let u=Math.sqrt(r*r+a*a);return[t,u,l]},i.lch.lab=function(e){let t=e[0],r=e[1],a=e[2]/360*2*Math.PI,l=r*Math.cos(a),u=r*Math.sin(a);return[t,l,u]},i.rgb.ansi16=function(e,t=null){let[r,a,l]=e,u=t===null?i.rgb.hsv(e)[2]:t;if(u=Math.round(u/50),u===0)return 30;let s=30+(Math.round(l/255)<<2|Math.round(a/255)<<1|Math.round(r/255));return u===2&&(s+=60),s},i.hsv.ansi16=function(e){return i.rgb.ansi16(i.hsv.rgb(e),e[2])},i.rgb.ansi256=function(e){let t=e[0],r=e[1],a=e[2];return t===r&&r===a?t<8?16:t>248?231:Math.round((t-8)/247*24)+232:16+36*Math.round(t/255*5)+6*Math.round(r/255*5)+Math.round(a/255*5)},i.ansi16.rgb=function(e){let t=e%10;if(t===0||t===7)return e>50&&(t+=3.5),t=t/10.5*255,[t,t,t];let r=(~~(e>50)+1)*.5,a=(t&1)*r*255,l=(t>>1&1)*r*255,u=(t>>2&1)*r*255;return[a,l,u]},i.ansi256.rgb=function(e){if(e>=232){let u=(e-232)*10+8;return[u,u,u]}e-=16;let t,r=Math.floor(e/36)/5*255,a=Math.floor((t=e%36)/6)/5*255,l=t%6/5*255;return[r,a,l]},i.rgb.hex=function(e){let t=(((Math.round(e[0])&255)<<16)+((Math.round(e[1])&255)<<8)+(Math.round(e[2])&255)).toString(16).toUpperCase();return"000000".substring(t.length)+t},i.hex.rgb=function(e){let t=e.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!t)return[0,0,0];let r=t[0];t[0].length===3&&(r=r.split("").map(f=>f+f).join(""));let a=parseInt(r,16),l=a>>16&255,u=a>>8&255,s=a&255;return[l,u,s]},i.rgb.hcg=function(e){let t=e[0]/255,r=e[1]/255,a=e[2]/255,l=Math.max(Math.max(t,r),a),u=Math.min(Math.min(t,r),a),s=l-u,f,g;return s<1?f=u/(1-s):f=0,s<=0?g=0:l===t?g=(r-a)/s%6:l===r?g=2+(a-t)/s:g=4+(t-r)/s,g/=6,g%=1,[g*360,s*100,f*100]},i.hsl.hcg=function(e){let t=e[1]/100,r=e[2]/100,a=r<.5?2*t*r:2*t*(1-r),l=0;return a<1&&(l=(r-.5*a)/(1-a)),[e[0],a*100,l*100]},i.hsv.hcg=function(e){let t=e[1]/100,r=e[2]/100,a=t*r,l=0;return a<1&&(l=(r-a)/(1-a)),[e[0],a*100,l*100]},i.hcg.rgb=function(e){let t=e[0]/360,r=e[1]/100,a=e[2]/100;if(r===0)return[a*255,a*255,a*255];let l=[0,0,0],u=t%1*6,s=u%1,f=1-s,g=0;switch(Math.floor(u)){case 0:l[0]=1,l[1]=s,l[2]=0;break;case 1:l[0]=f,l[1]=1,l[2]=0;break;case 2:l[0]=0,l[1]=1,l[2]=s;break;case 3:l[0]=0,l[1]=f,l[2]=1;break;case 4:l[0]=s,l[1]=0,l[2]=1;break;default:l[0]=1,l[1]=0,l[2]=f}return g=(1-r)*a,[(r*l[0]+g)*255,(r*l[1]+g)*255,(r*l[2]+g)*255]},i.hcg.hsv=function(e){let t=e[1]/100,r=e[2]/100,a=t+r*(1-t),l=0;return a>0&&(l=t/a),[e[0],l*100,a*100]},i.hcg.hsl=function(e){let t=e[1]/100,r=e[2]/100*(1-t)+.5*t,a=0;return r>0&&r<.5?a=t/(2*r):r>=.5&&r<1&&(a=t/(2*(1-r))),[e[0],a*100,r*100]},i.hcg.hwb=function(e){let t=e[1]/100,r=e[2]/100,a=t+r*(1-t);return[e[0],(a-t)*100,(1-a)*100]},i.hwb.hcg=function(e){let t=e[1]/100,r=1-e[2]/100,a=r-t,l=0;return a<1&&(l=(r-a)/(1-a)),[e[0],a*100,l*100]},i.apple.rgb=function(e){return[e[0]/65535*255,e[1]/65535*255,e[2]/65535*255]},i.rgb.apple=function(e){return[e[0]/255*65535,e[1]/255*65535,e[2]/255*65535]},i.gray.rgb=function(e){return[e[0]/100*255,e[0]/100*255,e[0]/100*255]},i.gray.hsl=function(e){return[0,0,e[0]]},i.gray.hsv=i.gray.hsl,i.gray.hwb=function(e){return[0,100,e[0]]},i.gray.cmyk=function(e){return[0,0,0,e[0]]},i.gray.lab=function(e){return[e[0],0,0]},i.gray.hex=function(e){let t=Math.round(e[0]/100*255)&255,r=((t<<16)+(t<<8)+t).toString(16).toUpperCase();return"000000".substring(r.length)+r},i.rgb.gray=function(e){return[(e[0]+e[1]+e[2])/3/255*100]}}}),ve=q({"../../node_modules/color-convert/route.js"(n,o){var c=Z();function h(){let t={},r=Object.keys(c);for(let a=r.length,l=0;l1&&(l=u),r(l))};return"conversion"in r&&(a.conversion=r.conversion),a}function t(r){let a=function(...l){let u=l[0];if(u==null)return u;u.length>1&&(l=u);let s=r(l);if(typeof s=="object")for(let f=s.length,g=0;g{i[r]={},Object.defineProperty(i[r],"channels",{value:c[r].channels}),Object.defineProperty(i[r],"labels",{value:c[r].labels});let a=h(r);Object.keys(a).forEach(l=>{let u=a[l];i[r][l]=t(u),i[r][l].raw=e(u)})}),o.exports=i}}),_=be(pe());function C(){return(C=Object.assign||function(n){for(var o=1;o=0||(i[c]=n[c]);return i}function L(n){var o=p.useRef(n),c=p.useRef(function(h){o.current&&o.current(h)});return o.current=n,c.current}var O=function(n,o,c){return o===void 0&&(o=0),c===void 0&&(c=1),n>c?c:n0:y.buttons>0)&&i.current?d(T(i.current,y,t.current)):b(!1)},g=function(){return b(!1)};function b(y){var v=r.current,w=B(i.current),E=y?w.addEventListener:w.removeEventListener;E(v?"touchmove":"mousemove",f),E(v?"touchend":"mouseup",g)}return[function(y){var v=y.nativeEvent,w=i.current;if(w&&(W(v),!(function(k,P){return P&&!S(k)})(v,r.current)&&w)){if(S(v)){r.current=!0;var E=v.changedTouches||[];E.length&&(t.current=E[0].identifier)}w.focus(),d(T(w,v,t.current)),b(!0)}},function(y){var v=y.which||y.keyCode;v<37||v>40||(y.preventDefault(),e({left:v===39?.05:v===37?-.05:0,top:v===40?.05:v===38?-.05:0}))},b]},[e,d]),l=a[0],u=a[1],s=a[2];return p.useEffect(function(){return s},[s]),m.createElement("div",C({},h,{onTouchStart:l,onMouseDown:l,className:"react-colorful__interactive",ref:i,onKeyDown:u,tabIndex:0,role:"slider"}))}),N=function(n){return n.filter(Boolean).join(" ")},F=function(n){var o=n.color,c=n.left,h=n.top,i=h===void 0?.5:h,d=N(["react-colorful__pointer",n.className]);return m.createElement("div",{className:d,style:{top:100*i+"%",left:100*c+"%"}},m.createElement("div",{className:"react-colorful__pointer-fill",style:{backgroundColor:o}}))},x=function(n,o,c){return o===void 0&&(o=0),c===void 0&&(c=Math.pow(10,o)),Math.round(c*n)/c},ye={grad:.9,turn:360,rad:360/(2*Math.PI)},xe=function(n){return re(X(n))},X=function(n){return n[0]==="#"&&(n=n.substring(1)),n.length<6?{r:parseInt(n[0]+n[0],16),g:parseInt(n[1]+n[1],16),b:parseInt(n[2]+n[2],16),a:n.length===4?x(parseInt(n[3]+n[3],16)/255,2):1}:{r:parseInt(n.substring(0,2),16),g:parseInt(n.substring(2,4),16),b:parseInt(n.substring(4,6),16),a:n.length===8?x(parseInt(n.substring(6,8),16)/255,2):1}},we=function(n,o){return o===void 0&&(o="deg"),Number(n)*(ye[o]||1)},ke=function(n){var o=/hsla?\(?\s*(-?\d*\.?\d+)(deg|rad|grad|turn)?[,\s]+(-?\d*\.?\d+)%?[,\s]+(-?\d*\.?\d+)%?,?\s*[/\s]*(-?\d*\.?\d+)?(%)?\s*\)?/i.exec(n);return o?_e({h:we(o[1],o[2]),s:Number(o[3]),l:Number(o[4]),a:o[5]===void 0?1:Number(o[5])/(o[6]?100:1)}):{h:0,s:0,v:0,a:1}},_e=function(n){var o=n.s,c=n.l;return{h:n.h,s:(o*=(c<50?c:100-c)/100)>0?2*o/(c+o)*100:0,v:c+o,a:n.a}},Ee=function(n){return Ce(ee(n))},J=function(n){var o=n.s,c=n.v,h=n.a,i=(200-o)*c/100;return{h:x(n.h),s:x(i>0&&i<200?o*c/100/(i<=100?i:200-i)*100:0),l:x(i/2),a:x(h,2)}},K=function(n){var o=J(n);return"hsl("+o.h+", "+o.s+"%, "+o.l+"%)"},I=function(n){var o=J(n);return"hsla("+o.h+", "+o.s+"%, "+o.l+"%, "+o.a+")"},ee=function(n){var o=n.h,c=n.s,h=n.v,i=n.a;o=o/360*6,c/=100,h/=100;var d=Math.floor(o),e=h*(1-c),t=h*(1-(o-d)*c),r=h*(1-(1-o+d)*c),a=d%6;return{r:x(255*[h,t,e,e,r,h][a]),g:x(255*[r,h,h,t,e,e][a]),b:x(255*[e,e,r,h,h,t][a]),a:x(i,2)}},Me=function(n){var o=/rgba?\(?\s*(-?\d*\.?\d+)(%)?[,\s]+(-?\d*\.?\d+)(%)?[,\s]+(-?\d*\.?\d+)(%)?,?\s*[/\s]*(-?\d*\.?\d+)?(%)?\s*\)?/i.exec(n);return o?re({r:Number(o[1])/(o[2]?100/255:1),g:Number(o[3])/(o[4]?100/255:1),b:Number(o[5])/(o[6]?100/255:1),a:o[7]===void 0?1:Number(o[7])/(o[8]?100:1)}):{h:0,s:0,v:0,a:1}},j=function(n){var o=n.toString(16);return o.length<2?"0"+o:o},Ce=function(n){var o=n.r,c=n.g,h=n.b,i=n.a,d=i<1?j(x(255*i)):"";return"#"+j(o)+j(c)+j(h)+d},re=function(n){var o=n.r,c=n.g,h=n.b,i=n.a,d=Math.max(o,c,h),e=d-Math.min(o,c,h),t=e?d===o?(c-h)/e:d===c?2+(h-o)/e:4+(o-c)/e:0;return{h:x(60*(t<0?t+6:t)),s:x(d?e/d*100:0),v:x(d/255*100),a:i}},te=m.memo(function(n){var o=n.hue,c=n.onChange,h=N(["react-colorful__hue",n.className]);return m.createElement("div",{className:h},m.createElement(G,{onMove:function(i){c({h:360*i.left})},onKey:function(i){c({h:O(o+360*i.left,0,360)})},"aria-label":"Hue","aria-valuenow":x(o),"aria-valuemax":"360","aria-valuemin":"0"},m.createElement(F,{className:"react-colorful__hue-pointer",left:o/360,color:K({h:o,s:100,v:100,a:1})})))}),ne=m.memo(function(n){var o=n.hsva,c=n.onChange,h={backgroundColor:K({h:o.h,s:100,v:100,a:1})};return m.createElement("div",{className:"react-colorful__saturation",style:h},m.createElement(G,{onMove:function(i){c({s:100*i.left,v:100-100*i.top})},onKey:function(i){c({s:O(o.s+100*i.left,0,100),v:O(o.v-100*i.top,0,100)})},"aria-label":"Color","aria-valuetext":"Saturation "+x(o.s)+"%, Brightness "+x(o.v)+"%"},m.createElement(F,{className:"react-colorful__saturation-pointer",top:1-o.v/100,left:o.s/100,color:K(o)})))}),ae=function(n,o){if(n===o)return!0;for(var c in n)if(n[c]!==o[c])return!1;return!0},le=function(n,o){return n.replace(/\s/g,"")===o.replace(/\s/g,"")},$e=function(n,o){return n.toLowerCase()===o.toLowerCase()||ae(X(n),X(o))};function oe(n,o,c){var h=L(c),i=p.useState(function(){return n.toHsva(o)}),d=i[0],e=i[1],t=p.useRef({color:o,hsva:d});p.useEffect(function(){if(!n.equal(o,t.current.color)){var a=n.toHsva(o);t.current={hsva:a,color:o},e(a)}},[o,n]),p.useEffect(function(){var a;ae(d,t.current.hsva)||n.equal(a=n.fromHsva(d),t.current.color)||(t.current={hsva:d,color:a},h(a))},[d,n,h]);var r=p.useCallback(function(a){e(function(l){return Object.assign({},l,a)})},[]);return[d,r]}var Oe=typeof window<"u"?p.useLayoutEffect:p.useEffect,Se=function(){return typeof __webpack_nonce__<"u"?__webpack_nonce__:void 0},A=new Map,ue=function(n){Oe(function(){var o=n.current?n.current.ownerDocument:document;if(o!==void 0&&!A.has(o)){var c=o.createElement("style");c.innerHTML=`.react-colorful{position:relative;display:flex;flex-direction:column;width:200px;height:200px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:default}.react-colorful__saturation{position:relative;flex-grow:1;border-color:transparent;border-bottom:12px solid #000;border-radius:8px 8px 0 0;background-image:linear-gradient(0deg,#000,transparent),linear-gradient(90deg,#fff,hsla(0,0%,100%,0))}.react-colorful__alpha-gradient,.react-colorful__pointer-fill{content:"";position:absolute;left:0;top:0;right:0;bottom:0;pointer-events:none;border-radius:inherit}.react-colorful__alpha-gradient,.react-colorful__saturation{box-shadow:inset 0 0 0 1px rgba(0,0,0,.05)}.react-colorful__alpha,.react-colorful__hue{position:relative;height:24px}.react-colorful__hue{background:linear-gradient(90deg,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red)}.react-colorful__last-control{border-radius:0 0 8px 8px}.react-colorful__interactive{position:absolute;left:0;top:0;right:0;bottom:0;border-radius:inherit;outline:none;touch-action:none}.react-colorful__pointer{position:absolute;z-index:1;box-sizing:border-box;width:28px;height:28px;transform:translate(-50%,-50%);background-color:#fff;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 4px rgba(0,0,0,.2)}.react-colorful__interactive:focus .react-colorful__pointer{transform:translate(-50%,-50%) scale(1.1)}.react-colorful__alpha,.react-colorful__alpha-pointer{background-color:#fff;background-image:url('data:image/svg+xml;charset=utf-8,')}.react-colorful__saturation-pointer{z-index:3}.react-colorful__hue-pointer{z-index:2}`,A.set(o,c);var h=Se();h&&c.setAttribute("nonce",h),o.head.appendChild(c)}},[])},Ne=function(n){var o=n.className,c=n.colorModel,h=n.color,i=h===void 0?c.defaultColor:h,d=n.onChange,e=V(n,["className","colorModel","color","onChange"]),t=p.useRef(null);ue(t);var r=oe(c,i,d),a=r[0],l=r[1],u=N(["react-colorful",o]);return m.createElement("div",C({},e,{ref:t,className:u}),m.createElement(ne,{hsva:a,onChange:l}),m.createElement(te,{hue:a.h,onChange:l,className:"react-colorful__last-control"}))},je={defaultColor:"000",toHsva:xe,fromHsva:function(n){return Ee({h:n.h,s:n.s,v:n.v,a:1})},equal:$e},Re=function(n){return m.createElement(Ne,C({},n,{colorModel:je}))},ze=function(n){var o=n.className,c=n.hsva,h=n.onChange,i={backgroundImage:"linear-gradient(90deg, "+I(Object.assign({},c,{a:0}))+", "+I(Object.assign({},c,{a:1}))+")"},d=N(["react-colorful__alpha",o]),e=x(100*c.a);return m.createElement("div",{className:d},m.createElement("div",{className:"react-colorful__alpha-gradient",style:i}),m.createElement(G,{onMove:function(t){h({a:t.left})},onKey:function(t){h({a:O(c.a+t.left)})},"aria-label":"Alpha","aria-valuetext":e+"%","aria-valuenow":e,"aria-valuemin":"0","aria-valuemax":"100"},m.createElement(F,{className:"react-colorful__alpha-pointer",left:c.a,color:I(c)})))},ie=function(n){var o=n.className,c=n.colorModel,h=n.color,i=h===void 0?c.defaultColor:h,d=n.onChange,e=V(n,["className","colorModel","color","onChange"]),t=p.useRef(null);ue(t);var r=oe(c,i,d),a=r[0],l=r[1],u=N(["react-colorful",o]);return m.createElement("div",C({},e,{ref:t,className:u}),m.createElement(ne,{hsva:a,onChange:l}),m.createElement(te,{hue:a.h,onChange:l}),m.createElement(ze,{hsva:a,onChange:l,className:"react-colorful__last-control"}))},Ie={defaultColor:"hsla(0, 0%, 0%, 1)",toHsva:ke,fromHsva:I,equal:le},He=function(n){return m.createElement(ie,C({},n,{colorModel:Ie}))},qe={defaultColor:"rgba(0, 0, 0, 1)",toHsva:Me,fromHsva:function(n){var o=ee(n);return"rgba("+o.r+", "+o.g+", "+o.b+", "+o.a+")"},equal:le},Pe=function(n){return m.createElement(ie,C({},n,{colorModel:qe}))},Le=M.div({position:"relative",maxWidth:250,'&[aria-readonly="true"]':{opacity:.5}}),Be=M(Y)({position:"absolute",zIndex:1,top:4,left:4,"[aria-readonly=true] &":{cursor:"not-allowed"}}),Xe=M.div({width:200,margin:5,".react-colorful__saturation":{borderRadius:"4px 4px 0 0"},".react-colorful__hue":{boxShadow:"inset 0 0 0 1px rgb(0 0 0 / 5%)"},".react-colorful__last-control":{borderRadius:"0 0 4px 4px"}}),Ke=M(fe)(({theme:n})=>({fontFamily:n.typography.fonts.base})),De=M.div({display:"grid",gridTemplateColumns:"repeat(9, 16px)",gap:6,padding:3,marginTop:5,width:200}),Ve=M.div(({theme:n,active:o})=>({width:16,height:16,boxShadow:o?`${n.appBorderColor} 0 0 0 1px inset, ${n.textMutedColor}50 0 0 0 4px`:`${n.appBorderColor} 0 0 0 1px inset`,borderRadius:n.appBorderRadius})),Ge=`url('data:image/svg+xml;charset=utf-8,')`,Q=({value:n,style:o,...c})=>{let h=`linear-gradient(${n}, ${n}), ${Ge}, linear-gradient(#fff, #fff)`;return m.createElement(Ve,{...c,style:{...o,backgroundImage:h}})},Fe=M(de.Input)(({theme:n,readOnly:o})=>({width:"100%",paddingLeft:30,paddingRight:30,boxSizing:"border-box",fontFamily:n.typography.fonts.base})),Te=M(ge)(({theme:n})=>({position:"absolute",zIndex:1,top:6,right:7,width:20,height:20,padding:4,boxSizing:"border-box",cursor:"pointer",color:n.input.color})),se=(n=>(n.RGB="rgb",n.HSL="hsl",n.HEX="hex",n))(se||{}),R=Object.values(se),We=/\(([0-9]+),\s*([0-9]+)%?,\s*([0-9]+)%?,?\s*([0-9.]+)?\)/,Ae=/^\s*rgba?\(([0-9]+),\s*([0-9]+),\s*([0-9]+),?\s*([0-9.]+)?\)\s*$/i,Qe=/^\s*hsla?\(([0-9]+),\s*([0-9]+)%,\s*([0-9]+)%,?\s*([0-9.]+)?\)\s*$/i,D=/^\s*#?([0-9a-f]{3}|[0-9a-f]{6})\s*$/i,Ue=/^\s*#?([0-9a-f]{3})\s*$/i,Ye={hex:Re,rgb:Pe,hsl:He},z={hex:"transparent",rgb:"rgba(0, 0, 0, 0)",hsl:"hsla(0, 0%, 0%, 0)"},U=n=>{let o=n==null?void 0:n.match(We);if(!o)return[0,0,0,1];let[,c,h,i,d=1]=o;return[c,h,i,d].map(Number)},$=n=>{if(!n)return;let o=!0;if(Ae.test(n)){let[e,t,r,a]=U(n),[l,u,s]=_.default.rgb.hsl([e,t,r])||[0,0,0];return{valid:o,value:n,keyword:_.default.rgb.keyword([e,t,r]),colorSpace:"rgb",rgb:n,hsl:`hsla(${l}, ${u}%, ${s}%, ${a})`,hex:`#${_.default.rgb.hex([e,t,r]).toLowerCase()}`}}if(Qe.test(n)){let[e,t,r,a]=U(n),[l,u,s]=_.default.hsl.rgb([e,t,r])||[0,0,0];return{valid:o,value:n,keyword:_.default.hsl.keyword([e,t,r]),colorSpace:"hsl",rgb:`rgba(${l}, ${u}, ${s}, ${a})`,hsl:n,hex:`#${_.default.hsl.hex([e,t,r]).toLowerCase()}`}}let c=n.replace("#",""),h=_.default.keyword.rgb(c)||_.default.hex.rgb(c),i=_.default.rgb.hsl(h),d=n;if(/[^#a-f0-9]/i.test(n)?d=c:D.test(n)&&(d=`#${c}`),d.startsWith("#"))o=D.test(d);else try{_.default.keyword.hex(d)}catch{o=!1}return{valid:o,value:d,keyword:_.default.rgb.keyword(h),colorSpace:"hex",rgb:`rgba(${h[0]}, ${h[1]}, ${h[2]}, 1)`,hsl:`hsla(${i[0]}, ${i[1]}%, ${i[2]}%, 1)`,hex:d}},Ze=(n,o,c)=>{if(!n||!(o!=null&&o.valid))return z[c];if(c!=="hex")return(o==null?void 0:o[c])||z[c];if(!o.hex.startsWith("#"))try{return`#${_.default.keyword.hex(o.hex)}`}catch{return z.hex}let h=o.hex.match(Ue);if(!h)return D.test(o.hex)?o.hex:z.hex;let[i,d,e]=h[1].split("");return`#${i}${i}${d}${d}${e}${e}`},Je=(n,o)=>{let[c,h]=p.useState(n||""),[i,d]=p.useState(()=>$(c)),[e,t]=p.useState((i==null?void 0:i.colorSpace)||"hex");p.useEffect(()=>{let u=n||"",s=$(u);h(u),d(s),t((s==null?void 0:s.colorSpace)||"hex")},[n]);let r=p.useMemo(()=>Ze(c,i,e).toLowerCase(),[c,i,e]),a=p.useCallback(u=>{let s=$(u),f=(s==null?void 0:s.value)||u||"";h(f),f===""&&(d(void 0),o(void 0)),s&&(d(s),t(s.colorSpace),o(s.value))},[o]),l=p.useCallback(()=>{let u=R.indexOf(e)+1;u>=R.length&&(u=0),t(R[u]);let s=(i==null?void 0:i[R[u]])||"";h(s),o(s)},[i,e,o]);return{value:c,realValue:r,updateValue:a,color:i,colorSpace:e,cycleColorSpace:l}},H=n=>n.replace(/\s*/,"").toLowerCase(),er=(n,o,c)=>{let[h,i]=p.useState(o!=null&&o.valid?[o]:[]);p.useEffect(()=>{o===void 0&&i([])},[o]);let d=p.useMemo(()=>(n||[]).map(t=>typeof t=="string"?$(t):t.title?{...$(t.color),keyword:t.title}:$(t.color)).concat(h).filter(Boolean).slice(-27),[n,h]),e=p.useCallback(t=>{t!=null&&t.valid&&(d.some(r=>H(r[c])===H(t[c]))||i(r=>r.concat(t)))},[c,d]);return{presets:d,addPreset:e}},rr=({name:n,value:o,onChange:c,onFocus:h,onBlur:i,presetColors:d,startOpen:e=!1,argType:t})=>{var E;let r=p.useCallback(ce(c,200),[c]),{value:a,realValue:l,updateValue:u,color:s,colorSpace:f,cycleColorSpace:g}=Je(o,r),{presets:b,addPreset:y}=er(d,s,f),v=Ye[f],w=!!((E=t==null?void 0:t.table)!=null&&E.readonly);return m.createElement(Le,{"aria-readonly":w},m.createElement(Be,{startOpen:e,trigger:w?[null]:void 0,closeOnOutsideClick:!0,onVisibleChange:()=>y(s),tooltip:m.createElement(Xe,null,m.createElement(v,{color:l==="transparent"?"#000000":l,onChange:u,onFocus:h,onBlur:i}),b.length>0&&m.createElement(De,null,b.map((k,P)=>m.createElement(Y,{key:`${k.value}-${P}`,hasChrome:!1,tooltip:m.createElement(Ke,{note:k.keyword||k.value})},m.createElement(Q,{value:k[f],active:s&&H(k[f])===H(s[f]),onClick:()=>u(k.value)})))))},m.createElement(Q,{value:l,style:{margin:4}})),m.createElement(Fe,{id:he(n),value:a,onChange:k=>u(k.target.value),onFocus:k=>k.target.select(),readOnly:w,placeholder:"Choose color..."}),a?m.createElement(Te,{onClick:g}):null)},sr=rr;export{rr as ColorControl,sr as default}; diff --git a/apps/portal/public/storybook/assets/CompleteAccountStep.stories-CCldt2ko.js b/apps/portal/public/storybook/assets/CompleteAccountStep.stories-CCldt2ko.js new file mode 100644 index 00000000..1130ecdf --- /dev/null +++ b/apps/portal/public/storybook/assets/CompleteAccountStep.stories-CCldt2ko.js @@ -0,0 +1 @@ +import{j as t}from"./jsx-runtime-D_zvdyIk.js";import{r as d}from"./index-JhL3uwfD.js";import{B as h}from"./button-C8_cybvS.js";import"./input-BbGJiz0K.js";import"./password-input-D4khGh8v.js";import"./checkbox-DahUyQbt.js";import"./label-C25VH7yk.js";import{E as B}from"./error-message-DeFFz6H_.js";import"./status-pill-wWp9xkwA.js";import"./badge-BdMsasyi.js";import"./spinner-mU4XywER.js";import"./loading-overlay-DMJTiFny.js";import"./error-state-BSicqqE6.js";import"./empty-state-DRUGJ9ip.js";import"./inline-toast-DQJ-O9wc.js";import"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import"./logo-f0fprTjz.js";import"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./animated-container-DyAZ9gmw.js";import"./SetPasswordForm-JAj2IB2C.js";import"./DataTable-COYdcx41.js";import"./FormField-C0UylACv.js";import"./OtpInput-6kd_2E0v.js";import"./OtpExpiryDisplay-BGgB7Tk6.js";import"./SearchFilterBar-Ds19v0-P.js";import"./PaginationBar-D_k7ztRb.js";import"./DetailHeader-C0ZsoM39.js";import"./AlertBanner-Bnlyj1xc.js";import"./index-BKyvj4H5.js";import"./SectionHeader-Bo81Whai.js";import"./ProgressSteps-weVdXcqu.js";import"./SubCard-1OZIPgEM.js";import"./AnimatedCard-DFAiX4zP.js";import"./ServiceCard-BJEHFLba.js";import"./SummaryStats-D6b7Am-p.js";import"./FilterDropdown-CUU04WmN.js";import"./ClearFiltersButton-CPCoyXk2.js";import"./DetailStatsGrid-CDkKTM-B.js";import"./SectionCard-BcUjc-7N.js";import"./MetricCard-BR1xVIXz.js";import"./BackLink-C5IY6wzy.js";import"./status-badge-5pzxe45J.js";import"./error-boundary-DIRO_cDI.js";import"./error-fallbacks-kSPsNxmV.js";import"./AuthLayout-DNr24V9g.js";import{u as T,P as v}from"./PasswordSection-DeRa0d5T.js";import"./PasswordRequirements-Iusuj6EU.js";import"./PasswordMatchIndicator-CoUjyU1r.js";import{T as O}from"./TermsCheckbox-CIu51LBN.js";import{M as F}from"./MarketingCheckbox-x7nAFt-_.js";import{u as x}from"./eligibility-check.store-5rXvIK_a.js";import{A as I}from"./AccountInfoDisplay-DWJQCkvO.js";import{P as M}from"./PersonalInfoFields-bPb0yCUu.js";import{p as _}from"./schema-B7GuHPAW.js";import{A as D}from"./arrow-left-DP07Iaeg.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./createLucideIcon-CctB0W3q.js";import"./ExclamationCircleIcon-jFfW0Ax_.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./ArrowPathIcon-CZjG6RfV.js";import"./PlusIcon-DGufmf06.js";import"./index-CNXKWNLp.js";import"./proxy-ZkTvaR74.js";import"./next-image-69WeRggt.js";import"./Squares2X2Icon-BMQM_Wy1.js";import"./auth.store-CVqT-1lf.js";import"./error-handling-CCxr4Gjn.js";import"./coerce-BirWdn0y.js";import"./react-C6W-rNNW.js";import"./schema-JsDJirqf.js";import"./schema-Dok_SHcO.js";import"./compat-BjFfok0x.js";import"./ChevronRightIcon-CMQWsJeW.js";import"./input-otp-Cin9-T84.js";import"./clock-C92s7kSC.js";import"./FunnelIcon-8nhbwqu0.js";import"./XMarkIcon-Bsb1W5VN.js";import"./XCircleIcon-CiVBnngB.js";import"./InformationCircleIcon-Clz7d-56.js";import"./CheckCircleIcon-Dva35lTP.js";import"./arrow-right-BNMAry-H.js";import"./ArrowLeftIcon-Cw1eswTb.js";import"./check-DmNqM64J.js";import"./x-gzkF7O9v.js";import"./schema-Cvvg7S_W.js";import"./text-CXa-DJQz.js";function G(o,r){const e={};return r&&(e.password=r),o.password!==o.confirmPassword&&(e.confirmPassword="Passwords do not match"),o.phone.trim()?_.safeParse(o.phone.trim()).success||(e.phone="Please enter a valid phone number"):e.phone="Phone number is required",o.dateOfBirth||(e.dateOfBirth="Date of birth is required"),o.gender||(e.gender="Please select a gender"),o.acceptTerms||(e.acceptTerms="You must accept the terms of service"),e}function J({accountData:o,updateAccountData:r,clearLocalError:e,loading:m,accountErrors:a}){return t.jsxs("div",{className:"space-y-3",children:[t.jsx(O,{checked:o.acceptTerms,onChange:i=>{r({acceptTerms:i}),e("acceptTerms")},disabled:m,error:a.acceptTerms}),t.jsx(F,{checked:o.marketingConsent,onChange:i=>r({marketingConsent:i}),disabled:m})]})}function R({loading:o,canSubmit:r,onSubmit:e,onGoBack:m,error:a}){return t.jsxs(t.Fragment,{children:[a&&t.jsx("div",{className:"p-4 rounded-lg bg-danger/10 border border-danger/20",children:t.jsx(B,{showIcon:!0,children:a})}),t.jsxs("div",{className:"space-y-3",children:[t.jsx(h,{type:"button",onClick:e,disabled:o||!r,loading:o,loadingText:"Creating Account...",className:"w-full",children:"Create Account"}),t.jsx(h,{type:"button",variant:"ghost",onClick:m,disabled:o,leftIcon:t.jsx(D,{className:"h-4 w-4"}),className:"w-full",children:"Go Back"})]})]})}function C(){const{formData:o,accountData:r,updateAccountData:e,completeAccount:m,goBack:a,loading:i,error:P,clearError:j}=x(),[p,l]=d.useState({}),c=d.useCallback(s=>{l(E=>{const u={...E};return delete u[s],u})},[]),{isValid:k,error:f}=T(r.password),N=r.password===r.confirmPassword,A=d.useCallback(()=>{const s=G(r,f);return l(s),Object.keys(s).length===0},[r,f]),S=async()=>{A()&&(j(),await m())},y=r.password&&r.confirmPassword&&r.phone&&r.dateOfBirth&&r.gender&&r.acceptTerms&&k&&N&&Object.keys(p).length===0;return t.jsxs("div",{className:"space-y-6",children:[t.jsx(I,{firstName:o.firstName,lastName:o.lastName,email:o.email,address:o.address}),t.jsx(M,{phone:r.phone,dateOfBirth:r.dateOfBirth,gender:r.gender,onPhoneChange:s=>e({phone:s}),onDateOfBirthChange:s=>e({dateOfBirth:s}),onGenderChange:s=>e({gender:s}),errors:p,clearError:c,loading:i}),t.jsx(v,{password:r.password,confirmPassword:r.confirmPassword,onPasswordChange:s=>e({password:s}),onConfirmPasswordChange:s=>e({confirmPassword:s}),errors:p,clearError:c,loading:i}),t.jsx(J,{accountData:r,updateAccountData:e,clearLocalError:c,loading:i,accountErrors:p}),t.jsx(R,{loading:i,canSubmit:!!y,onSubmit:S,onGoBack:a,error:P})]})}C.__docgenInfo={description:"",methods:[],displayName:"CompleteAccountStep"};const Ao={title:"Features/Services/EligibilityCheck/CompleteAccountStep",component:C,parameters:{layout:"centered"},decorators:[o=>(x.setState({formData:{firstName:"Taro",lastName:"Yamada",email:"taro@example.com",address:{postcode:"100-0001",prefectureJa:"東京都",cityJa:"千代田区",townJa:"千代田",streetAddress:"1-1-1",buildingName:"",roomNumber:""}},accountData:{password:"",confirmPassword:"",phone:"",dateOfBirth:"",gender:"",acceptTerms:!1,marketingConsent:!1},loading:!1,error:null}),t.jsx(o,{}))]},n={};var g,w,b;n.parameters={...n.parameters,docs:{...(g=n.parameters)==null?void 0:g.docs,source:{originalSource:"{}",...(b=(w=n.parameters)==null?void 0:w.docs)==null?void 0:b.source}}};const So=["Default"];export{n as Default,So as __namedExportsOrder,Ao as default}; diff --git a/apps/portal/public/storybook/assets/ConfigurationStep-xBkwMSbV.js b/apps/portal/public/storybook/assets/ConfigurationStep-xBkwMSbV.js new file mode 100644 index 00000000..7f411e18 --- /dev/null +++ b/apps/portal/public/storybook/assets/ConfigurationStep-xBkwMSbV.js @@ -0,0 +1 @@ +import{j as r}from"./jsx-runtime-D_zvdyIk.js";import{A as j}from"./AnimatedCard-DFAiX4zP.js";import"./StepIndicator-chJR-dG8.js";import{S as w,d as A}from"./StepHeader-D_31J9G_.js";import{S as R}from"./StepActions-x37eBfO8.js";import{S as L}from"./StepContent-D57mrCa_.js";import"./ValidationStatus-Dsgne9Qr.js";import"./HelpPanel-rRaRP4jS.js";import"./InfoPanel-CAJ6XA4c.js";function k(a,s){return a==="highlighted"?"highlighted":s?"static":"default"}function E({stepNumber:a,title:s,description:n,isActive:o=!0,isCompleted:u=!1,isDisabled:e=!1,validation:t,children:d,helpText:l,infoText:p,onNext:m,onPrevious:f,onSkip:c,nextLabel:g,previousLabel:y,skipLabel:T,showActions:h=!0,variant:q="default",showStepIndicator:v=!0,loading:S=!1,disabled:b=!1,headerContent:x,footerContent:i}){const V=A({isActive:o,isCompleted:u,isDisabled:e}),C=(t==null?void 0:t.errors)&&t.errors.length>0,N=h&&!e;return r.jsxs(j,{variant:k(q,e),className:`p-6 ${e?"opacity-60":""}`,children:[r.jsx(w,{stepNumber:a,title:s,description:n,status:V,validation:t,showStepIndicator:v,headerContent:x}),r.jsx(L,{helpText:l,infoText:p,isDisabled:e,children:d}),N&&r.jsx(R,{onNext:m,onPrevious:f,onSkip:c,nextLabel:g,previousLabel:y,skipLabel:T,loading:S,disabled:b,hasErrors:C}),i&&r.jsx("div",{className:"mt-6 pt-4 border-t border-gray-200",children:i})]})}E.__docgenInfo={description:"",methods:[],displayName:"ConfigurationStep",props:{stepNumber:{required:!0,tsType:{name:"number"},description:""},title:{required:!0,tsType:{name:"string"},description:""},description:{required:!1,tsType:{name:"string"},description:""},isActive:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"true",computed:!1}},isCompleted:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"false",computed:!1}},isDisabled:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"false",computed:!1}},validation:{required:!1,tsType:{name:"StepValidation"},description:""},children:{required:!0,tsType:{name:"ReactNode"},description:""},helpText:{required:!1,tsType:{name:"string"},description:""},infoText:{required:!1,tsType:{name:"string"},description:""},onNext:{required:!1,tsType:{name:"signature",type:"function",raw:"() => void",signature:{arguments:[],return:{name:"void"}}},description:""},onPrevious:{required:!1,tsType:{name:"signature",type:"function",raw:"() => void",signature:{arguments:[],return:{name:"void"}}},description:""},onSkip:{required:!1,tsType:{name:"signature",type:"function",raw:"() => void",signature:{arguments:[],return:{name:"void"}}},description:""},nextLabel:{required:!1,tsType:{name:"string"},description:""},previousLabel:{required:!1,tsType:{name:"string"},description:""},skipLabel:{required:!1,tsType:{name:"string"},description:""},showActions:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"true",computed:!1}},variant:{required:!1,tsType:{name:"union",raw:'"default" | "highlighted" | "compact"',elements:[{name:"literal",value:'"default"'},{name:"literal",value:'"highlighted"'},{name:"literal",value:'"compact"'}]},description:"",defaultValue:{value:'"default"',computed:!1}},showStepIndicator:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"true",computed:!1}},loading:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"false",computed:!1}},disabled:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"false",computed:!1}},headerContent:{required:!1,tsType:{name:"ReactNode"},description:""},footerContent:{required:!1,tsType:{name:"ReactNode"},description:""}}};export{E as C}; diff --git a/apps/portal/public/storybook/assets/ConfigurationStep.stories-BT7t6srM.js b/apps/portal/public/storybook/assets/ConfigurationStep.stories-BT7t6srM.js new file mode 100644 index 00000000..056ae05e --- /dev/null +++ b/apps/portal/public/storybook/assets/ConfigurationStep.stories-BT7t6srM.js @@ -0,0 +1,111 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{C as _}from"./ConfigurationStep-xBkwMSbV.js";import"./AnimatedCard-DFAiX4zP.js";import"./proxy-ZkTvaR74.js";import"./index-JhL3uwfD.js";import"./StepIndicator-chJR-dG8.js";import"./CheckCircleIcon-Dva35lTP.js";import"./StepHeader-D_31J9G_.js";import"./ValidationStatus-Dsgne9Qr.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./StepActions-x37eBfO8.js";import"./button-C8_cybvS.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./spinner-mU4XywER.js";import"./StepContent-D57mrCa_.js";import"./HelpPanel-rRaRP4jS.js";import"./InformationCircleIcon-Clz7d-56.js";import"./InfoPanel-CAJ6XA4c.js";const ue={title:"Features/Services/Base/ConfigurationStep",component:_,parameters:{layout:"centered"},decorators:[Y=>e.jsx("div",{style:{maxWidth:600},children:e.jsx(Y,{})})]},r={args:{stepNumber:1,title:"Select Your Plan",description:"Choose the internet plan that best fits your needs.",isActive:!0,children:e.jsx("div",{className:"p-4 bg-gray-50 rounded border",children:"Step content goes here"}),onNext:()=>{},onPrevious:()=>{}}},t={args:{stepNumber:1,title:"Plan Selected",description:"Fiber Internet 1G plan selected.",isCompleted:!0,children:e.jsx("div",{className:"p-4 bg-green-50 rounded border border-green-200",children:"Plan configured successfully"}),validation:{isValid:!0},onNext:()=>{}}},i={args:{stepNumber:3,title:"Payment Method",description:"Complete previous steps first.",isDisabled:!0,children:e.jsx("div",{children:"This content is hidden when disabled"})}},s={args:{stepNumber:2,title:"Configure Add-ons",description:"Select optional add-on services.",isActive:!0,children:e.jsx("div",{className:"p-4 bg-red-50 rounded border border-red-200",children:"Form with errors"}),validation:{isValid:!1,errors:["Please select at least one add-on","Invalid configuration"]},onNext:()=>{},onPrevious:()=>{}}},n={args:{stepNumber:2,title:"Address Verification",description:"Confirm your installation address.",isActive:!0,children:e.jsx("div",{className:"p-4 bg-amber-50 rounded border border-amber-200",children:"Address form"}),validation:{isValid:!0,warnings:["Address could not be verified automatically"]},onNext:()=>{}}},o={args:{stepNumber:1,title:"Choose Speed Tier",description:"Select your preferred connection speed.",isActive:!0,children:e.jsx("div",{className:"p-4 bg-gray-50 rounded border",children:"Speed selection form"}),helpText:"Higher speeds are recommended for households with multiple devices.",infoText:"All plans include unlimited data and free router rental.",onNext:()=>{}}},d={args:{stepNumber:2,title:"Processing Order",description:"Please wait while we process your configuration.",isActive:!0,children:e.jsx("div",{className:"p-4 bg-gray-50 rounded border",children:"Processing..."}),loading:!0,onNext:()=>{}}},a={args:{stepNumber:2,title:"Optional Add-ons",description:"Add optional services or skip this step.",isActive:!0,children:e.jsx("div",{className:"p-4 bg-gray-50 rounded border",children:"Add-on selection"}),onNext:()=>{},onPrevious:()=>{},onSkip:()=>{},skipLabel:"Skip Add-ons"}},c={args:{stepNumber:1,title:"Featured Step",description:"This step uses the highlighted card variant.",isActive:!0,variant:"highlighted",children:e.jsx("div",{className:"p-4 bg-blue-50 rounded border border-blue-200",children:"Highlighted content"}),onNext:()=>{}}},l={args:{stepNumber:1,title:"Simple Step",description:"Without the step number indicator.",isActive:!0,showStepIndicator:!1,children:e.jsx("div",{className:"p-4 bg-gray-50 rounded border",children:"Content"}),onNext:()=>{}}};var p,u,m;r.parameters={...r.parameters,docs:{...(p=r.parameters)==null?void 0:p.docs,source:{originalSource:`{ + args: { + stepNumber: 1, + title: "Select Your Plan", + description: "Choose the internet plan that best fits your needs.", + isActive: true, + children:
Step content goes here
, + onNext: () => {}, + onPrevious: () => {} + } +}`,...(m=(u=r.parameters)==null?void 0:u.docs)==null?void 0:m.source}}};var g,h,b;t.parameters={...t.parameters,docs:{...(g=t.parameters)==null?void 0:g.docs,source:{originalSource:`{ + args: { + stepNumber: 1, + title: "Plan Selected", + description: "Fiber Internet 1G plan selected.", + isCompleted: true, + children:
Plan configured successfully
, + validation: { + isValid: true + }, + onNext: () => {} + } +}`,...(b=(h=t.parameters)==null?void 0:h.docs)==null?void 0:b.source}}};var v,N,f;i.parameters={...i.parameters,docs:{...(v=i.parameters)==null?void 0:v.docs,source:{originalSource:`{ + args: { + stepNumber: 3, + title: "Payment Method", + description: "Complete previous steps first.", + isDisabled: true, + children:
This content is hidden when disabled
+ } +}`,...(f=(N=i.parameters)==null?void 0:N.docs)==null?void 0:f.source}}};var S,A,x;s.parameters={...s.parameters,docs:{...(S=s.parameters)==null?void 0:S.docs,source:{originalSource:`{ + args: { + stepNumber: 2, + title: "Configure Add-ons", + description: "Select optional add-on services.", + isActive: true, + children:
Form with errors
, + validation: { + isValid: false, + errors: ["Please select at least one add-on", "Invalid configuration"] + }, + onNext: () => {}, + onPrevious: () => {} + } +}`,...(x=(A=s.parameters)==null?void 0:A.docs)==null?void 0:x.source}}};var y,P,C;n.parameters={...n.parameters,docs:{...(y=n.parameters)==null?void 0:y.docs,source:{originalSource:`{ + args: { + stepNumber: 2, + title: "Address Verification", + description: "Confirm your installation address.", + isActive: true, + children:
Address form
, + validation: { + isValid: true, + warnings: ["Address could not be verified automatically"] + }, + onNext: () => {} + } +}`,...(C=(P=n.parameters)==null?void 0:P.docs)==null?void 0:C.source}}};var w,j,W;o.parameters={...o.parameters,docs:{...(w=o.parameters)==null?void 0:w.docs,source:{originalSource:`{ + args: { + stepNumber: 1, + title: "Choose Speed Tier", + description: "Select your preferred connection speed.", + isActive: true, + children:
Speed selection form
, + helpText: "Higher speeds are recommended for households with multiple devices.", + infoText: "All plans include unlimited data and free router rental.", + onNext: () => {} + } +}`,...(W=(j=o.parameters)==null?void 0:j.docs)==null?void 0:W.source}}};var k,I,T;d.parameters={...d.parameters,docs:{...(k=d.parameters)==null?void 0:k.docs,source:{originalSource:`{ + args: { + stepNumber: 2, + title: "Processing Order", + description: "Please wait while we process your configuration.", + isActive: true, + children:
Processing...
, + loading: true, + onNext: () => {} + } +}`,...(T=(I=d.parameters)==null?void 0:I.docs)==null?void 0:T.source}}};var V,H,F;a.parameters={...a.parameters,docs:{...(V=a.parameters)==null?void 0:V.docs,source:{originalSource:`{ + args: { + stepNumber: 2, + title: "Optional Add-ons", + description: "Add optional services or skip this step.", + isActive: true, + children:
Add-on selection
, + onNext: () => {}, + onPrevious: () => {}, + onSkip: () => {}, + skipLabel: "Skip Add-ons" + } +}`,...(F=(H=a.parameters)==null?void 0:H.docs)==null?void 0:F.source}}};var O,D,E;c.parameters={...c.parameters,docs:{...(O=c.parameters)==null?void 0:O.docs,source:{originalSource:`{ + args: { + stepNumber: 1, + title: "Featured Step", + description: "This step uses the highlighted card variant.", + isActive: true, + variant: "highlighted", + children:
Highlighted content
, + onNext: () => {} + } +}`,...(E=(D=c.parameters)==null?void 0:D.docs)==null?void 0:E.source}}};var L,G,M;l.parameters={...l.parameters,docs:{...(L=l.parameters)==null?void 0:L.docs,source:{originalSource:`{ + args: { + stepNumber: 1, + title: "Simple Step", + description: "Without the step number indicator.", + isActive: true, + showStepIndicator: false, + children:
Content
, + onNext: () => {} + } +}`,...(M=(G=l.parameters)==null?void 0:G.docs)==null?void 0:M.source}}};const me=["Active","Completed","Disabled","WithValidationErrors","WithWarnings","WithHelpAndInfo","Loading","WithSkipAction","Highlighted","NoStepIndicator"];export{r as Active,t as Completed,i as Disabled,c as Highlighted,d as Loading,l as NoStepIndicator,o as WithHelpAndInfo,a as WithSkipAction,s as WithValidationErrors,n as WithWarnings,me as __namedExportsOrder,ue as default}; diff --git a/apps/portal/public/storybook/assets/ConfigureLoadingSkeleton.stories-CLL7uosX.js b/apps/portal/public/storybook/assets/ConfigureLoadingSkeleton.stories-CLL7uosX.js new file mode 100644 index 00000000..fc34d9f3 --- /dev/null +++ b/apps/portal/public/storybook/assets/ConfigureLoadingSkeleton.stories-CLL7uosX.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{P as t}from"./PageLayout-CxVUl3Jy.js";import{F as d}from"./ServerIcon-Cf--50di.js";import"./next-link-BmD4fPSy.js";import"./index-JhL3uwfD.js";import"./skeleton-ISCbfaf8.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./loading-card-BIOTKPal.js";import"./button-C8_cybvS.js";import"./index-DXhM58Yq.js";import"./spinner-mU4XywER.js";import"./input-BbGJiz0K.js";import"./password-input-D4khGh8v.js";import"./createLucideIcon-CctB0W3q.js";import"./checkbox-DahUyQbt.js";import"./label-C25VH7yk.js";import"./error-message-DeFFz6H_.js";import"./ExclamationCircleIcon-jFfW0Ax_.js";import"./status-pill-wWp9xkwA.js";import"./badge-BdMsasyi.js";import"./loading-overlay-DMJTiFny.js";import"./error-state-BSicqqE6.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./ArrowPathIcon-CZjG6RfV.js";import"./empty-state-DRUGJ9ip.js";import"./PlusIcon-DGufmf06.js";import"./inline-toast-DQJ-O9wc.js";import"./index-CNXKWNLp.js";import"./proxy-ZkTvaR74.js";import"./logo-f0fprTjz.js";import"./next-image-69WeRggt.js";import"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./Squares2X2Icon-BMQM_Wy1.js";import"./animated-container-DyAZ9gmw.js";import"./ArrowLeftIcon-Cw1eswTb.js";function m(){return e.jsx(t,{icon:e.jsx(d,{}),title:"Configure Internet Service",children:e.jsxs("div",{className:"max-w-4xl mx-auto",children:[e.jsxs("div",{className:"text-center mb-12",children:[e.jsx("div",{className:"h-9 w-44 bg-gray-200 rounded mx-auto mb-6"}),e.jsx("div",{className:"h-10 w-80 bg-gray-200 rounded mx-auto mb-4"}),e.jsxs("div",{className:"inline-flex items-center gap-3 bg-gray-50 px-6 py-3 rounded-2xl border",children:[e.jsx("div",{className:"h-6 w-20 bg-gray-200 rounded-full"}),e.jsx("span",{className:"h-4 w-3 bg-gray-200 rounded"}),e.jsx("div",{className:"h-4 w-28 bg-gray-200 rounded"}),e.jsx("span",{className:"h-4 w-3 bg-gray-200 rounded"}),e.jsx("div",{className:"h-4 w-24 bg-gray-200 rounded"})]})]}),e.jsx("div",{className:"flex items-center justify-between max-w-2xl mx-auto mb-8",children:Array.from({length:4}).map((l,s)=>e.jsxs("div",{className:"flex-1 flex items-center",children:[e.jsx("div",{className:"h-3 w-3 rounded-full bg-gray-300"}),s<3&&e.jsx("div",{className:"h-1 flex-1 bg-gray-200 mx-2 rounded"})]},s))}),e.jsx("div",{className:"space-y-8",children:e.jsxs("div",{className:"bg-white border border-gray-200 rounded-xl p-8",children:[e.jsxs("div",{className:"mb-6",children:[e.jsxs("div",{className:"flex items-center gap-3 mb-2",children:[e.jsx("div",{className:"w-8 h-8 bg-blue-200 rounded-full"}),e.jsx("div",{className:"h-6 w-48 bg-gray-200 rounded"})]}),e.jsx("div",{className:"h-4 w-64 bg-gray-200 rounded ml-11"})]}),e.jsxs("div",{className:"space-y-4",children:[e.jsx("div",{className:"h-4 w-full bg-gray-200 rounded"}),e.jsx("div",{className:"h-4 w-3/4 bg-gray-200 rounded"}),e.jsx("div",{className:"h-4 w-1/2 bg-gray-200 rounded"})]})]})})]})})}m.__docgenInfo={description:"",methods:[],displayName:"ConfigureLoadingSkeleton"};const X={title:"Features/Services/Internet/Configure/ConfigureLoadingSkeleton",component:m,parameters:{layout:"fullscreen"}},r={};var a,o,i;r.parameters={...r.parameters,docs:{...(a=r.parameters)==null?void 0:a.docs,source:{originalSource:"{}",...(i=(o=r.parameters)==null?void 0:o.docs)==null?void 0:i.source}}};const Y=["Default"];export{r as Default,Y as __namedExportsOrder,X as default}; diff --git a/apps/portal/public/storybook/assets/ContactSection.stories-D7pujQk4.js b/apps/portal/public/storybook/assets/ContactSection.stories-D7pujQk4.js new file mode 100644 index 00000000..e2daabe5 --- /dev/null +++ b/apps/portal/public/storybook/assets/ContactSection.stories-D7pujQk4.js @@ -0,0 +1,21 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{r as g}from"./index-JhL3uwfD.js";import{B as b}from"./button-C8_cybvS.js";import{I as h}from"./input-BbGJiz0K.js";import"./password-input-D4khGh8v.js";import"./checkbox-DahUyQbt.js";import"./label-C25VH7yk.js";import"./error-message-DeFFz6H_.js";import"./status-pill-wWp9xkwA.js";import"./badge-BdMsasyi.js";import"./spinner-mU4XywER.js";import"./loading-overlay-DMJTiFny.js";import"./error-state-BSicqqE6.js";import"./empty-state-DRUGJ9ip.js";import"./inline-toast-DQJ-O9wc.js";import"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import"./logo-f0fprTjz.js";import"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./animated-container-DyAZ9gmw.js";import{F as n}from"./FormField-C0UylACv.js";import{A as _}from"./AlertBanner-Bnlyj1xc.js";import{u as I}from"./useZodForm-ByUWfWhF.js";import{a as R}from"./index-BKyvj4H5.js";import{c as C}from"./cn-CDN07tui.js";import{o as a,s as t,_ as i,n as l,c as w,b as j}from"./coerce-BirWdn0y.js";import{C as F}from"./clock-C92s7kSC.js";import{C as P}from"./circle-check-big-Bab09Iah.js";import{u as L}from"./use-in-view-Du9cy_vv.js";import{m as O}from"./proxy-ZkTvaR74.js";import{c as u}from"./createLucideIcon-CctB0W3q.js";import{M as B}from"./map-pin-Bm-ztWPO.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./ExclamationCircleIcon-jFfW0Ax_.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./ArrowPathIcon-CZjG6RfV.js";import"./PlusIcon-DGufmf06.js";import"./index-CNXKWNLp.js";import"./next-image-69WeRggt.js";import"./Squares2X2Icon-BMQM_Wy1.js";import"./XCircleIcon-CiVBnngB.js";import"./InformationCircleIcon-Clz7d-56.js";import"./CheckCircleIcon-Dva35lTP.js";import"./error-handling-CCxr4Gjn.js";import"./schema-B7GuHPAW.js";/** + * @license lucide-react v0.563.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const q=[["path",{d:"m22 7-8.991 5.727a2 2 0 0 1-2.009 0L2 7",key:"132q7q"}],["rect",{x:"2",y:"4",width:"20",height:"16",rx:"2",key:"izxlao"}]],U=u("mail",q);/** + * @license lucide-react v0.563.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const z=[["path",{d:"M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z",key:"18887p"}]],G=u("message-square",z);/** + * @license lucide-react v0.563.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const V=[["path",{d:"M13 2a9 9 0 0 1 9 9",key:"1itnx2"}],["path",{d:"M13 6a5 5 0 0 1 5 5",key:"11nki7"}],["path",{d:"M13.832 16.568a1 1 0 0 0 1.213-.303l.355-.465A2 2 0 0 1 17 15h3a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2A18 18 0 0 1 2 4a2 2 0 0 1 2-2h3a2 2 0 0 1 2 2v3a2 2 0 0 1-.8 1.6l-.468.351a1 1 0 0 0-.292 1.233 14 14 0 0 0 6.392 6.384",key:"9njp5v"}]],H=u("phone-call",V);/** + * @license lucide-react v0.563.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const W=[["rect",{width:"16",height:"16",x:"4",y:"3",rx:"2",key:"1wxw4b"}],["path",{d:"M4 11h16",key:"mpoxn0"}],["path",{d:"M12 3v8",key:"1h2ygw"}],["path",{d:"m8 19-2 3",key:"13i0xs"}],["path",{d:"m18 22-2-3",key:"1p0ohu"}],["path",{d:"M8 15h.01",key:"a7atzg"}],["path",{d:"M16 15h.01",key:"rnfrdf"}]],D=u("tram-front",W),m={NEW:"New",IN_PROGRESS:"In Progress",AWAITING_CUSTOMER:"Awaiting Customer",CLOSED:"Closed"},x={LOW:"Low",MEDIUM:"Medium",HIGH:"High"},c={TECHNICAL:"Technical",BILLING:"Billing",GENERAL:"General",FEATURE_REQUEST:"Feature Request"},Y=[m.NEW,m.IN_PROGRESS,m.AWAITING_CUSTOMER,m.CLOSED],$=[x.LOW,x.MEDIUM,x.HIGH],J=[c.TECHNICAL,c.BILLING,c.GENERAL,c.FEATURE_REQUEST],A=i(Y),f=i($),y=i(J),Q=a({id:t().min(15).max(18),caseNumber:t(),subject:t().min(1),status:A,priority:f,category:y.nullable(),createdAt:t(),updatedAt:t(),closedAt:t().nullable(),description:t()}),Z=a({total:l().int().nonnegative(),open:l().int().nonnegative(),highPriority:l().int().nonnegative(),resolved:l().int().nonnegative()});a({cases:w(Q),summary:Z});a({status:A.optional(),priority:f.optional(),category:y.optional(),search:t().trim().min(1).optional()}).default({});a({subject:t().min(1).max(255),description:t().min(1).max(32e3),category:y.optional(),priority:f.optional()});a({id:t(),caseNumber:t()});const K=a({name:t().min(1,"Name is required"),email:t().email("Valid email required"),phone:t().optional(),message:t().min(10,"Message must be at least 10 characters")}),X=i(["email","comment"]),ee=i(["inbound","outbound"]),se=a({id:t(),type:X,body:t(),author:a({name:t(),email:t().nullable(),isCustomer:j()}),createdAt:t(),direction:ee.nullable(),hasAttachment:j().optional()});a({messages:w(se),threadId:t().nullable()});a({body:t().min(1,"Message is required").max(32e3)});a({id:t(),createdAt:t()});function te({className:o}){return e.jsxs("div",{className:C("text-center py-12",o),children:[e.jsx("div",{className:"w-16 h-16 bg-success/10 rounded-full flex items-center justify-center mx-auto mb-4",children:e.jsx(P,{className:"h-8 w-8 text-success"})}),e.jsx("h3",{className:"text-2xl font-bold text-foreground mb-2",children:"Message Sent!"}),e.jsx("p",{className:"text-muted-foreground mb-6",children:"Thank you for contacting us. We'll get back to you within 24 hours."}),e.jsxs("div",{className:"flex gap-3 justify-center",children:[e.jsx(b,{as:"a",href:"/",variant:"outline",size:"sm",children:"Back to Home"}),e.jsx(b,{as:"a",href:"/services",size:"sm",children:"Browse Services"})]})]})}function E({className:o}){const[p,M]=g.useState(!1),k=g.useCallback(async r=>{await R.POST("/api/support/contact",{body:r}),M(!0)},[]),s=I({schema:K,initialValues:{name:"",email:"",phone:"",message:""},onSubmit:k});return p?e.jsx(te,{className:o}):e.jsxs("div",{className:C("bg-card rounded-2xl border border-border/60 p-5 sm:p-6",o),children:[s.submitError&&e.jsx(_,{variant:"error",title:"Error",className:"mb-6",children:s.submitError}),e.jsxs("form",{onSubmit:r=>void s.handleSubmit(r),className:"space-y-4",children:[e.jsx(n,{label:"Name",error:s.touched.name?s.errors.name:void 0,required:!0,children:e.jsx(h,{value:s.values.name,onChange:r=>s.setValue("name",r.target.value),onBlur:()=>s.setTouchedField("name"),placeholder:"Your name",className:"bg-muted/20"})}),e.jsx(n,{label:"Email",error:s.touched.email?s.errors.email:void 0,required:!0,children:e.jsx(h,{type:"email",value:s.values.email,onChange:r=>s.setValue("email",r.target.value),onBlur:()=>s.setTouchedField("email"),placeholder:"your@email.com",className:"bg-muted/20"})}),e.jsx(n,{label:"Phone",error:s.touched.phone?s.errors.phone:void 0,children:e.jsx(h,{value:s.values.phone??"",onChange:r=>s.setValue("phone",r.target.value),onBlur:()=>s.setTouchedField("phone"),placeholder:"+81 90-1234-5678",className:"bg-muted/20"})}),e.jsx(n,{label:"Message",error:s.touched.message?s.errors.message:void 0,required:!0,children:e.jsx("textarea",{className:"flex min-h-[100px] w-full rounded-lg border border-input bg-muted/20 px-3.5 py-2.5 text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary focus-visible:border-transparent disabled:cursor-not-allowed disabled:opacity-50 transition-all resize-y text-sm",value:s.values.message,onChange:r=>s.setValue("message",r.target.value),onBlur:()=>s.setTouchedField("message"),placeholder:"Tell us more about your inquiry...",rows:4})}),e.jsx(b,{type:"submit",className:"w-full",size:"lg",disabled:s.isSubmitting,isLoading:s.isSubmitting,loadingText:"Sending...",children:"Send Message"})]}),e.jsxs("div",{className:"flex items-center gap-2 text-xs text-muted-foreground mt-4 pt-3 border-t border-border/40",children:[e.jsx(F,{className:"h-3.5 w-3.5 shrink-0"}),e.jsx("span",{children:"We typically respond within 24 hours."})]})]})}E.__docgenInfo={description:"",methods:[],displayName:"ContactForm",props:{className:{required:!1,tsType:{name:"string"},description:""}}};function ae(){return e.jsxs("div",{className:"space-y-5",children:[e.jsxs("div",{className:"flex items-center gap-2 text-primary font-bold text-lg",children:[e.jsx(U,{className:"h-5 w-5"}),e.jsx("span",{children:"By Online Form (Anytime)"})]}),e.jsx(E,{className:"border-0 p-0 rounded-none bg-transparent"}),e.jsxs("div",{className:"grid grid-cols-1 sm:grid-cols-2 gap-3 pt-1",children:[e.jsxs("div",{className:"rounded-xl bg-muted/30 p-4 space-y-1.5",children:[e.jsxs("div",{className:"inline-flex items-center gap-2 text-primary font-semibold text-sm",children:[e.jsx(G,{className:"h-4 w-4"}),e.jsx("span",{children:"By Chat (Anytime)"})]}),e.jsx("p",{className:"text-xs text-muted-foreground leading-relaxed",children:"Click the “Chat Button” at the bottom right to reach our team."})]}),e.jsxs("div",{className:"rounded-xl bg-muted/30 p-4 space-y-1.5",children:[e.jsxs("div",{className:"inline-flex items-center gap-2 text-primary font-semibold text-sm",children:[e.jsx(H,{className:"h-4 w-4"}),e.jsx("span",{children:"By Phone (9:30-18:00 JST)"})]}),e.jsxs("div",{className:"text-xs text-muted-foreground",children:[e.jsxs("p",{className:"font-medium text-foreground",children:["Toll Free:"," ",e.jsx("a",{href:"tel:0120-660-470",className:"text-sm font-bold text-primary hover:underline",children:"0120-660-470"})]}),e.jsxs("p",{className:"font-medium text-foreground mt-0.5",children:["Overseas:"," ",e.jsx("a",{href:"tel:+81-3-3560-1006",className:"text-sm font-bold text-primary hover:underline",children:"+81-3-3560-1006"})]})]})]})]})]})}function re(){return e.jsxs("div",{className:"space-y-5",children:[e.jsx("div",{className:"w-full rounded-2xl overflow-hidden shadow-md border border-border/60 bg-card aspect-[4/3]",children:e.jsx("iframe",{title:"Assist Solutions Corp Map",src:"https://www.google.com/maps?q=Assist+Solutions+Corp,+3-8-2+Higashi+Azabu,+Minato-ku,+Tokyo&output=embed",className:"w-full h-full",loading:"lazy",allowFullScreen:!0,referrerPolicy:"no-referrer-when-downgrade"})}),e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4",children:[e.jsxs("div",{className:"rounded-2xl bg-card shadow-sm border border-border/60 p-5 space-y-2",children:[e.jsxs("div",{className:"inline-flex items-center gap-2 text-primary font-semibold",children:[e.jsx(D,{className:"h-5 w-5"}),e.jsx("span",{children:"Access"})]}),e.jsxs("p",{className:"text-sm text-muted-foreground",children:["Subway Oedo Line / Nanboku Line",e.jsx("br",{}),"Short walk from Exit 6, Azabu-Juban Station"]})]}),e.jsxs("div",{className:"rounded-2xl bg-card shadow-sm border border-border/60 p-5 space-y-2",children:[e.jsxs("div",{className:"inline-flex items-center gap-2 text-primary font-semibold",children:[e.jsx(B,{className:"h-5 w-5"}),e.jsx("span",{children:"Address"})]}),e.jsxs("p",{className:"text-sm text-muted-foreground",children:["3F Azabu Maruka Bldg.,",e.jsx("br",{}),"3-8-2 Higashi Azabu, Minato-ku,",e.jsx("br",{}),"Tokyo 106-0044"]})]})]})]})}function T(){const o=g.useRef(null),p=L(o,{once:!0,amount:.1});return e.jsx(O.section,{id:"contact",ref:o,initial:{opacity:0,y:32},animate:p?{opacity:1,y:0}:{opacity:0,y:32},transition:{duration:.7,ease:"easeOut"},className:"bg-surface-sunken/30 py-14 sm:py-16",children:e.jsxs("div",{className:"max-w-6xl mx-auto px-6 sm:px-10 lg:px-14 space-y-6",children:[e.jsx("h2",{className:"text-2xl sm:text-3xl font-extrabold text-foreground font-heading",children:"Tell Us What You Need"}),e.jsx("div",{className:"rounded-2xl bg-card border border-border/60 shadow-sm p-5 sm:p-7",children:e.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-[1.1fr_0.9fr] gap-8 lg:gap-10",children:[e.jsx(ae,{}),e.jsx(re,{})]})})]})})}T.__docgenInfo={description:"",methods:[],displayName:"ContactSection"};const Xe={title:"Features/LandingPage/ContactSection",component:T,parameters:{layout:"fullscreen"}},d={};var N,v,S;d.parameters={...d.parameters,docs:{...(N=d.parameters)==null?void 0:N.docs,source:{originalSource:"{}",...(S=(v=d.parameters)==null?void 0:v.docs)==null?void 0:S.source}}};const es=["Default"];export{d as Default,es as __namedExportsOrder,Xe as default}; diff --git a/apps/portal/public/storybook/assets/CreditCardIcon-BBdrpHQs.js b/apps/portal/public/storybook/assets/CreditCardIcon-BBdrpHQs.js new file mode 100644 index 00000000..27ca6adf --- /dev/null +++ b/apps/portal/public/storybook/assets/CreditCardIcon-BBdrpHQs.js @@ -0,0 +1 @@ +import{r as e}from"./index-JhL3uwfD.js";function n({title:r,titleId:t,...o},a){return e.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:a,"aria-labelledby":t},o),r?e.createElement("title",{id:t},r):null,e.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M2.25 8.25h19.5M2.25 9h19.5m-16.5 5.25h6m-6 2.25h3m-3.75 3h15a2.25 2.25 0 0 0 2.25-2.25V6.75A2.25 2.25 0 0 0 19.5 4.5h-15a2.25 2.25 0 0 0-2.25 2.25v10.5A2.25 2.25 0 0 0 4.5 19.5Z"}))}const s=e.forwardRef(n);export{s as F}; diff --git a/apps/portal/public/storybook/assets/CurrencyYenIcon-Bf5bmWZc.js b/apps/portal/public/storybook/assets/CurrencyYenIcon-Bf5bmWZc.js new file mode 100644 index 00000000..1f7b8ad2 --- /dev/null +++ b/apps/portal/public/storybook/assets/CurrencyYenIcon-Bf5bmWZc.js @@ -0,0 +1 @@ +import{r as e}from"./index-JhL3uwfD.js";function a({title:r,titleId:t,...n},o){return e.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:o,"aria-labelledby":t},n),r?e.createElement("title",{id:t},r):null,e.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"m9 7.5 3 4.5m0 0 3-4.5M12 12v5.25M15 12H9m6 3H9m12-3a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z"}))}const i=e.forwardRef(a);export{i as F}; diff --git a/apps/portal/public/storybook/assets/DashboardActivityItem-bwWapT3F.js b/apps/portal/public/storybook/assets/DashboardActivityItem-bwWapT3F.js new file mode 100644 index 00000000..957c7e9a --- /dev/null +++ b/apps/portal/public/storybook/assets/DashboardActivityItem-bwWapT3F.js @@ -0,0 +1 @@ +import{j as o}from"./jsx-runtime-D_zvdyIk.js";import{i as _}from"./schema-DP3xEsUJ.js";import{i as S}from"./schema-B8i337wU.js";import{r as w}from"./schema-Dok_SHcO.js";import{o as i,s as e,n,_ as c,r as f,a as l,b as m,h as v,c as d,l as s}from"./coerce-BirWdn0y.js";import{f as N}from"./currency-CYvr7ZUf.js";import{F as u}from"./CheckCircleIcon-Dva35lTP.js";import{F as I}from"./ChatBubbleLeftRightIcon-DfYi9O0H.js";import{F as j}from"./ServerIcon-Cf--50di.js";import{F as C}from"./DocumentTextIcon-Dk_xQMYi.js";import{F as A}from"./ExclamationTriangleIcon-Di4DJZFg.js";const b=c(["invoice_created","invoice_paid","service_activated","case_created","case_closed"]),F=i({id:e(),type:b,title:e(),description:e().optional(),date:e(),relatedId:n().optional(),metadata:f(e(),l([e(),n(),m(),v()])).optional()}),T=i({amount:n(),currency:e().optional(),dueDate:e().optional(),invoiceNumber:e().optional(),status:e().optional()}).partial().refine(t=>typeof t.amount=="number",{message:"amount is required",path:["amount"]}),D=i({productName:e().optional(),registrationDate:e().optional(),status:e().optional()}).partial(),$=i({activeSubscriptions:n().int().nonnegative(),unpaidInvoices:n().int().nonnegative(),openCases:n().int().nonnegative(),recentOrders:n().int().nonnegative().optional(),totalSpent:n().nonnegative().optional(),currency:e()}),O=i({id:n().int().positive(),dueDate:e(),amount:n(),currency:e()}),h=i({stats:$,nextInvoice:O.nullable(),recentActivity:d(F)});i({code:e(),message:e(),details:f(e(),l([e(),n(),m(),v()])).optional()});const k=c(["all","billing","orders","support"]);i({key:k,label:e(),types:d(b).optional()});h.extend({invoices:d(_).optional()});const R=c(["invoice","payment_method","order","internet_eligibility","id_verification","onboarding"]),q=c(["critical","warning","info","neutral"]),M=i({id:e(),priority:l([s(1),s(2),s(3),s(4)]),type:R,title:e(),description:e(),actionLabel:e(),detailHref:e().optional(),requiresSsoAction:m().optional(),tone:q,metadata:i({invoiceId:n().int().positive().optional(),orderId:e().optional(),amount:n().optional(),currency:e().optional(),dueDate:e().datetime().optional()}).optional()}),E=i({totalCount:n().int().nonnegative().nullable()});i({summary:h,paymentMethods:E,internetEligibility:S,residenceCardVerification:w,tasks:d(M)});const L=N;function z(t){const a=T.safeParse(t.metadata??{});if(!a.success||typeof a.data.amount!="number")return null;const r=L(a.data.amount,a.data.currency);return r?t.type==="invoice_paid"?`${r} payment completed`:`${r} invoice generated`:null}function P(t){const a=D.safeParse(t.metadata??{});return!a.success||!a.data.productName?null:`${a.data.productName} is now active`}function V(t){const a=t.description??"";switch(t.type){case"invoice_created":case"invoice_paid":return z(t)??a;case"service_activated":return P(t)??a;default:return a}}const B={invoice_created:C,invoice_paid:u,service_activated:j,case_created:I,case_closed:u},H={invoice_created:"text-blue-500 bg-blue-50",invoice_paid:"text-green-500 bg-green-50",service_activated:"text-purple-500 bg-purple-50",case_created:"text-amber-500 bg-amber-50",case_closed:"text-green-500 bg-green-50"},K=A;function U({activity:t,onClick:a,showConnector:r=!0}){const y=B[t.type]??K,g=H[t.type]??"text-muted-foreground bg-muted",x=V(t),p=o.jsxs("div",{className:"flex items-start gap-3 relative",children:[r&&o.jsx("div",{className:"absolute left-[15px] top-8 bottom-0 w-px bg-border -z-10"}),o.jsx("div",{className:`flex-shrink-0 w-8 h-8 rounded-full flex items-center justify-center ${g}`,children:o.jsx(y,{className:"h-4 w-4"})}),o.jsxs("div",{className:"flex-1 min-w-0 pb-4",children:[o.jsx("p",{className:`text-sm font-medium leading-tight ${a?"text-foreground group-hover:text-primary":"text-foreground"}`,children:t.title}),o.jsx("p",{className:"text-sm text-muted-foreground mt-0.5 leading-snug",children:x})]})]});return a?o.jsx("button",{type:"button",className:"group w-full text-left rounded-lg hover:bg-muted/50 transition-colors cursor-pointer -mx-2 px-2",onClick:a,children:p}):o.jsx("div",{className:"w-full text-left",children:p})}U.__docgenInfo={description:"",methods:[],displayName:"DashboardActivityItem",props:{activity:{required:!0,tsType:{name:"z.infer",elements:[{name:"activitySchema"}],raw:"z.infer"},description:""},onClick:{required:!1,tsType:{name:"union",raw:"(() => void) | undefined",elements:[{name:"unknown"},{name:"undefined"}]},description:""},showConnector:{required:!1,tsType:{name:"union",raw:"boolean | undefined",elements:[{name:"boolean"},{name:"undefined"}]},description:"",defaultValue:{value:"true",computed:!1}}}};export{U as D}; diff --git a/apps/portal/public/storybook/assets/DashboardActivityItem.stories-n2rSPi9U.js b/apps/portal/public/storybook/assets/DashboardActivityItem.stories-n2rSPi9U.js new file mode 100644 index 00000000..347ab529 --- /dev/null +++ b/apps/portal/public/storybook/assets/DashboardActivityItem.stories-n2rSPi9U.js @@ -0,0 +1,79 @@ +import{j as c}from"./jsx-runtime-D_zvdyIk.js";import{D as M}from"./DashboardActivityItem-bwWapT3F.js";import{fn as j}from"./index-B9TJ7cVi.js";import"./schema-DP3xEsUJ.js";import"./constants-Cd_qStHG.js";import"./coerce-BirWdn0y.js";import"./schema-B8i337wU.js";import"./schema-Dok_SHcO.js";import"./schema-B7GuHPAW.js";import"./currency-CYvr7ZUf.js";import"./CheckCircleIcon-Dva35lTP.js";import"./index-JhL3uwfD.js";import"./ChatBubbleLeftRightIcon-DfYi9O0H.js";import"./ServerIcon-Cf--50di.js";import"./DocumentTextIcon-Dk_xQMYi.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";const T={title:"Features/Dashboard/DashboardActivityItem",component:M,parameters:{layout:"centered"},decorators:[k=>c.jsx("div",{style:{width:480},children:c.jsx(k,{})})]},e={args:{activity:{id:"act-1",type:"invoice_created",title:"Invoice #1042 created",description:"Monthly internet service - March 2026",date:new Date().toISOString()},showConnector:!0}},t={args:{activity:{id:"act-2",type:"invoice_paid",title:"Invoice #1041 paid",description:"Payment of 5,980 JPY received",date:new Date().toISOString()},showConnector:!0}},n={args:{activity:{id:"act-3",type:"service_activated",title:"Fiber 100Mbps activated",description:"Internet service is now active",date:new Date().toISOString()},showConnector:!1}},i={args:{activity:{id:"act-4",type:"case_created",title:"Support case opened",description:"Connection issues reported",date:new Date().toISOString()},showConnector:!0}},r={args:{activity:{id:"act-5",type:"case_closed",title:"Support case resolved",description:"Connection issue has been fixed",date:new Date().toISOString()},showConnector:!1}},a={args:{activity:{id:"act-6",type:"invoice_created",title:"Invoice #1042 created",description:"Click to view invoice details",date:new Date().toISOString()},onClick:j(),showConnector:!1}},o={args:{activity:{id:"act-7",type:"invoice_paid",title:"Invoice #1040 paid",description:"Payment received",date:new Date().toISOString()},showConnector:!1}};var s,d,p;e.parameters={...e.parameters,docs:{...(s=e.parameters)==null?void 0:s.docs,source:{originalSource:`{ + args: { + activity: { + id: "act-1", + type: "invoice_created", + title: "Invoice #1042 created", + description: "Monthly internet service - March 2026", + date: new Date().toISOString() + }, + showConnector: true + } +}`,...(p=(d=e.parameters)==null?void 0:d.docs)==null?void 0:p.source}}};var v,m,l;t.parameters={...t.parameters,docs:{...(v=t.parameters)==null?void 0:v.docs,source:{originalSource:`{ + args: { + activity: { + id: "act-2", + type: "invoice_paid", + title: "Invoice #1041 paid", + description: "Payment of 5,980 JPY received", + date: new Date().toISOString() + }, + showConnector: true + } +}`,...(l=(m=t.parameters)==null?void 0:m.docs)==null?void 0:l.source}}};var u,S,y;n.parameters={...n.parameters,docs:{...(u=n.parameters)==null?void 0:u.docs,source:{originalSource:`{ + args: { + activity: { + id: "act-3", + type: "service_activated", + title: "Fiber 100Mbps activated", + description: "Internet service is now active", + date: new Date().toISOString() + }, + showConnector: false + } +}`,...(y=(S=n.parameters)==null?void 0:S.docs)==null?void 0:y.source}}};var C,g,w;i.parameters={...i.parameters,docs:{...(C=i.parameters)==null?void 0:C.docs,source:{originalSource:`{ + args: { + activity: { + id: "act-4", + type: "case_created", + title: "Support case opened", + description: "Connection issues reported", + date: new Date().toISOString() + }, + showConnector: true + } +}`,...(w=(g=i.parameters)==null?void 0:g.docs)==null?void 0:w.source}}};var I,h,f;r.parameters={...r.parameters,docs:{...(I=r.parameters)==null?void 0:I.docs,source:{originalSource:`{ + args: { + activity: { + id: "act-5", + type: "case_closed", + title: "Support case resolved", + description: "Connection issue has been fixed", + date: new Date().toISOString() + }, + showConnector: false + } +}`,...(f=(h=r.parameters)==null?void 0:h.docs)==null?void 0:f.source}}};var D,_,O;a.parameters={...a.parameters,docs:{...(D=a.parameters)==null?void 0:D.docs,source:{originalSource:`{ + args: { + activity: { + id: "act-6", + type: "invoice_created", + title: "Invoice #1042 created", + description: "Click to view invoice details", + date: new Date().toISOString() + }, + onClick: fn(), + showConnector: false + } +}`,...(O=(_=a.parameters)==null?void 0:_.docs)==null?void 0:O.source}}};var b,x,P;o.parameters={...o.parameters,docs:{...(b=o.parameters)==null?void 0:b.docs,source:{originalSource:`{ + args: { + activity: { + id: "act-7", + type: "invoice_paid", + title: "Invoice #1040 paid", + description: "Payment received", + date: new Date().toISOString() + }, + showConnector: false + } +}`,...(P=(x=o.parameters)==null?void 0:x.docs)==null?void 0:P.source}}};const U=["InvoiceCreated","InvoicePaid","ServiceActivated","CaseCreated","CaseClosed","Clickable","WithoutConnector"];export{r as CaseClosed,i as CaseCreated,a as Clickable,e as InvoiceCreated,t as InvoicePaid,n as ServiceActivated,o as WithoutConnector,U as __namedExportsOrder,T as default}; diff --git a/apps/portal/public/storybook/assets/DataTable-COYdcx41.js b/apps/portal/public/storybook/assets/DataTable-COYdcx41.js new file mode 100644 index 00000000..328ad89f --- /dev/null +++ b/apps/portal/public/storybook/assets/DataTable-COYdcx41.js @@ -0,0 +1,11 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{E as c}from"./empty-state-DRUGJ9ip.js";import{F as u}from"./ChevronRightIcon-CMQWsJeW.js";function p({data:i,columns:t,onRowClick:a}){const n=t.find(r=>r.primary),d=t.filter(r=>!r.hideOnMobile&&!r.primary);return e.jsx("div",{className:"md:hidden space-y-3",children:i.map((r,l)=>{var m;return e.jsxs("div",{className:` + bg-card border border-border rounded-xl p-4 + shadow-[var(--cp-shadow-1)] + transition-all duration-[var(--cp-duration-fast)] + active:scale-[0.98] active:shadow-none + ${a?"cursor-pointer active:bg-muted/50":""} + `,onClick:()=>a==null?void 0:a(r),role:a?"button":void 0,tabIndex:a?0:void 0,onKeyDown:s=>{a&&(s.key==="Enter"||s.key===" ")&&(s.preventDefault(),a(r))},style:{animationDelay:`${l*50}ms`},children:[e.jsxs("div",{className:"flex items-center justify-between gap-3 mb-3",children:[e.jsx("div",{className:"min-w-0 flex-1",children:e.jsx("div",{className:"font-semibold text-foreground",children:(m=n??t[0])==null?void 0:m.render(r)})}),a&&e.jsx(u,{className:"h-5 w-5 text-muted-foreground/50 flex-shrink-0"})]}),e.jsx("div",{className:"space-y-2",children:d.map((s,o)=>!n&&o===0&&s===t[0]?null:e.jsxs("div",{className:"flex items-center justify-between gap-4 text-sm",children:[e.jsx("span",{className:"text-muted-foreground font-medium flex-shrink-0",children:s.header}),e.jsx("span",{className:"text-foreground text-right min-w-0 truncate",children:s.render(r)})]},s.key))})]},r.id)})})}function f({data:i,columns:t,onRowClick:a,className:n="",forceTableView:d=!1}){return e.jsx("div",{className:`${d?"":"hidden md:block"} overflow-x-auto`,children:e.jsxs("table",{className:`min-w-full divide-y divide-border ${n}`,children:[e.jsx("thead",{className:"bg-muted/50",children:e.jsx("tr",{children:t.map(r=>e.jsx("th",{className:`px-6 py-3 text-left text-xs font-medium text-muted-foreground uppercase tracking-wider ${r.className||""}`,children:r.header},r.key))})}),e.jsx("tbody",{className:"bg-card divide-y divide-border",children:i.map(r=>e.jsx("tr",{className:`hover:bg-muted/30 transition-colors duration-[var(--cp-transition-fast)] ${a?"cursor-pointer":""}`,onClick:()=>a==null?void 0:a(r),children:t.map(l=>e.jsx("td",{className:`px-6 py-4 whitespace-nowrap ${l.className||""}`,children:l.render(r)},l.key))},r.id))})]})})}function x({data:i,columns:t,emptyState:a,onRowClick:n,className:d="",forceTableView:r=!1}){return i.length===0&&a?e.jsx(c,{icon:a.icon,title:a.title,description:a.description,variant:"compact"}):e.jsxs(e.Fragment,{children:[!r&&e.jsx(p,{data:i,columns:t,onRowClick:n}),e.jsx(f,{data:i,columns:t,onRowClick:n,className:d,forceTableView:r})]})}x.__docgenInfo={description:"",methods:[],displayName:"DataTable",props:{data:{required:!0,tsType:{name:"Array",elements:[{name:"T"}],raw:"T[]"},description:""},columns:{required:!0,tsType:{name:"Array",elements:[{name:"Column",elements:[{name:"T"}],raw:"Column"}],raw:"Column[]"},description:""},emptyState:{required:!1,tsType:{name:"signature",type:"object",raw:`{ + icon: ReactNode; + title: string; + description: string; +}`,signature:{properties:[{key:"icon",value:{name:"ReactNode",required:!0}},{key:"title",value:{name:"string",required:!0}},{key:"description",value:{name:"string",required:!0}}]}},description:""},onRowClick:{required:!1,tsType:{name:"signature",type:"function",raw:"(item: T) => void",signature:{arguments:[{type:{name:"T"},name:"item"}],return:{name:"void"}}},description:""},className:{required:!1,tsType:{name:"string"},description:"",defaultValue:{value:'""',computed:!1}},forceTableView:{required:!1,tsType:{name:"boolean"},description:"Force table view even on mobile (not recommended for UX)",defaultValue:{value:"false",computed:!1}}}};export{x as D}; diff --git a/apps/portal/public/storybook/assets/DataTable.stories-B-_ukgGA.js b/apps/portal/public/storybook/assets/DataTable.stories-B-_ukgGA.js new file mode 100644 index 00000000..8b2ac0bb --- /dev/null +++ b/apps/portal/public/storybook/assets/DataTable.stories-B-_ukgGA.js @@ -0,0 +1,24 @@ +import{j as f}from"./jsx-runtime-D_zvdyIk.js";import{D as x}from"./DataTable-COYdcx41.js";import{F as h}from"./InboxIcon-C_jmd85B.js";import"./empty-state-DRUGJ9ip.js";import"./button-C8_cybvS.js";import"./index-JhL3uwfD.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./spinner-mU4XywER.js";import"./PlusIcon-DGufmf06.js";import"./ChevronRightIcon-CMQWsJeW.js";const g=[{id:1,name:"John Doe",email:"john@example.com",status:"Active",amount:"¥12,000"},{id:2,name:"Jane Smith",email:"jane@example.com",status:"Pending",amount:"¥8,500"},{id:3,name:"Bob Wilson",email:"bob@example.com",status:"Active",amount:"¥15,200"},{id:4,name:"Alice Brown",email:"alice@example.com",status:"Inactive",amount:"¥3,100"},{id:5,name:"Charlie Davis",email:"charlie@example.com",status:"Active",amount:"¥9,800"}],o=[{key:"name",header:"Name",render:e=>e.name,primary:!0},{key:"email",header:"Email",render:e=>e.email},{key:"status",header:"Status",render:e=>f.jsx("span",{className:e.status==="Active"?"text-success":e.status==="Pending"?"text-warning":"text-muted-foreground",children:e.status})},{key:"amount",header:"Amount",render:e=>e.amount}],I={title:"Molecules/DataTable",component:x,parameters:{layout:"padded"}},a={args:{data:g,columns:o,forceTableView:!0}},t={args:{data:g,columns:o,onRowClick:e=>alert(`Clicked: ${e.name}`),forceTableView:!0}},r={args:{data:[],columns:o,emptyState:{icon:f.jsx(h,{className:"h-12 w-12"}),title:"No records found",description:"Try adjusting your search or filters."}}};var s,m,n;a.parameters={...a.parameters,docs:{...(s=a.parameters)==null?void 0:s.docs,source:{originalSource:`{ + args: { + data: sampleData, + columns, + forceTableView: true + } +}`,...(n=(m=a.parameters)==null?void 0:m.docs)==null?void 0:n.source}}};var i,c,l;t.parameters={...t.parameters,docs:{...(i=t.parameters)==null?void 0:i.docs,source:{originalSource:`{ + args: { + data: sampleData, + columns, + onRowClick: item => alert(\`Clicked: \${item.name}\`), + forceTableView: true + } +}`,...(l=(c=t.parameters)==null?void 0:c.docs)==null?void 0:l.source}}};var u,d,p;r.parameters={...r.parameters,docs:{...(u=r.parameters)==null?void 0:u.docs,source:{originalSource:`{ + args: { + data: [], + columns, + emptyState: { + icon: , + title: "No records found", + description: "Try adjusting your search or filters." + } + } +}`,...(p=(d=r.parameters)==null?void 0:d.docs)==null?void 0:p.source}}};const B=["Default","Clickable","Empty"];export{t as Clickable,a as Default,r as Empty,B as __namedExportsOrder,I as default}; diff --git a/apps/portal/public/storybook/assets/DataUsageChart.stories-Cl1vSSZO.js b/apps/portal/public/storybook/assets/DataUsageChart.stories-Cl1vSSZO.js new file mode 100644 index 00000000..8eff1618 --- /dev/null +++ b/apps/portal/public/storybook/assets/DataUsageChart.stories-Cl1vSSZO.js @@ -0,0 +1,63 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{f as _}from"./date-Csq1SWDU.js";import"./index-BKyvj4H5.js";import{F as j}from"./ExclamationTriangleIcon-Di4DJZFg.js";import{r as h}from"./index-JhL3uwfD.js";import"./date-CJlSVdaN.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";function V({title:s,titleId:a,...n},l){return h.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:l,"aria-labelledby":a},n),s?h.createElement("title",{id:a},s):null,h.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M3 13.125C3 12.504 3.504 12 4.125 12h2.25c.621 0 1.125.504 1.125 1.125v6.75C7.5 20.496 6.996 21 6.375 21h-2.25A1.125 1.125 0 0 1 3 19.875v-6.75ZM9.75 8.625c0-.621.504-1.125 1.125-1.125h2.25c.621 0 1.125.504 1.125 1.125v11.25c0 .621-.504 1.125-1.125 1.125h-2.25a1.125 1.125 0 0 1-1.125-1.125V8.625ZM16.5 4.125c0-.621.504-1.125 1.125-1.125h2.25C20.496 3 21 3.504 21 4.125v15.75c0 .621-.504 1.125-1.125 1.125h-2.25a1.125 1.125 0 0 1-1.125-1.125V4.125Z"}))}const Z=h.forwardRef(V);function o(s){return s>=1e3?`${(s/1e3).toFixed(1)} GB`:`${s.toFixed(0)} MB`}function A(s){return s>=90?"bg-danger":s>=75?"bg-warning":s>=50?"bg-warning/70":"bg-success"}function N(s){return s>=90?"text-danger":s>=75?"text-warning":"text-success"}function I({usagePercentage:s,totalRecentUsage:a,totalQuota:n}){return e.jsxs("div",{className:"mb-6",children:[e.jsxs("div",{className:"flex justify-between items-center mb-2",children:[e.jsx("span",{className:"text-sm font-medium text-foreground",children:"Used this month"}),e.jsxs("span",{className:`text-sm font-semibold ${N(s)}`,children:[o(a)," of ",o(n)]})]}),e.jsx("div",{className:"w-full bg-muted rounded-full h-3",children:e.jsx("div",{className:`h-3 rounded-full transition-all duration-300 ${A(s)}`,style:{width:`${Math.min(s,100)}%`}})}),e.jsxs("div",{className:"flex justify-between text-xs text-muted-foreground mt-1",children:[e.jsx("span",{children:"0%"}),e.jsxs("span",{className:N(s),children:[s.toFixed(1),"% used"]}),e.jsx("span",{children:"100%"})]})]})}function O({todayUsageMb:s,remainingQuotaMb:a}){return e.jsxs("div",{className:"grid grid-cols-1 sm:grid-cols-2 gap-4 mb-8",children:[e.jsx("div",{className:"bg-info-bg rounded-xl p-6 border border-info-border",children:e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsxs("div",{children:[e.jsx("div",{className:"text-3xl font-bold text-info",children:o(s)}),e.jsx("div",{className:"text-sm font-medium text-info mt-1",children:"Used today"})]}),e.jsx("div",{className:"bg-info/20 rounded-full p-3",children:e.jsx("svg",{className:"h-6 w-6 text-info",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:e.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M13 7h8m0 0v8m0-8l-8 8-4-4-6 6"})})})]})}),e.jsx("div",{className:"bg-success-bg rounded-xl p-6 border border-success-border",children:e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsxs("div",{children:[e.jsx("div",{className:"text-3xl font-bold text-success",children:o(a)}),e.jsx("div",{className:"text-sm font-medium text-success mt-1",children:"Remaining"})]}),e.jsx("div",{className:"bg-success/20 rounded-full p-3",children:e.jsx("svg",{className:"h-6 w-6 text-success",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:e.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M20 12H4m16 0l-4 4m4-4l-4-4"})})})]})})]})}function Y({usagePercentage:s}){return s>=90?e.jsx("div",{className:"mt-6 bg-danger-bg border border-danger-border rounded-lg p-4",children:e.jsxs("div",{className:"flex items-center",children:[e.jsx(j,{className:"h-5 w-5 text-danger mr-2"}),e.jsxs("div",{children:[e.jsx("h4",{className:"text-sm font-medium text-danger",children:"High Usage Warning"}),e.jsxs("p",{className:"text-sm text-danger/80 mt-1",children:["You have used ",s.toFixed(1),"% of your data quota. Consider topping up to avoid service interruption."]})]})]})}):s>=75?e.jsx("div",{className:"mt-6 bg-warning-bg border border-warning-border rounded-lg p-4",children:e.jsxs("div",{className:"flex items-center",children:[e.jsx(j,{className:"h-5 w-5 text-warning mr-2"}),e.jsxs("div",{children:[e.jsx("h4",{className:"text-sm font-medium text-warning",children:"Usage Notice"}),e.jsxs("p",{className:"text-sm text-warning/80 mt-1",children:["You have used ",s.toFixed(1),"% of your data quota. Consider monitoring your usage."]})]})]})}):null}function T({usage:s,remainingQuotaMb:a,isLoading:n,error:l,embedded:t=!1}){if(n)return e.jsx("div",{className:`${t?"":"bg-card shadow rounded-lg "}p-6`,children:e.jsxs("div",{className:"animate-pulse",children:[e.jsx("div",{className:"h-6 bg-muted rounded w-1/3 mb-4"}),e.jsx("div",{className:"h-4 bg-muted rounded w-full mb-2"}),e.jsx("div",{className:"h-8 bg-muted rounded mb-4"}),e.jsxs("div",{className:"space-y-2",children:[e.jsx("div",{className:"h-4 bg-muted rounded w-3/4"}),e.jsx("div",{className:"h-4 bg-muted rounded w-1/2"})]})]})});if(l)return e.jsx("div",{className:`${t?"":"bg-card shadow rounded-lg "}p-6`,children:e.jsxs("div",{className:"text-center",children:[e.jsx(j,{className:"h-12 w-12 text-danger mx-auto mb-4"}),e.jsx("h3",{className:"text-lg font-medium text-foreground mb-2",children:"Error Loading Usage Data"}),e.jsx("p",{className:"text-danger",children:l})]})});const f=s.recentDaysUsage.reduce((i,p)=>i+p.usageMb,0)+s.todayUsageMb,d=a+f,v=d>0?f/d*100:0;return e.jsxs("div",{className:`${t?"":"bg-card shadow-lg rounded-xl border border-border hover:shadow-xl transition-shadow duration-300"}`,children:[e.jsx("div",{className:`${t?"":"px-6 lg:px-8 py-5 border-b border-border"}`,children:e.jsxs("div",{className:"flex items-center",children:[e.jsx("div",{className:"bg-primary/10 rounded-xl p-2 mr-4",children:e.jsx(Z,{className:"h-6 w-6 text-primary"})}),e.jsxs("div",{children:[e.jsx("h3",{className:"text-xl font-semibold text-foreground",children:"Data Usage"}),e.jsx("p",{className:"text-sm text-muted-foreground",children:"Current month usage and remaining quota"})]})]})}),e.jsxs("div",{className:`${t?"":"px-6 lg:px-8 py-6"}`,children:[e.jsx(I,{usagePercentage:v,totalRecentUsage:f,totalQuota:d}),e.jsx(O,{todayUsageMb:s.todayUsageMb,remainingQuotaMb:a}),s.recentDaysUsage.length>0&&e.jsxs("div",{children:[e.jsx("h4",{className:"text-sm font-medium text-muted-foreground uppercase tracking-wider mb-3",children:"Recent Usage History"}),e.jsx("div",{className:"space-y-2",children:s.recentDaysUsage.slice(0,5).map((i,p)=>{const H=d>0?i.usageMb/d*100:0;return e.jsxs("div",{className:"flex items-center justify-between py-2",children:[e.jsx("span",{className:"text-sm text-muted-foreground",children:_(i.date)}),e.jsxs("div",{className:"flex items-center space-x-3",children:[e.jsx("div",{className:"w-24 bg-muted rounded-full h-2",children:e.jsx("div",{className:"bg-primary h-2 rounded-full transition-all duration-300",style:{width:`${Math.min(H,100)}%`}})}),e.jsx("span",{className:"text-sm font-medium text-foreground w-16 text-right",children:o(i.usageMb)})]})]},p)})})]}),e.jsx(Y,{usagePercentage:v})]})]})}T.__docgenInfo={description:"",methods:[],displayName:"DataUsageChart",props:{usage:{required:!0,tsType:{name:"SimUsage"},description:""},remainingQuotaMb:{required:!0,tsType:{name:"number"},description:""},isLoading:{required:!1,tsType:{name:"boolean"},description:""},error:{required:!1,tsType:{name:"union",raw:"string | null",elements:[{name:"string"},{name:"null"}]},description:""},embedded:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"false",computed:!1}}}};const re={title:"Features/Subscriptions/Sim/DataUsageChart",component:T,parameters:{layout:"centered"}},r={account:"ACC-001",todayUsageKb:512e3,todayUsageMb:500,recentDaysUsage:[{date:"2026-03-06",usageKb:256e3,usageMb:250},{date:"2026-03-05",usageKb:1024e3,usageMb:1e3},{date:"2026-03-04",usageKb:128e3,usageMb:125},{date:"2026-03-03",usageKb:768e3,usageMb:750},{date:"2026-03-02",usageKb:384e3,usageMb:375}],isBlacklisted:!1},c={args:{usage:r,remainingQuotaMb:8e3,isLoading:!1,error:null,embedded:!1}},m={args:{usage:{...r,todayUsageMb:2e3,todayUsageKb:2e6,recentDaysUsage:r.recentDaysUsage.map(s=>({...s,usageMb:s.usageMb*5,usageKb:s.usageKb*5}))},remainingQuotaMb:500,isLoading:!1,error:null}},u={args:{usage:{...r,todayUsageMb:3e3,todayUsageKb:3e6,recentDaysUsage:r.recentDaysUsage.map(s=>({...s,usageMb:s.usageMb*8,usageKb:s.usageKb*8}))},remainingQuotaMb:100,isLoading:!1,error:null}},g={args:{usage:r,remainingQuotaMb:8e3,isLoading:!0,error:null}},x={args:{usage:r,remainingQuotaMb:8e3,isLoading:!1,error:"Failed to load usage data. Please try again later."}},b={args:{usage:r,remainingQuotaMb:8e3,isLoading:!1,error:null,embedded:!0}};var y,U,w;c.parameters={...c.parameters,docs:{...(y=c.parameters)==null?void 0:y.docs,source:{originalSource:`{ + args: { + usage: mockUsage, + remainingQuotaMb: 8000, + isLoading: false, + error: null, + embedded: false + } +}`,...(w=(U=c.parameters)==null?void 0:U.docs)==null?void 0:w.source}}};var M,k,L;m.parameters={...m.parameters,docs:{...(M=m.parameters)==null?void 0:M.docs,source:{originalSource:`{ + args: { + usage: { + ...mockUsage, + todayUsageMb: 2000, + todayUsageKb: 2000000, + recentDaysUsage: mockUsage.recentDaysUsage.map(d => ({ + ...d, + usageMb: d.usageMb * 5, + usageKb: d.usageKb * 5 + })) + }, + remainingQuotaMb: 500, + isLoading: false, + error: null + } +}`,...(L=(k=m.parameters)==null?void 0:k.docs)==null?void 0:L.source}}};var C,D,K;u.parameters={...u.parameters,docs:{...(C=u.parameters)==null?void 0:C.docs,source:{originalSource:`{ + args: { + usage: { + ...mockUsage, + todayUsageMb: 3000, + todayUsageKb: 3000000, + recentDaysUsage: mockUsage.recentDaysUsage.map(d => ({ + ...d, + usageMb: d.usageMb * 8, + usageKb: d.usageKb * 8 + })) + }, + remainingQuotaMb: 100, + isLoading: false, + error: null + } +}`,...(K=(D=u.parameters)==null?void 0:D.docs)==null?void 0:K.source}}};var Q,$,E;g.parameters={...g.parameters,docs:{...(Q=g.parameters)==null?void 0:Q.docs,source:{originalSource:`{ + args: { + usage: mockUsage, + remainingQuotaMb: 8000, + isLoading: true, + error: null + } +}`,...(E=($=g.parameters)==null?void 0:$.docs)==null?void 0:E.source}}};var F,S,B;x.parameters={...x.parameters,docs:{...(F=x.parameters)==null?void 0:F.docs,source:{originalSource:`{ + args: { + usage: mockUsage, + remainingQuotaMb: 8000, + isLoading: false, + error: "Failed to load usage data. Please try again later." + } +}`,...(B=(S=x.parameters)==null?void 0:S.docs)==null?void 0:B.source}}};var q,R,W;b.parameters={...b.parameters,docs:{...(q=b.parameters)==null?void 0:q.docs,source:{originalSource:`{ + args: { + usage: mockUsage, + remainingQuotaMb: 8000, + isLoading: false, + error: null, + embedded: true + } +}`,...(W=(R=b.parameters)==null?void 0:R.docs)==null?void 0:W.source}}};const ne=["Default","HighUsage","CriticalUsage","Loading","WithError","Embedded"];export{u as CriticalUsage,c as Default,b as Embedded,m as HighUsage,g as Loading,x as WithError,ne as __namedExportsOrder,re as default}; diff --git a/apps/portal/public/storybook/assets/DetailHeader-C0ZsoM39.js b/apps/portal/public/storybook/assets/DetailHeader-C0ZsoM39.js new file mode 100644 index 00000000..33d5680d --- /dev/null +++ b/apps/portal/public/storybook/assets/DetailHeader-C0ZsoM39.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{S as d}from"./status-pill-wWp9xkwA.js";function c({title:i,subtitle:r,status:a,leftIcon:t,actions:n,className:l,meta:s}){return e.jsxs("div",{className:`pb-4 border-b border-border ${l||""}`,children:[e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsxs("div",{className:"flex items-center",children:[t,e.jsxs("div",{className:t?"ml-3":void 0,children:[e.jsx("h3",{className:"text-lg font-medium text-foreground",children:i}),r&&e.jsx("p",{className:"text-sm text-muted-foreground",children:r})]})]}),a&&e.jsx(d,{label:a.label,variant:a.variant}),n]}),s&&e.jsx("div",{className:"mt-4",children:s})]})}c.__docgenInfo={description:"",methods:[],displayName:"DetailHeader",props:{title:{required:!0,tsType:{name:"string"},description:""},subtitle:{required:!1,tsType:{name:"string"},description:""},status:{required:!1,tsType:{name:"signature",type:"object",raw:"{ label: string; variant: Variant }",signature:{properties:[{key:"label",value:{name:"string",required:!0}},{key:"variant",value:{name:"union",raw:'"success" | "warning" | "error" | "neutral" | "info"',elements:[{name:"literal",value:'"success"'},{name:"literal",value:'"warning"'},{name:"literal",value:'"error"'},{name:"literal",value:'"neutral"'},{name:"literal",value:'"info"'}],required:!0}}]}},description:""},leftIcon:{required:!1,tsType:{name:"ReactReactNode",raw:"React.ReactNode"},description:""},actions:{required:!1,tsType:{name:"ReactReactNode",raw:"React.ReactNode"},description:""},className:{required:!1,tsType:{name:"string"},description:""},meta:{required:!1,tsType:{name:"ReactReactNode",raw:"React.ReactNode"},description:""}}};export{c as D}; diff --git a/apps/portal/public/storybook/assets/DetailHeader.stories-DT70K3Kz.js b/apps/portal/public/storybook/assets/DetailHeader.stories-DT70K3Kz.js new file mode 100644 index 00000000..150296e9 --- /dev/null +++ b/apps/portal/public/storybook/assets/DetailHeader.stories-DT70K3Kz.js @@ -0,0 +1,44 @@ +import{j as t}from"./jsx-runtime-D_zvdyIk.js";import{D as x}from"./DetailHeader-C0ZsoM39.js";import{B as b}from"./button-C8_cybvS.js";import{F as v}from"./DocumentTextIcon-Dk_xQMYi.js";import{F as I}from"./WifiIcon-BRIpHl8i.js";import"./status-pill-wWp9xkwA.js";import"./index-JhL3uwfD.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./spinner-mU4XywER.js";const H={title:"Molecules/DetailHeader",component:x,parameters:{layout:"padded"}},e={args:{title:"Order #12345",subtitle:"Placed on March 1, 2026",status:{label:"Active",variant:"success"}}},a={args:{title:"Internet Plan - Fiber 1Gbps",subtitle:"Subscription #SUB-789",leftIcon:t.jsx(I,{className:"h-8 w-8 text-primary"}),status:{label:"Active",variant:"success"}}},s={args:{title:"Invoice #INV-2026-001",subtitle:"Due: March 15, 2026",leftIcon:t.jsx(v,{className:"h-8 w-8 text-info"}),status:{label:"Pending",variant:"warning"},actions:t.jsx(b,{size:"sm",children:"Pay Now"})}},r={args:{title:"Support Ticket #4567",status:{label:"Open",variant:"info"},meta:t.jsxs("div",{className:"flex gap-4 text-sm text-muted-foreground",children:[t.jsx("span",{children:"Priority: High"}),t.jsx("span",{children:"Category: Billing"}),t.jsx("span",{children:"Created: 2 hours ago"})]})}};var n,i,o;e.parameters={...e.parameters,docs:{...(n=e.parameters)==null?void 0:n.docs,source:{originalSource:`{ + args: { + title: "Order #12345", + subtitle: "Placed on March 1, 2026", + status: { + label: "Active", + variant: "success" + } + } +}`,...(o=(i=e.parameters)==null?void 0:i.docs)==null?void 0:o.source}}};var c,l,p;a.parameters={...a.parameters,docs:{...(c=a.parameters)==null?void 0:c.docs,source:{originalSource:`{ + args: { + title: "Internet Plan - Fiber 1Gbps", + subtitle: "Subscription #SUB-789", + leftIcon: , + status: { + label: "Active", + variant: "success" + } + } +}`,...(p=(l=a.parameters)==null?void 0:l.docs)==null?void 0:p.source}}};var m,u,d;s.parameters={...s.parameters,docs:{...(m=s.parameters)==null?void 0:m.docs,source:{originalSource:`{ + args: { + title: "Invoice #INV-2026-001", + subtitle: "Due: March 15, 2026", + leftIcon: , + status: { + label: "Pending", + variant: "warning" + }, + actions: + } +}`,...(d=(u=s.parameters)==null?void 0:u.docs)==null?void 0:d.source}}};var g,f,h;r.parameters={...r.parameters,docs:{...(g=r.parameters)==null?void 0:g.docs,source:{originalSource:`{ + args: { + title: "Support Ticket #4567", + status: { + label: "Open", + variant: "info" + }, + meta:
+ Priority: High + Category: Billing + Created: 2 hours ago +
+ } +}`,...(h=(f=r.parameters)==null?void 0:f.docs)==null?void 0:h.source}}};const R=["Default","WithIcon","WithActions","WithMeta"];export{e as Default,s as WithActions,a as WithIcon,r as WithMeta,R as __namedExportsOrder,H as default}; diff --git a/apps/portal/public/storybook/assets/DetailStatsGrid-CDkKTM-B.js b/apps/portal/public/storybook/assets/DetailStatsGrid-CDkKTM-B.js new file mode 100644 index 00000000..adf675b8 --- /dev/null +++ b/apps/portal/public/storybook/assets/DetailStatsGrid-CDkKTM-B.js @@ -0,0 +1,4 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{c as d}from"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";const l={2:"grid-cols-2",3:"grid-cols-2 md:grid-cols-3",4:"grid-cols-2 md:grid-cols-4"};function n({items:a,columns:r=4,className:t}){return e.jsx("div",{className:d("grid gap-4",l[r],t),children:a.map((s,i)=>e.jsx("div",{className:"bg-card rounded-xl border border-border p-4 shadow-[var(--cp-shadow-1)]",children:e.jsxs("div",{className:"flex items-center gap-3",children:[s.icon&&e.jsx("div",{className:"flex h-9 w-9 items-center justify-center rounded-lg bg-muted/50 text-muted-foreground flex-shrink-0",children:s.icon}),e.jsxs("div",{className:"min-w-0",children:[e.jsx("p",{className:"text-xs font-medium text-muted-foreground",children:s.label}),e.jsx("div",{className:"font-semibold text-foreground",children:s.value})]})]})},i))})}n.__docgenInfo={description:`DetailStatsGrid - Reusable stats grid for detail pages. + +Used across detail pages (Orders, Subscriptions) to display key stats +in a consistent grid layout with individual card styling.`,methods:[],displayName:"DetailStatsGrid",props:{items:{required:!0,tsType:{name:"Array",elements:[{name:"StatGridItem"}],raw:"StatGridItem[]"},description:"Array of stat items to display"},columns:{required:!1,tsType:{name:"union",raw:"2 | 3 | 4",elements:[{name:"literal",value:"2"},{name:"literal",value:"3"},{name:"literal",value:"4"}]},description:"Number of columns (default: 4 on md screens)",defaultValue:{value:"4",computed:!1}},className:{required:!1,tsType:{name:"string"},description:"Optional additional class names"}}};export{n as D}; diff --git a/apps/portal/public/storybook/assets/DetailStatsGrid.stories-D_oLpbK9.js b/apps/portal/public/storybook/assets/DetailStatsGrid.stories-D_oLpbK9.js new file mode 100644 index 00000000..e7537b1c --- /dev/null +++ b/apps/portal/public/storybook/assets/DetailStatsGrid.stories-D_oLpbK9.js @@ -0,0 +1,50 @@ +import{j as a}from"./jsx-runtime-D_zvdyIk.js";import{D as w}from"./DetailStatsGrid-CDkKTM-B.js";import{F as d}from"./CalendarIcon-DHpf4s_h.js";import{F as b}from"./CurrencyYenIcon-Bf5bmWZc.js";import{F as v}from"./DocumentTextIcon-Dk_xQMYi.js";import{F as h}from"./ClockIcon-BFX11zAZ.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./index-JhL3uwfD.js";const D={title:"Molecules/DetailStatsGrid",component:w,argTypes:{columns:{control:"select",options:[2,3,4]}},parameters:{layout:"padded"}},e={args:{columns:4,items:[{icon:a.jsx(d,{className:"h-5 w-5"}),label:"Start Date",value:"Jan 15, 2026"},{icon:a.jsx(b,{className:"h-5 w-5"}),label:"Monthly Cost",value:"¥4,800"},{icon:a.jsx(v,{className:"h-5 w-5"}),label:"Contract",value:"24 months"},{icon:a.jsx(h,{className:"h-5 w-5"}),label:"Next Billing",value:"Apr 1, 2026"}]}},s={args:{columns:3,items:[{icon:a.jsx(d,{className:"h-5 w-5"}),label:"Created",value:"Mar 1, 2026"},{icon:a.jsx(b,{className:"h-5 w-5"}),label:"Total",value:"¥32,400"},{icon:a.jsx(h,{className:"h-5 w-5"}),label:"Status",value:"Processing"}]}},n={args:{columns:2,items:[{label:"Plan",value:"Fiber 1Gbps"},{label:"Speed",value:"Up to 1Gbps"}]}};var o,l,r;e.parameters={...e.parameters,docs:{...(o=e.parameters)==null?void 0:o.docs,source:{originalSource:`{ + args: { + columns: 4, + items: [{ + icon: , + label: "Start Date", + value: "Jan 15, 2026" + }, { + icon: , + label: "Monthly Cost", + value: "¥4,800" + }, { + icon: , + label: "Contract", + value: "24 months" + }, { + icon: , + label: "Next Billing", + value: "Apr 1, 2026" + }] + } +}`,...(r=(l=e.parameters)==null?void 0:l.docs)==null?void 0:r.source}}};var t,c,m;s.parameters={...s.parameters,docs:{...(t=s.parameters)==null?void 0:t.docs,source:{originalSource:`{ + args: { + columns: 3, + items: [{ + icon: , + label: "Created", + value: "Mar 1, 2026" + }, { + icon: , + label: "Total", + value: "¥32,400" + }, { + icon: , + label: "Status", + value: "Processing" + }] + } +}`,...(m=(c=s.parameters)==null?void 0:c.docs)==null?void 0:m.source}}};var i,u,p;n.parameters={...n.parameters,docs:{...(i=n.parameters)==null?void 0:i.docs,source:{originalSource:`{ + args: { + columns: 2, + items: [{ + label: "Plan", + value: "Fiber 1Gbps" + }, { + label: "Speed", + value: "Up to 1Gbps" + }] + } +}`,...(p=(u=n.parameters)==null?void 0:u.docs)==null?void 0:p.source}}};const G=["FourColumns","ThreeColumns","TwoColumns"];export{e as FourColumns,s as ThreeColumns,n as TwoColumns,G as __namedExportsOrder,D as default}; diff --git a/apps/portal/public/storybook/assets/DeviceCompatibility-BmppB3yg.js b/apps/portal/public/storybook/assets/DeviceCompatibility-BmppB3yg.js new file mode 100644 index 00000000..31126a34 --- /dev/null +++ b/apps/portal/public/storybook/assets/DeviceCompatibility-BmppB3yg.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{r as l}from"./index-JhL3uwfD.js";import{c as P}from"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import{S as u}from"./search-DSeV2urL.js";import{S as h}from"./smartphone-Dk2P1VMI.js";import{C as d}from"./check-DmNqM64J.js";import{X as p}from"./x-gzkF7O9v.js";const c=[{name:"Apple iPhone",devices:["iPhone 16 Series (Standard/Plus/Pro/Pro Max)","iPhone 15 Series (Standard/Plus/Pro/Pro Max)","iPhone 14 Series (Standard/Plus/Pro/Pro Max)","iPhone SE (3rd Generation, 2022)","iPhone 13 Series (Standard/Mini/Pro/Pro Max)","iPhone 12 Series (Standard/Mini/Pro/Pro Max)","iPhone SE (2nd Generation, 2020)","iPhone 11 Series (Standard/Pro/Pro Max)","iPhone XS Series (Standard/Max)","iPhone XR","iPhone X (4G Only)","iPhone 8 / 8 Plus (4G Only)","iPhone 7 / 7 Plus (4G Only)","iPhone 6s / 6s Plus (4G Only)"]},{name:"Apple iPad",devices:["iPad Pro 13-inch (M4)",'iPad Pro 12.9" (6th/5th/4th/3rd Generations)','iPad Pro 11" (4th/3rd/2nd/1st Generations)',"iPad Air 13-inch (M2)","iPad Air (5th/4th/3rd Generations)","iPad Mini (6th/5th Generations, A17 Pro)","iPad Standard (10th/9th/8th/7th Generations)"]},{name:"Google Pixel",devices:["Pixel 9 Series (Pro XL/Pro/Fold/Standard)","Pixel 8 / 8a / 8 Pro","Pixel 7a / 7 / 7 Pro","Pixel Fold","Pixel 6a / 6 / 6 Pro","Pixel 5a (5G) / 5","Pixel 4a (5G) / 4a","Pixel 4 XL / 4","Pixel 3a XL / 3a","Pixel 3 XL / 3"]},{name:"Samsung Galaxy S Series",devices:["Galaxy S25 Edge","Galaxy S24 Ultra / S24 / S24 FE","Galaxy S23 Ultra / S23 / S23 FE","Galaxy S22 Ultra 5G / S22+ 5G / S22 5G","Galaxy S21 Ultra 5G / S21+ 5G / S21 5G","Galaxy S20 Ultra / S20+ 5G / S20+ / S20 5G / S20","Galaxy S10","Galaxy S7 edge / S6 / S6 edge","Galaxy S5 ACTIVE / S5 / S4"]},{name:"Samsung Galaxy Z / Note / A Series",devices:["Galaxy Z Fold 6 / 5 / 4 / 3 / 2","Galaxy Z Flip 6 / 5 / 4 / 3 5G","Galaxy Note 20 Ultra 5G / Note 20 5G","Galaxy A56 5G / A55 5G / A54 5G / A53 5G","Galaxy A52s 5G / A51 5G / A35 5G / A23 5G","Galaxy M23 5G"]},{name:"Sony Xperia",devices:["Xperia 1 VI / 1 V / 1 IV / 1 III / 1 II","Xperia 5 V / 5 IV / 5 III / 5 II","Xperia 10 VI / 10 V / 10 IV / 10 III Lite","Xperia Pro-I / Pro","Xperia Ace III / Ace II / Ace","Xperia 8 Lite / XZ Premium","Xperia X Performance / Z5 Premium / Z5 Compact / Z5","Xperia Z4 / Z3 Compact / Z2 / Z"]},{name:"Sharp AQUOS",devices:["AQUOS R9 / R8 / R7","AQUOS sense9 / sense8 / sense7","AQUOS wish4 / wish3"]},{name:"Xiaomi / Redmi",devices:["Xiaomi 14T Pro / 14T / 14 Ultra / 14 Pro / 14 Pro+","Xiaomi 13T Pro / 13T / 13 Pro / 13 / 13 Lite","Xiaomi 12T Pro","Redmi Note 14 Pro / 13 Pro+ / 13 Pro 5G","Redmi Note 11 Pro 5G / 10T","Redmi 12 5G"]},{name:"Motorola",devices:["Edge 50 Ultra / 50s Pro / 50 Pro / 50 Neo / 50 Fusion","Edge 40 Pro / 40 Neo / 40","Edge+ (2024) / Edge+ (2023)","Razr 50 Ultra / 50 / 40 Ultra / 40","Razr 2024 / 2022 / 5G / 2019","Moto G85 / G64y 5G / G55 / G54 / G35","Moto G53J 5G / G52J 5G","ThinkPhone 25"]},{name:"OPPO / OnePlus",devices:["OPPO Find X8 / X5 Pro / X5 / X3 Pro","OPPO Find N2 Flip","OPPO Reno11 A / 10 Pro 5G / 9 A / 7 A","OPPO Reno6 Pro 5G / Reno 5 A / Reno A","OPPO A79 5G / A73 / A55s 5G / A3 5G","OnePlus 13 / 12 / 11"]},{name:"ASUS",devices:["Zenfone 9 / 8 Flip / 8","ROG Phone 7 / 6 / 5 / 3 / II","ZenFone 7 Pro / 7 / 6","ZenFone 5Z / 5 / 5Q","ZenFone 4 Series / 3 Series","ZenFone Max Series"]},{name:"Vivo / Nokia",devices:["Vivo X100 Pro / X90 Pro","Vivo V40 / V29 / V29 Lite 5G","Nokia XR21 / X30 / G60"]},{name:"HUAWEI",devices:["P40 Pro 5G / P40 / P40 lite 5G / P40 lite E","Mate 40 Pro+ / Mate 40 Pro / Mate 40","Mate 20 Pro / Mate 20 lite / Mate 10 Pro","P30 / P30 lite / P20 / P20 lite","nova 5T / nova lite 3+ / nova lite 3 / nova 3","MediaPad M5 / M3 / T5 Series"]},{name:"Fujitsu arrows",devices:["arrows We2 Plus / We2 / N","arrows NX9 F-52A","arrows M05 / M04 / M03 / M02","arrows SV F-03H / NX F-02H"]},{name:"Other Devices",devices:["DuraForce EX KY-51D / PRO","Kids Phones (Compact/KY-41C/SH-03M)","ASUS Chromebook CM30 Detachable","dtab Compact (d-52C/d-42A) / Standard (d-51C)","Essential Phone PH-1","HTC U12+ / U11 / U11 life","CAT S60 / S41 / S40","BlackBerry PRIV / Passport / Classic","Microsoft Surface Pro LTE / Surface 3 (4G)","Lenovo Tab4 8 / YOGA Series","LG Nexus 5X / Nexus 5"]}],S=c.flatMap(r=>r.devices.map(a=>({device:a,category:r.name})));function f({filteredDevices:r,showNoResults:a}){return r.length>0?e.jsxs("div",{className:"divide-y divide-border",children:[r.map((t,s)=>e.jsxs("div",{className:"flex items-center gap-3 p-3 hover:bg-muted/50 transition-colors",children:[e.jsx("div",{className:"flex-shrink-0 h-8 w-8 rounded-full bg-green-100 dark:bg-green-900/30 flex items-center justify-center",children:e.jsx(d,{className:"h-4 w-4 text-green-600 dark:text-green-400"})}),e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsx("p",{className:"font-medium text-foreground truncate",children:t.device}),e.jsx("p",{className:"text-xs text-muted-foreground",children:t.category})]}),e.jsx("span",{className:"text-xs font-medium text-green-600 dark:text-green-400 bg-green-100 dark:bg-green-900/30 px-2 py-1 rounded-full",children:"Compatible"})]},s)),r.length===20&&e.jsx("p",{className:"text-xs text-muted-foreground text-center py-2",children:"Showing first 20 results. Try a more specific search."})]}):a?e.jsxs("div",{className:"p-6 text-center",children:[e.jsx("div",{className:"flex-shrink-0 h-12 w-12 mx-auto rounded-full bg-amber-100 dark:bg-amber-900/30 flex items-center justify-center mb-3",children:e.jsx(p,{className:"h-6 w-6 text-amber-600 dark:text-amber-400"})}),e.jsx("p",{className:"font-medium text-foreground mb-1",children:"Device not found in our list"}),e.jsxs("p",{className:"text-sm text-muted-foreground",children:["Your device may still be compatible. Please"," ",e.jsx("a",{href:"mailto:info@asolutions.co.jp",className:"text-primary hover:underline",children:"contact us"})," ","to verify compatibility."]})]}):null}function G(){const[r,a]=l.useState(""),[t,s]=l.useState(!1),o=l.useMemo(()=>{if(!r.trim())return[];const i=r.toLowerCase();return S.filter(n=>n.device.toLowerCase().includes(i)||n.category.toLowerCase().includes(i)).slice(0,20)},[r]),m=o.length>0,x=r.trim().length>0&&!m;return e.jsxs("section",{className:"mt-12 mb-8",children:[e.jsx("h2",{className:"text-2xl font-bold text-foreground mb-2 text-center",children:"Device Compatibility"}),e.jsx("p",{className:"text-sm text-muted-foreground text-center mb-6",children:"Check if your device is compatible with our SIM service"}),e.jsxs("div",{className:"max-w-xl mx-auto mb-6",children:[e.jsxs("div",{className:"relative",children:[e.jsx(u,{className:"absolute left-4 top-1/2 -translate-y-1/2 h-5 w-5 text-muted-foreground"}),e.jsx("input",{type:"text",value:r,onChange:i=>a(i.target.value),placeholder:"Search your device (e.g., iPhone 15, Galaxy S24, Pixel 8)",className:"w-full pl-12 pr-4 py-3 rounded-xl border border-border bg-card text-foreground placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-primary/50 focus:border-primary transition-all"})]}),r.trim()&&e.jsx("div",{className:"mt-3 rounded-xl border border-border bg-card overflow-hidden",children:e.jsx(f,{filteredDevices:o,showNoResults:x})})]}),e.jsxs("div",{className:"max-w-3xl mx-auto",children:[e.jsxs("button",{type:"button",onClick:()=>s(!t),className:"w-full flex items-center justify-center gap-2 py-3 text-sm font-medium text-primary hover:text-primary/80 transition-colors",children:[e.jsx(h,{className:"h-4 w-4"}),t?"Hide full device list":"View all compatible devices"]}),t&&e.jsxs("div",{className:"mt-4 rounded-xl border border-border bg-card overflow-hidden",children:[e.jsx("div",{className:"p-4 bg-muted/30 border-b border-border",children:e.jsx("p",{className:"text-sm text-muted-foreground",children:"Below is a comprehensive list of devices confirmed to work with our SIM service. Devices not listed may still be compatible."})}),e.jsx("div",{className:"divide-y divide-border",children:c.map((i,n)=>e.jsx(v,{category:i},n))})]})]})]})}function v({category:r}){const[a,t]=l.useState(!1);return e.jsxs("div",{children:[e.jsxs("button",{type:"button",onClick:()=>t(!a),className:"w-full flex items-center justify-between gap-3 p-4 text-left hover:bg-muted/50 transition-colors",children:[e.jsx("span",{className:"font-medium text-foreground",children:r.name}),e.jsx("span",{className:P("text-xs text-muted-foreground transition-transform",a&&"rotate-180"),children:"▼"})]}),a&&e.jsx("div",{className:"px-4 pb-4",children:e.jsx("div",{className:"grid grid-cols-1 sm:grid-cols-2 gap-2",children:r.devices.map((s,o)=>e.jsxs("div",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[e.jsx(d,{className:"h-3.5 w-3.5 text-green-500 flex-shrink-0"}),e.jsx("span",{children:s})]},o))})})]})}G.__docgenInfo={description:"",methods:[],displayName:"DeviceCompatibility"};export{G as D}; diff --git a/apps/portal/public/storybook/assets/DeviceCompatibility.stories-ChiNwKar.js b/apps/portal/public/storybook/assets/DeviceCompatibility.stories-ChiNwKar.js new file mode 100644 index 00000000..578ae4f1 --- /dev/null +++ b/apps/portal/public/storybook/assets/DeviceCompatibility.stories-ChiNwKar.js @@ -0,0 +1 @@ +import{D as i}from"./DeviceCompatibility-BmppB3yg.js";import"./jsx-runtime-D_zvdyIk.js";import"./index-JhL3uwfD.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./search-DSeV2urL.js";import"./createLucideIcon-CctB0W3q.js";import"./smartphone-Dk2P1VMI.js";import"./check-DmNqM64J.js";import"./x-gzkF7O9v.js";const y={title:"Features/Services/SIM/DeviceCompatibility",component:i,parameters:{layout:"centered"}},t={};var r,e,o;t.parameters={...t.parameters,docs:{...(r=t.parameters)==null?void 0:r.docs,source:{originalSource:"{}",...(o=(e=t.parameters)==null?void 0:e.docs)==null?void 0:o.source}}};const S=["Default"];export{t as Default,S as __namedExportsOrder,y as default}; diff --git a/apps/portal/public/storybook/assets/DevicePhoneMobileIcon-SMwjWf6M.js b/apps/portal/public/storybook/assets/DevicePhoneMobileIcon-SMwjWf6M.js new file mode 100644 index 00000000..6e7bc719 --- /dev/null +++ b/apps/portal/public/storybook/assets/DevicePhoneMobileIcon-SMwjWf6M.js @@ -0,0 +1 @@ +import{r as e}from"./index-JhL3uwfD.js";function a({title:r,titleId:o,...t},n){return e.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:n,"aria-labelledby":o},t),r?e.createElement("title",{id:o},r):null,e.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M10.5 1.5H8.25A2.25 2.25 0 0 0 6 3.75v16.5a2.25 2.25 0 0 0 2.25 2.25h7.5A2.25 2.25 0 0 0 18 20.25V3.75a2.25 2.25 0 0 0-2.25-2.25H13.5m-3 0V3h3V1.5m-3 0h3m-3 18.75h3"}))}const s=e.forwardRef(a);export{s as F}; diff --git a/apps/portal/public/storybook/assets/DocsRenderer-CFRXHY34-CPSpsf6k.js b/apps/portal/public/storybook/assets/DocsRenderer-CFRXHY34-CPSpsf6k.js new file mode 100644 index 00000000..9fc8ddab --- /dev/null +++ b/apps/portal/public/storybook/assets/DocsRenderer-CFRXHY34-CPSpsf6k.js @@ -0,0 +1,575 @@ +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./Color-YHDXOIA2-BJn0-NzM.js","./index-JhL3uwfD.js","./iframe-Ce-ZSiNJ.js","./jsx-runtime-D_zvdyIk.js","./client-B9ae35Ip.js","./index-DgH-xKnr.js","./index-DrFu-skq.js","./index-B2V9nFGU.js"])))=>i.map(i=>d[i]); +var E9=Object.defineProperty;var C9=(e,t,r)=>t in e?E9(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;var Rn=(e,t,r)=>C9(e,typeof t!="symbol"?t+"":t,r);import{D as t3,_ as X1,z as x9}from"./iframe-Ce-ZSiNJ.js";import{r as l,g as S9,R as y,o as r3}from"./index-JhL3uwfD.js";import{j as O}from"./jsx-runtime-D_zvdyIk.js";import{r as F9,c as A9}from"./client-B9ae35Ip.js";import{y as Th,g as xu}from"./index-DgH-xKnr.js";import{d as k9}from"./index-DrFu-skq.js";var _9=Object.create,n3=Object.defineProperty,B9=Object.getOwnPropertyDescriptor,a3=Object.getOwnPropertyNames,R9=Object.getPrototypeOf,I9=Object.prototype.hasOwnProperty,Di=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(t,r)=>(typeof require<"u"?require:t)[r]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')}),yn=(e,t)=>function(){return t||(0,e[a3(e)[0]])((t={exports:{}}).exports,t),t.exports},z9=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of a3(t))!I9.call(e,a)&&a!==r&&n3(e,a,{get:()=>t[a],enumerable:!(n=B9(t,a))||n.enumerable});return e},Q1=(e,t,r)=>(r=e!=null?_9(R9(e)):{},z9(t||!e||!e.__esModule?n3(r,"default",{value:e,enumerable:!0}):r,e));function T9(e,t,{signal:r,edges:n}={}){let a,o=null,i=n!=null&&n.includes("leading"),s=n==null||n.includes("trailing"),c=()=>{o!==null&&(e.apply(a,o),a=void 0,o=null)},d=()=>{s&&c(),m()},f=null,h=()=>{f!=null&&clearTimeout(f),f=setTimeout(()=>{f=null,d()},t)},p=()=>{f!==null&&(clearTimeout(f),f=null)},m=()=>{p(),a=void 0,o=null},g=()=>{p(),c()},v=function(...b){if(r!=null&&r.aborted)return;a=this,o=b;let C=f==null;h(),i&&C&&c()};return v.schedule=h,v.cancel=m,v.flush=g,r==null||r.addEventListener("abort",m,{once:!0}),v}function vV(e,t=0,r={}){typeof r!="object"&&(r={});let{signal:n,leading:a=!1,trailing:o=!0,maxWait:i}=r,s=Array(2);a&&(s[0]="leading"),o&&(s[1]="trailing");let c,d=null,f=T9(function(...m){c=e.apply(this,m),d=null},t,{signal:n,edges:s}),h=function(...m){if(i!=null){if(d===null)d=Date.now();else if(Date.now()-d>=i)return c=e.apply(this,m),d=Date.now(),f.cancel(),f.schedule(),c}return f.apply(this,m),c},p=()=>(f.flush(),c);return h.cancel=f.cancel,h.flush=p,h}function L9(e){return Array.from(new Set(e))}function M9(e,t){let r={},n=Object.entries(e);for(let a=0;a`control-${e.replace(/\s+/g,"-")}`,ys=e=>`set-${e.replace(/\s+/g,"-")}`,U9=Object.create,ep=Object.defineProperty,q9=Object.getOwnPropertyDescriptor,W9=Object.getOwnPropertyNames,G9=Object.getPrototypeOf,K9=Object.prototype.hasOwnProperty,B=(e,t)=>ep(e,"name",{value:t,configurable:!0}),Ei=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(t,r)=>(typeof require<"u"?require:t)[r]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')}),bs=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Y9=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of W9(t))!K9.call(e,a)&&a!==r&&ep(e,a,{get:()=>t[a],enumerable:!(n=q9(t,a))||n.enumerable});return e},tp=(e,t,r)=>(r=e!=null?U9(G9(e)):{},Y9(t||!e||!e.__esModule?ep(r,"default",{value:e,enumerable:!0}):r,e)),Z9=bs(e=>{(function(){var t=typeof Symbol=="function"&&Symbol.for,r=t?Symbol.for("react.element"):60103,n=t?Symbol.for("react.portal"):60106,a=t?Symbol.for("react.fragment"):60107,o=t?Symbol.for("react.strict_mode"):60108,i=t?Symbol.for("react.profiler"):60114,s=t?Symbol.for("react.provider"):60109,c=t?Symbol.for("react.context"):60110,d=t?Symbol.for("react.async_mode"):60111,f=t?Symbol.for("react.concurrent_mode"):60111,h=t?Symbol.for("react.forward_ref"):60112,p=t?Symbol.for("react.suspense"):60113,m=t?Symbol.for("react.suspense_list"):60120,g=t?Symbol.for("react.memo"):60115,v=t?Symbol.for("react.lazy"):60116,b=t?Symbol.for("react.block"):60121,C=t?Symbol.for("react.fundamental"):60117,E=t?Symbol.for("react.responder"):60118,D=t?Symbol.for("react.scope"):60119;function w($){return typeof $=="string"||typeof $=="function"||$===a||$===f||$===i||$===o||$===p||$===m||typeof $=="object"&&$!==null&&($.$$typeof===v||$.$$typeof===g||$.$$typeof===s||$.$$typeof===c||$.$$typeof===h||$.$$typeof===C||$.$$typeof===E||$.$$typeof===D||$.$$typeof===b)}B(w,"isValidElementType");function x($){if(typeof $=="object"&&$!==null){var rt=$.$$typeof;switch(rt){case r:var xt=$.type;switch(xt){case d:case f:case a:case i:case o:case p:return xt;default:var Pr=xt&&xt.$$typeof;switch(Pr){case c:case h:case v:case g:case s:return Pr;default:return rt}}case n:return rt}}}B(x,"typeOf");var S=d,F=f,A=c,_=s,R=r,I=h,T=a,L=v,P=g,M=n,N=i,q=o,W=p,G=!1;function Z($){return G||(G=!0,console.warn("The ReactIs.isAsyncMode() alias has been deprecated, and will be removed in React 17+. Update your code to use ReactIs.isConcurrentMode() instead. It has the exact same API.")),te($)||x($)===d}B(Z,"isAsyncMode");function te($){return x($)===f}B(te,"isConcurrentMode");function ne($){return x($)===c}B(ne,"isContextConsumer");function X($){return x($)===s}B(X,"isContextProvider");function le($){return typeof $=="object"&&$!==null&&$.$$typeof===r}B(le,"isElement");function H($){return x($)===h}B(H,"isForwardRef");function J($){return x($)===a}B(J,"isFragment");function re($){return x($)===v}B(re,"isLazy");function fe($){return x($)===g}B(fe,"isMemo");function xe($){return x($)===n}B(xe,"isPortal");function Ct($){return x($)===i}B(Ct,"isProfiler");function je($){return x($)===o}B(je,"isStrictMode");function tt($){return x($)===p}B(tt,"isSuspense"),e.AsyncMode=S,e.ConcurrentMode=F,e.ContextConsumer=A,e.ContextProvider=_,e.Element=R,e.ForwardRef=I,e.Fragment=T,e.Lazy=L,e.Memo=P,e.Portal=M,e.Profiler=N,e.StrictMode=q,e.Suspense=W,e.isAsyncMode=Z,e.isConcurrentMode=te,e.isContextConsumer=ne,e.isContextProvider=X,e.isElement=le,e.isForwardRef=H,e.isFragment=J,e.isLazy=re,e.isMemo=fe,e.isPortal=xe,e.isProfiler=Ct,e.isStrictMode=je,e.isSuspense=tt,e.isValidElementType=w,e.typeOf=x})()}),J9=bs((e,t)=>{t.exports=Z9()}),o3=bs((e,t)=>{var r=J9(),n={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},a={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},o={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},i={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},s={};s[r.ForwardRef]=o,s[r.Memo]=i;function c(b){return r.isMemo(b)?i:s[b.$$typeof]||n}B(c,"getStatics");var d=Object.defineProperty,f=Object.getOwnPropertyNames,h=Object.getOwnPropertySymbols,p=Object.getOwnPropertyDescriptor,m=Object.getPrototypeOf,g=Object.prototype;function v(b,C,E){if(typeof C!="string"){if(g){var D=m(C);D&&D!==g&&v(b,D,E)}var w=f(C);h&&(w=w.concat(h(C)));for(var x=c(b),S=c(C),F=0;F{(function(r){if(typeof e=="object"&&typeof t<"u")t.exports=r();else if(typeof define=="function"&&define.amd)define([],r);else{var n;typeof window<"u"?n=window:typeof global<"u"?n=global:typeof self<"u"?n=self:n=this,n.memoizerific=r()}})(function(){return B(function r(n,a,o){function i(d,f){if(!a[d]){if(!n[d]){var h=typeof Ei=="function"&&Ei;if(!f&&h)return h(d,!0);if(s)return s(d,!0);var p=new Error("Cannot find module '"+d+"'");throw p.code="MODULE_NOT_FOUND",p}var m=a[d]={exports:{}};n[d][0].call(m.exports,function(g){var v=n[d][1][g];return i(v||g)},m,m.exports,r,n,a,o)}return a[d].exports}B(i,"s");for(var s=typeof Ei=="function"&&Ei,c=0;c=0)return this.lastItem=this.list[s],this.list[s].val},o.prototype.set=function(i,s){var c;return this.lastItem&&this.isEqual(this.lastItem.key,i)?(this.lastItem.val=s,this):(c=this.indexOf(i),c>=0?(this.lastItem=this.list[c],this.list[c].val=s,this):(this.lastItem={key:i,val:s},this.list.push(this.lastItem),this.size++,this))},o.prototype.delete=function(i){var s;if(this.lastItem&&this.isEqual(this.lastItem.key,i)&&(this.lastItem=void 0),s=this.indexOf(i),s>=0)return this.size--,this.list.splice(s,1)[0]},o.prototype.has=function(i){var s;return this.lastItem&&this.isEqual(this.lastItem.key,i)?!0:(s=this.indexOf(i),s>=0?(this.lastItem=this.list[s],!0):!1)},o.prototype.forEach=function(i,s){var c;for(c=0;c0&&(E[C]={cacheItem:g,arg:arguments[C]},D?i(h,E):h.push(E),h.length>d&&s(h.shift())),m.wasMemoized=D,m.numArgs=C+1,b},"memoizerific");return m.limit=d,m.wasMemoized=!1,m.cache=f,m.lru=h,m}};function i(d,f){var h=d.length,p=f.length,m,g,v;for(g=0;g=0&&(h=d[m],p=h.cacheItem.get(h.arg),!p||!p.size);m--)h.cacheItem.delete(h.arg)}B(s,"removeCachedResult");function c(d,f){return d===f||d!==d&&f!==f}B(c,"isEqual")},{"map-or-similar":1}]},{},[3])(3)})});function Ht(){return Ht=Object.assign?Object.assign.bind():function(e){for(var t=1;t0?we(Sa,--$e):0,sa--,de===10&&(sa=1,Es--),de}B(m3,"prev");function Oe(){return de=$e2||ua(de)>3?"":" "}B(g3,"whitespace");function v3(e,t){for(;--t&&Oe()&&!(de<48||de>102||de>57&&de<65||de>70&&de<97););return Fa(e,xo()+(t<6&&ft()==32&&Oe()==32))}B(v3,"escaping");function Fl(e){for(;Oe();)switch(de){case e:return $e;case 34:case 39:e!==34&&e!==39&&Fl(de);break;case 40:e===41&&Fl(e);break;case 92:Oe();break}return $e}B(Fl,"delimiter");function y3(e,t){for(;Oe()&&e+de!==57&&!(e+de===84&&ft()===47););return"/*"+Fa(t,$e-1)+"*"+ws(e===47?e:Oe())}B(y3,"commenter");function b3(e){for(;!ua(ft());)Oe();return Fa(e,$e)}B(b3,"identifier");function w3(e){return ip(Fo("",null,null,null,[""],e=op(e),0,[0],e))}B(w3,"compile");function Fo(e,t,r,n,a,o,i,s,c){for(var d=0,f=0,h=i,p=0,m=0,g=0,v=1,b=1,C=1,E=0,D="",w=a,x=o,S=n,F=D;b;)switch(g=E,E=Oe()){case 40:if(g!=108&&we(F,h-1)==58){Sl(F+=Q(So(E),"&","&\f"),"&\f")!=-1&&(C=-1);break}case 34:case 39:case 91:F+=So(E);break;case 9:case 10:case 13:case 32:F+=g3(g);break;case 92:F+=v3(xo()-1,7);continue;case 47:switch(ft()){case 42:case 47:so(D3(y3(Oe(),xo()),t,r),c);break;default:F+="/"}break;case 123*v:s[d++]=st(F)*C;case 125*v:case 59:case 0:switch(E){case 0:case 125:b=0;case 59+f:C==-1&&(F=Q(F,/\f/g,"")),m>0&&st(F)-h&&so(m>32?Y0(F+";",n,r,h-1):Y0(Q(F," ","")+";",n,r,h-2),c);break;case 59:F+=";";default:if(so(S=K0(F,t,r,d,f,a,s,D,w=[],x=[],h),o),E===123)if(f===0)Fo(F,t,S,S,w,o,h,s,x);else switch(p===99&&we(F,3)===110?100:p){case 100:case 108:case 109:case 115:Fo(e,S,S,n&&so(K0(e,S,S,0,0,a,s,D,a,w=[],h),x),a,x,h,s,n?w:x);break;default:Fo(F,S,S,S,[""],x,0,s,x)}}d=f=m=0,v=C=1,D=F="",h=i;break;case 58:h=1+st(F),m=g;default:if(v<1){if(E==123)--v;else if(E==125&&v++==0&&m3()==125)continue}switch(F+=ws(E),E*v){case 38:C=f>0?1:(F+="\f",-1);break;case 44:s[d++]=(st(F)-1)*C,C=1;break;case 64:ft()===45&&(F+=So(Oe())),p=ft(),f=h=st(D=F+=b3(xo())),E++;break;case 45:g===45&&st(F)==2&&(v=0)}}return o}B(Fo,"parse");function K0(e,t,r,n,a,o,i,s,c,d,f){for(var h=a-1,p=a===0?o:[""],m=Ds(p),g=0,v=0,b=0;g0?p[C]+" "+E:Q(E,/&\f/g,p[C])))&&(c[b++]=D);return Zo(e,t,r,a===0?rp:s,c,d,f)}B(K0,"ruleset");function D3(e,t,r){return Zo(e,t,r,s3,ws(h3()),la(e,2,-2),0)}B(D3,"comment");function Y0(e,t,r,n){return Zo(e,t,r,np,la(e,0,n),la(e,n+1,-1),n)}B(Y0,"declaration");function sn(e,t){for(var r="",n=Ds(e),a=0;a6)switch(we(e,t+1)){case 109:if(we(e,t+4)!==45)break;case 102:return Q(e,/(.+:)(.+)-([^]+)/,"$1"+ee+"$2-$3$1"+xl+(we(e,t+3)==108?"$3":"$2-$3"))+e;case 115:return~Sl(e,"stretch")?sp(Q(e,"stretch","fill-available"),t)+e:e}break;case 4949:if(we(e,t+1)!==115)break;case 6444:switch(we(e,st(e)-3-(~Sl(e,"!important")&&10))){case 107:return Q(e,":",":"+ee)+e;case 101:return Q(e,/(.+:)([^;!]+)(;|!.+)?/,"$1"+ee+(we(e,14)===45?"inline-":"")+"box$3$1"+ee+"$2$3$1"+_e+"$2box$3")+e}break;case 5936:switch(we(e,t+11)){case 114:return ee+e+_e+Q(e,/[svh]\w+-[tblr]{2}/,"tb")+e;case 108:return ee+e+_e+Q(e,/[svh]\w+-[tblr]{2}/,"tb-rl")+e;case 45:return ee+e+_e+Q(e,/[svh]\w+-[tblr]{2}/,"lr")+e}return ee+e+_e+e+e}return e}B(sp,"prefix");var ux=B(function(e,t,r,n){if(e.length>-1&&!e.return)switch(e.type){case np:e.return=sp(e.value,e.length);break;case u3:return sn([Nn(e,{value:Q(e.value,"@","@"+ee)})],n);case rp:if(e.length)return p3(e.props,function(a){switch(d3(a,/(::plac\w+|:read-\w+)/)){case":read-only":case":read-write":return sn([Nn(e,{props:[Q(a,/:(read-\w+)/,":"+xl+"$1")]})],n);case"::placeholder":return sn([Nn(e,{props:[Q(a,/:(plac\w+)/,":"+ee+"input-$1")]}),Nn(e,{props:[Q(a,/:(plac\w+)/,":"+xl+"$1")]}),Nn(e,{props:[Q(a,/:(plac\w+)/,_e+"input-$1")]})],n)}return""})}},"prefixer"),cx=[ux],dx=B(function(e){var t=e.key;if(t==="css"){var r=document.querySelectorAll("style[data-emotion]:not([data-s])");Array.prototype.forEach.call(r,function(g){var v=g.getAttribute("data-emotion");v.indexOf(" ")!==-1&&(document.head.appendChild(g),g.setAttribute("data-s",""))})}var n=e.stylisPlugins||cx,a={},o,i=[];o=e.container||document.head,Array.prototype.forEach.call(document.querySelectorAll('style[data-emotion^="'+t+' "]'),function(g){for(var v=g.getAttribute("data-emotion").split(" "),b=1;b=4;++n,a-=4)r=e.charCodeAt(n)&255|(e.charCodeAt(++n)&255)<<8|(e.charCodeAt(++n)&255)<<16|(e.charCodeAt(++n)&255)<<24,r=(r&65535)*1540483477+((r>>>16)*59797<<16),r^=r>>>24,t=(r&65535)*1540483477+((r>>>16)*59797<<16)^(t&65535)*1540483477+((t>>>16)*59797<<16);switch(a){case 3:t^=(e.charCodeAt(n+2)&255)<<16;case 2:t^=(e.charCodeAt(n+1)&255)<<8;case 1:t^=e.charCodeAt(n)&255,t=(t&65535)*1540483477+((t>>>16)*59797<<16)}return t^=t>>>13,t=(t&65535)*1540483477+((t>>>16)*59797<<16),((t^t>>>15)>>>0).toString(36)}B(F3,"murmur2");var mx={animationIterationCount:1,aspectRatio:1,borderImageOutset:1,borderImageSlice:1,borderImageWidth:1,boxFlex:1,boxFlexGroup:1,boxOrdinalGroup:1,columnCount:1,columns:1,flex:1,flexGrow:1,flexPositive:1,flexShrink:1,flexNegative:1,flexOrder:1,gridRow:1,gridRowEnd:1,gridRowSpan:1,gridRowStart:1,gridColumn:1,gridColumnEnd:1,gridColumnSpan:1,gridColumnStart:1,msGridRow:1,msGridRowSpan:1,msGridColumn:1,msGridColumnSpan:1,fontWeight:1,lineHeight:1,opacity:1,order:1,orphans:1,scale:1,tabSize:1,widows:1,zIndex:1,zoom:1,WebkitLineClamp:1,fillOpacity:1,floodOpacity:1,stopOpacity:1,strokeDasharray:1,strokeDashoffset:1,strokeMiterlimit:1,strokeOpacity:1,strokeWidth:1},gx=/[A-Z]|^ms/g,vx=/_EMO_([^_]+?)_([^]*?)_EMO_/g,A3=B(function(e){return e.charCodeAt(1)===45},"isCustomProperty"),Ph=B(function(e){return e!=null&&typeof e!="boolean"},"isProcessableValue"),Su=lp(function(e){return A3(e)?e:e.replace(gx,"-$&").toLowerCase()}),Nh=B(function(e,t){switch(e){case"animation":case"animationName":if(typeof t=="string")return t.replace(vx,function(r,n,a){return zt={name:n,styles:a,next:zt},n})}return mx[e]!==1&&!A3(e)&&typeof t=="number"&&t!==0?t+"px":t},"processStyleValue");function ca(e,t,r){if(r==null)return"";var n=r;if(n.__emotion_styles!==void 0)return n;switch(typeof r){case"boolean":return"";case"object":{var a=r;if(a.anim===1)return zt={name:a.name,styles:a.styles,next:zt},a.name;var o=r;if(o.styles!==void 0){var i=o.next;if(i!==void 0)for(;i!==void 0;)zt={name:i.name,styles:i.styles,next:zt},i=i.next;var s=o.styles+";";return s}return k3(e,t,r)}case"function":{if(e!==void 0){var c=zt,d=r(e);return zt=c,ca(e,t,d)}break}}var f=r;if(t==null)return f;var h=t[f];return h!==void 0?h:f}B(ca,"handleInterpolation");function k3(e,t,r){var n="";if(Array.isArray(r))for(var a=0;a96?_x:Bx},"getDefaultShouldForwardProp"),Vh=B(function(e,t,r){var n;if(t){var a=t.shouldForwardProp;n=e.__emotion_forwardProp&&a?function(o){return e.__emotion_forwardProp(o)&&a(o)}:a}return typeof n!="function"&&r&&(n=e.__emotion_forwardProp),n},"composeShouldForwardProps"),Rx=B(function(e){var t=e.cache,r=e.serialized,n=e.isStringTag;return up(t,r,n),_3(function(){return S3(t,r,n)}),null},"Insertion"),Ix=B(function e(t,r){var n=t.__emotion_real===t,a=n&&t.__emotion_base||t,o,i;r!==void 0&&(o=r.label,i=r.target);var s=Vh(t,r,n),c=s||jh(a),d=!c("as");return function(){var f=arguments,h=n&&t.__emotion_styles!==void 0?t.__emotion_styles.slice(0):[];if(o!==void 0&&h.push("label:"+o+";"),f[0]==null||f[0].raw===void 0)h.push.apply(h,f);else{var p=f[0];h.push(p[0]);for(var m=f.length,g=1;g1?a-1:0),i=1;i=0&&a<1?(s=o,c=i):a>=1&&a<2?(s=i,c=o):a>=2&&a<3?(c=o,d=i):a>=3&&a<4?(c=i,d=o):a>=4&&a<5?(s=i,d=o):a>=5&&a<6&&(s=o,d=i);var f=r-o/2,h=s+f,p=c+f,m=d+f;return n(h,p,m)}B(fa,"hslToRgb");var Uh={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"00ffff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"0000ff",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"00ffff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"ff00ff",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"639",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"};function $3(e){if(typeof e!="string")return e;var t=e.toLowerCase();return Uh[t]?"#"+Uh[t]:e}B($3,"nameToHex");var Lx=/^#[a-fA-F0-9]{6}$/,Mx=/^#[a-fA-F0-9]{8}$/,Ox=/^#[a-fA-F0-9]{3}$/,Px=/^#[a-fA-F0-9]{4}$/,Fu=/^rgb\(\s*(\d{1,3})\s*(?:,)?\s*(\d{1,3})\s*(?:,)?\s*(\d{1,3})\s*\)$/i,Nx=/^rgb(?:a)?\(\s*(\d{1,3})\s*(?:,)?\s*(\d{1,3})\s*(?:,)?\s*(\d{1,3})\s*(?:,|\/)\s*([-+]?\d*[.]?\d+[%]?)\s*\)$/i,$x=/^hsl\(\s*(\d{0,3}[.]?[0-9]+(?:deg)?)\s*(?:,)?\s*(\d{1,3}[.]?[0-9]?)%\s*(?:,)?\s*(\d{1,3}[.]?[0-9]?)%\s*\)$/i,Hx=/^hsl(?:a)?\(\s*(\d{0,3}[.]?[0-9]+(?:deg)?)\s*(?:,)?\s*(\d{1,3}[.]?[0-9]?)%\s*(?:,)?\s*(\d{1,3}[.]?[0-9]?)%\s*(?:,|\/)\s*([-+]?\d*[.]?\d+[%]?)\s*\)$/i;function Jo(e){if(typeof e!="string")throw new Lt(3);var t=$3(e);if(t.match(Lx))return{red:parseInt(""+t[1]+t[2],16),green:parseInt(""+t[3]+t[4],16),blue:parseInt(""+t[5]+t[6],16)};if(t.match(Mx)){var r=parseFloat((parseInt(""+t[7]+t[8],16)/255).toFixed(2));return{red:parseInt(""+t[1]+t[2],16),green:parseInt(""+t[3]+t[4],16),blue:parseInt(""+t[5]+t[6],16),alpha:r}}if(t.match(Ox))return{red:parseInt(""+t[1]+t[1],16),green:parseInt(""+t[2]+t[2],16),blue:parseInt(""+t[3]+t[3],16)};if(t.match(Px)){var n=parseFloat((parseInt(""+t[4]+t[4],16)/255).toFixed(2));return{red:parseInt(""+t[1]+t[1],16),green:parseInt(""+t[2]+t[2],16),blue:parseInt(""+t[3]+t[3],16),alpha:n}}var a=Fu.exec(t);if(a)return{red:parseInt(""+a[1],10),green:parseInt(""+a[2],10),blue:parseInt(""+a[3],10)};var o=Nx.exec(t.substring(0,50));if(o)return{red:parseInt(""+o[1],10),green:parseInt(""+o[2],10),blue:parseInt(""+o[3],10),alpha:parseFloat(""+o[4])>1?parseFloat(""+o[4])/100:parseFloat(""+o[4])};var i=$x.exec(t);if(i){var s=parseInt(""+i[1],10),c=parseInt(""+i[2],10)/100,d=parseInt(""+i[3],10)/100,f="rgb("+fa(s,c,d)+")",h=Fu.exec(f);if(!h)throw new Lt(4,t,f);return{red:parseInt(""+h[1],10),green:parseInt(""+h[2],10),blue:parseInt(""+h[3],10)}}var p=Hx.exec(t.substring(0,50));if(p){var m=parseInt(""+p[1],10),g=parseInt(""+p[2],10)/100,v=parseInt(""+p[3],10)/100,b="rgb("+fa(m,g,v)+")",C=Fu.exec(b);if(!C)throw new Lt(4,t,b);return{red:parseInt(""+C[1],10),green:parseInt(""+C[2],10),blue:parseInt(""+C[3],10),alpha:parseFloat(""+p[4])>1?parseFloat(""+p[4])/100:parseFloat(""+p[4])}}throw new Lt(5)}B(Jo,"parseToRgb");function H3(e){var t=e.red/255,r=e.green/255,n=e.blue/255,a=Math.max(t,r,n),o=Math.min(t,r,n),i=(a+o)/2;if(a===o)return e.alpha!==void 0?{hue:0,saturation:0,lightness:i,alpha:e.alpha}:{hue:0,saturation:0,lightness:i};var s,c=a-o,d=i>.5?c/(2-a-o):c/(a+o);switch(a){case t:s=(r-n)/c+(r=1?Mo(e,t,r):"rgba("+fa(e,t,r)+","+n+")";if(typeof e=="object"&&t===void 0&&r===void 0&&n===void 0)return e.alpha>=1?Mo(e.hue,e.saturation,e.lightness):"rgba("+fa(e.hue,e.saturation,e.lightness)+","+e.alpha+")";throw new Lt(2)}B(U3,"hsla");function _l(e,t,r){if(typeof e=="number"&&typeof t=="number"&&typeof r=="number")return J0("#"+vr(e)+vr(t)+vr(r));if(typeof e=="object"&&t===void 0&&r===void 0)return J0("#"+vr(e.red)+vr(e.green)+vr(e.blue));throw new Lt(6)}B(_l,"rgb");function ha(e,t,r,n){if(typeof e=="string"&&typeof t=="number"){var a=Jo(e);return"rgba("+a.red+","+a.green+","+a.blue+","+t+")"}else{if(typeof e=="number"&&typeof t=="number"&&typeof r=="number"&&typeof n=="number")return n>=1?_l(e,t,r):"rgba("+e+","+t+","+r+","+n+")";if(typeof e=="object"&&t===void 0&&r===void 0&&n===void 0)return e.alpha>=1?_l(e.red,e.green,e.blue):"rgba("+e.red+","+e.green+","+e.blue+","+e.alpha+")"}throw new Lt(7)}B(ha,"rgba");var Vx=B(function(e){return typeof e.red=="number"&&typeof e.green=="number"&&typeof e.blue=="number"&&(typeof e.alpha!="number"||typeof e.alpha>"u")},"isRgb"),Ux=B(function(e){return typeof e.red=="number"&&typeof e.green=="number"&&typeof e.blue=="number"&&typeof e.alpha=="number"},"isRgba"),qx=B(function(e){return typeof e.hue=="number"&&typeof e.saturation=="number"&&typeof e.lightness=="number"&&(typeof e.alpha!="number"||typeof e.alpha>"u")},"isHsl"),Wx=B(function(e){return typeof e.hue=="number"&&typeof e.saturation=="number"&&typeof e.lightness=="number"&&typeof e.alpha=="number"},"isHsla");function hp(e){if(typeof e!="object")throw new Lt(8);if(Ux(e))return ha(e);if(Vx(e))return _l(e);if(Wx(e))return U3(e);if(qx(e))return V3(e);throw new Lt(8)}B(hp,"toColorString");function mp(e,t,r){return B(function(){var n=r.concat(Array.prototype.slice.call(arguments));return n.length>=t?e.apply(this,n):mp(e,t,n)},"fn")}B(mp,"curried");function Xo(e){return mp(e,e.length,[])}B(Xo,"curry");function Qo(e,t,r){return Math.max(e,Math.min(t,r))}B(Qo,"guard");function q3(e,t){if(t==="transparent")return t;var r=fp(t);return hp(Ht({},r,{lightness:Qo(0,1,r.lightness-parseFloat(e))}))}B(q3,"darken");var Gx=Xo(q3),Kx=Gx;function W3(e,t){if(t==="transparent")return t;var r=fp(t);return hp(Ht({},r,{lightness:Qo(0,1,r.lightness+parseFloat(e))}))}B(W3,"lighten");var Yx=Xo(W3),Zx=Yx;function G3(e,t){if(t==="transparent")return t;var r=Jo(t),n=typeof r.alpha=="number"?r.alpha:1,a=Ht({},r,{alpha:Qo(0,1,(n*100+parseFloat(e)*100)/100)});return ha(a)}B(G3,"opacify");var Jx=Xo(G3),Xx=Jx;function K3(e,t){if(t==="transparent")return t;var r=Jo(t),n=typeof r.alpha=="number"?r.alpha:1,a=Ht({},r,{alpha:Qo(0,1,+(n*100-parseFloat(e)*100).toFixed(2)/100)});return ha(a)}B(K3,"transparentize");var Qx=Xo(K3),eS=Qx,V={secondary:"#029CFD",tertiary:"#FAFBFC",ancillary:"#22a699",orange:"#FC521F",gold:"#FFAE00",green:"#66BF3C",seafoam:"#37D5D3",purple:"#6F2CAC",ultraviolet:"#2A0481",lightest:"#FFFFFF",lighter:"#F7FAFC",light:"#EEF3F6",mediumlight:"#ECF4F9",medium:"#D9E8F2",mediumdark:"#73828C",dark:"#5C6870",darker:"#454E54",darkest:"#2E3438",border:"hsla(203, 50%, 30%, 0.15)",positive:"#66BF3C",negative:"#FF4400",warning:"#E69D00",critical:"#FFFFFF",positiveText:"#448028",negativeText:"#D43900",warningText:"#A15C20"},yr={app:"#F6F9FC",gridCellSize:10,hoverable:eS(.9,V.secondary),positive:"#E1FFD4",negative:"#FEDED2",warning:"#FFF5CF",critical:"#FF4400"},Mt={fonts:{base:['"Nunito Sans"',"-apple-system",'".SFNSText-Regular"','"San Francisco"',"BlinkMacSystemFont",'"Segoe UI"','"Helvetica Neue"',"Helvetica","Arial","sans-serif"].join(", "),mono:["ui-monospace","Menlo","Monaco",'"Roboto Mono"','"Oxygen Mono"','"Ubuntu Monospace"','"Source Code Pro"','"Droid Sans Mono"','"Courier New"',"monospace"].join(", ")},weight:{regular:400,bold:700},size:{s1:12,s2:14,s3:16,m1:20,m2:24,m3:28,l1:32,l2:40,l3:48,code:90}},Y3=tp(X9(),1),tS=(0,Y3.default)(1)(({typography:e})=>({body:{fontFamily:e.fonts.base,fontSize:e.size.s3,margin:0,WebkitFontSmoothing:"antialiased",MozOsxFontSmoothing:"grayscale",WebkitTapHighlightColor:"rgba(0, 0, 0, 0)",WebkitOverflowScrolling:"touch"},"*":{boxSizing:"border-box"},"h1, h2, h3, h4, h5, h6":{fontWeight:e.weight.regular,margin:0,padding:0},"button, input, textarea, select":{fontFamily:"inherit",fontSize:"inherit",boxSizing:"border-box"},sub:{fontSize:"0.8em",bottom:"-0.2em"},sup:{fontSize:"0.8em",top:"-0.2em"},"b, strong":{fontWeight:e.weight.bold},hr:{border:"none",borderTop:"1px solid silver",clear:"both",marginBottom:"1.25rem"},code:{fontFamily:e.fonts.mono,WebkitFontSmoothing:"antialiased",MozOsxFontSmoothing:"grayscale",display:"inline-block",paddingLeft:2,paddingRight:2,verticalAlign:"baseline",color:"inherit"},pre:{fontFamily:e.fonts.mono,WebkitFontSmoothing:"antialiased",MozOsxFontSmoothing:"grayscale",lineHeight:"18px",padding:"11px 1rem",whiteSpace:"pre-wrap",color:"inherit",borderRadius:3,margin:"1rem 0"}}));(0,Y3.default)(1)(({color:e,background:t,typography:r})=>{let n=tS({typography:r});return{...n,body:{...n.body,color:e.defaultText,background:t.app,overflow:"hidden"},hr:{...n.hr,borderTop:`1px solid ${e.border}`}}});var rS={base:"dark",colorPrimary:"#FF4785",colorSecondary:"#029CFD",appBg:"#222425",appContentBg:"#1B1C1D",appPreviewBg:V.lightest,appBorderColor:"rgba(255,255,255,.1)",appBorderRadius:4,fontBase:Mt.fonts.base,fontCode:Mt.fonts.mono,textColor:"#C9CDCF",textInverseColor:"#222425",textMutedColor:"#798186",barTextColor:V.mediumdark,barHoverColor:V.secondary,barSelectedColor:V.secondary,barBg:"#292C2E",buttonBg:"#222425",buttonBorder:"rgba(255,255,255,.1)",booleanBg:"#222425",booleanSelectedBg:"#2E3438",inputBg:"#1B1C1D",inputBorder:"rgba(255,255,255,.1)",inputTextColor:V.lightest,inputBorderRadius:4},nS=rS,aS={base:"light",colorPrimary:"#FF4785",colorSecondary:"#029CFD",appBg:yr.app,appContentBg:V.lightest,appPreviewBg:V.lightest,appBorderColor:V.border,appBorderRadius:4,fontBase:Mt.fonts.base,fontCode:Mt.fonts.mono,textColor:V.darkest,textInverseColor:V.lightest,textMutedColor:V.dark,barTextColor:V.mediumdark,barHoverColor:V.secondary,barSelectedColor:V.secondary,barBg:V.lightest,buttonBg:yr.app,buttonBorder:V.medium,booleanBg:V.mediumlight,booleanSelectedBg:V.lightest,inputBg:V.lightest,inputBorder:V.border,inputTextColor:V.darkest,inputBorderRadius:4},Bl=aS,oS=(()=>{let e;return typeof window<"u"?e=window:typeof globalThis<"u"?e=globalThis:typeof global<"u"?e=global:typeof self<"u"?e=self:e={},e})();const{logger:iS}=__STORYBOOK_MODULE_CLIENT_LOGGER__;var{window:Au}=oS,lS=B(e=>({color:e}),"mkColor"),sS=B(e=>typeof e!="string"?(iS.warn(`Color passed to theme object should be a string. Instead ${e}(${typeof e}) was passed.`),!1):!0,"isColorString"),uS=B(e=>!/(gradient|var|calc)/.test(e),"isValidColorForPolished"),cS=B((e,t)=>e==="darken"?ha(`${Kx(1,t)}`,.95):e==="lighten"?ha(`${Zx(1,t)}`,.95):t,"applyPolished"),Z3=B(e=>t=>{if(!sS(t)||!uS(t))return t;try{return cS(e,t)}catch{return t}},"colorFactory"),Va=Z3("lighten");Z3("darken");var J3=B(()=>!Au||!Au.matchMedia?"light":Au.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light","getPreferredColorScheme"),X0={light:Bl,dark:nS,normal:Bl};J3();var dS={rubber:"cubic-bezier(0.175, 0.885, 0.335, 1.05)"},pS=wt` + from { + transform: rotate(0deg); + } + to { + transform: rotate(360deg); + } +`,X3=wt` + 0%, 100% { opacity: 1; } + 50% { opacity: .4; } +`,fS=wt` + 0% { transform: translateY(1px); } + 25% { transform: translateY(0px); } + 50% { transform: translateY(-3px); } + 100% { transform: translateY(1px); } +`,hS=wt` + 0%, 100% { transform:translate3d(0,0,0); } + 12.5%, 62.5% { transform:translate3d(-4px,0,0); } + 37.5%, 87.5% { transform: translate3d(4px,0,0); } +`,mS=Ss` + animation: ${X3} 1.5s ease-in-out infinite; + color: transparent; + cursor: progress; +`,gS=Ss` + transition: all 150ms ease-out; + transform: translate3d(0, 0, 0); + + &:hover { + transform: translate3d(0, -2px, 0); + } + + &:active { + transform: translate3d(0, 0, 0); + } +`,vS={rotate360:pS,glow:X3,float:fS,jiggle:hS,inlineGlow:mS,hoverable:gS},yS={BASE_FONT_FAMILY:"Menlo, monospace",BASE_FONT_SIZE:"11px",BASE_LINE_HEIGHT:1.2,BASE_BACKGROUND_COLOR:"rgb(36, 36, 36)",BASE_COLOR:"rgb(213, 213, 213)",OBJECT_PREVIEW_ARRAY_MAX_PROPERTIES:10,OBJECT_PREVIEW_OBJECT_MAX_PROPERTIES:5,OBJECT_NAME_COLOR:"rgb(227, 110, 236)",OBJECT_VALUE_NULL_COLOR:"rgb(127, 127, 127)",OBJECT_VALUE_UNDEFINED_COLOR:"rgb(127, 127, 127)",OBJECT_VALUE_REGEXP_COLOR:"rgb(233, 63, 59)",OBJECT_VALUE_STRING_COLOR:"rgb(233, 63, 59)",OBJECT_VALUE_SYMBOL_COLOR:"rgb(233, 63, 59)",OBJECT_VALUE_NUMBER_COLOR:"hsl(252, 100%, 75%)",OBJECT_VALUE_BOOLEAN_COLOR:"hsl(252, 100%, 75%)",OBJECT_VALUE_FUNCTION_PREFIX_COLOR:"rgb(85, 106, 242)",HTML_TAG_COLOR:"rgb(93, 176, 215)",HTML_TAGNAME_COLOR:"rgb(93, 176, 215)",HTML_TAGNAME_TEXT_TRANSFORM:"lowercase",HTML_ATTRIBUTE_NAME_COLOR:"rgb(155, 187, 220)",HTML_ATTRIBUTE_VALUE_COLOR:"rgb(242, 151, 102)",HTML_COMMENT_COLOR:"rgb(137, 137, 137)",HTML_DOCTYPE_COLOR:"rgb(192, 192, 192)",ARROW_COLOR:"rgb(145, 145, 145)",ARROW_MARGIN_RIGHT:3,ARROW_FONT_SIZE:12,ARROW_ANIMATION_DURATION:"0",TREENODE_FONT_FAMILY:"Menlo, monospace",TREENODE_FONT_SIZE:"11px",TREENODE_LINE_HEIGHT:1.2,TREENODE_PADDING_LEFT:12,TABLE_BORDER_COLOR:"rgb(85, 85, 85)",TABLE_TH_BACKGROUND_COLOR:"rgb(44, 44, 44)",TABLE_TH_HOVER_COLOR:"rgb(48, 48, 48)",TABLE_SORT_ICON_COLOR:"black",TABLE_DATA_BACKGROUND_IMAGE:"linear-gradient(rgba(255, 255, 255, 0), rgba(255, 255, 255, 0) 50%, rgba(51, 139, 255, 0.0980392) 50%, rgba(51, 139, 255, 0.0980392))",TABLE_DATA_BACKGROUND_SIZE:"128px 32px"},bS={BASE_FONT_FAMILY:"Menlo, monospace",BASE_FONT_SIZE:"11px",BASE_LINE_HEIGHT:1.2,BASE_BACKGROUND_COLOR:"white",BASE_COLOR:"black",OBJECT_PREVIEW_ARRAY_MAX_PROPERTIES:10,OBJECT_PREVIEW_OBJECT_MAX_PROPERTIES:5,OBJECT_NAME_COLOR:"rgb(136, 19, 145)",OBJECT_VALUE_NULL_COLOR:"rgb(128, 128, 128)",OBJECT_VALUE_UNDEFINED_COLOR:"rgb(128, 128, 128)",OBJECT_VALUE_REGEXP_COLOR:"rgb(196, 26, 22)",OBJECT_VALUE_STRING_COLOR:"rgb(196, 26, 22)",OBJECT_VALUE_SYMBOL_COLOR:"rgb(196, 26, 22)",OBJECT_VALUE_NUMBER_COLOR:"rgb(28, 0, 207)",OBJECT_VALUE_BOOLEAN_COLOR:"rgb(28, 0, 207)",OBJECT_VALUE_FUNCTION_PREFIX_COLOR:"rgb(13, 34, 170)",HTML_TAG_COLOR:"rgb(168, 148, 166)",HTML_TAGNAME_COLOR:"rgb(136, 18, 128)",HTML_TAGNAME_TEXT_TRANSFORM:"lowercase",HTML_ATTRIBUTE_NAME_COLOR:"rgb(153, 69, 0)",HTML_ATTRIBUTE_VALUE_COLOR:"rgb(26, 26, 166)",HTML_COMMENT_COLOR:"rgb(35, 110, 37)",HTML_DOCTYPE_COLOR:"rgb(192, 192, 192)",ARROW_COLOR:"#6e6e6e",ARROW_MARGIN_RIGHT:3,ARROW_FONT_SIZE:12,ARROW_ANIMATION_DURATION:"0",TREENODE_FONT_FAMILY:"Menlo, monospace",TREENODE_FONT_SIZE:"11px",TREENODE_LINE_HEIGHT:1.2,TREENODE_PADDING_LEFT:12,TABLE_BORDER_COLOR:"#aaa",TABLE_TH_BACKGROUND_COLOR:"#eee",TABLE_TH_HOVER_COLOR:"hsla(0, 0%, 90%, 1)",TABLE_SORT_ICON_COLOR:"#6e6e6e",TABLE_DATA_BACKGROUND_IMAGE:"linear-gradient(to bottom, white, white 50%, rgb(234, 243, 255) 50%, rgb(234, 243, 255))",TABLE_DATA_BACKGROUND_SIZE:"128px 32px"},wS=B(e=>Object.entries(e).reduce((t,[r,n])=>({...t,[r]:lS(n)}),{}),"convertColors"),DS=B(({colors:e,mono:t})=>{let r=wS(e);return{token:{fontFamily:t,WebkitFontSmoothing:"antialiased","&.tag":r.red3,"&.comment":{...r.green1,fontStyle:"italic"},"&.prolog":{...r.green1,fontStyle:"italic"},"&.doctype":{...r.green1,fontStyle:"italic"},"&.cdata":{...r.green1,fontStyle:"italic"},"&.string":r.red1,"&.url":r.cyan1,"&.symbol":r.cyan1,"&.number":r.cyan1,"&.boolean":r.cyan1,"&.variable":r.cyan1,"&.constant":r.cyan1,"&.inserted":r.cyan1,"&.atrule":r.blue1,"&.keyword":r.blue1,"&.attr-value":r.blue1,"&.punctuation":r.gray1,"&.operator":r.gray1,"&.function":r.gray1,"&.deleted":r.red2,"&.important":{fontWeight:"bold"},"&.bold":{fontWeight:"bold"},"&.italic":{fontStyle:"italic"},"&.class-name":r.cyan2,"&.selector":r.red3,"&.attr-name":r.red4,"&.property":r.red4,"&.regex":r.red4,"&.entity":r.red4,"&.directive.tag .tag":{background:"#ffff00",...r.gray1}},"language-json .token.boolean":r.blue1,"language-json .token.number":r.blue1,"language-json .token.property":r.cyan2,namespace:{opacity:.7}}},"create"),ES={green1:"#008000",red1:"#A31515",red2:"#9a050f",red3:"#800000",red4:"#ff0000",gray1:"#393A34",cyan1:"#36acaa",cyan2:"#2B91AF",blue1:"#0000ff",blue2:"#00009f"},CS={green1:"#7C7C7C",red1:"#92C379",red2:"#9a050f",red3:"#A8FF60",red4:"#96CBFE",gray1:"#EDEDED",cyan1:"#C6C5FE",cyan2:"#FFFFB6",blue1:"#B474DD",blue2:"#00009f"},xS=B(e=>({primary:e.colorPrimary,secondary:e.colorSecondary,tertiary:V.tertiary,ancillary:V.ancillary,orange:V.orange,gold:V.gold,green:V.green,seafoam:V.seafoam,purple:V.purple,ultraviolet:V.ultraviolet,lightest:V.lightest,lighter:V.lighter,light:V.light,mediumlight:V.mediumlight,medium:V.medium,mediumdark:V.mediumdark,dark:V.dark,darker:V.darker,darkest:V.darkest,border:V.border,positive:V.positive,negative:V.negative,warning:V.warning,critical:V.critical,defaultText:e.textColor||V.darkest,inverseText:e.textInverseColor||V.lightest,positiveText:V.positiveText,negativeText:V.negativeText,warningText:V.warningText}),"createColors"),Q0=B((e=X0[J3()])=>{let{base:t,colorPrimary:r,colorSecondary:n,appBg:a,appContentBg:o,appPreviewBg:i,appBorderColor:s,appBorderRadius:c,fontBase:d,fontCode:f,textColor:h,textInverseColor:p,barTextColor:m,barHoverColor:g,barSelectedColor:v,barBg:b,buttonBg:C,buttonBorder:E,booleanBg:D,booleanSelectedBg:w,inputBg:x,inputBorder:S,inputTextColor:F,inputBorderRadius:A,brandTitle:_,brandUrl:R,brandImage:I,brandTarget:T,gridCellSize:L,...P}=e;return{...P,base:t,color:xS(e),background:{app:a,bar:b,content:o,preview:i,gridCellSize:L||yr.gridCellSize,hoverable:yr.hoverable,positive:yr.positive,negative:yr.negative,warning:yr.warning,critical:yr.critical},typography:{fonts:{base:d,mono:f},weight:Mt.weight,size:Mt.size},animation:vS,easing:dS,input:{background:x,border:S,borderRadius:A,color:F},button:{background:C||x,border:E||S},boolean:{background:D||S,selectedBackground:w||x},layoutMargin:10,appBorderColor:s,appBorderRadius:c,barTextColor:m,barHoverColor:g||n,barSelectedColor:v||n,barBg:b,brand:{title:_,url:R,image:I||(_?null:void 0),target:T},code:DS({colors:t==="light"?ES:CS,mono:f}),addonActionsTheme:{...t==="light"?bS:yS,BASE_FONT_FAMILY:f,BASE_FONT_SIZE:Mt.size.s2-1,BASE_LINE_HEIGHT:"18px",BASE_BACKGROUND_COLOR:"transparent",BASE_COLOR:h,ARROW_COLOR:Xx(.2,s),ARROW_MARGIN_RIGHT:4,ARROW_FONT_SIZE:8,TREENODE_FONT_FAMILY:f,TREENODE_FONT_SIZE:Mt.size.s2-1,TREENODE_LINE_HEIGHT:"18px",TREENODE_PADDING_LEFT:12}}},"convert");const{logger:SS}=__STORYBOOK_MODULE_CLIENT_LOGGER__;var FS=B(e=>Object.keys(e).length===0,"isEmpty"),ku=B(e=>e!=null&&typeof e=="object","isObject"),AS=B((e,...t)=>Object.prototype.hasOwnProperty.call(e,...t),"hasOwnProperty"),kS=B(()=>Object.create(null),"makeObjectWithoutPrototype"),Q3=B((e,t)=>e===t||!ku(e)||!ku(t)?{}:Object.keys(e).reduce((r,n)=>{if(AS(t,n)){let a=Q3(e[n],t[n]);return ku(a)&&FS(a)||(r[n]=a),r}return r[n]=void 0,r},kS()),"deletedDiff"),_S=Q3;function ey(e){for(var t=[],r=1;r{if(!e)return Q0(Bl);let t=_S(Bl,e);return Object.keys(t).length&&SS.warn(ey` + Your theme is missing properties, you should update your theme! + + theme-data missing: + `,t),Q0(e)},"ensure"),ed="/* emotion-disable-server-rendering-unsafe-selector-warning-please-do-not-use-this-the-warning-exists-for-a-reason */",Fs=F9();const ty=S9(Fs);var RS=Object.create,As=Object.defineProperty,IS=Object.getOwnPropertyDescriptor,zS=Object.getOwnPropertyNames,TS=Object.getPrototypeOf,LS=Object.prototype.hasOwnProperty,u=(e,t)=>As(e,"name",{value:t,configurable:!0}),Ci=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(t,r)=>(typeof require<"u"?require:t)[r]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')}),z=(e,t)=>()=>(e&&(t=e(e=0)),t),U=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Aa=(e,t)=>{for(var r in t)As(e,r,{get:t[r],enumerable:!0})},MS=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of zS(t))!LS.call(e,a)&&a!==r&&As(e,a,{get:()=>t[a],enumerable:!(n=IS(t,a))||n.enumerable});return e},Ce=(e,t,r)=>(r=e!=null?RS(TS(e)):{},MS(t||!e||!e.__esModule?As(r,"default",{value:e,enumerable:!0}):r,e));function ze(){return ze=Object.assign?Object.assign.bind():function(e){for(var t=1;t{u(ze,"_extends")});function ry(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}var OS=z(()=>{u(ry,"_assertThisInitialized")});function ma(e,t){return ma=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(r,n){return r.__proto__=n,r},ma(e,t)}var gp=z(()=>{u(ma,"_setPrototypeOf")});function Rl(e){return Rl=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},Rl(e)}var PS=z(()=>{u(Rl,"_getPrototypeOf")}),_s,vp=z(()=>{_s=(()=>{let e;return typeof window<"u"?e=window:typeof globalThis<"u"?e=globalThis:typeof global<"u"?e=global:typeof self<"u"?e=self:e={},e})()}),Bs=U((e,t)=>{(function(r){if(typeof e=="object"&&typeof t<"u")t.exports=r();else if(typeof define=="function"&&define.amd)define([],r);else{var n;typeof window<"u"?n=window:typeof global<"u"?n=global:typeof self<"u"?n=self:n=this,n.memoizerific=r()}})(function(){return u(function r(n,a,o){function i(d,f){if(!a[d]){if(!n[d]){var h=typeof Ci=="function"&&Ci;if(!f&&h)return h(d,!0);if(s)return s(d,!0);var p=new Error("Cannot find module '"+d+"'");throw p.code="MODULE_NOT_FOUND",p}var m=a[d]={exports:{}};n[d][0].call(m.exports,function(g){var v=n[d][1][g];return i(v||g)},m,m.exports,r,n,a,o)}return a[d].exports}u(i,"s");for(var s=typeof Ci=="function"&&Ci,c=0;c=0)return this.lastItem=this.list[s],this.list[s].val},o.prototype.set=function(i,s){var c;return this.lastItem&&this.isEqual(this.lastItem.key,i)?(this.lastItem.val=s,this):(c=this.indexOf(i),c>=0?(this.lastItem=this.list[c],this.list[c].val=s,this):(this.lastItem={key:i,val:s},this.list.push(this.lastItem),this.size++,this))},o.prototype.delete=function(i){var s;if(this.lastItem&&this.isEqual(this.lastItem.key,i)&&(this.lastItem=void 0),s=this.indexOf(i),s>=0)return this.size--,this.list.splice(s,1)[0]},o.prototype.has=function(i){var s;return this.lastItem&&this.isEqual(this.lastItem.key,i)?!0:(s=this.indexOf(i),s>=0?(this.lastItem=this.list[s],!0):!1)},o.prototype.forEach=function(i,s){var c;for(c=0;c0&&(E[C]={cacheItem:g,arg:arguments[C]},D?i(h,E):h.push(E),h.length>d&&s(h.shift())),m.wasMemoized=D,m.numArgs=C+1,b},"memoizerific");return m.limit=d,m.wasMemoized=!1,m.cache=f,m.lru=h,m}};function i(d,f){var h=d.length,p=f.length,m,g,v;for(g=0;g=0&&(h=d[m],p=h.cacheItem.get(h.arg),!p||!p.size);m--)h.cacheItem.delete(h.arg)}u(s,"removeCachedResult");function c(d,f){return d===f||d!==d&&f!==f}u(c,"isEqual")},{"map-or-similar":1}]},{},[3])(3)})});function Rs(e,t){if(e==null)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)>=0)continue;r[n]=e[n]}return r}var yp=z(()=>{u(Rs,"_objectWithoutPropertiesLoose")});function ny(e,t){if(e==null)return{};var r,n,a=Rs(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n=0||{}.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}var NS=z(()=>{yp(),u(ny,"_objectWithoutProperties")});function Il(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r{u(Il,"_arrayLikeToArray")});function oy(e){if(Array.isArray(e))return Il(e)}var $S=z(()=>{ay(),u(oy,"_arrayWithoutHoles")});function iy(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}var HS=z(()=>{u(iy,"_iterableToArray")});function ly(e,t){if(e){if(typeof e=="string")return Il(e,t);var r={}.toString.call(e).slice(8,-1);return r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set"?Array.from(e):r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Il(e,t):void 0}}var jS=z(()=>{ay(),u(ly,"_unsupportedIterableToArray")});function sy(){throw new TypeError(`Invalid attempt to spread non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var VS=z(()=>{u(sy,"_nonIterableSpread")});function uy(e){return oy(e)||iy(e)||ly(e)||sy()}var US=z(()=>{$S(),HS(),jS(),VS(),u(uy,"_toConsumableArray")});function ga(e){"@babel/helpers - typeof";return ga=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ga(e)}var cy=z(()=>{u(ga,"_typeof")});function dy(e,t){if(ga(e)!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t||"default");if(ga(n)!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var qS=z(()=>{cy(),u(dy,"toPrimitive")});function py(e){var t=dy(e,"string");return ga(t)=="symbol"?t:t+""}var WS=z(()=>{cy(),qS(),u(py,"toPropertyKey")});function bp(e,t,r){return(t=py(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var fy=z(()=>{WS(),u(bp,"_defineProperty")});function td(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function en(e){for(var t=1;t=4)return[e[0],e[1],e[2],e[3],"".concat(e[0],".").concat(e[1]),"".concat(e[0],".").concat(e[2]),"".concat(e[0],".").concat(e[3]),"".concat(e[1],".").concat(e[0]),"".concat(e[1],".").concat(e[2]),"".concat(e[1],".").concat(e[3]),"".concat(e[2],".").concat(e[0]),"".concat(e[2],".").concat(e[1]),"".concat(e[2],".").concat(e[3]),"".concat(e[3],".").concat(e[0]),"".concat(e[3],".").concat(e[1]),"".concat(e[3],".").concat(e[2]),"".concat(e[0],".").concat(e[1],".").concat(e[2]),"".concat(e[0],".").concat(e[1],".").concat(e[3]),"".concat(e[0],".").concat(e[2],".").concat(e[1]),"".concat(e[0],".").concat(e[2],".").concat(e[3]),"".concat(e[0],".").concat(e[3],".").concat(e[1]),"".concat(e[0],".").concat(e[3],".").concat(e[2]),"".concat(e[1],".").concat(e[0],".").concat(e[2]),"".concat(e[1],".").concat(e[0],".").concat(e[3]),"".concat(e[1],".").concat(e[2],".").concat(e[0]),"".concat(e[1],".").concat(e[2],".").concat(e[3]),"".concat(e[1],".").concat(e[3],".").concat(e[0]),"".concat(e[1],".").concat(e[3],".").concat(e[2]),"".concat(e[2],".").concat(e[0],".").concat(e[1]),"".concat(e[2],".").concat(e[0],".").concat(e[3]),"".concat(e[2],".").concat(e[1],".").concat(e[0]),"".concat(e[2],".").concat(e[1],".").concat(e[3]),"".concat(e[2],".").concat(e[3],".").concat(e[0]),"".concat(e[2],".").concat(e[3],".").concat(e[1]),"".concat(e[3],".").concat(e[0],".").concat(e[1]),"".concat(e[3],".").concat(e[0],".").concat(e[2]),"".concat(e[3],".").concat(e[1],".").concat(e[0]),"".concat(e[3],".").concat(e[1],".").concat(e[2]),"".concat(e[3],".").concat(e[2],".").concat(e[0]),"".concat(e[3],".").concat(e[2],".").concat(e[1]),"".concat(e[0],".").concat(e[1],".").concat(e[2],".").concat(e[3]),"".concat(e[0],".").concat(e[1],".").concat(e[3],".").concat(e[2]),"".concat(e[0],".").concat(e[2],".").concat(e[1],".").concat(e[3]),"".concat(e[0],".").concat(e[2],".").concat(e[3],".").concat(e[1]),"".concat(e[0],".").concat(e[3],".").concat(e[1],".").concat(e[2]),"".concat(e[0],".").concat(e[3],".").concat(e[2],".").concat(e[1]),"".concat(e[1],".").concat(e[0],".").concat(e[2],".").concat(e[3]),"".concat(e[1],".").concat(e[0],".").concat(e[3],".").concat(e[2]),"".concat(e[1],".").concat(e[2],".").concat(e[0],".").concat(e[3]),"".concat(e[1],".").concat(e[2],".").concat(e[3],".").concat(e[0]),"".concat(e[1],".").concat(e[3],".").concat(e[0],".").concat(e[2]),"".concat(e[1],".").concat(e[3],".").concat(e[2],".").concat(e[0]),"".concat(e[2],".").concat(e[0],".").concat(e[1],".").concat(e[3]),"".concat(e[2],".").concat(e[0],".").concat(e[3],".").concat(e[1]),"".concat(e[2],".").concat(e[1],".").concat(e[0],".").concat(e[3]),"".concat(e[2],".").concat(e[1],".").concat(e[3],".").concat(e[0]),"".concat(e[2],".").concat(e[3],".").concat(e[0],".").concat(e[1]),"".concat(e[2],".").concat(e[3],".").concat(e[1],".").concat(e[0]),"".concat(e[3],".").concat(e[0],".").concat(e[1],".").concat(e[2]),"".concat(e[3],".").concat(e[0],".").concat(e[2],".").concat(e[1]),"".concat(e[3],".").concat(e[1],".").concat(e[0],".").concat(e[2]),"".concat(e[3],".").concat(e[1],".").concat(e[2],".").concat(e[0]),"".concat(e[3],".").concat(e[2],".").concat(e[0],".").concat(e[1]),"".concat(e[3],".").concat(e[2],".").concat(e[1],".").concat(e[0])]}function my(e){if(e.length===0||e.length===1)return e;var t=e.join(".");return nl[t]||(nl[t]=hy(e)),nl[t]}function gy(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=arguments.length>2?arguments[2]:void 0,n=e.filter(function(o){return o!=="token"}),a=my(n);return a.reduce(function(o,i){return en(en({},o),r[i])},t)}function rd(e){return e.join(" ")}function vy(e,t){var r=0;return function(n){return r+=1,n.map(function(a,o){return Is({node:a,stylesheet:e,useInlineStyles:t,key:"code-segment-".concat(r,"-").concat(o)})})}}function Is(e){var t=e.node,r=e.stylesheet,n=e.style,a=n===void 0?{}:n,o=e.useInlineStyles,i=e.key,s=t.properties,c=t.type,d=t.tagName,f=t.value;if(c==="text")return f;if(d){var h=vy(r,o),p;if(!o)p=en(en({},s),{},{className:rd(s.className)});else{var m=Object.keys(r).reduce(function(C,E){return E.split(".").forEach(function(D){C.includes(D)||C.push(D)}),C},[]),g=s.className&&s.className.includes("token")?["token"]:[],v=s.className&&g.concat(s.className.filter(function(C){return!m.includes(C)}));p=en(en({},s),{},{className:rd(v)||void 0,style:gy(s.className,Object.assign({},s.style,a),r)})}var b=h(t.children);return y.createElement(d,ze({key:i},p),b)}}var nl,yy=z(()=>{ks(),fy(),u(td,"ownKeys"),u(en,"_objectSpread"),u(hy,"powerSetPermutations"),nl={},u(my,"getClassNameCombinations"),u(gy,"createStyleObject"),u(rd,"createClassNameString"),u(vy,"createChildren"),u(Is,"createElement")}),by,GS=z(()=>{by=u(function(e,t){var r=e.listLanguages();return r.indexOf(t)!==-1},"default")});function nd(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function ut(e){for(var t=1;t1&&arguments[1]!==void 0?arguments[1]:[],r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:[],n=0;n2&&arguments[2]!==void 0?arguments[2]:[];return Ao({children:x,lineNumber:S,lineNumberStyle:s,largestLineNumber:i,showInlineLineNumbers:a,lineProps:r,className:F,showLineNumbers:n,wrapLongLines:c})}u(g,"createWrappedLine");function v(x,S){if(n&&S&&a){var F=Dp(s,S,i);x.unshift(wp(S,F))}return x}u(v,"createUnwrappedLine");function b(x,S){var F=arguments.length>2&&arguments[2]!==void 0?arguments[2]:[];return t||F.length>0?g(x,S,F):v(x,S)}u(b,"createLine");for(var C=u(function(){var x=f[m],S=x.children[0].value,F=wy(S);if(F){var A=S.split(` +`);A.forEach(function(_,R){var I=n&&h.length+o,T={type:"text",value:"".concat(_,` +`)};if(R===0){var L=f.slice(p+1,m).concat(Ao({children:[T],className:x.properties.className})),P=b(L,I);h.push(P)}else if(R===A.length-1){var M=f[m+1]&&f[m+1].children&&f[m+1].children[0],N={type:"text",value:"".concat(_)};if(M){var q=Ao({children:[N],className:x.properties.className});f.splice(m+1,0,q)}else{var W=[N],G=b(W,I,x.properties.className);h.push(G)}}else{var Z=[T],te=b(Z,I,x.properties.className);h.push(te)}}),p=m}m++},"_loop");m{NS(),US(),fy(),yy(),GS(),ky=["language","children","style","customStyle","codeTagProps","useInlineStyles","showLineNumbers","showInlineLineNumbers","startingLineNumber","lineNumberContainerStyle","lineNumberStyle","wrapLines","wrapLongLines","lineProps","renderer","PreTag","CodeTag","code","astGenerator"],u(nd,"ownKeys"),u(ut,"_objectSpread"),_y=/\n/g,u(wy,"getNewLines"),u(Dy,"getAllLineNumbers"),u(Ey,"AllLineNumbers"),u(Cy,"getEmWidthOfNumber"),u(wp,"getInlineLineNumber"),u(Dp,"assembleLineNumberStyles"),u(Ao,"createLineElement"),u(Ep,"flattenCodeTree"),u(xy,"processLines"),u(Sy,"defaultRenderer"),u(Cp,"isHighlightJs"),u(Fy,"getCodeTree"),u(Ay,"default")}),YS=U((e,t)=>{t.exports=n;var r=Object.prototype.hasOwnProperty;function n(){for(var a={},o=0;o{t.exports=n;var r=n.prototype;r.space=null,r.normal={},r.property={};function n(a,o,i){this.property=a,this.normal=o,i&&(this.space=i)}u(n,"Schema")}),ZS=U((e,t)=>{var r=YS(),n=By();t.exports=a;function a(o){for(var i=o.length,s=[],c=[],d=-1,f,h;++d{t.exports=r;function r(n){return n.toLowerCase()}u(r,"normalize")}),Ry=U((e,t)=>{t.exports=n;var r=n.prototype;r.space=null,r.attribute=null,r.property=null,r.boolean=!1,r.booleanish=!1,r.overloadedBoolean=!1,r.number=!1,r.commaSeparated=!1,r.spaceSeparated=!1,r.commaOrSpaceSeparated=!1,r.mustUseProperty=!1,r.defined=!1;function n(a,o){this.property=a,this.attribute=o}u(n,"Info")}),Sp=U(e=>{var t=0;e.boolean=r(),e.booleanish=r(),e.overloadedBoolean=r(),e.number=r(),e.spaceSeparated=r(),e.commaSeparated=r(),e.commaOrSpaceSeparated=r();function r(){return Math.pow(2,++t)}u(r,"increment")}),Iy=U((e,t)=>{var r=Ry(),n=Sp();t.exports=i,i.prototype=new r,i.prototype.defined=!0;var a=["boolean","booleanish","overloadedBoolean","number","commaSeparated","spaceSeparated","commaOrSpaceSeparated"],o=a.length;function i(c,d,f,h){var p=-1,m;for(s(this,"space",h),r.call(this,c,d);++p{var r=xp(),n=By(),a=Iy();t.exports=o;function o(i){var s=i.space,c=i.mustUseProperty||[],d=i.attributes||{},f=i.properties,h=i.transform,p={},m={},g,v;for(g in f)v=new a(g,h(d,g),f[g],s),c.indexOf(g)!==-1&&(v.mustUseProperty=!0),p[g]=v,m[r(g)]=g,m[r(v.attribute)]=g;return new n(p,m,s)}u(o,"create")}),JS=U((e,t)=>{var r=ei();t.exports=r({space:"xlink",transform:n,properties:{xLinkActuate:null,xLinkArcRole:null,xLinkHref:null,xLinkRole:null,xLinkShow:null,xLinkTitle:null,xLinkType:null}});function n(a,o){return"xlink:"+o.slice(5).toLowerCase()}u(n,"xlinkTransform")}),XS=U((e,t)=>{var r=ei();t.exports=r({space:"xml",transform:n,properties:{xmlLang:null,xmlBase:null,xmlSpace:null}});function n(a,o){return"xml:"+o.slice(3).toLowerCase()}u(n,"xmlTransform")}),QS=U((e,t)=>{t.exports=r;function r(n,a){return a in n?n[a]:a}u(r,"caseSensitiveTransform")}),zy=U((e,t)=>{var r=QS();t.exports=n;function n(a,o){return r(a,o.toLowerCase())}u(n,"caseInsensitiveTransform")}),eF=U((e,t)=>{var r=ei(),n=zy();t.exports=r({space:"xmlns",attributes:{xmlnsxlink:"xmlns:xlink"},transform:n,properties:{xmlns:null,xmlnsXLink:null}})}),tF=U((e,t)=>{var r=Sp(),n=ei(),a=r.booleanish,o=r.number,i=r.spaceSeparated;t.exports=n({transform:s,properties:{ariaActiveDescendant:null,ariaAtomic:a,ariaAutoComplete:null,ariaBusy:a,ariaChecked:a,ariaColCount:o,ariaColIndex:o,ariaColSpan:o,ariaControls:i,ariaCurrent:null,ariaDescribedBy:i,ariaDetails:null,ariaDisabled:a,ariaDropEffect:i,ariaErrorMessage:null,ariaExpanded:a,ariaFlowTo:i,ariaGrabbed:a,ariaHasPopup:null,ariaHidden:a,ariaInvalid:null,ariaKeyShortcuts:null,ariaLabel:null,ariaLabelledBy:i,ariaLevel:o,ariaLive:null,ariaModal:a,ariaMultiLine:a,ariaMultiSelectable:a,ariaOrientation:null,ariaOwns:i,ariaPlaceholder:null,ariaPosInSet:o,ariaPressed:a,ariaReadOnly:a,ariaRelevant:null,ariaRequired:a,ariaRoleDescription:i,ariaRowCount:o,ariaRowIndex:o,ariaRowSpan:o,ariaSelected:a,ariaSetSize:o,ariaSort:null,ariaValueMax:o,ariaValueMin:o,ariaValueNow:o,ariaValueText:null,role:null}});function s(c,d){return d==="role"?d:"aria-"+d.slice(4).toLowerCase()}u(s,"ariaTransform")}),rF=U((e,t)=>{var r=Sp(),n=ei(),a=zy(),o=r.boolean,i=r.overloadedBoolean,s=r.booleanish,c=r.number,d=r.spaceSeparated,f=r.commaSeparated;t.exports=n({space:"html",attributes:{acceptcharset:"accept-charset",classname:"class",htmlfor:"for",httpequiv:"http-equiv"},transform:a,mustUseProperty:["checked","multiple","muted","selected"],properties:{abbr:null,accept:f,acceptCharset:d,accessKey:d,action:null,allow:null,allowFullScreen:o,allowPaymentRequest:o,allowUserMedia:o,alt:null,as:null,async:o,autoCapitalize:null,autoComplete:d,autoFocus:o,autoPlay:o,capture:o,charSet:null,checked:o,cite:null,className:d,cols:c,colSpan:null,content:null,contentEditable:s,controls:o,controlsList:d,coords:c|f,crossOrigin:null,data:null,dateTime:null,decoding:null,default:o,defer:o,dir:null,dirName:null,disabled:o,download:i,draggable:s,encType:null,enterKeyHint:null,form:null,formAction:null,formEncType:null,formMethod:null,formNoValidate:o,formTarget:null,headers:d,height:c,hidden:o,high:c,href:null,hrefLang:null,htmlFor:d,httpEquiv:d,id:null,imageSizes:null,imageSrcSet:f,inputMode:null,integrity:null,is:null,isMap:o,itemId:null,itemProp:d,itemRef:d,itemScope:o,itemType:d,kind:null,label:null,lang:null,language:null,list:null,loading:null,loop:o,low:c,manifest:null,max:null,maxLength:c,media:null,method:null,min:null,minLength:c,multiple:o,muted:o,name:null,nonce:null,noModule:o,noValidate:o,onAbort:null,onAfterPrint:null,onAuxClick:null,onBeforePrint:null,onBeforeUnload:null,onBlur:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onContextMenu:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnded:null,onError:null,onFocus:null,onFormData:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLanguageChange:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadEnd:null,onLoadStart:null,onMessage:null,onMessageError:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRejectionHandled:null,onReset:null,onResize:null,onScroll:null,onSecurityPolicyViolation:null,onSeeked:null,onSeeking:null,onSelect:null,onSlotChange:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnhandledRejection:null,onUnload:null,onVolumeChange:null,onWaiting:null,onWheel:null,open:o,optimum:c,pattern:null,ping:d,placeholder:null,playsInline:o,poster:null,preload:null,readOnly:o,referrerPolicy:null,rel:d,required:o,reversed:o,rows:c,rowSpan:c,sandbox:d,scope:null,scoped:o,seamless:o,selected:o,shape:null,size:c,sizes:null,slot:null,span:c,spellCheck:s,src:null,srcDoc:null,srcLang:null,srcSet:f,start:c,step:null,style:null,tabIndex:c,target:null,title:null,translate:null,type:null,typeMustMatch:o,useMap:null,value:s,width:c,wrap:null,align:null,aLink:null,archive:d,axis:null,background:null,bgColor:null,border:c,borderColor:null,bottomMargin:c,cellPadding:null,cellSpacing:null,char:null,charOff:null,classId:null,clear:null,code:null,codeBase:null,codeType:null,color:null,compact:o,declare:o,event:null,face:null,frame:null,frameBorder:null,hSpace:c,leftMargin:c,link:null,longDesc:null,lowSrc:null,marginHeight:c,marginWidth:c,noResize:o,noHref:o,noShade:o,noWrap:o,object:null,profile:null,prompt:null,rev:null,rightMargin:c,rules:null,scheme:null,scrolling:s,standby:null,summary:null,text:null,topMargin:c,valueType:null,version:null,vAlign:null,vLink:null,vSpace:c,allowTransparency:null,autoCorrect:null,autoSave:null,disablePictureInPicture:o,disableRemotePlayback:o,prefix:null,property:null,results:c,security:null,unselectable:null}})}),nF=U((e,t)=>{var r=ZS(),n=JS(),a=XS(),o=eF(),i=tF(),s=rF();t.exports=r([a,n,o,i,s])}),aF=U((e,t)=>{var r=xp(),n=Iy(),a=Ry(),o="data";t.exports=d;var i=/^data[-\w.:]+$/i,s=/-[a-z]/g,c=/[A-Z]/g;function d(g,v){var b=r(v),C=v,E=a;return b in g.normal?g.property[g.normal[b]]:(b.length>4&&b.slice(0,4)===o&&i.test(v)&&(v.charAt(4)==="-"?C=f(v):v=h(v),E=n),new E(C,v))}u(d,"find");function f(g){var v=g.slice(5).replace(s,m);return o+v.charAt(0).toUpperCase()+v.slice(1)}u(f,"datasetToProperty");function h(g){var v=g.slice(4);return s.test(v)?g:(v=v.replace(c,p),v.charAt(0)!=="-"&&(v="-"+v),o+v)}u(h,"datasetToAttribute");function p(g){return"-"+g.toLowerCase()}u(p,"kebab");function m(g){return g.charAt(1).toUpperCase()}u(m,"camelcase")}),oF=U((e,t)=>{t.exports=n;var r=/[#.]/g;function n(a,o){for(var i=a||"",s=o||"div",c={},d=0,f,h,p;d{e.parse=a,e.stringify=o;var t="",r=" ",n=/[ \t\n\r\f]+/g;function a(i){var s=String(i||t).trim();return s===t?[]:s.split(n)}u(a,"parse");function o(i){return i.join(r).trim()}u(o,"stringify")}),lF=U(e=>{e.parse=a,e.stringify=o;var t=",",r=" ",n="";function a(i){for(var s=[],c=String(i||n),d=c.indexOf(t),f=0,h=!1,p;!h;)d===-1&&(d=c.length,h=!0),p=c.slice(f,d).trim(),(p||!h)&&s.push(p),f=d+1,d=c.indexOf(t,f);return s}u(a,"parse");function o(i,s){var c=s||{},d=c.padLeft===!1?n:r,f=c.padRight?r:n;return i[i.length-1]===n&&(i=i.concat(n)),i.join(f+t+d).trim()}u(o,"stringify")}),sF=U((e,t)=>{var r=aF(),n=xp(),a=oF(),o=iF().parse,i=lF().parse;t.exports=c;var s={}.hasOwnProperty;function c(b,C,E){var D=E?v(E):null;return w;function w(S,F){var A=a(S,C),_=Array.prototype.slice.call(arguments,2),R=A.tagName.toLowerCase(),I;if(A.tagName=D&&s.call(D,R)?D[R]:R,F&&d(F,A)&&(_.unshift(F),F=null),F)for(I in F)x(A.properties,I,F[I]);return h(A.children,_),A.tagName==="template"&&(A.content={type:"root",children:A.children},A.children=[]),A}function x(S,F,A){var _,R,I;A==null||A!==A||(_=r(b,F),R=_.property,I=A,typeof I=="string"&&(_.spaceSeparated?I=o(I):_.commaSeparated?I=i(I):_.commaOrSpaceSeparated&&(I=o(i(I).join(" ")))),R==="style"&&typeof A!="string"&&(I=g(I)),R==="className"&&S.className&&(I=S.className.concat(I)),S[R]=p(_,R,I))}}u(c,"factory");function d(b,C){return typeof b=="string"||"length"in b||f(C.tagName,b)}u(d,"isChildren");function f(b,C){var E=C.type;return b==="input"||!E||typeof E!="string"?!1:typeof C.children=="object"&&"length"in C.children?!0:(E=E.toLowerCase(),b==="button"?E!=="menu"&&E!=="submit"&&E!=="reset"&&E!=="button":"value"in C)}u(f,"isNode");function h(b,C){var E,D;if(typeof C=="string"||typeof C=="number"){b.push({type:"text",value:String(C)});return}if(typeof C=="object"&&"length"in C){for(E=-1,D=C.length;++E{var r=nF(),n=sF(),a=n(r,"div");a.displayName="html",t.exports=a}),cF=U((e,t)=>{t.exports=uF()}),dF=U((e,t)=>{t.exports={AElig:"Æ",AMP:"&",Aacute:"Á",Acirc:"Â",Agrave:"À",Aring:"Å",Atilde:"Ã",Auml:"Ä",COPY:"©",Ccedil:"Ç",ETH:"Ð",Eacute:"É",Ecirc:"Ê",Egrave:"È",Euml:"Ë",GT:">",Iacute:"Í",Icirc:"Î",Igrave:"Ì",Iuml:"Ï",LT:"<",Ntilde:"Ñ",Oacute:"Ó",Ocirc:"Ô",Ograve:"Ò",Oslash:"Ø",Otilde:"Õ",Ouml:"Ö",QUOT:'"',REG:"®",THORN:"Þ",Uacute:"Ú",Ucirc:"Û",Ugrave:"Ù",Uuml:"Ü",Yacute:"Ý",aacute:"á",acirc:"â",acute:"´",aelig:"æ",agrave:"à",amp:"&",aring:"å",atilde:"ã",auml:"ä",brvbar:"¦",ccedil:"ç",cedil:"¸",cent:"¢",copy:"©",curren:"¤",deg:"°",divide:"÷",eacute:"é",ecirc:"ê",egrave:"è",eth:"ð",euml:"ë",frac12:"½",frac14:"¼",frac34:"¾",gt:">",iacute:"í",icirc:"î",iexcl:"¡",igrave:"ì",iquest:"¿",iuml:"ï",laquo:"«",lt:"<",macr:"¯",micro:"µ",middot:"·",nbsp:" ",not:"¬",ntilde:"ñ",oacute:"ó",ocirc:"ô",ograve:"ò",ordf:"ª",ordm:"º",oslash:"ø",otilde:"õ",ouml:"ö",para:"¶",plusmn:"±",pound:"£",quot:'"',raquo:"»",reg:"®",sect:"§",shy:"­",sup1:"¹",sup2:"²",sup3:"³",szlig:"ß",thorn:"þ",times:"×",uacute:"ú",ucirc:"û",ugrave:"ù",uml:"¨",uuml:"ü",yacute:"ý",yen:"¥",yuml:"ÿ"}}),pF=U((e,t)=>{t.exports={0:"�",128:"€",130:"‚",131:"ƒ",132:"„",133:"…",134:"†",135:"‡",136:"ˆ",137:"‰",138:"Š",139:"‹",140:"Œ",142:"Ž",145:"‘",146:"’",147:"“",148:"”",149:"•",150:"–",151:"—",152:"˜",153:"™",154:"š",155:"›",156:"œ",158:"ž",159:"Ÿ"}}),Ty=U((e,t)=>{t.exports=r;function r(n){var a=typeof n=="string"?n.charCodeAt(0):n;return a>=48&&a<=57}u(r,"decimal")}),fF=U((e,t)=>{t.exports=r;function r(n){var a=typeof n=="string"?n.charCodeAt(0):n;return a>=97&&a<=102||a>=65&&a<=70||a>=48&&a<=57}u(r,"hexadecimal")}),hF=U((e,t)=>{t.exports=r;function r(n){var a=typeof n=="string"?n.charCodeAt(0):n;return a>=97&&a<=122||a>=65&&a<=90}u(r,"alphabetical")}),mF=U((e,t)=>{var r=hF(),n=Ty();t.exports=a;function a(o){return r(o)||n(o)}u(a,"alphanumerical")}),gF=U((e,t)=>{var r,n=59;t.exports=a;function a(o){var i="&"+o+";",s;return r=r||document.createElement("i"),r.innerHTML=i,s=r.textContent,s.charCodeAt(s.length-1)===n&&o!=="semi"||s===i?!1:s}u(a,"decodeEntity")}),vF=U((e,t)=>{var r=dF(),n=pF(),a=Ty(),o=fF(),i=mF(),s=gF();t.exports=te;var c={}.hasOwnProperty,d=String.fromCharCode,f=Function.prototype,h={warning:null,reference:null,text:null,warningContext:null,referenceContext:null,textContext:null,position:{},additional:null,attribute:!1,nonTerminated:!0},p=9,m=10,g=12,v=32,b=38,C=59,E=60,D=61,w=35,x=88,S=120,F=65533,A="named",_="hexadecimal",R="decimal",I={};I[_]=16,I[R]=10;var T={};T[A]=i,T[R]=a,T[_]=o;var L=1,P=2,M=3,N=4,q=5,W=6,G=7,Z={};Z[L]="Named character references must be terminated by a semicolon",Z[P]="Numeric character references must be terminated by a semicolon",Z[M]="Named character references cannot be empty",Z[N]="Numeric character references cannot be empty",Z[q]="Named character references must be known",Z[W]="Numeric character references cannot be disallowed",Z[G]="Numeric character references cannot be outside the permissible Unicode range";function te(H,J){var re={},fe,xe;J||(J={});for(xe in h)fe=J[xe],re[xe]=fe??h[xe];return(re.position.indent||re.position.start)&&(re.indent=re.position.indent||[],re.position=re.position.start),ne(H,re)}u(te,"parseEntities");function ne(H,J){var re=J.additional,fe=J.nonTerminated,xe=J.text,Ct=J.reference,je=J.warning,tt=J.textContext,$=J.referenceContext,rt=J.warningContext,xt=J.position,Pr=J.indent||[],kn=H.length,St=0,yi=-1,Be=xt.column||1,Nr=xt.line||1,Ft="",_n=[],At,Bn,kt,Se,nt,ye,ce,_t,bi,Eu,$r,$a,Hr,Jt,Bh,Ha,wi,Bt,be;for(typeof re=="string"&&(re=re.charCodeAt(0)),Ha=ja(),_t=je?D9:f,St--,kn++;++St65535&&(ye-=65536,Eu+=d(ye>>>10|55296),ye=56320|ye&1023),ye=Eu+d(ye))):Jt!==A&&_t(N,Bt)),ye?(Rh(),Ha=ja(),St=be-1,Be+=be-Hr+1,_n.push(ye),wi=ja(),wi.offset++,Ct&&Ct.call($,ye,{start:Ha,end:wi},H.slice(Hr-1,be)),Ha=wi):(Se=H.slice(Hr-1,be),Ft+=Se,Be+=Se.length,St=be-1)}else nt===10&&(Nr++,yi++,Be=0),nt===nt?(Ft+=d(nt),Be++):Rh();return _n.join("");function ja(){return{line:Nr,column:Be,offset:St+(xt.offset||0)}}function D9(Ih,zh){var Cu=ja();Cu.column+=zh,Cu.offset+=zh,je.call(rt,Z[Ih],Cu,Ih)}function Rh(){Ft&&(_n.push(Ft),xe&&xe.call(tt,Ft,{start:Ha,end:ja()}),Ft="")}}u(ne,"parse");function X(H){return H>=55296&&H<=57343||H>1114111}u(X,"prohibited");function le(H){return H>=1&&H<=8||H===11||H>=13&&H<=31||H>=127&&H<=159||H>=64976&&H<=65007||(H&65535)===65535||(H&65535)===65534}u(le,"disallowed")}),yF=U((e,t)=>{var r=typeof window<"u"?window:typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope?self:{},n=(function(a){var o=/(?:^|\s)lang(?:uage)?-([\w-]+)(?=\s|$)/i,i=0,s={},c={manual:a.Prism&&a.Prism.manual,disableWorkerMessageHandler:a.Prism&&a.Prism.disableWorkerMessageHandler,util:{encode:u(function D(w){return w instanceof d?new d(w.type,D(w.content),w.alias):Array.isArray(w)?w.map(D):w.replace(/&/g,"&").replace(/"u")return null;if("currentScript"in document)return document.currentScript;try{throw new Error}catch(S){var D=(/at [^(\r\n]*\((.*):[^:]+:[^:]+\)$/i.exec(S.stack)||[])[1];if(D){var w=document.getElementsByTagName("script");for(var x in w)if(w[x].src==D)return w[x]}return null}},"currentScript"),isActive:u(function(D,w,x){for(var S="no-"+w;D;){var F=D.classList;if(F.contains(w))return!0;if(F.contains(S))return!1;D=D.parentElement}return!!x},"isActive")},languages:{plain:s,plaintext:s,text:s,txt:s,extend:u(function(D,w){var x=c.util.clone(c.languages[D]);for(var S in w)x[S]=w[S];return x},"extend"),insertBefore:u(function(D,w,x,S){S=S||c.languages;var F=S[D],A={};for(var _ in F)if(F.hasOwnProperty(_)){if(_==w)for(var R in x)x.hasOwnProperty(R)&&(A[R]=x[R]);x.hasOwnProperty(_)||(A[_]=F[_])}var I=S[D];return S[D]=A,c.languages.DFS(c.languages,function(T,L){L===I&&T!=D&&(this[T]=A)}),A},"insertBefore"),DFS:u(function D(w,x,S,F){F=F||{};var A=c.util.objId;for(var _ in w)if(w.hasOwnProperty(_)){x.call(w,_,w[_],S||_);var R=w[_],I=c.util.type(R);I==="Object"&&!F[A(R)]?(F[A(R)]=!0,D(R,x,null,F)):I==="Array"&&!F[A(R)]&&(F[A(R)]=!0,D(R,x,_,F))}},"DFS")},plugins:{},highlightAll:u(function(D,w){c.highlightAllUnder(document,D,w)},"highlightAll"),highlightAllUnder:u(function(D,w,x){var S={callback:x,container:D,selector:'code[class*="language-"], [class*="language-"] code, code[class*="lang-"], [class*="lang-"] code'};c.hooks.run("before-highlightall",S),S.elements=Array.prototype.slice.apply(S.container.querySelectorAll(S.selector)),c.hooks.run("before-all-elements-highlight",S);for(var F=0,A;A=S.elements[F++];)c.highlightElement(A,w===!0,S.callback)},"highlightAllUnder"),highlightElement:u(function(D,w,x){var S=c.util.getLanguage(D),F=c.languages[S];c.util.setLanguage(D,S);var A=D.parentElement;A&&A.nodeName.toLowerCase()==="pre"&&c.util.setLanguage(A,S);var _=D.textContent,R={element:D,language:S,grammar:F,code:_};function I(L){R.highlightedCode=L,c.hooks.run("before-insert",R),R.element.innerHTML=R.highlightedCode,c.hooks.run("after-highlight",R),c.hooks.run("complete",R),x&&x.call(R.element)}if(u(I,"insertHighlightedCode"),c.hooks.run("before-sanity-check",R),A=R.element.parentElement,A&&A.nodeName.toLowerCase()==="pre"&&!A.hasAttribute("tabindex")&&A.setAttribute("tabindex","0"),!R.code){c.hooks.run("complete",R),x&&x.call(R.element);return}if(c.hooks.run("before-highlight",R),!R.grammar){I(c.util.encode(R.code));return}if(w&&a.Worker){var T=new Worker(c.filename);T.onmessage=function(L){I(L.data)},T.postMessage(JSON.stringify({language:R.language,code:R.code,immediateClose:!0}))}else I(c.highlight(R.code,R.grammar,R.language))},"highlightElement"),highlight:u(function(D,w,x){var S={code:D,grammar:w,language:x};if(c.hooks.run("before-tokenize",S),!S.grammar)throw new Error('The language "'+S.language+'" has no grammar.');return S.tokens=c.tokenize(S.code,S.grammar),c.hooks.run("after-tokenize",S),d.stringify(c.util.encode(S.tokens),S.language)},"highlight"),tokenize:u(function(D,w){var x=w.rest;if(x){for(var S in x)w[S]=x[S];delete w.rest}var F=new p;return m(F,F.head,D),h(D,F,w,F.head,0),v(F)},"tokenize"),hooks:{all:{},add:u(function(D,w){var x=c.hooks.all;x[D]=x[D]||[],x[D].push(w)},"add"),run:u(function(D,w){var x=c.hooks.all[D];if(!(!x||!x.length))for(var S=0,F;F=x[S++];)F(w)},"run")},Token:d};a.Prism=c;function d(D,w,x,S){this.type=D,this.content=w,this.alias=x,this.length=(S||"").length|0}u(d,"Token"),d.stringify=u(function D(w,x){if(typeof w=="string")return w;if(Array.isArray(w)){var S="";return w.forEach(function(I){S+=D(I,x)}),S}var F={type:w.type,content:D(w.content,x),tag:"span",classes:["token",w.type],attributes:{},language:x},A=w.alias;A&&(Array.isArray(A)?Array.prototype.push.apply(F.classes,A):F.classes.push(A)),c.hooks.run("wrap",F);var _="";for(var R in F.attributes)_+=" "+R+'="'+(F.attributes[R]||"").replace(/"/g,""")+'"';return"<"+F.tag+' class="'+F.classes.join(" ")+'"'+_+">"+F.content+""},"stringify");function f(D,w,x,S){D.lastIndex=w;var F=D.exec(x);if(F&&S&&F[1]){var A=F[1].length;F.index+=A,F[0]=F[0].slice(A)}return F}u(f,"matchPattern");function h(D,w,x,S,F,A){for(var _ in x)if(!(!x.hasOwnProperty(_)||!x[_])){var R=x[_];R=Array.isArray(R)?R:[R];for(var I=0;I=A.reach);Z+=G.value.length,G=G.next){var te=G.value;if(w.length>D.length)return;if(!(te instanceof d)){var ne=1,X;if(M){if(X=f(W,Z,D,P),!X||X.index>=D.length)break;var re=X.index,le=X.index+X[0].length,H=Z;for(H+=G.value.length;re>=H;)G=G.next,H+=G.value.length;if(H-=G.value.length,Z=H,G.value instanceof d)continue;for(var J=G;J!==w.tail&&(HA.reach&&(A.reach=je);var tt=G.prev;xe&&(tt=m(w,tt,xe),Z+=xe.length),g(w,tt,ne);var $=new d(_,L?c.tokenize(fe,L):fe,N,fe);if(G=m(w,tt,$),Ct&&m(w,G,Ct),ne>1){var rt={cause:_+","+I,reach:je};h(D,w,x,G.prev,Z,rt),A&&rt.reach>A.reach&&(A.reach=rt.reach)}}}}}}u(h,"matchGrammar");function p(){var D={value:null,prev:null,next:null},w={value:null,prev:D,next:null};D.next=w,this.head=D,this.tail=w,this.length=0}u(p,"LinkedList");function m(D,w,x){var S=w.next,F={value:x,prev:w,next:S};return w.next=F,S.prev=F,D.length++,F}u(m,"addAfter");function g(D,w,x){for(var S=w.next,F=0;F{t.exports=r,r.displayName="markup",r.aliases=["html","mathml","svg","xml","ssml","atom","rss"];function r(n){n.languages.markup={comment:{pattern://,greedy:!0},prolog:{pattern:/<\?[\s\S]+?\?>/,greedy:!0},doctype:{pattern:/"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:[^<"'\]]|"[^"]*"|'[^']*'|<(?!!--)|)*\]\s*)?>/i,greedy:!0,inside:{"internal-subset":{pattern:/(^[^\[]*\[)[\s\S]+(?=\]>$)/,lookbehind:!0,greedy:!0,inside:null},string:{pattern:/"[^"]*"|'[^']*'/,greedy:!0},punctuation:/^$|[[\]]/,"doctype-tag":/^DOCTYPE/i,name:/[^\s<>'"]+/}},cdata:{pattern://i,greedy:!0},tag:{pattern:/<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/,greedy:!0,inside:{tag:{pattern:/^<\/?[^\s>\/]+/,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"special-attr":[],"attr-value":{pattern:/=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/,inside:{punctuation:[{pattern:/^=/,alias:"attr-equals"},/"|'/]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:[{pattern:/&[\da-z]{1,8};/i,alias:"named-entity"},/&#x?[\da-f]{1,8};/i]},n.languages.markup.tag.inside["attr-value"].inside.entity=n.languages.markup.entity,n.languages.markup.doctype.inside["internal-subset"].inside=n.languages.markup,n.hooks.add("wrap",function(a){a.type==="entity"&&(a.attributes.title=a.content.value.replace(/&/,"&"))}),Object.defineProperty(n.languages.markup.tag,"addInlined",{value:u(function(a,o){var i={};i["language-"+o]={pattern:/(^$)/i,lookbehind:!0,inside:n.languages[o]},i.cdata=/^$/i;var s={"included-cdata":{pattern://i,inside:i}};s["language-"+o]={pattern:/[\s\S]+/,inside:n.languages[o]};var c={};c[a]={pattern:RegExp(/(<__[^>]*>)(?:))*\]\]>|(?!)/.source.replace(/__/g,function(){return a}),"i"),lookbehind:!0,greedy:!0,inside:s},n.languages.insertBefore("markup","cdata",c)},"addInlined")}),Object.defineProperty(n.languages.markup.tag,"addAttribute",{value:u(function(a,o){n.languages.markup.tag.inside["special-attr"].push({pattern:RegExp(/(^|["'\s])/.source+"(?:"+a+")"+/\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))/.source,"i"),lookbehind:!0,inside:{"attr-name":/^[^\s=]+/,"attr-value":{pattern:/=[\s\S]+/,inside:{value:{pattern:/(^=\s*(["']|(?!["'])))\S[\s\S]*(?=\2$)/,lookbehind:!0,alias:[o,"language-"+o],inside:n.languages[o]},punctuation:[{pattern:/^=/,alias:"attr-equals"},/"|'/]}}}})},"value")}),n.languages.html=n.languages.markup,n.languages.mathml=n.languages.markup,n.languages.svg=n.languages.markup,n.languages.xml=n.languages.extend("markup",{}),n.languages.ssml=n.languages.xml,n.languages.atom=n.languages.xml,n.languages.rss=n.languages.xml}u(r,"markup")}),My=U((e,t)=>{t.exports=r,r.displayName="css",r.aliases=[];function r(n){(function(a){var o=/(?:"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n])*')/;a.languages.css={comment:/\/\*[\s\S]*?\*\//,atrule:{pattern:/@[\w-](?:[^;{\s]|\s+(?![\s{]))*(?:;|(?=\s*\{))/,inside:{rule:/^@[\w-]+/,"selector-function-argument":{pattern:/(\bselector\s*\(\s*(?![\s)]))(?:[^()\s]|\s+(?![\s)])|\((?:[^()]|\([^()]*\))*\))+(?=\s*\))/,lookbehind:!0,alias:"selector"},keyword:{pattern:/(^|[^\w-])(?:and|not|only|or)(?![\w-])/,lookbehind:!0}}},url:{pattern:RegExp("\\burl\\((?:"+o.source+"|"+/(?:[^\\\r\n()"']|\\[\s\S])*/.source+")\\)","i"),greedy:!0,inside:{function:/^url/i,punctuation:/^\(|\)$/,string:{pattern:RegExp("^"+o.source+"$"),alias:"url"}}},selector:{pattern:RegExp(`(^|[{}\\s])[^{}\\s](?:[^{};"'\\s]|\\s+(?![\\s{])|`+o.source+")*(?=\\s*\\{)"),lookbehind:!0},string:{pattern:o,greedy:!0},property:{pattern:/(^|[^-\w\xA0-\uFFFF])(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*(?=\s*:)/i,lookbehind:!0},important:/!important\b/i,function:{pattern:/(^|[^-a-z0-9])[-a-z0-9]+(?=\()/i,lookbehind:!0},punctuation:/[(){};:,]/},a.languages.css.atrule.inside.rest=a.languages.css;var i=a.languages.markup;i&&(i.tag.addInlined("style","css"),i.tag.addAttribute("style","css"))})(n)}u(r,"css")}),bF=U((e,t)=>{t.exports=r,r.displayName="clike",r.aliases=[];function r(n){n.languages.clike={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,lookbehind:!0,greedy:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"class-name":{pattern:/(\b(?:class|extends|implements|instanceof|interface|new|trait)\s+|\bcatch\s+\()[\w.\\]+/i,lookbehind:!0,inside:{punctuation:/[.\\]/}},keyword:/\b(?:break|catch|continue|do|else|finally|for|function|if|in|instanceof|new|null|return|throw|try|while)\b/,boolean:/\b(?:false|true)\b/,function:/\b\w+(?=\()/,number:/\b0x[\da-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?/i,operator:/[<>]=?|[!=]=?=?|--?|\+\+?|&&?|\|\|?|[?*/~^%]/,punctuation:/[{}[\];(),.:]/}}u(r,"clike")}),wF=U((e,t)=>{t.exports=r,r.displayName="javascript",r.aliases=["js"];function r(n){n.languages.javascript=n.languages.extend("clike",{"class-name":[n.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$A-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\.(?:constructor|prototype))/,lookbehind:!0}],keyword:[{pattern:/((?:^|\})\s*)catch\b/,lookbehind:!0},{pattern:/(^|[^.]|\.\.\.\s*)\b(?:as|assert(?=\s*\{)|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally(?=\s*(?:\{|$))|for|from(?=\s*(?:['"]|$))|function|(?:get|set)(?=\s*(?:[#\[$\w\xA0-\uFFFF]|$))|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,lookbehind:!0}],function:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,number:{pattern:RegExp(/(^|[^\w$])/.source+"(?:"+(/NaN|Infinity/.source+"|"+/0[bB][01]+(?:_[01]+)*n?/.source+"|"+/0[oO][0-7]+(?:_[0-7]+)*n?/.source+"|"+/0[xX][\dA-Fa-f]+(?:_[\dA-Fa-f]+)*n?/.source+"|"+/\d+(?:_\d+)*n/.source+"|"+/(?:\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\.\d+(?:_\d+)*)(?:[Ee][+-]?\d+(?:_\d+)*)?/.source)+")"+/(?![\w$])/.source),lookbehind:!0},operator:/--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/}),n.languages.javascript["class-name"][0].pattern=/(\b(?:class|extends|implements|instanceof|interface|new)\s+)[\w.\\]+/,n.languages.insertBefore("javascript","keyword",{regex:{pattern:/((?:^|[^$\w\xA0-\uFFFF."'\])\s]|\b(?:return|yield))\s*)\/(?:\[(?:[^\]\\\r\n]|\\.)*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}(?=(?:\s|\/\*(?:[^*]|\*(?!\/))*\*\/)*(?:$|[\r\n,.;:})\]]|\/\/))/,lookbehind:!0,greedy:!0,inside:{"regex-source":{pattern:/^(\/)[\s\S]+(?=\/[a-z]*$)/,lookbehind:!0,alias:"language-regex",inside:n.languages.regex},"regex-delimiter":/^\/|\/$/,"regex-flags":/^[a-z]+$/}},"function-variable":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/,alias:"function"},parameter:[{pattern:/(function(?:\s+(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)?\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\))/,lookbehind:!0,inside:n.languages.javascript},{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i,lookbehind:!0,inside:n.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/,lookbehind:!0,inside:n.languages.javascript},{pattern:/((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*)\(\s*|\]\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*\{)/,lookbehind:!0,inside:n.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/}),n.languages.insertBefore("javascript","string",{hashbang:{pattern:/^#!.*/,greedy:!0,alias:"comment"},"template-string":{pattern:/`(?:\\[\s\S]|\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}|(?!\$\{)[^\\`])*`/,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}/,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},rest:n.languages.javascript}},string:/[\s\S]+/}},"string-property":{pattern:/((?:^|[,{])[ \t]*)(["'])(?:\\(?:\r\n|[\s\S])|(?!\2)[^\\\r\n])*\2(?=\s*:)/m,lookbehind:!0,greedy:!0,alias:"property"}}),n.languages.insertBefore("javascript","operator",{"literal-property":{pattern:/((?:^|[,{])[ \t]*)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/m,lookbehind:!0,alias:"property"}}),n.languages.markup&&(n.languages.markup.tag.addInlined("script","javascript"),n.languages.markup.tag.addAttribute(/on(?:abort|blur|change|click|composition(?:end|start|update)|dblclick|error|focus(?:in|out)?|key(?:down|up)|load|mouse(?:down|enter|leave|move|out|over|up)|reset|resize|scroll|select|slotchange|submit|unload|wheel)/.source,"javascript")),n.languages.js=n.languages.javascript}u(r,"javascript")}),DF=U((e,t)=>{var r=typeof globalThis=="object"?globalThis:typeof self=="object"?self:typeof window=="object"?window:typeof global=="object"?global:{},n=F();r.Prism={manual:!0,disableWorkerMessageHandler:!0};var a=cF(),o=vF(),i=yF(),s=Ly(),c=My(),d=bF(),f=wF();n();var h={}.hasOwnProperty;function p(){}u(p,"Refractor"),p.prototype=i;var m=new p;t.exports=m,m.highlight=b,m.register=g,m.alias=v,m.registered=C,m.listLanguages=E,g(s),g(c),g(d),g(f),m.util.encode=x,m.Token.stringify=D;function g(A){if(typeof A!="function"||!A.displayName)throw new Error("Expected `function` for `grammar`, got `"+A+"`");m.languages[A.displayName]===void 0&&A(m)}u(g,"register");function v(A,_){var R=m.languages,I=A,T,L,P,M;_&&(I={},I[A]=_);for(T in I)for(L=I[T],L=typeof L=="string"?[L]:L,P=L.length,M=-1;++M{KS(),xi=Ce(DF()),Si=Ay(xi.default,{}),Si.registerLanguage=function(e,t){return xi.default.register(t)},Si.alias=function(e,t){return xi.default.alias(e,t)},al=Si}),CF=z(()=>{yy()}),xF=U((e,t)=>{t.exports=r,r.displayName="bash",r.aliases=["shell"];function r(n){(function(a){var o="\\b(?:BASH|BASHOPTS|BASH_ALIASES|BASH_ARGC|BASH_ARGV|BASH_CMDS|BASH_COMPLETION_COMPAT_DIR|BASH_LINENO|BASH_REMATCH|BASH_SOURCE|BASH_VERSINFO|BASH_VERSION|COLORTERM|COLUMNS|COMP_WORDBREAKS|DBUS_SESSION_BUS_ADDRESS|DEFAULTS_PATH|DESKTOP_SESSION|DIRSTACK|DISPLAY|EUID|GDMSESSION|GDM_LANG|GNOME_KEYRING_CONTROL|GNOME_KEYRING_PID|GPG_AGENT_INFO|GROUPS|HISTCONTROL|HISTFILE|HISTFILESIZE|HISTSIZE|HOME|HOSTNAME|HOSTTYPE|IFS|INSTANCE|JOB|LANG|LANGUAGE|LC_ADDRESS|LC_ALL|LC_IDENTIFICATION|LC_MEASUREMENT|LC_MONETARY|LC_NAME|LC_NUMERIC|LC_PAPER|LC_TELEPHONE|LC_TIME|LESSCLOSE|LESSOPEN|LINES|LOGNAME|LS_COLORS|MACHTYPE|MAILCHECK|MANDATORY_PATH|NO_AT_BRIDGE|OLDPWD|OPTERR|OPTIND|ORBIT_SOCKETDIR|OSTYPE|PAPERSIZE|PATH|PIPESTATUS|PPID|PS1|PS2|PS3|PS4|PWD|RANDOM|REPLY|SECONDS|SELINUX_INIT|SESSION|SESSIONTYPE|SESSION_MANAGER|SHELL|SHELLOPTS|SHLVL|SSH_AUTH_SOCK|TERM|UID|UPSTART_EVENTS|UPSTART_INSTANCE|UPSTART_JOB|UPSTART_SESSION|USER|WINDOWID|XAUTHORITY|XDG_CONFIG_DIRS|XDG_CURRENT_DESKTOP|XDG_DATA_DIRS|XDG_GREETER_DATA_DIR|XDG_MENU_PREFIX|XDG_RUNTIME_DIR|XDG_SEAT|XDG_SEAT_PATH|XDG_SESSION_DESKTOP|XDG_SESSION_ID|XDG_SESSION_PATH|XDG_SESSION_TYPE|XDG_VTNR|XMODIFIERS)\\b",i={pattern:/(^(["']?)\w+\2)[ \t]+\S.*/,lookbehind:!0,alias:"punctuation",inside:null},s={bash:i,environment:{pattern:RegExp("\\$"+o),alias:"constant"},variable:[{pattern:/\$?\(\([\s\S]+?\)\)/,greedy:!0,inside:{variable:[{pattern:/(^\$\(\([\s\S]+)\)\)/,lookbehind:!0},/^\$\(\(/],number:/\b0x[\dA-Fa-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:[Ee]-?\d+)?/,operator:/--|\+\+|\*\*=?|<<=?|>>=?|&&|\|\||[=!+\-*/%<>^&|]=?|[?~:]/,punctuation:/\(\(?|\)\)?|,|;/}},{pattern:/\$\((?:\([^)]+\)|[^()])+\)|`[^`]+`/,greedy:!0,inside:{variable:/^\$\(|^`|\)$|`$/}},{pattern:/\$\{[^}]+\}/,greedy:!0,inside:{operator:/:[-=?+]?|[!\/]|##?|%%?|\^\^?|,,?/,punctuation:/[\[\]]/,environment:{pattern:RegExp("(\\{)"+o),lookbehind:!0,alias:"constant"}}},/\$(?:\w+|[#?*!@$])/],entity:/\\(?:[abceEfnrtv\\"]|O?[0-7]{1,3}|U[0-9a-fA-F]{8}|u[0-9a-fA-F]{4}|x[0-9a-fA-F]{1,2})/};a.languages.bash={shebang:{pattern:/^#!\s*\/.*/,alias:"important"},comment:{pattern:/(^|[^"{\\$])#.*/,lookbehind:!0},"function-name":[{pattern:/(\bfunction\s+)[\w-]+(?=(?:\s*\(?:\s*\))?\s*\{)/,lookbehind:!0,alias:"function"},{pattern:/\b[\w-]+(?=\s*\(\s*\)\s*\{)/,alias:"function"}],"for-or-select":{pattern:/(\b(?:for|select)\s+)\w+(?=\s+in\s)/,alias:"variable",lookbehind:!0},"assign-left":{pattern:/(^|[\s;|&]|[<>]\()\w+(?=\+?=)/,inside:{environment:{pattern:RegExp("(^|[\\s;|&]|[<>]\\()"+o),lookbehind:!0,alias:"constant"}},alias:"variable",lookbehind:!0},string:[{pattern:/((?:^|[^<])<<-?\s*)(\w+)\s[\s\S]*?(?:\r?\n|\r)\2/,lookbehind:!0,greedy:!0,inside:s},{pattern:/((?:^|[^<])<<-?\s*)(["'])(\w+)\2\s[\s\S]*?(?:\r?\n|\r)\3/,lookbehind:!0,greedy:!0,inside:{bash:i}},{pattern:/(^|[^\\](?:\\\\)*)"(?:\\[\s\S]|\$\([^)]+\)|\$(?!\()|`[^`]+`|[^"\\`$])*"/,lookbehind:!0,greedy:!0,inside:s},{pattern:/(^|[^$\\])'[^']*'/,lookbehind:!0,greedy:!0},{pattern:/\$'(?:[^'\\]|\\[\s\S])*'/,greedy:!0,inside:{entity:s.entity}}],environment:{pattern:RegExp("\\$?"+o),alias:"constant"},variable:s.variable,function:{pattern:/(^|[\s;|&]|[<>]\()(?:add|apropos|apt|apt-cache|apt-get|aptitude|aspell|automysqlbackup|awk|basename|bash|bc|bconsole|bg|bzip2|cal|cat|cfdisk|chgrp|chkconfig|chmod|chown|chroot|cksum|clear|cmp|column|comm|composer|cp|cron|crontab|csplit|curl|cut|date|dc|dd|ddrescue|debootstrap|df|diff|diff3|dig|dir|dircolors|dirname|dirs|dmesg|docker|docker-compose|du|egrep|eject|env|ethtool|expand|expect|expr|fdformat|fdisk|fg|fgrep|file|find|fmt|fold|format|free|fsck|ftp|fuser|gawk|git|gparted|grep|groupadd|groupdel|groupmod|groups|grub-mkconfig|gzip|halt|head|hg|history|host|hostname|htop|iconv|id|ifconfig|ifdown|ifup|import|install|ip|jobs|join|kill|killall|less|link|ln|locate|logname|logrotate|look|lpc|lpr|lprint|lprintd|lprintq|lprm|ls|lsof|lynx|make|man|mc|mdadm|mkconfig|mkdir|mke2fs|mkfifo|mkfs|mkisofs|mknod|mkswap|mmv|more|most|mount|mtools|mtr|mutt|mv|nano|nc|netstat|nice|nl|node|nohup|notify-send|npm|nslookup|op|open|parted|passwd|paste|pathchk|ping|pkill|pnpm|podman|podman-compose|popd|pr|printcap|printenv|ps|pushd|pv|quota|quotacheck|quotactl|ram|rar|rcp|reboot|remsync|rename|renice|rev|rm|rmdir|rpm|rsync|scp|screen|sdiff|sed|sendmail|seq|service|sftp|sh|shellcheck|shuf|shutdown|sleep|slocate|sort|split|ssh|stat|strace|su|sudo|sum|suspend|swapon|sync|tac|tail|tar|tee|time|timeout|top|touch|tr|traceroute|tsort|tty|umount|uname|unexpand|uniq|units|unrar|unshar|unzip|update-grub|uptime|useradd|userdel|usermod|users|uudecode|uuencode|v|vcpkg|vdir|vi|vim|virsh|vmstat|wait|watch|wc|wget|whereis|which|who|whoami|write|xargs|xdg-open|yarn|yes|zenity|zip|zsh|zypper)(?=$|[)\s;|&])/,lookbehind:!0},keyword:{pattern:/(^|[\s;|&]|[<>]\()(?:case|do|done|elif|else|esac|fi|for|function|if|in|select|then|until|while)(?=$|[)\s;|&])/,lookbehind:!0},builtin:{pattern:/(^|[\s;|&]|[<>]\()(?:\.|:|alias|bind|break|builtin|caller|cd|command|continue|declare|echo|enable|eval|exec|exit|export|getopts|hash|help|let|local|logout|mapfile|printf|pwd|read|readarray|readonly|return|set|shift|shopt|source|test|times|trap|type|typeset|ulimit|umask|unalias|unset)(?=$|[)\s;|&])/,lookbehind:!0,alias:"class-name"},boolean:{pattern:/(^|[\s;|&]|[<>]\()(?:false|true)(?=$|[)\s;|&])/,lookbehind:!0},"file-descriptor":{pattern:/\B&\d\b/,alias:"important"},operator:{pattern:/\d?<>|>\||\+=|=[=~]?|!=?|<<[<-]?|[&\d]?>>|\d[<>]&?|[<>][&=]?|&[>&]?|\|[&|]?/,inside:{"file-descriptor":{pattern:/^\d/,alias:"important"}}},punctuation:/\$?\(\(?|\)\)?|\.\.|[{}[\];\\]/,number:{pattern:/(^|\s)(?:[1-9]\d*|0)(?:[.,]\d+)?\b/,lookbehind:!0}},i.inside=a.languages.bash;for(var c=["comment","function-name","for-or-select","assign-left","string","environment","function","keyword","builtin","boolean","file-descriptor","operator","punctuation","number"],d=s.variable[1].inside,f=0;f{qh=Ce(xF()),Oy=qh.default}),Wh,Py,FF=z(()=>{Wh=Ce(My()),Py=Wh.default}),AF=U((e,t)=>{t.exports=r,r.displayName="graphql",r.aliases=[];function r(n){n.languages.graphql={comment:/#.*/,description:{pattern:/(?:"""(?:[^"]|(?!""")")*"""|"(?:\\.|[^\\"\r\n])*")(?=\s*[a-z_])/i,greedy:!0,alias:"string",inside:{"language-markdown":{pattern:/(^"(?:"")?)(?!\1)[\s\S]+(?=\1$)/,lookbehind:!0,inside:n.languages.markdown}}},string:{pattern:/"""(?:[^"]|(?!""")")*"""|"(?:\\.|[^\\"\r\n])*"/,greedy:!0},number:/(?:\B-|\b)\d+(?:\.\d+)?(?:e[+-]?\d+)?\b/i,boolean:/\b(?:false|true)\b/,variable:/\$[a-z_]\w*/i,directive:{pattern:/@[a-z_]\w*/i,alias:"function"},"attr-name":{pattern:/\b[a-z_]\w*(?=\s*(?:\((?:[^()"]|"(?:\\.|[^\\"\r\n])*")*\))?:)/i,greedy:!0},"atom-input":{pattern:/\b[A-Z]\w*Input\b/,alias:"class-name"},scalar:/\b(?:Boolean|Float|ID|Int|String)\b/,constant:/\b[A-Z][A-Z_\d]*\b/,"class-name":{pattern:/(\b(?:enum|implements|interface|on|scalar|type|union)\s+|&\s*|:\s*|\[)[A-Z_]\w*/,lookbehind:!0},fragment:{pattern:/(\bfragment\s+|\.{3}\s*(?!on\b))[a-zA-Z_]\w*/,lookbehind:!0,alias:"function"},"definition-mutation":{pattern:/(\bmutation\s+)[a-zA-Z_]\w*/,lookbehind:!0,alias:"function"},"definition-query":{pattern:/(\bquery\s+)[a-zA-Z_]\w*/,lookbehind:!0,alias:"function"},keyword:/\b(?:directive|enum|extend|fragment|implements|input|interface|mutation|on|query|repeatable|scalar|schema|subscription|type|union)\b/,operator:/[!=|&]|\.{3}/,"property-query":/\w+(?=\s*\()/,object:/\w+(?=\s*\{)/,punctuation:/[!(){}\[\]:=,]/,property:/\w+/},n.hooks.add("after-tokenize",u(function(a){if(a.language!=="graphql")return;var o=a.tokens.filter(function(E){return typeof E!="string"&&E.type!=="comment"&&E.type!=="scalar"}),i=0;function s(E){return o[i+E]}u(s,"getToken");function c(E,D){D=D||0;for(var w=0;w0)){var v=d(/^\{$/,/^\}$/);if(v===-1)continue;for(var b=i;b=0&&f(C,"variable-input")}}}}},"afterTokenizeGraphql"))}u(r,"graphql")}),Gh,Ny,kF=z(()=>{Gh=Ce(AF()),Ny=Gh.default}),_F=U((e,t)=>{t.exports=r,r.displayName="jsExtras",r.aliases=[];function r(n){(function(a){a.languages.insertBefore("javascript","function-variable",{"method-variable":{pattern:RegExp("(\\.\\s*)"+a.languages.javascript["function-variable"].pattern.source),lookbehind:!0,alias:["function-variable","method","function","property-access"]}}),a.languages.insertBefore("javascript","function",{method:{pattern:RegExp("(\\.\\s*)"+a.languages.javascript.function.source),lookbehind:!0,alias:["function","property-access"]}}),a.languages.insertBefore("javascript","constant",{"known-class-name":[{pattern:/\b(?:(?:Float(?:32|64)|(?:Int|Uint)(?:8|16|32)|Uint8Clamped)?Array|ArrayBuffer|BigInt|Boolean|DataView|Date|Error|Function|Intl|JSON|(?:Weak)?(?:Map|Set)|Math|Number|Object|Promise|Proxy|Reflect|RegExp|String|Symbol|WebAssembly)\b/,alias:"class-name"},{pattern:/\b(?:[A-Z]\w*)Error\b/,alias:"class-name"}]});function o(h,p){return RegExp(h.replace(//g,function(){return/(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*/.source}),p)}u(o,"withId"),a.languages.insertBefore("javascript","keyword",{imports:{pattern:o(/(\bimport\b\s*)(?:(?:\s*,\s*(?:\*\s*as\s+|\{[^{}]*\}))?|\*\s*as\s+|\{[^{}]*\})(?=\s*\bfrom\b)/.source),lookbehind:!0,inside:a.languages.javascript},exports:{pattern:o(/(\bexport\b\s*)(?:\*(?:\s*as\s+)?(?=\s*\bfrom\b)|\{[^{}]*\})/.source),lookbehind:!0,inside:a.languages.javascript}}),a.languages.javascript.keyword.unshift({pattern:/\b(?:as|default|export|from|import)\b/,alias:"module"},{pattern:/\b(?:await|break|catch|continue|do|else|finally|for|if|return|switch|throw|try|while|yield)\b/,alias:"control-flow"},{pattern:/\bnull\b/,alias:["null","nil"]},{pattern:/\bundefined\b/,alias:"nil"}),a.languages.insertBefore("javascript","operator",{spread:{pattern:/\.{3}/,alias:"operator"},arrow:{pattern:/=>/,alias:"operator"}}),a.languages.insertBefore("javascript","punctuation",{"property-access":{pattern:o(/(\.\s*)#?/.source),lookbehind:!0},"maybe-class-name":{pattern:/(^|[^$\w\xA0-\uFFFF])[A-Z][$\w\xA0-\uFFFF]+/,lookbehind:!0},dom:{pattern:/\b(?:document|(?:local|session)Storage|location|navigator|performance|window)\b/,alias:"variable"},console:{pattern:/\bconsole(?=\s*\.)/,alias:"class-name"}});for(var i=["function","function-variable","method","method-variable","property-access"],s=0;s{Kh=Ce(_F()),$y=Kh.default}),RF=U((e,t)=>{t.exports=r,r.displayName="json",r.aliases=["webmanifest"];function r(n){n.languages.json={property:{pattern:/(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?=\s*:)/,lookbehind:!0,greedy:!0},string:{pattern:/(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?!\s*:)/,lookbehind:!0,greedy:!0},comment:{pattern:/\/\/.*|\/\*[\s\S]*?(?:\*\/|$)/,greedy:!0},number:/-?\b\d+(?:\.\d+)?(?:e[+-]?\d+)?\b/i,punctuation:/[{}[\],]/,operator:/:/,boolean:/\b(?:false|true)\b/,null:{pattern:/\bnull\b/,alias:"keyword"}},n.languages.webmanifest=n.languages.json}u(r,"json")}),Yh,Hy,IF=z(()=>{Yh=Ce(RF()),Hy=Yh.default}),jy=U((e,t)=>{t.exports=r,r.displayName="jsx",r.aliases=[];function r(n){(function(a){var o=a.util.clone(a.languages.javascript),i=/(?:\s|\/\/.*(?!.)|\/\*(?:[^*]|\*(?!\/))\*\/)/.source,s=/(?:\{(?:\{(?:\{[^{}]*\}|[^{}])*\}|[^{}])*\})/.source,c=/(?:\{*\.{3}(?:[^{}]|)*\})/.source;function d(p,m){return p=p.replace(//g,function(){return i}).replace(//g,function(){return s}).replace(//g,function(){return c}),RegExp(p,m)}u(d,"re"),c=d(c).source,a.languages.jsx=a.languages.extend("markup",o),a.languages.jsx.tag.pattern=d(/<\/?(?:[\w.:-]+(?:+(?:[\w.:$-]+(?:=(?:"(?:\\[\s\S]|[^\\"])*"|'(?:\\[\s\S]|[^\\'])*'|[^\s{'"/>=]+|))?|))**\/?)?>/.source),a.languages.jsx.tag.inside.tag.pattern=/^<\/?[^\s>\/]*/,a.languages.jsx.tag.inside["attr-value"].pattern=/=(?!\{)(?:"(?:\\[\s\S]|[^\\"])*"|'(?:\\[\s\S]|[^\\'])*'|[^\s'">]+)/,a.languages.jsx.tag.inside.tag.inside["class-name"]=/^[A-Z]\w*(?:\.[A-Z]\w*)*$/,a.languages.jsx.tag.inside.comment=o.comment,a.languages.insertBefore("inside","attr-name",{spread:{pattern:d(//.source),inside:a.languages.jsx}},a.languages.jsx.tag),a.languages.insertBefore("inside","special-attr",{script:{pattern:d(/=/.source),alias:"language-javascript",inside:{"script-punctuation":{pattern:/^=(?=\{)/,alias:"punctuation"},rest:a.languages.jsx}}},a.languages.jsx.tag);var f=u(function(p){return p?typeof p=="string"?p:typeof p.content=="string"?p.content:p.content.map(f).join(""):""},"stringifyToken"),h=u(function(p){for(var m=[],g=0;g0&&m[m.length-1].tagName===f(v.content[0].content[1])&&m.pop():v.content[v.content.length-1].content==="/>"||m.push({tagName:f(v.content[0].content[1]),openedBraces:0}):m.length>0&&v.type==="punctuation"&&v.content==="{"?m[m.length-1].openedBraces++:m.length>0&&m[m.length-1].openedBraces>0&&v.type==="punctuation"&&v.content==="}"?m[m.length-1].openedBraces--:b=!0),(b||typeof v=="string")&&m.length>0&&m[m.length-1].openedBraces===0){var C=f(v);g0&&(typeof p[g-1]=="string"||p[g-1].type==="plain-text")&&(C=f(p[g-1])+C,p.splice(g-1,1),g--),p[g]=new a.Token("plain-text",C,null,C)}v.content&&typeof v.content!="string"&&h(v.content)}},"walkTokens");a.hooks.add("after-tokenize",function(p){p.language!=="jsx"&&p.language!=="tsx"||h(p.tokens)})})(n)}u(r,"jsx")}),Zh,Vy,zF=z(()=>{Zh=Ce(jy()),Vy=Zh.default}),TF=U((e,t)=>{t.exports=r,r.displayName="markdown",r.aliases=["md"];function r(n){(function(a){var o=/(?:\\.|[^\\\n\r]|(?:\n|\r\n?)(?![\r\n]))/.source;function i(g){return g=g.replace(//g,function(){return o}),RegExp(/((?:^|[^\\])(?:\\{2})*)/.source+"(?:"+g+")")}u(i,"createInline");var s=/(?:\\.|``(?:[^`\r\n]|`(?!`))+``|`[^`\r\n]+`|[^\\|\r\n`])+/.source,c=/\|?__(?:\|__)+\|?(?:(?:\n|\r\n?)|(?![\s\S]))/.source.replace(/__/g,function(){return s}),d=/\|?[ \t]*:?-{3,}:?[ \t]*(?:\|[ \t]*:?-{3,}:?[ \t]*)+\|?(?:\n|\r\n?)/.source;a.languages.markdown=a.languages.extend("markup",{}),a.languages.insertBefore("markdown","prolog",{"front-matter-block":{pattern:/(^(?:\s*[\r\n])?)---(?!.)[\s\S]*?[\r\n]---(?!.)/,lookbehind:!0,greedy:!0,inside:{punctuation:/^---|---$/,"front-matter":{pattern:/\S+(?:\s+\S+)*/,alias:["yaml","language-yaml"],inside:a.languages.yaml}}},blockquote:{pattern:/^>(?:[\t ]*>)*/m,alias:"punctuation"},table:{pattern:RegExp("^"+c+d+"(?:"+c+")*","m"),inside:{"table-data-rows":{pattern:RegExp("^("+c+d+")(?:"+c+")*$"),lookbehind:!0,inside:{"table-data":{pattern:RegExp(s),inside:a.languages.markdown},punctuation:/\|/}},"table-line":{pattern:RegExp("^("+c+")"+d+"$"),lookbehind:!0,inside:{punctuation:/\||:?-{3,}:?/}},"table-header-row":{pattern:RegExp("^"+c+"$"),inside:{"table-header":{pattern:RegExp(s),alias:"important",inside:a.languages.markdown},punctuation:/\|/}}}},code:[{pattern:/((?:^|\n)[ \t]*\n|(?:^|\r\n?)[ \t]*\r\n?)(?: {4}|\t).+(?:(?:\n|\r\n?)(?: {4}|\t).+)*/,lookbehind:!0,alias:"keyword"},{pattern:/^```[\s\S]*?^```$/m,greedy:!0,inside:{"code-block":{pattern:/^(```.*(?:\n|\r\n?))[\s\S]+?(?=(?:\n|\r\n?)^```$)/m,lookbehind:!0},"code-language":{pattern:/^(```).+/,lookbehind:!0},punctuation:/```/}}],title:[{pattern:/\S.*(?:\n|\r\n?)(?:==+|--+)(?=[ \t]*$)/m,alias:"important",inside:{punctuation:/==+$|--+$/}},{pattern:/(^\s*)#.+/m,lookbehind:!0,alias:"important",inside:{punctuation:/^#+|#+$/}}],hr:{pattern:/(^\s*)([*-])(?:[\t ]*\2){2,}(?=\s*$)/m,lookbehind:!0,alias:"punctuation"},list:{pattern:/(^\s*)(?:[*+-]|\d+\.)(?=[\t ].)/m,lookbehind:!0,alias:"punctuation"},"url-reference":{pattern:/!?\[[^\]]+\]:[\t ]+(?:\S+|<(?:\\.|[^>\\])+>)(?:[\t ]+(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\)))?/,inside:{variable:{pattern:/^(!?\[)[^\]]+/,lookbehind:!0},string:/(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\))$/,punctuation:/^[\[\]!:]|[<>]/},alias:"url"},bold:{pattern:i(/\b__(?:(?!_)|_(?:(?!_))+_)+__\b|\*\*(?:(?!\*)|\*(?:(?!\*))+\*)+\*\*/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^..)[\s\S]+(?=..$)/,lookbehind:!0,inside:{}},punctuation:/\*\*|__/}},italic:{pattern:i(/\b_(?:(?!_)|__(?:(?!_))+__)+_\b|\*(?:(?!\*)|\*\*(?:(?!\*))+\*\*)+\*/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^.)[\s\S]+(?=.$)/,lookbehind:!0,inside:{}},punctuation:/[*_]/}},strike:{pattern:i(/(~~?)(?:(?!~))+\2/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^~~?)[\s\S]+(?=\1$)/,lookbehind:!0,inside:{}},punctuation:/~~?/}},"code-snippet":{pattern:/(^|[^\\`])(?:``[^`\r\n]+(?:`[^`\r\n]+)*``(?!`)|`[^`\r\n]+`(?!`))/,lookbehind:!0,greedy:!0,alias:["code","keyword"]},url:{pattern:i(/!?\[(?:(?!\]))+\](?:\([^\s)]+(?:[\t ]+"(?:\\.|[^"\\])*")?\)|[ \t]?\[(?:(?!\]))+\])/.source),lookbehind:!0,greedy:!0,inside:{operator:/^!/,content:{pattern:/(^\[)[^\]]+(?=\])/,lookbehind:!0,inside:{}},variable:{pattern:/(^\][ \t]?\[)[^\]]+(?=\]$)/,lookbehind:!0},url:{pattern:/(^\]\()[^\s)]+/,lookbehind:!0},string:{pattern:/(^[ \t]+)"(?:\\.|[^"\\])*"(?=\)$)/,lookbehind:!0}}}}),["url","bold","italic","strike"].forEach(function(g){["url","bold","italic","strike","code-snippet"].forEach(function(v){g!==v&&(a.languages.markdown[g].inside.content.inside[v]=a.languages.markdown[v])})}),a.hooks.add("after-tokenize",function(g){if(g.language!=="markdown"&&g.language!=="md")return;function v(b){if(!(!b||typeof b=="string"))for(var C=0,E=b.length;C",quot:'"'},p=String.fromCodePoint||String.fromCharCode;function m(g){var v=g.replace(f,"");return v=v.replace(/&(\w{1,8}|#x?[\da-f]{1,8});/gi,function(b,C){if(C=C.toLowerCase(),C[0]==="#"){var E;return C[1]==="x"?E=parseInt(C.slice(2),16):E=Number(C.slice(1)),p(E)}else{var D=h[C];return D||b}}),v}u(m,"textContent"),a.languages.md=a.languages.markdown})(n)}u(r,"markdown")}),Jh,Uy,LF=z(()=>{Jh=Ce(TF()),Uy=Jh.default}),Xh,qy,MF=z(()=>{Xh=Ce(Ly()),qy=Xh.default}),Wy=U((e,t)=>{t.exports=r,r.displayName="typescript",r.aliases=["ts"];function r(n){(function(a){a.languages.typescript=a.languages.extend("javascript",{"class-name":{pattern:/(\b(?:class|extends|implements|instanceof|interface|new|type)\s+)(?!keyof\b)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?:\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>)?/,lookbehind:!0,greedy:!0,inside:null},builtin:/\b(?:Array|Function|Promise|any|boolean|console|never|number|string|symbol|unknown)\b/}),a.languages.typescript.keyword.push(/\b(?:abstract|declare|is|keyof|readonly|require)\b/,/\b(?:asserts|infer|interface|module|namespace|type)\b(?=\s*(?:[{_$a-zA-Z\xA0-\uFFFF]|$))/,/\btype\b(?=\s*(?:[\{*]|$))/),delete a.languages.typescript.parameter,delete a.languages.typescript["literal-property"];var o=a.languages.extend("typescript",{});delete o["class-name"],a.languages.typescript["class-name"].inside=o,a.languages.insertBefore("typescript","function",{decorator:{pattern:/@[$\w\xA0-\uFFFF]+/,inside:{at:{pattern:/^@/,alias:"operator"},function:/^[\s\S]+/}},"generic-function":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>(?=\s*\()/,greedy:!0,inside:{function:/^#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*/,generic:{pattern:/<[\s\S]+/,alias:"class-name",inside:o}}}}),a.languages.ts=a.languages.typescript})(n)}u(r,"typescript")}),OF=U((e,t)=>{var r=jy(),n=Wy();t.exports=a,a.displayName="tsx",a.aliases=[];function a(o){o.register(r),o.register(n),(function(i){var s=i.util.clone(i.languages.typescript);i.languages.tsx=i.languages.extend("jsx",s),delete i.languages.tsx.parameter,delete i.languages.tsx["literal-property"];var c=i.languages.tsx.tag;c.pattern=RegExp(/(^|[^\w$]|(?=<\/))/.source+"(?:"+c.pattern.source+")",c.pattern.flags),c.lookbehind=!0})(o)}u(a,"tsx")}),Qh,Gy,PF=z(()=>{Qh=Ce(OF()),Gy=Qh.default}),em,Ky,NF=z(()=>{em=Ce(Wy()),Ky=em.default}),$F=U((e,t)=>{t.exports=r,r.displayName="yaml",r.aliases=["yml"];function r(n){(function(a){var o=/[*&][^\s[\]{},]+/,i=/!(?:<[\w\-%#;/?:@&=+$,.!~*'()[\]]+>|(?:[a-zA-Z\d-]*!)?[\w\-%#;/?:@&=+$.~*'()]+)?/,s="(?:"+i.source+"(?:[ ]+"+o.source+")?|"+o.source+"(?:[ ]+"+i.source+")?)",c=/(?:[^\s\x00-\x08\x0e-\x1f!"#%&'*,\-:>?@[\]`{|}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]|[?:-])(?:[ \t]*(?:(?![#:])|:))*/.source.replace(//g,function(){return/[^\s\x00-\x08\x0e-\x1f,[\]{}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]/.source}),d=/"(?:[^"\\\r\n]|\\.)*"|'(?:[^'\\\r\n]|\\.)*'/.source;function f(h,p){p=(p||"").replace(/m/g,"")+"m";var m=/([:\-,[{]\s*(?:\s<>[ \t]+)?)(?:<>)(?=[ \t]*(?:$|,|\]|\}|(?:[\r\n]\s*)?#))/.source.replace(/<>/g,function(){return s}).replace(/<>/g,function(){return h});return RegExp(m,p)}u(f,"createValuePattern"),a.languages.yaml={scalar:{pattern:RegExp(/([\-:]\s*(?:\s<>[ \t]+)?[|>])[ \t]*(?:((?:\r?\n|\r)[ \t]+)\S[^\r\n]*(?:\2[^\r\n]+)*)/.source.replace(/<>/g,function(){return s})),lookbehind:!0,alias:"string"},comment:/#.*/,key:{pattern:RegExp(/((?:^|[:\-,[{\r\n?])[ \t]*(?:<>[ \t]+)?)<>(?=\s*:\s)/.source.replace(/<>/g,function(){return s}).replace(/<>/g,function(){return"(?:"+c+"|"+d+")"})),lookbehind:!0,greedy:!0,alias:"atrule"},directive:{pattern:/(^[ \t]*)%.+/m,lookbehind:!0,alias:"important"},datetime:{pattern:f(/\d{4}-\d\d?-\d\d?(?:[tT]|[ \t]+)\d\d?:\d{2}:\d{2}(?:\.\d*)?(?:[ \t]*(?:Z|[-+]\d\d?(?::\d{2})?))?|\d{4}-\d{2}-\d{2}|\d\d?:\d{2}(?::\d{2}(?:\.\d*)?)?/.source),lookbehind:!0,alias:"number"},boolean:{pattern:f(/false|true/.source,"i"),lookbehind:!0,alias:"important"},null:{pattern:f(/null|~/.source,"i"),lookbehind:!0,alias:"important"},string:{pattern:f(d),lookbehind:!0,greedy:!0},number:{pattern:f(/[+-]?(?:0x[\da-f]+|0o[0-7]+|(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?|\.inf|\.nan)/.source,"i"),lookbehind:!0},tag:i,important:o,punctuation:/---|[:[\]{}\-,|>?]|\.\.\./},a.languages.yml=a.languages.yaml})(n)}u(r,"yaml")}),tm,Yy,HF=z(()=>{tm=Ce($F()),Yy=tm.default}),rm,_u,zs,Zy=z(()=>{rm=k.div(({theme:e})=>({position:"absolute",bottom:0,right:0,maxWidth:"100%",display:"flex",background:e.background.content,zIndex:1})),_u=k.button(({theme:e})=>({margin:0,border:"0 none",padding:"4px 10px",cursor:"pointer",display:"flex",alignItems:"center",color:e.color.defaultText,background:e.background.content,fontSize:12,lineHeight:"16px",fontFamily:e.typography.fonts.base,fontWeight:e.typography.weight.bold,borderTop:`1px solid ${e.appBorderColor}`,borderLeft:`1px solid ${e.appBorderColor}`,marginLeft:-1,borderRadius:"4px 0 0 0","&:not(:last-child)":{borderRight:`1px solid ${e.appBorderColor}`},"& + *":{borderLeft:`1px solid ${e.appBorderColor}`,borderRadius:0},"&:focus":{boxShadow:`${e.color.secondary} 0 -3px 0 0 inset`,outline:"0 none"}}),({disabled:e})=>e&&{cursor:"not-allowed",opacity:.5}),_u.displayName="ActionButton",zs=u(({actionItems:e,...t})=>y.createElement(rm,{...t},e.map(({title:r,className:n,onClick:a,disabled:o},i)=>y.createElement(_u,{key:i,className:n,onClick:a,disabled:!!o},r))),"ActionBar")});function Jy(e,t){typeof e=="function"?e(t):e!=null&&(e.current=t)}function Fp(...e){return t=>e.forEach(r=>Jy(r,t))}function br(...e){return l.useCallback(Fp(...e),e)}var Ap=z(()=>{u(Jy,"setRef"),u(Fp,"composeRefs"),u(br,"useComposedRefs")});function nm(e){return l.isValidElement(e)&&e.type===Xy}function am(e,t){let r={...t};for(let n in t){let a=e[n],o=t[n];/^on[A-Z]/.test(n)?a&&o?r[n]=(...i)=>{o(...i),a(...i)}:a&&(r[n]=a):n==="style"?r[n]={...a,...o}:n==="className"&&(r[n]=[a,o].filter(Boolean).join(" "))}return{...e,...r}}function om(e){var n,a;let t=(n=Object.getOwnPropertyDescriptor(e.props,"ref"))==null?void 0:n.get,r=t&&"isReactWarning"in t&&t.isReactWarning;return r?e.ref:(t=(a=Object.getOwnPropertyDescriptor(e,"ref"))==null?void 0:a.get,r=t&&"isReactWarning"in t&&t.isReactWarning,r?e.props.ref:e.props.ref||e.ref)}var ad,Fi,Xy,jF=z(()=>{Ap(),ad=l.forwardRef((e,t)=>{let{children:r,...n}=e,a=l.Children.toArray(r),o=a.find(nm);if(o){let i=o.props.children,s=a.map(c=>c===o?l.Children.count(i)>1?l.Children.only(null):l.isValidElement(i)?i.props.children:null:c);return O.jsx(Fi,{...n,ref:t,children:l.isValidElement(i)?l.cloneElement(i,void 0,s):null})}return O.jsx(Fi,{...n,ref:t,children:r})}),ad.displayName="Slot",Fi=l.forwardRef((e,t)=>{let{children:r,...n}=e;if(l.isValidElement(r)){let a=om(r);return l.cloneElement(r,{...am(n,r.props),ref:t?Fp(t,a):a})}return l.Children.count(r)>1?l.Children.only(null):null}),Fi.displayName="SlotClone",Xy=u(({children:e})=>O.jsx(O.Fragment,{children:e}),"Slottable"),u(nm,"isSlottable"),u(am,"mergeProps"),u(om,"getElementRef")}),im,$n,VF=z(()=>{jF(),im=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","span","svg","ul"],$n=im.reduce((e,t)=>{let r=l.forwardRef((n,a)=>{let{asChild:o,...i}=n,s=o?ad:t;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),O.jsx(s,{...i,ref:a})});return r.displayName=`Primitive.${t}`,{...e,[t]:r}},{})}),zl,Qy=z(()=>{zl=globalThis!=null&&globalThis.document?l.useLayoutEffect:()=>{}});function eb(e,t){return l.useReducer((r,n)=>t[r][n]??r,e)}function lm(e){let[t,r]=l.useState(),n=l.useRef({}),a=l.useRef(e),o=l.useRef("none"),i=e?"mounted":"unmounted",[s,c]=eb(i,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return l.useEffect(()=>{let d=uo(n.current);o.current=s==="mounted"?d:"none"},[s]),zl(()=>{let d=n.current,f=a.current;if(f!==e){let h=o.current,p=uo(d);e?c("MOUNT"):p==="none"||(d==null?void 0:d.display)==="none"?c("UNMOUNT"):c(f&&h!==p?"ANIMATION_OUT":"UNMOUNT"),a.current=e}},[e,c]),zl(()=>{if(t){let d=u(h=>{let p=uo(n.current).includes(h.animationName);h.target===t&&p&&Fs.flushSync(()=>c("ANIMATION_END"))},"handleAnimationEnd"),f=u(h=>{h.target===t&&(o.current=uo(n.current))},"handleAnimationStart");return t.addEventListener("animationstart",f),t.addEventListener("animationcancel",d),t.addEventListener("animationend",d),()=>{t.removeEventListener("animationstart",f),t.removeEventListener("animationcancel",d),t.removeEventListener("animationend",d)}}else c("ANIMATION_END")},[t,c]),{isPresent:["mounted","unmountSuspended"].includes(s),ref:l.useCallback(d=>{d&&(n.current=getComputedStyle(d)),r(d)},[])}}function uo(e){return(e==null?void 0:e.animationName)||"none"}function sm(e){var n,a;let t=(n=Object.getOwnPropertyDescriptor(e.props,"ref"))==null?void 0:n.get,r=t&&"isReactWarning"in t&&t.isReactWarning;return r?e.ref:(t=(a=Object.getOwnPropertyDescriptor(e,"ref"))==null?void 0:a.get,r=t&&"isReactWarning"in t&&t.isReactWarning,r?e.props.ref:e.props.ref||e.ref)}var Kn,UF=z(()=>{"use client";Ap(),Qy(),u(eb,"useStateMachine"),Kn=u(e=>{let{present:t,children:r}=e,n=lm(t),a=typeof r=="function"?r({present:n.isPresent}):l.Children.only(r),o=br(n.ref,sm(a));return typeof r=="function"||n.isPresent?l.cloneElement(a,{ref:o}):null},"Presence"),Kn.displayName="Presence",u(lm,"usePresence"),u(uo,"getAnimationName"),u(sm,"getElementRef")});function tb(e,t=[]){let r=[];function n(o,i){let s=l.createContext(i),c=r.length;r=[...r,i];function d(h){let{scope:p,children:m,...g}=h,v=(p==null?void 0:p[e][c])||s,b=l.useMemo(()=>g,Object.values(g));return O.jsx(v.Provider,{value:b,children:m})}u(d,"Provider");function f(h,p){let m=(p==null?void 0:p[e][c])||s,g=l.useContext(m);if(g)return g;if(i!==void 0)return i;throw new Error(`\`${h}\` must be used within \`${o}\``)}return u(f,"useContext2"),d.displayName=o+"Provider",[d,f]}u(n,"createContext3");let a=u(()=>{let o=r.map(i=>l.createContext(i));return u(function(i){let s=(i==null?void 0:i[e])||o;return l.useMemo(()=>({[`__scope${e}`]:{...i,[e]:s}}),[i,s])},"useScope")},"createScope");return a.scopeName=e,[n,rb(a,...t)]}function rb(...e){let t=e[0];if(e.length===1)return t;let r=u(()=>{let n=e.map(a=>({useScope:a(),scopeName:a.scopeName}));return u(function(a){let o=n.reduce((i,{useScope:s,scopeName:c})=>{let d=s(a)[`__scope${c}`];return{...i,...d}},{});return l.useMemo(()=>({[`__scope${t.scopeName}`]:o}),[o])},"useComposedScopes")},"createScope");return r.scopeName=t.scopeName,r}var qF=z(()=>{u(tb,"createContextScope"),u(rb,"composeContextScopes")});function Dr(e){let t=l.useRef(e);return l.useEffect(()=>{t.current=e}),l.useMemo(()=>(...r)=>{var n;return(n=t.current)==null?void 0:n.call(t,...r)},[])}var WF=z(()=>{u(Dr,"useCallbackRef")});function nb(e){let t=l.useContext(ab);return e||t||"ltr"}var ab,GF=z(()=>{ab=l.createContext(void 0),u(nb,"useDirection")});function ob(e,[t,r]){return Math.min(r,Math.max(t,e))}var KF=z(()=>{u(ob,"clamp")});function mr(e,t,{checkForDefaultPrevented:r=!0}={}){return u(function(n){if(e==null||e(n),r===!1||!n.defaultPrevented)return t==null?void 0:t(n)},"handleEvent")}var YF=z(()=>{u(mr,"composeEventHandlers")});function um(e,t){return l.useReducer((r,n)=>t[r][n]??r,e)}function Ua(e){return e?parseInt(e,10):0}function od(e,t){let r=e/t;return isNaN(r)?0:r}function ko(e){let t=od(e.viewport,e.content),r=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,n=(e.scrollbar.size-r)*t;return Math.max(n,18)}function cm(e,t,r,n="ltr"){let a=ko(r),o=a/2,i=t||o,s=a-i,c=r.scrollbar.paddingStart+i,d=r.scrollbar.size-r.scrollbar.paddingEnd-s,f=r.content-r.viewport,h=n==="ltr"?[0,f]:[f*-1,0];return kp([c,d],h)(e)}function Bu(e,t,r="ltr"){let n=ko(t),a=t.scrollbar.paddingStart+t.scrollbar.paddingEnd,o=t.scrollbar.size-a,i=t.content-t.viewport,s=o-n,c=r==="ltr"?[0,i]:[i*-1,0],d=ob(e,c);return kp([0,i],[0,s])(d)}function kp(e,t){return r=>{if(e[0]===e[1]||t[0]===t[1])return t[0];let n=(t[1]-t[0])/(e[1]-e[0]);return t[0]+n*(r-e[0])}}function Ru(e,t){return e>0&&e()=>window.clearTimeout(n.current),[]),l.useCallback(()=>{window.clearTimeout(n.current),n.current=window.setTimeout(r,t)},[r,t])}function jr(e,t){let r=Dr(t);zl(()=>{let n=0;if(e){let a=new ResizeObserver(()=>{cancelAnimationFrame(n),n=window.requestAnimationFrame(r)});return a.observe(e),()=>{window.cancelAnimationFrame(n),a.unobserve(e)}}},[e,r])}function dm(e,t){let{asChild:r,children:n}=e;if(!r)return typeof t=="function"?t(n):t;let a=l.Children.only(n);return l.cloneElement(a,{children:typeof t=="function"?t(a.props.children):t})}var Ai,Iu,ZF,pm,Ve,zu,Tu,Lu,at,Mu,fm,hm,Ou,ki,mm,gm,vm,Pu,Nu,Wa,$u,ym,_i,Hu,bm,wm,ib,lb,sb,ub,cb,JF=z(()=>{"use client";VF(),UF(),qF(),Ap(),WF(),GF(),Qy(),KF(),YF(),u(um,"useStateMachine"),Ai="ScrollArea",[Iu,ZF]=tb(Ai),[pm,Ve]=Iu(Ai),zu=l.forwardRef((e,t)=>{let{__scopeScrollArea:r,type:n="hover",dir:a,scrollHideDelay:o=600,...i}=e,[s,c]=l.useState(null),[d,f]=l.useState(null),[h,p]=l.useState(null),[m,g]=l.useState(null),[v,b]=l.useState(null),[C,E]=l.useState(0),[D,w]=l.useState(0),[x,S]=l.useState(!1),[F,A]=l.useState(!1),_=br(t,I=>c(I)),R=nb(a);return O.jsx(pm,{scope:r,type:n,dir:R,scrollHideDelay:o,scrollArea:s,viewport:d,onViewportChange:f,content:h,onContentChange:p,scrollbarX:m,onScrollbarXChange:g,scrollbarXEnabled:x,onScrollbarXEnabledChange:S,scrollbarY:v,onScrollbarYChange:b,scrollbarYEnabled:F,onScrollbarYEnabledChange:A,onCornerWidthChange:E,onCornerHeightChange:w,children:O.jsx($n.div,{dir:R,...i,ref:_,style:{position:"relative","--radix-scroll-area-corner-width":C+"px","--radix-scroll-area-corner-height":D+"px",...e.style}})})}),zu.displayName=Ai,Tu="ScrollAreaViewport",Lu=l.forwardRef((e,t)=>{let{__scopeScrollArea:r,children:n,asChild:a,nonce:o,...i}=e,s=Ve(Tu,r),c=l.useRef(null),d=br(t,c,s.onViewportChange);return O.jsxs(O.Fragment,{children:[O.jsx("style",{dangerouslySetInnerHTML:{__html:` +[data-radix-scroll-area-viewport] { + scrollbar-width: none; + -ms-overflow-style: none; + -webkit-overflow-scrolling: touch; +} +[data-radix-scroll-area-viewport]::-webkit-scrollbar { + display: none; +} +:where([data-radix-scroll-area-viewport]) { + display: flex; + flex-direction: column; + align-items: stretch; +} +:where([data-radix-scroll-area-content]) { + flex-grow: 1; +} +`},nonce:o}),O.jsx($n.div,{"data-radix-scroll-area-viewport":"",...i,asChild:a,ref:d,style:{overflowX:s.scrollbarXEnabled?"scroll":"hidden",overflowY:s.scrollbarYEnabled?"scroll":"hidden",...e.style},children:dm({asChild:a,children:n},f=>O.jsx("div",{"data-radix-scroll-area-content":"",ref:s.onContentChange,style:{minWidth:s.scrollbarXEnabled?"fit-content":void 0},children:f}))})]})}),Lu.displayName=Tu,at="ScrollAreaScrollbar",Mu=l.forwardRef((e,t)=>{let{forceMount:r,...n}=e,a=Ve(at,e.__scopeScrollArea),{onScrollbarXEnabledChange:o,onScrollbarYEnabledChange:i}=a,s=e.orientation==="horizontal";return l.useEffect(()=>(s?o(!0):i(!0),()=>{s?o(!1):i(!1)}),[s,o,i]),a.type==="hover"?O.jsx(fm,{...n,ref:t,forceMount:r}):a.type==="scroll"?O.jsx(hm,{...n,ref:t,forceMount:r}):a.type==="auto"?O.jsx(Ou,{...n,ref:t,forceMount:r}):a.type==="always"?O.jsx(ki,{...n,ref:t}):null}),Mu.displayName=at,fm=l.forwardRef((e,t)=>{let{forceMount:r,...n}=e,a=Ve(at,e.__scopeScrollArea),[o,i]=l.useState(!1);return l.useEffect(()=>{let s=a.scrollArea,c=0;if(s){let d=u(()=>{window.clearTimeout(c),i(!0)},"handlePointerEnter"),f=u(()=>{c=window.setTimeout(()=>i(!1),a.scrollHideDelay)},"handlePointerLeave");return s.addEventListener("pointerenter",d),s.addEventListener("pointerleave",f),()=>{window.clearTimeout(c),s.removeEventListener("pointerenter",d),s.removeEventListener("pointerleave",f)}}},[a.scrollArea,a.scrollHideDelay]),O.jsx(Kn,{present:r||o,children:O.jsx(Ou,{"data-state":o?"visible":"hidden",...n,ref:t})})}),hm=l.forwardRef((e,t)=>{let{forceMount:r,...n}=e,a=Ve(at,e.__scopeScrollArea),o=e.orientation==="horizontal",i=qa(()=>c("SCROLL_END"),100),[s,c]=um("hidden",{hidden:{SCROLL:"scrolling"},scrolling:{SCROLL_END:"idle",POINTER_ENTER:"interacting"},interacting:{SCROLL:"interacting",POINTER_LEAVE:"idle"},idle:{HIDE:"hidden",SCROLL:"scrolling",POINTER_ENTER:"interacting"}});return l.useEffect(()=>{if(s==="idle"){let d=window.setTimeout(()=>c("HIDE"),a.scrollHideDelay);return()=>window.clearTimeout(d)}},[s,a.scrollHideDelay,c]),l.useEffect(()=>{let d=a.viewport,f=o?"scrollLeft":"scrollTop";if(d){let h=d[f],p=u(()=>{let m=d[f];h!==m&&(c("SCROLL"),i()),h=m},"handleScroll");return d.addEventListener("scroll",p),()=>d.removeEventListener("scroll",p)}},[a.viewport,o,c,i]),O.jsx(Kn,{present:r||s!=="hidden",children:O.jsx(ki,{"data-state":s==="hidden"?"hidden":"visible",...n,ref:t,onPointerEnter:mr(e.onPointerEnter,()=>c("POINTER_ENTER")),onPointerLeave:mr(e.onPointerLeave,()=>c("POINTER_LEAVE"))})})}),Ou=l.forwardRef((e,t)=>{let r=Ve(at,e.__scopeScrollArea),{forceMount:n,...a}=e,[o,i]=l.useState(!1),s=e.orientation==="horizontal",c=qa(()=>{if(r.viewport){let d=r.viewport.offsetWidth{let{orientation:r="vertical",...n}=e,a=Ve(at,e.__scopeScrollArea),o=l.useRef(null),i=l.useRef(0),[s,c]=l.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),d=od(s.viewport,s.content),f={...n,sizes:s,onSizesChange:c,hasThumb:d>0&&d<1,onThumbChange:u(p=>o.current=p,"onThumbChange"),onThumbPointerUp:u(()=>i.current=0,"onThumbPointerUp"),onThumbPointerDown:u(p=>i.current=p,"onThumbPointerDown")};function h(p,m){return cm(p,i.current,s,m)}return u(h,"getScrollPosition"),r==="horizontal"?O.jsx(mm,{...f,ref:t,onThumbPositionChange:u(()=>{if(a.viewport&&o.current){let p=a.viewport.scrollLeft,m=Bu(p,s,a.dir);o.current.style.transform=`translate3d(${m}px, 0, 0)`}},"onThumbPositionChange"),onWheelScroll:u(p=>{a.viewport&&(a.viewport.scrollLeft=p)},"onWheelScroll"),onDragScroll:u(p=>{a.viewport&&(a.viewport.scrollLeft=h(p,a.dir))},"onDragScroll")}):r==="vertical"?O.jsx(gm,{...f,ref:t,onThumbPositionChange:u(()=>{if(a.viewport&&o.current){let p=a.viewport.scrollTop,m=Bu(p,s);o.current.style.transform=`translate3d(0, ${m}px, 0)`}},"onThumbPositionChange"),onWheelScroll:u(p=>{a.viewport&&(a.viewport.scrollTop=p)},"onWheelScroll"),onDragScroll:u(p=>{a.viewport&&(a.viewport.scrollTop=h(p))},"onDragScroll")}):null}),mm=l.forwardRef((e,t)=>{let{sizes:r,onSizesChange:n,...a}=e,o=Ve(at,e.__scopeScrollArea),[i,s]=l.useState(),c=l.useRef(null),d=br(t,c,o.onScrollbarXChange);return l.useEffect(()=>{c.current&&s(getComputedStyle(c.current))},[c]),O.jsx(Nu,{"data-orientation":"horizontal",...a,ref:d,sizes:r,style:{bottom:0,left:o.dir==="rtl"?"var(--radix-scroll-area-corner-width)":0,right:o.dir==="ltr"?"var(--radix-scroll-area-corner-width)":0,"--radix-scroll-area-thumb-width":ko(r)+"px",...e.style},onThumbPointerDown:u(f=>e.onThumbPointerDown(f.x),"onThumbPointerDown"),onDragScroll:u(f=>e.onDragScroll(f.x),"onDragScroll"),onWheelScroll:u((f,h)=>{if(o.viewport){let p=o.viewport.scrollLeft+f.deltaX;e.onWheelScroll(p),Ru(p,h)&&f.preventDefault()}},"onWheelScroll"),onResize:u(()=>{c.current&&o.viewport&&i&&n({content:o.viewport.scrollWidth,viewport:o.viewport.offsetWidth,scrollbar:{size:c.current.clientWidth,paddingStart:Ua(i.paddingLeft),paddingEnd:Ua(i.paddingRight)}})},"onResize")})}),gm=l.forwardRef((e,t)=>{let{sizes:r,onSizesChange:n,...a}=e,o=Ve(at,e.__scopeScrollArea),[i,s]=l.useState(),c=l.useRef(null),d=br(t,c,o.onScrollbarYChange);return l.useEffect(()=>{c.current&&s(getComputedStyle(c.current))},[c]),O.jsx(Nu,{"data-orientation":"vertical",...a,ref:d,sizes:r,style:{top:0,right:o.dir==="ltr"?0:void 0,left:o.dir==="rtl"?0:void 0,bottom:"var(--radix-scroll-area-corner-height)","--radix-scroll-area-thumb-height":ko(r)+"px",...e.style},onThumbPointerDown:u(f=>e.onThumbPointerDown(f.y),"onThumbPointerDown"),onDragScroll:u(f=>e.onDragScroll(f.y),"onDragScroll"),onWheelScroll:u((f,h)=>{if(o.viewport){let p=o.viewport.scrollTop+f.deltaY;e.onWheelScroll(p),Ru(p,h)&&f.preventDefault()}},"onWheelScroll"),onResize:u(()=>{c.current&&o.viewport&&i&&n({content:o.viewport.scrollHeight,viewport:o.viewport.offsetHeight,scrollbar:{size:c.current.clientHeight,paddingStart:Ua(i.paddingTop),paddingEnd:Ua(i.paddingBottom)}})},"onResize")})}),[vm,Pu]=Iu(at),Nu=l.forwardRef((e,t)=>{let{__scopeScrollArea:r,sizes:n,hasThumb:a,onThumbChange:o,onThumbPointerUp:i,onThumbPointerDown:s,onThumbPositionChange:c,onDragScroll:d,onWheelScroll:f,onResize:h,...p}=e,m=Ve(at,r),[g,v]=l.useState(null),b=br(t,_=>v(_)),C=l.useRef(null),E=l.useRef(""),D=m.viewport,w=n.content-n.viewport,x=Dr(f),S=Dr(c),F=qa(h,10);function A(_){if(C.current){let R=_.clientX-C.current.left,I=_.clientY-C.current.top;d({x:R,y:I})}}return u(A,"handleDragScroll"),l.useEffect(()=>{let _=u(R=>{let I=R.target;g!=null&&g.contains(I)&&x(R,w)},"handleWheel");return document.addEventListener("wheel",_,{passive:!1}),()=>document.removeEventListener("wheel",_,{passive:!1})},[D,g,w,x]),l.useEffect(S,[n,S]),jr(g,F),jr(m.content,F),O.jsx(vm,{scope:r,scrollbar:g,hasThumb:a,onThumbChange:Dr(o),onThumbPointerUp:Dr(i),onThumbPositionChange:S,onThumbPointerDown:Dr(s),children:O.jsx($n.div,{...p,ref:b,style:{position:"absolute",...p.style},onPointerDown:mr(e.onPointerDown,_=>{_.button===0&&(_.target.setPointerCapture(_.pointerId),C.current=g.getBoundingClientRect(),E.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect="none",m.viewport&&(m.viewport.style.scrollBehavior="auto"),A(_))}),onPointerMove:mr(e.onPointerMove,A),onPointerUp:mr(e.onPointerUp,_=>{let R=_.target;R.hasPointerCapture(_.pointerId)&&R.releasePointerCapture(_.pointerId),document.body.style.webkitUserSelect=E.current,m.viewport&&(m.viewport.style.scrollBehavior=""),C.current=null})})})}),Wa="ScrollAreaThumb",$u=l.forwardRef((e,t)=>{let{forceMount:r,...n}=e,a=Pu(Wa,e.__scopeScrollArea);return O.jsx(Kn,{present:r||a.hasThumb,children:O.jsx(ym,{ref:t,...n})})}),ym=l.forwardRef((e,t)=>{let{__scopeScrollArea:r,style:n,...a}=e,o=Ve(Wa,r),i=Pu(Wa,r),{onThumbPositionChange:s}=i,c=br(t,h=>i.onThumbChange(h)),d=l.useRef(),f=qa(()=>{d.current&&(d.current(),d.current=void 0)},100);return l.useEffect(()=>{let h=o.viewport;if(h){let p=u(()=>{if(f(),!d.current){let m=wm(h,s);d.current=m,s()}},"handleScroll");return s(),h.addEventListener("scroll",p),()=>h.removeEventListener("scroll",p)}},[o.viewport,f,s]),O.jsx($n.div,{"data-state":i.hasThumb?"visible":"hidden",...a,ref:c,style:{width:"var(--radix-scroll-area-thumb-width)",height:"var(--radix-scroll-area-thumb-height)",...n},onPointerDownCapture:mr(e.onPointerDownCapture,h=>{let p=h.target.getBoundingClientRect(),m=h.clientX-p.left,g=h.clientY-p.top;i.onThumbPointerDown({x:m,y:g})}),onPointerUp:mr(e.onPointerUp,i.onThumbPointerUp)})}),$u.displayName=Wa,_i="ScrollAreaCorner",Hu=l.forwardRef((e,t)=>{let r=Ve(_i,e.__scopeScrollArea),n=!!(r.scrollbarX&&r.scrollbarY);return r.type!=="scroll"&&n?O.jsx(bm,{...e,ref:t}):null}),Hu.displayName=_i,bm=l.forwardRef((e,t)=>{let{__scopeScrollArea:r,...n}=e,a=Ve(_i,r),[o,i]=l.useState(0),[s,c]=l.useState(0),d=!!(o&&s);return jr(a.scrollbarX,()=>{var h;let f=((h=a.scrollbarX)==null?void 0:h.offsetHeight)||0;a.onCornerHeightChange(f),c(f)}),jr(a.scrollbarY,()=>{var h;let f=((h=a.scrollbarY)==null?void 0:h.offsetWidth)||0;a.onCornerWidthChange(f),i(f)}),d?O.jsx($n.div,{...n,ref:t,style:{width:o,height:s,position:"absolute",right:a.dir==="ltr"?0:void 0,left:a.dir==="rtl"?0:void 0,bottom:0,...e.style}}):null}),u(Ua,"toInt"),u(od,"getThumbRatio"),u(ko,"getThumbSize"),u(cm,"getScrollPositionFromPointer"),u(Bu,"getThumbOffsetFromScroll"),u(kp,"linearScale"),u(Ru,"isScrollingWithinScrollbarBounds"),wm=u((e,t=()=>{})=>{let r={left:e.scrollLeft,top:e.scrollTop},n=0;return u(function a(){let o={left:e.scrollLeft,top:e.scrollTop},i=r.left!==o.left,s=r.top!==o.top;(i||s)&&t(),r=o,n=window.requestAnimationFrame(a)},"loop")(),()=>window.cancelAnimationFrame(n)},"addUnlinkedScrollListener"),u(qa,"useDebounceCallback"),u(jr,"useResizeObserver"),u(dm,"getSubtree"),ib=zu,lb=Lu,sb=Mu,ub=$u,cb=Hu}),Dm,Em,ju,Vu,Oo,_p=z(()=>{JF(),Dm=k(ib)(({scrollbarsize:e,offset:t})=>({width:"100%",height:"100%",overflow:"hidden","--scrollbar-size":`${e+t}px`,"--radix-scroll-area-thumb-width":`${e}px`})),Em=k(lb)({width:"100%",height:"100%"}),ju=k(sb)(({offset:e,horizontal:t,vertical:r})=>({display:"flex",userSelect:"none",touchAction:"none",background:"transparent",transition:"all 0.2s ease-out",borderRadius:"var(--scrollbar-size)",zIndex:1,'&[data-orientation="vertical"]':{width:"var(--scrollbar-size)",paddingRight:e,marginTop:e,marginBottom:t==="true"&&r==="true"?0:e},'&[data-orientation="horizontal"]':{flexDirection:"column",height:"var(--scrollbar-size)",paddingBottom:e,marginLeft:e,marginRight:t==="true"&&r==="true"?0:e}})),Vu=k(ub)(({theme:e})=>({flex:1,background:e.textMutedColor,opacity:.5,borderRadius:"var(--scrollbar-size)",position:"relative",transition:"opacity 0.2s ease-out","&:hover":{opacity:.8},"::before":{content:'""',position:"absolute",top:"50%",left:"50%",transform:"translate(-50%,-50%)",width:"100%",height:"100%"}})),Oo=l.forwardRef(({children:e,horizontal:t=!1,vertical:r=!1,offset:n=2,scrollbarSize:a=6,className:o},i)=>y.createElement(Dm,{scrollbarsize:a,offset:n,className:o},y.createElement(Em,{ref:i},e),t&&y.createElement(ju,{orientation:"horizontal",offset:n,horizontal:t.toString(),vertical:r.toString()},y.createElement(Vu,null)),r&&y.createElement(ju,{orientation:"vertical",offset:n,horizontal:t.toString(),vertical:r.toString()},y.createElement(Vu,null)),t&&r&&y.createElement(cb,null))),Oo.displayName="ScrollArea"}),Bp={};Aa(Bp,{SyntaxHighlighter:()=>_o,createCopyToClipboardFunction:()=>Tl,default:()=>db,supportedLanguages:()=>id});const{logger:XF}=__STORYBOOK_MODULE_CLIENT_LOGGER__;function Tl(){return co!=null&&co.clipboard?e=>co.clipboard.writeText(e):async e=>{let t=Hn.createElement("TEXTAREA"),r=Hn.activeElement;t.value=e,Hn.body.appendChild(t),t.select(),Hn.execCommand("copy"),Hn.body.removeChild(t),r.focus()}}var Cm,co,Hn,xm,id,Sm,Fm,Am,km,_m,Bm,Rm,Uu,Im,zm,_o,db,Ts=z(()=>{vp(),Cm=Ce(Bs(),1),CF(),SF(),FF(),kF(),BF(),IF(),zF(),LF(),MF(),PF(),NF(),HF(),EF(),Zy(),_p(),{navigator:co,document:Hn,window:xm}=_s,id={jsextra:$y,jsx:Vy,json:Hy,yml:Yy,md:Uy,bash:Oy,css:Py,html:qy,tsx:Gy,typescript:Ky,graphql:Ny},Object.entries(id).forEach(([e,t])=>{al.registerLanguage(e,t)}),Sm=(0,Cm.default)(2)(e=>Object.entries(e.code||{}).reduce((t,[r,n])=>({...t,[`* .${r}`]:n}),{})),Fm=Tl(),u(Tl,"createCopyToClipboardFunction"),Am=k.div(({theme:e})=>({position:"relative",overflow:"hidden",color:e.color.defaultText}),({theme:e,bordered:t})=>t?{border:`1px solid ${e.appBorderColor}`,borderRadius:e.borderRadius,background:e.background.content}:{},({showLineNumbers:e})=>e?{".react-syntax-highlighter-line-number::before":{content:"attr(data-line-number)"}}:{}),km=u(({children:e,className:t})=>y.createElement(Oo,{horizontal:!0,vertical:!0,className:t},e),"UnstyledScroller"),_m=k(km)({position:"relative"},({theme:e})=>Sm(e)),Bm=k.pre(({theme:e,padded:t})=>({display:"flex",justifyContent:"flex-start",margin:0,padding:t?e.layoutMargin:0})),Rm=k.div(({theme:e})=>({flex:1,paddingLeft:2,paddingRight:e.layoutMargin,opacity:1,fontFamily:e.typography.fonts.mono})),Uu=u(e=>{let t=[...e.children],r=t[0],n=r.children[0].value,a={...r,children:[],properties:{...r.properties,"data-line-number":n,style:{...r.properties.style,userSelect:"auto"}}};return t[0]=a,{...e,children:t}},"processLineNumber"),Im=u(({rows:e,stylesheet:t,useInlineStyles:r})=>e.map((n,a)=>Is({node:Uu(n),stylesheet:t,useInlineStyles:r,key:`code-segement${a}`})),"defaultRenderer"),zm=u((e,t)=>t?e?({rows:r,...n})=>e({rows:r.map(a=>Uu(a)),...n}):Im:e,"wrapRenderer"),_o=u(({children:e,language:t="jsx",copyable:r=!1,bordered:n=!1,padded:a=!1,format:o=!0,formatter:i=void 0,className:s=void 0,showLineNumbers:c=!1,...d})=>{if(typeof e!="string"||!e.trim())return null;let[f,h]=l.useState("");l.useEffect(()=>{i?i(o,e).then(h):h(e.trim())},[e,o,i]);let[p,m]=l.useState(!1),g=l.useCallback(b=>{b.preventDefault(),Fm(f).then(()=>{m(!0),xm.setTimeout(()=>m(!1),1500)}).catch(XF.error)},[f]),v=zm(d.renderer,c);return y.createElement(Am,{bordered:n,padded:a,showLineNumbers:c,className:s},y.createElement(_m,null,y.createElement(al,{padded:a||n,language:t,showLineNumbers:c,showInlineLineNumbers:c,useInlineStyles:!1,PreTag:Bm,CodeTag:Rm,lineNumberContainerStyle:{},...d,renderer:v},f)),r?y.createElement(zs,{actionItems:[{title:p?"Copied":"Copy",onClick:g}]}):null)},"SyntaxHighlighter"),_o.registerLanguage=(...e)=>al.registerLanguage(...e),db=_o});function Tm(e){if(typeof e=="string")return Qp;if(Array.isArray(e))return ef;if(!e)return;let{type:t}=e;if(tf.has(t))return t}function Lm(e){let t=e===null?"null":typeof e;if(t!=="string"&&t!=="object")return`Unexpected doc '${t}', +Expected it to be 'string' or 'object'.`;if(rf(e))throw new Error("doc is valid.");let r=Object.prototype.toString.call(e);if(r!=="[object Object]")return`Unexpected doc '${r}'.`;let n=g7([...tf].map(a=>`'${a}'`));return`Unexpected doc.type '${e.type}'. +Expected it to be ${n}.`}function Dt(e){return Br(e),{type:Nl,contents:e}}function Rp(e,t){return Br(t),{type:$l,contents:t,n:e}}function pe(e,t={}){return Br(e),Hs(t.expandedStates,!0),{type:Hl,id:t.id,contents:e,break:!!t.shouldBreak,expandedStates:t.expandedStates}}function pb(e){return Rp(Number.NEGATIVE_INFINITY,e)}function fb(e){return Rp({type:"root"},e)}function Ip(e){return Hs(e),{type:jl,parts:e}}function Po(e,t="",r={}){return Br(e),t!==""&&Br(t),{type:Vl,breakContents:e,flatContents:t,groupId:r.groupId}}function hb(e,t){return Br(e),{type:Ul,contents:e,groupId:t.groupId,negate:t.negate}}function bn(e,t){Br(e),Hs(t);let r=[];for(let n=0;ntypeof r=="string"?bn(t,r.split(` +`)):r)}function Mm(e,t){let r=t===!0||t===go?go:bd,n=r===go?bd:go,a=0,o=0;for(let i of e)i===r?a++:i===n&&o++;return a>o?n:r}function Om(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}function Pm(e){return(e==null?void 0:e.type)==="front-matter"}function qu(e,t){var r;if(e.type==="text"||e.type==="comment"||ii(e)||e.type==="yaml"||e.type==="toml")return null;if(e.type==="attribute"&&delete t.value,e.type==="docType"&&delete t.value,e.type==="angularControlFlowBlock"&&(r=e.parameters)!=null&&r.children)for(let n of t.parameters.children)D7.has(e.name)?delete n.expression:n.expression=n.expression.trim();e.type==="angularIcuExpression"&&(t.switchValue=e.switchValue.trim()),e.type==="angularLetDeclarationInitializer"&&delete t.value}async function Nm(e,t){if(e.language==="yaml"){let r=e.value.trim(),n=r?await t(r,{parser:"yaml"}):"";return fb([e.startDelimiter,e.explicitLanguage,ae,n,n?ae:"",e.endDelimiter])}}function ti(e,t=!0){return[Dt([Ee,e]),t?Ee:""]}function wn(e,t){let r=e.type==="NGRoot"?e.node.type==="NGMicrosyntax"&&e.node.body.length===1&&e.node.body[0].type==="NGMicrosyntaxExpression"?e.node.body[0].expression:e.node:e.type==="JsExpressionRoot"?e.node:e;return r&&(r.type==="ObjectExpression"||r.type==="ArrayExpression"||(t.parser==="__vue_expression"||t.parser==="__vue_ts_expression")&&(r.type==="TemplateLiteral"||r.type==="StringLiteral"))}async function Je(e,t,r,n){r={__isInHtmlAttribute:!0,__embeddedInHtml:!0,...r};let a=!0;n&&(r.__onHtmlBindingRoot=(i,s)=>{a=n(i,s)});let o=await t(e,r,t);return a?pe(o):ti(o)}function $m(e,t,r,n){let{node:a}=r,o=n.originalText.slice(a.sourceSpan.start.offset,a.sourceSpan.end.offset);return/^\s*$/u.test(o)?"":Je(o,e,{parser:"__ng_directive",__isInHtmlAttribute:!1},wn)}function ld(e,t){if(!t)return;let r=x7(t).toLowerCase();return e.find(({filenames:n})=>n==null?void 0:n.some(a=>a.toLowerCase()===r))??e.find(({extensions:n})=>n==null?void 0:n.some(a=>r.endsWith(a)))}function mb(e,t){if(t)return e.find(({name:r})=>r.toLowerCase()===t)??e.find(({aliases:r})=>r==null?void 0:r.includes(t))??e.find(({extensions:r})=>r==null?void 0:r.includes(`.${t}`))}function Hm(e,t){let r=e.plugins.flatMap(a=>a.languages??[]),n=mb(r,t.language)??ld(r,t.physicalFile)??ld(r,t.file)??(t.physicalFile,void 0);return n==null?void 0:n.parsers[0]}function jm(e){return e.type==="element"&&!e.hasExplicitNamespace&&!["html","svg"].includes(e.namespace)}function Tp(e,t){return!!(e.type==="ieConditionalComment"&&e.lastChild&&!e.lastChild.isSelfClosing&&!e.lastChild.endSourceSpan||e.type==="ieConditionalComment"&&!e.complete||dn(e)&&e.children.some(r=>r.type!=="text"&&r.type!=="interpolation")||Ms(e,t)&&!jt(e)&&e.type!=="interpolation")}function ri(e){return e.type==="attribute"||!e.parent||!e.prev?!1:gb(e.prev)}function gb(e){return e.type==="comment"&&e.value.trim()==="prettier-ignore"}function qe(e){return e.type==="text"||e.type==="comment"}function jt(e){return e.type==="element"&&(e.fullName==="script"||e.fullName==="style"||e.fullName==="svg:style"||e.fullName==="svg:script"||ya(e)&&(e.name==="script"||e.name==="style"))}function vb(e){return e.children&&!jt(e)}function yb(e){return jt(e)||e.type==="interpolation"||Lp(e)}function Lp(e){return jp(e).startsWith("pre")}function bb(e,t){var r,n;let a=o();if(a&&!e.prev&&(n=(r=e.parent)==null?void 0:r.tagDefinition)!=null&&n.ignoreFirstLf)return e.type==="interpolation";return a;function o(){return ii(e)||e.type==="angularControlFlowBlock"?!1:(e.type==="text"||e.type==="interpolation")&&e.prev&&(e.prev.type==="text"||e.prev.type==="interpolation")?!0:!e.parent||e.parent.cssDisplay==="none"?!1:dn(e.parent)?!0:!(!e.prev&&(e.parent.type==="root"||dn(e)&&e.parent||jt(e.parent)||ni(e.parent,t)||!kb(e.parent.cssDisplay))||e.prev&&!Rb(e.prev.cssDisplay))}}function wb(e,t){return ii(e)||e.type==="angularControlFlowBlock"?!1:(e.type==="text"||e.type==="interpolation")&&e.next&&(e.next.type==="text"||e.next.type==="interpolation")?!0:!e.parent||e.parent.cssDisplay==="none"?!1:dn(e.parent)?!0:!(!e.next&&(e.parent.type==="root"||dn(e)&&e.parent||jt(e.parent)||ni(e.parent,t)||!_b(e.parent.cssDisplay))||e.next&&!Bb(e.next.cssDisplay))}function Db(e){return Ib(e.cssDisplay)&&!jt(e)}function po(e){return ii(e)||e.next&&e.sourceSpan.end&&e.sourceSpan.end.line+10&&(["body","script","style"].includes(e.name)||e.children.some(t=>xb(t)))||e.firstChild&&e.firstChild===e.lastChild&&e.firstChild.type!=="text"&&Pp(e.firstChild)&&(!e.lastChild.isTrailingSpaceSensitive||Np(e.lastChild))}function Mp(e){return e.type==="element"&&e.children.length>0&&(["html","head","ul","ol","select"].includes(e.name)||e.cssDisplay.startsWith("table")&&e.cssDisplay!=="table-cell")}function ol(e){return $p(e)||e.prev&&Cb(e.prev)||Op(e)}function Cb(e){return $p(e)||e.type==="element"&&e.fullName==="br"||Op(e)}function Op(e){return Pp(e)&&Np(e)}function Pp(e){return e.hasLeadingSpaces&&(e.prev?e.prev.sourceSpan.end.linee.sourceSpan.end.line:e.parent.type==="root"||e.parent.endSourceSpan&&e.parent.endSourceSpan.start.line>e.sourceSpan.end.line)}function $p(e){switch(e.type){case"ieConditionalComment":case"comment":case"directive":return!0;case"element":return["script","select"].includes(e.name)}return!1}function Ls(e){return e.lastChild?Ls(e.lastChild):e}function xb(e){var t;return(t=e.children)==null?void 0:t.some(r=>r.type!=="text")}function Hp(e){if(e)switch(e){case"module":case"text/javascript":case"text/babel":case"application/javascript":return"babel";case"application/x-typescript":return"typescript";case"text/markdown":return"markdown";case"text/html":return"html";case"text/x-handlebars-template":return"glimmer";default:if(e.endsWith("json")||e.endsWith("importmap")||e==="speculationrules")return"json"}}function Sb(e,t){let{name:r,attrMap:n}=e;if(r!=="script"||Object.prototype.hasOwnProperty.call(n,"src"))return;let{type:a,lang:o}=e.attrMap;return!o&&!a?"babel":li(t,{language:o})??Hp(a)}function Fb(e,t){if(!Ms(e,t))return;let{attrMap:r}=e;if(Object.prototype.hasOwnProperty.call(r,"src"))return;let{type:n,lang:a}=r;return li(t,{language:a})??Hp(n)}function Ab(e,t){if(e.name!=="style")return;let{lang:r}=e.attrMap;return r?li(t,{language:r}):"css"}function sd(e,t){return Sb(e,t)??Ab(e,t)??Fb(e,t)}function ka(e){return e==="block"||e==="list-item"||e.startsWith("table")}function kb(e){return!ka(e)&&e!=="inline-block"}function _b(e){return!ka(e)&&e!=="inline-block"}function Bb(e){return!ka(e)}function Rb(e){return!ka(e)}function Ib(e){return!ka(e)&&e!=="inline-block"}function dn(e){return jp(e).startsWith("pre")}function zb(e,t){let r=e;for(;r;){if(t(r))return!0;r=r.parent}return!1}function Tb(e,t){var r;if(Dn(e,t))return"block";if(((r=e.prev)==null?void 0:r.type)==="comment"){let a=e.prev.value.match(/^\s*display:\s*([a-z]+)\s*$/u);if(a)return a[1]}let n=!1;if(e.type==="element"&&e.namespace==="svg")if(zb(e,a=>a.fullName==="svg:foreignObject"))n=!0;else return e.name==="svg"?"inline-block":"block";switch(t.htmlWhitespaceSensitivity){case"strict":return"inline";case"ignore":return"block";default:return e.type==="element"&&(!e.namespace||n||ya(e))&&F7[e.name]||S7}}function jp(e){return e.type==="element"&&(!e.namespace||ya(e))&&k7[e.name]||A7}function Lb(e){let t=Number.POSITIVE_INFINITY;for(let r of e.split(` +`)){if(r.length===0)continue;let n=dt.getLeadingWhitespaceCount(r);if(n===0)return 0;r.length!==n&&nr.slice(t)).join(` +`)}function Up(e){return Pe(!1,Pe(!1,e,"'","'"),""",'"')}function sr(e){return Up(e.value)}function ni(e,t){return Dn(e,t)&&!B7.has(e.fullName)}function Dn(e,t){return t.parser==="vue"&&e.type==="element"&&e.parent.type==="root"&&e.fullName.toLowerCase()!=="html"}function Ms(e,t){return Dn(e,t)&&(ni(e,t)||e.attrMap.lang&&e.attrMap.lang!=="html")}function Mb(e){let t=e.fullName;return t.charAt(0)==="#"||t==="slot-scope"||t==="v-slot"||t.startsWith("v-slot:")}function Ob(e,t){let r=e.parent;if(!Dn(r,t))return!1;let n=r.fullName,a=e.fullName;return n==="script"&&a==="setup"||n==="style"&&a==="vars"}function qp(e,t=e.value){return e.parent.isWhitespaceSensitive?e.parent.isIndentationSensitive?Ze(t):Ze(Vp(nf(t)),ae):bn(ve,dt.split(t))}function Wp(e,t){return Dn(e,t)&&e.name==="script"}async function Pb(e,t){let r=[];for(let[n,a]of e.split(af).entries())if(n%2===0)r.push(Ze(a));else try{r.push(pe(["{{",Dt([ve,await Je(a,t,{parser:"__ng_interpolation",__isInHtmlInterpolation:!0})]),ve,"}}"]))}catch{r.push("{{",Ze(a),"}}")}return r}function Bi({parser:e}){return(t,r,n)=>Je(sr(n.node),t,{parser:e},wn)}function Vm(e,t){if(t.parser!=="angular")return;let{node:r}=e,n=r.fullName;if(n.startsWith("(")&&n.endsWith(")")||n.startsWith("on-"))return R7;if(n.startsWith("[")&&n.endsWith("]")||/^bind(?:on)?-/u.test(n)||/^ng-(?:if|show|hide|class|style)$/u.test(n))return I7;if(n.startsWith("*"))return z7;let a=sr(r);if(/^i18n(?:-.+)?$/u.test(n))return()=>ti(Ip(qp(r,a.trim())),!a.includes("@@"));if(af.test(a))return o=>Pb(a,o)}function Um(e,t){let{node:r}=e,n=sr(r);if(r.fullName==="class"&&!t.parentParser&&!n.includes("{{"))return()=>n.trim().split(/\s+/u).join(" ")}function ud(e){return e===" "||e===` +`||e==="\f"||e==="\r"||e===" "}function qm(e){let t=e.length,r,n,a,o,i,s=0,c;function d(m){let g,v=m.exec(e.substring(s));if(v)return[g]=v,s+=g.length,g}u(d,"p");let f=[];for(;;){if(d(O7),s>=t){if(f.length===0)throw new Error("Must contain one or more image candidate strings.");return f}c=s,r=d(P7),n=[],r.slice(-1)===","?(r=r.replace(N7,""),p()):h()}function h(){for(d(M7),a="",o="in descriptor";;){if(i=e.charAt(s),o==="in descriptor")if(ud(i))a&&(n.push(a),a="",o="after descriptor");else if(i===","){s+=1,a&&n.push(a),p();return}else if(i==="(")a+=i,o="in parens";else if(i===""){a&&n.push(a),p();return}else a+=i;else if(o==="in parens")if(i===")")a+=i,o="in descriptor";else if(i===""){n.push(a),p();return}else a+=i;else if(o==="after descriptor"&&!ud(i))if(i===""){p();return}else o="in descriptor",s-=1;s+=1}}u(h,"f");function p(){let m=!1,g,v,b,C,E={},D,w,x,S,F;for(C=0;CNb(sr(e.node))}function Nb(e){let t=H7(e),r=j7.filter(f=>t.some(h=>Object.prototype.hasOwnProperty.call(h,f)));if(r.length>1)throw new Error("Mixed descriptor in srcset is not supported");let[n]=r,a=Dd[n],o=t.map(f=>f.source.value),i=Math.max(...o.map(f=>f.length)),s=t.map(f=>f[n]?String(f[n].value):""),c=s.map(f=>{let h=f.indexOf(".");return h===-1?f.length:h}),d=Math.max(...c);return ti(bn([",",ve],o.map((f,h)=>{let p=[f],m=s[h];if(m){let g=i-f.length+1,v=d-c[h],b=" ".repeat(g+v);p.push(Po(b," "),m+a)}return p})))}function $b(e,t){let{node:r}=e,n=sr(e.node).trim();if(r.fullName==="style"&&!t.parentParser&&!n.includes("{{"))return async a=>ti(await a(n,{parser:"css",__isHTMLStyleAttribute:!0}))}function Gm(e,t){let{root:r}=e;return ll.has(r)||ll.set(r,r.children.some(n=>Wp(n,t)&&["ts","typescript"].includes(n.attrMap.lang))),ll.get(r)}function Hb(e,t,r){let{node:n}=r,a=sr(n);return Je(`type T<${a}> = any`,e,{parser:"babel-ts",__isEmbeddedTypescriptGenericParameters:!0},wn)}function jb(e,t,{parseWithTs:r}){return Je(`function _(${e}) {}`,t,{parser:r?"babel-ts":"babel",__isVueBindings:!0})}async function Vb(e,t,r,n){let a=sr(r.node),{left:o,operator:i,right:s}=Ub(a),c=js(r,n);return[pe(await Je(`function _(${o}) {}`,e,{parser:c?"babel-ts":"babel",__isVueForBindingLeft:!0}))," ",i," ",await Je(s,e,{parser:c?"__ts_expression":"__js_expression"})]}function Ub(e){let t=/(.*?)\s+(in|of)\s+(.*)/su,r=/,([^,\]}]*)(?:,([^,\]}]*))?$/u,n=/^\(|\)$/gu,a=e.match(t);if(!a)return;let o={};if(o.for=a[3].trim(),!o.for)return;let i=Pe(!1,a[1].trim(),n,""),s=i.match(r);s?(o.alias=i.replace(r,""),o.iterator1=s[1].trim(),s[2]&&(o.iterator2=s[2].trim())):o.alias=i;let c=[o.alias,o.iterator1,o.iterator2];if(!c.some((d,f)=>!d&&(f===0||c.slice(f+1).some(Boolean))))return{left:c.filter(Boolean).join(","),operator:a[2],right:o.for}}function Km(e,t){if(t.parser!=="vue")return;let{node:r}=e,n=r.fullName;if(n==="v-for")return Vb;if(n==="generic"&&Wp(r.parent,t))return Hb;let a=sr(r),o=js(e,t);if(Mb(r)||Ob(r,t))return i=>jb(a,i,{parseWithTs:o});if(n.startsWith("@")||n.startsWith("v-on:"))return i=>qb(a,i,{parseWithTs:o});if(n.startsWith(":")||n.startsWith("v-bind:"))return i=>Wb(a,i,{parseWithTs:o});if(n.startsWith("v-"))return i=>Gp(a,i,{parseWithTs:o})}async function qb(e,t,{parseWithTs:r}){var n;try{return await Gp(e,t,{parseWithTs:r})}catch(a){if(((n=a.cause)==null?void 0:n.code)!=="BABEL_PARSER_SYNTAX_ERROR")throw a}return Je(e,t,{parser:r?"__vue_ts_event_binding":"__vue_event_binding"},wn)}function Wb(e,t,{parseWithTs:r}){return Je(e,t,{parser:r?"__vue_ts_expression":"__vue_expression"},wn)}function Gp(e,t,{parseWithTs:r}){return Je(e,t,{parser:r?"__ts_expression":"__js_expression"},wn)}function Ym(e,t){let{node:r}=e;if(r.value){if(/^PRETTIER_HTML_PLACEHOLDER_\d+_\d+_IN_JS$/u.test(t.originalText.slice(r.valueSpan.start.offset,r.valueSpan.end.offset))||t.parser==="lwc"&&r.value.startsWith("{")&&r.value.endsWith("}"))return[r.rawName,"=",r.value];for(let n of[V7,$b,L7,U7,T7]){let a=n(e,t);if(a)return Gb(a)}}}function Gb(e){return async(t,r,n,a)=>{let o=await e(t,r,n,a);if(o)return o=zp(o,i=>typeof i=="string"?Pe(!1,i,'"',"""):i),[n.node.rawName,'="',pe(o),'"']}}function Zm(e){return Array.isArray(e)&&e.length>0}function _a(e){return e.sourceSpan.start.offset}function Ba(e){return e.sourceSpan.end.offset}function Ll(e,t){return[e.isSelfClosing?"":Kb(e,t),Zn(e,t)]}function Kb(e,t){return e.lastChild&&va(e.lastChild)?"":[Yb(e,t),Os(e,t)]}function Zn(e,t){return(e.next?kr(e.next):Ia(e.parent))?"":[Ra(e,t),Ar(e,t)]}function Yb(e,t){return Ia(e)?Ra(e.lastChild,t):""}function Ar(e,t){return va(e)?Os(e.parent,t):ai(e)?Ps(e.next,t):""}function Os(e,t){if(of(!e.isSelfClosing),Kp(e,t))return"";switch(e.type){case"ieConditionalComment":return"";case"ieConditionalStartComment":return"]>";case"interpolation":return"}}";case"angularIcuExpression":return"}";case"element":if(e.isSelfClosing)return"/>";default:return">"}}function Kp(e,t){return!e.isSelfClosing&&!e.endSourceSpan&&(ri(e)||Tp(e.parent,t))}function kr(e){return e.prev&&e.prev.type!=="docType"&&e.type!=="angularControlFlowBlock"&&!qe(e.prev)&&e.isLeadingSpaceSensitive&&!e.hasLeadingSpaces}function Ia(e){var t;return((t=e.lastChild)==null?void 0:t.isTrailingSpaceSensitive)&&!e.lastChild.hasTrailingSpaces&&!qe(Ls(e.lastChild))&&!dn(e)}function va(e){return!e.next&&!e.hasTrailingSpaces&&e.isTrailingSpaceSensitive&&qe(Ls(e))}function ai(e){return e.next&&!qe(e.next)&&qe(e)&&e.isTrailingSpaceSensitive&&!e.hasTrailingSpaces}function Zb(e){let t=e.trim().match(/^prettier-ignore-attribute(?:\s+(.+))?$/su);return t?t[1]?t[1].split(/\s+/u):!0:!1}function oi(e){return!e.prev&&e.isLeadingSpaceSensitive&&!e.hasLeadingSpaces}function Jb(e,t,r){var n;let{node:a}=e;if(!Vs(a.attrs))return a.isSelfClosing?" ":"";let o=((n=a.prev)==null?void 0:n.type)==="comment"&&Zb(a.prev.value),i=typeof o=="boolean"?()=>o:Array.isArray(o)?h=>o.includes(h.rawName):()=>!1,s=e.map(({node:h})=>i(h)?Ze(t.originalText.slice(_a(h),Ba(h))):r(),"attrs"),c=a.type==="element"&&a.fullName==="script"&&a.attrs.length===1&&a.attrs[0].fullName==="src"&&a.children.length===0,d=t.singleAttributePerLine&&a.attrs.length>1&&!Dn(a,t)?ae:ve,f=[Dt([c?" ":ve,bn(d,s)])];return a.firstChild&&oi(a.firstChild)||a.isSelfClosing&&Ia(a.parent)||c?f.push(a.isSelfClosing?" ":""):f.push(t.bracketSameLine?a.isSelfClosing?" ":"":a.isSelfClosing?ve:Ee),f}function Xb(e){return e.firstChild&&oi(e.firstChild)?"":Ns(e)}function Ml(e,t,r){let{node:n}=e;return[Jn(n,t),Jb(e,t,r),n.isSelfClosing?"":Xb(n)]}function Jn(e,t){return e.prev&&ai(e.prev)?"":[_r(e,t),Ps(e,t)]}function _r(e,t){return oi(e)?Ns(e.parent):kr(e)?Ra(e.prev,t):""}function Ps(e,t){switch(e.type){case"ieConditionalComment":case"ieConditionalStartComment":return`<${e.rawName}`;default:return`<${e.rawName}`}}function Ns(e){switch(of(!e.isSelfClosing),e.type){case"ieConditionalComment":return"]>";case"element":if(e.condition)return">";default:return">"}}function Jm(e,t){if(!e.endSourceSpan)return"";let r=e.startSourceSpan.end.offset;e.firstChild&&oi(e.firstChild)&&(r-=Ns(e).length);let n=e.endSourceSpan.start.offset;return e.lastChild&&va(e.lastChild)?n+=Os(e,t).length:Ia(e)&&(n-=Ra(e.lastChild,t).length),t.originalText.slice(r,n)}function Xm(e,t){let{node:r}=e;switch(r.type){case"element":if(jt(r)||r.type==="interpolation")return;if(!r.isSelfClosing&&Ms(r,t)){let n=sd(r,t);return n?async(a,o)=>{let i=lf(r,t),s=/^\s*$/u.test(i),c="";return s||(c=await a(nf(i),{parser:n,__embeddedInHtml:!0}),s=c===""),[_r(r,t),pe(Ml(e,t,o)),s?"":ae,c,s?"":ae,Ll(r,t),Ar(r,t)]}:void 0}break;case"text":if(jt(r.parent)){let n=sd(r.parent,t);if(n)return async a=>{let o=n==="markdown"?Vp(r.value.replace(/^[^\S\n]*\n/u,"")):r.value,i={parser:n,__embeddedInHtml:!0};if(t.parser==="html"&&n==="babel"){let s="script",{attrMap:c}=r.parent;c&&(c.type==="module"||c.type==="text/babel"&&c["data-type"]==="module")&&(s="module"),i.__babelSourceType=s}return[Qn,_r(r,t),await a(o,i),Ar(r,t)]}}else if(r.parent.type==="interpolation")return async n=>{let a={__isInHtmlInterpolation:!0,__embeddedInHtml:!0};return t.parser==="angular"?a.parser="__ng_interpolation":t.parser==="vue"?a.parser=js(e,t)?"__vue_ts_expression":"__vue_expression":a.parser="__js_expression",[Dt([ve,await n(r.value,a)]),r.parent.next&&kr(r.parent.next)?" ":ve]};break;case"attribute":return q7(e,t);case"front-matter":return n=>E7(r,n);case"angularControlFlowBlockParameters":return W7.has(e.parent.name)?C7:void 0;case"angularLetDeclarationInitializer":return n=>Je(r.value,n,{parser:"__ng_binding",__isInHtmlAttribute:!1})}}function Xn(e){if(Vn!==null&&typeof Vn.property){let t=Vn;return Vn=Xn.prototype=null,t}return Vn=Xn.prototype=e??Object.create(null),new Xn}function Qb(e){return Xn(e)}function Qm(e,t="type"){Qb(e);function r(n){let a=n[t],o=e[a];if(!Array.isArray(o))throw Object.assign(new Error(`Missing visitor keys for '${a}'.`),{node:n});return o}return u(r,"r"),r}function e7(e){return/^\s*/u.test(e)}function e5(e){return` + +`+e}function Yp(e){let t=Ba(e);return e.type==="element"&&!e.endSourceSpan&&Vs(e.children)?Math.max(t,Yp($o(!1,e.children,-1))):t}function jn(e,t,r){let n=e.node;if(ri(n)){let a=Yp(n);return[_r(n,t),Ze(dt.trimEnd(t.originalText.slice(_a(n)+(n.prev&&ai(n.prev)?Ps(n).length:0),a-(n.next&&kr(n.next)?Ra(n,t).length:0)))),Ar(n,t)]}return r()}function fo(e,t){return qe(e)&&qe(t)?e.isTrailingSpaceSensitive?e.hasTrailingSpaces?ol(t)?ae:ve:"":ol(t)?ae:Ee:ai(e)&&(ri(t)||t.firstChild||t.isSelfClosing||t.type==="element"&&t.attrs.length>0)||e.type==="element"&&e.isSelfClosing&&kr(t)?"":!t.isLeadingSpaceSensitive||ol(t)||kr(t)&&e.lastChild&&va(e.lastChild)&&e.lastChild.lastChild&&va(e.lastChild.lastChild)?ae:t.hasLeadingSpaces?ve:Ee}function $s(e,t,r){let{node:n}=e;if(Mp(n))return[Qn,...e.map(o=>{let i=o.node,s=i.prev?fo(i.prev,i):"";return[s?[s,po(i.prev)?ae:""]:"",jn(o,t,r)]},"children")];let a=n.children.map(()=>Symbol(""));return e.map((o,i)=>{let s=o.node;if(qe(s)){if(s.prev&&qe(s.prev)){let g=fo(s.prev,s);if(g)return po(s.prev)?[ae,ae,jn(o,t,r)]:[g,jn(o,t,r)]}return jn(o,t,r)}let c=[],d=[],f=[],h=[],p=s.prev?fo(s.prev,s):"",m=s.next?fo(s,s.next):"";return p&&(po(s.prev)?c.push(ae,ae):p===ae?c.push(ae):qe(s.prev)?d.push(p):d.push(Po("",Ee,{groupId:a[i-1]}))),m&&(po(s)?qe(s.next)&&h.push(ae,ae):m===ae?qe(s.next)&&h.push(ae):f.push(m)),[...c,pe([...d,pe([jn(o,t,r),...f],{id:a[i]})]),...h]},"children")}function t7(e,t,r){let{node:n}=e,a=[];r7(e)&&a.push("} "),a.push("@",n.name),n.parameters&&a.push(" (",pe(r("parameters")),")"),a.push(" {");let o=Zp(n);return n.children.length>0?(n.firstChild.hasLeadingSpaces=!0,n.lastChild.hasTrailingSpaces=!0,a.push(Dt([ae,$s(e,t,r)])),o&&a.push(ae,"}")):o&&a.push("}"),pe(a,{shouldBreak:!0})}function Zp(e){var t,r;return!(((t=e.next)==null?void 0:t.type)==="angularControlFlowBlock"&&(r=G7.get(e.name))!=null&&r.has(e.next.name))}function r7(e){let{previous:t}=e;return(t==null?void 0:t.type)==="angularControlFlowBlock"&&!ri(t)&&!Zp(t)}function n7(e,t,r){return[Dt([Ee,bn([";",ve],e.map(r,"children"))]),Ee]}function a7(e,t,r){let{node:n}=e;return[Jn(n,t),pe([n.switchValue.trim(),", ",n.clause,n.cases.length>0?[",",Dt([ve,bn(ve,e.map(r,"cases"))])]:"",Ee]),Zn(n,t)]}function o7(e,t,r){let{node:n}=e;return[n.value," {",pe([Dt([Ee,e.map(({node:a})=>a.type==="text"&&!dt.trim(a.value)?"":r(),"expression")]),Ee]),"}"]}function i7(e,t,r){let{node:n}=e;if(Tp(n,t))return[_r(n,t),pe(Ml(e,t,r)),Ze(lf(n,t)),...Ll(n,t),Ar(n,t)];let a=n.children.length===1&&(n.firstChild.type==="interpolation"||n.firstChild.type==="angularIcuExpression")&&n.firstChild.isLeadingSpaceSensitive&&!n.firstChild.hasLeadingSpaces&&n.lastChild.isTrailingSpaceSensitive&&!n.lastChild.hasTrailingSpaces,o=Symbol("element-attr-group-id"),i=u(f=>pe([pe(Ml(e,t,r),{id:o}),f,Ll(n,t)]),"a"),s=u(f=>a?hb(f,{groupId:o}):(jt(n)||ni(n,t))&&n.parent.type==="root"&&t.parser==="vue"&&!t.vueIndentScriptAndStyle?f:Dt(f),"o"),c=u(()=>a?Po(Ee,"",{groupId:o}):n.firstChild.hasLeadingSpaces&&n.firstChild.isLeadingSpaceSensitive?ve:n.firstChild.type==="text"&&n.isWhitespaceSensitive&&n.isIndentationSensitive?pb(Ee):Ee,"u"),d=u(()=>(n.next?kr(n.next):Ia(n.parent))?n.lastChild.hasTrailingSpaces&&n.lastChild.isTrailingSpaceSensitive?" ":"":a?Po(Ee,"",{groupId:o}):n.lastChild.hasTrailingSpaces&&n.lastChild.isTrailingSpaceSensitive?ve:(n.lastChild.type==="comment"||n.lastChild.type==="text"&&n.isWhitespaceSensitive&&n.isIndentationSensitive)&&new RegExp(`\\n[\\t ]{${t.tabWidth*(e.ancestors.length-1)}}$`,"u").test(n.lastChild.value)?"":Ee,"p");return n.children.length===0?i(n.hasDanglingSpaces&&n.isDanglingSpaceSensitive?ve:""):i([Eb(n)?Qn:"",s([c(),$s(e,t,r)]),d()])}function Bo(e){return e>=9&&e<=32||e==160}function Ol(e){return 48<=e&&e<=57}function Ro(e){return e>=97&&e<=122||e>=65&&e<=90}function l7(e){return e>=97&&e<=102||e>=65&&e<=70||Ol(e)}function Ri(e){return e===10||e===13}function Wu(e){return 48<=e&&e<=55}function Ii(e){return e===39||e===34||e===96}function t5(e){return e.replace(K7,(...t)=>t[1].toUpperCase())}function r5(e,t){for(let r of Y7)r(e,t);return e}function n5(e){e.walk(t=>{if(t.type==="element"&&t.tagDefinition.ignoreFirstLf&&t.children.length>0&&t.children[0].type==="text"&&t.children[0].value[0]===` +`){let r=t.children[0];r.value.length===1?t.removeChild(r):r.value=r.value.slice(1)}})}function a5(e){let t=u(r=>{var n,a;return r.type==="element"&&((n=r.prev)==null?void 0:n.type)==="ieConditionalStartComment"&&r.prev.sourceSpan.end.offset===r.startSourceSpan.start.offset&&((a=r.firstChild)==null?void 0:a.type)==="ieConditionalEndComment"&&r.firstChild.sourceSpan.start.offset===r.startSourceSpan.end.offset},"e");e.walk(r=>{if(r.children)for(let n=0;n{if(n.children)for(let a=0;at.type==="cdata",t=>``)}function i5(e){let t=u(r=>{var n,a;return r.type==="element"&&r.attrs.length===0&&r.children.length===1&&r.firstChild.type==="text"&&!dt.hasWhitespaceCharacter(r.children[0].value)&&!r.firstChild.hasLeadingSpaces&&!r.firstChild.hasTrailingSpaces&&r.isLeadingSpaceSensitive&&!r.hasLeadingSpaces&&r.isTrailingSpaceSensitive&&!r.hasTrailingSpaces&&((n=r.prev)==null?void 0:n.type)==="text"&&((a=r.next)==null?void 0:a.type)==="text"},"e");e.walk(r=>{if(r.children)for(let n=0;n`+a.firstChild.value+``+i.value,o.sourceSpan=new Y(o.sourceSpan.start,i.sourceSpan.end),o.isTrailingSpaceSensitive=i.isTrailingSpaceSensitive,o.hasTrailingSpaces=i.hasTrailingSpaces,r.removeChild(a),n--,r.removeChild(i)}})}function l5(e,t){if(t.parser==="html")return;let r=/\{\{(.+?)\}\}/su;e.walk(n=>{if(vb(n))for(let a of n.children){if(a.type!=="text")continue;let o=a.sourceSpan.start,i=null,s=a.value.split(r);for(let c=0;c0&&n.insertChildBefore(a,{type:"text",value:d,sourceSpan:new Y(o,i)});continue}i=o.moveBy(d.length+4),n.insertChildBefore(a,{type:"interpolation",sourceSpan:new Y(o,i),children:d.length===0?[]:[{type:"text",value:d,sourceSpan:new Y(o.moveBy(2),i.moveBy(-2))}]})}n.removeChild(a)}})}function s5(e){e.walk(t=>{if(!t.children)return;if(t.children.length===0||t.children.length===1&&t.children[0].type==="text"&&dt.trim(t.children[0].value).length===0){t.hasDanglingSpaces=t.children.length>0,t.children=[];return}let r=yb(t),n=Lp(t);if(!r)for(let a=0;a{t.isSelfClosing=!t.children||t.type==="element"&&(t.tagDefinition.isVoid||t.endSourceSpan&&t.startSourceSpan.start===t.endSourceSpan.start&&t.startSourceSpan.end===t.endSourceSpan.end)})}function c5(e,t){e.walk(r=>{r.type==="element"&&(r.hasHtmComponentClosingTag=r.endSourceSpan&&/^<\s*\/\s*\/\s*>$/u.test(t.originalText.slice(r.endSourceSpan.start.offset,r.endSourceSpan.end.offset)))})}function d5(e,t){e.walk(r=>{r.cssDisplay=Tb(r,t)})}function p5(e,t){e.walk(r=>{let{children:n}=r;if(n){if(n.length===0){r.isDanglingSpaceSensitive=Db(r);return}for(let a of n)a.isLeadingSpaceSensitive=bb(a,t),a.isTrailingSpaceSensitive=wb(a,t);for(let a=0;a{!Ya[t]&&ho(t)===null&&(Ya[t]=new K({canSelfClose:!1}))})),Ya[e]??mg}function cd(e,t,r=null){let n=[],a=e.visit?o=>e.visit(o,r)||o.visit(e,r):o=>o.visit(e,r);return t.forEach(o=>{let i=a(o);i&&n.push(i)}),n}function m5(e,t){if(t!=null&&!(Array.isArray(t)&&t.length==2))throw new Error(`Expected '${e}' to be an array, [start, end].`);if(t!=null){let r=t[0],n=t[1];X7.forEach(a=>{if(a.test(r)||a.test(n))throw new Error(`['${r}', '${n}'] contains unusable interpolation symbol.`)})}}function g5(e,t,r,n={}){let a=new ew(new sf(e,t),r,n);return a.tokenize(),new Q7(u7(a.tokens),a.errors,a.nonNormalizedIcuExpressions)}function Vr(e){return`Unexpected character "${e===0?"EOF":String.fromCharCode(e)}"`}function Zu(e){return`Unknown entity "${e}" - use the "&#;" or "&#x;" syntax`}function v5(e,t){return`Unable to parse entity "${t}" - ${e} character reference entities must end with ";"`}function ue(e){return!Bo(e)||e===0}function Ju(e){return Bo(e)||e===62||e===60||e===47||e===39||e===34||e===61||e===0}function y5(e){return(e<97||12257)}function b5(e){return e===59||e===0||!l7(e)}function w5(e){return e===59||e===0||!Ro(e)}function D5(e){return e!==125}function E5(e,t){return dd(e)===dd(t)}function dd(e){return e>=97&&e<=122?e-97+65:e}function Xu(e){return Ro(e)||Ol(e)||e===95}function Qu(e){return e!==59&&ue(e)}function u7(e){let t=[],r;for(let n=0;n0&&e[e.length-1]===t}function tc(e,t){return Io[t]!==void 0?Io[t]||e:/^#x[a-f0-9]+$/i.test(t)?String.fromCodePoint(parseInt(t.slice(2),16)):/^#\d+$/.test(t)?String.fromCodePoint(parseInt(t.slice(1),10)):e}function pd(e,t={}){let{canSelfClose:r=!1,allowHtmComponentClosingTags:n=!1,isTagNameCaseSensitive:a=!1,getTagContentType:o,tokenizeAngularBlocks:i=!1,tokenizeAngularLetDeclaration:s=!1}=t;return tw().parse(e,"angular-html-parser",{tokenizeExpansionForms:i,interpolationConfig:void 0,canSelfClose:r,allowHtmComponentClosingTags:n,tokenizeBlocks:i,tokenizeLet:s},a,o)}function C5(e,t){let r=new SyntaxError(e+" ("+t.loc.start.line+":"+t.loc.start.column+")");return Object.assign(r,t)}function c7(e){let t=e.slice(0,Un);if(t!=="---"&&t!=="+++")return;let r=e.indexOf(` +`,Un);if(r===-1)return;let n=e.slice(Un,r).trim(),a=e.indexOf(` +${t}`,r),o=n;if(o||(o=t==="+++"?"toml":"yaml"),a===-1&&t==="---"&&o==="yaml"&&(a=e.indexOf(` +...`,r)),a===-1)return;let i=a+1+Un,s=e.charAt(i+1);if(!/\s?/u.test(s))return;let c=e.slice(0,i);return{type:"front-matter",language:o,explicitLanguage:n,value:e.slice(r+1,a),startDelimiter:t,endDelimiter:c.slice(-Un),raw:c}}function x5(e){let t=c7(e);if(!t)return{content:e};let{raw:r}=t;return{frontMatter:t,content:Pe(!1,r,/[^\n]/gu," ")+e.slice(r.length)}}function S5(e,t){let r=e.map(t);return r.some((n,a)=>n!==e[a])?r:e}function d7(e,t){if(e.value)for(let{regex:r,parse:n}of ow){let a=e.value.match(r);if(a)return n(e,t,a)}return null}function F5(e,t,r){let[,n,a,o]=r,i=4+n.length,s=e.sourceSpan.start.moveBy(i),c=s.moveBy(o.length),[d,f]=(()=>{try{return[!0,t(o,s).children]}catch{return[!1,[{type:"text",value:o,sourceSpan:new Y(s,c)}]]}})();return{type:"ieConditionalComment",complete:d,children:f,condition:Pe(!1,a.trim(),/\s+/gu," "),sourceSpan:e.sourceSpan,startSourceSpan:new Y(e.sourceSpan.start,s),endSourceSpan:new Y(c,e.sourceSpan.end)}}function A5(e,t,r){let[,n]=r;return{type:"ieConditionalStartComment",condition:Pe(!1,n.trim(),/\s+/gu," "),sourceSpan:e.sourceSpan}}function k5(e){return{type:"ieConditionalEndComment",sourceSpan:e.sourceSpan}}function p7(e){if(e.type==="block"){if(e.name=Pe(!1,e.name.toLowerCase(),/\s+/gu," ").trim(),e.type="angularControlFlowBlock",!Vs(e.parameters)){delete e.parameters;return}for(let t of e.parameters)t.type="angularControlFlowBlockParameter";e.parameters={type:"angularControlFlowBlockParameters",children:e.parameters,sourceSpan:new Y(e.parameters[0].sourceSpan.start,$o(!1,e.parameters,-1).sourceSpan.end)}}}function f7(e){e.type==="letDeclaration"&&(e.type="angularLetDeclaration",e.id=e.name,e.init={type:"angularLetDeclarationInitializer",sourceSpan:new Y(e.valueSpan.start,e.valueSpan.end),value:e.value},delete e.name,delete e.value)}function h7(e){(e.type==="plural"||e.type==="select")&&(e.clause=e.type,e.type="angularIcuExpression"),e.type==="expansionCase"&&(e.type="angularIcuCase")}function Jp(e,t,r){let{name:n,canSelfClose:a=!0,normalizeTagName:o=!1,normalizeAttributeName:i=!1,allowHtmComponentClosingTags:s=!1,isTagNameCaseSensitive:c=!1,shouldParseAsRawText:d}=t,{rootNodes:f,errors:h}=pd(e,{canSelfClose:a,allowHtmComponentClosingTags:s,isTagNameCaseSensitive:c,getTagContentType:d?(...E)=>d(...E)?ct.RAW_TEXT:void 0:void 0,tokenizeAngularBlocks:n==="angular"?!0:void 0,tokenizeAngularLetDeclaration:n==="angular"?!0:void 0});if(n==="vue"){if(f.some(x=>x.type==="docType"&&x.value==="html"||x.type==="element"&&x.name.toLowerCase()==="html"))return Jp(e,Cd,r);let E,D=u(()=>E??(E=pd(e,{canSelfClose:a,allowHtmComponentClosingTags:s,isTagNameCaseSensitive:c})),"y"),w=u(x=>D().rootNodes.find(({startSourceSpan:S})=>S&&S.start.offset===x.startSourceSpan.start.offset)??x,"M");for(let[x,S]of f.entries()){let{endSourceSpan:F,startSourceSpan:A}=S;if(F===null)h=D().errors,f[x]=w(S);else if(m7(S,r)){let _=D().errors.find(R=>R.span.start.offset>A.start.offset&&R.span.start.offset0&&fd(h[0]);let p=u(E=>{let D=E.name.startsWith(":")?E.name.slice(1).split(":")[0]:null,w=E.nameSpan.toString(),x=D!==null&&w.startsWith(`${D}:`),S=x?w.slice(D.length+1):w;E.name=S,E.namespace=D,E.hasExplicitNamespace=x},"d"),m=u(E=>{switch(E.type){case"element":p(E);for(let D of E.attrs)p(D),D.valueSpan?(D.value=D.valueSpan.toString(),/["']/u.test(D.value[0])&&(D.value=D.value.slice(1,-1))):D.value=null;break;case"comment":E.value=E.sourceSpan.toString().slice(4,-3);break;case"text":E.value=E.sourceSpan.toString();break}},"C"),g=u((E,D)=>{let w=E.toLowerCase();return D(w)?w:E},"A"),v=u(E=>{if(E.type==="element"&&(o&&(!E.namespace||E.namespace===E.tagDefinition.implicitNamespacePrefix||ya(E))&&(E.name=g(E.name,D=>iw.has(D))),i))for(let D of E.attrs)D.namespace||(D.name=g(D.name,w=>ul.has(E.name)&&(ul.get("*").has(w)||ul.get(E.name).has(w))))},"D"),b=u(E=>{E.sourceSpan&&E.endSourceSpan&&(E.sourceSpan=new Y(E.sourceSpan.start,E.endSourceSpan.end))},"R"),C=u(E=>{if(E.type==="element"){let D=Pl(c?E.name:E.name.toLowerCase());!E.namespace||E.namespace===D.implicitNamespacePrefix||ya(E)?E.tagDefinition=D:E.tagDefinition=Pl("")}},"F");return cd(new class extends J7{visitExpansionCase(E,D){n==="angular"&&this.visitChildren(D,w=>{w(E.expression)})}visit(E){m(E),C(E),v(E),b(E)}},f),f}function m7(e,t){var r;if(e.type!=="element"||e.name!=="template")return!1;let n=(r=e.attrs.find(a=>a.name==="lang"))==null?void 0:r.value;return!n||li(t,{language:n})==="html"}function fd(e){let{msg:t,span:{start:r,end:n}}=e;throw rw(t,{loc:{start:{line:r.line+1,column:r.col+1},end:{line:n.line+1,column:n.col+1}},cause:e})}function Xp(e,t,r={},n=!0){let{frontMatter:a,content:o}=n?nw(e):{frontMatter:null,content:e},i=new sf(e,r.filepath),s=new ql(i,0,0,0),c=s.moveBy(e.length),d={type:"root",sourceSpan:new Y(s,c),children:Jp(o,t,r)};if(a){let p=new ql(i,0,0,0),m=p.moveBy(a.raw.length);a.sourceSpan=new Y(p,m),d.children.unshift(a)}let f=new aw(d),h=u((p,m)=>{let{offset:g}=m,v=Pe(!1,e.slice(0,g),/[^\n\r]/gu," "),b=Xp(v+p,t,r,!1);b.sourceSpan=new Y(m,$o(!1,b.children,-1).sourceSpan.end);let C=b.children[0];return C.length===g?b.children.shift():(C.sourceSpan=new Y(C.sourceSpan.start.moveBy(g),C.sourceSpan.end),C.value=C.value.slice(g)),b},"f");return f.walk(p=>{if(p.type==="comment"){let m=d7(p,h);m&&p.parent.replaceChild(p,m)}p7(p),f7(p),h7(p)}),f}function Ka(e){return{parse:u((t,r)=>Xp(t,e,r),"parse"),hasPragma:e7,astFormat:"html",locStart:_a,locEnd:Ba}}var _5,rc,nc,ac,Xt,B5,R5,oc,I5,Pe,Qp,ef,hd,Nl,$l,md,Hl,jl,Vl,Ul,gd,vd,Kr,yd,il,tf,rf,g7,ic,z5,v7,lc,Br,Hs,Qn,T5,L5,ve,Ee,ae,y7,M5,$o,go,bd,b7,ot,sc,O5,P5,N5,$5,dt,uc,H5,w7,ii,j5,D7,V5,E7,C7,x7,li,S7,F7,A7,k7,ya,U5,nf,_7,B7,af,R7,I7,z7,T7,L7,M7,O7,P7,N7,wd,$7,H7,Dd,j7,V7,ll,js,U7,q7,cc,of,Vs,Ed,lf,W7,q5,Vn,W5,G5,K5,Y5,Z5,J5,G7,K7,zi,ql,dc,sf,pc,Y,Ti,fc,hc,Y7,X5,Q5,eg,tg,mc,gc,rg,ng,vc,ag,og,ig,yc,bc,tn,lg,ct,sl,wc,sg,ug,cg,dg,pg,fg,Dc,hg,Ec,Z7,Cc,K,mg,Ya,xc,Ur,Sc,gg,Fc,vg,Ac,yg,kc,bg,_c,wg,Bc,Qt,Rc,Dg,Ic,Eg,zc,qr,Tc,Lc,Mc,Oc,Pc,J7,Io,Cg,X7,Li,xg,Nc,$c,Mi,Hc,Q7,Sg,Oi,jc,Pi,Vc,ew,Za,Uc,Ja,Fg,qc,Ni,$i,Fe,Wc,Ag,Gc,kg,Hi,_g,Kc,Bg,ji,tw,rw,Un,nw,Xa,Yc,Wr,aw,ow,ul,iw,Cd,Rg,Ig,zg,Tg,Lg,lw,QF=z(()=>{_5=Object.defineProperty,rc=u(e=>{throw TypeError(e)},"Xr"),nc=u((e,t)=>{for(var r in t)_5(e,r,{get:t[r],enumerable:!0})},"Jr"),ac=u((e,t,r)=>t.has(e)||rc("Cannot "+r),"Zr"),Xt=u((e,t,r)=>(ac(e,t,"read from private field"),r?r.call(e):t.get(e)),"K"),B5=u((e,t,r)=>t.has(e)?rc("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),"en"),R5=u((e,t,r,n)=>(ac(e,t,"write to private field"),n?n.call(e,r):t.set(e,r),r),"tn"),oc={},nc(oc,{languages:u(()=>tg,"languages"),options:u(()=>ng,"options"),parsers:u(()=>vc,"parsers"),printers:u(()=>Lg,"printers")}),I5=u((e,t,r,n)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,n):r.global?t.replace(r,n):t.split(r).join(n)},"ni"),Pe=I5,Qp="string",ef="array",hd="cursor",Nl="indent",$l="align",md="trim",Hl="group",jl="fill",Vl="if-break",Ul="indent-if-break",gd="line-suffix",vd="line-suffix-boundary",Kr="line",yd="label",il="break-parent",tf=new Set([hd,Nl,$l,md,Hl,jl,Vl,Ul,gd,vd,Kr,yd,il]),u(Tm,"si"),rf=Tm,g7=u(e=>new Intl.ListFormat("en-US",{type:"disjunction"}).format(e),"ii"),u(Lm,"ai"),z5=(ic=class extends Error{constructor(t){super(Lm(t));Rn(this,"name","InvalidDocError");this.doc=t}},u(ic,"or"),ic),v7=z5,lc=u(()=>{},"rn"),Br=lc,Hs=lc,u(Dt,"k"),u(Rp,"nn"),u(pe,"_"),u(pb,"sn"),u(fb,"an"),u(Ip,"Et"),u(Po,"le"),u(hb,"on"),Qn={type:il},T5={type:Kr,hard:!0},L5={type:Kr,hard:!0,literal:!0},ve={type:Kr},Ee={type:Kr,soft:!0},ae=[T5,Qn],y7=[L5,Qn],u(bn,"q"),M5=u((e,t,r)=>{if(!(e&&t==null))return Array.isArray(t)||typeof t=="string"?t[r<0?t.length+r:r]:t.at(r)},"li"),$o=M5,u(zp,"lr"),u(Ze,"B"),go="'",bd='"',u(Mm,"ci"),b7=Mm,u(Om,"cr"),O5=(sc=class{constructor(e){B5(this,ot),R5(this,ot,new Set(e))}getLeadingWhitespaceCount(e){let t=Xt(this,ot),r=0;for(let n=0;n=0&&t.has(e.charAt(n));n--)r++;return r}getLeadingWhitespace(e){let t=this.getLeadingWhitespaceCount(e);return e.slice(0,t)}getTrailingWhitespace(e){let t=this.getTrailingWhitespaceCount(e);return e.slice(e.length-t)}hasLeadingWhitespace(e){return Xt(this,ot).has(e.charAt(0))}hasTrailingWhitespace(e){return Xt(this,ot).has($o(!1,e,-1))}trimStart(e){let t=this.getLeadingWhitespaceCount(e);return e.slice(t)}trimEnd(e){let t=this.getTrailingWhitespaceCount(e);return e.slice(0,e.length-t)}trim(e){return this.trimEnd(this.trimStart(e))}split(e,t=!1){let r=`[${Om([...Xt(this,ot)].join(""))}]+`,n=new RegExp(t?`(${r})`:r,"u");return e.split(n)}hasWhitespaceCharacter(e){let t=Xt(this,ot);return Array.prototype.some.call(e,r=>t.has(r))}hasNonWhitespaceCharacter(e){let t=Xt(this,ot);return Array.prototype.some.call(e,r=>!t.has(r))}isWhitespaceOnly(e){let t=Xt(this,ot);return Array.prototype.every.call(e,r=>t.has(r))}},u(sc,"pr"),sc),ot=new WeakMap,P5=O5,N5=[" ",` +`,"\f","\r"," "],$5=new P5(N5),dt=$5,H5=(uc=class extends Error{constructor(t,r,n="type"){super(`Unexpected ${r} node ${n}: ${JSON.stringify(t[n])}.`);Rn(this,"name","UnexpectedNodeError");this.node=t}},u(uc,"hr"),uc),w7=H5,u(Pm,"mi"),ii=Pm,j5=new Set(["sourceSpan","startSourceSpan","endSourceSpan","nameSpan","valueSpan","keySpan","tagDefinition","tokens","valueTokens","switchValueSourceSpan","expSourceSpan","valueSourceSpan"]),D7=new Set(["if","else if","for","switch","case"]),u(qu,"mn"),qu.ignoredProperties=j5,V5=qu,u(Nm,"gi"),E7=Nm,u(ti,"ce"),u(wn,"Y"),u(Je,"T"),u($m,"Ci"),C7=$m,x7=u(e=>String(e).split(/[/\\]/u).pop(),"Si"),u(ld,"Cn"),u(mb,"_i"),u(Hm,"Ei"),li=Hm,S7="inline",F7={area:"none",base:"none",basefont:"none",datalist:"none",head:"none",link:"none",meta:"none",noembed:"none",noframes:"none",param:"block",rp:"none",script:"block",style:"none",template:"inline",title:"none",html:"block",body:"block",address:"block",blockquote:"block",center:"block",dialog:"block",div:"block",figure:"block",figcaption:"block",footer:"block",form:"block",header:"block",hr:"block",legend:"block",listing:"block",main:"block",p:"block",plaintext:"block",pre:"block",search:"block",xmp:"block",slot:"contents",ruby:"ruby",rt:"ruby-text",article:"block",aside:"block",h1:"block",h2:"block",h3:"block",h4:"block",h5:"block",h6:"block",hgroup:"block",nav:"block",section:"block",dir:"block",dd:"block",dl:"block",dt:"block",menu:"block",ol:"block",ul:"block",li:"list-item",table:"table",caption:"table-caption",colgroup:"table-column-group",col:"table-column",thead:"table-header-group",tbody:"table-row-group",tfoot:"table-footer-group",tr:"table-row",td:"table-cell",th:"table-cell",input:"inline-block",button:"inline-block",fieldset:"block",details:"block",summary:"block",marquee:"inline-block",source:"block",track:"block",meter:"inline-block",progress:"inline-block",object:"inline-block",video:"inline-block",audio:"inline-block",select:"inline-block",option:"block",optgroup:"block"},A7="normal",k7={listing:"pre",plaintext:"pre",pre:"pre",xmp:"pre",nobr:"nowrap",table:"initial",textarea:"pre-wrap"},u(jm,"Ai"),ya=jm,U5=u(e=>Pe(!1,e,/^[\t\f\r ]*\n/gu,""),"Di"),nf=u(e=>U5(dt.trimEnd(e)),"mr"),_7=u(e=>{let t=e,r=dt.getLeadingWhitespace(t);r&&(t=t.slice(r.length));let n=dt.getTrailingWhitespace(t);return n&&(t=t.slice(0,-n.length)),{leadingWhitespace:r,trailingWhitespace:n,text:t}},"Dn"),u(Tp,"Dt"),u(ri,"me"),u(gb,"vi"),u(qe,"O"),u(jt,"U"),u(vb,"vn"),u(yb,"yn"),u(Lp,"fr"),u(bb,"wn"),u(wb,"bn"),u(Db,"Tn"),u(po,"Qe"),u(Eb,"xn"),u(Mp,"dr"),u(ol,"vt"),u(Cb,"yi"),u(Op,"kn"),u(Pp,"Bn"),u(Np,"Ln"),u($p,"Fn"),u(Ls,"yt"),u(xb,"wi"),u(Hp,"Nn"),u(Sb,"bi"),u(Fb,"Ti"),u(Ab,"xi"),u(sd,"gr"),u(ka,"Xe"),u(kb,"ki"),u(_b,"Bi"),u(Bb,"Li"),u(Rb,"Fi"),u(Ib,"Ni"),u(dn,"he"),u(zb,"Pi"),u(Tb,"Pn"),u(jp,"In"),u(Lb,"Ii"),u(Vp,"Cr"),u(Up,"Sr"),u(sr,"P"),B7=new Set(["template","style","script"]),u(ni,"Je"),u(Dn,"fe"),u(Ms,"wt"),u(Mb,"Rn"),u(Ob,"On"),u(qp,"bt"),u(Wp,"Tt"),af=/\{\{(.+?)\}\}/su,u(Pb,"$n"),u(Bi,"Er"),R7=Bi({parser:"__ng_action"}),I7=Bi({parser:"__ng_binding"}),z7=Bi({parser:"__ng_directive"}),u(Vm,"qi"),T7=Vm,u(Um,"Hi"),L7=Um,u(ud,"Hn"),M7=/^[ \t\n\r\u000c]+/,O7=/^[, \t\n\r\u000c]+/,P7=/^[^ \t\n\r\u000c]+/,N7=/[,]+$/,wd=/^\d+$/,$7=/^-?(?:[0-9]+|[0-9]*\.[0-9]+)(?:[eE][+-]?[0-9]+)?$/,u(qm,"Yi"),H7=qm,u(Wm,"ji"),Dd={width:"w",height:"h",density:"x"},j7=Object.keys(Dd),u(Nb,"Qi"),V7=Wm,u($b,"Gn"),ll=new WeakMap,u(Gm,"Xi"),js=Gm,u(Hb,"Yn"),u(jb,"jn"),u(Vb,"Kn"),u(Ub,"Ji"),u(Km,"Zi"),u(qb,"ea"),u(Wb,"ta"),u(Gp,"Qn"),U7=Km,u(Ym,"ra"),u(Gb,"na"),q7=Ym,cc=new Proxy(()=>{},{get:u(()=>cc,"get")}),of=cc,u(Zm,"sa"),Vs=Zm,u(_a,"X"),u(Ba,"J"),u(Ll,"Ze"),u(Kb,"ia"),u(Zn,"de"),u(Yb,"aa"),u(Ar,"W"),u(Os,"xt"),u(Ra,"ge"),u(Kp,"ts"),u(kr,"j"),u(Ia,"Ce"),u(va,"Se"),u(ai,"et"),u(Zb,"oa"),u(oi,"tt"),u(Jb,"ua"),u(Xb,"la"),u(Ml,"rt"),u(Jn,"_e"),u(_r,"z"),Ed="0&&e<0;)if(n--,e++,t.charCodeAt(n)==10){a--;let i=t.substring(0,n-1).lastIndexOf(` +`);o=i>0?n-i:n}else o--;for(;n0;){let i=t.charCodeAt(n);n++,e--,i==10?(a++,o=0):o++}return new zi(this.file,n,a,o)}getContext(e,t){let r=this.file.content,n=this.offset;if(n!=null){n>r.length-1&&(n=r.length-1);let a=n,o=0,i=0;for(;o0&&(n--,o++,!(r[n]==` +`&&++i==t)););for(o=0,i=0;o]${e.after}")`:this.msg}toString(){let e=this.span.details?`, ${this.span.details}`:"";return`${this.contextualMessage()}: ${this.span.start}${e}`}},u(fc,"Ie"),fc),Y7=[n5,a5,o5,l5,s5,d5,u5,c5,p5,i5],u(r5,"Ea"),u(n5,"Aa"),u(a5,"Da"),u(s7,"va"),u(o5,"ya"),u(i5,"wa"),u(l5,"ba"),u(s5,"Ta"),u(u5,"xa"),u(c5,"ka"),u(d5,"Ba"),u(p5,"La"),X5=r5,u(f5,"Fa"),Q5={preprocess:X5,print:f5,insertPragma:e5,massageAstNode:V5,embed:q5,getVisitorKeys:J5},eg=Q5,tg=[{linguistLanguageId:146,name:"Angular",type:"markup",tmScope:"text.html.basic",aceMode:"html",codemirrorMode:"htmlmixed",codemirrorMimeType:"text/html",color:"#e34c26",aliases:["xhtml"],extensions:[".component.html"],parsers:["angular"],vscodeLanguageIds:["html"],filenames:[]},{linguistLanguageId:146,name:"HTML",type:"markup",tmScope:"text.html.basic",aceMode:"html",codemirrorMode:"htmlmixed",codemirrorMimeType:"text/html",color:"#e34c26",aliases:["xhtml"],extensions:[".html",".hta",".htm",".html.hl",".inc",".xht",".xhtml",".mjml"],parsers:["html"],vscodeLanguageIds:["html"]},{linguistLanguageId:146,name:"Lightning Web Components",type:"markup",tmScope:"text.html.basic",aceMode:"html",codemirrorMode:"htmlmixed",codemirrorMimeType:"text/html",color:"#e34c26",aliases:["xhtml"],extensions:[],parsers:["lwc"],vscodeLanguageIds:["html"],filenames:[]},{linguistLanguageId:391,name:"Vue",type:"markup",color:"#41b883",extensions:[".vue"],tmScope:"text.html.vue",aceMode:"html",parsers:["vue"],vscodeLanguageIds:["vue"]}],mc={bracketSpacing:{category:"Common",type:"boolean",default:!0,description:"Print spaces between brackets.",oppositeDescription:"Do not print spaces between brackets."},singleQuote:{category:"Common",type:"boolean",default:!1,description:"Use single quotes instead of double quotes."},proseWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap prose.",choices:[{value:"always",description:"Wrap prose if it exceeds the print width."},{value:"never",description:"Do not wrap prose."},{value:"preserve",description:"Wrap prose as-is."}]},bracketSameLine:{category:"Common",type:"boolean",default:!1,description:"Put > of opening tags on the last line instead of on a new line."},singleAttributePerLine:{category:"Common",type:"boolean",default:!1,description:"Enforce single attribute per line in HTML, Vue and JSX."}},gc="HTML",rg={bracketSameLine:mc.bracketSameLine,htmlWhitespaceSensitivity:{category:gc,type:"choice",default:"css",description:"How to handle whitespaces in HTML.",choices:[{value:"css",description:"Respect the default value of CSS display property."},{value:"strict",description:"Whitespaces are considered sensitive."},{value:"ignore",description:"Whitespaces are considered insensitive."}]},singleAttributePerLine:mc.singleAttributePerLine,vueIndentScriptAndStyle:{category:gc,type:"boolean",default:!1,description:"Indent script and style tags in Vue files."}},ng=rg,vc={},nc(vc,{angular:u(()=>Ig,"angular"),html:u(()=>Rg,"html"),lwc:u(()=>Tg,"lwc"),vue:u(()=>zg,"vue")}),(function(e){e[e.Emulated=0]="Emulated",e[e.None=2]="None",e[e.ShadowDom=3]="ShadowDom"})(ag||(ag={})),(function(e){e[e.OnPush=0]="OnPush",e[e.Default=1]="Default"})(og||(og={})),(function(e){e[e.None=0]="None",e[e.SignalBased=1]="SignalBased",e[e.HasDecoratorInputTransform=2]="HasDecoratorInputTransform"})(ig||(ig={})),yc={name:"custom-elements"},bc={name:"no-errors-schema"},(function(e){e[e.NONE=0]="NONE",e[e.HTML=1]="HTML",e[e.STYLE=2]="STYLE",e[e.SCRIPT=3]="SCRIPT",e[e.URL=4]="URL",e[e.RESOURCE_URL=5]="RESOURCE_URL"})(tn||(tn={})),(function(e){e[e.Error=0]="Error",e[e.Warning=1]="Warning",e[e.Ignore=2]="Ignore"})(lg||(lg={})),(function(e){e[e.RAW_TEXT=0]="RAW_TEXT",e[e.ESCAPABLE_RAW_TEXT=1]="ESCAPABLE_RAW_TEXT",e[e.PARSABLE_DATA=2]="PARSABLE_DATA"})(ct||(ct={})),u(No,"ut"),u(Gu,"xr"),u(Ku,"kr"),u(ho,"Re"),u(Ga,"Oe"),u(Yu,"Br"),u(mo,"Ot"),sg=(wc=class{},u(wc,"Mt"),wc),ug="boolean",cg="number",dg="string",pg="object",fg=["[Element]|textContent,%ariaAtomic,%ariaAutoComplete,%ariaBusy,%ariaChecked,%ariaColCount,%ariaColIndex,%ariaColSpan,%ariaCurrent,%ariaDescription,%ariaDisabled,%ariaExpanded,%ariaHasPopup,%ariaHidden,%ariaKeyShortcuts,%ariaLabel,%ariaLevel,%ariaLive,%ariaModal,%ariaMultiLine,%ariaMultiSelectable,%ariaOrientation,%ariaPlaceholder,%ariaPosInSet,%ariaPressed,%ariaReadOnly,%ariaRelevant,%ariaRequired,%ariaRoleDescription,%ariaRowCount,%ariaRowIndex,%ariaRowSpan,%ariaSelected,%ariaSetSize,%ariaSort,%ariaValueMax,%ariaValueMin,%ariaValueNow,%ariaValueText,%classList,className,elementTiming,id,innerHTML,*beforecopy,*beforecut,*beforepaste,*fullscreenchange,*fullscreenerror,*search,*webkitfullscreenchange,*webkitfullscreenerror,outerHTML,%part,#scrollLeft,#scrollTop,slot,*message,*mozfullscreenchange,*mozfullscreenerror,*mozpointerlockchange,*mozpointerlockerror,*webglcontextcreationerror,*webglcontextlost,*webglcontextrestored","[HTMLElement]^[Element]|accessKey,autocapitalize,!autofocus,contentEditable,dir,!draggable,enterKeyHint,!hidden,!inert,innerText,inputMode,lang,nonce,*abort,*animationend,*animationiteration,*animationstart,*auxclick,*beforexrselect,*blur,*cancel,*canplay,*canplaythrough,*change,*click,*close,*contextmenu,*copy,*cuechange,*cut,*dblclick,*drag,*dragend,*dragenter,*dragleave,*dragover,*dragstart,*drop,*durationchange,*emptied,*ended,*error,*focus,*formdata,*gotpointercapture,*input,*invalid,*keydown,*keypress,*keyup,*load,*loadeddata,*loadedmetadata,*loadstart,*lostpointercapture,*mousedown,*mouseenter,*mouseleave,*mousemove,*mouseout,*mouseover,*mouseup,*mousewheel,*paste,*pause,*play,*playing,*pointercancel,*pointerdown,*pointerenter,*pointerleave,*pointermove,*pointerout,*pointerover,*pointerrawupdate,*pointerup,*progress,*ratechange,*reset,*resize,*scroll,*securitypolicyviolation,*seeked,*seeking,*select,*selectionchange,*selectstart,*slotchange,*stalled,*submit,*suspend,*timeupdate,*toggle,*transitioncancel,*transitionend,*transitionrun,*transitionstart,*volumechange,*waiting,*webkitanimationend,*webkitanimationiteration,*webkitanimationstart,*webkittransitionend,*wheel,outerText,!spellcheck,%style,#tabIndex,title,!translate,virtualKeyboardPolicy","abbr,address,article,aside,b,bdi,bdo,cite,content,code,dd,dfn,dt,em,figcaption,figure,footer,header,hgroup,i,kbd,main,mark,nav,noscript,rb,rp,rt,rtc,ruby,s,samp,section,small,strong,sub,sup,u,var,wbr^[HTMLElement]|accessKey,autocapitalize,!autofocus,contentEditable,dir,!draggable,enterKeyHint,!hidden,innerText,inputMode,lang,nonce,*abort,*animationend,*animationiteration,*animationstart,*auxclick,*beforexrselect,*blur,*cancel,*canplay,*canplaythrough,*change,*click,*close,*contextmenu,*copy,*cuechange,*cut,*dblclick,*drag,*dragend,*dragenter,*dragleave,*dragover,*dragstart,*drop,*durationchange,*emptied,*ended,*error,*focus,*formdata,*gotpointercapture,*input,*invalid,*keydown,*keypress,*keyup,*load,*loadeddata,*loadedmetadata,*loadstart,*lostpointercapture,*mousedown,*mouseenter,*mouseleave,*mousemove,*mouseout,*mouseover,*mouseup,*mousewheel,*paste,*pause,*play,*playing,*pointercancel,*pointerdown,*pointerenter,*pointerleave,*pointermove,*pointerout,*pointerover,*pointerrawupdate,*pointerup,*progress,*ratechange,*reset,*resize,*scroll,*securitypolicyviolation,*seeked,*seeking,*select,*selectionchange,*selectstart,*slotchange,*stalled,*submit,*suspend,*timeupdate,*toggle,*transitioncancel,*transitionend,*transitionrun,*transitionstart,*volumechange,*waiting,*webkitanimationend,*webkitanimationiteration,*webkitanimationstart,*webkittransitionend,*wheel,outerText,!spellcheck,%style,#tabIndex,title,!translate,virtualKeyboardPolicy","media^[HTMLElement]|!autoplay,!controls,%controlsList,%crossOrigin,#currentTime,!defaultMuted,#defaultPlaybackRate,!disableRemotePlayback,!loop,!muted,*encrypted,*waitingforkey,#playbackRate,preload,!preservesPitch,src,%srcObject,#volume",":svg:^[HTMLElement]|!autofocus,nonce,*abort,*animationend,*animationiteration,*animationstart,*auxclick,*beforexrselect,*blur,*cancel,*canplay,*canplaythrough,*change,*click,*close,*contextmenu,*copy,*cuechange,*cut,*dblclick,*drag,*dragend,*dragenter,*dragleave,*dragover,*dragstart,*drop,*durationchange,*emptied,*ended,*error,*focus,*formdata,*gotpointercapture,*input,*invalid,*keydown,*keypress,*keyup,*load,*loadeddata,*loadedmetadata,*loadstart,*lostpointercapture,*mousedown,*mouseenter,*mouseleave,*mousemove,*mouseout,*mouseover,*mouseup,*mousewheel,*paste,*pause,*play,*playing,*pointercancel,*pointerdown,*pointerenter,*pointerleave,*pointermove,*pointerout,*pointerover,*pointerrawupdate,*pointerup,*progress,*ratechange,*reset,*resize,*scroll,*securitypolicyviolation,*seeked,*seeking,*select,*selectionchange,*selectstart,*slotchange,*stalled,*submit,*suspend,*timeupdate,*toggle,*transitioncancel,*transitionend,*transitionrun,*transitionstart,*volumechange,*waiting,*webkitanimationend,*webkitanimationiteration,*webkitanimationstart,*webkittransitionend,*wheel,%style,#tabIndex",":svg:graphics^:svg:|",":svg:animation^:svg:|*begin,*end,*repeat",":svg:geometry^:svg:|",":svg:componentTransferFunction^:svg:|",":svg:gradient^:svg:|",":svg:textContent^:svg:graphics|",":svg:textPositioning^:svg:textContent|","a^[HTMLElement]|charset,coords,download,hash,host,hostname,href,hreflang,name,password,pathname,ping,port,protocol,referrerPolicy,rel,%relList,rev,search,shape,target,text,type,username","area^[HTMLElement]|alt,coords,download,hash,host,hostname,href,!noHref,password,pathname,ping,port,protocol,referrerPolicy,rel,%relList,search,shape,target,username","audio^media|","br^[HTMLElement]|clear","base^[HTMLElement]|href,target","body^[HTMLElement]|aLink,background,bgColor,link,*afterprint,*beforeprint,*beforeunload,*blur,*error,*focus,*hashchange,*languagechange,*load,*message,*messageerror,*offline,*online,*pagehide,*pageshow,*popstate,*rejectionhandled,*resize,*scroll,*storage,*unhandledrejection,*unload,text,vLink","button^[HTMLElement]|!disabled,formAction,formEnctype,formMethod,!formNoValidate,formTarget,name,type,value","canvas^[HTMLElement]|#height,#width","content^[HTMLElement]|select","dl^[HTMLElement]|!compact","data^[HTMLElement]|value","datalist^[HTMLElement]|","details^[HTMLElement]|!open","dialog^[HTMLElement]|!open,returnValue","dir^[HTMLElement]|!compact","div^[HTMLElement]|align","embed^[HTMLElement]|align,height,name,src,type,width","fieldset^[HTMLElement]|!disabled,name","font^[HTMLElement]|color,face,size","form^[HTMLElement]|acceptCharset,action,autocomplete,encoding,enctype,method,name,!noValidate,target","frame^[HTMLElement]|frameBorder,longDesc,marginHeight,marginWidth,name,!noResize,scrolling,src","frameset^[HTMLElement]|cols,*afterprint,*beforeprint,*beforeunload,*blur,*error,*focus,*hashchange,*languagechange,*load,*message,*messageerror,*offline,*online,*pagehide,*pageshow,*popstate,*rejectionhandled,*resize,*scroll,*storage,*unhandledrejection,*unload,rows","hr^[HTMLElement]|align,color,!noShade,size,width","head^[HTMLElement]|","h1,h2,h3,h4,h5,h6^[HTMLElement]|align","html^[HTMLElement]|version","iframe^[HTMLElement]|align,allow,!allowFullscreen,!allowPaymentRequest,csp,frameBorder,height,loading,longDesc,marginHeight,marginWidth,name,referrerPolicy,%sandbox,scrolling,src,srcdoc,width","img^[HTMLElement]|align,alt,border,%crossOrigin,decoding,#height,#hspace,!isMap,loading,longDesc,lowsrc,name,referrerPolicy,sizes,src,srcset,useMap,#vspace,#width","input^[HTMLElement]|accept,align,alt,autocomplete,!checked,!defaultChecked,defaultValue,dirName,!disabled,%files,formAction,formEnctype,formMethod,!formNoValidate,formTarget,#height,!incremental,!indeterminate,max,#maxLength,min,#minLength,!multiple,name,pattern,placeholder,!readOnly,!required,selectionDirection,#selectionEnd,#selectionStart,#size,src,step,type,useMap,value,%valueAsDate,#valueAsNumber,#width","li^[HTMLElement]|type,#value","label^[HTMLElement]|htmlFor","legend^[HTMLElement]|align","link^[HTMLElement]|as,charset,%crossOrigin,!disabled,href,hreflang,imageSizes,imageSrcset,integrity,media,referrerPolicy,rel,%relList,rev,%sizes,target,type","map^[HTMLElement]|name","marquee^[HTMLElement]|behavior,bgColor,direction,height,#hspace,#loop,#scrollAmount,#scrollDelay,!trueSpeed,#vspace,width","menu^[HTMLElement]|!compact","meta^[HTMLElement]|content,httpEquiv,media,name,scheme","meter^[HTMLElement]|#high,#low,#max,#min,#optimum,#value","ins,del^[HTMLElement]|cite,dateTime","ol^[HTMLElement]|!compact,!reversed,#start,type","object^[HTMLElement]|align,archive,border,code,codeBase,codeType,data,!declare,height,#hspace,name,standby,type,useMap,#vspace,width","optgroup^[HTMLElement]|!disabled,label","option^[HTMLElement]|!defaultSelected,!disabled,label,!selected,text,value","output^[HTMLElement]|defaultValue,%htmlFor,name,value","p^[HTMLElement]|align","param^[HTMLElement]|name,type,value,valueType","picture^[HTMLElement]|","pre^[HTMLElement]|#width","progress^[HTMLElement]|#max,#value","q,blockquote,cite^[HTMLElement]|","script^[HTMLElement]|!async,charset,%crossOrigin,!defer,event,htmlFor,integrity,!noModule,%referrerPolicy,src,text,type","select^[HTMLElement]|autocomplete,!disabled,#length,!multiple,name,!required,#selectedIndex,#size,value","slot^[HTMLElement]|name","source^[HTMLElement]|#height,media,sizes,src,srcset,type,#width","span^[HTMLElement]|","style^[HTMLElement]|!disabled,media,type","caption^[HTMLElement]|align","th,td^[HTMLElement]|abbr,align,axis,bgColor,ch,chOff,#colSpan,headers,height,!noWrap,#rowSpan,scope,vAlign,width","col,colgroup^[HTMLElement]|align,ch,chOff,#span,vAlign,width","table^[HTMLElement]|align,bgColor,border,%caption,cellPadding,cellSpacing,frame,rules,summary,%tFoot,%tHead,width","tr^[HTMLElement]|align,bgColor,ch,chOff,vAlign","tfoot,thead,tbody^[HTMLElement]|align,ch,chOff,vAlign","template^[HTMLElement]|","textarea^[HTMLElement]|autocomplete,#cols,defaultValue,dirName,!disabled,#maxLength,#minLength,name,placeholder,!readOnly,!required,#rows,selectionDirection,#selectionEnd,#selectionStart,value,wrap","time^[HTMLElement]|dateTime","title^[HTMLElement]|text","track^[HTMLElement]|!default,kind,label,src,srclang","ul^[HTMLElement]|!compact,type","unknown^[HTMLElement]|","video^media|!disablePictureInPicture,#height,*enterpictureinpicture,*leavepictureinpicture,!playsInline,poster,#width",":svg:a^:svg:graphics|",":svg:animate^:svg:animation|",":svg:animateMotion^:svg:animation|",":svg:animateTransform^:svg:animation|",":svg:circle^:svg:geometry|",":svg:clipPath^:svg:graphics|",":svg:defs^:svg:graphics|",":svg:desc^:svg:|",":svg:discard^:svg:|",":svg:ellipse^:svg:geometry|",":svg:feBlend^:svg:|",":svg:feColorMatrix^:svg:|",":svg:feComponentTransfer^:svg:|",":svg:feComposite^:svg:|",":svg:feConvolveMatrix^:svg:|",":svg:feDiffuseLighting^:svg:|",":svg:feDisplacementMap^:svg:|",":svg:feDistantLight^:svg:|",":svg:feDropShadow^:svg:|",":svg:feFlood^:svg:|",":svg:feFuncA^:svg:componentTransferFunction|",":svg:feFuncB^:svg:componentTransferFunction|",":svg:feFuncG^:svg:componentTransferFunction|",":svg:feFuncR^:svg:componentTransferFunction|",":svg:feGaussianBlur^:svg:|",":svg:feImage^:svg:|",":svg:feMerge^:svg:|",":svg:feMergeNode^:svg:|",":svg:feMorphology^:svg:|",":svg:feOffset^:svg:|",":svg:fePointLight^:svg:|",":svg:feSpecularLighting^:svg:|",":svg:feSpotLight^:svg:|",":svg:feTile^:svg:|",":svg:feTurbulence^:svg:|",":svg:filter^:svg:|",":svg:foreignObject^:svg:graphics|",":svg:g^:svg:graphics|",":svg:image^:svg:graphics|decoding",":svg:line^:svg:geometry|",":svg:linearGradient^:svg:gradient|",":svg:mpath^:svg:|",":svg:marker^:svg:|",":svg:mask^:svg:|",":svg:metadata^:svg:|",":svg:path^:svg:geometry|",":svg:pattern^:svg:|",":svg:polygon^:svg:geometry|",":svg:polyline^:svg:geometry|",":svg:radialGradient^:svg:gradient|",":svg:rect^:svg:geometry|",":svg:svg^:svg:graphics|#currentScale,#zoomAndPan",":svg:script^:svg:|type",":svg:set^:svg:animation|",":svg:stop^:svg:|",":svg:style^:svg:|!disabled,media,title,type",":svg:switch^:svg:graphics|",":svg:symbol^:svg:|",":svg:tspan^:svg:textPositioning|",":svg:text^:svg:textPositioning|",":svg:textPath^:svg:textContent|",":svg:title^:svg:|",":svg:use^:svg:graphics|",":svg:view^:svg:|#zoomAndPan","data^[HTMLElement]|value","keygen^[HTMLElement]|!autofocus,challenge,!disabled,form,keytype,name","menuitem^[HTMLElement]|type,label,icon,!disabled,!checked,radiogroup,!default","summary^[HTMLElement]|","time^[HTMLElement]|dateTime",":svg:cursor^:svg:|",":math:^[HTMLElement]|!autofocus,nonce,*abort,*animationend,*animationiteration,*animationstart,*auxclick,*beforeinput,*beforematch,*beforetoggle,*beforexrselect,*blur,*cancel,*canplay,*canplaythrough,*change,*click,*close,*contentvisibilityautostatechange,*contextlost,*contextmenu,*contextrestored,*copy,*cuechange,*cut,*dblclick,*drag,*dragend,*dragenter,*dragleave,*dragover,*dragstart,*drop,*durationchange,*emptied,*ended,*error,*focus,*formdata,*gotpointercapture,*input,*invalid,*keydown,*keypress,*keyup,*load,*loadeddata,*loadedmetadata,*loadstart,*lostpointercapture,*mousedown,*mouseenter,*mouseleave,*mousemove,*mouseout,*mouseover,*mouseup,*mousewheel,*paste,*pause,*play,*playing,*pointercancel,*pointerdown,*pointerenter,*pointerleave,*pointermove,*pointerout,*pointerover,*pointerrawupdate,*pointerup,*progress,*ratechange,*reset,*resize,*scroll,*scrollend,*securitypolicyviolation,*seeked,*seeking,*select,*selectionchange,*selectstart,*slotchange,*stalled,*submit,*suspend,*timeupdate,*toggle,*transitioncancel,*transitionend,*transitionrun,*transitionstart,*volumechange,*waiting,*webkitanimationend,*webkitanimationiteration,*webkitanimationstart,*webkittransitionend,*wheel,%style,#tabIndex",":math:math^:math:|",":math:maction^:math:|",":math:menclose^:math:|",":math:merror^:math:|",":math:mfenced^:math:|",":math:mfrac^:math:|",":math:mi^:math:|",":math:mmultiscripts^:math:|",":math:mn^:math:|",":math:mo^:math:|",":math:mover^:math:|",":math:mpadded^:math:|",":math:mphantom^:math:|",":math:mroot^:math:|",":math:mrow^:math:|",":math:ms^:math:|",":math:mspace^:math:|",":math:msqrt^:math:|",":math:mstyle^:math:|",":math:msub^:math:|",":math:msubsup^:math:|",":math:msup^:math:|",":math:mtable^:math:|",":math:mtd^:math:|",":math:mtext^:math:|",":math:mtr^:math:|",":math:munder^:math:|",":math:munderover^:math:|",":math:semantics^:math:|"],Dc=new Map(Object.entries({class:"className",for:"htmlFor",formaction:"formAction",innerHtml:"innerHTML",readonly:"readOnly",tabindex:"tabIndex"})),hg=Array.from(Dc).reduce((e,[t,r])=>(e.set(t,r),e),new Map),Z7=(Ec=class extends sg{constructor(){super(),this._schema=new Map,this._eventSchema=new Map,fg.forEach(e=>{let t=new Map,r=new Set,[n,a]=e.split("|"),o=a.split(","),[i,s]=n.split("^");i.split(",").forEach(d=>{this._schema.set(d.toLowerCase(),t),this._eventSchema.set(d.toLowerCase(),r)});let c=s&&this._schema.get(s.toLowerCase());if(c){for(let[d,f]of c)t.set(d,f);for(let d of this._eventSchema.get(s.toLowerCase()))r.add(d)}o.forEach(d=>{if(d.length>0)switch(d[0]){case"*":r.add(d.substring(1));break;case"!":t.set(d.substring(1),ug);break;case"#":t.set(d.substring(1),cg);break;case"%":t.set(d.substring(1),pg);break;default:t.set(d,dg)}})})}hasProperty(e,t,r){if(r.some(n=>n.name===bc.name))return!0;if(e.indexOf("-")>-1){if(Gu(e)||Ku(e))return!1;if(r.some(n=>n.name===yc.name))return!0}return(this._schema.get(e.toLowerCase())||this._schema.get("unknown")).has(t)}hasElement(e,t){return t.some(r=>r.name===bc.name)||e.indexOf("-")>-1&&(Gu(e)||Ku(e)||t.some(r=>r.name===yc.name))?!0:this._schema.has(e.toLowerCase())}securityContext(e,t,r){r&&(t=this.getMappedPropName(t)),e=e.toLowerCase(),t=t.toLowerCase();let n=Yu()[e+"|"+t];return n||(n=Yu()["*|"+t],n||tn.NONE)}getMappedPropName(e){return Dc.get(e)??e}getDefaultComponentElementName(){return"ng-component"}validateProperty(e){return e.toLowerCase().startsWith("on")?{error:!0,msg:`Binding to event property '${e}' is disallowed for security reasons, please use (${e.slice(2)})=... +If '${e}' is a directive input, make sure the directive is imported by the current module.`}:{error:!1}}validateAttribute(e){return e.toLowerCase().startsWith("on")?{error:!0,msg:`Binding to event attribute '${e}' is disallowed for security reasons, please use (${e.slice(2)})=...`}:{error:!1}}allKnownElementNames(){return Array.from(this._schema.keys())}allKnownAttributesOfElement(e){let t=this._schema.get(e.toLowerCase())||this._schema.get("unknown");return Array.from(t.keys()).map(r=>hg.get(r)??r)}allKnownEventsOfElement(e){return Array.from(this._eventSchema.get(e.toLowerCase())??[])}normalizeAnimationStyleProperty(e){return t5(e)}normalizeAnimationStyleValue(e,t,r){let n="",a=r.toString().trim(),o=null;if(h5(e)&&r!==0&&r!=="0")if(typeof r=="number")n="px";else{let i=r.match(/^[+-]?[\d\.]+([a-z]*)$/);i&&i[1].length==0&&(o=`Please provide a CSS unit value for ${t}:${r}`)}return{error:o,value:a+n}}},u(Ec,"qt"),Ec),u(h5,"Ha"),K=(Cc=class{constructor({closedByChildren:e,implicitNamespacePrefix:t,contentType:r=ct.PARSABLE_DATA,closedByParent:n=!1,isVoid:a=!1,ignoreFirstLf:o=!1,preventNamespaceInheritance:i=!1,canSelfClose:s=!1}={}){this.closedByChildren={},this.closedByParent=!1,e&&e.length>0&&e.forEach(c=>this.closedByChildren[c]=!0),this.isVoid=a,this.closedByParent=n||a,this.implicitNamespacePrefix=t||null,this.contentType=r,this.ignoreFirstLf=o,this.preventNamespaceInheritance=i,this.canSelfClose=s??a}isClosedByChild(e){return this.isVoid||e.toLowerCase()in this.closedByChildren}getContentType(e){return typeof this.contentType=="object"?(e===void 0?void 0:this.contentType[e])??this.contentType.default:this.contentType}},u(Cc,"m"),Cc),u(Pl,"$e"),Ur=(xc=class{constructor(e,t){this.sourceSpan=e,this.i18n=t}},u(xc,"ae"),xc),gg=(Sc=class extends Ur{constructor(e,t,r,n){super(t,n),this.value=e,this.tokens=r,this.type="text"}visit(e,t){return e.visitText(this,t)}},u(Sc,"Ht"),Sc),vg=(Fc=class extends Ur{constructor(e,t,r,n){super(t,n),this.value=e,this.tokens=r,this.type="cdata"}visit(e,t){return e.visitCdata(this,t)}},u(Fc,"Vt"),Fc),yg=(Ac=class extends Ur{constructor(e,t,r,n,a,o){super(n,o),this.switchValue=e,this.type=t,this.cases=r,this.switchValueSourceSpan=a}visit(e,t){return e.visitExpansion(this,t)}},u(Ac,"Ut"),Ac),bg=(kc=class{constructor(e,t,r,n,a){this.value=e,this.expression=t,this.sourceSpan=r,this.valueSourceSpan=n,this.expSourceSpan=a,this.type="expansionCase"}visit(e,t){return e.visitExpansionCase(this,t)}},u(kc,"Wt"),kc),wg=(_c=class extends Ur{constructor(e,t,r,n,a,o,i){super(r,i),this.name=e,this.value=t,this.keySpan=n,this.valueSpan=a,this.valueTokens=o,this.type="attribute"}visit(e,t){return e.visitAttribute(this,t)}get nameSpan(){return this.keySpan}},u(_c,"zt"),_c),Qt=(Bc=class extends Ur{constructor(e,t,r,n,a,o=null,i=null,s){super(n,s),this.name=e,this.attrs=t,this.children=r,this.startSourceSpan=a,this.endSourceSpan=o,this.nameSpan=i,this.type="element"}visit(e,t){return e.visitElement(this,t)}},u(Bc,"G"),Bc),Dg=(Rc=class{constructor(e,t){this.value=e,this.sourceSpan=t,this.type="comment"}visit(e,t){return e.visitComment(this,t)}},u(Rc,"Gt"),Rc),Eg=(Ic=class{constructor(e,t){this.value=e,this.sourceSpan=t,this.type="docType"}visit(e,t){return e.visitDocType(this,t)}},u(Ic,"Yt"),Ic),qr=(zc=class extends Ur{constructor(e,t,r,n,a,o,i=null,s){super(n,s),this.name=e,this.parameters=t,this.children=r,this.nameSpan=a,this.startSourceSpan=o,this.endSourceSpan=i,this.type="block"}visit(e,t){return e.visitBlock(this,t)}},u(zc,"ee"),zc),Lc=(Tc=class{constructor(e,t){this.expression=e,this.sourceSpan=t,this.type="blockParameter",this.startSourceSpan=null,this.endSourceSpan=null}visit(e,t){return e.visitBlockParameter(this,t)}},u(Tc,"ct"),Tc),Oc=(Mc=class{constructor(e,t,r,n,a){this.name=e,this.value=t,this.sourceSpan=r,this.nameSpan=n,this.valueSpan=a,this.type="letDeclaration",this.startSourceSpan=null,this.endSourceSpan=null}visit(e,t){return e.visitLetDeclaration(this,t)}},u(Mc,"pt"),Mc),u(cd,"jt"),J7=(Pc=class{constructor(){}visitElement(e,t){this.visitChildren(t,r=>{r(e.attrs),r(e.children)})}visitAttribute(e,t){}visitText(e,t){}visitCdata(e,t){}visitComment(e,t){}visitDocType(e,t){}visitExpansion(e,t){return this.visitChildren(t,r=>{r(e.cases)})}visitExpansionCase(e,t){}visitBlock(e,t){this.visitChildren(t,r=>{r(e.parameters),r(e.children)})}visitBlockParameter(e,t){}visitLetDeclaration(e,t){}visitChildren(e,t){let r=[],n=this;function a(o){o&&r.push(cd(n,o,e))}return u(a,"i"),t(a),Array.prototype.concat.apply([],r)}},u(Pc,"ht"),Pc),Io={AElig:"Æ",AMP:"&",amp:"&",Aacute:"Á",Abreve:"Ă",Acirc:"Â",Acy:"А",Afr:"𝔄",Agrave:"À",Alpha:"Α",Amacr:"Ā",And:"⩓",Aogon:"Ą",Aopf:"𝔸",ApplyFunction:"⁡",af:"⁡",Aring:"Å",angst:"Å",Ascr:"𝒜",Assign:"≔",colone:"≔",coloneq:"≔",Atilde:"Ã",Auml:"Ä",Backslash:"∖",setminus:"∖",setmn:"∖",smallsetminus:"∖",ssetmn:"∖",Barv:"⫧",Barwed:"⌆",doublebarwedge:"⌆",Bcy:"Б",Because:"∵",becaus:"∵",because:"∵",Bernoullis:"ℬ",Bscr:"ℬ",bernou:"ℬ",Beta:"Β",Bfr:"𝔅",Bopf:"𝔹",Breve:"˘",breve:"˘",Bumpeq:"≎",HumpDownHump:"≎",bump:"≎",CHcy:"Ч",COPY:"©",copy:"©",Cacute:"Ć",Cap:"⋒",CapitalDifferentialD:"ⅅ",DD:"ⅅ",Cayleys:"ℭ",Cfr:"ℭ",Ccaron:"Č",Ccedil:"Ç",Ccirc:"Ĉ",Cconint:"∰",Cdot:"Ċ",Cedilla:"¸",cedil:"¸",CenterDot:"·",centerdot:"·",middot:"·",Chi:"Χ",CircleDot:"⊙",odot:"⊙",CircleMinus:"⊖",ominus:"⊖",CirclePlus:"⊕",oplus:"⊕",CircleTimes:"⊗",otimes:"⊗",ClockwiseContourIntegral:"∲",cwconint:"∲",CloseCurlyDoubleQuote:"”",rdquo:"”",rdquor:"”",CloseCurlyQuote:"’",rsquo:"’",rsquor:"’",Colon:"∷",Proportion:"∷",Colone:"⩴",Congruent:"≡",equiv:"≡",Conint:"∯",DoubleContourIntegral:"∯",ContourIntegral:"∮",conint:"∮",oint:"∮",Copf:"ℂ",complexes:"ℂ",Coproduct:"∐",coprod:"∐",CounterClockwiseContourIntegral:"∳",awconint:"∳",Cross:"⨯",Cscr:"𝒞",Cup:"⋓",CupCap:"≍",asympeq:"≍",DDotrahd:"⤑",DJcy:"Ђ",DScy:"Ѕ",DZcy:"Џ",Dagger:"‡",ddagger:"‡",Darr:"↡",Dashv:"⫤",DoubleLeftTee:"⫤",Dcaron:"Ď",Dcy:"Д",Del:"∇",nabla:"∇",Delta:"Δ",Dfr:"𝔇",DiacriticalAcute:"´",acute:"´",DiacriticalDot:"˙",dot:"˙",DiacriticalDoubleAcute:"˝",dblac:"˝",DiacriticalGrave:"`",grave:"`",DiacriticalTilde:"˜",tilde:"˜",Diamond:"⋄",diam:"⋄",diamond:"⋄",DifferentialD:"ⅆ",dd:"ⅆ",Dopf:"𝔻",Dot:"¨",DoubleDot:"¨",die:"¨",uml:"¨",DotDot:"⃜",DotEqual:"≐",doteq:"≐",esdot:"≐",DoubleDownArrow:"⇓",Downarrow:"⇓",dArr:"⇓",DoubleLeftArrow:"⇐",Leftarrow:"⇐",lArr:"⇐",DoubleLeftRightArrow:"⇔",Leftrightarrow:"⇔",hArr:"⇔",iff:"⇔",DoubleLongLeftArrow:"⟸",Longleftarrow:"⟸",xlArr:"⟸",DoubleLongLeftRightArrow:"⟺",Longleftrightarrow:"⟺",xhArr:"⟺",DoubleLongRightArrow:"⟹",Longrightarrow:"⟹",xrArr:"⟹",DoubleRightArrow:"⇒",Implies:"⇒",Rightarrow:"⇒",rArr:"⇒",DoubleRightTee:"⊨",vDash:"⊨",DoubleUpArrow:"⇑",Uparrow:"⇑",uArr:"⇑",DoubleUpDownArrow:"⇕",Updownarrow:"⇕",vArr:"⇕",DoubleVerticalBar:"∥",par:"∥",parallel:"∥",shortparallel:"∥",spar:"∥",DownArrow:"↓",ShortDownArrow:"↓",darr:"↓",downarrow:"↓",DownArrowBar:"⤓",DownArrowUpArrow:"⇵",duarr:"⇵",DownBreve:"̑",DownLeftRightVector:"⥐",DownLeftTeeVector:"⥞",DownLeftVector:"↽",leftharpoondown:"↽",lhard:"↽",DownLeftVectorBar:"⥖",DownRightTeeVector:"⥟",DownRightVector:"⇁",rhard:"⇁",rightharpoondown:"⇁",DownRightVectorBar:"⥗",DownTee:"⊤",top:"⊤",DownTeeArrow:"↧",mapstodown:"↧",Dscr:"𝒟",Dstrok:"Đ",ENG:"Ŋ",ETH:"Ð",Eacute:"É",Ecaron:"Ě",Ecirc:"Ê",Ecy:"Э",Edot:"Ė",Efr:"𝔈",Egrave:"È",Element:"∈",in:"∈",isin:"∈",isinv:"∈",Emacr:"Ē",EmptySmallSquare:"◻",EmptyVerySmallSquare:"▫",Eogon:"Ę",Eopf:"𝔼",Epsilon:"Ε",Equal:"⩵",EqualTilde:"≂",eqsim:"≂",esim:"≂",Equilibrium:"⇌",rightleftharpoons:"⇌",rlhar:"⇌",Escr:"ℰ",expectation:"ℰ",Esim:"⩳",Eta:"Η",Euml:"Ë",Exists:"∃",exist:"∃",ExponentialE:"ⅇ",ee:"ⅇ",exponentiale:"ⅇ",Fcy:"Ф",Ffr:"𝔉",FilledSmallSquare:"◼",FilledVerySmallSquare:"▪",blacksquare:"▪",squarf:"▪",squf:"▪",Fopf:"𝔽",ForAll:"∀",forall:"∀",Fouriertrf:"ℱ",Fscr:"ℱ",GJcy:"Ѓ",GT:">",gt:">",Gamma:"Γ",Gammad:"Ϝ",Gbreve:"Ğ",Gcedil:"Ģ",Gcirc:"Ĝ",Gcy:"Г",Gdot:"Ġ",Gfr:"𝔊",Gg:"⋙",ggg:"⋙",Gopf:"𝔾",GreaterEqual:"≥",ge:"≥",geq:"≥",GreaterEqualLess:"⋛",gel:"⋛",gtreqless:"⋛",GreaterFullEqual:"≧",gE:"≧",geqq:"≧",GreaterGreater:"⪢",GreaterLess:"≷",gl:"≷",gtrless:"≷",GreaterSlantEqual:"⩾",geqslant:"⩾",ges:"⩾",GreaterTilde:"≳",gsim:"≳",gtrsim:"≳",Gscr:"𝒢",Gt:"≫",NestedGreaterGreater:"≫",gg:"≫",HARDcy:"Ъ",Hacek:"ˇ",caron:"ˇ",Hat:"^",Hcirc:"Ĥ",Hfr:"ℌ",Poincareplane:"ℌ",HilbertSpace:"ℋ",Hscr:"ℋ",hamilt:"ℋ",Hopf:"ℍ",quaternions:"ℍ",HorizontalLine:"─",boxh:"─",Hstrok:"Ħ",HumpEqual:"≏",bumpe:"≏",bumpeq:"≏",IEcy:"Е",IJlig:"IJ",IOcy:"Ё",Iacute:"Í",Icirc:"Î",Icy:"И",Idot:"İ",Ifr:"ℑ",Im:"ℑ",image:"ℑ",imagpart:"ℑ",Igrave:"Ì",Imacr:"Ī",ImaginaryI:"ⅈ",ii:"ⅈ",Int:"∬",Integral:"∫",int:"∫",Intersection:"⋂",bigcap:"⋂",xcap:"⋂",InvisibleComma:"⁣",ic:"⁣",InvisibleTimes:"⁢",it:"⁢",Iogon:"Į",Iopf:"𝕀",Iota:"Ι",Iscr:"ℐ",imagline:"ℐ",Itilde:"Ĩ",Iukcy:"І",Iuml:"Ï",Jcirc:"Ĵ",Jcy:"Й",Jfr:"𝔍",Jopf:"𝕁",Jscr:"𝒥",Jsercy:"Ј",Jukcy:"Є",KHcy:"Х",KJcy:"Ќ",Kappa:"Κ",Kcedil:"Ķ",Kcy:"К",Kfr:"𝔎",Kopf:"𝕂",Kscr:"𝒦",LJcy:"Љ",LT:"<",lt:"<",Lacute:"Ĺ",Lambda:"Λ",Lang:"⟪",Laplacetrf:"ℒ",Lscr:"ℒ",lagran:"ℒ",Larr:"↞",twoheadleftarrow:"↞",Lcaron:"Ľ",Lcedil:"Ļ",Lcy:"Л",LeftAngleBracket:"⟨",lang:"⟨",langle:"⟨",LeftArrow:"←",ShortLeftArrow:"←",larr:"←",leftarrow:"←",slarr:"←",LeftArrowBar:"⇤",larrb:"⇤",LeftArrowRightArrow:"⇆",leftrightarrows:"⇆",lrarr:"⇆",LeftCeiling:"⌈",lceil:"⌈",LeftDoubleBracket:"⟦",lobrk:"⟦",LeftDownTeeVector:"⥡",LeftDownVector:"⇃",dharl:"⇃",downharpoonleft:"⇃",LeftDownVectorBar:"⥙",LeftFloor:"⌊",lfloor:"⌊",LeftRightArrow:"↔",harr:"↔",leftrightarrow:"↔",LeftRightVector:"⥎",LeftTee:"⊣",dashv:"⊣",LeftTeeArrow:"↤",mapstoleft:"↤",LeftTeeVector:"⥚",LeftTriangle:"⊲",vartriangleleft:"⊲",vltri:"⊲",LeftTriangleBar:"⧏",LeftTriangleEqual:"⊴",ltrie:"⊴",trianglelefteq:"⊴",LeftUpDownVector:"⥑",LeftUpTeeVector:"⥠",LeftUpVector:"↿",uharl:"↿",upharpoonleft:"↿",LeftUpVectorBar:"⥘",LeftVector:"↼",leftharpoonup:"↼",lharu:"↼",LeftVectorBar:"⥒",LessEqualGreater:"⋚",leg:"⋚",lesseqgtr:"⋚",LessFullEqual:"≦",lE:"≦",leqq:"≦",LessGreater:"≶",lessgtr:"≶",lg:"≶",LessLess:"⪡",LessSlantEqual:"⩽",leqslant:"⩽",les:"⩽",LessTilde:"≲",lesssim:"≲",lsim:"≲",Lfr:"𝔏",Ll:"⋘",Lleftarrow:"⇚",lAarr:"⇚",Lmidot:"Ŀ",LongLeftArrow:"⟵",longleftarrow:"⟵",xlarr:"⟵",LongLeftRightArrow:"⟷",longleftrightarrow:"⟷",xharr:"⟷",LongRightArrow:"⟶",longrightarrow:"⟶",xrarr:"⟶",Lopf:"𝕃",LowerLeftArrow:"↙",swarr:"↙",swarrow:"↙",LowerRightArrow:"↘",searr:"↘",searrow:"↘",Lsh:"↰",lsh:"↰",Lstrok:"Ł",Lt:"≪",NestedLessLess:"≪",ll:"≪",Map:"⤅",Mcy:"М",MediumSpace:" ",Mellintrf:"ℳ",Mscr:"ℳ",phmmat:"ℳ",Mfr:"𝔐",MinusPlus:"∓",mnplus:"∓",mp:"∓",Mopf:"𝕄",Mu:"Μ",NJcy:"Њ",Nacute:"Ń",Ncaron:"Ň",Ncedil:"Ņ",Ncy:"Н",NegativeMediumSpace:"​",NegativeThickSpace:"​",NegativeThinSpace:"​",NegativeVeryThinSpace:"​",ZeroWidthSpace:"​",NewLine:` +`,Nfr:"𝔑",NoBreak:"⁠",NonBreakingSpace:" ",nbsp:" ",Nopf:"ℕ",naturals:"ℕ",Not:"⫬",NotCongruent:"≢",nequiv:"≢",NotCupCap:"≭",NotDoubleVerticalBar:"∦",npar:"∦",nparallel:"∦",nshortparallel:"∦",nspar:"∦",NotElement:"∉",notin:"∉",notinva:"∉",NotEqual:"≠",ne:"≠",NotEqualTilde:"≂̸",nesim:"≂̸",NotExists:"∄",nexist:"∄",nexists:"∄",NotGreater:"≯",ngt:"≯",ngtr:"≯",NotGreaterEqual:"≱",nge:"≱",ngeq:"≱",NotGreaterFullEqual:"≧̸",ngE:"≧̸",ngeqq:"≧̸",NotGreaterGreater:"≫̸",nGtv:"≫̸",NotGreaterLess:"≹",ntgl:"≹",NotGreaterSlantEqual:"⩾̸",ngeqslant:"⩾̸",nges:"⩾̸",NotGreaterTilde:"≵",ngsim:"≵",NotHumpDownHump:"≎̸",nbump:"≎̸",NotHumpEqual:"≏̸",nbumpe:"≏̸",NotLeftTriangle:"⋪",nltri:"⋪",ntriangleleft:"⋪",NotLeftTriangleBar:"⧏̸",NotLeftTriangleEqual:"⋬",nltrie:"⋬",ntrianglelefteq:"⋬",NotLess:"≮",nless:"≮",nlt:"≮",NotLessEqual:"≰",nle:"≰",nleq:"≰",NotLessGreater:"≸",ntlg:"≸",NotLessLess:"≪̸",nLtv:"≪̸",NotLessSlantEqual:"⩽̸",nleqslant:"⩽̸",nles:"⩽̸",NotLessTilde:"≴",nlsim:"≴",NotNestedGreaterGreater:"⪢̸",NotNestedLessLess:"⪡̸",NotPrecedes:"⊀",npr:"⊀",nprec:"⊀",NotPrecedesEqual:"⪯̸",npre:"⪯̸",npreceq:"⪯̸",NotPrecedesSlantEqual:"⋠",nprcue:"⋠",NotReverseElement:"∌",notni:"∌",notniva:"∌",NotRightTriangle:"⋫",nrtri:"⋫",ntriangleright:"⋫",NotRightTriangleBar:"⧐̸",NotRightTriangleEqual:"⋭",nrtrie:"⋭",ntrianglerighteq:"⋭",NotSquareSubset:"⊏̸",NotSquareSubsetEqual:"⋢",nsqsube:"⋢",NotSquareSuperset:"⊐̸",NotSquareSupersetEqual:"⋣",nsqsupe:"⋣",NotSubset:"⊂⃒",nsubset:"⊂⃒",vnsub:"⊂⃒",NotSubsetEqual:"⊈",nsube:"⊈",nsubseteq:"⊈",NotSucceeds:"⊁",nsc:"⊁",nsucc:"⊁",NotSucceedsEqual:"⪰̸",nsce:"⪰̸",nsucceq:"⪰̸",NotSucceedsSlantEqual:"⋡",nsccue:"⋡",NotSucceedsTilde:"≿̸",NotSuperset:"⊃⃒",nsupset:"⊃⃒",vnsup:"⊃⃒",NotSupersetEqual:"⊉",nsupe:"⊉",nsupseteq:"⊉",NotTilde:"≁",nsim:"≁",NotTildeEqual:"≄",nsime:"≄",nsimeq:"≄",NotTildeFullEqual:"≇",ncong:"≇",NotTildeTilde:"≉",nap:"≉",napprox:"≉",NotVerticalBar:"∤",nmid:"∤",nshortmid:"∤",nsmid:"∤",Nscr:"𝒩",Ntilde:"Ñ",Nu:"Ν",OElig:"Œ",Oacute:"Ó",Ocirc:"Ô",Ocy:"О",Odblac:"Ő",Ofr:"𝔒",Ograve:"Ò",Omacr:"Ō",Omega:"Ω",ohm:"Ω",Omicron:"Ο",Oopf:"𝕆",OpenCurlyDoubleQuote:"“",ldquo:"“",OpenCurlyQuote:"‘",lsquo:"‘",Or:"⩔",Oscr:"𝒪",Oslash:"Ø",Otilde:"Õ",Otimes:"⨷",Ouml:"Ö",OverBar:"‾",oline:"‾",OverBrace:"⏞",OverBracket:"⎴",tbrk:"⎴",OverParenthesis:"⏜",PartialD:"∂",part:"∂",Pcy:"П",Pfr:"𝔓",Phi:"Φ",Pi:"Π",PlusMinus:"±",plusmn:"±",pm:"±",Popf:"ℙ",primes:"ℙ",Pr:"⪻",Precedes:"≺",pr:"≺",prec:"≺",PrecedesEqual:"⪯",pre:"⪯",preceq:"⪯",PrecedesSlantEqual:"≼",prcue:"≼",preccurlyeq:"≼",PrecedesTilde:"≾",precsim:"≾",prsim:"≾",Prime:"″",Product:"∏",prod:"∏",Proportional:"∝",prop:"∝",propto:"∝",varpropto:"∝",vprop:"∝",Pscr:"𝒫",Psi:"Ψ",QUOT:'"',quot:'"',Qfr:"𝔔",Qopf:"ℚ",rationals:"ℚ",Qscr:"𝒬",RBarr:"⤐",drbkarow:"⤐",REG:"®",circledR:"®",reg:"®",Racute:"Ŕ",Rang:"⟫",Rarr:"↠",twoheadrightarrow:"↠",Rarrtl:"⤖",Rcaron:"Ř",Rcedil:"Ŗ",Rcy:"Р",Re:"ℜ",Rfr:"ℜ",real:"ℜ",realpart:"ℜ",ReverseElement:"∋",SuchThat:"∋",ni:"∋",niv:"∋",ReverseEquilibrium:"⇋",leftrightharpoons:"⇋",lrhar:"⇋",ReverseUpEquilibrium:"⥯",duhar:"⥯",Rho:"Ρ",RightAngleBracket:"⟩",rang:"⟩",rangle:"⟩",RightArrow:"→",ShortRightArrow:"→",rarr:"→",rightarrow:"→",srarr:"→",RightArrowBar:"⇥",rarrb:"⇥",RightArrowLeftArrow:"⇄",rightleftarrows:"⇄",rlarr:"⇄",RightCeiling:"⌉",rceil:"⌉",RightDoubleBracket:"⟧",robrk:"⟧",RightDownTeeVector:"⥝",RightDownVector:"⇂",dharr:"⇂",downharpoonright:"⇂",RightDownVectorBar:"⥕",RightFloor:"⌋",rfloor:"⌋",RightTee:"⊢",vdash:"⊢",RightTeeArrow:"↦",map:"↦",mapsto:"↦",RightTeeVector:"⥛",RightTriangle:"⊳",vartriangleright:"⊳",vrtri:"⊳",RightTriangleBar:"⧐",RightTriangleEqual:"⊵",rtrie:"⊵",trianglerighteq:"⊵",RightUpDownVector:"⥏",RightUpTeeVector:"⥜",RightUpVector:"↾",uharr:"↾",upharpoonright:"↾",RightUpVectorBar:"⥔",RightVector:"⇀",rharu:"⇀",rightharpoonup:"⇀",RightVectorBar:"⥓",Ropf:"ℝ",reals:"ℝ",RoundImplies:"⥰",Rrightarrow:"⇛",rAarr:"⇛",Rscr:"ℛ",realine:"ℛ",Rsh:"↱",rsh:"↱",RuleDelayed:"⧴",SHCHcy:"Щ",SHcy:"Ш",SOFTcy:"Ь",Sacute:"Ś",Sc:"⪼",Scaron:"Š",Scedil:"Ş",Scirc:"Ŝ",Scy:"С",Sfr:"𝔖",ShortUpArrow:"↑",UpArrow:"↑",uarr:"↑",uparrow:"↑",Sigma:"Σ",SmallCircle:"∘",compfn:"∘",Sopf:"𝕊",Sqrt:"√",radic:"√",Square:"□",squ:"□",square:"□",SquareIntersection:"⊓",sqcap:"⊓",SquareSubset:"⊏",sqsub:"⊏",sqsubset:"⊏",SquareSubsetEqual:"⊑",sqsube:"⊑",sqsubseteq:"⊑",SquareSuperset:"⊐",sqsup:"⊐",sqsupset:"⊐",SquareSupersetEqual:"⊒",sqsupe:"⊒",sqsupseteq:"⊒",SquareUnion:"⊔",sqcup:"⊔",Sscr:"𝒮",Star:"⋆",sstarf:"⋆",Sub:"⋐",Subset:"⋐",SubsetEqual:"⊆",sube:"⊆",subseteq:"⊆",Succeeds:"≻",sc:"≻",succ:"≻",SucceedsEqual:"⪰",sce:"⪰",succeq:"⪰",SucceedsSlantEqual:"≽",sccue:"≽",succcurlyeq:"≽",SucceedsTilde:"≿",scsim:"≿",succsim:"≿",Sum:"∑",sum:"∑",Sup:"⋑",Supset:"⋑",Superset:"⊃",sup:"⊃",supset:"⊃",SupersetEqual:"⊇",supe:"⊇",supseteq:"⊇",THORN:"Þ",TRADE:"™",trade:"™",TSHcy:"Ћ",TScy:"Ц",Tab:" ",Tau:"Τ",Tcaron:"Ť",Tcedil:"Ţ",Tcy:"Т",Tfr:"𝔗",Therefore:"∴",there4:"∴",therefore:"∴",Theta:"Θ",ThickSpace:"  ",ThinSpace:" ",thinsp:" ",Tilde:"∼",sim:"∼",thicksim:"∼",thksim:"∼",TildeEqual:"≃",sime:"≃",simeq:"≃",TildeFullEqual:"≅",cong:"≅",TildeTilde:"≈",ap:"≈",approx:"≈",asymp:"≈",thickapprox:"≈",thkap:"≈",Topf:"𝕋",TripleDot:"⃛",tdot:"⃛",Tscr:"𝒯",Tstrok:"Ŧ",Uacute:"Ú",Uarr:"↟",Uarrocir:"⥉",Ubrcy:"Ў",Ubreve:"Ŭ",Ucirc:"Û",Ucy:"У",Udblac:"Ű",Ufr:"𝔘",Ugrave:"Ù",Umacr:"Ū",UnderBar:"_",lowbar:"_",UnderBrace:"⏟",UnderBracket:"⎵",bbrk:"⎵",UnderParenthesis:"⏝",Union:"⋃",bigcup:"⋃",xcup:"⋃",UnionPlus:"⊎",uplus:"⊎",Uogon:"Ų",Uopf:"𝕌",UpArrowBar:"⤒",UpArrowDownArrow:"⇅",udarr:"⇅",UpDownArrow:"↕",updownarrow:"↕",varr:"↕",UpEquilibrium:"⥮",udhar:"⥮",UpTee:"⊥",bot:"⊥",bottom:"⊥",perp:"⊥",UpTeeArrow:"↥",mapstoup:"↥",UpperLeftArrow:"↖",nwarr:"↖",nwarrow:"↖",UpperRightArrow:"↗",nearr:"↗",nearrow:"↗",Upsi:"ϒ",upsih:"ϒ",Upsilon:"Υ",Uring:"Ů",Uscr:"𝒰",Utilde:"Ũ",Uuml:"Ü",VDash:"⊫",Vbar:"⫫",Vcy:"В",Vdash:"⊩",Vdashl:"⫦",Vee:"⋁",bigvee:"⋁",xvee:"⋁",Verbar:"‖",Vert:"‖",VerticalBar:"∣",mid:"∣",shortmid:"∣",smid:"∣",VerticalLine:"|",verbar:"|",vert:"|",VerticalSeparator:"❘",VerticalTilde:"≀",wr:"≀",wreath:"≀",VeryThinSpace:" ",hairsp:" ",Vfr:"𝔙",Vopf:"𝕍",Vscr:"𝒱",Vvdash:"⊪",Wcirc:"Ŵ",Wedge:"⋀",bigwedge:"⋀",xwedge:"⋀",Wfr:"𝔚",Wopf:"𝕎",Wscr:"𝒲",Xfr:"𝔛",Xi:"Ξ",Xopf:"𝕏",Xscr:"𝒳",YAcy:"Я",YIcy:"Ї",YUcy:"Ю",Yacute:"Ý",Ycirc:"Ŷ",Ycy:"Ы",Yfr:"𝔜",Yopf:"𝕐",Yscr:"𝒴",Yuml:"Ÿ",ZHcy:"Ж",Zacute:"Ź",Zcaron:"Ž",Zcy:"З",Zdot:"Ż",Zeta:"Ζ",Zfr:"ℨ",zeetrf:"ℨ",Zopf:"ℤ",integers:"ℤ",Zscr:"𝒵",aacute:"á",abreve:"ă",ac:"∾",mstpos:"∾",acE:"∾̳",acd:"∿",acirc:"â",acy:"а",aelig:"æ",afr:"𝔞",agrave:"à",alefsym:"ℵ",aleph:"ℵ",alpha:"α",amacr:"ā",amalg:"⨿",and:"∧",wedge:"∧",andand:"⩕",andd:"⩜",andslope:"⩘",andv:"⩚",ang:"∠",angle:"∠",ange:"⦤",angmsd:"∡",measuredangle:"∡",angmsdaa:"⦨",angmsdab:"⦩",angmsdac:"⦪",angmsdad:"⦫",angmsdae:"⦬",angmsdaf:"⦭",angmsdag:"⦮",angmsdah:"⦯",angrt:"∟",angrtvb:"⊾",angrtvbd:"⦝",angsph:"∢",angzarr:"⍼",aogon:"ą",aopf:"𝕒",apE:"⩰",apacir:"⩯",ape:"≊",approxeq:"≊",apid:"≋",apos:"'",aring:"å",ascr:"𝒶",ast:"*",midast:"*",atilde:"ã",auml:"ä",awint:"⨑",bNot:"⫭",backcong:"≌",bcong:"≌",backepsilon:"϶",bepsi:"϶",backprime:"‵",bprime:"‵",backsim:"∽",bsim:"∽",backsimeq:"⋍",bsime:"⋍",barvee:"⊽",barwed:"⌅",barwedge:"⌅",bbrktbrk:"⎶",bcy:"б",bdquo:"„",ldquor:"„",bemptyv:"⦰",beta:"β",beth:"ℶ",between:"≬",twixt:"≬",bfr:"𝔟",bigcirc:"◯",xcirc:"◯",bigodot:"⨀",xodot:"⨀",bigoplus:"⨁",xoplus:"⨁",bigotimes:"⨂",xotime:"⨂",bigsqcup:"⨆",xsqcup:"⨆",bigstar:"★",starf:"★",bigtriangledown:"▽",xdtri:"▽",bigtriangleup:"△",xutri:"△",biguplus:"⨄",xuplus:"⨄",bkarow:"⤍",rbarr:"⤍",blacklozenge:"⧫",lozf:"⧫",blacktriangle:"▴",utrif:"▴",blacktriangledown:"▾",dtrif:"▾",blacktriangleleft:"◂",ltrif:"◂",blacktriangleright:"▸",rtrif:"▸",blank:"␣",blk12:"▒",blk14:"░",blk34:"▓",block:"█",bne:"=⃥",bnequiv:"≡⃥",bnot:"⌐",bopf:"𝕓",bowtie:"⋈",boxDL:"╗",boxDR:"╔",boxDl:"╖",boxDr:"╓",boxH:"═",boxHD:"╦",boxHU:"╩",boxHd:"╤",boxHu:"╧",boxUL:"╝",boxUR:"╚",boxUl:"╜",boxUr:"╙",boxV:"║",boxVH:"╬",boxVL:"╣",boxVR:"╠",boxVh:"╫",boxVl:"╢",boxVr:"╟",boxbox:"⧉",boxdL:"╕",boxdR:"╒",boxdl:"┐",boxdr:"┌",boxhD:"╥",boxhU:"╨",boxhd:"┬",boxhu:"┴",boxminus:"⊟",minusb:"⊟",boxplus:"⊞",plusb:"⊞",boxtimes:"⊠",timesb:"⊠",boxuL:"╛",boxuR:"╘",boxul:"┘",boxur:"└",boxv:"│",boxvH:"╪",boxvL:"╡",boxvR:"╞",boxvh:"┼",boxvl:"┤",boxvr:"├",brvbar:"¦",bscr:"𝒷",bsemi:"⁏",bsol:"\\",bsolb:"⧅",bsolhsub:"⟈",bull:"•",bullet:"•",bumpE:"⪮",cacute:"ć",cap:"∩",capand:"⩄",capbrcup:"⩉",capcap:"⩋",capcup:"⩇",capdot:"⩀",caps:"∩︀",caret:"⁁",ccaps:"⩍",ccaron:"č",ccedil:"ç",ccirc:"ĉ",ccups:"⩌",ccupssm:"⩐",cdot:"ċ",cemptyv:"⦲",cent:"¢",cfr:"𝔠",chcy:"ч",check:"✓",checkmark:"✓",chi:"χ",cir:"○",cirE:"⧃",circ:"ˆ",circeq:"≗",cire:"≗",circlearrowleft:"↺",olarr:"↺",circlearrowright:"↻",orarr:"↻",circledS:"Ⓢ",oS:"Ⓢ",circledast:"⊛",oast:"⊛",circledcirc:"⊚",ocir:"⊚",circleddash:"⊝",odash:"⊝",cirfnint:"⨐",cirmid:"⫯",cirscir:"⧂",clubs:"♣",clubsuit:"♣",colon:":",comma:",",commat:"@",comp:"∁",complement:"∁",congdot:"⩭",copf:"𝕔",copysr:"℗",crarr:"↵",cross:"✗",cscr:"𝒸",csub:"⫏",csube:"⫑",csup:"⫐",csupe:"⫒",ctdot:"⋯",cudarrl:"⤸",cudarrr:"⤵",cuepr:"⋞",curlyeqprec:"⋞",cuesc:"⋟",curlyeqsucc:"⋟",cularr:"↶",curvearrowleft:"↶",cularrp:"⤽",cup:"∪",cupbrcap:"⩈",cupcap:"⩆",cupcup:"⩊",cupdot:"⊍",cupor:"⩅",cups:"∪︀",curarr:"↷",curvearrowright:"↷",curarrm:"⤼",curlyvee:"⋎",cuvee:"⋎",curlywedge:"⋏",cuwed:"⋏",curren:"¤",cwint:"∱",cylcty:"⌭",dHar:"⥥",dagger:"†",daleth:"ℸ",dash:"‐",hyphen:"‐",dbkarow:"⤏",rBarr:"⤏",dcaron:"ď",dcy:"д",ddarr:"⇊",downdownarrows:"⇊",ddotseq:"⩷",eDDot:"⩷",deg:"°",delta:"δ",demptyv:"⦱",dfisht:"⥿",dfr:"𝔡",diamondsuit:"♦",diams:"♦",digamma:"ϝ",gammad:"ϝ",disin:"⋲",div:"÷",divide:"÷",divideontimes:"⋇",divonx:"⋇",djcy:"ђ",dlcorn:"⌞",llcorner:"⌞",dlcrop:"⌍",dollar:"$",dopf:"𝕕",doteqdot:"≑",eDot:"≑",dotminus:"∸",minusd:"∸",dotplus:"∔",plusdo:"∔",dotsquare:"⊡",sdotb:"⊡",drcorn:"⌟",lrcorner:"⌟",drcrop:"⌌",dscr:"𝒹",dscy:"ѕ",dsol:"⧶",dstrok:"đ",dtdot:"⋱",dtri:"▿",triangledown:"▿",dwangle:"⦦",dzcy:"џ",dzigrarr:"⟿",eacute:"é",easter:"⩮",ecaron:"ě",ecir:"≖",eqcirc:"≖",ecirc:"ê",ecolon:"≕",eqcolon:"≕",ecy:"э",edot:"ė",efDot:"≒",fallingdotseq:"≒",efr:"𝔢",eg:"⪚",egrave:"è",egs:"⪖",eqslantgtr:"⪖",egsdot:"⪘",el:"⪙",elinters:"⏧",ell:"ℓ",els:"⪕",eqslantless:"⪕",elsdot:"⪗",emacr:"ē",empty:"∅",emptyset:"∅",emptyv:"∅",varnothing:"∅",emsp13:" ",emsp14:" ",emsp:" ",eng:"ŋ",ensp:" ",eogon:"ę",eopf:"𝕖",epar:"⋕",eparsl:"⧣",eplus:"⩱",epsi:"ε",epsilon:"ε",epsiv:"ϵ",straightepsilon:"ϵ",varepsilon:"ϵ",equals:"=",equest:"≟",questeq:"≟",equivDD:"⩸",eqvparsl:"⧥",erDot:"≓",risingdotseq:"≓",erarr:"⥱",escr:"ℯ",eta:"η",eth:"ð",euml:"ë",euro:"€",excl:"!",fcy:"ф",female:"♀",ffilig:"ffi",fflig:"ff",ffllig:"ffl",ffr:"𝔣",filig:"fi",fjlig:"fj",flat:"♭",fllig:"fl",fltns:"▱",fnof:"ƒ",fopf:"𝕗",fork:"⋔",pitchfork:"⋔",forkv:"⫙",fpartint:"⨍",frac12:"½",half:"½",frac13:"⅓",frac14:"¼",frac15:"⅕",frac16:"⅙",frac18:"⅛",frac23:"⅔",frac25:"⅖",frac34:"¾",frac35:"⅗",frac38:"⅜",frac45:"⅘",frac56:"⅚",frac58:"⅝",frac78:"⅞",frasl:"⁄",frown:"⌢",sfrown:"⌢",fscr:"𝒻",gEl:"⪌",gtreqqless:"⪌",gacute:"ǵ",gamma:"γ",gap:"⪆",gtrapprox:"⪆",gbreve:"ğ",gcirc:"ĝ",gcy:"г",gdot:"ġ",gescc:"⪩",gesdot:"⪀",gesdoto:"⪂",gesdotol:"⪄",gesl:"⋛︀",gesles:"⪔",gfr:"𝔤",gimel:"ℷ",gjcy:"ѓ",glE:"⪒",gla:"⪥",glj:"⪤",gnE:"≩",gneqq:"≩",gnap:"⪊",gnapprox:"⪊",gne:"⪈",gneq:"⪈",gnsim:"⋧",gopf:"𝕘",gscr:"ℊ",gsime:"⪎",gsiml:"⪐",gtcc:"⪧",gtcir:"⩺",gtdot:"⋗",gtrdot:"⋗",gtlPar:"⦕",gtquest:"⩼",gtrarr:"⥸",gvertneqq:"≩︀",gvnE:"≩︀",hardcy:"ъ",harrcir:"⥈",harrw:"↭",leftrightsquigarrow:"↭",hbar:"ℏ",hslash:"ℏ",planck:"ℏ",plankv:"ℏ",hcirc:"ĥ",hearts:"♥",heartsuit:"♥",hellip:"…",mldr:"…",hercon:"⊹",hfr:"𝔥",hksearow:"⤥",searhk:"⤥",hkswarow:"⤦",swarhk:"⤦",hoarr:"⇿",homtht:"∻",hookleftarrow:"↩",larrhk:"↩",hookrightarrow:"↪",rarrhk:"↪",hopf:"𝕙",horbar:"―",hscr:"𝒽",hstrok:"ħ",hybull:"⁃",iacute:"í",icirc:"î",icy:"и",iecy:"е",iexcl:"¡",ifr:"𝔦",igrave:"ì",iiiint:"⨌",qint:"⨌",iiint:"∭",tint:"∭",iinfin:"⧜",iiota:"℩",ijlig:"ij",imacr:"ī",imath:"ı",inodot:"ı",imof:"⊷",imped:"Ƶ",incare:"℅",infin:"∞",infintie:"⧝",intcal:"⊺",intercal:"⊺",intlarhk:"⨗",intprod:"⨼",iprod:"⨼",iocy:"ё",iogon:"į",iopf:"𝕚",iota:"ι",iquest:"¿",iscr:"𝒾",isinE:"⋹",isindot:"⋵",isins:"⋴",isinsv:"⋳",itilde:"ĩ",iukcy:"і",iuml:"ï",jcirc:"ĵ",jcy:"й",jfr:"𝔧",jmath:"ȷ",jopf:"𝕛",jscr:"𝒿",jsercy:"ј",jukcy:"є",kappa:"κ",kappav:"ϰ",varkappa:"ϰ",kcedil:"ķ",kcy:"к",kfr:"𝔨",kgreen:"ĸ",khcy:"х",kjcy:"ќ",kopf:"𝕜",kscr:"𝓀",lAtail:"⤛",lBarr:"⤎",lEg:"⪋",lesseqqgtr:"⪋",lHar:"⥢",lacute:"ĺ",laemptyv:"⦴",lambda:"λ",langd:"⦑",lap:"⪅",lessapprox:"⪅",laquo:"«",larrbfs:"⤟",larrfs:"⤝",larrlp:"↫",looparrowleft:"↫",larrpl:"⤹",larrsim:"⥳",larrtl:"↢",leftarrowtail:"↢",lat:"⪫",latail:"⤙",late:"⪭",lates:"⪭︀",lbarr:"⤌",lbbrk:"❲",lbrace:"{",lcub:"{",lbrack:"[",lsqb:"[",lbrke:"⦋",lbrksld:"⦏",lbrkslu:"⦍",lcaron:"ľ",lcedil:"ļ",lcy:"л",ldca:"⤶",ldrdhar:"⥧",ldrushar:"⥋",ldsh:"↲",le:"≤",leq:"≤",leftleftarrows:"⇇",llarr:"⇇",leftthreetimes:"⋋",lthree:"⋋",lescc:"⪨",lesdot:"⩿",lesdoto:"⪁",lesdotor:"⪃",lesg:"⋚︀",lesges:"⪓",lessdot:"⋖",ltdot:"⋖",lfisht:"⥼",lfr:"𝔩",lgE:"⪑",lharul:"⥪",lhblk:"▄",ljcy:"љ",llhard:"⥫",lltri:"◺",lmidot:"ŀ",lmoust:"⎰",lmoustache:"⎰",lnE:"≨",lneqq:"≨",lnap:"⪉",lnapprox:"⪉",lne:"⪇",lneq:"⪇",lnsim:"⋦",loang:"⟬",loarr:"⇽",longmapsto:"⟼",xmap:"⟼",looparrowright:"↬",rarrlp:"↬",lopar:"⦅",lopf:"𝕝",loplus:"⨭",lotimes:"⨴",lowast:"∗",loz:"◊",lozenge:"◊",lpar:"(",lparlt:"⦓",lrhard:"⥭",lrm:"‎",lrtri:"⊿",lsaquo:"‹",lscr:"𝓁",lsime:"⪍",lsimg:"⪏",lsquor:"‚",sbquo:"‚",lstrok:"ł",ltcc:"⪦",ltcir:"⩹",ltimes:"⋉",ltlarr:"⥶",ltquest:"⩻",ltrPar:"⦖",ltri:"◃",triangleleft:"◃",lurdshar:"⥊",luruhar:"⥦",lvertneqq:"≨︀",lvnE:"≨︀",mDDot:"∺",macr:"¯",strns:"¯",male:"♂",malt:"✠",maltese:"✠",marker:"▮",mcomma:"⨩",mcy:"м",mdash:"—",mfr:"𝔪",mho:"℧",micro:"µ",midcir:"⫰",minus:"−",minusdu:"⨪",mlcp:"⫛",models:"⊧",mopf:"𝕞",mscr:"𝓂",mu:"μ",multimap:"⊸",mumap:"⊸",nGg:"⋙̸",nGt:"≫⃒",nLeftarrow:"⇍",nlArr:"⇍",nLeftrightarrow:"⇎",nhArr:"⇎",nLl:"⋘̸",nLt:"≪⃒",nRightarrow:"⇏",nrArr:"⇏",nVDash:"⊯",nVdash:"⊮",nacute:"ń",nang:"∠⃒",napE:"⩰̸",napid:"≋̸",napos:"ʼn",natur:"♮",natural:"♮",ncap:"⩃",ncaron:"ň",ncedil:"ņ",ncongdot:"⩭̸",ncup:"⩂",ncy:"н",ndash:"–",neArr:"⇗",nearhk:"⤤",nedot:"≐̸",nesear:"⤨",toea:"⤨",nfr:"𝔫",nharr:"↮",nleftrightarrow:"↮",nhpar:"⫲",nis:"⋼",nisd:"⋺",njcy:"њ",nlE:"≦̸",nleqq:"≦̸",nlarr:"↚",nleftarrow:"↚",nldr:"‥",nopf:"𝕟",not:"¬",notinE:"⋹̸",notindot:"⋵̸",notinvb:"⋷",notinvc:"⋶",notnivb:"⋾",notnivc:"⋽",nparsl:"⫽⃥",npart:"∂̸",npolint:"⨔",nrarr:"↛",nrightarrow:"↛",nrarrc:"⤳̸",nrarrw:"↝̸",nscr:"𝓃",nsub:"⊄",nsubE:"⫅̸",nsubseteqq:"⫅̸",nsup:"⊅",nsupE:"⫆̸",nsupseteqq:"⫆̸",ntilde:"ñ",nu:"ν",num:"#",numero:"№",numsp:" ",nvDash:"⊭",nvHarr:"⤄",nvap:"≍⃒",nvdash:"⊬",nvge:"≥⃒",nvgt:">⃒",nvinfin:"⧞",nvlArr:"⤂",nvle:"≤⃒",nvlt:"<⃒",nvltrie:"⊴⃒",nvrArr:"⤃",nvrtrie:"⊵⃒",nvsim:"∼⃒",nwArr:"⇖",nwarhk:"⤣",nwnear:"⤧",oacute:"ó",ocirc:"ô",ocy:"о",odblac:"ő",odiv:"⨸",odsold:"⦼",oelig:"œ",ofcir:"⦿",ofr:"𝔬",ogon:"˛",ograve:"ò",ogt:"⧁",ohbar:"⦵",olcir:"⦾",olcross:"⦻",olt:"⧀",omacr:"ō",omega:"ω",omicron:"ο",omid:"⦶",oopf:"𝕠",opar:"⦷",operp:"⦹",or:"∨",vee:"∨",ord:"⩝",order:"ℴ",orderof:"ℴ",oscr:"ℴ",ordf:"ª",ordm:"º",origof:"⊶",oror:"⩖",orslope:"⩗",orv:"⩛",oslash:"ø",osol:"⊘",otilde:"õ",otimesas:"⨶",ouml:"ö",ovbar:"⌽",para:"¶",parsim:"⫳",parsl:"⫽",pcy:"п",percnt:"%",period:".",permil:"‰",pertenk:"‱",pfr:"𝔭",phi:"φ",phiv:"ϕ",straightphi:"ϕ",varphi:"ϕ",phone:"☎",pi:"π",piv:"ϖ",varpi:"ϖ",planckh:"ℎ",plus:"+",plusacir:"⨣",pluscir:"⨢",plusdu:"⨥",pluse:"⩲",plussim:"⨦",plustwo:"⨧",pointint:"⨕",popf:"𝕡",pound:"£",prE:"⪳",prap:"⪷",precapprox:"⪷",precnapprox:"⪹",prnap:"⪹",precneqq:"⪵",prnE:"⪵",precnsim:"⋨",prnsim:"⋨",prime:"′",profalar:"⌮",profline:"⌒",profsurf:"⌓",prurel:"⊰",pscr:"𝓅",psi:"ψ",puncsp:" ",qfr:"𝔮",qopf:"𝕢",qprime:"⁗",qscr:"𝓆",quatint:"⨖",quest:"?",rAtail:"⤜",rHar:"⥤",race:"∽̱",racute:"ŕ",raemptyv:"⦳",rangd:"⦒",range:"⦥",raquo:"»",rarrap:"⥵",rarrbfs:"⤠",rarrc:"⤳",rarrfs:"⤞",rarrpl:"⥅",rarrsim:"⥴",rarrtl:"↣",rightarrowtail:"↣",rarrw:"↝",rightsquigarrow:"↝",ratail:"⤚",ratio:"∶",rbbrk:"❳",rbrace:"}",rcub:"}",rbrack:"]",rsqb:"]",rbrke:"⦌",rbrksld:"⦎",rbrkslu:"⦐",rcaron:"ř",rcedil:"ŗ",rcy:"р",rdca:"⤷",rdldhar:"⥩",rdsh:"↳",rect:"▭",rfisht:"⥽",rfr:"𝔯",rharul:"⥬",rho:"ρ",rhov:"ϱ",varrho:"ϱ",rightrightarrows:"⇉",rrarr:"⇉",rightthreetimes:"⋌",rthree:"⋌",ring:"˚",rlm:"‏",rmoust:"⎱",rmoustache:"⎱",rnmid:"⫮",roang:"⟭",roarr:"⇾",ropar:"⦆",ropf:"𝕣",roplus:"⨮",rotimes:"⨵",rpar:")",rpargt:"⦔",rppolint:"⨒",rsaquo:"›",rscr:"𝓇",rtimes:"⋊",rtri:"▹",triangleright:"▹",rtriltri:"⧎",ruluhar:"⥨",rx:"℞",sacute:"ś",scE:"⪴",scap:"⪸",succapprox:"⪸",scaron:"š",scedil:"ş",scirc:"ŝ",scnE:"⪶",succneqq:"⪶",scnap:"⪺",succnapprox:"⪺",scnsim:"⋩",succnsim:"⋩",scpolint:"⨓",scy:"с",sdot:"⋅",sdote:"⩦",seArr:"⇘",sect:"§",semi:";",seswar:"⤩",tosa:"⤩",sext:"✶",sfr:"𝔰",sharp:"♯",shchcy:"щ",shcy:"ш",shy:"­",sigma:"σ",sigmaf:"ς",sigmav:"ς",varsigma:"ς",simdot:"⩪",simg:"⪞",simgE:"⪠",siml:"⪝",simlE:"⪟",simne:"≆",simplus:"⨤",simrarr:"⥲",smashp:"⨳",smeparsl:"⧤",smile:"⌣",ssmile:"⌣",smt:"⪪",smte:"⪬",smtes:"⪬︀",softcy:"ь",sol:"/",solb:"⧄",solbar:"⌿",sopf:"𝕤",spades:"♠",spadesuit:"♠",sqcaps:"⊓︀",sqcups:"⊔︀",sscr:"𝓈",star:"☆",sub:"⊂",subset:"⊂",subE:"⫅",subseteqq:"⫅",subdot:"⪽",subedot:"⫃",submult:"⫁",subnE:"⫋",subsetneqq:"⫋",subne:"⊊",subsetneq:"⊊",subplus:"⪿",subrarr:"⥹",subsim:"⫇",subsub:"⫕",subsup:"⫓",sung:"♪",sup1:"¹",sup2:"²",sup3:"³",supE:"⫆",supseteqq:"⫆",supdot:"⪾",supdsub:"⫘",supedot:"⫄",suphsol:"⟉",suphsub:"⫗",suplarr:"⥻",supmult:"⫂",supnE:"⫌",supsetneqq:"⫌",supne:"⊋",supsetneq:"⊋",supplus:"⫀",supsim:"⫈",supsub:"⫔",supsup:"⫖",swArr:"⇙",swnwar:"⤪",szlig:"ß",target:"⌖",tau:"τ",tcaron:"ť",tcedil:"ţ",tcy:"т",telrec:"⌕",tfr:"𝔱",theta:"θ",thetasym:"ϑ",thetav:"ϑ",vartheta:"ϑ",thorn:"þ",times:"×",timesbar:"⨱",timesd:"⨰",topbot:"⌶",topcir:"⫱",topf:"𝕥",topfork:"⫚",tprime:"‴",triangle:"▵",utri:"▵",triangleq:"≜",trie:"≜",tridot:"◬",triminus:"⨺",triplus:"⨹",trisb:"⧍",tritime:"⨻",trpezium:"⏢",tscr:"𝓉",tscy:"ц",tshcy:"ћ",tstrok:"ŧ",uHar:"⥣",uacute:"ú",ubrcy:"ў",ubreve:"ŭ",ucirc:"û",ucy:"у",udblac:"ű",ufisht:"⥾",ufr:"𝔲",ugrave:"ù",uhblk:"▀",ulcorn:"⌜",ulcorner:"⌜",ulcrop:"⌏",ultri:"◸",umacr:"ū",uogon:"ų",uopf:"𝕦",upsi:"υ",upsilon:"υ",upuparrows:"⇈",uuarr:"⇈",urcorn:"⌝",urcorner:"⌝",urcrop:"⌎",uring:"ů",urtri:"◹",uscr:"𝓊",utdot:"⋰",utilde:"ũ",uuml:"ü",uwangle:"⦧",vBar:"⫨",vBarv:"⫩",vangrt:"⦜",varsubsetneq:"⊊︀",vsubne:"⊊︀",varsubsetneqq:"⫋︀",vsubnE:"⫋︀",varsupsetneq:"⊋︀",vsupne:"⊋︀",varsupsetneqq:"⫌︀",vsupnE:"⫌︀",vcy:"в",veebar:"⊻",veeeq:"≚",vellip:"⋮",vfr:"𝔳",vopf:"𝕧",vscr:"𝓋",vzigzag:"⦚",wcirc:"ŵ",wedbar:"⩟",wedgeq:"≙",weierp:"℘",wp:"℘",wfr:"𝔴",wopf:"𝕨",wscr:"𝓌",xfr:"𝔵",xi:"ξ",xnis:"⋻",xopf:"𝕩",xscr:"𝓍",yacute:"ý",yacy:"я",ycirc:"ŷ",ycy:"ы",yen:"¥",yfr:"𝔶",yicy:"ї",yopf:"𝕪",yscr:"𝓎",yucy:"ю",yuml:"ÿ",zacute:"ź",zcaron:"ž",zcy:"з",zdot:"ż",zeta:"ζ",zfr:"𝔷",zhcy:"ж",zigrarr:"⇝",zopf:"𝕫",zscr:"𝓏",zwj:"‍",zwnj:"‌"},Cg="",Io.ngsp=Cg,X7=[/@/,/^\s*$/,/[<>]/,/^[{}]$/,/&(#|[a-z])/i,/^\/\//],u(m5,"Bs"),xg=(Li=class{static fromArray(e){return e?(m5("interpolation",e),new Li(e[0],e[1])):Nc}constructor(e,t){this.start=e,this.end=t}},u(Li,"t"),Li),Nc=new xg("{{","}}"),Mi=($c=class extends hc{constructor(e,t,r){super(r,e),this.tokenType=t}},u($c,"ft"),$c),Q7=(Hc=class{constructor(e,t,r){this.tokens=e,this.errors=t,this.nonNormalizedIcuExpressions=r}},u(Hc,"Or"),Hc),u(g5,"Us"),Sg=/\r\n?/g,u(Vr,"qe"),u(Zu,"Is"),u(v5,"co"),(function(e){e.HEX="hexadecimal",e.DEC="decimal"})(Oi||(Oi={})),Pi=(jc=class{constructor(e){this.error=e}},u(jc,"dt"),jc),ew=(Vc=class{constructor(e,t,r){this._getTagContentType=t,this._currentTokenStart=null,this._currentTokenType=null,this._expansionCaseStack=[],this._inInterpolation=!1,this._fullNameStack=[],this.tokens=[],this.errors=[],this.nonNormalizedIcuExpressions=[],this._tokenizeIcu=r.tokenizeExpansionForms||!1,this._interpolationConfig=r.interpolationConfig||Nc,this._leadingTriviaCodePoints=r.leadingTriviaChars&&r.leadingTriviaChars.map(a=>a.codePointAt(0)||0),this._canSelfClose=r.canSelfClose||!1,this._allowHtmComponentClosingTags=r.allowHtmComponentClosingTags||!1;let n=r.range||{endPos:e.content.length,startPos:0,startLine:0,startCol:0};this._cursor=r.escapedString?new Fg(e,n):new Uc(e,n),this._preserveLineEndings=r.preserveLineEndings||!1,this._i18nNormalizeLineEndingsInICUs=r.i18nNormalizeLineEndingsInICUs||!1,this._tokenizeBlocks=r.tokenizeBlocks??!0,this._tokenizeLet=r.tokenizeLet??!0;try{this._cursor.init()}catch(a){this.handleError(a)}}_processCarriageReturns(e){return this._preserveLineEndings?e:e.replace(Sg,` +`)}tokenize(){for(;this._cursor.peek()!==0;){let e=this._cursor.clone();try{if(this._attemptCharCode(60))if(this._attemptCharCode(33))this._attemptStr("[CDATA[")?this._consumeCdata(e):this._attemptStr("--")?this._consumeComment(e):this._attemptStrCaseInsensitive("doctype")?this._consumeDocType(e):this._consumeBogusComment(e);else if(this._attemptCharCode(47))this._consumeTagClose(e);else{let t=this._cursor.clone();this._attemptCharCode(63)?(this._cursor=t,this._consumeBogusComment(e)):this._consumeTagOpen(e)}else this._tokenizeLet&&this._cursor.peek()===64&&!this._inInterpolation&&this._attemptStr("@let")?this._consumeLetDeclaration(e):this._tokenizeBlocks&&this._attemptCharCode(64)?this._consumeBlockStart(e):this._tokenizeBlocks&&!this._inInterpolation&&!this._isInExpansionCase()&&!this._isInExpansionForm()&&this._attemptCharCode(125)?this._consumeBlockEnd(e):this._tokenizeIcu&&this._tokenizeExpansionForm()||this._consumeWithInterpolation(5,8,()=>this._isTextEnd(),()=>this._isTagStart())}catch(t){this.handleError(t)}}this._beginToken(34),this._endToken([])}_getBlockName(){let e=!1,t=this._cursor.clone();return this._attemptCharCodeUntilFn(r=>Bo(r)?!e:Xu(r)?(e=!0,!1):!0),this._cursor.getChars(t).trim()}_consumeBlockStart(e){this._beginToken(25,e);let t=this._endToken([this._getBlockName()]);if(this._cursor.peek()===40)if(this._cursor.advance(),this._consumeBlockParameters(),this._attemptCharCodeUntilFn(ue),this._attemptCharCode(41))this._attemptCharCodeUntilFn(ue);else{t.type=29;return}this._attemptCharCode(123)?(this._beginToken(26),this._endToken([])):t.type=29}_consumeBlockEnd(e){this._beginToken(27,e),this._endToken([])}_consumeBlockParameters(){for(this._attemptCharCodeUntilFn(Qu);this._cursor.peek()!==41&&this._cursor.peek()!==0;){this._beginToken(28);let e=this._cursor.clone(),t=null,r=0;for(;this._cursor.peek()!==59&&this._cursor.peek()!==0||t!==null;){let n=this._cursor.peek();if(n===92)this._cursor.advance();else if(n===t)t=null;else if(t===null&&Ii(n))t=n;else if(n===40&&t===null)r++;else if(n===41&&t===null){if(r===0)break;r>0&&r--}this._cursor.advance()}this._endToken([this._cursor.getChars(e)]),this._attemptCharCodeUntilFn(Qu)}}_consumeLetDeclaration(e){if(this._beginToken(30,e),Bo(this._cursor.peek()))this._attemptCharCodeUntilFn(ue);else{let r=this._endToken([this._cursor.getChars(e)]);r.type=33;return}let t=this._endToken([this._getLetDeclarationName()]);if(this._attemptCharCodeUntilFn(ue),!this._attemptCharCode(61)){t.type=33;return}this._attemptCharCodeUntilFn(r=>ue(r)&&!Ri(r)),this._consumeLetDeclarationValue(),this._cursor.peek()===59?(this._beginToken(32),this._endToken([]),this._cursor.advance()):(t.type=33,t.sourceSpan=this._cursor.getSpan(e))}_getLetDeclarationName(){let e=this._cursor.clone(),t=!1;return this._attemptCharCodeUntilFn(r=>Ro(r)||r===36||r===95||t&&Ol(r)?(t=!0,!1):!0),this._cursor.getChars(e).trim()}_consumeLetDeclarationValue(){let e=this._cursor.clone();for(this._beginToken(31,e);this._cursor.peek()!==0;){let t=this._cursor.peek();if(t===59)break;Ii(t)&&(this._cursor.advance(),this._attemptCharCodeUntilFn(r=>r===92?(this._cursor.advance(),!1):r===t)),this._cursor.advance()}this._endToken([this._cursor.getChars(e)])}_tokenizeExpansionForm(){if(this.isExpansionFormStart())return this._consumeExpansionFormStart(),!0;if(D5(this._cursor.peek())&&this._isInExpansionForm())return this._consumeExpansionCaseStart(),!0;if(this._cursor.peek()===125){if(this._isInExpansionCase())return this._consumeExpansionCaseEnd(),!0;if(this._isInExpansionForm())return this._consumeExpansionFormEnd(),!0}return!1}_beginToken(e,t=this._cursor.clone()){this._currentTokenStart=t,this._currentTokenType=e}_endToken(e,t){if(this._currentTokenStart===null)throw new Mi("Programming error - attempted to end a token when there was no start to the token",this._currentTokenType,this._cursor.getSpan(t));if(this._currentTokenType===null)throw new Mi("Programming error - attempted to end a token which has no token type",null,this._cursor.getSpan(this._currentTokenStart));let r={type:this._currentTokenType,parts:e,sourceSpan:(t??this._cursor).getSpan(this._currentTokenStart,this._leadingTriviaCodePoints)};return this.tokens.push(r),this._currentTokenStart=null,this._currentTokenType=null,r}_createError(e,t){this._isInExpansionForm()&&(e+=` (Do you have an unescaped "{" in your template? Use "{{ '{' }}") to escape it.)`);let r=new Mi(e,this._currentTokenType,t);return this._currentTokenStart=null,this._currentTokenType=null,new Pi(r)}handleError(e){if(e instanceof Ni&&(e=this._createError(e.msg,this._cursor.getSpan(e.cursor))),e instanceof Pi)this.errors.push(e.error);else throw e}_attemptCharCode(e){return this._cursor.peek()===e?(this._cursor.advance(),!0):!1}_attemptCharCodeCaseInsensitive(e){return E5(this._cursor.peek(),e)?(this._cursor.advance(),!0):!1}_requireCharCode(e){let t=this._cursor.clone();if(!this._attemptCharCode(e))throw this._createError(Vr(this._cursor.peek()),this._cursor.getSpan(t))}_attemptStr(e){let t=e.length;if(this._cursor.charsLeft()this._attemptStr("-->")),this._beginToken(11),this._requireStr("-->"),this._endToken([])}_consumeBogusComment(e){this._beginToken(10,e),this._endToken([]),this._consumeRawText(!1,()=>this._cursor.peek()===62),this._beginToken(11),this._cursor.advance(),this._endToken([])}_consumeCdata(e){this._beginToken(12,e),this._endToken([]),this._consumeRawText(!1,()=>this._attemptStr("]]>")),this._beginToken(13),this._requireStr("]]>"),this._endToken([])}_consumeDocType(e){this._beginToken(18,e),this._endToken([]),this._consumeRawText(!1,()=>this._cursor.peek()===62),this._beginToken(19),this._cursor.advance(),this._endToken([])}_consumePrefixAndName(){let e=this._cursor.clone(),t="";for(;this._cursor.peek()!==58&&!y5(this._cursor.peek());)this._cursor.advance();let r;this._cursor.peek()===58?(t=this._cursor.getChars(e),this._cursor.advance(),r=this._cursor.clone()):r=e,this._requireCharCodeUntilFn(Ju,t===""?0:1);let n=this._cursor.getChars(r);return[t,n]}_consumeTagOpen(e){let t,r,n,a=[];try{if(!Ro(this._cursor.peek()))throw this._createError(Vr(this._cursor.peek()),this._cursor.getSpan(e));for(n=this._consumeTagOpenStart(e),r=n.parts[0],t=n.parts[1],this._attemptCharCodeUntilFn(ue);this._cursor.peek()!==47&&this._cursor.peek()!==62&&this._cursor.peek()!==60&&this._cursor.peek()!==0;){let[i,s]=this._consumeAttributeName();if(this._attemptCharCodeUntilFn(ue),this._attemptCharCode(61)){this._attemptCharCodeUntilFn(ue);let c=this._consumeAttributeValue();a.push({prefix:i,name:s,value:c})}else a.push({prefix:i,name:s});this._attemptCharCodeUntilFn(ue)}this._consumeTagOpenEnd()}catch(i){if(i instanceof Pi){n?n.type=4:(this._beginToken(5,e),this._endToken(["<"]));return}throw i}if(this._canSelfClose&&this.tokens[this.tokens.length-1].type===2)return;let o=this._getTagContentType(t,r,this._fullNameStack.length>0,a);this._handleFullNameStackForTagOpen(r,t),o===ct.RAW_TEXT?this._consumeRawTextWithTagClose(r,t,!1):o===ct.ESCAPABLE_RAW_TEXT&&this._consumeRawTextWithTagClose(r,t,!0)}_consumeRawTextWithTagClose(e,t,r){this._consumeRawText(r,()=>!this._attemptCharCode(60)||!this._attemptCharCode(47)||(this._attemptCharCodeUntilFn(ue),!this._attemptStrCaseInsensitive(e?`${e}:${t}`:t))?!1:(this._attemptCharCodeUntilFn(ue),this._attemptCharCode(62))),this._beginToken(3),this._requireCharCodeUntilFn(n=>n===62,3),this._cursor.advance(),this._endToken([e,t]),this._handleFullNameStackForTagClose(e,t)}_consumeTagOpenStart(e){this._beginToken(0,e);let t=this._consumePrefixAndName();return this._endToken(t)}_consumeAttributeName(){let e=this._cursor.peek();if(e===39||e===34)throw this._createError(Vr(e),this._cursor.getSpan());this._beginToken(14);let t=this._consumePrefixAndName();return this._endToken(t),t}_consumeAttributeValue(){let e;if(this._cursor.peek()===39||this._cursor.peek()===34){let t=this._cursor.peek();this._consumeQuote(t);let r=u(()=>this._cursor.peek()===t,"n");e=this._consumeWithInterpolation(16,17,r,r),this._consumeQuote(t)}else{let t=u(()=>Ju(this._cursor.peek()),"r");e=this._consumeWithInterpolation(16,17,t,t)}return e}_consumeQuote(e){this._beginToken(15),this._requireCharCode(e),this._endToken([String.fromCodePoint(e)])}_consumeTagOpenEnd(){let e=this._attemptCharCode(47)?2:1;this._beginToken(e),this._requireCharCode(62),this._endToken([])}_consumeTagClose(e){if(this._beginToken(3,e),this._attemptCharCodeUntilFn(ue),this._allowHtmComponentClosingTags&&this._attemptCharCode(47))this._attemptCharCodeUntilFn(ue),this._requireCharCode(62),this._endToken([]);else{let[t,r]=this._consumePrefixAndName();this._attemptCharCodeUntilFn(ue),this._requireCharCode(62),this._endToken([t,r]),this._handleFullNameStackForTagClose(t,r)}}_consumeExpansionFormStart(){this._beginToken(20),this._requireCharCode(123),this._endToken([]),this._expansionCaseStack.push(20),this._beginToken(7);let e=this._readUntil(44),t=this._processCarriageReturns(e);if(this._i18nNormalizeLineEndingsInICUs)this._endToken([t]);else{let n=this._endToken([e]);t!==e&&this.nonNormalizedIcuExpressions.push(n)}this._requireCharCode(44),this._attemptCharCodeUntilFn(ue),this._beginToken(7);let r=this._readUntil(44);this._endToken([r]),this._requireCharCode(44),this._attemptCharCodeUntilFn(ue)}_consumeExpansionCaseStart(){this._beginToken(21);let e=this._readUntil(123).trim();this._endToken([e]),this._attemptCharCodeUntilFn(ue),this._beginToken(22),this._requireCharCode(123),this._endToken([]),this._attemptCharCodeUntilFn(ue),this._expansionCaseStack.push(22)}_consumeExpansionCaseEnd(){this._beginToken(23),this._requireCharCode(125),this._endToken([]),this._attemptCharCodeUntilFn(ue),this._expansionCaseStack.pop()}_consumeExpansionFormEnd(){this._beginToken(24),this._requireCharCode(125),this._endToken([]),this._expansionCaseStack.pop()}_consumeWithInterpolation(e,t,r,n){this._beginToken(e);let a=[];for(;!r();){let i=this._cursor.clone();this._interpolationConfig&&this._attemptStr(this._interpolationConfig.start)?(this._endToken([this._processCarriageReturns(a.join(""))],i),a.length=0,this._consumeInterpolation(t,i,n),this._beginToken(e)):this._cursor.peek()===38?(this._endToken([this._processCarriageReturns(a.join(""))]),a.length=0,this._consumeEntity(e),this._beginToken(e)):a.push(this._readChar())}this._inInterpolation=!1;let o=this._processCarriageReturns(a.join(""));return this._endToken([o]),o}_consumeInterpolation(e,t,r){let n=[];this._beginToken(e,t),n.push(this._interpolationConfig.start);let a=this._cursor.clone(),o=null,i=!1;for(;this._cursor.peek()!==0&&(r===null||!r());){let s=this._cursor.clone();if(this._isTagStart()){this._cursor=s,n.push(this._getProcessedChars(a,s)),this._endToken(n);return}if(o===null)if(this._attemptStr(this._interpolationConfig.end)){n.push(this._getProcessedChars(a,s)),n.push(this._interpolationConfig.end),this._endToken(n);return}else this._attemptStr("//")&&(i=!0);let c=this._cursor.peek();this._cursor.advance(),c===92?this._cursor.advance():c===o?o=null:!i&&o===null&&Ii(c)&&(o=c)}n.push(this._getProcessedChars(a,this._cursor)),this._endToken(n)}_getProcessedChars(e,t){return this._processCarriageReturns(t.getChars(e))}_isTextEnd(){return!!(this._isTagStart()||this._cursor.peek()===0||this._tokenizeIcu&&!this._inInterpolation&&(this.isExpansionFormStart()||this._cursor.peek()===125&&this._isInExpansionCase())||this._tokenizeBlocks&&!this._inInterpolation&&!this._isInExpansion()&&(this._isBlockStart()||this._cursor.peek()===64||this._cursor.peek()===125))}_isTagStart(){if(this._cursor.peek()===60){let e=this._cursor.clone();e.advance();let t=e.peek();if(97<=t&&t<=122||65<=t&&t<=90||t===47||t===33)return!0}return!1}_isBlockStart(){if(this._tokenizeBlocks&&this._cursor.peek()===64){let e=this._cursor.clone();if(e.advance(),Xu(e.peek()))return!0}return!1}_readUntil(e){let t=this._cursor.clone();return this._attemptUntilChar(e),this._cursor.getChars(t)}_isInExpansion(){return this._isInExpansionCase()||this._isInExpansionForm()}_isInExpansionCase(){return this._expansionCaseStack.length>0&&this._expansionCaseStack[this._expansionCaseStack.length-1]===22}_isInExpansionForm(){return this._expansionCaseStack.length>0&&this._expansionCaseStack[this._expansionCaseStack.length-1]===20}isExpansionFormStart(){if(this._cursor.peek()!==123)return!1;if(this._interpolationConfig){let e=this._cursor.clone(),t=this._attemptStr(this._interpolationConfig.start);return this._cursor=e,!t}return!0}_handleFullNameStackForTagOpen(e,t){let r=Ga(e,t);(this._fullNameStack.length===0||this._fullNameStack[this._fullNameStack.length-1]===r)&&this._fullNameStack.push(r)}_handleFullNameStackForTagClose(e,t){let r=Ga(e,t);this._fullNameStack.length!==0&&this._fullNameStack[this._fullNameStack.length-1]===r&&this._fullNameStack.pop()}},u(Vc,"$r"),Vc),u(ue,"b"),u(Ju,"Rs"),u(y5,"po"),u(b5,"ho"),u(w5,"mo"),u(D5,"fo"),u(E5,"go"),u(dd,"Os"),u(Xu,"$s"),u(Qu,"Ms"),u(u7,"Co"),Uc=(Za=class{constructor(e,t){if(e instanceof Za){this.file=e.file,this.input=e.input,this.end=e.end;let r=e.state;this.state={peek:r.peek,offset:r.offset,line:r.line,column:r.column}}else{if(!t)throw new Error("Programming error: the range argument must be provided with a file argument.");this.file=e,this.input=e.content,this.end=t.endPos,this.state={peek:-1,offset:t.startPos,line:t.startLine,column:t.startCol}}}clone(){return new Za(this)}peek(){return this.state.peek}charsLeft(){return this.end-this.state.offset}diff(e){return this.state.offset-e.state.offset}advance(){this.advanceState(this.state)}init(){this.updatePeek(this.state)}getSpan(e,t){e=e||this;let r=e;if(t)for(;this.diff(e)>0&&t.indexOf(e.peek())!==-1;)r===e&&(e=e.clone()),e.advance();let n=this.locationFromCursor(e),a=this.locationFromCursor(this),o=r!==e?this.locationFromCursor(r):n;return new Y(n,a,o)}getChars(e){return this.input.substring(e.state.offset,this.state.offset)}charAt(e){return this.input.charCodeAt(e)}advanceState(e){if(e.offset>=this.end)throw this.state=e,new Ni('Unexpected character "EOF"',this);let t=this.charAt(e.offset);t===10?(e.line++,e.column=0):Ri(t)||e.column++,e.offset++,this.updatePeek(e)}updatePeek(e){e.peek=e.offset>=this.end?0:this.charAt(e.offset)}locationFromCursor(e){return new ql(e.file,e.state.offset,e.state.line,e.state.column)}},u(Za,"t"),Za),Fg=(Ja=class extends Uc{constructor(e,t){e instanceof Ja?(super(e),this.internalState={...e.internalState}):(super(e,t),this.internalState=this.state)}advance(){this.state=this.internalState,super.advance(),this.processEscapeSequence()}init(){super.init(),this.processEscapeSequence()}clone(){return new Ja(this)}getChars(e){let t=e.clone(),r="";for(;t.internalState.offsetthis.internalState.peek,"e");if(e()===92)if(this.internalState={...this.state},this.advanceState(this.internalState),e()===110)this.state.peek=10;else if(e()===114)this.state.peek=13;else if(e()===118)this.state.peek=11;else if(e()===116)this.state.peek=9;else if(e()===98)this.state.peek=8;else if(e()===102)this.state.peek=12;else if(e()===117)if(this.advanceState(this.internalState),e()===123){this.advanceState(this.internalState);let t=this.clone(),r=0;for(;e()!==125;)this.advanceState(this.internalState),r++;this.state.peek=this.decodeHexDigits(t,r)}else{let t=this.clone();this.advanceState(this.internalState),this.advanceState(this.internalState),this.advanceState(this.internalState),this.state.peek=this.decodeHexDigits(t,4)}else if(e()===120){this.advanceState(this.internalState);let t=this.clone();this.advanceState(this.internalState),this.state.peek=this.decodeHexDigits(t,2)}else if(Wu(e())){let t="",r=0,n=this.clone();for(;Wu(e())&&r<3;)n=this.clone(),t+=String.fromCodePoint(e()),this.advanceState(this.internalState),r++;this.state.peek=parseInt(t,8),this.internalState=n.internalState}else Ri(this.internalState.peek)?(this.advanceState(this.internalState),this.state=this.internalState):this.state.peek=this.internalState.peek}decodeHexDigits(e,t){let r=this.input.slice(e.internalState.offset,e.internalState.offset+t),n=parseInt(r,16);if(isNaN(n))throw e.state=e.internalState,new Ni("Invalid hexadecimal escape sequence",e);return n}},u(Ja,"t"),Ja),Ni=(qc=class{constructor(e,t){this.msg=e,this.cursor=t}},u(qc,"gt"),qc),Fe=($i=class extends hc{static create(e,t,r){return new $i(e,t,r)}constructor(e,t,r){super(t,r),this.elementName=e}},u($i,"t"),$i),Ag=(Wc=class{constructor(e,t){this.rootNodes=e,this.errors=t}},u(Wc,"Vr"),Wc),kg=(Gc=class{constructor(e){this.getTagDefinition=e}parse(e,t,r,n=!1,a){let o=u(m=>(g,...v)=>m(g.toLowerCase(),...v),"a"),i=n?this.getTagDefinition:o(this.getTagDefinition),s=u(m=>i(m).getContentType(),"u"),c=n?a:o(a),d=g5(e,t,a?(m,g,v,b)=>{let C=c(m,g,v,b);return C!==void 0?C:s(m)}:s,r),f=r&&r.canSelfClose||!1,h=r&&r.allowHtmComponentClosingTags||!1,p=new _g(d.tokens,i,f,h,n);return p.build(),new Ag(p.rootNodes,d.errors.concat(p.errors))}},u(Gc,"tr"),Gc),_g=(Hi=class{constructor(e,t,r,n,a){this.tokens=e,this.getTagDefinition=t,this.canSelfClose=r,this.allowHtmComponentClosingTags=n,this.isTagNameCaseSensitive=a,this._index=-1,this._containerStack=[],this.rootNodes=[],this.errors=[],this._advance()}build(){for(;this._peek.type!==34;)this._peek.type===0||this._peek.type===4?this._consumeStartTag(this._advance()):this._peek.type===3?(this._closeVoidElement(),this._consumeEndTag(this._advance())):this._peek.type===12?(this._closeVoidElement(),this._consumeCdata(this._advance())):this._peek.type===10?(this._closeVoidElement(),this._consumeComment(this._advance())):this._peek.type===5||this._peek.type===7||this._peek.type===6?(this._closeVoidElement(),this._consumeText(this._advance())):this._peek.type===20?this._consumeExpansion(this._advance()):this._peek.type===25?(this._closeVoidElement(),this._consumeBlockOpen(this._advance())):this._peek.type===27?(this._closeVoidElement(),this._consumeBlockClose(this._advance())):this._peek.type===29?(this._closeVoidElement(),this._consumeIncompleteBlock(this._advance())):this._peek.type===30?(this._closeVoidElement(),this._consumeLet(this._advance())):this._peek.type===18?this._consumeDocType(this._advance()):this._peek.type===33?(this._closeVoidElement(),this._consumeIncompleteLet(this._advance())):this._advance();for(let e of this._containerStack)e instanceof qr&&this.errors.push(Fe.create(e.name,e.sourceSpan,`Unclosed block "${e.name}"`))}_advance(){let e=this._peek;return this._index0)return this.errors=this.errors.concat(a.errors),null;let o=new Y(e.sourceSpan.start,n.sourceSpan.end,e.sourceSpan.fullStart),i=new Y(t.sourceSpan.start,n.sourceSpan.end,t.sourceSpan.fullStart);return new bg(e.parts[0],a.rootNodes,o,e.sourceSpan,i)}_collectExpansionExpTokens(e){let t=[],r=[22];for(;;){if((this._peek.type===20||this._peek.type===22)&&r.push(this._peek.type),this._peek.type===23)if(ec(r,22)){if(r.pop(),r.length===0)return t}else return this.errors.push(Fe.create(null,e.sourceSpan,"Invalid ICU message. Missing '}'.")),null;if(this._peek.type===24)if(ec(r,20))r.pop();else return this.errors.push(Fe.create(null,e.sourceSpan,"Invalid ICU message. Missing '}'.")),null;if(this._peek.type===34)return this.errors.push(Fe.create(null,e.sourceSpan,"Invalid ICU message. Missing '}'.")),null;t.push(this._advance())}}_getText(e){let t=e.parts[0];if(t.length>0&&t[0]==` +`){let r=this._getClosestParentElement();r!=null&&r.children.length==0&&this.getTagDefinition(r.name).ignoreFirstLf&&(t=t.substring(1))}return t}_consumeText(e){let t=[e],r=e.sourceSpan,n=e.parts[0];if(n.length>0&&n[0]===` +`){let a=this._getContainer();a!=null&&a.children.length===0&&this.getTagDefinition(a.name).ignoreFirstLf&&(n=n.substring(1),t[0]={type:e.type,sourceSpan:e.sourceSpan,parts:[n]})}for(;this._peek.type===8||this._peek.type===5||this._peek.type===9;)e=this._advance(),t.push(e),e.type===8?n+=e.parts.join("").replace(/&([^;]+);/g,tc):e.type===9?n+=e.parts[0]:n+=e.parts.join("");if(n.length>0){let a=e.sourceSpan;this._addToParent(new gg(n,new Y(r.start,a.end,r.fullStart,r.details),t))}}_closeVoidElement(){let e=this._getContainer();e instanceof Qt&&this.getTagDefinition(e.name).isVoid&&this._containerStack.pop()}_consumeStartTag(e){let[t,r]=e.parts,n=[];for(;this._peek.type===14;)n.push(this._consumeAttr(this._advance()));let a=this._getElementFullName(t,r,this._getClosestParentElement()),o=!1;if(this._peek.type===2){this._advance(),o=!0;let p=this.getTagDefinition(a);this.canSelfClose||p.canSelfClose||ho(a)!==null||p.isVoid||this.errors.push(Fe.create(a,e.sourceSpan,`Only void, custom and foreign elements can be self closed "${e.parts[1]}"`))}else this._peek.type===1&&(this._advance(),o=!1);let i=this._peek.sourceSpan.fullStart,s=new Y(e.sourceSpan.start,i,e.sourceSpan.fullStart),c=new Y(e.sourceSpan.start,i,e.sourceSpan.fullStart),d=new Y(e.sourceSpan.start.moveBy(1),e.sourceSpan.end),f=new Qt(a,n,[],s,c,void 0,d),h=this._getContainer();this._pushContainer(f,h instanceof Qt&&this.getTagDefinition(h.name).isClosedByChild(f.name)),o?this._popContainer(a,Qt,s):e.type===4&&(this._popContainer(a,Qt,null),this.errors.push(Fe.create(a,s,`Opening tag "${a}" not terminated.`)))}_pushContainer(e,t){t&&this._containerStack.pop(),this._addToParent(e),this._containerStack.push(e)}_consumeEndTag(e){let t=this.allowHtmComponentClosingTags&&e.parts.length===0?null:this._getElementFullName(e.parts[0],e.parts[1],this._getClosestParentElement());if(t&&this.getTagDefinition(t).isVoid)this.errors.push(Fe.create(t,e.sourceSpan,`Void elements do not have end tags "${e.parts[1]}"`));else if(!this._popContainer(t,Qt,e.sourceSpan)){let r=`Unexpected closing tag "${t}". It may happen when the tag has already been closed by another tag. For more info see https://www.w3.org/TR/html5/syntax.html#closing-elements-that-have-implied-end-tags`;this.errors.push(Fe.create(t,e.sourceSpan,r))}}_popContainer(e,t,r){let n=!1;for(let a=this._containerStack.length-1;a>=0;a--){let o=this._containerStack[a];if(ho(o.name)?o.name===e:(e==null||o.name.toLowerCase()===e.toLowerCase())&&o instanceof t)return o.endSourceSpan=r,o.sourceSpan.end=r!==null?r.end:o.sourceSpan.end,this._containerStack.splice(a,this._containerStack.length-a),!n;(o instanceof qr||o instanceof Qt&&!this.getTagDefinition(o.name).closedByParent)&&(n=!0)}return!1}_consumeAttr(e){let t=Ga(e.parts[0],e.parts[1]),r=e.sourceSpan.end,n;this._peek.type===15&&(n=this._advance());let a="",o=[],i,s;if(this._peek.type===16)for(i=this._peek.sourceSpan,s=this._peek.sourceSpan.end;this._peek.type===16||this._peek.type===17||this._peek.type===9;){let d=this._advance();o.push(d),d.type===17?a+=d.parts.join("").replace(/&([^;]+);/g,tc):d.type===9?a+=d.parts[0]:a+=d.parts.join(""),s=r=d.sourceSpan.end}this._peek.type===15&&(s=r=this._advance().sourceSpan.end);let c=i&&s&&new Y((n==null?void 0:n.sourceSpan.start)??i.start,s,(n==null?void 0:n.sourceSpan.fullStart)??i.fullStart);return new wg(t,a,new Y(e.sourceSpan.start,r,e.sourceSpan.fullStart),e.sourceSpan,c,o.length>0?o:void 0,void 0)}_consumeBlockOpen(e){let t=[];for(;this._peek.type===28;){let i=this._advance();t.push(new Lc(i.parts[0],i.sourceSpan))}this._peek.type===26&&this._advance();let r=this._peek.sourceSpan.fullStart,n=new Y(e.sourceSpan.start,r,e.sourceSpan.fullStart),a=new Y(e.sourceSpan.start,r,e.sourceSpan.fullStart),o=new qr(e.parts[0],t,[],n,e.sourceSpan,a);this._pushContainer(o,!1)}_consumeBlockClose(e){this._popContainer(null,qr,e.sourceSpan)||this.errors.push(Fe.create(null,e.sourceSpan,'Unexpected closing block. The block may have been closed earlier. If you meant to write the } character, you should use the "}" HTML entity instead.'))}_consumeIncompleteBlock(e){let t=[];for(;this._peek.type===28;){let i=this._advance();t.push(new Lc(i.parts[0],i.sourceSpan))}let r=this._peek.sourceSpan.fullStart,n=new Y(e.sourceSpan.start,r,e.sourceSpan.fullStart),a=new Y(e.sourceSpan.start,r,e.sourceSpan.fullStart),o=new qr(e.parts[0],t,[],n,e.sourceSpan,a);this._pushContainer(o,!1),this._popContainer(null,qr,null),this.errors.push(Fe.create(e.parts[0],n,`Incomplete block "${e.parts[0]}". If you meant to write the @ character, you should use the "@" HTML entity instead.`))}_consumeLet(e){let t=e.parts[0],r,n;if(this._peek.type!==31){this.errors.push(Fe.create(e.parts[0],e.sourceSpan,`Invalid @let declaration "${t}". Declaration must have a value.`));return}else r=this._advance();if(this._peek.type!==32){this.errors.push(Fe.create(e.parts[0],e.sourceSpan,`Unterminated @let declaration "${t}". Declaration must be terminated with a semicolon.`));return}else n=this._advance();let a=n.sourceSpan.fullStart,o=new Y(e.sourceSpan.start,a,e.sourceSpan.fullStart),i=e.sourceSpan.toString().lastIndexOf(t),s=e.sourceSpan.start.moveBy(i),c=new Y(s,e.sourceSpan.end),d=new Oc(t,r.parts[0],o,c,r.sourceSpan);this._addToParent(d)}_consumeIncompleteLet(e){let t=e.parts[0]??"",r=t?` "${t}"`:"";if(t.length>0){let n=e.sourceSpan.toString().lastIndexOf(t),a=e.sourceSpan.start.moveBy(n),o=new Y(a,e.sourceSpan.end),i=new Y(e.sourceSpan.start,e.sourceSpan.start.moveBy(0)),s=new Oc(t,"",e.sourceSpan,o,i);this._addToParent(s)}this.errors.push(Fe.create(e.parts[0],e.sourceSpan,`Incomplete @let declaration${r}. @let declarations must be written as \`@let = ;\``))}_getContainer(){return this._containerStack.length>0?this._containerStack[this._containerStack.length-1]:null}_getClosestParentElement(){for(let e=this._containerStack.length-1;e>-1;e--)if(this._containerStack[e]instanceof Qt)return this._containerStack[e];return null}_addToParent(e){let t=this._getContainer();t===null?this.rootNodes.push(e):t.children.push(e)}_getElementFullName(e,t,r){if(e===""&&(e=this.getTagDefinition(t).implicitNamespacePrefix||"",e===""&&r!=null)){let n=No(r.name)[1];this.getTagDefinition(n).preventNamespaceInheritance||(e=ho(r.name))}return Ga(e,t)}},u(Hi,"t"),Hi),u(ec,"Ws"),u(tc,"zs"),Bg=(Kc=class extends kg{constructor(){super(Pl)}parse(e,t,r,n=!1,a){return super.parse(e,t,r,n,a)}},u(Kc,"rr"),Kc),ji=null,tw=u(()=>(ji||(ji=new Bg),ji),"So"),u(pd,"zr"),u(C5,"_o"),rw=C5,Un=3,u(c7,"Eo"),u(x5,"Ao"),nw=x5,Xa={attrs:!0,children:!0,cases:!0,expression:!0},Yc=new Set(["parent"]),aw=(Wr=class{constructor(e={}){for(let t of new Set([...Yc,...Object.keys(e)]))this.setProperty(t,e[t])}setProperty(e,t){if(this[e]!==t){if(e in Xa&&(t=t.map(r=>this.createChild(r))),!Yc.has(e)){this[e]=t;return}Object.defineProperty(this,e,{value:t,enumerable:!1,configurable:!0})}}map(e){let t;for(let r in Xa){let n=this[r];if(n){let a=S5(n,o=>o.map(e));t!==n&&(t||(t=new Wr({parent:this.parent})),t.setProperty(r,a))}}if(t)for(let r in this)r in Xa||(t[r]=this[r]);return e(t||this)}walk(e){for(let t in Xa){let r=this[t];if(r)for(let n=0;n[e.fullName,e.value]))}},u(Wr,"t"),Wr),u(S5,"Do"),ow=[{regex:/^(\[if([^\]]*)\]>)(.*?)a==="lang"&&o!=="html"&&o!==""&&o!==void 0))}}),Tg=Ka({name:"lwc",canSelfClose:!1}),Lg={html:eg},lw=oc});function it(){}function Zc(e,t,r,n,a){for(var o=[],i;t;)o.push(t),i=t.previousComponent,delete t.previousComponent,t=i;o.reverse();for(var s=0,c=o.length,d=0,f=0;sm.length?v:m}),h.value=e.join(p)}else h.value=e.join(r.slice(d,d+h.count));d+=h.count,h.added||(f+=h.count)}}return o}function xd(e,t){var r;for(r=0;rt.length&&(r=e.length-t.length);var n=t.length;e.length0&&t[i]!=t[o];)o=a[o];t[i]==t[o]&&o++}o=0;for(var s=r;s0&&e[s]!=t[o];)o=a[o];e[s]==t[o]&&o++}return o}function Jc(e,t,r,n){if(t&&r){var a=t.value.match(/^\s*/)[0],o=t.value.match(/\s*$/)[0],i=r.value.match(/^\s*/)[0],s=r.value.match(/\s*$/)[0];if(e){var c=xd(a,i);e.value=Gl(e.value,i,c),t.value=qn(t.value,c),r.value=qn(r.value,c)}if(n){var d=Sd(o,s);n.value=Wl(n.value,s,d),t.value=vo(t.value,d),r.value=vo(r.value,d)}}else if(r)e&&(r.value=r.value.replace(/^\s*/,"")),n&&(n.value=n.value.replace(/^\s*/,""));else if(e&&n){var f=n.value.match(/^\s*/)[0],h=t.value.match(/^\s*/)[0],p=t.value.match(/\s*$/)[0],m=xd(f,h);t.value=qn(t.value,m);var g=Sd(qn(f,m),p);t.value=vo(t.value,g),n.value=Wl(n.value,f,g),e.value=Gl(e.value,f,f.slice(0,f.length-g.length))}else if(n){var v=n.value.match(/^\s*/)[0],b=t.value.match(/\s*$/)[0],C=Fd(b,v);t.value=vo(t.value,C)}else if(e){var E=e.value.match(/\s*$/)[0],D=t.value.match(/^\s*/)[0],w=Fd(E,D);t.value=qn(t.value,w)}}function Kl(e){"@babel/helpers - typeof";return Kl=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Kl(e)}function Yl(e,t,r,n,a){t=t||[],r=r||[],n&&(e=n(a,e));var o;for(o=0;o`'${a}'`));return`Unexpected doc.type '${e.type}'. +Expected it to be ${n}.`}function Pg(e,t,r,n){let a=[e];for(;a.length>0;){let o=a.pop();if(o===Gd){r(a.pop());continue}r&&a.push(o,Gd);let i=Tr(o);if(!i)throw new fn(o);if((t==null?void 0:t(o))!==!1)switch(i){case Vt:case mt:{let s=i===Vt?o:o.parts;for(let c=s.length,d=c-1;d>=0;--d)a.push(s[d]);break}case Ne:a.push(o.flatContents,o.breakContents);break;case Me:if(n&&o.expandedStates)for(let s=o.expandedStates.length,c=s-1;c>=0;--c)a.push(o.expandedStates[c]);else a.push(o.contents);break;case qt:case Ut:case Wt:case gt:case Gt:a.push(o.contents);break;case zr:case Cr:case Nt:case $t:case De:case We:break;default:throw new fn(o)}}}function Ho(e){return vt(e),{type:Ut,contents:e}}function pn(e,t){return vt(t),{type:qt,contents:t,n:e}}function Ad(e,t={}){return vt(e),Gs(t.expandedStates,!0),{type:Me,id:t.id,contents:e,break:!!t.shouldBreak,expandedStates:t.expandedStates}}function Ng(e){return pn(Number.NEGATIVE_INFINITY,e)}function $g(e){return pn({type:"root"},e)}function Hg(e){return pn(-1,e)}function jg(e,t){return Ad(e[0],{...t,expandedStates:e})}function Vg(e){return Gs(e),{type:mt,parts:e}}function Ug(e,t="",r={}){return vt(e),t!==""&&vt(t),{type:Ne,breakContents:e,flatContents:t,groupId:r.groupId}}function qg(e,t){return vt(e),{type:Wt,contents:e,groupId:t.groupId,negate:t.negate}}function Zl(e){return vt(e),{type:Gt,contents:e}}function kd(e,t){vt(e),Gs(t);let r=[];for(let n=0;n0){for(let a=0;a0?`, { ${f.join(", ")} }`:"";return`indentIfBreak(${n(o.contents)}${h})`}if(o.type===Me){let f=[];o.break&&o.break!=="propagated"&&f.push("shouldBreak: true"),o.id&&f.push(`id: ${a(o.id)}`);let h=f.length>0?`, { ${f.join(", ")} }`:"";return o.expandedStates?`conditionalGroup([${o.expandedStates.map(p=>n(p)).join(",")}]${h})`:`group(${n(o.contents)}${h})`}if(o.type===mt)return`fill([${o.parts.map(f=>n(f)).join(", ")}])`;if(o.type===Gt)return"lineSuffix("+n(o.contents)+")";if(o.type===$t)return"lineSuffixBoundary";if(o.type===gt)return`label(${JSON.stringify(o.label)}, ${n(o.contents)})`;throw new Error("Unknown doc type "+o.type)}function a(o){if(typeof o!="symbol")return JSON.stringify(String(o));if(o in t)return t[o];let i=o.description||"symbol";for(let s=0;;s++){let c=i+(s>0?` #${s}`:"");if(!r.has(c))return r.add(c),t[o]=`Symbol.for(${JSON.stringify(c)})`}}}function Gg(e){return e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510}function Kg(e){return e>=4352&&e<=4447||e===8986||e===8987||e===9001||e===9002||e>=9193&&e<=9196||e===9200||e===9203||e===9725||e===9726||e===9748||e===9749||e>=9776&&e<=9783||e>=9800&&e<=9811||e===9855||e>=9866&&e<=9871||e===9875||e===9889||e===9898||e===9899||e===9917||e===9918||e===9924||e===9925||e===9934||e===9940||e===9962||e===9970||e===9971||e===9973||e===9978||e===9981||e===9989||e===9994||e===9995||e===10024||e===10060||e===10062||e>=10067&&e<=10069||e===10071||e>=10133&&e<=10135||e===10160||e===10175||e===11035||e===11036||e===11088||e===11093||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12773||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=94176&&e<=94180||e===94192||e===94193||e>=94208&&e<=100343||e>=100352&&e<=101589||e>=101631&&e<=101640||e>=110576&&e<=110579||e>=110581&&e<=110587||e===110589||e===110590||e>=110592&&e<=110882||e===110898||e>=110928&&e<=110930||e===110933||e>=110948&&e<=110951||e>=110960&&e<=111355||e>=119552&&e<=119638||e>=119648&&e<=119670||e===126980||e===127183||e===127374||e>=127377&&e<=127386||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e===127568||e===127569||e>=127584&&e<=127589||e>=127744&&e<=127776||e>=127789&&e<=127797||e>=127799&&e<=127868||e>=127870&&e<=127891||e>=127904&&e<=127946||e>=127951&&e<=127955||e>=127968&&e<=127984||e===127988||e>=127992&&e<=128062||e===128064||e>=128066&&e<=128252||e>=128255&&e<=128317||e>=128331&&e<=128334||e>=128336&&e<=128359||e===128378||e===128405||e===128406||e===128420||e>=128507&&e<=128591||e>=128640&&e<=128709||e===128716||e>=128720&&e<=128722||e>=128725&&e<=128727||e>=128732&&e<=128735||e===128747||e===128748||e>=128756&&e<=128764||e>=128992&&e<=129003||e===129008||e>=129292&&e<=129338||e>=129340&&e<=129349||e>=129351&&e<=129535||e>=129648&&e<=129660||e>=129664&&e<=129673||e>=129679&&e<=129734||e>=129742&&e<=129756||e>=129759&&e<=129769||e>=129776&&e<=129784||e>=131072&&e<=196605||e>=196608&&e<=262141}function Yg(e){if(!e)return 0;if(!rD.test(e))return e.length;e=e.replace(eD()," ");let t=0;for(let r of e){let n=r.codePointAt(0);n<=31||n>=127&&n<=159||n>=768&&n<=879||(t+=tD(n)?1:2)}return t}function jo(e,t){if(typeof e=="string")return t(e);let r=new Map;return n(e);function n(o){if(r.has(o))return r.get(o);let i=a(o);return r.set(o,i),i}function a(o){switch(Tr(o)){case Vt:return t(o.map(n));case mt:return t({...o,parts:o.parts.map(n)});case Ne:return t({...o,breakContents:n(o.breakContents),flatContents:n(o.flatContents)});case Me:{let{expandedStates:i,contents:s}=o;return i?(i=i.map(n),s=i[0]):s=n(s),t({...o,contents:s,expandedStates:i})}case qt:case Ut:case Wt:case gt:case Gt:return t({...o,contents:n(o.contents)});case zr:case Cr:case Nt:case $t:case De:case We:return t(o);default:throw new fn(o)}}}function Jl(e,t,r){let n=r,a=!1;function o(i){if(a)return!1;let s=t(i);s!==void 0&&(a=!0,n=s)}return u(o,"i"),ts(e,o),n}function fw(e){if(e.type===Me&&e.break||e.type===De&&e.hard||e.type===We)return!0}function Zg(e){return Jl(e,fw,!1)}function Bd(e){if(e.length>0){let t=ge(!1,e,-1);!t.expandedStates&&!t.break&&(t.break="propagated")}return null}function hw(e){let t=new Set,r=[];function n(o){if(o.type===We&&Bd(r),o.type===Me){if(r.push(o),t.has(o))return!1;t.add(o)}}u(n,"n");function a(o){o.type===Me&&r.pop().break&&Bd(r)}u(a,"u"),ts(e,n,a,!0)}function mw(e){return e.type===De&&!e.hard?e.soft?"":" ":e.type===Ne?e.flatContents:e}function Jg(e){return jo(e,mw)}function Rd(e){for(e=[...e];e.length>=2&&ge(!1,e,-2).type===De&&ge(!1,e,-1).type===We;)e.length-=2;if(e.length>0){let t=ea(ge(!1,e,-1));e[e.length-1]=t}return e}function ea(e){switch(Tr(e)){case Ut:case Wt:case Me:case Gt:case gt:{let t=ea(e.contents);return{...e,contents:t}}case Ne:return{...e,breakContents:ea(e.breakContents),flatContents:ea(e.flatContents)};case mt:return{...e,parts:Rd(e.parts)};case Vt:return Rd(e);case zr:return e.replace(/[\n\r]*$/u,"");case qt:case Cr:case Nt:case $t:case De:case We:break;default:throw new fn(e)}return e}function Id(e){return ea(vw(e))}function gw(e){switch(Tr(e)){case mt:if(e.parts.every(t=>t===""))return"";break;case Me:if(!e.contents&&!e.id&&!e.break&&!e.expandedStates)return"";if(e.contents.type===Me&&e.contents.id===e.id&&e.contents.break===e.break&&e.contents.expandedStates===e.expandedStates)return e.contents;break;case qt:case Ut:case Wt:case Gt:if(!e.contents)return"";break;case Ne:if(!e.flatContents&&!e.breakContents)return"";break;case Vt:{let t=[];for(let r of e){if(!r)continue;let[n,...a]=Array.isArray(r)?r:[r];typeof n=="string"&&typeof ge(!1,t,-1)=="string"?t[t.length-1]+=n:t.push(n),t.push(...a)}return t.length===0?"":t.length===1?t[0]:t}case zr:case Cr:case Nt:case $t:case De:case gt:case We:break;default:throw new fn(e)}return e}function vw(e){return jo(e,t=>gw(t))}function Xg(e,t=Yd){return jo(e,r=>typeof r=="string"?kd(t,r.split(` +`)):r)}function yw(e){if(e.type===De)return!0}function Qg(e){return Jl(e,yw,!1)}function zo(e,t){return e.type===gt?{...e,contents:t(e.contents)}:t(e)}function cf(){return{value:"",length:0,queue:[]}}function bw(e,t){return Xl(e,{type:"indent"},t)}function ww(e,t,r){return t===Number.NEGATIVE_INFINITY?e.root||cf():t<0?Xl(e,{type:"dedent"},r):t?t.type==="root"?{...e,root:e}:Xl(e,{type:typeof t=="string"?"stringAlign":"numberAlign",n:t},r):e}function Xl(e,t,r){let n=t.type==="dedent"?e.queue.slice(0,-1):[...e.queue,t],a="",o=0,i=0,s=0;for(let g of n)switch(g.type){case"indent":f(),r.useTabs?c(1):d(r.tabWidth);break;case"stringAlign":f(),a+=g.n,o+=g.n.length;break;case"numberAlign":i+=1,s+=g.n;break;default:throw new Error(`Unexpected type '${g.type}'`)}return p(),{...e,value:a,length:o,queue:n};function c(g){a+=" ".repeat(g),o+=r.tabWidth*g}function d(g){a+=" ".repeat(g),o+=g}function f(){r.useTabs?h():p()}function h(){i>0&&c(i),m()}function p(){s>0&&d(s),m()}function m(){i=0,s=0}}function Ql(e){let t=0,r=0,n=e.length;e:for(;n--;){let a=e[n];if(a===an){r++;continue}for(let o=a.length-1;o>=0;o--){let i=a[o];if(i===" "||i===" ")t++;else{e[n]=a.slice(0,o+1);break e}}}if(t>0||r>0)for(e.length=n+1;r-- >0;)e.push(an);return t}function yo(e,t,r,n,a,o){if(r===Number.POSITIVE_INFINITY)return!0;let i=t.length,s=[e],c=[];for(;r>=0;){if(s.length===0){if(i===0)return!0;s.push(t[--i]);continue}let{mode:d,doc:f}=s.pop(),h=Tr(f);switch(h){case zr:c.push(f),r-=rs(f);break;case Vt:case mt:{let p=h===Vt?f:f.parts,m=f[ns]??0;for(let g=p.length-1;g>=m;g--)s.push({mode:d,doc:p[g]});break}case Ut:case qt:case Wt:case gt:s.push({mode:d,doc:f.contents});break;case Nt:r+=Ql(c);break;case Me:{if(o&&f.break)return!1;let p=f.break?Ie:d,m=f.expandedStates&&p===Ie?ge(!1,f.expandedStates,-1):f.contents;s.push({mode:p,doc:m});break}case Ne:{let p=(f.groupId?a[f.groupId]||lt:d)===Ie?f.breakContents:f.flatContents;p&&s.push({mode:d,doc:p});break}case De:if(d===Ie||f.hard)return!0;f.soft||(c.push(" "),r--);break;case Gt:n=!0;break;case $t:if(n)return!1;break}}return!1}function Vo(e,t){let r={},n=t.printWidth,a=Us(t.endOfLine),o=0,i=[{ind:cf(),mode:Ie,doc:e}],s=[],c=!1,d=[],f=0;for(hw(e);i.length>0;){let{ind:p,mode:m,doc:g}=i.pop();switch(Tr(g)){case zr:{let v=a!==` +`?ci(!1,g,` +`,a):g;s.push(v),i.length>0&&(o+=rs(v));break}case Vt:for(let v=g.length-1;v>=0;v--)i.push({ind:p,mode:m,doc:g[v]});break;case Cr:if(f>=2)throw new Error("There are too many 'cursor' in doc.");s.push(an),f++;break;case Ut:i.push({ind:bw(p,t),mode:m,doc:g.contents});break;case qt:i.push({ind:ww(p,g.n,t),mode:m,doc:g.contents});break;case Nt:o-=Ql(s);break;case Me:switch(m){case lt:if(!c){i.push({ind:p,mode:g.break?Ie:lt,doc:g.contents});break}case Ie:{c=!1;let v={ind:p,mode:lt,doc:g.contents},b=n-o,C=d.length>0;if(!g.break&&yo(v,i,b,C,r))i.push(v);else if(g.expandedStates){let E=ge(!1,g.expandedStates,-1);if(g.break){i.push({ind:p,mode:Ie,doc:E});break}else for(let D=1;D=g.expandedStates.length){i.push({ind:p,mode:Ie,doc:E});break}else{let w=g.expandedStates[D],x={ind:p,mode:lt,doc:w};if(yo(x,i,b,C,r)){i.push(x);break}}}else i.push({ind:p,mode:Ie,doc:g.contents});break}}g.id&&(r[g.id]=ge(!1,i,-1).mode);break;case mt:{let v=n-o,b=g[ns]??0,{parts:C}=g,E=C.length-b;if(E===0)break;let D=C[b+0],w=C[b+1],x={ind:p,mode:lt,doc:D},S={ind:p,mode:Ie,doc:D},F=yo(x,[],v,d.length>0,r,!0);if(E===1){F?i.push(x):i.push(S);break}let A={ind:p,mode:lt,doc:w},_={ind:p,mode:Ie,doc:w};if(E===2){F?i.push(A,x):i.push(_,S);break}let R=C[b+2],I={ind:p,mode:m,doc:{...g,[ns]:b+2}};yo({ind:p,mode:lt,doc:[D,w,R]},[],v,d.length>0,r,!0)?i.push(I,A,x):F?i.push(I,_,x):i.push(I,_,S);break}case Ne:case Wt:{let v=g.groupId?r[g.groupId]:m;if(v===Ie){let b=g.type===Ne?g.breakContents:g.negate?g.contents:Ho(g.contents);b&&i.push({ind:p,mode:m,doc:b})}if(v===lt){let b=g.type===Ne?g.flatContents:g.negate?Ho(g.contents):g.contents;b&&i.push({ind:p,mode:m,doc:b})}break}case Gt:d.push({ind:p,mode:m,doc:g.contents});break;case $t:d.length>0&&i.push({ind:p,mode:m,doc:fl});break;case De:switch(m){case lt:if(g.hard)c=!0;else{g.soft||(s.push(" "),o+=1);break}case Ie:if(d.length>0){i.push({ind:p,mode:m,doc:g},...d.reverse()),d.length=0;break}g.literal?p.root?(s.push(a,p.root.value),o=p.root.length):(s.push(a),o=0):(o-=Ql(s),s.push(a+p.value),o=p.length);break}break;case gt:i.push({ind:p,mode:m,doc:g.contents});break;case We:break;default:throw new fn(g)}i.length===0&&d.length>0&&(i.push(...d.reverse()),d.length=0)}let h=s.indexOf(an);if(h!==-1){let p=s.indexOf(an,h+1);if(p===-1)return{formatted:s.filter(b=>b!==an).join("")};let m=s.slice(0,h).join(""),g=s.slice(h+1,p).join(""),v=s.slice(p+1).join("");return{formatted:m+g+v,cursorNodeStart:m.length,cursorNodeText:g}}return{formatted:s.join("")}}function e2(e,t,r=0){let n=0;for(let a=r;a!0,"n")}=t,a=u(o=>aD(o)&&n(o),"u");for(let o of r(e)){let i=e[o];if(Array.isArray(i))for(let s of i)a(s)&&(yield s);else a(i)&&(yield i)}}function*Dw(e,t){let r=[e];for(let n=0;n{let a=!!(n!=null&&n.backwards);if(r===!1)return!1;let{length:o}=t,i=r;for(;i>=0&&i0}function o2(e){return e?t=>e(t,Xd):iD}function Cw(e){let t=e.type||e.kind||"(unknown type)",r=String(e.name||e.id&&(typeof e.id=="object"?e.id.name:e.id)||e.key&&(typeof e.key=="object"?e.key.name:e.key)||e.value&&(typeof e.value=="object"?"":String(e.value))||e.operator||"");return r.length>20&&(r=r.slice(0,19)+"…"),t+(r?" "+r:"")}function qs(e,t){(e.comments??(e.comments=[])).push(t),t.printed=!1,t.nodeDescription=Cw(e)}function rn(e,t){t.leading=!0,t.trailing=!1,qs(e,t)}function To(e,t,r){t.leading=!1,t.trailing=!1,r&&(t.marker=r),qs(e,t)}function nn(e,t){t.leading=!1,t.trailing=!0,qs(e,t)}function Ws(e,t){if(hl.has(e))return hl.get(e);let{printer:{getCommentChildNodes:r,canAttachComment:n,getVisitorKeys:a},locStart:o,locEnd:i}=t;if(!n)return[];let s=((r==null?void 0:r(e,t))??[...si(e,{getVisitorKeys:di(a)})]).flatMap(c=>n(c)?[c]:Ws(c,t));return s.sort((c,d)=>o(c)-o(d)||i(c)-i(d)),hl.set(e,s),s}function df(e,t,r,n){let{locStart:a,locEnd:o}=r,i=a(t),s=o(t),c=Ws(e,r),d,f,h=0,p=c.length;for(;h>1,g=c[m],v=a(g),b=o(g);if(v<=i&&s<=b)return df(g,t,r,g);if(b<=i){d=g,h=m+1;continue}if(s<=v){f=g,p=m;continue}throw new Error("Comment location overlaps with node location")}if((n==null?void 0:n.type)==="TemplateLiteral"){let{quasis:m}=n,g=cl(m,t,r);d&&cl(m,d,r)!==g&&(d=null),f&&cl(m,f,r)!==g&&(f=null)}return{enclosingNode:n,precedingNode:d,followingNode:f}}function xw(e,t){let{comments:r}=e;if(delete e.comments,!oD(r)||!t.printer.canAttachComment)return;let n=[],{locStart:a,locEnd:o,printer:{experimentalFeatures:{avoidAstMutation:i=!1}={},handleComments:s={}},originalText:c}=t,{ownLine:d=ml,endOfLine:f=ml,remaining:h=ml}=s,p=r.map((m,g)=>({...df(e,m,t),comment:m,text:c,options:t,ast:e,isLastComment:r.length-1===g}));for(let[m,g]of p.entries()){let{comment:v,precedingNode:b,enclosingNode:C,followingNode:E,text:D,options:w,ast:x,isLastComment:S}=g;if(w.parser==="json"||w.parser==="json5"||w.parser==="jsonc"||w.parser==="__js_expression"||w.parser==="__ts_expression"||w.parser==="__vue_expression"||w.parser==="__vue_ts_expression"){if(a(v)-a(x)<=0){rn(x,v);continue}if(o(v)-o(x)>=0){nn(x,v);continue}}let F;if(i?F=[g]:(v.enclosingNode=C,v.precedingNode=b,v.followingNode=E,F=[v,D,w,x,S]),Sw(D,w,p,m))v.placement="ownLine",d(...F)||(E?rn(E,v):b?nn(b,v):To(C||x,v));else if(Fw(D,w,p,m))v.placement="endOfLine",f(...F)||(b?nn(b,v):E?rn(E,v):To(C||x,v));else if(v.placement="remaining",!h(...F))if(b&&E){let A=n.length;A>0&&n[A-1].followingNode!==E&&zd(n,w),n.push(g)}else b?nn(b,v):E?rn(E,v):To(C||x,v)}if(zd(n,t),!i)for(let m of r)delete m.precedingNode,delete m.enclosingNode,delete m.followingNode}function Sw(e,t,r,n){let{comment:a,precedingNode:o}=r[n],{locStart:i,locEnd:s}=t,c=i(a);if(o)for(let d=n-1;d>=0;d--){let{comment:f,precedingNode:h}=r[d];if(h!==o||!wf(e.slice(s(f),c)))break;c=i(f)}return or(e,c,{backwards:!0})}function Fw(e,t,r,n){let{comment:a,followingNode:o}=r[n],{locStart:i,locEnd:s}=t,c=s(a);if(o)for(let d=n+1;d0;--c){let{comment:d,precedingNode:f,followingNode:h}=e[c-1];os.strictEqual(f,o),os.strictEqual(h,i);let p=t.originalText.slice(t.locEnd(d),s);if(((n=(r=t.printer).isGap)==null?void 0:n.call(r,p,t))??/^[\s(]*$/u.test(p))s=t.locStart(d);else break}for(let[d,{comment:f}]of e.entries())d1&&d.comments.sort((f,h)=>t.locStart(f)-t.locStart(h));e.length=0}function cl(e,t,r){let n=r.locStart(t)-1;for(let a=1;a!n.has(s)).length===0)return{leading:"",trailing:""};let a=[],o=[],i;return e.each(()=>{let s=e.node;if(n!=null&&n.has(s))return;let{leading:c,trailing:d}=s;c?a.push(Aw(e,t)):d&&(i=kw(e,t,i),o.push(i.doc))},"comments"),{leading:a,trailing:o}}function Bw(e,t,r){let{leading:n,trailing:a}=_w(e,r);return!n&&!a?t:zo(t,o=>[n,o,a])}function Rw(e){let{[Symbol.for("comments")]:t,[Symbol.for("printedComments")]:r}=e;for(let n of t){if(!n.printed&&!r.has(n))throw new Error('Comment "'+n.value.trim()+'" was not printed. Please report this error!');delete n.printed}}function l2(e){return()=>{}}function Td({plugins:e=[],showDeprecated:t=!1}={}){let r=e.flatMap(a=>a.languages??[]),n=[];for(let a of zw(Object.assign({},...e.map(({options:o})=>o),sD)))!t&&a.deprecated||(Array.isArray(a.choices)&&(t||(a.choices=a.choices.filter(o=>!o.deprecated)),a.name==="parser"&&(a.choices=[...a.choices,...Iw(a.choices,r,e)])),a.pluginDefaults=Object.fromEntries(e.filter(o=>{var i;return((i=o.defaultOptions)==null?void 0:i[a.name])!==void 0}).map(o=>[o.name,o.defaultOptions[a.name]])),n.push(a));return{languages:r,options:n}}function*Iw(e,t,r){let n=new Set(e.map(a=>a.value));for(let a of t)if(a.parsers){for(let o of a.parsers)if(!n.has(o)){n.add(o);let i=r.find(c=>c.parsers&&Object.prototype.hasOwnProperty.call(c.parsers,o)),s=a.name;i!=null&&i.name&&(s+=` (plugin: ${i.name})`),yield{value:o,description:s}}}}function zw(e){let t=[];for(let[r,n]of Object.entries(e)){let a={name:r,...n};Array.isArray(a.default)&&(a.default=ge(!1,a.default,-1).value),t.push(a)}return t}function Ld(e,t){if(!t)return;let r=uD(t).toLowerCase();return e.find(({filenames:n})=>n==null?void 0:n.some(a=>a.toLowerCase()===r))??e.find(({extensions:n})=>n==null?void 0:n.some(a=>r.endsWith(a)))}function Tw(e,t){if(t)return e.find(({name:r})=>r.toLowerCase()===t)??e.find(({aliases:r})=>r==null?void 0:r.includes(t))??e.find(({extensions:r})=>r==null?void 0:r.includes(`.${t}`))}function s2(e,t){let r=e.plugins.flatMap(a=>a.languages??[]),n=Tw(r,t.language)??Ld(r,t.physicalFile)??Ld(r,t.file)??(t.physicalFile,void 0);return n==null?void 0:n.parsers[0]}function Xc(e,t,r,n){return[`Invalid ${on.default.red(n.key(e))} value.`,`Expected ${on.default.blue(r)},`,`but received ${t===e1?on.default.gray("nothing"):on.default.red(n.value(t))}.`].join(" ")}function Md({text:e,list:t},r){let n=[];return e&&n.push(`- ${on.default.blue(e)}`),t&&n.push([`- ${on.default.blue(t.title)}:`].concat(t.values.map(a=>Md(a,r-t1.length).replace(/^|\n/g,`$&${t1}`))).join(` +`)),Od(n,r)}function Od(e,t){if(e.length===1)return e[0];let[r,n]=e,[a,o]=e.map(i=>i.split(` +`,1)[0].length);return a>t&&a>o?n:r}function u2(e,t){if(e===t)return 0;let r=e;e.length>t.length&&(e=t,t=r);let n=e.length,a=t.length;for(;n>0&&e.charCodeAt(~-n)===t.charCodeAt(~-a);)n--,a--;let o=0;for(;os?d>s?s+1:d:d>c?c+1:d;return s}function c2(e,t){let r=new e(t),n=Object.create(r);for(let a of dD)a in t&&(n[a]=Lw(t[a],r,rr.prototype[a].length));return n}function Lw(e,t,r){return typeof e=="function"?(...n)=>e(...n.slice(0,r-1),t,...n.slice(r-1)):()=>e}function Qc({from:e,to:t}){return{from:[e],to:t}}function d2(e,t){let r=Object.create(null);for(let n of e){let a=n[t];if(r[a])throw new Error(`Duplicate ${t} ${JSON.stringify(a)}`);r[a]=n}return r}function p2(e,t){let r=new Map;for(let n of e){let a=n[t];if(r.has(a))throw new Error(`Duplicate ${t} ${JSON.stringify(a)}`);r.set(a,n)}return r}function f2(){let e=Object.create(null);return t=>{let r=JSON.stringify(t);return e[r]?!0:(e[r]=!0,!1)}}function h2(e,t){let r=[],n=[];for(let a of e)t(a)?r.push(a):n.push(a);return[r,n]}function m2(e){return e===Math.floor(e)}function g2(e,t){if(e===t)return 0;let r=typeof e,n=typeof t,a=["undefined","object","boolean","number","string"];return r!==n?a.indexOf(r)-a.indexOf(n):r!=="string"?Number(e)-Number(t):e.localeCompare(t)}function v2(e){return(...t)=>{let r=e(...t);return typeof r=="string"?new Error(r):r}}function e0(e){return e===void 0?{}:e}function Pd(e){if(typeof e=="string")return{text:e};let{text:t,list:r}=e;return Mw((t||r)!==void 0,"Unexpected `expected` result, there should be at least one field."),r?{text:t,list:{title:r.title,values:r.values.map(Pd)}}:{text:t}}function t0(e,t){return e===!0?!0:e===!1?{value:t}:e}function r0(e,t,r=!1){return e===!1?!1:e===!0?r?!0:[{value:t}]:"value"in e?[e]:e.length===0?!1:e}function Nd(e,t){return typeof e=="string"||"key"in e?{from:t,to:e}:"from"in e?{from:e.from,to:e.to}:{from:t,to:e.to}}function dl(e,t){return e===void 0?[]:Array.isArray(e)?e.map(r=>Nd(r,t)):[Nd(e,t)]}function n0(e,t){let r=dl(typeof e=="object"&&"redirect"in e?e.redirect:e,t);return r.length===0?{remain:t,redirect:r}:typeof e=="object"&&"remain"in e?{remain:e.remain,redirect:r}:{redirect:r}}function Mw(e,t){if(!e)throw new Error(t)}function y2(e,t,{logger:r=!1,isCLI:n=!1,passThrough:a=!1,FlagSchema:o,descriptor:i}={}){if(n){if(!o)throw new Error("'FlagSchema' option is required.");if(!i)throw new Error("'descriptor' option is required.")}else i=Yr;let s=a?Array.isArray(a)?(p,m)=>a.includes(p)?{[p]:m}:void 0:(p,m)=>({[p]:m}):(p,m,g)=>{let{_:v,...b}=g.schemas;return n1(p,m,{...g,schemas:b})},c=Ow(t,{isCLI:n,FlagSchema:o}),d=new yD(c,{logger:r,unknown:s,descriptor:i}),f=r!==!1;f&&A0&&(d._hasDeprecationWarned=A0);let h=d.normalize(e);return f&&(A0=d._hasDeprecationWarned),h}function Ow(e,{isCLI:t,FlagSchema:r}){let n=[];t&&n.push(fD.create({name:"_"}));for(let a of e)n.push(Pw(a,{isCLI:t,optionInfos:e,FlagSchema:r})),a.alias&&t&&n.push(pD.create({name:a.alias,sourceName:a.name}));return n}function Pw(e,{isCLI:t,optionInfos:r,FlagSchema:n}){let{name:a}=e,o={name:a},i,s={};switch(e.type){case"int":i=vD,t&&(o.preprocess=Number);break;case"string":i=a1;break;case"choice":i=gD,o.choices=e.choices.map(c=>c!=null&&c.redirect?{...c,redirect:{to:{key:e.name,value:c.redirect}}}:c);break;case"boolean":i=mD;break;case"flag":i=n,o.flags=r.flatMap(c=>[c.alias,c.description&&c.name,c.oppositeDescription&&`no-${c.name}`].filter(Boolean));break;case"path":i=a1;break;default:throw new Error(`Unexpected type ${e.type}`)}if(e.exception?o.validate=(c,d,f)=>e.exception(c)||d.validate(c,f):o.validate=(c,d,f)=>c===void 0||d.validate(c,f),e.redirect&&(s.redirect=c=>c?{to:typeof e.redirect=="string"?e.redirect:{key:e.redirect.option,value:e.redirect.value}}:void 0),e.deprecated&&(s.deprecated=!0),t&&!e.array){let c=o.preprocess||(d=>d);o.preprocess=(d,f,h)=>f.preprocess(c(Array.isArray(d)?ge(!1,d,-1):d),h)}return e.array?hD.create({...t?{preprocess:u(c=>Array.isArray(c)?c:[c],"preprocess")}:{},...s,valueSchema:i.create(o)}):i.create({...o,...s})}function ff(e,t){if(!t)throw new Error("parserName is required.");let r=Ef(!1,e,a=>a.parsers&&Object.prototype.hasOwnProperty.call(a.parsers,t));if(r)return r;let n=`Couldn't resolve parser "${t}".`;throw n+=" Plugins must be explicitly added to the standalone bundle.",new Df(n)}function Nw(e,t){if(!t)throw new Error("astFormat is required.");let r=Ef(!1,e,a=>a.printers&&Object.prototype.hasOwnProperty.call(a.printers,t));if(r)return r;let n=`Couldn't find plugin for AST format "${t}".`;throw n+=" Plugins must be explicitly added to the standalone bundle.",new Df(n)}function hf({plugins:e,parser:t}){let r=ff(e,t);return mf(r,t)}function mf(e,t){let r=e.parsers[t];return typeof r=="function"?r():r}function $w(e,t){let r=e.printers[t];return typeof r=="function"?r():r}async function b2(e,t={}){var r;let n={...e};if(!n.parser)if(n.filepath){if(n.parser=cD(n,{physicalFile:n.filepath}),!n.parser)throw new Qd(`No parser could be inferred for file "${n.filepath}".`)}else throw new Qd("No parser and no file path given, couldn't infer a parser.");let a=Td({plugins:e.plugins,showDeprecated:!0}).options,o={...o1,...Object.fromEntries(a.filter(p=>p.default!==void 0).map(p=>[p.name,p.default]))},i=ff(n.plugins,n.parser),s=await mf(i,n.parser);n.astFormat=s.astFormat,n.locEnd=s.locEnd,n.locStart=s.locStart;let c=(r=i.printers)!=null&&r[s.astFormat]?i:Nw(n.plugins,s.astFormat),d=await $w(c,s.astFormat);n.printer=d;let f=c.defaultOptions?Object.fromEntries(Object.entries(c.defaultOptions).filter(([,p])=>p!==void 0)):{},h={...o,...f};for(let[p,m]of Object.entries(h))(n[p]===null||n[p]===void 0)&&(n[p]=m);return n.parser==="json"&&(n.trailingComma="none"),bD(n,a,{passThrough:Object.keys(o1),...t})}async function w2(e,t){let r=await hf(t),n=r.preprocess?r.preprocess(e,t):e;t.originalText=n;let a;try{a=await r.parse(n,t,t)}catch(o){Hw(o,e)}return{text:n,ast:a}}function Hw(e,t){let{loc:r}=e;if(r){let n=(0,wD.codeFrameColumns)(t,r,{highlightCode:!0});throw e.message+=` +`+n,e.codeFrame=n,e}throw e}async function jw(e,t,r,n,a){let{embeddedLanguageFormatting:o,printer:{embed:i,hasPrettierIgnore:s=u(()=>!1,"s"),getVisitorKeys:c}}=r;if(!i||o!=="auto")return;if(i.length>2)throw new Error("printer.embed has too many parameters. The API changed in Prettier v3. Please update your plugin. See https://prettier.io/docs/en/plugins.html#optional-embed");let d=di(i.getVisitorKeys??c),f=[];m();let h=e.stack;for(let{print:g,node:v,pathStack:b}of f)try{e.stack=b;let C=await g(p,t,e,r);C&&a.set(v,C)}catch(C){if(globalThis.PRETTIER_DEBUG)throw C}e.stack=h;function p(g,v){return Vw(g,v,r,n)}u(p,"f");function m(){let{node:g}=e;if(g===null||typeof g!="object"||s(e))return;for(let b of d(g))Array.isArray(g[b])?e.each(m,b):e.call(m,b);let v=i(e,r);if(v){if(typeof v=="function"){f.push({print:v,node:g,pathStack:[...e.stack]});return}a.set(g,v)}}u(m,"d")}async function Vw(e,t,r,n){let a=await En({...r,...t,parentParser:r.parser,originalText:e},{passThrough:!0}),{ast:o}=await za(e,a),i=await n(o,a);return Id(i)}function D2(e,t){let{originalText:r,[Symbol.for("comments")]:n,locStart:a,locEnd:o,[Symbol.for("printedComments")]:i}=t,{node:s}=e,c=a(s),d=o(s);for(let f of n)a(f)>=c&&o(f)<=d&&i.add(f);return r.slice(c,d)}async function ui(e,t){({ast:e}=await gf(e,t));let r=new Map,n=new nD(e),a=lD(t),o=new Map;await jw(n,s,t,ui,o);let i=await $d(n,t,s,void 0,o);if(Rw(t),t.nodeAfterCursor&&!t.nodeBeforeCursor)return[Er,i];if(t.nodeBeforeCursor&&!t.nodeAfterCursor)return[i,Er];return i;function s(d,f){return d===void 0||d===n?c(f):Array.isArray(d)?n.call(()=>c(f),...d):n.call(()=>c(f),d)}function c(d){a(n);let f=n.node;if(f==null)return"";let h=f&&typeof f=="object"&&d===void 0;if(h&&r.has(f))return r.get(f);let p=$d(n,t,s,d,o);return h&&r.set(f,p),p}}function $d(e,t,r,n,a){var o;let{node:i}=e,{printer:s}=t,c;switch((o=s.hasPrettierIgnore)!=null&&o.call(s,e)?c=DD(e,t):a.has(i)?c=a.get(i):c=s.print(e,t,r,n),i){case t.cursorNode:c=zo(c,d=>[Er,d,Er]);break;case t.nodeBeforeCursor:c=zo(c,d=>[d,Er]);break;case t.nodeAfterCursor:c=zo(c,d=>[Er,d]);break}return s.printComment&&(!s.willPrintOwnComments||!s.willPrintOwnComments(e,t))&&(c=Bw(e,c,t)),c}async function gf(e,t){let r=e.comments??[];t[Symbol.for("comments")]=r,t[Symbol.for("tokens")]=e.tokens??[],t[Symbol.for("printedComments")]=new Set,xw(e,t);let{printer:{preprocess:n}}=t;return e=n?await n(e,t):e,{ast:e,comments:r}}function E2(e,t){let{cursorOffset:r,locStart:n,locEnd:a}=t,o=di(t.printer.getVisitorKeys),i=u(m=>n(m)<=r&&a(m)>=r,"o"),s=e,c=[e];for(let m of Dw(e,{getVisitorKeys:o,filter:i}))c.push(m),s=m;if(Ew(s,{getVisitorKeys:o}))return{cursorNode:s};let d,f,h=-1,p=Number.POSITIVE_INFINITY;for(;c.length>0&&(d===void 0||f===void 0);){s=c.pop();let m=d!==void 0,g=f!==void 0;for(let v of si(s,{getVisitorKeys:o})){if(!m){let b=a(v);b<=r&&b>h&&(d=v,h=b)}if(!g){let b=n(v);b>=r&&bi(p,c)).filter(Boolean);let d={},f=new Set(a(s));for(let p in s)!Object.prototype.hasOwnProperty.call(s,p)||o.has(p)||(f.has(p)?d[p]=i(s[p],s):d[p]=s[p]);let h=r(s,d,c);if(h!==null)return h??d}}function Uw(e,t){let r=[e.node,...e.parentNodes],n=new Set([t.node,...t.parentNodes]);return r.find(a=>Cf.has(a.type)&&n.has(a))}function Hd(e){let t=xD(!1,e,r=>r.type!=="Program"&&r.type!=="File");return t===-1?e:e.slice(0,t+1)}function qw(e,t,{locStart:r,locEnd:n}){let a=e.node,o=t.node;if(a===o)return{startNode:a,endNode:o};let i=r(e.node);for(let c of Hd(t.parentNodes))if(r(c)>=i)o=c;else break;let s=n(t.node);for(let c of Hd(e.parentNodes)){if(n(c)<=s)a=c;else break;if(a===o)break}return{startNode:a,endNode:o}}function es(e,t,r,n,a=[],o){let{locStart:i,locEnd:s}=r,c=i(e),d=s(e);if(!(t>d||tn);let s=e.slice(n,a).search(/\S/u),c=s===-1;if(!c)for(n+=s;a>n&&!/\S/u.test(e[a-1]);--a);let d=es(r,n,t,(m,g)=>jd(t,m,g),[],"rangeStart"),f=c?d:es(r,a,t,m=>jd(t,m),[],"rangeEnd");if(!d||!f)return{rangeStart:0,rangeEnd:0};let h,p;if(SD(t)){let m=Uw(d,f);h=m,p=m}else({startNode:h,endNode:p}=qw(d,f,t));return{rangeStart:Math.min(o(h),o(p)),rangeEnd:Math.max(i(h),i(p))}}async function vf(e,t,r=0){if(!e||e.trim().length===0)return{formatted:"",cursorOffset:-1,comments:[]};let{ast:n,text:a}=await za(e,t);t.cursorOffset>=0&&(t={...t,...ED(n,t)});let o=await ui(n,t);r>0&&(o=_d([xr,o],r,t.tabWidth));let i=Vo(o,t);if(r>0){let c=i.formatted.trim();i.cursorNodeStart!==void 0&&(i.cursorNodeStart-=i.formatted.indexOf(c),i.cursorNodeStart<0&&(i.cursorNodeStart=0,i.cursorNodeText=i.cursorNodeText.trimStart()),i.cursorNodeStart+i.cursorNodeText.length>c.length&&(i.cursorNodeText=i.cursorNodeText.trimEnd())),i.formatted=c+Us(t.endOfLine)}let s=t[Symbol.for("comments")];if(t.cursorOffset>=0){let c,d,f,h;if((t.cursorNode||t.nodeBeforeCursor||t.nodeAfterCursor)&&i.cursorNodeText)if(f=i.cursorNodeStart,h=i.cursorNodeText,t.cursorNode)c=t.locStart(t.cursorNode),d=a.slice(c,t.locEnd(t.cursorNode));else{if(!t.nodeBeforeCursor&&!t.nodeAfterCursor)throw new Error("Cursor location must contain at least one of cursorNode, nodeBeforeCursor, nodeAfterCursor");c=t.nodeBeforeCursor?t.locEnd(t.nodeBeforeCursor):0;let C=t.nodeAfterCursor?t.locStart(t.nodeAfterCursor):a.length;d=a.slice(c,C)}else c=0,d=a,f=0,h=i.formatted;let p=t.cursorOffset-c;if(d===h)return{formatted:i.formatted,cursorOffset:f+p,comments:s};let m=d.split("");m.splice(p,0,i1);let g=h.split(""),v=uw(m,g),b=f;for(let C of v)if(C.removed){if(C.value.includes(i1))break}else b+=C.count;return{formatted:i.formatted,cursorOffset:b,comments:s}}return{formatted:i.formatted,cursorOffset:-1,comments:s}}async function Kw(e,t){let{ast:r,text:n}=await za(e,t),{rangeStart:a,rangeEnd:o}=Gw(n,t,r),i=n.slice(a,o),s=Math.min(a,n.lastIndexOf(` +`,a)+1),c=n.slice(s,a).match(/^\s*/u)[0],d=as(c,t.tabWidth),f=await vf(i,{...t,rangeStart:0,rangeEnd:Number.POSITIVE_INFINITY,cursorOffset:t.cursorOffset>a&&t.cursorOffset<=o?t.cursorOffset-a:-1,endOfLine:"lf"},d),h=f.formatted.trimEnd(),{cursorOffset:p}=t;p>o?p+=h.length-i.length:f.cursorOffset>=0&&(p=f.cursorOffset+a);let m=n.slice(0,a)+h+n.slice(o);if(t.endOfLine!=="lf"){let g=Us(t.endOfLine);p>=0&&g===`\r +`&&(p+=uf(m.slice(0,p),` +`)),m=ci(!1,m,` +`,g)}return{formatted:m,cursorOffset:p,comments:f.comments}}function pl(e,t,r){return typeof t!="number"||Number.isNaN(t)||t<0||t>e.length?r:t}function Vd(e,t){let{cursorOffset:r,rangeStart:n,rangeEnd:a}=t;return r=pl(e,r,-1),n=pl(e,n,0),a=pl(e,a,e.length),{...t,cursorOffset:r,rangeStart:n,rangeEnd:a}}function yf(e,t){let{cursorOffset:r,rangeStart:n,rangeEnd:a,endOfLine:o}=Vd(e,t),i=e.charAt(0)===xf;if(i&&(e=e.slice(1),r--,n--,a--),o==="auto"&&(o=cw(e)),e.includes("\r")){let s=u(c=>uf(e.slice(0,Math.max(c,0)),`\r +`),"s");r-=s(r),n-=s(n),a-=s(a),e=dw(e)}return{hasBOM:i,text:e,options:Vd(e,{...t,cursorOffset:r,rangeStart:n,rangeEnd:a,endOfLine:o})}}async function Ud(e,t){let r=await hf(t);return!r.hasPragma||r.hasPragma(e)}async function qd(e,t){let{hasBOM:r,text:n,options:a}=yf(e,await En(t));if(a.rangeStart>=a.rangeEnd&&n!==""||a.requirePragma&&!await Ud(n,a))return{formatted:e,cursorOffset:t.cursorOffset,comments:[]};let o;return a.rangeStart>0||a.rangeEnd=0&&o.cursorOffset++),o}async function x2(e,t,r){let{text:n,options:a}=yf(e,await En(t)),o=await za(n,a);return r&&(r.preprocessForPrint&&(o.ast=await gf(o.ast,a)),r.massage&&(o.ast=CD(o.ast,a))),o}async function S2(e,t){t=await En(t);let r=await ui(e,t);return Vo(r,t)}async function F2(e,t){let r=pw(e),{formatted:n}=await qd(r,{...t,parser:"__js_expression"});return n}async function A2(e,t){t=await En(t);let{ast:r}=await za(e,t);return ui(r,t)}async function k2(e,t){return Vo(e,await En(t))}function _2(e,t){if(t===!1)return!1;if(e.charAt(t)==="/"&&e.charAt(t+1)==="*"){for(let r=t+2;rMath.max(n,a.length/t.length),0)}function L2(e,t){let r=Ys(e,t);return r===!1?"":e.charAt(r)}function M2(e,t){let r=t===!0||t===Do?Do:l1,n=r===Do?l1:Do,a=0,o=0;for(let i of e)i===r?a++:i===n&&o++;return a>o?n:r}function O2(e,t,r){for(let n=t;ni===n?i:s===t?"\\"+s:s||(r&&/^[^\n\r"'0-7\\bfnrt-vx\u2028\u2029]$/u.test(i)?i:"\\"+i));return t+a+t}function Zw(e,t,r){return Ys(e,r(t))}function $2(e,t){return arguments.length===2||typeof t=="number"?Ys(e,t):Zw(...arguments)}function Jw(e,t,r){return Ks(e,r(t))}function H2(e,t){return arguments.length===2||typeof t=="number"?Ks(e,t):Jw(...arguments)}function Xw(e,t,r){return ss(e,r(t))}function j2(e,t){return arguments.length===2||typeof t=="number"?ss(e,t):Xw(...arguments)}function pr(e,t=1){return async(...r)=>{let n=r[t]??{},a=n.plugins??[];return r[t]={...n,plugins:Array.isArray(a)?a:Object.values(a)},e(...r)}}async function Wd(e,t){let{formatted:r}=await s1(e,{...t,cursorOffset:-1});return r}async function V2(e,t){return await Wd(e,t)===e}var U2,Vi,q2,W2,G2,K2,a0,o0,Ui,Y2,Qa,Z2,J2,zn,qi,X2,i0,Q2,ci,eo,ev,to,tv,Wi,rv,nv,Tn,bo,zr,Vt,Cr,Ut,qt,Nt,Me,mt,Ne,Wt,Gt,$t,De,gt,We,bf,Tr,Qw,l0,av,fn,Gd,ts,s0,vt,Gs,ov,wo,iv,fl,u0,Kd,lv,xr,Yd,Er,sv,ge,eD,tD,rD,rs,Ie,lt,an,ns,as,Gr,c0,Gi,d0,uv,nD,p0,os,aD,cv,lr,Zd,Jd,Rr,or,oD,Xd,iD,di,hl,ml,wf,Ks,lD,f0,Df,h0,Qd,sD,uD,cD,Yr,m0,dv,on,e1,ro,t1,pv,g0,gl,r1,n1,dD,v0,rr,y0,pD,b0,fD,w0,hD,D0,mD,E0,gD,C0,fv,x0,vD,S0,a1,hv,mv,gv,vv,F0,yD,A0,bD,yv,Ef,o1,En,wD,za,DD,ED,CD,bv,xD,SD,Cf,FD,xf,i1,k0,wv,Dv,Ev,Cv,_0,is,ls,Ys,ss,xv,Sv,Fv,Do,l1,Av,kv,_v,Bv,s1,Rv,Iv,AD,eA=z(()=>{U2=Object.create,Vi=Object.defineProperty,q2=Object.getOwnPropertyDescriptor,W2=Object.getOwnPropertyNames,G2=Object.getPrototypeOf,K2=Object.prototype.hasOwnProperty,a0=u(e=>{throw TypeError(e)},"fr"),o0=u((e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),"dr"),Ui=u((e,t)=>{for(var r in t)Vi(e,r,{get:t[r],enumerable:!0})},"Bt"),Y2=u((e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of W2(t))!K2.call(e,a)&&a!==r&&Vi(e,a,{get:u(()=>t[a],"get"),enumerable:!(n=q2(t,a))||n.enumerable});return e},"_u"),Qa=u((e,t,r)=>(r=e!=null?U2(G2(e)):{},Y2(t||!e||!e.__esModule?Vi(r,"default",{value:e,enumerable:!0}):r,e)),"Me"),Z2=u((e,t,r)=>t.has(e)||a0("Cannot "+r),"xu"),J2=u((e,t,r)=>t.has(e)?a0("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),"pr"),zn=u((e,t,r)=>(Z2(e,t,"access private method"),r),"pe"),qi=o0((e,t)=>{var r=new Proxy(String,{get:u(()=>r,"get")});t.exports=r}),X2=o0(e=>{Object.defineProperty(e,"__esModule",{value:!0});function t(){return new Proxy({},{get:u(()=>o=>o,"get")})}u(t,"Bi");var r=/\r\n|[\n\r\u2028\u2029]/;function n(o,i,s){let c=Object.assign({column:0,line:-1},o.start),d=Object.assign({},c,o.end),{linesAbove:f=2,linesBelow:h=3}=s||{},p=c.line,m=c.column,g=d.line,v=d.column,b=Math.max(p-(f+1),0),C=Math.min(i.length,g+h);p===-1&&(b=0),g===-1&&(C=i.length);let E=g-p,D={};if(E)for(let w=0;w<=E;w++){let x=w+p;if(!m)D[x]=!0;else if(w===0){let S=i[x-1].length;D[x]=[m,S-m+1]}else if(w===E)D[x]=[0,v];else{let S=i[x-w].length;D[x]=[0,S]}}else m===v?m?D[p]=[m,0]:D[p]=!0:D[p]=[m,v-m];return{start:b,end:C,markerLines:D}}u(n,"wi");function a(o,i,s={}){let c=t(),d=o.split(r),{start:f,end:h,markerLines:p}=n(i,d,s),m=i.start&&typeof i.start.column=="number",g=String(h).length,v=o.split(r,h).slice(f,h).map((b,C)=>{let E=f+1+C,D=` ${` ${E}`.slice(-g)} |`,w=p[E],x=!p[E+1];if(w){let S="";if(Array.isArray(w)){let F=b.slice(0,Math.max(w[0]-1,0)).replace(/[^\t]/g," "),A=w[1]||1;S=[` + `,c.gutter(D.replace(/\d/g," "))," ",F,c.marker("^").repeat(A)].join(""),x&&s.message&&(S+=" "+c.message(s.message))}return[c.marker(">"),c.gutter(D),b.length>0?` ${b}`:"",S].join("")}else return` ${c.gutter(D)}${b.length>0?` ${b}`:""}`}).join(` +`);return s.message&&!m&&(v=`${" ".repeat(g+1)}${s.message} +${v}`),v}u(a,"_i"),e.codeFrameColumns=a}),i0={},Ui(i0,{__debug:u(()=>Iv,"__debug"),check:u(()=>V2,"check"),doc:u(()=>k0,"doc"),format:u(()=>Wd,"format"),formatWithCursor:u(()=>s1,"formatWithCursor"),getSupportInfo:u(()=>Rv,"getSupportInfo"),util:u(()=>_0,"util"),version:u(()=>Cv,"version")}),Q2=u((e,t,r,n)=>{if(!(e&&t==null))return t.replaceAll?t.replaceAll(r,n):r.global?t.replace(r,n):t.split(r).join(n)},"bu"),ci=Q2,u(it,"M"),it.prototype={diff:u(function(e,t){var r,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},a=n.callback;typeof n=="function"&&(a=n,n={});var o=this;function i(D){return D=o.postProcess(D,n),a?(setTimeout(function(){a(D)},0),!0):D}u(i,"s"),e=this.castInput(e,n),t=this.castInput(t,n),e=this.removeEmpty(this.tokenize(e,n)),t=this.removeEmpty(this.tokenize(t,n));var s=t.length,c=e.length,d=1,f=s+c;n.maxEditLength!=null&&(f=Math.min(f,n.maxEditLength));var h=(r=n.timeout)!==null&&r!==void 0?r:1/0,p=Date.now()+h,m=[{oldPos:-1,lastComponent:void 0}],g=this.extractCommon(m[0],t,e,0,n);if(m[0].oldPos+1>=c&&g+1>=s)return i(Zc(o,m[0].lastComponent,t,e,o.useLongestToken));var v=-1/0,b=1/0;function C(){for(var D=Math.max(v,-d);D<=Math.min(b,d);D+=2){var w=void 0,x=m[D-1],S=m[D+1];x&&(m[D-1]=void 0);var F=!1;if(S){var A=S.oldPos-D;F=S&&0<=A&&A=c&&g+1>=s)return i(Zc(o,w.lastComponent,t,e,o.useLongestToken));m[D]=w,w.oldPos+1>=c&&(b=Math.min(b,D-1)),g+1>=s&&(v=Math.max(v,D+1))}d++}if(u(C,"C"),a)u(function D(){setTimeout(function(){if(d>f||Date.now()>p)return a();C()||D()},0)},"E")();else for(;d<=f&&Date.now()<=p;){var E=C();if(E)return E}},"diff"),addToPath:u(function(e,t,r,n,a){var o=e.lastComponent;return o&&!a.oneChangePerToken&&o.added===t&&o.removed===r?{oldPos:e.oldPos+n,lastComponent:{count:o.count+1,added:t,removed:r,previousComponent:o.previousComponent}}:{oldPos:e.oldPos+n,lastComponent:{count:1,added:t,removed:r,previousComponent:o}}},"addToPath"),extractCommon:u(function(e,t,r,n,a){for(var o=t.length,i=r.length,s=e.oldPos,c=s-n,d=0;c+11&&arguments[1]!==void 0?arguments[1]:{},r;if(t.intlSegmenter){if(t.intlSegmenter.resolvedOptions().granularity!="word")throw new Error('The segmenter passed must have a granularity of "word"');r=Array.from(t.intlSegmenter.segment(e),function(o){return o.segment})}else r=e.match(ev)||[];var n=[],a=null;return r.forEach(function(o){/\s/.test(o)?a==null?n.push(o):n.push(n.pop()+o):/\s/.test(a)?n[n.length-1]==a?n.push(n.pop()+o):n.push(a+o):n.push(o),a=o}),n},to.join=function(e){return e.map(function(t,r){return r==0?t:t.replace(/^\s+/,"")}).join("")},to.postProcess=function(e,t){if(!e||t.oneChangePerToken)return e;var r=null,n=null,a=null;return e.forEach(function(o){o.added?n=o:o.removed?a=o:((n||a)&&Jc(r,a,n,o),r=o,n=null,a=null)}),(n||a)&&Jc(r,a,n,null),e},u(Jc,"Cr"),tv=new it,tv.tokenize=function(e){var t=new RegExp("(\\r?\\n)|[".concat(eo,"]+|[^\\S\\n\\r]+|[^").concat(eo,"]"),"ug");return e.match(t)||[]},Wi=new it,Wi.tokenize=function(e,t){t.stripTrailingCr&&(e=e.replace(/\r\n/g,` +`));var r=[],n=e.split(/(\n|\r\n)/);n[n.length-1]||n.pop();for(var a=0;a"u"?r:i}:n;return typeof e=="string"?e:JSON.stringify(Yl(e,null,null,a),a," ")},Tn.equals=function(e,t,r){return it.prototype.equals.call(Tn,e.replace(/,([\r\n])/g,"$1"),t.replace(/,([\r\n])/g,"$1"),r)},u(Yl,"bt"),bo=new it,bo.tokenize=function(e){return e.slice()},bo.join=bo.removeEmpty=function(e){return e},u(uw,"gr"),u(cw,"yr"),u(Us,"xe"),u(uf,"Ot"),u(dw,"Ar"),zr="string",Vt="array",Cr="cursor",Ut="indent",qt="align",Nt="trim",Me="group",mt="fill",Ne="if-break",Wt="indent-if-break",Gt="line-suffix",$t="line-suffix-boundary",De="line",gt="label",We="break-parent",bf=new Set([Cr,Ut,qt,Nt,Me,mt,Ne,Wt,Gt,$t,De,gt,We]),u(Mg,"Lu"),Tr=Mg,Qw=u(e=>new Intl.ListFormat("en-US",{type:"disjunction"}).format(e),"Pu"),u(Og,"Iu"),av=(l0=class extends Error{constructor(t){super(Og(t));Rn(this,"name","InvalidDocError");this.doc=t}},u(l0,"St"),l0),fn=av,Gd={},u(Pg,"Ru"),ts=Pg,s0=u(()=>{},"Br"),vt=s0,Gs=s0,u(Ho,"le"),u(pn,"De"),u(Ad,"Tt"),u(Ng,"wr"),u($g,"_r"),u(Hg,"xr"),u(jg,"br"),u(Vg,"Nr"),u(Ug,"Or"),u(qg,"Sr"),u(Zl,"Ne"),ov={type:$t},wo={type:We},iv={type:Nt},fl={type:De,hard:!0},u0={type:De,hard:!0,literal:!0},Kd={type:De},lv={type:De,soft:!0},xr=[fl,wo],Yd=[u0,wo],Er={type:Cr},u(kd,"Se"),u(_d,"Qe"),u(Wg,"Pr"),u(Rt,"ee"),u(pw,"Ir"),sv=u((e,t,r)=>{if(!(e&&t==null))return Array.isArray(t)||typeof t=="string"?t[r<0?t.length+r:r]:t.at(r)},"Yu"),ge=sv,eD=u(()=>/[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE89\uDE8F-\uDEC2\uDEC6\uDECE-\uDEDC\uDEDF-\uDEE9]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g,"Rr"),u(Gg,"Yr"),u(Kg,"jr"),tD=u(e=>!(Gg(e)||Kg(e)),"Hr"),rD=/[^\x20-\x7F]/u,u(Yg,"Hu"),rs=Yg,u(jo,"Le"),u(Jl,"Ze"),u(fw,"Wu"),u(Zg,"Mr"),u(Bd,"Wr"),u(hw,"Ur"),u(mw,"$u"),u(Jg,"Vr"),u(Rd,"$r"),u(ea,"ke"),u(Id,"et"),u(gw,"Mu"),u(vw,"Uu"),u(Xg,"zr"),u(yw,"Vu"),u(Qg,"Gr"),u(zo,"me"),Ie=Symbol("MODE_BREAK"),lt=Symbol("MODE_FLAT"),an=Symbol("cursor"),ns=Symbol("DOC_FILL_PRINTED_LENGTH"),u(cf,"Kr"),u(bw,"zu"),u(ww,"Gu"),u(Xl,"Pt"),u(Ql,"It"),u(yo,"tt"),u(Vo,"Ee"),u(e2,"Ku"),as=e2,uv=(d0=class{constructor(e){J2(this,Gr),this.stack=[e]}get key(){let{stack:e,siblings:t}=this;return ge(!1,e,t===null?-2:-4)??null}get index(){return this.siblings===null?null:ge(!1,this.stack,-2)}get node(){return ge(!1,this.stack,-1)}get parent(){return this.getNode(1)}get grandparent(){return this.getNode(2)}get isInArray(){return this.siblings!==null}get siblings(){let{stack:e}=this,t=ge(!1,e,-3);return Array.isArray(t)?t:null}get next(){let{siblings:e}=this;return e===null?null:e[this.index+1]}get previous(){let{siblings:e}=this;return e===null?null:e[this.index-1]}get isFirst(){return this.index===0}get isLast(){let{siblings:e,index:t}=this;return e!==null&&t===e.length-1}get isRoot(){return this.stack.length===1}get root(){return this.stack[0]}get ancestors(){return[...zn(this,Gr,Gi).call(this)]}getName(){let{stack:e}=this,{length:t}=e;return t>1?ge(!1,e,-2):null}getValue(){return ge(!1,this.stack,-1)}getNode(e=0){let t=zn(this,Gr,c0).call(this,e);return t===-1?null:this.stack[t]}getParentNode(e=0){return this.getNode(e+1)}call(e,...t){let{stack:r}=this,{length:n}=r,a=ge(!1,r,-1);for(let o of t)a=a[o],r.push(o,a);try{return e(this)}finally{r.length=n}}callParent(e,t=0){let r=zn(this,Gr,c0).call(this,t+1),n=this.stack.splice(r+1);try{return e(this)}finally{this.stack.push(...n)}}each(e,...t){let{stack:r}=this,{length:n}=r,a=ge(!1,r,-1);for(let o of t)a=a[o],r.push(o,a);try{for(let o=0;o{r[a]=e(n,a,o)},...t),r}match(...e){let t=this.stack.length-1,r=null,n=this.stack[t--];for(let a of e){if(n===void 0)return!1;let o=null;if(typeof r=="number"&&(o=r,r=this.stack[t--],n=this.stack[t--]),a&&!a(n,r,o))return!1;r=this.stack[t--],n=this.stack[t--]}return!0}findAncestor(e){for(let t of zn(this,Gr,Gi).call(this))if(e(t))return t}hasAncestor(e){for(let t of zn(this,Gr,Gi).call(this))if(e(t))return!0;return!1}},u(d0,"Rt"),d0),Gr=new WeakSet,c0=u(function(e){let{stack:t}=this;for(let r=t.length-1;r>=0;r-=2)if(!Array.isArray(t[r])&&--e<0)return r;return-1},"Yt"),Gi=u(function*(){let{stack:e}=this;for(let t=e.length-3;t>=0;t-=2){let r=e[t];Array.isArray(r)||(yield r)}},"rt"),nD=uv,p0=new Proxy(()=>{},{get:u(()=>p0,"get")}),os=p0,u(t2,"Ju"),aD=t2,u(si,"ge"),u(Dw,"Qr"),u(Ew,"Zr"),u(In,"ye"),cv=In(/\s/u),lr=In(" "),Zd=In(",; "),Jd=In(/[^\n\r]/u),u(r2,"qu"),Rr=r2,u(n2,"Xu"),or=n2,u(a2,"Qu"),oD=a2,Xd=new Set(["tokens","comments","parent","enclosingNode","precedingNode","followingNode"]),iD=u(e=>Object.keys(e).filter(t=>!Xd.has(t)),"Zu"),u(o2,"ei"),di=o2,u(Cw,"ti"),u(qs,"Ht"),u(rn,"ue"),u(To,"re"),u(nn,"ie"),hl=new WeakMap,u(Ws,"it"),u(df,"nn"),ml=u(()=>!1,"$t"),u(xw,"un"),wf=u(e=>!/[\S\n\u2028\u2029]/u.test(e),"on"),u(Sw,"ri"),u(Fw,"ni"),u(zd,"rn"),u(cl,"Mt"),u(i2,"ui"),Ks=i2,u(pf,"sn"),u(Aw,"ii"),u(kw,"oi"),u(_w,"si"),u(Bw,"an"),u(Rw,"Dn"),u(l2,"ai"),lD=l2,Df=(f0=class extends Error{constructor(){super(...arguments);Rn(this,"name","ConfigError")}},u(f0,"Re"),f0),Qd=(h0=class extends Error{constructor(){super(...arguments);Rn(this,"name","UndefinedParserError")}},u(h0,"Ye"),h0),sD={cursorOffset:{category:"Special",type:"int",default:-1,range:{start:-1,end:1/0,step:1},description:"Print (to stderr) where a cursor at the given position would move to after formatting.",cliCategory:"Editor"},endOfLine:{category:"Global",type:"choice",default:"lf",description:"Which end of line characters to apply.",choices:[{value:"lf",description:"Line Feed only (\\n), common on Linux and macOS as well as inside git repos"},{value:"crlf",description:"Carriage Return + Line Feed characters (\\r\\n), common on Windows"},{value:"cr",description:"Carriage Return character only (\\r), used very rarely"},{value:"auto",description:`Maintain existing +(mixed values within one file are normalised by looking at what's used after the first line)`}]},filepath:{category:"Special",type:"path",description:"Specify the input filepath. This will be used to do parser inference.",cliName:"stdin-filepath",cliCategory:"Other",cliDescription:"Path to the file to pretend that stdin comes from."},insertPragma:{category:"Special",type:"boolean",default:!1,description:"Insert @format pragma into file's first docblock comment.",cliCategory:"Other"},parser:{category:"Global",type:"choice",default:void 0,description:"Which parser to use.",exception:u(e=>typeof e=="string"||typeof e=="function","exception"),choices:[{value:"flow",description:"Flow"},{value:"babel",description:"JavaScript"},{value:"babel-flow",description:"Flow"},{value:"babel-ts",description:"TypeScript"},{value:"typescript",description:"TypeScript"},{value:"acorn",description:"JavaScript"},{value:"espree",description:"JavaScript"},{value:"meriyah",description:"JavaScript"},{value:"css",description:"CSS"},{value:"less",description:"Less"},{value:"scss",description:"SCSS"},{value:"json",description:"JSON"},{value:"json5",description:"JSON5"},{value:"jsonc",description:"JSON with Comments"},{value:"json-stringify",description:"JSON.stringify"},{value:"graphql",description:"GraphQL"},{value:"markdown",description:"Markdown"},{value:"mdx",description:"MDX"},{value:"vue",description:"Vue"},{value:"yaml",description:"YAML"},{value:"glimmer",description:"Ember / Handlebars"},{value:"html",description:"HTML"},{value:"angular",description:"Angular"},{value:"lwc",description:"Lightning Web Components"}]},plugins:{type:"path",array:!0,default:[{value:[]}],category:"Global",description:"Add a plugin. Multiple plugins can be passed as separate `--plugin`s.",exception:u(e=>typeof e=="string"||typeof e=="object","exception"),cliName:"plugin",cliCategory:"Config"},printWidth:{category:"Global",type:"int",default:80,description:"The line length where Prettier will try wrap.",range:{start:0,end:1/0,step:1}},rangeEnd:{category:"Special",type:"int",default:1/0,range:{start:0,end:1/0,step:1},description:`Format code ending at a given character offset (exclusive). +The range will extend forwards to the end of the selected statement.`,cliCategory:"Editor"},rangeStart:{category:"Special",type:"int",default:0,range:{start:0,end:1/0,step:1},description:`Format code starting at a given character offset. +The range will extend backwards to the start of the first line containing the selected statement.`,cliCategory:"Editor"},requirePragma:{category:"Special",type:"boolean",default:!1,description:`Require either '@prettier' or '@format' to be present in the file's first docblock comment +in order for it to be formatted.`,cliCategory:"Other"},tabWidth:{type:"int",category:"Global",default:2,description:"Number of spaces per indentation level.",range:{start:0,end:1/0,step:1}},useTabs:{category:"Global",type:"boolean",default:!1,description:"Indent with tabs instead of spaces."},embeddedLanguageFormatting:{category:"Global",type:"choice",default:"auto",description:"Control how Prettier formats quoted code embedded in the file.",choices:[{value:"auto",description:"Format embedded code if Prettier can automatically identify it."},{value:"off",description:"Never automatically format embedded code."}]}},u(Td,"ot"),u(Iw,"Di"),u(zw,"li"),uD=u(e=>String(e).split(/[/\\]/u).pop(),"ci"),u(Ld,"fn"),u(Tw,"fi"),u(s2,"di"),cD=s2,Yr={key:u(e=>/^[$_a-zA-Z][$_a-zA-Z0-9]*$/.test(e)?e:JSON.stringify(e),"key"),value(e){if(e===null||typeof e!="object")return JSON.stringify(e);if(Array.isArray(e))return`[${e.map(r=>Yr.value(r)).join(", ")}]`;let t=Object.keys(e);return t.length===0?"{}":`{ ${t.map(r=>`${Yr.key(r)}: ${Yr.value(e[r])}`).join(", ")} }`},pair:u(({key:e,value:t})=>Yr.value({[e]:t}),"pair")},m0=Qa(qi(),1),dv=u((e,t,{descriptor:r})=>{let n=[`${m0.default.yellow(typeof e=="string"?r.key(e):r.pair(e))} is deprecated`];return t&&n.push(`we now treat it as ${m0.default.blue(typeof t=="string"?r.key(t):r.pair(t))}`),n.join("; ")+"."},"mn"),on=Qa(qi(),1),e1=Symbol.for("vnopts.VALUE_NOT_EXIST"),ro=Symbol.for("vnopts.VALUE_UNCHANGED"),t1=" ".repeat(2),pv=u((e,t,r)=>{let{text:n,list:a}=r.normalizeExpectedResult(r.schemas[e].expected(r)),o=[];return n&&o.push(Xc(e,t,n,r.descriptor)),a&&o.push([Xc(e,t,a.title,r.descriptor)].concat(a.values.map(i=>Md(i,r.loggerPrintWidth))).join(` +`)),Od(o,r.loggerPrintWidth)},"Cn"),u(Xc,"En"),u(Md,"gn"),u(Od,"yn"),g0=Qa(qi(),1),gl=[],r1=[],u(u2,"zt"),n1=u((e,t,{descriptor:r,logger:n,schemas:a})=>{let o=[`Ignored unknown option ${g0.default.yellow(r.pair({key:e,value:t}))}.`],i=Object.keys(a).sort().find(s=>u2(e,s)<3);i&&o.push(`Did you mean ${g0.default.blue(r.key(i))}?`),n.warn(o.join(" "))},"Dt"),dD=["default","expected","validate","deprecated","forward","redirect","overlap","preprocess","postprocess"],u(c2,"Fi"),rr=(v0=class{static create(e){return c2(this,e)}constructor(e){this.name=e.name}default(e){}expected(e){return"nothing"}validate(e,t){return!1}deprecated(e,t){return!1}forward(e,t){}redirect(e,t){}overlap(e,t,r){return e}preprocess(e,t){return e}postprocess(e,t){return ro}},u(v0,"x"),v0),u(Lw,"mi"),pD=(y0=class extends rr{constructor(e){super(e),this._sourceName=e.sourceName}expected(e){return e.schemas[this._sourceName].expected(e)}validate(e,t){return t.schemas[this._sourceName].validate(e,t)}redirect(e,t){return this._sourceName}},u(y0,"lt"),y0),fD=(b0=class extends rr{expected(){return"anything"}validate(){return!0}},u(b0,"ct"),b0),hD=(w0=class extends rr{constructor({valueSchema:e,name:t=e.name,...r}){super({...r,name:t}),this._valueSchema=e}expected(e){let{text:t,list:r}=e.normalizeExpectedResult(this._valueSchema.expected(e));return{text:t&&`an array of ${t}`,list:r&&{title:"an array of the following values",values:[{list:r}]}}}validate(e,t){if(!Array.isArray(e))return!1;let r=[];for(let n of e){let a=t.normalizeValidateResult(this._valueSchema.validate(n,t),n);a!==!0&&r.push(a.value)}return r.length===0?!0:{value:r}}deprecated(e,t){let r=[];for(let n of e){let a=t.normalizeDeprecatedResult(this._valueSchema.deprecated(n,t),n);a!==!1&&r.push(...a.map(({value:o})=>({value:[o]})))}return r}forward(e,t){let r=[];for(let n of e){let a=t.normalizeForwardResult(this._valueSchema.forward(n,t),n);r.push(...a.map(Qc))}return r}redirect(e,t){let r=[],n=[];for(let a of e){let o=t.normalizeRedirectResult(this._valueSchema.redirect(a,t),a);"remain"in o&&r.push(o.remain),n.push(...o.redirect.map(Qc))}return r.length===0?{redirect:n}:{redirect:n,remain:r}}overlap(e,t){return e.concat(t)}},u(w0,"ft"),w0),u(Qc,"vn"),mD=(D0=class extends rr{expected(){return"true or false"}validate(e){return typeof e=="boolean"}},u(D0,"dt"),D0),u(d2,"wn"),u(p2,"_n"),u(f2,"xn"),u(h2,"bn"),u(m2,"Nn"),u(g2,"On"),u(v2,"Sn"),u(e0,"Kt"),u(Pd,"Jt"),u(t0,"qt"),u(r0,"Xt"),u(Nd,"Bn"),u(dl,"pt"),u(n0,"Qt"),u(Mw,"hi"),gD=(E0=class extends rr{constructor(e){super(e),this._choices=p2(e.choices.map(t=>t&&typeof t=="object"?t:{value:t}),"value")}expected({descriptor:e}){let t=Array.from(this._choices.keys()).map(a=>this._choices.get(a)).filter(({hidden:a})=>!a).map(a=>a.value).sort(g2).map(e.value),r=t.slice(0,-2),n=t.slice(-2);return{text:r.concat(n.join(" or ")).join(", "),list:{title:"one of the following values",values:t}}}validate(e){return this._choices.has(e)}deprecated(e){let t=this._choices.get(e);return t&&t.deprecated?{value:e}:!1}forward(e){let t=this._choices.get(e);return t?t.forward:void 0}redirect(e){let t=this._choices.get(e);return t?t.redirect:void 0}},u(E0,"Ft"),E0),fv=(C0=class extends rr{expected(){return"a number"}validate(e,t){return typeof e=="number"}},u(C0,"mt"),C0),vD=(x0=class extends fv{expected(){return"an integer"}validate(e,t){return t.normalizeValidateResult(super.validate(e,t),e)===!0&&m2(e)}},u(x0,"ht"),x0),a1=(S0=class extends rr{expected(){return"a string"}validate(e){return typeof e=="string"}},u(S0,"je"),S0),hv=Yr,mv=n1,gv=pv,vv=dv,yD=(F0=class{constructor(e,t){let{logger:r=console,loggerPrintWidth:n=80,descriptor:a=hv,unknown:o=mv,invalid:i=gv,deprecated:s=vv,missing:c=u(()=>!1,"D"),required:d=u(()=>!1,"l"),preprocess:f=u(p=>p,"p"),postprocess:h=u(()=>ro,"f")}=t||{};this._utils={descriptor:a,logger:r||{warn:u(()=>{},"warn")},loggerPrintWidth:n,schemas:d2(e,"name"),normalizeDefaultResult:e0,normalizeExpectedResult:Pd,normalizeDeprecatedResult:r0,normalizeForwardResult:dl,normalizeRedirectResult:n0,normalizeValidateResult:t0},this._unknownHandler=o,this._invalidHandler=v2(i),this._deprecatedHandler=s,this._identifyMissing=(p,m)=>!(p in m)||c(p,m),this._identifyRequired=d,this._preprocess=f,this._postprocess=h,this.cleanHistory()}cleanHistory(){this._hasDeprecationWarned=f2()}normalize(e){let t={},r=[this._preprocess(e,this._utils)],n=u(()=>{for(;r.length!==0;){let a=r.shift(),o=this._applyNormalization(a,t);r.push(...o)}},"i");n();for(let a of Object.keys(this._utils.schemas)){let o=this._utils.schemas[a];if(!(a in t)){let i=e0(o.default(this._utils));"value"in i&&r.push({[a]:i.value})}}n();for(let a of Object.keys(this._utils.schemas)){if(!(a in t))continue;let o=this._utils.schemas[a],i=t[a],s=o.postprocess(i,this._utils);s!==ro&&(this._applyValidation(s,a,o),t[a]=s)}return this._applyPostprocess(t),this._applyRequiredCheck(t),t}_applyNormalization(e,t){let r=[],{knownKeys:n,unknownKeys:a}=this._partitionOptionKeys(e);for(let o of n){let i=this._utils.schemas[o],s=i.preprocess(e[o],this._utils);this._applyValidation(s,o,i);let c=u(({from:h,to:p})=>{r.push(typeof p=="string"?{[p]:h}:{[p.key]:p.value})},"D"),d=u(({value:h,redirectTo:p})=>{let m=r0(i.deprecated(h,this._utils),s,!0);if(m!==!1)if(m===!0)this._hasDeprecationWarned(o)||this._utils.logger.warn(this._deprecatedHandler(o,p,this._utils));else for(let{value:g}of m){let v={key:o,value:g};if(!this._hasDeprecationWarned(v)){let b=typeof p=="string"?{key:p,value:g}:p;this._utils.logger.warn(this._deprecatedHandler(v,b,this._utils))}}},"l");dl(i.forward(s,this._utils),s).forEach(c);let f=n0(i.redirect(s,this._utils),s);if(f.redirect.forEach(c),"remain"in f){let h=f.remain;t[o]=o in t?i.overlap(t[o],h,this._utils):h,d({value:h})}for(let{from:h,to:p}of f.redirect)d({value:h,redirectTo:p})}for(let o of a){let i=e[o];this._applyUnknownHandler(o,i,t,(s,c)=>{r.push({[s]:c})})}return r}_applyRequiredCheck(e){for(let t of Object.keys(this._utils.schemas))if(this._identifyMissing(t,e)&&this._identifyRequired(t))throw this._invalidHandler(t,e1,this._utils)}_partitionOptionKeys(e){let[t,r]=h2(Object.keys(e).filter(n=>!this._identifyMissing(n,e)),n=>n in this._utils.schemas);return{knownKeys:t,unknownKeys:r}}_applyValidation(e,t,r){let n=t0(r.validate(e,this._utils),e);if(n!==!0)throw this._invalidHandler(t,n.value,this._utils)}_applyUnknownHandler(e,t,r,n){let a=this._unknownHandler(e,t,this._utils);if(a)for(let o of Object.keys(a)){if(this._identifyMissing(o,a))continue;let i=a[o];o in this._utils.schemas?n(o,i):r[o]=i}}_applyPostprocess(e){let t=this._postprocess(e,this._utils);if(t!==ro){if(t.delete)for(let r of t.delete)delete e[r];if(t.override){let{knownKeys:r,unknownKeys:n}=this._partitionOptionKeys(t.override);for(let a of r){let o=t.override[a];this._applyValidation(o,a,this._utils.schemas[a]),e[a]=o}for(let a of n){let o=t.override[a];this._applyUnknownHandler(a,o,e,(i,s)=>{let c=this._utils.schemas[i];this._applyValidation(s,i,c),e[i]=s})}}}}},u(F0,"Et"),F0),u(y2,"Ci"),u(Ow,"gi"),u(Pw,"yi"),bD=y2,yv=u((e,t,r)=>{if(!(e&&t==null)){if(t.findLast)return t.findLast(r);for(let n=t.length-1;n>=0;n--){let a=t[n];if(r(a,n,t))return a}}},"Ai"),Ef=yv,u(ff,"tr"),u(Nw,"Rn"),u(hf,"Ct"),u(mf,"rr"),u($w,"Yn"),o1={astFormat:"estree",printer:{},originalText:void 0,locStart:null,locEnd:null},u(b2,"vi"),En=b2,wD=Qa(X2(),1),u(w2,"xi"),u(Hw,"bi"),za=w2,u(jw,"Mn"),u(Vw,"Ni"),u(D2,"Oi"),DD=D2,u(ui,"He"),u($d,"Vn"),u(gf,"ur"),u(E2,"Si"),ED=E2,u(C2,"Ti"),CD=C2,bv=u((e,t,r)=>{if(!(e&&t==null)){if(t.findLastIndex)return t.findLastIndex(r);for(let n=t.length-1;n>=0;n--){let a=t[n];if(r(a,n,t))return n}return-1}},"ki"),xD=bv,SD=u(({parser:e})=>e==="json"||e==="json5"||e==="jsonc"||e==="json-stringify","Li"),u(Uw,"Pi"),u(Hd,"Jn"),u(qw,"Ii"),u(es,"ir"),u(Ww,"Ri"),Cf=new Set(["JsonRoot","ObjectExpression","ArrayExpression","StringLiteral","NumericLiteral","BooleanLiteral","NullLiteral","UnaryExpression","TemplateLiteral"]),FD=new Set(["OperationDefinition","FragmentDefinition","VariableDefinition","TypeExtensionDefinition","ObjectTypeDefinition","FieldDefinition","DirectiveDefinition","EnumTypeDefinition","EnumValueDefinition","InputValueDefinition","InputObjectTypeDefinition","SchemaDefinition","OperationTypeDefinition","InterfaceTypeDefinition","UnionTypeDefinition","ScalarTypeDefinition"]),u(jd,"qn"),u(Gw,"Qn"),xf="\uFEFF",i1=Symbol("cursor"),u(vf,"nu"),u(Kw,"ji"),u(pl,"or"),u(Vd,"eu"),u(yf,"uu"),u(Ud,"tu"),u(qd,"sr"),u(x2,"iu"),u(S2,"ou"),u(F2,"su"),u(A2,"au"),u(k2,"Du"),k0={},Ui(k0,{builders:u(()=>wv,"builders"),printer:u(()=>Dv,"printer"),utils:u(()=>Ev,"utils")}),wv={join:kd,line:Kd,softline:lv,hardline:xr,literalline:Yd,group:Ad,conditionalGroup:jg,fill:Vg,lineSuffix:Zl,lineSuffixBoundary:ov,cursor:Er,breakParent:wo,ifBreak:Ug,trim:iv,indent:Ho,indentIfBreak:qg,align:pn,addAlignmentToDoc:_d,markAsRoot:$g,dedentToRoot:Ng,dedent:Hg,hardlineWithoutBreakParent:fl,literallineWithoutBreakParent:u0,label:Wg,concat:u(e=>e,"concat")},Dv={printDocToString:Vo},Ev={willBreak:Zg,traverseDoc:ts,findInDoc:Jl,mapDoc:jo,removeLines:Jg,stripTrailingHardline:Id,replaceEndOfLine:Xg,canBreak:Qg},Cv="3.4.2",_0={},Ui(_0,{addDanglingComment:u(()=>To,"addDanglingComment"),addLeadingComment:u(()=>rn,"addLeadingComment"),addTrailingComment:u(()=>nn,"addTrailingComment"),getAlignmentSize:u(()=>as,"getAlignmentSize"),getIndentSize:u(()=>xv,"getIndentSize"),getMaxContinuousCount:u(()=>Sv,"getMaxContinuousCount"),getNextNonSpaceNonCommentCharacter:u(()=>Fv,"getNextNonSpaceNonCommentCharacter"),getNextNonSpaceNonCommentCharacterIndex:u(()=>$2,"getNextNonSpaceNonCommentCharacterIndex"),getPreferredQuote:u(()=>Av,"getPreferredQuote"),getStringWidth:u(()=>rs,"getStringWidth"),hasNewline:u(()=>or,"hasNewline"),hasNewlineInRange:u(()=>kv,"hasNewlineInRange"),hasSpaces:u(()=>_v,"hasSpaces"),isNextLineEmpty:u(()=>j2,"isNextLineEmpty"),isNextLineEmptyAfterIndex:u(()=>ss,"isNextLineEmptyAfterIndex"),isPreviousLineEmpty:u(()=>H2,"isPreviousLineEmpty"),makeString:u(()=>Bv,"makeString"),skip:u(()=>In,"skip"),skipEverythingButNewLine:u(()=>Jd,"skipEverythingButNewLine"),skipInlineComment:u(()=>is,"skipInlineComment"),skipNewline:u(()=>Rr,"skipNewline"),skipSpaces:u(()=>lr,"skipSpaces"),skipToLineEnd:u(()=>Zd,"skipToLineEnd"),skipTrailingComment:u(()=>ls,"skipTrailingComment"),skipWhitespace:u(()=>cv,"skipWhitespace")}),u(_2,"Ui"),is=_2,u(B2,"Vi"),ls=B2,u(R2,"zi"),Ys=R2,u(I2,"Gi"),ss=I2,u(z2,"Ki"),xv=z2,u(Yw,"Dr"),u(T2,"Ji"),Sv=T2,u(L2,"qi"),Fv=L2,Do="'",l1='"',u(M2,"Xi"),Av=M2,u(O2,"Qi"),kv=O2,u(P2,"Zi"),_v=P2,u(N2,"eo"),Bv=N2,u(Zw,"to"),u($2,"ro"),u(Jw,"no"),u(H2,"uo"),u(Xw,"io"),u(j2,"oo"),u(pr,"de"),s1=pr(qd),u(Wd,"gu"),u(V2,"so"),Rv=pr(Td,0),Iv={parse:pr(x2),formatAST:pr(S2),formatDoc:pr(F2),printToDoc:pr(A2),printDocToString:pr(k2)},AD=i0});function kD(e){for(var t=[],r=1;r{u(kD,"dedent")}),_D={};Aa(_D,{formatter:()=>BD});var zv,BD,rA=z(()=>{zv=Ce(Bs(),1),QF(),eA(),tA(),BD=(0,zv.default)(2)(async(e,t)=>e===!1?t:e==="dedent"||e===!0?kD(t):(await AD.format(t,{parser:e,plugins:[lw],htmlWhitespaceSensitivity:"ignore"})).trim())}),u1,c1,nA=z(()=>{u1=u(function(e){return e.reduce(function(t,r){var n=r[0],a=r[1];return t[n]=a,t},{})},"fromEntries"),c1=typeof window<"u"&&window.document&&window.document.createElement?l.useLayoutEffect:l.useEffect}),Te,Ke,Ye,Le,us,ta,un,ra,RD,Sf,Wn,ID,d1,Ff,Tv,Lv,Mv,Ov,Pv,Nv,$v,Hv,jv,zD,Xe=z(()=>{Te="top",Ke="bottom",Ye="right",Le="left",us="auto",ta=[Te,Ke,Ye,Le],un="start",ra="end",RD="clippingParents",Sf="viewport",Wn="popper",ID="reference",d1=ta.reduce(function(e,t){return e.concat([t+"-"+un,t+"-"+ra])},[]),Ff=[].concat(ta,[us]).reduce(function(e,t){return e.concat([t,t+"-"+un,t+"-"+ra])},[]),Tv="beforeRead",Lv="read",Mv="afterRead",Ov="beforeMain",Pv="main",Nv="afterMain",$v="beforeWrite",Hv="write",jv="afterWrite",zD=[Tv,Lv,Mv,Ov,Pv,Nv,$v,Hv,jv]});function yt(e){return e?(e.nodeName||"").toLowerCase():null}var Cn=z(()=>{u(yt,"getNodeName")});function He(e){if(e==null)return window;if(e.toString()!=="[object Window]"){var t=e.ownerDocument;return t&&t.defaultView||window}return e}var Yt=z(()=>{u(He,"getWindow")});function Ir(e){var t=He(e).Element;return e instanceof t||e instanceof Element}function Ge(e){var t=He(e).HTMLElement;return e instanceof t||e instanceof HTMLElement}function Zs(e){if(typeof ShadowRoot>"u")return!1;var t=He(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}var Qe=z(()=>{Yt(),u(Ir,"isElement"),u(Ge,"isHTMLElement"),u(Zs,"isShadowRoot")});function Vv(e){var t=e.state;Object.keys(t.elements).forEach(function(r){var n=t.styles[r]||{},a=t.attributes[r]||{},o=t.elements[r];!Ge(o)||!yt(o)||(Object.assign(o.style,n),Object.keys(a).forEach(function(i){var s=a[i];s===!1?o.removeAttribute(i):o.setAttribute(i,s===!0?"":s)}))})}function Uv(e){var t=e.state,r={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,r.popper),t.styles=r,t.elements.arrow&&Object.assign(t.elements.arrow.style,r.arrow),function(){Object.keys(t.elements).forEach(function(n){var a=t.elements[n],o=t.attributes[n]||{},i=Object.keys(t.styles.hasOwnProperty(n)?t.styles[n]:r[n]),s=i.reduce(function(c,d){return c[d]="",c},{});!Ge(a)||!yt(a)||(Object.assign(a.style,s),Object.keys(o).forEach(function(c){a.removeAttribute(c)}))})}}var TD,aA=z(()=>{Cn(),Qe(),u(Vv,"applyStyles"),u(Uv,"effect"),TD={name:"applyStyles",enabled:!0,phase:"write",fn:Vv,effect:Uv,requires:["computeStyles"]}});function ht(e){return e.split("-")[0]}var xn=z(()=>{u(ht,"getBasePlacement")}),Sr,Uo,hn,Sn=z(()=>{Sr=Math.max,Uo=Math.min,hn=Math.round});function cs(){var e=navigator.userAgentData;return e!=null&&e.brands&&Array.isArray(e.brands)?e.brands.map(function(t){return t.brand+"/"+t.version}).join(" "):navigator.userAgent}var LD=z(()=>{u(cs,"getUAString")});function Af(){return!/^((?!chrome|android).)*safari/i.test(cs())}var MD=z(()=>{LD(),u(Af,"isLayoutViewport")});function mn(e,t,r){t===void 0&&(t=!1),r===void 0&&(r=!1);var n=e.getBoundingClientRect(),a=1,o=1;t&&Ge(e)&&(a=e.offsetWidth>0&&hn(n.width)/e.offsetWidth||1,o=e.offsetHeight>0&&hn(n.height)/e.offsetHeight||1);var i=Ir(e)?He(e):window,s=i.visualViewport,c=!Af()&&r,d=(n.left+(c&&s?s.offsetLeft:0))/a,f=(n.top+(c&&s?s.offsetTop:0))/o,h=n.width/a,p=n.height/o;return{width:h,height:p,top:f,right:d+h,bottom:f+p,left:d,x:d,y:f}}var pi=z(()=>{Qe(),Sn(),Yt(),MD(),u(mn,"getBoundingClientRect")});function Js(e){var t=mn(e),r=e.offsetWidth,n=e.offsetHeight;return Math.abs(t.width-r)<=1&&(r=t.width),Math.abs(t.height-n)<=1&&(n=t.height),{x:e.offsetLeft,y:e.offsetTop,width:r,height:n}}var kf=z(()=>{pi(),u(Js,"getLayoutRect")});function _f(e,t){var r=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(r&&Zs(r)){var n=t;do{if(n&&e.isSameNode(n))return!0;n=n.parentNode||n.host}while(n)}return!1}var OD=z(()=>{Qe(),u(_f,"contains")});function Kt(e){return He(e).getComputedStyle(e)}var fi=z(()=>{Yt(),u(Kt,"getComputedStyle")});function PD(e){return["table","td","th"].indexOf(yt(e))>=0}var oA=z(()=>{Cn(),u(PD,"isTableElement")});function ur(e){return((Ir(e)?e.ownerDocument:e.document)||window.document).documentElement}var Lr=z(()=>{Qe(),u(ur,"getDocumentElement")});function hi(e){return yt(e)==="html"?e:e.assignedSlot||e.parentNode||(Zs(e)?e.host:null)||ur(e)}var Xs=z(()=>{Cn(),Lr(),Qe(),u(hi,"getParentNode")});function p1(e){return!Ge(e)||Kt(e).position==="fixed"?null:e.offsetParent}function ND(e){var t=/firefox/i.test(cs()),r=/Trident/i.test(cs());if(r&&Ge(e)){var n=Kt(e);if(n.position==="fixed")return null}var a=hi(e);for(Zs(a)&&(a=a.host);Ge(a)&&["html","body"].indexOf(yt(a))<0;){var o=Kt(a);if(o.transform!=="none"||o.perspective!=="none"||o.contain==="paint"||["transform","perspective"].indexOf(o.willChange)!==-1||t&&o.willChange==="filter"||t&&o.filter&&o.filter!=="none")return a;a=a.parentNode}return null}function Ta(e){for(var t=He(e),r=p1(e);r&&PD(r)&&Kt(r).position==="static";)r=p1(r);return r&&(yt(r)==="html"||yt(r)==="body"&&Kt(r).position==="static")?t:r||ND(e)||t}var mi=z(()=>{Yt(),Cn(),fi(),Qe(),oA(),Xs(),LD(),u(p1,"getTrueOffsetParent"),u(ND,"getContainingBlock"),u(Ta,"getOffsetParent")});function Qs(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}var Bf=z(()=>{u(Qs,"getMainAxisFromPlacement")});function na(e,t,r){return Sr(e,Uo(t,r))}function $D(e,t,r){var n=na(e,t,r);return n>r?r:n}var HD=z(()=>{Sn(),u(na,"within"),u($D,"withinMaxClamp")});function Rf(){return{top:0,right:0,bottom:0,left:0}}var jD=z(()=>{u(Rf,"getFreshSideObject")});function If(e){return Object.assign({},Rf(),e)}var VD=z(()=>{jD(),u(If,"mergePaddingObject")});function zf(e,t){return t.reduce(function(r,n){return r[n]=e,r},{})}var UD=z(()=>{u(zf,"expandToHashMap")});function qv(e){var t,r=e.state,n=e.name,a=e.options,o=r.elements.arrow,i=r.modifiersData.popperOffsets,s=ht(r.placement),c=Qs(s),d=[Le,Ye].indexOf(s)>=0,f=d?"height":"width";if(!(!o||!i)){var h=qD(a.padding,r),p=Js(o),m=c==="y"?Te:Le,g=c==="y"?Ke:Ye,v=r.rects.reference[f]+r.rects.reference[c]-i[c]-r.rects.popper[f],b=i[c]-r.rects.reference[c],C=Ta(o),E=C?c==="y"?C.clientHeight||0:C.clientWidth||0:0,D=v/2-b/2,w=h[m],x=E-p[f]-h[g],S=E/2-p[f]/2+D,F=na(w,S,x),A=c;r.modifiersData[n]=(t={},t[A]=F,t.centerOffset=F-S,t)}}function Wv(e){var t=e.state,r=e.options,n=r.element,a=n===void 0?"[data-popper-arrow]":n;a!=null&&(typeof a=="string"&&(a=t.elements.popper.querySelector(a),!a)||_f(t.elements.popper,a)&&(t.elements.arrow=a))}var qD,WD,iA=z(()=>{xn(),kf(),OD(),mi(),Bf(),HD(),VD(),UD(),Xe(),qD=u(function(e,t){return e=typeof e=="function"?e(Object.assign({},t.rects,{placement:t.placement})):e,If(typeof e!="number"?e:zf(e,ta))},"toPaddingObject"),u(qv,"arrow"),u(Wv,"effect"),WD={name:"arrow",enabled:!0,phase:"main",fn:qv,effect:Wv,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]}});function gn(e){return e.split("-")[1]}var gi=z(()=>{u(gn,"getVariation")});function GD(e,t){var r=e.x,n=e.y,a=t.devicePixelRatio||1;return{x:hn(r*a)/a||0,y:hn(n*a)/a||0}}function f1(e){var t,r=e.popper,n=e.popperRect,a=e.placement,o=e.variation,i=e.offsets,s=e.position,c=e.gpuAcceleration,d=e.adaptive,f=e.roundOffsets,h=e.isFixed,p=i.x,m=p===void 0?0:p,g=i.y,v=g===void 0?0:g,b=typeof f=="function"?f({x:m,y:v}):{x:m,y:v};m=b.x,v=b.y;var C=i.hasOwnProperty("x"),E=i.hasOwnProperty("y"),D=Le,w=Te,x=window;if(d){var S=Ta(r),F="clientHeight",A="clientWidth";if(S===He(r)&&(S=ur(r),Kt(S).position!=="static"&&s==="absolute"&&(F="scrollHeight",A="scrollWidth")),S=S,a===Te||(a===Le||a===Ye)&&o===ra){w=Ke;var _=h&&S===x&&x.visualViewport?x.visualViewport.height:S[F];v-=_-n.height,v*=c?1:-1}if(a===Le||(a===Te||a===Ke)&&o===ra){D=Ye;var R=h&&S===x&&x.visualViewport?x.visualViewport.width:S[A];m-=R-n.width,m*=c?1:-1}}var I=Object.assign({position:s},d&&KD),T=f===!0?GD({x:m,y:v},He(r)):{x:m,y:v};if(m=T.x,v=T.y,c){var L;return Object.assign({},I,(L={},L[w]=E?"0":"",L[D]=C?"0":"",L.transform=(x.devicePixelRatio||1)<=1?"translate("+m+"px, "+v+"px)":"translate3d("+m+"px, "+v+"px, 0)",L))}return Object.assign({},I,(t={},t[w]=E?v+"px":"",t[D]=C?m+"px":"",t.transform="",t))}function Gv(e){var t=e.state,r=e.options,n=r.gpuAcceleration,a=n===void 0?!0:n,o=r.adaptive,i=o===void 0?!0:o,s=r.roundOffsets,c=s===void 0?!0:s,d={placement:ht(t.placement),variation:gn(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:a,isFixed:t.options.strategy==="fixed"};t.modifiersData.popperOffsets!=null&&(t.styles.popper=Object.assign({},t.styles.popper,f1(Object.assign({},d,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:i,roundOffsets:c})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,f1(Object.assign({},d,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:c})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}var KD,YD,lA=z(()=>{Xe(),mi(),Yt(),Lr(),fi(),xn(),gi(),Sn(),KD={top:"auto",right:"auto",bottom:"auto",left:"auto"},u(GD,"roundOffsetsByDPR"),u(f1,"mapToStyles"),u(Gv,"computeStyles"),YD={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:Gv,data:{}}});function Kv(e){var t=e.state,r=e.instance,n=e.options,a=n.scroll,o=a===void 0?!0:a,i=n.resize,s=i===void 0?!0:i,c=He(t.elements.popper),d=[].concat(t.scrollParents.reference,t.scrollParents.popper);return o&&d.forEach(function(f){f.addEventListener("scroll",r.update,Eo)}),s&&c.addEventListener("resize",r.update,Eo),function(){o&&d.forEach(function(f){f.removeEventListener("scroll",r.update,Eo)}),s&&c.removeEventListener("resize",r.update,Eo)}}var Eo,ZD,sA=z(()=>{Yt(),Eo={passive:!0},u(Kv,"effect"),ZD={name:"eventListeners",enabled:!0,phase:"write",fn:u(function(){},"fn"),effect:Kv,data:{}}});function Lo(e){return e.replace(/left|right|bottom|top/g,function(t){return JD[t]})}var JD,uA=z(()=>{JD={left:"right",right:"left",bottom:"top",top:"bottom"},u(Lo,"getOppositePlacement")});function h1(e){return e.replace(/start|end/g,function(t){return XD[t]})}var XD,cA=z(()=>{XD={start:"end",end:"start"},u(h1,"getOppositeVariationPlacement")});function eu(e){var t=He(e),r=t.pageXOffset,n=t.pageYOffset;return{scrollLeft:r,scrollTop:n}}var Tf=z(()=>{Yt(),u(eu,"getWindowScroll")});function tu(e){return mn(ur(e)).left+eu(e).scrollLeft}var Lf=z(()=>{pi(),Lr(),Tf(),u(tu,"getWindowScrollBarX")});function QD(e,t){var r=He(e),n=ur(e),a=r.visualViewport,o=n.clientWidth,i=n.clientHeight,s=0,c=0;if(a){o=a.width,i=a.height;var d=Af();(d||!d&&t==="fixed")&&(s=a.offsetLeft,c=a.offsetTop)}return{width:o,height:i,x:s+tu(e),y:c}}var dA=z(()=>{Yt(),Lr(),Lf(),MD(),u(QD,"getViewportRect")});function e6(e){var t,r=ur(e),n=eu(e),a=(t=e.ownerDocument)==null?void 0:t.body,o=Sr(r.scrollWidth,r.clientWidth,a?a.scrollWidth:0,a?a.clientWidth:0),i=Sr(r.scrollHeight,r.clientHeight,a?a.scrollHeight:0,a?a.clientHeight:0),s=-n.scrollLeft+tu(e),c=-n.scrollTop;return Kt(a||r).direction==="rtl"&&(s+=Sr(r.clientWidth,a?a.clientWidth:0)-o),{width:o,height:i,x:s,y:c}}var pA=z(()=>{Lr(),fi(),Lf(),Tf(),Sn(),u(e6,"getDocumentRect")});function ru(e){var t=Kt(e),r=t.overflow,n=t.overflowX,a=t.overflowY;return/auto|scroll|overlay|hidden/.test(r+a+n)}var Mf=z(()=>{fi(),u(ru,"isScrollParent")});function Of(e){return["html","body","#document"].indexOf(yt(e))>=0?e.ownerDocument.body:Ge(e)&&ru(e)?e:Of(hi(e))}var fA=z(()=>{Xs(),Mf(),Cn(),Qe(),u(Of,"getScrollParent")});function aa(e,t){var r;t===void 0&&(t=[]);var n=Of(e),a=n===((r=e.ownerDocument)==null?void 0:r.body),o=He(n),i=a?[o].concat(o.visualViewport||[],ru(n)?n:[]):n,s=t.concat(i);return a?s:s.concat(aa(hi(i)))}var t6=z(()=>{fA(),Xs(),Yt(),Mf(),u(aa,"listScrollParents")});function ds(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}var r6=z(()=>{u(ds,"rectToClientRect")});function n6(e,t){var r=mn(e,!1,t==="fixed");return r.top=r.top+e.clientTop,r.left=r.left+e.clientLeft,r.bottom=r.top+e.clientHeight,r.right=r.left+e.clientWidth,r.width=e.clientWidth,r.height=e.clientHeight,r.x=r.left,r.y=r.top,r}function m1(e,t,r){return t===Sf?ds(QD(e,r)):Ir(t)?n6(t,r):ds(e6(ur(e)))}function a6(e){var t=aa(hi(e)),r=["absolute","fixed"].indexOf(Kt(e).position)>=0,n=r&&Ge(e)?Ta(e):e;return Ir(n)?t.filter(function(a){return Ir(a)&&_f(a,n)&&yt(a)!=="body"}):[]}function o6(e,t,r,n){var a=t==="clippingParents"?a6(e):[].concat(t),o=[].concat(a,[r]),i=o[0],s=o.reduce(function(c,d){var f=m1(e,d,n);return c.top=Sr(f.top,c.top),c.right=Uo(f.right,c.right),c.bottom=Uo(f.bottom,c.bottom),c.left=Sr(f.left,c.left),c},m1(e,i,n));return s.width=s.right-s.left,s.height=s.bottom-s.top,s.x=s.left,s.y=s.top,s}var hA=z(()=>{Xe(),dA(),pA(),t6(),mi(),Lr(),fi(),Qe(),pi(),Xs(),OD(),Cn(),r6(),Sn(),u(n6,"getInnerBoundingClientRect"),u(m1,"getClientRectFromMixedType"),u(a6,"getClippingParents"),u(o6,"getClippingRect")});function Pf(e){var t=e.reference,r=e.element,n=e.placement,a=n?ht(n):null,o=n?gn(n):null,i=t.x+t.width/2-r.width/2,s=t.y+t.height/2-r.height/2,c;switch(a){case Te:c={x:i,y:t.y-r.height};break;case Ke:c={x:i,y:t.y+t.height};break;case Ye:c={x:t.x+t.width,y:s};break;case Le:c={x:t.x-r.width,y:s};break;default:c={x:t.x,y:t.y}}var d=a?Qs(a):null;if(d!=null){var f=d==="y"?"height":"width";switch(o){case un:c[d]=c[d]-(t[f]/2-r[f]/2);break;case ra:c[d]=c[d]+(t[f]/2-r[f]/2);break}}return c}var i6=z(()=>{xn(),gi(),Bf(),Xe(),u(Pf,"computeOffsets")});function ba(e,t){t===void 0&&(t={});var r=t,n=r.placement,a=n===void 0?e.placement:n,o=r.strategy,i=o===void 0?e.strategy:o,s=r.boundary,c=s===void 0?RD:s,d=r.rootBoundary,f=d===void 0?Sf:d,h=r.elementContext,p=h===void 0?Wn:h,m=r.altBoundary,g=m===void 0?!1:m,v=r.padding,b=v===void 0?0:v,C=If(typeof b!="number"?b:zf(b,ta)),E=p===Wn?ID:Wn,D=e.rects.popper,w=e.elements[g?E:p],x=o6(Ir(w)?w:w.contextElement||ur(e.elements.popper),c,f,i),S=mn(e.elements.reference),F=Pf({reference:S,element:D,placement:a}),A=ds(Object.assign({},D,F)),_=p===Wn?A:S,R={top:x.top-_.top+C.top,bottom:_.bottom-x.bottom+C.bottom,left:x.left-_.left+C.left,right:_.right-x.right+C.right},I=e.modifiersData.offset;if(p===Wn&&I){var T=I[a];Object.keys(R).forEach(function(L){var P=[Ye,Ke].indexOf(L)>=0?1:-1,M=[Te,Ke].indexOf(L)>=0?"y":"x";R[L]+=T[M]*P})}return R}var nu=z(()=>{hA(),Lr(),pi(),i6(),r6(),Xe(),Qe(),VD(),UD(),u(ba,"detectOverflow")});function l6(e,t){t===void 0&&(t={});var r=t,n=r.placement,a=r.boundary,o=r.rootBoundary,i=r.padding,s=r.flipVariations,c=r.allowedAutoPlacements,d=c===void 0?Ff:c,f=gn(n),h=f?s?d1:d1.filter(function(g){return gn(g)===f}):ta,p=h.filter(function(g){return d.indexOf(g)>=0});p.length===0&&(p=h);var m=p.reduce(function(g,v){return g[v]=ba(e,{placement:v,boundary:a,rootBoundary:o,padding:i})[ht(v)],g},{});return Object.keys(m).sort(function(g,v){return m[g]-m[v]})}var mA=z(()=>{gi(),Xe(),nu(),xn(),u(l6,"computeAutoPlacement")});function s6(e){if(ht(e)===us)return[];var t=Lo(e);return[h1(e),t,h1(t)]}function Yv(e){var t=e.state,r=e.options,n=e.name;if(!t.modifiersData[n]._skip){for(var a=r.mainAxis,o=a===void 0?!0:a,i=r.altAxis,s=i===void 0?!0:i,c=r.fallbackPlacements,d=r.padding,f=r.boundary,h=r.rootBoundary,p=r.altBoundary,m=r.flipVariations,g=m===void 0?!0:m,v=r.allowedAutoPlacements,b=t.options.placement,C=ht(b),E=C===b,D=c||(E||!g?[Lo(b)]:s6(b)),w=[b].concat(D).reduce(function(le,H){return le.concat(ht(H)===us?l6(t,{placement:H,boundary:f,rootBoundary:h,padding:d,flipVariations:g,allowedAutoPlacements:v}):H)},[]),x=t.rects.reference,S=t.rects.popper,F=new Map,A=!0,_=w[0],R=0;R=0,M=P?"width":"height",N=ba(t,{placement:I,boundary:f,rootBoundary:h,altBoundary:p,padding:d}),q=P?L?Ye:Le:L?Ke:Te;x[M]>S[M]&&(q=Lo(q));var W=Lo(q),G=[];if(o&&G.push(N[T]<=0),s&&G.push(N[q]<=0,N[W]<=0),G.every(function(le){return le})){_=I,A=!1;break}F.set(I,G)}if(A)for(var Z=g?3:1,te=u(function(le){var H=w.find(function(J){var re=F.get(J);if(re)return re.slice(0,le).every(function(fe){return fe})});if(H)return _=H,"break"},"_loop"),ne=Z;ne>0;ne--){var X=te(ne);if(X==="break")break}t.placement!==_&&(t.modifiersData[n]._skip=!0,t.placement=_,t.reset=!0)}}var u6,gA=z(()=>{uA(),xn(),cA(),nu(),mA(),Xe(),gi(),u(s6,"getExpandedFallbackPlacements"),u(Yv,"flip"),u6={name:"flip",enabled:!0,phase:"main",fn:Yv,requiresIfExists:["offset"],data:{_skip:!1}}});function g1(e,t,r){return r===void 0&&(r={x:0,y:0}),{top:e.top-t.height-r.y,right:e.right-t.width+r.x,bottom:e.bottom-t.height+r.y,left:e.left-t.width-r.x}}function v1(e){return[Te,Ye,Ke,Le].some(function(t){return e[t]>=0})}function Zv(e){var t=e.state,r=e.name,n=t.rects.reference,a=t.rects.popper,o=t.modifiersData.preventOverflow,i=ba(t,{elementContext:"reference"}),s=ba(t,{altBoundary:!0}),c=g1(i,n),d=g1(s,a,o),f=v1(c),h=v1(d);t.modifiersData[r]={referenceClippingOffsets:c,popperEscapeOffsets:d,isReferenceHidden:f,hasPopperEscaped:h},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":f,"data-popper-escaped":h})}var c6,vA=z(()=>{Xe(),nu(),u(g1,"getSideOffsets"),u(v1,"isAnySideFullyClipped"),u(Zv,"hide"),c6={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:Zv}});function d6(e,t,r){var n=ht(e),a=[Le,Te].indexOf(n)>=0?-1:1,o=typeof r=="function"?r(Object.assign({},t,{placement:e})):r,i=o[0],s=o[1];return i=i||0,s=(s||0)*a,[Le,Ye].indexOf(n)>=0?{x:s,y:i}:{x:i,y:s}}function Jv(e){var t=e.state,r=e.options,n=e.name,a=r.offset,o=a===void 0?[0,0]:a,i=Ff.reduce(function(f,h){return f[h]=d6(h,t.rects,o),f},{}),s=i[t.placement],c=s.x,d=s.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=c,t.modifiersData.popperOffsets.y+=d),t.modifiersData[n]=i}var p6,yA=z(()=>{xn(),Xe(),u(d6,"distanceAndSkiddingToXY"),u(Jv,"offset"),p6={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:Jv}});function Xv(e){var t=e.state,r=e.name;t.modifiersData[r]=Pf({reference:t.rects.reference,element:t.rects.popper,placement:t.placement})}var f6,bA=z(()=>{i6(),u(Xv,"popperOffsets"),f6={name:"popperOffsets",enabled:!0,phase:"read",fn:Xv,data:{}}});function h6(e){return e==="x"?"y":"x"}var wA=z(()=>{u(h6,"getAltAxis")});function Qv(e){var t=e.state,r=e.options,n=e.name,a=r.mainAxis,o=a===void 0?!0:a,i=r.altAxis,s=i===void 0?!1:i,c=r.boundary,d=r.rootBoundary,f=r.altBoundary,h=r.padding,p=r.tether,m=p===void 0?!0:p,g=r.tetherOffset,v=g===void 0?0:g,b=ba(t,{boundary:c,rootBoundary:d,padding:h,altBoundary:f}),C=ht(t.placement),E=gn(t.placement),D=!E,w=Qs(C),x=h6(w),S=t.modifiersData.popperOffsets,F=t.rects.reference,A=t.rects.popper,_=typeof v=="function"?v(Object.assign({},t.rects,{placement:t.placement})):v,R=typeof _=="number"?{mainAxis:_,altAxis:_}:Object.assign({mainAxis:0,altAxis:0},_),I=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,T={x:0,y:0};if(S){if(o){var L,P=w==="y"?Te:Le,M=w==="y"?Ke:Ye,N=w==="y"?"height":"width",q=S[w],W=q+b[P],G=q-b[M],Z=m?-A[N]/2:0,te=E===un?F[N]:A[N],ne=E===un?-A[N]:-F[N],X=t.elements.arrow,le=m&&X?Js(X):{width:0,height:0},H=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:Rf(),J=H[P],re=H[M],fe=na(0,F[N],le[N]),xe=D?F[N]/2-Z-fe-J-R.mainAxis:te-fe-J-R.mainAxis,Ct=D?-F[N]/2+Z+fe+re+R.mainAxis:ne+fe+re+R.mainAxis,je=t.elements.arrow&&Ta(t.elements.arrow),tt=je?w==="y"?je.clientTop||0:je.clientLeft||0:0,$=(L=I==null?void 0:I[w])!=null?L:0,rt=q+xe-$-tt,xt=q+Ct-$,Pr=na(m?Uo(W,rt):W,q,m?Sr(G,xt):G);S[w]=Pr,T[w]=Pr-q}if(s){var kn,St=w==="x"?Te:Le,yi=w==="x"?Ke:Ye,Be=S[x],Nr=x==="y"?"height":"width",Ft=Be+b[St],_n=Be-b[yi],At=[Te,Le].indexOf(C)!==-1,Bn=(kn=I==null?void 0:I[x])!=null?kn:0,kt=At?Ft:Be-F[Nr]-A[Nr]-Bn+R.altAxis,Se=At?Be+F[Nr]+A[Nr]-Bn-R.altAxis:_n,nt=m&&At?$D(kt,Be,Se):na(m?kt:Ft,Be,m?Se:_n);S[x]=nt,T[x]=nt-Be}t.modifiersData[n]=T}}var m6,DA=z(()=>{Xe(),xn(),Bf(),wA(),HD(),kf(),mi(),nu(),gi(),jD(),Sn(),u(Qv,"preventOverflow"),m6={name:"preventOverflow",enabled:!0,phase:"main",fn:Qv,requiresIfExists:["offset"]}}),g6=z(()=>{});function v6(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}var EA=z(()=>{u(v6,"getHTMLElementScroll")});function y6(e){return e===He(e)||!Ge(e)?eu(e):v6(e)}var CA=z(()=>{Tf(),Yt(),Qe(),EA(),u(y6,"getNodeScroll")});function b6(e){var t=e.getBoundingClientRect(),r=hn(t.width)/e.offsetWidth||1,n=hn(t.height)/e.offsetHeight||1;return r!==1||n!==1}function w6(e,t,r){r===void 0&&(r=!1);var n=Ge(t),a=Ge(t)&&b6(t),o=ur(t),i=mn(e,a,r),s={scrollLeft:0,scrollTop:0},c={x:0,y:0};return(n||!n&&!r)&&((yt(t)!=="body"||ru(o))&&(s=y6(t)),Ge(t)?(c=mn(t,!0),c.x+=t.clientLeft,c.y+=t.clientTop):o&&(c.x=tu(o))),{x:i.left+s.scrollLeft-c.x,y:i.top+s.scrollTop-c.y,width:i.width,height:i.height}}var xA=z(()=>{pi(),CA(),Cn(),Qe(),Lf(),Lr(),Mf(),Sn(),u(b6,"isElementScaled"),u(w6,"getCompositeRect")});function D6(e){var t=new Map,r=new Set,n=[];e.forEach(function(o){t.set(o.name,o)});function a(o){r.add(o.name);var i=[].concat(o.requires||[],o.requiresIfExists||[]);i.forEach(function(s){if(!r.has(s)){var c=t.get(s);c&&a(c)}}),n.push(o)}return u(a,"sort"),e.forEach(function(o){r.has(o.name)||a(o)}),n}function E6(e){var t=D6(e);return zD.reduce(function(r,n){return r.concat(t.filter(function(a){return a.phase===n}))},[])}var SA=z(()=>{Xe(),u(D6,"order"),u(E6,"orderModifiers")});function C6(e){var t;return function(){return t||(t=new Promise(function(r){Promise.resolve().then(function(){t=void 0,r(e())})})),t}}var FA=z(()=>{u(C6,"debounce")});function x6(e){var t=e.reduce(function(r,n){var a=r[n.name];return r[n.name]=a?Object.assign({},a,n,{options:Object.assign({},a.options,n.options),data:Object.assign({},a.data,n.data)}):n,r},{});return Object.keys(t).map(function(r){return t[r]})}var AA=z(()=>{u(x6,"mergeByName")});function y1(){for(var e=arguments.length,t=new Array(e),r=0;r{xA(),kf(),t6(),mi(),SA(),FA(),AA(),Qe(),b1={placement:"bottom",modifiers:[],strategy:"absolute"},u(y1,"areValidElements"),u(S6,"popperGenerator")}),e4,F6,_A=z(()=>{kA(),sA(),bA(),lA(),aA(),yA(),gA(),DA(),iA(),vA(),g6(),e4=[ZD,f6,YD,TD,p6,u6,m6,WD,c6],F6=S6({defaultModifiers:e4})}),BA=z(()=>{Xe(),g6(),_A()}),RA=U((e,t)=>{var r=typeof Element<"u",n=typeof Map=="function",a=typeof Set=="function",o=typeof ArrayBuffer=="function"&&!!ArrayBuffer.isView;function i(s,c){if(s===c)return!0;if(s&&c&&typeof s=="object"&&typeof c=="object"){if(s.constructor!==c.constructor)return!1;var d,f,h;if(Array.isArray(s)){if(d=s.length,d!=c.length)return!1;for(f=d;f--!==0;)if(!i(s[f],c[f]))return!1;return!0}var p;if(n&&s instanceof Map&&c instanceof Map){if(s.size!==c.size)return!1;for(p=s.entries();!(f=p.next()).done;)if(!c.has(f.value[0]))return!1;for(p=s.entries();!(f=p.next()).done;)if(!i(f.value[1],c.get(f.value[0])))return!1;return!0}if(a&&s instanceof Set&&c instanceof Set){if(s.size!==c.size)return!1;for(p=s.entries();!(f=p.next()).done;)if(!c.has(f.value[0]))return!1;return!0}if(o&&ArrayBuffer.isView(s)&&ArrayBuffer.isView(c)){if(d=s.length,d!=c.length)return!1;for(f=d;f--!==0;)if(s[f]!==c[f])return!1;return!0}if(s.constructor===RegExp)return s.source===c.source&&s.flags===c.flags;if(s.valueOf!==Object.prototype.valueOf&&typeof s.valueOf=="function"&&typeof c.valueOf=="function")return s.valueOf()===c.valueOf();if(s.toString!==Object.prototype.toString&&typeof s.toString=="function"&&typeof c.toString=="function")return s.toString()===c.toString();if(h=Object.keys(s),d=h.length,d!==Object.keys(c).length)return!1;for(f=d;f--!==0;)if(!Object.prototype.hasOwnProperty.call(c,h[f]))return!1;if(r&&s instanceof Element)return!1;for(f=d;f--!==0;)if(!((h[f]==="_owner"||h[f]==="__v"||h[f]==="__o")&&s.$$typeof)&&!i(s[h[f]],c[h[f]]))return!1;return!0}return s!==s&&c!==c}u(i,"equal"),t.exports=u(function(s,c){try{return i(s,c)}catch(d){if((d.message||"").match(/stack|recursion/i))return console.warn("react-fast-compare cannot handle circular refs"),!1;throw d}},"isEqual")}),t4,r4,A6,IA=z(()=>{BA(),t4=Ce(RA()),nA(),r4=[],A6=u(function(e,t,r){r===void 0&&(r={});var n=l.useRef(null),a={onFirstUpdate:r.onFirstUpdate,placement:r.placement||"bottom",strategy:r.strategy||"absolute",modifiers:r.modifiers||r4},o=l.useState({styles:{popper:{position:a.strategy,left:"0",top:"0"},arrow:{position:"absolute"}},attributes:{}}),i=o[0],s=o[1],c=l.useMemo(function(){return{name:"updateState",enabled:!0,phase:"write",fn:u(function(h){var p=h.state,m=Object.keys(p.elements);Fs.flushSync(function(){s({styles:u1(m.map(function(g){return[g,p.styles[g]||{}]})),attributes:u1(m.map(function(g){return[g,p.attributes[g]]}))})})},"fn"),requires:["computeStyles"]}},[]),d=l.useMemo(function(){var h={onFirstUpdate:a.onFirstUpdate,placement:a.placement,strategy:a.strategy,modifiers:[].concat(a.modifiers,[c,{name:"applyStyles",enabled:!1}])};return(0,t4.default)(n.current,h)?n.current||h:(n.current=h,h)},[a.onFirstUpdate,a.placement,a.strategy,a.modifiers,c]),f=l.useRef();return c1(function(){f.current&&f.current.setOptions(d)},[d]),c1(function(){if(!(e==null||t==null)){var h=r.createPopper||F6,p=h(e,t,d);return f.current=p,function(){p.destroy(),f.current=null}}},[e,t,r.createPopper]),{state:f.current?f.current.state:null,styles:i.styles,attributes:i.attributes,update:f.current?f.current.update:null,forceUpdate:f.current?f.current.forceUpdate:null}},"usePopper")}),zA=z(()=>{IA()});function Nf(e){var t=l.useRef(e);return t.current=e,l.useCallback(function(){return t.current},[])}function k6(e){var t=e.initial,r=e.value,n=e.onChange,a=n===void 0?B6:n;if(t===void 0&&r===void 0)throw new TypeError('Either "value" or "initial" variable must be set. Now both are undefined');var o=l.useState(t),i=o[0],s=o[1],c=Nf(i),d=l.useCallback(function(h){var p=c(),m=typeof h=="function"?h(p):h;typeof m.persist=="function"&&m.persist(),s(m),typeof a=="function"&&a(m)},[c,a]),f=r!==void 0;return[f?r:i,f?a:d]}function w1(e,t){return e===void 0&&(e=0),t===void 0&&(t=0),function(){return{width:0,height:0,top:t,right:e,bottom:t,left:e,x:0,y:0,toJSON:u(function(){return null},"toJSON")}}}function _6(e,t){var r,n,a;e===void 0&&(e={}),t===void 0&&(t={});var o=Object.keys(E1).reduce(function(M,N){var q;return ze({},M,(q={},q[N]=M[N]!==void 0?M[N]:E1[N],q))},e),i=l.useMemo(function(){return[{name:"offset",options:{offset:o.offset}}]},Array.isArray(o.offset)?o.offset:[]),s=ze({},t,{placement:t.placement||o.placement,modifiers:t.modifiers||i}),c=l.useState(null),d=c[0],f=c[1],h=l.useState(null),p=h[0],m=h[1],g=k6({initial:o.defaultVisible,value:o.visible,onChange:o.onVisibleChange}),v=g[0],b=g[1],C=l.useRef();l.useEffect(function(){return function(){return clearTimeout(C.current)}},[]);var E=A6(o.followCursor?D1:d,p,s),D=E.styles,w=E.attributes,x=Rs(E,R6),S=x.update,F=Nf({visible:v,triggerRef:d,tooltipRef:p,finalConfig:o}),A=l.useCallback(function(M){return Array.isArray(o.trigger)?o.trigger.includes(M):o.trigger===M},Array.isArray(o.trigger)?o.trigger:[o.trigger]),_=l.useCallback(function(){clearTimeout(C.current),C.current=window.setTimeout(function(){return b(!1)},o.delayHide)},[o.delayHide,b]),R=l.useCallback(function(){clearTimeout(C.current),C.current=window.setTimeout(function(){return b(!0)},o.delayShow)},[o.delayShow,b]),I=l.useCallback(function(){F().visible?_():R()},[F,_,R]);l.useEffect(function(){if(F().finalConfig.closeOnOutsideClick){var M=u(function(N){var q,W=F(),G=W.tooltipRef,Z=W.triggerRef,te=(N.composedPath==null||(q=N.composedPath())==null?void 0:q[0])||N.target;te instanceof Node&&G!=null&&Z!=null&&!G.contains(te)&&!Z.contains(te)&&_()},"handleClickOutside");return document.addEventListener("mousedown",M),function(){return document.removeEventListener("mousedown",M)}}},[F,_]),l.useEffect(function(){if(!(d==null||!A("click")))return d.addEventListener("click",I),function(){return d.removeEventListener("click",I)}},[d,A,I]),l.useEffect(function(){if(!(d==null||!A("double-click")))return d.addEventListener("dblclick",I),function(){return d.removeEventListener("dblclick",I)}},[d,A,I]),l.useEffect(function(){if(!(d==null||!A("right-click"))){var M=u(function(N){N.preventDefault(),I()},"preventDefaultAndToggle");return d.addEventListener("contextmenu",M),function(){return d.removeEventListener("contextmenu",M)}}},[d,A,I]),l.useEffect(function(){if(!(d==null||!A("focus")))return d.addEventListener("focus",R),d.addEventListener("blur",_),function(){d.removeEventListener("focus",R),d.removeEventListener("blur",_)}},[d,A,R,_]),l.useEffect(function(){if(!(d==null||!A("hover")))return d.addEventListener("mouseenter",R),d.addEventListener("mouseleave",_),function(){d.removeEventListener("mouseenter",R),d.removeEventListener("mouseleave",_)}},[d,A,R,_]),l.useEffect(function(){if(!(p==null||!A("hover")||!F().finalConfig.interactive))return p.addEventListener("mouseenter",R),p.addEventListener("mouseleave",_),function(){p.removeEventListener("mouseenter",R),p.removeEventListener("mouseleave",_)}},[p,A,R,_,F]);var T=x==null||(r=x.state)==null||(n=r.modifiersData)==null||(a=n.hide)==null?void 0:a.isReferenceHidden;l.useEffect(function(){o.closeOnTriggerHidden&&T&&_()},[o.closeOnTriggerHidden,_,T]),l.useEffect(function(){if(!o.followCursor||d==null)return;function M(N){var q=N.clientX,W=N.clientY;D1.getBoundingClientRect=w1(q,W),S==null||S()}return u(M,"setMousePosition"),d.addEventListener("mousemove",M),function(){return d.removeEventListener("mousemove",M)}},[o.followCursor,d,S]),l.useEffect(function(){if(!(p==null||S==null||o.mutationObserverOptions==null)){var M=new MutationObserver(S);return M.observe(p,o.mutationObserverOptions),function(){return M.disconnect()}}},[o.mutationObserverOptions,p,S]);var L=u(function(M){return M===void 0&&(M={}),ze({},M,{style:ze({},M.style,D.popper)},w.popper,{"data-popper-interactive":o.interactive})},"getTooltipProps"),P=u(function(M){return M===void 0&&(M={}),ze({},M,w.arrow,{style:ze({},M.style,D.arrow),"data-popper-arrow":!0})},"getArrowProps");return ze({getArrowProps:P,getTooltipProps:L,setTooltipRef:m,setTriggerRef:f,tooltipRef:p,triggerRef:d,visible:v},x)}var B6,R6,D1,E1,TA=z(()=>{yp(),ks(),zA(),u(Nf,"useGetLatest"),B6=u(function(){},"noop"),u(k6,"useControlledState"),u(w1,"generateBoundingClientRect"),R6=["styles","attributes"],D1={getBoundingClientRect:w1()},E1={closeOnOutsideClick:!0,closeOnTriggerHidden:!1,defaultVisible:!1,delayHide:0,delayShow:0,followCursor:!1,interactive:!1,mutationObserverOptions:{attributes:!0,childList:!0,subtree:!0},offset:[0,6],trigger:"hover"},u(_6,"usePopperTooltip")}),n4,Ue,er,a4,o4,C1,LA=z(()=>{n4=Ce(Bs(),1),Ue=(0,n4.default)(1e3)((e,t,r,n=0)=>t.split("-")[0]===e?r:n),er=8,a4=k.div({position:"absolute",borderStyle:"solid"},({placement:e})=>{let t=0,r=0;switch(!0){case(e.startsWith("left")||e.startsWith("right")):{r=8;break}case(e.startsWith("top")||e.startsWith("bottom")):{t=8;break}}return{transform:`translate3d(${t}px, ${r}px, 0px)`}},({theme:e,color:t,placement:r})=>({bottom:`${Ue("top",r,`${er*-1}px`,"auto")}`,top:`${Ue("bottom",r,`${er*-1}px`,"auto")}`,right:`${Ue("left",r,`${er*-1}px`,"auto")}`,left:`${Ue("right",r,`${er*-1}px`,"auto")}`,borderBottomWidth:`${Ue("top",r,"0",er)}px`,borderTopWidth:`${Ue("bottom",r,"0",er)}px`,borderRightWidth:`${Ue("left",r,"0",er)}px`,borderLeftWidth:`${Ue("right",r,"0",er)}px`,borderTopColor:Ue("top",r,e.color[t]||t||e.base==="light"?Va(e.background.app):e.background.app,"transparent"),borderBottomColor:Ue("bottom",r,e.color[t]||t||e.base==="light"?Va(e.background.app):e.background.app,"transparent"),borderLeftColor:Ue("left",r,e.color[t]||t||e.base==="light"?Va(e.background.app):e.background.app,"transparent"),borderRightColor:Ue("right",r,e.color[t]||t||e.base==="light"?Va(e.background.app):e.background.app,"transparent")})),o4=k.div(({hidden:e})=>({display:e?"none":"inline-block",zIndex:2147483647}),({theme:e,color:t,hasChrome:r})=>r?{background:t&&e.color[t]||t||e.base==="light"?Va(e.background.app):e.background.app,filter:` + drop-shadow(0px 5px 5px rgba(0,0,0,0.05)) + drop-shadow(0 1px 3px rgba(0,0,0,0.1)) + `,borderRadius:e.appBorderRadius+2,fontSize:e.typography.size.s1}:{}),C1=y.forwardRef(({placement:e="top",hasChrome:t=!0,children:r,arrowProps:n={},tooltipRef:a,color:o,withArrows:i,...s},c)=>y.createElement(o4,{"data-testid":"tooltip",hasChrome:t,ref:c,...s,color:o},t&&i&&y.createElement(a4,{placement:e,...n,color:o}),r)),C1.displayName="Tooltip"}),$f={};Aa($f,{WithToolTipState:()=>ps,WithTooltip:()=>ps,WithTooltipPure:()=>x1});var no,i4,l4,x1,ps,Hf=z(()=>{vp(),TA(),LA(),{document:no}=_s,i4=k.div` + display: inline-block; + cursor: ${e=>e.trigger==="hover"||e.trigger.includes("hover")?"default":"pointer"}; +`,l4=k.g` + cursor: ${e=>e.trigger==="hover"||e.trigger.includes("hover")?"default":"pointer"}; +`,x1=u(({svg:e=!1,trigger:t="click",closeOnOutsideClick:r=!1,placement:n="top",modifiers:a=[{name:"preventOverflow",options:{padding:8}},{name:"offset",options:{offset:[8,8]}},{name:"arrow",options:{padding:8}}],hasChrome:o=!0,defaultVisible:i=!1,withArrows:s,offset:c,tooltip:d,children:f,closeOnTriggerHidden:h,mutationObserverOptions:p,delayHide:m,visible:g,interactive:v,delayShow:b,strategy:C,followCursor:E,onVisibleChange:D,...w})=>{let x=e?l4:i4,{getArrowProps:S,getTooltipProps:F,setTooltipRef:A,setTriggerRef:_,visible:R,state:I}=_6({trigger:t,placement:n,defaultVisible:i,delayHide:m,interactive:v,closeOnOutsideClick:r,closeOnTriggerHidden:h,onVisibleChange:D,delayShow:b,followCursor:E,mutationObserverOptions:p,visible:g,offset:c},{modifiers:a,strategy:C}),T=R?y.createElement(C1,{placement:I==null?void 0:I.placement,ref:A,hasChrome:o,arrowProps:S(),withArrows:s,...F()},typeof d=="function"?d({onHide:u(()=>D(!1),"onHide")}):d):null;return y.createElement(y.Fragment,null,y.createElement(x,{trigger:t,ref:_,...w},f),R&&ty.createPortal(T,no.body))},"WithTooltipPure"),ps=u(({startOpen:e=!1,onVisibleChange:t,...r})=>{let[n,a]=l.useState(e),o=l.useCallback(i=>{t&&t(i)===!1||a(i)},[t]);return l.useEffect(()=>{let i=u(()=>o(!1),"hide");no.addEventListener("keydown",i,!1);let s=Array.from(no.getElementsByTagName("iframe")),c=[];return s.forEach(d=>{let f=u(()=>{try{d.contentWindow.document&&(d.contentWindow.document.addEventListener("click",i),c.push(()=>{try{d.contentWindow.document.removeEventListener("click",i)}catch{}}))}catch{}},"bind");f(),d.addEventListener("load",f),c.push(()=>{d.removeEventListener("load",f)})}),()=>{no.removeEventListener("keydown",i),c.forEach(d=>{d()})}}),y.createElement(x1,{...r,visible:n,onVisibleChange:o})},"WithToolTipState")}),ie=u(({...e},t)=>{let r=[e.class,e.className];return delete e.class,e.className=["sbdocs",`sbdocs-${t}`,...r].filter(Boolean).join(" "),e},"nameSpaceClassNames");ks();OS();gp();function I6(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,ma(e,t)}u(I6,"_inheritsLoose");PS();gp();function z6(e){try{return Function.toString.call(e).indexOf("[native code]")!==-1}catch{return typeof e=="function"}}u(z6,"_isNativeFunction");function jf(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(jf=u(function(){return!!e},"_isNativeReflectConstruct"))()}u(jf,"_isNativeReflectConstruct");gp();function T6(e,t,r){if(jf())return Reflect.construct.apply(null,arguments);var n=[null];n.push.apply(n,t);var a=new(e.bind.apply(e,n));return r&&ma(a,r.prototype),a}u(T6,"_construct");function fs(e){var t=typeof Map=="function"?new Map:void 0;return fs=u(function(r){if(r===null||!z6(r))return r;if(typeof r!="function")throw new TypeError("Super expression must either be null or a function");if(t!==void 0){if(t.has(r))return t.get(r);t.set(r,n)}function n(){return T6(r,arguments,Rl(this).constructor)}return u(n,"Wrapper"),n.prototype=Object.create(r.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),ma(n,r)},"_wrapNativeSuper"),fs(e)}u(fs,"_wrapNativeSuper");var MA={1:`Passed invalid arguments to hsl, please pass multiple numbers e.g. hsl(360, 0.75, 0.4) or an object e.g. rgb({ hue: 255, saturation: 0.4, lightness: 0.75 }). + +`,2:`Passed invalid arguments to hsla, please pass multiple numbers e.g. hsla(360, 0.75, 0.4, 0.7) or an object e.g. rgb({ hue: 255, saturation: 0.4, lightness: 0.75, alpha: 0.7 }). + +`,3:`Passed an incorrect argument to a color function, please pass a string representation of a color. + +`,4:`Couldn't generate valid rgb string from %s, it returned %s. + +`,5:`Couldn't parse the color string. Please provide the color as a string in hex, rgb, rgba, hsl or hsla notation. + +`,6:`Passed invalid arguments to rgb, please pass multiple numbers e.g. rgb(255, 205, 100) or an object e.g. rgb({ red: 255, green: 205, blue: 100 }). + +`,7:`Passed invalid arguments to rgba, please pass multiple numbers e.g. rgb(255, 205, 100, 0.75) or an object e.g. rgb({ red: 255, green: 205, blue: 100, alpha: 0.75 }). + +`,8:`Passed invalid argument to toColorString, please pass a RgbColor, RgbaColor, HslColor or HslaColor object. + +`,9:`Please provide a number of steps to the modularScale helper. + +`,10:`Please pass a number or one of the predefined scales to the modularScale helper as the ratio. + +`,11:`Invalid value passed as base to modularScale, expected number or em string but got "%s" + +`,12:`Expected a string ending in "px" or a number passed as the first argument to %s(), got "%s" instead. + +`,13:`Expected a string ending in "px" or a number passed as the second argument to %s(), got "%s" instead. + +`,14:`Passed invalid pixel value ("%s") to %s(), please pass a value like "12px" or 12. + +`,15:`Passed invalid base value ("%s") to %s(), please pass a value like "12px" or 12. + +`,16:`You must provide a template to this method. + +`,17:`You passed an unsupported selector state to this method. + +`,18:`minScreen and maxScreen must be provided as stringified numbers with the same units. + +`,19:`fromSize and toSize must be provided as stringified numbers with the same units. + +`,20:`expects either an array of objects or a single object with the properties prop, fromSize, and toSize. + +`,21:"expects the objects in the first argument array to have the properties `prop`, `fromSize`, and `toSize`.\n\n",22:"expects the first argument object to have the properties `prop`, `fromSize`, and `toSize`.\n\n",23:`fontFace expects a name of a font-family. + +`,24:`fontFace expects either the path to the font file(s) or a name of a local copy. + +`,25:`fontFace expects localFonts to be an array. + +`,26:`fontFace expects fileFormats to be an array. + +`,27:`radialGradient requries at least 2 color-stops to properly render. + +`,28:`Please supply a filename to retinaImage() as the first argument. + +`,29:`Passed invalid argument to triangle, please pass correct pointingDirection e.g. 'right'. + +`,30:"Passed an invalid value to `height` or `width`. Please provide a pixel based unit.\n\n",31:`The animation shorthand only takes 8 arguments. See the specification for more information: http://mdn.io/animation + +`,32:`To pass multiple animations please supply them in arrays, e.g. animation(['rotate', '2s'], ['move', '1s']) +To pass a single animation please supply them in simple values, e.g. animation('rotate', '2s') + +`,33:`The animation shorthand arrays can only have 8 elements. See the specification for more information: http://mdn.io/animation + +`,34:`borderRadius expects a radius value as a string or number as the second argument. + +`,35:`borderRadius expects one of "top", "bottom", "left" or "right" as the first argument. + +`,36:`Property must be a string value. + +`,37:`Syntax Error at %s. + +`,38:`Formula contains a function that needs parentheses at %s. + +`,39:`Formula is missing closing parenthesis at %s. + +`,40:`Formula has too many closing parentheses at %s. + +`,41:`All values in a formula must have the same unit or be unitless. + +`,42:`Please provide a number of steps to the modularScale helper. + +`,43:`Please pass a number or one of the predefined scales to the modularScale helper as the ratio. + +`,44:`Invalid value passed as base to modularScale, expected number or em/rem string but got %s. + +`,45:`Passed invalid argument to hslToColorString, please pass a HslColor or HslaColor object. + +`,46:`Passed invalid argument to rgbToColorString, please pass a RgbColor or RgbaColor object. + +`,47:`minScreen and maxScreen must be provided as stringified numbers with the same units. + +`,48:`fromSize and toSize must be provided as stringified numbers with the same units. + +`,49:`Expects either an array of objects or a single object with the properties prop, fromSize, and toSize. + +`,50:`Expects the objects in the first argument array to have the properties prop, fromSize, and toSize. + +`,51:`Expects the first argument object to have the properties prop, fromSize, and toSize. + +`,52:`fontFace expects either the path to the font file(s) or a name of a local copy. + +`,53:`fontFace expects localFonts to be an array. + +`,54:`fontFace expects fileFormats to be an array. + +`,55:`fontFace expects a name of a font-family. + +`,56:`linearGradient requries at least 2 color-stops to properly render. + +`,57:`radialGradient requries at least 2 color-stops to properly render. + +`,58:`Please supply a filename to retinaImage() as the first argument. + +`,59:`Passed invalid argument to triangle, please pass correct pointingDirection e.g. 'right'. + +`,60:"Passed an invalid value to `height` or `width`. Please provide a pixel based unit.\n\n",61:`Property must be a string value. + +`,62:`borderRadius expects a radius value as a string or number as the second argument. + +`,63:`borderRadius expects one of "top", "bottom", "left" or "right" as the first argument. + +`,64:`The animation shorthand only takes 8 arguments. See the specification for more information: http://mdn.io/animation. + +`,65:`To pass multiple animations please supply them in arrays, e.g. animation(['rotate', '2s'], ['move', '1s'])\\nTo pass a single animation please supply them in simple values, e.g. animation('rotate', '2s'). + +`,66:`The animation shorthand arrays can only have 8 elements. See the specification for more information: http://mdn.io/animation. + +`,67:`You must provide a template to this method. + +`,68:`You passed an unsupported selector state to this method. + +`,69:`Expected a string ending in "px" or a number passed as the first argument to %s(), got %s instead. + +`,70:`Expected a string ending in "px" or a number passed as the second argument to %s(), got %s instead. + +`,71:`Passed invalid pixel value %s to %s(), please pass a value like "12px" or 12. + +`,72:`Passed invalid base value %s to %s(), please pass a value like "12px" or 12. + +`,73:`Please provide a valid CSS variable. + +`,74:`CSS variable not found and no default was provided. + +`,75:`important requires a valid style object, got a %s instead. + +`,76:`fromSize and toSize must be provided as stringified numbers with the same units as minScreen and maxScreen. + +`,77:`remToPx expects a value in "rem" but you provided it in "%s". + +`,78:`base must be set in "px" or "%" but you set it in "%s". +`};function L6(){for(var e=arguments.length,t=new Array(e),r=0;r1?a-1:0),i=1;i=0&&a<1?(s=o,c=i):a>=1&&a<2?(s=i,c=o):a>=2&&a<3?(c=o,d=i):a>=3&&a<4?(c=i,d=o):a>=4&&a<5?(s=i,d=o):a>=5&&a<6&&(s=o,d=i);var f=r-o/2,h=s+f,p=c+f,m=d+f;return n(h,p,m)}u(wa,"hslToRgb");var s4={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"00ffff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"0000ff",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"00ffff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"ff00ff",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"639",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"};function O6(e){if(typeof e!="string")return e;var t=e.toLowerCase();return s4[t]?"#"+s4[t]:e}u(O6,"nameToHex");var OA=/^#[a-fA-F0-9]{6}$/,PA=/^#[a-fA-F0-9]{8}$/,NA=/^#[a-fA-F0-9]{3}$/,$A=/^#[a-fA-F0-9]{4}$/,B0=/^rgb\(\s*(\d{1,3})\s*(?:,)?\s*(\d{1,3})\s*(?:,)?\s*(\d{1,3})\s*\)$/i,HA=/^rgb(?:a)?\(\s*(\d{1,3})\s*(?:,)?\s*(\d{1,3})\s*(?:,)?\s*(\d{1,3})\s*(?:,|\/)\s*([-+]?\d*[.]?\d+[%]?)\s*\)$/i,jA=/^hsl\(\s*(\d{0,3}[.]?[0-9]+(?:deg)?)\s*(?:,)?\s*(\d{1,3}[.]?[0-9]?)%\s*(?:,)?\s*(\d{1,3}[.]?[0-9]?)%\s*\)$/i,VA=/^hsl(?:a)?\(\s*(\d{0,3}[.]?[0-9]+(?:deg)?)\s*(?:,)?\s*(\d{1,3}[.]?[0-9]?)%\s*(?:,)?\s*(\d{1,3}[.]?[0-9]?)%\s*(?:,|\/)\s*([-+]?\d*[.]?\d+[%]?)\s*\)$/i;function au(e){if(typeof e!="string")throw new Ot(3);var t=O6(e);if(t.match(OA))return{red:parseInt(""+t[1]+t[2],16),green:parseInt(""+t[3]+t[4],16),blue:parseInt(""+t[5]+t[6],16)};if(t.match(PA)){var r=parseFloat((parseInt(""+t[7]+t[8],16)/255).toFixed(2));return{red:parseInt(""+t[1]+t[2],16),green:parseInt(""+t[3]+t[4],16),blue:parseInt(""+t[5]+t[6],16),alpha:r}}if(t.match(NA))return{red:parseInt(""+t[1]+t[1],16),green:parseInt(""+t[2]+t[2],16),blue:parseInt(""+t[3]+t[3],16)};if(t.match($A)){var n=parseFloat((parseInt(""+t[4]+t[4],16)/255).toFixed(2));return{red:parseInt(""+t[1]+t[1],16),green:parseInt(""+t[2]+t[2],16),blue:parseInt(""+t[3]+t[3],16),alpha:n}}var a=B0.exec(t);if(a)return{red:parseInt(""+a[1],10),green:parseInt(""+a[2],10),blue:parseInt(""+a[3],10)};var o=HA.exec(t.substring(0,50));if(o)return{red:parseInt(""+o[1],10),green:parseInt(""+o[2],10),blue:parseInt(""+o[3],10),alpha:parseFloat(""+o[4])>1?parseFloat(""+o[4])/100:parseFloat(""+o[4])};var i=jA.exec(t);if(i){var s=parseInt(""+i[1],10),c=parseInt(""+i[2],10)/100,d=parseInt(""+i[3],10)/100,f="rgb("+wa(s,c,d)+")",h=B0.exec(f);if(!h)throw new Ot(4,t,f);return{red:parseInt(""+h[1],10),green:parseInt(""+h[2],10),blue:parseInt(""+h[3],10)}}var p=VA.exec(t.substring(0,50));if(p){var m=parseInt(""+p[1],10),g=parseInt(""+p[2],10)/100,v=parseInt(""+p[3],10)/100,b="rgb("+wa(m,g,v)+")",C=B0.exec(b);if(!C)throw new Ot(4,t,b);return{red:parseInt(""+C[1],10),green:parseInt(""+C[2],10),blue:parseInt(""+C[3],10),alpha:parseFloat(""+p[4])>1?parseFloat(""+p[4])/100:parseFloat(""+p[4])}}throw new Ot(5)}u(au,"parseToRgb");function P6(e){var t=e.red/255,r=e.green/255,n=e.blue/255,a=Math.max(t,r,n),o=Math.min(t,r,n),i=(a+o)/2;if(a===o)return e.alpha!==void 0?{hue:0,saturation:0,lightness:i,alpha:e.alpha}:{hue:0,saturation:0,lightness:i};var s,c=a-o,d=i>.5?c/(2-a-o):c/(a+o);switch(a){case t:s=(r-n)/c+(r=1?qo(e,t,r):"rgba("+wa(e,t,r)+","+n+")";if(typeof e=="object"&&t===void 0&&r===void 0&&n===void 0)return e.alpha>=1?qo(e.hue,e.saturation,e.lightness):"rgba("+wa(e.hue,e.saturation,e.lightness)+","+e.alpha+")";throw new Ot(2)}u(H6,"hsla");function hs(e,t,r){if(typeof e=="number"&&typeof t=="number"&&typeof r=="number")return S1("#"+wr(e)+wr(t)+wr(r));if(typeof e=="object"&&t===void 0&&r===void 0)return S1("#"+wr(e.red)+wr(e.green)+wr(e.blue));throw new Ot(6)}u(hs,"rgb");function Wo(e,t,r,n){if(typeof e=="string"&&typeof t=="number"){var a=au(e);return"rgba("+a.red+","+a.green+","+a.blue+","+t+")"}else{if(typeof e=="number"&&typeof t=="number"&&typeof r=="number"&&typeof n=="number")return n>=1?hs(e,t,r):"rgba("+e+","+t+","+r+","+n+")";if(typeof e=="object"&&t===void 0&&r===void 0&&n===void 0)return e.alpha>=1?hs(e.red,e.green,e.blue):"rgba("+e.red+","+e.green+","+e.blue+","+e.alpha+")"}throw new Ot(7)}u(Wo,"rgba");var qA=u(function(e){return typeof e.red=="number"&&typeof e.green=="number"&&typeof e.blue=="number"&&(typeof e.alpha!="number"||typeof e.alpha>"u")},"isRgb"),WA=u(function(e){return typeof e.red=="number"&&typeof e.green=="number"&&typeof e.blue=="number"&&typeof e.alpha=="number"},"isRgba"),GA=u(function(e){return typeof e.hue=="number"&&typeof e.saturation=="number"&&typeof e.lightness=="number"&&(typeof e.alpha!="number"||typeof e.alpha>"u")},"isHsl"),KA=u(function(e){return typeof e.hue=="number"&&typeof e.saturation=="number"&&typeof e.lightness=="number"&&typeof e.alpha=="number"},"isHsla");function Uf(e){if(typeof e!="object")throw new Ot(8);if(WA(e))return Wo(e);if(qA(e))return hs(e);if(KA(e))return H6(e);if(GA(e))return $6(e);throw new Ot(8)}u(Uf,"toColorString");function qf(e,t,r){return u(function(){var n=r.concat(Array.prototype.slice.call(arguments));return n.length>=t?e.apply(this,n):qf(e,t,n)},"fn")}u(qf,"curried");function ou(e){return qf(e,e.length,[])}u(ou,"curry");function iu(e,t,r){return Math.max(e,Math.min(t,r))}u(iu,"guard");function j6(e,t){if(t==="transparent")return t;var r=Vf(t);return Uf(ze({},r,{lightness:iu(0,1,r.lightness-parseFloat(e))}))}u(j6,"darken");var YA=ou(j6),Yn=YA;function V6(e,t){if(t==="transparent")return t;var r=Vf(t);return Uf(ze({},r,{lightness:iu(0,1,r.lightness+parseFloat(e))}))}u(V6,"lighten");var ZA=ou(V6),u4=ZA;function U6(e,t){if(t==="transparent")return t;var r=au(t),n=typeof r.alpha=="number"?r.alpha:1,a=ze({},r,{alpha:iu(0,1,+(n*100-parseFloat(e)*100).toFixed(2)/100)});return Wo(a)}u(U6,"transparentize");var JA=ou(U6),pt=JA,La=u(({theme:e})=>({margin:"20px 0 8px",padding:0,cursor:"text",position:"relative",color:e.color.defaultText,"&:first-of-type":{marginTop:0,paddingTop:0},"&:hover a.anchor":{textDecoration:"none"},"& tt, & code":{fontSize:"inherit"}}),"headerCommon"),cr=u(({theme:e})=>({lineHeight:1,margin:"0 2px",padding:"3px 5px",whiteSpace:"nowrap",borderRadius:3,fontSize:e.typography.size.s2-1,border:e.base==="light"?`1px solid ${e.color.mediumlight}`:`1px solid ${e.color.darker}`,color:e.base==="light"?pt(.1,e.color.defaultText):pt(.3,e.color.defaultText),backgroundColor:e.base==="light"?e.color.lighter:e.color.border}),"codeCommon"),se=u(({theme:e})=>({fontFamily:e.typography.fonts.base,fontSize:e.typography.size.s3,margin:0,WebkitFontSmoothing:"antialiased",MozOsxFontSmoothing:"grayscale",WebkitTapHighlightColor:"rgba(0, 0, 0, 0)",WebkitOverflowScrolling:"touch"}),"withReset"),Fn={margin:"16px 0"},Wf=k.div(se),XA=u(({href:e="",...t})=>{let r=/^\//.test(e)?`./?path=${e}`:e,n=/^#.*/.test(e)?"_self":"_top";return y.createElement("a",{href:r,target:n,...t})},"Link"),q6=k(XA)(se,({theme:e})=>({fontSize:"inherit",lineHeight:"24px",color:e.color.secondary,textDecoration:"none","&.absent":{color:"#cc0000"},"&.anchor":{display:"block",paddingLeft:30,marginLeft:-30,cursor:"pointer",position:"absolute",top:0,left:0,bottom:0}})),W6=k.blockquote(se,Fn,({theme:e})=>({borderLeft:`4px solid ${e.color.medium}`,padding:"0 15px",color:e.color.dark,"& > :first-of-type":{marginTop:0},"& > :last-child":{marginBottom:0}}));Ts();var QA=u(e=>typeof e=="string","isReactChildString"),ek=/[\n\r]/g,tk=k.code(({theme:e})=>({fontFamily:e.typography.fonts.mono,WebkitFontSmoothing:"antialiased",MozOsxFontSmoothing:"grayscale",display:"inline-block",paddingLeft:2,paddingRight:2,verticalAlign:"baseline",color:"inherit"}),cr),rk=k(_o)(({theme:e})=>({fontFamily:e.typography.fonts.mono,fontSize:`${e.typography.size.s2-1}px`,lineHeight:"19px",margin:"25px 0 40px",borderRadius:e.appBorderRadius,boxShadow:e.base==="light"?"rgba(0, 0, 0, 0.10) 0 1px 3px 0":"rgba(0, 0, 0, 0.20) 0 2px 5px 0","pre.prismjs":{padding:20,background:"inherit"}})),Gf=u(({className:e,children:t,...r})=>{let n=(e||"").match(/lang-(\S+)/),a=l.Children.toArray(t);return a.filter(QA).some(o=>o.match(ek))?y.createElement(rk,{bordered:!0,copyable:!0,language:(n==null?void 0:n[1])??"text",format:!1,...r},t):y.createElement(tk,{...r,className:e},a)},"Code"),G6=k.dl(se,Fn,{padding:0,"& dt":{fontSize:"14px",fontWeight:"bold",fontStyle:"italic",padding:0,margin:"16px 0 4px"},"& dt:first-of-type":{padding:0},"& dt > :first-of-type":{marginTop:0},"& dt > :last-child":{marginBottom:0},"& dd":{margin:"0 0 16px",padding:"0 15px"},"& dd > :first-of-type":{marginTop:0},"& dd > :last-child":{marginBottom:0}}),K6=k.div(se),Y6=k.h1(se,La,({theme:e})=>({fontSize:`${e.typography.size.l1}px`,fontWeight:e.typography.weight.bold})),Kf=k.h2(se,La,({theme:e})=>({fontSize:`${e.typography.size.m2}px`,paddingBottom:4,borderBottom:`1px solid ${e.appBorderColor}`})),Yf=k.h3(se,La,({theme:e})=>({fontSize:`${e.typography.size.m1}px`})),Z6=k.h4(se,La,({theme:e})=>({fontSize:`${e.typography.size.s3}px`})),J6=k.h5(se,La,({theme:e})=>({fontSize:`${e.typography.size.s2}px`})),X6=k.h6(se,La,({theme:e})=>({fontSize:`${e.typography.size.s2}px`,color:e.color.dark})),Q6=k.hr(({theme:e})=>({border:"0 none",borderTop:`1px solid ${e.appBorderColor}`,height:4,padding:0})),eE=k.img({maxWidth:"100%"}),tE=k.li(se,({theme:e})=>({fontSize:e.typography.size.s2,color:e.color.defaultText,lineHeight:"24px","& + li":{marginTop:".25em"},"& ul, & ol":{marginTop:".25em",marginBottom:0},"& code":cr({theme:e})})),nk={paddingLeft:30,"& :first-of-type":{marginTop:0},"& :last-child":{marginBottom:0}},rE=k.ol(se,Fn,nk,{listStyle:"decimal"}),nE=k.p(se,Fn,({theme:e})=>({fontSize:e.typography.size.s2,lineHeight:"24px",color:e.color.defaultText,"& code":cr({theme:e})})),aE=k.pre(se,Fn,({theme:e})=>({fontFamily:e.typography.fonts.mono,WebkitFontSmoothing:"antialiased",MozOsxFontSmoothing:"grayscale",lineHeight:"18px",padding:"11px 1rem",whiteSpace:"pre-wrap",color:"inherit",borderRadius:3,margin:"1rem 0","&:not(.prismjs)":{background:"transparent",border:"none",borderRadius:0,padding:0,margin:0},"& pre, &.prismjs":{padding:15,margin:0,whiteSpace:"pre-wrap",color:"inherit",fontSize:"13px",lineHeight:"19px",code:{color:"inherit",fontSize:"inherit"}},"& code":{whiteSpace:"pre"},"& code, & tt":{border:"none"}})),oE=k.span(se,({theme:e})=>({"&.frame":{display:"block",overflow:"hidden","& > span":{border:`1px solid ${e.color.medium}`,display:"block",float:"left",overflow:"hidden",margin:"13px 0 0",padding:7,width:"auto"},"& span img":{display:"block",float:"left"},"& span span":{clear:"both",color:e.color.darkest,display:"block",padding:"5px 0 0"}},"&.align-center":{display:"block",overflow:"hidden",clear:"both","& > span":{display:"block",overflow:"hidden",margin:"13px auto 0",textAlign:"center"},"& span img":{margin:"0 auto",textAlign:"center"}},"&.align-right":{display:"block",overflow:"hidden",clear:"both","& > span":{display:"block",overflow:"hidden",margin:"13px 0 0",textAlign:"right"},"& span img":{margin:0,textAlign:"right"}},"&.float-left":{display:"block",marginRight:13,overflow:"hidden",float:"left","& span":{margin:"13px 0 0"}},"&.float-right":{display:"block",marginLeft:13,overflow:"hidden",float:"right","& > span":{display:"block",overflow:"hidden",margin:"13px auto 0",textAlign:"right"}}})),iE=k.title(cr),lE=k.table(se,Fn,({theme:e})=>({fontSize:e.typography.size.s2,lineHeight:"24px",padding:0,borderCollapse:"collapse","& tr":{borderTop:`1px solid ${e.appBorderColor}`,backgroundColor:e.appContentBg,margin:0,padding:0},"& tr:nth-of-type(2n)":{backgroundColor:e.base==="dark"?e.color.darker:e.color.lighter},"& tr th":{fontWeight:"bold",color:e.color.defaultText,border:`1px solid ${e.appBorderColor}`,margin:0,padding:"6px 13px"},"& tr td":{border:`1px solid ${e.appBorderColor}`,color:e.color.defaultText,margin:0,padding:"6px 13px"},"& tr th :first-of-type, & tr td :first-of-type":{marginTop:0},"& tr th :last-child, & tr td :last-child":{marginBottom:0}})),ak={paddingLeft:30,"& :first-of-type":{marginTop:0},"& :last-child":{marginBottom:0}},sE=k.ul(se,Fn,ak,{listStyle:"disc"}),uE={h1:u(e=>y.createElement(Y6,{...ie(e,"h1")}),"h1"),h2:u(e=>y.createElement(Kf,{...ie(e,"h2")}),"h2"),h3:u(e=>y.createElement(Yf,{...ie(e,"h3")}),"h3"),h4:u(e=>y.createElement(Z6,{...ie(e,"h4")}),"h4"),h5:u(e=>y.createElement(J6,{...ie(e,"h5")}),"h5"),h6:u(e=>y.createElement(X6,{...ie(e,"h6")}),"h6"),pre:u(e=>y.createElement(aE,{...ie(e,"pre")}),"pre"),a:u(e=>y.createElement(q6,{...ie(e,"a")}),"a"),hr:u(e=>y.createElement(Q6,{...ie(e,"hr")}),"hr"),dl:u(e=>y.createElement(G6,{...ie(e,"dl")}),"dl"),blockquote:u(e=>y.createElement(W6,{...ie(e,"blockquote")}),"blockquote"),table:u(e=>y.createElement(lE,{...ie(e,"table")}),"table"),img:u(e=>y.createElement(eE,{...ie(e,"img")}),"img"),div:u(e=>y.createElement(K6,{...ie(e,"div")}),"div"),span:u(e=>y.createElement(oE,{...ie(e,"span")}),"span"),li:u(e=>y.createElement(tE,{...ie(e,"li")}),"li"),ul:u(e=>y.createElement(sE,{...ie(e,"ul")}),"ul"),ol:u(e=>y.createElement(rE,{...ie(e,"ol")}),"ol"),p:u(e=>y.createElement(nE,{...ie(e,"p")}),"p"),code:u(e=>y.createElement(Gf,{...ie(e,"code")}),"code"),tt:u(e=>y.createElement(iE,{...ie(e,"tt")}),"tt"),resetwrapper:u(e=>y.createElement(Wf,{...ie(e,"resetwrapper")}),"resetwrapper")};k.div(({theme:e})=>({display:"inline-block",fontSize:11,lineHeight:"12px",alignSelf:"center",padding:"4px 12px",borderRadius:"3em",fontWeight:e.typography.weight.bold}),{svg:{height:12,width:12,marginRight:4,marginTop:-2,path:{fill:"currentColor"}}},({theme:e,status:t})=>{switch(t){case"critical":return{color:e.color.critical,background:e.background.critical};case"negative":return{color:e.color.negativeText,background:e.background.negative,boxShadow:e.base==="light"?`inset 0 0 0 1px ${pt(.9,e.color.negativeText)}`:"none"};case"warning":return{color:e.color.warningText,background:e.background.warning,boxShadow:e.base==="light"?`inset 0 0 0 1px ${pt(.9,e.color.warningText)}`:"none"};case"neutral":return{color:e.color.dark,background:e.color.mediumlight,boxShadow:e.base==="light"?`inset 0 0 0 1px ${pt(.9,e.color.dark)}`:"none"};case"positive":return{color:e.color.positiveText,background:e.background.positive,boxShadow:e.base==="light"?`inset 0 0 0 1px ${pt(.9,e.color.positiveText)}`:"none"};default:return{}}});var ok={};Aa(ok,{AccessibilityAltIcon:()=>RI,AccessibilityIcon:()=>BI,AccessibilityIgnoredIcon:()=>II,AddIcon:()=>SB,AdminIcon:()=>wI,AlertAltIcon:()=>QB,AlertIcon:()=>XB,AlignLeftIcon:()=>t_,AlignRightIcon:()=>r_,AppleIcon:()=>D_,ArrowBottomLeftIcon:()=>WR,ArrowBottomRightIcon:()=>GR,ArrowDownIcon:()=>HR,ArrowLeftIcon:()=>jR,ArrowRightIcon:()=>VR,ArrowSolidDownIcon:()=>YR,ArrowSolidLeftIcon:()=>ZR,ArrowSolidRightIcon:()=>JR,ArrowSolidUpIcon:()=>KR,ArrowTopLeftIcon:()=>UR,ArrowTopRightIcon:()=>qR,ArrowUpIcon:()=>$R,AzureDevOpsIcon:()=>A_,BackIcon:()=>uI,BasketIcon:()=>ER,BatchAcceptIcon:()=>yB,BatchDenyIcon:()=>vB,BeakerIcon:()=>CR,BellIcon:()=>aR,BitbucketIcon:()=>k_,BoldIcon:()=>u_,BookIcon:()=>Wk,BookmarkHollowIcon:()=>dR,BookmarkIcon:()=>pR,BottomBarIcon:()=>eB,BottomBarToggleIcon:()=>tB,BoxIcon:()=>iB,BranchIcon:()=>y_,BrowserIcon:()=>W_,ButtonIcon:()=>VB,CPUIcon:()=>rB,CalendarIcon:()=>Qk,CameraIcon:()=>_k,CameraStabilizeIcon:()=>fk,CategoryIcon:()=>Yk,CertificateIcon:()=>yR,ChangedIcon:()=>BB,ChatIcon:()=>OB,CheckIcon:()=>mB,ChevronDownIcon:()=>TR,ChevronLeftIcon:()=>LR,ChevronRightIcon:()=>pE,ChevronSmallDownIcon:()=>OR,ChevronSmallLeftIcon:()=>PR,ChevronSmallRightIcon:()=>NR,ChevronSmallUpIcon:()=>MR,ChevronUpIcon:()=>zR,ChromaticIcon:()=>__,ChromeIcon:()=>S_,CircleHollowIcon:()=>uR,CircleIcon:()=>cR,ClearIcon:()=>IB,CloseAltIcon:()=>DB,CloseIcon:()=>AB,CloudHollowIcon:()=>FR,CloudIcon:()=>AR,CogIcon:()=>uB,CollapseIcon:()=>QR,CommandIcon:()=>GB,CommentAddIcon:()=>TB,CommentIcon:()=>zB,CommentsIcon:()=>MB,CommitIcon:()=>v_,CompassIcon:()=>fI,ComponentDrivenIcon:()=>B_,ComponentIcon:()=>sk,ContrastIcon:()=>xk,ContrastIgnoredIcon:()=>Fk,ControlsIcon:()=>bB,CopyIcon:()=>Kk,CreditIcon:()=>jB,CrossIcon:()=>dE,DashboardIcon:()=>vI,DatabaseIcon:()=>nB,DeleteIcon:()=>kB,DiamondIcon:()=>fR,DirectionIcon:()=>DI,DiscordIcon:()=>R_,DocChartIcon:()=>a_,DocListIcon:()=>o_,DocumentIcon:()=>Gk,DownloadIcon:()=>sI,DragIcon:()=>i_,EditIcon:()=>sB,EllipsisIcon:()=>pB,EmailIcon:()=>eR,ExpandAltIcon:()=>XR,ExpandIcon:()=>eI,EyeCloseIcon:()=>wk,EyeIcon:()=>bk,FaceHappyIcon:()=>AI,FaceNeutralIcon:()=>kI,FaceSadIcon:()=>_I,FacebookIcon:()=>I_,FailedIcon:()=>RB,FastForwardIcon:()=>Mk,FigmaIcon:()=>z_,FilterIcon:()=>n_,FlagIcon:()=>SR,FolderIcon:()=>Zk,FormIcon:()=>gB,GDriveIcon:()=>T_,GithubIcon:()=>L_,GitlabIcon:()=>M_,GlobeIcon:()=>pI,GoogleIcon:()=>O_,GraphBarIcon:()=>e_,GraphLineIcon:()=>Xk,GraphqlIcon:()=>P_,GridAltIcon:()=>hk,GridIcon:()=>uk,GrowIcon:()=>Ck,HeartHollowIcon:()=>hR,HeartIcon:()=>mR,HomeIcon:()=>bI,HourglassIcon:()=>xR,InfoIcon:()=>YB,ItalicIcon:()=>c_,JumpToIcon:()=>sR,KeyIcon:()=>$B,LightningIcon:()=>Dk,LightningOffIcon:()=>cE,LinkBrokenIcon:()=>nR,LinkIcon:()=>rR,LinkedinIcon:()=>U_,LinuxIcon:()=>E_,ListOrderedIcon:()=>p_,ListUnorderedIcon:()=>f_,LocationIcon:()=>hI,LockIcon:()=>PB,MarkdownIcon:()=>m_,MarkupIcon:()=>s_,MediumIcon:()=>N_,MemoryIcon:()=>aB,MenuIcon:()=>l_,MergeIcon:()=>w_,MirrorIcon:()=>Ek,MobileIcon:()=>K_,MoonIcon:()=>Nk,NutIcon:()=>cB,OutboxIcon:()=>HB,OutlineIcon:()=>ck,PaintBrushIcon:()=>Ak,PaperClipIcon:()=>d_,ParagraphIcon:()=>h_,PassedIcon:()=>_B,PhoneIcon:()=>tR,PhotoDragIcon:()=>dk,PhotoIcon:()=>lk,PhotoStabilizeIcon:()=>pk,PinAltIcon:()=>CB,PinIcon:()=>mI,PlayAllHollowIcon:()=>jk,PlayBackIcon:()=>zk,PlayHollowIcon:()=>Hk,PlayIcon:()=>Ik,PlayNextIcon:()=>Tk,PlusIcon:()=>wB,PointerDefaultIcon:()=>qB,PointerHandIcon:()=>WB,PowerIcon:()=>lB,PrintIcon:()=>Jk,ProceedIcon:()=>cI,ProfileIcon:()=>FI,PullRequestIcon:()=>b_,QuestionIcon:()=>ZB,RSSIcon:()=>oR,RedirectIcon:()=>nI,ReduxIcon:()=>$_,RefreshIcon:()=>dI,ReplyIcon:()=>oI,RepoIcon:()=>g_,RequestChangeIcon:()=>LB,RewindIcon:()=>Lk,RulerIcon:()=>kk,SaveIcon:()=>KB,SearchIcon:()=>mk,ShareAltIcon:()=>iR,ShareIcon:()=>lR,ShieldIcon:()=>DR,SideBySideIcon:()=>Uk,SidebarAltIcon:()=>J_,SidebarAltToggleIcon:()=>X_,SidebarIcon:()=>Z_,SidebarToggleIcon:()=>Q_,SpeakerIcon:()=>Rk,StackedIcon:()=>qk,StarHollowIcon:()=>gR,StarIcon:()=>vR,StatusFailIcon:()=>_R,StatusIcon:()=>BR,StatusPassIcon:()=>IR,StatusWarnIcon:()=>RR,StickerIcon:()=>kR,StopAltHollowIcon:()=>$k,StopAltIcon:()=>Ok,StopIcon:()=>Vk,StorybookIcon:()=>F_,StructureIcon:()=>oB,SubtractIcon:()=>FB,SunIcon:()=>Pk,SupportIcon:()=>JB,SweepIcon:()=>hB,SwitchAltIcon:()=>Sk,SyncIcon:()=>iI,TabletIcon:()=>G_,ThumbsUpIcon:()=>wR,TimeIcon:()=>gI,TimerIcon:()=>yI,TransferIcon:()=>rI,TrashIcon:()=>EB,TwitterIcon:()=>H_,TypeIcon:()=>UB,UbuntuIcon:()=>C_,UndoIcon:()=>aI,UnfoldIcon:()=>tI,UnlockIcon:()=>NB,UnpinIcon:()=>xB,UploadIcon:()=>lI,UserAddIcon:()=>xI,UserAltIcon:()=>CI,UserIcon:()=>EI,UsersIcon:()=>SI,VSCodeIcon:()=>V_,VerifiedIcon:()=>bR,VideoIcon:()=>Bk,WandIcon:()=>fB,WatchIcon:()=>Y_,WindowsIcon:()=>x_,WrenchIcon:()=>dB,XIcon:()=>q_,YoutubeIcon:()=>j_,ZoomIcon:()=>gk,ZoomOutIcon:()=>vk,ZoomResetIcon:()=>yk,iconList:()=>ik});var ik=[{name:"Images",icons:["PhotoIcon","ComponentIcon","GridIcon","OutlineIcon","PhotoDragIcon","PhotoStabilizeIcon","CameraStabilizeIcon","GridAltIcon","SearchIcon","ZoomIcon","ZoomOutIcon","ZoomResetIcon","EyeIcon","EyeCloseIcon","LightningIcon","LightningOffIcon","MirrorIcon","GrowIcon","ContrastIcon","SwitchAltIcon","ContrastIgnoredIcon","PaintBrushIcon","RulerIcon","CameraIcon","VideoIcon","SpeakerIcon","PlayIcon","PlayBackIcon","PlayNextIcon","RewindIcon","FastForwardIcon","StopAltIcon","SunIcon","MoonIcon","StopAltHollowIcon","PlayHollowIcon","PlayAllHollowIcon","StopIcon","SideBySideIcon","StackedIcon"]},{name:"Documents",icons:["BookIcon","DocumentIcon","CopyIcon","CategoryIcon","FolderIcon","PrintIcon","GraphLineIcon","CalendarIcon","GraphBarIcon","AlignLeftIcon","AlignRightIcon","FilterIcon","DocChartIcon","DocListIcon","DragIcon","MenuIcon"]},{name:"Editing",icons:["MarkupIcon","BoldIcon","ItalicIcon","PaperClipIcon","ListOrderedIcon","ListUnorderedIcon","ParagraphIcon","MarkdownIcon"]},{name:"Git",icons:["RepoIcon","CommitIcon","BranchIcon","PullRequestIcon","MergeIcon"]},{name:"OS",icons:["AppleIcon","LinuxIcon","UbuntuIcon","WindowsIcon","ChromeIcon"]},{name:"Logos",icons:["StorybookIcon","AzureDevOpsIcon","BitbucketIcon","ChromaticIcon","ComponentDrivenIcon","DiscordIcon","FacebookIcon","FigmaIcon","GDriveIcon","GithubIcon","GitlabIcon","GoogleIcon","GraphqlIcon","MediumIcon","ReduxIcon","TwitterIcon","YoutubeIcon","VSCodeIcon","LinkedinIcon","XIcon"]},{name:"Devices",icons:["BrowserIcon","TabletIcon","MobileIcon","WatchIcon","SidebarIcon","SidebarAltIcon","SidebarAltToggleIcon","SidebarToggleIcon","BottomBarIcon","BottomBarToggleIcon","CPUIcon","DatabaseIcon","MemoryIcon","StructureIcon","BoxIcon","PowerIcon"]},{name:"CRUD",icons:["EditIcon","CogIcon","NutIcon","WrenchIcon","EllipsisIcon","WandIcon","SweepIcon","CheckIcon","FormIcon","BatchDenyIcon","BatchAcceptIcon","ControlsIcon","PlusIcon","CloseAltIcon","CrossIcon","TrashIcon","PinAltIcon","UnpinIcon","AddIcon","SubtractIcon","CloseIcon","DeleteIcon","PassedIcon","ChangedIcon","FailedIcon","ClearIcon","CommentIcon","CommentAddIcon","RequestChangeIcon","CommentsIcon","ChatIcon","LockIcon","UnlockIcon","KeyIcon","OutboxIcon","CreditIcon","ButtonIcon","TypeIcon","PointerDefaultIcon","PointerHandIcon","CommandIcon","SaveIcon"]},{name:"Communicate",icons:["InfoIcon","QuestionIcon","SupportIcon","AlertIcon","AlertAltIcon","EmailIcon","PhoneIcon","LinkIcon","LinkBrokenIcon","BellIcon","RSSIcon","ShareAltIcon","ShareIcon","JumpToIcon","CircleHollowIcon","CircleIcon","BookmarkHollowIcon","BookmarkIcon","DiamondIcon","HeartHollowIcon","HeartIcon","StarHollowIcon","StarIcon","CertificateIcon","VerifiedIcon","ThumbsUpIcon","ShieldIcon","BasketIcon","BeakerIcon","HourglassIcon","FlagIcon","CloudHollowIcon","CloudIcon","StickerIcon","StatusFailIcon","StatusIcon","StatusWarnIcon","StatusPassIcon"]},{name:"Wayfinding",icons:["ChevronUpIcon","ChevronDownIcon","ChevronLeftIcon","ChevronRightIcon","ChevronSmallUpIcon","ChevronSmallDownIcon","ChevronSmallLeftIcon","ChevronSmallRightIcon","ArrowUpIcon","ArrowDownIcon","ArrowLeftIcon","ArrowRightIcon","ArrowTopLeftIcon","ArrowTopRightIcon","ArrowBottomLeftIcon","ArrowBottomRightIcon","ArrowSolidUpIcon","ArrowSolidDownIcon","ArrowSolidLeftIcon","ArrowSolidRightIcon","ExpandAltIcon","CollapseIcon","ExpandIcon","UnfoldIcon","TransferIcon","RedirectIcon","UndoIcon","ReplyIcon","SyncIcon","UploadIcon","DownloadIcon","BackIcon","ProceedIcon","RefreshIcon","GlobeIcon","CompassIcon","LocationIcon","PinIcon","TimeIcon","DashboardIcon","TimerIcon","HomeIcon","AdminIcon","DirectionIcon"]},{name:"People",icons:["UserIcon","UserAltIcon","UserAddIcon","UsersIcon","ProfileIcon","FaceHappyIcon","FaceNeutralIcon","FaceSadIcon","AccessibilityIcon","AccessibilityAltIcon","AccessibilityIgnoredIcon"]}],lk=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M6.25 4.254a1.25 1.25 0 11-2.5 0 1.25 1.25 0 012.5 0zm-.5 0a.75.75 0 11-1.5 0 .75.75 0 011.5 0z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M13 1.504v11a.5.5 0 01-.5.5h-11a.5.5 0 01-.5-.5v-11a.5.5 0 01.5-.5h11a.5.5 0 01.5.5zM2 9.297V2.004h10v5.293L9.854 5.15a.5.5 0 00-.708 0L6.5 7.797 5.354 6.65a.5.5 0 00-.708 0L2 9.297zM9.5 6.21l2.5 2.5v3.293H2V10.71l3-3 3.146 3.146a.5.5 0 00.708-.707L7.207 8.504 9.5 6.21z",fill:e}))),sk=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M3.5 1.004a2.5 2.5 0 00-2.5 2.5v7a2.5 2.5 0 002.5 2.5h7a2.5 2.5 0 002.5-2.5v-7a2.5 2.5 0 00-2.5-2.5h-7zm8.5 5.5H7.5v-4.5h3a1.5 1.5 0 011.5 1.5v3zm0 1v3a1.5 1.5 0 01-1.5 1.5h-3v-4.5H12zm-5.5 4.5v-4.5H2v3a1.5 1.5 0 001.5 1.5h3zM2 6.504h4.5v-4.5h-3a1.5 1.5 0 00-1.5 1.5v3z",fill:e}))),uk=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M1 1.504a.5.5 0 01.5-.5H6a.5.5 0 01.5.5v4.5a.5.5 0 01-.5.5H1.5a.5.5 0 01-.5-.5v-4.5zm1 4v-3.5h3.5v3.5H2zM7.5 1.504a.5.5 0 01.5-.5h4.5a.5.5 0 01.5.5v4.5a.5.5 0 01-.5.5H8a.5.5 0 01-.5-.5v-4.5zm1 4v-3.5H12v3.5H8.5zM1.5 7.504a.5.5 0 00-.5.5v4.5a.5.5 0 00.5.5H6a.5.5 0 00.5-.5v-4.5a.5.5 0 00-.5-.5H1.5zm.5 1v3.5h3.5v-3.5H2zM7.5 8.004a.5.5 0 01.5-.5h4.5a.5.5 0 01.5.5v4.5a.5.5 0 01-.5.5H8a.5.5 0 01-.5-.5v-4.5zm1 4v-3.5H12v3.5H8.5z",fill:e}))),ck=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M2 2.004v2H1v-2.5a.5.5 0 01.5-.5H4v1H2zM1 9.004v-4h1v4H1zM1 10.004v2.5a.5.5 0 00.5.5H4v-1H2v-2H1zM10 13.004h2.5a.5.5 0 00.5-.5v-2.5h-1v2h-2v1zM12 4.004h1v-2.5a.5.5 0 00-.5-.5H10v1h2v2zM9 12.004v1H5v-1h4zM9 1.004v1H5v-1h4zM13 9.004h-1v-4h1v4zM7 8.004a1 1 0 100-2 1 1 0 000 2z",fill:e}))),dk=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M8.25 3.254a1.25 1.25 0 11-2.5 0 1.25 1.25 0 012.5 0zm-.5 0a.75.75 0 11-1.5 0 .75.75 0 011.5 0z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M14 7.003v-6.5a.5.5 0 00-.5-.5h-10a.5.5 0 00-.5.5v2.5H.5a.5.5 0 00-.5.5v2.5h1v-2h2v6.5a.5.5 0 00.5.5H10v2H8v1h2.5a.5.5 0 00.5-.5v-2.5h2.5a.5.5 0 00.5-.5v-3.5zm-10-6v5.794L5.646 5.15a.5.5 0 01.708 0L7.5 6.297l2.646-2.647a.5.5 0 01.708 0L13 5.797V1.004H4zm9 6.208l-2.5-2.5-2.293 2.293L9.354 8.15a.5.5 0 11-.708.707L6 6.211l-2 2v1.793h9V7.21z",fill:e}),l.createElement("path",{d:"M0 10.004v-3h1v3H0zM0 13.504v-2.5h1v2h2v1H.5a.5.5 0 01-.5-.5zM7 14.004H4v-1h3v1z",fill:e}))),pk=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M2.5 1H4V0H2.5A2.5 2.5 0 000 2.5V4h1V2.5A1.5 1.5 0 012.5 1z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M7.25 5.25a1.25 1.25 0 11-2.5 0 1.25 1.25 0 012.5 0zm-.5 0a.75.75 0 11-1.5 0 .75.75 0 011.5 0z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M12 2.5v9a.5.5 0 01-.5.5h-9a.5.5 0 01-.5-.5v-9a.5.5 0 01.5-.5h9a.5.5 0 01.5.5zM3 8.793V3h8v3.793L9.854 5.646a.5.5 0 00-.708 0L6.5 8.293 5.354 7.146a.5.5 0 00-.708 0L3 8.793zm6.5-2.086l1.5 1.5V11H3v-.793l2-2 2.146 2.147a.5.5 0 00.708-.708L7.207 9 9.5 6.707z",fill:e}),l.createElement("path",{d:"M10 1h1.5A1.5 1.5 0 0113 2.5V4h1V2.5A2.5 2.5 0 0011.5 0H10v1zM2.5 13H4v1H2.5A2.5 2.5 0 010 11.5V10h1v1.5A1.5 1.5 0 002.5 13zM10 13h1.5a1.5 1.5 0 001.5-1.5V10h1v1.5a2.5 2.5 0 01-2.5 2.5H10v-1z",fill:e}))),fk=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("g",{clipPath:"url(#prefix__clip0_2484_400)"},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M2.5 1A1.5 1.5 0 001 2.5v1a.5.5 0 01-1 0v-1A2.5 2.5 0 012.5 0h1a.5.5 0 010 1h-1zm3.352 1.223A.5.5 0 016.268 2h1.464a.5.5 0 01.416.223L9.333 4H11.5a.5.5 0 01.5.5v5a.5.5 0 01-.5.5h-9a.5.5 0 01-.5-.5v-5a.5.5 0 01.5-.5h2.167l1.185-1.777zM11.5 1A1.5 1.5 0 0113 2.5v1a.5.5 0 001 0v-1A2.5 2.5 0 0011.5 0h-1a.5.5 0 000 1h1zm-9 12A1.5 1.5 0 011 11.5v-1a.5.5 0 00-1 0v1A2.5 2.5 0 002.5 14h1a.5.5 0 000-1h-1zm9 0a1.5 1.5 0 001.5-1.5v-1a.5.5 0 011 0v1a2.5 2.5 0 01-2.5 2.5h-1a.5.5 0 010-1h1zM8 7a1 1 0 11-2 0 1 1 0 012 0zm1 0a2 2 0 11-4 0 2 2 0 014 0z",fill:e})),l.createElement("defs",null,l.createElement("clipPath",{id:"prefix__clip0_2484_400"},l.createElement("path",{fill:"#fff",d:"M0 0h14v14H0z"}))))),hk=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M4 3V1h1v2H4zM4 6v2h1V6H4zM4 11v2h1v-2H4zM9 11v2h1v-2H9zM9 8V6h1v2H9zM9 1v2h1V1H9zM13 5h-2V4h2v1zM11 10h2V9h-2v1zM3 10H1V9h2v1zM1 5h2V4H1v1zM8 5H6V4h2v1zM6 10h2V9H6v1zM4 4h1v1H4V4zM10 4H9v1h1V4zM9 9h1v1H9V9zM5 9H4v1h1V9z",fill:e}))),mk=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M9.544 10.206a5.5 5.5 0 11.662-.662.5.5 0 01.148.102l3 3a.5.5 0 01-.708.708l-3-3a.5.5 0 01-.102-.148zM10.5 6a4.5 4.5 0 11-9 0 4.5 4.5 0 019 0z",fill:e}))),gk=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M6 3.5a.5.5 0 01.5.5v1.5H8a.5.5 0 010 1H6.5V8a.5.5 0 01-1 0V6.5H4a.5.5 0 010-1h1.5V4a.5.5 0 01.5-.5z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M9.544 10.206a5.5 5.5 0 11.662-.662.5.5 0 01.148.102l3 3a.5.5 0 01-.708.708l-3-3a.5.5 0 01-.102-.148zM10.5 6a4.5 4.5 0 11-9 0 4.5 4.5 0 019 0z",fill:e}))),vk=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M4 5.5a.5.5 0 000 1h4a.5.5 0 000-1H4z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M6 11.5c1.35 0 2.587-.487 3.544-1.294a.5.5 0 00.102.148l3 3a.5.5 0 00.708-.708l-3-3a.5.5 0 00-.148-.102A5.5 5.5 0 106 11.5zm0-1a4.5 4.5 0 100-9 4.5 4.5 0 000 9z",fill:e}))),yk=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M1.5 2.837V1.5a.5.5 0 00-1 0V4a.5.5 0 00.5.5h2.5a.5.5 0 000-1H2.258a4.5 4.5 0 11-.496 4.016.5.5 0 10-.942.337 5.502 5.502 0 008.724 2.353.5.5 0 00.102.148l3 3a.5.5 0 00.708-.708l-3-3a.5.5 0 00-.148-.102A5.5 5.5 0 101.5 2.837z",fill:e}))),bk=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M7 9.5a2.5 2.5 0 100-5 2.5 2.5 0 000 5z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M14 7l-.21.293C13.669 7.465 10.739 11.5 7 11.5S.332 7.465.21 7.293L0 7l.21-.293C.331 6.536 3.261 2.5 7 2.5s6.668 4.036 6.79 4.207L14 7zM2.896 5.302A12.725 12.725 0 001.245 7c.296.37.874 1.04 1.65 1.698C4.043 9.67 5.482 10.5 7 10.5c1.518 0 2.958-.83 4.104-1.802A12.72 12.72 0 0012.755 7c-.297-.37-.875-1.04-1.65-1.698C9.957 4.33 8.517 3.5 7 3.5c-1.519 0-2.958.83-4.104 1.802z",fill:e}))),wk=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M1.854 1.146a.5.5 0 10-.708.708l11 11a.5.5 0 00.708-.708l-11-11zM11.104 8.698c-.177.15-.362.298-.553.439l.714.714a13.25 13.25 0 002.526-2.558L14 7l-.21-.293C13.669 6.536 10.739 2.5 7 2.5c-.89 0-1.735.229-2.506.58l.764.763A4.859 4.859 0 017 3.5c1.518 0 2.958.83 4.104 1.802A12.724 12.724 0 0112.755 7a12.72 12.72 0 01-1.65 1.698zM.21 6.707c.069-.096 1.03-1.42 2.525-2.558l.714.714c-.191.141-.376.288-.553.439A12.725 12.725 0 001.245 7c.296.37.874 1.04 1.65 1.698C4.043 9.67 5.482 10.5 7 10.5a4.86 4.86 0 001.742-.344l.764.764c-.772.351-1.616.58-2.506.58C3.262 11.5.332 7.465.21 7.293L0 7l.21-.293z",fill:e}),l.createElement("path",{d:"M4.5 7c0-.322.061-.63.172-.914l3.242 3.242A2.5 2.5 0 014.5 7zM9.328 7.914L6.086 4.672a2.5 2.5 0 013.241 3.241z",fill:e}))),Dk=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M2.522 6.6a.566.566 0 00-.176.544.534.534 0 00.382.41l2.781.721-1.493 5.013a.563.563 0 00.216.627.496.496 0 00.63-.06l6.637-6.453a.568.568 0 00.151-.54.534.534 0 00-.377-.396l-2.705-.708 2.22-4.976a.568.568 0 00-.15-.666.497.497 0 00-.648.008L2.522 6.6zm7.72.63l-3.067-.804L9.02 2.29 3.814 6.803l2.95.764-1.277 4.285 4.754-4.622zM4.51 13.435l.037.011-.037-.011z",fill:e}))),cE=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M10.139 8.725l1.36-1.323a.568.568 0 00.151-.54.534.534 0 00-.377-.396l-2.705-.708 2.22-4.976a.568.568 0 00-.15-.666.497.497 0 00-.648.008L5.464 4.05l.708.71 2.848-2.47-1.64 3.677.697.697 2.164.567-.81.787.708.708zM2.523 6.6a.566.566 0 00-.177.544.534.534 0 00.382.41l2.782.721-1.494 5.013a.563.563 0 00.217.627.496.496 0 00.629-.06l3.843-3.736-.708-.707-2.51 2.44 1.137-3.814-.685-.685-2.125-.55.844-.731-.71-.71L2.524 6.6zM1.854 1.146a.5.5 0 10-.708.708l11 11a.5.5 0 00.708-.708l-11-11z",fill:e}))),Ek=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M1 1.504a.5.5 0 01.5-.5h11a.5.5 0 01.5.5v11a.5.5 0 01-.5.5h-11a.5.5 0 01-.5-.5v-11zm1 10.5h10v-10l-10 10z",fill:e}))),Ck=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M1.5 1.004a.5.5 0 100 1H12v10.5a.5.5 0 001 0v-10.5a1 1 0 00-1-1H1.5z",fill:e}),l.createElement("path",{d:"M1 3.504a.5.5 0 01.5-.5H10a1 1 0 011 1v8.5a.5.5 0 01-1 0v-8.5H1.5a.5.5 0 01-.5-.5z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M1.5 5.004a.5.5 0 00-.5.5v7a.5.5 0 00.5.5h7a.5.5 0 00.5-.5v-7a.5.5 0 00-.5-.5h-7zm.5 1v6h6v-6H2z",fill:e}))),xk=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M3 3.004H.5a.5.5 0 00-.5.5v10a.5.5 0 00.5.5h10a.5.5 0 00.5-.5v-2.5h2.5a.5.5 0 00.5-.5v-10a.5.5 0 00-.5-.5h-10a.5.5 0 00-.5.5v2.5zm1 1v2.293l2.293-2.293H4zm-1 0v6.5a.499.499 0 00.497.5H10v2H1v-9h2zm1-1h6.5a.499.499 0 01.5.5v6.5h2v-9H4v2zm6 7V7.71l-2.293 2.293H10zm0-3.707V4.71l-5.293 5.293h1.586L10 6.297zm-.707-2.293H7.707L4 7.71v1.586l5.293-5.293z",fill:e}))),Sk=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M3 3.004v-2.5a.5.5 0 01.5-.5h10a.5.5 0 01.5.5v10a.5.5 0 01-.5.5H11v2.5a.5.5 0 01-.5.5H.5a.5.5 0 01-.5-.5v-10a.5.5 0 01.5-.5H3zm1 0v-2h9v9h-2v-6.5a.5.5 0 00-.5-.5H4zm6 8v2H1v-9h2v6.5a.5.5 0 00.5.5H10zm0-1H4v-6h6v6z",fill:e}))),Fk=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("g",{clipPath:"url(#prefix__clip0_2359_559)",fillRule:"evenodd",clipRule:"evenodd",fill:e},l.createElement("path",{d:"M3 3.004H.5a.5.5 0 00-.5.5v10a.5.5 0 00.5.5h7.176a4.526 4.526 0 01-.916-1H1v-9h2v6.5a.499.499 0 00.497.5h2.531a4.548 4.548 0 01-.001-1h-1.32l2.16-2.16c.274-.374.603-.703.977-.977L10 4.711v1.316a4.552 4.552 0 011 0V3.504a.48.48 0 00-.038-.191.5.5 0 00-.462-.31H4v-2h9v5.755c.378.253.715.561 1 .913V.504a.5.5 0 00-.5-.5h-10a.5.5 0 00-.5.5v2.5zm1 1v2.293l2.293-2.293H4zm5.293 0H7.707L4 7.71v1.586l5.293-5.293z"}),l.createElement("path",{d:"M14 10.5a3.5 3.5 0 11-7 0 3.5 3.5 0 017 0zm-5.5 0A.5.5 0 019 10h3a.5.5 0 010 1H9a.5.5 0 01-.5-.5z"})),l.createElement("defs",null,l.createElement("clipPath",{id:"prefix__clip0_2359_559"},l.createElement("path",{fill:"#fff",d:"M0 0h14v14H0z"}))))),Ak=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M11.854.146a.5.5 0 00-.708 0L2.983 8.31a2.24 2.24 0 00-1.074.6C.677 10.14.24 11.902.085 12.997 0 13.6 0 14 0 14s.4 0 1.002-.085c1.095-.155 2.857-.592 4.089-1.824a2.24 2.24 0 00.6-1.074l8.163-8.163a.5.5 0 000-.708l-2-2zM5.6 9.692l.942-.942L5.25 7.457l-.942.943A2.242 2.242 0 015.6 9.692zm1.649-1.65L12.793 2.5 11.5 1.207 5.957 6.75 7.25 8.043zM4.384 9.617a1.25 1.25 0 010 1.768c-.767.766-1.832 1.185-2.78 1.403-.17.04-.335.072-.49.098.027-.154.06-.318.099-.49.219-.947.637-2.012 1.403-2.779a1.25 1.25 0 011.768 0z",fill:e}))),kk=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M1.5 1.004a.5.5 0 01.5.5v.5h10v-.5a.5.5 0 011 0v2a.5.5 0 01-1 0v-.5H2v.5a.5.5 0 01-1 0v-2a.5.5 0 01.5-.5z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M1.5 6a.5.5 0 00-.5.5v6a.5.5 0 00.5.5h11a.5.5 0 00.5-.5v-6a.5.5 0 00-.5-.5h-11zM2 7v5h10V7h-1v2.5a.5.5 0 01-1 0V7h-.75v1a.5.5 0 01-1 0V7H7.5v2.5a.5.5 0 01-1 0V7h-.75v1a.5.5 0 01-1 0V7H4v2.5a.5.5 0 01-1 0V7H2z",fill:e}))),_k=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M10 7a3 3 0 11-6 0 3 3 0 016 0zM9 7a2 2 0 11-4 0 2 2 0 014 0z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M2.5 1a.5.5 0 00-.5.5v.504H.5a.5.5 0 00-.5.5v9a.5.5 0 00.5.5h13a.5.5 0 00.5-.5v-9a.5.5 0 00-.5-.5H6V1.5a.5.5 0 00-.5-.5h-3zM1 3.004v8h12v-8H1z",fill:e}))),Bk=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M2.5 10a.5.5 0 100-1 .5.5 0 000 1z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M0 4a2 2 0 012-2h6a2 2 0 012 2v.5l3.189-2.391A.5.5 0 0114 2.5v9a.5.5 0 01-.804.397L10 9.5v.5a2 2 0 01-2 2H2a2 2 0 01-2-2V4zm9 0v1.5a.5.5 0 00.8.4L13 3.5v7L9.8 8.1a.5.5 0 00-.8.4V10a1 1 0 01-1 1H2a1 1 0 01-1-1V4a1 1 0 011-1h6a1 1 0 011 1z",fill:e}))),Rk=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M1 4.5v5a.5.5 0 00.5.5H4l3.17 2.775a.5.5 0 00.83-.377V1.602a.5.5 0 00-.83-.376L4 4H1.5a.5.5 0 00-.5.5zM4 9V5H2v4h2zm.998.545A.504.504 0 005 9.5v-5c0-.015 0-.03-.002-.044L7 2.704v8.592L4.998 9.545z",fill:e}),l.createElement("path",{d:"M10.15 1.752a.5.5 0 00-.3.954 4.502 4.502 0 010 8.588.5.5 0 00.3.954 5.502 5.502 0 000-10.496z",fill:e}),l.createElement("path",{d:"M10.25 3.969a.5.5 0 00-.5.865 2.499 2.499 0 010 4.332.5.5 0 10.5.866 3.499 3.499 0 000-6.063z",fill:e}))),Ik=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M12.813 7.425l-9.05 5.603A.5.5 0 013 12.603V1.398a.5.5 0 01.763-.425l9.05 5.602a.5.5 0 010 .85z",fill:e}))),zk=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M11.24 12.035L3.697 7.427A.494.494 0 013.5 7.2v4.05a.75.75 0 01-1.5 0v-8.5a.75.75 0 011.5 0V6.8a.494.494 0 01.198-.227l7.541-4.608A.5.5 0 0112 2.39v9.217a.5.5 0 01-.76.427z",fill:e}))),Tk=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M2.76 12.035l7.542-4.608A.495.495 0 0010.5 7.2v4.05a.75.75 0 001.5 0v-8.5a.75.75 0 00-1.5 0V6.8a.495.495 0 00-.198-.227L2.76 1.965A.5.5 0 002 2.39v9.217a.5.5 0 00.76.427z",fill:e}))),Lk=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M9 2.42v2.315l4.228-2.736a.5.5 0 01.772.42v9.162a.5.5 0 01-.772.42L9 9.263v2.317a.5.5 0 01-.772.42L1.5 7.647v3.603a.75.75 0 01-1.5 0v-8.5a.75.75 0 011.5 0v3.603L8.228 2A.5.5 0 019 2.42z",fill:e}))),Mk=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M5 2.42v2.315L.772 1.999a.5.5 0 00-.772.42v9.162a.5.5 0 00.772.42L5 9.263v2.317a.5.5 0 00.772.42L12.5 7.647v3.603a.75.75 0 001.5 0v-8.5a.75.75 0 00-1.5 0v3.603L5.772 2A.5.5 0 005 2.42z",fill:e}))),Ok=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M1 1.504a.5.5 0 01.5-.5h11a.5.5 0 01.5.5v11a.5.5 0 01-.5.5h-11a.5.5 0 01-.5-.5v-11z",fill:e}))),Pk=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("g",{clipPath:"url(#prefix__clip0_1107_3492)",fill:e},l.createElement("path",{d:"M7.5.5a.5.5 0 00-1 0V2a.5.5 0 001 0V.5z"}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M7 10a3 3 0 100-6 3 3 0 000 6zm0-1a2 2 0 100-4 2 2 0 000 4z"}),l.createElement("path",{d:"M7 11.5a.5.5 0 01.5.5v1.5a.5.5 0 01-1 0V12a.5.5 0 01.5-.5zM11.5 7a.5.5 0 01.5-.5h1.5a.5.5 0 010 1H12a.5.5 0 01-.5-.5zM.5 6.5a.5.5 0 000 1H2a.5.5 0 000-1H.5zM3.818 10.182a.5.5 0 010 .707l-1.06 1.06a.5.5 0 11-.708-.706l1.06-1.06a.5.5 0 01.708 0zM11.95 2.757a.5.5 0 10-.707-.707l-1.061 1.061a.5.5 0 10.707.707l1.06-1.06zM10.182 10.182a.5.5 0 01.707 0l1.06 1.06a.5.5 0 11-.706.708l-1.061-1.06a.5.5 0 010-.708zM2.757 2.05a.5.5 0 10-.707.707l1.06 1.061a.5.5 0 00.708-.707l-1.06-1.06z"})),l.createElement("defs",null,l.createElement("clipPath",{id:"prefix__clip0_1107_3492"},l.createElement("path",{fill:"#fff",d:"M0 0h14v14H0z"}))))),Nk=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("g",{clipPath:"url(#prefix__clip0_1107_3493)"},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M8.335.047l-.15-.015a7.499 7.499 0 106.14 10.577c.103-.229-.156-.447-.386-.346a5.393 5.393 0 01-.771.27A5.356 5.356 0 019.153.691C9.37.568 9.352.23 9.106.175a7.545 7.545 0 00-.77-.128zM6.977 1.092a6.427 6.427 0 005.336 10.671A6.427 6.427 0 116.977 1.092z",fill:e})),l.createElement("defs",null,l.createElement("clipPath",{id:"prefix__clip0_1107_3493"},l.createElement("path",{fill:"#fff",transform:"scale(1.07124)",d:"M0 0h14.001v14.002H0z"}))))),$k=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M2.2 2.204v9.6h9.6v-9.6H2.2zm-.7-1.2a.5.5 0 00-.5.5v11a.5.5 0 00.5.5h11a.5.5 0 00.5-.5v-11a.5.5 0 00-.5-.5h-11z",fill:e}))),Hk=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M4.2 10.88L10.668 7 4.2 3.12v7.76zM3 2.414v9.174a.8.8 0 001.212.686l7.645-4.587a.8.8 0 000-1.372L4.212 1.727A.8.8 0 003 2.413z",fill:e}))),jk=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M5.2 10.88L11.668 7 5.2 3.12v7.76zM4 2.414v9.174a.8.8 0 001.212.686l7.645-4.587a.8.8 0 000-1.372L5.212 1.727A.8.8 0 004 2.413zM1.5 1.6a.6.6 0 01.6.6v9.6a.6.6 0 11-1.2 0V2.2a.6.6 0 01.6-.6z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M.963 1.932a.6.6 0 01.805-.268l1 .5a.6.6 0 01-.536 1.073l-1-.5a.6.6 0 01-.269-.805zM3.037 11.132a.6.6 0 01-.269.805l-1 .5a.6.6 0 01-.536-1.073l1-.5a.6.6 0 01.805.268z",fill:e}))),Vk=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M4.5 4a.5.5 0 00-.5.5v5a.5.5 0 00.5.5h5a.5.5 0 00.5-.5v-5a.5.5 0 00-.5-.5h-5z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M14 7A7 7 0 110 7a7 7 0 0114 0zm-1 0A6 6 0 111 7a6 6 0 0112 0z",fill:e}))),Uk=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M1 1.504a.5.5 0 01.5-.5h11a.5.5 0 01.5.5v11a.5.5 0 01-.5.5h-11a.5.5 0 01-.5-.5v-11zm1 10.5v-10h5v10H2z",fill:e}))),qk=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M12.5 1.004a.5.5 0 01.5.5v11a.5.5 0 01-.5.5h-11a.5.5 0 01-.5-.5v-11a.5.5 0 01.5-.5h11zm-10.5 1h10v5H2v-5z",fill:e}))),Wk=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M13 2a2 2 0 00-2-2H1.5a.5.5 0 00-.5.5v13a.5.5 0 00.5.5H11a2 2 0 002-2V2zM3 13h8a1 1 0 001-1V2a1 1 0 00-1-1H7v6.004a.5.5 0 01-.856.352l-.002-.002L5.5 6.71l-.645.647A.5.5 0 014 7.009V1H3v12zM5 1v4.793l.146-.146a.5.5 0 01.743.039l.111.11V1H5z",fill:e}))),Gk=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M4 5.5a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5zM4.5 7.5a.5.5 0 000 1h5a.5.5 0 000-1h-5zM4 10.5a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M1.5 0a.5.5 0 00-.5.5v13a.5.5 0 00.5.5h11a.5.5 0 00.5-.5V3.207a.5.5 0 00-.146-.353L10.146.146A.5.5 0 009.793 0H1.5zM2 1h7.5v2a.5.5 0 00.5.5h2V13H2V1z",fill:e}))),Kk=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M11.746.07A.5.5 0 0011.5.003h-6a.5.5 0 00-.5.5v2.5H.5a.5.5 0 00-.5.5v10a.5.5 0 00.5.5h8a.5.5 0 00.5-.5v-2.5h4.5a.5.5 0 00.5-.5v-8a.498.498 0 00-.15-.357L11.857.154a.506.506 0 00-.11-.085zM9 10.003h4v-7h-1.5a.5.5 0 01-.5-.5v-1.5H6v2h.5a.5.5 0 01.357.15L8.85 5.147c.093.09.15.217.15.357v4.5zm-8-6v9h7v-7H6.5a.5.5 0 01-.5-.5v-1.5H1z",fill:e}))),Yk=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M3 1.5a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5zM2 3.504a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M1 5.5a.5.5 0 01.5-.5h11a.5.5 0 01.5.5v7a.5.5 0 01-.5.5h-11a.5.5 0 01-.5-.5v-7zM2 12V6h10v6H2z",fill:e}))),Zk=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M6.586 3.504l-1.5-1.5H1v9h12v-7.5H6.586zm.414-1L5.793 1.297a1 1 0 00-.707-.293H.5a.5.5 0 00-.5.5v10a.5.5 0 00.5.5h13a.5.5 0 00.5-.5v-8.5a.5.5 0 00-.5-.5H7z",fill:e}))),Jk=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M4.5 8.004a.5.5 0 100 1h5a.5.5 0 000-1h-5zM4.5 10.004a.5.5 0 000 1h5a.5.5 0 000-1h-5z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M2 1.504a.5.5 0 01.5-.5h8a.498.498 0 01.357.15l.993.993c.093.09.15.217.15.357v1.5h1.5a.5.5 0 01.5.5v5a.5.5 0 01-.5.5H12v2.5a.5.5 0 01-.5.5h-9a.5.5 0 01-.5-.5v-2.5H.5a.5.5 0 01-.5-.5v-5a.5.5 0 01.5-.5H2v-2.5zm11 7.5h-1v-2.5a.5.5 0 00-.5-.5h-9a.5.5 0 00-.5.5v2.5H1v-4h12v4zm-2-6v1H3v-2h7v.5a.5.5 0 00.5.5h.5zm-8 9h8v-5H3v5z",fill:e}))),Xk=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M5.146 6.15a.5.5 0 01.708 0L7 7.297 9.146 5.15a.5.5 0 01.708 0l1 1a.5.5 0 01-.708.707L9.5 6.211 7.354 8.357a.5.5 0 01-.708 0L5.5 7.211 3.854 8.857a.5.5 0 11-.708-.707l2-2z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M1.5 1.004a.5.5 0 00-.5.5v11a.5.5 0 00.5.5h11a.5.5 0 00.5-.5v-11a.5.5 0 00-.5-.5h-11zm.5 1v10h10v-10H2z",fill:e}))),Qk=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M3.5 0a.5.5 0 01.5.5V1h6V.5a.5.5 0 011 0V1h1.5a.5.5 0 01.5.5v11a.5.5 0 01-.5.5h-11a.5.5 0 01-.5-.5v-11a.5.5 0 01.5-.5H3V.5a.5.5 0 01.5-.5zM2 4v2.3h3V4H2zm0 5.2V6.8h3v2.4H2zm0 .5V12h3V9.7H2zm3.5 0V12h3V9.7h-3zm3.5 0V12h3V9.7H9zm3-.5H9V6.8h3v2.4zm-3.5 0h-3V6.8h3v2.4zM9 4v2.3h3V4H9zM5.5 6.3h3V4h-3v2.3z",fill:e}))),e_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M12 2.5a.5.5 0 00-1 0v10a.5.5 0 001 0v-10zM9 4.5a.5.5 0 00-1 0v8a.5.5 0 001 0v-8zM5.5 7a.5.5 0 01.5.5v5a.5.5 0 01-1 0v-5a.5.5 0 01.5-.5zM3 10.5a.5.5 0 00-1 0v2a.5.5 0 001 0v-2z",fill:e}))),t_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M13 2a.5.5 0 010 1H1a.5.5 0 010-1h12zM10 5a.5.5 0 010 1H1a.5.5 0 010-1h9zM11.5 8.5A.5.5 0 0011 8H1a.5.5 0 000 1h10a.5.5 0 00.5-.5zM7.5 11a.5.5 0 010 1H1a.5.5 0 010-1h6.5z",fill:e}))),r_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M1 2a.5.5 0 000 1h12a.5.5 0 000-1H1zM4 5a.5.5 0 000 1h9a.5.5 0 000-1H4zM2.5 8.5A.5.5 0 013 8h10a.5.5 0 010 1H3a.5.5 0 01-.5-.5zM6.5 11a.5.5 0 000 1H13a.5.5 0 000-1H6.5z",fill:e}))),n_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M1 2a.5.5 0 000 1h12a.5.5 0 000-1H1zM3 5a.5.5 0 000 1h8a.5.5 0 000-1H3zM4.5 8.5A.5.5 0 015 8h4a.5.5 0 010 1H5a.5.5 0 01-.5-.5zM6.5 11a.5.5 0 000 1h1a.5.5 0 000-1h-1z",fill:e}))),a_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M1 1.5a.5.5 0 01.5-.5h11a.5.5 0 01.5.5v11a.5.5 0 01-.5.5h-11a.5.5 0 01-.5-.5v-11zM2 4v2.3h3V4H2zm0 5.2V6.8h3v2.4H2zm0 .5V12h3V9.7H2zm3.5 0V12h3V9.7h-3zm3.5 0V12h3V9.7H9zm3-.5H9V6.8h3v2.4zm-3.5 0h-3V6.8h3v2.4zM9 6.3h3V4H9v2.3zm-3.5 0h3V4h-3v2.3z",fill:e}))),o_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M3.5 6.5A.5.5 0 014 6h6a.5.5 0 010 1H4a.5.5 0 01-.5-.5zM4 9a.5.5 0 000 1h6a.5.5 0 000-1H4z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M1 1.5a.5.5 0 01.5-.5h11a.5.5 0 01.5.5v11a.5.5 0 01-.5.5h-11a.5.5 0 01-.5-.5v-11zM2 4v8h10V4H2z",fill:e}))),i_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M13 4a.5.5 0 010 1H1a.5.5 0 010-1h12zM13.5 9.5A.5.5 0 0013 9H1a.5.5 0 000 1h12a.5.5 0 00.5-.5z",fill:e}))),l_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M13 3.5a.5.5 0 010 1H1a.5.5 0 010-1h12zM13.5 10a.5.5 0 00-.5-.5H1a.5.5 0 000 1h12a.5.5 0 00.5-.5zM13 6.5a.5.5 0 010 1H1a.5.5 0 010-1h12z",fill:e}))),s_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M8.982 1.632a.5.5 0 00-.964-.263l-3 11a.5.5 0 10.964.263l3-11zM3.32 3.616a.5.5 0 01.064.704L1.151 7l2.233 2.68a.5.5 0 11-.768.64l-2.5-3a.5.5 0 010-.64l2.5-3a.5.5 0 01.704-.064zM10.68 3.616a.5.5 0 00-.064.704L12.849 7l-2.233 2.68a.5.5 0 00.768.64l2.5-3a.5.5 0 000-.64l-2.5-3a.5.5 0 00-.704-.064z",fill:e}))),u_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M3 2v1.5h1v7H3V12h5a3 3 0 001.791-5.407A2.75 2.75 0 008 2.011V2H3zm5 5.5H5.5v3H8a1.5 1.5 0 100-3zm-.25-4H5.5V6h2.25a1.25 1.25 0 100-2.5z",fill:e}))),c_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M5 2h6v1H8.5l-2 8H9v1H3v-1h2.5l2-8H5V2z",fill:e}))),d_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M10.553 2.268a1.5 1.5 0 00-2.12 0L2.774 7.925a2.5 2.5 0 003.536 3.535l3.535-3.535a.5.5 0 11.707.707l-3.535 3.536-.002.002a3.5 3.5 0 01-4.959-4.941l.011-.011L7.725 1.56l.007-.008a2.5 2.5 0 013.53 3.541l-.002.002-5.656 5.657-.003.003a1.5 1.5 0 01-2.119-2.124l3.536-3.536a.5.5 0 11.707.707L4.189 9.34a.5.5 0 00.707.707l5.657-5.657a1.5 1.5 0 000-2.121z",fill:e}))),p_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M5 2.5a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5zM5 7a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7A.5.5 0 015 7zM5.5 11a.5.5 0 000 1h7a.5.5 0 000-1h-7zM2.5 2H1v1h1v3h1V2.5a.5.5 0 00-.5-.5zM3 8.5v1a.5.5 0 01-1 0V9h-.5a.5.5 0 010-1h1a.5.5 0 01.5.5zM2 10.5a.5.5 0 00-1 0V12h2v-1H2v-.5z",fill:e}))),f_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M2.75 2.5a.75.75 0 11-1.5 0 .75.75 0 011.5 0zM5.5 2a.5.5 0 000 1h7a.5.5 0 000-1h-7zM5.5 11a.5.5 0 000 1h7a.5.5 0 000-1h-7zM2 12.25a.75.75 0 100-1.5.75.75 0 000 1.5zM5 7a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7A.5.5 0 015 7zM2 7.75a.75.75 0 100-1.5.75.75 0 000 1.5z",fill:e}))),h_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M6 7a3 3 0 110-6h5.5a.5.5 0 010 1H10v10.5a.5.5 0 01-1 0V2H7v10.5a.5.5 0 01-1 0V7z",fill:e}))),m_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M2 4.5h1.5L5 6.375 6.5 4.5H8v5H6.5V7L5 8.875 3.5 7v2.5H2v-5zM9.75 4.5h1.5V7h1.25l-2 2.5-2-2.5h1.25V4.5z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M.5 2a.5.5 0 00-.5.5v9a.5.5 0 00.5.5h13a.5.5 0 00.5-.5v-9a.5.5 0 00-.5-.5H.5zM1 3v8h12V3H1z",fill:e}))),g_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M5 2.5a.5.5 0 11-1 0 .5.5 0 011 0zM4.5 5a.5.5 0 100-1 .5.5 0 000 1zM5 6.5a.5.5 0 11-1 0 .5.5 0 011 0z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M11 0a2 2 0 012 2v10a2 2 0 01-2 2H1.5a.5.5 0 01-.5-.5V.5a.5.5 0 01.5-.5H11zm0 1H3v12h8a1 1 0 001-1V2a1 1 0 00-1-1z",fill:e}))),v_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M3.031 7.5a4 4 0 007.938 0H13.5a.5.5 0 000-1h-2.53a4 4 0 00-7.94 0H.501a.5.5 0 000 1h2.531zM7 10a3 3 0 100-6 3 3 0 000 6z",fill:e}))),y_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M6 2.5a1.5 1.5 0 01-1 1.415v4.053C5.554 7.4 6.367 7 7.5 7c.89 0 1.453-.252 1.812-.557.218-.184.374-.4.482-.62a1.5 1.5 0 111.026.143c-.155.423-.425.87-.86 1.24C9.394 7.685 8.59 8 7.5 8c-1.037 0-1.637.42-1.994.917a2.81 2.81 0 00-.472 1.18A1.5 1.5 0 114 10.086v-6.17A1.5 1.5 0 116 2.5zm-2 9a.5.5 0 111 0 .5.5 0 01-1 0zm1-9a.5.5 0 11-1 0 .5.5 0 011 0zm6 2a.5.5 0 11-1 0 .5.5 0 011 0z",fill:e}))),b_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M8.354 1.354L7.707 2H8.5A2.5 2.5 0 0111 4.5v5.585a1.5 1.5 0 11-1 0V4.5A1.5 1.5 0 008.5 3h-.793l.647.646a.5.5 0 11-.708.708l-1.5-1.5a.5.5 0 010-.708l1.5-1.5a.5.5 0 11.708.708zM11 11.5a.5.5 0 11-1 0 .5.5 0 011 0zM4 3.915a1.5 1.5 0 10-1 0v6.17a1.5 1.5 0 101 0v-6.17zM3.5 11a.5.5 0 100 1 .5.5 0 000-1zm0-8a.5.5 0 100-1 .5.5 0 000 1z",fill:e}))),w_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M4.108 3.872A1.5 1.5 0 103 3.915v6.17a1.5 1.5 0 101 0V6.41c.263.41.573.77.926 1.083 1.108.98 2.579 1.433 4.156 1.5A1.5 1.5 0 109.09 7.99c-1.405-.065-2.62-.468-3.5-1.248-.723-.64-1.262-1.569-1.481-2.871zM3.5 11a.5.5 0 100 1 .5.5 0 000-1zM4 2.5a.5.5 0 11-1 0 .5.5 0 011 0zm7 6a.5.5 0 11-1 0 .5.5 0 011 0z",fill:e}))),D_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M11.03 8.103a3.044 3.044 0 01-.202-1.744 2.697 2.697 0 011.4-1.935c-.749-1.18-1.967-1.363-2.35-1.403-.835-.086-2.01.56-2.648.57h-.016c-.639-.01-1.814-.656-2.649-.57-.415.044-1.741.319-2.541 1.593-.281.447-.498 1.018-.586 1.744a6.361 6.361 0 00-.044.85c.005.305.028.604.07.895.09.62.259 1.207.477 1.744.242.595.543 1.13.865 1.585.712 1.008 1.517 1.59 1.971 1.6.934.021 1.746-.61 2.416-.594.006.002.014.003.02.002h.017c.007 0 .014 0 .021-.002.67-.017 1.481.615 2.416.595.453-.011 1.26-.593 1.971-1.6a7.95 7.95 0 00.97-1.856c-.697-.217-1.27-.762-1.578-1.474zm-2.168-5.97c.717-.848.69-2.07.624-2.125-.065-.055-1.25.163-1.985.984-.735.82-.69 2.071-.624 2.125.064.055 1.268-.135 1.985-.984z",fill:e}))),E_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M7 0a3 3 0 013 3v1.24c.129.132.25.27.362.415.113.111.283.247.515.433l.194.155c.325.261.711.582 1.095.966.765.765 1.545 1.806 1.823 3.186a.501.501 0 01-.338.581 3.395 3.395 0 01-1.338.134 2.886 2.886 0 01-1.049-.304 5.535 5.535 0 01-.17.519 2 2 0 11-2.892 2.55A5.507 5.507 0 017 13c-.439 0-.838-.044-1.201-.125a2 2 0 11-2.892-2.55 5.553 5.553 0 01-.171-.519c-.349.182-.714.27-1.05.304A3.395 3.395 0 01.35 9.977a.497.497 0 01-.338-.582c.278-1.38 1.058-2.42 1.823-3.186.384-.384.77-.705 1.095-.966l.194-.155c.232-.186.402-.322.515-.433.112-.145.233-.283.362-.414V3a3 3 0 013-3zm1.003 11.895a2 2 0 012.141-1.89c.246-.618.356-1.322.356-2.005 0-.514-.101-1.07-.301-1.599l-.027-.017a6.387 6.387 0 00-.857-.42 6.715 6.715 0 00-1.013-.315l-.852.638a.75.75 0 01-.9 0l-.852-.638a6.716 6.716 0 00-1.693.634 4.342 4.342 0 00-.177.101l-.027.017A4.6 4.6 0 003.501 8c0 .683.109 1.387.355 2.005a2 2 0 012.142 1.89c.295.067.627.105 1.002.105s.707-.038 1.003-.105zM5 12a1 1 0 11-2 0 1 1 0 012 0zm6 0a1 1 0 11-2 0 1 1 0 012 0zM6.1 4.3a1.5 1.5 0 011.8 0l.267.2L7 5.375 5.833 4.5l.267-.2zM8.5 2a.5.5 0 01.5.5V3a.5.5 0 01-1 0v-.5a.5.5 0 01.5-.5zM6 2.5a.5.5 0 00-1 0V3a.5.5 0 001 0v-.5z",fill:e}))),C_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("g",{clipPath:"url(#prefix__clip0_1107_3497)",fill:e},l.createElement("path",{d:"M12.261 2.067c0 1.142-.89 2.068-1.988 2.068-1.099 0-1.99-.926-1.99-2.068C8.283.926 9.174 0 10.273 0c1.098 0 1.989.926 1.989 2.067zM3.978 6.6c0 1.142-.89 2.068-1.989 2.068C.891 8.668 0 7.742 0 6.601c0-1.142.89-2.068 1.989-2.068 1.099 0 1.989.926 1.989 2.068zM6.475 11.921A4.761 4.761 0 014.539 11a4.993 4.993 0 01-1.367-1.696 2.765 2.765 0 01-1.701.217 6.725 6.725 0 001.844 2.635 6.379 6.379 0 004.23 1.577 3.033 3.033 0 01-.582-1.728 4.767 4.767 0 01-.488-.083zM11.813 11.933c0 1.141-.89 2.067-1.989 2.067-1.098 0-1.989-.926-1.989-2.067 0-1.142.891-2.068 1.99-2.068 1.098 0 1.989.926 1.989 2.068zM12.592 11.173a6.926 6.926 0 001.402-3.913 6.964 6.964 0 00-1.076-4.023A2.952 2.952 0 0111.8 4.6c.398.78.592 1.656.564 2.539a5.213 5.213 0 01-.724 2.495c.466.396.8.935.952 1.54zM1.987 3.631c-.05 0-.101.002-.151.004C3.073 1.365 5.504.024 8.005.23a3.07 3.07 0 00-.603 1.676 4.707 4.707 0 00-2.206.596 4.919 4.919 0 00-1.7 1.576 2.79 2.79 0 00-1.509-.447z"})),l.createElement("defs",null,l.createElement("clipPath",{id:"prefix__clip0_1107_3497"},l.createElement("path",{fill:"#fff",d:"M0 0h14v14H0z"}))))),x_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M6.5 1H1v5.5h5.5V1zM13 1H7.5v5.5H13V1zM7.5 7.5H13V13H7.5V7.5zM6.5 7.5H1V13h5.5V7.5z",fill:e}))),S_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("g",{clipPath:"url(#prefix__clip0_1107_3496)"},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M13.023 3.431a.115.115 0 01-.099.174H7.296A3.408 3.408 0 003.7 6.148a.115.115 0 01-.21.028l-1.97-3.413a.115.115 0 01.01-.129A6.97 6.97 0 017 0a6.995 6.995 0 016.023 3.431zM7 9.615A2.619 2.619 0 014.384 7 2.62 2.62 0 017 4.383 2.619 2.619 0 019.616 7 2.619 2.619 0 017 9.615zm1.034.71a.115.115 0 00-.121-.041 3.4 3.4 0 01-.913.124 3.426 3.426 0 01-3.091-1.973L1.098 3.567a.115.115 0 00-.2.001 7.004 7.004 0 005.058 10.354l.017.001c.04 0 .078-.021.099-.057l1.971-3.414a.115.115 0 00-.009-.128zm1.43-5.954h3.947c.047 0 .09.028.107.072.32.815.481 1.675.481 2.557a6.957 6.957 0 01-2.024 4.923A6.957 6.957 0 017.08 14h-.001a.115.115 0 01-.1-.172L9.794 8.95A3.384 3.384 0 0010.408 7c0-.921-.364-1.785-1.024-2.433a.115.115 0 01.08-.196z",fill:e})),l.createElement("defs",null,l.createElement("clipPath",{id:"prefix__clip0_1107_3496"},l.createElement("path",{fill:"#fff",d:"M0 0h14v14H0z"}))))),F_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M2.042.616a.704.704 0 00-.66.729L1.816 12.9c.014.367.306.66.672.677l9.395.422h.032a.704.704 0 00.704-.703V.704c0-.015 0-.03-.002-.044a.704.704 0 00-.746-.659l-.773.049.057 1.615a.105.105 0 01-.17.086l-.52-.41-.617.468a.105.105 0 01-.168-.088L9.746.134 2.042.616zm8.003 4.747c-.247.192-2.092.324-2.092.05.04-1.045-.429-1.091-.689-1.091-.247 0-.662.075-.662.634 0 .57.607.893 1.32 1.27 1.014.538 2.24 1.188 2.24 2.823 0 1.568-1.273 2.433-2.898 2.433-1.676 0-3.141-.678-2.976-3.03.065-.275 2.197-.21 2.197 0-.026.971.195 1.256.753 1.256.43 0 .624-.236.624-.634 0-.602-.633-.958-1.361-1.367-.987-.554-2.148-1.205-2.148-2.7 0-1.494 1.027-2.489 2.86-2.489 1.832 0 2.832.98 2.832 2.845z",fill:e}))),A_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("g",{clipPath:"url(#prefix__clip0_1107_3503)"},l.createElement("path",{d:"M0 5.176l1.31-1.73 4.902-1.994V.014l4.299 3.144-8.78 1.706v4.8L0 9.162V5.176zm14-2.595v8.548l-3.355 2.857-5.425-1.783v1.783L1.73 9.661l8.784 1.047v-7.55L14 2.581z",fill:e})),l.createElement("defs",null,l.createElement("clipPath",{id:"prefix__clip0_1107_3503"},l.createElement("path",{fill:"#fff",d:"M0 0h14v14H0z"}))))),k_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M1 1.522a.411.411 0 00-.412.476l1.746 10.597a.56.56 0 00.547.466h8.373a.411.411 0 00.412-.345l1.017-6.248h-3.87L8.35 9.18H5.677l-.724-3.781h7.904L13.412 2A.411.411 0 0013 1.524L1 1.522z",fill:e}))),__=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M0 7a7 7 0 1014 0A7 7 0 000 7zm5.215-3.869a1.967 1.967 0 013.747.834v1.283l-3.346-1.93a2.486 2.486 0 00-.401-.187zm3.484 2.58l-3.346-1.93a1.968 1.968 0 00-2.685.72 1.954 1.954 0 00.09 2.106 2.45 2.45 0 01.362-.254l1.514-.873a.27.27 0 01.268 0l2.1 1.21 1.697-.978zm-.323 4.972L6.86 9.81a.268.268 0 01-.134-.231V7.155l-1.698-.98v3.86a1.968 1.968 0 003.747.835 2.488 2.488 0 01-.4-.187zm.268-.464a1.967 1.967 0 002.685-.719 1.952 1.952 0 00-.09-2.106c-.112.094-.233.18-.361.253L7.53 9.577l1.113.642zm-4.106.257a1.974 1.974 0 01-1.87-.975A1.95 1.95 0 012.47 8.01c.136-.507.461-.93.916-1.193L4.5 6.175v3.86c0 .148.013.295.039.44zM11.329 4.5a1.973 1.973 0 00-1.87-.976c.025.145.039.292.039.44v1.747a.268.268 0 01-.135.232l-2.1 1.211v1.96l3.346-1.931a1.966 1.966 0 00.72-2.683z",fill:e}))),B_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M10.847 2.181L8.867.201a.685.685 0 00-.97 0l-4.81 4.81a.685.685 0 000 .969l2.466 2.465-2.405 2.404a.685.685 0 000 .97l1.98 1.98a.685.685 0 00.97 0l4.81-4.81a.685.685 0 000-.969L8.441 5.555l2.405-2.404a.685.685 0 000-.97z",fill:e}))),R_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M11.852 2.885c-.893-.41-1.85-.712-2.85-.884a.043.043 0 00-.046.021c-.123.22-.26.505-.355.73a10.658 10.658 0 00-3.2 0 7.377 7.377 0 00-.36-.73.045.045 0 00-.046-.021c-1 .172-1.957.474-2.85.884a.04.04 0 00-.019.016C.311 5.612-.186 8.257.058 10.869a.048.048 0 00.018.033 11.608 11.608 0 003.496 1.767.045.045 0 00.049-.016c.27-.368.51-.755.715-1.163a.044.044 0 00-.024-.062 7.661 7.661 0 01-1.092-.52.045.045 0 01-.005-.075c.074-.055.147-.112.217-.17a.043.043 0 01.046-.006c2.29 1.046 4.771 1.046 7.035 0a.043.043 0 01.046.006c.07.057.144.115.218.17a.045.045 0 01-.004.075 7.186 7.186 0 01-1.093.52.045.045 0 00-.024.062c.21.407.45.795.715 1.162.011.016.03.023.05.017a11.57 11.57 0 003.5-1.767.045.045 0 00.019-.032c.292-3.02-.49-5.643-2.07-7.969a.036.036 0 00-.018-.016zM4.678 9.279c-.69 0-1.258-.634-1.258-1.411 0-.778.558-1.411 1.258-1.411.707 0 1.27.639 1.259 1.41 0 .778-.558 1.412-1.259 1.412zm4.652 0c-.69 0-1.258-.634-1.258-1.411 0-.778.557-1.411 1.258-1.411.707 0 1.27.639 1.258 1.41 0 .778-.551 1.412-1.258 1.412z",fill:e}))),I_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M7.399 14H5.06V7H3.5V4.588l1.56-.001-.002-1.421C5.058 1.197 5.533 0 7.6 0h1.721v2.413H8.246c-.805 0-.844.337-.844.966l-.003 1.208h1.934l-.228 2.412L7.401 7l-.002 7z",fill:e}))),z_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M9.2 0H4.803A2.603 2.603 0 003.41 4.802a2.603 2.603 0 000 4.396 2.602 2.602 0 103.998 2.199v-2.51a2.603 2.603 0 103.187-4.085A2.604 2.604 0 009.2 0zM7.407 7a1.793 1.793 0 103.586 0 1.793 1.793 0 00-3.586 0zm-.81 2.603H4.803a1.793 1.793 0 101.794 1.794V9.603zM4.803 4.397h1.794V.81H4.803a1.793 1.793 0 000 3.587zm0 .81a1.793 1.793 0 000 3.586h1.794V5.207H4.803zm4.397-.81H7.407V.81H9.2a1.794 1.794 0 010 3.587z",fill:e}))),T_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M6.37 8.768l-2.042 3.537h6.755l2.042-3.537H6.37zm6.177-1.003l-3.505-6.07H4.96l3.504 6.07h4.084zM4.378 2.7L.875 8.77l2.042 3.536L6.42 6.236 4.378 2.7z",fill:e}))),L_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M7 0C3.132 0 0 3.132 0 7a6.996 6.996 0 004.786 6.641c.35.062.482-.149.482-.332 0-.166-.01-.718-.01-1.304-1.758.324-2.213-.429-2.353-.823-.079-.2-.42-.822-.717-.988-.246-.132-.596-.455-.01-.464.552-.009.946.508 1.077.717.63 1.06 1.636.762 2.039.578.061-.455.245-.761.446-.936-1.558-.175-3.185-.779-3.185-3.457 0-.76.271-1.39.717-1.88-.07-.176-.314-.893.07-1.856 0 0 .587-.183 1.925.718a6.495 6.495 0 011.75-.236c.595 0 1.19.078 1.75.236 1.34-.91 1.926-.718 1.926-.718.385.963.14 1.68.07 1.855.446.49.717 1.111.717 1.881 0 2.687-1.636 3.282-3.194 3.457.254.218.473.638.473 1.295 0 .936-.009 1.688-.009 1.925 0 .184.131.402.481.332A7.012 7.012 0 0014 7c0-3.868-3.133-7-7-7z",fill:e}))),M_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M1.068 5.583l1.487-4.557a.256.256 0 01.487 0L4.53 5.583H1.068L7 13.15 4.53 5.583h4.941l-2.47 7.565 5.931-7.565H9.471l1.488-4.557a.256.256 0 01.486 0l1.488 4.557.75 2.3a.508.508 0 01-.185.568L7 13.148v.001H7L.503 8.452a.508.508 0 01-.186-.57l.75-2.299z",fill:e}))),O_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M10.925 1.094H7.262c-1.643 0-3.189 1.244-3.189 2.685 0 1.473 1.12 2.661 2.791 2.661.116 0 .23-.002.34-.01a1.49 1.49 0 00-.186.684c0 .41.22.741.498 1.012-.21 0-.413.006-.635.006-2.034 0-3.6 1.296-3.6 2.64 0 1.323 1.717 2.15 3.75 2.15 2.32 0 3.6-1.315 3.6-2.639 0-1.06-.313-1.696-1.28-2.38-.331-.235-.965-.805-.965-1.14 0-.392.112-.586.703-1.047.606-.474 1.035-1.14 1.035-1.914 0-.92-.41-1.819-1.18-2.115h1.161l.82-.593zm-1.335 8.96c.03.124.045.25.045.378 0 1.07-.688 1.905-2.665 1.905-1.406 0-2.421-.89-2.421-1.96 0-1.047 1.259-1.92 2.665-1.904.328.004.634.057.911.146.764.531 1.311.832 1.465 1.436zM7.34 6.068c-.944-.028-1.841-1.055-2.005-2.295-.162-1.24.47-2.188 1.415-2.16.943.029 1.84 1.023 2.003 2.262.163 1.24-.47 2.222-1.414 2.193z",fill:e}))),P_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M7.873 11.608a1.167 1.167 0 00-1.707-.027L3.46 10.018l.01-.04h7.072l.022.076-2.69 1.554zM6.166 2.42l.031.03-3.535 6.124a1.265 1.265 0 00-.043-.012V5.438a1.166 1.166 0 00.84-1.456L6.167 2.42zm4.387 1.562a1.165 1.165 0 00.84 1.456v3.124l-.043.012-3.536-6.123a1.2 1.2 0 00.033-.032l2.706 1.563zM3.473 9.42a1.168 1.168 0 00-.327-.568L6.68 2.73a1.17 1.17 0 00.652 0l3.536 6.123a1.169 1.169 0 00-.327.567H3.473zm8.79-.736a1.169 1.169 0 00-.311-.124V5.44a1.17 1.17 0 10-1.122-1.942L8.13 1.938a1.168 1.168 0 00-1.122-1.5 1.17 1.17 0 00-1.121 1.5l-2.702 1.56a1.168 1.168 0 00-1.86.22 1.17 1.17 0 00.739 1.722v3.12a1.168 1.168 0 00-.74 1.721 1.17 1.17 0 001.861.221l2.701 1.56a1.169 1.169 0 102.233-.035l2.687-1.552a1.168 1.168 0 101.457-1.791z",fill:e}))),N_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M0 0v14h14V0H0zm11.63 3.317l-.75.72a.22.22 0 00-.083.212v-.001 5.289a.22.22 0 00.083.21l.733.72v.159H7.925v-.158l.76-.738c.074-.074.074-.096.074-.21V5.244l-2.112 5.364h-.285l-2.46-5.364V8.84a.494.494 0 00.136.413h.001l.988 1.198v.158H2.226v-.158l.988-1.198a.477.477 0 00.126-.416v.003-4.157a.363.363 0 00-.118-.307l-.878-1.058v-.158h2.727l2.107 4.622L9.031 3.16h2.6v.158z",fill:e}))),$_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M4.06 9.689c.016.49.423.88.912.88h.032a.911.911 0 00.88-.945.916.916 0 00-.912-.88h-.033c-.033 0-.08 0-.113.016-.669-1.108-.946-2.314-.848-3.618.065-.978.391-1.825.961-2.526.473-.603 1.386-.896 2.005-.913 1.728-.032 2.461 2.119 2.51 2.983.212.049.57.163.815.244C10.073 2.29 8.444.92 6.88.92c-1.467 0-2.82 1.06-3.357 2.625-.75 2.086-.261 4.09.651 5.671a.74.74 0 00-.114.473zm8.279-2.298c-1.239-1.45-3.064-2.249-5.15-2.249h-.261a.896.896 0 00-.798-.489h-.033A.912.912 0 006.13 6.48h.031a.919.919 0 00.8-.554h.293c1.239 0 2.412.358 3.472 1.059.814.538 1.401 1.238 1.727 2.086.277.684.261 1.353-.033 1.923-.456.864-1.222 1.337-2.232 1.337a4.16 4.16 0 01-1.597-.343 9.58 9.58 0 01-.734.587c.7.326 1.418.505 2.102.505 1.565 0 2.722-.863 3.162-1.727.473-.946.44-2.575-.782-3.961zm-7.433 5.51a4.005 4.005 0 01-.977.113c-1.206 0-2.298-.505-2.836-1.32C.376 10.603.13 8.289 2.494 6.577c.05.261.147.62.212.832-.31.228-.798.685-1.108 1.303-.44.864-.391 1.729.13 2.527.359.537.93.864 1.663.962.896.114 1.793-.05 2.657-.505 1.271-.669 2.119-1.467 2.672-2.56a.944.944 0 01-.26-.603.913.913 0 01.88-.945h.033a.915.915 0 01.098 1.825c-.897 1.842-2.478 3.08-4.565 3.488z",fill:e}))),H_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M14 2.547a5.632 5.632 0 01-1.65.464 2.946 2.946 0 001.263-1.63 5.67 5.67 0 01-1.823.715 2.837 2.837 0 00-2.097-.93c-1.586 0-2.872 1.319-2.872 2.946 0 .23.025.456.074.67C4.508 4.66 2.392 3.488.975 1.706c-.247.435-.389.941-.389 1.481 0 1.022.507 1.923 1.278 2.452a2.806 2.806 0 01-1.3-.368l-.001.037c0 1.427.99 2.617 2.303 2.888a2.82 2.82 0 01-1.297.05c.366 1.17 1.427 2.022 2.683 2.045A5.671 5.671 0 010 11.51a7.985 7.985 0 004.403 1.323c5.283 0 8.172-4.488 8.172-8.38 0-.128-.003-.255-.009-.38A5.926 5.926 0 0014 2.546z",fill:e}))),j_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M13.99 8.172c.005-.281.007-.672.007-1.172 0-.5-.002-.89-.007-1.172a14.952 14.952 0 00-.066-1.066 9.638 9.638 0 00-.169-1.153c-.083-.38-.264-.7-.542-.96a1.667 1.667 0 00-.972-.454C11.084 2.065 9.337 2 6.999 2s-4.085.065-5.241.195a1.65 1.65 0 00-.969.453c-.276.26-.455.58-.539.961a8.648 8.648 0 00-.176 1.153c-.039.43-.061.785-.066 1.066C.002 6.11 0 6.5 0 7c0 .5.002.89.008 1.172.005.281.027.637.066 1.067.04.43.095.813.168 1.152.084.38.265.7.543.96.279.261.603.412.973.453 1.156.13 2.902.196 5.24.196 2.34 0 4.087-.065 5.243-.196a1.65 1.65 0 00.967-.453c.276-.26.456-.58.54-.96.077-.339.136-.722.175-1.152.04-.43.062-.786.067-1.067zM9.762 6.578A.45.45 0 019.997 7a.45.45 0 01-.235.422l-3.998 2.5a.442.442 0 01-.266.078.538.538 0 01-.242-.063.465.465 0 01-.258-.437v-5c0-.197.086-.343.258-.437a.471.471 0 01.508.016l3.998 2.5z",fill:e}))),V_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M10.243.04a.87.87 0 01.38.087l2.881 1.386a.874.874 0 01.496.79V11.713a.875.875 0 01-.496.775l-2.882 1.386a.872.872 0 01-.994-.17L4.11 8.674l-2.404 1.823a.583.583 0 01-.744-.034l-.771-.7a.583.583 0 010-.862L2.274 7 .19 5.1a.583.583 0 010-.862l.772-.701a.583.583 0 01.744-.033L4.11 5.327 9.628.296a.871.871 0 01.615-.255zm.259 3.784L6.315 7l4.187 3.176V3.824z",fill:e}))),U_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M11.667 13H2.333A1.333 1.333 0 011 11.667V2.333C1 1.597 1.597 1 2.333 1h9.334C12.403 1 13 1.597 13 2.333v9.334c0 .736-.597 1.333-1.333 1.333zm-2.114-1.667h1.78V7.675c0-1.548-.877-2.296-2.102-2.296-1.226 0-1.742.955-1.742.955v-.778H5.773v5.777h1.716V8.3c0-.812.374-1.296 1.09-1.296.658 0 .974.465.974 1.296v3.033zm-6.886-7.6c0 .589.474 1.066 1.058 1.066.585 0 1.058-.477 1.058-1.066 0-.589-.473-1.066-1.058-1.066-.584 0-1.058.477-1.058 1.066zm1.962 7.6h-1.79V5.556h1.79v5.777z",fill:e}))),q_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M11.02.446h2.137L8.49 5.816l5.51 7.28H9.67L6.298 8.683l-3.88 4.413H.282l5.004-5.735L0 .446h4.442l3.064 4.048L11.02.446zm-.759 11.357h1.18L3.796 1.655H2.502l7.759 10.148z",fill:e}))),W_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M.5 13.004a.5.5 0 01-.5-.5v-11a.5.5 0 01.5-.5h13a.5.5 0 01.5.5v11a.5.5 0 01-.5.5H.5zm.5-1v-8h12v8H1zm1-9.5a.5.5 0 11-1 0 .5.5 0 011 0zm2 0a.5.5 0 11-1 0 .5.5 0 011 0zm2 0a.5.5 0 11-1 0 .5.5 0 011 0z",fill:e}))),G_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M3.5.004a1.5 1.5 0 00-1.5 1.5v11a1.5 1.5 0 001.5 1.5h7a1.5 1.5 0 001.5-1.5v-11a1.5 1.5 0 00-1.5-1.5h-7zm0 1h7a.5.5 0 01.5.5v9.5H3v-9.5a.5.5 0 01.5-.5zm2.5 11a.5.5 0 000 1h2a.5.5 0 000-1H6z",fill:e}))),K_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M3 1.504a1.5 1.5 0 011.5-1.5h5a1.5 1.5 0 011.5 1.5v11a1.5 1.5 0 01-1.5 1.5h-5a1.5 1.5 0 01-1.5-1.5v-11zm1 10.5v-10h6v10H4z",fill:e}))),Y_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M4 .504a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5zm5.5 2.5h-5a.5.5 0 00-.5.5v7a.5.5 0 00.5.5h5a.5.5 0 00.5-.5v-7a.5.5 0 00-.5-.5zm-5-1a1.5 1.5 0 00-1.5 1.5v7a1.5 1.5 0 001.5 1.5h5a1.5 1.5 0 001.5-1.5v-7a1.5 1.5 0 00-1.5-1.5h-5zm2.5 2a.5.5 0 01.5.5v2h1a.5.5 0 110 1H7a.5.5 0 01-.5-.5v-2.5a.5.5 0 01.5-.5zm-2.5 9a.5.5 0 000 1h5a.5.5 0 000-1h-5z",fill:e}))),Z_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M2.5 4.504a.5.5 0 01.5-.5h1a.5.5 0 110 1H3a.5.5 0 01-.5-.5zM3 6.004a.5.5 0 100 1h1a.5.5 0 000-1H3zM2.5 8.504a.5.5 0 01.5-.5h1a.5.5 0 110 1H3a.5.5 0 01-.5-.5z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M1.5 13.004a.5.5 0 01-.5-.5v-11a.5.5 0 01.5-.5h11a.5.5 0 01.5.5v11a.5.5 0 01-.5.5h-11zm.5-1v-10h3v10H2zm4-10h6v10H6v-10z",fill:e}))),J_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M9.5 4.504a.5.5 0 01.5-.5h1a.5.5 0 010 1h-1a.5.5 0 01-.5-.5zM10 6.004a.5.5 0 100 1h1a.5.5 0 000-1h-1zM9.5 8.504a.5.5 0 01.5-.5h1a.5.5 0 010 1h-1a.5.5 0 01-.5-.5z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M1.5 13.004a.5.5 0 01-.5-.5v-11a.5.5 0 01.5-.5h11a.5.5 0 01.5.5v11a.5.5 0 01-.5.5h-11zm.5-1v-10h6v10H2zm7-10h3v10H9v-10z",fill:e}))),X_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M11.5 4.504a.5.5 0 00-.5-.5h-1a.5.5 0 100 1h1a.5.5 0 00.5-.5zM11 6.004a.5.5 0 010 1h-1a.5.5 0 010-1h1zM11.5 8.504a.5.5 0 00-.5-.5h-1a.5.5 0 100 1h1a.5.5 0 00.5-.5z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M1.5 13.004a.5.5 0 01-.5-.5v-11a.5.5 0 01.5-.5h11a.5.5 0 01.5.5v11a.5.5 0 01-.5.5h-11zm7.5-1h3v-10H9v10zm-1 0H2v-10h6v4.5H5.207l.65-.65a.5.5 0 10-.707-.708L3.646 6.65a.5.5 0 000 .707l1.497 1.497a.5.5 0 10.707-.708l-.643-.642H8v4.5z",fill:e}))),Q_=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M1.5 4.504a.5.5 0 01.5-.5h1a.5.5 0 110 1H2a.5.5 0 01-.5-.5zM2 6.004a.5.5 0 100 1h1a.5.5 0 000-1H2zM1.5 8.504a.5.5 0 01.5-.5h1a.5.5 0 110 1H2a.5.5 0 01-.5-.5z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M.5 13.004a.5.5 0 01-.5-.5v-11a.5.5 0 01.5-.5h11a.5.5 0 01.5.5v11a.5.5 0 01-.5.5H.5zm.5-1v-10h3v10H1zm4 0v-4.5h2.793l-.643.642a.5.5 0 10.707.708l1.497-1.497a.5.5 0 000-.707L7.85 5.146a.5.5 0 10-.707.708l.65.65H5v-4.5h6v10H5z",fill:e}))),eB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M3 10.504a.5.5 0 01.5-.5h1a.5.5 0 010 1h-1a.5.5 0 01-.5-.5zM6.5 10.004a.5.5 0 000 1h1a.5.5 0 000-1h-1zM9 10.504a.5.5 0 01.5-.5h1a.5.5 0 010 1h-1a.5.5 0 01-.5-.5z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M1 1.504a.5.5 0 01.5-.5h11a.5.5 0 01.5.5v11a.5.5 0 01-.5.5h-11a.5.5 0 01-.5-.5v-11zm1 6.5v-6h10v6H2zm10 1v3H2v-3h10z",fill:e}))),tB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M3.5 10.004a.5.5 0 000 1h1a.5.5 0 000-1h-1zM6 10.504a.5.5 0 01.5-.5h1a.5.5 0 010 1h-1a.5.5 0 01-.5-.5zM9.5 10.004a.5.5 0 000 1h1a.5.5 0 000-1h-1z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M1 12.504v-11a.5.5 0 01.5-.5h11a.5.5 0 01.5.5v11a.5.5 0 01-.5.5h-11a.5.5 0 01-.5-.5zm1-.5v-3h10v3H2zm4.5-4H2v-6h10v6H7.5V5.21l.646.646a.5.5 0 10.708-.707l-1.5-1.5a.5.5 0 00-.708 0l-1.5 1.5a.5.5 0 10.708.707l.646-.646v2.793z",fill:e}))),rB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M5 5.504a.5.5 0 01.5-.5h3a.5.5 0 01.5.5v3a.5.5 0 01-.5.5h-3a.5.5 0 01-.5-.5v-3zm1 2.5v-2h2v2H6z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M5.5.004a.5.5 0 01.5.5v1.5h2v-1.5a.5.5 0 011 0v1.5h2.5a.5.5 0 01.5.5v2.5h1.5a.5.5 0 010 1H12v2h1.5a.5.5 0 010 1H12v2.5a.5.5 0 01-.5.5H9v1.5a.5.5 0 01-1 0v-1.5H6v1.5a.5.5 0 01-1 0v-1.5H2.5a.5.5 0 01-.5-.5v-2.5H.5a.5.5 0 010-1H2v-2H.5a.5.5 0 010-1H2v-2.5a.5.5 0 01.5-.5H5v-1.5a.5.5 0 01.5-.5zm5.5 3H3v8h8v-8z",fill:e}))),nB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M12 3c0-1.105-2.239-2-5-2s-5 .895-5 2v8c0 .426.26.752.544.977.29.228.68.413 1.116.558.878.293 2.059.465 3.34.465 1.281 0 2.462-.172 3.34-.465.436-.145.825-.33 1.116-.558.285-.225.544-.551.544-.977V3zm-1.03 0a.787.787 0 00-.05-.052c-.13-.123-.373-.28-.756-.434C9.404 2.21 8.286 2 7 2c-1.286 0-2.404.21-3.164.514-.383.153-.625.31-.756.434A.756.756 0 003.03 3a.756.756 0 00.05.052c.13.123.373.28.756.434C4.596 3.79 5.714 4 7 4c1.286 0 2.404-.21 3.164-.514.383-.153.625-.31.756-.434A.787.787 0 0010.97 3zM11 5.75V4.2c-.912.486-2.364.8-4 .8-1.636 0-3.088-.314-4-.8v1.55l.002.008a.147.147 0 00.016.033.618.618 0 00.145.15c.165.13.435.27.813.395.751.25 1.82.414 3.024.414s2.273-.163 3.024-.414c.378-.126.648-.265.813-.395a.62.62 0 00.146-.15.149.149 0 00.015-.033A.03.03 0 0011 5.75zM3 7.013c.2.103.423.193.66.272.878.293 2.059.465 3.34.465 1.281 0 2.462-.172 3.34-.465.237-.079.46-.17.66-.272V8.5l-.002.008a.149.149 0 01-.015.033.62.62 0 01-.146.15c-.165.13-.435.27-.813.395-.751.25-1.82.414-3.024.414s-2.273-.163-3.024-.414c-.378-.126-.648-.265-.813-.395a.618.618 0 01-.145-.15.147.147 0 01-.016-.033A.027.027 0 013 8.5V7.013zm0 2.75V11l.002.008a.147.147 0 00.016.033.617.617 0 00.145.15c.165.13.435.27.813.395.751.25 1.82.414 3.024.414s2.273-.163 3.024-.414c.378-.126.648-.265.813-.395a.619.619 0 00.146-.15.148.148 0 00.015-.033L11 11V9.763c-.2.103-.423.193-.66.272-.878.293-2.059.465-3.34.465-1.281 0-2.462-.172-3.34-.465A4.767 4.767 0 013 9.763z",fill:e}))),aB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M5 3a.5.5 0 00-1 0v3a.5.5 0 001 0V3zM7 2.5a.5.5 0 01.5.5v3a.5.5 0 01-1 0V3a.5.5 0 01.5-.5zM10 4.504a.5.5 0 10-1 0V6a.5.5 0 001 0V4.504z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M12 3.54l-.001-.002a.499.499 0 00-.145-.388l-3-3a.499.499 0 00-.388-.145L8.464.004H2.5a.5.5 0 00-.5.5v13a.5.5 0 00.5.5h9a.5.5 0 00.5-.5V3.54zM3 1.004h5.293L11 3.71v5.293H3v-8zm0 9v3h8v-3H3z",fill:e}))),oB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M8.164 3.446a1.5 1.5 0 10-2.328 0L1.81 10.032A1.503 1.503 0 000 11.5a1.5 1.5 0 002.915.5h8.17a1.5 1.5 0 101.104-1.968L8.164 3.446zm-1.475.522a1.506 1.506 0 00.622 0l4.025 6.586a1.495 1.495 0 00-.25.446H2.914a1.497 1.497 0 00-.25-.446l4.024-6.586z",fill:e}))),iB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M7.21.046l6.485 2.994A.5.5 0 0114 3.51v6.977a.495.495 0 01-.23.432.481.481 0 01-.071.038L7.23 13.944a.499.499 0 01-.46 0L.3 10.958a.498.498 0 01-.3-.47V3.511a.497.497 0 01.308-.473L6.78.051a.499.499 0 01.43-.005zM1 4.282v5.898l5.5 2.538V6.82L1 4.282zm6.5 8.436L13 10.18V4.282L7.5 6.82v5.898zM12.307 3.5L7 5.95 1.693 3.5 7 1.05l5.307 2.45z",fill:e}))),lB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M7.5.5a.5.5 0 00-1 0v6a.5.5 0 001 0v-6z",fill:e}),l.createElement("path",{d:"M4.273 2.808a.5.5 0 00-.546-.837 6 6 0 106.546 0 .5.5 0 00-.546.837 5 5 0 11-5.454 0z",fill:e}))),sB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M13.854 2.146l-2-2a.5.5 0 00-.708 0l-1.5 1.5-8.995 8.995a.499.499 0 00-.143.268L.012 13.39a.495.495 0 00.135.463.5.5 0 00.462.134l2.482-.496a.495.495 0 00.267-.143l8.995-8.995 1.5-1.5a.5.5 0 000-.708zM12 3.293l.793-.793L11.5 1.207 10.707 2 12 3.293zm-2-.586L1.707 11 3 12.293 11.293 4 10 2.707zM1.137 12.863l.17-.849.679.679-.849.17z",fill:e}))),uB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M5.586 5.586A2 2 0 018.862 7.73a.5.5 0 10.931.365 3 3 0 10-1.697 1.697.5.5 0 10-.365-.93 2 2 0 01-2.145-3.277z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M.939 6.527c.127.128.19.297.185.464a.635.635 0 01-.185.465L0 8.395a7.099 7.099 0 001.067 2.572h1.32c.182 0 .345.076.46.197a.635.635 0 01.198.46v1.317A7.097 7.097 0 005.602 14l.94-.94a.634.634 0 01.45-.186H7.021c.163 0 .326.061.45.186l.939.938a7.098 7.098 0 002.547-1.057V11.61c0-.181.075-.344.197-.46a.634.634 0 01.46-.197h1.33c.507-.76.871-1.622 1.056-2.55l-.946-.946a.635.635 0 01-.186-.465.635.635 0 01.186-.464l.943-.944a7.099 7.099 0 00-1.044-2.522h-1.34a.635.635 0 01-.46-.197.635.635 0 01-.196-.46V1.057A7.096 7.096 0 008.413.002l-.942.942a.634.634 0 01-.45.186H6.992a.634.634 0 01-.45-.186L5.598 0a7.097 7.097 0 00-2.553 1.058v1.33c0 .182-.076.345-.197.46a.635.635 0 01-.46.198h-1.33A7.098 7.098 0 00.003 5.591l.936.936zm.707 1.636c.324-.324.482-.752.479-1.172a1.634 1.634 0 00-.48-1.171l-.538-.539c.126-.433.299-.847.513-1.235h.768c.459 0 .873-.19 1.167-.49.3-.295.49-.708.49-1.167v-.77c.39-.215.807-.388 1.243-.515l.547.547c.32.32.742.48 1.157.48l.015-.001h.014c.415 0 .836-.158 1.157-.479l.545-.544c.433.126.846.299 1.234.512v.784c0 .46.19.874.49 1.168.294.3.708.49 1.167.49h.776c.209.382.378.788.502 1.213l-.545.546a1.635 1.635 0 00-.48 1.17c-.003.421.155.849.48 1.173l.549.55c-.126.434-.3.85-.513 1.239h-.77c-.458 0-.872.19-1.166.49-.3.294-.49.708-.49 1.167v.77a6.09 6.09 0 01-1.238.514l-.54-.54a1.636 1.636 0 00-1.158-.48H6.992c-.415 0-.837.159-1.157.48l-.543.543a6.091 6.091 0 01-1.247-.516v-.756c0-.459-.19-.873-.49-1.167-.294-.3-.708-.49-1.167-.49h-.761a6.094 6.094 0 01-.523-1.262l.542-.542z",fill:e}))),cB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M5.585 8.414a2 2 0 113.277-.683.5.5 0 10.931.365 3 3 0 10-1.697 1.697.5.5 0 00-.365-.93 2 2 0 01-2.146-.449z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M6.5.289a1 1 0 011 0l5.062 2.922a1 1 0 01.5.866v5.846a1 1 0 01-.5.866L7.5 13.71a1 1 0 01-1 0L1.437 10.79a1 1 0 01-.5-.866V4.077a1 1 0 01.5-.866L6.5.29zm.5.866l5.062 2.922v5.846L7 12.845 1.937 9.923V4.077L7 1.155z",fill:e}))),dB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M10.5 1c.441 0 .564.521.252.833l-.806.807a.51.51 0 000 .72l.694.694a.51.51 0 00.72 0l.807-.806c.312-.312.833-.19.833.252a2.5 2.5 0 01-3.414 2.328l-6.879 6.88a1 1 0 01-1.414-1.415l6.88-6.88A2.5 2.5 0 0110.5 1zM2 12.5a.5.5 0 100-1 .5.5 0 000 1z",fill:e}))),pB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M4 7a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zM13 7a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zM7 8.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z",fill:e}))),fB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M5.903.112a.107.107 0 01.194 0l.233.505.552.066c.091.01.128.123.06.185l-.408.377.109.546a.107.107 0 01-.158.114L6 1.633l-.486.272a.107.107 0 01-.157-.114l.108-.546-.408-.377a.107.107 0 01.06-.185L5.67.617l.233-.505zM2.194.224a.214.214 0 00-.389 0l-.466 1.01-1.104.13a.214.214 0 00-.12.371l.816.755-.217 1.091a.214.214 0 00.315.23L2 3.266l.971.543c.16.09.35-.05.315-.229l-.217-1.09.817-.756a.214.214 0 00-.12-.37L2.66 1.234 2.194.224zM12.194 8.224a.214.214 0 00-.389 0l-.466 1.01-1.104.13a.214.214 0 00-.12.371l.816.755-.217 1.091a.214.214 0 00.315.23l.97-.544.971.543c.16.09.35-.05.315-.229l-.217-1.09.817-.756a.214.214 0 00-.12-.37l-1.105-.131-.466-1.01z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M.147 11.857a.5.5 0 010-.707l11-11a.5.5 0 01.706 0l2 2a.5.5 0 010 .708l-11 11a.5.5 0 01-.706 0l-2-2zm2.353.94l-1.293-1.293 6.758-6.758L9.258 6.04 2.5 12.797zm7.465-7.465l2.828-2.828L11.5 1.211 8.672 4.039l1.293 1.293z",fill:e}))),hB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M9.621 3.914l.379.379 3.146-3.147a.5.5 0 01.708.708L10.707 5l.379.379a3 3 0 010 4.242l-.707.707-.005.005-.008.008-.012.013-1.733 1.732a3 3 0 01-4.242 0L.146 7.854a.5.5 0 01.708-.707.915.915 0 001.292 0L4.64 4.654a.52.52 0 01.007-.008l.733-.732a3 3 0 014.242 0zm-4.26 1.432l.139-.139 3.146 3.147a.5.5 0 10.708-.707L6.212 4.505a2 2 0 012.702.116l.731.731.001.002h.002l.73.732a2 2 0 010 2.828l-.706.707-.012.013a.503.503 0 00-.014.013l-1.732 1.732a2 2 0 01-2.828 0L3.354 9.647a2.489 2.489 0 001.414-.708l1.086-1.085a.5.5 0 10-.708-.707L4.061 8.232a1.5 1.5 0 01-2.01.102c.294-.088.57-.248.803-.48l2.5-2.5a.475.475 0 00.007-.008z",fill:e}),l.createElement("path",{d:"M2 5.004a1 1 0 11-2 0 1 1 0 012 0zM4 3.25a.75.75 0 11-1.5 0 .75.75 0 011.5 0z",fill:e}))),mB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M13.854 3.354a.5.5 0 00-.708-.708L5 10.793.854 6.646a.5.5 0 10-.708.708l4.5 4.5a.5.5 0 00.708 0l8.5-8.5z",fill:e}))),gB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M2 1.004a1 1 0 00-1 1v10a1 1 0 001 1h10a1 1 0 001-1V6.393a.5.5 0 00-1 0v5.61H2v-10h7.5a.5.5 0 000-1H2z",fill:e}),l.createElement("path",{d:"M6.354 9.857l7.5-7.5a.5.5 0 00-.708-.707L6 8.797 3.854 6.65a.5.5 0 10-.708.707l2.5 2.5a.5.5 0 00.708 0z",fill:e}))),vB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M11.5 2a.5.5 0 000 1h2a.5.5 0 000-1h-2zM8.854 2.646a.5.5 0 010 .708L5.207 7l3.647 3.646a.5.5 0 01-.708.708L4.5 7.707.854 11.354a.5.5 0 01-.708-.708L3.793 7 .146 3.354a.5.5 0 11.708-.708L4.5 6.293l3.646-3.647a.5.5 0 01.708 0zM11 7a.5.5 0 01.5-.5h2a.5.5 0 010 1h-2A.5.5 0 0111 7zM11.5 11a.5.5 0 000 1h2a.5.5 0 000-1h-2z",fill:e}))),yB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M11.5 2a.5.5 0 000 1h2a.5.5 0 000-1h-2zM9.3 2.6a.5.5 0 01.1.7l-5.995 7.993a.505.505 0 01-.37.206.5.5 0 01-.395-.152L.146 8.854a.5.5 0 11.708-.708l2.092 2.093L8.6 2.7a.5.5 0 01.7-.1zM11 7a.5.5 0 01.5-.5h2a.5.5 0 010 1h-2A.5.5 0 0111 7zM11.5 11a.5.5 0 000 1h2a.5.5 0 000-1h-2z",fill:e}))),bB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M10.5 1a.5.5 0 01.5.5V2h1.5a.5.5 0 010 1H11v.5a.5.5 0 01-1 0V3H1.5a.5.5 0 010-1H10v-.5a.5.5 0 01.5-.5zM1.5 11a.5.5 0 000 1H10v.5a.5.5 0 001 0V12h1.5a.5.5 0 000-1H11v-.5a.5.5 0 00-1 0v.5H1.5zM1 7a.5.5 0 01.5-.5H3V6a.5.5 0 011 0v.5h8.5a.5.5 0 010 1H4V8a.5.5 0 01-1 0v-.5H1.5A.5.5 0 011 7z",fill:e}))),wB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M7.5.5a.5.5 0 00-1 0v6h-6a.5.5 0 000 1h6v6a.5.5 0 001 0v-6h6a.5.5 0 000-1h-6v-6z",fill:e}))),DB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M2.03.97A.75.75 0 00.97 2.03L5.94 7 .97 11.97a.75.75 0 101.06 1.06L7 8.06l4.97 4.97a.75.75 0 101.06-1.06L8.06 7l4.97-4.97A.75.75 0 0011.97.97L7 5.94 2.03.97z",fill:e}))),dE=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M1.854 1.146a.5.5 0 10-.708.708L6.293 7l-5.147 5.146a.5.5 0 00.708.708L7 7.707l5.146 5.147a.5.5 0 00.708-.708L7.707 7l5.147-5.146a.5.5 0 00-.708-.708L7 6.293 1.854 1.146z",fill:e}))),EB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M5.5 4.5A.5.5 0 016 5v5a.5.5 0 01-1 0V5a.5.5 0 01.5-.5zM9 5a.5.5 0 00-1 0v5a.5.5 0 001 0V5z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M4.5.5A.5.5 0 015 0h4a.5.5 0 01.5.5V2h3a.5.5 0 010 1H12v8a2 2 0 01-2 2H4a2 2 0 01-2-2V3h-.5a.5.5 0 010-1h3V.5zM3 3v8a1 1 0 001 1h6a1 1 0 001-1V3H3zm2.5-2h3v1h-3V1z",fill:e}))),CB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("g",{clipPath:"url(#prefix__clip0_1107_3502)"},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M13.44 4.44L9.56.56a1.5 1.5 0 00-2.12 0L7 1a1.415 1.415 0 000 2L5 5H3.657A4 4 0 00.828 6.17l-.474.475a.5.5 0 000 .707l2.793 2.793-3 3a.5.5 0 00.707.708l3-3 2.792 2.792a.5.5 0 00.708 0l.474-.475A4 4 0 009 10.343V9l2-2a1.414 1.414 0 002 0l.44-.44a1.5 1.5 0 000-2.12zM11 5.585l-3 3v1.757a3 3 0 01-.879 2.121L7 12.586 1.414 7l.122-.122A3 3 0 013.656 6h1.758l3-3-.707-.707a.414.414 0 010-.586l.44-.44a.5.5 0 01.707 0l3.878 3.88a.5.5 0 010 .706l-.44.44a.414.414 0 01-.585 0L11 5.586z",fill:e})),l.createElement("defs",null,l.createElement("clipPath",{id:"prefix__clip0_1107_3502"},l.createElement("path",{fill:"#fff",d:"M0 0h14v14H0z"}))))),xB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("g",{clipPath:"url(#prefix__clip0_1107_3501)",fill:e},l.createElement("path",{d:"M13.44 4.44L9.56.56a1.5 1.5 0 00-2.12 0L7 1a1.415 1.415 0 000 2L5.707 4.293 6.414 5l2-2-.707-.707a.414.414 0 010-.586l.44-.44a.5.5 0 01.707 0l3.878 3.88a.5.5 0 010 .706l-.44.44a.414.414 0 01-.585 0L11 5.586l-2 2 .707.707L11 7a1.414 1.414 0 002 0l.44-.44a1.5 1.5 0 000-2.12zM.828 6.171a4 4 0 012.758-1.17l1 .999h-.93a3 3 0 00-2.12.878L1.414 7 7 12.586l.121-.122A3 3 0 008 10.343v-.929l1 1a4 4 0 01-1.172 2.757l-.474.475a.5.5 0 01-.708 0l-2.792-2.792-3 3a.5.5 0 01-.708-.708l3-3L.355 7.353a.5.5 0 010-.707l.474-.475zM1.854 1.146a.5.5 0 10-.708.708l11 11a.5.5 0 00.708-.708l-11-11z"})),l.createElement("defs",null,l.createElement("clipPath",{id:"prefix__clip0_1107_3501"},l.createElement("path",{fill:"#fff",d:"M0 0h14v14H0z"}))))),SB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M7 3a.5.5 0 01.5.5v3h3a.5.5 0 010 1h-3v3a.5.5 0 01-1 0v-3h-3a.5.5 0 010-1h3v-3A.5.5 0 017 3z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M7 14A7 7 0 107 0a7 7 0 000 14zm0-1A6 6 0 107 1a6 6 0 000 12z",fill:e}))),FB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M3.5 6.5a.5.5 0 000 1h7a.5.5 0 000-1h-7z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M14 7A7 7 0 110 7a7 7 0 0114 0zm-1 0A6 6 0 111 7a6 6 0 0112 0z",fill:e}))),AB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M9.854 4.146a.5.5 0 010 .708L7.707 7l2.147 2.146a.5.5 0 01-.708.708L7 7.707 4.854 9.854a.5.5 0 01-.708-.708L6.293 7 4.146 4.854a.5.5 0 11.708-.708L7 6.293l2.146-2.147a.5.5 0 01.708 0z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M7 14A7 7 0 107 0a7 7 0 000 14zm0-1A6 6 0 107 1a6 6 0 000 12z",fill:e}))),kB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M14 7A7 7 0 110 7a7 7 0 0114 0zm-1 0a6 6 0 01-9.874 4.582l8.456-8.456A5.976 5.976 0 0113 7zM2.418 10.874l8.456-8.456a6 6 0 00-8.456 8.456z",fill:e}))),_B=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M7 14A7 7 0 107 0a7 7 0 000 14zm3.854-9.354a.5.5 0 010 .708l-4.5 4.5a.5.5 0 01-.708 0l-2.5-2.5a.5.5 0 11.708-.708L6 8.793l4.146-4.147a.5.5 0 01.708 0z",fill:e}))),BB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M7 14A7 7 0 107 0a7 7 0 000 14zM3.5 6.5a.5.5 0 000 1h7a.5.5 0 000-1h-7z",fill:e}))),RB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M7 14A7 7 0 107 0a7 7 0 000 14zm2.854-9.854a.5.5 0 010 .708L7.707 7l2.147 2.146a.5.5 0 01-.708.708L7 7.707 4.854 9.854a.5.5 0 01-.708-.708L6.293 7 4.146 4.854a.5.5 0 11.708-.708L7 6.293l2.146-2.147a.5.5 0 01.708 0z",fill:e}))),IB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M5 2h7a2 2 0 012 2v6a2 2 0 01-2 2H5a1.994 1.994 0 01-1.414-.586l-3-3a2 2 0 010-2.828l3-3A1.994 1.994 0 015 2zm1.146 3.146a.5.5 0 01.708 0L8 6.293l1.146-1.147a.5.5 0 11.708.708L8.707 7l1.147 1.146a.5.5 0 01-.708.708L8 7.707 6.854 8.854a.5.5 0 11-.708-.708L7.293 7 6.146 5.854a.5.5 0 010-.708z",fill:e}))),zB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M3.5 5.004a.5.5 0 100 1h7a.5.5 0 000-1h-7zM3 8.504a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M12.5 12.004H5.707l-1.853 1.854a.5.5 0 01-.351.146h-.006a.499.499 0 01-.497-.5v-1.5H1.5a.5.5 0 01-.5-.5v-9a.5.5 0 01.5-.5h11a.5.5 0 01.5.5v9a.5.5 0 01-.5.5zm-10.5-1v-8h10v8H2z",fill:e}))),TB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M7.5 5.004a.5.5 0 10-1 0v1.5H5a.5.5 0 100 1h1.5v1.5a.5.5 0 001 0v-1.5H9a.5.5 0 000-1H7.5v-1.5z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M3.691 13.966a.498.498 0 01-.188.038h-.006a.499.499 0 01-.497-.5v-1.5H1.5a.5.5 0 01-.5-.5v-9a.5.5 0 01.5-.5h11a.5.5 0 01.5.5v9a.5.5 0 01-.5.5H5.707l-1.853 1.854a.5.5 0 01-.163.108zM2 3.004v8h10v-8H2z",fill:e}))),LB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M9.854 6.65a.5.5 0 010 .707l-2 2a.5.5 0 11-.708-.707l1.15-1.15-3.796.004a.5.5 0 010-1L8.29 6.5 7.145 5.357a.5.5 0 11.708-.707l2 2z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M3.691 13.966a.498.498 0 01-.188.038h-.006a.499.499 0 01-.497-.5v-1.5H1.5a.5.5 0 01-.5-.5v-9a.5.5 0 01.5-.5h11a.5.5 0 01.5.5v9a.5.5 0 01-.5.5H5.707l-1.853 1.854a.5.5 0 01-.163.108zM2 3.004v8h10v-8H2z",fill:e}))),MB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M8.5 7.004a.5.5 0 000-1h-5a.5.5 0 100 1h5zM9 8.504a.5.5 0 01-.5.5h-5a.5.5 0 010-1h5a.5.5 0 01.5.5z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M12 11.504v-1.5h1.5a.5.5 0 00.5-.5v-8a.5.5 0 00-.5-.5h-11a.5.5 0 00-.5.5v1.5H.5a.5.5 0 00-.5.5v8a.5.5 0 00.5.5H2v1.5a.499.499 0 00.497.5h.006a.498.498 0 00.35-.146l1.854-1.854H11.5a.5.5 0 00.5-.5zm-9-8.5v-1h10v7h-1v-5.5a.5.5 0 00-.5-.5H3zm-2 8v-7h10v7H1z",fill:e}))),OB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M1 2a2 2 0 012-2h8a2 2 0 012 2v8a2 2 0 01-2 2H6.986a.444.444 0 01-.124.103l-3.219 1.84A.43.43 0 013 13.569V12a2 2 0 01-2-2V2zm3.42 4.78a.921.921 0 110-1.843.921.921 0 010 1.842zm1.658-.922a.921.921 0 101.843 0 .921.921 0 00-1.843 0zm2.58 0a.921.921 0 101.842 0 .921.921 0 00-1.843 0z",fill:e}))),PB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M8 8.004a1 1 0 01-.5.866v1.634a.5.5 0 01-1 0V8.87A1 1 0 118 8.004z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M3 4.004a4 4 0 118 0v1h1.5a.5.5 0 01.5.5v8a.5.5 0 01-.5.5h-11a.5.5 0 01-.5-.5v-8a.5.5 0 01.5-.5H3v-1zm7 1v-1a3 3 0 10-6 0v1h6zm2 1H2v7h10v-7z",fill:e}))),NB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("g",{clipPath:"url(#prefix__clip0_1107_3614)",fill:e},l.createElement("path",{d:"M6.5 8.87a1 1 0 111 0v1.634a.5.5 0 01-1 0V8.87z"}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M7 1a3 3 0 00-3 3v1.004h8.5a.5.5 0 01.5.5v8a.5.5 0 01-.5.5h-11a.5.5 0 01-.5-.5v-8a.5.5 0 01.5-.5H3V4a4 4 0 017.755-1.381.5.5 0 01-.939.345A3.001 3.001 0 007 1zM2 6.004h10v7H2v-7z"})),l.createElement("defs",null,l.createElement("clipPath",{id:"prefix__clip0_1107_3614"},l.createElement("path",{fill:"#fff",d:"M0 0h14v14H0z"}))))),$B=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M11 4a1 1 0 11-2 0 1 1 0 012 0z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M7.5 8.532V9.5a.5.5 0 01-.5.5H5.5v1.5a.5.5 0 01-.5.5H3.5v1.5a.5.5 0 01-.5.5H.5a.5.5 0 01-.5-.5v-2a.5.5 0 01.155-.362l5.11-5.11A4.5 4.5 0 117.5 8.532zM6 4.5a3.5 3.5 0 111.5 2.873c-.29-.203-1-.373-1 .481V9H5a.5.5 0 00-.5.5V11H3a.5.5 0 00-.5.5V13H1v-1.293l5.193-5.193a.552.552 0 00.099-.613A3.473 3.473 0 016 4.5z",fill:e}))),HB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M7.354.15a.5.5 0 00-.708 0l-2 2a.5.5 0 10.708.707L6.5 1.711v6.793a.5.5 0 001 0V1.71l1.146 1.146a.5.5 0 10.708-.707l-2-2z",fill:e}),l.createElement("path",{d:"M2 7.504a.5.5 0 10-1 0v5a.5.5 0 00.5.5h11a.5.5 0 00.5-.5v-5a.5.5 0 00-1 0v4.5H2v-4.5z",fill:e}))),jB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M2.5 8.004a.5.5 0 100 1h3a.5.5 0 000-1h-3z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M0 11.504a.5.5 0 00.5.5h13a.5.5 0 00.5-.5v-9a.5.5 0 00-.5-.5H.5a.5.5 0 00-.5.5v9zm1-8.5v1h12v-1H1zm0 8h12v-5H1v5z",fill:e}))),VB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M1 3.004a1 1 0 00-1 1v5a1 1 0 001 1h3.5a.5.5 0 100-1H1v-5h12v5h-1a.5.5 0 000 1h1a1 1 0 001-1v-5a1 1 0 00-1-1H1z",fill:e}),l.createElement("path",{d:"M6.45 7.006a.498.498 0 01.31.07L10.225 9.1a.5.5 0 01-.002.873l-1.074.621.75 1.3a.75.75 0 01-1.3.75l-.75-1.3-1.074.62a.497.497 0 01-.663-.135.498.498 0 01-.095-.3L6 7.515a.497.497 0 01.45-.509z",fill:e}))),UB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M4 1.504a.5.5 0 01.5-.5h5a.5.5 0 110 1h-2v10h2a.5.5 0 010 1h-5a.5.5 0 010-1h2v-10h-2a.5.5 0 01-.5-.5z",fill:e}),l.createElement("path",{d:"M0 4.504a.5.5 0 01.5-.5h4a.5.5 0 110 1H1v4h3.5a.5.5 0 110 1h-4a.5.5 0 01-.5-.5v-5zM9.5 4.004a.5.5 0 100 1H13v4H9.5a.5.5 0 100 1h4a.5.5 0 00.5-.5v-5a.5.5 0 00-.5-.5h-4z",fill:e}))),qB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M5.943 12.457a.27.27 0 00.248-.149L7.77 9.151l2.54 2.54a.257.257 0 00.188.073c.082 0 .158-.03.21-.077l.788-.79a.27.27 0 000-.392L8.891 7.9l3.416-1.708a.29.29 0 00.117-.106.222.222 0 00.033-.134.332.332 0 00-.053-.161.174.174 0 00-.092-.072l-.02-.007-10.377-4.15a.274.274 0 00-.355.354l4.15 10.372a.275.275 0 00.233.169zm-.036 1l-.02-.002c-.462-.03-.912-.31-1.106-.796L.632 2.287A1.274 1.274 0 012.286.633l10.358 4.143c.516.182.782.657.81 1.114a1.25 1.25 0 01-.7 1.197L10.58 8.174l1.624 1.624a1.27 1.27 0 010 1.807l-.8.801-.008.007c-.491.46-1.298.48-1.792-.014l-1.56-1.56-.957 1.916a1.27 1.27 0 01-1.142.702h-.037z",fill:e}))),WB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M11.87 6.008a.505.505 0 00-.003-.028v-.002c-.026-.27-.225-.48-.467-.498a.5.5 0 00-.53.5v1.41c0 .25-.22.47-.47.47a.48.48 0 01-.47-.47V5.17a.6.6 0 00-.002-.05c-.023-.268-.223-.49-.468-.5a.5.5 0 00-.52.5v1.65a.486.486 0 01-.47.47.48.48 0 01-.47-.47V4.62a.602.602 0 00-.002-.05v-.002c-.023-.266-.224-.48-.468-.498a.5.5 0 00-.53.5v2.2c0 .25-.22.47-.47.47a.49.49 0 01-.47-.47V1.8c0-.017 0-.034-.002-.05-.022-.268-.214-.49-.468-.5a.5.5 0 00-.52.5v6.78c0 .25-.22.47-.47.47a.48.48 0 01-.47-.47l.001-.1c.001-.053.002-.104 0-.155a.775.775 0 00-.06-.315.65.65 0 00-.16-.22 29.67 29.67 0 01-.21-.189c-.2-.182-.4-.365-.617-.532l-.003-.003A6.366 6.366 0 003.06 7l-.01-.007c-.433-.331-.621-.243-.69-.193-.26.14-.29.5-.13.74l1.73 2.6v.01h-.016l-.035.023.05-.023s1.21 2.6 3.57 2.6c3.54 0 4.2-1.9 4.31-4.42.039-.591.036-1.189.032-1.783l-.002-.507v-.032zm.969 2.376c-.057 1.285-.254 2.667-1.082 3.72-.88 1.118-2.283 1.646-4.227 1.646-1.574 0-2.714-.87-3.406-1.623a6.958 6.958 0 01-1.046-1.504l-.006-.012-1.674-2.516a1.593 1.593 0 01-.25-1.107 1.44 1.44 0 01.69-1.041c.195-.124.485-.232.856-.186.357.044.681.219.976.446.137.106.272.22.4.331V1.75A1.5 1.5 0 015.63.25c.93.036 1.431.856 1.431 1.55v1.335a1.5 1.5 0 01.53-.063h.017c.512.04.915.326 1.153.71a1.5 1.5 0 01.74-.161c.659.025 1.115.458 1.316.964a1.493 1.493 0 01.644-.103h.017c.856.067 1.393.814 1.393 1.558l.002.48c.004.596.007 1.237-.033 1.864z",fill:e}))),GB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M3.5 6A2.5 2.5 0 116 3.5V5h2V3.5A2.5 2.5 0 1110.5 6H9v2h1.5A2.5 2.5 0 118 10.5V9H6v1.5A2.5 2.5 0 113.5 8H5V6H3.5zM2 3.5a1.5 1.5 0 113 0V5H3.5A1.5 1.5 0 012 3.5zM6 6v2h2V6H6zm3-1h1.5A1.5 1.5 0 109 3.5V5zM3.5 9H5v1.5A1.5 1.5 0 113.5 9zM9 9v1.5A1.5 1.5 0 1010.5 9H9z",fill:e}))),KB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M11.083 12.25H2.917a1.167 1.167 0 01-1.167-1.167V2.917A1.167 1.167 0 012.917 1.75h6.416l2.917 2.917v6.416a1.167 1.167 0 01-1.167 1.167z",stroke:e,strokeLinecap:"round",strokeLinejoin:"round"}),l.createElement("path",{d:"M9.917 12.25V7.583H4.083v4.667M4.083 1.75v2.917H8.75",stroke:e,strokeLinecap:"round",strokeLinejoin:"round"}))),YB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M7 5.5a.5.5 0 01.5.5v4a.5.5 0 01-1 0V6a.5.5 0 01.5-.5zM7 4.5A.75.75 0 107 3a.75.75 0 000 1.5z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M7 14A7 7 0 107 0a7 7 0 000 14zm0-1A6 6 0 107 1a6 6 0 000 12z",fill:e}))),ZB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M5.25 5.25A1.75 1.75 0 117 7a.5.5 0 00-.5.5V9a.5.5 0 001 0V7.955A2.75 2.75 0 104.25 5.25a.5.5 0 001 0zM7 11.5A.75.75 0 107 10a.75.75 0 000 1.5z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M14 7A7 7 0 110 7a7 7 0 0114 0zm-1 0A6 6 0 111 7a6 6 0 0112 0z",fill:e}))),JB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M14 7A7 7 0 110 7a7 7 0 0114 0zm-3.524 4.89A5.972 5.972 0 017 13a5.972 5.972 0 01-3.477-1.11l1.445-1.444C5.564 10.798 6.258 11 7 11s1.436-.202 2.032-.554l1.444 1.445zm-.03-2.858l1.445 1.444A5.972 5.972 0 0013 7c0-1.296-.41-2.496-1.11-3.477l-1.444 1.445C10.798 5.564 11 6.258 11 7s-.202 1.436-.554 2.032zM9.032 3.554l1.444-1.445A5.972 5.972 0 007 1c-1.296 0-2.496.41-3.477 1.11l1.445 1.444A3.981 3.981 0 017 3c.742 0 1.436.202 2.032.554zM3.554 4.968L2.109 3.523A5.973 5.973 0 001 7c0 1.296.41 2.496 1.11 3.476l1.444-1.444A3.981 3.981 0 013 7c0-.742.202-1.436.554-2.032zM10 7a3 3 0 11-6 0 3 3 0 016 0z",fill:e}))),XB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M7 4.5a.5.5 0 01.5.5v3.5a.5.5 0 11-1 0V5a.5.5 0 01.5-.5zM7.75 10.5a.75.75 0 11-1.5 0 .75.75 0 011.5 0z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M7.206 1.045a.498.498 0 01.23.209l6.494 10.992a.5.5 0 01-.438.754H.508a.497.497 0 01-.506-.452.498.498 0 01.072-.31l6.49-10.984a.497.497 0 01.642-.21zM7 2.483L1.376 12h11.248L7 2.483z",fill:e}))),QB=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M14 7A7 7 0 110 7a7 7 0 0114 0zM6.5 8a.5.5 0 001 0V4a.5.5 0 00-1 0v4zm-.25 2.25a.75.75 0 111.5 0 .75.75 0 01-1.5 0z",fill:e}))),eR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M0 2.504a.5.5 0 01.5-.5h13a.5.5 0 01.5.5v9a.5.5 0 01-.5.5H.5a.5.5 0 01-.5-.5v-9zm1 1.012v7.488h12V3.519L7.313 7.894a.496.496 0 01-.526.062.497.497 0 01-.1-.062L1 3.516zm11.03-.512H1.974L7 6.874l5.03-3.87z",fill:e}))),tR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M7.76 8.134l-.05.05a.2.2 0 01-.28.03 6.76 6.76 0 01-1.63-1.65.21.21 0 01.04-.27l.05-.05c.23-.2.54-.47.71-.96.17-.47-.02-1.04-.66-1.94-.26-.38-.72-.96-1.22-1.46-.68-.69-1.2-1-1.65-1a.98.98 0 00-.51.13A3.23 3.23 0 00.9 3.424c-.13 1.1.26 2.37 1.17 3.78a16.679 16.679 0 004.55 4.6 6.57 6.57 0 003.53 1.32 3.2 3.2 0 002.85-1.66c.14-.24.24-.64-.07-1.18a7.803 7.803 0 00-1.73-1.81c-.64-.5-1.52-1.11-2.13-1.11a.97.97 0 00-.34.06c-.472.164-.74.458-.947.685l-.023.025zm4.32 2.678a6.801 6.801 0 00-1.482-1.54l-.007-.005-.006-.005a8.418 8.418 0 00-.957-.662 2.7 2.7 0 00-.4-.193.683.683 0 00-.157-.043l-.004.002-.009.003c-.224.078-.343.202-.56.44l-.014.016-.046.045a1.2 1.2 0 01-1.602.149A7.76 7.76 0 014.98 7.134l-.013-.019-.013-.02a1.21 1.21 0 01.195-1.522l.06-.06.026-.024c.219-.19.345-.312.422-.533l.003-.01v-.008a.518.518 0 00-.032-.142c-.06-.178-.203-.453-.502-.872l-.005-.008-.005-.007A10.18 10.18 0 004.013 2.59l-.005-.005c-.31-.314-.543-.5-.716-.605-.147-.088-.214-.096-.222-.097h-.016l-.006.003-.01.006a2.23 2.23 0 00-1.145 1.656c-.09.776.175 1.806 1.014 3.108a15.68 15.68 0 004.274 4.32l.022.014.022.016a5.57 5.57 0 002.964 1.117 2.2 2.2 0 001.935-1.141l.006-.012.004-.007a.182.182 0 00-.007-.038.574.574 0 00-.047-.114z",fill:e}))),rR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M11.841 2.159a2.25 2.25 0 00-3.182 0l-2.5 2.5a2.25 2.25 0 000 3.182.5.5 0 01-.707.707 3.25 3.25 0 010-4.596l2.5-2.5a3.25 3.25 0 014.596 4.596l-2.063 2.063a4.27 4.27 0 00-.094-1.32l1.45-1.45a2.25 2.25 0 000-3.182z",fill:e}),l.createElement("path",{d:"M3.61 7.21c-.1-.434-.132-.88-.095-1.321L1.452 7.952a3.25 3.25 0 104.596 4.596l2.5-2.5a3.25 3.25 0 000-4.596.5.5 0 00-.707.707 2.25 2.25 0 010 3.182l-2.5 2.5A2.25 2.25 0 112.159 8.66l1.45-1.45z",fill:e}))),nR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M1.452 7.952l1.305-1.305.708.707-1.306 1.305a2.25 2.25 0 103.182 3.182l1.306-1.305.707.707-1.306 1.305a3.25 3.25 0 01-4.596-4.596zM12.548 6.048l-1.305 1.306-.707-.708 1.305-1.305a2.25 2.25 0 10-3.182-3.182L7.354 3.464l-.708-.707 1.306-1.305a3.25 3.25 0 014.596 4.596zM1.854 1.146a.5.5 0 10-.708.708l11 11a.5.5 0 00.707-.707l-11-11z",fill:e}))),aR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M7.994 1.11a1 1 0 10-1.988 0A4.502 4.502 0 002.5 5.5v3.882l-.943 1.885a.497.497 0 00-.053.295.5.5 0 00.506.438h3.575a1.5 1.5 0 102.83 0h3.575a.5.5 0 00.453-.733L11.5 9.382V5.5a4.502 4.502 0 00-3.506-4.39zM2.81 11h8.382l-.5-1H3.31l-.5 1zM10.5 9V5.5a3.5 3.5 0 10-7 0V9h7zm-4 3.5a.5.5 0 111 0 .5.5 0 01-1 0z",fill:e}))),oR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M1.5.5A.5.5 0 012 0c6.627 0 12 5.373 12 12a.5.5 0 01-1 0C13 5.925 8.075 1 2 1a.5.5 0 01-.5-.5z",fill:e}),l.createElement("path",{d:"M1.5 4.5A.5.5 0 012 4a8 8 0 018 8 .5.5 0 01-1 0 7 7 0 00-7-7 .5.5 0 01-.5-.5z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M5 11a2 2 0 11-4 0 2 2 0 014 0zm-1 0a1 1 0 11-2 0 1 1 0 012 0z",fill:e}))),iR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M2 1.004a1 1 0 00-1 1v10a1 1 0 001 1h10a1 1 0 001-1v-4.5a.5.5 0 00-1 0v4.5H2v-10h4.5a.5.5 0 000-1H2z",fill:e}),l.createElement("path",{d:"M7.354 7.357L12 2.711v1.793a.5.5 0 001 0v-3a.5.5 0 00-.5-.5h-3a.5.5 0 100 1h1.793L6.646 6.65a.5.5 0 10.708.707z",fill:e}))),lR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M6.646.15a.5.5 0 01.708 0l2 2a.5.5 0 11-.708.707L7.5 1.711v6.793a.5.5 0 01-1 0V1.71L5.354 2.857a.5.5 0 11-.708-.707l2-2z",fill:e}),l.createElement("path",{d:"M2 4.004a1 1 0 00-1 1v7a1 1 0 001 1h10a1 1 0 001-1v-7a1 1 0 00-1-1H9.5a.5.5 0 100 1H12v7H2v-7h2.5a.5.5 0 000-1H2z",fill:e}))),sR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M13.854 6.646a.5.5 0 010 .708l-2 2a.5.5 0 01-.708-.708L12.293 7.5H5.5a.5.5 0 010-1h6.793l-1.147-1.146a.5.5 0 01.708-.708l2 2z",fill:e}),l.createElement("path",{d:"M10 2a1 1 0 00-1-1H2a1 1 0 00-1 1v10a1 1 0 001 1h7a1 1 0 001-1V9.5a.5.5 0 00-1 0V12H2V2h7v2.5a.5.5 0 001 0V2z",fill:e}))),uR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M7 13A6 6 0 107 1a6 6 0 000 12zm0 1A7 7 0 107 0a7 7 0 000 14z",fill:e}))),cR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M14 7A7 7 0 110 7a7 7 0 0114 0z",fill:e}))),dR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M3.5 0h7a.5.5 0 01.5.5v13a.5.5 0 01-.454.498.462.462 0 01-.371-.118L7 11.159l-3.175 2.72a.46.46 0 01-.379.118A.5.5 0 013 13.5V.5a.5.5 0 01.5-.5zM4 12.413l2.664-2.284a.454.454 0 01.377-.128.498.498 0 01.284.12L10 12.412V1H4v11.413z",fill:e}))),pR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M3.5 0h7a.5.5 0 01.5.5v13a.5.5 0 01-.454.498.462.462 0 01-.371-.118L7 11.159l-3.175 2.72a.46.46 0 01-.379.118A.5.5 0 013 13.5V.5a.5.5 0 01.5-.5z",fill:e}))),fR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("g",{clipPath:"url(#prefix__clip0_1449_588)"},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M8.414 1.586a2 2 0 00-2.828 0l-4 4a2 2 0 000 2.828l4 4a2 2 0 002.828 0l4-4a2 2 0 000-2.828l-4-4zm.707-.707a3 3 0 00-4.242 0l-4 4a3 3 0 000 4.242l4 4a3 3 0 004.242 0l4-4a3 3 0 000-4.242l-4-4z",fill:e})),l.createElement("defs",null,l.createElement("clipPath",{id:"prefix__clip0_1449_588"},l.createElement("path",{fill:"#fff",d:"M0 0h14v14H0z"}))))),hR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M12.814 1.846c.06.05.116.101.171.154l.001.002a3.254 3.254 0 01.755 1.168c.171.461.259.974.259 1.538 0 .332-.046.656-.143.976a4.546 4.546 0 01-.397.937c-.169.302-.36.589-.58.864a7.627 7.627 0 01-.674.746l-4.78 4.596a.585.585 0 01-.427.173.669.669 0 01-.44-.173L1.78 8.217a7.838 7.838 0 01-.677-.748 6.124 6.124 0 01-.572-.855 4.975 4.975 0 01-.388-.931A3.432 3.432 0 010 4.708C0 4.144.09 3.63.265 3.17c.176-.459.429-.85.757-1.168a3.432 3.432 0 011.193-.74c.467-.176.99-.262 1.57-.262.304 0 .608.044.907.137.301.092.586.215.855.367.27.148.526.321.771.512.244.193.471.386.682.584.202-.198.427-.391.678-.584.248-.19.507-.364.78-.512a4.65 4.65 0 01.845-.367c.294-.093.594-.137.9-.137.585 0 1.115.086 1.585.262.392.146.734.34 1.026.584zM1.2 3.526c.128-.333.304-.598.52-.806.218-.212.497-.389.849-.522m-1.37 1.328A3.324 3.324 0 001 4.708c0 .225.032.452.101.686.082.265.183.513.307.737.135.246.294.484.479.716.188.237.386.454.59.652l.001.002 4.514 4.355 4.519-4.344c.2-.193.398-.41.585-.648l.003-.003c.184-.23.345-.472.486-.726l.004-.007c.131-.23.232-.474.31-.732v-.002c.068-.224.101-.45.101-.686 0-.457-.07-.849-.195-1.185a2.177 2.177 0 00-.515-.802l.007-.012-.008.009a2.383 2.383 0 00-.85-.518l-.003-.001C11.1 2.072 10.692 2 10.203 2c-.21 0-.406.03-.597.09h-.001c-.22.07-.443.167-.663.289l-.007.003c-.22.12-.434.262-.647.426-.226.174-.42.341-.588.505l-.684.672-.7-.656a9.967 9.967 0 00-.615-.527 4.82 4.82 0 00-.635-.422l-.01-.005a3.289 3.289 0 00-.656-.281l-.008-.003A2.014 2.014 0 003.785 2c-.481 0-.881.071-1.217.198",fill:e}))),mR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M12.814 1.846c.06.05.116.101.171.154l.001.002a3.254 3.254 0 01.755 1.168c.171.461.259.974.259 1.538 0 .332-.046.656-.143.976a4.546 4.546 0 01-.397.937c-.169.302-.36.589-.58.864a7.627 7.627 0 01-.674.746l-4.78 4.596a.585.585 0 01-.427.173.669.669 0 01-.44-.173L1.78 8.217a7.838 7.838 0 01-.677-.748 6.124 6.124 0 01-.572-.855 4.975 4.975 0 01-.388-.931A3.432 3.432 0 010 4.708C0 4.144.09 3.63.265 3.17c.176-.459.429-.85.757-1.168a3.432 3.432 0 011.193-.74c.467-.176.99-.262 1.57-.262.304 0 .608.044.907.137.301.092.586.215.855.367.27.148.526.321.771.512.244.193.471.386.682.584.202-.198.427-.391.678-.584.248-.19.507-.364.78-.512a4.65 4.65 0 01.845-.367c.294-.093.594-.137.9-.137.585 0 1.115.086 1.585.262.392.146.734.34 1.026.584z",fill:e}))),gR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M6.319.783a.75.75 0 011.362 0l1.63 3.535 3.867.458a.75.75 0 01.42 1.296L10.74 8.715l.76 3.819a.75.75 0 01-1.103.8L7 11.434l-3.398 1.902a.75.75 0 01-1.101-.801l.758-3.819L.401 6.072a.75.75 0 01.42-1.296l3.867-.458L6.318.783zm.68.91l-1.461 3.17a.75.75 0 01-.593.431l-3.467.412 2.563 2.37a.75.75 0 01.226.697l-.68 3.424 3.046-1.705a.75.75 0 01.733 0l3.047 1.705-.68-3.424a.75.75 0 01.226-.697l2.563-2.37-3.467-.412a.75.75 0 01-.593-.43L7 1.694z",fill:e}))),vR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M7.68.783a.75.75 0 00-1.361 0l-1.63 3.535-3.867.458A.75.75 0 00.4 6.072l2.858 2.643-.758 3.819a.75.75 0 001.101.8L7 11.434l3.397 1.902a.75.75 0 001.102-.801l-.759-3.819L13.6 6.072a.75.75 0 00-.421-1.296l-3.866-.458L7.68.783z",fill:e}))),yR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M10 7.854a4.5 4.5 0 10-6 0V13a.5.5 0 00.497.5h.006c.127 0 .254-.05.35-.146L7 11.207l2.146 2.147A.5.5 0 0010 13V7.854zM7 8a3.5 3.5 0 100-7 3.5 3.5 0 000 7zm-.354 2.146a.5.5 0 01.708 0L9 11.793v-3.26C8.398 8.831 7.718 9 7 9a4.481 4.481 0 01-2-.468v3.26l1.646-1.646z",fill:e}))),bR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M6.565 13.123a.991.991 0 01.87 0l.987.482a.991.991 0 001.31-.426l.515-.97a.991.991 0 01.704-.511l1.082-.19a.99.99 0 00.81-1.115l-.154-1.087a.991.991 0 01.269-.828l.763-.789a.991.991 0 000-1.378l-.763-.79a.991.991 0 01-.27-.827l.155-1.087a.99.99 0 00-.81-1.115l-1.082-.19a.991.991 0 01-.704-.511L9.732.82a.99.99 0 00-1.31-.426l-.987.482a.991.991 0 01-.87 0L5.578.395a.99.99 0 00-1.31.426l-.515.97a.99.99 0 01-.704.511l-1.082.19a.99.99 0 00-.81 1.115l.154 1.087a.99.99 0 01-.269.828L.28 6.31a.99.99 0 000 1.378l.763.79a.99.99 0 01.27.827l-.155 1.087a.99.99 0 00.81 1.115l1.082.19a.99.99 0 01.704.511l.515.97c.25.473.83.661 1.31.426l.987-.482zm4.289-8.477a.5.5 0 010 .708l-4.5 4.5a.5.5 0 01-.708 0l-2.5-2.5a.5.5 0 11.708-.708L6 8.793l4.146-4.147a.5.5 0 01.708 0z",fill:e}))),wR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M11 12.02c-.4.37-.91.56-1.56.56h-.88a5.493 5.493 0 01-1.3-.16c-.42-.1-.91-.25-1.47-.45a5.056 5.056 0 00-.95-.27H2.88a.84.84 0 01-.62-.26.84.84 0 01-.26-.61V6.45c0-.24.09-.45.26-.62a.84.84 0 01.62-.25h1.87c.16-.11.47-.47.93-1.06.27-.35.51-.64.74-.88.1-.11.19-.3.24-.58.05-.28.12-.57.2-.87.1-.3.24-.55.43-.74a.87.87 0 01.62-.25c.38 0 .72.07 1.03.22.3.15.54.38.7.7.15.31.23.73.23 1.27a3 3 0 01-.32 1.31h1.2c.47 0 .88.17 1.23.52s.52.8.52 1.22c0 .29-.04.66-.34 1.12.05.15.07.3.07.47 0 .35-.09.68-.26.98a2.05 2.05 0 01-.4 1.51 1.9 1.9 0 01-.57 1.5zm.473-5.33a.965.965 0 00.027-.25.742.742 0 00-.227-.513.683.683 0 00-.523-.227H7.927l.73-1.45a2 2 0 00.213-.867c0-.444-.068-.695-.127-.822a.53.53 0 00-.245-.244 1.296 1.296 0 00-.539-.116.989.989 0 00-.141.28 9.544 9.544 0 00-.174.755c-.069.387-.213.779-.484 1.077l-.009.01-.009.01c-.195.202-.41.46-.67.798l-.003.004c-.235.3-.44.555-.613.753-.151.173-.343.381-.54.516l-.255.176H5v4.133l.018.003c.384.07.76.176 1.122.318.532.189.98.325 1.352.413l.007.002a4.5 4.5 0 001.063.131h.878c.429 0 .683-.115.871-.285a.9.9 0 00.262-.702l-.028-.377.229-.3a1.05 1.05 0 00.205-.774l-.044-.333.165-.292a.969.969 0 00.13-.487.457.457 0 00-.019-.154l-.152-.458.263-.404a1.08 1.08 0 00.152-.325zM3.5 10.8a.5.5 0 100-1 .5.5 0 000 1z",fill:e}))),DR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M11.765 2.076A.5.5 0 0112 2.5v6.009a.497.497 0 01-.17.366L7.337 12.87a.497.497 0 01-.674 0L2.17 8.875l-.009-.007a.498.498 0 01-.16-.358L2 8.5v-6a.5.5 0 01.235-.424l.018-.011c.016-.01.037-.024.065-.04.056-.032.136-.077.24-.128a6.97 6.97 0 01.909-.371C4.265 1.26 5.443 1 7 1s2.735.26 3.533.526c.399.133.702.267.91.37a4.263 4.263 0 01.304.169l.018.01zM3 2.793v5.482l1.068.95 6.588-6.588a6.752 6.752 0 00-.44-.163C9.517 2.24 8.444 2 7 2c-1.443 0-2.515.24-3.217.474-.351.117-.61.233-.778.317L3 2.793zm4 9.038l-2.183-1.94L11 3.706v4.568l-4 3.556z",fill:e}))),ER=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M10.354 2.854a.5.5 0 10-.708-.708l-3 3a.5.5 0 10.708.708l3-3z",fill:e}),l.createElement("path",{d:"M2.09 6H4.5a.5.5 0 000-1H1.795a.75.75 0 00-.74.873l.813 4.874A1.5 1.5 0 003.348 12h7.305a1.5 1.5 0 001.48-1.253l.812-4.874a.75.75 0 00-.74-.873H10a.5.5 0 000 1h1.91l-.764 4.582a.5.5 0 01-.493.418H3.347a.5.5 0 01-.493-.418L2.09 6z",fill:e}),l.createElement("path",{d:"M4.5 7a.5.5 0 01.5.5v2a.5.5 0 01-1 0v-2a.5.5 0 01.5-.5zM10 7.5a.5.5 0 00-1 0v2a.5.5 0 001 0v-2zM6.5 9.5v-2a.5.5 0 011 0v2a.5.5 0 01-1 0z",fill:e}))),CR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M4.5 2h.75v3.866l-3.034 5.26A1.25 1.25 0 003.299 13H10.7a1.25 1.25 0 001.083-1.875L8.75 5.866V2h.75a.5.5 0 100-1h-5a.5.5 0 000 1zm1.75 4V2h1.5v4.134l.067.116L8.827 8H5.173l1.01-1.75.067-.116V6zM4.597 9l-1.515 2.625A.25.25 0 003.3 12H10.7a.25.25 0 00.217-.375L9.404 9H4.597z",fill:e}))),xR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M7.5 10.5a.5.5 0 11-1 0 .5.5 0 011 0z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M3.5 1a.5.5 0 00-.5.5c0 1.063.137 1.892.678 2.974.346.692.858 1.489 1.598 2.526-.89 1.247-1.455 2.152-1.798 2.956-.377.886-.477 1.631-.478 2.537v.007a.5.5 0 00.5.5h7c.017 0 .034 0 .051-.003A.5.5 0 0011 12.5v-.007c0-.906-.1-1.65-.478-2.537-.343-.804-.909-1.709-1.798-2.956.74-1.037 1.252-1.834 1.598-2.526C10.863 3.392 11 2.563 11 1.5a.5.5 0 00-.5-.5h-7zm6.487 11a4.675 4.675 0 00-.385-1.652c-.277-.648-.735-1.407-1.499-2.494-.216.294-.448.606-.696.937a.497.497 0 01-.195.162.5.5 0 01-.619-.162c-.248-.331-.48-.643-.696-.937-.764 1.087-1.222 1.846-1.499 2.494A4.675 4.675 0 004.013 12h5.974zM6.304 6.716c.212.293.443.609.696.948a90.058 90.058 0 00.709-.965c.48-.664.86-1.218 1.163-1.699H5.128a32.672 32.672 0 001.176 1.716zM4.559 4h4.882c.364-.735.505-1.312.546-2H4.013c.04.688.182 1.265.546 2z",fill:e}))),SR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M11.5 1h-9a.5.5 0 00-.5.5v11a.5.5 0 001 0V8h8.5a.5.5 0 00.354-.854L9.207 4.5l2.647-2.646A.499.499 0 0011.5 1zM8.146 4.146L10.293 2H3v5h7.293L8.146 4.854a.5.5 0 010-.708z",fill:e}))),FR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M10 7V6a3 3 0 00-5.91-.736l-.17.676-.692.075A2.5 2.5 0 003.5 11h3c.063 0 .125-.002.187-.007l.076-.005.076.006c.053.004.106.006.161.006h4a2 2 0 100-4h-1zM3.12 5.02A3.5 3.5 0 003.5 12h3c.087 0 .174-.003.26-.01.079.007.16.01.24.01h4a3 3 0 100-6 4 4 0 00-7.88-.98z",fill:e}))),AR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M7 2a4 4 0 014 4 3 3 0 110 6H7c-.08 0-.161-.003-.24-.01-.086.007-.173.01-.26.01h-3a3.5 3.5 0 01-.38-6.98A4.002 4.002 0 017 2z",fill:e}))),kR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M11 7a4 4 0 11-8 0 4 4 0 018 0zm-1 0a3 3 0 11-6 0 3 3 0 016 0z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M4.268 13.18c.25.472.83.66 1.31.425l.987-.482a.991.991 0 01.87 0l.987.482a.991.991 0 001.31-.426l.515-.97a.991.991 0 01.704-.511l1.082-.19a.99.99 0 00.81-1.115l-.154-1.087a.991.991 0 01.269-.828l.763-.789a.991.991 0 000-1.378l-.763-.79a.991.991 0 01-.27-.827l.155-1.087a.99.99 0 00-.81-1.115l-1.082-.19a.991.991 0 01-.704-.511L9.732.82a.99.99 0 00-1.31-.426l-.987.482a.991.991 0 01-.87 0L5.578.395a.99.99 0 00-1.31.426l-.515.97a.99.99 0 01-.704.511l-1.082.19a.99.99 0 00-.81 1.115l.154 1.087a.99.99 0 01-.269.828L.28 6.31a.99.99 0 000 1.378l.763.79a.99.99 0 01.27.827l-.155 1.087a.99.99 0 00.81 1.115l1.082.19a.99.99 0 01.704.511l.515.97zm5.096-1.44l-.511.963-.979-.478a1.99 1.99 0 00-1.748 0l-.979.478-.51-.962a1.991 1.991 0 00-1.415-1.028l-1.073-.188.152-1.079a1.991 1.991 0 00-.54-1.663L1.004 7l.757-.783a1.991 1.991 0 00.54-1.663L2.15 3.475l1.073-.188A1.991 1.991 0 004.636 2.26l.511-.962.979.478a1.99 1.99 0 001.748 0l.979-.478.51.962c.288.543.81.922 1.415 1.028l1.073.188-.152 1.079a1.99 1.99 0 00.54 1.663l.757.783-.757.783a1.99 1.99 0 00-.54 1.663l.152 1.079-1.073.188a1.991 1.991 0 00-1.414 1.028z",fill:e}))),_R=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M7 4a3 3 0 100 6 3 3 0 000-6zM3 7a4 4 0 118 0 4 4 0 01-8 0z",fill:e}))),BR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("circle",{cx:7,cy:7,r:3,fill:e}))),RR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M7.206 3.044a.498.498 0 01.23.212l3.492 5.985a.494.494 0 01.006.507.497.497 0 01-.443.252H3.51a.499.499 0 01-.437-.76l3.492-5.984a.497.497 0 01.642-.212zM7 4.492L4.37 9h5.26L7 4.492z",fill:e}))),IR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M10.854 4.146a.5.5 0 010 .708l-5 5a.5.5 0 01-.708 0l-2-2a.5.5 0 11.708-.708L5.5 8.793l4.646-4.647a.5.5 0 01.708 0z",fill:e}))),zR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M7.354 3.896l5.5 5.5a.5.5 0 01-.708.708L7 4.957l-5.146 5.147a.5.5 0 01-.708-.708l5.5-5.5a.5.5 0 01.708 0z",fill:e}))),TR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M1.146 4.604l5.5 5.5a.5.5 0 00.708 0l5.5-5.5a.5.5 0 00-.708-.708L7 9.043 1.854 3.896a.5.5 0 10-.708.708z",fill:e}))),LR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M2.76 7.096a.498.498 0 00.136.258l5.5 5.5a.5.5 0 00.707-.708L3.958 7l5.147-5.146a.5.5 0 10-.708-.708l-5.5 5.5a.5.5 0 00-.137.45z",fill:e}))),pE=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M11.104 7.354l-5.5 5.5a.5.5 0 01-.708-.708L10.043 7 4.896 1.854a.5.5 0 11.708-.708l5.5 5.5a.5.5 0 010 .708z",fill:e}))),MR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M3.854 9.104a.5.5 0 11-.708-.708l3.5-3.5a.5.5 0 01.708 0l3.5 3.5a.5.5 0 01-.708.708L7 5.957 3.854 9.104z",fill:e}))),OR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M3.854 4.896a.5.5 0 10-.708.708l3.5 3.5a.5.5 0 00.708 0l3.5-3.5a.5.5 0 00-.708-.708L7 8.043 3.854 4.896z",fill:e}))),PR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M9.104 10.146a.5.5 0 01-.708.708l-3.5-3.5a.5.5 0 010-.708l3.5-3.5a.5.5 0 11.708.708L5.957 7l3.147 3.146z",fill:e}))),NR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M4.896 10.146a.5.5 0 00.708.708l3.5-3.5a.5.5 0 000-.708l-3.5-3.5a.5.5 0 10-.708.708L8.043 7l-3.147 3.146z",fill:e}))),$R=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M11.854 4.646l-4.5-4.5a.5.5 0 00-.708 0l-4.5 4.5a.5.5 0 10.708.708L6.5 1.707V13.5a.5.5 0 001 0V1.707l3.646 3.647a.5.5 0 00.708-.708z",fill:e}))),HR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M7.5.5a.5.5 0 00-1 0v11.793L2.854 8.646a.5.5 0 10-.708.708l4.5 4.5a.5.5 0 00.351.146h.006c.127 0 .254-.05.35-.146l4.5-4.5a.5.5 0 00-.707-.708L7.5 12.293V.5z",fill:e}))),jR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M5.354 2.146a.5.5 0 010 .708L1.707 6.5H13.5a.5.5 0 010 1H1.707l3.647 3.646a.5.5 0 01-.708.708l-4.5-4.5a.5.5 0 010-.708l4.5-4.5a.5.5 0 01.708 0z",fill:e}))),VR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M8.646 2.146a.5.5 0 01.708 0l4.5 4.5a.5.5 0 010 .708l-4.5 4.5a.5.5 0 01-.708-.708L12.293 7.5H.5a.5.5 0 010-1h11.793L8.646 2.854a.5.5 0 010-.708z",fill:e}))),UR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M1.904 8.768V2.404a.5.5 0 01.5-.5h6.364a.5.5 0 110 1H3.61l8.339 8.339a.5.5 0 01-.707.707l-8.34-8.34v5.158a.5.5 0 01-1 0z",fill:e}))),qR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M12.096 8.768V2.404a.5.5 0 00-.5-.5H5.232a.5.5 0 100 1h5.157L2.05 11.243a.5.5 0 10.707.707l8.34-8.34v5.158a.5.5 0 101 0z",fill:e}))),WR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M1.904 5.232v6.364a.5.5 0 00.5.5h6.364a.5.5 0 000-1H3.61l8.339-8.339a.5.5 0 00-.707-.707l-8.34 8.34V5.231a.5.5 0 00-1 0z",fill:e}))),GR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M12.096 5.232v6.364a.5.5 0 01-.5.5H5.232a.5.5 0 010-1h5.157L2.05 2.757a.5.5 0 01.707-.707l8.34 8.34V5.231a.5.5 0 111 0z",fill:e}))),KR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M6.772 3.59c.126-.12.33-.12.456 0l5.677 5.387c.203.193.06.523-.228.523H1.323c-.287 0-.431-.33-.228-.523L6.772 3.59z",fill:e}))),YR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M7.228 10.41a.335.335 0 01-.456 0L1.095 5.023c-.203-.193-.06-.523.228-.523h11.354c.287 0 .431.33.228.523L7.228 10.41z",fill:e}))),ZR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M3.712 7.212a.3.3 0 010-.424l5.276-5.276a.3.3 0 01.512.212v10.552a.3.3 0 01-.512.212L3.712 7.212z",fill:e}))),JR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M10.288 7.212a.3.3 0 000-.424L5.012 1.512a.3.3 0 00-.512.212v10.552a.3.3 0 00.512.212l5.276-5.276z",fill:e}))),XR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M7.354.146l4 4a.5.5 0 01-.708.708L7 1.207 3.354 4.854a.5.5 0 11-.708-.708l4-4a.5.5 0 01.708 0zM11.354 9.146a.5.5 0 010 .708l-4 4a.5.5 0 01-.708 0l-4-4a.5.5 0 11.708-.708L7 12.793l3.646-3.647a.5.5 0 01.708 0z",fill:e}))),QR=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M3.354.146a.5.5 0 10-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 00-.708-.708L7 3.793 3.354.146zM6.646 9.146a.5.5 0 01.708 0l4 4a.5.5 0 01-.708.708L7 10.207l-3.646 3.647a.5.5 0 01-.708-.708l4-4z",fill:e}))),eI=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M1.5 1h2a.5.5 0 010 1h-.793l3.147 3.146a.5.5 0 11-.708.708L2 2.707V3.5a.5.5 0 01-1 0v-2a.5.5 0 01.5-.5zM10 1.5a.5.5 0 01.5-.5h2a.5.5 0 01.5.5v2a.5.5 0 01-1 0v-.793L8.854 5.854a.5.5 0 11-.708-.708L11.293 2H10.5a.5.5 0 01-.5-.5zM12.5 10a.5.5 0 01.5.5v2a.5.5 0 01-.5.5h-2a.5.5 0 010-1h.793L8.146 8.854a.5.5 0 11.708-.708L12 11.293V10.5a.5.5 0 01.5-.5zM2 11.293V10.5a.5.5 0 00-1 0v2a.5.5 0 00.5.5h2a.5.5 0 000-1h-.793l3.147-3.146a.5.5 0 10-.708-.708L2 11.293z",fill:e}))),tI=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M6.646.147l-1.5 1.5a.5.5 0 10.708.707l.646-.647V5a.5.5 0 001 0V1.707l.646.647a.5.5 0 10.708-.707l-1.5-1.5a.5.5 0 00-.708 0z",fill:e}),l.createElement("path",{d:"M1.309 4.038a.498.498 0 00-.16.106l-.005.005a.498.498 0 00.002.705L3.293 7 1.146 9.146A.498.498 0 001.5 10h3a.5.5 0 000-1H2.707l1.5-1.5h5.586l2.353 2.354a.5.5 0 00.708-.708L10.707 7l2.146-2.146.11-.545-.107.542A.499.499 0 0013 4.503v-.006a.5.5 0 00-.144-.348l-.005-.005A.498.498 0 0012.5 4h-3a.5.5 0 000 1h1.793l-1.5 1.5H4.207L2.707 5H4.5a.5.5 0 000-1h-3a.498.498 0 00-.191.038z",fill:e}),l.createElement("path",{d:"M7 8.5a.5.5 0 01.5.5v3.293l.646-.647a.5.5 0 01.708.708l-1.5 1.5a.5.5 0 01-.708 0l-1.5-1.5a.5.5 0 01.708-.708l.646.647V9a.5.5 0 01.5-.5zM9 9.5a.5.5 0 01.5-.5h3a.5.5 0 010 1h-3a.5.5 0 01-.5-.5z",fill:e}))),rI=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M10.646 2.646a.5.5 0 01.708 0l1.5 1.5a.5.5 0 010 .708l-1.5 1.5a.5.5 0 01-.708-.708L11.293 5H1.5a.5.5 0 010-1h9.793l-.647-.646a.5.5 0 010-.708zM3.354 8.354L2.707 9H12.5a.5.5 0 010 1H2.707l.647.646a.5.5 0 01-.708.708l-1.5-1.5a.5.5 0 010-.708l1.5-1.5a.5.5 0 11.708.708z",fill:e}))),nI=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M1.5 1a.5.5 0 01.5.5V10a2 2 0 004 0V4a3 3 0 016 0v7.793l1.146-1.147a.5.5 0 01.708.708l-2 2a.5.5 0 01-.708 0l-2-2a.5.5 0 01.708-.708L11 11.793V4a2 2 0 10-4 0v6.002a3 3 0 01-6 0V1.5a.5.5 0 01.5-.5z",fill:e}))),aI=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M1.146 3.854a.5.5 0 010-.708l2-2a.5.5 0 11.708.708L2.707 3h6.295A4 4 0 019 11H3a.5.5 0 010-1h6a3 3 0 100-6H2.707l1.147 1.146a.5.5 0 11-.708.708l-2-2z",fill:e}))),oI=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M4.354 2.146a.5.5 0 010 .708L1.707 5.5H9.5A4.5 4.5 0 0114 10v1.5a.5.5 0 01-1 0V10a3.5 3.5 0 00-3.5-3.5H1.707l2.647 2.646a.5.5 0 11-.708.708l-3.5-3.5a.5.5 0 010-.708l3.5-3.5a.5.5 0 01.708 0z",fill:e}))),iI=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M5.5 1A.5.5 0 005 .5H2a.5.5 0 000 1h1.535a6.502 6.502 0 002.383 11.91.5.5 0 10.165-.986A5.502 5.502 0 014.5 2.1V4a.5.5 0 001 0V1.353a.5.5 0 000-.023V1zM7.507 1a.5.5 0 01.576-.41 6.502 6.502 0 012.383 11.91H12a.5.5 0 010 1H9a.5.5 0 01-.5-.5v-3a.5.5 0 011 0v1.9A5.5 5.5 0 007.917 1.576.5.5 0 017.507 1z",fill:e}))),lI=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M8.646 5.854L7.5 4.707V10.5a.5.5 0 01-1 0V4.707L5.354 5.854a.5.5 0 11-.708-.708l2-2a.5.5 0 01.708 0l2 2a.5.5 0 11-.708.708z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M14 7A7 7 0 110 7a7 7 0 0114 0zm-1 0A6 6 0 111 7a6 6 0 0112 0z",fill:e}))),sI=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M5.354 8.146L6.5 9.293V3.5a.5.5 0 011 0v5.793l1.146-1.147a.5.5 0 11.708.708l-2 2a.5.5 0 01-.708 0l-2-2a.5.5 0 11.708-.708z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M0 7a7 7 0 1114 0A7 7 0 010 7zm1 0a6 6 0 1112 0A6 6 0 011 7z",fill:e}))),uI=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M5.854 5.354L4.707 6.5H10.5a.5.5 0 010 1H4.707l1.147 1.146a.5.5 0 11-.708.708l-2-2a.5.5 0 010-.708l2-2a.5.5 0 11.708.708z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M7 0a7 7 0 110 14A7 7 0 017 0zm0 1a6 6 0 110 12A6 6 0 017 1z",fill:e}))),cI=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M3.5 6.5h5.793L8.146 5.354a.5.5 0 11.708-.708l2 2a.5.5 0 010 .708l-2 2a.5.5 0 11-.708-.708L9.293 7.5H3.5a.5.5 0 010-1z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M7 14A7 7 0 117 0a7 7 0 010 14zm0-1A6 6 0 117 1a6 6 0 010 12z",fill:e}))),dI=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M7.092.5H7a6.5 6.5 0 106.41 7.583.5.5 0 10-.986-.166A5.495 5.495 0 017 12.5a5.5 5.5 0 010-11h.006a5.5 5.5 0 014.894 3H10a.5.5 0 000 1h3a.5.5 0 00.5-.5V2a.5.5 0 00-1 0v1.535A6.495 6.495 0 007.092.5z",fill:e}))),pI=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M14 7A7 7 0 100 7a7 7 0 0014 0zm-6.535 5.738c-.233.23-.389.262-.465.262-.076 0-.232-.032-.465-.262-.238-.234-.497-.623-.737-1.182-.434-1.012-.738-2.433-.79-4.056h3.984c-.052 1.623-.356 3.043-.79 4.056-.24.56-.5.948-.737 1.182zM8.992 6.5H5.008c.052-1.623.356-3.044.79-4.056.24-.56.5-.948.737-1.182C6.768 1.032 6.924 1 7 1c.076 0 .232.032.465.262.238.234.497.623.737 1.182.434 1.012.738 2.433.79 4.056zm1 1c-.065 2.176-.558 4.078-1.282 5.253A6.005 6.005 0 0012.98 7.5H9.992zm2.987-1H9.992c-.065-2.176-.558-4.078-1.282-5.253A6.005 6.005 0 0112.98 6.5zm-8.971 0c.065-2.176.558-4.078 1.282-5.253A6.005 6.005 0 001.02 6.5h2.988zm-2.987 1a6.005 6.005 0 004.27 5.253C4.565 11.578 4.072 9.676 4.007 7.5H1.02z",fill:e}))),fI=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M10.087 3.397L5.95 5.793a.374.374 0 00-.109.095.377.377 0 00-.036.052l-2.407 4.147a.374.374 0 00-.004.384c.104.179.334.24.513.136l4.142-2.404a.373.373 0 00.148-.143l2.406-4.146a.373.373 0 00-.037-.443.373.373 0 00-.478-.074zM4.75 9.25l2.847-1.652-1.195-1.195L4.75 9.25z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M14 7A7 7 0 110 7a7 7 0 0114 0zm-1 0A6 6 0 111 7a6 6 0 0112 0z",fill:e}))),hI=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M0 7a7 7 0 1114 0A7 7 0 010 7zm6.5 3.5v2.48A6.001 6.001 0 011.02 7.5H3.5a.5.5 0 000-1H1.02A6.001 6.001 0 016.5 1.02V3.5a.5.5 0 001 0V1.02a6.001 6.001 0 015.48 5.48H10.5a.5.5 0 000 1h2.48a6.002 6.002 0 01-5.48 5.48V10.5a.5.5 0 00-1 0z",fill:e}))),mI=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M9 5a2 2 0 11-4 0 2 2 0 014 0zM8 5a1 1 0 11-2 0 1 1 0 012 0z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M12 5A5 5 0 002 5c0 2.633 2.273 6.154 4.65 8.643.192.2.508.2.7 0C9.726 11.153 12 7.633 12 5zM7 1a4 4 0 014 4c0 1.062-.471 2.42-1.303 3.88-.729 1.282-1.69 2.562-2.697 3.67-1.008-1.108-1.968-2.388-2.697-3.67C3.47 7.42 3 6.063 3 5a4 4 0 014-4z",fill:e}))),gI=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M7 2a.5.5 0 01.5.5v4H10a.5.5 0 010 1H7a.5.5 0 01-.5-.5V2.5A.5.5 0 017 2z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M7 14A7 7 0 107 0a7 7 0 000 14zm0-1A6 6 0 107 1a6 6 0 000 12z",fill:e}))),vI=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M9.79 4.093a.5.5 0 01.117.698L7.91 7.586a1 1 0 11-.814-.581l1.997-2.796a.5.5 0 01.698-.116z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M2.069 12.968a7 7 0 119.863 0A12.962 12.962 0 007 12c-1.746 0-3.41.344-4.931.968zm9.582-1.177a6 6 0 10-9.301 0A13.98 13.98 0 017 11c1.629 0 3.194.279 4.65.791z",fill:e}))),yI=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M7.5 4.5a.5.5 0 00-1 0v2.634a1 1 0 101 0V4.5z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M5.5.5A.5.5 0 016 0h2a.5.5 0 010 1h-.5v1.02a5.973 5.973 0 013.374 1.398l.772-.772a.5.5 0 01.708.708l-.772.772A6 6 0 116.5 2.02V1H6a.5.5 0 01-.5-.5zM7 3a5 5 0 100 10A5 5 0 007 3z",fill:e}))),bI=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M7.354 1.146l5.5 5.5a.5.5 0 01-.708.708L12 7.207V12.5a.5.5 0 01-.5.5h-3a.5.5 0 01-.5-.5V9H6v3.5a.5.5 0 01-.5.5h-3a.5.5 0 01-.5-.5V7.207l-.146.147a.5.5 0 11-.708-.708l1-1 4.5-4.5a.5.5 0 01.708 0zM3 6.207V12h2V8.5a.5.5 0 01.5-.5h3a.5.5 0 01.5.5V12h2V6.207l-4-4-4 4z",fill:e}))),wI=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M1.213 4.094a.5.5 0 01.056-.034l5.484-2.995a.498.498 0 01.494 0L12.73 4.06a.507.507 0 01.266.389.498.498 0 01-.507.555H1.51a.5.5 0 01-.297-.91zm2.246-.09h7.082L7 2.07 3.459 4.004z",fill:e}),l.createElement("path",{d:"M4 6a.5.5 0 00-1 0v5a.5.5 0 001 0V6zM11 6a.5.5 0 00-1 0v5a.5.5 0 001 0V6zM5.75 5.5a.5.5 0 01.5.5v5a.5.5 0 01-1 0V6a.5.5 0 01.5-.5zM8.75 6a.5.5 0 00-1 0v5a.5.5 0 001 0V6zM1.5 12.504a.5.5 0 01.5-.5h10a.5.5 0 010 1H2a.5.5 0 01-.5-.5z",fill:e}))),DI=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("g",{clipPath:"url(#prefix__clip0_1107_3594)"},l.createElement("path",{d:"M11.451.537l.01 12.922h0L7.61 8.946a1.077 1.077 0 00-.73-.374L.964 8.087 11.45.537h0z",stroke:e,strokeWidth:1.077})),l.createElement("defs",null,l.createElement("clipPath",{id:"prefix__clip0_1107_3594"},l.createElement("path",{fill:"#fff",d:"M0 0h14v14H0z"}))))),EI=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M14 7A7 7 0 110 7a7 7 0 0114 0zM2.671 11.155c.696-1.006 2.602-1.816 3.194-1.91.226-.036.232-.658.232-.658s-.665-.658-.81-1.544c-.39 0-.63-.94-.241-1.272a2.578 2.578 0 00-.012-.13c-.066-.607-.28-2.606 1.965-2.606 2.246 0 2.031 2 1.966 2.606l-.012.13c.39.331.149 1.272-.24 1.272-.146.886-.81 1.544-.81 1.544s.004.622.23.658c.593.094 2.5.904 3.195 1.91a6 6 0 10-8.657 0z",fill:e}))),CI=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M7.275 13.16a11.388 11.388 0 005.175-1.232v-.25c0-1.566-3.237-2.994-4.104-3.132-.27-.043-.276-.783-.276-.783s.791-.783.964-1.836c.463 0 .75-1.119.286-1.513C9.34 4 9.916 1.16 6.997 1.16c-2.92 0-2.343 2.84-2.324 3.254-.463.394-.177 1.513.287 1.513.172 1.053.963 1.836.963 1.836s-.006.74-.275.783c-.858.136-4.036 1.536-4.103 3.082a11.388 11.388 0 005.73 1.532z",fill:e}))),xI=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M1.183 11.906a10.645 10.645 0 01-1.181-.589c.062-1.439 3.02-2.74 3.818-2.868.25-.04.256-.728.256-.728s-.736-.729-.896-1.709c-.432 0-.698-1.041-.267-1.408A2.853 2.853 0 002.9 4.46c-.072-.672-.31-2.884 2.175-2.884 2.486 0 2.248 2.212 2.176 2.884-.007.062-.012.112-.014.144.432.367.165 1.408-.266 1.408-.16.98-.896 1.709-.896 1.709s.005.688.256.728c.807.129 3.82 1.457 3.82 2.915v.233a10.598 10.598 0 01-4.816 1.146c-1.441 0-2.838-.282-4.152-.837zM11.5 2.16a.5.5 0 01.5.5v1.5h1.5a.5.5 0 010 1H12v1.5a.5.5 0 01-1 0v-1.5H9.5a.5.5 0 110-1H11v-1.5a.5.5 0 01.5-.5z",fill:e}))),SI=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M9.21 11.623a10.586 10.586 0 01-4.031.787A10.585 10.585 0 010 11.07c.06-1.354 2.933-2.578 3.708-2.697.243-.038.249-.685.249-.685s-.715-.685-.87-1.607c-.42 0-.679-.979-.26-1.323a2.589 2.589 0 00-.013-.136c-.07-.632-.3-2.712 2.113-2.712 2.414 0 2.183 2.08 2.113 2.712-.007.059-.012.105-.013.136.419.344.16 1.323-.259 1.323-.156.922-.87 1.607-.87 1.607s.005.647.248.685c.784.12 3.71 1.37 3.71 2.74v.22c-.212.103-.427.2-.646.29z",fill:e}),l.createElement("path",{d:"M8.81 8.417a9.643 9.643 0 00-.736-.398c.61-.42 1.396-.71 1.7-.757.167-.026.171-.471.171-.471s-.491-.471-.598-1.104c-.288 0-.466-.674-.178-.91-.001-.022-.005-.053-.01-.094-.048-.434-.206-1.864 1.453-1.864 1.66 0 1.5 1.43 1.453 1.864l-.01.094c.289.236.11.91-.178.91-.107.633-.598 1.104-.598 1.104s.004.445.171.47c.539.084 2.55.942 2.55 1.884v.628a10.604 10.604 0 01-3.302.553 2.974 2.974 0 00-.576-.879c-.375-.408-.853-.754-1.312-1.03z",fill:e}))),FI=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M9.106 7.354c-.627.265-1.295.4-1.983.4a5.062 5.062 0 01-2.547-.681c.03-.688 1.443-1.31 1.824-1.37.12-.02.122-.348.122-.348s-.351-.348-.428-.816c-.206 0-.333-.498-.127-.673 0-.016-.003-.04-.007-.07C5.926 3.477 5.812 2.42 7 2.42c1.187 0 1.073 1.057 1.039 1.378l-.007.069c.207.175.08.673-.127.673-.076.468-.428.816-.428.816s.003.329.122.348c.386.06 1.825.696 1.825 1.392v.111c-.104.053-.21.102-.318.148zM3.75 11.25A.25.25 0 014 11h6a.25.25 0 110 .5H4a.25.25 0 01-.25-.25zM4 9a.25.25 0 000 .5h6a.25.25 0 100-.5H4z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M1 .5a.5.5 0 01.5-.5h11a.5.5 0 01.5.5v13a.5.5 0 01-.5.5h-11a.5.5 0 01-.5-.5V.5zM2 13V1h10v12H2z",fill:e}))),AI=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M3.968 8.75a.5.5 0 00-.866.5A4.498 4.498 0 007 11.5c1.666 0 3.12-.906 3.898-2.25a.5.5 0 10-.866-.5A3.498 3.498 0 017 10.5a3.498 3.498 0 01-3.032-1.75zM5.5 5a1 1 0 11-2 0 1 1 0 012 0zM9.5 6a1 1 0 100-2 1 1 0 000 2z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M14 7A7 7 0 110 7a7 7 0 0114 0zm-1 0A6 6 0 111 7a6 6 0 0112 0z",fill:e}))),kI=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M4.5 9a.5.5 0 000 1h5a.5.5 0 000-1h-5zM5.5 5a1 1 0 11-2 0 1 1 0 012 0zM9.5 6a1 1 0 100-2 1 1 0 000 2z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M14 7A7 7 0 110 7a7 7 0 0114 0zm-1 0A6 6 0 111 7a6 6 0 0112 0z",fill:e}))),_I=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M3.968 10.25a.5.5 0 01-.866-.5A4.498 4.498 0 017 7.5c1.666 0 3.12.906 3.898 2.25a.5.5 0 11-.866.5A3.498 3.498 0 007 8.5a3.498 3.498 0 00-3.032 1.75zM5.5 5a1 1 0 11-2 0 1 1 0 012 0zM9.5 6a1 1 0 100-2 1 1 0 000 2z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M14 7A7 7 0 110 7a7 7 0 0114 0zm-1 0A6 6 0 111 7a6 6 0 0112 0z",fill:e}))),BI=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M3.526 4.842a.5.5 0 01.632-.316l2.051.684a2.5 2.5 0 001.582 0l2.05-.684a.5.5 0 01.317.948l-2.453.818a.3.3 0 00-.205.285v.243a4.5 4.5 0 00.475 2.012l.972 1.944a.5.5 0 11-.894.448L7 9.118l-1.053 2.106a.5.5 0 11-.894-.447l.972-1.945A4.5 4.5 0 006.5 6.82v-.243a.3.3 0 00-.205-.285l-2.453-.818a.5.5 0 01-.316-.632z",fill:e}),l.createElement("path",{d:"M7 4.5a1 1 0 100-2 1 1 0 000 2z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M7 14A7 7 0 107 0a7 7 0 000 14zm0-1A6 6 0 107 1a6 6 0 000 12z",fill:e}))),RI=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M7 14A7 7 0 107 0a7 7 0 000 14zM8 3.5a1 1 0 11-2 0 1 1 0 012 0zM3.526 4.842a.5.5 0 01.632-.316l2.051.684a2.5 2.5 0 001.582 0l2.05-.684a.5.5 0 01.317.948l-2.453.818a.3.3 0 00-.205.285v.243a4.5 4.5 0 00.475 2.012l.972 1.944a.5.5 0 11-.894.448L7 9.118l-1.053 2.106a.5.5 0 11-.894-.447l.972-1.945A4.5 4.5 0 006.5 6.82v-.243a.3.3 0 00-.205-.285l-2.453-.818a.5.5 0 01-.316-.632z",fill:e}))),II=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("g",{clipPath:"url(#prefix__clip0_2359_558)",fill:e},l.createElement("path",{d:"M7.636 13.972a7 7 0 116.335-6.335c-.28-.34-.609-.637-.976-.883a6 6 0 10-6.24 6.241c.245.367.542.696.881.977z"}),l.createElement("path",{d:"M7.511 7.136a4.489 4.489 0 00-1.478 3.915l-.086.173a.5.5 0 11-.894-.447l.972-1.945A4.5 4.5 0 006.5 6.82v-.243a.3.3 0 00-.205-.285l-2.453-.818a.5.5 0 01.316-.948l2.051.684a2.5 2.5 0 001.582 0l2.05-.684a.5.5 0 01.317.948l-2.453.818a.3.3 0 00-.205.285v.243c0 .105.004.21.011.316z"}),l.createElement("path",{d:"M8 3.5a1 1 0 11-2 0 1 1 0 012 0z"}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M14 10.5a3.5 3.5 0 11-7 0 3.5 3.5 0 017 0zm-5.5 0A.5.5 0 019 10h3a.5.5 0 010 1H9a.5.5 0 01-.5-.5z"})),l.createElement("defs",null,l.createElement("clipPath",{id:"prefix__clip0_2359_558"},l.createElement("path",{fill:"#fff",d:"M0 0h14v14H0z"}))))),zI=0,TI=u(e=>e.button===zI&&!e.altKey&&!e.ctrlKey&&!e.metaKey&&!e.shiftKey,"isPlainLeftClick"),LI=u((e,t)=>{TI(e)&&(e.preventDefault(),t(e))},"cancelled"),MI=k.span(({withArrow:e})=>e?{"> svg:last-of-type":{height:"0.7em",width:"0.7em",marginRight:0,marginLeft:"0.25em",bottom:"auto",verticalAlign:"inherit"}}:{},({containsIcon:e})=>e?{svg:{height:"1em",width:"1em",verticalAlign:"middle",position:"relative",bottom:0,marginRight:0}}:{}),OI=k.a(({theme:e})=>({display:"inline-block",transition:"all 150ms ease-out",textDecoration:"none",color:e.color.secondary,"&:hover, &:focus":{cursor:"pointer",color:Yn(.07,e.color.secondary),"svg path:not([fill])":{fill:Yn(.07,e.color.secondary)}},"&:active":{color:Yn(.1,e.color.secondary),"svg path:not([fill])":{fill:Yn(.1,e.color.secondary)}},svg:{display:"inline-block",height:"1em",width:"1em",verticalAlign:"text-top",position:"relative",bottom:"-0.125em",marginRight:"0.4em","& path":{fill:e.color.secondary}}}),({theme:e,secondary:t,tertiary:r})=>{let n;return t&&(n=[e.textMutedColor,e.color.dark,e.color.darker]),r&&(n=[e.color.dark,e.color.darkest,e.textMutedColor]),n?{color:n[0],"svg path:not([fill])":{fill:n[0]},"&:hover":{color:n[1],"svg path:not([fill])":{fill:n[1]}},"&:active":{color:n[2],"svg path:not([fill])":{fill:n[2]}}}:{}},({nochrome:e})=>e?{color:"inherit","&:hover, &:active":{color:"inherit",textDecoration:"underline"}}:{},({theme:e,inverse:t})=>t?{color:e.color.lightest,":not([fill])":{fill:e.color.lightest},"&:hover":{color:e.color.lighter,"svg path:not([fill])":{fill:e.color.lighter}},"&:active":{color:e.color.light,"svg path:not([fill])":{fill:e.color.light}}}:{},({isButton:e})=>e?{border:0,borderRadius:0,background:"none",padding:0,fontSize:"inherit"}:{}),oa=u(({cancel:e=!0,children:t,onClick:r=void 0,withArrow:n=!1,containsIcon:a=!1,className:o=void 0,style:i=void 0,...s})=>y.createElement(OI,{...s,onClick:r&&e?c=>LI(c,r):r,className:o},y.createElement(MI,{withArrow:n,containsIcon:a},t,n&&y.createElement(pE,null))),"Link");k.div(({theme:e})=>({fontSize:`${e.typography.size.s2}px`,lineHeight:"1.6",h1:{fontSize:`${e.typography.size.l1}px`,fontWeight:e.typography.weight.bold},h2:{fontSize:`${e.typography.size.m2}px`,borderBottom:`1px solid ${e.appBorderColor}`},h3:{fontSize:`${e.typography.size.m1}px`},h4:{fontSize:`${e.typography.size.s3}px`},h5:{fontSize:`${e.typography.size.s2}px`},h6:{fontSize:`${e.typography.size.s2}px`,color:e.color.dark},"pre:not(.prismjs)":{background:"transparent",border:"none",borderRadius:0,padding:0,margin:0},"pre pre, pre.prismjs":{padding:15,margin:0,whiteSpace:"pre-wrap",color:"inherit",fontSize:"13px",lineHeight:"19px"},"pre pre code, pre.prismjs code":{color:"inherit",fontSize:"inherit"},"pre code":{margin:0,padding:0,whiteSpace:"pre",border:"none",background:"transparent"},"pre code, pre tt":{backgroundColor:"transparent",border:"none"},"body > *:first-of-type":{marginTop:"0 !important"},"body > *:last-child":{marginBottom:"0 !important"},a:{color:e.color.secondary,textDecoration:"none"},"a.absent":{color:"#cc0000"},"a.anchor":{display:"block",paddingLeft:30,marginLeft:-30,cursor:"pointer",position:"absolute",top:0,left:0,bottom:0},"h1, h2, h3, h4, h5, h6":{margin:"20px 0 10px",padding:0,cursor:"text",position:"relative","&:first-of-type":{marginTop:0,paddingTop:0},"&:hover a.anchor":{textDecoration:"none"},"& tt, & code":{fontSize:"inherit"}},"h1:first-of-type + h2":{marginTop:0,paddingTop:0},"p, blockquote, ul, ol, dl, li, table, pre":{margin:"15px 0"},hr:{border:"0 none",borderTop:`1px solid ${e.appBorderColor}`,height:4,padding:0},"body > h1:first-of-type, body > h2:first-of-type, body > h3:first-of-type, body > h4:first-of-type, body > h5:first-of-type, body > h6:first-of-type":{marginTop:0,paddingTop:0},"body > h1:first-of-type + h2":{marginTop:0,paddingTop:0},"a:first-of-type h1, a:first-of-type h2, a:first-of-type h3, a:first-of-type h4, a:first-of-type h5, a:first-of-type h6":{marginTop:0,paddingTop:0},"h1 p, h2 p, h3 p, h4 p, h5 p, h6 p":{marginTop:0},"li p.first":{display:"inline-block"},"ul, ol":{paddingLeft:30,"& :first-of-type":{marginTop:0},"& :last-child":{marginBottom:0}},dl:{padding:0},"dl dt":{fontSize:"14px",fontWeight:"bold",fontStyle:"italic",margin:"0 0 15px",padding:"0 15px","&:first-of-type":{padding:0},"& > :first-of-type":{marginTop:0},"& > :last-child":{marginBottom:0}},blockquote:{borderLeft:`4px solid ${e.color.medium}`,padding:"0 15px",color:e.color.dark,"& > :first-of-type":{marginTop:0},"& > :last-child":{marginBottom:0}},table:{padding:0,borderCollapse:"collapse","& tr":{borderTop:`1px solid ${e.appBorderColor}`,backgroundColor:"white",margin:0,padding:0,"& th":{fontWeight:"bold",border:`1px solid ${e.appBorderColor}`,textAlign:"left",margin:0,padding:"6px 13px"},"& td":{border:`1px solid ${e.appBorderColor}`,textAlign:"left",margin:0,padding:"6px 13px"},"&:nth-of-type(2n)":{backgroundColor:e.color.lighter},"& th :first-of-type, & td :first-of-type":{marginTop:0},"& th :last-child, & td :last-child":{marginBottom:0}}},img:{maxWidth:"100%"},"span.frame":{display:"block",overflow:"hidden","& > span":{border:`1px solid ${e.color.medium}`,display:"block",float:"left",overflow:"hidden",margin:"13px 0 0",padding:7,width:"auto"},"& span img":{display:"block",float:"left"},"& span span":{clear:"both",color:e.color.darkest,display:"block",padding:"5px 0 0"}},"span.align-center":{display:"block",overflow:"hidden",clear:"both","& > span":{display:"block",overflow:"hidden",margin:"13px auto 0",textAlign:"center"},"& span img":{margin:"0 auto",textAlign:"center"}},"span.align-right":{display:"block",overflow:"hidden",clear:"both","& > span":{display:"block",overflow:"hidden",margin:"13px 0 0",textAlign:"right"},"& span img":{margin:0,textAlign:"right"}},"span.float-left":{display:"block",marginRight:13,overflow:"hidden",float:"left","& span":{margin:"13px 0 0"}},"span.float-right":{display:"block",marginLeft:13,overflow:"hidden",float:"right","& > span":{display:"block",overflow:"hidden",margin:"13px auto 0",textAlign:"right"}},"code, tt":{margin:"0 2px",padding:"0 5px",whiteSpace:"nowrap",border:`1px solid ${e.color.mediumlight}`,backgroundColor:e.color.lighter,borderRadius:3,color:e.base==="dark"?e.color.darkest:e.color.dark}}));var cn=[],Da=null,PI=l.lazy(async()=>{let{SyntaxHighlighter:e}=await Promise.resolve().then(()=>(Ts(),Bp));return cn.length>0&&(cn.forEach(t=>{e.registerLanguage(...t)}),cn=[]),Da===null&&(Da=e),{default:u(t=>y.createElement(e,{...t}),"default")}}),NI=l.lazy(async()=>{let[{SyntaxHighlighter:e},{formatter:t}]=await Promise.all([Promise.resolve().then(()=>(Ts(),Bp)),Promise.resolve().then(()=>(rA(),_D))]);return cn.length>0&&(cn.forEach(r=>{e.registerLanguage(...r)}),cn=[]),Da===null&&(Da=e),{default:u(r=>y.createElement(e,{...r,formatter:t}),"default")}}),lu=u(e=>y.createElement(l.Suspense,{fallback:y.createElement("div",null)},e.format!==!1?y.createElement(NI,{...e}):y.createElement(PI,{...e})),"SyntaxHighlighter");lu.registerLanguage=(...e)=>{if(Da!==null){Da.registerLanguage(...e);return}cn.push(e)};Ts();Zy();var fE={};Aa(fE,{Close:()=>k8,Content:()=>S8,Description:()=>A8,Dialog:()=>Qf,DialogClose:()=>sh,DialogContent:()=>ah,DialogDescription:()=>lh,DialogOverlay:()=>nh,DialogPortal:()=>rh,DialogTitle:()=>ih,DialogTrigger:()=>eh,Overlay:()=>x8,Portal:()=>C8,Root:()=>E8,Title:()=>F8,Trigger:()=>Nz,WarningProvider:()=>Lz,createDialogScope:()=>kz});function ir(e,t,{checkForDefaultPrevented:r=!0}={}){return u(function(n){if(e==null||e(n),r===!1||!n.defaultPrevented)return t==null?void 0:t(n)},"handleEvent")}u(ir,"composeEventHandlers");function F1(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}u(F1,"setRef");function su(...e){return t=>{let r=!1,n=e.map(a=>{let o=F1(a,t);return!r&&typeof o=="function"&&(r=!0),o});if(r)return()=>{for(let a=0;a{let{children:i,...s}=o,c=l.useMemo(()=>s,Object.values(s));return O.jsx(r.Provider,{value:c,children:i})},"Provider");n.displayName=e+"Provider";function a(o){let i=l.useContext(r);if(i)return i;if(t!==void 0)return t;throw new Error(`\`${o}\` must be used within \`${e}\``)}return u(a,"useContext2"),[n,a]}u(hE,"createContext2");function mE(e,t=[]){let r=[];function n(o,i){let s=l.createContext(i),c=r.length;r=[...r,i];let d=u(h=>{var C;let{scope:p,children:m,...g}=h,v=((C=p==null?void 0:p[e])==null?void 0:C[c])||s,b=l.useMemo(()=>g,Object.values(g));return O.jsx(v.Provider,{value:b,children:m})},"Provider");d.displayName=o+"Provider";function f(h,p){var v;let m=((v=p==null?void 0:p[e])==null?void 0:v[c])||s,g=l.useContext(m);if(g)return g;if(i!==void 0)return i;throw new Error(`\`${h}\` must be used within \`${o}\``)}return u(f,"useContext2"),[d,f]}u(n,"createContext3");let a=u(()=>{let o=r.map(i=>l.createContext(i));return u(function(i){let s=(i==null?void 0:i[e])||o;return l.useMemo(()=>({[`__scope${e}`]:{...i,[e]:s}}),[i,s])},"useScope")},"createScope");return a.scopeName=e,[n,gE(a,...t)]}u(mE,"createContextScope");function gE(...e){let t=e[0];if(e.length===1)return t;let r=u(()=>{let n=e.map(a=>({useScope:a(),scopeName:a.scopeName}));return u(function(a){let o=n.reduce((i,{useScope:s,scopeName:c})=>{let d=s(a)[`__scope${c}`];return{...i,...d}},{});return l.useMemo(()=>({[`__scope${t.scopeName}`]:o}),[o])},"useComposedScopes")},"createScope");return r.scopeName=t.scopeName,r}u(gE,"composeContextScopes");var Go=globalThis!=null&&globalThis.document?l.useLayoutEffect:()=>{},$I=r3[" useId ".trim().toString()]||(()=>{}),HI=0;function bl(e){let[t,r]=l.useState($I());return Go(()=>{e||r(n=>n??String(HI++))},[e]),e||(t?`radix-${t}`:"")}u(bl,"useId");var jI=r3[" useInsertionEffect ".trim().toString()]||Go;function vE({prop:e,defaultProp:t,onChange:r=u(()=>{},"onChange"),caller:n}){let[a,o,i]=yE({defaultProp:t,onChange:r}),s=e!==void 0,c=s?e:a;{let f=l.useRef(e!==void 0);l.useEffect(()=>{let h=f.current;h!==s&&console.warn(`${n} is changing from ${h?"controlled":"uncontrolled"} to ${s?"controlled":"uncontrolled"}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`),f.current=s},[s,n])}let d=l.useCallback(f=>{var h;if(s){let p=bE(f)?f(e):f;p!==e&&((h=i.current)==null||h.call(i,p))}else o(f)},[s,e,o,i]);return[c,d]}u(vE,"useControllableState");function yE({defaultProp:e,onChange:t}){let[r,n]=l.useState(e),a=l.useRef(r),o=l.useRef(t);return jI(()=>{o.current=t},[t]),l.useEffect(()=>{var i;a.current!==r&&((i=o.current)==null||i.call(o,r),a.current=r)},[r,a]),[r,n,o]}u(yE,"useUncontrolledState");function bE(e){return typeof e=="function"}u(bE,"isFunction");function wE(e){let t=DE(e),r=l.forwardRef((n,a)=>{let{children:o,...i}=n,s=l.Children.toArray(o),c=s.find(EE);if(c){let d=c.props.children,f=s.map(h=>h===c?l.Children.count(d)>1?l.Children.only(null):l.isValidElement(d)?d.props.children:null:h);return O.jsx(t,{...i,ref:a,children:l.isValidElement(d)?l.cloneElement(d,void 0,f):null})}return O.jsx(t,{...i,ref:a,children:o})});return r.displayName=`${e}.Slot`,r}u(wE,"createSlot");function DE(e){let t=l.forwardRef((r,n)=>{let{children:a,...o}=r;if(l.isValidElement(a)){let i=xE(a),s=CE(o,a.props);return a.type!==l.Fragment&&(s.ref=n?su(n,i):i),l.cloneElement(a,s)}return l.Children.count(a)>1?l.Children.only(null):null});return t.displayName=`${e}.SlotClone`,t}u(DE,"createSlotClone");var VI=Symbol("radix.slottable");function EE(e){return l.isValidElement(e)&&typeof e.type=="function"&&"__radixId"in e.type&&e.type.__radixId===VI}u(EE,"isSlottable");function CE(e,t){let r={...t};for(let n in t){let a=e[n],o=t[n];/^on[A-Z]/.test(n)?a&&o?r[n]=(...i)=>{o(...i),a(...i)}:a&&(r[n]=a):n==="style"?r[n]={...a,...o}:n==="className"&&(r[n]=[a,o].filter(Boolean).join(" "))}return{...e,...r}}u(CE,"mergeProps");function xE(e){var n,a;let t=(n=Object.getOwnPropertyDescriptor(e.props,"ref"))==null?void 0:n.get,r=t&&"isReactWarning"in t&&t.isReactWarning;return r?e.ref:(t=(a=Object.getOwnPropertyDescriptor(e,"ref"))==null?void 0:a.get,r=t&&"isReactWarning"in t&&t.isReactWarning,r?e.props.ref:e.props.ref||e.ref)}u(xE,"getElementRef");var UI=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],dr=UI.reduce((e,t)=>{let r=wE(`Primitive.${t}`),n=l.forwardRef((a,o)=>{let{asChild:i,...s}=a,c=i?r:t;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),O.jsx(c,{...s,ref:o})});return n.displayName=`Primitive.${t}`,{...e,[t]:n}},{});function SE(e,t){e&&Fs.flushSync(()=>e.dispatchEvent(t))}u(SE,"dispatchDiscreteCustomEvent");function Ea(e){let t=l.useRef(e);return l.useEffect(()=>{t.current=e}),l.useMemo(()=>(...r)=>{var n;return(n=t.current)==null?void 0:n.call(t,...r)},[])}u(Ea,"useCallbackRef");function FE(e,t=globalThis==null?void 0:globalThis.document){let r=Ea(e);l.useEffect(()=>{let n=u(a=>{a.key==="Escape"&&r(a)},"handleKeyDown");return t.addEventListener("keydown",n,{capture:!0}),()=>t.removeEventListener("keydown",n,{capture:!0})},[r,t])}u(FE,"useEscapeKeydown");var qI="DismissableLayer",A1="dismissableLayer.update",WI="dismissableLayer.pointerDownOutside",GI="dismissableLayer.focusOutside",c4,AE=l.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),kE=l.forwardRef((e,t)=>{let{disableOutsidePointerEvents:r=!1,onEscapeKeyDown:n,onPointerDownOutside:a,onFocusOutside:o,onInteractOutside:i,onDismiss:s,...c}=e,d=l.useContext(AE),[f,h]=l.useState(null),p=(f==null?void 0:f.ownerDocument)??(globalThis==null?void 0:globalThis.document),[,m]=l.useState({}),g=Mr(t,F=>h(F)),v=Array.from(d.layers),[b]=[...d.layersWithOutsidePointerEventsDisabled].slice(-1),C=v.indexOf(b),E=f?v.indexOf(f):-1,D=d.layersWithOutsidePointerEventsDisabled.size>0,w=E>=C,x=_E(F=>{let A=F.target,_=[...d.branches].some(R=>R.contains(A));!w||_||(a==null||a(F),i==null||i(F),F.defaultPrevented||(s==null||s()))},p),S=BE(F=>{let A=F.target;[...d.branches].some(_=>_.contains(A))||(o==null||o(F),i==null||i(F),F.defaultPrevented||(s==null||s()))},p);return FE(F=>{E===d.layers.size-1&&(n==null||n(F),!F.defaultPrevented&&s&&(F.preventDefault(),s()))},p),l.useEffect(()=>{if(f)return r&&(d.layersWithOutsidePointerEventsDisabled.size===0&&(c4=p.body.style.pointerEvents,p.body.style.pointerEvents="none"),d.layersWithOutsidePointerEventsDisabled.add(f)),d.layers.add(f),k1(),()=>{r&&d.layersWithOutsidePointerEventsDisabled.size===1&&(p.body.style.pointerEvents=c4)}},[f,p,r,d]),l.useEffect(()=>()=>{f&&(d.layers.delete(f),d.layersWithOutsidePointerEventsDisabled.delete(f),k1())},[f,d]),l.useEffect(()=>{let F=u(()=>m({}),"handleUpdate");return document.addEventListener(A1,F),()=>document.removeEventListener(A1,F)},[]),O.jsx(dr.div,{...c,ref:g,style:{pointerEvents:D?w?"auto":"none":void 0,...e.style},onFocusCapture:ir(e.onFocusCapture,S.onFocusCapture),onBlurCapture:ir(e.onBlurCapture,S.onBlurCapture),onPointerDownCapture:ir(e.onPointerDownCapture,x.onPointerDownCapture)})});kE.displayName=qI;var KI="DismissableLayerBranch",YI=l.forwardRef((e,t)=>{let r=l.useContext(AE),n=l.useRef(null),a=Mr(t,n);return l.useEffect(()=>{let o=n.current;if(o)return r.branches.add(o),()=>{r.branches.delete(o)}},[r.branches]),O.jsx(dr.div,{...e,ref:a})});YI.displayName=KI;function _E(e,t=globalThis==null?void 0:globalThis.document){let r=Ea(e),n=l.useRef(!1),a=l.useRef(()=>{});return l.useEffect(()=>{let o=u(s=>{if(s.target&&!n.current){let c=u(function(){Zf(WI,r,d,{discrete:!0})},"handleAndDispatchPointerDownOutsideEvent2"),d={originalEvent:s};s.pointerType==="touch"?(t.removeEventListener("click",a.current),a.current=c,t.addEventListener("click",a.current,{once:!0})):c()}else t.removeEventListener("click",a.current);n.current=!1},"handlePointerDown"),i=window.setTimeout(()=>{t.addEventListener("pointerdown",o)},0);return()=>{window.clearTimeout(i),t.removeEventListener("pointerdown",o),t.removeEventListener("click",a.current)}},[t,r]),{onPointerDownCapture:u(()=>n.current=!0,"onPointerDownCapture")}}u(_E,"usePointerDownOutside");function BE(e,t=globalThis==null?void 0:globalThis.document){let r=Ea(e),n=l.useRef(!1);return l.useEffect(()=>{let a=u(o=>{o.target&&!n.current&&Zf(GI,r,{originalEvent:o},{discrete:!1})},"handleFocus");return t.addEventListener("focusin",a),()=>t.removeEventListener("focusin",a)},[t,r]),{onFocusCapture:u(()=>n.current=!0,"onFocusCapture"),onBlurCapture:u(()=>n.current=!1,"onBlurCapture")}}u(BE,"useFocusOutside");function k1(){let e=new CustomEvent(A1);document.dispatchEvent(e)}u(k1,"dispatchUpdate");function Zf(e,t,r,{discrete:n}){let a=r.originalEvent.target,o=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:r});t&&a.addEventListener(e,t,{once:!0}),n?SE(a,o):a.dispatchEvent(o)}u(Zf,"handleAndDispatchCustomEvent");var R0="focusScope.autoFocusOnMount",I0="focusScope.autoFocusOnUnmount",d4={bubbles:!1,cancelable:!0},ZI="FocusScope",RE=l.forwardRef((e,t)=>{let{loop:r=!1,trapped:n=!1,onMountAutoFocus:a,onUnmountAutoFocus:o,...i}=e,[s,c]=l.useState(null),d=Ea(a),f=Ea(o),h=l.useRef(null),p=Mr(t,v=>c(v)),m=l.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;l.useEffect(()=>{if(n){let v=u(function(D){if(m.paused||!s)return;let w=D.target;s.contains(w)?h.current=w:nr(h.current,{select:!0})},"handleFocusIn2"),b=u(function(D){if(m.paused||!s)return;let w=D.relatedTarget;w!==null&&(s.contains(w)||nr(h.current,{select:!0}))},"handleFocusOut2"),C=u(function(D){if(document.activeElement===document.body)for(let w of D)w.removedNodes.length>0&&nr(s)},"handleMutations2");document.addEventListener("focusin",v),document.addEventListener("focusout",b);let E=new MutationObserver(C);return s&&E.observe(s,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",v),document.removeEventListener("focusout",b),E.disconnect()}}},[n,s,m.paused]),l.useEffect(()=>{if(s){p4.add(m);let v=document.activeElement;if(!s.contains(v)){let b=new CustomEvent(R0,d4);s.addEventListener(R0,d),s.dispatchEvent(b),b.defaultPrevented||(IE(OE(Jf(s)),{select:!0}),document.activeElement===v&&nr(s))}return()=>{s.removeEventListener(R0,d),setTimeout(()=>{let b=new CustomEvent(I0,d4);s.addEventListener(I0,f),s.dispatchEvent(b),b.defaultPrevented||nr(v??document.body,{select:!0}),s.removeEventListener(I0,f),p4.remove(m)},0)}}},[s,d,f,m]);let g=l.useCallback(v=>{if(!r&&!n||m.paused)return;let b=v.key==="Tab"&&!v.altKey&&!v.ctrlKey&&!v.metaKey,C=document.activeElement;if(b&&C){let E=v.currentTarget,[D,w]=zE(E);D&&w?!v.shiftKey&&C===w?(v.preventDefault(),r&&nr(D,{select:!0})):v.shiftKey&&C===D&&(v.preventDefault(),r&&nr(w,{select:!0})):C===E&&v.preventDefault()}},[r,n,m.paused]);return O.jsx(dr.div,{tabIndex:-1,...i,ref:p,onKeyDown:g})});RE.displayName=ZI;function IE(e,{select:t=!1}={}){let r=document.activeElement;for(let n of e)if(nr(n,{select:t}),document.activeElement!==r)return}u(IE,"focusFirst");function zE(e){let t=Jf(e),r=_1(t,e),n=_1(t.reverse(),e);return[r,n]}u(zE,"getTabbableEdges");function Jf(e){let t=[],r=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:u(n=>{let a=n.tagName==="INPUT"&&n.type==="hidden";return n.disabled||n.hidden||a?NodeFilter.FILTER_SKIP:n.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP},"acceptNode")});for(;r.nextNode();)t.push(r.currentNode);return t}u(Jf,"getTabbableCandidates");function _1(e,t){for(let r of e)if(!TE(r,{upTo:t}))return r}u(_1,"findVisible");function TE(e,{upTo:t}){if(getComputedStyle(e).visibility==="hidden")return!0;for(;e;){if(t!==void 0&&e===t)return!1;if(getComputedStyle(e).display==="none")return!0;e=e.parentElement}return!1}u(TE,"isHidden");function LE(e){return e instanceof HTMLInputElement&&"select"in e}u(LE,"isSelectableInput");function nr(e,{select:t=!1}={}){if(e&&e.focus){let r=document.activeElement;e.focus({preventScroll:!0}),e!==r&&LE(e)&&t&&e.select()}}u(nr,"focus");var p4=ME();function ME(){let e=[];return{add(t){let r=e[0];t!==r&&(r==null||r.pause()),e=B1(e,t),e.unshift(t)},remove(t){var r;e=B1(e,t),(r=e[0])==null||r.resume()}}}u(ME,"createFocusScopesStack");function B1(e,t){let r=[...e],n=r.indexOf(t);return n!==-1&&r.splice(n,1),r}u(B1,"arrayRemove");function OE(e){return e.filter(t=>t.tagName!=="A")}u(OE,"removeLinks");var JI="Portal",PE=l.forwardRef((e,t)=>{var s;let{container:r,...n}=e,[a,o]=l.useState(!1);Go(()=>o(!0),[]);let i=r||a&&((s=globalThis==null?void 0:globalThis.document)==null?void 0:s.body);return i?ty.createPortal(O.jsx(dr.div,{...n,ref:t}),i):null});PE.displayName=JI;function NE(e,t){return l.useReducer((r,n)=>t[r][n]??r,e)}u(NE,"useStateMachine");var uu=u(e=>{let{present:t,children:r}=e,n=$E(t),a=typeof r=="function"?r({present:n.isPresent}):l.Children.only(r),o=Mr(n.ref,HE(a));return typeof r=="function"||n.isPresent?l.cloneElement(a,{ref:o}):null},"Presence");uu.displayName="Presence";function $E(e){let[t,r]=l.useState(),n=l.useRef(null),a=l.useRef(e),o=l.useRef("none"),i=e?"mounted":"unmounted",[s,c]=NE(i,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return l.useEffect(()=>{let d=Co(n.current);o.current=s==="mounted"?d:"none"},[s]),Go(()=>{let d=n.current,f=a.current;if(f!==e){let h=o.current,p=Co(d);e?c("MOUNT"):p==="none"||(d==null?void 0:d.display)==="none"?c("UNMOUNT"):c(f&&h!==p?"ANIMATION_OUT":"UNMOUNT"),a.current=e}},[e,c]),Go(()=>{if(t){let d,f=t.ownerDocument.defaultView??window,h=u(m=>{let g=Co(n.current).includes(m.animationName);if(m.target===t&&g&&(c("ANIMATION_END"),!a.current)){let v=t.style.animationFillMode;t.style.animationFillMode="forwards",d=f.setTimeout(()=>{t.style.animationFillMode==="forwards"&&(t.style.animationFillMode=v)})}},"handleAnimationEnd"),p=u(m=>{m.target===t&&(o.current=Co(n.current))},"handleAnimationStart");return t.addEventListener("animationstart",p),t.addEventListener("animationcancel",h),t.addEventListener("animationend",h),()=>{f.clearTimeout(d),t.removeEventListener("animationstart",p),t.removeEventListener("animationcancel",h),t.removeEventListener("animationend",h)}}else c("ANIMATION_END")},[t,c]),{isPresent:["mounted","unmountSuspended"].includes(s),ref:l.useCallback(d=>{n.current=d?getComputedStyle(d):null,r(d)},[])}}u($E,"usePresence");function Co(e){return(e==null?void 0:e.animationName)||"none"}u(Co,"getAnimationName");function HE(e){var n,a;let t=(n=Object.getOwnPropertyDescriptor(e.props,"ref"))==null?void 0:n.get,r=t&&"isReactWarning"in t&&t.isReactWarning;return r?e.ref:(t=(a=Object.getOwnPropertyDescriptor(e,"ref"))==null?void 0:a.get,r=t&&"isReactWarning"in t&&t.isReactWarning,r?e.props.ref:e.props.ref||e.ref)}u(HE,"getElementRef");var z0=0;function jE(){l.useEffect(()=>{let e=document.querySelectorAll("[data-radix-focus-guard]");return document.body.insertAdjacentElement("afterbegin",e[0]??R1()),document.body.insertAdjacentElement("beforeend",e[1]??R1()),z0++,()=>{z0===1&&document.querySelectorAll("[data-radix-focus-guard]").forEach(t=>t.remove()),z0--}},[])}u(jE,"useFocusGuards");function R1(){let e=document.createElement("span");return e.setAttribute("data-radix-focus-guard",""),e.tabIndex=0,e.style.outline="none",e.style.opacity="0",e.style.position="fixed",e.style.pointerEvents="none",e}u(R1,"createFocusGuard");var Tt=u(function(){return Tt=Object.assign||u(function(e){for(var t,r=1,n=arguments.length;r"u")return az;var t=oz(e),r=document.documentElement.clientWidth,n=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,n-r+t[2]-t[0])}},"getGapWidth"),lz=t8(),ia="data-scroll-locked",sz=u(function(e,t,r,n){var a=e.left,o=e.top,i=e.right,s=e.gap;return r===void 0&&(r="margin"),` + .`.concat(XI,` { + overflow: hidden `).concat(n,`; + padding-right: `).concat(s,"px ").concat(n,`; + } + body[`).concat(ia,`] { + overflow: hidden `).concat(n,`; + overscroll-behavior: contain; + `).concat([t&&"position: relative ".concat(n,";"),r==="margin"&&` + padding-left: `.concat(a,`px; + padding-top: `).concat(o,`px; + padding-right: `).concat(i,`px; + margin-left:0; + margin-top:0; + margin-right: `).concat(s,"px ").concat(n,`; + `),r==="padding"&&"padding-right: ".concat(s,"px ").concat(n,";")].filter(Boolean).join(""),` + } + + .`).concat(wl,` { + right: `).concat(s,"px ").concat(n,`; + } + + .`).concat(Dl,` { + margin-right: `).concat(s,"px ").concat(n,`; + } + + .`).concat(wl," .").concat(wl,` { + right: 0 `).concat(n,`; + } + + .`).concat(Dl," .").concat(Dl,` { + margin-right: 0 `).concat(n,`; + } + + body[`).concat(ia,`] { + `).concat(QI,": ").concat(s,`px; + } +`)},"getStyles"),h4=u(function(){var e=parseInt(document.body.getAttribute(ia)||"0",10);return isFinite(e)?e:0},"getCurrentUseCounter"),uz=u(function(){l.useEffect(function(){return document.body.setAttribute(ia,(h4()+1).toString()),function(){var e=h4()-1;e<=0?document.body.removeAttribute(ia):document.body.setAttribute(ia,e.toString())}},[])},"useLockAttribute"),cz=u(function(e){var t=e.noRelative,r=e.noImportant,n=e.gapMode,a=n===void 0?"margin":n;uz();var o=l.useMemo(function(){return iz(a)},[a]);return l.createElement(lz,{styles:sz(o,!t,a,r?"":"!important")})},"RemoveScrollBar"),I1=!1;if(typeof window<"u")try{ao=Object.defineProperty({},"passive",{get:u(function(){return I1=!0,!0},"get")}),window.addEventListener("test",ao,ao),window.removeEventListener("test",ao,ao)}catch{I1=!1}var ao,Ln=I1?{passive:!1}:!1,dz=u(function(e){return e.tagName==="TEXTAREA"},"alwaysContainsScroll"),r8=u(function(e,t){if(!(e instanceof Element))return!1;var r=window.getComputedStyle(e);return r[t]!=="hidden"&&!(r.overflowY===r.overflowX&&!dz(e)&&r[t]==="visible")},"elementCanBeScrolled"),pz=u(function(e){return r8(e,"overflowY")},"elementCouldBeVScrolled"),fz=u(function(e){return r8(e,"overflowX")},"elementCouldBeHScrolled"),m4=u(function(e,t){var r=t.ownerDocument,n=t;do{typeof ShadowRoot<"u"&&n instanceof ShadowRoot&&(n=n.host);var a=n8(e,n);if(a){var o=a8(e,n),i=o[1],s=o[2];if(i>s)return!0}n=n.parentNode}while(n&&n!==r.body);return!1},"locationCouldBeScrolled"),hz=u(function(e){var t=e.scrollTop,r=e.scrollHeight,n=e.clientHeight;return[t,r,n]},"getVScrollVariables"),mz=u(function(e){var t=e.scrollLeft,r=e.scrollWidth,n=e.clientWidth;return[t,r,n]},"getHScrollVariables"),n8=u(function(e,t){return e==="v"?pz(t):fz(t)},"elementCouldBeScrolled"),a8=u(function(e,t){return e==="v"?hz(t):mz(t)},"getScrollVariables"),gz=u(function(e,t){return e==="h"&&t==="rtl"?-1:1},"getDirectionFactor"),vz=u(function(e,t,r,n,a){var o=gz(e,window.getComputedStyle(t).direction),i=o*n,s=r.target,c=t.contains(s),d=!1,f=i>0,h=0,p=0;do{var m=a8(e,s),g=m[0],v=m[1],b=m[2],C=v-b-o*g;(g||C)&&n8(e,s)&&(h+=C,p+=g),s instanceof ShadowRoot?s=s.host:s=s.parentNode}while(!c&&s!==document.body||c&&(t.contains(s)||t===s));return(f&&(a&&Math.abs(h)<1||!a&&i>h)||!f&&(a&&Math.abs(p)<1||!a&&-i>p))&&(d=!0),d},"handleScroll"),Ki=u(function(e){return"changedTouches"in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},"getTouchXY"),g4=u(function(e){return[e.deltaX,e.deltaY]},"getDeltaXY"),v4=u(function(e){return e&&"current"in e?e.current:e},"extractRef"),yz=u(function(e,t){return e[0]===t[0]&&e[1]===t[1]},"deltaCompare"),bz=u(function(e){return` + .block-interactivity-`.concat(e,` {pointer-events: none;} + .allow-interactivity-`).concat(e,` {pointer-events: all;} +`)},"generateStyle"),wz=0,Mn=[];function o8(e){var t=l.useRef([]),r=l.useRef([0,0]),n=l.useRef(),a=l.useState(wz++)[0],o=l.useState(t8)[0],i=l.useRef(e);l.useEffect(function(){i.current=e},[e]),l.useEffect(function(){if(e.inert){document.body.classList.add("block-interactivity-".concat(a));var v=VE([e.lockRef.current],(e.shards||[]).map(v4),!0).filter(Boolean);return v.forEach(function(b){return b.classList.add("allow-interactivity-".concat(a))}),function(){document.body.classList.remove("block-interactivity-".concat(a)),v.forEach(function(b){return b.classList.remove("allow-interactivity-".concat(a))})}}},[e.inert,e.lockRef.current,e.shards]);var s=l.useCallback(function(v,b){if("touches"in v&&v.touches.length===2||v.type==="wheel"&&v.ctrlKey)return!i.current.allowPinchZoom;var C=Ki(v),E=r.current,D="deltaX"in v?v.deltaX:E[0]-C[0],w="deltaY"in v?v.deltaY:E[1]-C[1],x,S=v.target,F=Math.abs(D)>Math.abs(w)?"h":"v";if("touches"in v&&F==="h"&&S.type==="range")return!1;var A=m4(F,S);if(!A)return!0;if(A?x=F:(x=F==="v"?"h":"v",A=m4(F,S)),!A)return!1;if(!n.current&&"changedTouches"in v&&(D||w)&&(n.current=x),!x)return!0;var _=n.current||x;return vz(_,b,v,_==="h"?D:w,!0)},[]),c=l.useCallback(function(v){var b=v;if(!(!Mn.length||Mn[Mn.length-1]!==o)){var C="deltaY"in b?g4(b):Ki(b),E=t.current.filter(function(x){return x.name===b.type&&(x.target===b.target||b.target===x.shadowParent)&&yz(x.delta,C)})[0];if(E&&E.should){b.cancelable&&b.preventDefault();return}if(!E){var D=(i.current.shards||[]).map(v4).filter(Boolean).filter(function(x){return x.contains(b.target)}),w=D.length>0?s(b,D[0]):!i.current.noIsolation;w&&b.cancelable&&b.preventDefault()}}},[]),d=l.useCallback(function(v,b,C,E){var D={name:v,delta:b,target:C,should:E,shadowParent:i8(C)};t.current.push(D),setTimeout(function(){t.current=t.current.filter(function(w){return w!==D})},1)},[]),f=l.useCallback(function(v){r.current=Ki(v),n.current=void 0},[]),h=l.useCallback(function(v){d(v.type,g4(v),v.target,s(v,e.lockRef.current))},[]),p=l.useCallback(function(v){d(v.type,Ki(v),v.target,s(v,e.lockRef.current))},[]);l.useEffect(function(){return Mn.push(o),e.setCallbacks({onScrollCapture:h,onWheelCapture:h,onTouchMoveCapture:p}),document.addEventListener("wheel",c,Ln),document.addEventListener("touchmove",c,Ln),document.addEventListener("touchstart",f,Ln),function(){Mn=Mn.filter(function(v){return v!==o}),document.removeEventListener("wheel",c,Ln),document.removeEventListener("touchmove",c,Ln),document.removeEventListener("touchstart",f,Ln)}},[]);var m=e.removeScrollBar,g=e.inert;return l.createElement(l.Fragment,null,g?l.createElement(o,{styles:bz(a)}):null,m?l.createElement(cz,{gapMode:e.gapMode}):null)}u(o8,"RemoveScrollSideCar");function i8(e){for(var t=null;e!==null;)e instanceof ShadowRoot&&(t=e.host,e=e.host),e=e.parentNode;return t}u(i8,"getOutermostShadowParent");var Dz=ZE(JE,o8),l8=l.forwardRef(function(e,t){return l.createElement(cu,Tt({},e,{ref:t,sideCar:Dz}))});l8.classNames=cu.classNames;var Ez=l8,Cz=u(function(e){if(typeof document>"u")return null;var t=Array.isArray(e)?e[0]:e;return t.ownerDocument.body},"getDefaultParent"),On=new WeakMap,Yi=new WeakMap,Zi={},M0=0,s8=u(function(e){return e&&(e.host||s8(e.parentNode))},"unwrapHost"),xz=u(function(e,t){return t.map(function(r){if(e.contains(r))return r;var n=s8(r);return n&&e.contains(n)?n:(console.error("aria-hidden",r,"in not contained inside",e,". Doing nothing"),null)}).filter(function(r){return!!r})},"correctTargets"),Sz=u(function(e,t,r,n){var a=xz(t,Array.isArray(e)?e:[e]);Zi[r]||(Zi[r]=new WeakMap);var o=Zi[r],i=[],s=new Set,c=new Set(a),d=u(function(h){!h||s.has(h)||(s.add(h),d(h.parentNode))},"keep");a.forEach(d);var f=u(function(h){!h||c.has(h)||Array.prototype.forEach.call(h.children,function(p){if(s.has(p))f(p);else try{var m=p.getAttribute(n),g=m!==null&&m!=="false",v=(On.get(p)||0)+1,b=(o.get(p)||0)+1;On.set(p,v),o.set(p,b),i.push(p),v===1&&g&&Yi.set(p,!0),b===1&&p.setAttribute(r,"true"),g||p.setAttribute(n,"true")}catch(C){console.error("aria-hidden: cannot operate on ",p,C)}})},"deep");return f(t),s.clear(),M0++,function(){i.forEach(function(h){var p=On.get(h)-1,m=o.get(h)-1;On.set(h,p),o.set(h,m),p||(Yi.has(h)||h.removeAttribute(n),Yi.delete(h)),m||h.removeAttribute(r)}),M0--,M0||(On=new WeakMap,On=new WeakMap,Yi=new WeakMap,Zi={})}},"applyAttributeToOthers"),Fz=u(function(e,t,r){r===void 0&&(r="data-aria-hidden");var n=Array.from(Array.isArray(e)?e:[e]),a=t||Cz(e);return a?(n.push.apply(n,Array.from(a.querySelectorAll("[aria-live]"))),Sz(n,a,r,"aria-hidden")):function(){return null}},"hideOthers");function u8(e){let t=c8(e),r=l.forwardRef((n,a)=>{let{children:o,...i}=n,s=l.Children.toArray(o),c=s.find(d8);if(c){let d=c.props.children,f=s.map(h=>h===c?l.Children.count(d)>1?l.Children.only(null):l.isValidElement(d)?d.props.children:null:h);return O.jsx(t,{...i,ref:a,children:l.isValidElement(d)?l.cloneElement(d,void 0,f):null})}return O.jsx(t,{...i,ref:a,children:o})});return r.displayName=`${e}.Slot`,r}u(u8,"createSlot");function c8(e){let t=l.forwardRef((r,n)=>{let{children:a,...o}=r;if(l.isValidElement(a)){let i=f8(a),s=p8(o,a.props);return a.type!==l.Fragment&&(s.ref=n?su(n,i):i),l.cloneElement(a,s)}return l.Children.count(a)>1?l.Children.only(null):null});return t.displayName=`${e}.SlotClone`,t}u(c8,"createSlotClone");var Az=Symbol("radix.slottable");function d8(e){return l.isValidElement(e)&&typeof e.type=="function"&&"__radixId"in e.type&&e.type.__radixId===Az}u(d8,"isSlottable");function p8(e,t){let r={...t};for(let n in t){let a=e[n],o=t[n];/^on[A-Z]/.test(n)?a&&o?r[n]=(...i)=>{o(...i),a(...i)}:a&&(r[n]=a):n==="style"?r[n]={...a,...o}:n==="className"&&(r[n]=[a,o].filter(Boolean).join(" "))}return{...e,...r}}u(p8,"mergeProps");function f8(e){var n,a;let t=(n=Object.getOwnPropertyDescriptor(e.props,"ref"))==null?void 0:n.get,r=t&&"isReactWarning"in t&&t.isReactWarning;return r?e.ref:(t=(a=Object.getOwnPropertyDescriptor(e,"ref"))==null?void 0:a.get,r=t&&"isReactWarning"in t&&t.isReactWarning,r?e.props.ref:e.props.ref||e.ref)}u(f8,"getElementRef");var du="Dialog",[h8,kz]=mE(du),[_z,Et]=h8(du),Qf=u(e=>{let{__scopeDialog:t,children:r,open:n,defaultOpen:a,onOpenChange:o,modal:i=!0}=e,s=l.useRef(null),c=l.useRef(null),[d,f]=vE({prop:n,defaultProp:a??!1,onChange:o,caller:du});return O.jsx(_z,{scope:t,triggerRef:s,contentRef:c,contentId:bl(),titleId:bl(),descriptionId:bl(),open:d,onOpenChange:f,onOpenToggle:l.useCallback(()=>f(h=>!h),[f]),modal:i,children:r})},"Dialog");Qf.displayName=du;var m8="DialogTrigger",eh=l.forwardRef((e,t)=>{let{__scopeDialog:r,...n}=e,a=Et(m8,r),o=Mr(t,a.triggerRef);return O.jsx(dr.button,{type:"button","aria-haspopup":"dialog","aria-expanded":a.open,"aria-controls":a.contentId,"data-state":pu(a.open),...n,ref:o,onClick:ir(e.onClick,a.onOpenToggle)})});eh.displayName=m8;var th="DialogPortal",[Bz,g8]=h8(th,{forceMount:void 0}),rh=u(e=>{let{__scopeDialog:t,forceMount:r,children:n,container:a}=e,o=Et(th,t);return O.jsx(Bz,{scope:t,forceMount:r,children:l.Children.map(n,i=>O.jsx(uu,{present:r||o.open,children:O.jsx(PE,{asChild:!0,container:a,children:i})}))})},"DialogPortal");rh.displayName=th;var ms="DialogOverlay",nh=l.forwardRef((e,t)=>{let r=g8(ms,e.__scopeDialog),{forceMount:n=r.forceMount,...a}=e,o=Et(ms,e.__scopeDialog);return o.modal?O.jsx(uu,{present:n||o.open,children:O.jsx(Iz,{...a,ref:t})}):null});nh.displayName=ms;var Rz=u8("DialogOverlay.RemoveScroll"),Iz=l.forwardRef((e,t)=>{let{__scopeDialog:r,...n}=e,a=Et(ms,r);return O.jsx(Ez,{as:Rz,allowPinchZoom:!0,shards:[a.contentRef],children:O.jsx(dr.div,{"data-state":pu(a.open),...n,ref:t,style:{pointerEvents:"auto",...n.style}})})}),vn="DialogContent",ah=l.forwardRef((e,t)=>{let r=g8(vn,e.__scopeDialog),{forceMount:n=r.forceMount,...a}=e,o=Et(vn,e.__scopeDialog);return O.jsx(uu,{present:n||o.open,children:o.modal?O.jsx(zz,{...a,ref:t}):O.jsx(Tz,{...a,ref:t})})});ah.displayName=vn;var zz=l.forwardRef((e,t)=>{let r=Et(vn,e.__scopeDialog),n=l.useRef(null),a=Mr(t,r.contentRef,n);return l.useEffect(()=>{let o=n.current;if(o)return Fz(o)},[]),O.jsx(v8,{...e,ref:a,trapFocus:r.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:ir(e.onCloseAutoFocus,o=>{var i;o.preventDefault(),(i=r.triggerRef.current)==null||i.focus()}),onPointerDownOutside:ir(e.onPointerDownOutside,o=>{let i=o.detail.originalEvent,s=i.button===0&&i.ctrlKey===!0;(i.button===2||s)&&o.preventDefault()}),onFocusOutside:ir(e.onFocusOutside,o=>o.preventDefault())})}),Tz=l.forwardRef((e,t)=>{let r=Et(vn,e.__scopeDialog),n=l.useRef(!1),a=l.useRef(!1);return O.jsx(v8,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:u(o=>{var i,s;(i=e.onCloseAutoFocus)==null||i.call(e,o),o.defaultPrevented||(n.current||((s=r.triggerRef.current)==null||s.focus()),o.preventDefault()),n.current=!1,a.current=!1},"onCloseAutoFocus"),onInteractOutside:u(o=>{var s,c;(s=e.onInteractOutside)==null||s.call(e,o),o.defaultPrevented||(n.current=!0,o.detail.originalEvent.type==="pointerdown"&&(a.current=!0));let i=o.target;(c=r.triggerRef.current)!=null&&c.contains(i)&&o.preventDefault(),o.detail.originalEvent.type==="focusin"&&a.current&&o.preventDefault()},"onInteractOutside")})}),v8=l.forwardRef((e,t)=>{let{__scopeDialog:r,trapFocus:n,onOpenAutoFocus:a,onCloseAutoFocus:o,...i}=e,s=Et(vn,r),c=l.useRef(null),d=Mr(t,c);return jE(),O.jsxs(O.Fragment,{children:[O.jsx(RE,{asChild:!0,loop:!0,trapped:n,onMountAutoFocus:a,onUnmountAutoFocus:o,children:O.jsx(kE,{role:"dialog",id:s.contentId,"aria-describedby":s.descriptionId,"aria-labelledby":s.titleId,"data-state":pu(s.open),...i,ref:d,onDismiss:u(()=>s.onOpenChange(!1),"onDismiss")})}),O.jsxs(O.Fragment,{children:[O.jsx(Mz,{titleId:s.titleId}),O.jsx(Pz,{contentRef:c,descriptionId:s.descriptionId})]})]})}),oh="DialogTitle",ih=l.forwardRef((e,t)=>{let{__scopeDialog:r,...n}=e,a=Et(oh,r);return O.jsx(dr.h2,{id:a.titleId,...n,ref:t})});ih.displayName=oh;var y8="DialogDescription",lh=l.forwardRef((e,t)=>{let{__scopeDialog:r,...n}=e,a=Et(y8,r);return O.jsx(dr.p,{id:a.descriptionId,...n,ref:t})});lh.displayName=y8;var b8="DialogClose",sh=l.forwardRef((e,t)=>{let{__scopeDialog:r,...n}=e,a=Et(b8,r);return O.jsx(dr.button,{type:"button",...n,ref:t,onClick:ir(e.onClick,()=>a.onOpenChange(!1))})});sh.displayName=b8;function pu(e){return e?"open":"closed"}u(pu,"getState");var w8="DialogTitleWarning",[Lz,D8]=hE(w8,{contentName:vn,titleName:oh,docsSlug:"dialog"}),Mz=u(({titleId:e})=>{let t=D8(w8),r=`\`${t.contentName}\` requires a \`${t.titleName}\` for the component to be accessible for screen reader users. + +If you want to hide the \`${t.titleName}\`, you can wrap it with our VisuallyHidden component. + +For more information, see https://radix-ui.com/primitives/docs/components/${t.docsSlug}`;return l.useEffect(()=>{e&&(document.getElementById(e)||console.error(r))},[r,e]),null},"TitleWarning"),Oz="DialogDescriptionWarning",Pz=u(({contentRef:e,descriptionId:t})=>{let r=`Warning: Missing \`Description\` or \`aria-describedby={undefined}\` for {${D8(Oz).contentName}}.`;return l.useEffect(()=>{var a;let n=(a=e.current)==null?void 0:a.getAttribute("aria-describedby");t&&n&&(document.getElementById(t)||console.warn(r))},[r,e,t]),null},"DescriptionWarning"),E8=Qf,Nz=eh,C8=rh,x8=nh,S8=ah,F8=ih,A8=lh,k8=sh,_8={};Aa(_8,{Actions:()=>Yz,CloseButton:()=>P8,Col:()=>$8,Container:()=>O8,Content:()=>qz,Description:()=>Kz,Error:()=>Zz,ErrorWrapper:()=>H8,Header:()=>Wz,Overlay:()=>M8,Row:()=>N8,Title:()=>Gz});const{deprecate:$z}=__STORYBOOK_MODULE_CLIENT_LOGGER__;function z1(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}u(z1,"setRef");function B8(...e){return t=>{let r=!1,n=e.map(a=>{let o=z1(a,t);return!r&&typeof o=="function"&&(r=!0),o});if(r)return()=>{for(let a=0;a{let{children:r,...n}=e,a=l.Children.toArray(r),o=a.find(I8);if(o){let i=o.props.children,s=a.map(c=>c===o?l.Children.count(i)>1?l.Children.only(null):l.isValidElement(i)?i.props.children:null:c);return O.jsx(T1,{...n,ref:t,children:l.isValidElement(i)?l.cloneElement(i,void 0,s):null})}return O.jsx(T1,{...n,ref:t,children:r})});R8.displayName="Slot";var T1=l.forwardRef((e,t)=>{let{children:r,...n}=e;if(l.isValidElement(r)){let a=T8(r),o=z8(n,r.props);return r.type!==l.Fragment&&(o.ref=t?B8(t,a):a),l.cloneElement(r,o)}return l.Children.count(r)>1?l.Children.only(null):null});T1.displayName="SlotClone";var Hz=u(({children:e})=>O.jsx(O.Fragment,{children:e}),"Slottable");function I8(e){return l.isValidElement(e)&&e.type===Hz}u(I8,"isSlottable");function z8(e,t){let r={...t};for(let n in t){let a=e[n],o=t[n];/^on[A-Z]/.test(n)?a&&o?r[n]=(...i)=>{o(...i),a(...i)}:a&&(r[n]=a):n==="style"?r[n]={...a,...o}:n==="className"&&(r[n]=[a,o].filter(Boolean).join(" "))}return{...e,...r}}u(z8,"mergeProps");function T8(e){var n,a;let t=(n=Object.getOwnPropertyDescriptor(e.props,"ref"))==null?void 0:n.get,r=t&&"isReactWarning"in t&&t.isReactWarning;return r?e.ref:(t=(a=Object.getOwnPropertyDescriptor(e,"ref"))==null?void 0:a.get,r=t&&"isReactWarning"in t&&t.isReactWarning,r?e.props.ref:e.props.ref||e.ref)}u(T8,"getElementRef");var Or=l.forwardRef(({asChild:e=!1,animation:t="none",size:r="small",variant:n="outline",padding:a="medium",disabled:o=!1,active:i=!1,onClick:s,...c},d)=>{let f="button";c.isLink&&(f="a"),e&&(f=R8);let h=n,p=r,[m,g]=l.useState(!1),v=u(b=>{s&&s(b),t!=="none"&&g(!0)},"handleClick");if(l.useEffect(()=>{let b=setTimeout(()=>{m&&g(!1)},1e3);return()=>clearTimeout(b)},[m]),c.primary&&(h="solid",p="medium"),(c.secondary||c.tertiary||c.gray||c.outline||c.inForm)&&(h="outline",p="medium"),c.small||c.isLink||c.primary||c.secondary||c.tertiary||c.gray||c.outline||c.inForm||c.containsIcon){let b=y.Children.toArray(c.children).filter(C=>typeof C=="string"&&C!=="");$z(`Use of deprecated props in the button ${b.length>0?`"${b.join(" ")}"`:"component"} detected, see the migration notes at https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#new-ui-and-props-for-button-and-iconbutton-components`)}return y.createElement(jz,{as:f,ref:d,variant:h,size:p,padding:a,disabled:o,active:i,animating:m,animation:t,onClick:v,...c})});Or.displayName="Button";var jz=k("button",{shouldForwardProp:u(e=>dp(e),"shouldForwardProp")})(({theme:e,variant:t,size:r,disabled:n,active:a,animating:o,animation:i="none",padding:s})=>({border:0,cursor:n?"not-allowed":"pointer",display:"inline-flex",gap:"6px",alignItems:"center",justifyContent:"center",overflow:"hidden",padding:s==="none"?0:s==="small"&&r==="small"?"0 7px":s==="small"&&r==="medium"?"0 9px":r==="small"?"0 10px":r==="medium"?"0 12px":0,height:r==="small"?"28px":"32px",position:"relative",textAlign:"center",textDecoration:"none",transitionProperty:"background, box-shadow",transitionDuration:"150ms",transitionTimingFunction:"ease-out",verticalAlign:"top",whiteSpace:"nowrap",userSelect:"none",opacity:n?.5:1,margin:0,fontSize:`${e.typography.size.s1}px`,fontWeight:e.typography.weight.bold,lineHeight:"1",background:t==="solid"?e.color.secondary:t==="outline"?e.button.background:t==="ghost"&&a?e.background.hoverable:"transparent",...t==="ghost"?{".sb-bar &":{background:a?pt(.9,e.barTextColor):"transparent",color:a?e.barSelectedColor:e.barTextColor,"&:hover":{color:e.barHoverColor,background:pt(.86,e.barHoverColor)},"&:active":{color:e.barSelectedColor,background:pt(.9,e.barSelectedColor)},"&:focus":{boxShadow:`${Wo(e.barHoverColor,1)} 0 0 0 1px inset`,outline:"none"}}}:{},color:t==="solid"?e.color.lightest:t==="outline"?e.input.color:t==="ghost"&&a?e.color.secondary:t==="ghost"?e.color.mediumdark:e.input.color,boxShadow:t==="outline"?`${e.button.border} 0 0 0 1px inset`:"none",borderRadius:e.input.borderRadius,flexShrink:0,"&:hover":{color:t==="ghost"?e.color.secondary:void 0,background:(()=>{let c=e.color.secondary;return t==="solid"&&(c=e.color.secondary),t==="outline"&&(c=e.button.background),t==="ghost"?pt(.86,e.color.secondary):e.base==="light"?Yn(.02,c):u4(.03,c)})()},"&:active":{color:t==="ghost"?e.color.secondary:void 0,background:(()=>{let c=e.color.secondary;return t==="solid"&&(c=e.color.secondary),t==="outline"&&(c=e.button.background),t==="ghost"?e.background.hoverable:e.base==="light"?Yn(.02,c):u4(.03,c)})()},"&:focus":{boxShadow:`${Wo(e.color.secondary,1)} 0 0 0 1px inset`,outline:"none"},"> svg":{animation:o&&i!=="none"?`${e.animation[i]} 1000ms ease-out`:""}})),Fr=l.forwardRef(({padding:e="small",variant:t="ghost",...r},n)=>y.createElement(Or,{padding:e,variant:t,ref:n,...r}));Fr.displayName="IconButton";var L8=wt({from:{opacity:0},to:{opacity:1}}),Vz=wt({from:{maxHeight:0},to:{}}),Uz=wt({from:{opacity:0,transform:"translate(-50%, -50%) scale(0.9)"},to:{opacity:1,transform:"translate(-50%, -50%) scale(1)"}}),M8=k.div({backdropFilter:"blur(24px)",position:"fixed",inset:0,width:"100%",height:"100%",zIndex:10,animation:`${L8} 200ms`}),O8=k.div(({theme:e,width:t,height:r})=>({backgroundColor:e.background.bar,borderRadius:6,boxShadow:"0px 4px 67px 0px #00000040",position:"fixed",top:"50%",left:"50%",transform:"translate(-50%, -50%)",width:t??740,height:r??"auto",maxWidth:"calc(100% - 40px)",maxHeight:"85vh",overflow:"hidden",zIndex:11,animation:`${Uz} 200ms`,"&:focus-visible":{outline:"none"}})),P8=u(e=>y.createElement(k8,{asChild:!0},y.createElement(Fr,{...e},y.createElement(dE,null))),"CloseButton"),qz=k.div({display:"flex",flexDirection:"column",margin:16,gap:16}),N8=k.div({display:"flex",justifyContent:"space-between",gap:16}),$8=k.div({display:"flex",flexDirection:"column",gap:4}),Wz=u(e=>y.createElement(N8,null,y.createElement($8,{...e}),y.createElement(P8,null)),"Header"),Gz=k(F8)(({theme:e})=>({margin:0,fontSize:e.typography.size.s3,fontWeight:e.typography.weight.bold})),Kz=k(A8)(({theme:e})=>({position:"relative",zIndex:1,margin:0,fontSize:e.typography.size.s2})),Yz=k.div({display:"flex",flexDirection:"row-reverse",gap:8}),H8=k.div(({theme:e})=>({maxHeight:100,overflow:"auto",animation:`${Vz} 300ms, ${L8} 300ms`,backgroundColor:e.background.critical,color:e.color.lightest,fontSize:e.typography.size.s2,"& > div":{position:"relative",padding:"8px 16px"}})),Zz=u(({children:e,...t})=>y.createElement(H8,{...t},y.createElement("div",null,e)),"Error");function j8({children:e,width:t,height:r,onEscapeKeyDown:n,onInteractOutside:a=u(c=>c.preventDefault(),"onInteractOutside"),className:o,container:i,...s}){return y.createElement(E8,{...s},y.createElement(C8,{container:i},y.createElement(x8,{asChild:!0},y.createElement(M8,null)),y.createElement(S8,{asChild:!0,onInteractOutside:a,onEscapeKeyDown:n},y.createElement(O8,{className:o,width:t,height:r},e))))}u(j8,"BaseModal");Object.assign(j8,_8,{Dialog:fE});k.div(({theme:e,col:t,row:r=1})=>t?{display:"inline-block",verticalAlign:"inherit","& > *":{marginLeft:t*e.layoutMargin,verticalAlign:"inherit"},[`& > *:first-child${ed}`]:{marginLeft:0}}:{"& > *":{marginTop:r*e.layoutMargin},[`& > *:first-child${ed}`]:{marginTop:0}},({theme:e,outer:t,col:r,row:n})=>{switch(!0){case!!(t&&r):return{marginLeft:t*e.layoutMargin,marginRight:t*e.layoutMargin};case!!(t&&n):return{marginTop:t*e.layoutMargin,marginBottom:t*e.layoutMargin};default:return{}}});k.div(({theme:e})=>({fontWeight:e.typography.weight.bold}));k.div();k.div(({theme:e})=>({padding:30,textAlign:"center",color:e.color.defaultText,fontSize:e.typography.size.s2-1}));_p();function V8(e,t){var r=l.useRef(null),n=l.useRef(null);n.current=t;var a=l.useRef(null);l.useEffect(function(){o()});var o=l.useCallback(function(){var i=a.current,s=n.current,c=i||(s?s instanceof Element?s:s.current:null);r.current&&r.current.element===c&&r.current.subscriber===e||(r.current&&r.current.cleanup&&r.current.cleanup(),r.current={element:c,subscriber:e,cleanup:c?e(c):void 0})},[e]);return l.useEffect(function(){return function(){r.current&&r.current.cleanup&&(r.current.cleanup(),r.current=null)}},[]),l.useCallback(function(i){a.current=i,o()},[o])}u(V8,"useResolvedElement");function L1(e,t,r){return e[t]?e[t][0]?e[t][0][r]:e[t][r]:t==="contentBoxSize"?e.contentRect[r==="inlineSize"?"width":"height"]:void 0}u(L1,"extractSize");function uh(e){e===void 0&&(e={});var t=e.onResize,r=l.useRef(void 0);r.current=t;var n=e.round||Math.round,a=l.useRef(),o=l.useState({width:void 0,height:void 0}),i=o[0],s=o[1],c=l.useRef(!1);l.useEffect(function(){return c.current=!1,function(){c.current=!0}},[]);var d=l.useRef({width:void 0,height:void 0}),f=V8(l.useCallback(function(h){return(!a.current||a.current.box!==e.box||a.current.round!==n)&&(a.current={box:e.box,round:n,instance:new ResizeObserver(function(p){var m=p[0],g=e.box==="border-box"?"borderBoxSize":e.box==="device-pixel-content-box"?"devicePixelContentBoxSize":"contentBoxSize",v=L1(m,g,"inlineSize"),b=L1(m,g,"blockSize"),C=v?n(v):void 0,E=b?n(b):void 0;if(d.current.width!==C||d.current.height!==E){var D={width:C,height:E};d.current.width=C,d.current.height=E,r.current?r.current(D):c.current||s(D)}})}),a.current.instance.observe(h,{box:e.box}),function(){a.current&&a.current.instance.unobserve(h)}},[e.box,n]),e.ref);return l.useMemo(function(){return{ref:f,width:i.width,height:i.height}},[f,i.width,i.height])}u(uh,"useResizeObserver");var Jz=k.div(({scale:e=1,elementHeight:t})=>({height:t||"auto",transformOrigin:"top left",transform:`scale(${1/e})`}));function U8({scale:e,children:t}){let r=l.useRef(null),[n,a]=l.useState(0),o=l.useCallback(({height:i})=>{i&&a(i/e)},[e]);return l.useEffect(()=>{r.current&&a(r.current.getBoundingClientRect().height)},[e]),uh({ref:r,onResize:o}),y.createElement(Jz,{scale:e,elementHeight:n},y.createElement("div",{ref:r,className:"innerZoomElementWrapper"},t))}u(U8,"ZoomElement");var Xz=class extends l.Component{constructor(){super(...arguments),this.iframe=null}componentDidMount(){let{iFrameRef:t}=this.props;this.iframe=t.current}shouldComponentUpdate(t){let{scale:r,active:n}=this.props;return r!==t.scale&&this.setIframeInnerZoom(t.scale),n!==t.active&&this.iframe.setAttribute("data-is-storybook",t.active?"true":"false"),t.children.props.src!==this.props.children.props.src}setIframeInnerZoom(t){try{Object.assign(this.iframe.contentDocument.body.style,{width:`${t*100}%`,height:`${t*100}%`,transform:`scale(${1/t})`,transformOrigin:"top left"})}catch{this.setIframeZoom(t)}}setIframeZoom(t){Object.assign(this.iframe.style,{width:`${t*100}%`,height:`${t*100}%`,transform:`scale(${1/t})`,transformOrigin:"top left"})}render(){let{children:t}=this.props;return y.createElement(y.Fragment,null,t)}};u(Xz,"ZoomIFrame");var q8={Element:U8};vp();var{document:Qz}=_s,eT=k.strong(({theme:e})=>({color:e.color.orange})),tT=k.strong(({theme:e})=>({color:e.color.ancillary,textDecoration:"underline"})),y4=k.em(({theme:e})=>({color:e.textMutedColor})),rT=/(Error): (.*)\n/,nT=/at (?:(.*) )?\(?(.+)\)?/,aT=/([^@]+)?(?:\/<)?@(.+)?/,oT=/([^@]+)?@(.+)?/,W8=u(({error:e})=>{if(!e)return y.createElement(l.Fragment,null,"This error has no stack or message");if(!e.stack)return y.createElement(l.Fragment,null,e.message||"This error has no stack or message");let t=e.stack.toString();t&&e.message&&!t.includes(e.message)&&(t=`Error: ${e.message} + +${t}`);let r=t.match(rT);if(!r)return y.createElement(l.Fragment,null,t);let[,n,a]=r,o=t.split(/\n/).slice(1),[,...i]=o.map(s=>{let c=s.match(nT)||s.match(aT)||s.match(oT);return c?{name:(c[1]||"").replace("/<",""),location:c[2].replace(Qz.location.origin,"")}:null}).filter(Boolean);return y.createElement(l.Fragment,null,y.createElement("span",null,n),": ",y.createElement(eT,null,a),y.createElement("br",null),i.map((s,c)=>s!=null&&s.name?y.createElement(l.Fragment,{key:c}," ","at ",y.createElement(tT,null,s.name)," (",y.createElement(y4,null,s.location),")",y.createElement("br",null)):y.createElement(l.Fragment,{key:c}," ","at ",y.createElement(y4,null,s==null?void 0:s.location),y.createElement("br",null))))},"ErrorFormatter"),iT=k.label(({theme:e})=>({display:"flex",borderBottom:`1px solid ${e.appBorderColor}`,margin:"0 15px",padding:"8px 0","&:last-child":{marginBottom:"3rem"}})),lT=k.span(({theme:e})=>({minWidth:100,fontWeight:e.typography.weight.bold,marginRight:15,display:"flex",justifyContent:"flex-start",alignItems:"center",lineHeight:"16px"})),sT=u(({label:e,children:t,...r})=>y.createElement(iT,{...r},e?y.createElement(lT,null,y.createElement("span",null,e)):null,t),"Field");ks();yp();var uT=l.useLayoutEffect,cT=uT,dT=u(function(e){var t=l.useRef(e);return cT(function(){t.current=e}),t},"useLatest"),b4=u(function(e,t){if(typeof e=="function"){e(t);return}e.current=t},"updateRef"),pT=u(function(e,t){var r=l.useRef();return l.useCallback(function(n){e.current=n,r.current&&b4(r.current,null),r.current=t,t&&b4(t,n)},[t])},"useComposedRef"),fT=pT,w4={"min-height":"0","max-height":"none",height:"0",visibility:"hidden",overflow:"hidden",position:"absolute","z-index":"-1000",top:"0",right:"0"},hT=u(function(e){Object.keys(w4).forEach(function(t){e.style.setProperty(t,w4[t],"important")})},"forceHiddenStyles"),D4=hT,Re=null,E4=u(function(e,t){var r=e.scrollHeight;return t.sizingStyle.boxSizing==="border-box"?r+t.borderSize:r-t.paddingSize},"getHeight");function G8(e,t,r,n){r===void 0&&(r=1),n===void 0&&(n=1/0),Re||(Re=document.createElement("textarea"),Re.setAttribute("tabindex","-1"),Re.setAttribute("aria-hidden","true"),D4(Re)),Re.parentNode===null&&document.body.appendChild(Re);var a=e.paddingSize,o=e.borderSize,i=e.sizingStyle,s=i.boxSizing;Object.keys(i).forEach(function(p){var m=p;Re.style[m]=i[m]}),D4(Re),Re.value=t;var c=E4(Re,e);Re.value=t,c=E4(Re,e),Re.value="x";var d=Re.scrollHeight-a,f=d*r;s==="border-box"&&(f=f+a+o),c=Math.max(f,c);var h=d*n;return s==="border-box"&&(h=h+a+o),c=Math.min(h,c),[c,d]}u(G8,"calculateNodeHeight");var C4=u(function(){},"noop"),mT=u(function(e,t){return e.reduce(function(r,n){return r[n]=t[n],r},{})},"pick"),gT=["borderBottomWidth","borderLeftWidth","borderRightWidth","borderTopWidth","boxSizing","fontFamily","fontSize","fontStyle","fontWeight","letterSpacing","lineHeight","paddingBottom","paddingLeft","paddingRight","paddingTop","tabSize","textIndent","textRendering","textTransform","width","wordBreak"],vT=!!document.documentElement.currentStyle,yT=u(function(e){var t=window.getComputedStyle(e);if(t===null)return null;var r=mT(gT,t),n=r.boxSizing;if(n==="")return null;vT&&n==="border-box"&&(r.width=parseFloat(r.width)+parseFloat(r.borderRightWidth)+parseFloat(r.borderLeftWidth)+parseFloat(r.paddingRight)+parseFloat(r.paddingLeft)+"px");var a=parseFloat(r.paddingBottom)+parseFloat(r.paddingTop),o=parseFloat(r.borderBottomWidth)+parseFloat(r.borderTopWidth);return{sizingStyle:r,paddingSize:a,borderSize:o}},"getSizingData"),bT=yT;function ch(e,t,r){var n=dT(r);l.useLayoutEffect(function(){var a=u(function(o){return n.current(o)},"handler");if(e)return e.addEventListener(t,a),function(){return e.removeEventListener(t,a)}},[])}u(ch,"useListener");var wT=u(function(e){ch(window,"resize",e)},"useWindowResizeListener"),DT=u(function(e){ch(document.fonts,"loadingdone",e)},"useFontsLoadedListener"),ET=["cacheMeasurements","maxRows","minRows","onChange","onHeightChange"],CT=u(function(e,t){var r=e.cacheMeasurements,n=e.maxRows,a=e.minRows,o=e.onChange,i=o===void 0?C4:o,s=e.onHeightChange,c=s===void 0?C4:s,d=Rs(e,ET),f=d.value!==void 0,h=l.useRef(null),p=fT(h,t),m=l.useRef(0),g=l.useRef(),v=u(function(){var C=h.current,E=r&&g.current?g.current:bT(C);if(E){g.current=E;var D=G8(E,C.value||C.placeholder||"x",a,n),w=D[0],x=D[1];m.current!==w&&(m.current=w,C.style.setProperty("height",w+"px","important"),c(w,{rowHeight:x}))}},"resizeTextarea"),b=u(function(C){f||v(),i(C)},"handleChange");return l.useLayoutEffect(v),wT(v),DT(v),l.createElement("textarea",ze({},d,{onChange:b,ref:p}))},"TextareaAutosize"),xT=l.forwardRef(CT),ST={appearance:"none",border:"0 none",boxSizing:"inherit",display:" block",margin:" 0",background:"transparent",padding:0,fontSize:"inherit",position:"relative"},dh=u(({theme:e})=>({...ST,transition:"box-shadow 200ms ease-out, opacity 200ms ease-out",color:e.input.color||"inherit",background:e.input.background,boxShadow:`${e.input.border} 0 0 0 1px inset`,borderRadius:e.input.borderRadius,fontSize:e.typography.size.s2-1,lineHeight:"20px",padding:"6px 10px",boxSizing:"border-box",height:32,'&[type="file"]':{height:"auto"},"&:focus":{boxShadow:`${e.color.secondary} 0 0 0 1px inset`,outline:"none"},"&[disabled]":{cursor:"not-allowed",opacity:.5},"&:-webkit-autofill":{WebkitBoxShadow:`0 0 0 3em ${e.color.lightest} inset`},"&::placeholder":{color:e.textMutedColor,opacity:1}}),"styles"),ph=u(({size:e})=>{switch(e){case"100%":return{width:"100%"};case"flex":return{flex:1};case"auto":default:return{display:"inline"}}},"sizes"),K8=u(({align:e})=>{switch(e){case"end":return{textAlign:"right"};case"center":return{textAlign:"center"};case"start":default:return{textAlign:"left"}}},"alignment"),fh=u(({valid:e,theme:t})=>{switch(e){case"valid":return{boxShadow:`${t.color.positive} 0 0 0 1px inset !important`};case"error":return{boxShadow:`${t.color.negative} 0 0 0 1px inset !important`};case"warn":return{boxShadow:`${t.color.warning} 0 0 0 1px inset`};case void 0:case null:default:return{}}},"validation"),FT=Object.assign(k(l.forwardRef(u(function({size:e,valid:t,align:r,...n},a){return y.createElement("input",{...n,ref:a})},"Input")))(dh,ph,K8,fh,{minHeight:32}),{displayName:"Input"}),AT=Object.assign(k(l.forwardRef(u(function({size:e,valid:t,align:r,...n},a){return y.createElement("select",{...n,ref:a})},"Select")))(dh,ph,fh,{height:32,userSelect:"none",paddingRight:20,appearance:"menulist"}),{displayName:"Select"}),kT=Object.assign(k(l.forwardRef(u(function({size:e,valid:t,align:r,...n},a){return y.createElement(xT,{...n,ref:a})},"Textarea")))(dh,ph,K8,fh,({height:e=400})=>({overflow:"visible",maxHeight:e})),{displayName:"Textarea"}),Ma=Object.assign(k.form({boxSizing:"border-box",width:"100%"}),{Field:sT,Input:FT,Select:AT,Textarea:kT,Button:Or}),_T=l.lazy(()=>Promise.resolve().then(()=>(Hf(),$f)).then(e=>({default:e.WithTooltip}))),BT=u(e=>y.createElement(l.Suspense,{fallback:y.createElement("div",null)},y.createElement(_T,{...e})),"WithTooltip"),RT=l.lazy(()=>Promise.resolve().then(()=>(Hf(),$f)).then(e=>({default:e.WithTooltipPure}))),Y8=u(e=>y.createElement(l.Suspense,{fallback:y.createElement("div",null)},y.createElement(RT,{...e})),"WithTooltipPure");k.div(({theme:e})=>({fontWeight:e.typography.weight.bold}));k.span();k.div(({theme:e})=>({marginTop:8,textAlign:"center","> *":{margin:"0 8px",fontWeight:e.typography.weight.bold}}));k.div(({theme:e})=>({color:e.color.defaultText,lineHeight:"18px"}));k.div({padding:15,width:280,boxSizing:"border-box"});var IT=k.div(({theme:e})=>({padding:"2px 6px",lineHeight:"16px",fontSize:10,fontWeight:e.typography.weight.bold,color:e.color.lightest,boxShadow:"0 0 5px 0 rgba(0, 0, 0, 0.3)",borderRadius:4,whiteSpace:"nowrap",pointerEvents:"none",zIndex:-1,background:e.base==="light"?"rgba(60, 60, 60, 0.9)":"rgba(0, 0, 0, 0.95)",margin:6})),zT=u(({note:e,...t})=>y.createElement(IT,{...t},e),"TooltipNote"),TT=Ce(Bs(),1),LT=k(({active:e,loading:t,disabled:r,...n})=>y.createElement("span",{...n}))(({theme:e})=>({color:e.color.defaultText,fontWeight:e.typography.weight.regular}),({active:e,theme:t})=>e?{color:t.color.secondary,fontWeight:t.typography.weight.bold}:{},({loading:e,theme:t})=>e?{display:"inline-block",flex:"none",...t.animation.inlineGlow}:{},({disabled:e,theme:t})=>e?{color:t.textMutedColor}:{}),MT=k.span({display:"flex","& svg":{height:12,width:12,margin:"3px 0",verticalAlign:"top"},"& path":{fill:"inherit"}}),OT=k.span({flex:1,textAlign:"left",display:"flex",flexDirection:"column"},({isIndented:e})=>e?{marginLeft:24}:{}),PT=k.span(({theme:e})=>({fontSize:"11px",lineHeight:"14px"}),({active:e,theme:t})=>e?{color:t.color.secondary}:{},({theme:e,disabled:t})=>t?{color:e.textMutedColor}:{}),NT=k.span(({active:e,theme:t})=>e?{color:t.color.secondary}:{},()=>({display:"flex",maxWidth:14})),$T=k.div(({theme:e})=>({width:"100%",border:"none",borderRadius:e.appBorderRadius,background:"none",fontSize:e.typography.size.s1,transition:"all 150ms ease-out",color:e.color.dark,textDecoration:"none",justifyContent:"space-between",lineHeight:"18px",padding:"7px 10px",display:"flex",alignItems:"center","& > * + *":{paddingLeft:10}}),({theme:e,href:t,onClick:r})=>(t||r)&&{cursor:"pointer","&:hover":{background:e.background.hoverable},"&:hover svg":{opacity:1}},({theme:e,as:t})=>t==="label"&&{"&:has(input:not(:disabled))":{cursor:"pointer","&:hover":{background:e.background.hoverable}}},({disabled:e})=>e&&{cursor:"not-allowed"}),HT=(0,TT.default)(100)((e,t,r)=>({...e&&{as:"button",onClick:e},...t&&{as:"a",href:t,...r&&{as:r,to:t}}})),jT=u(({loading:e=!1,title:t=y.createElement("span",null,"Loading state"),center:r=null,right:n=null,active:a=!1,disabled:o=!1,isIndented:i,href:s=void 0,onClick:c=void 0,icon:d,LinkWrapper:f=void 0,...h})=>{let p={active:a,disabled:o},m=HT(c,s,f);return y.createElement($T,{...h,...p,...m},y.createElement(y.Fragment,null,d&&y.createElement(NT,{...p},d),t||r?y.createElement(OT,{isIndented:!!(!d&&i)},t&&y.createElement(LT,{...p,loading:e},t),r&&y.createElement(PT,{...p},r)):null,n&&y.createElement(MT,{...p},n)))},"ListItem"),Z8=jT,VT=k.div({minWidth:180,overflow:"hidden",overflowY:"auto",maxHeight:15.5*32+8},({theme:e})=>({borderRadius:e.appBorderRadius+2}),({theme:e})=>e.base==="dark"?{background:e.background.content}:{}),UT=k.div(({theme:e})=>({padding:4,"& + &":{borderTop:`1px solid ${e.appBorderColor}`}})),qT=u(({id:e,onClick:t,...r})=>{let{active:n,disabled:a,title:o,href:i}=r,s=l.useCallback(c=>t==null?void 0:t(c,{id:e,active:n,disabled:a,title:o,href:i}),[t,e,n,a,o,i]);return y.createElement(Z8,{id:`list-item-${e}`,...r,...t&&{onClick:s}})},"Item"),J8=u(({links:e,LinkWrapper:t,...r})=>{let n=Array.isArray(e[0])?e:[e],a=n.some(o=>o.some(i=>"icon"in i&&i.icon));return y.createElement(VT,{...r},n.filter(o=>o.length).map((o,i)=>y.createElement(UT,{key:o.map(s=>s.id).join(`~${i}~`)},o.map(s=>"content"in s?y.createElement(l.Fragment,{key:s.id},s.content):y.createElement(qT,{key:s.id,isIndented:a,LinkWrapper:t,...s})))))},"TooltipLinkList");_p();var M1=k.div({display:"flex",whiteSpace:"nowrap",flexBasis:"auto",marginLeft:3,marginRight:3},({scrollable:e})=>e?{flexShrink:0}:{},({left:e})=>e?{"& > *":{marginLeft:4}}:{},({right:e})=>e?{marginLeft:30,"& > *":{marginRight:4}}:{});M1.displayName="Side";var WT=u(({children:e,className:t,scrollable:r})=>r?y.createElement(Oo,{vertical:!1,className:t},e):y.createElement("div",{className:t},e),"UnstyledBar"),hh=k(WT)(({theme:e,scrollable:t=!0})=>({color:e.barTextColor,width:"100%",height:40,flexShrink:0,overflow:t?"auto":"hidden",overflowY:"hidden"}),({theme:e,border:t=!1})=>t?{boxShadow:`${e.appBorderColor} 0 -1px 0 0 inset`,background:e.barBg}:{});hh.displayName="Bar";var GT=k.div(({bgColor:e})=>({display:"flex",justifyContent:"space-between",position:"relative",flexWrap:"nowrap",flexShrink:0,height:40,backgroundColor:e||""})),fu=u(({children:e,backgroundColor:t,className:r,...n})=>{let[a,o]=l.Children.toArray(e);return y.createElement(hh,{className:`sb-bar ${r}`,...n},y.createElement(GT,{bgColor:t},y.createElement(M1,{scrollable:n.scrollable,left:!0},a),o?y.createElement(M1,{right:!0},o):null))},"FlexBar");fu.displayName="FlexBar";var KT=u(e=>typeof e.props.href=="string","isLink"),YT=u(e=>typeof e.props.href!="string","isButton");function X8({children:e,...t},r){let n={props:t,ref:r};if(KT(n))return y.createElement("a",{ref:n.ref,...n.props},e);if(YT(n))return y.createElement("button",{ref:n.ref,type:"button",...n.props},e);throw new Error("invalid props")}u(X8,"ForwardRefFunction");var Q8=l.forwardRef(X8);Q8.displayName="ButtonOrLink";var vi=k(Q8,{shouldForwardProp:dp})({whiteSpace:"normal",display:"inline-flex",overflow:"hidden",verticalAlign:"top",justifyContent:"center",alignItems:"center",textAlign:"center",textDecoration:"none","&:empty":{display:"none"},"&[hidden]":{display:"none"}},({theme:e})=>({padding:"0 15px",transition:"color 0.2s linear, border-bottom-color 0.2s linear",height:40,lineHeight:"12px",cursor:"pointer",background:"transparent",border:"0 solid transparent",borderTop:"3px solid transparent",borderBottom:"3px solid transparent",fontWeight:"bold",fontSize:13,"&:focus":{outline:"0 none",borderBottomColor:e.barSelectedColor}}),({active:e,textColor:t,theme:r})=>e?{color:t||r.barSelectedColor,borderBottomColor:r.barSelectedColor}:{color:t||r.barTextColor,borderBottomColor:"transparent","&:hover":{color:r.barHoverColor}});vi.displayName="TabButton";k.div(({theme:e})=>({width:14,height:14,backgroundColor:e.appBorderColor,animation:`${e.animation.glow} 1.5s ease-in-out infinite`}));k.div({marginTop:6,padding:7,height:28});var ZT=k.div(({theme:e})=>({height:"100%",display:"flex",padding:30,alignItems:"center",justifyContent:"center",flexDirection:"column",gap:15,background:e.background.content})),JT=k.div({display:"flex",flexDirection:"column",gap:4,maxWidth:415}),XT=k.div(({theme:e})=>({fontWeight:e.typography.weight.bold,fontSize:e.typography.size.s2-1,textAlign:"center",color:e.textColor})),QT=k.div(({theme:e})=>({fontWeight:e.typography.weight.regular,fontSize:e.typography.size.s2-1,textAlign:"center",color:e.textMutedColor})),mh=u(({title:e,description:t,footer:r})=>y.createElement(ZT,null,y.createElement(JT,null,y.createElement(XT,null,e),t&&y.createElement(QT,null,t)),r),"EmptyTabContent"),eL=k.div(({active:e})=>e?{display:"block"}:{display:"none"}),tL=u(e=>l.Children.toArray(e).map(({props:{title:t,id:r,color:n,children:a}})=>{let o=Array.isArray(a)?a[0]:a;return{title:t,id:r,...n?{color:n}:{},render:typeof o=="function"?o:({active:i})=>y.createElement(eL,{active:i,role:"tabpanel"},o)}}),"childrenToList");Hf();var rL=k.span(({theme:e,isActive:t})=>({display:"inline-block",width:0,height:0,marginLeft:8,color:t?e.color.secondary:e.color.mediumdark,borderRight:"3px solid transparent",borderLeft:"3px solid transparent",borderTop:"3px solid",transition:"transform .1s ease-out"})),nL=k(vi)(({active:e,theme:t,preActive:r})=>` + color: ${r||e?t.barSelectedColor:t.barTextColor}; + .addon-collapsible-icon { + color: ${r||e?t.barSelectedColor:t.barTextColor}; + } + &:hover { + color: ${t.barHoverColor}; + .addon-collapsible-icon { + color: ${t.barHoverColor}; + } + } + `);function eC(e){let t=l.useRef(),r=l.useRef(),n=l.useRef(new Map),{width:a=1}=uh({ref:t}),[o,i]=l.useState(e),[s,c]=l.useState([]),d=l.useRef(e),f=l.useCallback(({menuName:p,actions:m})=>{let g=s.some(({active:C})=>C),[v,b]=l.useState(!1);return y.createElement(y.Fragment,null,y.createElement(ps,{interactive:!0,visible:v,onVisibleChange:b,placement:"bottom",delayHide:100,tooltip:y.createElement(J8,{links:s.map(({title:C,id:E,color:D,active:w})=>({id:E,title:C,color:D,active:w,onClick:u(x=>{x.preventDefault(),m.onSelect(E)},"onClick")}))})},y.createElement(nL,{ref:r,active:g,preActive:v,style:{visibility:s.length?"visible":"hidden"},"aria-hidden":!s.length,className:"tabbutton",type:"button",role:"tab"},p,y.createElement(rL,{className:"addon-collapsible-icon",isActive:g||v}))),s.map(({title:C,id:E,color:D},w)=>{let x=`index-${w}`;return y.createElement(vi,{id:`tabbutton-${t3(E)??x}`,style:{visibility:"hidden"},"aria-hidden":!0,tabIndex:-1,ref:S=>{n.current.set(E,S)},className:"tabbutton",type:"button",key:E,textColor:D,role:"tab"},C)}))},[s]),h=l.useCallback(()=>{if(!t.current||!r.current)return;let{x:p,width:m}=t.current.getBoundingClientRect(),{width:g}=r.current.getBoundingClientRect(),v=s.length?p+m-g:p+m,b=[],C=0,E=e.filter(D=>{let{id:w}=D,x=n.current.get(w),{width:S=0}=(x==null?void 0:x.getBoundingClientRect())||{},F=p+C+S>v;return(!F||!x)&&b.push(D),C+=S,F});(b.length!==o.length||d.current!==e)&&(i(b),c(E),d.current=e)},[s.length,e,o]);return l.useLayoutEffect(h,[h,a]),{tabRefs:n,addonsRef:r,tabBarRef:t,visibleList:o,invisibleList:s,AddonTab:f}}u(eC,"useList");var aL="/* emotion-disable-server-rendering-unsafe-selector-warning-please-do-not-use-this-the-warning-exists-for-a-reason */",oL=k.div(({theme:e,bordered:t})=>t?{backgroundClip:"padding-box",border:`1px solid ${e.appBorderColor}`,borderRadius:e.appBorderRadius,overflow:"hidden",boxSizing:"border-box"}:{},({absolute:e})=>e?{width:"100%",height:"100%",boxSizing:"border-box",display:"flex",flexDirection:"column"}:{display:"block"}),gh=k.div({overflow:"hidden","&:first-of-type":{marginLeft:-3},whiteSpace:"nowrap",flexGrow:1});gh.displayName="TabBar";var iL=k.div({display:"block",position:"relative"},({theme:e})=>({fontSize:e.typography.size.s2-1,background:e.background.content}),({bordered:e,theme:t})=>e?{borderRadius:`0 0 ${t.appBorderRadius-1}px ${t.appBorderRadius-1}px`}:{},({absolute:e,bordered:t})=>e?{height:`calc(100% - ${t?42:40}px)`,position:"absolute",left:0+(t?1:0),right:0+(t?1:0),bottom:0+(t?1:0),top:40+(t?1:0),overflow:"auto",[`& > *:first-child${aL}`]:{position:"absolute",left:0+(t?1:0),right:0+(t?1:0),bottom:0+(t?1:0),top:0+(t?1:0),height:`calc(100% - ${t?2:0}px)`,overflow:"auto"}}:{}),vh=l.memo(({children:e,selected:t=null,actions:r,absolute:n=!1,bordered:a=!1,tools:o=null,backgroundColor:i,id:s=null,menuName:c="Tabs",emptyState:d,showToolsWhenEmpty:f})=>{let h=l.useMemo(()=>tL(e).map((C,E)=>({...C,active:t?C.id===t:E===0})),[e,t]),{visibleList:p,tabBarRef:m,tabRefs:g,AddonTab:v}=eC(h),b=d??y.createElement(mh,{title:"Nothing found"});return!f&&h.length===0?b:y.createElement(oL,{absolute:n,bordered:a,id:s},y.createElement(fu,{scrollable:!1,border:!0,backgroundColor:i},y.createElement(gh,{style:{whiteSpace:"normal"},ref:m,role:"tablist"},p.map(({title:C,id:E,active:D,color:w},x)=>{let S=`index-${x}`;return y.createElement(vi,{id:`tabbutton-${t3(E)??S}`,ref:F=>{g.current.set(E,F)},className:`tabbutton ${D?"tabbutton-active":""}`,type:"button",key:E,active:D,textColor:w,onClick:F=>{F.preventDefault(),r.onSelect(E)},role:"tab"},typeof C=="function"?y.createElement("title",null):C)}),y.createElement(v,{menuName:c,actions:r})),o),y.createElement(iL,{id:"panel-tab-content",bordered:a,absolute:n},h.length?h.map(({id:C,active:E,render:D})=>y.createElement(D,{key:C,active:E},null)):b))});vh.displayName="Tabs";var O1=class extends l.Component{constructor(t){super(t),this.handlers={onSelect:u(r=>this.setState({selected:r}),"onSelect")},this.state={selected:t.initial}}render(){let{bordered:t=!1,absolute:r=!1,children:n,backgroundColor:a,menuName:o}=this.props,{selected:i}=this.state;return y.createElement(vh,{bordered:t,absolute:r,selected:i,backgroundColor:a,menuName:o,actions:this.handlers},n)}};u(O1,"TabsState"),O1.defaultProps={children:[],initial:null,absolute:!1,bordered:!1,backgroundColor:"",menuName:void 0};var tC=O1,rC=k.span(({theme:e})=>({width:1,height:20,background:e.appBorderColor,marginLeft:2,marginRight:2}),({force:e})=>e?{}:{"& + &":{display:"none"}});rC.displayName="Separator";const{deprecate:wV,logger:DV}=__STORYBOOK_MODULE_CLIENT_LOGGER__;var lL=k.svg` + display: inline-block; + shape-rendering: inherit; + vertical-align: middle; + fill: currentColor; + path { + fill: currentColor; + } +`;l.memo(u(function({icons:e=Object.keys(P1)}){return y.createElement(lL,{viewBox:"0 0 14 14",style:{position:"absolute",width:0,height:0},"data-chromatic":"ignore"},e.map(t=>y.createElement("symbol",{id:`icon--${t}`,key:t},P1[t])))},"Symbols"));var P1={user:"UserIcon",useralt:"UserAltIcon",useradd:"UserAddIcon",users:"UsersIcon",profile:"ProfileIcon",facehappy:"FaceHappyIcon",faceneutral:"FaceNeutralIcon",facesad:"FaceSadIcon",accessibility:"AccessibilityIcon",accessibilityalt:"AccessibilityAltIcon",arrowup:"ChevronUpIcon",arrowdown:"ChevronDownIcon",arrowleft:"ChevronLeftIcon",arrowright:"ChevronRightIcon",arrowupalt:"ArrowUpIcon",arrowdownalt:"ArrowDownIcon",arrowleftalt:"ArrowLeftIcon",arrowrightalt:"ArrowRightIcon",expandalt:"ExpandAltIcon",collapse:"CollapseIcon",expand:"ExpandIcon",unfold:"UnfoldIcon",transfer:"TransferIcon",redirect:"RedirectIcon",undo:"UndoIcon",reply:"ReplyIcon",sync:"SyncIcon",upload:"UploadIcon",download:"DownloadIcon",back:"BackIcon",proceed:"ProceedIcon",refresh:"RefreshIcon",globe:"GlobeIcon",compass:"CompassIcon",location:"LocationIcon",pin:"PinIcon",time:"TimeIcon",dashboard:"DashboardIcon",timer:"TimerIcon",home:"HomeIcon",admin:"AdminIcon",info:"InfoIcon",question:"QuestionIcon",support:"SupportIcon",alert:"AlertIcon",email:"EmailIcon",phone:"PhoneIcon",link:"LinkIcon",unlink:"LinkBrokenIcon",bell:"BellIcon",rss:"RSSIcon",sharealt:"ShareAltIcon",share:"ShareIcon",circle:"CircleIcon",circlehollow:"CircleHollowIcon",bookmarkhollow:"BookmarkHollowIcon",bookmark:"BookmarkIcon",hearthollow:"HeartHollowIcon",heart:"HeartIcon",starhollow:"StarHollowIcon",star:"StarIcon",certificate:"CertificateIcon",verified:"VerifiedIcon",thumbsup:"ThumbsUpIcon",shield:"ShieldIcon",basket:"BasketIcon",beaker:"BeakerIcon",hourglass:"HourglassIcon",flag:"FlagIcon",cloudhollow:"CloudHollowIcon",edit:"EditIcon",cog:"CogIcon",nut:"NutIcon",wrench:"WrenchIcon",ellipsis:"EllipsisIcon",check:"CheckIcon",form:"FormIcon",batchdeny:"BatchDenyIcon",batchaccept:"BatchAcceptIcon",controls:"ControlsIcon",plus:"PlusIcon",closeAlt:"CloseAltIcon",cross:"CrossIcon",trash:"TrashIcon",pinalt:"PinAltIcon",unpin:"UnpinIcon",add:"AddIcon",subtract:"SubtractIcon",close:"CloseIcon",delete:"DeleteIcon",passed:"PassedIcon",changed:"ChangedIcon",failed:"FailedIcon",clear:"ClearIcon",comment:"CommentIcon",commentadd:"CommentAddIcon",requestchange:"RequestChangeIcon",comments:"CommentsIcon",lock:"LockIcon",unlock:"UnlockIcon",key:"KeyIcon",outbox:"OutboxIcon",credit:"CreditIcon",button:"ButtonIcon",type:"TypeIcon",pointerdefault:"PointerDefaultIcon",pointerhand:"PointerHandIcon",browser:"BrowserIcon",tablet:"TabletIcon",mobile:"MobileIcon",watch:"WatchIcon",sidebar:"SidebarIcon",sidebaralt:"SidebarAltIcon",sidebaralttoggle:"SidebarAltToggleIcon",sidebartoggle:"SidebarToggleIcon",bottombar:"BottomBarIcon",bottombartoggle:"BottomBarToggleIcon",cpu:"CPUIcon",database:"DatabaseIcon",memory:"MemoryIcon",structure:"StructureIcon",box:"BoxIcon",power:"PowerIcon",photo:"PhotoIcon",component:"ComponentIcon",grid:"GridIcon",outline:"OutlineIcon",photodrag:"PhotoDragIcon",search:"SearchIcon",zoom:"ZoomIcon",zoomout:"ZoomOutIcon",zoomreset:"ZoomResetIcon",eye:"EyeIcon",eyeclose:"EyeCloseIcon",lightning:"LightningIcon",lightningoff:"LightningOffIcon",contrast:"ContrastIcon",switchalt:"SwitchAltIcon",mirror:"MirrorIcon",grow:"GrowIcon",paintbrush:"PaintBrushIcon",ruler:"RulerIcon",stop:"StopIcon",camera:"CameraIcon",video:"VideoIcon",speaker:"SpeakerIcon",play:"PlayIcon",playback:"PlayBackIcon",playnext:"PlayNextIcon",rewind:"RewindIcon",fastforward:"FastForwardIcon",stopalt:"StopAltIcon",sidebyside:"SideBySideIcon",stacked:"StackedIcon",sun:"SunIcon",moon:"MoonIcon",book:"BookIcon",document:"DocumentIcon",copy:"CopyIcon",category:"CategoryIcon",folder:"FolderIcon",print:"PrintIcon",graphline:"GraphLineIcon",calendar:"CalendarIcon",graphbar:"GraphBarIcon",menu:"MenuIcon",menualt:"MenuIcon",filter:"FilterIcon",docchart:"DocChartIcon",doclist:"DocListIcon",markup:"MarkupIcon",bold:"BoldIcon",paperclip:"PaperClipIcon",listordered:"ListOrderedIcon",listunordered:"ListUnorderedIcon",paragraph:"ParagraphIcon",markdown:"MarkdownIcon",repository:"RepoIcon",commit:"CommitIcon",branch:"BranchIcon",pullrequest:"PullRequestIcon",merge:"MergeIcon",apple:"AppleIcon",linux:"LinuxIcon",ubuntu:"UbuntuIcon",windows:"WindowsIcon",storybook:"StorybookIcon",azuredevops:"AzureDevOpsIcon",bitbucket:"BitbucketIcon",chrome:"ChromeIcon",chromatic:"ChromaticIcon",componentdriven:"ComponentDrivenIcon",discord:"DiscordIcon",facebook:"FacebookIcon",figma:"FigmaIcon",gdrive:"GDriveIcon",github:"GithubIcon",gitlab:"GitlabIcon",google:"GoogleIcon",graphql:"GraphqlIcon",medium:"MediumIcon",redux:"ReduxIcon",twitter:"TwitterIcon",youtube:"YoutubeIcon",vscode:"VSCodeIcon"},sL=wt` + from { + transform: rotate(0deg); + } + to { + transform: rotate(360deg); + } +`,uL=k.div(({size:e=32})=>({borderRadius:"50%",cursor:"progress",display:"inline-block",overflow:"hidden",position:"absolute",transition:"all 200ms ease-out",verticalAlign:"top",top:"50%",left:"50%",marginTop:-(e/2),marginLeft:-(e/2),height:e,width:e,zIndex:4,borderWidth:2,borderStyle:"solid",borderColor:"rgba(97, 97, 97, 0.29)",borderTopColor:"rgb(100,100,100)",animation:`${sL} 0.7s linear infinite`,mixBlendMode:"difference"})),x4=k.div({position:"absolute",display:"flex",flexDirection:"column",justifyContent:"center",alignItems:"center",width:"100%",height:"100%"}),cL=k.div(({theme:e})=>({position:"relative",width:"80%",marginBottom:"0.75rem",maxWidth:300,height:5,borderRadius:5,background:pt(.8,e.color.secondary),overflow:"hidden",cursor:"progress"})),dL=k.div(({theme:e})=>({position:"absolute",top:0,left:0,height:"100%",background:e.color.secondary})),S4=k.div(({theme:e})=>({minHeight:"2em",fontSize:`${e.typography.size.s1}px`,color:e.textMutedColor})),pL=k(cE)(({theme:e})=>({width:20,height:20,marginBottom:"0.5rem",color:e.textMutedColor})),fL=wt` + from { content: "..." } + 33% { content: "." } + 66% { content: ".." } + to { content: "..." } +`,hL=k.span({"&::after":{content:"'...'",animation:`${fL} 1s linear infinite`,animationDelay:"1s",display:"inline-block",width:"1em",height:"auto"}}),nC=u(({progress:e,error:t,size:r,...n})=>{if(t)return y.createElement(x4,{"aria-label":t.toString(),"aria-live":"polite",role:"status",...n},y.createElement(pL,null),y.createElement(S4,null,t.message));if(e){let{value:a,modules:o}=e,{message:i}=e;return o&&(i+=` ${o.complete} / ${o.total} modules`),y.createElement(x4,{"aria-label":"Content is loading...","aria-live":"polite","aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":a*100,"aria-valuetext":i,role:"progressbar",...n},y.createElement(cL,null,y.createElement(dL,{style:{width:`${a*100}%`}})),y.createElement(S4,null,i,a<1&&y.createElement(hL,{key:i})))}return y.createElement(uL,{"aria-label":"Content is loading...","aria-live":"polite",role:"status",size:r,...n})},"Loader"),mL=wt({"0%":{transform:"rotate(0deg)"},"100%":{transform:"rotate(360deg)"}});k.div(({size:e})=>({display:"inline-flex",alignItems:"center",justifyContent:"center",position:"relative",minWidth:e,minHeight:e}));k.svg(({size:e,width:t})=>({position:"absolute",width:`${e}px!important`,height:`${e}px!important`,transform:"rotate(-90deg)",circle:{r:(e-Math.ceil(t))/2,cx:e/2,cy:e/2,opacity:.15,fill:"transparent",stroke:"currentColor",strokeWidth:t,strokeLinecap:"round",strokeDasharray:Math.PI*(e-Math.ceil(t))}}),({progress:e})=>e&&{circle:{opacity:.75}},({spinner:e})=>e&&{animation:`${mL} 1s linear infinite`,circle:{opacity:.25}});function aC(e){let t={},r=e.split("&");for(let n=0;n{let[n,a]=e.split("?"),o=a?{...aC(a),...r,id:t}:{...r,id:t};return`${n}?${Object.entries(o).map(i=>`${i[0]}=${i[1]}`).join("&")}`},"getStoryHref");k.pre` + line-height: 18px; + padding: 11px 1rem; + white-space: pre-wrap; + background: rgba(0, 0, 0, 0.05); + color: ${V.darkest}; + border-radius: 3px; + margin: 1rem 0; + width: 100%; + display: block; + overflow: hidden; + font-family: ${Mt.fonts.mono}; + font-size: ${Mt.size.s2-1}px; +`;var iC=uE;Object.keys(uE).forEach(e=>{l.forwardRef((t,r)=>l.createElement(e,{...t,ref:r}))});const gL=Object.freeze(Object.defineProperty({__proto__:null,A:q6,get ActionBar(){return zs},Bar:hh,Blockquote:W6,Button:Or,Code:Gf,DL:G6,Div:K6,EmptyTabContent:mh,ErrorFormatter:W8,FlexBar:fu,Form:Ma,H1:Y6,H2:Kf,H3:Yf,H4:Z6,H5:J6,H6:X6,HR:Q6,IconButton:Fr,Img:eE,LI:tE,Link:oa,ListItem:Z8,Loader:nC,OL:rE,P:nE,Pre:aE,ResetWrapper:Wf,get ScrollArea(){return Oo},Separator:rC,Span:oE,SyntaxHighlighter:lu,TT:iE,TabBar:gh,TabButton:vi,Table:lE,Tabs:vh,TabsState:tC,TooltipLinkList:J8,TooltipNote:zT,UL:sE,WithTooltip:BT,WithTooltipPure:Y8,Zoom:q8,codeCommon:cr,components:iC,createCopyToClipboardFunction:Tl,getStoryHref:oC,icons:P1,nameSpaceClassNames:ie,withReset:se},Symbol.toStringTag,{value:"Module"}));var vL=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M6 3.5a.5.5 0 01.5.5v1.5H8a.5.5 0 010 1H6.5V8a.5.5 0 01-1 0V6.5H4a.5.5 0 010-1h1.5V4a.5.5 0 01.5-.5z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M9.544 10.206a5.5 5.5 0 11.662-.662.5.5 0 01.148.102l3 3a.5.5 0 01-.708.708l-3-3a.5.5 0 01-.102-.148zM10.5 6a4.5 4.5 0 11-9 0 4.5 4.5 0 019 0z",fill:e}))),yL=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M4 5.5a.5.5 0 000 1h4a.5.5 0 000-1H4z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M6 11.5c1.35 0 2.587-.487 3.544-1.294a.5.5 0 00.102.148l3 3a.5.5 0 00.708-.708l-3-3a.5.5 0 00-.148-.102A5.5 5.5 0 106 11.5zm0-1a4.5 4.5 0 100-9 4.5 4.5 0 000 9z",fill:e}))),bL=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M1.5 2.837V1.5a.5.5 0 00-1 0V4a.5.5 0 00.5.5h2.5a.5.5 0 000-1H2.258a4.5 4.5 0 11-.496 4.016.5.5 0 10-.942.337 5.502 5.502 0 008.724 2.353.5.5 0 00.102.148l3 3a.5.5 0 00.708-.708l-3-3a.5.5 0 00-.148-.102A5.5 5.5 0 101.5 2.837z",fill:e}))),wL=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M7 9.5a2.5 2.5 0 100-5 2.5 2.5 0 000 5z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M14 7l-.21.293C13.669 7.465 10.739 11.5 7 11.5S.332 7.465.21 7.293L0 7l.21-.293C.331 6.536 3.261 2.5 7 2.5s6.668 4.036 6.79 4.207L14 7zM2.896 5.302A12.725 12.725 0 001.245 7c.296.37.874 1.04 1.65 1.698C4.043 9.67 5.482 10.5 7 10.5c1.518 0 2.958-.83 4.104-1.802A12.72 12.72 0 0012.755 7c-.297-.37-.875-1.04-1.65-1.698C9.957 4.33 8.517 3.5 7 3.5c-1.519 0-2.958.83-4.104 1.802z",fill:e}))),DL=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M1.854 1.146a.5.5 0 10-.708.708l11 11a.5.5 0 00.708-.708l-11-11zM11.104 8.698c-.177.15-.362.298-.553.439l.714.714a13.25 13.25 0 002.526-2.558L14 7l-.21-.293C13.669 6.536 10.739 2.5 7 2.5c-.89 0-1.735.229-2.506.58l.764.763A4.859 4.859 0 017 3.5c1.518 0 2.958.83 4.104 1.802A12.724 12.724 0 0112.755 7a12.72 12.72 0 01-1.65 1.698zM.21 6.707c.069-.096 1.03-1.42 2.525-2.558l.714.714c-.191.141-.376.288-.553.439A12.725 12.725 0 001.245 7c.296.37.874 1.04 1.65 1.698C4.043 9.67 5.482 10.5 7 10.5a4.86 4.86 0 001.742-.344l.764.764c-.772.351-1.616.58-2.506.58C3.262 11.5.332 7.465.21 7.293L0 7l.21-.293z",fill:e}),l.createElement("path",{d:"M4.5 7c0-.322.061-.63.172-.914l3.242 3.242A2.5 2.5 0 014.5 7zM9.328 7.914L6.086 4.672a2.5 2.5 0 013.241 3.241z",fill:e}))),EL=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M2.5 10a.5.5 0 100-1 .5.5 0 000 1z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M0 4a2 2 0 012-2h6a2 2 0 012 2v.5l3.189-2.391A.5.5 0 0114 2.5v9a.5.5 0 01-.804.397L10 9.5v.5a2 2 0 01-2 2H2a2 2 0 01-2-2V4zm9 0v1.5a.5.5 0 00.8.4L13 3.5v7L9.8 8.1a.5.5 0 00-.8.4V10a1 1 0 01-1 1H2a1 1 0 01-1-1V4a1 1 0 011-1h6a1 1 0 011 1z",fill:e}))),N1=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M4 5.5a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5zM4.5 7.5a.5.5 0 000 1h5a.5.5 0 000-1h-5zM4 10.5a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M1.5 0a.5.5 0 00-.5.5v13a.5.5 0 00.5.5h11a.5.5 0 00.5-.5V3.207a.5.5 0 00-.146-.353L10.146.146A.5.5 0 009.793 0H1.5zM2 1h7.5v2a.5.5 0 00.5.5h2V13H2V1z",fill:e}))),EV=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M8.982 1.632a.5.5 0 00-.964-.263l-3 11a.5.5 0 10.964.263l3-11zM3.32 3.616a.5.5 0 01.064.704L1.151 7l2.233 2.68a.5.5 0 11-.768.64l-2.5-3a.5.5 0 010-.64l2.5-3a.5.5 0 01.704-.064zM10.68 3.616a.5.5 0 00-.064.704L12.849 7l-2.233 2.68a.5.5 0 00.768.64l2.5-3a.5.5 0 000-.64l-2.5-3a.5.5 0 00-.704-.064z",fill:e}))),CL=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M7 3a.5.5 0 01.5.5v3h3a.5.5 0 010 1h-3v3a.5.5 0 01-1 0v-3h-3a.5.5 0 010-1h3v-3A.5.5 0 017 3z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M7 14A7 7 0 107 0a7 7 0 000 14zm0-1A6 6 0 107 1a6 6 0 000 12z",fill:e}))),xL=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M3.5 6.5a.5.5 0 000 1h7a.5.5 0 000-1h-7z",fill:e}),l.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M14 7A7 7 0 110 7a7 7 0 0114 0zm-1 0A6 6 0 111 7a6 6 0 0112 0z",fill:e}))),SL=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M11.841 2.159a2.25 2.25 0 00-3.182 0l-2.5 2.5a2.25 2.25 0 000 3.182.5.5 0 01-.707.707 3.25 3.25 0 010-4.596l2.5-2.5a3.25 3.25 0 014.596 4.596l-2.063 2.063a4.27 4.27 0 00-.094-1.32l1.45-1.45a2.25 2.25 0 000-3.182z",fill:e}),l.createElement("path",{d:"M3.61 7.21c-.1-.434-.132-.88-.095-1.321L1.452 7.952a3.25 3.25 0 104.596 4.596l2.5-2.5a3.25 3.25 0 000-4.596.5.5 0 00-.707.707 2.25 2.25 0 010 3.182l-2.5 2.5A2.25 2.25 0 112.159 8.66l1.45-1.45z",fill:e}))),FL=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M1.146 4.604l5.5 5.5a.5.5 0 00.708 0l5.5-5.5a.5.5 0 00-.708-.708L7 9.043 1.854 3.896a.5.5 0 10-.708.708z",fill:e}))),AL=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M11.104 7.354l-5.5 5.5a.5.5 0 01-.708-.708L10.043 7 4.896 1.854a.5.5 0 11.708-.708l5.5 5.5a.5.5 0 010 .708z",fill:e}))),kL=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M3.854 9.104a.5.5 0 11-.708-.708l3.5-3.5a.5.5 0 01.708 0l3.5 3.5a.5.5 0 01-.708.708L7 5.957 3.854 9.104z",fill:e}))),lC=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M3.854 4.896a.5.5 0 10-.708.708l3.5 3.5a.5.5 0 00.708 0l3.5-3.5a.5.5 0 00-.708-.708L7 8.043 3.854 4.896z",fill:e}))),_L=l.forwardRef(({color:e="currentColor",size:t=14,...r},n)=>l.createElement("svg",{width:t,height:t,viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:n,...r},l.createElement("path",{d:"M1.146 3.854a.5.5 0 010-.708l2-2a.5.5 0 11.708.708L2.707 3h6.295A4 4 0 019 11H3a.5.5 0 010-1h6a3 3 0 100-6H2.707l1.147 1.146a.5.5 0 11-.708.708l-2-2z",fill:e})));const{deprecate:BL,once:RL,logger:yh}=__STORYBOOK_MODULE_CLIENT_LOGGER__,{filterArgTypes:F4,composeConfigs:CV,Preview:xV,DocsContext:SV}=__STORYBOOK_MODULE_PREVIEW_API__,{STORY_ARGS_UPDATED:A4,UPDATE_STORY_ARGS:IL,RESET_STORY_ARGS:zL,GLOBALS_UPDATED:k4,NAVIGATE_URL:sC}=__STORYBOOK_MODULE_CORE_EVENTS__,{Channel:FV}=__STORYBOOK_MODULE_CHANNELS__;var uC=yn({"../../node_modules/memoizerific/memoizerific.js"(e,t){(function(r){if(typeof e=="object"&&typeof t<"u")t.exports=r();else if(typeof define=="function"&&define.amd)define([],r);else{var n;typeof window<"u"?n=window:typeof global<"u"?n=global:typeof self<"u"?n=self:n=this,n.memoizerific=r()}})(function(){return(function r(n,a,o){function i(d,f){if(!a[d]){if(!n[d]){var h=typeof Di=="function"&&Di;if(!f&&h)return h(d,!0);if(s)return s(d,!0);var p=new Error("Cannot find module '"+d+"'");throw p.code="MODULE_NOT_FOUND",p}var m=a[d]={exports:{}};n[d][0].call(m.exports,function(g){var v=n[d][1][g];return i(v||g)},m,m.exports,r,n,a,o)}return a[d].exports}for(var s=typeof Di=="function"&&Di,c=0;c=0)return this.lastItem=this.list[s],this.list[s].val},o.prototype.set=function(i,s){var c;return this.lastItem&&this.isEqual(this.lastItem.key,i)?(this.lastItem.val=s,this):(c=this.indexOf(i),c>=0?(this.lastItem=this.list[c],this.list[c].val=s,this):(this.lastItem={key:i,val:s},this.list.push(this.lastItem),this.size++,this))},o.prototype.delete=function(i){var s;if(this.lastItem&&this.isEqual(this.lastItem.key,i)&&(this.lastItem=void 0),s=this.indexOf(i),s>=0)return this.size--,this.list.splice(s,1)[0]},o.prototype.has=function(i){var s;return this.lastItem&&this.isEqual(this.lastItem.key,i)?!0:(s=this.indexOf(i),s>=0?(this.lastItem=this.list[s],!0):!1)},o.prototype.forEach=function(i,s){var c;for(c=0;c0&&(E[C]={cacheItem:g,arg:arguments[C]},D?i(h,E):h.push(E),h.length>d&&s(h.shift())),m.wasMemoized=D,m.numArgs=C+1,b};return m.limit=d,m.wasMemoized=!1,m.cache=f,m.lru=h,m}};function i(d,f){var h=d.length,p=f.length,m,g,v;for(g=0;g=0&&(h=d[m],p=h.cacheItem.get(h.arg),!p||!p.size);m--)h.cacheItem.delete(h.arg)}function c(d,f){return d===f||d!==d&&f!==f}},{"map-or-similar":1}]},{},[3])(3)})}}),TL=yn({"../../node_modules/tocbot/src/js/default-options.js"(e,t){t.exports={tocSelector:".js-toc",contentSelector:".js-toc-content",headingSelector:"h1, h2, h3",ignoreSelector:".js-toc-ignore",hasInnerContainers:!1,linkClass:"toc-link",extraLinkClasses:"",activeLinkClass:"is-active-link",listClass:"toc-list",extraListClasses:"",isCollapsedClass:"is-collapsed",collapsibleClass:"is-collapsible",listItemClass:"toc-list-item",activeListItemClass:"is-active-li",collapseDepth:0,scrollSmooth:!0,scrollSmoothDuration:420,scrollSmoothOffset:0,scrollEndCallback:function(r){},headingsOffset:1,throttleTimeout:50,positionFixedSelector:null,positionFixedClass:"is-position-fixed",fixedSidebarOffset:"auto",includeHtml:!1,includeTitleTags:!1,onClick:function(r){},orderedList:!0,scrollContainer:null,skipRendering:!1,headingLabelCallback:!1,ignoreHiddenElements:!1,headingObjectCallback:null,basePath:"",disableTocScrollSync:!1,tocScrollOffset:0}}}),LL=yn({"../../node_modules/tocbot/src/js/build-html.js"(e,t){t.exports=function(r){var n=[].forEach,a=[].some,o=document.body,i,s=!0,c=" ";function d(w,x){var S=x.appendChild(h(w));if(w.children.length){var F=p(w.isCollapsed);w.children.forEach(function(A){d(A,F)}),S.appendChild(F)}}function f(w,x){var S=!1,F=p(S);if(x.forEach(function(A){d(A,F)}),i=w||i,i!==null)return i.firstChild&&i.removeChild(i.firstChild),x.length===0?i:i.appendChild(F)}function h(w){var x=document.createElement("li"),S=document.createElement("a");return r.listItemClass&&x.setAttribute("class",r.listItemClass),r.onClick&&(S.onclick=r.onClick),r.includeTitleTags&&S.setAttribute("title",w.textContent),r.includeHtml&&w.childNodes.length?n.call(w.childNodes,function(F){S.appendChild(F.cloneNode(!0))}):S.textContent=w.textContent,S.setAttribute("href",r.basePath+"#"+w.id),S.setAttribute("class",r.linkClass+c+"node-name--"+w.nodeName+c+r.extraLinkClasses),x.appendChild(S),x}function p(w){var x=r.orderedList?"ol":"ul",S=document.createElement(x),F=r.listClass+c+r.extraListClasses;return w&&(F=F+c+r.collapsibleClass,F=F+c+r.isCollapsedClass),S.setAttribute("class",F),S}function m(){if(r.scrollContainer&&document.querySelector(r.scrollContainer)){var w;w=document.querySelector(r.scrollContainer).scrollTop}else w=document.documentElement.scrollTop||o.scrollTop;var x=document.querySelector(r.positionFixedSelector);r.fixedSidebarOffset==="auto"&&(r.fixedSidebarOffset=i.offsetTop),w>r.fixedSidebarOffset?x.className.indexOf(r.positionFixedClass)===-1&&(x.className+=c+r.positionFixedClass):x.className=x.className.replace(c+r.positionFixedClass,"")}function g(w){var x=0;return w!==null&&(x=w.offsetTop,r.hasInnerContainers&&(x+=g(w.offsetParent))),x}function v(w,x){return w&&w.className!==x&&(w.className=x),w}function b(w){if(r.scrollContainer&&document.querySelector(r.scrollContainer)){var x;x=document.querySelector(r.scrollContainer).scrollTop}else x=document.documentElement.scrollTop||o.scrollTop;r.positionFixedSelector&&m();var S=w,F;if(s&&i!==null&&S.length>0){a.call(S,function(P,M){if(g(P)>x+r.headingsOffset+10){var N=M===0?M:M-1;return F=S[N],!0}else if(M===S.length-1)return F=S[S.length-1],!0});var A=i.querySelector("."+r.activeLinkClass),_=i.querySelector("."+r.linkClass+".node-name--"+F.nodeName+'[href="'+r.basePath+"#"+F.id.replace(/([ #;&,.+*~':"!^$[\]()=>|/\\@])/g,"\\$1")+'"]');if(A===_)return;var R=i.querySelectorAll("."+r.linkClass);n.call(R,function(P){v(P,P.className.replace(c+r.activeLinkClass,""))});var I=i.querySelectorAll("."+r.listItemClass);n.call(I,function(P){v(P,P.className.replace(c+r.activeListItemClass,""))}),_&&_.className.indexOf(r.activeLinkClass)===-1&&(_.className+=c+r.activeLinkClass);var T=_&&_.parentNode;T&&T.className.indexOf(r.activeListItemClass)===-1&&(T.className+=c+r.activeListItemClass);var L=i.querySelectorAll("."+r.listClass+"."+r.collapsibleClass);n.call(L,function(P){P.className.indexOf(r.isCollapsedClass)===-1&&(P.className+=c+r.isCollapsedClass)}),_&&_.nextSibling&&_.nextSibling.className.indexOf(r.isCollapsedClass)!==-1&&v(_.nextSibling,_.nextSibling.className.replace(c+r.isCollapsedClass,"")),C(_&&_.parentNode.parentNode)}}function C(w){return w&&w.className.indexOf(r.collapsibleClass)!==-1&&w.className.indexOf(r.isCollapsedClass)!==-1?(v(w,w.className.replace(c+r.isCollapsedClass,"")),C(w.parentNode.parentNode)):w}function E(w){var x=w.target||w.srcElement;typeof x.className!="string"||x.className.indexOf(r.linkClass)===-1||(s=!1)}function D(){s=!0}return{enableTocAnimation:D,disableTocAnimation:E,render:f,updateToc:b}}}}),ML=yn({"../../node_modules/tocbot/src/js/parse-content.js"(e,t){t.exports=function(r){var n=[].reduce;function a(h){return h[h.length-1]}function o(h){return+h.nodeName.toUpperCase().replace("H","")}function i(h){try{return h instanceof window.HTMLElement||h instanceof window.parent.HTMLElement}catch{return h instanceof window.HTMLElement}}function s(h){if(!i(h))return h;if(r.ignoreHiddenElements&&(!h.offsetHeight||!h.offsetParent))return null;let p=h.getAttribute("data-heading-label")||(r.headingLabelCallback?String(r.headingLabelCallback(h.innerText)):(h.innerText||h.textContent).trim());var m={id:h.id,children:[],nodeName:h.nodeName,headingLevel:o(h),textContent:p};return r.includeHtml&&(m.childNodes=h.childNodes),r.headingObjectCallback?r.headingObjectCallback(m,h):m}function c(h,p){for(var m=s(h),g=m.headingLevel,v=p,b=a(v),C=b?b.headingLevel:0,E=g-C;E>0&&(b=a(v),!(b&&g===b.headingLevel));)b&&b.children!==void 0&&(v=b.children),E--;return g>=r.collapseDepth&&(m.isCollapsed=!0),v.push(m),v}function d(h,p){var m=p;r.ignoreSelector&&(m=p.split(",").map(function(g){return g.trim()+":not("+r.ignoreSelector+")"}));try{return h.querySelectorAll(m)}catch{return console.warn("Headers not found with selector: "+m),null}}function f(h){return n.call(h,function(p,m){var g=s(m);return g&&c(g,p.nest),p},{nest:[]})}return{nestHeadingsArray:f,selectHeadings:d}}}}),OL=yn({"../../node_modules/tocbot/src/js/update-toc-scroll.js"(e,t){t.exports=function(r){var n=r.tocElement||document.querySelector(r.tocSelector);if(n&&n.scrollHeight>n.clientHeight){var a=n.querySelector("."+r.activeListItemClass);a&&(n.scrollTop=a.offsetTop-r.tocScrollOffset)}}}}),PL=yn({"../../node_modules/tocbot/src/js/scroll-smooth/index.js"(e){e.initSmoothScrolling=t;function t(n){var a=n.duration,o=n.offset,i=location.hash?d(location.href):location.href;s();function s(){document.body.addEventListener("click",h,!1);function h(p){!c(p.target)||p.target.className.indexOf("no-smooth-scroll")>-1||p.target.href.charAt(p.target.href.length-2)==="#"&&p.target.href.charAt(p.target.href.length-1)==="!"||p.target.className.indexOf(n.linkClass)===-1||r(p.target.hash,{duration:a,offset:o,callback:function(){f(p.target.hash)}})}}function c(h){return h.tagName.toLowerCase()==="a"&&(h.hash.length>0||h.href.charAt(h.href.length-1)==="#")&&(d(h.href)===i||d(h.href)+"#"===i)}function d(h){return h.slice(0,h.lastIndexOf("#"))}function f(h){var p=document.getElementById(h.substring(1));p&&(/^(?:a|select|input|button|textarea)$/i.test(p.tagName)||(p.tabIndex=-1),p.focus())}}function r(n,a){var o=window.pageYOffset,i={duration:a.duration,offset:a.offset||0,callback:a.callback,easing:a.easing||g},s=document.querySelector('[id="'+decodeURI(n).split("#").join("")+'"]')||document.querySelector('[id="'+n.split("#").join("")+'"]'),c=typeof n=="string"?i.offset+(n?s&&s.getBoundingClientRect().top||0:-(document.documentElement.scrollTop||document.body.scrollTop)):n,d=typeof i.duration=="function"?i.duration(c):i.duration,f,h;requestAnimationFrame(function(v){f=v,p(v)});function p(v){h=v-f,window.scrollTo(0,i.easing(h,o,c,d)),h"u"&&!h)return;var p,m=Object.prototype.hasOwnProperty;function g(){for(var E={},D=0;D=0&&a<1?(s=o,c=i):a>=1&&a<2?(s=i,c=o):a>=2&&a<3?(c=o,d=i):a>=3&&a<4?(c=i,d=o):a>=4&&a<5?(s=i,d=o):a>=5&&a<6&&(s=o,d=i);var f=r-o/2,h=s+f,p=c+f,m=d+f;return n(h,p,m)}var _4={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"00ffff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"0000ff",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"00ffff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"ff00ff",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"639",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"};function qL(e){if(typeof e!="string")return e;var t=e.toLowerCase();return _4[t]?"#"+_4[t]:e}var WL=/^#[a-fA-F0-9]{6}$/,GL=/^#[a-fA-F0-9]{8}$/,KL=/^#[a-fA-F0-9]{3}$/,YL=/^#[a-fA-F0-9]{4}$/,P0=/^rgb\(\s*(\d{1,3})\s*(?:,)?\s*(\d{1,3})\s*(?:,)?\s*(\d{1,3})\s*\)$/i,ZL=/^rgb(?:a)?\(\s*(\d{1,3})\s*(?:,)?\s*(\d{1,3})\s*(?:,)?\s*(\d{1,3})\s*(?:,|\/)\s*([-+]?\d*[.]?\d+[%]?)\s*\)$/i,JL=/^hsl\(\s*(\d{0,3}[.]?[0-9]+(?:deg)?)\s*(?:,)?\s*(\d{1,3}[.]?[0-9]?)%\s*(?:,)?\s*(\d{1,3}[.]?[0-9]?)%\s*\)$/i,XL=/^hsl(?:a)?\(\s*(\d{0,3}[.]?[0-9]+(?:deg)?)\s*(?:,)?\s*(\d{1,3}[.]?[0-9]?)%\s*(?:,)?\s*(\d{1,3}[.]?[0-9]?)%\s*(?:,|\/)\s*([-+]?\d*[.]?\d+[%]?)\s*\)$/i;function hu(e){if(typeof e!="string")throw new Pt(3);var t=qL(e);if(t.match(WL))return{red:parseInt(""+t[1]+t[2],16),green:parseInt(""+t[3]+t[4],16),blue:parseInt(""+t[5]+t[6],16)};if(t.match(GL)){var r=parseFloat((parseInt(""+t[7]+t[8],16)/255).toFixed(2));return{red:parseInt(""+t[1]+t[2],16),green:parseInt(""+t[3]+t[4],16),blue:parseInt(""+t[5]+t[6],16),alpha:r}}if(t.match(KL))return{red:parseInt(""+t[1]+t[1],16),green:parseInt(""+t[2]+t[2],16),blue:parseInt(""+t[3]+t[3],16)};if(t.match(YL)){var n=parseFloat((parseInt(""+t[4]+t[4],16)/255).toFixed(2));return{red:parseInt(""+t[1]+t[1],16),green:parseInt(""+t[2]+t[2],16),blue:parseInt(""+t[3]+t[3],16),alpha:n}}var a=P0.exec(t);if(a)return{red:parseInt(""+a[1],10),green:parseInt(""+a[2],10),blue:parseInt(""+a[3],10)};var o=ZL.exec(t.substring(0,50));if(o)return{red:parseInt(""+o[1],10),green:parseInt(""+o[2],10),blue:parseInt(""+o[3],10),alpha:parseFloat(""+o[4])>1?parseFloat(""+o[4])/100:parseFloat(""+o[4])};var i=JL.exec(t);if(i){var s=parseInt(""+i[1],10),c=parseInt(""+i[2],10)/100,d=parseInt(""+i[3],10)/100,f="rgb("+gs(s,c,d)+")",h=P0.exec(f);if(!h)throw new Pt(4,t,f);return{red:parseInt(""+h[1],10),green:parseInt(""+h[2],10),blue:parseInt(""+h[3],10)}}var p=XL.exec(t.substring(0,50));if(p){var m=parseInt(""+p[1],10),g=parseInt(""+p[2],10)/100,v=parseInt(""+p[3],10)/100,b="rgb("+gs(m,g,v)+")",C=P0.exec(b);if(!C)throw new Pt(4,t,b);return{red:parseInt(""+C[1],10),green:parseInt(""+C[2],10),blue:parseInt(""+C[3],10),alpha:parseFloat(""+p[4])>1?parseFloat(""+p[4])/100:parseFloat(""+p[4])}}throw new Pt(5)}function QL(e){var t=e.red/255,r=e.green/255,n=e.blue/255,a=Math.max(t,r,n),o=Math.min(t,r,n),i=(a+o)/2;if(a===o)return e.alpha!==void 0?{hue:0,saturation:0,lightness:i,alpha:e.alpha}:{hue:0,saturation:0,lightness:i};var s,c=a-o,d=i>.5?c/(2-a-o):c/(a+o);switch(a){case t:s=(r-n)/c+(r=1?pC(e.hue,e.saturation,e.lightness):"rgba("+gs(e.hue,e.saturation,e.lightness)+","+e.alpha+")";throw new Pt(2)}function fC(e,t,r){if(typeof e=="number"&&typeof t=="number"&&typeof r=="number")return j1("#"+Zr(e)+Zr(t)+Zr(r));if(typeof e=="object"&&t===void 0&&r===void 0)return j1("#"+Zr(e.red)+Zr(e.green)+Zr(e.blue));throw new Pt(6)}function ar(e,t,r,n){if(typeof e=="string"&&typeof t=="number"){var a=hu(e);return"rgba("+a.red+","+a.green+","+a.blue+","+t+")"}else if(typeof e=="object"&&t===void 0&&r===void 0&&n===void 0)return e.alpha>=1?fC(e.red,e.green,e.blue):"rgba("+e.red+","+e.green+","+e.blue+","+e.alpha+")";throw new Pt(7)}var aM=function(e){return typeof e.red=="number"&&typeof e.green=="number"&&typeof e.blue=="number"&&(typeof e.alpha!="number"||typeof e.alpha>"u")},oM=function(e){return typeof e.red=="number"&&typeof e.green=="number"&&typeof e.blue=="number"&&typeof e.alpha=="number"},iM=function(e){return typeof e.hue=="number"&&typeof e.saturation=="number"&&typeof e.lightness=="number"&&(typeof e.alpha!="number"||typeof e.alpha>"u")},lM=function(e){return typeof e.hue=="number"&&typeof e.saturation=="number"&&typeof e.lightness=="number"&&typeof e.alpha=="number"};function hC(e){if(typeof e!="object")throw new Pt(8);if(oM(e))return ar(e);if(aM(e))return fC(e);if(lM(e))return nM(e);if(iM(e))return rM(e);throw new Pt(8)}function mC(e,t,r){return function(){var n=r.concat(Array.prototype.slice.call(arguments));return n.length>=t?e.apply(this,n):mC(e,t,n)}}function mu(e){return mC(e,e.length,[])}function gu(e,t,r){return Math.max(e,Math.min(t,r))}function sM(e,t){if(t==="transparent")return t;var r=dC(t);return hC(Ca({},r,{lightness:gu(0,1,r.lightness-parseFloat(e))}))}var uM=mu(sM),It=uM;function cM(e,t){if(t==="transparent")return t;var r=dC(t);return hC(Ca({},r,{lightness:gu(0,1,r.lightness+parseFloat(e))}))}var dM=mu(cM),Jr=dM;function pM(e,t){if(t==="transparent")return t;var r=hu(t),n=typeof r.alpha=="number"?r.alpha:1,a=Ca({},r,{alpha:gu(0,1,(n*100+parseFloat(e)*100)/100)});return ar(a)}var fM=mu(pM),Ji=fM;function hM(e,t){if(t==="transparent")return t;var r=hu(t),n=typeof r.alpha=="number"?r.alpha:1,a=Ca({},r,{alpha:gu(0,1,+(n*100-parseFloat(e)*100).toFixed(2)/100)});return ar(a)}var mM=mu(hM),oe=mM,gM=k.div(se,({theme:e})=>({backgroundColor:e.base==="light"?"rgba(0,0,0,.01)":"rgba(255,255,255,.01)",borderRadius:e.appBorderRadius,border:`1px dashed ${e.appBorderColor}`,display:"flex",alignItems:"center",justifyContent:"center",padding:20,margin:"25px 0 40px",color:oe(.3,e.color.defaultText),fontSize:e.typography.size.s2})),gC=e=>y.createElement(gM,{...e,className:"docblock-emptyblock sb-unstyled"}),vM=k(lu)(({theme:e})=>({fontSize:`${e.typography.size.s2-1}px`,lineHeight:"19px",margin:"25px 0 40px",borderRadius:e.appBorderRadius,boxShadow:e.base==="light"?"rgba(0, 0, 0, 0.10) 0 1px 3px 0":"rgba(0, 0, 0, 0.20) 0 2px 5px 0","pre.prismjs":{padding:20,background:"inherit"}})),yM=k.div(({theme:e})=>({background:e.background.content,borderRadius:e.appBorderRadius,border:`1px solid ${e.appBorderColor}`,boxShadow:e.base==="light"?"rgba(0, 0, 0, 0.10) 0 1px 3px 0":"rgba(0, 0, 0, 0.20) 0 2px 5px 0",margin:"25px 0 40px",padding:"20px 20px 20px 22px"})),Xi=k.div(({theme:e})=>({animation:`${e.animation.glow} 1.5s ease-in-out infinite`,background:e.appBorderColor,height:17,marginTop:1,width:"60%",[`&:first-child${ed}`]:{margin:0}})),bM=()=>y.createElement(yM,null,y.createElement(Xi,null),y.createElement(Xi,{style:{width:"80%"}}),y.createElement(Xi,{style:{width:"30%"}}),y.createElement(Xi,{style:{width:"80%"}})),vC=({isLoading:e,error:t,language:r,code:n,dark:a,format:o=!1,...i})=>{let{typography:s}=I3();if(e)return y.createElement(bM,null);if(t)return y.createElement(gC,null,t);let c=y.createElement(vM,{bordered:!0,copyable:!0,format:o,language:r,className:"docblock-source sb-unstyled",...i},n);if(typeof a>"u")return c;let d=a?X0.dark:X0.light;return y.createElement(z3,{theme:Q0({...d,fontCode:s.fonts.mono,fontBase:s.fonts.base})},c)},he=e=>`& :where(${e}:not(.sb-anchor, .sb-unstyled, .sb-unstyled ${e}))`,bh=600,wM=k.h1(se,({theme:e})=>({color:e.color.defaultText,fontSize:e.typography.size.m3,fontWeight:e.typography.weight.bold,lineHeight:"32px",[`@media (min-width: ${bh}px)`]:{fontSize:e.typography.size.l1,lineHeight:"36px",marginBottom:"16px"}})),DM=k.h2(se,({theme:e})=>({fontWeight:e.typography.weight.regular,fontSize:e.typography.size.s3,lineHeight:"20px",borderBottom:"none",marginBottom:15,[`@media (min-width: ${bh}px)`]:{fontSize:e.typography.size.m1,lineHeight:"28px",marginBottom:24},color:oe(.25,e.color.defaultText)})),EM=k.div(({theme:e})=>{let t={fontFamily:e.typography.fonts.base,fontSize:e.typography.size.s3,margin:0,WebkitFontSmoothing:"antialiased",MozOsxFontSmoothing:"grayscale",WebkitTapHighlightColor:"rgba(0, 0, 0, 0)",WebkitOverflowScrolling:"touch"},r={margin:"20px 0 8px",padding:0,cursor:"text",position:"relative",color:e.color.defaultText,"&:first-of-type":{marginTop:0,paddingTop:0},"&:hover a.anchor":{textDecoration:"none"},"& code":{fontSize:"inherit"}},n={lineHeight:1,margin:"0 2px",padding:"3px 5px",whiteSpace:"nowrap",borderRadius:3,fontSize:e.typography.size.s2-1,border:e.base==="light"?`1px solid ${e.color.mediumlight}`:`1px solid ${e.color.darker}`,color:e.base==="light"?oe(.1,e.color.defaultText):oe(.3,e.color.defaultText),backgroundColor:e.base==="light"?e.color.lighter:e.color.border};return{maxWidth:1e3,width:"100%",[he("a")]:{...t,fontSize:"inherit",lineHeight:"24px",color:e.color.secondary,textDecoration:"none","&.absent":{color:"#cc0000"},"&.anchor":{display:"block",paddingLeft:30,marginLeft:-30,cursor:"pointer",position:"absolute",top:0,left:0,bottom:0}},[he("blockquote")]:{...t,margin:"16px 0",borderLeft:`4px solid ${e.color.medium}`,padding:"0 15px",color:e.color.dark,"& > :first-of-type":{marginTop:0},"& > :last-child":{marginBottom:0}},[he("div")]:t,[he("dl")]:{...t,margin:"16px 0",padding:0,"& dt":{fontSize:"14px",fontWeight:"bold",fontStyle:"italic",padding:0,margin:"16px 0 4px"},"& dt:first-of-type":{padding:0},"& dt > :first-of-type":{marginTop:0},"& dt > :last-child":{marginBottom:0},"& dd":{margin:"0 0 16px",padding:"0 15px"},"& dd > :first-of-type":{marginTop:0},"& dd > :last-child":{marginBottom:0}},[he("h1")]:{...t,...r,fontSize:`${e.typography.size.l1}px`,fontWeight:e.typography.weight.bold},[he("h2")]:{...t,...r,fontSize:`${e.typography.size.m2}px`,paddingBottom:4,borderBottom:`1px solid ${e.appBorderColor}`},[he("h3")]:{...t,...r,fontSize:`${e.typography.size.m1}px`,fontWeight:e.typography.weight.bold},[he("h4")]:{...t,...r,fontSize:`${e.typography.size.s3}px`},[he("h5")]:{...t,...r,fontSize:`${e.typography.size.s2}px`},[he("h6")]:{...t,...r,fontSize:`${e.typography.size.s2}px`,color:e.color.dark},[he("hr")]:{border:"0 none",borderTop:`1px solid ${e.appBorderColor}`,height:4,padding:0},[he("img")]:{maxWidth:"100%"},[he("li")]:{...t,fontSize:e.typography.size.s2,color:e.color.defaultText,lineHeight:"24px","& + li":{marginTop:".25em"},"& ul, & ol":{marginTop:".25em",marginBottom:0},"& code":n},[he("ol")]:{...t,margin:"16px 0",paddingLeft:30,"& :first-of-type":{marginTop:0},"& :last-child":{marginBottom:0}},[he("p")]:{...t,margin:"16px 0",fontSize:e.typography.size.s2,lineHeight:"24px",color:e.color.defaultText,"& code":n},[he("pre")]:{...t,fontFamily:e.typography.fonts.mono,WebkitFontSmoothing:"antialiased",MozOsxFontSmoothing:"grayscale",lineHeight:"18px",padding:"11px 1rem",whiteSpace:"pre-wrap",color:"inherit",borderRadius:3,margin:"1rem 0","&:not(.prismjs)":{background:"transparent",border:"none",borderRadius:0,padding:0,margin:0},"& pre, &.prismjs":{padding:15,margin:0,whiteSpace:"pre-wrap",color:"inherit",fontSize:"13px",lineHeight:"19px",code:{color:"inherit",fontSize:"inherit"}},"& code":{whiteSpace:"pre"},"& code, & tt":{border:"none"}},[he("span")]:{...t,"&.frame":{display:"block",overflow:"hidden","& > span":{border:`1px solid ${e.color.medium}`,display:"block",float:"left",overflow:"hidden",margin:"13px 0 0",padding:7,width:"auto"},"& span img":{display:"block",float:"left"},"& span span":{clear:"both",color:e.color.darkest,display:"block",padding:"5px 0 0"}},"&.align-center":{display:"block",overflow:"hidden",clear:"both","& > span":{display:"block",overflow:"hidden",margin:"13px auto 0",textAlign:"center"},"& span img":{margin:"0 auto",textAlign:"center"}},"&.align-right":{display:"block",overflow:"hidden",clear:"both","& > span":{display:"block",overflow:"hidden",margin:"13px 0 0",textAlign:"right"},"& span img":{margin:0,textAlign:"right"}},"&.float-left":{display:"block",marginRight:13,overflow:"hidden",float:"left","& span":{margin:"13px 0 0"}},"&.float-right":{display:"block",marginLeft:13,overflow:"hidden",float:"right","& > span":{display:"block",overflow:"hidden",margin:"13px auto 0",textAlign:"right"}}},[he("table")]:{...t,margin:"16px 0",fontSize:e.typography.size.s2,lineHeight:"24px",padding:0,borderCollapse:"collapse","& tr":{borderTop:`1px solid ${e.appBorderColor}`,backgroundColor:e.appContentBg,margin:0,padding:0},"& tr:nth-of-type(2n)":{backgroundColor:e.base==="dark"?e.color.darker:e.color.lighter},"& tr th":{fontWeight:"bold",color:e.color.defaultText,border:`1px solid ${e.appBorderColor}`,margin:0,padding:"6px 13px"},"& tr td":{border:`1px solid ${e.appBorderColor}`,color:e.color.defaultText,margin:0,padding:"6px 13px"},"& tr th :first-of-type, & tr td :first-of-type":{marginTop:0},"& tr th :last-child, & tr td :last-child":{marginBottom:0}},[he("ul")]:{...t,margin:"16px 0",paddingLeft:30,"& :first-of-type":{marginTop:0},"& :last-child":{marginBottom:0},listStyle:"disc"}}}),CM=k.div(({theme:e})=>({background:e.background.content,display:"flex",justifyContent:"center",padding:"4rem 20px",minHeight:"100vh",boxSizing:"border-box",gap:"3rem",[`@media (min-width: ${bh}px)`]:{}})),xM=({children:e,toc:t})=>y.createElement(CM,{className:"sbdocs sbdocs-wrapper"},y.createElement(EM,{className:"sbdocs sbdocs-content"},e),t),vu=e=>({borderRadius:e.appBorderRadius,background:e.background.content,boxShadow:e.base==="light"?"rgba(0, 0, 0, 0.10) 0 1px 3px 0":"rgba(0, 0, 0, 0.20) 0 2px 5px 0",border:`1px solid ${e.appBorderColor}`}),{window:SM}=globalThis,FM=class extends l.Component{constructor(){super(...arguments),this.iframe=null}componentDidMount(){let{id:e}=this.props;this.iframe=SM.document.getElementById(e)}shouldComponentUpdate(e){let{scale:t}=e;return t!==this.props.scale&&this.setIframeBodyStyle({width:`${t*100}%`,height:`${t*100}%`,transform:`scale(${1/t})`,transformOrigin:"top left"}),!1}setIframeBodyStyle(e){return Object.assign(this.iframe.contentDocument.body.style,e)}render(){let{id:e,title:t,src:r,allowFullScreen:n,scale:a,...o}=this.props;return y.createElement("iframe",{id:e,title:t,src:r,...n?{allow:"fullscreen"}:{},loading:"lazy",...o})}},yC=l.createContext({scale:1}),{PREVIEW_URL:AM}=globalThis,kM=AM||"iframe.html",V1=({story:e,primary:t})=>`story--${e.id}${t?"--primary":""}`,_M=e=>{let t=l.useRef(),[r,n]=l.useState(!0),[a,o]=l.useState(),{story:i,height:s,autoplay:c,forceInitialArgs:d,renderStoryToElement:f}=e;return l.useEffect(()=>{if(!(i&&t.current))return()=>{};let h=t.current,p=f(i,h,{showMain:()=>{},showError:({title:m,description:g})=>o(new Error(`${m} - ${g}`)),showException:m=>o(m)},{autoplay:c,forceInitialArgs:d});return n(!1),()=>{Promise.resolve().then(()=>p())}},[c,f,i]),a?y.createElement("pre",null,y.createElement(W8,{error:a})):y.createElement(y.Fragment,null,s?y.createElement("style",null,`#${V1(e)} { min-height: ${s}; transform: translateZ(0); overflow: auto }`):null,r&&y.createElement(bC,null),y.createElement("div",{ref:t,id:`${V1(e)}-inner`,"data-name":i.name}))},BM=({story:e,height:t="500px"})=>y.createElement("div",{style:{width:"100%",height:t}},y.createElement(yC.Consumer,null,({scale:r})=>y.createElement(FM,{key:"iframe",id:`iframe--${e.id}`,title:e.name,src:oC(kM,e.id,{viewMode:"story"}),allowFullScreen:!0,scale:r,style:{width:"100%",height:"100%",border:"0 none"}}))),RM=k.strong(({theme:e})=>({color:e.color.orange})),IM=e=>{let{inline:t,story:r}=e;return t&&!e.autoplay&&r.usesMount?y.createElement(RM,null,"This story mounts inside of play. Set"," ",y.createElement("a",{href:"https://storybook.js.org/docs/api/doc-blocks/doc-block-story#autoplay"},"autoplay")," ","to true to view this story."):y.createElement("div",{id:V1(e),className:"sb-story sb-unstyled","data-story-block":"true"},t?y.createElement(_M,{...e}):y.createElement(BM,{...e}))},bC=()=>y.createElement(nC,null),zM=k(fu)({position:"absolute",left:0,right:0,top:0,transition:"transform .2s linear"}),TM=k.div({display:"flex",alignItems:"center",gap:4}),LM=k.div(({theme:e})=>({width:14,height:14,borderRadius:2,margin:"0 7px",backgroundColor:e.appBorderColor,animation:`${e.animation.glow} 1.5s ease-in-out infinite`})),MM=({isLoading:e,storyId:t,baseUrl:r,zoom:n,resetZoom:a,...o})=>y.createElement(zM,{...o},y.createElement(TM,{key:"left"},e?[1,2,3].map(i=>y.createElement(LM,{key:i})):y.createElement(y.Fragment,null,y.createElement(Fr,{key:"zoomin",onClick:i=>{i.preventDefault(),n(.8)},title:"Zoom in"},y.createElement(vL,null)),y.createElement(Fr,{key:"zoomout",onClick:i=>{i.preventDefault(),n(1.25)},title:"Zoom out"},y.createElement(yL,null)),y.createElement(Fr,{key:"zoomreset",onClick:i=>{i.preventDefault(),a()},title:"Reset zoom"},y.createElement(bL,null))))),OM=k.div(({isColumn:e,columns:t,layout:r})=>({display:e||!t?"block":"flex",position:"relative",flexWrap:"wrap",overflow:"auto",flexDirection:e?"column":"row","& .innerZoomElementWrapper > *":e?{width:r!=="fullscreen"?"calc(100% - 20px)":"100%",display:"block"}:{maxWidth:r!=="fullscreen"?"calc(100% - 20px)":"100%",display:"inline-block"}}),({layout:e="padded"})=>e==="centered"||e==="padded"?{padding:"30px 20px","& .innerZoomElementWrapper > *":{width:"auto",border:"10px solid transparent!important"}}:{},({layout:e="padded"})=>e==="centered"?{display:"flex",justifyContent:"center",justifyItems:"center",alignContent:"center",alignItems:"center"}:{},({columns:e})=>e&&e>1?{".innerZoomElementWrapper > *":{minWidth:`calc(100% / ${e} - 20px)`}}:{}),B4=k(vC)(({theme:e})=>({margin:0,borderTopLeftRadius:0,borderTopRightRadius:0,borderBottomLeftRadius:e.appBorderRadius,borderBottomRightRadius:e.appBorderRadius,border:"none",background:e.base==="light"?"rgba(0, 0, 0, 0.85)":It(.05,e.background.content),color:e.color.lightest,button:{background:e.base==="light"?"rgba(0, 0, 0, 0.85)":It(.05,e.background.content)}})),PM=k.div(({theme:e,withSource:t,isExpanded:r})=>({position:"relative",overflow:"hidden",margin:"25px 0 40px",...vu(e),borderBottomLeftRadius:t&&r&&0,borderBottomRightRadius:t&&r&&0,borderBottomWidth:r&&0,"h3 + &":{marginTop:"16px"}}),({withToolbar:e})=>e&&{paddingTop:40}),NM=(e,t,r)=>{switch(!0){case!!(e&&e.error):return{source:null,actionItem:{title:"No code available",className:"docblock-code-toggle docblock-code-toggle--disabled",disabled:!0,onClick:()=>r(!1)}};case t:return{source:y.createElement(B4,{...e,dark:!0}),actionItem:{title:"Hide code",className:"docblock-code-toggle docblock-code-toggle--expanded",onClick:()=>r(!1)}};default:return{source:y.createElement(B4,{...e,dark:!0}),actionItem:{title:"Show code",className:"docblock-code-toggle",onClick:()=>r(!0)}}}};function $M(e){if(l.Children.count(e)===1){let t=e;if(t.props)return t.props.id}return null}var HM=k(MM)({position:"absolute",top:0,left:0,right:0,height:40}),jM=k.div({overflow:"hidden",position:"relative"}),wC=({isLoading:e,isColumn:t,columns:r,children:n,withSource:a,withToolbar:o=!1,isExpanded:i=!1,additionalActions:s,className:c,layout:d="padded",...f})=>{let[h,p]=l.useState(i),{source:m,actionItem:g}=NM(a,h,p),[v,b]=l.useState(1),C=[c].concat(["sbdocs","sbdocs-preview","sb-unstyled"]),E=a?[g]:[],[D,w]=l.useState(s?[...s]:[]),x=[...E,...D],{window:S}=globalThis,F=l.useCallback(async _=>{let{createCopyToClipboardFunction:R}=await X1(async()=>{const{createCopyToClipboardFunction:I}=await Promise.resolve().then(()=>gL);return{createCopyToClipboardFunction:I}},void 0,import.meta.url);R()},[]),A=_=>{let R=S.getSelection();R&&R.type==="Range"||(_.preventDefault(),D.filter(I=>I.title==="Copied").length===0&&F(m.props.code).then(()=>{w([...D,{title:"Copied",onClick:()=>{}}]),S.setTimeout(()=>w(D.filter(I=>I.title!=="Copied")),1500)}))};return y.createElement(PM,{withSource:a,withToolbar:o,...f,className:C.join(" ")},o&&y.createElement(HM,{isLoading:e,border:!0,zoom:_=>b(v*_),resetZoom:()=>b(1),storyId:$M(n),baseUrl:"./iframe.html"}),y.createElement(yC.Provider,{value:{scale:v}},y.createElement(jM,{className:"docs-story",onCopyCapture:a&&A},y.createElement(OM,{isColumn:t||!Array.isArray(n),columns:r,layout:d},y.createElement(q8.Element,{scale:v},Array.isArray(n)?n.map((_,R)=>y.createElement("div",{key:R},_)):y.createElement("div",null,n))),y.createElement(zs,{actionItems:x}))),a&&h&&m)};k(wC)(()=>({".docs-story":{paddingTop:32,paddingBottom:40}}));function Qr(){return Qr=Object.assign?Object.assign.bind():function(e){for(var t=1;t(e[t.toLowerCase()]=t,e),{class:"className",for:"htmlFor"}),z4={amp:"&",apos:"'",gt:">",lt:"<",nbsp:" ",quot:"“"},UM=["style","script"],qM=/([-A-Z0-9_:]+)(?:\s*=\s*(?:(?:"((?:\\.|[^"])*)")|(?:'((?:\\.|[^'])*)')|(?:\{((?:\\.|{[^}]*?}|[^}])*)\})))?/gi,WM=/mailto:/i,GM=/\n{2,}$/,DC=/^(\s*>[\s\S]*?)(?=\n\n|$)/,KM=/^ *> ?/gm,YM=/^(?:\[!([^\]]*)\]\n)?([\s\S]*)/,ZM=/^ {2,}\n/,JM=/^(?:( *[-*_])){3,} *(?:\n *)+\n/,EC=/^(?: {1,3})?(`{3,}|~{3,}) *(\S+)? *([^\n]*?)?\n([\s\S]*?)(?:\1\n?|$)/,CC=/^(?: {4}[^\n]+\n*)+(?:\n *)+\n?/,XM=/^(`+)\s*([\s\S]*?[^`])\s*\1(?!`)/,QM=/^(?:\n *)*\n/,eO=/\r\n?/g,tO=/^\[\^([^\]]+)](:(.*)((\n+ {4,}.*)|(\n(?!\[\^).+))*)/,rO=/^\[\^([^\]]+)]/,nO=/\f/g,aO=/^---[ \t]*\n(.|\n)*\n---[ \t]*\n/,oO=/^\s*?\[(x|\s)\]/,xC=/^ *(#{1,6}) *([^\n]+?)(?: +#*)?(?:\n *)*(?:\n|$)/,SC=/^ *(#{1,6}) +([^\n]+?)(?: +#*)?(?:\n *)*(?:\n|$)/,FC=/^([^\n]+)\n *(=|-){3,} *(?:\n *)+\n/,U1=/^ *(?!<[a-z][^ >/]* ?\/>)<([a-z][^ >/]*) ?((?:[^>]*[^/])?)>\n?(\s*(?:<\1[^>]*?>[\s\S]*?<\/\1>|(?!<\1\b)[\s\S])*?)<\/\1>(?!<\/\1>)\n*/i,iO=/&([a-z0-9]+|#[0-9]{1,6}|#x[0-9a-fA-F]{1,6});/gi,AC=/^)/,lO=/^(data|aria|x)-[a-z_][a-z\d_.-]*$/,q1=/^ *<([a-z][a-z0-9:]*)(?:\s+((?:<.*?>|[^>])*))?\/?>(?!<\/\1>)(\s*\n)?/i,sO=/^\{.*\}$/,uO=/^(https?:\/\/[^\s<]+[^<.,:;"')\]\s])/,cO=/^<([^ >]+@[^ >]+)>/,dO=/^<([^ >]+:\/[^ >]+)>/,pO=/-([a-z])?/gi,kC=/^(\|.*)\n(?: *(\|? *[-:]+ *\|[-| :]*)\n((?:.*\|.*\n)*))?\n?/,fO=/^\[([^\]]*)\]:\s+]+)>?\s*("([^"]*)")?/,hO=/^!\[([^\]]*)\] ?\[([^\]]*)\]/,mO=/^\[([^\]]*)\] ?\[([^\]]*)\]/,gO=/(\n|^[-*]\s|^#|^ {2,}|^-{2,}|^>\s)/,vO=/\t/g,yO=/(^ *\||\| *$)/g,bO=/^ *:-+: *$/,wO=/^ *:-+ *$/,DO=/^ *-+: *$/,yu="((?:\\[.*?\\][([].*?[)\\]]|<.*?>(?:.*?<.*?>)?|`.*?`|~~.*?~~|==.*?==|.|\\n)*?)",EO=new RegExp(`^([*_])\\1${yu}\\1\\1(?!\\1)`),CO=new RegExp(`^([*_])${yu}\\1(?!\\1|\\w)`),xO=new RegExp(`^==${yu}==`),SO=new RegExp(`^~~${yu}~~`),FO=/^\\([^0-9A-Za-z\s])/,AO=/^[\s\S]+?(?=[^0-9A-Z\s\u00c0-\uffff&#;.()'"]|\d+\.|\n\n| {2,}\n|\w+:\S|$)/i,kO=/^\n+/,_O=/^([ \t]*)/,BO=/\\([^\\])/g,T4=/ *\n+$/,RO=/(?:^|\n)( *)$/,wh="(?:\\d+\\.)",Dh="(?:[*+-])";function _C(e){return"( *)("+(e===1?wh:Dh)+") +"}var BC=_C(1),RC=_C(2);function IC(e){return new RegExp("^"+(e===1?BC:RC))}var IO=IC(1),zO=IC(2);function zC(e){return new RegExp("^"+(e===1?BC:RC)+"[^\\n]*(?:\\n(?!\\1"+(e===1?wh:Dh)+" )[^\\n]*)*(\\n|$)","gm")}var TC=zC(1),LC=zC(2);function MC(e){let t=e===1?wh:Dh;return new RegExp("^( *)("+t+") [\\s\\S]+?(?:\\n{2,}(?! )(?!\\1"+t+" (?!"+t+" ))\\n*|\\s*\\n*$)")}var OC=MC(1),PC=MC(2);function L4(e,t){let r=t===1,n=r?OC:PC,a=r?TC:LC,o=r?IO:zO;return{match(i,s){let c=RO.exec(s.prevCapture);return c&&(s.list||!s.inline&&!s.simple)?n.exec(i=c[1]+i):null},order:1,parse(i,s,c){let d=r?+i[2]:void 0,f=i[0].replace(GM,` +`).match(a),h=!1;return{items:f.map(function(p,m){let g=o.exec(p)[0].length,v=new RegExp("^ {1,"+g+"}","gm"),b=p.replace(v,"").replace(o,""),C=m===f.length-1,E=b.indexOf(` + +`)!==-1||C&&h;h=E;let D=c.inline,w=c.list,x;c.list=!0,E?(c.inline=!1,x=b.replace(T4,` + +`)):(c.inline=!0,x=b.replace(T4,""));let S=s(x,c);return c.inline=D,c.list=w,S}),ordered:r,start:d}},render:(i,s,c)=>e(i.ordered?"ol":"ul",{key:c.key,start:i.type===j.orderedList?i.start:void 0},i.items.map(function(d,f){return e("li",{key:f},s(d,c))}))}}var TO=new RegExp(`^\\[((?:\\[[^\\]]*\\]|[^\\[\\]]|\\](?=[^\\[]*\\]))*)\\]\\(\\s*?(?:\\s+['"]([\\s\\S]*?)['"])?\\s*\\)`),LO=/^!\[(.*?)\]\( *((?:\([^)]*\)|[^() ])*) *"?([^)"]*)?"?\)/,NC=[DC,EC,CC,xC,FC,SC,AC,kC,TC,OC,LC,PC],MO=[...NC,/^[^\n]+(?: \n|\n{2,})/,U1,q1];function oo(e){return e.replace(/[ÀÁÂÃÄÅàáâãä忯]/g,"a").replace(/[çÇ]/g,"c").replace(/[ðÐ]/g,"d").replace(/[ÈÉÊËéèêë]/g,"e").replace(/[ÏïÎîÍíÌì]/g,"i").replace(/[Ññ]/g,"n").replace(/[øØœŒÕõÔôÓóÒò]/g,"o").replace(/[ÜüÛûÚúÙù]/g,"u").replace(/[ŸÿÝý]/g,"y").replace(/[^a-z0-9- ]/gi,"").replace(/ /gi,"-").toLowerCase()}function OO(e){return DO.test(e)?"right":bO.test(e)?"center":wO.test(e)?"left":null}function M4(e,t,r,n){let a=r.inTable;r.inTable=!0;let o=e.trim().split(/( *(?:`[^`]*`|\\\||\|) *)/).reduce((s,c)=>(c.trim()==="|"?s.push(n?{type:j.tableSeparator}:{type:j.text,text:c}):c!==""&&s.push.apply(s,t(c,r)),s),[]);r.inTable=a;let i=[[]];return o.forEach(function(s,c){s.type===j.tableSeparator?c!==0&&c!==o.length-1&&i.push([]):(s.type!==j.text||o[c+1]!=null&&o[c+1].type!==j.tableSeparator||(s.text=s.text.trimEnd()),i[i.length-1].push(s))}),i}function PO(e,t,r){r.inline=!0;let n=e[2]?e[2].replace(yO,"").split("|").map(OO):[],a=e[3]?(function(i,s,c){return i.trim().split(` +`).map(function(d){return M4(d,s,c,!0)})})(e[3],t,r):[],o=M4(e[1],t,r,!!a.length);return r.inline=!1,a.length?{align:n,cells:a,header:o,type:j.table}:{children:o,type:j.paragraph}}function O4(e,t){return e.align[t]==null?{}:{textAlign:e.align[t]}}function fr(e){return function(t,r){return r.inline?e.exec(t):null}}function hr(e){return function(t,r){return r.inline||r.simple?e.exec(t):null}}function tr(e){return function(t,r){return r.inline||r.simple?null:e.exec(t)}}function io(e){return function(t){return e.exec(t)}}function NO(e,t){if(t.inline||t.simple)return null;let r="";e.split(` +`).every(a=>!NC.some(o=>o.test(a))&&(r+=a+` +`,a.trim()));let n=r.trimEnd();return n==""?null:[r,n]}function $O(e){try{if(decodeURIComponent(e).replace(/[^A-Za-z0-9/:]/g,"").match(/^\s*(javascript|vbscript|data(?!:image)):/i))return null}catch{return null}return e}function P4(e){return e.replace(BO,"$1")}function Cl(e,t,r){let n=r.inline||!1,a=r.simple||!1;r.inline=!0,r.simple=!0;let o=e(t,r);return r.inline=n,r.simple=a,o}function HO(e,t,r){let n=r.inline||!1,a=r.simple||!1;r.inline=!1,r.simple=!0;let o=e(t,r);return r.inline=n,r.simple=a,o}function jO(e,t,r){let n=r.inline||!1;r.inline=!1;let a=e(t,r);return r.inline=n,a}var $0=(e,t,r)=>({children:Cl(t,e[1],r)});function H0(){return{}}function j0(){return null}function VO(...e){return e.filter(Boolean).join(" ")}function V0(e,t,r){let n=e,a=t.split(".");for(;a.length&&(n=n[a[0]],n!==void 0);)a.shift();return n||r}function UO(e="",t={}){function r(p,m,...g){let v=V0(t.overrides,`${p}.props`,{});return t.createElement((function(b,C){let E=V0(C,b);return E?typeof E=="function"||typeof E=="object"&&"render"in E?E:V0(C,`${b}.component`,b):b})(p,t.overrides),Qr({},m,v,{className:VO(m==null?void 0:m.className,v.className)||void 0}),...g)}function n(p){p=p.replace(aO,"");let m=!1;t.forceInline?m=!0:t.forceBlock||(m=gO.test(p)===!1);let g=d(c(m?p:`${p.trimEnd().replace(kO,"")} + +`,{inline:m}));for(;typeof g[g.length-1]=="string"&&!g[g.length-1].trim();)g.pop();if(t.wrapper===null)return g;let v=t.wrapper||(m?"span":"div"),b;if(g.length>1||t.forceWrapper)b=g;else{if(g.length===1)return b=g[0],typeof b=="string"?r("span",{key:"outer"},b):b;b=null}return t.createElement(v,{key:"outer"},b)}function a(p,m){let g=m.match(qM);return g?g.reduce(function(v,b){let C=b.indexOf("=");if(C!==-1){let E=(function(S){return S.indexOf("-")!==-1&&S.match(lO)===null&&(S=S.replace(pO,function(F,A){return A.toUpperCase()})),S})(b.slice(0,C)).trim(),D=(function(S){let F=S[0];return(F==='"'||F==="'")&&S.length>=2&&S[S.length-1]===F?S.slice(1,-1):S})(b.slice(C+1).trim()),w=I4[E]||E;if(w==="ref")return v;let x=v[w]=(function(S,F,A,_){return F==="style"?A.split(/;\s?/).reduce(function(R,I){let T=I.slice(0,I.indexOf(":"));return R[T.trim().replace(/(-[a-z])/g,L=>L[1].toUpperCase())]=I.slice(T.length+1).trim(),R},{}):F==="href"||F==="src"?_(A,S,F):(A.match(sO)&&(A=A.slice(1,A.length-1)),A==="true"||A!=="false"&&A)})(p,E,D,t.sanitizer);typeof x=="string"&&(U1.test(x)||q1.test(x))&&(v[w]=n(x.trim()))}else b!=="style"&&(v[I4[b]||b]=!0);return v},{}):null}t.overrides=t.overrides||{},t.sanitizer=t.sanitizer||$O,t.slugify=t.slugify||oo,t.namedCodesToUnicode=t.namedCodesToUnicode?Qr({},z4,t.namedCodesToUnicode):z4,t.createElement=t.createElement||l.createElement;let o=[],i={},s={[j.blockQuote]:{match:tr(DC),order:1,parse(p,m,g){let[,v,b]=p[0].replace(KM,"").match(YM);return{alert:v,children:m(b,g)}},render(p,m,g){let v={key:g.key};return p.alert&&(v.className="markdown-alert-"+t.slugify(p.alert.toLowerCase(),oo),p.children.unshift({attrs:{},children:[{type:j.text,text:p.alert}],noInnerParse:!0,type:j.htmlBlock,tag:"header"})),r("blockquote",v,m(p.children,g))}},[j.breakLine]:{match:io(ZM),order:1,parse:H0,render:(p,m,g)=>r("br",{key:g.key})},[j.breakThematic]:{match:tr(JM),order:1,parse:H0,render:(p,m,g)=>r("hr",{key:g.key})},[j.codeBlock]:{match:tr(CC),order:0,parse:p=>({lang:void 0,text:p[0].replace(/^ {4}/gm,"").replace(/\n+$/,"")}),render:(p,m,g)=>r("pre",{key:g.key},r("code",Qr({},p.attrs,{className:p.lang?`lang-${p.lang}`:""}),p.text))},[j.codeFenced]:{match:tr(EC),order:0,parse:p=>({attrs:a("code",p[3]||""),lang:p[2]||void 0,text:p[4],type:j.codeBlock})},[j.codeInline]:{match:hr(XM),order:3,parse:p=>({text:p[2]}),render:(p,m,g)=>r("code",{key:g.key},p.text)},[j.footnote]:{match:tr(tO),order:0,parse:p=>(o.push({footnote:p[2],identifier:p[1]}),{}),render:j0},[j.footnoteReference]:{match:fr(rO),order:1,parse:p=>({target:`#${t.slugify(p[1],oo)}`,text:p[1]}),render:(p,m,g)=>r("a",{key:g.key,href:t.sanitizer(p.target,"a","href")},r("sup",{key:g.key},p.text))},[j.gfmTask]:{match:fr(oO),order:1,parse:p=>({completed:p[1].toLowerCase()==="x"}),render:(p,m,g)=>r("input",{checked:p.completed,key:g.key,readOnly:!0,type:"checkbox"})},[j.heading]:{match:tr(t.enforceAtxHeadings?SC:xC),order:1,parse:(p,m,g)=>({children:Cl(m,p[2],g),id:t.slugify(p[2],oo),level:p[1].length}),render:(p,m,g)=>r(`h${p.level}`,{id:p.id,key:g.key},m(p.children,g))},[j.headingSetext]:{match:tr(FC),order:0,parse:(p,m,g)=>({children:Cl(m,p[1],g),level:p[2]==="="?1:2,type:j.heading})},[j.htmlBlock]:{match:io(U1),order:1,parse(p,m,g){let[,v]=p[3].match(_O),b=new RegExp(`^${v}`,"gm"),C=p[3].replace(b,""),E=(D=C,MO.some(A=>A.test(D))?jO:Cl);var D;let w=p[1].toLowerCase(),x=UM.indexOf(w)!==-1,S=(x?w:p[1]).trim(),F={attrs:a(S,p[2]),noInnerParse:x,tag:S};return g.inAnchor=g.inAnchor||w==="a",x?F.text=p[3]:F.children=E(m,C,g),g.inAnchor=!1,F},render:(p,m,g)=>r(p.tag,Qr({key:g.key},p.attrs),p.text||(p.children?m(p.children,g):""))},[j.htmlSelfClosing]:{match:io(q1),order:1,parse(p){let m=p[1].trim();return{attrs:a(m,p[2]||""),tag:m}},render:(p,m,g)=>r(p.tag,Qr({},p.attrs,{key:g.key}))},[j.htmlComment]:{match:io(AC),order:1,parse:()=>({}),render:j0},[j.image]:{match:hr(LO),order:1,parse:p=>({alt:p[1],target:P4(p[2]),title:p[3]}),render:(p,m,g)=>r("img",{key:g.key,alt:p.alt||void 0,title:p.title||void 0,src:t.sanitizer(p.target,"img","src")})},[j.link]:{match:fr(TO),order:3,parse:(p,m,g)=>({children:HO(m,p[1],g),target:P4(p[2]),title:p[3]}),render:(p,m,g)=>r("a",{key:g.key,href:t.sanitizer(p.target,"a","href"),title:p.title},m(p.children,g))},[j.linkAngleBraceStyleDetector]:{match:fr(dO),order:0,parse:p=>({children:[{text:p[1],type:j.text}],target:p[1],type:j.link})},[j.linkBareUrlDetector]:{match:(p,m)=>m.inAnchor||t.disableAutoLink?null:fr(uO)(p,m),order:0,parse:p=>({children:[{text:p[1],type:j.text}],target:p[1],title:void 0,type:j.link})},[j.linkMailtoDetector]:{match:fr(cO),order:0,parse(p){let m=p[1],g=p[1];return WM.test(g)||(g="mailto:"+g),{children:[{text:m.replace("mailto:",""),type:j.text}],target:g,type:j.link}}},[j.orderedList]:L4(r,1),[j.unorderedList]:L4(r,2),[j.newlineCoalescer]:{match:tr(QM),order:3,parse:H0,render:()=>` +`},[j.paragraph]:{match:NO,order:3,parse:$0,render:(p,m,g)=>r("p",{key:g.key},m(p.children,g))},[j.ref]:{match:fr(fO),order:0,parse:p=>(i[p[1]]={target:p[2],title:p[4]},{}),render:j0},[j.refImage]:{match:hr(hO),order:0,parse:p=>({alt:p[1]||void 0,ref:p[2]}),render:(p,m,g)=>i[p.ref]?r("img",{key:g.key,alt:p.alt,src:t.sanitizer(i[p.ref].target,"img","src"),title:i[p.ref].title}):null},[j.refLink]:{match:fr(mO),order:0,parse:(p,m,g)=>({children:m(p[1],g),fallbackChildren:p[0],ref:p[2]}),render:(p,m,g)=>i[p.ref]?r("a",{key:g.key,href:t.sanitizer(i[p.ref].target,"a","href"),title:i[p.ref].title},m(p.children,g)):r("span",{key:g.key},p.fallbackChildren)},[j.table]:{match:tr(kC),order:1,parse:PO,render(p,m,g){let v=p;return r("table",{key:g.key},r("thead",null,r("tr",null,v.header.map(function(b,C){return r("th",{key:C,style:O4(v,C)},m(b,g))}))),r("tbody",null,v.cells.map(function(b,C){return r("tr",{key:C},b.map(function(E,D){return r("td",{key:D,style:O4(v,D)},m(E,g))}))})))}},[j.text]:{match:io(AO),order:4,parse:p=>({text:p[0].replace(iO,(m,g)=>t.namedCodesToUnicode[g]?t.namedCodesToUnicode[g]:m)}),render:p=>p.text},[j.textBolded]:{match:hr(EO),order:2,parse:(p,m,g)=>({children:m(p[2],g)}),render:(p,m,g)=>r("strong",{key:g.key},m(p.children,g))},[j.textEmphasized]:{match:hr(CO),order:3,parse:(p,m,g)=>({children:m(p[2],g)}),render:(p,m,g)=>r("em",{key:g.key},m(p.children,g))},[j.textEscaped]:{match:hr(FO),order:1,parse:p=>({text:p[1],type:j.text})},[j.textMarked]:{match:hr(xO),order:3,parse:$0,render:(p,m,g)=>r("mark",{key:g.key},m(p.children,g))},[j.textStrikethroughed]:{match:hr(SO),order:3,parse:$0,render:(p,m,g)=>r("del",{key:g.key},m(p.children,g))}};t.disableParsingRawHTML===!0&&(delete s[j.htmlBlock],delete s[j.htmlSelfClosing]);let c=(function(p){let m=Object.keys(p);function g(v,b){let C=[];for(b.prevCapture=b.prevCapture||"";v;){let E=0;for(;EC(g,v,b),g,v,b):C(g,v,b)}})(s,t.renderRule),function p(m,g={}){if(Array.isArray(m)){let v=g.key,b=[],C=!1;for(let E=0;E{let{children:t="",options:r}=e,n=(function(a,o){if(a==null)return{};var i,s,c={},d=Object.keys(a);for(s=0;s=0||(c[i]=a[i]);return c})(e,VM);return l.cloneElement(UO(t,r),n)},qO=k.label(({theme:e})=>({lineHeight:"18px",alignItems:"center",marginBottom:8,display:"inline-block",position:"relative",whiteSpace:"nowrap",background:e.boolean.background,borderRadius:"3em",padding:1,'&[aria-disabled="true"]':{opacity:.5,input:{cursor:"not-allowed"}},input:{appearance:"none",width:"100%",height:"100%",position:"absolute",left:0,top:0,margin:0,padding:0,border:"none",background:"transparent",cursor:"pointer",borderRadius:"3em","&:focus":{outline:"none",boxShadow:`${e.color.secondary} 0 0 0 1px inset !important`}},span:{textAlign:"center",fontSize:e.typography.size.s1,fontWeight:e.typography.weight.bold,lineHeight:"1",cursor:"pointer",display:"inline-block",padding:"7px 15px",transition:"all 100ms ease-out",userSelect:"none",borderRadius:"3em",color:oe(.5,e.color.defaultText),background:"transparent","&:hover":{boxShadow:`${Ji(.3,e.appBorderColor)} 0 0 0 1px inset`},"&:active":{boxShadow:`${Ji(.05,e.appBorderColor)} 0 0 0 2px inset`,color:Ji(1,e.appBorderColor)},"&:first-of-type":{paddingRight:8},"&:last-of-type":{paddingLeft:8}},"input:checked ~ span:last-of-type, input:not(:checked) ~ span:first-of-type":{background:e.boolean.selectedBackground,boxShadow:e.base==="light"?`${Ji(.1,e.appBorderColor)} 0 0 2px`:`${e.appBorderColor} 0 0 0 1px`,color:e.color.defaultText,padding:"7px 15px"}})),WO=e=>e==="true",GO=({name:e,value:t,onChange:r,onBlur:n,onFocus:a,argType:o})=>{var f;let i=l.useCallback(()=>r(!1),[r]),s=!!((f=o==null?void 0:o.table)!=null&&f.readonly);if(t===void 0)return y.createElement(Or,{variant:"outline",size:"medium",id:ys(e),onClick:i,disabled:s},"Set boolean");let c=bt(e),d=typeof t=="string"?WO(t):t;return y.createElement(qO,{"aria-disabled":s,htmlFor:c,"aria-label":e},y.createElement("input",{id:c,type:"checkbox",onChange:h=>r(h.target.checked),checked:d,role:"switch",disabled:s,name:e,onBlur:n,onFocus:a}),y.createElement("span",{"aria-hidden":"true"},"False"),y.createElement("span",{"aria-hidden":"true"},"True"))},KO=e=>{let[t,r,n]=e.split("-"),a=new Date;return a.setFullYear(parseInt(t,10),parseInt(r,10)-1,parseInt(n,10)),a},YO=e=>{let[t,r]=e.split(":"),n=new Date;return n.setHours(parseInt(t,10)),n.setMinutes(parseInt(r,10)),n},ZO=e=>{let t=new Date(e),r=`000${t.getFullYear()}`.slice(-4),n=`0${t.getMonth()+1}`.slice(-2),a=`0${t.getDate()}`.slice(-2);return`${r}-${n}-${a}`},JO=e=>{let t=new Date(e),r=`0${t.getHours()}`.slice(-2),n=`0${t.getMinutes()}`.slice(-2);return`${r}:${n}`},N4=k(Ma.Input)(({readOnly:e})=>({opacity:e?.5:1})),XO=k.div(({theme:e})=>({flex:1,display:"flex",input:{marginLeft:10,flex:1,height:32,"&::-webkit-calendar-picker-indicator":{opacity:.5,height:12,filter:e.base==="light"?void 0:"invert(1)"}},"input:first-of-type":{marginLeft:0,flexGrow:4},"input:last-of-type":{flexGrow:3}})),QO=({name:e,value:t,onChange:r,onFocus:n,onBlur:a,argType:o})=>{var g;let[i,s]=l.useState(!0),c=l.useRef(),d=l.useRef(),f=!!((g=o==null?void 0:o.table)!=null&&g.readonly);l.useEffect(()=>{i!==!1&&(c&&c.current&&(c.current.value=t?ZO(t):""),d&&d.current&&(d.current.value=t?JO(t):""))},[t]);let h=v=>{if(!v.target.value)return r();let b=KO(v.target.value),C=new Date(t);C.setFullYear(b.getFullYear(),b.getMonth(),b.getDate());let E=C.getTime();E&&r(E),s(!!E)},p=v=>{if(!v.target.value)return r();let b=YO(v.target.value),C=new Date(t);C.setHours(b.getHours()),C.setMinutes(b.getMinutes());let E=C.getTime();E&&r(E),s(!!E)},m=bt(e);return y.createElement(XO,null,y.createElement(N4,{type:"date",max:"9999-12-31",ref:c,id:`${m}-date`,name:`${m}-date`,readOnly:f,onChange:h,onFocus:n,onBlur:a}),y.createElement(N4,{type:"time",id:`${m}-time`,name:`${m}-time`,ref:d,onChange:p,readOnly:f,onFocus:n,onBlur:a}),i?null:y.createElement("div",null,"invalid"))},eP=k.label({display:"flex"}),tP=e=>{let t=parseFloat(e);return Number.isNaN(t)?void 0:t},rP=k(Ma.Input)(({readOnly:e})=>({opacity:e?.5:1})),nP=({name:e,value:t,onChange:r,min:n,max:a,step:o,onBlur:i,onFocus:s,argType:c})=>{var D;let[d,f]=l.useState(typeof t=="number"?t:""),[h,p]=l.useState(!1),[m,g]=l.useState(null),v=!!((D=c==null?void 0:c.table)!=null&&D.readonly),b=l.useCallback(w=>{f(w.target.value);let x=parseFloat(w.target.value);Number.isNaN(x)?g(new Error(`'${w.target.value}' is not a number`)):(r(x),g(null))},[r,g]),C=l.useCallback(()=>{f("0"),r(0),p(!0)},[p]),E=l.useRef(null);return l.useEffect(()=>{h&&E.current&&E.current.select()},[h]),l.useEffect(()=>{d!==(typeof t=="number"?t:"")&&f(t)},[t]),t===void 0?y.createElement(Or,{variant:"outline",size:"medium",id:ys(e),onClick:C,disabled:v},"Set number"):y.createElement(eP,null,y.createElement(rP,{ref:E,id:bt(e),type:"number",onChange:b,size:"flex",placeholder:"Edit number...",value:d,valid:m?"error":null,autoFocus:h,readOnly:v,name:e,min:n,max:a,step:o,onFocus:s,onBlur:i}))},HC=(e,t)=>{let r=t&&Object.entries(t).find(([n,a])=>a===e);return r?r[0]:void 0},W1=(e,t)=>e&&t?Object.entries(t).filter(r=>e.includes(r[1])).map(r=>r[0]):[],jC=(e,t)=>e&&t&&e.map(r=>t[r]),aP=k.div(({isInline:e})=>e?{display:"flex",flexWrap:"wrap",alignItems:"flex-start",label:{display:"inline-flex",marginRight:15}}:{label:{display:"flex"}},e=>{if(e["aria-readonly"]==="true")return{input:{cursor:"not-allowed"}}}),oP=k.span({"[aria-readonly=true] &":{opacity:.5}}),iP=k.label({lineHeight:"20px",alignItems:"center",marginBottom:8,"&:last-child":{marginBottom:0},input:{margin:0,marginRight:6}}),$4=({name:e,options:t,value:r,onChange:n,isInline:a,argType:o})=>{var p;if(!t)return yh.warn(`Checkbox with no options: ${e}`),y.createElement(y.Fragment,null,"-");let i=W1(r,t),[s,c]=l.useState(i),d=!!((p=o==null?void 0:o.table)!=null&&p.readonly),f=m=>{let g=m.target.value,v=[...s];v.includes(g)?v.splice(v.indexOf(g),1):v.push(g),n(jC(v,t)),c(v)};l.useEffect(()=>{c(W1(r,t))},[r]);let h=bt(e);return y.createElement(aP,{"aria-readonly":d,isInline:a},Object.keys(t).map((m,g)=>{let v=`${h}-${g}`;return y.createElement(iP,{key:v,htmlFor:v},y.createElement("input",{type:"checkbox",disabled:d,id:v,name:v,value:m,onChange:f,checked:s==null?void 0:s.includes(m)}),y.createElement(oP,null,m))}))},lP=k.div(({isInline:e})=>e?{display:"flex",flexWrap:"wrap",alignItems:"flex-start",label:{display:"inline-flex",marginRight:15}}:{label:{display:"flex"}},e=>{if(e["aria-readonly"]==="true")return{input:{cursor:"not-allowed"}}}),sP=k.span({"[aria-readonly=true] &":{opacity:.5}}),uP=k.label({lineHeight:"20px",alignItems:"center",marginBottom:8,"&:last-child":{marginBottom:0},input:{margin:0,marginRight:6}}),H4=({name:e,options:t,value:r,onChange:n,isInline:a,argType:o})=>{var d;if(!t)return yh.warn(`Radio with no options: ${e}`),y.createElement(y.Fragment,null,"-");let i=HC(r,t),s=bt(e),c=!!((d=o==null?void 0:o.table)!=null&&d.readonly);return y.createElement(lP,{"aria-readonly":c,isInline:a},Object.keys(t).map((f,h)=>{let p=`${s}-${h}`;return y.createElement(uP,{key:p,htmlFor:p},y.createElement("input",{type:"radio",id:p,name:s,disabled:c,value:f,onChange:m=>n(t[m.currentTarget.value]),checked:f===i}),y.createElement(sP,null,f))}))},cP={appearance:"none",border:"0 none",boxSizing:"inherit",display:" block",margin:" 0",background:"transparent",padding:0,fontSize:"inherit",position:"relative"},VC=k.select(cP,({theme:e})=>({boxSizing:"border-box",position:"relative",padding:"6px 10px",width:"100%",color:e.input.color||"inherit",background:e.input.background,borderRadius:e.input.borderRadius,boxShadow:`${e.input.border} 0 0 0 1px inset`,fontSize:e.typography.size.s2-1,lineHeight:"20px","&:focus":{boxShadow:`${e.color.secondary} 0 0 0 1px inset`,outline:"none"},"&[disabled]":{cursor:"not-allowed",opacity:.5},"::placeholder":{color:e.textMutedColor},"&[multiple]":{overflow:"auto",padding:0,option:{display:"block",padding:"6px 10px",marginLeft:1,marginRight:1}}})),UC=k.span(({theme:e})=>({display:"inline-block",lineHeight:"normal",overflow:"hidden",position:"relative",verticalAlign:"top",width:"100%",svg:{position:"absolute",zIndex:1,pointerEvents:"none",height:"12px",marginTop:"-6px",right:"12px",top:"50%",fill:e.textMutedColor,path:{fill:e.textMutedColor}}})),j4="Choose option...",dP=({name:e,value:t,options:r,onChange:n,argType:a})=>{var d;let o=f=>{n(r[f.currentTarget.value])},i=HC(t,r)||j4,s=bt(e),c=!!((d=a==null?void 0:a.table)!=null&&d.readonly);return y.createElement(UC,null,y.createElement(lC,null),y.createElement(VC,{disabled:c,id:s,value:i,onChange:o},y.createElement("option",{key:"no-selection",disabled:!0},j4),Object.keys(r).map(f=>y.createElement("option",{key:f,value:f},f))))},pP=({name:e,value:t,options:r,onChange:n,argType:a})=>{var d;let o=f=>{let h=Array.from(f.currentTarget.options).filter(p=>p.selected).map(p=>p.value);n(jC(h,r))},i=W1(t,r),s=bt(e),c=!!((d=a==null?void 0:a.table)!=null&&d.readonly);return y.createElement(UC,null,y.createElement(VC,{disabled:c,id:s,multiple:!0,value:i,onChange:o},Object.keys(r).map(f=>y.createElement("option",{key:f,value:f},f))))},V4=e=>{let{name:t,options:r}=e;return r?e.isMulti?y.createElement(pP,{...e}):y.createElement(dP,{...e}):(yh.warn(`Select with no options: ${t}`),y.createElement(y.Fragment,null,"-"))},fP=(e,t)=>Array.isArray(e)?e.reduce((r,n)=>(r[(t==null?void 0:t[n])||String(n)]=n,r),{}):e,hP={check:$4,"inline-check":$4,radio:H4,"inline-radio":H4,select:V4,"multi-select":V4},Pn=e=>{let{type:t="select",labels:r,argType:n}=e,a={...e,argType:n,options:n?fP(n.options,r):{},isInline:t.includes("inline"),isMulti:t.includes("multi")},o=hP[t];if(o)return y.createElement(o,{...a});throw new Error(`Unknown options type: ${t}`)},mP="Error",gP="Object",vP="Array",yP="String",bP="Number",wP="Boolean",DP="Date",EP="Null",CP="Undefined",xP="Function",SP="Symbol",qC="ADD_DELTA_TYPE",WC="REMOVE_DELTA_TYPE",GC="UPDATE_DELTA_TYPE",Eh="value",FP="key";function ln(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)&&typeof e[Symbol.iterator]=="function"?"Iterable":Object.prototype.toString.call(e).slice(8,-1)}function KC(e,t){let r=ln(e),n=ln(t);return(r==="Function"||n==="Function")&&n!==r}var Ch=class extends l.Component{constructor(e){super(e),this.state={inputRefKey:null,inputRefValue:null},this.refInputValue=this.refInputValue.bind(this),this.refInputKey=this.refInputKey.bind(this),this.onKeydown=this.onKeydown.bind(this),this.onSubmit=this.onSubmit.bind(this)}componentDidMount(){let{inputRefKey:e,inputRefValue:t}=this.state,{onlyValue:r}=this.props;e&&typeof e.focus=="function"&&e.focus(),r&&t&&typeof t.focus=="function"&&t.focus(),document.addEventListener("keydown",this.onKeydown)}componentWillUnmount(){document.removeEventListener("keydown",this.onKeydown)}onKeydown(e){e.altKey||e.ctrlKey||e.metaKey||e.shiftKey||e.repeat||((e.code==="Enter"||e.key==="Enter")&&(e.preventDefault(),this.onSubmit()),(e.code==="Escape"||e.key==="Escape")&&(e.preventDefault(),this.props.handleCancel()))}onSubmit(){let{handleAdd:e,onlyValue:t,onSubmitValueParser:r,keyPath:n,deep:a}=this.props,{inputRefKey:o,inputRefValue:i}=this.state,s={};if(!t){if(!o.value)return;s.key=o.value}s.newValue=r(!1,n,a,s.key,i.value),e(s)}refInputKey(e){this.state.inputRefKey=e}refInputValue(e){this.state.inputRefValue=e}render(){let{handleCancel:e,onlyValue:t,addButtonElement:r,cancelButtonElement:n,inputElementGenerator:a,keyPath:o,deep:i}=this.props,s=l.cloneElement(r,{onClick:this.onSubmit}),c=l.cloneElement(n,{onClick:e}),d=a(Eh,o,i),f=l.cloneElement(d,{placeholder:"Value",ref:this.refInputValue}),h=null;if(!t){let p=a(FP,o,i);h=l.cloneElement(p,{placeholder:"Key",ref:this.refInputKey})}return y.createElement("span",{className:"rejt-add-value-node"},h,f,c,s)}};Ch.defaultProps={onlyValue:!1,addButtonElement:y.createElement("button",null,"+"),cancelButtonElement:y.createElement("button",null,"c")};var YC=class extends l.Component{constructor(e){super(e);let t=[...e.keyPath,e.name];this.state={data:e.data,name:e.name,keyPath:t,deep:e.deep,nextDeep:e.deep+1,collapsed:e.isCollapsed(t,e.deep,e.data),addFormVisible:!1},this.handleCollapseMode=this.handleCollapseMode.bind(this),this.handleRemoveItem=this.handleRemoveItem.bind(this),this.handleAddMode=this.handleAddMode.bind(this),this.handleAddValueAdd=this.handleAddValueAdd.bind(this),this.handleAddValueCancel=this.handleAddValueCancel.bind(this),this.handleEditValue=this.handleEditValue.bind(this),this.onChildUpdate=this.onChildUpdate.bind(this),this.renderCollapsed=this.renderCollapsed.bind(this),this.renderNotCollapsed=this.renderNotCollapsed.bind(this)}static getDerivedStateFromProps(e,t){return e.data!==t.data?{data:e.data}:null}onChildUpdate(e,t){let{data:r,keyPath:n}=this.state;r[e]=t,this.setState({data:r});let{onUpdate:a}=this.props,o=n.length;a(n[o-1],r)}handleAddMode(){this.setState({addFormVisible:!0})}handleCollapseMode(){this.setState(e=>({collapsed:!e.collapsed}))}handleRemoveItem(e){return()=>{let{beforeRemoveAction:t,logger:r}=this.props,{data:n,keyPath:a,nextDeep:o}=this.state,i=n[e];t(e,a,o,i).then(()=>{let s={keyPath:a,deep:o,key:e,oldValue:i,type:WC};n.splice(e,1),this.setState({data:n});let{onUpdate:c,onDeltaUpdate:d}=this.props;c(a[a.length-1],n),d(s)}).catch(r.error)}}handleAddValueAdd({newValue:e}){let{data:t,keyPath:r,nextDeep:n}=this.state,{beforeAddAction:a,logger:o}=this.props;a(t.length,r,n,e).then(()=>{let i=[...t,e];this.setState({data:i}),this.handleAddValueCancel();let{onUpdate:s,onDeltaUpdate:c}=this.props;s(r[r.length-1],i),c({type:qC,keyPath:r,deep:n,key:i.length-1,newValue:e})}).catch(o.error)}handleAddValueCancel(){this.setState({addFormVisible:!1})}handleEditValue({key:e,value:t}){return new Promise((r,n)=>{let{beforeUpdateAction:a}=this.props,{data:o,keyPath:i,nextDeep:s}=this.state,c=o[e];a(e,i,s,c,t).then(()=>{o[e]=t,this.setState({data:o});let{onUpdate:d,onDeltaUpdate:f}=this.props;d(i[i.length-1],o),f({type:GC,keyPath:i,deep:s,key:e,newValue:t,oldValue:c}),r(void 0)}).catch(n)})}renderCollapsed(){let{name:e,data:t,keyPath:r,deep:n}=this.state,{handleRemove:a,readOnly:o,getStyle:i,dataType:s,minusMenuElement:c}=this.props,{minus:d,collapsed:f}=i(e,t,r,n,s),h=o(e,t,r,n,s),p=l.cloneElement(c,{onClick:a,className:"rejt-minus-menu",style:d});return y.createElement("span",{className:"rejt-collapsed"},y.createElement("span",{className:"rejt-collapsed-text",style:f,onClick:this.handleCollapseMode},"[...] ",t.length," ",t.length===1?"item":"items"),!h&&p)}renderNotCollapsed(){let{name:e,data:t,keyPath:r,deep:n,addFormVisible:a,nextDeep:o}=this.state,{isCollapsed:i,handleRemove:s,onDeltaUpdate:c,readOnly:d,getStyle:f,dataType:h,addButtonElement:p,cancelButtonElement:m,editButtonElement:g,inputElementGenerator:v,textareaElementGenerator:b,minusMenuElement:C,plusMenuElement:E,beforeRemoveAction:D,beforeAddAction:w,beforeUpdateAction:x,logger:S,onSubmitValueParser:F}=this.props,{minus:A,plus:_,delimiter:R,ul:I,addForm:T}=f(e,t,r,n,h),L=d(e,t,r,n,h),P=l.cloneElement(E,{onClick:this.handleAddMode,className:"rejt-plus-menu",style:_}),M=l.cloneElement(C,{onClick:s,className:"rejt-minus-menu",style:A});return y.createElement("span",{className:"rejt-not-collapsed"},y.createElement("span",{className:"rejt-not-collapsed-delimiter",style:R},"["),!a&&P,y.createElement("ul",{className:"rejt-not-collapsed-list",style:I},t.map((N,q)=>y.createElement(bu,{key:q,name:q.toString(),data:N,keyPath:r,deep:o,isCollapsed:i,handleRemove:this.handleRemoveItem(q),handleUpdateValue:this.handleEditValue,onUpdate:this.onChildUpdate,onDeltaUpdate:c,readOnly:d,getStyle:f,addButtonElement:p,cancelButtonElement:m,editButtonElement:g,inputElementGenerator:v,textareaElementGenerator:b,minusMenuElement:C,plusMenuElement:E,beforeRemoveAction:D,beforeAddAction:w,beforeUpdateAction:x,logger:S,onSubmitValueParser:F}))),!L&&a&&y.createElement("div",{className:"rejt-add-form",style:T},y.createElement(Ch,{handleAdd:this.handleAddValueAdd,handleCancel:this.handleAddValueCancel,onlyValue:!0,addButtonElement:p,cancelButtonElement:m,inputElementGenerator:v,keyPath:r,deep:n,onSubmitValueParser:F})),y.createElement("span",{className:"rejt-not-collapsed-delimiter",style:R},"]"),!L&&M)}render(){let{name:e,collapsed:t,data:r,keyPath:n,deep:a}=this.state,{dataType:o,getStyle:i}=this.props,s=t?this.renderCollapsed():this.renderNotCollapsed(),c=i(e,r,n,a,o);return y.createElement("div",{className:"rejt-array-node"},y.createElement("span",{onClick:this.handleCollapseMode},y.createElement("span",{className:"rejt-name",style:c.name},e," :"," ")),s)}};YC.defaultProps={keyPath:[],deep:0,minusMenuElement:y.createElement("span",null," - "),plusMenuElement:y.createElement("span",null," + ")};var ZC=class extends l.Component{constructor(e){super(e);let t=[...e.keyPath,e.name];this.state={value:e.value,name:e.name,keyPath:t,deep:e.deep,editEnabled:!1,inputRef:null},this.handleEditMode=this.handleEditMode.bind(this),this.refInput=this.refInput.bind(this),this.handleCancelEdit=this.handleCancelEdit.bind(this),this.handleEdit=this.handleEdit.bind(this),this.onKeydown=this.onKeydown.bind(this)}static getDerivedStateFromProps(e,t){return e.value!==t.value?{value:e.value}:null}componentDidUpdate(){let{editEnabled:e,inputRef:t,name:r,value:n,keyPath:a,deep:o}=this.state,{readOnly:i,dataType:s}=this.props,c=i(r,n,a,o,s);e&&!c&&typeof t.focus=="function"&&t.focus()}componentDidMount(){document.addEventListener("keydown",this.onKeydown)}componentWillUnmount(){document.removeEventListener("keydown",this.onKeydown)}onKeydown(e){e.altKey||e.ctrlKey||e.metaKey||e.shiftKey||e.repeat||((e.code==="Enter"||e.key==="Enter")&&(e.preventDefault(),this.handleEdit()),(e.code==="Escape"||e.key==="Escape")&&(e.preventDefault(),this.handleCancelEdit()))}handleEdit(){let{handleUpdateValue:e,originalValue:t,logger:r,onSubmitValueParser:n,keyPath:a}=this.props,{inputRef:o,name:i,deep:s}=this.state;if(!o)return;let c=n(!0,a,s,i,o.value);e({value:c,key:i}).then(()=>{KC(t,c)||this.handleCancelEdit()}).catch(r.error)}handleEditMode(){this.setState({editEnabled:!0})}refInput(e){this.state.inputRef=e}handleCancelEdit(){this.setState({editEnabled:!1})}render(){let{name:e,value:t,editEnabled:r,keyPath:n,deep:a}=this.state,{handleRemove:o,originalValue:i,readOnly:s,dataType:c,getStyle:d,editButtonElement:f,cancelButtonElement:h,textareaElementGenerator:p,minusMenuElement:m,keyPath:g}=this.props,v=d(e,i,n,a,c),b=null,C=null,E=s(e,i,n,a,c);if(r&&!E){let D=p(Eh,g,a,e,i,c),w=l.cloneElement(f,{onClick:this.handleEdit}),x=l.cloneElement(h,{onClick:this.handleCancelEdit}),S=l.cloneElement(D,{ref:this.refInput,defaultValue:i});b=y.createElement("span",{className:"rejt-edit-form",style:v.editForm},S," ",x,w),C=null}else{b=y.createElement("span",{className:"rejt-value",style:v.value,onClick:E?null:this.handleEditMode},t);let D=l.cloneElement(m,{onClick:o,className:"rejt-minus-menu",style:v.minus});C=E?null:D}return y.createElement("li",{className:"rejt-function-value-node",style:v.li},y.createElement("span",{className:"rejt-name",style:v.name},e," :"," "),b,C)}};ZC.defaultProps={keyPath:[],deep:0,handleUpdateValue:()=>{},editButtonElement:y.createElement("button",null,"e"),cancelButtonElement:y.createElement("button",null,"c"),minusMenuElement:y.createElement("span",null," - ")};var bu=class extends l.Component{constructor(e){super(e),this.state={data:e.data,name:e.name,keyPath:e.keyPath,deep:e.deep}}static getDerivedStateFromProps(e,t){return e.data!==t.data?{data:e.data}:null}render(){let{data:e,name:t,keyPath:r,deep:n}=this.state,{isCollapsed:a,handleRemove:o,handleUpdateValue:i,onUpdate:s,onDeltaUpdate:c,readOnly:d,getStyle:f,addButtonElement:h,cancelButtonElement:p,editButtonElement:m,inputElementGenerator:g,textareaElementGenerator:v,minusMenuElement:b,plusMenuElement:C,beforeRemoveAction:E,beforeAddAction:D,beforeUpdateAction:w,logger:x,onSubmitValueParser:S}=this.props,F=()=>!0,A=ln(e);switch(A){case mP:return y.createElement(G1,{data:e,name:t,isCollapsed:a,keyPath:r,deep:n,handleRemove:o,onUpdate:s,onDeltaUpdate:c,readOnly:F,dataType:A,getStyle:f,addButtonElement:h,cancelButtonElement:p,editButtonElement:m,inputElementGenerator:g,textareaElementGenerator:v,minusMenuElement:b,plusMenuElement:C,beforeRemoveAction:E,beforeAddAction:D,beforeUpdateAction:w,logger:x,onSubmitValueParser:S});case gP:return y.createElement(G1,{data:e,name:t,isCollapsed:a,keyPath:r,deep:n,handleRemove:o,onUpdate:s,onDeltaUpdate:c,readOnly:d,dataType:A,getStyle:f,addButtonElement:h,cancelButtonElement:p,editButtonElement:m,inputElementGenerator:g,textareaElementGenerator:v,minusMenuElement:b,plusMenuElement:C,beforeRemoveAction:E,beforeAddAction:D,beforeUpdateAction:w,logger:x,onSubmitValueParser:S});case vP:return y.createElement(YC,{data:e,name:t,isCollapsed:a,keyPath:r,deep:n,handleRemove:o,onUpdate:s,onDeltaUpdate:c,readOnly:d,dataType:A,getStyle:f,addButtonElement:h,cancelButtonElement:p,editButtonElement:m,inputElementGenerator:g,textareaElementGenerator:v,minusMenuElement:b,plusMenuElement:C,beforeRemoveAction:E,beforeAddAction:D,beforeUpdateAction:w,logger:x,onSubmitValueParser:S});case yP:return y.createElement(gr,{name:t,value:`"${e}"`,originalValue:e,keyPath:r,deep:n,handleRemove:o,handleUpdateValue:i,readOnly:d,dataType:A,getStyle:f,cancelButtonElement:p,editButtonElement:m,inputElementGenerator:g,minusMenuElement:b,logger:x,onSubmitValueParser:S});case bP:return y.createElement(gr,{name:t,value:e,originalValue:e,keyPath:r,deep:n,handleRemove:o,handleUpdateValue:i,readOnly:d,dataType:A,getStyle:f,cancelButtonElement:p,editButtonElement:m,inputElementGenerator:g,minusMenuElement:b,logger:x,onSubmitValueParser:S});case wP:return y.createElement(gr,{name:t,value:e?"true":"false",originalValue:e,keyPath:r,deep:n,handleRemove:o,handleUpdateValue:i,readOnly:d,dataType:A,getStyle:f,cancelButtonElement:p,editButtonElement:m,inputElementGenerator:g,minusMenuElement:b,logger:x,onSubmitValueParser:S});case DP:return y.createElement(gr,{name:t,value:e.toISOString(),originalValue:e,keyPath:r,deep:n,handleRemove:o,handleUpdateValue:i,readOnly:F,dataType:A,getStyle:f,cancelButtonElement:p,editButtonElement:m,inputElementGenerator:g,minusMenuElement:b,logger:x,onSubmitValueParser:S});case EP:return y.createElement(gr,{name:t,value:"null",originalValue:"null",keyPath:r,deep:n,handleRemove:o,handleUpdateValue:i,readOnly:d,dataType:A,getStyle:f,cancelButtonElement:p,editButtonElement:m,inputElementGenerator:g,minusMenuElement:b,logger:x,onSubmitValueParser:S});case CP:return y.createElement(gr,{name:t,value:"undefined",originalValue:"undefined",keyPath:r,deep:n,handleRemove:o,handleUpdateValue:i,readOnly:d,dataType:A,getStyle:f,cancelButtonElement:p,editButtonElement:m,inputElementGenerator:g,minusMenuElement:b,logger:x,onSubmitValueParser:S});case xP:return y.createElement(ZC,{name:t,value:e.toString(),originalValue:e,keyPath:r,deep:n,handleRemove:o,handleUpdateValue:i,readOnly:d,dataType:A,getStyle:f,cancelButtonElement:p,editButtonElement:m,textareaElementGenerator:v,minusMenuElement:b,logger:x,onSubmitValueParser:S});case SP:return y.createElement(gr,{name:t,value:e.toString(),originalValue:e,keyPath:r,deep:n,handleRemove:o,handleUpdateValue:i,readOnly:F,dataType:A,getStyle:f,cancelButtonElement:p,editButtonElement:m,inputElementGenerator:g,minusMenuElement:b,logger:x,onSubmitValueParser:S});default:return null}}};bu.defaultProps={keyPath:[],deep:0};var G1=class extends l.Component{constructor(e){super(e);let t=e.deep===-1?[]:[...e.keyPath,e.name];this.state={name:e.name,data:e.data,keyPath:t,deep:e.deep,nextDeep:e.deep+1,collapsed:e.isCollapsed(t,e.deep,e.data),addFormVisible:!1},this.handleCollapseMode=this.handleCollapseMode.bind(this),this.handleRemoveValue=this.handleRemoveValue.bind(this),this.handleAddMode=this.handleAddMode.bind(this),this.handleAddValueAdd=this.handleAddValueAdd.bind(this),this.handleAddValueCancel=this.handleAddValueCancel.bind(this),this.handleEditValue=this.handleEditValue.bind(this),this.onChildUpdate=this.onChildUpdate.bind(this),this.renderCollapsed=this.renderCollapsed.bind(this),this.renderNotCollapsed=this.renderNotCollapsed.bind(this)}static getDerivedStateFromProps(e,t){return e.data!==t.data?{data:e.data}:null}onChildUpdate(e,t){let{data:r,keyPath:n}=this.state;r[e]=t,this.setState({data:r});let{onUpdate:a}=this.props,o=n.length;a(n[o-1],r)}handleAddMode(){this.setState({addFormVisible:!0})}handleAddValueCancel(){this.setState({addFormVisible:!1})}handleAddValueAdd({key:e,newValue:t}){let{data:r,keyPath:n,nextDeep:a}=this.state,{beforeAddAction:o,logger:i}=this.props;o(e,n,a,t).then(()=>{r[e]=t,this.setState({data:r}),this.handleAddValueCancel();let{onUpdate:s,onDeltaUpdate:c}=this.props;s(n[n.length-1],r),c({type:qC,keyPath:n,deep:a,key:e,newValue:t})}).catch(i.error)}handleRemoveValue(e){return()=>{let{beforeRemoveAction:t,logger:r}=this.props,{data:n,keyPath:a,nextDeep:o}=this.state,i=n[e];t(e,a,o,i).then(()=>{let s={keyPath:a,deep:o,key:e,oldValue:i,type:WC};delete n[e],this.setState({data:n});let{onUpdate:c,onDeltaUpdate:d}=this.props;c(a[a.length-1],n),d(s)}).catch(r.error)}}handleCollapseMode(){this.setState(e=>({collapsed:!e.collapsed}))}handleEditValue({key:e,value:t}){return new Promise((r,n)=>{let{beforeUpdateAction:a}=this.props,{data:o,keyPath:i,nextDeep:s}=this.state,c=o[e];a(e,i,s,c,t).then(()=>{o[e]=t,this.setState({data:o});let{onUpdate:d,onDeltaUpdate:f}=this.props;d(i[i.length-1],o),f({type:GC,keyPath:i,deep:s,key:e,newValue:t,oldValue:c}),r()}).catch(n)})}renderCollapsed(){let{name:e,keyPath:t,deep:r,data:n}=this.state,{handleRemove:a,readOnly:o,dataType:i,getStyle:s,minusMenuElement:c}=this.props,{minus:d,collapsed:f}=s(e,n,t,r,i),h=Object.getOwnPropertyNames(n),p=o(e,n,t,r,i),m=l.cloneElement(c,{onClick:a,className:"rejt-minus-menu",style:d});return y.createElement("span",{className:"rejt-collapsed"},y.createElement("span",{className:"rejt-collapsed-text",style:f,onClick:this.handleCollapseMode},"{...}"," ",h.length," ",h.length===1?"key":"keys"),!p&&m)}renderNotCollapsed(){let{name:e,data:t,keyPath:r,deep:n,nextDeep:a,addFormVisible:o}=this.state,{isCollapsed:i,handleRemove:s,onDeltaUpdate:c,readOnly:d,getStyle:f,dataType:h,addButtonElement:p,cancelButtonElement:m,editButtonElement:g,inputElementGenerator:v,textareaElementGenerator:b,minusMenuElement:C,plusMenuElement:E,beforeRemoveAction:D,beforeAddAction:w,beforeUpdateAction:x,logger:S,onSubmitValueParser:F}=this.props,{minus:A,plus:_,addForm:R,ul:I,delimiter:T}=f(e,t,r,n,h),L=Object.getOwnPropertyNames(t),P=d(e,t,r,n,h),M=l.cloneElement(E,{onClick:this.handleAddMode,className:"rejt-plus-menu",style:_}),N=l.cloneElement(C,{onClick:s,className:"rejt-minus-menu",style:A}),q=L.map(W=>y.createElement(bu,{key:W,name:W,data:t[W],keyPath:r,deep:a,isCollapsed:i,handleRemove:this.handleRemoveValue(W),handleUpdateValue:this.handleEditValue,onUpdate:this.onChildUpdate,onDeltaUpdate:c,readOnly:d,getStyle:f,addButtonElement:p,cancelButtonElement:m,editButtonElement:g,inputElementGenerator:v,textareaElementGenerator:b,minusMenuElement:C,plusMenuElement:E,beforeRemoveAction:D,beforeAddAction:w,beforeUpdateAction:x,logger:S,onSubmitValueParser:F}));return y.createElement("span",{className:"rejt-not-collapsed"},y.createElement("span",{className:"rejt-not-collapsed-delimiter",style:T},"{"),!P&&M,y.createElement("ul",{className:"rejt-not-collapsed-list",style:I},q),!P&&o&&y.createElement("div",{className:"rejt-add-form",style:R},y.createElement(Ch,{handleAdd:this.handleAddValueAdd,handleCancel:this.handleAddValueCancel,addButtonElement:p,cancelButtonElement:m,inputElementGenerator:v,keyPath:r,deep:n,onSubmitValueParser:F})),y.createElement("span",{className:"rejt-not-collapsed-delimiter",style:T},"}"),!P&&N)}render(){let{name:e,collapsed:t,data:r,keyPath:n,deep:a}=this.state,{getStyle:o,dataType:i}=this.props,s=t?this.renderCollapsed():this.renderNotCollapsed(),c=o(e,r,n,a,i);return y.createElement("div",{className:"rejt-object-node"},y.createElement("span",{onClick:this.handleCollapseMode},y.createElement("span",{className:"rejt-name",style:c.name},e," :"," ")),s)}};G1.defaultProps={keyPath:[],deep:0,minusMenuElement:y.createElement("span",null," - "),plusMenuElement:y.createElement("span",null," + ")};var gr=class extends l.Component{constructor(e){super(e);let t=[...e.keyPath,e.name];this.state={value:e.value,name:e.name,keyPath:t,deep:e.deep,editEnabled:!1,inputRef:null},this.handleEditMode=this.handleEditMode.bind(this),this.refInput=this.refInput.bind(this),this.handleCancelEdit=this.handleCancelEdit.bind(this),this.handleEdit=this.handleEdit.bind(this),this.onKeydown=this.onKeydown.bind(this)}static getDerivedStateFromProps(e,t){return e.value!==t.value?{value:e.value}:null}componentDidUpdate(){let{editEnabled:e,inputRef:t,name:r,value:n,keyPath:a,deep:o}=this.state,{readOnly:i,dataType:s}=this.props,c=i(r,n,a,o,s);e&&!c&&typeof t.focus=="function"&&t.focus()}componentDidMount(){document.addEventListener("keydown",this.onKeydown)}componentWillUnmount(){document.removeEventListener("keydown",this.onKeydown)}onKeydown(e){e.altKey||e.ctrlKey||e.metaKey||e.shiftKey||e.repeat||((e.code==="Enter"||e.key==="Enter")&&(e.preventDefault(),this.handleEdit()),(e.code==="Escape"||e.key==="Escape")&&(e.preventDefault(),this.handleCancelEdit()))}handleEdit(){let{handleUpdateValue:e,originalValue:t,logger:r,onSubmitValueParser:n,keyPath:a}=this.props,{inputRef:o,name:i,deep:s}=this.state;if(!o)return;let c=n(!0,a,s,i,o.value);e({value:c,key:i}).then(()=>{KC(t,c)||this.handleCancelEdit()}).catch(r.error)}handleEditMode(){this.setState({editEnabled:!0})}refInput(e){this.state.inputRef=e}handleCancelEdit(){this.setState({editEnabled:!1})}render(){let{name:e,value:t,editEnabled:r,keyPath:n,deep:a}=this.state,{handleRemove:o,originalValue:i,readOnly:s,dataType:c,getStyle:d,editButtonElement:f,cancelButtonElement:h,inputElementGenerator:p,minusMenuElement:m,keyPath:g}=this.props,v=d(e,i,n,a,c),b=s(e,i,n,a,c),C=r&&!b,E=p(Eh,g,a,e,i,c),D=l.cloneElement(f,{onClick:this.handleEdit}),w=l.cloneElement(h,{onClick:this.handleCancelEdit}),x=l.cloneElement(E,{ref:this.refInput,defaultValue:JSON.stringify(i)}),S=l.cloneElement(m,{onClick:o,className:"rejt-minus-menu",style:v.minus});return y.createElement("li",{className:"rejt-value-node",style:v.li},y.createElement("span",{className:"rejt-name",style:v.name},e," : "),C?y.createElement("span",{className:"rejt-edit-form",style:v.editForm},x," ",w,D):y.createElement("span",{className:"rejt-value",style:v.value,onClick:b?null:this.handleEditMode},String(t)),!b&&!C&&S)}};gr.defaultProps={keyPath:[],deep:0,handleUpdateValue:()=>Promise.resolve(),editButtonElement:y.createElement("button",null,"e"),cancelButtonElement:y.createElement("button",null,"c"),minusMenuElement:y.createElement("span",null," - ")};function AP(e){let t=e;if(t.indexOf("function")===0)return(0,eval)(`(${t})`);try{t=JSON.parse(e)}catch{}return t}var kP={minus:{color:"red"},plus:{color:"green"},collapsed:{color:"grey"},delimiter:{},ul:{padding:"0px",margin:"0 0 0 25px",listStyle:"none"},name:{color:"#2287CD"},addForm:{}},_P={minus:{color:"red"},plus:{color:"green"},collapsed:{color:"grey"},delimiter:{},ul:{padding:"0px",margin:"0 0 0 25px",listStyle:"none"},name:{color:"#2287CD"},addForm:{}},BP={minus:{color:"red"},editForm:{},value:{color:"#7bba3d"},li:{minHeight:"22px",lineHeight:"22px",outline:"0px"},name:{color:"#2287CD"}},JC=class extends l.Component{constructor(e){super(e),this.state={data:e.data,rootName:e.rootName},this.onUpdate=this.onUpdate.bind(this),this.removeRoot=this.removeRoot.bind(this)}static getDerivedStateFromProps(e,t){return e.data!==t.data||e.rootName!==t.rootName?{data:e.data,rootName:e.rootName}:null}onUpdate(e,t){this.setState({data:t}),this.props.onFullyUpdate(t)}removeRoot(){this.onUpdate(null,null)}render(){let{data:e,rootName:t}=this.state,{isCollapsed:r,onDeltaUpdate:n,readOnly:a,getStyle:o,addButtonElement:i,cancelButtonElement:s,editButtonElement:c,inputElement:d,textareaElement:f,minusMenuElement:h,plusMenuElement:p,beforeRemoveAction:m,beforeAddAction:g,beforeUpdateAction:v,logger:b,onSubmitValueParser:C,fallback:E=null}=this.props,D=ln(e),w=a;ln(a)==="Boolean"&&(w=()=>a);let x=d;d&&ln(d)!=="Function"&&(x=()=>d);let S=f;return f&&ln(f)!=="Function"&&(S=()=>f),D==="Object"||D==="Array"?y.createElement("div",{className:"rejt-tree"},y.createElement(bu,{data:e,name:t,deep:-1,isCollapsed:r,onUpdate:this.onUpdate,onDeltaUpdate:n,readOnly:w,getStyle:o,addButtonElement:i,cancelButtonElement:s,editButtonElement:c,inputElementGenerator:x,textareaElementGenerator:S,minusMenuElement:h,plusMenuElement:p,handleRemove:this.removeRoot,beforeRemoveAction:m,beforeAddAction:g,beforeUpdateAction:v,logger:b,onSubmitValueParser:C})):E}};JC.defaultProps={rootName:"root",isCollapsed:(e,t)=>t!==-1,getStyle:(e,t,r,n,a)=>{switch(a){case"Object":case"Error":return kP;case"Array":return _P;default:return BP}},readOnly:()=>!1,onFullyUpdate:()=>{},onDeltaUpdate:()=>{},beforeRemoveAction:()=>Promise.resolve(),beforeAddAction:()=>Promise.resolve(),beforeUpdateAction:()=>Promise.resolve(),logger:{error:()=>{}},onSubmitValueParser:(e,t,r,n,a)=>AP(a),inputElement:()=>y.createElement("input",null),textareaElement:()=>y.createElement("textarea",null),fallback:null};var{window:RP}=globalThis,IP=k.div(({theme:e})=>({position:"relative",display:"flex",'&[aria-readonly="true"]':{opacity:.5},".rejt-tree":{marginLeft:"1rem",fontSize:"13px"},".rejt-value-node, .rejt-object-node > .rejt-collapsed, .rejt-array-node > .rejt-collapsed, .rejt-object-node > .rejt-not-collapsed, .rejt-array-node > .rejt-not-collapsed":{"& > svg":{opacity:0,transition:"opacity 0.2s"}},".rejt-value-node:hover, .rejt-object-node:hover > .rejt-collapsed, .rejt-array-node:hover > .rejt-collapsed, .rejt-object-node:hover > .rejt-not-collapsed, .rejt-array-node:hover > .rejt-not-collapsed":{"& > svg":{opacity:1}},".rejt-edit-form button":{display:"none"},".rejt-add-form":{marginLeft:10},".rejt-add-value-node":{display:"inline-flex",alignItems:"center"},".rejt-name":{lineHeight:"22px"},".rejt-not-collapsed-delimiter":{lineHeight:"22px"},".rejt-plus-menu":{marginLeft:5},".rejt-object-node > span > *, .rejt-array-node > span > *":{position:"relative",zIndex:2},".rejt-object-node, .rejt-array-node":{position:"relative"},".rejt-object-node > span:first-of-type::after, .rejt-array-node > span:first-of-type::after, .rejt-collapsed::before, .rejt-not-collapsed::before":{content:'""',position:"absolute",top:0,display:"block",width:"100%",marginLeft:"-1rem",padding:"0 4px 0 1rem",height:22},".rejt-collapsed::before, .rejt-not-collapsed::before":{zIndex:1,background:"transparent",borderRadius:4,transition:"background 0.2s",pointerEvents:"none",opacity:.1},".rejt-object-node:hover, .rejt-array-node:hover":{"& > .rejt-collapsed::before, & > .rejt-not-collapsed::before":{background:e.color.secondary}},".rejt-collapsed::after, .rejt-not-collapsed::after":{content:'""',position:"absolute",display:"inline-block",pointerEvents:"none",width:0,height:0},".rejt-collapsed::after":{left:-8,top:8,borderTop:"3px solid transparent",borderBottom:"3px solid transparent",borderLeft:"3px solid rgba(153,153,153,0.6)"},".rejt-not-collapsed::after":{left:-10,top:10,borderTop:"3px solid rgba(153,153,153,0.6)",borderLeft:"3px solid transparent",borderRight:"3px solid transparent"},".rejt-value":{display:"inline-block",border:"1px solid transparent",borderRadius:4,margin:"1px 0",padding:"0 4px",cursor:"text",color:e.color.defaultText},".rejt-value-node:hover > .rejt-value":{background:e.color.lighter,borderColor:e.appBorderColor}})),U0=k.button(({theme:e,primary:t})=>({border:0,height:20,margin:1,borderRadius:4,background:t?e.color.secondary:"transparent",color:t?e.color.lightest:e.color.dark,fontWeight:t?"bold":"normal",cursor:"pointer",order:t?"initial":9})),zP=k(CL)(({theme:e,disabled:t})=>({display:"inline-block",verticalAlign:"middle",width:15,height:15,padding:3,marginLeft:5,cursor:t?"not-allowed":"pointer",color:e.textMutedColor,"&:hover":t?{}:{color:e.color.ancillary},"svg + &":{marginLeft:0}})),TP=k(xL)(({theme:e,disabled:t})=>({display:"inline-block",verticalAlign:"middle",width:15,height:15,padding:3,marginLeft:5,cursor:t?"not-allowed":"pointer",color:e.textMutedColor,"&:hover":t?{}:{color:e.color.negative},"svg + &":{marginLeft:0}})),U4=k.input(({theme:e,placeholder:t})=>({outline:0,margin:t?1:"1px 0",padding:"3px 4px",color:e.color.defaultText,background:e.background.app,border:`1px solid ${e.appBorderColor}`,borderRadius:4,lineHeight:"14px",width:t==="Key"?80:120,"&:focus":{border:`1px solid ${e.color.secondary}`}})),LP=k(Fr)(({theme:e})=>({position:"absolute",zIndex:2,top:2,right:2,height:21,padding:"0 3px",background:e.background.bar,border:`1px solid ${e.appBorderColor}`,borderRadius:3,color:e.textMutedColor,fontSize:"9px",fontWeight:"bold",textDecoration:"none",span:{marginLeft:3,marginTop:1}})),MP=k(Ma.Textarea)(({theme:e})=>({flex:1,padding:"7px 6px",fontFamily:e.typography.fonts.mono,fontSize:"12px",lineHeight:"18px","&::placeholder":{fontFamily:e.typography.fonts.base,fontSize:"13px"},"&:placeholder-shown":{padding:"7px 10px"}})),OP={bubbles:!0,cancelable:!0,key:"Enter",code:"Enter",keyCode:13},PP=e=>{e.currentTarget.dispatchEvent(new RP.KeyboardEvent("keydown",OP))},NP=e=>{e.currentTarget.select()},$P=e=>()=>({name:{color:e.color.secondary},collapsed:{color:e.color.dark},ul:{listStyle:"none",margin:"0 0 0 1rem",padding:0},li:{outline:0}}),q4=({name:e,value:t,onChange:r,argType:n})=>{var D;let a=I3(),o=l.useMemo(()=>t&&V9(t),[t]),i=o!=null,[s,c]=l.useState(!i),[d,f]=l.useState(null),h=!!((D=n==null?void 0:n.table)!=null&&D.readonly),p=l.useCallback(w=>{try{w&&r(JSON.parse(w)),f(void 0)}catch(x){f(x)}},[r]),[m,g]=l.useState(!1),v=l.useCallback(()=>{r({}),g(!0)},[g]),b=l.useRef(null);if(l.useEffect(()=>{m&&b.current&&b.current.select()},[m]),!i)return y.createElement(Or,{disabled:h,id:ys(e),onClick:v},"Set object");let C=y.createElement(MP,{ref:b,id:bt(e),name:e,defaultValue:t===null?"":JSON.stringify(t,null,2),onBlur:w=>p(w.target.value),placeholder:"Edit JSON string...",autoFocus:m,valid:d?"error":null,readOnly:h}),E=Array.isArray(t)||typeof t=="object"&&(t==null?void 0:t.constructor)===Object;return y.createElement(IP,{"aria-readonly":h},E&&y.createElement(LP,{onClick:w=>{w.preventDefault(),c(x=>!x)}},s?y.createElement(DL,null):y.createElement(wL,null),y.createElement("span",null,"RAW")),s?C:y.createElement(JC,{readOnly:h||!E,isCollapsed:E?void 0:()=>!0,data:o,rootName:e,onFullyUpdate:r,getStyle:$P(a),cancelButtonElement:y.createElement(U0,{type:"button"},"Cancel"),editButtonElement:y.createElement(U0,{type:"submit"},"Save"),addButtonElement:y.createElement(U0,{type:"submit",primary:!0},"Save"),plusMenuElement:y.createElement(zP,null),minusMenuElement:y.createElement(TP,null),inputElement:(w,x,S,F)=>F?y.createElement(U4,{onFocus:NP,onBlur:PP}):y.createElement(U4,null),fallback:C}))},HP=k.input(({theme:e,min:t,max:r,value:n,disabled:a})=>({"&":{width:"100%",backgroundColor:"transparent",appearance:"none"},"&::-webkit-slider-runnable-track":{background:e.base==="light"?`linear-gradient(to right, + ${e.color.green} 0%, ${e.color.green} ${(n-t)/(r-t)*100}%, + ${It(.02,e.input.background)} ${(n-t)/(r-t)*100}%, + ${It(.02,e.input.background)} 100%)`:`linear-gradient(to right, + ${e.color.green} 0%, ${e.color.green} ${(n-t)/(r-t)*100}%, + ${Jr(.02,e.input.background)} ${(n-t)/(r-t)*100}%, + ${Jr(.02,e.input.background)} 100%)`,boxShadow:`${e.appBorderColor} 0 0 0 1px inset`,borderRadius:6,width:"100%",height:6,cursor:a?"not-allowed":"pointer"},"&::-webkit-slider-thumb":{marginTop:"-6px",width:16,height:16,border:`1px solid ${ar(e.appBorderColor,.2)}`,borderRadius:"50px",boxShadow:`0 1px 3px 0px ${ar(e.appBorderColor,.2)}`,cursor:a?"not-allowed":"grab",appearance:"none",background:`${e.input.background}`,transition:"all 150ms ease-out","&:hover":{background:`${It(.05,e.input.background)}`,transform:"scale3d(1.1, 1.1, 1.1) translateY(-1px)",transition:"all 50ms ease-out"},"&:active":{background:`${e.input.background}`,transform:"scale3d(1, 1, 1) translateY(0px)",cursor:a?"not-allowed":"grab"}},"&:focus":{outline:"none","&::-webkit-slider-runnable-track":{borderColor:ar(e.color.secondary,.4)},"&::-webkit-slider-thumb":{borderColor:e.color.secondary,boxShadow:`0 0px 5px 0px ${e.color.secondary}`}},"&::-moz-range-track":{background:e.base==="light"?`linear-gradient(to right, + ${e.color.green} 0%, ${e.color.green} ${(n-t)/(r-t)*100}%, + ${It(.02,e.input.background)} ${(n-t)/(r-t)*100}%, + ${It(.02,e.input.background)} 100%)`:`linear-gradient(to right, + ${e.color.green} 0%, ${e.color.green} ${(n-t)/(r-t)*100}%, + ${Jr(.02,e.input.background)} ${(n-t)/(r-t)*100}%, + ${Jr(.02,e.input.background)} 100%)`,boxShadow:`${e.appBorderColor} 0 0 0 1px inset`,borderRadius:6,width:"100%",height:6,cursor:a?"not-allowed":"pointer",outline:"none"},"&::-moz-range-thumb":{width:16,height:16,border:`1px solid ${ar(e.appBorderColor,.2)}`,borderRadius:"50px",boxShadow:`0 1px 3px 0px ${ar(e.appBorderColor,.2)}`,cursor:a?"not-allowed":"grap",background:`${e.input.background}`,transition:"all 150ms ease-out","&:hover":{background:`${It(.05,e.input.background)}`,transform:"scale3d(1.1, 1.1, 1.1) translateY(-1px)",transition:"all 50ms ease-out"},"&:active":{background:`${e.input.background}`,transform:"scale3d(1, 1, 1) translateY(0px)",cursor:"grabbing"}},"&::-ms-track":{background:e.base==="light"?`linear-gradient(to right, + ${e.color.green} 0%, ${e.color.green} ${(n-t)/(r-t)*100}%, + ${It(.02,e.input.background)} ${(n-t)/(r-t)*100}%, + ${It(.02,e.input.background)} 100%)`:`linear-gradient(to right, + ${e.color.green} 0%, ${e.color.green} ${(n-t)/(r-t)*100}%, + ${Jr(.02,e.input.background)} ${(n-t)/(r-t)*100}%, + ${Jr(.02,e.input.background)} 100%)`,boxShadow:`${e.appBorderColor} 0 0 0 1px inset`,color:"transparent",width:"100%",height:"6px",cursor:"pointer"},"&::-ms-fill-lower":{borderRadius:6},"&::-ms-fill-upper":{borderRadius:6},"&::-ms-thumb":{width:16,height:16,background:`${e.input.background}`,border:`1px solid ${ar(e.appBorderColor,.2)}`,borderRadius:50,cursor:"grab",marginTop:0},"@supports (-ms-ime-align:auto)":{"input[type=range]":{margin:"0"}}})),XC=k.span({paddingLeft:5,paddingRight:5,fontSize:12,whiteSpace:"nowrap",fontFeatureSettings:"tnum",fontVariantNumeric:"tabular-nums","[aria-readonly=true] &":{opacity:.5}}),jP=k(XC)(({numberOFDecimalsPlaces:e,max:t})=>({width:`${e+t.toString().length*2+3}ch`,textAlign:"right",flexShrink:0})),VP=k.div({display:"flex",alignItems:"center",width:"100%"});function UP(e){let t=e.toString().match(/(?:\.(\d+))?(?:[eE]([+-]?\d+))?$/);return t?Math.max(0,(t[1]?t[1].length:0)-(t[2]?+t[2]:0)):0}var qP=({name:e,value:t,onChange:r,min:n=0,max:a=100,step:o=1,onBlur:i,onFocus:s,argType:c})=>{var m;let d=g=>{r(tP(g.target.value))},f=t!==void 0,h=l.useMemo(()=>UP(o),[o]),p=!!((m=c==null?void 0:c.table)!=null&&m.readonly);return y.createElement(VP,{"aria-readonly":p},y.createElement(XC,null,n),y.createElement(HP,{id:bt(e),type:"range",disabled:p,onChange:d,name:e,value:t,min:n,max:a,step:o,onFocus:s,onBlur:i}),y.createElement(jP,{numberOFDecimalsPlaces:h,max:a},f?t.toFixed(h):"--"," / ",a))},WP=k.label({display:"flex"}),GP=k.div(({isMaxed:e})=>({marginLeft:"0.75rem",paddingTop:"0.35rem",color:e?"red":void 0})),KP=({name:e,value:t,onChange:r,onFocus:n,onBlur:a,maxLength:o,argType:i})=>{var m;let s=g=>{r(g.target.value)},c=!!((m=i==null?void 0:i.table)!=null&&m.readonly),[d,f]=l.useState(!1),h=l.useCallback(()=>{r(""),f(!0)},[f]);if(t===void 0)return y.createElement(Or,{variant:"outline",size:"medium",disabled:c,id:ys(e),onClick:h},"Set string");let p=typeof t=="string";return y.createElement(WP,null,y.createElement(Ma.Textarea,{id:bt(e),maxLength:o,onChange:s,disabled:c,size:"flex",placeholder:"Edit string...",autoFocus:d,valid:p?null:"error",name:e,value:p?t:"",onFocus:n,onBlur:a}),o&&y.createElement(GP,{isMaxed:(t==null?void 0:t.length)===o},(t==null?void 0:t.length)??0," / ",o))},YP=k(Ma.Input)({padding:10});function ZP(e){e.forEach(t=>{t.startsWith("blob:")&&URL.revokeObjectURL(t)})}var JP=({onChange:e,name:t,accept:r="image/*",value:n,argType:a})=>{var c;let o=l.useRef(null),i=(c=a==null?void 0:a.control)==null?void 0:c.readOnly;function s(d){if(!d.target.files)return;let f=Array.from(d.target.files).map(h=>URL.createObjectURL(h));e(f),ZP(n)}return l.useEffect(()=>{n==null&&o.current&&(o.current.value=null)},[n,t]),y.createElement(YP,{ref:o,id:bt(t),type:"file",name:t,multiple:!0,disabled:i,onChange:s,accept:r,size:"flex"})},XP=l.lazy(()=>X1(()=>import("./Color-YHDXOIA2-BJn0-NzM.js"),__vite__mapDeps([0,1,2,3,4,5,6]),import.meta.url)),QP=e=>y.createElement(l.Suspense,{fallback:y.createElement("div",null)},y.createElement(XP,{...e})),eN={array:q4,object:q4,boolean:GO,color:QP,date:QO,number:nP,check:Pn,"inline-check":Pn,radio:Pn,"inline-radio":Pn,select:Pn,"multi-select":Pn,range:qP,text:KP,file:JP},W4=()=>y.createElement(y.Fragment,null,"-"),tN=({row:e,arg:t,updateArgs:r,isHovered:n})=>{var v;let{key:a,control:o}=e,[i,s]=l.useState(!1),[c,d]=l.useState({value:t});l.useEffect(()=>{i||d({value:t})},[i,t]);let f=l.useCallback(b=>(d({value:b}),r({[a]:b}),b),[r,a]),h=l.useCallback(()=>s(!1),[]),p=l.useCallback(()=>s(!0),[]);if(!o||o.disable){let b=(o==null?void 0:o.disable)!==!0&&((v=e==null?void 0:e.type)==null?void 0:v.name)!=="function";return n&&b?y.createElement(oa,{href:"https://storybook.js.org/docs/essentials/controls",target:"_blank",withArrow:!0},"Setup controls"):y.createElement(W4,null)}let m={name:a,argType:e,value:c.value,onChange:f,onBlur:h,onFocus:p},g=eN[o.type]||W4;return y.createElement(g,{...m,...o,controlType:o.type})},rN=k.table(({theme:e})=>({"&&":{borderCollapse:"collapse",borderSpacing:0,border:"none",tr:{border:"none !important",background:"none"},"td, th":{padding:0,border:"none",width:"auto!important"},marginTop:0,marginBottom:0,"th:first-of-type, td:first-of-type":{paddingLeft:0},"th:last-of-type, td:last-of-type":{paddingRight:0},td:{paddingTop:0,paddingBottom:4,"&:not(:first-of-type)":{paddingLeft:10,paddingRight:0}},tbody:{boxShadow:"none",border:"none"},code:cr({theme:e}),div:{span:{fontWeight:"bold"}},"& code":{margin:0,display:"inline-block",fontSize:e.typography.size.s1}}})),nN=({tags:e})=>{let t=(e.params||[]).filter(o=>o.description),r=t.length!==0,n=e.deprecated!=null,a=e.returns!=null&&e.returns.description!=null;return!r&&!a&&!n?null:y.createElement(y.Fragment,null,y.createElement(rN,null,y.createElement("tbody",null,n&&y.createElement("tr",{key:"deprecated"},y.createElement("td",{colSpan:2},y.createElement("strong",null,"Deprecated"),": ",e.deprecated.toString())),r&&t.map(o=>y.createElement("tr",{key:o.name},y.createElement("td",null,y.createElement("code",null,o.name)),y.createElement("td",null,o.description))),a&&y.createElement("tr",{key:"returns"},y.createElement("td",null,y.createElement("code",null,"Returns")),y.createElement("td",null,e.returns.description)))))},aN=Q1(uC()),K1=8,G4=k.div(({isExpanded:e})=>({display:"flex",flexDirection:e?"column":"row",flexWrap:"wrap",alignItems:"flex-start",marginBottom:"-4px",minWidth:100})),oN=k.span(cr,({theme:e,simple:t=!1})=>({flex:"0 0 auto",fontFamily:e.typography.fonts.mono,fontSize:e.typography.size.s1,wordBreak:"break-word",whiteSpace:"normal",maxWidth:"100%",margin:0,marginRight:"4px",marginBottom:"4px",paddingTop:"2px",paddingBottom:"2px",lineHeight:"13px",...t&&{background:"transparent",border:"0 none",paddingLeft:0}})),iN=k.button(({theme:e})=>({fontFamily:e.typography.fonts.mono,color:e.color.secondary,marginBottom:"4px",background:"none",border:"none"})),lN=k.div(cr,({theme:e})=>({fontFamily:e.typography.fonts.mono,color:e.color.secondary,fontSize:e.typography.size.s1,margin:0,whiteSpace:"nowrap",display:"flex",alignItems:"center"})),sN=k.div(({theme:e,width:t})=>({width:t,minWidth:200,maxWidth:800,padding:15,fontFamily:e.typography.fonts.mono,fontSize:e.typography.size.s1,boxSizing:"content-box","& code":{padding:"0 !important"}})),uN=k(kL)({marginLeft:4}),cN=k(lC)({marginLeft:4}),dN=()=>y.createElement("span",null,"-"),QC=({text:e,simple:t})=>y.createElement(oN,{simple:t},e),pN=(0,aN.default)(1e3)(e=>{let t=e.split(/\r?\n/);return`${Math.max(...t.map(r=>r.length))}ch`}),fN=e=>{if(!e)return[e];let t=e.split("|").map(r=>r.trim());return L9(t)},K4=(e,t=!0)=>{let r=e;return t||(r=e.slice(0,K1)),r.map(n=>y.createElement(QC,{key:n,text:n===""?'""':n}))},hN=({value:e,initialExpandedArgs:t})=>{let{summary:r,detail:n}=e,[a,o]=l.useState(!1),[i,s]=l.useState(t||!1);if(r==null)return null;let c=typeof r.toString=="function"?r.toString():r;if(n==null){if(/[(){}[\]<>]/.test(c))return y.createElement(QC,{text:c});let d=fN(c),f=d.length;return f>K1?y.createElement(G4,{isExpanded:i},K4(d,i),y.createElement(iN,{onClick:()=>s(!i)},i?"Show less...":`Show ${f-K1} more...`)):y.createElement(G4,null,K4(d))}return y.createElement(Y8,{closeOnOutsideClick:!0,placement:"bottom",visible:a,onVisibleChange:d=>{o(d)},tooltip:y.createElement(sN,{width:pN(n)},y.createElement(lu,{language:"jsx",format:!1},n))},y.createElement(lN,{className:"sbdocs-expandable"},y.createElement("span",null,c),a?y.createElement(uN,null):y.createElement(cN,null)))},q0=({value:e,initialExpandedArgs:t})=>e==null?y.createElement(dN,null):y.createElement(hN,{value:e,initialExpandedArgs:t}),mN=k.span({fontWeight:"bold"}),gN=k.span(({theme:e})=>({color:e.color.negative,fontFamily:e.typography.fonts.mono,cursor:"help"})),vN=k.div(({theme:e})=>({"&&":{p:{margin:"0 0 10px 0"},a:{color:e.color.secondary}},code:{...cr({theme:e}),fontSize:12,fontFamily:e.typography.fonts.mono},"& code":{margin:0,display:"inline-block"},"& pre > code":{whiteSpace:"pre-wrap"}})),yN=k.div(({theme:e,hasDescription:t})=>({color:e.base==="light"?oe(.1,e.color.defaultText):oe(.2,e.color.defaultText),marginTop:t?4:0})),bN=k.div(({theme:e,hasDescription:t})=>({color:e.base==="light"?oe(.1,e.color.defaultText):oe(.2,e.color.defaultText),marginTop:t?12:0,marginBottom:12})),wN=k.td(({theme:e,expandable:t})=>({paddingLeft:t?"40px !important":"20px !important"})),DN=e=>e&&{summary:typeof e=="string"?e:e.name},Qi=e=>{var v;let[t,r]=l.useState(!1),{row:n,updateArgs:a,compact:o,expandable:i,initialExpandedArgs:s}=e,{name:c,description:d}=n,f=n.table||{},h=f.type||DN(n.type),p=f.defaultValue||n.defaultValue,m=(v=n.type)==null?void 0:v.required,g=d!=null&&d!=="";return y.createElement("tr",{onMouseEnter:()=>r(!0),onMouseLeave:()=>r(!1)},y.createElement(wN,{expandable:i},y.createElement(mN,null,c),m?y.createElement(gN,{title:"Required"},"*"):null),o?null:y.createElement("td",null,g&&y.createElement(vN,null,y.createElement($C,null,d)),f.jsDocTags!=null?y.createElement(y.Fragment,null,y.createElement(bN,{hasDescription:g},y.createElement(q0,{value:h,initialExpandedArgs:s})),y.createElement(nN,{tags:f.jsDocTags})):y.createElement(yN,{hasDescription:g},y.createElement(q0,{value:h,initialExpandedArgs:s}))),o?null:y.createElement("td",null,y.createElement(q0,{value:p,initialExpandedArgs:s})),a?y.createElement("td",null,y.createElement(tN,{...e,isHovered:t})):null)},EN=k.div(({inAddonPanel:e,theme:t})=>({height:e?"100%":"auto",display:"flex",border:e?"none":`1px solid ${t.appBorderColor}`,borderRadius:e?0:t.appBorderRadius,padding:e?0:40,alignItems:"center",justifyContent:"center",flexDirection:"column",gap:15,background:t.background.content})),CN=k.div(({theme:e})=>({display:"flex",fontSize:e.typography.size.s2-1,gap:25})),xN=k.div(({theme:e})=>({width:1,height:16,backgroundColor:e.appBorderColor})),SN=({inAddonPanel:e})=>{let[t,r]=l.useState(!0);return l.useEffect(()=>{let n=setTimeout(()=>{r(!1)},100);return()=>clearTimeout(n)},[]),t?null:y.createElement(EN,{inAddonPanel:e},y.createElement(mh,{title:e?"Interactive story playground":"Args table with interactive controls couldn't be auto-generated",description:y.createElement(y.Fragment,null,"Controls give you an easy to use interface to test your components. Set your story args and you'll see controls appearing here automatically."),footer:y.createElement(CN,null,e&&y.createElement(y.Fragment,null,y.createElement(oa,{href:"https://youtu.be/0gOfS6K0x0E",target:"_blank",withArrow:!0},y.createElement(EL,null)," Watch 5m video"),y.createElement(xN,null),y.createElement(oa,{href:"https://storybook.js.org/docs/essentials/controls",target:"_blank",withArrow:!0},y.createElement(N1,null)," Read docs")),!e&&y.createElement(oa,{href:"https://storybook.js.org/docs/essentials/controls",target:"_blank",withArrow:!0},y.createElement(N1,null)," Learn how to set that up"))}))},FN=k(FL)(({theme:e})=>({marginRight:8,marginLeft:-10,marginTop:-2,height:12,width:12,color:e.base==="light"?oe(.25,e.color.defaultText):oe(.3,e.color.defaultText),border:"none",display:"inline-block"})),AN=k(AL)(({theme:e})=>({marginRight:8,marginLeft:-10,marginTop:-2,height:12,width:12,color:e.base==="light"?oe(.25,e.color.defaultText):oe(.3,e.color.defaultText),border:"none",display:"inline-block"})),kN=k.span(({theme:e})=>({display:"flex",lineHeight:"20px",alignItems:"center"})),_N=k.td(({theme:e})=>({position:"relative",letterSpacing:"0.35em",textTransform:"uppercase",fontWeight:e.typography.weight.bold,fontSize:e.typography.size.s1-1,color:e.base==="light"?oe(.4,e.color.defaultText):oe(.6,e.color.defaultText),background:`${e.background.app} !important`,"& ~ td":{background:`${e.background.app} !important`}})),BN=k.td(({theme:e})=>({position:"relative",fontWeight:e.typography.weight.bold,fontSize:e.typography.size.s2-1,background:e.background.app})),RN=k.td({position:"relative"}),IN=k.tr(({theme:e})=>({"&:hover > td":{backgroundColor:`${Jr(.005,e.background.app)} !important`,boxShadow:`${e.color.mediumlight} 0 - 1px 0 0 inset`,cursor:"row-resize"}})),Y4=k.button({background:"none",border:"none",padding:"0",font:"inherit",position:"absolute",top:0,bottom:0,left:0,right:0,height:"100%",width:"100%",color:"transparent",cursor:"row-resize !important"}),W0=({level:e="section",label:t,children:r,initialExpanded:n=!0,colSpan:a=3})=>{let[o,i]=l.useState(n),s=e==="subsection"?BN:_N,c=(r==null?void 0:r.length)||0,d=e==="subsection"?`${c} item${c!==1?"s":""}`:"",f=`${o?"Hide":"Show"} ${e==="subsection"?c:t} item${c!==1?"s":""}`;return y.createElement(y.Fragment,null,y.createElement(IN,{title:f},y.createElement(s,{colSpan:1},y.createElement(Y4,{onClick:h=>i(!o),tabIndex:0},f),y.createElement(kN,null,o?y.createElement(FN,null):y.createElement(AN,null),t)),y.createElement(RN,{colSpan:a-1},y.createElement(Y4,{onClick:h=>i(!o),tabIndex:-1,style:{outline:"none"}},f),o?null:d)),o?r:null)},el=k.div(({theme:e})=>({display:"flex",gap:16,borderBottom:`1px solid ${e.appBorderColor}`,"&:last-child":{borderBottom:0}})),Ae=k.div(({numColumn:e})=>({display:"flex",flexDirection:"column",flex:e||1,gap:5,padding:"12px 20px"})),me=k.div(({theme:e,width:t,height:r})=>({animation:`${e.animation.glow} 1.5s ease-in-out infinite`,background:e.appBorderColor,width:t||"100%",height:r||16,borderRadius:3})),ke=[2,4,2,2],zN=()=>y.createElement(y.Fragment,null,y.createElement(el,null,y.createElement(Ae,{numColumn:ke[0]},y.createElement(me,{width:"60%"})),y.createElement(Ae,{numColumn:ke[1]},y.createElement(me,{width:"30%"})),y.createElement(Ae,{numColumn:ke[2]},y.createElement(me,{width:"60%"})),y.createElement(Ae,{numColumn:ke[3]},y.createElement(me,{width:"60%"}))),y.createElement(el,null,y.createElement(Ae,{numColumn:ke[0]},y.createElement(me,{width:"60%"})),y.createElement(Ae,{numColumn:ke[1]},y.createElement(me,{width:"80%"}),y.createElement(me,{width:"30%"})),y.createElement(Ae,{numColumn:ke[2]},y.createElement(me,{width:"60%"})),y.createElement(Ae,{numColumn:ke[3]},y.createElement(me,{width:"60%"}))),y.createElement(el,null,y.createElement(Ae,{numColumn:ke[0]},y.createElement(me,{width:"60%"})),y.createElement(Ae,{numColumn:ke[1]},y.createElement(me,{width:"80%"}),y.createElement(me,{width:"30%"})),y.createElement(Ae,{numColumn:ke[2]},y.createElement(me,{width:"60%"})),y.createElement(Ae,{numColumn:ke[3]},y.createElement(me,{width:"60%"}))),y.createElement(el,null,y.createElement(Ae,{numColumn:ke[0]},y.createElement(me,{width:"60%"})),y.createElement(Ae,{numColumn:ke[1]},y.createElement(me,{width:"80%"}),y.createElement(me,{width:"30%"})),y.createElement(Ae,{numColumn:ke[2]},y.createElement(me,{width:"60%"})),y.createElement(Ae,{numColumn:ke[3]},y.createElement(me,{width:"60%"})))),TN=k.table(({theme:e,compact:t,inAddonPanel:r})=>({"&&":{borderSpacing:0,color:e.color.defaultText,"td, th":{padding:0,border:"none",verticalAlign:"top",textOverflow:"ellipsis"},fontSize:e.typography.size.s2-1,lineHeight:"20px",textAlign:"left",width:"100%",marginTop:r?0:25,marginBottom:r?0:40,"thead th:first-of-type, td:first-of-type":{width:"25%"},"th:first-of-type, td:first-of-type":{paddingLeft:20},"th:nth-of-type(2), td:nth-of-type(2)":{...t?null:{width:"35%"}},"td:nth-of-type(3)":{...t?null:{width:"15%"}},"th:last-of-type, td:last-of-type":{paddingRight:20,...t?null:{width:"25%"}},th:{color:e.base==="light"?oe(.25,e.color.defaultText):oe(.45,e.color.defaultText),paddingTop:10,paddingBottom:10,paddingLeft:15,paddingRight:15},td:{paddingTop:"10px",paddingBottom:"10px","&:not(:first-of-type)":{paddingLeft:15,paddingRight:15},"&:last-of-type":{paddingRight:20}},marginLeft:r?0:1,marginRight:r?0:1,tbody:{...r?null:{filter:e.base==="light"?"drop-shadow(0px 1px 3px rgba(0, 0, 0, 0.10))":"drop-shadow(0px 1px 3px rgba(0, 0, 0, 0.20))"},"> tr > *":{background:e.background.content,borderTop:`1px solid ${e.appBorderColor}`},...r?null:{"> tr:first-of-type > *":{borderBlockStart:`1px solid ${e.appBorderColor}`},"> tr:last-of-type > *":{borderBlockEnd:`1px solid ${e.appBorderColor}`},"> tr > *:first-of-type":{borderInlineStart:`1px solid ${e.appBorderColor}`},"> tr > *:last-of-type":{borderInlineEnd:`1px solid ${e.appBorderColor}`},"> tr:first-of-type > td:first-of-type":{borderTopLeftRadius:e.appBorderRadius},"> tr:first-of-type > td:last-of-type":{borderTopRightRadius:e.appBorderRadius},"> tr:last-of-type > td:first-of-type":{borderBottomLeftRadius:e.appBorderRadius},"> tr:last-of-type > td:last-of-type":{borderBottomRightRadius:e.appBorderRadius}}}}})),LN=k(Fr)(({theme:e})=>({margin:"-4px -12px -4px 0"})),MN=k.span({display:"flex",justifyContent:"space-between"}),ON={alpha:(e,t)=>e.name.localeCompare(t.name),requiredFirst:(e,t)=>{var r,n;return+!!((r=t.type)!=null&&r.required)-+!!((n=e.type)!=null&&n.required)||e.name.localeCompare(t.name)},none:void 0},PN=(e,t)=>{let r={ungrouped:[],ungroupedSubsections:{},sections:{}};if(!e)return r;Object.entries(e).forEach(([o,i])=>{let{category:s,subcategory:c}=(i==null?void 0:i.table)||{};if(s){let d=r.sections[s]||{ungrouped:[],subsections:{}};if(!c)d.ungrouped.push({key:o,...i});else{let f=d.subsections[c]||[];f.push({key:o,...i}),d.subsections[c]=f}r.sections[s]=d}else if(c){let d=r.ungroupedSubsections[c]||[];d.push({key:o,...i}),r.ungroupedSubsections[c]=d}else r.ungrouped.push({key:o,...i})});let n=ON[t],a=o=>n?Object.keys(o).reduce((i,s)=>({...i,[s]:o[s].sort(n)}),{}):o;return{ungrouped:r.ungrouped.sort(n),ungroupedSubsections:a(r.ungroupedSubsections),sections:Object.keys(r.sections).reduce((o,i)=>({...o,[i]:{ungrouped:r.sections[i].ungrouped.sort(n),subsections:a(r.sections[i].subsections)}}),{})}},NN=(e,t,r)=>{try{return x9(e,t,r)}catch(n){return RL.warn(n.message),!1}},Y1=e=>{let{updateArgs:t,resetArgs:r,compact:n,inAddonPanel:a,initialExpandedArgs:o,sort:i="none",isLoading:s}=e;if("error"in e){let{error:E}=e;return y.createElement(gC,null,E," ",y.createElement(oa,{href:"http://storybook.js.org/docs/",target:"_blank",withArrow:!0},y.createElement(N1,null)," Read the docs"))}if(s)return y.createElement(zN,null);let{rows:c,args:d,globals:f}="rows"in e&&e,h=PN(M9(c||{},E=>{var D;return!((D=E==null?void 0:E.table)!=null&&D.disable)&&NN(E,d||{},f||{})}),i),p=h.ungrouped.length===0,m=Object.entries(h.sections).length===0,g=Object.entries(h.ungroupedSubsections).length===0;if(p&&m&&g)return y.createElement(SN,{inAddonPanel:a});let v=1;t&&(v+=1),n||(v+=2);let b=Object.keys(h.sections).length>0,C={updateArgs:t,compact:n,inAddonPanel:a,initialExpandedArgs:o};return y.createElement(Wf,null,y.createElement(TN,{compact:n,inAddonPanel:a,className:"docblock-argstable sb-unstyled"},y.createElement("thead",{className:"docblock-argstable-head"},y.createElement("tr",null,y.createElement("th",null,y.createElement("span",null,"Name")),n?null:y.createElement("th",null,y.createElement("span",null,"Description")),n?null:y.createElement("th",null,y.createElement("span",null,"Default")),t?y.createElement("th",null,y.createElement(MN,null,"Control"," ",!s&&r&&y.createElement(LN,{onClick:()=>r(),title:"Reset controls"},y.createElement(_L,{"aria-hidden":!0})))):null)),y.createElement("tbody",{className:"docblock-argstable-body"},h.ungrouped.map(E=>y.createElement(Qi,{key:E.key,row:E,arg:d&&d[E.key],...C})),Object.entries(h.ungroupedSubsections).map(([E,D])=>y.createElement(W0,{key:E,label:E,level:"subsection",colSpan:v},D.map(w=>y.createElement(Qi,{key:w.key,row:w,arg:d&&d[w.key],expandable:b,...C})))),Object.entries(h.sections).map(([E,D])=>y.createElement(W0,{key:E,label:E,level:"section",colSpan:v},D.ungrouped.map(w=>y.createElement(Qi,{key:w.key,row:w,arg:d&&d[w.key],...C})),Object.entries(D.subsections).map(([w,x])=>y.createElement(W0,{key:w,label:w,level:"subsection",colSpan:v},x.map(S=>y.createElement(Qi,{key:S.key,row:S,arg:d&&d[S.key],expandable:b,...C})))))))))},$N=({tabs:e,...t})=>{let r=Object.entries(e);return r.length===1?y.createElement(Y1,{...r[0][1],...t}):y.createElement(tC,null,r.map((n,a)=>{let[o,i]=n,s=`prop_table_div_${o}`,c="div",d=a===0?t:{sort:t.sort};return y.createElement(c,{key:s,id:s,title:o},({active:f})=>f?y.createElement(Y1,{key:`prop_table_${o}`,...i,...d}):null)}))};k.div(({theme:e})=>({marginRight:30,fontSize:`${e.typography.size.s1}px`,color:e.base==="light"?oe(.4,e.color.defaultText):oe(.6,e.color.defaultText)}));k.div({overflow:"hidden",whiteSpace:"nowrap",textOverflow:"ellipsis"});k.div({display:"flex",flexDirection:"row",alignItems:"baseline","&:not(:last-child)":{marginBottom:"1rem"}});k.div(se,({theme:e})=>({...vu(e),margin:"25px 0 40px",padding:"30px 20px"}));k.div(({theme:e})=>({fontWeight:e.typography.weight.bold,color:e.color.defaultText}));k.div(({theme:e})=>({color:e.base==="light"?oe(.2,e.color.defaultText):oe(.6,e.color.defaultText)}));k.div({flex:"0 0 30%",lineHeight:"20px",marginTop:5});k.div(({theme:e})=>({flex:1,textAlign:"center",fontFamily:e.typography.fonts.mono,fontSize:e.typography.size.s1,lineHeight:1,overflow:"hidden",color:e.base==="light"?oe(.4,e.color.defaultText):oe(.6,e.color.defaultText),"> div":{display:"inline-block",overflow:"hidden",maxWidth:"100%",textOverflow:"ellipsis"},span:{display:"block",marginTop:2}}));k.div({display:"flex",flexDirection:"row"});k.div(({background:e})=>({position:"relative",flex:1,"&::before":{position:"absolute",top:0,left:0,width:"100%",height:"100%",background:e,content:'""'}}));k.div(({theme:e})=>({...vu(e),display:"flex",flexDirection:"row",height:50,marginBottom:5,overflow:"hidden",backgroundColor:"white",backgroundImage:"repeating-linear-gradient(-45deg, #ccc, #ccc 1px, #fff 1px, #fff 16px)",backgroundClip:"padding-box"}));k.div({display:"flex",flexDirection:"column",flex:1,position:"relative",marginBottom:30});k.div({flex:1,display:"flex",flexDirection:"row"});k.div({display:"flex",alignItems:"flex-start"});k.div({flex:"0 0 30%"});k.div({flex:1});k.div(({theme:e})=>({display:"flex",flexDirection:"row",alignItems:"center",paddingBottom:20,fontWeight:e.typography.weight.bold,color:e.base==="light"?oe(.4,e.color.defaultText):oe(.6,e.color.defaultText)}));k.div(({theme:e})=>({fontSize:e.typography.size.s2,lineHeight:"20px",display:"flex",flexDirection:"column"}));k.div(({theme:e})=>({fontFamily:e.typography.fonts.base,fontSize:e.typography.size.s2,color:e.color.defaultText,marginLeft:10,lineHeight:1.2}));k.div(({theme:e})=>({...vu(e),overflow:"hidden",height:40,width:40,display:"flex",alignItems:"center",justifyContent:"center",flex:"none","> img, > svg":{width:20,height:20}}));k.div({display:"inline-flex",flexDirection:"row",alignItems:"center",flex:"0 1 calc(20% - 10px)",minWidth:120,margin:"0px 10px 30px 0"});k.div({display:"flex",flexFlow:"row wrap"});var HN=e=>`anchor--${e}`,jN=({storyId:e,children:t})=>y.createElement("div",{id:HN(e),className:"sb-anchor"},t);globalThis&&globalThis.__DOCS_CONTEXT__===void 0&&(globalThis.__DOCS_CONTEXT__=l.createContext(null),globalThis.__DOCS_CONTEXT__.displayName="DocsContext");var Zt=globalThis?globalThis.__DOCS_CONTEXT__:l.createContext(null),An=(e,t)=>l.useContext(Zt).resolveOf(e,t),VN=e=>e.split("-").map(t=>t.charAt(0).toUpperCase()+t.slice(1)).join(""),UN=e=>{if(e)return typeof e=="string"?e.includes("-")?VN(e):e:e.__docgenInfo&&e.__docgenInfo.displayName?e.__docgenInfo.displayName:e.name};function qN(e,t="start"){e.scrollIntoView({behavior:"smooth",block:t,inline:"nearest"})}var WN=Object.create,e9=Object.defineProperty,GN=Object.getOwnPropertyDescriptor,t9=Object.getOwnPropertyNames,KN=Object.getPrototypeOf,YN=Object.prototype.hasOwnProperty,et=(e,t)=>function(){return t||(0,e[t9(e)[0]])((t={exports:{}}).exports,t),t.exports},ZN=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of t9(t))!YN.call(e,a)&&a!==r&&e9(e,a,{get:()=>t[a],enumerable:!(n=GN(t,a))||n.enumerable});return e},xh=(e,t,r)=>(r=e!=null?WN(KN(e)):{},ZN(!e||!e.__esModule?e9(r,"default",{value:e,enumerable:!0}):r,e)),JN=["bubbles","cancelBubble","cancelable","composed","currentTarget","defaultPrevented","eventPhase","isTrusted","returnValue","srcElement","target","timeStamp","type"],XN=["detail"];function QN(e){let t=JN.filter(r=>e[r]!==void 0).reduce((r,n)=>({...r,[n]:e[n]}),{});return e instanceof CustomEvent&&XN.filter(r=>e[r]!==void 0).forEach(r=>{t[r]=e[r]}),t}var e$=Q1(uC(),1),r9=et({"node_modules/has-symbols/shams.js"(e,t){t.exports=function(){if(typeof Symbol!="function"||typeof Object.getOwnPropertySymbols!="function")return!1;if(typeof Symbol.iterator=="symbol")return!0;var r={},n=Symbol("test"),a=Object(n);if(typeof n=="string"||Object.prototype.toString.call(n)!=="[object Symbol]"||Object.prototype.toString.call(a)!=="[object Symbol]")return!1;var o=42;r[n]=o;for(n in r)return!1;if(typeof Object.keys=="function"&&Object.keys(r).length!==0||typeof Object.getOwnPropertyNames=="function"&&Object.getOwnPropertyNames(r).length!==0)return!1;var i=Object.getOwnPropertySymbols(r);if(i.length!==1||i[0]!==n||!Object.prototype.propertyIsEnumerable.call(r,n))return!1;if(typeof Object.getOwnPropertyDescriptor=="function"){var s=Object.getOwnPropertyDescriptor(r,n);if(s.value!==o||s.enumerable!==!0)return!1}return!0}}}),n9=et({"node_modules/has-symbols/index.js"(e,t){var r=typeof Symbol<"u"&&Symbol,n=r9();t.exports=function(){return typeof r!="function"||typeof Symbol!="function"||typeof r("foo")!="symbol"||typeof Symbol("bar")!="symbol"?!1:n()}}}),t$=et({"node_modules/function-bind/implementation.js"(e,t){var r="Function.prototype.bind called on incompatible ",n=Array.prototype.slice,a=Object.prototype.toString,o="[object Function]";t.exports=function(i){var s=this;if(typeof s!="function"||a.call(s)!==o)throw new TypeError(r+s);for(var c=n.call(arguments,1),d,f=function(){if(this instanceof d){var v=s.apply(this,c.concat(n.call(arguments)));return Object(v)===v?v:this}else return s.apply(i,c.concat(n.call(arguments)))},h=Math.max(0,s.length-c.length),p=[],m=0;m"u"?r:h(Uint8Array),g={"%AggregateError%":typeof AggregateError>"u"?r:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer>"u"?r:ArrayBuffer,"%ArrayIteratorPrototype%":f?h([][Symbol.iterator]()):r,"%AsyncFromSyncIteratorPrototype%":r,"%AsyncFunction%":p,"%AsyncGenerator%":p,"%AsyncGeneratorFunction%":p,"%AsyncIteratorPrototype%":p,"%Atomics%":typeof Atomics>"u"?r:Atomics,"%BigInt%":typeof BigInt>"u"?r:BigInt,"%Boolean%":Boolean,"%DataView%":typeof DataView>"u"?r:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":Error,"%eval%":eval,"%EvalError%":EvalError,"%Float32Array%":typeof Float32Array>"u"?r:Float32Array,"%Float64Array%":typeof Float64Array>"u"?r:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry>"u"?r:FinalizationRegistry,"%Function%":a,"%GeneratorFunction%":p,"%Int8Array%":typeof Int8Array>"u"?r:Int8Array,"%Int16Array%":typeof Int16Array>"u"?r:Int16Array,"%Int32Array%":typeof Int32Array>"u"?r:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":f?h(h([][Symbol.iterator]())):r,"%JSON%":typeof JSON=="object"?JSON:r,"%Map%":typeof Map>"u"?r:Map,"%MapIteratorPrototype%":typeof Map>"u"||!f?r:h(new Map()[Symbol.iterator]()),"%Math%":Math,"%Number%":Number,"%Object%":Object,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise>"u"?r:Promise,"%Proxy%":typeof Proxy>"u"?r:Proxy,"%RangeError%":RangeError,"%ReferenceError%":ReferenceError,"%Reflect%":typeof Reflect>"u"?r:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set>"u"?r:Set,"%SetIteratorPrototype%":typeof Set>"u"||!f?r:h(new Set()[Symbol.iterator]()),"%SharedArrayBuffer%":typeof SharedArrayBuffer>"u"?r:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":f?h(""[Symbol.iterator]()):r,"%Symbol%":f?Symbol:r,"%SyntaxError%":n,"%ThrowTypeError%":d,"%TypedArray%":m,"%TypeError%":o,"%Uint8Array%":typeof Uint8Array>"u"?r:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray>"u"?r:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array>"u"?r:Uint16Array,"%Uint32Array%":typeof Uint32Array>"u"?r:Uint32Array,"%URIError%":URIError,"%WeakMap%":typeof WeakMap>"u"?r:WeakMap,"%WeakRef%":typeof WeakRef>"u"?r:WeakRef,"%WeakSet%":typeof WeakSet>"u"?r:WeakSet},v=function T(L){var P;if(L==="%AsyncFunction%")P=i("async function () {}");else if(L==="%GeneratorFunction%")P=i("function* () {}");else if(L==="%AsyncGeneratorFunction%")P=i("async function* () {}");else if(L==="%AsyncGenerator%"){var M=T("%AsyncGeneratorFunction%");M&&(P=M.prototype)}else if(L==="%AsyncIteratorPrototype%"){var N=T("%AsyncGenerator%");N&&(P=h(N.prototype))}return g[L]=P,P},b={"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},C=Sh(),E=r$(),D=C.call(Function.call,Array.prototype.concat),w=C.call(Function.apply,Array.prototype.splice),x=C.call(Function.call,String.prototype.replace),S=C.call(Function.call,String.prototype.slice),F=C.call(Function.call,RegExp.prototype.exec),A=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,_=/\\(\\)?/g,R=function(T){var L=S(T,0,1),P=S(T,-1);if(L==="%"&&P!=="%")throw new n("invalid intrinsic syntax, expected closing `%`");if(P==="%"&&L!=="%")throw new n("invalid intrinsic syntax, expected opening `%`");var M=[];return x(T,A,function(N,q,W,G){M[M.length]=W?x(G,_,"$1"):q||N}),M},I=function(T,L){var P=T,M;if(E(b,P)&&(M=b[P],P="%"+M[0]+"%"),E(g,P)){var N=g[P];if(N===p&&(N=v(P)),typeof N>"u"&&!L)throw new o("intrinsic "+T+" exists, but is not available. Please file an issue!");return{alias:M,name:P,value:N}}throw new n("intrinsic "+T+" does not exist!")};t.exports=function(T,L){if(typeof T!="string"||T.length===0)throw new o("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof L!="boolean")throw new o('"allowMissing" argument must be a boolean');if(F(/^%?[^%]*%?$/,T)===null)throw new n("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var P=R(T),M=P.length>0?P[0]:"",N=I("%"+M+"%",L),q=N.name,W=N.value,G=!1,Z=N.alias;Z&&(M=Z[0],w(P,D([0,1],Z)));for(var te=1,ne=!0;te=P.length){var J=s(W,X);ne=!!J,ne&&"get"in J&&!("originalValue"in J.get)?W=J.get:W=W[X]}else ne=E(W,X),W=W[X];ne&&!G&&(g[q]=W)}}return W}}}),n$=et({"node_modules/call-bind/index.js"(e,t){var r=Sh(),n=a9(),a=n("%Function.prototype.apply%"),o=n("%Function.prototype.call%"),i=n("%Reflect.apply%",!0)||r.call(o,a),s=n("%Object.getOwnPropertyDescriptor%",!0),c=n("%Object.defineProperty%",!0),d=n("%Math.max%");if(c)try{c({},"a",{value:1})}catch{c=null}t.exports=function(h){var p=i(r,o,arguments);if(s&&c){var m=s(p,"length");m.configurable&&c(p,"length",{value:1+d(0,h.length-(arguments.length-1))})}return p};var f=function(){return i(r,a,arguments)};c?c(t.exports,"apply",{value:f}):t.exports.apply=f}}),a$=et({"node_modules/call-bind/callBound.js"(e,t){var r=a9(),n=n$(),a=n(r("String.prototype.indexOf"));t.exports=function(o,i){var s=r(o,!!i);return typeof s=="function"&&a(o,".prototype.")>-1?n(s):s}}}),o$=et({"node_modules/has-tostringtag/shams.js"(e,t){var r=r9();t.exports=function(){return r()&&!!Symbol.toStringTag}}}),i$=et({"node_modules/is-regex/index.js"(e,t){var r=a$(),n=o$()(),a,o,i,s;n&&(a=r("Object.prototype.hasOwnProperty"),o=r("RegExp.prototype.exec"),i={},c=function(){throw i},s={toString:c,valueOf:c},typeof Symbol.toPrimitive=="symbol"&&(s[Symbol.toPrimitive]=c));var c,d=r("Object.prototype.toString"),f=Object.getOwnPropertyDescriptor,h="[object RegExp]";t.exports=n?function(p){if(!p||typeof p!="object")return!1;var m=f(p,"lastIndex"),g=m&&a(m,"value");if(!g)return!1;try{o(p,s)}catch(v){return v===i}}:function(p){return!p||typeof p!="object"&&typeof p!="function"?!1:d(p)===h}}}),l$=et({"node_modules/is-function/index.js"(e,t){t.exports=n;var r=Object.prototype.toString;function n(a){if(!a)return!1;var o=r.call(a);return o==="[object Function]"||typeof a=="function"&&o!=="[object RegExp]"||typeof window<"u"&&(a===window.setTimeout||a===window.alert||a===window.confirm||a===window.prompt)}}}),s$=et({"node_modules/is-symbol/index.js"(e,t){var r=Object.prototype.toString,n=n9()();n?(a=Symbol.prototype.toString,o=/^Symbol\(.*\)$/,i=function(s){return typeof s.valueOf()!="symbol"?!1:o.test(a.call(s))},t.exports=function(s){if(typeof s=="symbol")return!0;if(r.call(s)!=="[object Symbol]")return!1;try{return i(s)}catch{return!1}}):t.exports=function(s){return!1};var a,o,i}}),u$=xh(i$()),c$=xh(l$()),d$=xh(s$());function p$(e){return e!=null&&typeof e=="object"&&Array.isArray(e)===!1}var f$=typeof global=="object"&&global&&global.Object===Object&&global,h$=f$,m$=typeof self=="object"&&self&&self.Object===Object&&self,g$=h$||m$||Function("return this")(),Fh=g$,v$=Fh.Symbol,xa=v$,o9=Object.prototype,y$=o9.hasOwnProperty,b$=o9.toString,lo=xa?xa.toStringTag:void 0;function w$(e){var t=y$.call(e,lo),r=e[lo];try{e[lo]=void 0;var n=!0}catch{}var a=b$.call(e);return n&&(t?e[lo]=r:delete e[lo]),a}var D$=w$,E$=Object.prototype,C$=E$.toString;function x$(e){return C$.call(e)}var S$=x$,F$="[object Null]",A$="[object Undefined]",Z4=xa?xa.toStringTag:void 0;function k$(e){return e==null?e===void 0?A$:F$:Z4&&Z4 in Object(e)?D$(e):S$(e)}var _$=k$,J4=xa?xa.prototype:void 0;J4&&J4.toString;function B$(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}var i9=B$,R$="[object AsyncFunction]",I$="[object Function]",z$="[object GeneratorFunction]",T$="[object Proxy]";function L$(e){if(!i9(e))return!1;var t=_$(e);return t==I$||t==z$||t==R$||t==T$}var M$=L$,O$=Fh["__core-js_shared__"],G0=O$,X4=(function(){var e=/[^.]+$/.exec(G0&&G0.keys&&G0.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""})();function P$(e){return!!X4&&X4 in e}var N$=P$,$$=Function.prototype,H$=$$.toString;function j$(e){if(e!=null){try{return H$.call(e)}catch{}try{return e+""}catch{}}return""}var V$=j$,U$=/[\\^$.*+?()[\]{}|]/g,q$=/^\[object .+?Constructor\]$/,W$=Function.prototype,G$=Object.prototype,K$=W$.toString,Y$=G$.hasOwnProperty,Z$=RegExp("^"+K$.call(Y$).replace(U$,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function J$(e){if(!i9(e)||N$(e))return!1;var t=M$(e)?Z$:q$;return t.test(V$(e))}var X$=J$;function Q$(e,t){return e==null?void 0:e[t]}var eH=Q$;function tH(e,t){var r=eH(e,t);return X$(r)?r:void 0}var l9=tH;function rH(e,t){return e===t||e!==e&&t!==t}var nH=rH,aH=l9(Object,"create"),Yo=aH;function oH(){this.__data__=Yo?Yo(null):{},this.size=0}var iH=oH;function lH(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}var sH=lH,uH="__lodash_hash_undefined__",cH=Object.prototype,dH=cH.hasOwnProperty;function pH(e){var t=this.__data__;if(Yo){var r=t[e];return r===uH?void 0:r}return dH.call(t,e)?t[e]:void 0}var fH=pH,hH=Object.prototype,mH=hH.hasOwnProperty;function gH(e){var t=this.__data__;return Yo?t[e]!==void 0:mH.call(t,e)}var vH=gH,yH="__lodash_hash_undefined__";function bH(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=Yo&&t===void 0?yH:t,this}var wH=bH;function Oa(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t-1}var RH=BH;function IH(e,t){var r=this.__data__,n=wu(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this}var zH=IH;function Pa(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t{let t=null,r=!1,n=!1,a=!1,o="";if(e.indexOf("//")>=0||e.indexOf("/*")>=0)for(let i=0;iaj(e).replace(/\n\s*/g,"").trim()),ij=function(e,t){let r=t.slice(0,t.indexOf("{")),n=t.slice(t.indexOf("{"));if(r.includes("=>")||r.includes("function"))return t;let a=r;return a=a.replace(e,"function"),a+n},lj=/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d{3})?Z$/;function u9(e){if(!nj(e))return e;let t=e,r=!1;return typeof Event<"u"&&e instanceof Event&&(t=QN(t),r=!0),t=Object.keys(t).reduce((n,a)=>{try{t[a]&&t[a].toJSON,n[a]=t[a]}catch{r=!0}return n},{}),r?t:e}var sj=function(e){let t,r,n,a;return function(o,i){try{if(o==="")return a=[],t=new Map([[i,"[]"]]),r=new Map,n=[],i;let s=r.get(this)||this;for(;n.length&&s!==n[0];)n.shift(),a.pop();if(typeof i=="boolean")return i;if(i===void 0)return e.allowUndefined?"_undefined_":void 0;if(i===null)return null;if(typeof i=="number")return i===-1/0?"_-Infinity_":i===1/0?"_Infinity_":Number.isNaN(i)?"_NaN_":i;if(typeof i=="bigint")return`_bigint_${i.toString()}`;if(typeof i=="string")return lj.test(i)?e.allowDate?`_date_${i}`:void 0:i;if((0,u$.default)(i))return e.allowRegExp?`_regexp_${i.flags}|${i.source}`:void 0;if((0,c$.default)(i)){if(!e.allowFunction)return;let{name:d}=i,f=i.toString();return f.match(/(\[native code\]|WEBPACK_IMPORTED_MODULE|__webpack_exports__|__webpack_require__)/)?`_function_${d}|${(()=>{}).toString()}`:`_function_${d}|${oj(ij(o,f))}`}if((0,d$.default)(i)){if(!e.allowSymbol)return;let d=Symbol.keyFor(i);return d!==void 0?`_gsymbol_${d}`:`_symbol_${i.toString().slice(7,-1)}`}if(n.length>=e.maxDepth)return Array.isArray(i)?`[Array(${i.length})]`:"[Object]";if(i===this)return`_duplicate_${JSON.stringify(a)}`;if(i instanceof Error&&e.allowError)return{__isConvertedError__:!0,errorProperties:{...i.cause?{cause:i.cause}:{},...i,name:i.name,message:i.message,stack:i.stack,"_constructor-name_":i.constructor.name}};if(i.constructor&&i.constructor.name&&i.constructor.name!=="Object"&&!Array.isArray(i)&&!e.allowClass)return;let c=t.get(i);if(!c){let d=Array.isArray(i)?i:u9(i);if(i.constructor&&i.constructor.name&&i.constructor.name!=="Object"&&!Array.isArray(i)&&e.allowClass)try{Object.assign(d,{"_constructor-name_":i.constructor.name})}catch{}return a.push(o),n.unshift(d),t.set(i,JSON.stringify(a)),i!==d&&r.set(i,d),d}return`_duplicate_${c}`}catch{return}}},uj={maxDepth:10,space:void 0,allowFunction:!0,allowRegExp:!0,allowDate:!0,allowClass:!0,allowError:!0,allowUndefined:!0,allowSymbol:!0,lazyEval:!0},cj=(e,t={})=>{let r={...uj,...t};return JSON.stringify(u9(e),sj(r),t.space)};function c9(e){return cj(e,{allowFunction:!1})}var d9=l.createContext({sources:{}}),p9="--unknown--",dj=({children:e,channel:t})=>{let[r,n]=l.useState({});return l.useEffect(()=>{let a=(o,i=null,s=!1)=>{let{id:c,args:d=void 0,source:f,format:h}=typeof o=="string"?{id:o,source:i,format:s}:o,p=d?c9(d):p9;n(m=>({...m,[c]:{...m[c],[p]:{code:f,format:h}}}))};return t.on(Th,a),()=>t.off(Th,a)},[]),y.createElement(d9.Provider,{value:{sources:r}},e)},pj=(e,t,r)=>{let{sources:n}=r,a=n==null?void 0:n[e];return(a==null?void 0:a[c9(t)])||(a==null?void 0:a[p9])||{code:""}},fj=({snippet:e,storyContext:t,typeFromProps:r,transformFromProps:n})=>{var c,d;let{__isArgsStory:a}=t.parameters,o=((c=t.parameters.docs)==null?void 0:c.source)||{},i=r||o.type||xu.AUTO;if(o.code!==void 0)return o.code;let s=i===xu.DYNAMIC||i===xu.AUTO&&e&&a?e:o.originalSource||"";return((d=n??o.transform)==null?void 0:d(s,t))||s},hj=(e,t,r)=>{var m,g,v,b;let n,{of:a}=e;if("of"in e&&a===void 0)throw new Error("Unexpected `of={undefined}`, did you mistype a CSF file reference?");if(a)n=t.resolveOf(a,["story"]).story;else try{n=t.storyById()}catch{}let o=((g=(m=n==null?void 0:n.parameters)==null?void 0:m.docs)==null?void 0:g.source)||{},{code:i}=e,s=e.format??o.format,c=e.language??o.language??"jsx",d=e.dark??o.dark??!1;if(!i&&!n)return{error:"Oh no! The source is not available."};if(i)return{code:i,format:s,language:c,dark:d};let f=t.getStoryContext(n),h=e.__forceInitialArgs?f.initialArgs:f.unmappedArgs,p=pj(n.id,h,r);return s=p.format??((b=(v=n.parameters.docs)==null?void 0:v.source)==null?void 0:b.format)??!1,{code:fj({snippet:p.code,storyContext:{...f,args:h},typeFromProps:e.type,transformFromProps:e.transform}),format:s,language:c,dark:d}};function mj(e,t){let r=gj([e],t);return r&&r[0]}function gj(e,t){let[r,n]=l.useState({});return l.useEffect(()=>{Promise.all(e.map(async a=>{let o=await t.loadStory(a);n(i=>i[a]===o?i:{...i,[a]:o})}))}),e.map(a=>{if(r[a])return r[a];try{return t.storyById(a)}catch{return null}})}var vj=(e,t)=>{let{of:r,meta:n}=e;if("of"in e&&r===void 0)throw new Error("Unexpected `of={undefined}`, did you mistype a CSF file reference?");return n&&t.referenceMeta(n,!1),t.resolveOf(r||"story",["story"]).story.id},yj=(e,t,r)=>{let{parameters:n={}}=t||{},{docs:a={}}=n,o=a.story||{};if(a.disable)return null;if(e.inline??o.inline??!1){let s=e.height??o.height,c=e.autoplay??o.autoplay??!1;return{story:t,inline:!0,height:s,autoplay:c,forceInitialArgs:!!e.__forceInitialArgs,primary:!!e.__primary,renderStoryToElement:r.renderStoryToElement}}let i=e.height??o.height??o.iframeHeight??"100px";return{story:t,inline:!1,height:i,primary:!!e.__primary}},bj=(e={__forceInitialArgs:!1,__primary:!1})=>{let t=l.useContext(Zt),r=vj(e,t),n=mj(r,t);if(!n)return y.createElement(bC,null);let a=yj(e,n,t);return a?y.createElement(IM,{...a}):null},wj=e=>{var p,m,g,v,b,C,E,D,w,x;let t=l.useContext(Zt),r=l.useContext(d9),{of:n,source:a}=e;if("of"in e&&n===void 0)throw new Error("Unexpected `of={undefined}`, did you mistype a CSF file reference?");let{story:o}=An(n||"story",["story"]),i=hj({...a,...n&&{of:n}},t,r),s=e.layout??o.parameters.layout??((m=(p=o.parameters.docs)==null?void 0:p.canvas)==null?void 0:m.layout)??"padded",c=e.withToolbar??((v=(g=o.parameters.docs)==null?void 0:g.canvas)==null?void 0:v.withToolbar)??!1,d=e.additionalActions??((C=(b=o.parameters.docs)==null?void 0:b.canvas)==null?void 0:C.additionalActions),f=e.sourceState??((D=(E=o.parameters.docs)==null?void 0:E.canvas)==null?void 0:D.sourceState)??"hidden",h=e.className??((x=(w=o.parameters.docs)==null?void 0:w.canvas)==null?void 0:x.className);return y.createElement(wC,{withSource:f==="none"?void 0:i,isExpanded:f==="shown",withToolbar:c,additionalActions:d,className:h,layout:s},y.createElement(bj,{of:n||o.moduleExport,meta:e.meta,...e.story}))},Dj=(e,t)=>{let r=Ej(e,t);if(!r)throw new Error("No result when story was defined");return r},Ej=(e,t)=>{let r=e?t.getStoryContext(e):{args:{}},{id:n}=e||{id:"none"},[a,o]=l.useState(r.args);l.useEffect(()=>{let c=d=>{d.storyId===n&&o(d.args)};return t.channel.on(A4,c),()=>t.channel.off(A4,c)},[n,t.channel]);let i=l.useCallback(c=>t.channel.emit(IL,{storyId:n,updatedArgs:c}),[n,t.channel]),s=l.useCallback(c=>t.channel.emit(zL,{storyId:n,argNames:c}),[n,t.channel]);return e&&[a,i,s]},Cj=(e,t)=>{let r=t.getStoryContext(e),[n,a]=l.useState(r.globals);return l.useEffect(()=>{let o=i=>{a(i.globals)};return t.channel.on(k4,o),()=>t.channel.off(k4,o)},[t.channel]),[n]};function xj(e,t){let{extractArgTypes:r}=t.docs||{};if(!r)throw new Error("Args unsupported. See Args documentation for your framework.");return r(e)}var Sj=e=>{var w;let{of:t}=e;if("of"in e&&t===void 0)throw new Error("Unexpected `of={undefined}`, did you mistype a CSF file reference?");let r=l.useContext(Zt),{story:n}=r.resolveOf(t||"story",["story"]),{parameters:a,argTypes:o,component:i,subcomponents:s}=n,c=((w=a.docs)==null?void 0:w.controls)||{},d=e.include??c.include,f=e.exclude??c.exclude,h=e.sort??c.sort,[p,m,g]=Dj(n,r),[v]=Cj(n,r),b=F4(o,d,f);if(!(s&&Object.keys(s).length>0))return Object.keys(b).length>0||Object.keys(p).length>0?y.createElement(Y1,{rows:b,sort:h,args:p,globals:v,updateArgs:m,resetArgs:g}):null;let C=UN(i),E=Object.fromEntries(Object.entries(s).map(([x,S])=>[x,{rows:F4(xj(S,a),d,f),sort:h}])),D={[C]:{rows:b,sort:h},...E};return y.createElement($N,{tabs:D,sort:h,args:p,globals:v,updateArgs:m,resetArgs:g})},{document:f9}=globalThis,h9=({className:e,children:t,...r})=>{if(typeof e!="string"&&(typeof t!="string"||!t.match(/[\n\r]/g)))return y.createElement(Gf,null,t);let n=e&&e.split("-");return y.createElement(vC,{language:n&&n[1]||"text",format:!1,code:t,...r})};function kh(e,t){e.channel.emit(sC,t)}var Z1=iC.a,Fj=({hash:e,children:t})=>{let r=l.useContext(Zt);return y.createElement(Z1,{href:e,target:"_self",onClick:n=>{let a=e.substring(1);f9.getElementById(a)&&kh(r,e)}},t)},m9=e=>{let{href:t,target:r,children:n,...a}=e,o=l.useContext(Zt);return!t||r==="_blank"||/^https?:\/\//.test(t)?y.createElement(Z1,{...e}):t.startsWith("#")?y.createElement(Fj,{hash:t},n):y.createElement(Z1,{href:t,onClick:i=>{i.button===0&&!i.altKey&&!i.ctrlKey&&!i.metaKey&&!i.shiftKey&&(i.preventDefault(),kh(o,i.currentTarget.getAttribute("href")))},target:r,...a},n)},g9=["h1","h2","h3","h4","h5","h6"],Aj=g9.reduce((e,t)=>({...e,[t]:k(t)({"& svg":{position:"relative",top:"-0.1em",visibility:"hidden"},"&:hover svg":{visibility:"visible"}})}),{}),kj=k.a(()=>({float:"left",lineHeight:"inherit",paddingRight:"10px",marginLeft:"-24px",color:"inherit"})),_j=({as:e,id:t,children:r,...n})=>{let a=l.useContext(Zt),o=Aj[e],i=`#${t}`;return y.createElement(o,{id:t,...n},y.createElement(kj,{"aria-hidden":"true",href:i,tabIndex:-1,target:"_self",onClick:s=>{f9.getElementById(t)&&kh(a,i)}},y.createElement(SL,null)),r)},_h=e=>{let{as:t,id:r,children:n,...a}=e;if(r)return y.createElement(_j,{as:t,id:r,...a},n);let o=t,{as:i,...s}=e;return y.createElement(o,{...ie(s,t)})},v9=g9.reduce((e,t)=>({...e,[t]:r=>y.createElement(_h,{as:t,...r})}),{}),Bj=e=>{var t;if(!e.children)return null;if(typeof e.children!="string")throw new Error(k9`The Markdown block only accepts children as a single string, but children were of type: '${typeof e.children}' + This is often caused by not wrapping the child in a template string. + + This is invalid: + + # Some heading + A paragraph + + + Instead do: + + {\` + # Some heading + A paragraph + \`} + + `);return y.createElement($C,{...e,options:{forceBlock:!0,overrides:{code:h9,a:m9,...v9,...(t=e==null?void 0:e.options)==null?void 0:t.overrides},...e==null?void 0:e.options}})},Rj=(e=>(e.INFO="info",e.NOTES="notes",e.DOCGEN="docgen",e.AUTO="auto",e))(Rj||{}),Ij=e=>{var t,r,n,a,o,i,s,c;switch(e.type){case"story":return((r=(t=e.story.parameters.docs)==null?void 0:t.description)==null?void 0:r.story)||null;case"meta":{let{parameters:d,component:f}=e.preparedMeta;return((a=(n=d.docs)==null?void 0:n.description)==null?void 0:a.component)||((i=(o=d.docs)==null?void 0:o.extractComponentDescription)==null?void 0:i.call(o,f,{component:f,parameters:d}))||null}case"component":{let{component:d,projectAnnotations:{parameters:f}}=e;return((c=(s=f.docs)==null?void 0:s.extractComponentDescription)==null?void 0:c.call(s,d,{component:d,parameters:f}))||null}default:throw new Error(`Unrecognized module type resolved from 'useOf', got: ${e.type}`)}},J1=e=>{let{of:t}=e;if("of"in e&&t===void 0)throw new Error("Unexpected `of={undefined}`, did you mistype a CSF file reference?");let r=An(t||"meta"),n=Ij(r);return n?y.createElement(Bj,null,n):null},e3=Q1(NL()),zj=k.div(({theme:e})=>({width:"10rem","@media (max-width: 768px)":{display:"none"}})),Tj=k.div(({theme:e})=>({position:"fixed",bottom:0,top:0,width:"10rem",paddingTop:"4rem",paddingBottom:"2rem",overflowY:"auto",fontFamily:e.typography.fonts.base,fontSize:e.typography.size.s2,WebkitFontSmoothing:"antialiased",MozOsxFontSmoothing:"grayscale",WebkitTapHighlightColor:"rgba(0, 0, 0, 0)",WebkitOverflowScrolling:"touch","& *":{boxSizing:"border-box"},"& > .toc-wrapper > .toc-list":{paddingLeft:0,borderLeft:`solid 2px ${e.color.mediumlight}`,".toc-list":{paddingLeft:0,borderLeft:`solid 2px ${e.color.mediumlight}`,".toc-list":{paddingLeft:0,borderLeft:`solid 2px ${e.color.mediumlight}`}}},"& .toc-list-item":{position:"relative",listStyleType:"none",marginLeft:20,paddingTop:3,paddingBottom:3},"& .toc-list-item::before":{content:'""',position:"absolute",height:"100%",top:0,left:0,transform:"translateX(calc(-2px - 20px))",borderLeft:`solid 2px ${e.color.mediumdark}`,opacity:0,transition:"opacity 0.2s"},"& .toc-list-item.is-active-li::before":{opacity:1},"& .toc-list-item > a":{color:e.color.defaultText,textDecoration:"none"},"& .toc-list-item.is-active-li > a":{fontWeight:600,color:e.color.secondary,textDecoration:"none"}})),Lj=k.p(({theme:e})=>({fontWeight:600,fontSize:"0.875em",color:e.textColor,textTransform:"uppercase",marginBottom:10})),Mj=({title:e})=>e===null?null:typeof e=="string"?y.createElement(Lj,null,e):e,Oj=({title:e,disable:t,headingSelector:r,contentsSelector:n,ignoreSelector:a,unsafeTocbotOptions:o,channel:i})=>(l.useEffect(()=>{if(t)return()=>{};let s={tocSelector:".toc-wrapper",contentSelector:n??".sbdocs-content",headingSelector:r??"h3",ignoreSelector:a??".docs-story *, .skip-toc",headingsOffset:40,scrollSmoothOffset:-40,orderedList:!1,onClick:d=>{if(d.preventDefault(),d.currentTarget instanceof HTMLAnchorElement){let[,f]=d.currentTarget.href.split("#");f&&i.emit(sC,`#${f}`)}},...o},c=setTimeout(()=>e3.init(s),100);return()=>{clearTimeout(c),e3.destroy()}},[i,t,a,n,r,o]),y.createElement(y.Fragment,null,y.createElement(zj,null,t?null:y.createElement(Tj,null,y.createElement(Mj,{title:e||null}),y.createElement("div",{className:"toc-wrapper"}))))),{document:Pj,window:Nj}=globalThis,$j=({context:e,theme:t,children:r})=>{var a,o,i,s,c;let n;try{n=(o=(a=e.resolveOf("meta",["meta"]).preparedMeta.parameters)==null?void 0:a.docs)==null?void 0:o.toc}catch{n=(c=(s=(i=e==null?void 0:e.projectAnnotations)==null?void 0:i.parameters)==null?void 0:s.docs)==null?void 0:c.toc}return l.useEffect(()=>{let d;try{if(d=new URL(Nj.parent.location.toString()),d.hash){let f=Pj.getElementById(decodeURIComponent(d.hash.substring(1)));f&&setTimeout(()=>{qN(f)},200)}}catch{}}),y.createElement(Zt.Provider,{value:e},y.createElement(dj,{channel:e.channel},y.createElement(z3,{theme:BS(t)},y.createElement(xM,{toc:n?y.createElement(Oj,{className:"sbdocs sbdocs-toc--custom",channel:e.channel,...n}):null},r))))},Hj=/[\0-\x1F!-,\.\/:-@\[-\^`\{-\xA9\xAB-\xB4\xB6-\xB9\xBB-\xBF\xD7\xF7\u02C2-\u02C5\u02D2-\u02DF\u02E5-\u02EB\u02ED\u02EF-\u02FF\u0375\u0378\u0379\u037E\u0380-\u0385\u0387\u038B\u038D\u03A2\u03F6\u0482\u0530\u0557\u0558\u055A-\u055F\u0589-\u0590\u05BE\u05C0\u05C3\u05C6\u05C8-\u05CF\u05EB-\u05EE\u05F3-\u060F\u061B-\u061F\u066A-\u066D\u06D4\u06DD\u06DE\u06E9\u06FD\u06FE\u0700-\u070F\u074B\u074C\u07B2-\u07BF\u07F6-\u07F9\u07FB\u07FC\u07FE\u07FF\u082E-\u083F\u085C-\u085F\u086B-\u089F\u08B5\u08C8-\u08D2\u08E2\u0964\u0965\u0970\u0984\u098D\u098E\u0991\u0992\u09A9\u09B1\u09B3-\u09B5\u09BA\u09BB\u09C5\u09C6\u09C9\u09CA\u09CF-\u09D6\u09D8-\u09DB\u09DE\u09E4\u09E5\u09F2-\u09FB\u09FD\u09FF\u0A00\u0A04\u0A0B-\u0A0E\u0A11\u0A12\u0A29\u0A31\u0A34\u0A37\u0A3A\u0A3B\u0A3D\u0A43-\u0A46\u0A49\u0A4A\u0A4E-\u0A50\u0A52-\u0A58\u0A5D\u0A5F-\u0A65\u0A76-\u0A80\u0A84\u0A8E\u0A92\u0AA9\u0AB1\u0AB4\u0ABA\u0ABB\u0AC6\u0ACA\u0ACE\u0ACF\u0AD1-\u0ADF\u0AE4\u0AE5\u0AF0-\u0AF8\u0B00\u0B04\u0B0D\u0B0E\u0B11\u0B12\u0B29\u0B31\u0B34\u0B3A\u0B3B\u0B45\u0B46\u0B49\u0B4A\u0B4E-\u0B54\u0B58-\u0B5B\u0B5E\u0B64\u0B65\u0B70\u0B72-\u0B81\u0B84\u0B8B-\u0B8D\u0B91\u0B96-\u0B98\u0B9B\u0B9D\u0BA0-\u0BA2\u0BA5-\u0BA7\u0BAB-\u0BAD\u0BBA-\u0BBD\u0BC3-\u0BC5\u0BC9\u0BCE\u0BCF\u0BD1-\u0BD6\u0BD8-\u0BE5\u0BF0-\u0BFF\u0C0D\u0C11\u0C29\u0C3A-\u0C3C\u0C45\u0C49\u0C4E-\u0C54\u0C57\u0C5B-\u0C5F\u0C64\u0C65\u0C70-\u0C7F\u0C84\u0C8D\u0C91\u0CA9\u0CB4\u0CBA\u0CBB\u0CC5\u0CC9\u0CCE-\u0CD4\u0CD7-\u0CDD\u0CDF\u0CE4\u0CE5\u0CF0\u0CF3-\u0CFF\u0D0D\u0D11\u0D45\u0D49\u0D4F-\u0D53\u0D58-\u0D5E\u0D64\u0D65\u0D70-\u0D79\u0D80\u0D84\u0D97-\u0D99\u0DB2\u0DBC\u0DBE\u0DBF\u0DC7-\u0DC9\u0DCB-\u0DCE\u0DD5\u0DD7\u0DE0-\u0DE5\u0DF0\u0DF1\u0DF4-\u0E00\u0E3B-\u0E3F\u0E4F\u0E5A-\u0E80\u0E83\u0E85\u0E8B\u0EA4\u0EA6\u0EBE\u0EBF\u0EC5\u0EC7\u0ECE\u0ECF\u0EDA\u0EDB\u0EE0-\u0EFF\u0F01-\u0F17\u0F1A-\u0F1F\u0F2A-\u0F34\u0F36\u0F38\u0F3A-\u0F3D\u0F48\u0F6D-\u0F70\u0F85\u0F98\u0FBD-\u0FC5\u0FC7-\u0FFF\u104A-\u104F\u109E\u109F\u10C6\u10C8-\u10CC\u10CE\u10CF\u10FB\u1249\u124E\u124F\u1257\u1259\u125E\u125F\u1289\u128E\u128F\u12B1\u12B6\u12B7\u12BF\u12C1\u12C6\u12C7\u12D7\u1311\u1316\u1317\u135B\u135C\u1360-\u137F\u1390-\u139F\u13F6\u13F7\u13FE-\u1400\u166D\u166E\u1680\u169B-\u169F\u16EB-\u16ED\u16F9-\u16FF\u170D\u1715-\u171F\u1735-\u173F\u1754-\u175F\u176D\u1771\u1774-\u177F\u17D4-\u17D6\u17D8-\u17DB\u17DE\u17DF\u17EA-\u180A\u180E\u180F\u181A-\u181F\u1879-\u187F\u18AB-\u18AF\u18F6-\u18FF\u191F\u192C-\u192F\u193C-\u1945\u196E\u196F\u1975-\u197F\u19AC-\u19AF\u19CA-\u19CF\u19DA-\u19FF\u1A1C-\u1A1F\u1A5F\u1A7D\u1A7E\u1A8A-\u1A8F\u1A9A-\u1AA6\u1AA8-\u1AAF\u1AC1-\u1AFF\u1B4C-\u1B4F\u1B5A-\u1B6A\u1B74-\u1B7F\u1BF4-\u1BFF\u1C38-\u1C3F\u1C4A-\u1C4C\u1C7E\u1C7F\u1C89-\u1C8F\u1CBB\u1CBC\u1CC0-\u1CCF\u1CD3\u1CFB-\u1CFF\u1DFA\u1F16\u1F17\u1F1E\u1F1F\u1F46\u1F47\u1F4E\u1F4F\u1F58\u1F5A\u1F5C\u1F5E\u1F7E\u1F7F\u1FB5\u1FBD\u1FBF-\u1FC1\u1FC5\u1FCD-\u1FCF\u1FD4\u1FD5\u1FDC-\u1FDF\u1FED-\u1FF1\u1FF5\u1FFD-\u203E\u2041-\u2053\u2055-\u2070\u2072-\u207E\u2080-\u208F\u209D-\u20CF\u20F1-\u2101\u2103-\u2106\u2108\u2109\u2114\u2116-\u2118\u211E-\u2123\u2125\u2127\u2129\u212E\u213A\u213B\u2140-\u2144\u214A-\u214D\u214F-\u215F\u2189-\u24B5\u24EA-\u2BFF\u2C2F\u2C5F\u2CE5-\u2CEA\u2CF4-\u2CFF\u2D26\u2D28-\u2D2C\u2D2E\u2D2F\u2D68-\u2D6E\u2D70-\u2D7E\u2D97-\u2D9F\u2DA7\u2DAF\u2DB7\u2DBF\u2DC7\u2DCF\u2DD7\u2DDF\u2E00-\u2E2E\u2E30-\u3004\u3008-\u3020\u3030\u3036\u3037\u303D-\u3040\u3097\u3098\u309B\u309C\u30A0\u30FB\u3100-\u3104\u3130\u318F-\u319F\u31C0-\u31EF\u3200-\u33FF\u4DC0-\u4DFF\u9FFD-\u9FFF\uA48D-\uA4CF\uA4FE\uA4FF\uA60D-\uA60F\uA62C-\uA63F\uA673\uA67E\uA6F2-\uA716\uA720\uA721\uA789\uA78A\uA7C0\uA7C1\uA7CB-\uA7F4\uA828-\uA82B\uA82D-\uA83F\uA874-\uA87F\uA8C6-\uA8CF\uA8DA-\uA8DF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA954-\uA95F\uA97D-\uA97F\uA9C1-\uA9CE\uA9DA-\uA9DF\uA9FF\uAA37-\uAA3F\uAA4E\uAA4F\uAA5A-\uAA5F\uAA77-\uAA79\uAAC3-\uAADA\uAADE\uAADF\uAAF0\uAAF1\uAAF7-\uAB00\uAB07\uAB08\uAB0F\uAB10\uAB17-\uAB1F\uAB27\uAB2F\uAB5B\uAB6A-\uAB6F\uABEB\uABEE\uABEF\uABFA-\uABFF\uD7A4-\uD7AF\uD7C7-\uD7CA\uD7FC-\uD7FF\uE000-\uF8FF\uFA6E\uFA6F\uFADA-\uFAFF\uFB07-\uFB12\uFB18-\uFB1C\uFB29\uFB37\uFB3D\uFB3F\uFB42\uFB45\uFBB2-\uFBD2\uFD3E-\uFD4F\uFD90\uFD91\uFDC8-\uFDEF\uFDFC-\uFDFF\uFE10-\uFE1F\uFE30-\uFE32\uFE35-\uFE4C\uFE50-\uFE6F\uFE75\uFEFD-\uFF0F\uFF1A-\uFF20\uFF3B-\uFF3E\uFF40\uFF5B-\uFF65\uFFBF-\uFFC1\uFFC8\uFFC9\uFFD0\uFFD1\uFFD8\uFFD9\uFFDD-\uFFFF]|\uD800[\uDC0C\uDC27\uDC3B\uDC3E\uDC4E\uDC4F\uDC5E-\uDC7F\uDCFB-\uDD3F\uDD75-\uDDFC\uDDFE-\uDE7F\uDE9D-\uDE9F\uDED1-\uDEDF\uDEE1-\uDEFF\uDF20-\uDF2C\uDF4B-\uDF4F\uDF7B-\uDF7F\uDF9E\uDF9F\uDFC4-\uDFC7\uDFD0\uDFD6-\uDFFF]|\uD801[\uDC9E\uDC9F\uDCAA-\uDCAF\uDCD4-\uDCD7\uDCFC-\uDCFF\uDD28-\uDD2F\uDD64-\uDDFF\uDF37-\uDF3F\uDF56-\uDF5F\uDF68-\uDFFF]|\uD802[\uDC06\uDC07\uDC09\uDC36\uDC39-\uDC3B\uDC3D\uDC3E\uDC56-\uDC5F\uDC77-\uDC7F\uDC9F-\uDCDF\uDCF3\uDCF6-\uDCFF\uDD16-\uDD1F\uDD3A-\uDD7F\uDDB8-\uDDBD\uDDC0-\uDDFF\uDE04\uDE07-\uDE0B\uDE14\uDE18\uDE36\uDE37\uDE3B-\uDE3E\uDE40-\uDE5F\uDE7D-\uDE7F\uDE9D-\uDEBF\uDEC8\uDEE7-\uDEFF\uDF36-\uDF3F\uDF56-\uDF5F\uDF73-\uDF7F\uDF92-\uDFFF]|\uD803[\uDC49-\uDC7F\uDCB3-\uDCBF\uDCF3-\uDCFF\uDD28-\uDD2F\uDD3A-\uDE7F\uDEAA\uDEAD-\uDEAF\uDEB2-\uDEFF\uDF1D-\uDF26\uDF28-\uDF2F\uDF51-\uDFAF\uDFC5-\uDFDF\uDFF7-\uDFFF]|\uD804[\uDC47-\uDC65\uDC70-\uDC7E\uDCBB-\uDCCF\uDCE9-\uDCEF\uDCFA-\uDCFF\uDD35\uDD40-\uDD43\uDD48-\uDD4F\uDD74\uDD75\uDD77-\uDD7F\uDDC5-\uDDC8\uDDCD\uDDDB\uDDDD-\uDDFF\uDE12\uDE38-\uDE3D\uDE3F-\uDE7F\uDE87\uDE89\uDE8E\uDE9E\uDEA9-\uDEAF\uDEEB-\uDEEF\uDEFA-\uDEFF\uDF04\uDF0D\uDF0E\uDF11\uDF12\uDF29\uDF31\uDF34\uDF3A\uDF45\uDF46\uDF49\uDF4A\uDF4E\uDF4F\uDF51-\uDF56\uDF58-\uDF5C\uDF64\uDF65\uDF6D-\uDF6F\uDF75-\uDFFF]|\uD805[\uDC4B-\uDC4F\uDC5A-\uDC5D\uDC62-\uDC7F\uDCC6\uDCC8-\uDCCF\uDCDA-\uDD7F\uDDB6\uDDB7\uDDC1-\uDDD7\uDDDE-\uDDFF\uDE41-\uDE43\uDE45-\uDE4F\uDE5A-\uDE7F\uDEB9-\uDEBF\uDECA-\uDEFF\uDF1B\uDF1C\uDF2C-\uDF2F\uDF3A-\uDFFF]|\uD806[\uDC3B-\uDC9F\uDCEA-\uDCFE\uDD07\uDD08\uDD0A\uDD0B\uDD14\uDD17\uDD36\uDD39\uDD3A\uDD44-\uDD4F\uDD5A-\uDD9F\uDDA8\uDDA9\uDDD8\uDDD9\uDDE2\uDDE5-\uDDFF\uDE3F-\uDE46\uDE48-\uDE4F\uDE9A-\uDE9C\uDE9E-\uDEBF\uDEF9-\uDFFF]|\uD807[\uDC09\uDC37\uDC41-\uDC4F\uDC5A-\uDC71\uDC90\uDC91\uDCA8\uDCB7-\uDCFF\uDD07\uDD0A\uDD37-\uDD39\uDD3B\uDD3E\uDD48-\uDD4F\uDD5A-\uDD5F\uDD66\uDD69\uDD8F\uDD92\uDD99-\uDD9F\uDDAA-\uDEDF\uDEF7-\uDFAF\uDFB1-\uDFFF]|\uD808[\uDF9A-\uDFFF]|\uD809[\uDC6F-\uDC7F\uDD44-\uDFFF]|[\uD80A\uD80B\uD80E-\uD810\uD812-\uD819\uD824-\uD82B\uD82D\uD82E\uD830-\uD833\uD837\uD839\uD83D\uD83F\uD87B-\uD87D\uD87F\uD885-\uDB3F\uDB41-\uDBFF][\uDC00-\uDFFF]|\uD80D[\uDC2F-\uDFFF]|\uD811[\uDE47-\uDFFF]|\uD81A[\uDE39-\uDE3F\uDE5F\uDE6A-\uDECF\uDEEE\uDEEF\uDEF5-\uDEFF\uDF37-\uDF3F\uDF44-\uDF4F\uDF5A-\uDF62\uDF78-\uDF7C\uDF90-\uDFFF]|\uD81B[\uDC00-\uDE3F\uDE80-\uDEFF\uDF4B-\uDF4E\uDF88-\uDF8E\uDFA0-\uDFDF\uDFE2\uDFE5-\uDFEF\uDFF2-\uDFFF]|\uD821[\uDFF8-\uDFFF]|\uD823[\uDCD6-\uDCFF\uDD09-\uDFFF]|\uD82C[\uDD1F-\uDD4F\uDD53-\uDD63\uDD68-\uDD6F\uDEFC-\uDFFF]|\uD82F[\uDC6B-\uDC6F\uDC7D-\uDC7F\uDC89-\uDC8F\uDC9A-\uDC9C\uDC9F-\uDFFF]|\uD834[\uDC00-\uDD64\uDD6A-\uDD6C\uDD73-\uDD7A\uDD83\uDD84\uDD8C-\uDDA9\uDDAE-\uDE41\uDE45-\uDFFF]|\uD835[\uDC55\uDC9D\uDCA0\uDCA1\uDCA3\uDCA4\uDCA7\uDCA8\uDCAD\uDCBA\uDCBC\uDCC4\uDD06\uDD0B\uDD0C\uDD15\uDD1D\uDD3A\uDD3F\uDD45\uDD47-\uDD49\uDD51\uDEA6\uDEA7\uDEC1\uDEDB\uDEFB\uDF15\uDF35\uDF4F\uDF6F\uDF89\uDFA9\uDFC3\uDFCC\uDFCD]|\uD836[\uDC00-\uDDFF\uDE37-\uDE3A\uDE6D-\uDE74\uDE76-\uDE83\uDE85-\uDE9A\uDEA0\uDEB0-\uDFFF]|\uD838[\uDC07\uDC19\uDC1A\uDC22\uDC25\uDC2B-\uDCFF\uDD2D-\uDD2F\uDD3E\uDD3F\uDD4A-\uDD4D\uDD4F-\uDEBF\uDEFA-\uDFFF]|\uD83A[\uDCC5-\uDCCF\uDCD7-\uDCFF\uDD4C-\uDD4F\uDD5A-\uDFFF]|\uD83B[\uDC00-\uDDFF\uDE04\uDE20\uDE23\uDE25\uDE26\uDE28\uDE33\uDE38\uDE3A\uDE3C-\uDE41\uDE43-\uDE46\uDE48\uDE4A\uDE4C\uDE50\uDE53\uDE55\uDE56\uDE58\uDE5A\uDE5C\uDE5E\uDE60\uDE63\uDE65\uDE66\uDE6B\uDE73\uDE78\uDE7D\uDE7F\uDE8A\uDE9C-\uDEA0\uDEA4\uDEAA\uDEBC-\uDFFF]|\uD83C[\uDC00-\uDD2F\uDD4A-\uDD4F\uDD6A-\uDD6F\uDD8A-\uDFFF]|\uD83E[\uDC00-\uDFEF\uDFFA-\uDFFF]|\uD869[\uDEDE-\uDEFF]|\uD86D[\uDF35-\uDF3F]|\uD86E[\uDC1E\uDC1F]|\uD873[\uDEA2-\uDEAF]|\uD87A[\uDFE1-\uDFFF]|\uD87E[\uDE1E-\uDFFF]|\uD884[\uDF4B-\uDFFF]|\uDB40[\uDC00-\uDCFF\uDDF0-\uDFFF]/g,jj=Object.hasOwnProperty,Vj=class{constructor(){this.occurrences,this.reset()}slug(e,t){let r=this,n=Uj(e,t===!0),a=n;for(;jj.call(r.occurrences,n);)r.occurrences[a]++,n=a+"-"+r.occurrences[a];return r.occurrences[n]=0,n}reset(){this.occurrences=Object.create(null)}};function Uj(e,t){return typeof e!="string"?"":(t||(e=e.toLowerCase()),e.replace(Hj,"").replace(/ /g,"-"))}var y9=new Vj,qj=({children:e,disableAnchor:t,...r})=>{if(t||typeof e!="string")return y.createElement(Kf,null,e);let n=y9.slug(e.toLowerCase());return y.createElement(_h,{as:"h2",id:n,...r},e)},Wj=({children:e,disableAnchor:t})=>{if(t||typeof e!="string")return y.createElement(Yf,null,e);let r=y9.slug(e.toLowerCase());return y.createElement(_h,{as:"h3",id:r},e)},b9=({of:e,expanded:t=!0,withToolbar:r=!1,__forceInitialArgs:n=!1,__primary:a=!1})=>{var s,c;let{story:o}=An(e||"story",["story"]),i=((c=(s=o.parameters.docs)==null?void 0:s.canvas)==null?void 0:c.withToolbar)??r;return y.createElement(jN,{storyId:o.id},t&&y.createElement(y.Fragment,null,y.createElement(Wj,null,o.name),y.createElement(J1,{of:e})),y.createElement(wj,{of:e,withToolbar:i,story:{__forceInitialArgs:n,__primary:a},source:{__forceInitialArgs:n}}))},Gj=e=>{let{of:t}=e;if("of"in e&&t===void 0)throw new Error("Unexpected `of={undefined}`, did you mistype a CSF file reference?");let{csfFile:r}=An(t||"meta",["meta"]),n=l.useContext(Zt).componentStoriesFromCSFFile(r)[0];return n?y.createElement(b9,{of:n.moduleExport,expanded:!1,__primary:!0,withToolbar:!0}):null},Kj=k(qj)(({theme:e})=>({fontSize:`${e.typography.size.s2-1}px`,fontWeight:e.typography.weight.bold,lineHeight:"16px",letterSpacing:"0.35em",textTransform:"uppercase",color:e.textMutedColor,border:0,marginBottom:"12px","&:first-of-type":{marginTop:"56px"}})),Yj=({title:e="Stories",includePrimary:t=!0})=>{var s;let{componentStories:r,projectAnnotations:n,getStoryContext:a}=l.useContext(Zt),o=r(),{stories:{filter:i}={filter:void 0}}=((s=n.parameters)==null?void 0:s.docs)||{};return i&&(o=o.filter(c=>i(c,a(c)))),o.some(c=>{var d;return(d=c.tags)==null?void 0:d.includes("autodocs")})&&(o=o.filter(c=>{var d;return((d=c.tags)==null?void 0:d.includes("autodocs"))&&!c.usesMount})),t||(o=o.slice(1)),!o||o.length===0?null:y.createElement(y.Fragment,null,typeof e=="string"?y.createElement(Kj,null,e):e,o.map(c=>c&&y.createElement(b9,{key:c.id,of:c.moduleExport,expanded:!0,__forceInitialArgs:!0})))},Zj="https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#subtitle-block-and-parameterscomponentsubtitle",Jj=e=>{let{of:t,children:r}=e;if("of"in e&&t===void 0)throw new Error("Unexpected `of={undefined}`, did you mistype a CSF file reference?");let n;try{n=An(t||"meta",["meta"]).preparedMeta}catch(s){if(r&&!s.message.includes("did you forget to use ?"))throw s}let{componentSubtitle:a,docs:o}=(n==null?void 0:n.parameters)||{};a&&BL(`Using 'parameters.componentSubtitle' property to subtitle stories is deprecated. See ${Zj}`);let i=r||(o==null?void 0:o.subtitle)||a;return i?y.createElement(DM,{className:"sbdocs-subtitle sb-unstyled"},i):null},Xj=/\s*\/\s*/,Qj=e=>{let t=e.trim().split(Xj);return(t==null?void 0:t[(t==null?void 0:t.length)-1])||e},eV=e=>{let{children:t,of:r}=e;if("of"in e&&r===void 0)throw new Error("Unexpected `of={undefined}`, did you mistype a CSF file reference?");let n;try{n=An(r||"meta",["meta"]).preparedMeta}catch(o){if(t&&!o.message.includes("did you forget to use ?"))throw o}let a=t||Qj(n==null?void 0:n.title);return a?y.createElement(wM,{className:"sbdocs-title sb-unstyled"},a):null},tV=()=>{let e=An("meta",["meta"]),{stories:t}=e.csfFile,r=Object.keys(t).length===1;return y.createElement(y.Fragment,null,y.createElement(eV,null),y.createElement(Jj,null),y.createElement(J1,{of:"meta"}),r?y.createElement(J1,{of:"story"}):null,y.createElement(Gj,null),y.createElement(Sj,null),r?null:y.createElement(Yj,null))};function rV({context:e,docsParameter:t}){let r=t.container||$j,n=t.page||tV;return y.createElement(r,{context:e,theme:t.theme},y.createElement(n,null))}var vs=new Map;function nV(){return globalThis.IS_REACT_ACT_ENVIRONMENT}var aV=({callback:e,children:t})=>{let r=l.useRef();return l.useLayoutEffect(()=>{r.current!==e&&(r.current=e,e())},[e]),t};typeof Promise.withResolvers>"u"&&(Promise.withResolvers=()=>{let e=null,t=null;return{promise:new Promise((r,n)=>{e=r,t=n}),resolve:e,reject:t}});var oV=async(e,t,r)=>{let n=await lV(t,r);if(nV()){n.render(e);return}let{promise:a,resolve:o}=Promise.withResolvers();return n.render(l.createElement(aV,{callback:o},e)),a},iV=(e,t)=>{let r=vs.get(e);r&&(r.unmount(),vs.delete(e))},lV=async(e,t)=>{let r=vs.get(e);return r||(r=A9.createRoot(e,t),vs.set(e,r)),r},w9={code:h9,a:m9,...v9},sV=class extends l.Component{constructor(){super(...arguments),this.state={hasError:!1}}static getDerivedStateFromError(){return{hasError:!0}}componentDidCatch(e){let{showException:t}=this.props;t(e)}render(){let{hasError:e}=this.state,{children:t}=this.props;return e?null:y.createElement(y.Fragment,null,t)}},uV=class{constructor(){this.render=async(e,t,r)=>{let n={...w9,...t==null?void 0:t.components},a=rV;return new Promise((o,i)=>{X1(async()=>{const{MDXProvider:s}=await import("./index-B2V9nFGU.js");return{MDXProvider:s}},__vite__mapDeps([7,1]),import.meta.url).then(({MDXProvider:s})=>oV(y.createElement(sV,{showException:i,key:Math.random()},y.createElement(s,{components:n},y.createElement(a,{context:e,docsParameter:t}))),r)).then(()=>o())})},this.unmount=e=>{iV(e)}}};const AV=Object.freeze(Object.defineProperty({__proto__:null,DocsRenderer:uV,defaultComponents:w9},Symbol.toStringTag,{value:"Module"}));export{AV as D,EV as M,Ma as Q,BT as Z,Q1 as _,yn as a,vV as d,bt as g,zT as s,k as v}; diff --git a/apps/portal/public/storybook/assets/DocumentTextIcon-Dk_xQMYi.js b/apps/portal/public/storybook/assets/DocumentTextIcon-Dk_xQMYi.js new file mode 100644 index 00000000..329fd6d1 --- /dev/null +++ b/apps/portal/public/storybook/assets/DocumentTextIcon-Dk_xQMYi.js @@ -0,0 +1 @@ +import{r as e}from"./index-JhL3uwfD.js";function a({title:r,titleId:t,...o},n){return e.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:n,"aria-labelledby":t},o),r?e.createElement("title",{id:t},r):null,e.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M19.5 14.25v-2.625a3.375 3.375 0 0 0-3.375-3.375h-1.5A1.125 1.125 0 0 1 13.5 7.125v-1.5a3.375 3.375 0 0 0-3.375-3.375H8.25m0 12.75h7.5m-7.5 3H12M10.5 2.25H5.625c-.621 0-1.125.504-1.125 1.125v17.25c0 .621.504 1.125 1.125 1.125h12.75c.621 0 1.125-.504 1.125-1.125V11.25a9 9 0 0 0-9-9Z"}))}const s=e.forwardRef(a);export{s as F}; diff --git a/apps/portal/public/storybook/assets/EligibilityStatusBadge.stories-D7BkuDHU.js b/apps/portal/public/storybook/assets/EligibilityStatusBadge.stories-D7BkuDHU.js new file mode 100644 index 00000000..5145996f --- /dev/null +++ b/apps/portal/public/storybook/assets/EligibilityStatusBadge.stories-D7BkuDHU.js @@ -0,0 +1,23 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{c as o}from"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import{T as j}from"./triangle-alert-F5KF_Jv1.js";import{M as I}from"./map-pin-Bm-ztWPO.js";import{C}from"./clock-C92s7kSC.js";import{C as T}from"./circle-check-big-Bab09Iah.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./createLucideIcon-CctB0W3q.js";import"./index-JhL3uwfD.js";const P={eligible:{icon:T,bg:"bg-success-soft",border:"border-success/30",text:"text-success",label:"Service Available"},pending:{icon:C,bg:"bg-info-soft",border:"border-info/30",text:"text-info",label:"Review in Progress"},not_requested:{icon:I,bg:"bg-muted",border:"border-border",text:"text-muted-foreground",label:"Verification Required"},ineligible:{icon:j,bg:"bg-warning/10",border:"border-warning/30",text:"text-warning",label:"Not Available"}};function _({status:l,speed:d}){const s=P[l],E=s.icon;return e.jsxs("div",{className:o("inline-flex items-center gap-2 px-4 py-2 rounded-full border",s.bg,s.border),children:[e.jsx(E,{className:o("h-4 w-4",s.text)}),e.jsx("span",{className:o("font-semibold text-sm",s.text),children:s.label}),l==="eligible"&&d&&e.jsxs(e.Fragment,{children:[e.jsx("span",{className:"text-muted-foreground",children:"·"}),e.jsxs("span",{className:"text-sm text-foreground font-medium",children:["Up to ",d]})]})]})}_.__docgenInfo={description:`Displays the current eligibility status as a badge with icon. +Used in the Internet Plans view to show user's eligibility state.`,methods:[],displayName:"EligibilityStatusBadge",props:{status:{required:!0,tsType:{name:"union",raw:'"eligible" | "pending" | "not_requested" | "ineligible"',elements:[{name:"literal",value:'"eligible"'},{name:"literal",value:'"pending"'},{name:"literal",value:'"not_requested"'},{name:"literal",value:'"ineligible"'}]},description:""},speed:{required:!1,tsType:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}]},description:""}}};const z={title:"Features/Services/Internet/EligibilityStatusBadge",component:_,parameters:{layout:"centered"}},r={args:{status:"eligible",speed:"1Gbps"}},t={args:{status:"eligible"}},i={args:{status:"pending"}},a={args:{status:"not_requested"}},n={args:{status:"ineligible"}};var c,g,m;r.parameters={...r.parameters,docs:{...(c=r.parameters)==null?void 0:c.docs,source:{originalSource:`{ + args: { + status: "eligible", + speed: "1Gbps" + } +}`,...(m=(g=r.parameters)==null?void 0:g.docs)==null?void 0:m.source}}};var u,p,b;t.parameters={...t.parameters,docs:{...(u=t.parameters)==null?void 0:u.docs,source:{originalSource:`{ + args: { + status: "eligible" + } +}`,...(b=(p=t.parameters)==null?void 0:p.docs)==null?void 0:b.source}}};var f,x,S;i.parameters={...i.parameters,docs:{...(f=i.parameters)==null?void 0:f.docs,source:{originalSource:`{ + args: { + status: "pending" + } +}`,...(S=(x=i.parameters)==null?void 0:x.docs)==null?void 0:S.source}}};var h,N,v;a.parameters={...a.parameters,docs:{...(h=a.parameters)==null?void 0:h.docs,source:{originalSource:`{ + args: { + status: "not_requested" + } +}`,...(v=(N=a.parameters)==null?void 0:N.docs)==null?void 0:v.source}}};var y,q,w;n.parameters={...n.parameters,docs:{...(y=n.parameters)==null?void 0:y.docs,source:{originalSource:`{ + args: { + status: "ineligible" + } +}`,...(w=(q=n.parameters)==null?void 0:q.docs)==null?void 0:w.source}}};const H=["Eligible","EligibleNoSpeed","Pending","NotRequested","Ineligible"];export{r as Eligible,t as EligibleNoSpeed,n as Ineligible,a as NotRequested,i as Pending,H as __namedExportsOrder,z as default}; diff --git a/apps/portal/public/storybook/assets/EnvelopeIcon-Bx94PDZ6.js b/apps/portal/public/storybook/assets/EnvelopeIcon-Bx94PDZ6.js new file mode 100644 index 00000000..63a06176 --- /dev/null +++ b/apps/portal/public/storybook/assets/EnvelopeIcon-Bx94PDZ6.js @@ -0,0 +1 @@ +import{r as e}from"./index-JhL3uwfD.js";function n({title:r,titleId:a,...o},t){return e.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:t,"aria-labelledby":a},o),r?e.createElement("title",{id:a},r):null,e.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M21.75 6.75v10.5a2.25 2.25 0 0 1-2.25 2.25h-15a2.25 2.25 0 0 1-2.25-2.25V6.75m19.5 0A2.25 2.25 0 0 0 19.5 4.5h-15a2.25 2.25 0 0 0-2.25 2.25m19.5 0v.243a2.25 2.25 0 0 1-1.07 1.916l-7.5 4.615a2.25 2.25 0 0 1-2.36 0L3.32 8.91a2.25 2.25 0 0 1-1.07-1.916V6.75"}))}const s=e.forwardRef(n);export{s as F}; diff --git a/apps/portal/public/storybook/assets/ExclamationCircleIcon-jFfW0Ax_.js b/apps/portal/public/storybook/assets/ExclamationCircleIcon-jFfW0Ax_.js new file mode 100644 index 00000000..788b986a --- /dev/null +++ b/apps/portal/public/storybook/assets/ExclamationCircleIcon-jFfW0Ax_.js @@ -0,0 +1 @@ +import{r as e}from"./index-JhL3uwfD.js";function a({title:r,titleId:t,...o},n){return e.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:n,"aria-labelledby":t},o),r?e.createElement("title",{id:t},r):null,e.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M12 9v3.75m9-.75a9 9 0 1 1-18 0 9 9 0 0 1 18 0Zm-9 3.75h.008v.008H12v-.008Z"}))}const l=e.forwardRef(a);export{l as F}; diff --git a/apps/portal/public/storybook/assets/ExclamationTriangleIcon-Di4DJZFg.js b/apps/portal/public/storybook/assets/ExclamationTriangleIcon-Di4DJZFg.js new file mode 100644 index 00000000..2b5247f8 --- /dev/null +++ b/apps/portal/public/storybook/assets/ExclamationTriangleIcon-Di4DJZFg.js @@ -0,0 +1 @@ +import{r as e}from"./index-JhL3uwfD.js";function a({title:r,titleId:t,...o},n){return e.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:n,"aria-labelledby":t},o),r?e.createElement("title",{id:t},r):null,e.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M12 9v3.75m-9.303 3.376c-.866 1.5.217 3.374 1.948 3.374h14.71c1.73 0 2.813-1.874 1.948-3.374L13.949 3.378c-.866-1.5-3.032-1.5-3.898 0L2.697 16.126ZM12 15.75h.007v.008H12v-.008Z"}))}const i=e.forwardRef(a);export{i as F}; diff --git a/apps/portal/public/storybook/assets/FeatureCard-DMnf0Xpf.js b/apps/portal/public/storybook/assets/FeatureCard-DMnf0Xpf.js new file mode 100644 index 00000000..f148af57 --- /dev/null +++ b/apps/portal/public/storybook/assets/FeatureCard-DMnf0Xpf.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";function a({icon:r,title:t,description:s}){return e.jsxs("div",{className:"flex items-start gap-4 p-6 bg-gray-50 rounded-xl border border-gray-100 transition-all duration-300 hover:shadow-md hover:border-gray-200",children:[e.jsx("div",{className:"flex-shrink-0",children:r}),e.jsxs("div",{children:[e.jsx("h3",{className:"text-lg font-semibold text-gray-900 mb-2",children:t}),e.jsx("p",{className:"text-sm text-gray-600 leading-relaxed",children:s})]})]})}a.__docgenInfo={description:"",methods:[],displayName:"FeatureCard",props:{icon:{required:!0,tsType:{name:"ReactReactNode",raw:"React.ReactNode"},description:""},title:{required:!0,tsType:{name:"string"},description:""},description:{required:!0,tsType:{name:"string"},description:""}}};export{a as F}; diff --git a/apps/portal/public/storybook/assets/FeatureCard.stories-Bvgh88lM.js b/apps/portal/public/storybook/assets/FeatureCard.stories-Bvgh88lM.js new file mode 100644 index 00000000..e3423a1c --- /dev/null +++ b/apps/portal/public/storybook/assets/FeatureCard.stories-Bvgh88lM.js @@ -0,0 +1,13 @@ +import{j as c}from"./jsx-runtime-D_zvdyIk.js";import{F as l}from"./FeatureCard-DMnf0Xpf.js";const d={title:"Features/Services/Common/FeatureCard",component:l,parameters:{layout:"centered"}},e={args:{icon:c.jsx("span",{className:"text-2xl text-blue-500",children:"🌐"}),title:"Global Coverage",description:"Access fast, reliable internet coverage across Japan with our nationwide NTT Docomo network."}},t={args:{icon:c.jsx("span",{className:"text-2xl text-green-500",children:"✅"}),title:"Easy Setup",description:"Get started in minutes with our simple activation process. No technical knowledge required."}};var a,r,s;e.parameters={...e.parameters,docs:{...(a=e.parameters)==null?void 0:a.docs,source:{originalSource:`{ + args: { + icon: 🌐, + title: "Global Coverage", + description: "Access fast, reliable internet coverage across Japan with our nationwide NTT Docomo network." + } +}`,...(s=(r=e.parameters)==null?void 0:r.docs)==null?void 0:s.source}}};var o,n,i;t.parameters={...t.parameters,docs:{...(o=t.parameters)==null?void 0:o.docs,source:{originalSource:`{ + args: { + icon: , + title: "Easy Setup", + description: "Get started in minutes with our simple activation process. No technical knowledge required." + } +}`,...(i=(n=t.parameters)==null?void 0:n.docs)==null?void 0:i.source}}};const u=["Default","WithEmojiIcon"];export{e as Default,t as WithEmojiIcon,u as __namedExportsOrder,d as default}; diff --git a/apps/portal/public/storybook/assets/FilterDropdown-CUU04WmN.js b/apps/portal/public/storybook/assets/FilterDropdown-CUU04WmN.js new file mode 100644 index 00000000..50f890c4 --- /dev/null +++ b/apps/portal/public/storybook/assets/FilterDropdown-CUU04WmN.js @@ -0,0 +1,3 @@ +import{j as r}from"./jsx-runtime-D_zvdyIk.js";import{c as t}from"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import{F as d}from"./FunnelIcon-8nhbwqu0.js";function p({value:n,onChange:s,options:i,label:a,width:o="w-40",className:l}){return r.jsxs("div",{className:t("relative",l),children:[r.jsx("select",{value:n,onChange:e=>s(e.target.value),className:t("block pl-3 pr-8 py-2.5 text-sm border border-border","focus:outline-none focus:ring-2 focus:ring-ring focus:border-primary","rounded-lg appearance-none bg-card text-foreground","shadow-sm cursor-pointer transition-colors",o),"aria-label":a,children:i.map(e=>r.jsx("option",{value:e.value,children:e.label},e.value))}),r.jsx("div",{className:"absolute inset-y-0 right-0 flex items-center pr-2.5 pointer-events-none",children:r.jsx(d,{className:"h-4 w-4 text-muted-foreground"})})]})}p.__docgenInfo={description:`FilterDropdown - Reusable filter dropdown component with consistent styling. + +Used across list pages (Orders, Support, Invoices) for filtering by status, type, priority, etc.`,methods:[],displayName:"FilterDropdown",props:{value:{required:!0,tsType:{name:"string"},description:"Current selected value"},onChange:{required:!0,tsType:{name:"signature",type:"function",raw:"(value: string) => void",signature:{arguments:[{type:{name:"string"},name:"value"}],return:{name:"void"}}},description:"Callback when value changes"},options:{required:!0,tsType:{name:"Array",elements:[{name:"FilterOption"}],raw:"FilterOption[]"},description:"Array of filter options"},label:{required:!0,tsType:{name:"string"},description:"Accessible label for the dropdown"},width:{required:!1,tsType:{name:"string"},description:'Optional width class (default: "w-40")',defaultValue:{value:'"w-40"',computed:!1}},className:{required:!1,tsType:{name:"string"},description:"Optional additional class names"}}};export{p as F}; diff --git a/apps/portal/public/storybook/assets/FilterDropdown.stories-D8ZH63Jx.js b/apps/portal/public/storybook/assets/FilterDropdown.stories-D8ZH63Jx.js new file mode 100644 index 00000000..c7fd2047 --- /dev/null +++ b/apps/portal/public/storybook/assets/FilterDropdown.stories-D8ZH63Jx.js @@ -0,0 +1,35 @@ +import{j as p}from"./jsx-runtime-D_zvdyIk.js";import{r as d}from"./index-JhL3uwfD.js";import{F as t}from"./FilterDropdown-CUU04WmN.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./FunnelIcon-8nhbwqu0.js";const S={title:"Molecules/FilterDropdown",component:t},e={render:()=>{const[a,n]=d.useState("all");return p.jsx(t,{value:a,onChange:n,options:[{value:"all",label:"All Statuses"},{value:"active",label:"Active"},{value:"pending",label:"Pending"},{value:"cancelled",label:"Cancelled"}],label:"Filter by status"})}},l={render:()=>{const[a,n]=d.useState("all");return p.jsx(t,{value:a,onChange:n,options:[{value:"all",label:"All Categories"},{value:"billing",label:"Billing"},{value:"technical",label:"Technical"},{value:"general",label:"General"}],label:"Filter by category",width:"w-48"})}};var r,o,s;e.parameters={...e.parameters,docs:{...(r=e.parameters)==null?void 0:r.docs,source:{originalSource:`{ + render: () => { + const [value, setValue] = useState("all"); + return ; + } +}`,...(s=(o=e.parameters)==null?void 0:o.docs)==null?void 0:s.source}}};var u,i,c;l.parameters={...l.parameters,docs:{...(u=l.parameters)==null?void 0:u.docs,source:{originalSource:`{ + render: () => { + const [value, setValue] = useState("all"); + return ; + } +}`,...(c=(i=l.parameters)==null?void 0:i.docs)==null?void 0:c.source}}};const x=["Default","CustomWidth"];export{l as CustomWidth,e as Default,x as __namedExportsOrder,S as default}; diff --git a/apps/portal/public/storybook/assets/FormField-C0UylACv.js b/apps/portal/public/storybook/assets/FormField-C0UylACv.js new file mode 100644 index 00000000..574dcc55 --- /dev/null +++ b/apps/portal/public/storybook/assets/FormField-C0UylACv.js @@ -0,0 +1 @@ +import{j as n}from"./jsx-runtime-D_zvdyIk.js";import{r as t}from"./index-JhL3uwfD.js";import{c as r}from"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import{L}from"./label-C25VH7yk.js";import{I as h}from"./input-BbGJiz0K.js";import{E as F}from"./error-message-DeFFz6H_.js";const c=t.forwardRef(({label:m,error:e,helperText:d,required:f,labelProps:i,fieldId:p,containerClassName:g,inputClassName:x,children:a,...N},b)=>{const y=t.useId(),s=p||y,o=e?`${s}-error`:void 0,u=d?`${s}-helper`:void 0,l=r(o,u)||void 0,{className:v,...w}=N,T=()=>a?t.isValidElement(a)?t.cloneElement(a,{id:s,"aria-invalid":e?"true":void 0,"aria-describedby":l}):a:n.jsx(h,{id:s,ref:b,"aria-invalid":e?"true":void 0,"aria-describedby":l,className:r(e&&"border-danger focus-visible:ring-danger focus-visible:ring-offset-2",x,v),...w});return n.jsxs("div",{className:r("space-y-1",g),children:[m&&n.jsxs(L,{htmlFor:s,className:r("block text-sm font-medium text-muted-foreground",e&&"text-danger",i==null?void 0:i.className),...i?{...i,className:void 0}:void 0,children:[n.jsx("span",{children:m}),f&&n.jsx("span",{"aria-hidden":"true",className:"ml-1 text-danger",children:"*"})]}),T(),e&&n.jsx(F,{id:o,children:e}),d&&!e&&n.jsx("p",{id:u,className:"text-sm text-muted-foreground",children:d})]})});c.displayName="FormField";c.__docgenInfo={description:"",methods:[],displayName:"FormField",props:{label:{required:!1,tsType:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}]},description:""},error:{required:!1,tsType:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}]},description:""},helperText:{required:!1,tsType:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}]},description:""},required:{required:!1,tsType:{name:"union",raw:"boolean | undefined",elements:[{name:"boolean"},{name:"undefined"}]},description:""},labelProps:{required:!1,tsType:{name:"union",raw:'Omit | undefined',elements:[{name:"Omit",elements:[{name:"LabelHTMLAttributes",elements:[{name:"HTMLLabelElement"}],raw:"LabelHTMLAttributes"},{name:"literal",value:'"htmlFor"'}],raw:'Omit'},{name:"undefined"}]},description:""},fieldId:{required:!1,tsType:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}]},description:""},children:{required:!1,tsType:{name:"union",raw:"React.ReactNode | undefined",elements:[{name:"ReactReactNode",raw:"React.ReactNode"},{name:"undefined"}]},description:""},containerClassName:{required:!1,tsType:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}]},description:""},inputClassName:{required:!1,tsType:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}]},description:""}},composes:["Omit"]};export{c as F}; diff --git a/apps/portal/public/storybook/assets/FormField.stories-BKWGauBj.js b/apps/portal/public/storybook/assets/FormField.stories-BKWGauBj.js new file mode 100644 index 00000000..dee0bd1e --- /dev/null +++ b/apps/portal/public/storybook/assets/FormField.stories-BKWGauBj.js @@ -0,0 +1,33 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{F as r}from"./FormField-C0UylACv.js";import"./index-JhL3uwfD.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./label-C25VH7yk.js";import"./input-BbGJiz0K.js";import"./error-message-DeFFz6H_.js";import"./index-DXhM58Yq.js";import"./ExclamationCircleIcon-jFfW0Ax_.js";const O={title:"Molecules/FormField",component:r},a={args:{label:"Email",placeholder:"you@example.com"}},l={args:{label:"Full Name",placeholder:"John Doe",required:!0}},o={args:{label:"Email",placeholder:"you@example.com",error:"Invalid email address",required:!0}},s={args:{label:"Phone",placeholder:"+81 90-1234-5678",helperText:"Include country code"}},d={render:()=>e.jsxs("div",{className:"flex flex-col gap-4 w-80",children:[e.jsx(r,{label:"First Name",placeholder:"John",required:!0}),e.jsx(r,{label:"Last Name",placeholder:"Doe",required:!0}),e.jsx(r,{label:"Email",placeholder:"you@example.com",type:"email",required:!0}),e.jsx(r,{label:"Phone",placeholder:"+81 90-1234-5678",helperText:"Optional"}),e.jsx(r,{label:"Address",error:"Address is required",required:!0})]})};var m,t,i;a.parameters={...a.parameters,docs:{...(m=a.parameters)==null?void 0:m.docs,source:{originalSource:`{ + args: { + label: "Email", + placeholder: "you@example.com" + } +}`,...(i=(t=a.parameters)==null?void 0:t.docs)==null?void 0:i.source}}};var c,p,n;l.parameters={...l.parameters,docs:{...(c=l.parameters)==null?void 0:c.docs,source:{originalSource:`{ + args: { + label: "Full Name", + placeholder: "John Doe", + required: true + } +}`,...(n=(p=l.parameters)==null?void 0:p.docs)==null?void 0:n.source}}};var u,h,x;o.parameters={...o.parameters,docs:{...(u=o.parameters)==null?void 0:u.docs,source:{originalSource:`{ + args: { + label: "Email", + placeholder: "you@example.com", + error: "Invalid email address", + required: true + } +}`,...(x=(h=o.parameters)==null?void 0:h.docs)==null?void 0:x.source}}};var F,b,q;s.parameters={...s.parameters,docs:{...(F=s.parameters)==null?void 0:F.docs,source:{originalSource:`{ + args: { + label: "Phone", + placeholder: "+81 90-1234-5678", + helperText: "Include country code" + } +}`,...(q=(b=s.parameters)==null?void 0:b.docs)==null?void 0:q.source}}};var g,E,y;d.parameters={...d.parameters,docs:{...(g=d.parameters)==null?void 0:g.docs,source:{originalSource:`{ + render: () =>
+ + + + + +
+}`,...(y=(E=d.parameters)==null?void 0:E.docs)==null?void 0:y.source}}};const R=["Default","Required","WithError","WithHelperText","FormExample"];export{a as Default,d as FormExample,l as Required,o as WithError,s as WithHelperText,R as __namedExportsOrder,O as default}; diff --git a/apps/portal/public/storybook/assets/FormStep.stories-Bg4DOFI9.js b/apps/portal/public/storybook/assets/FormStep.stories-Bg4DOFI9.js new file mode 100644 index 00000000..b9e3cf35 --- /dev/null +++ b/apps/portal/public/storybook/assets/FormStep.stories-Bg4DOFI9.js @@ -0,0 +1,22 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{r as c}from"./index-JhL3uwfD.js";import{B as E}from"./button-C8_cybvS.js";import{I as j}from"./input-BbGJiz0K.js";import"./password-input-D4khGh8v.js";import"./checkbox-DahUyQbt.js";import{L as f}from"./label-C25VH7yk.js";import{E as p}from"./error-message-DeFFz6H_.js";import"./status-pill-wWp9xkwA.js";import"./badge-BdMsasyi.js";import"./spinner-mU4XywER.js";import"./loading-overlay-DMJTiFny.js";import"./error-state-BSicqqE6.js";import"./empty-state-DRUGJ9ip.js";import"./inline-toast-DQJ-O9wc.js";import"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import"./logo-f0fprTjz.js";import"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./animated-container-DyAZ9gmw.js";import{J as R}from"./JapanAddressForm-CUdYD2hV.js";import{u as y}from"./eligibility-check.store-5rXvIK_a.js";import{c as J}from"./createLucideIcon-CctB0W3q.js";import{A as M}from"./arrow-right-BNMAry-H.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./ExclamationCircleIcon-jFfW0Ax_.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./ArrowPathIcon-CZjG6RfV.js";import"./PlusIcon-DGufmf06.js";import"./index-CNXKWNLp.js";import"./proxy-ZkTvaR74.js";import"./next-image-69WeRggt.js";import"./Squares2X2Icon-BMQM_Wy1.js";import"./FormField-C0UylACv.js";import"./ZipCodeInput-C0pEKKnJ.js";import"./countries-CY6LSu2r.js";import"./useQuery-tNNTAmfW.js";import"./QueryClientProvider-D7wSf7Op.js";import"./schema-Cvvg7S_W.js";import"./text-CXa-DJQz.js";import"./circle-check-big-Bab09Iah.js";import"./search-DSeV2urL.js";import"./AnimatedSection-CccjFZBU.js";import"./ProgressIndicator-zQZ52Xi8.js";import"./BilingualValue-B84DkgyY.js";import"./sparkles-q054t7ye.js";import"./map-pin-Bm-ztWPO.js";import"./chevron-right-C40ybnlz.js";import"./house-pESumjO8.js";import"./building-2-C7pcwIk2.js";import"./error-handling-CCxr4Gjn.js";import"./schema-JsDJirqf.js";import"./schema-Dok_SHcO.js";import"./react-C6W-rNNW.js";/** + * @license lucide-react v0.563.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const Y=[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}],["line",{x1:"19",x2:"19",y1:"8",y2:"14",key:"1bvyxn"}],["line",{x1:"22",x2:"16",y1:"11",y2:"11",key:"1shjgl"}]],B=J("user-plus",Y),q=r=>/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(r);function G(r,a){const s={};return r.firstName.trim()||(s.firstName="First name is required"),r.lastName.trim()||(s.lastName="Last name is required"),r.email.trim()?q(r.email)||(s.email="Enter a valid email address"):s.email="Email is required",a||(s.address="Please complete the address"),s}function H({firstName:r,lastName:a,loading:s,errors:i,onFirstNameChange:o,onLastNameChange:n}){return e.jsxs("div",{className:"grid grid-cols-1 sm:grid-cols-2 gap-4",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsxs(f,{htmlFor:"firstName",children:["First Name ",e.jsx("span",{className:"text-danger",children:"*"})]}),e.jsx(j,{id:"firstName",value:r,onChange:m=>o(m.target.value),placeholder:"Taro",disabled:s,error:i.firstName}),e.jsx(p,{children:i.firstName})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsxs(f,{htmlFor:"lastName",children:["Last Name ",e.jsx("span",{className:"text-danger",children:"*"})]}),e.jsx(j,{id:"lastName",value:a,onChange:m=>n(m.target.value),placeholder:"Yamada",disabled:s,error:i.lastName}),e.jsx(p,{children:i.lastName})]})]})}function U({email:r,loading:a,error:s,onEmailChange:i}){return e.jsxs("div",{className:"space-y-2",children:[e.jsxs(f,{htmlFor:"email",children:["Email ",e.jsx("span",{className:"text-danger",children:"*"})]}),e.jsx(j,{id:"email",type:"email",value:r,onChange:o=>i(o.target.value),placeholder:"your@email.com",disabled:a,error:s}),!s&&e.jsx("p",{className:"text-xs text-muted-foreground",children:"We'll send availability results to this email"}),e.jsx(p,{children:s})]})}function V({loading:r,error:a,isNameEmailComplete:s,submitType:i,addressError:o,onAddressChange:n,onSubmitAndCreate:m,onSubmitOnly:h}){return e.jsxs("div",{className:"space-y-2",children:[e.jsxs(f,{children:["Installation Address ",e.jsx("span",{className:"text-danger",children:"*"})]}),e.jsx(R,{onChange:n,disabled:r,completionContent:e.jsxs("div",{className:"space-y-3 pt-2",children:[a&&e.jsx("div",{className:"p-3 rounded-lg bg-danger/10 border border-danger/20",children:e.jsx(p,{showIcon:!0,children:a})}),!s&&e.jsx("p",{className:"text-sm text-warning text-center",children:"Please complete your name and email above"}),e.jsx(E,{type:"button",onClick:m,disabled:r,loading:r&&i==="create",leftIcon:e.jsx(B,{className:"h-4 w-4"}),className:"w-full",children:"Create Account & Submit"}),e.jsx("p",{className:"text-xs text-muted-foreground text-center",children:"Recommended — Get faster service and track your request"}),e.jsxs("div",{className:"relative flex items-center py-1",children:[e.jsx("div",{className:"flex-grow border-t border-border/50"}),e.jsx("span",{className:"px-2 text-xs text-muted-foreground",children:"or"}),e.jsx("div",{className:"flex-grow border-t border-border/50"})]}),e.jsx(E,{type:"button",variant:"secondary",onClick:h,disabled:r,loading:r&&i==="check",leftIcon:e.jsx(M,{className:"h-4 w-4"}),className:"w-full",children:"Just Submit Request"})]})}),e.jsx(p,{children:o})]})}function L(){const{formData:r,updateFormData:a,setAddressComplete:s,isAddressComplete:i,submitOnly:o,submitAndCreate:n,loading:m,submitType:h,error:T,clearError:g}=y(),[N,b]=c.useState({}),_=c.useMemo(()=>{const t=r.firstName.trim()&&r.lastName.trim(),l=r.email.trim()&&q(r.email);return t&&l},[r.firstName,r.lastName,r.email]),v=c.useCallback(()=>{const t=G(r,i);return b(t),Object.keys(t).length===0},[r,i]),d=c.useCallback(t=>{b(l=>{const C={...l};return delete C[t],C})},[]),D=c.useCallback((t,l)=>{a({address:t}),s(l),l&&d("address")},[a,s,d]),O=async()=>{v()&&(g(),await o())},P=async()=>{v()&&(g(),await n())};return e.jsxs("div",{className:"space-y-6",children:[e.jsx(H,{firstName:r.firstName,lastName:r.lastName,loading:m,errors:N,onFirstNameChange:t=>{a({firstName:t}),d("firstName")},onLastNameChange:t=>{a({lastName:t}),d("lastName")}}),e.jsx(U,{email:r.email,loading:m,error:N.email,onEmailChange:t=>{a({email:t}),d("email")}}),e.jsx(V,{loading:m,error:T,isNameEmailComplete:!!_,submitType:h,addressError:N.address,onAddressChange:D,onSubmitAndCreate:P,onSubmitOnly:O})]})}L.__docgenInfo={description:"",methods:[],displayName:"FormStep"};const er={title:"Features/Services/EligibilityCheck/FormStep",component:L,parameters:{layout:"centered"},decorators:[r=>(y.setState({formData:{firstName:"",lastName:"",email:"",address:null},isAddressComplete:!1,loading:!1,submitType:null,error:null}),e.jsx(r,{}))]},u={},x={decorators:[r=>(y.setState({formData:{firstName:"Taro",lastName:"Yamada",email:"taro@example.com",address:null},isAddressComplete:!1,loading:!1,submitType:null,error:null}),e.jsx(r,{}))]};var S,F,k;u.parameters={...u.parameters,docs:{...(S=u.parameters)==null?void 0:S.docs,source:{originalSource:"{}",...(k=(F=u.parameters)==null?void 0:F.docs)==null?void 0:k.source}}};var A,w,I;x.parameters={...x.parameters,docs:{...(A=x.parameters)==null?void 0:A.docs,source:{originalSource:`{ + decorators: [Story => { + useEligibilityCheckStore.setState({ + formData: { + firstName: "Taro", + lastName: "Yamada", + email: "taro@example.com", + address: null + }, + isAddressComplete: false, + loading: false, + submitType: null, + error: null + }); + return ; + }] +}`,...(I=(w=x.parameters)==null?void 0:w.docs)==null?void 0:I.source}}};const rr=["Default","Prefilled"];export{u as Default,x as Prefilled,rr as __namedExportsOrder,er as default}; diff --git a/apps/portal/public/storybook/assets/FunnelIcon-8nhbwqu0.js b/apps/portal/public/storybook/assets/FunnelIcon-8nhbwqu0.js new file mode 100644 index 00000000..1597e859 --- /dev/null +++ b/apps/portal/public/storybook/assets/FunnelIcon-8nhbwqu0.js @@ -0,0 +1 @@ +import{r as e}from"./index-JhL3uwfD.js";function a({title:r,titleId:t,...n},o){return e.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:o,"aria-labelledby":t},n),r?e.createElement("title",{id:t},r):null,e.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M12 3c2.755 0 5.455.232 8.083.678.533.09.917.556.917 1.096v1.044a2.25 2.25 0 0 1-.659 1.591l-5.432 5.432a2.25 2.25 0 0 0-.659 1.591v2.927a2.25 2.25 0 0 1-1.244 2.013L9.75 21v-6.568a2.25 2.25 0 0 0-.659-1.591L3.659 7.409A2.25 2.25 0 0 1 3 5.818V4.774c0-.54.384-1.006.917-1.096A48.32 48.32 0 0 1 12 3Z"}))}const s=e.forwardRef(a);export{s as F}; diff --git a/apps/portal/public/storybook/assets/HelpPanel-rRaRP4jS.js b/apps/portal/public/storybook/assets/HelpPanel-rRaRP4jS.js new file mode 100644 index 00000000..fe67f3ec --- /dev/null +++ b/apps/portal/public/storybook/assets/HelpPanel-rRaRP4jS.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{F as r}from"./InformationCircleIcon-Clz7d-56.js";function t({text:s}){return e.jsx("div",{className:"mb-6 p-4 bg-blue-50 rounded-lg border border-blue-200",children:e.jsxs("div",{className:"flex items-start gap-2",children:[e.jsx(r,{className:"h-5 w-5 text-blue-500 flex-shrink-0 mt-0.5"}),e.jsx("p",{className:"text-sm text-blue-700",children:s})]})})}t.__docgenInfo={description:"",methods:[],displayName:"HelpPanel",props:{text:{required:!0,tsType:{name:"string"},description:""}}};export{t as H}; diff --git a/apps/portal/public/storybook/assets/HelpPanel.stories-BZhqwEh1.js b/apps/portal/public/storybook/assets/HelpPanel.stories-BZhqwEh1.js new file mode 100644 index 00000000..400c1611 --- /dev/null +++ b/apps/portal/public/storybook/assets/HelpPanel.stories-BZhqwEh1.js @@ -0,0 +1,13 @@ +import{j as r}from"./jsx-runtime-D_zvdyIk.js";import{H as l}from"./HelpPanel-rRaRP4jS.js";import"./InformationCircleIcon-Clz7d-56.js";import"./index-JhL3uwfD.js";const x={title:"Features/Services/ConfigurationStep/HelpPanel",component:l,parameters:{layout:"centered"},decorators:[h=>r.jsx("div",{style:{maxWidth:500},children:r.jsx(h,{})})]},e={args:{text:"Select the speed tier that best matches your household needs. Larger households with multiple devices benefit from higher speeds."}},s={args:{text:"Need help? Contact support at 0120-XXX-XXX."}},t={args:{text:"When selecting your internet plan, consider the number of devices in your household, your typical usage patterns (streaming, gaming, remote work), and the number of simultaneous users. Our Standard plan (500 Mbps) is suitable for most households with 3-5 devices. For heavy usage or smart home setups, we recommend the Premium plan (1 Gbps)."}};var o,a,n;e.parameters={...e.parameters,docs:{...(o=e.parameters)==null?void 0:o.docs,source:{originalSource:`{ + args: { + text: "Select the speed tier that best matches your household needs. Larger households with multiple devices benefit from higher speeds." + } +}`,...(n=(a=e.parameters)==null?void 0:a.docs)==null?void 0:n.source}}};var i,u,m;s.parameters={...s.parameters,docs:{...(i=s.parameters)==null?void 0:i.docs,source:{originalSource:`{ + args: { + text: "Need help? Contact support at 0120-XXX-XXX." + } +}`,...(m=(u=s.parameters)==null?void 0:u.docs)==null?void 0:m.source}}};var p,d,c;t.parameters={...t.parameters,docs:{...(p=t.parameters)==null?void 0:p.docs,source:{originalSource:`{ + args: { + text: "When selecting your internet plan, consider the number of devices in your household, your typical usage patterns (streaming, gaming, remote work), and the number of simultaneous users. Our Standard plan (500 Mbps) is suitable for most households with 3-5 devices. For heavy usage or smart home setups, we recommend the Premium plan (1 Gbps)." + } +}`,...(c=(d=t.parameters)==null?void 0:d.docs)==null?void 0:c.source}}};const X=["Default","Short","Long"];export{e as Default,t as Long,s as Short,X as __namedExportsOrder,x as default}; diff --git a/apps/portal/public/storybook/assets/HeroSection.stories-C94ZiyDm.js b/apps/portal/public/storybook/assets/HeroSection.stories-C94ZiyDm.js new file mode 100644 index 00000000..57d5cb25 --- /dev/null +++ b/apps/portal/public/storybook/assets/HeroSection.stories-C94ZiyDm.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{r as l}from"./index-JhL3uwfD.js";import{B as n}from"./button-C8_cybvS.js";import{u as p}from"./use-in-view-Du9cy_vv.js";import{m as d}from"./proxy-ZkTvaR74.js";import{A as u}from"./arrow-right-BNMAry-H.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./spinner-mU4XywER.js";import"./createLucideIcon-CctB0W3q.js";function c({heroCTARef:r}){const a=l.useRef(null),m=p(a,{once:!0,amount:.1});return e.jsxs(d.div,{ref:a,initial:{opacity:0,y:32},animate:m?{opacity:1,y:0}:{opacity:0,y:32},transition:{duration:.7,ease:"easeOut"},className:"relative flex-1 flex items-center py-16 sm:py-20 lg:py-24 overflow-hidden",children:[e.jsx("div",{className:"absolute inset-0 bg-gradient-to-br from-surface-sunken via-background to-info-bg/80"}),e.jsx("div",{className:"absolute inset-0 pointer-events-none","aria-hidden":"true",style:{backgroundImage:"radial-gradient(circle at center, color-mix(in oklch, var(--primary) 15%, transparent) 1px, transparent 1px)",backgroundSize:"24px 24px"}}),e.jsx("div",{className:"absolute -top-32 -right-32 w-96 h-96 rounded-full pointer-events-none","aria-hidden":"true",style:{background:"radial-gradient(circle, color-mix(in oklch, var(--info) 25%, transparent) 0%, transparent 70%)"}}),e.jsxs("div",{className:"relative mx-auto max-w-3xl px-6 sm:px-10 lg:px-14 text-center",children:[e.jsxs("h1",{className:"text-4xl sm:text-5xl lg:text-6xl font-extrabold leading-tight text-foreground font-heading",children:[e.jsx("span",{className:"block",children:"A One Stop Solution"}),e.jsx("span",{className:"block text-primary mt-2",children:"for Your IT Needs"})]}),e.jsx("p",{className:"mt-6 text-base sm:text-lg text-muted-foreground leading-relaxed font-semibold max-w-2xl mx-auto",children:"Internet, phone, VPN and IT support — all in one place, with full English support in Japan."}),e.jsxs("div",{ref:r,className:"mt-8 flex flex-col sm:flex-row items-center justify-center gap-3 sm:gap-4",children:[e.jsx(n,{as:"a",href:"/services",variant:"pill",size:"lg",rightIcon:e.jsx(u,{className:"h-5 w-5"}),children:"Find Your Plan"}),e.jsx(n,{as:"a",href:"#contact",variant:"pillOutline",size:"lg",children:"Talk to Us"})]})]})]})}c.__docgenInfo={description:"",methods:[],displayName:"HeroSection",props:{heroCTARef:{required:!0,tsType:{name:"ReactRefObject",raw:"React.RefObject",elements:[{name:"union",raw:"HTMLDivElement | null",elements:[{name:"HTMLDivElement"},{name:"null"}]}]},description:""}}};function x(){const r=l.useRef(null);return e.jsx(c,{heroCTARef:r})}const E={title:"Features/LandingPage/HeroSection",component:x,parameters:{layout:"fullscreen"}},t={};var o,s,i;t.parameters={...t.parameters,docs:{...(o=t.parameters)==null?void 0:o.docs,source:{originalSource:"{}",...(i=(s=t.parameters)==null?void 0:s.docs)==null?void 0:i.source}}};const H=["Default"];export{t as Default,H as __namedExportsOrder,E as default}; diff --git a/apps/portal/public/storybook/assets/HowItWorks-CdRnFIF-.js b/apps/portal/public/storybook/assets/HowItWorks-CdRnFIF-.js new file mode 100644 index 00000000..afabc7dc --- /dev/null +++ b/apps/portal/public/storybook/assets/HowItWorks-CdRnFIF-.js @@ -0,0 +1,2 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{c as d}from"./cn-CDN07tui.js";function l({title:i="How It Works",eyebrow:a="Simple Process",steps:t,className:o}){return e.jsxs("section",{className:d("py-6",o),children:[e.jsxs("div",{className:"text-center mb-8",children:[e.jsx("p",{className:"text-xs font-semibold text-primary uppercase tracking-wider mb-1.5",children:a}),e.jsx("h2",{className:"text-xl sm:text-2xl font-bold leading-tight tracking-tight text-foreground",children:i})]}),e.jsxs("div",{className:"relative",children:[e.jsx("div",{className:"hidden md:block absolute top-8 left-[12%] right-[12%] h-px bg-border","aria-hidden":"true"}),e.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-6 md:gap-4",children:t.map((r,s)=>e.jsxs("div",{className:"relative flex flex-col items-center text-center group",children:[e.jsxs("div",{className:"relative mb-3",children:[e.jsx("div",{className:"w-14 h-14 rounded-xl bg-card border border-border shadow-sm flex items-center justify-center text-primary group-hover:border-primary/30 group-hover:shadow-md transition-all duration-200",children:r.icon}),e.jsx("div",{className:"absolute -top-1.5 -right-1.5 w-5 h-5 rounded-full bg-primary text-primary-foreground text-[10px] font-bold flex items-center justify-center",children:s+1})]}),e.jsx("h3",{className:"text-sm font-semibold text-foreground mb-1",children:r.title}),e.jsx("p",{className:"text-xs text-muted-foreground leading-relaxed max-w-[180px]",children:r.description}),sr.jsxs("svg",{className:"w-6 h-6",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:[r.jsx("title",{children:h}),r.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M5 13l4 4L19 7"})]}),a=[{icon:e("Choose"),title:"Choose a Plan",description:"Browse our plans and select the one that fits your needs."},{icon:e("Configure"),title:"Configure",description:"Customize your plan with add-ons and preferences."},{icon:e("Schedule"),title:"Schedule Installation",description:"Pick a convenient date for professional installation."},{icon:e("Enjoy"),title:"Get Connected",description:"Enjoy high-speed internet at your home or office."}],s={args:{steps:a}},t={args:{title:"Getting Started is Easy",eyebrow:"4 Simple Steps",steps:a}},o={args:{steps:a.slice(0,2)}};var n,i,c;s.parameters={...s.parameters,docs:{...(n=s.parameters)==null?void 0:n.docs,source:{originalSource:`{ + args: { + steps: sampleSteps + } +}`,...(c=(i=s.parameters)==null?void 0:i.docs)==null?void 0:c.source}}};var p,l,d;t.parameters={...t.parameters,docs:{...(p=t.parameters)==null?void 0:p.docs,source:{originalSource:`{ + args: { + title: "Getting Started is Easy", + eyebrow: "4 Simple Steps", + steps: sampleSteps + } +}`,...(d=(l=t.parameters)==null?void 0:l.docs)==null?void 0:d.source}}};var m,u,S;o.parameters={...o.parameters,docs:{...(m=o.parameters)==null?void 0:m.docs,source:{originalSource:`{ + args: { + steps: sampleSteps.slice(0, 2) + } +}`,...(S=(u=o.parameters)==null?void 0:u.docs)==null?void 0:S.source}}};const j=["Default","CustomTitle","TwoSteps"];export{t as CustomTitle,s as Default,o as TwoSteps,j as __namedExportsOrder,C as default}; diff --git a/apps/portal/public/storybook/assets/HowItWorksSection.stories-DyIW3oxb.js b/apps/portal/public/storybook/assets/HowItWorksSection.stories-DyIW3oxb.js new file mode 100644 index 00000000..66226874 --- /dev/null +++ b/apps/portal/public/storybook/assets/HowItWorksSection.stories-DyIW3oxb.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{M as l}from"./map-pin-Bm-ztWPO.js";import{S as m}from"./settings-BcEpseup.js";import{C as x}from"./calendar-6Kp0KrD6.js";import{W as p}from"./wifi-Df9jtwRo.js";import"./createLucideIcon-CctB0W3q.js";import"./index-JhL3uwfD.js";function h({number:o,icon:t,title:s,description:d}){return e.jsxs("div",{className:"flex flex-col items-center text-center flex-1 min-w-0",children:[e.jsxs("div",{className:"relative mb-4",children:[e.jsx("div",{className:"flex h-16 w-16 items-center justify-center rounded-xl bg-gray-50 border border-gray-200 text-primary shadow-sm",children:t}),e.jsx("div",{className:"absolute -top-1 -right-1 flex h-6 w-6 items-center justify-center rounded-full bg-primary text-white text-xs font-bold shadow-sm",children:o})]}),e.jsx("h4",{className:"font-semibold text-foreground mb-2",children:s}),e.jsx("p",{className:"text-sm text-muted-foreground leading-relaxed max-w-[180px]",children:d})]})}function c(){const o=[{icon:e.jsx(l,{className:"h-6 w-6"}),title:"Enter Address",description:"Submit your address for coverage check"},{icon:e.jsx(m,{className:"h-6 w-6"}),title:"We Verify",description:"Our team checks with NTT (1-2 days)"},{icon:e.jsx(x,{className:"h-6 w-6"}),title:"Sign Up & Order",description:"Create account and select your plan"},{icon:e.jsx(p,{className:"h-6 w-6"}),title:"Get Connected",description:"NTT installs fiber at your home"}];return e.jsxs("section",{className:"bg-card rounded-xl border border-border shadow-[var(--cp-shadow-1)] p-8",children:[e.jsxs("div",{className:"text-center mb-8",children:[e.jsx("span",{className:"text-sm font-semibold text-primary uppercase tracking-wider",children:"Getting Started"}),e.jsx("h3",{className:"text-2xl font-bold text-foreground mt-1",children:"How It Works"})]}),e.jsxs("div",{className:"relative",children:[e.jsx("div",{className:"hidden md:block absolute top-8 left-[12%] right-[12%] h-0.5 bg-gray-200"}),e.jsx("svg",{className:"hidden md:block absolute top-[30px] left-0 right-0 w-full h-4 pointer-events-none",preserveAspectRatio:"none",children:e.jsx("path",{d:"M 12% 8 Q 30% 8, 37.5% 8 Q 45% 8, 50% 8 Q 55% 8, 62.5% 8 Q 70% 8, 88% 8",fill:"none",stroke:"#e5e7eb",strokeWidth:"2",strokeDasharray:"6 4"})}),e.jsx("div",{className:"grid grid-cols-1 sm:grid-cols-2 md:grid-cols-4 gap-8 relative z-10",children:o.map((t,s)=>e.jsx(h,{number:s+1,icon:t.icon,title:t.title,description:t.description},s))})]})]})}c.__docgenInfo={description:"",methods:[],displayName:"HowItWorksSection"};const v={title:"Features/Services/Internet/HowItWorksSection",component:c,parameters:{layout:"centered"}},r={};var a,i,n;r.parameters={...r.parameters,docs:{...(a=r.parameters)==null?void 0:a.docs,source:{originalSource:"{}",...(n=(i=r.parameters)==null?void 0:i.docs)==null?void 0:n.source}}};const y=["Default"];export{r as Default,y as __namedExportsOrder,v as default}; diff --git a/apps/portal/public/storybook/assets/IdentityVerificationSection.stories-CzqNiDfi.js b/apps/portal/public/storybook/assets/IdentityVerificationSection.stories-CzqNiDfi.js new file mode 100644 index 00000000..83a8c9c3 --- /dev/null +++ b/apps/portal/public/storybook/assets/IdentityVerificationSection.stories-CzqNiDfi.js @@ -0,0 +1,46 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{S as W}from"./SubCard-1OZIPgEM.js";import{B as Y}from"./button-C8_cybvS.js";import{A as g}from"./AlertBanner-Bnlyj1xc.js";import{S as a}from"./status-pill-wWp9xkwA.js";import{R as b}from"./ResidenceCardUploadInput-CGlBhrJf.js";import{S as J}from"./shield-check-CusqZMaY.js";import{fn as h}from"./index-B9TJ7cVi.js";import"./index-JhL3uwfD.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./spinner-mU4XywER.js";import"./XCircleIcon-CiVBnngB.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./InformationCircleIcon-Clz7d-56.js";import"./CheckCircleIcon-Dva35lTP.js";import"./createLucideIcon-CctB0W3q.js";function M({isLoading:r,isError:t,status:n,data:i,onRefetch:s,onSubmitFile:o,isSubmitting:x,submitError:v,formatDateTime:j}){const U=()=>{switch(n){case"verified":return e.jsx(a,{label:"Verified",variant:"success"});case"pending":return e.jsx(a,{label:"Submitted",variant:"info"});case"rejected":return e.jsx(a,{label:"Action needed",variant:"warning"});default:return e.jsx(a,{label:"Required",variant:"warning"})}},G=()=>r?e.jsx("div",{className:"text-sm text-muted-foreground",children:"Checking residence card status..."}):t?e.jsx(g,{variant:"warning",title:"Unable to load verification status",size:"sm",elevated:!0,children:e.jsx(Y,{type:"button",size:"sm",onClick:s,children:"Check again"})}):n==="verified"?e.jsx(O,{data:i,formatDateTime:j,onSubmitFile:o,isSubmitting:x,submitError:v}):n==="pending"?e.jsx(H,{data:i,formatDateTime:j,onSubmitFile:o,isSubmitting:x,submitError:v}):e.jsx(K,{status:n,reviewerNotes:i==null?void 0:i.reviewerNotes,onSubmitFile:o,isSubmitting:x,submitError:v});return e.jsx(W,{title:"Identity verification",icon:e.jsx(J,{className:"w-5 h-5 text-primary"}),right:U(),children:G()})}function O({data:r,formatDateTime:t,onSubmitFile:n,isSubmitting:i,submitError:s}){return e.jsxs("div",{className:"space-y-3",children:[e.jsx(g,{variant:"success",title:"Residence card verified",size:"sm",elevated:!0,children:"Your identity verification is complete."}),((r==null?void 0:r.submittedAt)||(r==null?void 0:r.reviewedAt))&&e.jsxs("div",{className:"rounded-xl border border-border bg-muted/30 px-4 py-3",children:[e.jsx("div",{className:"text-xs font-semibold uppercase tracking-wide text-muted-foreground",children:"Verification status"}),e.jsxs("div",{className:"mt-1 text-xs text-muted-foreground space-y-0.5",children:[t(r==null?void 0:r.submittedAt)&&e.jsxs("div",{children:["Submitted: ",t(r==null?void 0:r.submittedAt)]}),t(r==null?void 0:r.reviewedAt)&&e.jsxs("div",{children:["Reviewed: ",t(r==null?void 0:r.reviewedAt)]})]})]}),e.jsxs("details",{className:"rounded-xl border border-border bg-card p-4",children:[e.jsx("summary",{className:"cursor-pointer select-none text-sm font-semibold text-foreground",children:"Replace residence card"}),e.jsx("div",{className:"pt-3",children:e.jsx(b,{onSubmit:n,isPending:i,isError:!!s,error:s,submitLabel:"Submit replacement",description:"Replacing the file restarts the verification process."})})]})]})}function H({data:r,formatDateTime:t,onSubmitFile:n,isSubmitting:i,submitError:s}){return e.jsxs("div",{className:"space-y-3",children:[e.jsx(g,{variant:"info",title:"Residence card submitted",size:"sm",elevated:!0,children:"We'll verify your residence card before activating SIM service."}),(r==null?void 0:r.submittedAt)&&e.jsxs("div",{className:"rounded-xl border border-border bg-muted/30 px-4 py-3",children:[e.jsx("div",{className:"text-xs font-semibold uppercase tracking-wide text-muted-foreground",children:"Submission status"}),e.jsxs("div",{className:"mt-1 text-xs text-muted-foreground",children:["Submitted: ",t(r==null?void 0:r.submittedAt)]})]}),e.jsxs("details",{className:"rounded-xl border border-border bg-card p-4",children:[e.jsx("summary",{className:"cursor-pointer select-none text-sm font-semibold text-foreground",children:"Replace residence card"}),e.jsx("div",{className:"pt-3",children:e.jsx(b,{onSubmit:n,isPending:i,isError:!!s,error:s,submitLabel:"Submit replacement",description:"If you uploaded the wrong file, you can replace it. This restarts the review."})})]})]})}function K({status:r,reviewerNotes:t,onSubmitFile:n,isSubmitting:i,submitError:s}){const o=r==="rejected";return e.jsx(g,{variant:o?"warning":"info",title:o?"ID verification rejected":"Submit your residence card",size:"sm",elevated:!0,children:e.jsxs("div",{className:"space-y-3",children:[o&&t?e.jsxs("div",{className:"text-sm text-foreground/80",children:[e.jsx("div",{className:"font-medium text-foreground",children:"Rejection note"}),e.jsx("div",{children:t})]}):o?e.jsx("p",{className:"text-sm text-foreground/80",children:"Your document couldn't be approved. Please upload a new file to continue."}):null,e.jsx("p",{className:"text-sm text-foreground/80",children:"Upload a JPG, PNG, or PDF (max 5MB). We'll verify it before activating SIM service."}),e.jsx(b,{onSubmit:n,isPending:i,isError:!!s,error:s,submitLabel:"Submit for review"})]})})}M.__docgenInfo={description:"",methods:[],displayName:"IdentityVerificationSection",props:{isLoading:{required:!0,tsType:{name:"boolean"},description:""},isError:{required:!0,tsType:{name:"boolean"},description:""},status:{required:!0,tsType:{name:"union",raw:'"verified" | "pending" | "rejected" | "not_submitted" | undefined',elements:[{name:"literal",value:'"verified"'},{name:"literal",value:'"pending"'},{name:"literal",value:'"rejected"'},{name:"literal",value:'"not_submitted"'},{name:"undefined"}]},description:""},data:{required:!1,tsType:{name:"union",raw:"VerificationData | undefined",elements:[{name:"VerificationData"},{name:"undefined"}]},description:""},onRefetch:{required:!0,tsType:{name:"signature",type:"function",raw:"() => void",signature:{arguments:[],return:{name:"void"}}},description:""},onSubmitFile:{required:!0,tsType:{name:"signature",type:"function",raw:"(file: File) => void",signature:{arguments:[{type:{name:"File"},name:"file"}],return:{name:"void"}}},description:""},isSubmitting:{required:!0,tsType:{name:"boolean"},description:""},submitError:{required:!1,tsType:{name:"union",raw:"Error | null | undefined",elements:[{name:"Error"},{name:"null"},{name:"undefined"}]},description:""},formatDateTime:{required:!0,tsType:{name:"signature",type:"function",raw:"(iso?: string | null) => string | null",signature:{arguments:[{type:{name:"union",raw:"string | null",elements:[{name:"string"},{name:"null"}]},name:"iso"}],return:{name:"union",raw:"string | null",elements:[{name:"string"},{name:"null"}]}}},description:""}}};const Q=r=>r?new Date(r).toLocaleString():null,je={title:"Features/Checkout/IdentityVerificationSection",component:M,parameters:{layout:"centered"},decorators:[r=>e.jsx("div",{style:{width:560},children:e.jsx(r,{})})],args:{isLoading:!1,isError:!1,onRefetch:h(),onSubmitFile:h(),isSubmitting:!1,submitError:null,formatDateTime:Q}},d={args:{status:"verified",data:{submittedAt:"2026-02-20T14:30:00Z",reviewedAt:"2026-02-21T09:15:00Z",reviewerNotes:null}}},c={args:{status:"pending",data:{submittedAt:"2026-03-06T10:00:00Z",reviewedAt:null,reviewerNotes:null}}},u={args:{status:"not_submitted",data:void 0}},l={args:{status:"rejected",data:{reviewerNotes:"The document is expired. Please upload a valid residence card."}}},m={args:{isLoading:!0,status:void 0}},p={args:{isError:!0,status:void 0}},f={args:{status:"not_submitted",isSubmitting:!0}};var S,y,w;d.parameters={...d.parameters,docs:{...(S=d.parameters)==null?void 0:S.docs,source:{originalSource:`{ + args: { + status: "verified", + data: { + submittedAt: "2026-02-20T14:30:00Z", + reviewedAt: "2026-02-21T09:15:00Z", + reviewerNotes: null + } + } +}`,...(w=(y=d.parameters)==null?void 0:y.docs)==null?void 0:w.source}}};var N,A,R;c.parameters={...c.parameters,docs:{...(N=c.parameters)==null?void 0:N.docs,source:{originalSource:`{ + args: { + status: "pending", + data: { + submittedAt: "2026-03-06T10:00:00Z", + reviewedAt: null, + reviewerNotes: null + } + } +}`,...(R=(A=c.parameters)==null?void 0:A.docs)==null?void 0:R.source}}};var T,P,C;u.parameters={...u.parameters,docs:{...(T=u.parameters)==null?void 0:T.docs,source:{originalSource:`{ + args: { + status: "not_submitted", + data: undefined + } +}`,...(C=(P=u.parameters)==null?void 0:P.docs)==null?void 0:C.source}}};var q,E,I;l.parameters={...l.parameters,docs:{...(q=l.parameters)==null?void 0:q.docs,source:{originalSource:`{ + args: { + status: "rejected", + data: { + reviewerNotes: "The document is expired. Please upload a valid residence card." + } + } +}`,...(I=(E=l.parameters)==null?void 0:E.docs)==null?void 0:I.source}}};var L,V,_;m.parameters={...m.parameters,docs:{...(L=m.parameters)==null?void 0:L.docs,source:{originalSource:`{ + args: { + isLoading: true, + status: undefined + } +}`,...(_=(V=m.parameters)==null?void 0:V.docs)==null?void 0:_.source}}};var k,Z,z;p.parameters={...p.parameters,docs:{...(k=p.parameters)==null?void 0:k.docs,source:{originalSource:`{ + args: { + isError: true, + status: undefined + } +}`,...(z=(Z=p.parameters)==null?void 0:Z.docs)==null?void 0:z.source}}};var B,F,D;f.parameters={...f.parameters,docs:{...(B=f.parameters)==null?void 0:B.docs,source:{originalSource:`{ + args: { + status: "not_submitted", + isSubmitting: true + } +}`,...(D=(F=f.parameters)==null?void 0:F.docs)==null?void 0:D.source}}};const he=["Verified","Pending","NotSubmitted","Rejected","Loading","ErrorState","Submitting"];export{p as ErrorState,m as Loading,u as NotSubmitted,c as Pending,l as Rejected,f as Submitting,d as Verified,he as __namedExportsOrder,je as default}; diff --git a/apps/portal/public/storybook/assets/InboxIcon-C_jmd85B.js b/apps/portal/public/storybook/assets/InboxIcon-C_jmd85B.js new file mode 100644 index 00000000..fa085916 --- /dev/null +++ b/apps/portal/public/storybook/assets/InboxIcon-C_jmd85B.js @@ -0,0 +1 @@ +import{r as e}from"./index-JhL3uwfD.js";function n({title:r,titleId:a,...o},t){return e.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:t,"aria-labelledby":a},o),r?e.createElement("title",{id:a},r):null,e.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M2.25 13.5h3.86a2.25 2.25 0 0 1 2.012 1.244l.256.512a2.25 2.25 0 0 0 2.013 1.244h3.218a2.25 2.25 0 0 0 2.013-1.244l.256-.512a2.25 2.25 0 0 1 2.013-1.244h3.859m-19.5.338V18a2.25 2.25 0 0 0 2.25 2.25h15A2.25 2.25 0 0 0 21.75 18v-4.162c0-.224-.034-.447-.1-.661L19.24 5.338a2.25 2.25 0 0 0-2.15-1.588H6.911a2.25 2.25 0 0 0-2.15 1.588L2.35 13.177a2.25 2.25 0 0 0-.1.661Z"}))}const s=e.forwardRef(n);export{s as F}; diff --git a/apps/portal/public/storybook/assets/InfoPanel-CAJ6XA4c.js b/apps/portal/public/storybook/assets/InfoPanel-CAJ6XA4c.js new file mode 100644 index 00000000..47e481ba --- /dev/null +++ b/apps/portal/public/storybook/assets/InfoPanel-CAJ6XA4c.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";function s({text:r}){return e.jsx("div",{className:"mb-6 p-3 bg-gray-50 rounded-lg border border-gray-200",children:e.jsx("p",{className:"text-sm text-gray-600",children:r})})}s.__docgenInfo={description:"",methods:[],displayName:"InfoPanel",props:{text:{required:!0,tsType:{name:"string"},description:""}}};export{s as I}; diff --git a/apps/portal/public/storybook/assets/InfoPanel.stories-CV1LECBr.js b/apps/portal/public/storybook/assets/InfoPanel.stories-CV1LECBr.js new file mode 100644 index 00000000..6e86cdbe --- /dev/null +++ b/apps/portal/public/storybook/assets/InfoPanel.stories-CV1LECBr.js @@ -0,0 +1,13 @@ +import{j as a}from"./jsx-runtime-D_zvdyIk.js";import{I as h}from"./InfoPanel-CAJ6XA4c.js";const g={title:"Features/Services/ConfigurationStep/InfoPanel",component:h,parameters:{layout:"centered"},decorators:[p=>a.jsx("div",{style:{maxWidth:500},children:a.jsx(p,{})})]},e={args:{text:"All plans include unlimited data and a free router rental for the duration of your contract."}},t={args:{text:"Prices shown exclude tax."}},r={args:{text:"Your installation will be scheduled after order confirmation. A technician will visit your location to set up the fiber connection. The process typically takes 2-3 hours. Please ensure someone is available at the installation address during the scheduled time window."}};var o,s,n;e.parameters={...e.parameters,docs:{...(o=e.parameters)==null?void 0:o.docs,source:{originalSource:`{ + args: { + text: "All plans include unlimited data and a free router rental for the duration of your contract." + } +}`,...(n=(s=e.parameters)==null?void 0:s.docs)==null?void 0:n.source}}};var i,c,l;t.parameters={...t.parameters,docs:{...(i=t.parameters)==null?void 0:i.docs,source:{originalSource:`{ + args: { + text: "Prices shown exclude tax." + } +}`,...(l=(c=t.parameters)==null?void 0:c.docs)==null?void 0:l.source}}};var d,u,m;r.parameters={...r.parameters,docs:{...(d=r.parameters)==null?void 0:d.docs,source:{originalSource:`{ + args: { + text: "Your installation will be scheduled after order confirmation. A technician will visit your location to set up the fiber connection. The process typically takes 2-3 hours. Please ensure someone is available at the installation address during the scheduled time window." + } +}`,...(m=(u=r.parameters)==null?void 0:u.docs)==null?void 0:m.source}}};const w=["Default","Short","Long"];export{e as Default,r as Long,t as Short,w as __namedExportsOrder,g as default}; diff --git a/apps/portal/public/storybook/assets/InformationCircleIcon-Clz7d-56.js b/apps/portal/public/storybook/assets/InformationCircleIcon-Clz7d-56.js new file mode 100644 index 00000000..cd8f1333 --- /dev/null +++ b/apps/portal/public/storybook/assets/InformationCircleIcon-Clz7d-56.js @@ -0,0 +1 @@ +import{r as e}from"./index-JhL3uwfD.js";function a({title:r,titleId:o,...t},n){return e.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:n,"aria-labelledby":o},t),r?e.createElement("title",{id:o},r):null,e.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"m11.25 11.25.041-.02a.75.75 0 0 1 1.063.852l-.708 2.836a.75.75 0 0 0 1.063.853l.041-.021M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0Zm-9-3.75h.008v.008H12V8.25Z"}))}const l=e.forwardRef(a);export{l as F}; diff --git a/apps/portal/public/storybook/assets/InstallationOptions-CKiIJxBe.js b/apps/portal/public/storybook/assets/InstallationOptions-CKiIJxBe.js new file mode 100644 index 00000000..68d8e753 --- /dev/null +++ b/apps/portal/public/storybook/assets/InstallationOptions-CKiIJxBe.js @@ -0,0 +1 @@ +import{j as t}from"./jsx-runtime-D_zvdyIk.js";import{C as c}from"./CardPricing-FcGNWupq.js";function u({installations:s,selectedInstallationSku:i,onInstallationSelect:o,showSkus:d=!1}){const l=[...s].sort((e,n)=>(e.displayOrder??0)-(n.displayOrder??0));return l.length===0?t.jsx("div",{className:"col-span-full text-center py-8 text-gray-500",children:t.jsx("p",{children:"No installation options available. Please contact support."})}):t.jsx("div",{className:"grid grid-cols-1 md:grid-cols-3 gap-6",children:l.map(e=>{var a;const n=i===e.sku,r=((a=e.catalogMetadata)==null?void 0:a.installationTerm)??null,m=e.description||(r==="12-Month"?"Spread the installation fee across 12 monthly payments.":r==="24-Month"?"Spread the installation fee across 24 monthly payments.":"Pay the full installation fee in one payment.");return t.jsxs("button",{type:"button",onClick:()=>o(e),"aria-pressed":n,className:`p-6 rounded-xl border-2 text-left transition-all duration-200 focus:outline-none focus-visible:ring-2 focus-visible:ring-blue-500 focus-visible:ring-offset-2 flex flex-col gap-4 ${n?"border-blue-500 bg-blue-50 shadow-md":"border-gray-200 hover:border-blue-400 hover:bg-blue-50/50 shadow-sm hover:shadow-md"}`,children:[t.jsxs("div",{className:"flex items-start justify-between gap-3",children:[t.jsx("h4",{className:"text-lg font-semibold text-gray-900 flex-1",children:e.name}),t.jsx("div",{className:`w-5 h-5 rounded-full border-2 flex items-center justify-center flex-shrink-0 mt-0.5 ${n?"bg-blue-500 border-blue-500":"border-gray-300 bg-white"}`,"aria-hidden":"true",children:n&&t.jsx("div",{className:"w-2 h-2 bg-white rounded-full"})})]}),t.jsx("p",{className:"text-sm text-gray-600 leading-relaxed",children:m}),t.jsx("div",{className:"flex items-center gap-2",children:t.jsx("span",{className:`text-xs px-2.5 py-1 rounded-full font-medium ${e.billingCycle==="Monthly"?"bg-blue-100 text-blue-700 border border-blue-200":"bg-green-100 text-green-700 border border-green-200"}`,children:e.billingCycle==="Monthly"?"Monthly Payment":"One-time Payment"})}),t.jsx("div",{className:"pt-3 border-t border-gray-200",children:t.jsx(c,{monthlyPrice:e.billingCycle==="Monthly"?e.monthlyPrice:null,oneTimePrice:e.billingCycle==="Monthly"?null:e.oneTimePrice,size:"md",alignment:"left"})}),d&&t.jsxs("div",{className:"text-xs text-gray-400 pt-2 border-t border-gray-100",children:["SKU: ",e.sku]})]},e.sku)})})}u.__docgenInfo={description:"",methods:[],displayName:"InstallationOptions",props:{installations:{required:!0,tsType:{name:"Array",elements:[{name:"z.infer",elements:[{name:"internetInstallationCatalogItemSchema"}],raw:"z.infer"}],raw:"InternetInstallationCatalogItem[]"},description:""},selectedInstallationSku:{required:!0,tsType:{name:"union",raw:"string | null",elements:[{name:"string"},{name:"null"}]},description:""},onInstallationSelect:{required:!0,tsType:{name:"signature",type:"function",raw:"(installation: InternetInstallationCatalogItem | null) => void",signature:{arguments:[{type:{name:"union",raw:"InternetInstallationCatalogItem | null",elements:[{name:"z.infer",elements:[{name:"internetInstallationCatalogItemSchema"}],raw:"z.infer"},{name:"null"}]},name:"installation"}],return:{name:"void"}}},description:""},showSkus:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"false",computed:!1}}}};export{u as I}; diff --git a/apps/portal/public/storybook/assets/InstallationOptions.stories-BnnJh6fr.js b/apps/portal/public/storybook/assets/InstallationOptions.stories-BnnJh6fr.js new file mode 100644 index 00000000..f885f135 --- /dev/null +++ b/apps/portal/public/storybook/assets/InstallationOptions.stories-BnnJh6fr.js @@ -0,0 +1,26 @@ +import{I as h}from"./InstallationOptions-CKiIJxBe.js";import"./jsx-runtime-D_zvdyIk.js";import"./CardPricing-FcGNWupq.js";import"./CurrencyYenIcon-Bf5bmWZc.js";import"./index-JhL3uwfD.js";const s=[{id:"inst-001",sku:"INT-INST-ONETIME",name:"One-time Payment",description:"Pay the full installation fee in one payment.",displayOrder:1,billingCycle:"One-time",monthlyPrice:0,oneTimePrice:22800,catalogMetadata:{installationTerm:"One-time"}},{id:"inst-002",sku:"INT-INST-12M",name:"12-Month Installment",description:"Spread the installation fee across 12 monthly payments.",displayOrder:2,billingCycle:"Monthly",monthlyPrice:1900,oneTimePrice:0,catalogMetadata:{installationTerm:"12-Month"}},{id:"inst-003",sku:"INT-INST-24M",name:"24-Month Installment",description:"Spread the installation fee across 24 monthly payments.",displayOrder:3,billingCycle:"Monthly",monthlyPrice:950,oneTimePrice:0,catalogMetadata:{installationTerm:"24-Month"}}],O={title:"Features/Services/Internet/InstallationOptions",component:h,parameters:{layout:"centered"}},t={args:{installations:s,selectedInstallationSku:null,onInstallationSelect:()=>{}}},n={args:{installations:s,selectedInstallationSku:"INT-INST-12M",onInstallationSelect:()=>{}}},e={args:{installations:s,selectedInstallationSku:null,onInstallationSelect:()=>{},showSkus:!0}},a={args:{installations:[],selectedInstallationSku:null,onInstallationSelect:()=>{}}};var l,o,i;t.parameters={...t.parameters,docs:{...(l=t.parameters)==null?void 0:l.docs,source:{originalSource:`{ + args: { + installations: mockInstallations, + selectedInstallationSku: null, + onInstallationSelect: () => {} + } +}`,...(i=(o=t.parameters)==null?void 0:o.docs)==null?void 0:i.source}}};var r,c,m;n.parameters={...n.parameters,docs:{...(r=n.parameters)==null?void 0:r.docs,source:{originalSource:`{ + args: { + installations: mockInstallations, + selectedInstallationSku: "INT-INST-12M", + onInstallationSelect: () => {} + } +}`,...(m=(c=n.parameters)==null?void 0:c.docs)==null?void 0:m.source}}};var d,u,p;e.parameters={...e.parameters,docs:{...(d=e.parameters)==null?void 0:d.docs,source:{originalSource:`{ + args: { + installations: mockInstallations, + selectedInstallationSku: null, + onInstallationSelect: () => {}, + showSkus: true + } +}`,...(p=(u=e.parameters)==null?void 0:u.docs)==null?void 0:p.source}}};var I,S,y;a.parameters={...a.parameters,docs:{...(I=a.parameters)==null?void 0:I.docs,source:{originalSource:`{ + args: { + installations: [], + selectedInstallationSku: null, + onInstallationSelect: () => {} + } +}`,...(y=(S=a.parameters)==null?void 0:S.docs)==null?void 0:y.source}}};const f=["Default","WithSelection","WithSkus","Empty"];export{t as Default,a as Empty,n as WithSelection,e as WithSkus,f as __namedExportsOrder,O as default}; diff --git a/apps/portal/public/storybook/assets/InstallationStep.stories-DyDnFBPU.js b/apps/portal/public/storybook/assets/InstallationStep.stories-DyDnFBPU.js new file mode 100644 index 00000000..cf5d4e07 --- /dev/null +++ b/apps/portal/public/storybook/assets/InstallationStep.stories-DyDnFBPU.js @@ -0,0 +1,28 @@ +import{j as t}from"./jsx-runtime-D_zvdyIk.js";import{B as s}from"./button-C8_cybvS.js";import"./input-BbGJiz0K.js";import"./password-input-D4khGh8v.js";import"./checkbox-DahUyQbt.js";import"./label-C25VH7yk.js";import"./error-message-DeFFz6H_.js";import"./status-pill-wWp9xkwA.js";import"./badge-BdMsasyi.js";import"./spinner-mU4XywER.js";import"./loading-overlay-DMJTiFny.js";import"./error-state-BSicqqE6.js";import"./empty-state-DRUGJ9ip.js";import"./inline-toast-DQJ-O9wc.js";import"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import"./logo-f0fprTjz.js";import{S as N}from"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./animated-container-DyAZ9gmw.js";import{I as w}from"./InstallationOptions-CKiIJxBe.js";import{F as C}from"./ArrowLeftIcon-Cw1eswTb.js";import{F as b}from"./ArrowRightIcon--Vuz7Q7x.js";import"./index-JhL3uwfD.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./createLucideIcon-CctB0W3q.js";import"./ExclamationCircleIcon-jFfW0Ax_.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./ArrowPathIcon-CZjG6RfV.js";import"./PlusIcon-DGufmf06.js";import"./index-CNXKWNLp.js";import"./proxy-ZkTvaR74.js";import"./next-image-69WeRggt.js";import"./Squares2X2Icon-BMQM_Wy1.js";import"./CardPricing-FcGNWupq.js";import"./CurrencyYenIcon-Bf5bmWZc.js";function f({installations:S,selectedInstallation:e,setSelectedInstallationSku:h,isTransitioning:k,onBack:T,onNext:x}){return t.jsxs("div",{className:`bg-white rounded-2xl shadow-lg border border-gray-200/50 p-8 md:p-10 transition-all duration-150 ease-out ${k?"opacity-0 translate-y-2":"opacity-100 translate-y-0"}`,children:[t.jsx("div",{className:"mb-8",children:t.jsx(N,{stepNumber:2,title:"Installation",description:"Choose your preferred installation method"})}),t.jsx(w,{installations:S,selectedInstallationSku:(e==null?void 0:e.sku)??null,onInstallationSelect:r=>h(r?r.sku:null)}),t.jsxs("div",{className:"flex justify-between mt-8 pt-6 border-t border-gray-100",children:[t.jsx(s,{onClick:T,variant:"outline",leftIcon:t.jsx(C,{className:"w-4 h-4"}),children:"Back to Configuration"}),t.jsx(s,{onClick:x,disabled:!e,rightIcon:t.jsx(b,{className:"w-4 h-4"}),className:"min-w-[200px]",children:"Continue to Add-ons"})]})]})}f.__docgenInfo={description:"",methods:[],displayName:"InstallationStep",props:{installations:{required:!0,tsType:{name:"Array",elements:[{name:"z.infer",elements:[{name:"internetInstallationCatalogItemSchema"}],raw:"z.infer"}],raw:"InternetInstallationCatalogItem[]"},description:""},selectedInstallation:{required:!0,tsType:{name:"union",raw:"InternetInstallationCatalogItem | null",elements:[{name:"z.infer",elements:[{name:"internetInstallationCatalogItemSchema"}],raw:"z.infer"},{name:"null"}]},description:""},setSelectedInstallationSku:{required:!0,tsType:{name:"signature",type:"function",raw:"(sku: string | null) => void",signature:{arguments:[{type:{name:"union",raw:"string | null",elements:[{name:"string"},{name:"null"}]},name:"sku"}],return:{name:"void"}}},description:""},isTransitioning:{required:!0,tsType:{name:"boolean"},description:""},onBack:{required:!0,tsType:{name:"signature",type:"function",raw:"() => void",signature:{arguments:[],return:{name:"void"}}},description:""},onNext:{required:!0,tsType:{name:"signature",type:"function",raw:"() => void",signature:{arguments:[],return:{name:"void"}}},description:""}}};const o=[{id:"inst-001",sku:"INT-INST-ONETIME",name:"One-time Payment",description:"Pay the full installation fee in one payment.",displayOrder:1,billingCycle:"One-time",monthlyPrice:0,oneTimePrice:22800,catalogMetadata:{installationTerm:"One-time"}},{id:"inst-002",sku:"INT-INST-12M",name:"12-Month Installment",description:"Spread the installation fee across 12 monthly payments.",displayOrder:2,billingCycle:"Monthly",monthlyPrice:1900,oneTimePrice:0,catalogMetadata:{installationTerm:"12-Month"}},{id:"inst-003",sku:"INT-INST-24M",name:"24-Month Installment",description:"Spread the installation fee across 24 monthly payments.",displayOrder:3,billingCycle:"Monthly",monthlyPrice:950,oneTimePrice:0,catalogMetadata:{installationTerm:"24-Month"}}],It={title:"Features/Services/Internet/Configure/InstallationStep",component:f,parameters:{layout:"centered"}},n={args:{installations:o,selectedInstallation:null,setSelectedInstallationSku:()=>{},isTransitioning:!1,onBack:()=>{},onNext:()=>{}}},a={args:{installations:o,selectedInstallation:o[1],setSelectedInstallationSku:()=>{},isTransitioning:!1,onBack:()=>{},onNext:()=>{}}},i={args:{installations:o,selectedInstallation:null,setSelectedInstallationSku:()=>{},isTransitioning:!0,onBack:()=>{},onNext:()=>{}}};var l,m,p;n.parameters={...n.parameters,docs:{...(l=n.parameters)==null?void 0:l.docs,source:{originalSource:`{ + args: { + installations: mockInstallations, + selectedInstallation: null, + setSelectedInstallationSku: () => {}, + isTransitioning: false, + onBack: () => {}, + onNext: () => {} + } +}`,...(p=(m=n.parameters)==null?void 0:m.docs)==null?void 0:p.source}}};var c,d,u;a.parameters={...a.parameters,docs:{...(c=a.parameters)==null?void 0:c.docs,source:{originalSource:`{ + args: { + installations: mockInstallations, + selectedInstallation: mockInstallations[1], + setSelectedInstallationSku: () => {}, + isTransitioning: false, + onBack: () => {}, + onNext: () => {} + } +}`,...(u=(d=a.parameters)==null?void 0:d.docs)==null?void 0:u.source}}};var g,I,y;i.parameters={...i.parameters,docs:{...(g=i.parameters)==null?void 0:g.docs,source:{originalSource:`{ + args: { + installations: mockInstallations, + selectedInstallation: null, + setSelectedInstallationSku: () => {}, + isTransitioning: true, + onBack: () => {}, + onNext: () => {} + } +}`,...(y=(I=i.parameters)==null?void 0:I.docs)==null?void 0:y.source}}};const yt=["Default","WithSelection","Transitioning"];export{n as Default,i as Transitioning,a as WithSelection,yt as __namedExportsOrder,It as default}; diff --git a/apps/portal/public/storybook/assets/InternetImportantNotes.stories-dl4oyU2O.js b/apps/portal/public/storybook/assets/InternetImportantNotes.stories-dl4oyU2O.js new file mode 100644 index 00000000..7b2e8df4 --- /dev/null +++ b/apps/portal/public/storybook/assets/InternetImportantNotes.stories-dl4oyU2O.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{F as o}from"./InformationCircleIcon-Clz7d-56.js";import"./index-JhL3uwfD.js";function a(){return e.jsxs("section",{className:"bg-card rounded-xl border border-border shadow-[var(--cp-shadow-1)] p-5",children:[e.jsxs("div",{className:"flex items-start gap-3 mb-4",children:[e.jsx(o,{className:"h-5 w-5 text-info flex-shrink-0 mt-0.5"}),e.jsxs("div",{children:[e.jsx("h3",{className:"font-semibold text-foreground",children:"Important notes & fees"}),e.jsx("p",{className:"text-sm text-muted-foreground mt-1",children:"A few things to keep in mind when selecting your internet service."})]})]}),e.jsxs("ul",{className:"grid grid-cols-1 md:grid-cols-2 gap-x-8 gap-y-3 text-sm text-muted-foreground",children:[e.jsxs("li",{className:"flex items-start gap-2",children:[e.jsx("span",{className:"text-foreground font-medium",children:"•"}),e.jsxs("span",{children:[e.jsx("span",{className:"text-foreground font-medium",children:"Same speeds across tiers"}),"—Silver, Gold, and Platinum all provide the same connection speed. The difference is in equipment and support level."]})]}),e.jsxs("li",{className:"flex items-start gap-2",children:[e.jsx("span",{className:"text-foreground font-medium",children:"•"}),e.jsxs("span",{children:[e.jsx("span",{className:"text-foreground font-medium",children:"Flexible installation payment"}),"—The ¥22,800 setup fee can be paid upfront or spread across 12 or 24 monthly installments."]})]}),e.jsxs("li",{className:"flex items-start gap-2",children:[e.jsx("span",{className:"text-foreground font-medium",children:"•"}),e.jsxs("span",{children:[e.jsx("span",{className:"text-foreground font-medium",children:"Home phone available"}),"—Hikari Denwa (IP phone) can be added to Gold or Platinum plans for ¥450/month + one-time setup (¥1,000–¥3,000)."]})]}),e.jsxs("li",{className:"flex items-start gap-2",children:[e.jsx("span",{className:"text-foreground font-medium",children:"•"}),e.jsxs("span",{children:[e.jsx("span",{className:"text-foreground font-medium",children:"On-site help if needed"}),"—Our technicians can visit your home for setup or troubleshooting (¥15,000 per visit)."]})]})]}),e.jsx("p",{className:"text-xs text-muted-foreground mt-4 pt-3 border-t border-border",children:"All prices shown exclude 10% consumption tax. Final pricing confirmed after address verification."})]})}a.__docgenInfo={description:"",methods:[],displayName:"InternetImportantNotes"};const m={title:"Features/Services/Internet/InternetImportantNotes",component:a,parameters:{layout:"centered"}},s={};var t,r,n;s.parameters={...s.parameters,docs:{...(t=s.parameters)==null?void 0:t.docs,source:{originalSource:"{}",...(n=(r=s.parameters)==null?void 0:r.docs)==null?void 0:n.source}}};const c=["Default"];export{s as Default,c as __namedExportsOrder,m as default}; diff --git a/apps/portal/public/storybook/assets/InternetIneligibleState.stories-B41A9tyD.js b/apps/portal/public/storybook/assets/InternetIneligibleState.stories-B41A9tyD.js new file mode 100644 index 00000000..a8f2b039 --- /dev/null +++ b/apps/portal/public/storybook/assets/InternetIneligibleState.stories-B41A9tyD.js @@ -0,0 +1,7 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{B as d}from"./button-C8_cybvS.js";import{T as p}from"./triangle-alert-F5KF_Jv1.js";import"./index-JhL3uwfD.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./spinner-mU4XywER.js";import"./createLucideIcon-CctB0W3q.js";function m({rejectionNotes:c}){return e.jsxs("div",{className:"bg-warning/5 border border-warning/20 rounded-xl p-6 text-center",children:[e.jsx(p,{className:"h-12 w-12 text-warning mx-auto mb-4"}),e.jsx("h2",{className:"text-lg font-semibold text-foreground mb-2",children:"Service not available"}),e.jsx("p",{className:"text-sm text-muted-foreground mb-4 max-w-md mx-auto",children:c||"Our review determined that NTT fiber service isn't available at your address."}),e.jsx(d,{as:"a",href:"/account/support/new",variant:"outline",children:"Contact support"})]})}m.__docgenInfo={description:"Displays the ineligible state when NTT service is not available at user's address.",methods:[],displayName:"InternetIneligibleState",props:{rejectionNotes:{required:!1,tsType:{name:"union",raw:"string | null | undefined",elements:[{name:"string"},{name:"null"},{name:"undefined"}]},description:""}}};const I={title:"Features/Services/Internet/InternetIneligibleState",component:m,parameters:{layout:"centered"}},t={args:{}},r={args:{rejectionNotes:"NTT has confirmed that fiber infrastructure is not available in your building. An alternative connection method may be available - please contact support for options."}};var a,n,o;t.parameters={...t.parameters,docs:{...(a=t.parameters)==null?void 0:a.docs,source:{originalSource:`{ + args: {} +}`,...(o=(n=t.parameters)==null?void 0:n.docs)==null?void 0:o.source}}};var i,s,l;r.parameters={...r.parameters,docs:{...(i=r.parameters)==null?void 0:i.docs,source:{originalSource:`{ + args: { + rejectionNotes: "NTT has confirmed that fiber infrastructure is not available in your building. An alternative connection method may be available - please contact support for options." + } +}`,...(l=(s=r.parameters)==null?void 0:s.docs)==null?void 0:l.source}}};const S=["Default","WithRejectionNotes"];export{t as Default,r as WithRejectionNotes,S as __namedExportsOrder,I as default}; diff --git a/apps/portal/public/storybook/assets/InternetModalShell-jIX05857.js b/apps/portal/public/storybook/assets/InternetModalShell-jIX05857.js new file mode 100644 index 00000000..48f11cd9 --- /dev/null +++ b/apps/portal/public/storybook/assets/InternetModalShell-jIX05857.js @@ -0,0 +1,5 @@ +import{j as t}from"./jsx-runtime-D_zvdyIk.js";import{r as n}from"./index-JhL3uwfD.js";import{c as v}from"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import{F as w}from"./XMarkIcon-Bsb1W5VN.js";const j={md:"max-w-lg",lg:"max-w-3xl"};function k({isOpen:i,onClose:o,title:b,description:l,children:h,size:y="lg"}){const u=n.useId(),m=n.useId(),d=n.useRef(null),f=n.useRef(null);return n.useEffect(()=>{if(!i)return;f.current=document.activeElement;const r=window.setTimeout(()=>{var e;(e=d.current)==null||e.focus()},0),p=e=>{var x;if(e.key==="Escape"&&(e.preventDefault(),o()),e.key==="Tab"){const c=(x=d.current)==null?void 0:x.querySelectorAll('button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])');if(!c||c.length===0){e.preventDefault();return}const g=[...c],s=g[0],a=g.at(-1);!e.shiftKey&&document.activeElement===a&&(e.preventDefault(),s==null||s.focus()),e.shiftKey&&document.activeElement===s&&(e.preventDefault(),a==null||a.focus())}};return document.addEventListener("keydown",p),()=>{var e;clearTimeout(r),document.removeEventListener("keydown",p),(e=f.current)==null||e.focus()}},[i,o]),i?t.jsxs("div",{className:"fixed inset-0 z-50 flex items-center justify-center p-4",role:"presentation",onClick:r=>{r.target===r.currentTarget&&o()},children:[t.jsx("div",{className:"absolute inset-0 bg-background/80 backdrop-blur-sm","aria-hidden":"true"}),t.jsxs("div",{ref:d,role:"dialog","aria-modal":"true","aria-labelledby":u,"aria-describedby":l?m:void 0,tabIndex:-1,className:v("relative z-10 w-full rounded-2xl border border-border bg-card text-card-foreground shadow-[var(--cp-shadow-3)] max-h-[90vh] overflow-y-auto outline-none",j[y]),onClick:r=>r.stopPropagation(),children:[t.jsxs("div",{className:"sticky top-0 z-10 flex items-start justify-between gap-4 border-b border-border bg-card px-6 py-4",children:[t.jsxs("div",{className:"min-w-0",children:[t.jsx("h2",{id:u,className:"text-lg font-semibold text-foreground",children:b}),l?t.jsx("p",{id:m,className:"mt-1 text-sm text-muted-foreground",children:l}):null]}),t.jsx("button",{onClick:o,className:"text-muted-foreground transition-colors hover:text-foreground flex-shrink-0","aria-label":"Close modal",type:"button",children:t.jsx(w,{className:"h-5 w-5"})})]}),t.jsx("div",{className:"p-6",children:h})]})]}):null}k.__docgenInfo={description:`Lightweight modal shell (overlay + card) used by the Internet shop experience. +Implements: +- Backdrop click to close +- Escape to close +- Simple focus trap + focus restore (pattern aligned with SessionTimeoutWarning)`,methods:[],displayName:"InternetModalShell",props:{isOpen:{required:!0,tsType:{name:"boolean"},description:""},onClose:{required:!0,tsType:{name:"signature",type:"function",raw:"() => void",signature:{arguments:[],return:{name:"void"}}},description:""},title:{required:!0,tsType:{name:"string"},description:""},description:{required:!1,tsType:{name:"string"},description:""},children:{required:!0,tsType:{name:"ReactReactNode",raw:"React.ReactNode"},description:""},size:{required:!1,tsType:{name:"union",raw:'"md" | "lg"',elements:[{name:"literal",value:'"md"'},{name:"literal",value:'"lg"'}]},description:"",defaultValue:{value:'"lg"',computed:!1}}}};export{k as I}; diff --git a/apps/portal/public/storybook/assets/InternetModalShell.stories-C56JHx5y.js b/apps/portal/public/storybook/assets/InternetModalShell.stories-C56JHx5y.js new file mode 100644 index 00000000..87fafcff --- /dev/null +++ b/apps/portal/public/storybook/assets/InternetModalShell.stories-C56JHx5y.js @@ -0,0 +1,40 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{I as f}from"./InternetModalShell-jIX05857.js";import"./index-JhL3uwfD.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./XMarkIcon-Bsb1W5VN.js";const O={title:"Features/Services/Internet/InternetModalShell",component:f,parameters:{layout:"fullscreen"}},r={args:{isOpen:!0,onClose:()=>{},title:"Modal Title",description:"This is a description of the modal content.",children:e.jsxs("div",{className:"space-y-4",children:[e.jsx("p",{className:"text-sm text-muted-foreground",children:"This is example content inside the modal shell."}),e.jsx("div",{className:"h-32 rounded-lg border border-dashed border-border flex items-center justify-center text-muted-foreground text-sm",children:"Content area"})]})}},s={args:{isOpen:!0,onClose:()=>{},title:"Medium Modal",children:e.jsx("p",{className:"text-sm",children:"Medium-sized modal content."}),size:"md"}},t={args:{isOpen:!0,onClose:()=>{},title:"Large Modal",description:"A larger modal for more complex content.",children:e.jsx("p",{className:"text-sm",children:"Large modal content area."}),size:"lg"}},n={args:{isOpen:!1,onClose:()=>{},title:"Hidden Modal",children:e.jsx("p",{children:"This should not be visible."})}};var o,a,i;r.parameters={...r.parameters,docs:{...(o=r.parameters)==null?void 0:o.docs,source:{originalSource:`{ + args: { + isOpen: true, + onClose: () => {}, + title: "Modal Title", + description: "This is a description of the modal content.", + children:
+

+ This is example content inside the modal shell. +

+
+ Content area +
+
+ } +}`,...(i=(a=r.parameters)==null?void 0:a.docs)==null?void 0:i.source}}};var d,l,c;s.parameters={...s.parameters,docs:{...(d=s.parameters)==null?void 0:d.docs,source:{originalSource:`{ + args: { + isOpen: true, + onClose: () => {}, + title: "Medium Modal", + children:

Medium-sized modal content.

, + size: "md" + } +}`,...(c=(l=s.parameters)==null?void 0:l.docs)==null?void 0:c.source}}};var m,p,u;t.parameters={...t.parameters,docs:{...(m=t.parameters)==null?void 0:m.docs,source:{originalSource:`{ + args: { + isOpen: true, + onClose: () => {}, + title: "Large Modal", + description: "A larger modal for more complex content.", + children:

Large modal content area.

, + size: "lg" + } +}`,...(u=(p=t.parameters)==null?void 0:p.docs)==null?void 0:u.source}}};var h,g,x;n.parameters={...n.parameters,docs:{...(h=n.parameters)==null?void 0:h.docs,source:{originalSource:`{ + args: { + isOpen: false, + onClose: () => {}, + title: "Hidden Modal", + children:

This should not be visible.

+ } +}`,...(x=(g=n.parameters)==null?void 0:g.docs)==null?void 0:x.source}}};const T=["Default","MediumSize","LargeSize","Closed"];export{n as Closed,r as Default,t as LargeSize,s as MediumSize,T as __namedExportsOrder,O as default}; diff --git a/apps/portal/public/storybook/assets/InternetOfferingCard.stories-D5z-_Afl.js b/apps/portal/public/storybook/assets/InternetOfferingCard.stories-D5z-_Afl.js new file mode 100644 index 00000000..03d002a0 --- /dev/null +++ b/apps/portal/public/storybook/assets/InternetOfferingCard.stories-D5z-_Afl.js @@ -0,0 +1,65 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{B as T}from"./button-C8_cybvS.js";import{C as E}from"./CardBadge-CfIpSSwP.js";import{c as o}from"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import{H as R}from"./house-pESumjO8.js";import{B as z}from"./building-2-C7pcwIk2.js";import{C as U}from"./check-DmNqM64J.js";import"./index-JhL3uwfD.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./spinner-mU4XywER.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./createLucideIcon-CctB0W3q.js";const V={Silver:{card:"border-border/60 bg-card",accent:"text-muted-foreground",stripe:"bg-gradient-to-r from-slate-400 to-slate-500",badge:"bg-slate-100 text-slate-600"},Gold:{card:"border-warning/25 bg-warning-soft/10",accent:"text-warning",stripe:"bg-gradient-to-r from-amber-400 to-yellow-500",badge:"bg-amber-50 text-amber-700"},Platinum:{card:"border-primary/25 bg-info-soft/10",accent:"text-primary",stripe:"bg-gradient-to-r from-sky-500 to-blue-600",badge:"bg-sky-50 text-sky-700"}};function _({previewMode:r,disabled:a,disabledReason:i,ctaPath:n,planSku:d,recommended:s}){const c=(t,x)=>{const b=t.includes("?")?"&":"?";return`${t}${b}planSku=${encodeURIComponent(x)}`};return r?e.jsx("div",{className:"mt-auto pt-2 border-t border-border/40",children:e.jsx("p",{className:"text-[10px] text-muted-foreground text-center",children:"See pricing after verification"})}):a?e.jsxs("div",{className:"mt-auto",children:[e.jsx(T,{variant:"outline",size:"sm",className:"w-full",disabled:!0,children:"Unavailable"}),i&&e.jsx("p",{className:"text-[10px] text-muted-foreground text-center mt-1",children:i})]}):e.jsx(T,{as:"a",href:c(n,d),variant:s?"default":"outline",size:"sm",className:"w-full mt-auto",children:"Select"})}function D({tier:r,previewMode:a,disabled:i,disabledReason:n,ctaPath:d}){const s=V[r.tier];return e.jsxs("div",{className:o("rounded-lg border p-3 transition-all flex flex-col relative overflow-hidden",s.card,r.recommended&&"ring-1 ring-warning/25"),children:[e.jsx("div",{className:o("absolute top-0 left-0 right-0 h-px",s.stripe)}),e.jsxs("div",{className:"flex items-center gap-1.5 mb-2",children:[e.jsx("span",{className:o("font-semibold text-xs",s.accent),children:r.tier}),r.recommended&&e.jsx(E,{text:"Recommended",variant:"recommended",size:"xs"})]}),!a&&e.jsx("div",{className:"mb-2",children:e.jsxs("div",{className:"flex items-baseline gap-0.5 flex-wrap",children:[e.jsxs("span",{className:"text-lg font-bold text-foreground",children:["¥",r.monthlyPrice.toLocaleString()]}),e.jsx("span",{className:"text-[10px] text-muted-foreground",children:"/mo"}),r.pricingNote&&e.jsx("span",{className:"text-[10px] text-warning ml-1",children:r.pricingNote})]})}),e.jsx("p",{className:"text-[11px] text-muted-foreground mb-2",children:r.description}),e.jsx("ul",{className:"space-y-1 flex-grow mb-3",children:r.features.slice(0,3).map((c,t)=>e.jsxs("li",{className:"flex items-start gap-1.5 text-[11px]",children:[e.jsx(U,{className:"h-3 w-3 text-primary/60 flex-shrink-0 mt-0.5"}),e.jsx("span",{className:"text-muted-foreground leading-relaxed",children:c})]},t))}),e.jsx(_,{previewMode:a,disabled:i,disabledReason:n,ctaPath:d,planSku:r.planSku,recommended:r.recommended})]})}function A({title:r,speedBadge:a,description:i,iconType:n,startingPrice:d,setupFee:s,tiers:c,isPremium:t=!1,ctaPath:x,disabled:b=!1,disabledReason:O,previewMode:L=!1}){const M=n==="home"?R:z;return e.jsxs("div",{className:o("rounded-xl border bg-card overflow-hidden",t?"border-primary/25 shadow-sm":"border-border/60"),children:[e.jsx("div",{className:o("h-0.5 w-full",t?"bg-gradient-to-r from-sky-500 to-blue-600":"bg-gradient-to-r from-sky-400 to-blue-500")}),e.jsx("div",{className:"w-full p-4 flex items-start justify-between gap-3 text-left",children:e.jsxs("div",{className:"flex items-start gap-3",children:[e.jsx("div",{className:o("flex h-9 w-9 items-center justify-center rounded-lg flex-shrink-0",n==="home"?"bg-sky-500/10 text-sky-600":"bg-emerald-500/10 text-emerald-600"),children:e.jsx(M,{className:"h-4.5 w-4.5"})}),e.jsxs("div",{className:"space-y-0.5",children:[e.jsxs("div",{className:"flex flex-wrap items-center gap-1.5",children:[e.jsx("h3",{className:"text-sm font-bold text-foreground",children:r}),e.jsx(E,{text:a,variant:t?"new":"default",size:"sm"}),t&&e.jsx("span",{className:"text-[10px] text-muted-foreground",children:"(select areas)"})]}),e.jsx("p",{className:"text-xs text-muted-foreground",children:i}),e.jsxs("div",{className:"flex items-baseline gap-0.5 pt-0.5",children:[e.jsx("span",{className:"text-[10px] text-muted-foreground",children:"From"}),e.jsxs("span",{className:"text-base font-bold text-foreground",children:["¥",d.toLocaleString()]}),e.jsx("span",{className:"text-xs text-muted-foreground",children:"/mo"}),e.jsxs("span",{className:"text-[10px] text-muted-foreground ml-1",children:["+ ¥",s.toLocaleString()," setup"]})]})]})]})}),e.jsxs("div",{className:"border-t border-border/60 px-4 py-4 bg-muted/5",children:[e.jsx("div",{className:"grid grid-cols-1 sm:grid-cols-3 gap-3",children:c.map(h=>e.jsx(D,{tier:h,previewMode:L,disabled:b,disabledReason:O,ctaPath:x},h.tier))}),e.jsxs("p",{className:"text-[11px] text-muted-foreground text-center mt-3 pt-2.5 border-t border-border/40",children:["+ ¥",s.toLocaleString()," one-time installation (or 12/24-month installment)"]})]})]})}A.__docgenInfo={description:"",methods:[],displayName:"InternetOfferingCard",props:{offeringType:{required:!0,tsType:{name:"string"},description:""},title:{required:!0,tsType:{name:"string"},description:""},speedBadge:{required:!0,tsType:{name:"string"},description:""},description:{required:!0,tsType:{name:"string"},description:""},iconType:{required:!0,tsType:{name:"union",raw:'"home" | "apartment"',elements:[{name:"literal",value:'"home"'},{name:"literal",value:'"apartment"'}]},description:""},startingPrice:{required:!0,tsType:{name:"number"},description:""},setupFee:{required:!0,tsType:{name:"number"},description:""},tiers:{required:!0,tsType:{name:"Array",elements:[{name:"TierInfo"}],raw:"TierInfo[]"},description:""},isPremium:{required:!1,tsType:{name:"union",raw:"boolean | undefined",elements:[{name:"boolean"},{name:"undefined"}]},description:"",defaultValue:{value:"false",computed:!1}},ctaPath:{required:!0,tsType:{name:"string"},description:""},defaultExpanded:{required:!1,tsType:{name:"union",raw:"boolean | undefined",elements:[{name:"boolean"},{name:"undefined"}]},description:""},disabled:{required:!1,tsType:{name:"union",raw:"boolean | undefined",elements:[{name:"boolean"},{name:"undefined"}]},description:"",defaultValue:{value:"false",computed:!1}},disabledReason:{required:!1,tsType:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}]},description:""},previewMode:{required:!1,tsType:{name:"union",raw:"boolean | undefined",elements:[{name:"boolean"},{name:"undefined"}]},description:"",defaultValue:{value:"false",computed:!1}}}};const m=[{tier:"Silver",planSku:"INT-SILVER-1G-HOME",monthlyPrice:4800,description:"Bring your own router",features:["NTT modem included","Self-configure your router","PPPoE or IPoE"]},{tier:"Gold",planSku:"INT-GOLD-1G-HOME",monthlyPrice:6800,description:"Everything included",features:["NTT modem included","WiFi router included","ISP pre-configured"],recommended:!0},{tier:"Platinum",planSku:"INT-PLAT-1G-HOME",monthlyPrice:9800,description:"Custom mesh network",features:["Custom mesh network","Netgear INSIGHT routers","Professional setup"],pricingNote:"+ device fees"}],oe={title:"Features/Services/Internet/InternetOfferingCard",component:A,parameters:{layout:"centered"}},l={args:{offeringType:"Home 1G",title:"Home 1Gbps",speedBadge:"1Gbps",description:"NTT Flet's Hikari Next for residential homes",iconType:"home",startingPrice:4800,setupFee:22800,tiers:m,ctaPath:"/services/internet/configure"}},p={args:{offeringType:"Apartment 1G",title:"Apartment 1Gbps",speedBadge:"1Gbps",description:"NTT Flet's Hikari Next for apartment buildings",iconType:"apartment",startingPrice:4800,setupFee:22800,tiers:m,ctaPath:"/services/internet/configure"}},u={args:{offeringType:"Home 10G",title:"Home 10Gbps",speedBadge:"10Gbps",description:"Ultra-fast fiber for power users",iconType:"home",startingPrice:7800,setupFee:22800,tiers:m,isPremium:!0,ctaPath:"/services/internet/configure"}},f={args:{offeringType:"Home 1G",title:"Home 1Gbps",speedBadge:"1Gbps",description:"NTT Flet's Hikari Next for residential homes",iconType:"home",startingPrice:4800,setupFee:22800,tiers:m,ctaPath:"/services/internet/configure",disabled:!0,disabledReason:"Not available at your address"}},g={args:{offeringType:"Home 1G",title:"Home 1Gbps",speedBadge:"1Gbps",description:"NTT Flet's Hikari Next for residential homes",iconType:"home",startingPrice:4800,setupFee:22800,tiers:m,ctaPath:"/services/internet/configure",previewMode:!0}};var N,y,v;l.parameters={...l.parameters,docs:{...(N=l.parameters)==null?void 0:N.docs,source:{originalSource:`{ + args: { + offeringType: "Home 1G", + title: "Home 1Gbps", + speedBadge: "1Gbps", + description: "NTT Flet's Hikari Next for residential homes", + iconType: "home", + startingPrice: 4800, + setupFee: 22800, + tiers: mockTiers, + ctaPath: "/services/internet/configure" + } +}`,...(v=(y=l.parameters)==null?void 0:y.docs)==null?void 0:v.source}}};var j,G,P;p.parameters={...p.parameters,docs:{...(j=p.parameters)==null?void 0:j.docs,source:{originalSource:`{ + args: { + offeringType: "Apartment 1G", + title: "Apartment 1Gbps", + speedBadge: "1Gbps", + description: "NTT Flet's Hikari Next for apartment buildings", + iconType: "apartment", + startingPrice: 4800, + setupFee: 22800, + tiers: mockTiers, + ctaPath: "/services/internet/configure" + } +}`,...(P=(G=p.parameters)==null?void 0:G.docs)==null?void 0:P.source}}};var w,H,k;u.parameters={...u.parameters,docs:{...(w=u.parameters)==null?void 0:w.docs,source:{originalSource:`{ + args: { + offeringType: "Home 10G", + title: "Home 10Gbps", + speedBadge: "10Gbps", + description: "Ultra-fast fiber for power users", + iconType: "home", + startingPrice: 7800, + setupFee: 22800, + tiers: mockTiers, + isPremium: true, + ctaPath: "/services/internet/configure" + } +}`,...(k=(H=u.parameters)==null?void 0:H.docs)==null?void 0:k.source}}};var S,F,B;f.parameters={...f.parameters,docs:{...(S=f.parameters)==null?void 0:S.docs,source:{originalSource:`{ + args: { + offeringType: "Home 1G", + title: "Home 1Gbps", + speedBadge: "1Gbps", + description: "NTT Flet's Hikari Next for residential homes", + iconType: "home", + startingPrice: 4800, + setupFee: 22800, + tiers: mockTiers, + ctaPath: "/services/internet/configure", + disabled: true, + disabledReason: "Not available at your address" + } +}`,...(B=(F=f.parameters)==null?void 0:F.docs)==null?void 0:B.source}}};var I,q,C;g.parameters={...g.parameters,docs:{...(I=g.parameters)==null?void 0:I.docs,source:{originalSource:`{ + args: { + offeringType: "Home 1G", + title: "Home 1Gbps", + speedBadge: "1Gbps", + description: "NTT Flet's Hikari Next for residential homes", + iconType: "home", + startingPrice: 4800, + setupFee: 22800, + tiers: mockTiers, + ctaPath: "/services/internet/configure", + previewMode: true + } +}`,...(C=(q=g.parameters)==null?void 0:q.docs)==null?void 0:C.source}}};const de=["Home1Gbps","Apartment1Gbps","Premium10Gbps","Disabled","PreviewMode"];export{p as Apartment1Gbps,f as Disabled,l as Home1Gbps,u as Premium10Gbps,g as PreviewMode,de as __namedExportsOrder,oe as default}; diff --git a/apps/portal/public/storybook/assets/InternetPendingState.stories-DpnEkMP4.js b/apps/portal/public/storybook/assets/InternetPendingState.stories-DpnEkMP4.js new file mode 100644 index 00000000..c9611c99 --- /dev/null +++ b/apps/portal/public/storybook/assets/InternetPendingState.stories-DpnEkMP4.js @@ -0,0 +1,11 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{B as u}from"./button-C8_cybvS.js";import{a as p}from"./date-Csq1SWDU.js";import"./index-BKyvj4H5.js";import{C as x}from"./clock-C92s7kSC.js";import"./index-JhL3uwfD.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./spinner-mU4XywER.js";import"./date-CJlSVdaN.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./createLucideIcon-CctB0W3q.js";function d({requestedAt:s,servicesBasePath:l}){return e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"bg-info-soft/30 border border-info/20 rounded-xl p-8 mb-6 text-center max-w-2xl mx-auto",children:[e.jsx(x,{className:"h-16 w-16 text-info mx-auto mb-6"}),e.jsx("h2",{className:"text-2xl font-semibold text-foreground mb-3",children:"Verification in Progress"}),e.jsxs("p",{className:"text-base text-muted-foreground mb-4 leading-relaxed",children:["We're currently verifying NTT service availability at your registered address.",e.jsx("br",{}),"This manual check ensures we offer you the correct fiber connection type."]}),e.jsxs("div",{className:"inline-flex flex-col items-center p-4 bg-background rounded-lg border border-border",children:[e.jsx("span",{className:"text-sm font-medium text-foreground mb-1",children:"Estimated time"}),e.jsx("span",{className:"text-sm text-muted-foreground",children:"1-2 business days"})]}),s&&e.jsxs("p",{className:"text-xs text-muted-foreground mt-6",children:["Request submitted: ",p(s)]})]}),e.jsx("div",{className:"text-center",children:e.jsx(u,{as:"a",href:l,variant:"outline",children:"Back to Services"})})]})}d.__docgenInfo={description:`Displays the pending verification state for internet eligibility. +Shown when user has requested eligibility check but it's still being processed.`,methods:[],displayName:"InternetPendingState",props:{requestedAt:{required:!1,tsType:{name:"union",raw:"string | null | undefined",elements:[{name:"string"},{name:"null"},{name:"undefined"}]},description:""},servicesBasePath:{required:!0,tsType:{name:"string"},description:""}}};const D={title:"Features/Services/Internet/InternetPendingState",component:d,parameters:{layout:"centered"}},t={args:{servicesBasePath:"/services"}},r={args:{requestedAt:"2026-03-05T10:30:00Z",servicesBasePath:"/services"}};var n,i,a;t.parameters={...t.parameters,docs:{...(n=t.parameters)==null?void 0:n.docs,source:{originalSource:`{ + args: { + servicesBasePath: "/services" + } +}`,...(a=(i=t.parameters)==null?void 0:i.docs)==null?void 0:a.source}}};var o,c,m;r.parameters={...r.parameters,docs:{...(o=r.parameters)==null?void 0:o.docs,source:{originalSource:`{ + args: { + requestedAt: "2026-03-05T10:30:00Z", + servicesBasePath: "/services" + } +}`,...(m=(c=r.parameters)==null?void 0:c.docs)==null?void 0:m.source}}};const I=["Default","WithRequestDate"];export{t as Default,r as WithRequestDate,I as __namedExportsOrder,D as default}; diff --git a/apps/portal/public/storybook/assets/InternetPlanCard.stories-CU2Janbw.js b/apps/portal/public/storybook/assets/InternetPlanCard.stories-CU2Janbw.js new file mode 100644 index 00000000..f23e493a --- /dev/null +++ b/apps/portal/public/storybook/assets/InternetPlanCard.stories-CU2Janbw.js @@ -0,0 +1,77 @@ +import{j as t}from"./jsx-runtime-D_zvdyIk.js";import"./DataTable-COYdcx41.js";import"./FormField-C0UylACv.js";import"./OtpInput-6kd_2E0v.js";import"./OtpExpiryDisplay-BGgB7Tk6.js";import"./SearchFilterBar-Ds19v0-P.js";import"./PaginationBar-D_k7ztRb.js";import"./DetailHeader-C0ZsoM39.js";import"./AlertBanner-Bnlyj1xc.js";import"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import"./error-state-BSicqqE6.js";import"./index-BKyvj4H5.js";import"./SectionHeader-Bo81Whai.js";import"./ProgressSteps-weVdXcqu.js";import"./SubCard-1OZIPgEM.js";import{A as be}from"./AnimatedCard-DFAiX4zP.js";import"./ServiceCard-BJEHFLba.js";import"./SummaryStats-D6b7Am-p.js";import"./FilterDropdown-CUU04WmN.js";import"./ClearFiltersButton-CPCoyXk2.js";import"./DetailStatsGrid-CDkKTM-B.js";import"./SectionCard-BcUjc-7N.js";import"./MetricCard-BR1xVIXz.js";import"./BackLink-C5IY6wzy.js";import"./status-badge-5pzxe45J.js";import"./error-boundary-DIRO_cDI.js";import"./error-fallbacks-kSPsNxmV.js";import{B as xe}from"./button-C8_cybvS.js";import{u as Pe}from"./next-navigation-FtRxULo3.js";import{C as Ie}from"./CardPricing-FcGNWupq.js";import{C as S}from"./CardBadge-CfIpSSwP.js";import{u as we}from"./services.store-BMSUdGRF.js";import{p as Ne}from"./planName-hiGpUxZ-.js";import{u as ye}from"./useServicesBasePath-Cd3sXgEE.js";import{F as Te}from"./ArrowRightIcon--Vuz7Q7x.js";import{F as v}from"./CheckIcon-BKJSKBEC.js";import"./empty-state-DRUGJ9ip.js";import"./cn-CDN07tui.js";import"./PlusIcon-DGufmf06.js";import"./index-JhL3uwfD.js";import"./ChevronRightIcon-CMQWsJeW.js";import"./label-C25VH7yk.js";import"./input-BbGJiz0K.js";import"./error-message-DeFFz6H_.js";import"./index-DXhM58Yq.js";import"./ExclamationCircleIcon-jFfW0Ax_.js";import"./input-otp-Cin9-T84.js";import"./createLucideIcon-CctB0W3q.js";import"./clock-C92s7kSC.js";import"./FunnelIcon-8nhbwqu0.js";import"./XMarkIcon-Bsb1W5VN.js";import"./status-pill-wWp9xkwA.js";import"./XCircleIcon-CiVBnngB.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./InformationCircleIcon-Clz7d-56.js";import"./CheckCircleIcon-Dva35lTP.js";import"./password-input-D4khGh8v.js";import"./checkbox-DahUyQbt.js";import"./badge-BdMsasyi.js";import"./spinner-mU4XywER.js";import"./loading-overlay-DMJTiFny.js";import"./inline-toast-DQJ-O9wc.js";import"./index-CNXKWNLp.js";import"./proxy-ZkTvaR74.js";import"./logo-f0fprTjz.js";import"./next-image-69WeRggt.js";import"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./Squares2X2Icon-BMQM_Wy1.js";import"./animated-container-DyAZ9gmw.js";import"./ArrowPathIcon-CZjG6RfV.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./next-link-BmD4fPSy.js";import"./arrow-right-BNMAry-H.js";import"./ArrowLeftIcon-Cw1eswTb.js";import"./CurrencyYenIcon-Bf5bmWZc.js";import"./schema-B8i337wU.js";import"./schema-Dok_SHcO.js";import"./compat-BjFfok0x.js";import"./helpers-C5Jr5RNp.js";import"./react-C6W-rNNW.js";const ke={gold:{card:"border-2 border-warning/50 bg-gradient-to-br from-card to-warning-soft/30 shadow-xl hover:shadow-2xl ring-2 ring-warning/20",border:"border-warning/30"},platinum:{card:"border-2 border-primary/50 bg-gradient-to-br from-card to-info-soft/30 shadow-xl hover:shadow-2xl ring-2 ring-primary/20",border:"border-primary/30"},silver:{card:"border-2 border-muted-foreground/30 bg-gradient-to-br from-card to-muted/30 shadow-lg hover:shadow-xl ring-1 ring-border",border:"border-muted-foreground/20"},default:{card:"border border-border bg-card shadow-md hover:shadow-xl",border:"border-border"}};function re(e){return e==="Gold"?"gold":e==="Platinum"?"platinum":e==="Silver"?"silver":"default"}function Se(e){const a=e.map(({monthlyPrice:n,oneTimePrice:r})=>typeof n=="number"&&n>0?n:typeof r=="number"&&r>0?r:0).filter(n=>n>0);return a.length>0?Math.min(...a):0}function ve(e){return e!=null&&e.includes("10G")?"10Gbps":e!=null&&e.includes("100M")?"100Mbps":"1Gbps"}function je(e){return e!=null&&e.includes("Apartment")?"Mansion":"Home"}function He(e,a,n,r){return e?n:a?r:null}function Fe(e,a){var s;const{baseName:n,detail:r}=Ne(e),o=!!r,i=a==="detail"&&o;return{title:i&&r?r:n,subtitle:He(i,o,n,r),description:((s=e.catalogMetadata)==null?void 0:s.tierDescription)||e.description||null}}function Ce(e,a,n){return e?a||"Not available":n??"Configure Plan"}function j({feature:e}){const a=e.indexOf(":");if(a>0){const r=e.slice(0,a).trim(),o=e.slice(a+1).trim();return t.jsxs("li",{className:"flex items-start gap-2",children:[t.jsx(v,{className:"h-4 w-4 text-success mt-0.5 flex-shrink-0"}),t.jsxs("span",{children:[t.jsxs("span",{className:"font-medium text-foreground",children:[r,":"]})," ",t.jsx("span",{className:"text-muted-foreground",children:o})]})]})}return t.jsxs("li",{className:"flex items-start gap-2",children:[t.jsx(v,{className:"h-4 w-4 text-success mt-0.5 flex-shrink-0"}),t.jsx("span",{className:"text-muted-foreground",children:e})]})}function Ge({plan:e,minInstallationPrice:a,hasInstallations:n}){var i;const r=(i=e.catalogMetadata)==null?void 0:i.features;if(r&&r.length>0)return t.jsx(t.Fragment,{children:r.map((s,m)=>t.jsx(j,{feature:s},m))});const o=Oe(e,a,n);return t.jsx(t.Fragment,{children:o.map((s,m)=>t.jsx(j,{feature:s},m))})}function Oe(e,a,n){const r=[];typeof e.monthlyPrice=="number"&&e.monthlyPrice>0&&r.push(`Monthly: ¥${e.monthlyPrice.toLocaleString()}`),typeof e.oneTimePrice=="number"&&e.oneTimePrice>0&&r.push(`One-time: ¥${e.oneTimePrice.toLocaleString()}`);const o=je(e.internetOfferingType),i=ve(e.internetOfferingType),s=["NTT Optical Fiber (Flet's Hikari Next)",`${o} ${i} connection`,"ISP connection protocols: IPoE and PPPoE"];return r.length>0&&s.push(r.join(" | ")),n&&a>0&&s.push(`Installation from ¥${a.toLocaleString()}`),s}function ae({plan:e,installations:a,disabled:n,disabledReason:r,configureHref:o,action:i,pricingPrefix:s,showTierBadge:m=!0,showPlanSubtitle:d=!0,showFeatures:u=!0,titlePriority:ne="detail"}){const T=Pe(),ie=ye(),y=e.internetPlanTier,se=y==="Gold",p=!!n&&!0,{title:oe,subtitle:le,description:me}=Fe(e,ne),ce=Se(a),de=re(y),k=ke[de],ue=()=>{if(p)return;if(i){T.push(i.href);return}const{resetInternetConfig:fe,setInternetConfig:ge}=we.getState();fe(),ge({planSku:e.sku,currentStep:1});const he=o??`${ie}/internet/configure?planSku=${encodeURIComponent(e.sku)}`;T.push(he)},pe=Ce(p,r,i==null?void 0:i.label);return t.jsx(be,{variant:"static",className:`overflow-hidden flex flex-col h-full transition-all duration-200 ease-out hover:-translate-y-1 rounded-xl ${k.card}`,children:t.jsxs("div",{className:"p-6 sm:p-7 flex flex-col flex-grow space-y-5",children:[t.jsx(Me,{plan:e,tier:y,isGold:se,tierStyle:k,showTierBadge:m,showPlanSubtitle:d,planTitle:oe,planSubtitle:le,planDescription:me,pricingPrefix:s}),u&&t.jsxs("div",{className:"flex-grow pt-1",children:[t.jsx("h4",{className:"font-semibold text-foreground mb-4 text-sm uppercase tracking-wide",children:"Your Plan Includes:"}),t.jsx("ul",{className:"space-y-3 text-sm",children:t.jsx(Ge,{plan:e,minInstallationPrice:ce,hasInstallations:a.length>0})})]}),t.jsx(xe,{className:"w-full mt-2 transition-all duration-300",disabled:p,rightIcon:p?void 0:t.jsx(Te,{className:"w-4 h-4"}),onClick:ue,children:pe})]})})}function Me({plan:e,tier:a,isGold:n,tierStyle:r,showTierBadge:o,showPlanSubtitle:i,planTitle:s,planSubtitle:m,planDescription:d,pricingPrefix:u}){return t.jsxs("div",{className:`flex flex-col gap-3 pb-4 border-b ${r.border}`,children:[t.jsxs("div",{className:"inline-flex flex-wrap items-center gap-2 text-sm",children:[o&&t.jsx(S,{text:a??"Plan",variant:re(a),size:"sm"}),o&&n&&t.jsx(S,{text:"Recommended",variant:"recommended",size:"xs"})]}),t.jsxs("div",{className:"w-full space-y-2",children:[t.jsx("h3",{className:"text-xl sm:text-2xl font-bold text-foreground leading-tight",children:s}),i&&m&&t.jsx("p",{className:"text-xs uppercase tracking-wide text-muted-foreground",children:m}),d?t.jsx("p",{className:"text-sm text-muted-foreground leading-relaxed",children:d}):null]}),t.jsxs("div",{className:"w-full pt-2",children:[u?t.jsx("div",{className:"text-xs font-medium uppercase tracking-wide text-muted-foreground mb-1",children:u}):null,t.jsx(Ie,{monthlyPrice:e.monthlyPrice,oneTimePrice:e.oneTimePrice,size:"md",alignment:"left"})]})]})}ae.__docgenInfo={description:"",methods:[],displayName:"InternetPlanCard",props:{plan:{required:!0,tsType:{name:"z.infer",elements:[{name:"internetPlanCatalogItemSchema"}],raw:"z.infer"},description:""},installations:{required:!0,tsType:{name:"Array",elements:[{name:"z.infer",elements:[{name:"internetInstallationCatalogItemSchema"}],raw:"z.infer"}],raw:"InternetInstallationCatalogItem[]"},description:""},disabled:{required:!1,tsType:{name:"boolean"},description:""},disabledReason:{required:!1,tsType:{name:"string"},description:""},configureHref:{required:!1,tsType:{name:"string"},description:"Override the default configure href (default: /services/internet/configure?planSku=...)"},action:{required:!1,tsType:{name:"signature",type:"object",raw:"{ label: string; href: string }",signature:{properties:[{key:"label",value:{name:"string",required:!0}},{key:"href",value:{name:"string",required:!0}}]}},description:'Override default "Configure Plan" action (used for public browse-only flows)'},pricingPrefix:{required:!1,tsType:{name:"string"},description:'Optional small prefix above pricing (e.g. "Starting from")'},showTierBadge:{required:!1,tsType:{name:"boolean"},description:"Show tier badge (default: true)",defaultValue:{value:"true",computed:!1}},showPlanSubtitle:{required:!1,tsType:{name:"boolean"},description:"Show plan subtitle (default: true)",defaultValue:{value:"true",computed:!1}},showFeatures:{required:!1,tsType:{name:"boolean"},description:"Show features list (default: true)",defaultValue:{value:"true",computed:!1}},titlePriority:{required:!1,tsType:{name:"union",raw:'"detail" | "base"',elements:[{name:"literal",value:'"detail"'},{name:"literal",value:'"base"'}]},description:"Prefer which label becomes the title when details exist",defaultValue:{value:'"detail"',computed:!1}}}};const l={id:"plan-001",sku:"INT-GOLD-1G-HOME",name:"Internet Gold 1Gbps Home",description:"High-speed fiber internet for homes",monthlyPrice:6800,oneTimePrice:0,internetPlanTier:"Gold",internetOfferingType:"Home 1G",catalogMetadata:{tierDescription:"Hassle-free setup with router included",features:["NTT Optical Fiber (Flet's Hikari Next)","Home 1Gbps connection","WiFi router included","ISP pre-configured (IPoE)"],isRecommended:!0}},c=[{id:"inst-001",sku:"INT-INST-ONETIME",name:"One-time Payment",displayOrder:1,billingCycle:"One-time",monthlyPrice:0,oneTimePrice:22800,catalogMetadata:{installationTerm:"One-time"}},{id:"inst-002",sku:"INT-INST-12M",name:"12-Month Installment",displayOrder:2,billingCycle:"Monthly",monthlyPrice:1900,oneTimePrice:0,catalogMetadata:{installationTerm:"12-Month"}}],dr={title:"Features/Services/Internet/InternetPlanCard",component:ae,parameters:{layout:"centered"}},f={args:{plan:l,installations:c}},g={args:{plan:{...l,id:"plan-002",sku:"INT-SILVER-1G-HOME",name:"Internet Silver 1Gbps Home",internetPlanTier:"Silver",monthlyPrice:4800,catalogMetadata:{tierDescription:"Bring your own router and configure it yourself",features:["NTT Optical Fiber (Flet's Hikari Next)","Home 1Gbps connection","NTT modem provided","BYOD: bring your own router"]}},installations:c}},h={args:{plan:{...l,id:"plan-003",sku:"INT-PLAT-1G-HOME",name:"Internet Platinum 1Gbps Home",internetPlanTier:"Platinum",monthlyPrice:9800,catalogMetadata:{tierDescription:"Custom mesh network with professional setup",features:["NTT Optical Fiber (Flet's Hikari Next)","Home 1Gbps connection","Custom mesh network design","Netgear INSIGHT cloud management"]}},installations:c}},b={args:{plan:l,installations:c,disabled:!0,disabledReason:"Not available at your address"}},x={args:{plan:l,installations:c,action:{label:"View Details",href:"/internet/details"}}},P={args:{plan:l,installations:c,pricingPrefix:"Starting from"}},I={args:{plan:l,installations:c,showFeatures:!1}},w={args:{plan:l,installations:c,showTierBadge:!1}},N={args:{plan:l,installations:[]}};var H,F,C;f.parameters={...f.parameters,docs:{...(H=f.parameters)==null?void 0:H.docs,source:{originalSource:`{ + args: { + plan: mockPlan, + installations: mockInstallations + } +}`,...(C=(F=f.parameters)==null?void 0:F.docs)==null?void 0:C.source}}};var G,O,M;g.parameters={...g.parameters,docs:{...(G=g.parameters)==null?void 0:G.docs,source:{originalSource:`{ + args: { + plan: { + ...mockPlan, + id: "plan-002", + sku: "INT-SILVER-1G-HOME", + name: "Internet Silver 1Gbps Home", + internetPlanTier: "Silver", + monthlyPrice: 4800, + catalogMetadata: { + tierDescription: "Bring your own router and configure it yourself", + features: ["NTT Optical Fiber (Flet's Hikari Next)", "Home 1Gbps connection", "NTT modem provided", "BYOD: bring your own router"] + } + }, + installations: mockInstallations + } +}`,...(M=(O=g.parameters)==null?void 0:O.docs)==null?void 0:M.source}}};var D,B,E;h.parameters={...h.parameters,docs:{...(D=h.parameters)==null?void 0:D.docs,source:{originalSource:`{ + args: { + plan: { + ...mockPlan, + id: "plan-003", + sku: "INT-PLAT-1G-HOME", + name: "Internet Platinum 1Gbps Home", + internetPlanTier: "Platinum", + monthlyPrice: 9800, + catalogMetadata: { + tierDescription: "Custom mesh network with professional setup", + features: ["NTT Optical Fiber (Flet's Hikari Next)", "Home 1Gbps connection", "Custom mesh network design", "Netgear INSIGHT cloud management"] + } + }, + installations: mockInstallations + } +}`,...(E=(B=h.parameters)==null?void 0:B.docs)==null?void 0:E.source}}};var q,L,R;b.parameters={...b.parameters,docs:{...(q=b.parameters)==null?void 0:q.docs,source:{originalSource:`{ + args: { + plan: mockPlan, + installations: mockInstallations, + disabled: true, + disabledReason: "Not available at your address" + } +}`,...(R=(L=b.parameters)==null?void 0:L.docs)==null?void 0:R.source}}};var A,$,V;x.parameters={...x.parameters,docs:{...(A=x.parameters)==null?void 0:A.docs,source:{originalSource:`{ + args: { + plan: mockPlan, + installations: mockInstallations, + action: { + label: "View Details", + href: "/internet/details" + } + } +}`,...(V=($=x.parameters)==null?void 0:$.docs)==null?void 0:V.source}}};var z,W,_;P.parameters={...P.parameters,docs:{...(z=P.parameters)==null?void 0:z.docs,source:{originalSource:`{ + args: { + plan: mockPlan, + installations: mockInstallations, + pricingPrefix: "Starting from" + } +}`,...(_=(W=P.parameters)==null?void 0:W.docs)==null?void 0:_.source}}};var Y,K,U;I.parameters={...I.parameters,docs:{...(Y=I.parameters)==null?void 0:Y.docs,source:{originalSource:`{ + args: { + plan: mockPlan, + installations: mockInstallations, + showFeatures: false + } +}`,...(U=(K=I.parameters)==null?void 0:K.docs)==null?void 0:U.source}}};var J,Q,X;w.parameters={...w.parameters,docs:{...(J=w.parameters)==null?void 0:J.docs,source:{originalSource:`{ + args: { + plan: mockPlan, + installations: mockInstallations, + showTierBadge: false + } +}`,...(X=(Q=w.parameters)==null?void 0:Q.docs)==null?void 0:X.source}}};var Z,ee,te;N.parameters={...N.parameters,docs:{...(Z=N.parameters)==null?void 0:Z.docs,source:{originalSource:`{ + args: { + plan: mockPlan, + installations: [] + } +}`,...(te=(ee=N.parameters)==null?void 0:ee.docs)==null?void 0:te.source}}};const ur=["GoldPlan","SilverPlan","PlatinumPlan","Disabled","WithAction","WithPricingPrefix","HiddenFeatures","HiddenTierBadge","NoInstallations"];export{b as Disabled,f as GoldPlan,I as HiddenFeatures,w as HiddenTierBadge,N as NoInstallations,h as PlatinumPlan,g as SilverPlan,x as WithAction,P as WithPricingPrefix,ur as __namedExportsOrder,dr as default}; diff --git a/apps/portal/public/storybook/assets/InternetTierPricingModal.stories-D3tV9nr6.js b/apps/portal/public/storybook/assets/InternetTierPricingModal.stories-D3tV9nr6.js new file mode 100644 index 00000000..0966bba7 --- /dev/null +++ b/apps/portal/public/storybook/assets/InternetTierPricingModal.stories-D3tV9nr6.js @@ -0,0 +1,29 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{B as m}from"./button-C8_cybvS.js";import{C}from"./CardBadge-CfIpSSwP.js";import{c as u}from"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import{I as H}from"./InternetModalShell-jIX05857.js";import{r as d}from"./index-JhL3uwfD.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./spinner-mU4XywER.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./XMarkIcon-Bsb1W5VN.js";function G({title:s,titleId:t,...n},i){return d.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":t},n),s?d.createElement("title",{id:t},s):null,d.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"m3.75 13.5 10.5-11.25L12 10.5h8.25L9.75 21.75 12 13.5H3.75Z"}))}const F=d.forwardRef(G),p={Silver:{card:"border-muted-foreground/20 bg-card",accent:"text-muted-foreground"},Gold:{card:"border-warning/30 bg-warning-soft/20",accent:"text-warning"},Platinum:{card:"border-primary/30 bg-info-soft/20",accent:"text-primary"}};function y({isOpen:s,onClose:t,offeringTitle:n,offeringSubtitle:i,tiers:w,setupFee:S,ctaHref:I}){return e.jsx(H,{isOpen:s,onClose:t,title:`Tier pricing — ${n}`,description:"Pricing shown is for reference. Your actual options will be confirmed after address verification.",size:"lg",children:e.jsxs("div",{className:"space-y-5",children:[i?e.jsxs("div",{className:"rounded-xl border border-border bg-muted/20 p-4",children:[e.jsx("div",{className:"text-sm text-foreground font-medium",children:n}),e.jsx("div",{className:"text-xs text-muted-foreground mt-1",children:i})]}):null,e.jsx("div",{className:"grid grid-cols-1 md:grid-cols-3 gap-4",children:w.map(r=>e.jsxs("div",{className:u("rounded-xl border p-4 flex flex-col shadow-[var(--cp-shadow-1)]",p[r.tier].card,r.recommended&&"ring-2 ring-warning/30"),children:[e.jsxs("div",{className:"flex items-center gap-2 mb-3",children:[e.jsx("span",{className:u("font-bold",p[r.tier].accent),children:r.tier}),r.recommended?e.jsx(C,{text:"Recommended",variant:"recommended",size:"xs"}):null]}),e.jsxs("div",{className:"mb-2",children:[e.jsxs("div",{className:"flex items-baseline gap-1",children:[e.jsxs("span",{className:"text-2xl font-bold text-foreground",children:["¥",r.monthlyPrice.toLocaleString()]}),e.jsx("span",{className:"text-sm text-muted-foreground",children:"/mo"})]}),r.pricingNote?e.jsx("p",{className:"text-xs text-warning mt-1",children:r.pricingNote}):null]}),e.jsx("p",{className:"text-sm text-muted-foreground mb-3",children:r.description}),e.jsx("ul",{className:"space-y-1.5 flex-grow",children:r.features.map((k,P)=>e.jsxs("li",{className:"flex items-start gap-2 text-sm",children:[e.jsx(F,{className:"h-3.5 w-3.5 text-success flex-shrink-0 mt-0.5"}),e.jsx("span",{className:"text-muted-foreground text-xs leading-relaxed",children:k})]},P))}),e.jsx("div",{className:"mt-4 pt-3 border-t border-border/50",children:e.jsxs("p",{className:"text-[11px] text-muted-foreground text-center",children:["+ ¥",S.toLocaleString()," setup"]})})]},r.tier))}),e.jsxs("div",{className:"flex flex-col sm:flex-row gap-3 sm:justify-end",children:[e.jsx(m,{type:"button",variant:"outline",onClick:t,children:"Close"}),e.jsx(m,{as:"a",href:I,children:"Check availability"})]})]})})}y.__docgenInfo={description:"",methods:[],displayName:"InternetTierPricingModal",props:{isOpen:{required:!0,tsType:{name:"boolean"},description:""},onClose:{required:!0,tsType:{name:"signature",type:"function",raw:"() => void",signature:{arguments:[],return:{name:"void"}}},description:""},offeringTitle:{required:!0,tsType:{name:"string"},description:""},offeringSubtitle:{required:!1,tsType:{name:"string"},description:""},tiers:{required:!0,tsType:{name:"Array",elements:[{name:"TierInfo"}],raw:"TierInfo[]"},description:""},setupFee:{required:!0,tsType:{name:"number"},description:""},ctaHref:{required:!0,tsType:{name:"string"},description:""}}};const l=[{tier:"Silver",planSku:"INT-SILVER-1G",monthlyPrice:4800,description:"Bring your own router. NTT modem and ISP connection provided.",features:["NTT modem included","Self-configure your router","PPPoE or IPoE"],recommended:!1},{tier:"Gold",planSku:"INT-GOLD-1G",monthlyPrice:6800,description:"Everything included: modem, router, and pre-configured ISP.",features:["NTT modem included","WiFi router included","ISP pre-configured"],recommended:!0},{tier:"Platinum",planSku:"INT-PLAT-1G",monthlyPrice:9800,description:"Custom mesh network with professional setup.",features:["Custom mesh network","Netgear INSIGHT routers","Cloud management"],pricingNote:"+ device fees"}],Y={title:"Features/Services/Internet/InternetTierPricingModal",component:y,parameters:{layout:"fullscreen"}},o={args:{isOpen:!0,onClose:()=>{},offeringTitle:"Home 1Gbps",tiers:l,setupFee:22800,ctaHref:"/services/internet"}},a={args:{isOpen:!0,onClose:()=>{},offeringTitle:"Home 1Gbps",offeringSubtitle:"NTT Flet's Hikari Next - Residential fiber",tiers:l,setupFee:22800,ctaHref:"/services/internet"}},c={args:{isOpen:!1,onClose:()=>{},offeringTitle:"Home 1Gbps",tiers:l,setupFee:22800,ctaHref:"/services/internet"}};var f,g,x;o.parameters={...o.parameters,docs:{...(f=o.parameters)==null?void 0:f.docs,source:{originalSource:`{ + args: { + isOpen: true, + onClose: () => {}, + offeringTitle: "Home 1Gbps", + tiers: mockTiers, + setupFee: 22800, + ctaHref: "/services/internet" + } +}`,...(x=(g=o.parameters)==null?void 0:g.docs)==null?void 0:x.source}}};var h,b,T;a.parameters={...a.parameters,docs:{...(h=a.parameters)==null?void 0:h.docs,source:{originalSource:`{ + args: { + isOpen: true, + onClose: () => {}, + offeringTitle: "Home 1Gbps", + offeringSubtitle: "NTT Flet's Hikari Next - Residential fiber", + tiers: mockTiers, + setupFee: 22800, + ctaHref: "/services/internet" + } +}`,...(T=(b=a.parameters)==null?void 0:b.docs)==null?void 0:T.source}}};var N,v,j;c.parameters={...c.parameters,docs:{...(N=c.parameters)==null?void 0:N.docs,source:{originalSource:`{ + args: { + isOpen: false, + onClose: () => {}, + offeringTitle: "Home 1Gbps", + tiers: mockTiers, + setupFee: 22800, + ctaHref: "/services/internet" + } +}`,...(j=(v=c.parameters)==null?void 0:v.docs)==null?void 0:j.source}}};const Z=["Default","WithSubtitle","Closed"];export{c as Closed,o as Default,a as WithSubtitle,Z as __namedExportsOrder,Y as default}; diff --git a/apps/portal/public/storybook/assets/InvoiceItemRow.stories-BJs_DWl1.js b/apps/portal/public/storybook/assets/InvoiceItemRow.stories-BJs_DWl1.js new file mode 100644 index 00000000..f64f56ae --- /dev/null +++ b/apps/portal/public/storybook/assets/InvoiceItemRow.stories-BJs_DWl1.js @@ -0,0 +1,28 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import"./index-JhL3uwfD.js";import"./index-BKyvj4H5.js";import{u as T}from"./useFormatCurrency-COf74_bd.js";import{u as w}from"./next-navigation-FtRxULo3.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./useQuery-tNNTAmfW.js";import"./QueryClientProvider-D7wSf7Op.js";import"./constants-Cd_qStHG.js";import"./currency-CYvr7ZUf.js";function f({id:i,description:j,amount:I,quantity:a,serviceId:r}){const N=w(),{formatCurrency:S}=T();return e.jsxs("div",{className:`flex items-center justify-between py-3 px-4 rounded-lg border transition-all duration-200 ${r?"border-blue-200 bg-blue-50 hover:bg-blue-100 cursor-pointer hover:shadow-sm":"border-gray-200 bg-gray-50"}`,onClick:r?()=>N.push(`/account/subscriptions/${r}`):void 0,children:[e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsxs("div",{className:`font-medium text-sm ${r?"text-blue-900":"text-gray-900"} truncate`,children:[j,r&&e.jsx("span",{className:"text-blue-600 ml-2",children:"→"})]}),a&&a>1&&e.jsxs("div",{className:"text-xs text-gray-600 mt-1",children:["Qty: ",a]}),r&&e.jsxs("div",{className:"text-xs text-blue-700 mt-1 font-medium",children:["Subscription #",r," • Click to view"]})]}),e.jsx("div",{className:"text-lg font-bold text-gray-900 ml-4 flex-shrink-0",children:S(I)})]},i)}f.__docgenInfo={description:"",methods:[],displayName:"InvoiceItemRow",props:{id:{required:!0,tsType:{name:"number"},description:""},description:{required:!0,tsType:{name:"string"},description:""},amount:{required:!0,tsType:{name:"number"},description:""},quantity:{required:!1,tsType:{name:"number"},description:""},serviceId:{required:!1,tsType:{name:"number"},description:""}}};const B={title:"Features/Billing/InvoiceItemRow",component:f,parameters:{layout:"centered"},decorators:[i=>e.jsx("div",{className:"w-[600px]",children:e.jsx(i,{})})]},t={args:{id:1,description:"SIM Card Activation Fee",amount:9.99}},n={args:{id:2,description:"Premium Mobile Plan - Monthly",amount:49.99,serviceId:101}},s={args:{id:3,description:"Data Add-on 5GB",amount:29.98,quantity:2,serviceId:55}},o={args:{id:4,description:"Enterprise Plan - Annual License",amount:2499.99}};var m,c,d;t.parameters={...t.parameters,docs:{...(m=t.parameters)==null?void 0:m.docs,source:{originalSource:`{ + args: { + id: 1, + description: "SIM Card Activation Fee", + amount: 9.99 + } +}`,...(d=(c=t.parameters)==null?void 0:c.docs)==null?void 0:d.source}}};var u,p,l;n.parameters={...n.parameters,docs:{...(u=n.parameters)==null?void 0:u.docs,source:{originalSource:`{ + args: { + id: 2, + description: "Premium Mobile Plan - Monthly", + amount: 49.99, + serviceId: 101 + } +}`,...(l=(p=n.parameters)==null?void 0:p.docs)==null?void 0:l.source}}};var x,g,b;s.parameters={...s.parameters,docs:{...(x=s.parameters)==null?void 0:x.docs,source:{originalSource:`{ + args: { + id: 3, + description: "Data Add-on 5GB", + amount: 29.98, + quantity: 2, + serviceId: 55 + } +}`,...(b=(g=s.parameters)==null?void 0:g.docs)==null?void 0:b.source}}};var y,h,v;o.parameters={...o.parameters,docs:{...(y=o.parameters)==null?void 0:y.docs,source:{originalSource:`{ + args: { + id: 4, + description: "Enterprise Plan - Annual License", + amount: 2499.99 + } +}`,...(v=(h=o.parameters)==null?void 0:h.docs)==null?void 0:v.source}}};const O=["OneTimeItem","LinkedToService","WithQuantity","LargeAmount"];export{o as LargeAmount,n as LinkedToService,t as OneTimeItem,s as WithQuantity,O as __namedExportsOrder,B as default}; diff --git a/apps/portal/public/storybook/assets/InvoiceItems.stories-DCnfx23q.js b/apps/portal/public/storybook/assets/InvoiceItems.stories-DCnfx23q.js new file mode 100644 index 00000000..4cebc2f0 --- /dev/null +++ b/apps/portal/public/storybook/assets/InvoiceItems.stories-DCnfx23q.js @@ -0,0 +1,26 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{L}from"./next-link-BmD4fPSy.js";import{F as O}from"./index-9c86oO0t.js";import"./index-JhL3uwfD.js";import"./currency-CYvr7ZUf.js";import"./date-CJlSVdaN.js";import"./text-CXa-DJQz.js";const{formatCurrency:U}=O;function u(r){return!!r.serviceId&&Number(r.serviceId)>0}function q({item:r,currency:l}){const s=u(r),n=e.jsxs("div",{className:`flex justify-between items-start py-4 px-4 rounded-xl transition-all duration-200 ${s?"hover:bg-primary/5 cursor-pointer group border border-transparent hover:border-primary/20":"bg-muted/30"}`,children:[e.jsx("div",{className:"flex-1 pr-4",children:e.jsx("div",{className:"flex items-start gap-3",children:e.jsxs("div",{className:"flex-1",children:[e.jsxs("div",{className:`font-semibold mb-1 ${s?"text-primary group-hover:text-primary/80":"text-foreground"}`,children:[r.description,s&&e.jsx("svg",{className:"inline-block w-4 h-4 ml-1 text-primary/70 group-hover:text-primary",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:e.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M10 6H6a2 2 0 00-2 2v10a2 2 0 002 2h10a2 2 0 002-2v-4M14 4h6m0 0v6m0-6L10 14"})})]}),e.jsxs("div",{className:"flex flex-wrap gap-3 text-sm",children:[r.quantity&&r.quantity>1&&e.jsxs("span",{className:"inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-medium bg-primary/10 text-primary",children:["Qty: ",r.quantity]}),s?e.jsxs("span",{className:"inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-medium bg-success/10 text-success",children:[e.jsx("svg",{className:"w-3 h-3 mr-1",fill:"currentColor",viewBox:"0 0 20 20",children:e.jsx("path",{fillRule:"evenodd",d:"M12.586 4.586a2 2 0 112.828 2.828l-3 3a2 2 0 01-2.828 0 1 1 0 00-1.414 1.414 4 4 0 005.656 0l3-3a4 4 0 00-5.656-5.656l-1.5 1.5a1 1 0 101.414 1.414l1.5-1.5zm-5 5a2 2 0 012.828 0 1 1 0 101.414-1.414 4 4 0 00-5.656 0l-3 3a4 4 0 105.656 5.656l1.5-1.5a1 1 0 10-1.414-1.414l-1.5 1.5a2 2 0 11-2.828-2.828l3-3z",clipRule:"evenodd"})}),"Subscription #",r.serviceId]}):e.jsxs("span",{className:"inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-medium bg-muted text-muted-foreground",children:[e.jsx("svg",{className:"w-3 h-3 mr-1",fill:"currentColor",viewBox:"0 0 20 20",children:e.jsx("path",{fillRule:"evenodd",d:"M4 4a2 2 0 00-2 2v8a2 2 0 002 2h12a2 2 0 002-2V6a2 2 0 00-2-2H4zm0 2v8h12V6H4z",clipRule:"evenodd"})}),"One-time item"]})]})]})})}),e.jsx("div",{className:"text-right flex-shrink-0",children:e.jsx("div",{className:`text-xl font-bold ${s?"text-primary group-hover:text-primary/80":"text-foreground"}`,children:U(r.amount||0,l)})})]});return s?e.jsx(L,{href:`/account/subscriptions/${r.serviceId}`,className:"block",children:n}):e.jsx("div",{children:n})}function C(){return e.jsxs("div",{className:"text-center py-8",children:[e.jsx("div",{className:"text-muted-foreground/50 mb-2",children:e.jsx("svg",{className:"w-12 h-12 mx-auto",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:e.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:1.5,d:"M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z"})})}),e.jsx("p",{className:"text-muted-foreground",children:"No items found on this invoice."})]})}function E({items:r=[],currency:l}){const s=r.some(t=>u(t)),n=r.some(t=>!u(t));return e.jsxs("div",{className:"bg-card rounded-2xl border border-border overflow-hidden",children:[e.jsx("div",{className:"px-6 py-4 bg-muted/50 border-b border-border",children:e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsx("h3",{className:"text-lg font-semibold text-foreground",children:"Items & Services"}),e.jsxs("div",{className:"flex items-center gap-4 text-xs text-muted-foreground",children:[s&&e.jsxs("div",{className:"flex items-center gap-1.5",children:[e.jsx("div",{className:"w-2 h-2 bg-success rounded-full"}),e.jsx("span",{children:"Linked to service"})]}),n&&e.jsxs("div",{className:"flex items-center gap-1.5",children:[e.jsx("div",{className:"w-2 h-2 bg-muted-foreground/50 rounded-full"}),e.jsx("span",{children:"One-time item"})]})]})]})}),e.jsx("div",{className:"p-6",children:r.length>0?e.jsx("div",{className:"space-y-3",children:r.map(t=>e.jsx(q,{item:t,currency:l},t.id))}):e.jsx(C,{})})]})}E.__docgenInfo={description:"",methods:[],displayName:"InvoiceItems",props:{items:{required:!1,tsType:{name:"Array",elements:[{name:"z.infer",elements:[{name:"invoiceItemSchema"}],raw:"z.infer"}],raw:"InvoiceItem[]"},description:"",defaultValue:{value:"[]",computed:!1}},currency:{required:!0,tsType:{name:"string"},description:""}}};const d=[{id:1,description:"Premium Mobile Plan - Monthly",amount:49.99,quantity:1,type:"subscription",serviceId:101},{id:2,description:"SIM Card Activation Fee",amount:9.99,quantity:1,type:"one-time"},{id:3,description:"Data Add-on 10GB",amount:14.99,quantity:2,type:"subscription",serviceId:102}],H={title:"Features/Billing/InvoiceItems",component:E,parameters:{layout:"centered"},decorators:[r=>e.jsx("div",{className:"w-[700px]",children:e.jsx(r,{})})]},i={args:{items:d,currency:"EUR"}},a={args:{items:d.filter(r=>r.serviceId),currency:"EUR"}},o={args:{items:d.filter(r=>!r.serviceId),currency:"EUR"}},c={args:{items:[],currency:"EUR"}},m={args:{items:[d[0]],currency:"USD"}};var p,x,h;i.parameters={...i.parameters,docs:{...(p=i.parameters)==null?void 0:p.docs,source:{originalSource:`{ + args: { + items: mockItems, + currency: "EUR" + } +}`,...(h=(x=i.parameters)==null?void 0:x.docs)==null?void 0:h.source}}};var v,f,y;a.parameters={...a.parameters,docs:{...(v=a.parameters)==null?void 0:v.docs,source:{originalSource:`{ + args: { + items: mockItems.filter(item => item.serviceId), + currency: "EUR" + } +}`,...(y=(f=a.parameters)==null?void 0:f.docs)==null?void 0:y.source}}};var g,j,I;o.parameters={...o.parameters,docs:{...(g=o.parameters)==null?void 0:g.docs,source:{originalSource:`{ + args: { + items: mockItems.filter(item => !item.serviceId), + currency: "EUR" + } +}`,...(I=(j=o.parameters)==null?void 0:j.docs)==null?void 0:I.source}}};var b,N,k;c.parameters={...c.parameters,docs:{...(b=c.parameters)==null?void 0:b.docs,source:{originalSource:`{ + args: { + items: [], + currency: "EUR" + } +}`,...(k=(N=c.parameters)==null?void 0:N.docs)==null?void 0:k.source}}};var w,S,R;m.parameters={...m.parameters,docs:{...(w=m.parameters)==null?void 0:w.docs,source:{originalSource:`{ + args: { + items: [mockItems[0]], + currency: "USD" + } +}`,...(R=(S=m.parameters)==null?void 0:S.docs)==null?void 0:R.source}}};const _=["Default","LinkedItemsOnly","OneTimeItemsOnly","Empty","SingleItem"];export{i as Default,c as Empty,a as LinkedItemsOnly,o as OneTimeItemsOnly,m as SingleItem,_ as __namedExportsOrder,H as default}; diff --git a/apps/portal/public/storybook/assets/InvoiceSummaryBar.stories-B0IQCumt.js b/apps/portal/public/storybook/assets/InvoiceSummaryBar.stories-B0IQCumt.js new file mode 100644 index 00000000..b194a4b5 --- /dev/null +++ b/apps/portal/public/storybook/assets/InvoiceSummaryBar.stories-B0IQCumt.js @@ -0,0 +1,55 @@ +import{j as a}from"./jsx-runtime-D_zvdyIk.js";import{r as o}from"./index-JhL3uwfD.js";import{B as D}from"./button-C8_cybvS.js";import{S as E}from"./status-pill-wWp9xkwA.js";import{c as _}from"./cn-CDN07tui.js";import{a as z,b as V}from"./date-Csq1SWDU.js";import"./index-BKyvj4H5.js";import{F as W}from"./ArrowDownTrayIcon-B9boZoDw.js";import{F as G}from"./ArrowTopRightOnSquareIcon-CouP_SCN.js";import{F as H}from"./index-9c86oO0t.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./spinner-mU4XywER.js";import"./date-CJlSVdaN.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./currency-CYvr7ZUf.js";import"./text-CXa-DJQz.js";const{formatCurrency:J}=H,K={Paid:"success",Unpaid:"warning",Overdue:"error",Cancelled:"neutral",Refunded:"neutral",Draft:"neutral",Pending:"warning",Collections:"error"};function y(e){if(!e)return null;const n=z(e);return n==="N/A"||n==="Invalid date"?null:n}function Q(e,n,t){if(!e||n==="Paid")return null;if(n==="Overdue"&&t)return`${t} day${t===1?"":"s"} overdue`;if(n==="Unpaid"){const s=V(e);return s==="N/A"||s==="Invalid date"?null:s.startsWith("in ")?`due ${s}`:`due ${s}`}return null}function A({invoice:e,loadingDownload:n,loadingPayment:t,onDownload:s,onPay:f}){var v;const L=o.useMemo(()=>J(e.total,e.currency),[e.currency,e.total]),p=o.useMemo(()=>y(e.dueDate),[e.dueDate]),x=o.useMemo(()=>y(e.issuedAt),[e.issuedAt]),g=o.useMemo(()=>Q(e.dueDate,e.status,e.daysOverdue),[e.dueDate,e.status,e.daysOverdue]),$=K[e.status]??"neutral",k=e.status;return a.jsx("div",{className:"px-6 py-8 sm:px-8",children:a.jsxs("div",{className:"flex flex-col gap-6",children:[a.jsxs("div",{className:"flex flex-col sm:flex-row sm:items-start sm:justify-between gap-6",children:[a.jsxs("div",{className:"flex items-center gap-4 flex-wrap",children:[a.jsx("div",{className:"text-4xl sm:text-5xl font-bold text-foreground leading-none",children:L}),a.jsx("div",{className:"text-base font-medium text-muted-foreground uppercase tracking-wide",children:(v=e.currency)==null?void 0:v.toUpperCase()}),a.jsx(E,{size:"md",variant:$,label:k,className:"font-semibold"})]}),a.jsxs("div",{className:"flex flex-row gap-3 flex-shrink-0",children:[a.jsx(D,{variant:"outline",onClick:s,disabled:!s,loading:n??!1,leftIcon:a.jsx(W,{className:"h-4 w-4"}),children:"Download PDF"}),(e.status==="Unpaid"||e.status==="Overdue")&&a.jsx(D,{onClick:f,disabled:!f,loading:t??!1,rightIcon:a.jsx(G,{className:"h-4 w-4"}),variant:"default",children:"Pay Now"})]})]}),a.jsxs("div",{className:"flex flex-col sm:flex-row sm:items-center sm:justify-between gap-2 text-sm text-muted-foreground border-t border-border pt-4",children:[a.jsxs("div",{className:"flex items-center gap-2",children:[p&&a.jsxs("span",{children:["Due ",p]}),g&&a.jsxs(a.Fragment,{children:[p&&a.jsx("span",{className:"text-muted-foreground/50",children:"•"}),a.jsx("span",{className:_("font-medium",e.status==="Overdue"?"text-danger":"text-warning"),children:g})]})]}),a.jsxs("div",{className:"flex items-center gap-2",children:[a.jsxs("span",{className:"font-semibold text-foreground",children:["Invoice #",e.number]}),x&&a.jsxs(a.Fragment,{children:[a.jsx("span",{className:"text-muted-foreground/50",children:"•"}),a.jsxs("span",{children:["Issued ",x]})]})]})]})]})})}A.__docgenInfo={description:"",methods:[],displayName:"InvoiceSummaryBar",props:{invoice:{required:!0,tsType:{name:"z.infer",elements:[{name:"invoiceSchema"}],raw:"z.infer"},description:""},loadingDownload:{required:!1,tsType:{name:"boolean"},description:""},loadingPayment:{required:!1,tsType:{name:"boolean"},description:""},onDownload:{required:!1,tsType:{name:"signature",type:"function",raw:"() => void",signature:{arguments:[],return:{name:"void"}}},description:""},onPay:{required:!1,tsType:{name:"signature",type:"function",raw:"() => void",signature:{arguments:[],return:{name:"void"}}},description:""}}};const r={id:1001,number:"INV-2026-001",status:"Paid",currency:"EUR",total:129.99,subtotal:109.99,tax:20,issuedAt:"2026-02-15T00:00:00Z",dueDate:"2026-03-15T00:00:00Z",paidDate:"2026-02-28T00:00:00Z",description:"Monthly subscription"},ge={title:"Features/Billing/InvoiceSummaryBar",component:A,parameters:{layout:"padded"},decorators:[e=>a.jsx("div",{className:"bg-card rounded-2xl border border-border overflow-hidden",children:a.jsx(e,{})})]},d={args:{invoice:r,onDownload:()=>{}}},i={args:{invoice:{...r,status:"Unpaid",paidDate:void 0,dueDate:"2026-03-20T00:00:00Z"},onDownload:()=>{},onPay:()=>{}}},l={args:{invoice:{...r,status:"Overdue",paidDate:void 0,daysOverdue:12,dueDate:"2026-02-23T00:00:00Z"},onDownload:()=>{},onPay:()=>{}}},u={args:{invoice:{...r,status:"Cancelled",paidDate:void 0},onDownload:()=>{}}},c={args:{invoice:r,onDownload:()=>{},loadingDownload:!0}},m={args:{invoice:{...r,status:"Unpaid",paidDate:void 0},onDownload:()=>{},onPay:()=>{},loadingPayment:!0}};var w,b,h;d.parameters={...d.parameters,docs:{...(w=d.parameters)==null?void 0:w.docs,source:{originalSource:`{ + args: { + invoice: baseInvoice, + onDownload: () => {} + } +}`,...(h=(b=d.parameters)==null?void 0:b.docs)==null?void 0:h.source}}};var j,N,I;i.parameters={...i.parameters,docs:{...(j=i.parameters)==null?void 0:j.docs,source:{originalSource:`{ + args: { + invoice: { + ...baseInvoice, + status: "Unpaid", + paidDate: undefined, + dueDate: "2026-03-20T00:00:00Z" + }, + onDownload: () => {}, + onPay: () => {} + } +}`,...(I=(N=i.parameters)==null?void 0:N.docs)==null?void 0:I.source}}};var P,T,O;l.parameters={...l.parameters,docs:{...(P=l.parameters)==null?void 0:P.docs,source:{originalSource:`{ + args: { + invoice: { + ...baseInvoice, + status: "Overdue", + paidDate: undefined, + daysOverdue: 12, + dueDate: "2026-02-23T00:00:00Z" + }, + onDownload: () => {}, + onPay: () => {} + } +}`,...(O=(T=l.parameters)==null?void 0:T.docs)==null?void 0:O.source}}};var S,U,C;u.parameters={...u.parameters,docs:{...(S=u.parameters)==null?void 0:S.docs,source:{originalSource:`{ + args: { + invoice: { + ...baseInvoice, + status: "Cancelled", + paidDate: undefined + }, + onDownload: () => {} + } +}`,...(C=(U=u.parameters)==null?void 0:U.docs)==null?void 0:C.source}}};var F,R,Z;c.parameters={...c.parameters,docs:{...(F=c.parameters)==null?void 0:F.docs,source:{originalSource:`{ + args: { + invoice: baseInvoice, + onDownload: () => {}, + loadingDownload: true + } +}`,...(Z=(R=c.parameters)==null?void 0:R.docs)==null?void 0:Z.source}}};var B,M,q;m.parameters={...m.parameters,docs:{...(B=m.parameters)==null?void 0:B.docs,source:{originalSource:`{ + args: { + invoice: { + ...baseInvoice, + status: "Unpaid", + paidDate: undefined + }, + onDownload: () => {}, + onPay: () => {}, + loadingPayment: true + } +}`,...(q=(M=m.parameters)==null?void 0:M.docs)==null?void 0:q.source}}};const ve=["Paid","Unpaid","Overdue","Cancelled","DownloadLoading","PaymentLoading"];export{u as Cancelled,c as DownloadLoading,l as Overdue,d as Paid,m as PaymentLoading,i as Unpaid,ve as __namedExportsOrder,ge as default}; diff --git a/apps/portal/public/storybook/assets/InvoiceTable.stories-B6vMrZIR.js b/apps/portal/public/storybook/assets/InvoiceTable.stories-B6vMrZIR.js new file mode 100644 index 00000000..ed46e4af --- /dev/null +++ b/apps/portal/public/storybook/assets/InvoiceTable.stories-B6vMrZIR.js @@ -0,0 +1,33 @@ +var B=e=>{throw TypeError(e)};var F=(e,t,a)=>t.has(e)||B("Cannot "+a);var n=(e,t,a)=>(F(e,t,"read from private field"),a?a.call(e):t.get(e)),N=(e,t,a)=>t.has(e)?B("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,a),S=(e,t,a,r)=>(F(e,t,"write to private field"),r?r.call(e,a):t.set(e,a),a),_=(e,t,a)=>(F(e,t,"access private method"),a);import{j as s}from"./jsx-runtime-D_zvdyIk.js";import{r as u}from"./index-JhL3uwfD.js";import{u as be}from"./next-navigation-FtRxULo3.js";import{D as ge}from"./DataTable-COYdcx41.js";import{B as K}from"./button-C8_cybvS.js";import{B as we}from"./BillingStatusBadge-CQ1ic61y.js";import{c as R}from"./cn-CDN07tui.js";import{a as q}from"./date-Csq1SWDU.js";import{a as k,b as V,c as fe,l as z}from"./index-BKyvj4H5.js";import{S as je,s as Ne,h as $,n as ve,u as Se,a as _e,b as Ie}from"./QueryClientProvider-D7wSf7Op.js";import"./auth.store-CVqT-1lf.js";import{i as ke,a as Ce}from"./schema-DP3xEsUJ.js";import{F as Te}from"./ArrowDownTrayIcon-B9boZoDw.js";import{F as Oe}from"./DocumentTextIcon-Dk_xQMYi.js";import{F as Y}from"./ClockIcon-BFX11zAZ.js";import{F as G}from"./ExclamationTriangleIcon-Di4DJZFg.js";import{F as Pe}from"./CheckCircleIcon-Dva35lTP.js";import{F as Ee}from"./index-9c86oO0t.js";import"./empty-state-DRUGJ9ip.js";import"./PlusIcon-DGufmf06.js";import"./ChevronRightIcon-CMQWsJeW.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./spinner-mU4XywER.js";import"./status-pill-wWp9xkwA.js";import"./XCircleIcon-CiVBnngB.js";import"./date-CJlSVdaN.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./error-handling-CCxr4Gjn.js";import"./react-C6W-rNNW.js";import"./schema-JsDJirqf.js";import"./schema-Dok_SHcO.js";import"./constants-Cd_qStHG.js";import"./currency-CYvr7ZUf.js";import"./text-CXa-DJQz.js";function De(){return{context:void 0,data:void 0,error:null,failureCount:0,failureReason:null,isPaused:!1,status:"idle",variables:void 0,submittedAt:0}}var x,g,o,y,b,A,U,W,Ae=(W=class extends je{constructor(t,a){super();N(this,b);N(this,x);N(this,g);N(this,o);N(this,y);S(this,x,t),this.setOptions(a),this.bindMethods(),_(this,b,A).call(this)}bindMethods(){this.mutate=this.mutate.bind(this),this.reset=this.reset.bind(this)}setOptions(t){var r;const a=this.options;this.options=n(this,x).defaultMutationOptions(t),Ne(this.options,a)||n(this,x).getMutationCache().notify({type:"observerOptionsUpdated",mutation:n(this,o),observer:this}),a!=null&&a.mutationKey&&this.options.mutationKey&&$(a.mutationKey)!==$(this.options.mutationKey)?this.reset():((r=n(this,o))==null?void 0:r.state.status)==="pending"&&n(this,o).setOptions(this.options)}onUnsubscribe(){var t;this.hasListeners()||(t=n(this,o))==null||t.removeObserver(this)}onMutationUpdate(t){_(this,b,A).call(this),_(this,b,U).call(this,t)}getCurrentResult(){return n(this,g)}reset(){var t;(t=n(this,o))==null||t.removeObserver(this),S(this,o,void 0),_(this,b,A).call(this),_(this,b,U).call(this)}mutate(t,a){var r;return S(this,y,a),(r=n(this,o))==null||r.removeObserver(this),S(this,o,n(this,x).getMutationCache().build(n(this,x),this.options)),n(this,o).addObserver(this),n(this,o).execute(t)}},x=new WeakMap,g=new WeakMap,o=new WeakMap,y=new WeakMap,b=new WeakSet,A=function(){var a;const t=((a=n(this,o))==null?void 0:a.state)??De();S(this,g,{...t,isPending:t.status==="pending",isSuccess:t.status==="success",isError:t.status==="error",isIdle:t.status==="idle",mutate:this.mutate,reset:this.reset})},U=function(t){ve.batch(()=>{var a,r,i,p,d,l,h,I;if(n(this,y)&&this.hasListeners()){const f=n(this,g).variables,v=n(this,g).context,j={client:n(this,x),meta:this.options.meta,mutationKey:this.options.mutationKey};if((t==null?void 0:t.type)==="success"){try{(r=(a=n(this,y)).onSuccess)==null||r.call(a,t.data,f,v,j)}catch(m){Promise.reject(m)}try{(p=(i=n(this,y)).onSettled)==null||p.call(i,t.data,null,f,v,j)}catch(m){Promise.reject(m)}}else if((t==null?void 0:t.type)==="error"){try{(l=(d=n(this,y)).onError)==null||l.call(d,t.error,f,v,j)}catch(m){Promise.reject(m)}try{(I=(h=n(this,y)).onSettled)==null||I.call(h,void 0,t.error,f,v,j)}catch(m){Promise.reject(m)}}}this.listeners.forEach(f=>{f(n(this,g))})})},W);function Me(e,t){const a=Se(),[r]=u.useState(()=>new Ae(a,e));u.useEffect(()=>{r.setOptions(e)},[r,e]);const i=u.useSyncExternalStore(u.useCallback(d=>r.subscribe(ve.batchCalls(d)),[r]),()=>r.getCurrentResult(),()=>r.getCurrentResult()),p=u.useCallback((d,l)=>{r.mutate(d,l).catch(_e)},[r]);if(i.error&&Ie(r.options.throwOnError,[i.error]))throw i.error;return{...i,mutate:p,mutateAsync:i.mutate}}const Le={invoices:[],pagination:{page:1,totalItems:0,totalPages:0}},Fe={paymentMethods:[],totalCount:0};function Re(e){const t={};for(const[a,r]of Object.entries(e))r!==void 0&&(typeof r=="string"||typeof r=="number"||typeof r=="boolean")&&(t[a]=r);return t}async function qe(e){const t=e?Re(e):void 0,a=await k.GET("/api/invoices",t?{params:{query:t}}:void 0),r=fe(a,Le);return Ce.parse(r)}async function Ue(e){const t=await k.GET("/api/invoices/{id}",{params:{path:{id:e}}}),a=V(t,"Invoice not found");return ke.parse(a)}async function Ve(){const e=await k.GET("/api/invoices/payment-methods");return fe(e,Fe)}async function Ze(e,t){const a=await k.POST("/api/invoices/{id}/sso-link",{params:t?{path:{id:e},query:{target:t}}:{path:{id:e}}});return V(a,"Failed to create SSO link")}async function Be(){const e=await k.POST("/api/auth/sso-link",{body:{destination:"index.php?rp=/account/paymentmethods"}});return V(e,"Failed to create payment methods SSO link")}const Ke={getInvoices:qe,getInvoice:Ue,getPaymentMethods:Ve,createInvoiceSsoLink:Ze,createPaymentMethodsSsoLink:Be};function ze(e){return Me({mutationFn:async({invoiceId:t,target:a})=>Ke.createInvoiceSsoLink(t,a),...e})}function Q(e,t){const{newTab:a=!0}=t||{};try{a?window.open(e,"_blank","noopener,noreferrer"):window.location.href=e}catch{}}const{formatCurrency:$e}=Ee,Ye={icon:s.jsx(Oe,{className:"h-12 w-12"}),title:"No invoices found",description:"No invoices have been generated yet."},Ge=e=>{switch(e.toLowerCase()){case"paid":return s.jsx(Pe,{className:"h-5 w-5 text-success"});case"unpaid":return s.jsx(Y,{className:"h-5 w-5 text-warning"});case"overdue":return s.jsx(G,{className:"h-5 w-5 text-danger"});case"cancelled":case"canceled":return s.jsx(G,{className:"h-5 w-5 text-muted-foreground"});default:return s.jsx(Y,{className:"h-5 w-5 text-muted-foreground"})}};function Qe({invoice:e,compact:t}){const a=Ge(e.status);return s.jsxs("div",{className:"flex items-start space-x-3 py-5",children:[s.jsx("div",{className:"flex-shrink-0 mt-0.5",children:a}),s.jsxs("div",{className:"min-w-0 flex-1",children:[s.jsx("div",{className:"font-semibold text-foreground text-sm",children:e.number}),!t&&e.description&&s.jsx("div",{className:"text-sm text-muted-foreground mt-1 line-clamp-1",children:e.description}),!t&&e.issuedAt&&s.jsxs("div",{className:"text-xs text-muted-foreground mt-1.5",children:["Issued ",q(e.issuedAt)]})]})]})}function We({invoice:e}){switch(e.status){case"Paid":return s.jsx("div",{className:"py-5",children:s.jsxs("div",{className:"space-y-1.5",children:[s.jsx("span",{className:"inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-semibold bg-success-soft text-success border border-success/20",children:"Paid"}),e.paidDate&&s.jsx("div",{className:"text-xs text-muted-foreground",children:q(e.paidDate)})]})});case"Overdue":return s.jsx("div",{className:"py-5",children:s.jsxs("div",{className:"space-y-1.5",children:[s.jsx("span",{className:"inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-semibold bg-danger-soft text-danger border border-danger/20",children:"Overdue"}),e.daysOverdue&&s.jsxs("div",{className:"text-xs text-danger",children:[e.daysOverdue," day",e.daysOverdue===1?"":"s"," overdue"]})]})});case"Unpaid":return s.jsx("div",{className:"py-5",children:s.jsxs("div",{className:"space-y-1.5",children:[s.jsx("span",{className:"inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-semibold bg-warning-soft text-warning border border-warning/20",children:"Unpaid"}),e.dueDate&&s.jsxs("div",{className:"text-xs text-muted-foreground",children:["Due ",q(e.dueDate)]})]})});default:return s.jsx("div",{className:"py-5",children:s.jsx(we,{status:e.status})})}}function He(e){return{key:"invoice",header:"Invoice",className:"w-1/3",render:t=>s.jsx(Qe,{invoice:t,compact:e})}}function Je(){return{key:"status",header:"Status",className:"w-36",render:e=>s.jsx(We,{invoice:e})}}function Xe(){return{key:"amount",header:"Amount",className:"w-32 text-right",render:e=>s.jsx("div",{className:"py-5 text-right",children:s.jsx("div",{className:"font-bold text-foreground text-sm tabular-nums",children:$e(e.total,e.currency)})})}}function et({paymentLoading:e,downloadLoading:t,handlePayment:a,handleDownload:r}){return{key:"actions",header:"",className:"w-44 text-right",render:i=>{const p=i.status==="Unpaid"||i.status==="Overdue",d=e===i.id,l=t===i.id;return s.jsxs("div",{className:"py-5 flex justify-end items-center space-x-2",children:[p&&s.jsx(K,{size:"sm",variant:"default",onClick:h=>{a(i,h)},loading:d,className:"text-xs font-medium",children:"Pay Now"}),s.jsx(K,{size:"sm",variant:"outline",onClick:h=>{r(i,h)},loading:l,leftIcon:l?void 0:s.jsx(Te,{className:"h-4 w-4"}),className:"text-xs font-medium",title:"Download PDF",children:"PDF"})]})}}}function tt({className:e}){return s.jsx("div",{className:R("bg-card overflow-hidden",e),children:s.jsxs("div",{className:"animate-pulse",children:[s.jsx("div",{className:"bg-muted/50 px-6 py-4 border-b border-border",children:s.jsxs("div",{className:"grid grid-cols-4 gap-4",children:[s.jsx("div",{className:"h-3 bg-muted rounded w-32"}),s.jsx("div",{className:"h-3 bg-muted rounded w-16"}),s.jsx("div",{className:"h-3 bg-muted rounded w-20"}),s.jsx("div",{className:"h-3 bg-muted rounded w-24"})]})}),s.jsx("div",{className:"divide-y divide-border",children:Array.from({length:6}).map((t,a)=>s.jsx("div",{className:"px-6 py-5",children:s.jsxs("div",{className:"grid grid-cols-4 gap-4 items-center",children:[s.jsxs("div",{className:"flex items-center space-x-3",children:[s.jsx("div",{className:"h-5 w-5 bg-muted rounded-full"}),s.jsxs("div",{className:"space-y-2 flex-1",children:[s.jsx("div",{className:"h-4 bg-muted rounded w-28"}),s.jsx("div",{className:"h-3 bg-muted rounded w-40"})]})]}),s.jsx("div",{className:"h-5 bg-muted rounded-full w-16"}),s.jsx("div",{className:"text-right",children:s.jsx("div",{className:"h-4 bg-muted rounded w-20 ml-auto"})}),s.jsxs("div",{className:"text-right flex justify-end space-x-2",children:[s.jsx("div",{className:"h-8 bg-muted rounded w-16"}),s.jsx("div",{className:"h-8 bg-muted rounded w-14"})]})]})},a))})]})})}function xe({invoices:e,loading:t=!1,onInvoiceClick:a,showActions:r=!0,compact:i=!1,className:p}){const d=be(),[l,h]=u.useState(null),[I,f]=u.useState(null),v=ze(),j=u.useCallback(c=>{a?a(c):d.push(`/account/billing/invoices/${c.id}`)},[a,d]),m=u.useCallback(async(c,L)=>{L.stopPropagation(),h(c.id);try{const w=await v.mutateAsync({invoiceId:c.id,target:"pay"});Q(w.url,{newTab:!0})}catch(w){z.error("Failed to create payment SSO link",w)}finally{h(null)}},[v]),Z=u.useCallback(async(c,L)=>{L.stopPropagation(),f(c.id);try{const w=await v.mutateAsync({invoiceId:c.id,target:"download"});Q(w.url,{newTab:!1})}catch(w){z.error("Failed to create download SSO link",w)}finally{f(null)}},[v]),ye=u.useMemo(()=>{const c=[He(i),Je(),Xe()];return r&&c.push(et({paymentLoading:l,downloadLoading:I,handlePayment:m,handleDownload:Z})),c},[i,r,l,I,m,Z]);return t?s.jsx(tt,{className:p}):s.jsx("div",{className:R("bg-card overflow-hidden",p),children:s.jsx(ge,{data:e,columns:ye,emptyState:Ye,onRowClick:j,className:R("invoice-table","[&_thead]:bg-muted/50","[&_thead_th]:px-6 [&_thead_th]:py-3.5 [&_thead_th]:text-xs [&_thead_th]:font-medium [&_thead_th]:text-muted-foreground [&_thead_th]:uppercase [&_thead_th]:tracking-wide","[&_thead_th]:border-b [&_thead_th]:border-border","[&_thead_th:nth-child(3)]:text-right","[&_tbody_tr]:border-b [&_tbody_tr]:border-border [&_tbody_tr]:transition-all [&_tbody_tr]:duration-200","[&_tbody_tr:hover]:bg-primary/5 [&_tbody_tr]:cursor-pointer","[&_tbody_tr:last-child]:border-b-0","[&_tbody_td]:px-6 [&_tbody_td]:py-1 [&_tbody_td]:align-top","[&_.divide-y]:divide-transparent")})})}xe.__docgenInfo={description:"",methods:[],displayName:"InvoiceTable",props:{invoices:{required:!0,tsType:{name:"Array",elements:[{name:"z.infer",elements:[{name:"invoiceSchema"}],raw:"z.infer"}],raw:"Invoice[]"},description:""},loading:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"false",computed:!1}},onInvoiceClick:{required:!1,tsType:{name:"signature",type:"function",raw:"(invoice: Invoice) => void",signature:{arguments:[{type:{name:"z.infer",elements:[{name:"invoiceSchema"}],raw:"z.infer"},name:"invoice"}],return:{name:"void"}}},description:""},showActions:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"true",computed:!1}},compact:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"false",computed:!1}},className:{required:!1,tsType:{name:"string"},description:""}}};const M=[{id:1,number:"INV-2026-001",status:"Paid",currency:"EUR",total:129.99,subtotal:109.99,tax:20,issuedAt:"2026-01-15T00:00:00Z",dueDate:"2026-02-15T00:00:00Z",paidDate:"2026-01-30T00:00:00Z",description:"Premium Mobile Plan - January"},{id:2,number:"INV-2026-002",status:"Unpaid",currency:"EUR",total:49.99,subtotal:41.99,tax:8,issuedAt:"2026-02-15T00:00:00Z",dueDate:"2026-03-15T00:00:00Z",description:"Standard Plan - February"},{id:3,number:"INV-2026-003",status:"Overdue",currency:"EUR",total:79.99,subtotal:67.22,tax:12.77,issuedAt:"2026-01-01T00:00:00Z",dueDate:"2026-02-01T00:00:00Z",daysOverdue:34,description:"Data Add-on Package"},{id:4,number:"INV-2026-004",status:"Cancelled",currency:"EUR",total:19.99,subtotal:16.8,tax:3.19,issuedAt:"2026-01-10T00:00:00Z",description:"SIM Activation - Cancelled"}],qt={title:"Features/Billing/InvoiceTable",component:xe,parameters:{layout:"padded"},decorators:[e=>s.jsx("div",{className:"w-full max-w-[900px]",children:s.jsx(e,{})})]},C={args:{invoices:M,onInvoiceClick:()=>{}}},T={args:{invoices:M,showActions:!1,onInvoiceClick:()=>{}}},O={args:{invoices:M,compact:!0,onInvoiceClick:()=>{}}},P={args:{invoices:[],loading:!0}},E={args:{invoices:[],onInvoiceClick:()=>{}}},D={args:{invoices:[M[0]],onInvoiceClick:()=>{}}};var H,J,X;C.parameters={...C.parameters,docs:{...(H=C.parameters)==null?void 0:H.docs,source:{originalSource:`{ + args: { + invoices: mockInvoices, + onInvoiceClick: () => {} + } +}`,...(X=(J=C.parameters)==null?void 0:J.docs)==null?void 0:X.source}}};var ee,te,se;T.parameters={...T.parameters,docs:{...(ee=T.parameters)==null?void 0:ee.docs,source:{originalSource:`{ + args: { + invoices: mockInvoices, + showActions: false, + onInvoiceClick: () => {} + } +}`,...(se=(te=T.parameters)==null?void 0:te.docs)==null?void 0:se.source}}};var ae,re,ne;O.parameters={...O.parameters,docs:{...(ae=O.parameters)==null?void 0:ae.docs,source:{originalSource:`{ + args: { + invoices: mockInvoices, + compact: true, + onInvoiceClick: () => {} + } +}`,...(ne=(re=O.parameters)==null?void 0:re.docs)==null?void 0:ne.source}}};var ie,oe,de;P.parameters={...P.parameters,docs:{...(ie=P.parameters)==null?void 0:ie.docs,source:{originalSource:`{ + args: { + invoices: [], + loading: true + } +}`,...(de=(oe=P.parameters)==null?void 0:oe.docs)==null?void 0:de.source}}};var ce,ue,le;E.parameters={...E.parameters,docs:{...(ce=E.parameters)==null?void 0:ce.docs,source:{originalSource:`{ + args: { + invoices: [], + onInvoiceClick: () => {} + } +}`,...(le=(ue=E.parameters)==null?void 0:ue.docs)==null?void 0:le.source}}};var me,pe,he;D.parameters={...D.parameters,docs:{...(me=D.parameters)==null?void 0:me.docs,source:{originalSource:`{ + args: { + invoices: [mockInvoices[0]], + onInvoiceClick: () => {} + } +}`,...(he=(pe=D.parameters)==null?void 0:pe.docs)==null?void 0:he.source}}};const Ut=["Default","WithoutActions","Compact","Loading","Empty","SingleInvoice"];export{O as Compact,C as Default,E as Empty,P as Loading,D as SingleInvoice,T as WithoutActions,Ut as __namedExportsOrder,qt as default}; diff --git a/apps/portal/public/storybook/assets/InvoiceTotals.stories-JIfDPO6U.js b/apps/portal/public/storybook/assets/InvoiceTotals.stories-JIfDPO6U.js new file mode 100644 index 00000000..5a5d432f --- /dev/null +++ b/apps/portal/public/storybook/assets/InvoiceTotals.stories-JIfDPO6U.js @@ -0,0 +1,19 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import"./index-JhL3uwfD.js";import"./index-BKyvj4H5.js";import{u as j}from"./useFormatCurrency-COf74_bd.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./useQuery-tNNTAmfW.js";import"./QueryClientProvider-D7wSf7Op.js";import"./constants-Cd_qStHG.js";import"./currency-CYvr7ZUf.js";function f({subtotal:a,tax:n,total:g}){const{formatCurrency:o}=j();return e.jsxs("div",{className:"bg-card rounded-2xl border border-border overflow-hidden",children:[e.jsx("div",{className:"px-6 py-5 bg-muted/50 border-b border-border",children:e.jsx("h3",{className:"text-base font-semibold text-foreground",children:"Invoice Summary"})}),e.jsx("div",{className:"px-6 py-5",children:e.jsxs("div",{className:"space-y-4",children:[e.jsxs("div",{className:"flex justify-between items-center",children:[e.jsx("span",{className:"text-sm text-muted-foreground",children:"Subtotal"}),e.jsx("span",{className:"text-sm font-semibold text-foreground",children:o(a)})]}),n>0&&e.jsxs("div",{className:"flex justify-between items-center",children:[e.jsx("span",{className:"text-sm text-muted-foreground",children:"Tax"}),e.jsx("span",{className:"text-sm font-semibold text-foreground",children:o(n)})]}),e.jsx("div",{className:"border-t border-border pt-4",children:e.jsxs("div",{className:"flex justify-between items-center",children:[e.jsx("span",{className:"text-base font-semibold text-foreground",children:"Total"}),e.jsx("span",{className:"text-xl font-bold text-foreground",children:o(g)})]})})]})})]})}f.__docgenInfo={description:"",methods:[],displayName:"InvoiceTotals",props:{subtotal:{required:!0,tsType:{name:"number"},description:""},tax:{required:!0,tsType:{name:"number"},description:""},total:{required:!0,tsType:{name:"number"},description:""}}};const A={title:"Features/Billing/InvoiceTotals",component:f,parameters:{layout:"centered"},decorators:[a=>e.jsx("div",{className:"w-[400px]",children:e.jsx(a,{})})]},t={args:{subtotal:99.99,tax:10,total:109.99}},s={args:{subtotal:49.99,tax:0,total:49.99}},r={args:{subtotal:12500,tax:2500,total:15e3}};var d,c,i;t.parameters={...t.parameters,docs:{...(d=t.parameters)==null?void 0:d.docs,source:{originalSource:`{ + args: { + subtotal: 99.99, + tax: 10.0, + total: 109.99 + } +}`,...(i=(c=t.parameters)==null?void 0:c.docs)==null?void 0:i.source}}};var l,m,u;s.parameters={...s.parameters,docs:{...(l=s.parameters)==null?void 0:l.docs,source:{originalSource:`{ + args: { + subtotal: 49.99, + tax: 0, + total: 49.99 + } +}`,...(u=(m=s.parameters)==null?void 0:m.docs)==null?void 0:u.source}}};var x,p,b;r.parameters={...r.parameters,docs:{...(x=r.parameters)==null?void 0:x.docs,source:{originalSource:`{ + args: { + subtotal: 12500.0, + tax: 2500.0, + total: 15000.0 + } +}`,...(b=(p=r.parameters)==null?void 0:p.docs)==null?void 0:b.source}}};const C=["Default","NoTax","LargeAmounts"];export{t as Default,r as LargeAmounts,s as NoTax,C as __namedExportsOrder,A as default}; diff --git a/apps/portal/public/storybook/assets/JapanAddressForm-CUdYD2hV.js b/apps/portal/public/storybook/assets/JapanAddressForm-CUdYD2hV.js new file mode 100644 index 00000000..bce0aa93 --- /dev/null +++ b/apps/portal/public/storybook/assets/JapanAddressForm-CUdYD2hV.js @@ -0,0 +1,10 @@ +import{j as r}from"./jsx-runtime-D_zvdyIk.js";import"./button-C8_cybvS.js";import{I as S}from"./input-BbGJiz0K.js";import"./password-input-D4khGh8v.js";import"./checkbox-DahUyQbt.js";import"./label-C25VH7yk.js";import"./error-message-DeFFz6H_.js";import"./status-pill-wWp9xkwA.js";import"./badge-BdMsasyi.js";import"./spinner-mU4XywER.js";import"./loading-overlay-DMJTiFny.js";import"./error-state-BSicqqE6.js";import"./empty-state-DRUGJ9ip.js";import"./inline-toast-DQJ-O9wc.js";import"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import"./logo-f0fprTjz.js";import"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./animated-container-DyAZ9gmw.js";import{F as E}from"./FormField-C0UylACv.js";import{c as h}from"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import{Z as _}from"./ZipCodeInput-C0pEKKnJ.js";import{A as N}from"./AnimatedSection-CccjFZBU.js";import{P as M}from"./ProgressIndicator-zQZ52Xi8.js";import{B as v}from"./BilingualValue-B84DkgyY.js";import{r as o}from"./index-JhL3uwfD.js";import{S as O}from"./sparkles-q054t7ye.js";import{M as q}from"./map-pin-Bm-ztWPO.js";import{C}from"./chevron-right-C40ybnlz.js";import{c as H}from"./createLucideIcon-CctB0W3q.js";import{H as L}from"./house-pESumjO8.js";import{B as U}from"./building-2-C7pcwIk2.js";import{A as P}from"./schema-Cvvg7S_W.js";/** + * @license lucide-react v0.563.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const Z=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]],D=H("circle-check",Z),m={HOUSE:"house",APARTMENT:"apartment"},z=4,F={postcode:"",prefecture:"",prefectureJa:"",city:"",cityJa:"",town:"",townJa:"",streetAddress:"",buildingName:"",roomNumber:"",residenceType:""};function w(e){const s=e.trim();return s?/^\d+(-\d+)*$/.test(s):!1}function V(e){const s=e.trim();if(!s)return"Street address is required";if(!w(s))return"Enter a valid format (e.g., 1-2-3)"}function Y({address:e,isAddressVerified:s}){return o.useMemo(()=>{var n,g;const t=e.residenceType===m.HOUSE||e.residenceType===m.APARTMENT,i=e.postcode.trim()!==""&&e.prefecture.trim()!==""&&e.city.trim()!==""&&e.town.trim()!==""&&w(e.streetAddress),c=e.residenceType!==m.APARTMENT||(((n=e.roomNumber)==null?void 0:n.trim())??"")!=="",l=(((g=e.buildingName)==null?void 0:g.trim())??"")!=="";return{isComplete:s&&t&&i&&l&&c,hasResidenceType:t,baseFieldsFilled:i,roomNumberOk:c,buildingNameOk:l,currentStep:(()=>{var y;return s?e.streetAddress.trim()?e.residenceType?e.residenceType===m.APARTMENT&&!((y=e.roomNumber)!=null&&y.trim())?3:4:2:1:0})()}},[e,s])}const J={prefecture:"",prefectureJa:"",city:"",cityJa:"",town:"",townJa:""};function W(e){const{setAddress:s,setIsAddressVerified:t,setShowSuccess:i,setVerifiedZipCode:c,verifiedZipCode:l,streetAddressRef:p,focusTimeoutRef:u}=e,n=o.useCallback(d=>{d.replace(/-/g,"")!==l.replace(/-/g,"")?(t(!1),i(!1),s(A=>({...A,postcode:d,...J}))):s(A=>({...A,postcode:d}))},[l,s,t,i]),g=o.useCallback(d=>{s(a=>(t(!0),c(a.postcode),{...a,prefecture:d.prefectureRoma,city:d.cityRoma,town:d.townRoma,prefectureJa:d.prefecture,cityJa:d.city,townJa:d.town})),u.current&&clearTimeout(u.current),u.current=setTimeout(()=>{var a;(a=p.current)==null||a.focus(),u.current=null},300)},[s,t,c,p,u]),y=o.useCallback(d=>{d||(t(!1),s(a=>({...a,...J})))},[s,t]),j=o.useCallback(d=>{s(a=>({...a,residenceType:d,roomNumber:d===m.HOUSE?"":a.roomNumber}))},[s]),f=o.useCallback(d=>{s(a=>({...a,streetAddress:d}))},[s]),T=o.useCallback(d=>{s(a=>({...a,buildingName:d}))},[s]),b=o.useCallback(d=>{s(a=>({...a,roomNumber:d}))},[s]);return{handleZipChange:n,handleAddressFound:g,handleLookupComplete:y,handleResidenceTypeChange:j,handleStreetAddressChange:f,handleBuildingNameChange:T,handleRoomNumberChange:b}}function X({initialValues:e,onChange:s,errors:t={},touched:i={}}){const[c,l]=o.useState(()=>({...F,...e,residenceType:(e==null?void 0:e.residenceType)??F.residenceType})),[p,u]=o.useState(!1),[n,g]=o.useState(""),[y,j]=o.useState(!1),f=o.useRef(s);f.current=s;const T=o.useRef(null),b=o.useRef(null),d=o.useRef(!1),a=Y({address:c,isAddressVerified:p});o.useEffect(()=>{e&&!d.current&&(d.current=!0,l(x=>({...x,...e,residenceType:e.residenceType??x.residenceType})),e.prefecture&&e.city&&e.town&&(u(!0),g(e.postcode||"")))},[e]),o.useEffect(()=>()=>{b.current&&clearTimeout(b.current)},[]),o.useEffect(()=>{var x,k;a.hasResidenceType?(x=f.current)==null||x.call(f,c,a.isComplete):(k=f.current)==null||k.call(f,c,!1)},[c,a.hasResidenceType,a.isComplete]),o.useEffect(()=>{j(a.isComplete)},[a.isComplete]);const A=o.useCallback(x=>i[x]?t[x]:void 0,[t,i]),I=W({setAddress:l,setIsAddressVerified:u,setShowSuccess:j,setVerifiedZipCode:g,verifiedZipCode:n,streetAddressRef:T,focusTimeoutRef:b});return{address:c,isAddressVerified:p,showSuccess:y,completion:a,streetAddressRef:T,getError:A,isApartment:c.residenceType===m.APARTMENT,handlers:I}}function R({stepNumber:e,label:s,isComplete:t,badge:i}){return r.jsxs("div",{className:"flex items-center gap-2 mb-3",children:[r.jsx("div",{className:h("flex items-center justify-center w-6 h-6 rounded-full text-xs font-semibold transition-all duration-300",t?"bg-success text-success-foreground":"bg-primary/10 text-primary"),children:t?r.jsx(D,{className:"w-4 h-4"}):e}),r.jsx("span",{className:"text-sm font-medium text-foreground",children:s}),i]})}function B({address:e,isVerified:s}){return r.jsx("div",{className:h("rounded-xl border transition-all duration-500","bg-gradient-to-br from-success/5 via-success/[0.02] to-transparent","border-success/20"),children:r.jsxs("div",{className:"p-4 space-y-3",children:[r.jsxs("div",{className:"flex items-center gap-2 text-success",children:[r.jsx(q,{className:"w-4 h-4"}),r.jsx("span",{className:"text-sm font-semibold",children:"Address from Japan Post"})]}),r.jsxs("div",{className:"grid gap-2",children:[r.jsxs("div",{className:"flex items-center gap-3 py-2 px-3 rounded-lg bg-background/50",children:[r.jsx("span",{className:"text-xs text-muted-foreground w-20 shrink-0",children:"Prefecture"}),r.jsx(C,{className:"w-3 h-3 text-muted-foreground/50"}),r.jsx(v,{romaji:e.prefecture,japanese:e.prefectureJa,placeholder:"—",verified:s})]}),r.jsxs("div",{className:"flex items-center gap-3 py-2 px-3 rounded-lg bg-background/50",children:[r.jsx("span",{className:"text-xs text-muted-foreground w-20 shrink-0",children:"City / Ward"}),r.jsx(C,{className:"w-3 h-3 text-muted-foreground/50"}),r.jsx(v,{romaji:e.city,japanese:e.cityJa,placeholder:"—",verified:s})]}),r.jsxs("div",{className:"flex items-center gap-3 py-2 px-3 rounded-lg bg-background/50",children:[r.jsx("span",{className:"text-xs text-muted-foreground w-20 shrink-0",children:"Town"}),r.jsx(C,{className:"w-3 h-3 text-muted-foreground/50"}),r.jsx(v,{romaji:e.town,japanese:e.townJa,placeholder:"—",verified:s})]})]})]})})}function G({value:e,onChange:s,disabled:t,error:i}){return r.jsxs("div",{children:[r.jsxs("div",{className:"grid grid-cols-2 gap-3",children:[r.jsxs("button",{type:"button",onClick:()=>s(m.HOUSE),disabled:t,className:h("group relative flex flex-col items-center gap-2 p-4 rounded-xl border-2 transition-all duration-300","hover:scale-[1.02] active:scale-[0.98]",e===m.HOUSE?"border-primary bg-primary/5 shadow-[0_0_0_4px] shadow-primary/10":"border-border bg-card hover:border-primary/50 hover:bg-primary/[0.02]",t&&"opacity-50 cursor-not-allowed hover:scale-100"),children:[r.jsx("div",{className:h("w-12 h-12 rounded-xl flex items-center justify-center transition-all duration-300",e===m.HOUSE?"bg-primary text-primary-foreground":"bg-muted text-muted-foreground group-hover:bg-primary/10 group-hover:text-primary"),children:r.jsx(L,{className:"w-6 h-6"})}),r.jsx("span",{className:h("text-sm font-semibold transition-colors",e===m.HOUSE?"text-primary":"text-foreground"),children:"House"})]}),r.jsxs("button",{type:"button",onClick:()=>s(m.APARTMENT),disabled:t,className:h("group relative flex flex-col items-center gap-2 p-4 rounded-xl border-2 transition-all duration-300","hover:scale-[1.02] active:scale-[0.98]",e===m.APARTMENT?"border-primary bg-primary/5 shadow-[0_0_0_4px] shadow-primary/10":"border-border bg-card hover:border-primary/50 hover:bg-primary/[0.02]",t&&"opacity-50 cursor-not-allowed hover:scale-100"),children:[r.jsx("div",{className:h("w-12 h-12 rounded-xl flex items-center justify-center transition-all duration-300",e===m.APARTMENT?"bg-primary text-primary-foreground":"bg-muted text-muted-foreground group-hover:bg-primary/10 group-hover:text-primary"),children:r.jsx(U,{className:"w-6 h-6"})}),r.jsx("span",{className:h("text-sm font-semibold transition-colors",e===m.APARTMENT?"text-primary":"text-foreground"),children:"Apartment"})]})]}),i&&r.jsx("p",{className:"text-sm text-danger mt-2",children:i})]})}function $({form:e,disabled:s}){return r.jsxs("div",{children:[r.jsx(R,{stepNumber:1,label:"Enter ZIP Code",isComplete:e.isAddressVerified,badge:e.isAddressVerified&&r.jsxs("span",{className:"text-xs text-success font-medium ml-auto flex items-center gap-1",children:[r.jsx(O,{className:"w-3 h-3"}),"Verified"]})}),r.jsx(_,{value:e.address.postcode,onChange:e.handlers.handleZipChange,onAddressFound:e.handlers.handleAddressFound,onLookupComplete:e.handlers.handleLookupComplete,error:e.getError("postcode"),required:!0,disabled:s,autoFocus:!0})]})}function K({form:e,disabled:s,onBlur:t}){const i=V(e.address.streetAddress),c=e.address.streetAddress.trim(),l=c?i?void 0:"Valid format":"Enter chome-banchi-go (e.g., 1-5-3)";return r.jsxs("div",{children:[r.jsx(R,{stepNumber:2,label:"Street Address",isComplete:w(e.address.streetAddress)}),r.jsx(E,{label:"",error:e.getError("streetAddress")||c&&i,required:!0,helperText:l,children:r.jsx(S,{ref:e.streetAddressRef,value:e.address.streetAddress,onChange:p=>e.handlers.handleStreetAddressChange(p.target.value),onBlur:()=>t==null?void 0:t("streetAddress"),placeholder:"1-5-3",disabled:s,className:"font-mono text-lg tracking-wider","data-field":"address.streetAddress"})})]})}function Q({form:e,disabled:s,onBlur:t}){return r.jsxs("div",{className:"space-y-4",children:[r.jsx(R,{stepNumber:4,label:"Building Details",isComplete:e.showSuccess}),r.jsx(E,{label:"Building Name",error:e.getError("buildingName"),required:!0,helperText:e.isApartment?"e.g., Sunshine Mansion (サンシャインマンション)":"e.g., Tanaka Residence (田中邸)",children:r.jsx(S,{value:e.address.buildingName??"",onChange:i=>e.handlers.handleBuildingNameChange(i.target.value),onBlur:()=>t==null?void 0:t("buildingName"),placeholder:e.isApartment?"Sunshine Mansion":"Tanaka Residence",disabled:s,maxLength:P.BUILDING_NAME_MAX,"data-field":"address.buildingName"})}),e.isApartment&&r.jsx(E,{label:"Room Number",error:e.getError("roomNumber"),required:!0,helperText:"Required for apartments (部屋番号)",children:r.jsx(S,{value:e.address.roomNumber??"",onChange:i=>e.handlers.handleRoomNumberChange(i.target.value),onBlur:()=>t==null?void 0:t("roomNumber"),placeholder:"201",disabled:s,maxLength:P.ROOM_NUMBER_MAX,className:"font-mono","data-field":"address.roomNumber"})})]})}function ee(){return r.jsx("div",{className:"rounded-xl bg-gradient-to-br from-success/10 via-success/5 to-transparent border border-success/20 p-4",children:r.jsxs("div",{className:"flex items-center gap-3",children:[r.jsx("div",{className:"w-10 h-10 rounded-full bg-success/20 flex items-center justify-center",children:r.jsx(D,{className:"w-5 h-5 text-success"})}),r.jsxs("div",{children:[r.jsx("p",{className:"text-sm font-semibold text-foreground",children:"Address Complete"}),r.jsx("p",{className:"text-xs text-muted-foreground",children:"All address fields have been filled"})]})]})})}function re({initialValues:e,onChange:s,errors:t={},touched:i={},onBlur:c,disabled:l=!1,className:p,completionContent:u}){const n=X({initialValues:e,onChange:s,errors:t,touched:i});return r.jsxs("div",{className:h("space-y-6",p),children:[r.jsx(M,{currentStep:n.completion.currentStep,totalSteps:z}),r.jsx($,{form:n,disabled:l}),r.jsx(N,{show:n.isAddressVerified,children:r.jsx(B,{address:n.address,isVerified:n.isAddressVerified})}),r.jsx(N,{show:n.isAddressVerified,delay:100,children:r.jsx(K,{form:n,disabled:l,onBlur:c})}),r.jsx(N,{show:n.isAddressVerified&&w(n.address.streetAddress),delay:150,children:r.jsxs("div",{children:[r.jsx(R,{stepNumber:3,label:"Residence Type",isComplete:n.completion.hasResidenceType}),r.jsx(G,{value:n.address.residenceType,onChange:n.handlers.handleResidenceTypeChange,disabled:l,error:n.completion.hasResidenceType?void 0:n.getError("residenceType")})]})}),r.jsx(N,{show:n.isAddressVerified&&n.completion.hasResidenceType,delay:200,children:r.jsx(Q,{form:n,disabled:l,onBlur:c})}),r.jsx(N,{show:n.showSuccess,delay:250,children:u??r.jsx(ee,{})})]})}re.__docgenInfo={description:"",methods:[],displayName:"JapanAddressForm",props:{initialValues:{required:!1,tsType:{name:"union",raw:"Partial | undefined",elements:[{name:"Partial",elements:[{name:"intersection",raw:`Omit & { + residenceType?: ResidenceType | undefined; +}`,elements:[{name:"Omit",elements:[{name:"z.infer",elements:[{name:"bilingualAddressSchema"}],raw:"z.infer"},{name:"literal",value:'"residenceType"'}],raw:'Omit'},{name:"signature",type:"object",raw:`{ + residenceType?: ResidenceType | undefined; +}`,signature:{properties:[{key:"residenceType",value:{name:"union",raw:"ResidenceType | undefined",elements:[{name:"unknown[union]",raw:"(typeof RESIDENCE_TYPE)[keyof typeof RESIDENCE_TYPE]"},{name:"undefined"}],required:!1}}]}}]}],raw:"Partial"},{name:"undefined"}]},description:"Initial address values"},onChange:{required:!1,tsType:{name:"union",raw:"((address: JapanAddressFormData, isComplete: boolean) => void) | undefined",elements:[{name:"unknown"},{name:"undefined"}]},description:"Called when any address field changes"},errors:{required:!1,tsType:{name:"union",raw:"Partial> | undefined",elements:[{name:"Partial",elements:[{name:"Record",elements:[{name:"z.infer",elements:[{name:"bilingualAddressSchema"}],raw:"z.infer"},{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}]}],raw:"Record"}],raw:"Partial>"},{name:"undefined"}]},description:"Field-level errors (keyed by field name)",defaultValue:{value:"{}",computed:!1}},touched:{required:!1,tsType:{name:"union",raw:"Partial> | undefined",elements:[{name:"Partial",elements:[{name:"Record",elements:[{name:"z.infer",elements:[{name:"bilingualAddressSchema"}],raw:"z.infer"},{name:"union",raw:"boolean | undefined",elements:[{name:"boolean"},{name:"undefined"}]}],raw:"Record"}],raw:"Partial>"},{name:"undefined"}]},description:"Fields that have been touched",defaultValue:{value:"{}",computed:!1}},onBlur:{required:!1,tsType:{name:"union",raw:"((field: keyof JapanAddressFormData) => void) | undefined",elements:[{name:"unknown"},{name:"undefined"}]},description:"Mark a field as touched"},disabled:{required:!1,tsType:{name:"union",raw:"boolean | undefined",elements:[{name:"boolean"},{name:"undefined"}]},description:"Whether the form is disabled",defaultValue:{value:"false",computed:!1}},className:{required:!1,tsType:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}]},description:"Custom class name for container"},completionContent:{required:!1,tsType:{name:"union",raw:"React.ReactNode | undefined",elements:[{name:"ReactReactNode",raw:"React.ReactNode"},{name:"undefined"}]},description:"Custom content to render when address is complete (replaces default success message)"}}};export{re as J,m as R}; diff --git a/apps/portal/public/storybook/assets/JapanAddressForm.stories-CoHhyGL3.js b/apps/portal/public/storybook/assets/JapanAddressForm.stories-CoHhyGL3.js new file mode 100644 index 00000000..24cbd2cd --- /dev/null +++ b/apps/portal/public/storybook/assets/JapanAddressForm.stories-CoHhyGL3.js @@ -0,0 +1,62 @@ +import{j as C}from"./jsx-runtime-D_zvdyIk.js";import{J as S}from"./JapanAddressForm-CUdYD2hV.js";import"./button-C8_cybvS.js";import"./index-JhL3uwfD.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./spinner-mU4XywER.js";import"./input-BbGJiz0K.js";import"./password-input-D4khGh8v.js";import"./createLucideIcon-CctB0W3q.js";import"./checkbox-DahUyQbt.js";import"./label-C25VH7yk.js";import"./error-message-DeFFz6H_.js";import"./ExclamationCircleIcon-jFfW0Ax_.js";import"./status-pill-wWp9xkwA.js";import"./badge-BdMsasyi.js";import"./loading-overlay-DMJTiFny.js";import"./error-state-BSicqqE6.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./ArrowPathIcon-CZjG6RfV.js";import"./empty-state-DRUGJ9ip.js";import"./PlusIcon-DGufmf06.js";import"./inline-toast-DQJ-O9wc.js";import"./index-CNXKWNLp.js";import"./proxy-ZkTvaR74.js";import"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import"./logo-f0fprTjz.js";import"./next-image-69WeRggt.js";import"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./Squares2X2Icon-BMQM_Wy1.js";import"./animated-container-DyAZ9gmw.js";import"./FormField-C0UylACv.js";import"./ZipCodeInput-C0pEKKnJ.js";import"./countries-CY6LSu2r.js";import"./useQuery-tNNTAmfW.js";import"./QueryClientProvider-D7wSf7Op.js";import"./schema-Cvvg7S_W.js";import"./text-CXa-DJQz.js";import"./circle-check-big-Bab09Iah.js";import"./search-DSeV2urL.js";import"./AnimatedSection-CccjFZBU.js";import"./ProgressIndicator-zQZ52Xi8.js";import"./BilingualValue-B84DkgyY.js";import"./sparkles-q054t7ye.js";import"./map-pin-Bm-ztWPO.js";import"./chevron-right-C40ybnlz.js";import"./house-pESumjO8.js";import"./building-2-C7pcwIk2.js";const ve={title:"Features/Address/JapanAddressForm",component:S,parameters:{layout:"padded",docs:{description:{component:`JapanAddressForm uses useJapanAddressForm internally. +Stories provide initial values; interactive behavior depends on the hook +being functional in the Storybook environment.`}}}},r={args:{onChange:()=>{},disabled:!1}},e={args:{initialValues:{postcode:"160-0023",prefecture:"Tokyo",prefectureJa:"東京都",city:"Shinjuku-ku",cityJa:"新宿区",town:"Nishi-Shinjuku",townJa:"西新宿",streetAddress:"1-5-3",buildingName:"Sunshine Mansion",roomNumber:"201",residenceType:"apartment"},onChange:()=>{},disabled:!1}},o={args:{initialValues:{postcode:"",prefecture:"",prefectureJa:"",city:"",cityJa:"",town:"",townJa:"",streetAddress:"",buildingName:"",roomNumber:"",residenceType:void 0},errors:{postcode:"Postal code is required"},touched:{postcode:!0},onChange:()=>{},disabled:!1}},t={args:{...e.args,disabled:!0}},s={args:{...e.args,completionContent:C.jsx("div",{className:"rounded-xl bg-blue-50 border border-blue-200 p-4 text-blue-800 text-sm",children:"Custom completion message: Your address has been saved."})}};var i,n,a;r.parameters={...r.parameters,docs:{...(i=r.parameters)==null?void 0:i.docs,source:{originalSource:`{ + args: { + onChange: () => {}, + disabled: false + } +}`,...(a=(n=r.parameters)==null?void 0:n.docs)==null?void 0:a.source}}};var p,m,d;e.parameters={...e.parameters,docs:{...(p=e.parameters)==null?void 0:p.docs,source:{originalSource:`{ + args: { + initialValues: { + postcode: "160-0023", + prefecture: "Tokyo", + prefectureJa: "東京都", + city: "Shinjuku-ku", + cityJa: "新宿区", + town: "Nishi-Shinjuku", + townJa: "西新宿", + streetAddress: "1-5-3", + buildingName: "Sunshine Mansion", + roomNumber: "201", + residenceType: "apartment" as const + }, + onChange: () => {}, + disabled: false + } +}`,...(d=(m=e.parameters)==null?void 0:m.docs)==null?void 0:d.source}}};var c,u,l;o.parameters={...o.parameters,docs:{...(c=o.parameters)==null?void 0:c.docs,source:{originalSource:`{ + args: { + initialValues: { + postcode: "", + prefecture: "", + prefectureJa: "", + city: "", + cityJa: "", + town: "", + townJa: "", + streetAddress: "", + buildingName: "", + roomNumber: "", + residenceType: undefined + }, + errors: { + postcode: "Postal code is required" + }, + touched: { + postcode: true + }, + onChange: () => {}, + disabled: false + } +}`,...(l=(u=o.parameters)==null?void 0:u.docs)==null?void 0:l.source}}};var b,g,h;t.parameters={...t.parameters,docs:{...(b=t.parameters)==null?void 0:b.docs,source:{originalSource:`{ + args: { + ...WithInitialValues.args, + disabled: true + } +}`,...(h=(g=t.parameters)==null?void 0:g.docs)==null?void 0:h.source}}};var f,y,J;s.parameters={...s.parameters,docs:{...(f=s.parameters)==null?void 0:f.docs,source:{originalSource:`{ + args: { + ...WithInitialValues.args, + completionContent:
+ Custom completion message: Your address has been saved. +
+ } +}`,...(J=(y=s.parameters)==null?void 0:y.docs)==null?void 0:J.source}}};const xe=["Empty","WithInitialValues","WithErrors","Disabled","WithCustomCompletion"];export{t as Disabled,r as Empty,s as WithCustomCompletion,o as WithErrors,e as WithInitialValues,xe as __namedExportsOrder,ve as default}; diff --git a/apps/portal/public/storybook/assets/LoadingSkeleton-D14suK9p.js b/apps/portal/public/storybook/assets/LoadingSkeleton-D14suK9p.js new file mode 100644 index 00000000..f2482ce0 --- /dev/null +++ b/apps/portal/public/storybook/assets/LoadingSkeleton-D14suK9p.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{P as d}from"./PageLayout-CxVUl3Jy.js";import{F as a}from"./DevicePhoneMobileIcon-SMwjWf6M.js";function r(){return e.jsx(d,{title:"Configure SIM",icon:e.jsx(a,{className:"h-6 w-6"}),children:e.jsxs("div",{className:"max-w-4xl mx-auto space-y-8",children:[e.jsx("div",{className:"bg-card rounded-xl border border-border p-6 shadow-[var(--cp-shadow-1)]",children:e.jsxs("div",{className:"flex justify-between items-start",children:[e.jsxs("div",{className:"space-y-3",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("div",{className:"h-5 w-5 bg-accent rounded"}),e.jsx("div",{className:"h-5 w-48 bg-muted rounded"}),e.jsx("div",{className:"h-5 w-24 bg-success-soft rounded-full"})]}),e.jsxs("div",{className:"flex items-center gap-4",children:[e.jsx("div",{className:"h-4 w-24 bg-muted rounded"}),e.jsx("div",{className:"h-4 w-28 bg-muted rounded"})]})]}),e.jsxs("div",{className:"text-right space-y-2",children:[e.jsx("div",{className:"h-7 w-24 bg-accent rounded"}),e.jsx("div",{className:"h-4 w-28 bg-success-soft rounded"})]})]})}),e.jsx("div",{className:"flex items-center justify-between max-w-2xl mx-auto",children:Array.from({length:4}).map((c,s)=>e.jsxs("div",{className:"flex-1 flex items-center",children:[e.jsx("div",{className:"h-3 w-3 rounded-full bg-border"}),s<3&&e.jsx("div",{className:"h-1 flex-1 bg-border mx-2 rounded"})]},s))}),e.jsxs("div",{className:"bg-card rounded-xl border border-border p-8 shadow-[var(--cp-shadow-1)]",children:[e.jsxs("div",{className:"mb-6",children:[e.jsx("div",{className:"h-5 w-48 bg-muted rounded mb-2"}),e.jsx("div",{className:"h-4 w-72 bg-muted rounded"})]}),e.jsx("div",{className:"h-10 w-full bg-muted rounded mb-4"}),e.jsx("div",{className:"h-10 w-72 bg-muted rounded ml-auto"})]})]})})}r.__docgenInfo={description:"",methods:[],displayName:"LoadingSkeleton"};export{r as L}; diff --git a/apps/portal/public/storybook/assets/LoadingSkeleton.stories-pVMJG_-P.js b/apps/portal/public/storybook/assets/LoadingSkeleton.stories-pVMJG_-P.js new file mode 100644 index 00000000..13d5c2ba --- /dev/null +++ b/apps/portal/public/storybook/assets/LoadingSkeleton.stories-pVMJG_-P.js @@ -0,0 +1 @@ +import{L as p}from"./LoadingSkeleton-D14suK9p.js";import"./jsx-runtime-D_zvdyIk.js";import"./PageLayout-CxVUl3Jy.js";import"./next-link-BmD4fPSy.js";import"./index-JhL3uwfD.js";import"./skeleton-ISCbfaf8.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./loading-card-BIOTKPal.js";import"./button-C8_cybvS.js";import"./index-DXhM58Yq.js";import"./spinner-mU4XywER.js";import"./input-BbGJiz0K.js";import"./password-input-D4khGh8v.js";import"./createLucideIcon-CctB0W3q.js";import"./checkbox-DahUyQbt.js";import"./label-C25VH7yk.js";import"./error-message-DeFFz6H_.js";import"./ExclamationCircleIcon-jFfW0Ax_.js";import"./status-pill-wWp9xkwA.js";import"./badge-BdMsasyi.js";import"./loading-overlay-DMJTiFny.js";import"./error-state-BSicqqE6.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./ArrowPathIcon-CZjG6RfV.js";import"./empty-state-DRUGJ9ip.js";import"./PlusIcon-DGufmf06.js";import"./inline-toast-DQJ-O9wc.js";import"./index-CNXKWNLp.js";import"./proxy-ZkTvaR74.js";import"./logo-f0fprTjz.js";import"./next-image-69WeRggt.js";import"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./Squares2X2Icon-BMQM_Wy1.js";import"./animated-container-DyAZ9gmw.js";import"./ArrowLeftIcon-Cw1eswTb.js";import"./DevicePhoneMobileIcon-SMwjWf6M.js";const T={title:"Features/Services/SIM/Configure/LoadingSkeleton",component:p,parameters:{layout:"fullscreen"}},r={};var o,t,m;r.parameters={...r.parameters,docs:{...(o=r.parameters)==null?void 0:o.docs,source:{originalSource:"{}",...(m=(t=r.parameters)==null?void 0:t.docs)==null?void 0:m.source}}};const U=["Default"];export{r as Default,U as __namedExportsOrder,T as default}; diff --git a/apps/portal/public/storybook/assets/LoadingSkeletons.stories-CTSadyqV.js b/apps/portal/public/storybook/assets/LoadingSkeletons.stories-CTSadyqV.js new file mode 100644 index 00000000..3bacdaec --- /dev/null +++ b/apps/portal/public/storybook/assets/LoadingSkeletons.stories-CTSadyqV.js @@ -0,0 +1,22 @@ +import{j as r}from"./jsx-runtime-D_zvdyIk.js";import{L as m,a as f,b as M}from"./loading-card-BIOTKPal.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./button-C8_cybvS.js";import"./index-JhL3uwfD.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./spinner-mU4XywER.js";import"./input-BbGJiz0K.js";import"./password-input-D4khGh8v.js";import"./createLucideIcon-CctB0W3q.js";import"./checkbox-DahUyQbt.js";import"./label-C25VH7yk.js";import"./error-message-DeFFz6H_.js";import"./ExclamationCircleIcon-jFfW0Ax_.js";import"./status-pill-wWp9xkwA.js";import"./badge-BdMsasyi.js";import"./loading-overlay-DMJTiFny.js";import"./error-state-BSicqqE6.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./ArrowPathIcon-CZjG6RfV.js";import"./empty-state-DRUGJ9ip.js";import"./PlusIcon-DGufmf06.js";import"./inline-toast-DQJ-O9wc.js";import"./index-CNXKWNLp.js";import"./proxy-ZkTvaR74.js";import"./skeleton-ISCbfaf8.js";import"./logo-f0fprTjz.js";import"./next-image-69WeRggt.js";import"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./Squares2X2Icon-BMQM_Wy1.js";import"./animated-container-DyAZ9gmw.js";const cr={title:"Molecules/LoadingSkeletons",parameters:{layout:"padded"}},e={render:()=>r.jsx("div",{className:"w-[400px]",children:r.jsx(m,{})})},a={render:()=>r.jsxs("div",{className:"grid grid-cols-2 gap-4 w-[600px]",children:[r.jsx(m,{}),r.jsx(m,{})]})},o={render:()=>r.jsx("div",{className:"w-[700px]",children:r.jsx(M,{rows:5,columns:4})})},s={render:()=>r.jsx("div",{className:"w-[500px]",children:r.jsx(M,{rows:3,columns:3})})},t={render:()=>r.jsx(f,{count:4})},i={render:()=>r.jsx(f,{count:3})};var p,d,n;e.parameters={...e.parameters,docs:{...(p=e.parameters)==null?void 0:p.docs,source:{originalSource:`{ + render: () =>
+ +
+}`,...(n=(d=e.parameters)==null?void 0:d.docs)==null?void 0:n.source}}};var c,l,u;a.parameters={...a.parameters,docs:{...(c=a.parameters)==null?void 0:c.docs,source:{originalSource:`{ + render: () =>
+ + +
+}`,...(u=(l=a.parameters)==null?void 0:l.docs)==null?void 0:u.source}}};var g,x,S;o.parameters={...o.parameters,docs:{...(g=o.parameters)==null?void 0:g.docs,source:{originalSource:`{ + render: () =>
+ +
+}`,...(S=(x=o.parameters)==null?void 0:x.docs)==null?void 0:S.source}}};var j,v,w;s.parameters={...s.parameters,docs:{...(j=s.parameters)==null?void 0:j.docs,source:{originalSource:`{ + render: () =>
+ +
+}`,...(w=(v=s.parameters)==null?void 0:v.docs)==null?void 0:w.source}}};var L,T,b;t.parameters={...t.parameters,docs:{...(L=t.parameters)==null?void 0:L.docs,source:{originalSource:`{ + render: () => +}`,...(b=(T=t.parameters)==null?void 0:T.docs)==null?void 0:b.source}}};var C,N,h;i.parameters={...i.parameters,docs:{...(C=i.parameters)==null?void 0:C.docs,source:{originalSource:`{ + render: () => +}`,...(h=(N=i.parameters)==null?void 0:N.docs)==null?void 0:h.source}}};const lr=["Card","MultipleCards","Table","TableSmall","Stats","StatsThree"];export{e as Card,a as MultipleCards,t as Stats,i as StatsThree,o as Table,s as TableSmall,lr as __namedExportsOrder,cr as default}; diff --git a/apps/portal/public/storybook/assets/MarketingCheckbox-x7nAFt-_.js b/apps/portal/public/storybook/assets/MarketingCheckbox-x7nAFt-_.js new file mode 100644 index 00000000..598b60e9 --- /dev/null +++ b/apps/portal/public/storybook/assets/MarketingCheckbox-x7nAFt-_.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{C as n}from"./checkbox-DahUyQbt.js";import"./button-C8_cybvS.js";import"./input-BbGJiz0K.js";import"./password-input-D4khGh8v.js";import{L as m}from"./label-C25VH7yk.js";import"./error-message-DeFFz6H_.js";import"./status-pill-wWp9xkwA.js";import"./badge-BdMsasyi.js";import"./spinner-mU4XywER.js";import"./loading-overlay-DMJTiFny.js";import"./error-state-BSicqqE6.js";import"./empty-state-DRUGJ9ip.js";import"./inline-toast-DQJ-O9wc.js";import"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import"./logo-f0fprTjz.js";import"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./animated-container-DyAZ9gmw.js";function a({checked:t,onChange:o,disabled:r}){return e.jsxs("div",{className:"flex items-start gap-2",children:[e.jsx(n,{id:"marketingConsent",checked:t,onChange:i=>o(i.target.checked),disabled:r}),e.jsx(m,{htmlFor:"marketingConsent",className:"text-sm font-normal leading-tight cursor-pointer",children:"I would like to receive marketing emails and updates"})]})}a.__docgenInfo={description:"",methods:[],displayName:"MarketingCheckbox",props:{checked:{required:!0,tsType:{name:"boolean"},description:""},onChange:{required:!0,tsType:{name:"signature",type:"function",raw:"(checked: boolean) => void",signature:{arguments:[{type:{name:"boolean"},name:"checked"}],return:{name:"void"}}},description:""},disabled:{required:!1,tsType:{name:"union",raw:"boolean | undefined",elements:[{name:"boolean"},{name:"undefined"}]},description:""}}};export{a as M}; diff --git a/apps/portal/public/storybook/assets/MarketingCheckbox.stories-CqDvHF_f.js b/apps/portal/public/storybook/assets/MarketingCheckbox.stories-CqDvHF_f.js new file mode 100644 index 00000000..3000ba49 --- /dev/null +++ b/apps/portal/public/storybook/assets/MarketingCheckbox.stories-CqDvHF_f.js @@ -0,0 +1,17 @@ +import{M as h}from"./MarketingCheckbox-x7nAFt-_.js";import"./jsx-runtime-D_zvdyIk.js";import"./checkbox-DahUyQbt.js";import"./index-JhL3uwfD.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./button-C8_cybvS.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./spinner-mU4XywER.js";import"./input-BbGJiz0K.js";import"./password-input-D4khGh8v.js";import"./createLucideIcon-CctB0W3q.js";import"./label-C25VH7yk.js";import"./error-message-DeFFz6H_.js";import"./ExclamationCircleIcon-jFfW0Ax_.js";import"./status-pill-wWp9xkwA.js";import"./badge-BdMsasyi.js";import"./loading-overlay-DMJTiFny.js";import"./error-state-BSicqqE6.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./ArrowPathIcon-CZjG6RfV.js";import"./empty-state-DRUGJ9ip.js";import"./PlusIcon-DGufmf06.js";import"./inline-toast-DQJ-O9wc.js";import"./index-CNXKWNLp.js";import"./proxy-ZkTvaR74.js";import"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import"./logo-f0fprTjz.js";import"./next-image-69WeRggt.js";import"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./Squares2X2Icon-BMQM_Wy1.js";import"./animated-container-DyAZ9gmw.js";const Y={title:"Features/Auth/MarketingCheckbox",component:h,parameters:{layout:"centered"}},r={args:{checked:!1,onChange:()=>{}}},e={args:{checked:!0,onChange:()=>{}}},o={args:{checked:!1,onChange:()=>{},disabled:!0}};var t,a,m;r.parameters={...r.parameters,docs:{...(t=r.parameters)==null?void 0:t.docs,source:{originalSource:`{ + args: { + checked: false, + onChange: () => {} + } +}`,...(m=(a=r.parameters)==null?void 0:a.docs)==null?void 0:m.source}}};var p,i,s;e.parameters={...e.parameters,docs:{...(p=e.parameters)==null?void 0:p.docs,source:{originalSource:`{ + args: { + checked: true, + onChange: () => {} + } +}`,...(s=(i=e.parameters)==null?void 0:i.docs)==null?void 0:s.source}}};var c,n,d;o.parameters={...o.parameters,docs:{...(c=o.parameters)==null?void 0:c.docs,source:{originalSource:`{ + args: { + checked: false, + onChange: () => {}, + disabled: true + } +}`,...(d=(n=o.parameters)==null?void 0:n.docs)==null?void 0:d.source}}};const Z=["Unchecked","Checked","Disabled"];export{e as Checked,o as Disabled,r as Unchecked,Z as __namedExportsOrder,Y as default}; diff --git a/apps/portal/public/storybook/assets/MetricCard-BR1xVIXz.js b/apps/portal/public/storybook/assets/MetricCard-BR1xVIXz.js new file mode 100644 index 00000000..ccbb488d --- /dev/null +++ b/apps/portal/public/storybook/assets/MetricCard-BR1xVIXz.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{c as t}from"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";const c={primary:{icon:"text-primary bg-primary/10",accent:"text-primary"},success:{icon:"text-success bg-success/10",accent:"text-success"},warning:{icon:"text-warning bg-warning/10",accent:"text-warning"},danger:{icon:"text-danger bg-danger/10",accent:"text-danger"},info:{icon:"text-info bg-info/10",accent:"text-info"},neutral:{icon:"text-muted-foreground bg-muted",accent:"text-muted-foreground"}};function m({icon:r,label:n,value:i,subtitle:a,tone:d="primary",trend:s,className:o}){const l=c[d];return e.jsxs("div",{className:t("flex items-start gap-3.5 p-4 rounded-xl bg-card border border-border/60","transition-all duration-200 hover:border-border hover:shadow-[var(--cp-shadow-1)]",o),children:[r&&e.jsx("div",{className:t("flex-shrink-0 h-10 w-10 rounded-lg flex items-center justify-center",l.icon),children:r}),e.jsxs("div",{className:"min-w-0 flex-1",children:[e.jsx("p",{className:"text-xs font-medium text-muted-foreground",children:n}),e.jsxs("div",{className:"flex items-baseline gap-2 mt-0.5",children:[e.jsx("p",{className:"text-2xl font-bold text-foreground tabular-nums font-heading tracking-tight",children:i}),s&&e.jsx("span",{className:t("text-xs font-medium",s.positive?"text-success":"text-danger"),children:s.value})]}),a&&e.jsx("p",{className:"text-xs text-muted-foreground mt-0.5",children:a})]})]})}function u({className:r}){return e.jsxs("div",{className:t("flex items-start gap-3.5 p-4 rounded-xl bg-card border border-border/60",r),children:[e.jsx("div",{className:"flex-shrink-0 h-10 w-10 rounded-lg cp-skeleton-shimmer"}),e.jsxs("div",{className:"min-w-0 flex-1 space-y-2",children:[e.jsx("div",{className:"h-3 cp-skeleton-shimmer rounded w-16"}),e.jsx("div",{className:"h-7 cp-skeleton-shimmer rounded w-12"})]})]})}m.__docgenInfo={description:"",methods:[],displayName:"MetricCard",props:{icon:{required:!1,tsType:{name:"ReactNode"},description:""},label:{required:!0,tsType:{name:"string"},description:""},value:{required:!0,tsType:{name:"union",raw:"string | number",elements:[{name:"string"},{name:"number"}]},description:""},subtitle:{required:!1,tsType:{name:"string"},description:""},tone:{required:!1,tsType:{name:"union",raw:'"primary" | "success" | "warning" | "danger" | "info" | "neutral"',elements:[{name:"literal",value:'"primary"'},{name:"literal",value:'"success"'},{name:"literal",value:'"warning"'},{name:"literal",value:'"danger"'},{name:"literal",value:'"info"'},{name:"literal",value:'"neutral"'}]},description:"",defaultValue:{value:'"primary"',computed:!1}},trend:{required:!1,tsType:{name:"signature",type:"object",raw:"{ value: string; positive?: boolean }",signature:{properties:[{key:"value",value:{name:"string",required:!0}},{key:"positive",value:{name:"boolean",required:!1}}]}},description:""},className:{required:!1,tsType:{name:"string"},description:""}}};u.__docgenInfo={description:"",methods:[],displayName:"MetricCardSkeleton",props:{className:{required:!1,tsType:{name:"string"},description:""}}};export{m as M,u as a}; diff --git a/apps/portal/public/storybook/assets/MetricCard.stories-CyBIfbtz.js b/apps/portal/public/storybook/assets/MetricCard.stories-CyBIfbtz.js new file mode 100644 index 00000000..01e7fa34 --- /dev/null +++ b/apps/portal/public/storybook/assets/MetricCard.stories-CyBIfbtz.js @@ -0,0 +1,37 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{M as r,a as t}from"./MetricCard-BR1xVIXz.js";import{F as f}from"./CurrencyYenIcon-Bf5bmWZc.js";import{F as j}from"./UsersIcon-DB1YN4Bz.js";import{F as N}from"./DocumentTextIcon-Dk_xQMYi.js";import{F as M}from"./WifiIcon-BRIpHl8i.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./index-JhL3uwfD.js";const A={title:"Molecules/MetricCard",component:r,argTypes:{tone:{control:"select",options:["primary","success","warning","danger","info","neutral"]}}},a={args:{icon:e.jsx(f,{className:"h-5 w-5"}),label:"Total Revenue",value:"¥1,234,567",tone:"primary"}},s={args:{icon:e.jsx(j,{className:"h-5 w-5"}),label:"Active Users",value:"2,847",tone:"success",trend:{value:"+12.5%",positive:!0}}},n={render:()=>e.jsxs("div",{className:"grid grid-cols-2 gap-4 w-[600px]",children:[e.jsx(r,{icon:e.jsx(f,{className:"h-5 w-5"}),label:"Revenue",value:"¥1.2M",tone:"primary"}),e.jsx(r,{icon:e.jsx(j,{className:"h-5 w-5"}),label:"Users",value:"2,847",tone:"success",trend:{value:"+5%",positive:!0}}),e.jsx(r,{icon:e.jsx(N,{className:"h-5 w-5"}),label:"Pending",value:"23",tone:"warning"}),e.jsx(r,{icon:e.jsx(M,{className:"h-5 w-5"}),label:"Downtime",value:"2hrs",tone:"danger",trend:{value:"+0.5%",positive:!1}})]})},o={render:()=>e.jsxs("div",{className:"grid grid-cols-2 gap-4 w-[600px]",children:[e.jsx(t,{}),e.jsx(t,{})]})};var c,i,l;a.parameters={...a.parameters,docs:{...(c=a.parameters)==null?void 0:c.docs,source:{originalSource:`{ + args: { + icon: , + label: "Total Revenue", + value: "¥1,234,567", + tone: "primary" + } +}`,...(l=(i=a.parameters)==null?void 0:i.docs)==null?void 0:l.source}}};var d,m,p;s.parameters={...s.parameters,docs:{...(d=s.parameters)==null?void 0:d.docs,source:{originalSource:`{ + args: { + icon: , + label: "Active Users", + value: "2,847", + tone: "success", + trend: { + value: "+12.5%", + positive: true + } + } +}`,...(p=(m=s.parameters)==null?void 0:m.docs)==null?void 0:p.source}}};var u,v,g;n.parameters={...n.parameters,docs:{...(u=n.parameters)==null?void 0:u.docs,source:{originalSource:`{ + render: () =>
+ } label="Revenue" value="¥1.2M" tone="primary" /> + } label="Users" value="2,847" tone="success" trend={{ + value: "+5%", + positive: true + }} /> + } label="Pending" value="23" tone="warning" /> + } label="Downtime" value="2hrs" tone="danger" trend={{ + value: "+0.5%", + positive: false + }} /> +
+}`,...(g=(v=n.parameters)==null?void 0:v.docs)==null?void 0:g.source}}};var w,x,h;o.parameters={...o.parameters,docs:{...(w=o.parameters)==null?void 0:w.docs,source:{originalSource:`{ + render: () =>
+ + +
+}`,...(h=(x=o.parameters)==null?void 0:x.docs)==null?void 0:h.source}}};const W=["Default","WithTrend","AllTones","LoadingSkeleton"];export{n as AllTones,a as Default,o as LoadingSkeleton,s as WithTrend,W as __namedExportsOrder,A as default}; diff --git a/apps/portal/public/storybook/assets/MnpForm-j5Hck9cV.js b/apps/portal/public/storybook/assets/MnpForm-j5Hck9cV.js new file mode 100644 index 00000000..240e84fc --- /dev/null +++ b/apps/portal/public/storybook/assets/MnpForm-j5Hck9cV.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";const m="w-full px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-blue-500",c="block text-sm font-medium text-gray-700 mb-1";function d({id:n,label:a,value:t,onChange:r,error:s,type:i="text",placeholder:o}){return e.jsxs("div",{children:[e.jsx("label",{htmlFor:n,className:c,children:a}),e.jsx("input",{type:i,id:n,value:t,onChange:l=>r(l.target.value),className:m,placeholder:o}),s&&e.jsx("p",{className:"text-red-600 text-sm mt-1",children:s})]})}const p=[{field:"reservationNumber",label:"MNP Reservation Number *",placeholder:"10-digit reservation number",hasError:!0},{field:"expiryDate",label:"Reservation Expiry Date *",type:"date",hasError:!0},{field:"phoneNumber",label:"Current Phone Number *",type:"tel",placeholder:"090-1234-5678",hasError:!0},{field:"mvnoAccountNumber",label:"Account Number",placeholder:"Your current carrier account number"},{field:"portingLastName",label:"Last Name *",placeholder:"Tanaka",hasError:!0},{field:"portingFirstName",label:"First Name *",placeholder:"Taro",hasError:!0},{field:"portingLastNameKatakana",label:"Last Name (Katakana) *",placeholder:"タナカ",hasError:!0},{field:"portingFirstNameKatakana",label:"First Name (Katakana) *",placeholder:"タロウ",hasError:!0}];function h({value:n,onChange:a,error:t}){return e.jsxs("div",{children:[e.jsx("label",{htmlFor:"portingGender",className:c,children:"Gender *"}),e.jsxs("select",{id:"portingGender",value:n,onChange:r=>a(r.target.value),className:m,children:[e.jsx("option",{value:"",children:"Select gender"}),e.jsx("option",{value:"Male",children:"Male"}),e.jsx("option",{value:"Female",children:"Female"}),e.jsx("option",{value:"Corporate/Other",children:"Corporate/Other"})]}),t&&e.jsx("p",{className:"text-red-600 text-sm mt-1",children:t})]})}function g({mnpData:n,onInputChange:a,errors:t}){return e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4",children:[p.map(({field:r,label:s,type:i,placeholder:o,hasError:l})=>e.jsx(d,{id:r,label:s,value:n[r]??"",onChange:u=>a(r,u),error:l?t[r]:void 0,type:i,placeholder:o},r)),e.jsx(h,{value:n.portingGender??"",onChange:r=>a("portingGender",r),error:t.portingGender}),e.jsx(d,{id:"portingDateOfBirth",label:"Date of Birth *",value:n.portingDateOfBirth??"",onChange:r=>a("portingDateOfBirth",r),error:t.portingDateOfBirth,type:"date"})]})}function x({wantsMnp:n,onWantsMnpChange:a,mnpData:t,onMnpDataChange:r,errors:s}){const i=(o,l)=>{r({...t,[o]:l})};return e.jsxs("div",{children:[e.jsx("div",{className:"mb-4",children:e.jsxs("label",{className:"flex items-start gap-3",children:[e.jsx("input",{type:"checkbox",checked:n,onChange:o=>a(o.target.checked),className:"mt-1 h-4 w-4 text-blue-600 border-gray-300 rounded focus:ring-blue-500"}),e.jsxs("div",{children:[e.jsx("span",{className:"font-medium text-gray-900",children:"I want to keep my current phone number (MNP - Mobile Number Portability)"}),e.jsx("p",{className:"text-sm text-gray-600 mt-1",children:"Transfer your existing phone number from your current carrier to this new SIM card. Additional fees may apply."})]})]})}),n&&e.jsxs("div",{className:"mt-6 p-6 bg-blue-50 rounded-lg border border-blue-200",children:[e.jsx("h4",{className:"font-medium text-blue-900 mb-4",children:"Number Porting Information"}),e.jsx("p",{className:"text-sm text-blue-800 mb-4",children:"Please provide the following information from your current mobile carrier to complete the number porting process."}),e.jsx(g,{mnpData:t,onInputChange:i,errors:s}),e.jsx("div",{className:"mt-4 p-3 bg-yellow-50 border border-yellow-200 rounded-md",children:e.jsxs("p",{className:"text-sm text-yellow-800",children:[e.jsx("strong",{children:"Important:"})," Please ensure all information matches exactly with your current carrier records. Incorrect information may delay the porting process."]})})]})]})}x.__docgenInfo={description:"",methods:[],displayName:"MnpForm",props:{wantsMnp:{required:!0,tsType:{name:"boolean"},description:""},onWantsMnpChange:{required:!0,tsType:{name:"signature",type:"function",raw:"(wants: boolean) => void",signature:{arguments:[{type:{name:"boolean"},name:"wants"}],return:{name:"void"}}},description:""},mnpData:{required:!0,tsType:{name:"z.infer",elements:[{name:"simMnpFormSchema"}],raw:"z.infer"},description:""},onMnpDataChange:{required:!0,tsType:{name:"signature",type:"function",raw:"(data: MnpData) => void",signature:{arguments:[{type:{name:"z.infer",elements:[{name:"simMnpFormSchema"}],raw:"z.infer"},name:"data"}],return:{name:"void"}}},description:""},errors:{required:!0,tsType:{name:"Record",elements:[{name:"string"},{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}]}],raw:"Record"},description:""}}};export{x as M}; diff --git a/apps/portal/public/storybook/assets/MnpForm.stories-IRfEW44T.js b/apps/portal/public/storybook/assets/MnpForm.stories-IRfEW44T.js new file mode 100644 index 00000000..cfb98bc3 --- /dev/null +++ b/apps/portal/public/storybook/assets/MnpForm.stories-IRfEW44T.js @@ -0,0 +1,41 @@ +import{M}from"./MnpForm-j5Hck9cV.js";import"./jsx-runtime-D_zvdyIk.js";const h={title:"Features/Services/SIM/MnpForm",component:M,parameters:{layout:"centered"}},c={reservationNumber:"",expiryDate:"",phoneNumber:"",mvnoAccountNumber:"",portingLastName:"",portingFirstName:"",portingLastNameKatakana:"",portingFirstNameKatakana:"",portingGender:"",portingDateOfBirth:""},n={args:{wantsMnp:!1,onWantsMnpChange:()=>{},mnpData:c,onMnpDataChange:()=>{},errors:{}}},a={args:{wantsMnp:!0,onWantsMnpChange:()=>{},mnpData:{reservationNumber:"1234567890",expiryDate:"2026-04-01",phoneNumber:"090-1234-5678",mvnoAccountNumber:"ACC-001",portingLastName:"Tanaka",portingFirstName:"Taro",portingLastNameKatakana:"タナカ",portingFirstNameKatakana:"タロウ",portingGender:"Male",portingDateOfBirth:"1990-01-15"},onMnpDataChange:()=>{},errors:{}}},r={args:{wantsMnp:!0,onWantsMnpChange:()=>{},mnpData:c,onMnpDataChange:()=>{},errors:{reservationNumber:"Reservation number is required",phoneNumber:"Phone number is required",portingLastName:"Last name is required",portingFirstName:"First name is required"}}};var e,t,s;n.parameters={...n.parameters,docs:{...(e=n.parameters)==null?void 0:e.docs,source:{originalSource:`{ + args: { + wantsMnp: false, + onWantsMnpChange: () => {}, + mnpData: emptyMnpData, + onMnpDataChange: () => {}, + errors: {} + } +}`,...(s=(t=n.parameters)==null?void 0:t.docs)==null?void 0:s.source}}};var o,p,i;a.parameters={...a.parameters,docs:{...(o=a.parameters)==null?void 0:o.docs,source:{originalSource:`{ + args: { + wantsMnp: true, + onWantsMnpChange: () => {}, + mnpData: { + reservationNumber: "1234567890", + expiryDate: "2026-04-01", + phoneNumber: "090-1234-5678", + mvnoAccountNumber: "ACC-001", + portingLastName: "Tanaka", + portingFirstName: "Taro", + portingLastNameKatakana: "\\u30BF\\u30CA\\u30AB", + portingFirstNameKatakana: "\\u30BF\\u30ED\\u30A6", + portingGender: "Male", + portingDateOfBirth: "1990-01-15" + }, + onMnpDataChange: () => {}, + errors: {} + } +}`,...(i=(p=a.parameters)==null?void 0:p.docs)==null?void 0:i.source}}};var m,u,g;r.parameters={...r.parameters,docs:{...(m=r.parameters)==null?void 0:m.docs,source:{originalSource:`{ + args: { + wantsMnp: true, + onWantsMnpChange: () => {}, + mnpData: emptyMnpData, + onMnpDataChange: () => {}, + errors: { + reservationNumber: "Reservation number is required", + phoneNumber: "Phone number is required", + portingLastName: "Last name is required", + portingFirstName: "First name is required" + } + } +}`,...(g=(u=r.parameters)==null?void 0:u.docs)==null?void 0:g.source}}};const D=["Default","WithMnpEnabled","WithErrors"];export{n as Default,r as WithErrors,a as WithMnpEnabled,D as __namedExportsOrder,h as default}; diff --git a/apps/portal/public/storybook/assets/NewCustomerFields.stories-COzH0N4T.js b/apps/portal/public/storybook/assets/NewCustomerFields.stories-COzH0N4T.js new file mode 100644 index 00000000..6437ce4c --- /dev/null +++ b/apps/portal/public/storybook/assets/NewCustomerFields.stories-COzH0N4T.js @@ -0,0 +1,49 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{fn as a}from"./index-B9TJ7cVi.js";import"./button-C8_cybvS.js";import{I as c}from"./input-BbGJiz0K.js";import"./password-input-D4khGh8v.js";import"./checkbox-DahUyQbt.js";import{L as l}from"./label-C25VH7yk.js";import"./error-message-DeFFz6H_.js";import"./status-pill-wWp9xkwA.js";import"./badge-BdMsasyi.js";import"./spinner-mU4XywER.js";import"./loading-overlay-DMJTiFny.js";import"./error-state-BSicqqE6.js";import"./empty-state-DRUGJ9ip.js";import"./inline-toast-DQJ-O9wc.js";import"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import"./logo-f0fprTjz.js";import"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./animated-container-DyAZ9gmw.js";import"./index-JhL3uwfD.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./createLucideIcon-CctB0W3q.js";import"./ExclamationCircleIcon-jFfW0Ax_.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./ArrowPathIcon-CZjG6RfV.js";import"./PlusIcon-DGufmf06.js";import"./index-CNXKWNLp.js";import"./proxy-ZkTvaR74.js";import"./next-image-69WeRggt.js";import"./Squares2X2Icon-BMQM_Wy1.js";function S({firstName:m,lastName:E,onFirstNameChange:b,onLastNameChange:y,errors:r,clearError:p,loading:i}){return e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsxs(l,{htmlFor:"firstName",children:["First Name ",e.jsx("span",{className:"text-danger",children:"*"})]}),e.jsx(c,{id:"firstName",value:m,onChange:d=>{b(d.target.value),p("firstName")},placeholder:"Taro",disabled:i,error:r.firstName}),r.firstName&&e.jsx("p",{className:"text-sm text-danger",children:r.firstName})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsxs(l,{htmlFor:"lastName",children:["Last Name ",e.jsx("span",{className:"text-danger",children:"*"})]}),e.jsx(c,{id:"lastName",value:E,onChange:d=>{y(d.target.value),p("lastName")},placeholder:"Yamada",disabled:i,error:r.lastName}),r.lastName&&e.jsx("p",{className:"text-sm text-danger",children:r.lastName})]})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsxs(l,{children:["Address ",e.jsx("span",{className:"text-danger",children:"*"})]}),e.jsx("div",{style:{padding:"12px",border:"1px solid #e5e7eb",borderRadius:"8px",color:i?"#9ca3af":"#374151",fontSize:"14px"},children:"[Japan Address Form Placeholder]"}),r.address&&e.jsx("p",{className:"text-sm text-danger",children:r.address})]})]})}const Ne={title:"Features/GetStarted/CompleteAccount/NewCustomerFields",component:S,parameters:{layout:"centered"},decorators:[m=>e.jsx("div",{style:{maxWidth:480,width:"100%"},children:e.jsx(m,{})})]},s={args:{firstName:"",lastName:"",onFirstNameChange:a(),onLastNameChange:a(),onAddressChange:a(),errors:{},clearError:a(),loading:!1}},n={args:{firstName:"Taro",lastName:"Yamada",onFirstNameChange:a(),onLastNameChange:a(),onAddressChange:a(),errors:{},clearError:a(),loading:!1}},t={args:{firstName:"",lastName:"",onFirstNameChange:a(),onLastNameChange:a(),onAddressChange:a(),errors:{firstName:"First name is required",lastName:"Last name is required",address:"Please enter a valid address"},clearError:a(),loading:!1}},o={args:{firstName:"Taro",lastName:"Yamada",onFirstNameChange:a(),onLastNameChange:a(),onAddressChange:a(),errors:{},clearError:a(),loading:!0}};var N,g,h;s.parameters={...s.parameters,docs:{...(N=s.parameters)==null?void 0:N.docs,source:{originalSource:`{ + args: { + firstName: "", + lastName: "", + onFirstNameChange: fn(), + onLastNameChange: fn(), + onAddressChange: fn(), + errors: {}, + clearError: fn(), + loading: false + } +}`,...(h=(g=s.parameters)==null?void 0:g.docs)==null?void 0:h.source}}};var f,x,u;n.parameters={...n.parameters,docs:{...(f=n.parameters)==null?void 0:f.docs,source:{originalSource:`{ + args: { + firstName: "Taro", + lastName: "Yamada", + onFirstNameChange: fn(), + onLastNameChange: fn(), + onAddressChange: fn(), + errors: {}, + clearError: fn(), + loading: false + } +}`,...(u=(x=n.parameters)==null?void 0:x.docs)==null?void 0:u.source}}};var C,j,F;t.parameters={...t.parameters,docs:{...(C=t.parameters)==null?void 0:C.docs,source:{originalSource:`{ + args: { + firstName: "", + lastName: "", + onFirstNameChange: fn(), + onLastNameChange: fn(), + onAddressChange: fn(), + errors: { + firstName: "First name is required", + lastName: "Last name is required", + address: "Please enter a valid address" + }, + clearError: fn(), + loading: false + } +}`,...(F=(j=t.parameters)==null?void 0:j.docs)==null?void 0:F.source}}};var L,v,A;o.parameters={...o.parameters,docs:{...(L=o.parameters)==null?void 0:L.docs,source:{originalSource:`{ + args: { + firstName: "Taro", + lastName: "Yamada", + onFirstNameChange: fn(), + onLastNameChange: fn(), + onAddressChange: fn(), + errors: {}, + clearError: fn(), + loading: true + } +}`,...(A=(v=o.parameters)==null?void 0:v.docs)==null?void 0:A.source}}};const ge=["Default","Filled","WithErrors","Loading"];export{s as Default,n as Filled,o as Loading,t as WithErrors,ge as __namedExportsOrder,Ne as default}; diff --git a/apps/portal/public/storybook/assets/NotificationBell.stories-BrAAL4Pp.js b/apps/portal/public/storybook/assets/NotificationBell.stories-BrAAL4Pp.js new file mode 100644 index 00000000..051db48a --- /dev/null +++ b/apps/portal/public/storybook/assets/NotificationBell.stories-BrAAL4Pp.js @@ -0,0 +1,13 @@ +import{j as r}from"./jsx-runtime-D_zvdyIk.js";function x({unreadCount:e=2}){return r.jsx("div",{className:"relative",children:r.jsxs("button",{type:"button",className:"relative p-2.5 rounded-xl transition-all duration-200 text-muted-foreground hover:text-foreground hover:bg-muted/60","aria-label":e>0?`Notifications (${e} unread)`:"Notifications",children:[r.jsx("svg",{className:"h-5 w-5",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor",children:r.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M14.857 17.082a23.848 23.848 0 005.454-1.31A8.967 8.967 0 0118 9.75v-.7V9A6 6 0 006 9v.75a8.967 8.967 0 01-2.312 6.022c1.733.64 3.56 1.085 5.455 1.31m5.714 0a24.255 24.255 0 01-5.714 0m5.714 0a3 3 0 11-5.714 0"})}),e>0&&r.jsx("span",{className:"absolute top-1.5 right-1.5 flex h-4 min-w-4 items-center justify-center rounded-full bg-primary px-1 text-[10px] font-bold text-primary-foreground",children:e>9?"9+":e})]})})}const g={title:"Features/Notifications/NotificationBell",component:x,parameters:{layout:"centered"}},a={args:{unreadCount:2}},t={args:{unreadCount:0}},o={args:{unreadCount:15}};var n,s,i;a.parameters={...a.parameters,docs:{...(n=a.parameters)==null?void 0:n.docs,source:{originalSource:`{ + args: { + unreadCount: 2 + } +}`,...(i=(s=a.parameters)==null?void 0:s.docs)==null?void 0:i.source}}};var c,d,u;t.parameters={...t.parameters,docs:{...(c=t.parameters)==null?void 0:c.docs,source:{originalSource:`{ + args: { + unreadCount: 0 + } +}`,...(u=(d=t.parameters)==null?void 0:d.docs)==null?void 0:u.source}}};var l,m,p;o.parameters={...o.parameters,docs:{...(l=o.parameters)==null?void 0:l.docs,source:{originalSource:`{ + args: { + unreadCount: 15 + } +}`,...(p=(m=o.parameters)==null?void 0:m.docs)==null?void 0:p.source}}};const h=["WithUnread","NoUnread","ManyUnread"];export{o as ManyUnread,t as NoUnread,a as WithUnread,h as __namedExportsOrder,g as default}; diff --git a/apps/portal/public/storybook/assets/NotificationDropdown.stories-DRbE5Maq.js b/apps/portal/public/storybook/assets/NotificationDropdown.stories-DRbE5Maq.js new file mode 100644 index 00000000..0316ce49 --- /dev/null +++ b/apps/portal/public/storybook/assets/NotificationDropdown.stories-DRbE5Maq.js @@ -0,0 +1,13 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{N as l}from"./NotificationItem-Bz_1TnoF.js";import"./index-JhL3uwfD.js";import"./next-link-BmD4fPSy.js";import"./cn-CDN07tui.js";import"./date-Csq1SWDU.js";import"./date-CJlSVdaN.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./XMarkIcon-Bsb1W5VN.js";import"./CheckCircleIcon-DrKOIitY.js";const m=[{id:"n-001",userId:"u-001",type:"ORDER_ACTIVATED",title:"Service activated",message:"Your internet service is now active and ready to use.",actionUrl:"/account/services",actionLabel:"View Service",source:"PORTAL",sourceId:null,read:!1,readAt:null,dismissed:!1,createdAt:new Date(Date.now()-1e3*60*5).toISOString(),expiresAt:"2026-12-31T23:59:59Z"},{id:"n-002",userId:"u-001",type:"ORDER_APPROVED",title:"Order approved",message:"Your order has been approved and is being processed.",actionUrl:"/account/orders",actionLabel:"View Order",source:"SALESFORCE",sourceId:null,read:!0,readAt:new Date(Date.now()-1e3*60*30).toISOString(),dismissed:!1,createdAt:new Date(Date.now()-1e3*60*60).toISOString(),expiresAt:"2026-12-31T23:59:59Z"},{id:"n-003",userId:"u-001",type:"VERIFICATION_REJECTED",title:"ID verification requires attention",message:"We couldn't verify your ID. Please review the feedback and resubmit.",actionUrl:"/account/settings/verification",actionLabel:"Resubmit",source:"PORTAL",sourceId:null,read:!1,readAt:null,dismissed:!1,createdAt:new Date(Date.now()-1e3*60*60*3).toISOString(),expiresAt:"2026-12-31T23:59:59Z"}];function p({position:u="below"}){return e.jsxs("div",{className:"w-80 sm:w-96 bg-popover border border-border rounded-xl shadow-lg overflow-hidden",children:[e.jsxs("div",{className:"flex items-center justify-between px-4 py-3 border-b border-border",children:[e.jsx("h3",{className:"text-sm font-semibold text-foreground",children:"Notifications"}),e.jsxs("button",{type:"button",className:"flex items-center gap-1.5 text-xs text-muted-foreground hover:text-foreground transition-colors",children:[e.jsx("svg",{className:"h-3.5 w-3.5",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor",children:e.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M4.5 12.75l6 6 9-13.5"})}),"Mark all read"]})]}),e.jsx("div",{className:"max-h-96 overflow-y-auto divide-y divide-border/50",children:m.map(o=>e.jsx(l,{notification:o,onMarkAsRead:()=>{},onDismiss:()=>{}},o.id))}),e.jsx("div",{className:"px-4 py-3 border-t border-border",children:e.jsx("span",{className:"block text-center text-xs text-muted-foreground hover:text-foreground transition-colors cursor-pointer",children:"View all notifications"})})]})}const I={title:"Features/Notifications/NotificationDropdown",component:p,parameters:{layout:"centered"}},t={},r={render:()=>e.jsxs("div",{className:"w-80 sm:w-96 bg-popover border border-border rounded-xl shadow-lg overflow-hidden",children:[e.jsx("div",{className:"flex items-center justify-between px-4 py-3 border-b border-border",children:e.jsx("h3",{className:"text-sm font-semibold text-foreground",children:"Notifications"})}),e.jsxs("div",{className:"flex flex-col items-center justify-center py-10 px-4 text-center",children:[e.jsx("p",{className:"text-sm text-muted-foreground",children:"No notifications yet"}),e.jsx("p",{className:"text-xs text-muted-foreground/70 mt-1",children:"We'll notify you when something important happens"})]})]})};var s,i,n;t.parameters={...t.parameters,docs:{...(s=t.parameters)==null?void 0:s.docs,source:{originalSource:"{}",...(n=(i=t.parameters)==null?void 0:i.docs)==null?void 0:n.source}}};var a,d,c;r.parameters={...r.parameters,docs:{...(a=r.parameters)==null?void 0:a.docs,source:{originalSource:`{ + render: () =>
+
+

Notifications

+
+
+

No notifications yet

+

+ We'll notify you when something important happens +

+
+
+}`,...(c=(d=r.parameters)==null?void 0:d.docs)==null?void 0:c.source}}};const E=["Default","Empty"];export{t as Default,r as Empty,E as __namedExportsOrder,I as default}; diff --git a/apps/portal/public/storybook/assets/NotificationItem-Bz_1TnoF.js b/apps/portal/public/storybook/assets/NotificationItem-Bz_1TnoF.js new file mode 100644 index 00000000..072062da --- /dev/null +++ b/apps/portal/public/storybook/assets/NotificationItem-Bz_1TnoF.js @@ -0,0 +1 @@ +import{j as r}from"./jsx-runtime-D_zvdyIk.js";import{r as t}from"./index-JhL3uwfD.js";import{L as I}from"./next-link-BmD4fPSy.js";import{c as d}from"./cn-CDN07tui.js";import{b as u}from"./date-Csq1SWDU.js";import"./index-BKyvj4H5.js";import{F as E}from"./XMarkIcon-Bsb1W5VN.js";import{F as p}from"./CheckCircleIcon-DrKOIitY.js";function f({title:a,titleId:e,...n},s){return t.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:s,"aria-labelledby":e},n),a?t.createElement("title",{id:e},a):null,t.createElement("path",{fillRule:"evenodd",d:"M2.25 12c0-5.385 4.365-9.75 9.75-9.75s9.75 4.365 9.75 9.75-4.365 9.75-9.75 9.75S2.25 17.385 2.25 12ZM12 8.25a.75.75 0 0 1 .75.75v3.75a.75.75 0 0 1-1.5 0V9a.75.75 0 0 1 .75-.75Zm0 8.25a.75.75 0 1 0 0-1.5.75.75 0 0 0 0 1.5Z",clipRule:"evenodd"}))}const g=t.forwardRef(f);function x({title:a,titleId:e,...n},s){return t.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:s,"aria-labelledby":e},n),a?t.createElement("title",{id:e},a):null,t.createElement("path",{fillRule:"evenodd",d:"M2.25 12c0-5.385 4.365-9.75 9.75-9.75s9.75 4.365 9.75 9.75-4.365 9.75-9.75 9.75S2.25 17.385 2.25 12Zm8.706-1.442c1.146-.573 2.437.463 2.126 1.706l-.709 2.836.042-.02a.75.75 0 0 1 .67 1.34l-.04.022c-1.147.573-2.438-.463-2.127-1.706l.71-2.836-.042.02a.75.75 0 1 1-.671-1.34l.041-.022ZM12 9a.75.75 0 1 0 0-1.5.75.75 0 0 0 0 1.5Z",clipRule:"evenodd"}))}const h=t.forwardRef(x),l={ELIGIBILITY_ELIGIBLE:"ELIGIBILITY_ELIGIBLE",ELIGIBILITY_INELIGIBLE:"ELIGIBILITY_INELIGIBLE",VERIFICATION_VERIFIED:"VERIFICATION_VERIFIED",VERIFICATION_REJECTED:"VERIFICATION_REJECTED",ORDER_ACTIVATED:"ORDER_ACTIVATED",ORDER_FAILED:"ORDER_FAILED"},R=a=>{switch(a){case l.ELIGIBILITY_ELIGIBLE:case l.VERIFICATION_VERIFIED:case l.ORDER_ACTIVATED:return r.jsx(p,{className:"h-5 w-5 text-emerald-500 flex-shrink-0"});case l.ELIGIBILITY_INELIGIBLE:case l.VERIFICATION_REJECTED:case l.ORDER_FAILED:return r.jsx(g,{className:"h-5 w-5 text-amber-500 flex-shrink-0"});default:return r.jsx(h,{className:"h-5 w-5 text-blue-500 flex-shrink-0"})}},N=t.memo(function({notification:e,onMarkAsRead:n,onDismiss:s}){const c=t.useCallback(()=>{!e.read&&n&&n(e.id)},[e.id,e.read,n]),m=t.useCallback(i=>{i.preventDefault(),i.stopPropagation(),s==null||s(e.id)},[e.id,s]),o=r.jsxs("div",{className:d("group relative flex gap-3 p-3 rounded-lg transition-colors",!e.read&&"bg-primary/5","hover:bg-muted/60"),onClick:c,children:[r.jsx("div",{className:"pt-0.5",children:R(e.type)}),r.jsxs("div",{className:"flex-1 min-w-0 space-y-1",children:[r.jsx("p",{className:d("text-sm leading-snug",e.read?"text-muted-foreground":"font-medium text-foreground"),children:e.title}),e.message&&r.jsx("p",{className:"text-xs text-muted-foreground line-clamp-2",children:e.message}),r.jsx("p",{className:"text-xs text-muted-foreground/70",children:u(e.createdAt)})]}),r.jsx("button",{type:"button",className:"absolute top-2 right-2 p-1 rounded opacity-0 group-hover:opacity-100 hover:bg-muted transition-opacity",onClick:m,"aria-label":"Dismiss notification",children:r.jsx(E,{className:"h-4 w-4 text-muted-foreground"})}),!e.read&&r.jsx("div",{className:"absolute top-3 right-3 h-2 w-2 rounded-full bg-primary group-hover:hidden"})]});return e.actionUrl?r.jsx(I,{href:e.actionUrl,className:"block",prefetch:!1,children:o}):o});N.__docgenInfo={description:"",methods:[],displayName:"NotificationItem",props:{notification:{required:!0,tsType:{name:"z.infer",elements:[{name:"notificationSchema"}],raw:"z.infer"},description:""},onMarkAsRead:{required:!1,tsType:{name:"signature",type:"function",raw:"(id: string) => void",signature:{arguments:[{type:{name:"string"},name:"id"}],return:{name:"void"}}},description:""},onDismiss:{required:!1,tsType:{name:"signature",type:"function",raw:"(id: string) => void",signature:{arguments:[{type:{name:"string"},name:"id"}],return:{name:"void"}}},description:""}}};export{N}; diff --git a/apps/portal/public/storybook/assets/NotificationItem.stories-feB8mKiH.js b/apps/portal/public/storybook/assets/NotificationItem.stories-feB8mKiH.js new file mode 100644 index 00000000..26c0d99c --- /dev/null +++ b/apps/portal/public/storybook/assets/NotificationItem.stories-feB8mKiH.js @@ -0,0 +1,72 @@ +import{j as o}from"./jsx-runtime-D_zvdyIk.js";import{N as O}from"./NotificationItem-Bz_1TnoF.js";import"./index-JhL3uwfD.js";import"./next-link-BmD4fPSy.js";import"./cn-CDN07tui.js";import"./date-Csq1SWDU.js";import"./date-CJlSVdaN.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./XMarkIcon-Bsb1W5VN.js";import"./CheckCircleIcon-DrKOIitY.js";const x={title:"Features/Notifications/NotificationItem",component:O,parameters:{layout:"centered"},decorators:[e=>o.jsx("div",{className:"w-[380px] border border-border rounded-lg",children:o.jsx(e,{})})]},t={id:"n-001",userId:"u-001",source:"PORTAL",sourceId:null,actionLabel:null,readAt:null,dismissed:!1,expiresAt:"2026-12-31T23:59:59Z"},a={args:{notification:{...t,type:"ORDER_ACTIVATED",title:"Service activated",message:"Your internet service is now active and ready to use.",actionUrl:"/account/services",read:!1,createdAt:new Date(Date.now()-1e3*60*5).toISOString()},onMarkAsRead:e=>alert(`Mark as read: ${e}`),onDismiss:e=>alert(`Dismiss: ${e}`)}},n={args:{notification:{...t,id:"n-002",type:"ORDER_APPROVED",title:"Order approved",message:"Your order has been approved and is being processed.",actionUrl:"/account/orders",read:!0,readAt:new Date(Date.now()-1e3*60*30).toISOString(),createdAt:new Date(Date.now()-1e3*60*60).toISOString()},onMarkAsRead:e=>alert(`Mark as read: ${e}`),onDismiss:e=>alert(`Dismiss: ${e}`)}},r={args:{notification:{...t,id:"n-003",type:"VERIFICATION_REJECTED",title:"ID verification requires attention",message:"We couldn't verify your ID. Please review the feedback and resubmit.",actionUrl:"/account/settings/verification",read:!1,createdAt:new Date(Date.now()-1e3*60*60*2).toISOString()},onMarkAsRead:e=>alert(`Mark as read: ${e}`),onDismiss:e=>alert(`Dismiss: ${e}`)}},i={args:{notification:{...t,id:"n-004",type:"SYSTEM_ANNOUNCEMENT",title:"Scheduled maintenance",message:"We will be performing maintenance on March 15th from 2:00-4:00 AM JST.",actionUrl:null,read:!1,createdAt:new Date(Date.now()-1e3*60*60*24).toISOString()}}},s={args:{notification:{...t,id:"n-005",type:"ELIGIBILITY_ELIGIBLE",title:"Good news! Internet service is available",message:null,actionUrl:"/account/services/internet",read:!1,createdAt:new Date(Date.now()-1e3*60*10).toISOString()}}};var c,d,l;a.parameters={...a.parameters,docs:{...(c=a.parameters)==null?void 0:c.docs,source:{originalSource:`{ + args: { + notification: { + ...baseNotification, + type: "ORDER_ACTIVATED" as const, + title: "Service activated", + message: "Your internet service is now active and ready to use.", + actionUrl: "/account/services", + read: false, + createdAt: new Date(Date.now() - 1000 * 60 * 5).toISOString() + }, + onMarkAsRead: (id: string) => alert(\`Mark as read: \${id}\`), + onDismiss: (id: string) => alert(\`Dismiss: \${id}\`) + } +}`,...(l=(d=a.parameters)==null?void 0:d.docs)==null?void 0:l.source}}};var m,p,u;n.parameters={...n.parameters,docs:{...(m=n.parameters)==null?void 0:m.docs,source:{originalSource:`{ + args: { + notification: { + ...baseNotification, + id: "n-002", + type: "ORDER_APPROVED" as const, + title: "Order approved", + message: "Your order has been approved and is being processed.", + actionUrl: "/account/orders", + read: true, + readAt: new Date(Date.now() - 1000 * 60 * 30).toISOString(), + createdAt: new Date(Date.now() - 1000 * 60 * 60).toISOString() + }, + onMarkAsRead: (id: string) => alert(\`Mark as read: \${id}\`), + onDismiss: (id: string) => alert(\`Dismiss: \${id}\`) + } +}`,...(u=(p=n.parameters)==null?void 0:p.docs)==null?void 0:u.source}}};var g,D,f;r.parameters={...r.parameters,docs:{...(g=r.parameters)==null?void 0:g.docs,source:{originalSource:`{ + args: { + notification: { + ...baseNotification, + id: "n-003", + type: "VERIFICATION_REJECTED" as const, + title: "ID verification requires attention", + message: "We couldn't verify your ID. Please review the feedback and resubmit.", + actionUrl: "/account/settings/verification", + read: false, + createdAt: new Date(Date.now() - 1000 * 60 * 60 * 2).toISOString() + }, + onMarkAsRead: (id: string) => alert(\`Mark as read: \${id}\`), + onDismiss: (id: string) => alert(\`Dismiss: \${id}\`) + } +}`,...(f=(D=r.parameters)==null?void 0:D.docs)==null?void 0:f.source}}};var I,S,A;i.parameters={...i.parameters,docs:{...(I=i.parameters)==null?void 0:I.docs,source:{originalSource:`{ + args: { + notification: { + ...baseNotification, + id: "n-004", + type: "SYSTEM_ANNOUNCEMENT" as const, + title: "Scheduled maintenance", + message: "We will be performing maintenance on March 15th from 2:00-4:00 AM JST.", + actionUrl: null, + read: false, + createdAt: new Date(Date.now() - 1000 * 60 * 60 * 24).toISOString() + } + } +}`,...(A=(S=i.parameters)==null?void 0:S.docs)==null?void 0:A.source}}};var w,E,v;s.parameters={...s.parameters,docs:{...(w=s.parameters)==null?void 0:w.docs,source:{originalSource:`{ + args: { + notification: { + ...baseNotification, + id: "n-005", + type: "ELIGIBILITY_ELIGIBLE" as const, + title: "Good news! Internet service is available", + message: null, + actionUrl: "/account/services/internet", + read: false, + createdAt: new Date(Date.now() - 1000 * 60 * 10).toISOString() + } + } +}`,...(v=(E=s.parameters)==null?void 0:E.docs)==null?void 0:v.source}}};const C=["UnreadSuccess","ReadInfo","UnreadWarning","NoActionUrl","NoMessage"];export{i as NoActionUrl,s as NoMessage,n as ReadInfo,a as UnreadSuccess,r as UnreadWarning,C as __namedExportsOrder,x as default}; diff --git a/apps/portal/public/storybook/assets/NumberPortingStep-Bx0osMV8.js b/apps/portal/public/storybook/assets/NumberPortingStep-Bx0osMV8.js new file mode 100644 index 00000000..3c45814b --- /dev/null +++ b/apps/portal/public/storybook/assets/NumberPortingStep-Bx0osMV8.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import"./DataTable-COYdcx41.js";import"./FormField-C0UylACv.js";import"./OtpInput-6kd_2E0v.js";import"./OtpExpiryDisplay-BGgB7Tk6.js";import"./SearchFilterBar-Ds19v0-P.js";import"./PaginationBar-D_k7ztRb.js";import"./DetailHeader-C0ZsoM39.js";import"./AlertBanner-Bnlyj1xc.js";import"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import"./error-state-BSicqqE6.js";import"./index-BKyvj4H5.js";import"./SectionHeader-Bo81Whai.js";import"./ProgressSteps-weVdXcqu.js";import"./SubCard-1OZIPgEM.js";import{A as d}from"./AnimatedCard-DFAiX4zP.js";import"./ServiceCard-BJEHFLba.js";import"./SummaryStats-D6b7Am-p.js";import"./FilterDropdown-CUU04WmN.js";import"./ClearFiltersButton-CPCoyXk2.js";import"./DetailStatsGrid-CDkKTM-B.js";import"./SectionCard-BcUjc-7N.js";import"./MetricCard-BR1xVIXz.js";import"./BackLink-C5IY6wzy.js";import"./status-badge-5pzxe45J.js";import"./error-boundary-DIRO_cDI.js";import"./error-fallbacks-kSPsNxmV.js";import{B as t}from"./button-C8_cybvS.js";import"./input-BbGJiz0K.js";import"./password-input-D4khGh8v.js";import"./checkbox-DahUyQbt.js";import"./label-C25VH7yk.js";import"./error-message-DeFFz6H_.js";import"./status-pill-wWp9xkwA.js";import"./badge-BdMsasyi.js";import"./spinner-mU4XywER.js";import"./loading-overlay-DMJTiFny.js";import"./empty-state-DRUGJ9ip.js";import"./inline-toast-DQJ-O9wc.js";import"./logo-f0fprTjz.js";import{S as l}from"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./animated-container-DyAZ9gmw.js";import{M as c}from"./MnpForm-j5Hck9cV.js";import{F as f}from"./ArrowLeftIcon-Cw1eswTb.js";import{F as y}from"./ArrowRightIcon--Vuz7Q7x.js";function g({wantsMnp:r,setWantsMnp:i,mnpData:n,setMnpData:o,activationType:a,validate:m,onNext:p,onBack:s}){const u=()=>{(r||a==="Scheduled")&&!m()||p()};return e.jsxs(d,{variant:"static",className:"p-8 transition-all duration-500 ease-in-out transform opacity-100 translate-y-0",children:[e.jsx("div",{className:"mb-6",children:e.jsx(l,{stepNumber:4,title:"Number Porting (Optional)",description:"Keep your existing phone number by transferring it to your new SIM"})}),e.jsx(c,{wantsMnp:r,onWantsMnpChange:i,mnpData:n,onMnpDataChange:o,errors:{}}),e.jsxs("div",{className:"flex justify-between mt-6",children:[e.jsx(t,{onClick:s,variant:"outline",leftIcon:e.jsx(f,{className:"w-4 h-4"}),children:"Back to Add-ons"}),e.jsx(t,{onClick:u,rightIcon:e.jsx(y,{className:"w-4 h-4"}),children:"Review Order"})]})]})}g.__docgenInfo={description:"",methods:[],displayName:"NumberPortingStep",props:{onNext:{required:!0,tsType:{name:"signature",type:"function",raw:"() => void",signature:{arguments:[],return:{name:"void"}}},description:""},onBack:{required:!1,tsType:{name:"union",raw:"(() => void) | undefined",elements:[{name:"unknown"},{name:"undefined"}]},description:""},wantsMnp:{required:!0,tsType:{name:"boolean"},description:""},setWantsMnp:{required:!0,tsType:{name:"signature",type:"function",raw:"(wants: boolean) => void",signature:{arguments:[{type:{name:"boolean"},name:"wants"}],return:{name:"void"}}},description:""},mnpData:{required:!0,tsType:{name:"z.infer",elements:[{name:"simMnpFormSchema"}],raw:"z.infer"},description:""},setMnpData:{required:!0,tsType:{name:"signature",type:"function",raw:"(data: MnpData) => void",signature:{arguments:[{type:{name:"z.infer",elements:[{name:"simMnpFormSchema"}],raw:"z.infer"},name:"data"}],return:{name:"void"}}},description:""},activationType:{required:!0,tsType:{name:"union",raw:'"Immediate" | "Scheduled" | ""',elements:[{name:"literal",value:'"Immediate"'},{name:"literal",value:'"Scheduled"'},{name:"literal",value:'""'}]},description:""},validate:{required:!0,tsType:{name:"signature",type:"function",raw:"() => boolean",signature:{arguments:[],return:{name:"boolean"}}},description:""}}};export{g as N}; diff --git a/apps/portal/public/storybook/assets/NumberPortingStep.stories-BhRYYpZi.js b/apps/portal/public/storybook/assets/NumberPortingStep.stories-BhRYYpZi.js new file mode 100644 index 00000000..4277126f --- /dev/null +++ b/apps/portal/public/storybook/assets/NumberPortingStep.stories-BhRYYpZi.js @@ -0,0 +1,34 @@ +import{N as m}from"./NumberPortingStep-Bx0osMV8.js";import"./jsx-runtime-D_zvdyIk.js";import"./DataTable-COYdcx41.js";import"./empty-state-DRUGJ9ip.js";import"./button-C8_cybvS.js";import"./index-JhL3uwfD.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./spinner-mU4XywER.js";import"./PlusIcon-DGufmf06.js";import"./ChevronRightIcon-CMQWsJeW.js";import"./FormField-C0UylACv.js";import"./label-C25VH7yk.js";import"./input-BbGJiz0K.js";import"./error-message-DeFFz6H_.js";import"./ExclamationCircleIcon-jFfW0Ax_.js";import"./OtpInput-6kd_2E0v.js";import"./input-otp-Cin9-T84.js";import"./createLucideIcon-CctB0W3q.js";import"./OtpExpiryDisplay-BGgB7Tk6.js";import"./clock-C92s7kSC.js";import"./SearchFilterBar-Ds19v0-P.js";import"./FunnelIcon-8nhbwqu0.js";import"./XMarkIcon-Bsb1W5VN.js";import"./PaginationBar-D_k7ztRb.js";import"./DetailHeader-C0ZsoM39.js";import"./status-pill-wWp9xkwA.js";import"./AlertBanner-Bnlyj1xc.js";import"./XCircleIcon-CiVBnngB.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./InformationCircleIcon-Clz7d-56.js";import"./CheckCircleIcon-Dva35lTP.js";import"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import"./password-input-D4khGh8v.js";import"./checkbox-DahUyQbt.js";import"./badge-BdMsasyi.js";import"./loading-overlay-DMJTiFny.js";import"./error-state-BSicqqE6.js";import"./ArrowPathIcon-CZjG6RfV.js";import"./inline-toast-DQJ-O9wc.js";import"./index-CNXKWNLp.js";import"./proxy-ZkTvaR74.js";import"./logo-f0fprTjz.js";import"./next-image-69WeRggt.js";import"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./Squares2X2Icon-BMQM_Wy1.js";import"./animated-container-DyAZ9gmw.js";import"./SectionHeader-Bo81Whai.js";import"./ProgressSteps-weVdXcqu.js";import"./SubCard-1OZIPgEM.js";import"./AnimatedCard-DFAiX4zP.js";import"./ServiceCard-BJEHFLba.js";import"./arrow-right-BNMAry-H.js";import"./SummaryStats-D6b7Am-p.js";import"./FilterDropdown-CUU04WmN.js";import"./ClearFiltersButton-CPCoyXk2.js";import"./DetailStatsGrid-CDkKTM-B.js";import"./SectionCard-BcUjc-7N.js";import"./MetricCard-BR1xVIXz.js";import"./BackLink-C5IY6wzy.js";import"./ArrowLeftIcon-Cw1eswTb.js";import"./status-badge-5pzxe45J.js";import"./error-boundary-DIRO_cDI.js";import"./error-fallbacks-kSPsNxmV.js";import"./MnpForm-j5Hck9cV.js";import"./ArrowRightIcon--Vuz7Q7x.js";const Kt={title:"Features/Services/SIM/Configure/NumberPortingStep",component:m,parameters:{layout:"centered"}},s={reservationNumber:"",expiryDate:"",phoneNumber:"",mvnoAccountNumber:"",portingLastName:"",portingFirstName:"",portingLastNameKatakana:"",portingFirstNameKatakana:"",portingGender:"",portingDateOfBirth:""},t={args:{wantsMnp:!1,setWantsMnp:()=>{},mnpData:s,setMnpData:()=>{},activationType:"Immediate",validate:()=>!0,onNext:()=>{},onBack:()=>{}}},r={args:{wantsMnp:!0,setWantsMnp:()=>{},mnpData:{reservationNumber:"1234567890",expiryDate:"2026-04-01",phoneNumber:"090-1234-5678",mvnoAccountNumber:"",portingLastName:"Tanaka",portingFirstName:"Taro",portingLastNameKatakana:"タナカ",portingFirstNameKatakana:"タロウ",portingGender:"Male",portingDateOfBirth:"1990-01-15"},setMnpData:()=>{},activationType:"Immediate",validate:()=>!0,onNext:()=>{},onBack:()=>{}}};var a,o,p;t.parameters={...t.parameters,docs:{...(a=t.parameters)==null?void 0:a.docs,source:{originalSource:`{ + args: { + wantsMnp: false, + setWantsMnp: () => {}, + mnpData: emptyMnpData, + setMnpData: () => {}, + activationType: "Immediate", + validate: () => true, + onNext: () => {}, + onBack: () => {} + } +}`,...(p=(o=t.parameters)==null?void 0:o.docs)==null?void 0:p.source}}};var i,e,n;r.parameters={...r.parameters,docs:{...(i=r.parameters)==null?void 0:i.docs,source:{originalSource:`{ + args: { + wantsMnp: true, + setWantsMnp: () => {}, + mnpData: { + reservationNumber: "1234567890", + expiryDate: "2026-04-01", + phoneNumber: "090-1234-5678", + mvnoAccountNumber: "", + portingLastName: "Tanaka", + portingFirstName: "Taro", + portingLastNameKatakana: "\\u30BF\\u30CA\\u30AB", + portingFirstNameKatakana: "\\u30BF\\u30ED\\u30A6", + portingGender: "Male", + portingDateOfBirth: "1990-01-15" + }, + setMnpData: () => {}, + activationType: "Immediate", + validate: () => true, + onNext: () => {}, + onBack: () => {} + } +}`,...(n=(e=r.parameters)==null?void 0:e.docs)==null?void 0:n.source}}};const Lt=["Default","WithMnpEnabled"];export{t as Default,r as WithMnpEnabled,Lt as __namedExportsOrder,Kt as default}; diff --git a/apps/portal/public/storybook/assets/OrderCard.stories-D_TTGbJi.js b/apps/portal/public/storybook/assets/OrderCard.stories-D_TTGbJi.js new file mode 100644 index 00000000..14594794 --- /dev/null +++ b/apps/portal/public/storybook/assets/OrderCard.stories-D_TTGbJi.js @@ -0,0 +1,63 @@ +import{j as r}from"./jsx-runtime-D_zvdyIk.js";import{r as y}from"./index-JhL3uwfD.js";import{S as K}from"./status-pill-wWp9xkwA.js";import{O as U}from"./OrderServiceIcon-B819JSbi.js";import{c as p}from"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import{d as Y,g as $,b as H,c as Q}from"./helpers-C5Jr5RNp.js";import"./DevicePhoneMobileIcon-SMwjWf6M.js";import"./WifiIcon-BRIpHl8i.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";const X={success:"success",info:"info",warning:"warning",neutral:"neutral"},ee={internet:"bg-info/10 text-info border border-info/10",sim:"bg-primary/10 text-primary border border-primary/10",vpn:"bg-success/10 text-success border border-success/10",default:"bg-muted text-muted-foreground border border-border"},re=new Intl.DateTimeFormat("en-US",{month:"short",day:"numeric",year:"numeric"});function te(e){if(!e)return"—";const t=new Date(e);return Number.isNaN(t.getTime())?"—":re.format(t)}function ae(e,t,s){return p("group overflow-hidden bg-card transition-all duration-200 focus-visible:outline-none",!e&&"rounded-2xl border border-border shadow-[var(--cp-shadow-1)]",e&&"rounded-none border-0 shadow-none",t&&!e&&"cursor-pointer hover:border-primary/30 hover:shadow-lg hover:-translate-y-0.5 focus-within:border-primary/40 focus-within:ring-2 focus-within:ring-primary/10",t&&e&&"cursor-pointer hover:bg-muted focus-within:bg-muted",s)}function ne({totals:e}){return e.monthlyTotal<=0&&e.oneTimeTotal<=0?null:r.jsxs("div",{className:"flex items-start gap-4 sm:gap-5 flex-shrink-0",children:[e.monthlyTotal>0&&r.jsxs("div",{className:"text-right",children:[r.jsx("p",{className:"text-[10px] font-semibold uppercase tracking-wider text-primary",children:"Monthly"}),r.jsxs("p",{className:"text-xl font-bold text-foreground tabular-nums",children:["¥",e.monthlyTotal.toLocaleString()]})]}),e.oneTimeTotal>0&&r.jsxs("div",{className:"text-right",children:[r.jsx("p",{className:"text-[10px] font-semibold uppercase tracking-wider text-primary",children:"One-Time"}),r.jsxs("p",{className:"text-lg font-bold text-foreground tabular-nums",children:["¥",e.oneTimeTotal.toLocaleString()]})]})]})}function q({order:e,onClick:t,footer:s,className:k,variant:_="standalone"}){const f=Y({status:e.status,activationStatus:e.activationStatus??""}),F=X[f.tone],L=$(e.orderType),G=ee[L],J=r.jsx(U,{orderType:e.orderType??""}),g=y.useMemo(()=>H(e.itemsSummary),[e.itemsSummary]),B=e.orderType?`${e.orderType} Service`:"Service Order",W=Q(e.itemsSummary,e.totalAmount),Z=y.useMemo(()=>te(e.createdDate),[e.createdDate]),i=typeof t=="function",x=_==="list",z=a=>{i&&(a.key==="Enter"||a.key===" ")&&(a.preventDefault(),t==null||t())};return r.jsxs("article",{className:ae(x,i,k),onClick:t,onKeyDown:z,role:i?"button":void 0,tabIndex:i?0:void 0,children:[r.jsx("div",{className:"px-5 sm:px-6 py-5",children:r.jsxs("div",{className:"flex items-start justify-between gap-4 sm:gap-6",children:[r.jsxs("div",{className:"flex items-start gap-3 sm:gap-4 flex-1 min-w-0",children:[r.jsx("div",{className:p("flex h-11 w-11 flex-shrink-0 items-center justify-center rounded-xl",G),children:J}),r.jsxs("div",{className:"flex-1 min-w-0",children:[r.jsxs("div",{className:"flex items-center gap-2 flex-wrap",children:[r.jsx("h3",{className:"font-semibold text-foreground",children:B}),r.jsx(K,{label:f.label,variant:F})]}),r.jsxs("div",{className:"mt-1.5 flex items-center gap-2 text-xs text-muted-foreground",children:[r.jsxs("span",{className:"font-medium",children:["#",e.orderNumber||String(e.id).slice(-8)]}),r.jsx("span",{className:"text-muted-foreground/40",children:"•"}),r.jsx("span",{children:Z})]}),g.length>0&&r.jsx("div",{className:"mt-3 flex flex-wrap gap-2",children:g.map(a=>r.jsx("span",{className:"inline-flex items-center rounded-lg bg-muted px-2.5 py-1 text-xs font-medium text-muted-foreground",children:a.name},a.id))})]})]}),r.jsx(ne,{totals:W})]})}),s&&r.jsx("div",{className:p("border-t border-border bg-muted/30 px-5 sm:px-6 py-3",x&&"border-t-0 bg-transparent"),children:s})]},String(e.id))}q.__docgenInfo={description:"",methods:[],displayName:"OrderCard",props:{order:{required:!0,tsType:{name:"intersection",raw:"OrderSummary & { itemSummary?: string }",elements:[{name:"z.infer",elements:[{name:"orderSummarySchema"}],raw:"z.infer"},{name:"signature",type:"object",raw:"{ itemSummary?: string }",signature:{properties:[{key:"itemSummary",value:{name:"string",required:!1}}]}}]},description:""},onClick:{required:!1,tsType:{name:"signature",type:"function",raw:"() => void",signature:{arguments:[],return:{name:"void"}}},description:""},footer:{required:!1,tsType:{name:"ReactNode"},description:""},className:{required:!1,tsType:{name:"string"},description:""},variant:{required:!1,tsType:{name:"union",raw:'"standalone" | "list"',elements:[{name:"literal",value:'"standalone"'},{name:"literal",value:'"list"'}]},description:'Visual variant: "standalone" (default) has border/shadow, "list" works inside divide-y container',defaultValue:{value:'"standalone"',computed:!1}}}};const n={id:"ord-001",orderNumber:"ORD-2025-0042",status:"Active",orderType:"Internet",effectiveDate:"2025-01-15T00:00:00Z",totalAmount:5500,createdDate:"2025-01-10T09:30:00Z",lastModifiedDate:"2025-01-15T14:00:00Z",activationStatus:"Activated",itemsSummary:[{productName:"Fiber 1Gbps Plan",name:"Fiber 1Gbps Plan",billingCycle:"Monthly",quantity:1,unitPrice:4500,totalPrice:4500},{productName:"Wi-Fi Router Rental",name:"Wi-Fi Router Rental",billingCycle:"Monthly",quantity:1,unitPrice:1e3,totalPrice:1e3}]},xe={title:"Features/Orders/OrderCard",component:q,parameters:{layout:"centered"},decorators:[e=>r.jsx("div",{className:"w-[600px]",children:r.jsx(e,{})})]},o={args:{order:n}},d={args:{order:n,onClick:()=>alert("Order clicked")}},c={args:{order:{...n,id:"ord-002",orderNumber:"ORD-2025-0099",orderType:"SIM",status:"Draft",activationStatus:"Pending Activation",totalAmount:3e3,itemsSummary:[{productName:"Data SIM 20GB",name:"Data SIM 20GB",billingCycle:"Monthly",quantity:1,unitPrice:3e3,totalPrice:3e3}]}}},m={args:{order:{...n,id:"ord-003",orderNumber:"ORD-2025-0155",orderType:"VPN",status:"Active",activationStatus:"Activated",totalAmount:1500,itemsSummary:[{productName:"VPN Japan Endpoint",name:"VPN Japan Endpoint",billingCycle:"Monthly",quantity:1,unitPrice:1500,totalPrice:1500}]}}},l={args:{order:n,variant:"list",onClick:()=>alert("Order clicked")}},u={args:{order:n,footer:r.jsx("p",{className:"text-xs text-muted-foreground",children:"Last updated: Jan 15, 2025"})}};var b,h,v;o.parameters={...o.parameters,docs:{...(b=o.parameters)==null?void 0:b.docs,source:{originalSource:`{ + args: { + order: baseOrder + } +}`,...(v=(h=o.parameters)==null?void 0:h.docs)==null?void 0:v.source}}};var S,N,T;d.parameters={...d.parameters,docs:{...(S=d.parameters)==null?void 0:S.docs,source:{originalSource:`{ + args: { + order: baseOrder, + onClick: () => alert("Order clicked") + } +}`,...(T=(N=d.parameters)==null?void 0:N.docs)==null?void 0:T.source}}};var O,j,w;c.parameters={...c.parameters,docs:{...(O=c.parameters)==null?void 0:O.docs,source:{originalSource:`{ + args: { + order: { + ...baseOrder, + id: "ord-002", + orderNumber: "ORD-2025-0099", + orderType: "SIM", + status: "Draft", + activationStatus: "Pending Activation", + totalAmount: 3000, + itemsSummary: [{ + productName: "Data SIM 20GB", + name: "Data SIM 20GB", + billingCycle: "Monthly", + quantity: 1, + unitPrice: 3000, + totalPrice: 3000 + }] + } + } +}`,...(w=(j=c.parameters)==null?void 0:j.docs)==null?void 0:w.source}}};var D,P,A;m.parameters={...m.parameters,docs:{...(D=m.parameters)==null?void 0:D.docs,source:{originalSource:`{ + args: { + order: { + ...baseOrder, + id: "ord-003", + orderNumber: "ORD-2025-0155", + orderType: "VPN", + status: "Active", + activationStatus: "Activated", + totalAmount: 1500, + itemsSummary: [{ + productName: "VPN Japan Endpoint", + name: "VPN Japan Endpoint", + billingCycle: "Monthly", + quantity: 1, + unitPrice: 1500, + totalPrice: 1500 + }] + } + } +}`,...(A=(P=m.parameters)==null?void 0:P.docs)==null?void 0:A.source}}};var I,C,M;l.parameters={...l.parameters,docs:{...(I=l.parameters)==null?void 0:I.docs,source:{originalSource:`{ + args: { + order: baseOrder, + variant: "list", + onClick: () => alert("Order clicked") + } +}`,...(M=(C=l.parameters)==null?void 0:C.docs)==null?void 0:M.source}}};var R,E,V;u.parameters={...u.parameters,docs:{...(R=u.parameters)==null?void 0:R.docs,source:{originalSource:`{ + args: { + order: baseOrder, + footer:

+ Last updated: Jan 15, 2025 +

+ } +}`,...(V=(E=u.parameters)==null?void 0:E.docs)==null?void 0:V.source}}};const ye=["Default","Interactive","SimOrder","VpnOrder","ListVariant","WithFooter"];export{o as Default,d as Interactive,l as ListVariant,c as SimOrder,m as VpnOrder,u as WithFooter,ye as __namedExportsOrder,xe as default}; diff --git a/apps/portal/public/storybook/assets/OrderCardSkeleton.stories-BWQRL5sV.js b/apps/portal/public/storybook/assets/OrderCardSkeleton.stories-BWQRL5sV.js new file mode 100644 index 00000000..bf0ed3bf --- /dev/null +++ b/apps/portal/public/storybook/assets/OrderCardSkeleton.stories-BWQRL5sV.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";function l(){return e.jsx("div",{className:"overflow-hidden rounded-2xl border border-slate-200 bg-white shadow-sm",children:e.jsx("div",{className:"px-6 py-4",children:e.jsxs("div",{className:"animate-pulse flex items-start justify-between gap-6",children:[e.jsxs("div",{className:"flex items-start gap-3 flex-1 min-w-0",children:[e.jsx("div",{className:"h-10 w-10 rounded-lg bg-slate-100 flex-shrink-0"}),e.jsxs("div",{className:"flex-1 min-w-0 space-y-3",children:[e.jsxs("div",{className:"flex items-center gap-2 flex-wrap",children:[e.jsx("div",{className:"h-5 w-32 rounded bg-slate-200"}),e.jsx("div",{className:"h-5 w-20 rounded-full bg-slate-200"})]}),e.jsx("div",{className:"h-3 w-40 rounded bg-slate-100"}),e.jsxs("div",{className:"flex flex-wrap gap-2",children:[e.jsx("div",{className:"h-6 w-24 rounded-md bg-slate-100"}),e.jsx("div",{className:"h-6 w-20 rounded-md bg-slate-100"}),e.jsx("div",{className:"h-6 w-16 rounded-md bg-slate-50"})]})]})]}),e.jsx("div",{className:"flex items-start gap-4 flex-shrink-0",children:e.jsxs("div",{className:"text-right space-y-1",children:[e.jsx("div",{className:"h-2 w-16 rounded bg-slate-100"}),e.jsx("div",{className:"h-6 w-20 rounded bg-slate-200"})]})})]})})})}l.__docgenInfo={description:"",methods:[],displayName:"OrderCardSkeleton"};const c={title:"Features/Orders/OrderCardSkeleton",component:l,parameters:{layout:"centered"},decorators:[t=>e.jsx("div",{className:"w-[600px]",children:e.jsx(t,{})})]},s={};var a,d,r;s.parameters={...s.parameters,docs:{...(a=s.parameters)==null?void 0:a.docs,source:{originalSource:"{}",...(r=(d=s.parameters)==null?void 0:d.docs)==null?void 0:r.source}}};const n=["Default"];export{s as Default,n as __namedExportsOrder,c as default}; diff --git a/apps/portal/public/storybook/assets/OrderConfirmation.stories-QSfVClKV.js b/apps/portal/public/storybook/assets/OrderConfirmation.stories-QSfVClKV.js new file mode 100644 index 00000000..38a74f1d --- /dev/null +++ b/apps/portal/public/storybook/assets/OrderConfirmation.stories-QSfVClKV.js @@ -0,0 +1,9 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{b as p}from"./next-navigation-FtRxULo3.js";import{L as j}from"./next-link-BmD4fPSy.js";import{B as n}from"./button-C8_cybvS.js";import{F as g}from"./CheckCircleIcon-Dva35lTP.js";import{F as v}from"./EnvelopeIcon-Bx94PDZ6.js";import{F as w}from"./DocumentTextIcon-Dk_xQMYi.js";import{r as o}from"./index-JhL3uwfD.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./spinner-mU4XywER.js";function N({title:r,titleId:s,...f},h){return o.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:h,"aria-labelledby":s},f),r?o.createElement("title",{id:s},r):null,o.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"m2.25 12 8.954-8.955c.44-.439 1.152-.439 1.591 0L21.75 12M4.5 9.75v10.125c0 .621.504 1.125 1.125 1.125H9.75v-4.875c0-.621.504-1.125 1.125-1.125h2.25c.621 0 1.125.504 1.125 1.125V21h4.125c.621 0 1.125-.504 1.125-1.125V9.75M8.25 21h8.25"}))}const b=o.forwardRef(N);function u(){const s=p().get("orderId");return e.jsxs("div",{className:"max-w-2xl mx-auto text-center py-8",children:[e.jsx("div",{className:"w-20 h-20 bg-success/10 rounded-full flex items-center justify-center mx-auto mb-6",children:e.jsx(g,{className:"h-12 w-12 text-success"})}),e.jsx("h1",{className:"text-2xl sm:text-3xl font-bold text-foreground mb-2",children:"Thank You for Your Order!"}),e.jsx("p",{className:"text-muted-foreground mb-8",children:"Your order has been successfully submitted and is being processed."}),s&&e.jsxs("div",{className:"bg-card rounded-xl border border-border p-6 mb-8 shadow-[var(--cp-shadow-1)]",children:[e.jsx("p",{className:"text-sm text-muted-foreground mb-1",children:"Order Reference"}),e.jsx("p",{className:"text-xl font-mono font-bold text-foreground",children:s})]}),e.jsxs("div",{className:"bg-muted/50 rounded-xl p-6 mb-8 text-left",children:[e.jsx("h2",{className:"font-semibold text-foreground mb-4",children:"What happens next?"}),e.jsxs("div",{className:"space-y-4",children:[e.jsxs("div",{className:"flex items-start gap-3",children:[e.jsx("div",{className:"w-8 h-8 bg-primary/10 rounded-full flex items-center justify-center flex-shrink-0",children:e.jsx(v,{className:"h-4 w-4 text-primary"})}),e.jsxs("div",{children:[e.jsx("p",{className:"font-medium text-foreground",children:"Order Confirmation Email"}),e.jsx("p",{className:"text-sm text-muted-foreground",children:"You'll receive an email with your order details shortly."})]})]}),e.jsxs("div",{className:"flex items-start gap-3",children:[e.jsx("div",{className:"w-8 h-8 bg-primary/10 rounded-full flex items-center justify-center flex-shrink-0",children:e.jsx(w,{className:"h-4 w-4 text-primary"})}),e.jsxs("div",{children:[e.jsx("p",{className:"font-medium text-foreground",children:"Order Review"}),e.jsx("p",{className:"text-sm text-muted-foreground",children:"Our team will review your order and may contact you to confirm details."})]})]}),e.jsxs("div",{className:"flex items-start gap-3",children:[e.jsx("div",{className:"w-8 h-8 bg-primary/10 rounded-full flex items-center justify-center flex-shrink-0",children:e.jsx(b,{className:"h-4 w-4 text-primary"})}),e.jsxs("div",{children:[e.jsx("p",{className:"font-medium text-foreground",children:"Service Activation"}),e.jsx("p",{className:"text-sm text-muted-foreground",children:"Once approved, we'll schedule installation or ship your equipment."})]})]})]})]}),e.jsxs("div",{className:"flex flex-col sm:flex-row gap-4 justify-center",children:[e.jsx(n,{as:"a",href:"/account",className:"sm:w-auto",children:"Go to Dashboard"}),e.jsx(n,{as:"a",href:"/account/orders",variant:"outline",className:"sm:w-auto",children:"View Orders"})]}),e.jsxs("p",{className:"text-sm text-muted-foreground mt-8",children:["Have questions?"," ",e.jsx(j,{href:"/contact",className:"text-primary hover:underline",children:"Contact Support"})]})]})}u.__docgenInfo={description:"OrderConfirmation - Shown after successful order submission",methods:[],displayName:"OrderConfirmation"};const _={title:"Features/Checkout/OrderConfirmation",component:u,parameters:{layout:"centered",nextjs:{navigation:{searchParams:{orderId:"ORD-20260307-001"}}}},decorators:[r=>e.jsx("div",{style:{width:640},children:e.jsx(r,{})})]},t={},a={parameters:{nextjs:{navigation:{searchParams:{}}}}};var i,d,c;t.parameters={...t.parameters,docs:{...(i=t.parameters)==null?void 0:i.docs,source:{originalSource:"{}",...(c=(d=t.parameters)==null?void 0:d.docs)==null?void 0:c.source}}};var m,l,x;a.parameters={...a.parameters,docs:{...(m=a.parameters)==null?void 0:m.docs,source:{originalSource:`{ + parameters: { + nextjs: { + navigation: { + searchParams: {} + } + } + } +}`,...(x=(l=a.parameters)==null?void 0:l.docs)==null?void 0:x.source}}};const B=["Default","WithoutOrderId"];export{t as Default,a as WithoutOrderId,B as __namedExportsOrder,_ as default}; diff --git a/apps/portal/public/storybook/assets/OrderDetailSkeleton.stories-CsIQ7N0Z.js b/apps/portal/public/storybook/assets/OrderDetailSkeleton.stories-CsIQ7N0Z.js new file mode 100644 index 00000000..7f3501e4 --- /dev/null +++ b/apps/portal/public/storybook/assets/OrderDetailSkeleton.stories-CsIQ7N0Z.js @@ -0,0 +1,5 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{c as u}from"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";function x({className:r}){return e.jsxs("div",{className:u("space-y-6",r),children:[e.jsx("div",{className:"grid grid-cols-2 md:grid-cols-4 gap-4",children:[1,2,3,4].map(s=>e.jsx("div",{className:"bg-card rounded-xl border border-border p-4 shadow-[var(--cp-shadow-1)]",children:e.jsxs("div",{className:"animate-pulse space-y-2",children:[e.jsx("div",{className:"h-3 w-16 rounded bg-muted"}),e.jsx("div",{className:"h-6 w-24 rounded bg-muted"})]})},s))}),e.jsx("div",{className:"bg-card rounded-xl border border-border p-5 shadow-[var(--cp-shadow-1)]",children:e.jsx("div",{className:"animate-pulse",children:e.jsx("div",{className:"flex items-start justify-between",children:[1,2,3,4].map((s,l)=>e.jsxs("div",{className:"flex flex-col items-center flex-1 relative",children:[e.jsx("div",{className:"h-8 w-8 rounded-full bg-muted"}),e.jsx("div",{className:"mt-2 h-3 w-16 rounded bg-muted"}),l<3&&e.jsx("div",{className:"absolute top-4 h-0.5 bg-muted -translate-y-1/2",style:{left:"calc(50% + 16px)",width:"calc(100% - 32px)"}})]},l))})})}),e.jsxs("div",{className:"rounded-3xl border border-border bg-card shadow-[var(--cp-shadow-1)]",children:[e.jsx("div",{className:"border-b border-border px-6 py-6 sm:px-8",children:e.jsxs("div",{className:"flex flex-col gap-4 sm:flex-row sm:items-start sm:justify-between animate-pulse",children:[e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx("div",{className:"h-11 w-11 rounded-xl bg-muted"}),e.jsxs("div",{className:"space-y-2",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("div",{className:"h-7 w-40 rounded bg-muted"}),e.jsx("div",{className:"h-5 w-20 rounded-full bg-muted"})]}),e.jsx("div",{className:"h-4 w-32 rounded bg-muted"})]})]}),e.jsxs("div",{className:"flex items-start gap-6",children:[e.jsxs("div",{className:"text-right space-y-1",children:[e.jsx("div",{className:"h-3 w-16 rounded bg-muted"}),e.jsx("div",{className:"h-8 w-24 rounded bg-muted"})]}),e.jsxs("div",{className:"text-right space-y-1",children:[e.jsx("div",{className:"h-3 w-16 rounded bg-muted"}),e.jsx("div",{className:"h-8 w-20 rounded bg-muted"})]})]})]})}),e.jsx("div",{className:"px-6 py-6 sm:px-8",children:e.jsxs("div",{className:"space-y-6 animate-pulse",children:[e.jsx("div",{className:"h-3 w-24 rounded bg-muted"}),e.jsx("div",{className:"rounded-xl border border-border overflow-hidden divide-y divide-border",children:[1,2,3].map(s=>e.jsxs("div",{className:"flex items-center gap-3 px-4 py-4",children:[e.jsx("div",{className:"h-8 w-8 rounded-lg bg-muted"}),e.jsxs("div",{className:"flex-1 space-y-2",children:[e.jsx("div",{className:"h-5 w-48 rounded bg-muted"}),e.jsx("div",{className:"h-3 w-16 rounded bg-muted"})]}),e.jsxs("div",{className:"text-right space-y-1",children:[e.jsx("div",{className:"h-5 w-20 rounded bg-muted"}),e.jsx("div",{className:"h-3 w-12 rounded bg-muted"})]})]},s))}),e.jsxs("div",{className:"space-y-4",children:[e.jsx("div",{className:"h-16 w-full rounded-lg bg-muted/50"}),e.jsx("div",{className:"h-20 w-full rounded-lg bg-muted/50"})]})]})})]})]})}x.__docgenInfo={description:"",methods:[],displayName:"OrderDetailSkeleton",props:{className:{required:!1,tsType:{name:"string"},description:""}}};const g={title:"Features/Orders/OrderDetailSkeleton",component:x,parameters:{layout:"centered"},decorators:[r=>e.jsx("div",{className:"w-[800px]",children:e.jsx(r,{})})]},d={},a={args:{className:"max-w-2xl"}};var c,i,m;d.parameters={...d.parameters,docs:{...(c=d.parameters)==null?void 0:c.docs,source:{originalSource:"{}",...(m=(i=d.parameters)==null?void 0:i.docs)==null?void 0:m.source}}};var t,o,n;a.parameters={...a.parameters,docs:{...(t=a.parameters)==null?void 0:t.docs,source:{originalSource:`{ + args: { + className: "max-w-2xl" + } +}`,...(n=(o=a.parameters)==null?void 0:o.docs)==null?void 0:n.source}}};const b=["Default","WithCustomClass"];export{d as Default,a as WithCustomClass,b as __namedExportsOrder,g as default}; diff --git a/apps/portal/public/storybook/assets/OrderProgressTimeline.stories-BRHSqsEM.js b/apps/portal/public/storybook/assets/OrderProgressTimeline.stories-BRHSqsEM.js new file mode 100644 index 00000000..b9328b43 --- /dev/null +++ b/apps/portal/public/storybook/assets/OrderProgressTimeline.stories-BRHSqsEM.js @@ -0,0 +1,48 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{c}from"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import{r as h}from"./index-JhL3uwfD.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";function ae({title:t,titleId:r,...n},i){return h.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":r},n),t?h.createElement("title",{id:r},t):null,h.createElement("path",{fillRule:"evenodd",d:"M19.916 4.626a.75.75 0 0 1 .208 1.04l-9 13.5a.75.75 0 0 1-1.154.114l-6-6a.75.75 0 0 1 1.06-1.06l5.353 5.353 8.493-12.74a.75.75 0 0 1 1.04-.207Z",clipRule:"evenodd"}))}const ne=h.forwardRef(ae),re={internet:[{id:"submitted",label:"Submitted"},{id:"review",label:"Under Review"},{id:"scheduled",label:"Scheduled"},{id:"active",label:"Active"}],sim:[{id:"submitted",label:"Submitted"},{id:"processing",label:"Processing"},{id:"activating",label:"Activating"},{id:"active",label:"Active"}],vpn:[{id:"submitted",label:"Submitted"},{id:"processing",label:"Processing"},{id:"active",label:"Active"}],default:[{id:"submitted",label:"Submitted"},{id:"processing",label:"Processing"},{id:"active",label:"Active"}]};function ie(t,r){const n=re[r];switch(t){case"active":return n.length-1;case"review":return 1;case"scheduled":return r==="internet"?2:1;case"activating":return r==="sim"?2:1;case"processing":default:return 1}}function te({serviceCategory:t,currentState:r,className:n}){const i=re[t],a=ie(r,t),x=r==="active";return e.jsx("div",{className:c("w-full",n),children:e.jsx("div",{className:"flex items-start justify-between",children:i.map((b,s)=>{const y=x?!0:sa,N=s===i.length-1;return e.jsxs("div",{className:c("flex flex-col items-center flex-1",!N&&"relative"),children:[e.jsxs("div",{className:"relative flex items-center justify-center",children:[y&&e.jsx("div",{className:"flex h-8 w-8 items-center justify-center rounded-full bg-success text-success-foreground shadow-sm",children:e.jsx(ne,{className:"h-4 w-4"})}),w&&e.jsx("div",{className:"flex h-8 w-8 items-center justify-center rounded-full bg-primary text-primary-foreground shadow-sm animate-pulse",children:e.jsx("div",{className:"h-2.5 w-2.5 rounded-full bg-primary-foreground"})}),j&&e.jsx("div",{className:"flex h-8 w-8 items-center justify-center rounded-full border-2 border-dashed border-muted-foreground/40 bg-card",children:e.jsx("div",{className:"h-2 w-2 rounded-full bg-muted-foreground/30"})})]}),e.jsx("span",{className:c("mt-2 text-xs font-medium text-center",y&&"text-success",w&&"text-primary",j&&"text-muted-foreground"),children:b.label}),!N&&e.jsx("div",{className:c("absolute top-4 w-full -translate-y-1/2",sa&&"border-t-2 border-dashed border-muted-foreground/30"),style:{left:"calc(50% + 16px)",width:"calc(100% - 32px)"}})]},b.id)})})})}function se(){return e.jsx("div",{className:"w-full",children:e.jsx("div",{className:"flex items-start justify-between",children:[1,2,3,4].map((t,r)=>e.jsxs("div",{className:"flex flex-col items-center flex-1 relative",children:[e.jsx("div",{className:"h-8 w-8 rounded-full bg-muted animate-pulse"}),e.jsx("div",{className:"mt-2 h-3 w-16 rounded bg-muted animate-pulse"}),r<3&&e.jsx("div",{className:"absolute top-4 h-0.5 bg-muted animate-pulse -translate-y-1/2",style:{left:"calc(50% + 16px)",width:"calc(100% - 32px)"}})]},r))})})}te.__docgenInfo={description:"",methods:[],displayName:"OrderProgressTimeline",props:{serviceCategory:{required:!0,tsType:{name:"union",raw:'"internet" | "sim" | "vpn" | "default"',elements:[{name:"literal",value:'"internet"'},{name:"literal",value:'"sim"'},{name:"literal",value:'"vpn"'},{name:"literal",value:'"default"'}]},description:""},currentState:{required:!0,tsType:{name:"union",raw:'"active" | "review" | "scheduled" | "activating" | "processing"',elements:[{name:"literal",value:'"active"'},{name:"literal",value:'"review"'},{name:"literal",value:'"scheduled"'},{name:"literal",value:'"activating"'},{name:"literal",value:'"processing"'}]},description:""},className:{required:!1,tsType:{name:"string"},description:""}}};se.__docgenInfo={description:"Skeleton for the progress timeline",methods:[],displayName:"OrderProgressTimelineSkeleton"};const pe={title:"Features/Orders/OrderProgressTimeline",component:te,parameters:{layout:"centered"},decorators:[t=>e.jsx("div",{className:"w-[600px]",children:e.jsx(t,{})})]},o={args:{serviceCategory:"internet",currentState:"processing"}},l={args:{serviceCategory:"internet",currentState:"review"}},d={args:{serviceCategory:"internet",currentState:"scheduled"}},m={args:{serviceCategory:"internet",currentState:"active"}},u={args:{serviceCategory:"sim",currentState:"processing"}},p={args:{serviceCategory:"sim",currentState:"activating"}},g={args:{serviceCategory:"sim",currentState:"active"}},v={args:{serviceCategory:"vpn",currentState:"processing"}},f={args:{serviceCategory:"vpn",currentState:"active"}},S={render:()=>e.jsx(se,{})};var C,P,I;o.parameters={...o.parameters,docs:{...(C=o.parameters)==null?void 0:C.docs,source:{originalSource:`{ + args: { + serviceCategory: "internet", + currentState: "processing" + } +}`,...(I=(P=o.parameters)==null?void 0:P.docs)==null?void 0:I.source}}};var A,T,E;l.parameters={...l.parameters,docs:{...(A=l.parameters)==null?void 0:A.docs,source:{originalSource:`{ + args: { + serviceCategory: "internet", + currentState: "review" + } +}`,...(E=(T=l.parameters)==null?void 0:T.docs)==null?void 0:E.source}}};var O,R,_;d.parameters={...d.parameters,docs:{...(O=d.parameters)==null?void 0:O.docs,source:{originalSource:`{ + args: { + serviceCategory: "internet", + currentState: "scheduled" + } +}`,...(_=(R=d.parameters)==null?void 0:R.docs)==null?void 0:_.source}}};var k,V,q;m.parameters={...m.parameters,docs:{...(k=m.parameters)==null?void 0:k.docs,source:{originalSource:`{ + args: { + serviceCategory: "internet", + currentState: "active" + } +}`,...(q=(V=m.parameters)==null?void 0:V.docs)==null?void 0:q.source}}};var F,L,M;u.parameters={...u.parameters,docs:{...(F=u.parameters)==null?void 0:F.docs,source:{originalSource:`{ + args: { + serviceCategory: "sim", + currentState: "processing" + } +}`,...(M=(L=u.parameters)==null?void 0:L.docs)==null?void 0:M.source}}};var U,B,Z;p.parameters={...p.parameters,docs:{...(U=p.parameters)==null?void 0:U.docs,source:{originalSource:`{ + args: { + serviceCategory: "sim", + currentState: "activating" + } +}`,...(Z=(B=p.parameters)==null?void 0:B.docs)==null?void 0:Z.source}}};var z,D,G;g.parameters={...g.parameters,docs:{...(z=g.parameters)==null?void 0:z.docs,source:{originalSource:`{ + args: { + serviceCategory: "sim", + currentState: "active" + } +}`,...(G=(D=g.parameters)==null?void 0:D.docs)==null?void 0:G.source}}};var H,J,K;v.parameters={...v.parameters,docs:{...(H=v.parameters)==null?void 0:H.docs,source:{originalSource:`{ + args: { + serviceCategory: "vpn", + currentState: "processing" + } +}`,...(K=(J=v.parameters)==null?void 0:J.docs)==null?void 0:K.source}}};var Q,W,X;f.parameters={...f.parameters,docs:{...(Q=f.parameters)==null?void 0:Q.docs,source:{originalSource:`{ + args: { + serviceCategory: "vpn", + currentState: "active" + } +}`,...(X=(W=f.parameters)==null?void 0:W.docs)==null?void 0:X.source}}};var Y,$,ee;S.parameters={...S.parameters,docs:{...(Y=S.parameters)==null?void 0:Y.docs,source:{originalSource:`{ + render: () => +}`,...(ee=($=S.parameters)==null?void 0:$.docs)==null?void 0:ee.source}}};const ge=["InternetProcessing","InternetReview","InternetScheduled","InternetActive","SimProcessing","SimActivating","SimActive","VpnProcessing","VpnActive","Skeleton"];export{m as InternetActive,o as InternetProcessing,l as InternetReview,d as InternetScheduled,p as SimActivating,g as SimActive,u as SimProcessing,S as Skeleton,f as VpnActive,v as VpnProcessing,ge as __namedExportsOrder,pe as default}; diff --git a/apps/portal/public/storybook/assets/OrderServiceIcon-B819JSbi.js b/apps/portal/public/storybook/assets/OrderServiceIcon-B819JSbi.js new file mode 100644 index 00000000..c0ad6672 --- /dev/null +++ b/apps/portal/public/storybook/assets/OrderServiceIcon-B819JSbi.js @@ -0,0 +1 @@ +import{j as a}from"./jsx-runtime-D_zvdyIk.js";import{r}from"./index-JhL3uwfD.js";import{F as s}from"./DevicePhoneMobileIcon-SMwjWf6M.js";import{F as i}from"./WifiIcon-BRIpHl8i.js";import{g as d}from"./helpers-C5Jr5RNp.js";function c({title:t,titleId:o,...e},n){return r.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:n,"aria-labelledby":o},e),t?r.createElement("title",{id:o},t):null,r.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"m21 7.5-9-5.25L3 7.5m18 0-9 5.25m9-5.25v9l-9 5.25M3 7.5l9 5.25M3 7.5v9l9 5.25m0-9v9"}))}const l=r.forwardRef(c);function m({title:t,titleId:o,...e},n){return r.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:n,"aria-labelledby":o},e),t?r.createElement("title",{id:o},t):null,r.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M16.5 10.5V6.75a4.5 4.5 0 1 0-9 0v3.75m-.75 11.25h10.5a2.25 2.25 0 0 0 2.25-2.25v-6.75a2.25 2.25 0 0 0-2.25-2.25H6.75a2.25 2.25 0 0 0-2.25 2.25v6.75a2.25 2.25 0 0 0 2.25 2.25Z"}))}const u=r.forwardRef(m);function p({orderType:t,category:o,className:e="h-6 w-6"}){switch(o??d(t)){case"internet":return a.jsx(i,{className:e});case"sim":return a.jsx(s,{className:e});case"vpn":return a.jsx(u,{className:e});default:return a.jsx(l,{className:e})}}p.__docgenInfo={description:"",methods:[],displayName:"OrderServiceIcon",props:{orderType:{required:!1,tsType:{name:"string"},description:""},category:{required:!1,tsType:{name:"ReturnType",elements:[{name:"getServiceCategory"}],raw:"ReturnType"},description:""},className:{required:!1,tsType:{name:"string"},description:"",defaultValue:{value:'"h-6 w-6"',computed:!1}}}};export{p as O}; diff --git a/apps/portal/public/storybook/assets/OrderServiceIcon.stories-4p-nQPSW.js b/apps/portal/public/storybook/assets/OrderServiceIcon.stories-4p-nQPSW.js new file mode 100644 index 00000000..1d129c4c --- /dev/null +++ b/apps/portal/public/storybook/assets/OrderServiceIcon.stories-4p-nQPSW.js @@ -0,0 +1,26 @@ +import{O as v}from"./OrderServiceIcon-B819JSbi.js";import"./jsx-runtime-D_zvdyIk.js";import"./index-JhL3uwfD.js";import"./DevicePhoneMobileIcon-SMwjWf6M.js";import"./WifiIcon-BRIpHl8i.js";import"./helpers-C5Jr5RNp.js";import"./coerce-BirWdn0y.js";const P={title:"Features/Orders/OrderServiceIcon",component:v,parameters:{layout:"centered"}},r={args:{orderType:"Internet"}},e={args:{orderType:"SIM"}},a={args:{orderType:"VPN"}},s={args:{orderType:"Other"}},o={args:{category:"internet"}},t={args:{orderType:"Internet",className:"h-10 w-10"}};var n,c,p;r.parameters={...r.parameters,docs:{...(n=r.parameters)==null?void 0:n.docs,source:{originalSource:`{ + args: { + orderType: "Internet" + } +}`,...(p=(c=r.parameters)==null?void 0:c.docs)==null?void 0:p.source}}};var m,d,i;e.parameters={...e.parameters,docs:{...(m=e.parameters)==null?void 0:m.docs,source:{originalSource:`{ + args: { + orderType: "SIM" + } +}`,...(i=(d=e.parameters)==null?void 0:d.docs)==null?void 0:i.source}}};var g,u,y;a.parameters={...a.parameters,docs:{...(g=a.parameters)==null?void 0:g.docs,source:{originalSource:`{ + args: { + orderType: "VPN" + } +}`,...(y=(u=a.parameters)==null?void 0:u.docs)==null?void 0:y.source}}};var l,I,S;s.parameters={...s.parameters,docs:{...(l=s.parameters)==null?void 0:l.docs,source:{originalSource:`{ + args: { + orderType: "Other" + } +}`,...(S=(I=s.parameters)==null?void 0:I.docs)==null?void 0:S.source}}};var T,O,f;o.parameters={...o.parameters,docs:{...(T=o.parameters)==null?void 0:T.docs,source:{originalSource:`{ + args: { + category: "internet" + } +}`,...(f=(O=o.parameters)==null?void 0:O.docs)==null?void 0:f.source}}};var h,N,V;t.parameters={...t.parameters,docs:{...(h=t.parameters)==null?void 0:h.docs,source:{originalSource:`{ + args: { + orderType: "Internet", + className: "h-10 w-10" + } +}`,...(V=(N=t.parameters)==null?void 0:N.docs)==null?void 0:V.source}}};const _=["Internet","Sim","Vpn","DefaultType","ByCategory","LargeIcon"];export{o as ByCategory,s as DefaultType,r as Internet,t as LargeIcon,e as Sim,a as Vpn,_ as __namedExportsOrder,P as default}; diff --git a/apps/portal/public/storybook/assets/OrderSubmitSection.stories-DSyTqli0.js b/apps/portal/public/storybook/assets/OrderSubmitSection.stories-DSyTqli0.js new file mode 100644 index 00000000..b6fb8199 --- /dev/null +++ b/apps/portal/public/storybook/assets/OrderSubmitSection.stories-DSyTqli0.js @@ -0,0 +1,51 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{B as l}from"./button-C8_cybvS.js";import{A as O}from"./AlertBanner-Bnlyj1xc.js";import{S as q}from"./shield-check-CusqZMaY.js";import{fn as u}from"./index-B9TJ7cVi.js";import"./index-JhL3uwfD.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./spinner-mU4XywER.js";import"./XCircleIcon-CiVBnngB.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./InformationCircleIcon-Clz7d-56.js";import"./CheckCircleIcon-Dva35lTP.js";import"./createLucideIcon-CctB0W3q.js";function E({pricing:r,submitError:s,isSubmitting:m,canSubmit:C,onSubmit:W,onBack:k}){return e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"bg-card border border-border rounded-2xl p-6 md:p-7 text-center shadow-[var(--cp-shadow-1)]",children:[e.jsx("div",{className:"w-16 h-16 bg-primary/10 rounded-full flex items-center justify-center mx-auto mb-4 shadow-sm border border-primary/20",children:e.jsx(q,{className:"w-8 h-8 text-primary"})}),e.jsx("h2",{className:"text-2xl font-bold text-foreground mb-2",children:"Review & Submit"}),e.jsx("p",{className:"text-muted-foreground mb-4 max-w-xl mx-auto",children:"You're almost done. Confirm your details above, then submit your order. We'll review and notify you when everything is ready."}),s&&e.jsx("div",{className:"pb-4",children:e.jsx(O,{variant:"error",title:"Unable to submit order",elevated:!0,children:s})}),e.jsxs("div",{className:"bg-muted/50 rounded-lg p-4 border border-border text-left max-w-2xl mx-auto",children:[e.jsx("h3",{className:"font-semibold text-foreground mb-2",children:"What to expect"}),e.jsxs("div",{className:"text-sm text-muted-foreground space-y-1",children:[e.jsx("p",{children:"• Our team reviews your order and schedules setup if needed"}),e.jsx("p",{children:"• We may contact you to confirm details or availability"}),e.jsx("p",{children:"• We verify your residence card before service activation"}),e.jsx("p",{children:"• We only charge your card after the order is approved"}),e.jsx("p",{children:"• You'll receive confirmation and next steps by email"})]})]}),e.jsx("div",{className:"mt-4 bg-card rounded-lg p-4 border border-border max-w-2xl mx-auto shadow-[var(--cp-shadow-1)]",children:e.jsxs("div",{className:"flex justify-between items-center",children:[e.jsx("span",{className:"font-medium text-muted-foreground",children:"Estimated Total"}),e.jsxs("div",{className:"text-right",children:[e.jsxs("div",{className:"text-xl font-bold text-foreground",children:["¥",r.monthlyTotal.toLocaleString(),"/mo"]}),r.oneTimeTotal>0&&e.jsxs("div",{className:"text-sm text-warning font-medium",children:["+ ¥",r.oneTimeTotal.toLocaleString()," one-time"]})]})]})})]}),e.jsxs("div",{className:"flex gap-4",children:[e.jsx(l,{type:"button",variant:"ghost",className:"flex-1 py-4 text-muted-foreground hover:text-foreground",onClick:k,children:"← Back to Configuration"}),e.jsx(l,{type:"button",className:"flex-1 py-4 text-lg",onClick:W,disabled:!C||m,isLoading:m,loadingText:"Submitting...",children:"Submit order"})]})]})}E.__docgenInfo={description:"",methods:[],displayName:"OrderSubmitSection",props:{pricing:{required:!0,tsType:{name:"CartPricing"},description:""},submitError:{required:!0,tsType:{name:"union",raw:"string | null",elements:[{name:"string"},{name:"null"}]},description:""},isSubmitting:{required:!0,tsType:{name:"boolean"},description:""},canSubmit:{required:!0,tsType:{name:"boolean"},description:""},onSubmit:{required:!0,tsType:{name:"signature",type:"function",raw:"() => void",signature:{arguments:[],return:{name:"void"}}},description:""},onBack:{required:!0,tsType:{name:"signature",type:"function",raw:"() => void",signature:{arguments:[],return:{name:"void"}}},description:""}}};const V={title:"Features/Checkout/OrderSubmitSection",component:E,parameters:{layout:"centered"},decorators:[r=>e.jsx("div",{style:{width:640},children:e.jsx(r,{})})],args:{onSubmit:u(),onBack:u()}},t={args:{pricing:{monthlyTotal:5980,oneTimeTotal:0},submitError:null,isSubmitting:!1,canSubmit:!0}},n={args:{pricing:{monthlyTotal:5980,oneTimeTotal:3300},submitError:null,isSubmitting:!1,canSubmit:!0}},o={args:{pricing:{monthlyTotal:5980,oneTimeTotal:0},submitError:null,isSubmitting:!0,canSubmit:!0}},i={args:{pricing:{monthlyTotal:5980,oneTimeTotal:0},submitError:null,isSubmitting:!1,canSubmit:!1}},a={args:{pricing:{monthlyTotal:5980,oneTimeTotal:0},submitError:"An unexpected error occurred. Please try again or contact support.",isSubmitting:!1,canSubmit:!0}};var c,d,p;t.parameters={...t.parameters,docs:{...(c=t.parameters)==null?void 0:c.docs,source:{originalSource:`{ + args: { + pricing: { + monthlyTotal: 5980, + oneTimeTotal: 0 + }, + submitError: null, + isSubmitting: false, + canSubmit: true + } +}`,...(p=(d=t.parameters)==null?void 0:d.docs)==null?void 0:p.source}}};var b,g,x;n.parameters={...n.parameters,docs:{...(b=n.parameters)==null?void 0:b.docs,source:{originalSource:`{ + args: { + pricing: { + monthlyTotal: 5980, + oneTimeTotal: 3300 + }, + submitError: null, + isSubmitting: false, + canSubmit: true + } +}`,...(x=(g=n.parameters)==null?void 0:g.docs)==null?void 0:x.source}}};var h,f,y;o.parameters={...o.parameters,docs:{...(h=o.parameters)==null?void 0:h.docs,source:{originalSource:`{ + args: { + pricing: { + monthlyTotal: 5980, + oneTimeTotal: 0 + }, + submitError: null, + isSubmitting: true, + canSubmit: true + } +}`,...(y=(f=o.parameters)==null?void 0:f.docs)==null?void 0:y.source}}};var S,T,v;i.parameters={...i.parameters,docs:{...(S=i.parameters)==null?void 0:S.docs,source:{originalSource:`{ + args: { + pricing: { + monthlyTotal: 5980, + oneTimeTotal: 0 + }, + submitError: null, + isSubmitting: false, + canSubmit: false + } +}`,...(v=(T=i.parameters)==null?void 0:T.docs)==null?void 0:v.source}}};var j,w,N;a.parameters={...a.parameters,docs:{...(j=a.parameters)==null?void 0:j.docs,source:{originalSource:`{ + args: { + pricing: { + monthlyTotal: 5980, + oneTimeTotal: 0 + }, + submitError: "An unexpected error occurred. Please try again or contact support.", + isSubmitting: false, + canSubmit: true + } +}`,...(N=(w=a.parameters)==null?void 0:w.docs)==null?void 0:N.source}}};const X=["Default","WithOneTimeFee","Submitting","CannotSubmit","WithError"];export{i as CannotSubmit,t as Default,o as Submitting,a as WithError,n as WithOneTimeFee,X as __namedExportsOrder,V as default}; diff --git a/apps/portal/public/storybook/assets/OrderSummary-nn5Jq6Ex.js b/apps/portal/public/storybook/assets/OrderSummary-nn5Jq6Ex.js new file mode 100644 index 00000000..8542a320 --- /dev/null +++ b/apps/portal/public/storybook/assets/OrderSummary-nn5Jq6Ex.js @@ -0,0 +1,11 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{u as j}from"./next-navigation-FtRxULo3.js";import{B as c}from"./button-C8_cybvS.js";import{F as b}from"./ArrowLeftIcon-Cw1eswTb.js";import{F as d}from"./ArrowRightIcon--Vuz7Q7x.js";function y({plan:n,selectedAddons:r,activationFees:t,monthlyTotal:l,oneTimeTotal:i,hasMissingPrices:m}){return e.jsxs("div",{className:"pt-2 border-t border-border mb-4",children:[e.jsx("h4",{className:"font-semibold text-foreground mb-3",children:"Pricing Summary"}),e.jsxs("div",{className:"space-y-2 mb-4",children:[e.jsx("div",{className:"text-sm font-medium text-foreground mb-1",children:"Monthly Costs:"}),n.monthlyPrice!=null&&e.jsxs("div",{className:"flex justify-between text-sm",children:[e.jsxs("span",{className:"text-muted-foreground",children:["Base Plan ",n.internetPlanTier&&`(${n.internetPlanTier})`,":"]}),e.jsxs("span",{className:"font-medium",children:["¥",n.monthlyPrice.toLocaleString()]})]}),r.map((s,a)=>s.billingCycle==="Monthly"&&e.jsxs("div",{className:"flex justify-between text-sm",children:[e.jsxs("span",{className:"text-muted-foreground",children:[String(s.name),":"]}),e.jsxs("span",{className:"font-medium",children:["¥",(s.monthlyPrice??0).toLocaleString(),"/month"]})]},a)),e.jsxs("div",{className:"flex justify-between pt-2 border-t border-border",children:[e.jsx("span",{className:"font-semibold text-foreground",children:"Total Monthly:"}),e.jsx("span",{className:"font-bold text-lg text-blue-600",children:m?e.jsx("span",{className:"text-red-600 text-sm",children:"Some prices unavailable"}):`¥${l.toLocaleString()}`})]})]}),(i>0||t.length>0)&&e.jsxs("div",{className:"space-y-2",children:[e.jsx("div",{className:"text-sm font-medium text-foreground mb-1",children:"One-time Costs:"}),t.map((s,a)=>e.jsxs("div",{className:"flex justify-between text-sm",children:[e.jsxs("span",{className:"text-muted-foreground",children:[String(s.name),":"]}),e.jsxs("span",{className:"font-medium",children:["¥",(s.oneTimePrice??0).toLocaleString()]})]},a)),r.map((s,a)=>s.billingCycle!=="Monthly"&&e.jsxs("div",{className:"flex justify-between text-sm",children:[e.jsxs("span",{className:"text-muted-foreground",children:[String(s.name),":"]}),e.jsxs("span",{className:"font-medium",children:["¥",(s.oneTimePrice??0).toLocaleString()]})]},a)),i>0&&e.jsxs("div",{className:"flex justify-between pt-2 border-t border-border",children:[e.jsx("span",{className:"font-semibold text-foreground",children:"Total One-time:"}),e.jsxs("span",{className:"font-bold text-lg text-orange-600",children:["¥",i.toLocaleString()]})]})]})]})}function N({plan:n,selectedAddons:r,activationFees:t,infoLines:l,monthlyTotal:i,oneTimeTotal:m}){return e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"space-y-2 mb-4",children:[e.jsxs("div",{className:"flex justify-between",children:[e.jsx("span",{className:"text-muted-foreground",children:n.name}),e.jsxs("span",{className:"font-medium",children:["¥",(n.monthlyPrice??0).toLocaleString(),"/mo"]})]}),t.map((s,a)=>e.jsxs("div",{className:"flex justify-between",children:[e.jsx("span",{className:"text-muted-foreground",children:String(s.name)}),e.jsxs("span",{className:"font-medium",children:["¥",(s.oneTimePrice??s.unitPrice??0).toLocaleString()," one-time"]})]},a)),r.map((s,a)=>e.jsxs("div",{className:"flex justify-between",children:[e.jsx("span",{className:"text-muted-foreground",children:String(s.name)}),e.jsxs("span",{className:"font-medium",children:["¥",(s.billingCycle==="Monthly"?s.monthlyPrice??0:s.oneTimePrice??0).toLocaleString(),s.billingCycle==="Monthly"?"/mo":" one-time"]})]},a))]}),l.length>0&&e.jsx("div",{className:"text-xs text-muted-foreground mb-4 space-y-1",children:l.map((s,a)=>e.jsxs("div",{children:["• ",s]},a))}),e.jsxs("div",{className:"border-t pt-4 mb-4",children:[e.jsxs("div",{className:"flex justify-between text-lg font-semibold",children:[e.jsx("span",{children:"Monthly Total:"}),e.jsxs("span",{children:["¥",i.toLocaleString(),"/mo"]})]}),m>0&&e.jsxs("div",{className:"flex justify-between text-lg font-semibold text-orange-600",children:[e.jsx("span",{children:"One-time Total:"}),e.jsxs("span",{children:["¥",m.toLocaleString()]})]})]})]})}function v({variant:n,showActions:r,onContinue:t,backUrl:l,backLabel:i,continueLabel:m,disabled:s}){const a=j();return r?n==="simple"?e.jsxs("div",{className:"flex gap-4",children:[l?e.jsx(c,{variant:"outline",className:"flex-1",leftIcon:e.jsx(b,{className:"h-4 w-4"}),onClick:()=>{s||a.push(l)},disabled:s,children:i}):null,t?e.jsx(c,{className:"flex-1",rightIcon:e.jsx(d,{className:"h-4 w-4"}),onClick:t,disabled:s,children:m}):null]}):t?e.jsx("div",{children:e.jsx(c,{size:"lg",className:"w-full mt-8 group text-lg font-bold",rightIcon:e.jsx(d,{className:"w-5 h-5"}),onClick:t,disabled:s,children:m})}):null:null}function w({plan:n,configDetails:r,addonCount:t}){return e.jsxs("div",{className:"space-y-2 text-sm mb-4",children:[e.jsxs("div",{className:"flex justify-between",children:[e.jsx("span",{className:"text-muted-foreground",children:"Plan:"}),e.jsxs("span",{className:"font-medium",children:[n.name,n.internetPlanTier&&` (${n.internetPlanTier})`]})]}),r.map((l,i)=>e.jsxs("div",{className:"flex justify-between",children:[e.jsxs("span",{className:"text-muted-foreground",children:[l.label,":"]}),e.jsx("span",{className:"font-medium",children:l.value})]},i)),t>0&&e.jsxs("div",{className:"flex justify-between",children:[e.jsx("span",{className:"text-muted-foreground",children:"Add-ons:"}),e.jsxs("span",{className:"font-medium",children:[t," selected"]})]})]})}const P={enhanced:"bg-gradient-to-br from-muted to-info-bg rounded-2xl border-2 border-border p-8 shadow-lg",simple:"bg-card border border-border rounded-xl p-6"};function S({plan:n,selectedAddons:r=[],activationFees:t=[],configDetails:l=[],infoLines:i=[],monthlyTotal:m,oneTimeTotal:s=0,hasMissingPrices:a=!1,onContinue:u,backUrl:f,backLabel:x="Back to Plans",continueLabel:p="Continue to Checkout",showActions:h=!0,variant:o="simple",disabled:g=!1}){return e.jsxs("div",{className:P[o],children:[e.jsx("h3",{className:"text-lg font-semibold text-foreground mb-4",children:"Order Summary"}),e.jsx(w,{plan:n,configDetails:l,addonCount:r.length}),o==="enhanced"&&e.jsx(y,{plan:n,selectedAddons:r,activationFees:t,monthlyTotal:m,oneTimeTotal:s,hasMissingPrices:a}),o==="simple"&&e.jsx(N,{plan:n,selectedAddons:r,activationFees:t,infoLines:i,monthlyTotal:m,oneTimeTotal:s}),e.jsx(v,{variant:o,showActions:h,onContinue:u,backUrl:f,backLabel:x,continueLabel:p,disabled:g})]})}S.__docgenInfo={description:"",methods:[],displayName:"OrderSummary",props:{plan:{required:!0,tsType:{name:"signature",type:"object",raw:`{ + name: string; + monthlyPrice?: number | null; + internetPlanTier?: string | null; +}`,signature:{properties:[{key:"name",value:{name:"string",required:!0}},{key:"monthlyPrice",value:{name:"union",raw:"number | null",elements:[{name:"number"},{name:"null"}],required:!1}},{key:"internetPlanTier",value:{name:"union",raw:"string | null",elements:[{name:"string"},{name:"null"}],required:!1}}]}},description:""},selectedAddons:{required:!1,tsType:{name:"Array",elements:[{name:"z.infer",elements:[{name:"catalogProductBaseSchema"}],raw:"z.infer"}],raw:"CatalogProductBase[]"},description:"",defaultValue:{value:"[]",computed:!1}},activationFees:{required:!1,tsType:{name:"Array",elements:[{name:"z.infer",elements:[{name:"catalogProductBaseSchema"}],raw:"z.infer"}],raw:"CatalogProductBase[]"},description:"",defaultValue:{value:"[]",computed:!1}},configDetails:{required:!1,tsType:{name:"Array",elements:[{name:"signature",type:"object",raw:`{ + label: string; + value: string; +}`,signature:{properties:[{key:"label",value:{name:"string",required:!0}},{key:"value",value:{name:"string",required:!0}}]}}],raw:`Array<{ + label: string; + value: string; +}>`},description:"",defaultValue:{value:"[]",computed:!1}},infoLines:{required:!1,tsType:{name:"Array",elements:[{name:"string"}],raw:"string[]"},description:"",defaultValue:{value:"[]",computed:!1}},monthlyTotal:{required:!0,tsType:{name:"number"},description:""},oneTimeTotal:{required:!1,tsType:{name:"number"},description:"",defaultValue:{value:"0",computed:!1}},hasMissingPrices:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"false",computed:!1}},onContinue:{required:!1,tsType:{name:"signature",type:"function",raw:"() => void",signature:{arguments:[],return:{name:"void"}}},description:""},backUrl:{required:!1,tsType:{name:"string"},description:""},backLabel:{required:!1,tsType:{name:"string"},description:"",defaultValue:{value:'"Back to Plans"',computed:!1}},continueLabel:{required:!1,tsType:{name:"string"},description:"",defaultValue:{value:'"Continue to Checkout"',computed:!1}},showActions:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"true",computed:!1}},variant:{required:!1,tsType:{name:"union",raw:'"simple" | "enhanced"',elements:[{name:"literal",value:'"simple"'},{name:"literal",value:'"enhanced"'}]},description:"",defaultValue:{value:'"simple"',computed:!1}},disabled:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"false",computed:!1}}}};export{S as O}; diff --git a/apps/portal/public/storybook/assets/OrderSummary.stories-Cocc3tug.js b/apps/portal/public/storybook/assets/OrderSummary.stories-Cocc3tug.js new file mode 100644 index 00000000..500d8180 --- /dev/null +++ b/apps/portal/public/storybook/assets/OrderSummary.stories-Cocc3tug.js @@ -0,0 +1,106 @@ +import{j as o}from"./jsx-runtime-D_zvdyIk.js";import{O as C}from"./OrderSummary-nn5Jq6Ex.js";import"./next-navigation-FtRxULo3.js";import"./button-C8_cybvS.js";import"./index-JhL3uwfD.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./spinner-mU4XywER.js";import"./ArrowLeftIcon-Cw1eswTb.js";import"./ArrowRightIcon--Vuz7Q7x.js";const V={title:"Features/Services/Base/OrderSummary",component:C,parameters:{layout:"centered"},decorators:[S=>o.jsx("div",{style:{maxWidth:450},children:o.jsx(S,{})})]},n={args:{plan:{name:"Fiber Internet 500",monthlyPrice:4980},monthlyTotal:4980,variant:"simple"}},e={args:{plan:{name:"Fiber Internet 1G",monthlyPrice:6980,internetPlanTier:"1 Gbps"},selectedAddons:[{id:"addon-1",sku:"WIFI-ROUTER",name:"Wi-Fi Router Rental",billingCycle:"Monthly",monthlyPrice:500,oneTimePrice:0}],activationFees:[{id:"fee-1",sku:"INSTALL-FEE",name:"Installation Fee",billingCycle:"Onetime",monthlyPrice:0,oneTimePrice:3300}],monthlyTotal:7480,oneTimeTotal:3300,variant:"simple",showActions:!0,onContinue:()=>{},backUrl:"/services/internet"}},t={args:{plan:{name:"Fiber Internet 1G",monthlyPrice:6980,internetPlanTier:"1 Gbps"},selectedAddons:[{id:"addon-1",sku:"WIFI-ROUTER",name:"Wi-Fi Router Rental",billingCycle:"Monthly",monthlyPrice:500,oneTimePrice:0}],activationFees:[{id:"fee-1",sku:"INSTALL-FEE",name:"Installation Fee",billingCycle:"Onetime",monthlyPrice:0,oneTimePrice:3300}],configDetails:[{label:"Speed",value:"1 Gbps"},{label:"Contract",value:"24 months"}],monthlyTotal:7480,oneTimeTotal:3300,variant:"enhanced",onContinue:()=>{}}},a={args:{plan:{name:"Fiber Internet 500",monthlyPrice:4980},infoLines:["Prices shown exclude tax","First month is prorated","24-month minimum contract"],monthlyTotal:4980,variant:"simple"}},r={args:{plan:{name:"Fiber Internet 500",monthlyPrice:4980},monthlyTotal:4980,showActions:!1,variant:"simple"}},i={args:{plan:{name:"Fiber Internet 500",monthlyPrice:4980},monthlyTotal:4980,variant:"simple",onContinue:()=>{},disabled:!0}};var s,l,m;n.parameters={...n.parameters,docs:{...(s=n.parameters)==null?void 0:s.docs,source:{originalSource:`{ + args: { + plan: { + name: "Fiber Internet 500", + monthlyPrice: 4980 + }, + monthlyTotal: 4980, + variant: "simple" + } +}`,...(m=(l=n.parameters)==null?void 0:l.docs)==null?void 0:m.source}}};var c,d,p;e.parameters={...e.parameters,docs:{...(c=e.parameters)==null?void 0:c.docs,source:{originalSource:`{ + args: { + plan: { + name: "Fiber Internet 1G", + monthlyPrice: 6980, + internetPlanTier: "1 Gbps" + }, + selectedAddons: [{ + id: "addon-1", + sku: "WIFI-ROUTER", + name: "Wi-Fi Router Rental", + billingCycle: "Monthly", + monthlyPrice: 500, + oneTimePrice: 0 + }] as any, + activationFees: [{ + id: "fee-1", + sku: "INSTALL-FEE", + name: "Installation Fee", + billingCycle: "Onetime", + monthlyPrice: 0, + oneTimePrice: 3300 + }] as any, + monthlyTotal: 7480, + oneTimeTotal: 3300, + variant: "simple", + showActions: true, + onContinue: () => {}, + backUrl: "/services/internet" + } +}`,...(p=(d=e.parameters)==null?void 0:d.docs)==null?void 0:p.source}}};var h,u,y;t.parameters={...t.parameters,docs:{...(h=t.parameters)==null?void 0:h.docs,source:{originalSource:`{ + args: { + plan: { + name: "Fiber Internet 1G", + monthlyPrice: 6980, + internetPlanTier: "1 Gbps" + }, + selectedAddons: [{ + id: "addon-1", + sku: "WIFI-ROUTER", + name: "Wi-Fi Router Rental", + billingCycle: "Monthly", + monthlyPrice: 500, + oneTimePrice: 0 + }] as any, + activationFees: [{ + id: "fee-1", + sku: "INSTALL-FEE", + name: "Installation Fee", + billingCycle: "Onetime", + monthlyPrice: 0, + oneTimePrice: 3300 + }] as any, + configDetails: [{ + label: "Speed", + value: "1 Gbps" + }, { + label: "Contract", + value: "24 months" + }], + monthlyTotal: 7480, + oneTimeTotal: 3300, + variant: "enhanced", + onContinue: () => {} + } +}`,...(y=(u=t.parameters)==null?void 0:u.docs)==null?void 0:y.source}}};var T,F,b;a.parameters={...a.parameters,docs:{...(T=a.parameters)==null?void 0:T.docs,source:{originalSource:`{ + args: { + plan: { + name: "Fiber Internet 500", + monthlyPrice: 4980 + }, + infoLines: ["Prices shown exclude tax", "First month is prorated", "24-month minimum contract"], + monthlyTotal: 4980, + variant: "simple" + } +}`,...(b=(F=a.parameters)==null?void 0:F.docs)==null?void 0:b.source}}};var P,I,g;r.parameters={...r.parameters,docs:{...(P=r.parameters)==null?void 0:P.docs,source:{originalSource:`{ + args: { + plan: { + name: "Fiber Internet 500", + monthlyPrice: 4980 + }, + monthlyTotal: 4980, + showActions: false, + variant: "simple" + } +}`,...(g=(I=r.parameters)==null?void 0:I.docs)==null?void 0:g.source}}};var v,A,R;i.parameters={...i.parameters,docs:{...(v=i.parameters)==null?void 0:v.docs,source:{originalSource:`{ + args: { + plan: { + name: "Fiber Internet 500", + monthlyPrice: 4980 + }, + monthlyTotal: 4980, + variant: "simple", + onContinue: () => {}, + disabled: true + } +}`,...(R=(A=i.parameters)==null?void 0:A.docs)==null?void 0:R.source}}};const _=["SimpleVariant","WithAddonsAndFees","EnhancedVariant","WithInfoLines","NoActions","Disabled"];export{i as Disabled,t as EnhancedVariant,r as NoActions,n as SimpleVariant,e as WithAddonsAndFees,a as WithInfoLines,_ as __namedExportsOrder,V as default}; diff --git a/apps/portal/public/storybook/assets/OtpExpiryDisplay-BGgB7Tk6.js b/apps/portal/public/storybook/assets/OtpExpiryDisplay-BGgB7Tk6.js new file mode 100644 index 00000000..fa19b41f --- /dev/null +++ b/apps/portal/public/storybook/assets/OtpExpiryDisplay-BGgB7Tk6.js @@ -0,0 +1 @@ +import{j as r}from"./jsx-runtime-D_zvdyIk.js";import{C as s}from"./clock-C92s7kSC.js";function i(e){const t=Math.floor(e/60),n=e%60;return`${t}:${n.toString().padStart(2,"0")}`}function a({timeRemaining:e,isExpired:t}){return t?r.jsx("p",{className:"text-sm text-danger text-center",role:"alert",children:"Code expired. Please request a new one."}):e!==null?r.jsxs("div",{className:"flex items-center justify-center gap-2 text-sm text-muted-foreground",children:[r.jsx(s,{className:"w-4 h-4"}),r.jsxs("span",{children:["Code expires in ",i(e)]})]}):null}a.__docgenInfo={description:"",methods:[],displayName:"OtpExpiryDisplay",props:{timeRemaining:{required:!0,tsType:{name:"union",raw:"number | null",elements:[{name:"number"},{name:"null"}]},description:""},isExpired:{required:!0,tsType:{name:"boolean"},description:""}}};export{a as O}; diff --git a/apps/portal/public/storybook/assets/OtpExpiryDisplay.stories-DQ6_GOyY.js b/apps/portal/public/storybook/assets/OtpExpiryDisplay.stories-DQ6_GOyY.js new file mode 100644 index 00000000..2cf05661 --- /dev/null +++ b/apps/portal/public/storybook/assets/OtpExpiryDisplay.stories-DQ6_GOyY.js @@ -0,0 +1,21 @@ +import{O as E}from"./OtpExpiryDisplay-BGgB7Tk6.js";import"./jsx-runtime-D_zvdyIk.js";import"./clock-C92s7kSC.js";import"./createLucideIcon-CctB0W3q.js";import"./index-JhL3uwfD.js";const S={title:"Molecules/OtpExpiryDisplay",component:E},e={args:{timeRemaining:245,isExpired:!1}},r={args:{timeRemaining:15,isExpired:!1}},s={args:{timeRemaining:0,isExpired:!0}},i={args:{timeRemaining:null,isExpired:!1}};var a,n,o;e.parameters={...e.parameters,docs:{...(a=e.parameters)==null?void 0:a.docs,source:{originalSource:`{ + args: { + timeRemaining: 245, + isExpired: false + } +}`,...(o=(n=e.parameters)==null?void 0:n.docs)==null?void 0:o.source}}};var t,m,p;r.parameters={...r.parameters,docs:{...(t=r.parameters)==null?void 0:t.docs,source:{originalSource:`{ + args: { + timeRemaining: 15, + isExpired: false + } +}`,...(p=(m=r.parameters)==null?void 0:m.docs)==null?void 0:p.source}}};var c,d,g;s.parameters={...s.parameters,docs:{...(c=s.parameters)==null?void 0:c.docs,source:{originalSource:`{ + args: { + timeRemaining: 0, + isExpired: true + } +}`,...(g=(d=s.parameters)==null?void 0:d.docs)==null?void 0:g.source}}};var l,u,x;i.parameters={...i.parameters,docs:{...(l=i.parameters)==null?void 0:l.docs,source:{originalSource:`{ + args: { + timeRemaining: null, + isExpired: false + } +}`,...(x=(u=i.parameters)==null?void 0:u.docs)==null?void 0:x.source}}};const w=["CountingDown","AlmostExpired","Expired","NoTimer"];export{r as AlmostExpired,e as CountingDown,s as Expired,i as NoTimer,w as __namedExportsOrder,S as default}; diff --git a/apps/portal/public/storybook/assets/OtpInput-6kd_2E0v.js b/apps/portal/public/storybook/assets/OtpInput-6kd_2E0v.js new file mode 100644 index 00000000..7a0169b3 --- /dev/null +++ b/apps/portal/public/storybook/assets/OtpInput-6kd_2E0v.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{I as o,K as m,a as l,b as p}from"./input-otp-Cin9-T84.js";import{c as f}from"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";function c({length:a=6,value:s,onChange:i,onComplete:t,disabled:u=!1,error:n,autoFocus:d=!0}){return e.jsxs("div",{className:"space-y-2",children:[e.jsx("div",{className:"flex justify-center",children:e.jsx(o,{maxLength:a,value:s,onChange:i,...t&&{onComplete:t},disabled:u,autoFocus:d,pattern:m,containerClassName:"justify-center",children:e.jsx(l,{children:Array.from({length:a},(x,r)=>e.jsx(p,{index:r,className:f(n&&"border-danger")},r))})})}),n&&e.jsx("p",{className:"text-sm text-danger text-center",role:"alert",children:n})]})}c.__docgenInfo={description:"",methods:[],displayName:"OtpInput",props:{length:{required:!1,tsType:{name:"union",raw:"number | undefined",elements:[{name:"number"},{name:"undefined"}]},description:"",defaultValue:{value:"6",computed:!1}},value:{required:!0,tsType:{name:"string"},description:""},onChange:{required:!0,tsType:{name:"signature",type:"function",raw:"(value: string) => void",signature:{arguments:[{type:{name:"string"},name:"value"}],return:{name:"void"}}},description:""},onComplete:{required:!1,tsType:{name:"union",raw:"((value: string) => void) | undefined",elements:[{name:"unknown"},{name:"undefined"}]},description:""},disabled:{required:!1,tsType:{name:"union",raw:"boolean | undefined",elements:[{name:"boolean"},{name:"undefined"}]},description:"",defaultValue:{value:"false",computed:!1}},error:{required:!1,tsType:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}]},description:""},autoFocus:{required:!1,tsType:{name:"union",raw:"boolean | undefined",elements:[{name:"boolean"},{name:"undefined"}]},description:"",defaultValue:{value:"true",computed:!1}}}};export{c as O}; diff --git a/apps/portal/public/storybook/assets/OtpInput.stories-BqMaWeSV.js b/apps/portal/public/storybook/assets/OtpInput.stories-BqMaWeSV.js new file mode 100644 index 00000000..bc36ecd2 --- /dev/null +++ b/apps/portal/public/storybook/assets/OtpInput.stories-BqMaWeSV.js @@ -0,0 +1,21 @@ +import{j as u}from"./jsx-runtime-D_zvdyIk.js";import{r as l}from"./index-JhL3uwfD.js";import{O as r}from"./OtpInput-6kd_2E0v.js";import"./input-otp-Cin9-T84.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./createLucideIcon-CctB0W3q.js";const P={title:"Molecules/OtpInput",component:r},t={render:()=>{const[e,a]=l.useState("");return u.jsx(r,{value:e,onChange:a,autoFocus:!1})}},s={render:()=>{const[e,a]=l.useState("123456");return u.jsx(r,{value:e,onChange:a,error:"Invalid code. Please try again.",autoFocus:!1})}},o={render:()=>{const[e,a]=l.useState("123");return u.jsx(r,{value:e,onChange:a,disabled:!0,autoFocus:!1})}},n={render:()=>{const[e,a]=l.useState("");return u.jsx(r,{value:e,onChange:a,length:4,autoFocus:!1})}};var c,p,d;t.parameters={...t.parameters,docs:{...(c=t.parameters)==null?void 0:c.docs,source:{originalSource:`{ + render: () => { + const [value, setValue] = useState(""); + return ; + } +}`,...(d=(p=t.parameters)==null?void 0:p.docs)==null?void 0:d.source}}};var i,m,g;s.parameters={...s.parameters,docs:{...(i=s.parameters)==null?void 0:i.docs,source:{originalSource:`{ + render: () => { + const [value, setValue] = useState("123456"); + return ; + } +}`,...(g=(m=s.parameters)==null?void 0:m.docs)==null?void 0:g.source}}};var v,f,h;o.parameters={...o.parameters,docs:{...(v=o.parameters)==null?void 0:v.docs,source:{originalSource:`{ + render: () => { + const [value, setValue] = useState("123"); + return ; + } +}`,...(h=(f=o.parameters)==null?void 0:f.docs)==null?void 0:h.source}}};var S,V,F;n.parameters={...n.parameters,docs:{...(S=n.parameters)==null?void 0:S.docs,source:{originalSource:`{ + render: () => { + const [value, setValue] = useState(""); + return ; + } +}`,...(F=(V=n.parameters)==null?void 0:V.docs)==null?void 0:F.source}}};const W=["Default","WithError","Disabled","FourDigit"];export{t as Default,o as Disabled,n as FourDigit,s as WithError,W as __namedExportsOrder,P as default}; diff --git a/apps/portal/public/storybook/assets/OtpStep.stories-D8ODNRr5.js b/apps/portal/public/storybook/assets/OtpStep.stories-D8ODNRr5.js new file mode 100644 index 00000000..d0b90483 --- /dev/null +++ b/apps/portal/public/storybook/assets/OtpStep.stories-D8ODNRr5.js @@ -0,0 +1,35 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{r as i}from"./index-JhL3uwfD.js";import{B as y}from"./button-C8_cybvS.js";import"./input-BbGJiz0K.js";import"./password-input-D4khGh8v.js";import"./checkbox-DahUyQbt.js";import"./label-C25VH7yk.js";import"./error-message-DeFFz6H_.js";import"./status-pill-wWp9xkwA.js";import"./badge-BdMsasyi.js";import"./spinner-mU4XywER.js";import"./loading-overlay-DMJTiFny.js";import"./error-state-BSicqqE6.js";import"./empty-state-DRUGJ9ip.js";import"./inline-toast-DQJ-O9wc.js";import"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import"./logo-f0fprTjz.js";import"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./animated-container-DyAZ9gmw.js";import"./DataTable-COYdcx41.js";import"./FormField-C0UylACv.js";import{O as P}from"./OtpInput-6kd_2E0v.js";import{O as X}from"./OtpExpiryDisplay-BGgB7Tk6.js";import"./SearchFilterBar-Ds19v0-P.js";import"./PaginationBar-D_k7ztRb.js";import"./DetailHeader-C0ZsoM39.js";import"./AlertBanner-Bnlyj1xc.js";import"./index-BKyvj4H5.js";import"./SectionHeader-Bo81Whai.js";import"./ProgressSteps-weVdXcqu.js";import"./SubCard-1OZIPgEM.js";import"./AnimatedCard-DFAiX4zP.js";import"./ServiceCard-BJEHFLba.js";import"./SummaryStats-D6b7Am-p.js";import"./FilterDropdown-CUU04WmN.js";import"./ClearFiltersButton-CPCoyXk2.js";import"./DetailStatsGrid-CDkKTM-B.js";import"./SectionCard-BcUjc-7N.js";import"./MetricCard-BR1xVIXz.js";import"./BackLink-C5IY6wzy.js";import"./status-badge-5pzxe45J.js";import"./error-boundary-DIRO_cDI.js";import"./error-fallbacks-kSPsNxmV.js";import{u as g}from"./eligibility-check.store-5rXvIK_a.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./createLucideIcon-CctB0W3q.js";import"./ExclamationCircleIcon-jFfW0Ax_.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./ArrowPathIcon-CZjG6RfV.js";import"./PlusIcon-DGufmf06.js";import"./index-CNXKWNLp.js";import"./proxy-ZkTvaR74.js";import"./next-image-69WeRggt.js";import"./Squares2X2Icon-BMQM_Wy1.js";import"./ChevronRightIcon-CMQWsJeW.js";import"./input-otp-Cin9-T84.js";import"./clock-C92s7kSC.js";import"./FunnelIcon-8nhbwqu0.js";import"./XMarkIcon-Bsb1W5VN.js";import"./XCircleIcon-CiVBnngB.js";import"./InformationCircleIcon-Clz7d-56.js";import"./CheckCircleIcon-Dva35lTP.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./arrow-right-BNMAry-H.js";import"./ArrowLeftIcon-Cw1eswTb.js";import"./error-handling-CCxr4Gjn.js";import"./schema-Cvvg7S_W.js";import"./text-CXa-DJQz.js";import"./schema-JsDJirqf.js";import"./schema-Dok_SHcO.js";import"./react-C6W-rNNW.js";const T=3,S=600*1e3;function $(){const[t,n]=i.useState(null),m=i.useRef(Date.now()+S),l=i.useCallback(()=>{m.current=Date.now()+S},[]);i.useEffect(()=>{const a=()=>{const r=Math.max(0,Math.floor((m.current-Date.now())/1e3));n(r)};a();const s=setInterval(a,1e3);return()=>clearInterval(s)},[]);const o=t!==null&&t<=0;return{timeRemaining:t,isExpired:o,resetExpiry:l}}function q({loading:t,resendDisabled:n,resendCountdown:m,resendCount:l,onChangeEmail:o,onResend:a}){const s=l>=T;let r="Resend code";return s?r="Max resends reached":n&&m>0&&(r=`Resend in ${m}s`),e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsx(y,{type:"button",variant:"ghost",onClick:o,disabled:t,className:"text-sm",children:"Change email"}),e.jsx(y,{type:"button",variant:"ghost",onClick:a,disabled:t||n||s,className:"text-sm",children:r})]})}function _(){const{formData:t,verifyOtp:n,resendOtp:m,goToStep:l,loading:o,otpError:a,clearOtpError:s,attemptsRemaining:r,resendDisabled:I,resendCountdown:M}=g(),[d,h]=i.useState(""),[C,V]=i.useState(0),{timeRemaining:Y,isExpired:p,resetExpiry:W}=$();i.useEffect(()=>{a&&h("")},[a]);const A=i.useCallback(c=>{h(c),s()},[s]),E=i.useCallback(async c=>{if(!p){s();try{await n(c)}catch{}}},[n,p,s]),B=()=>{d.length===6&&!p&&E(d)},F=async()=>{if(C>=T)return;h(""),await m()&&(V(L=>L+1),W())};return e.jsxs("div",{className:"space-y-6",children:[e.jsxs("p",{className:"text-sm text-muted-foreground text-center",children:["We sent a 6-digit code to"," ",e.jsx("span",{className:"font-medium text-foreground",children:t.email})]}),e.jsx("div",{className:"py-4",children:e.jsx(P,{length:6,value:d,onChange:A,onComplete:E,disabled:o||p,...a&&{error:a},autoFocus:!0})}),r!==null&&r<3&&e.jsxs("p",{className:"text-sm text-warning text-center",children:[r," attempt",r===1?"":"s"," remaining"]}),e.jsx(X,{timeRemaining:Y,isExpired:p}),e.jsx(y,{type:"button",onClick:B,disabled:o||d.length!==6||p,loading:o,className:"w-full h-11",children:o?"Verifying...":"Verify & Continue"}),e.jsx(q,{loading:o,resendDisabled:I,resendCountdown:M,resendCount:C,onChangeEmail:()=>l("form"),onResend:F})]})}_.__docgenInfo={description:"",methods:[],displayName:"OtpStep"};const xt={title:"Features/Services/EligibilityCheck/OtpStep",component:_,parameters:{layout:"centered"},decorators:[t=>(g.setState({formData:{firstName:"Taro",lastName:"Yamada",email:"taro@example.com",address:null},loading:!1,otpError:null,attemptsRemaining:5,resendDisabled:!1,resendCountdown:0}),e.jsx(t,{}))]},u={},f={decorators:[t=>(g.setState({formData:{firstName:"Taro",lastName:"Yamada",email:"taro@example.com",address:null},loading:!1,otpError:"Invalid verification code. Please try again.",attemptsRemaining:2,resendDisabled:!1,resendCountdown:0}),e.jsx(t,{}))]},x={decorators:[t=>(g.setState({formData:{firstName:"Taro",lastName:"Yamada",email:"taro@example.com",address:null},loading:!1,otpError:null,attemptsRemaining:5,resendDisabled:!0,resendCountdown:45}),e.jsx(t,{}))]};var b,N,R;u.parameters={...u.parameters,docs:{...(b=u.parameters)==null?void 0:b.docs,source:{originalSource:"{}",...(R=(N=u.parameters)==null?void 0:N.docs)==null?void 0:R.source}}};var D,j,v;f.parameters={...f.parameters,docs:{...(D=f.parameters)==null?void 0:D.docs,source:{originalSource:`{ + decorators: [Story => { + useEligibilityCheckStore.setState({ + formData: { + firstName: "Taro", + lastName: "Yamada", + email: "taro@example.com", + address: null + }, + loading: false, + otpError: "Invalid verification code. Please try again.", + attemptsRemaining: 2, + resendDisabled: false, + resendCountdown: 0 + }); + return ; + }] +}`,...(v=(j=f.parameters)==null?void 0:j.docs)==null?void 0:v.source}}};var w,O,k;x.parameters={...x.parameters,docs:{...(w=x.parameters)==null?void 0:w.docs,source:{originalSource:`{ + decorators: [Story => { + useEligibilityCheckStore.setState({ + formData: { + firstName: "Taro", + lastName: "Yamada", + email: "taro@example.com", + address: null + }, + loading: false, + otpError: null, + attemptsRemaining: 5, + resendDisabled: true, + resendCountdown: 45 + }); + return ; + }] +}`,...(k=(O=x.parameters)==null?void 0:O.docs)==null?void 0:k.source}}};const gt=["Default","WithError","ResendCooldown"];export{u as Default,x as ResendCooldown,f as WithError,gt as __namedExportsOrder,xt as default}; diff --git a/apps/portal/public/storybook/assets/PageLayout-CxVUl3Jy.js b/apps/portal/public/storybook/assets/PageLayout-CxVUl3Jy.js new file mode 100644 index 00000000..5e20f806 --- /dev/null +++ b/apps/portal/public/storybook/assets/PageLayout-CxVUl3Jy.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{L as p}from"./next-link-BmD4fPSy.js";import{S as i}from"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import{E as u}from"./error-state-BSicqqE6.js";import{F as f}from"./ArrowLeftIcon-Cw1eswTb.js";function x({title:n,description:a,actions:s,backLink:r,statusPill:d,loading:t=!1,loadingFallback:l,error:m=null,onRetry:c,children:o}){return e.jsxs("div",{children:[e.jsx("div",{className:"bg-muted/40 border-b border-border/40",children:e.jsx("div",{className:"max-w-[var(--cp-page-max-width)] mx-auto px-[var(--cp-space-md)] sm:px-[var(--cp-space-lg)] md:px-8 h-16 flex items-center",children:e.jsxs("div",{className:"flex items-center justify-between gap-4 min-w-0 w-full",children:[e.jsxs("div",{className:"flex items-center min-w-0 flex-1",children:[r&&e.jsxs(p,{href:r.href,className:"inline-flex items-center gap-1.5 text-sm text-muted-foreground hover:text-foreground transition-colors duration-200 mr-3 flex-shrink-0",children:[e.jsx(f,{className:"h-4 w-4"}),r.label]}),e.jsx("h1",{className:"text-xl font-bold text-foreground leading-tight truncate",children:n}),d&&e.jsx("div",{className:"ml-2.5 flex-shrink-0",children:d}),a&&e.jsx("p",{className:"hidden sm:block text-sm text-muted-foreground ml-3 truncate",children:a})]}),s&&e.jsx("div",{className:"flex items-center gap-2 sm:gap-3 flex-shrink-0",children:s}),e.jsx("div",{id:"page-header-end"})]})})}),e.jsx("div",{className:"max-w-[var(--cp-page-max-width)] mx-auto px-[var(--cp-space-md)] sm:px-[var(--cp-space-lg)] md:px-8 py-[var(--cp-space-lg)] sm:py-[var(--cp-space-xl)] md:py-[var(--cp-space-2xl)]",children:e.jsx("div",{className:"space-y-[var(--cp-space-xl)] sm:space-y-[var(--cp-space-2xl)]",children:g({loading:t,error:m??void 0,children:o,onRetry:c,loadingFallback:l})})})]})}function g({loading:n,error:a,children:s,onRetry:r,loadingFallback:d}){return n?d??e.jsx(h,{}):a?e.jsx(v,{error:a,onRetry:r}):s}function h(){return e.jsx("div",{className:"py-[var(--cp-space-xl)] sm:py-[var(--cp-space-3xl)]",children:e.jsxs("div",{className:"space-y-4 sm:space-y-6",children:[e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx(i,{className:"h-8 w-8 rounded-full"}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(i,{className:"h-6 w-36 sm:w-48"}),e.jsx(i,{className:"h-4 w-48 sm:w-64"})]})]}),e.jsx("div",{className:"space-y-3 sm:space-y-4",children:Array.from({length:3}).map((n,a)=>e.jsxs("div",{className:"bg-card border border-border rounded-lg p-3 sm:p-4 shadow-[var(--cp-shadow-1)]",children:[e.jsx(i,{className:"h-4 w-1/2 mb-2"}),e.jsx(i,{className:"h-3 w-3/4"})]},a))})]})})}function v({error:n,onRetry:a}){const s=typeof n=="string"?n:n.message;return e.jsx("div",{className:"py-[var(--cp-space-xl)] sm:py-[var(--cp-space-3xl)]",children:e.jsx(u,{title:"Unable to load page",message:s,onRetry:a,variant:"page"})})}x.__docgenInfo={description:"",methods:[],displayName:"PageLayout",props:{icon:{required:!1,tsType:{name:"union",raw:"ReactNode | undefined",elements:[{name:"ReactNode"},{name:"undefined"}]},description:"@deprecated Icons no longer rendered in page headers"},title:{required:!0,tsType:{name:"string"},description:""},description:{required:!1,tsType:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}]},description:""},actions:{required:!1,tsType:{name:"union",raw:"ReactNode | undefined",elements:[{name:"ReactNode"},{name:"undefined"}]},description:""},backLink:{required:!1,tsType:{name:"union",raw:"{ label: string; href: string } | undefined",elements:[{name:"signature",type:"object",raw:"{ label: string; href: string }",signature:{properties:[{key:"label",value:{name:"string",required:!0}},{key:"href",value:{name:"string",required:!0}}]}},{name:"undefined"}]},description:""},statusPill:{required:!1,tsType:{name:"union",raw:"ReactNode | undefined",elements:[{name:"ReactNode"},{name:"undefined"}]},description:""},loading:{required:!1,tsType:{name:"union",raw:"boolean | undefined",elements:[{name:"boolean"},{name:"undefined"}]},description:"",defaultValue:{value:"false",computed:!1}},loadingFallback:{required:!1,tsType:{name:"union",raw:"ReactNode | undefined",elements:[{name:"ReactNode"},{name:"undefined"}]},description:""},error:{required:!1,tsType:{name:"union",raw:"Error | string | null | undefined",elements:[{name:"Error"},{name:"string"},{name:"null"},{name:"undefined"}]},description:"",defaultValue:{value:"null",computed:!1}},onRetry:{required:!1,tsType:{name:"union",raw:"(() => void) | undefined",elements:[{name:"unknown"},{name:"undefined"}]},description:""},children:{required:!0,tsType:{name:"ReactNode"},description:""}}};export{x as P}; diff --git a/apps/portal/public/storybook/assets/PageLayout.stories-CS-cxF-k.js b/apps/portal/public/storybook/assets/PageLayout.stories-CS-cxF-k.js new file mode 100644 index 00000000..7f32f2fe --- /dev/null +++ b/apps/portal/public/storybook/assets/PageLayout.stories-CS-cxF-k.js @@ -0,0 +1,44 @@ +import{j as r}from"./jsx-runtime-D_zvdyIk.js";import{P as w}from"./PageLayout-CxVUl3Jy.js";import{B as N}from"./button-C8_cybvS.js";import{S as j}from"./status-pill-wWp9xkwA.js";import"./next-link-BmD4fPSy.js";import"./index-JhL3uwfD.js";import"./skeleton-ISCbfaf8.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./loading-card-BIOTKPal.js";import"./input-BbGJiz0K.js";import"./password-input-D4khGh8v.js";import"./createLucideIcon-CctB0W3q.js";import"./checkbox-DahUyQbt.js";import"./label-C25VH7yk.js";import"./error-message-DeFFz6H_.js";import"./index-DXhM58Yq.js";import"./ExclamationCircleIcon-jFfW0Ax_.js";import"./badge-BdMsasyi.js";import"./spinner-mU4XywER.js";import"./loading-overlay-DMJTiFny.js";import"./error-state-BSicqqE6.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./ArrowPathIcon-CZjG6RfV.js";import"./empty-state-DRUGJ9ip.js";import"./PlusIcon-DGufmf06.js";import"./inline-toast-DQJ-O9wc.js";import"./index-CNXKWNLp.js";import"./proxy-ZkTvaR74.js";import"./logo-f0fprTjz.js";import"./next-image-69WeRggt.js";import"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./Squares2X2Icon-BMQM_Wy1.js";import"./animated-container-DyAZ9gmw.js";import"./ArrowLeftIcon-Cw1eswTb.js";const mr={title:"Templates/PageLayout",component:w,parameters:{layout:"fullscreen"}},e={args:{title:"Dashboard",description:"Overview of your account",children:r.jsx("div",{className:"space-y-4",children:r.jsx("div",{className:"grid grid-cols-3 gap-4",children:["Services","Invoices","Support"].map(i=>r.jsxs("div",{className:"bg-card border border-border rounded-xl p-6 shadow-sm",children:[r.jsx("h3",{className:"font-semibold",children:i}),r.jsxs("p",{className:"text-sm text-muted-foreground mt-1",children:["Manage your ",i.toLowerCase()]})]},i))})})}},o={args:{title:"Subscriptions",description:"Manage your active services",actions:r.jsx(N,{size:"sm",children:"Add Service"}),children:r.jsx("div",{className:"bg-card border border-border rounded-xl p-6",children:"Content area"})}},t={args:{title:"Order #12345",backLink:{label:"Orders",href:"/orders"},statusPill:r.jsx(j,{label:"Active",variant:"success"}),children:r.jsx("div",{className:"bg-card border border-border rounded-xl p-6",children:"Order details content"})}},s={args:{title:"Loading Page",loading:!0,children:r.jsx("div",{children:"This won't be shown"})}},a={args:{title:"Error Page",error:"Failed to load data from the server",onRetry:()=>alert("Retrying..."),children:r.jsx("div",{children:"This won't be shown"})}};var d,n,c;e.parameters={...e.parameters,docs:{...(d=e.parameters)==null?void 0:d.docs,source:{originalSource:`{ + args: { + title: "Dashboard", + description: "Overview of your account", + children:
+
+ {["Services", "Invoices", "Support"].map(title =>
+

{title}

+

Manage your {title.toLowerCase()}

+
)} +
+
+ } +}`,...(c=(n=e.parameters)==null?void 0:n.docs)==null?void 0:c.source}}};var m,l,p;o.parameters={...o.parameters,docs:{...(m=o.parameters)==null?void 0:m.docs,source:{originalSource:`{ + args: { + title: "Subscriptions", + description: "Manage your active services", + actions: , + children:
Content area
+ } +}`,...(p=(l=o.parameters)==null?void 0:l.docs)==null?void 0:p.source}}};var u,g,h;t.parameters={...t.parameters,docs:{...(u=t.parameters)==null?void 0:u.docs,source:{originalSource:`{ + args: { + title: "Order #12345", + backLink: { + label: "Orders", + href: "/orders" + }, + statusPill: , + children:
Order details content
+ } +}`,...(h=(g=t.parameters)==null?void 0:g.docs)==null?void 0:h.source}}};var v,b,x;s.parameters={...s.parameters,docs:{...(v=s.parameters)==null?void 0:v.docs,source:{originalSource:`{ + args: { + title: "Loading Page", + loading: true, + children:
This won't be shown
+ } +}`,...(x=(b=s.parameters)==null?void 0:b.docs)==null?void 0:x.source}}};var f,y,S;a.parameters={...a.parameters,docs:{...(f=a.parameters)==null?void 0:f.docs,source:{originalSource:`{ + args: { + title: "Error Page", + error: "Failed to load data from the server", + onRetry: () => alert("Retrying..."), + children:
This won't be shown
+ } +}`,...(S=(y=a.parameters)==null?void 0:y.docs)==null?void 0:S.source}}};const lr=["Default","WithActions","WithBackLink","Loading","Error"];export{e as Default,a as Error,s as Loading,o as WithActions,t as WithBackLink,lr as __namedExportsOrder,mr as default}; diff --git a/apps/portal/public/storybook/assets/PaginationBar-D_k7ztRb.js b/apps/portal/public/storybook/assets/PaginationBar-D_k7ztRb.js new file mode 100644 index 00000000..632d0919 --- /dev/null +++ b/apps/portal/public/storybook/assets/PaginationBar-D_k7ztRb.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";function l({currentPage:s,pageSize:t,totalItems:i,onPageChange:r,className:a}){const d=Math.max(1,Math.ceil(i/t)),n=s>1,o=sr(Math.max(1,s-1)),disabled:!n,className:"relative inline-flex items-center px-4 py-2 border border-border text-sm font-medium rounded-md text-foreground bg-background hover:bg-muted disabled:opacity-50 disabled:cursor-not-allowed transition-colors",children:"Previous"}),e.jsx("button",{onClick:()=>r(Math.min(d,s+1)),disabled:!o,className:"ml-3 relative inline-flex items-center px-4 py-2 border border-border text-sm font-medium rounded-md text-foreground bg-background hover:bg-muted disabled:opacity-50 disabled:cursor-not-allowed transition-colors",children:"Next"})]}),e.jsxs("div",{className:"hidden sm:flex-1 sm:flex sm:items-center sm:justify-between",children:[e.jsx("div",{children:e.jsxs("p",{className:"text-sm text-muted-foreground",children:["Showing ",e.jsx("span",{className:"font-medium",children:(s-1)*t+1})," to"," ",e.jsx("span",{className:"font-medium",children:Math.min(s*t,i)})," of"," ",e.jsx("span",{className:"font-medium",children:i})," results"]})}),e.jsx("div",{children:e.jsxs("nav",{className:"relative z-0 inline-flex rounded-md shadow-sm -space-x-px","aria-label":"Pagination",children:[e.jsx("button",{onClick:()=>r(Math.max(1,s-1)),disabled:!n,className:"relative inline-flex items-center px-2 py-2 rounded-l-md border border-border bg-background text-sm font-medium text-muted-foreground hover:bg-muted disabled:opacity-50 disabled:cursor-not-allowed transition-colors",children:"Previous"}),e.jsx("button",{onClick:()=>r(Math.min(d,s+1)),disabled:!o,className:"relative inline-flex items-center px-2 py-2 rounded-r-md border border-border bg-background text-sm font-medium text-muted-foreground hover:bg-muted disabled:opacity-50 disabled:cursor-not-allowed transition-colors",children:"Next"})]})})]})]})}l.__docgenInfo={description:"",methods:[],displayName:"PaginationBar",props:{currentPage:{required:!0,tsType:{name:"number"},description:""},pageSize:{required:!0,tsType:{name:"number"},description:""},totalItems:{required:!0,tsType:{name:"number"},description:""},onPageChange:{required:!0,tsType:{name:"signature",type:"function",raw:"(page: number) => void",signature:{arguments:[{type:{name:"number"},name:"page"}],return:{name:"void"}}},description:""},className:{required:!1,tsType:{name:"string"},description:""}}};export{l as P}; diff --git a/apps/portal/public/storybook/assets/PaginationBar.stories-Bs41ecrn.js b/apps/portal/public/storybook/assets/PaginationBar.stories-Bs41ecrn.js new file mode 100644 index 00000000..56513f95 --- /dev/null +++ b/apps/portal/public/storybook/assets/PaginationBar.stories-Bs41ecrn.js @@ -0,0 +1,36 @@ +import{j as n}from"./jsx-runtime-D_zvdyIk.js";import{r as v}from"./index-JhL3uwfD.js";import{P as x}from"./PaginationBar-D_k7ztRb.js";const w={title:"Molecules/PaginationBar",component:x,parameters:{layout:"padded"}},e={render:()=>{const[f,j]=v.useState(1);return n.jsx("div",{className:"w-[600px]",children:n.jsx(x,{currentPage:f,pageSize:10,totalItems:47,onPageChange:j})})}},a={args:{currentPage:1,pageSize:10,totalItems:100,onPageChange:()=>{}}},r={args:{currentPage:5,pageSize:10,totalItems:100,onPageChange:()=>{}}},t={args:{currentPage:10,pageSize:10,totalItems:100,onPageChange:()=>{}}},s={args:{currentPage:1,pageSize:10,totalItems:5,onPageChange:()=>{}}};var o,g,c;e.parameters={...e.parameters,docs:{...(o=e.parameters)==null?void 0:o.docs,source:{originalSource:`{ + render: () => { + const [page, setPage] = useState(1); + return
+ +
; + } +}`,...(c=(g=e.parameters)==null?void 0:g.docs)==null?void 0:c.source}}};var p,m,i;a.parameters={...a.parameters,docs:{...(p=a.parameters)==null?void 0:p.docs,source:{originalSource:`{ + args: { + currentPage: 1, + pageSize: 10, + totalItems: 100, + onPageChange: () => {} + } +}`,...(i=(m=a.parameters)==null?void 0:m.docs)==null?void 0:i.source}}};var u,P,d;r.parameters={...r.parameters,docs:{...(u=r.parameters)==null?void 0:u.docs,source:{originalSource:`{ + args: { + currentPage: 5, + pageSize: 10, + totalItems: 100, + onPageChange: () => {} + } +}`,...(d=(P=r.parameters)==null?void 0:P.docs)==null?void 0:d.source}}};var l,S,h;t.parameters={...t.parameters,docs:{...(l=t.parameters)==null?void 0:l.docs,source:{originalSource:`{ + args: { + currentPage: 10, + pageSize: 10, + totalItems: 100, + onPageChange: () => {} + } +}`,...(h=(S=t.parameters)==null?void 0:S.docs)==null?void 0:h.source}}};var z,C,I;s.parameters={...s.parameters,docs:{...(z=s.parameters)==null?void 0:z.docs,source:{originalSource:`{ + args: { + currentPage: 1, + pageSize: 10, + totalItems: 5, + onPageChange: () => {} + } +}`,...(I=(C=s.parameters)==null?void 0:C.docs)==null?void 0:I.source}}};const D=["Default","FirstPage","MiddlePage","LastPage","SinglePage"];export{e as Default,a as FirstPage,t as LastPage,r as MiddlePage,s as SinglePage,D as __namedExportsOrder,w as default}; diff --git a/apps/portal/public/storybook/assets/PasswordChangeCard.stories-BtEtBsXQ.js b/apps/portal/public/storybook/assets/PasswordChangeCard.stories-BtEtBsXQ.js new file mode 100644 index 00000000..913c658c --- /dev/null +++ b/apps/portal/public/storybook/assets/PasswordChangeCard.stories-BtEtBsXQ.js @@ -0,0 +1,52 @@ +import{j as r}from"./jsx-runtime-D_zvdyIk.js";import{B}from"./button-C8_cybvS.js";import"./input-BbGJiz0K.js";import{P as p}from"./password-input-D4khGh8v.js";import"./checkbox-DahUyQbt.js";import{L as u}from"./label-C25VH7yk.js";import"./error-message-DeFFz6H_.js";import"./status-pill-wWp9xkwA.js";import"./badge-BdMsasyi.js";import"./spinner-mU4XywER.js";import"./loading-overlay-DMJTiFny.js";import"./error-state-BSicqqE6.js";import"./empty-state-DRUGJ9ip.js";import"./inline-toast-DQJ-O9wc.js";import"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import"./logo-f0fprTjz.js";import"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./animated-container-DyAZ9gmw.js";import{S as L}from"./SubCard-1OZIPgEM.js";import"./SetPasswordForm-JAj2IB2C.js";import"./index-JhL3uwfD.js";import"./DataTable-COYdcx41.js";import"./FormField-C0UylACv.js";import"./OtpInput-6kd_2E0v.js";import"./OtpExpiryDisplay-BGgB7Tk6.js";import"./SearchFilterBar-Ds19v0-P.js";import"./PaginationBar-D_k7ztRb.js";import"./DetailHeader-C0ZsoM39.js";import"./AlertBanner-Bnlyj1xc.js";import"./index-BKyvj4H5.js";import"./SectionHeader-Bo81Whai.js";import"./ProgressSteps-weVdXcqu.js";import"./AnimatedCard-DFAiX4zP.js";import"./ServiceCard-BJEHFLba.js";import"./SummaryStats-D6b7Am-p.js";import"./FilterDropdown-CUU04WmN.js";import"./ClearFiltersButton-CPCoyXk2.js";import"./DetailStatsGrid-CDkKTM-B.js";import"./SectionCard-BcUjc-7N.js";import"./MetricCard-BR1xVIXz.js";import"./BackLink-C5IY6wzy.js";import"./status-badge-5pzxe45J.js";import"./error-boundary-DIRO_cDI.js";import"./error-fallbacks-kSPsNxmV.js";import"./AuthLayout-DNr24V9g.js";import{u as A}from"./PasswordSection-DeRa0d5T.js";import{P as H}from"./PasswordRequirements-Iusuj6EU.js";import{P as O}from"./PasswordMatchIndicator-CoUjyU1r.js";import"./TermsCheckbox-CIu51LBN.js";import"./MarketingCheckbox-x7nAFt-_.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./createLucideIcon-CctB0W3q.js";import"./ExclamationCircleIcon-jFfW0Ax_.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./ArrowPathIcon-CZjG6RfV.js";import"./PlusIcon-DGufmf06.js";import"./index-CNXKWNLp.js";import"./proxy-ZkTvaR74.js";import"./next-image-69WeRggt.js";import"./Squares2X2Icon-BMQM_Wy1.js";import"./auth.store-CVqT-1lf.js";import"./error-handling-CCxr4Gjn.js";import"./coerce-BirWdn0y.js";import"./react-C6W-rNNW.js";import"./schema-JsDJirqf.js";import"./schema-B7GuHPAW.js";import"./schema-Dok_SHcO.js";import"./compat-BjFfok0x.js";import"./ChevronRightIcon-CMQWsJeW.js";import"./input-otp-Cin9-T84.js";import"./clock-C92s7kSC.js";import"./FunnelIcon-8nhbwqu0.js";import"./XMarkIcon-Bsb1W5VN.js";import"./XCircleIcon-CiVBnngB.js";import"./InformationCircleIcon-Clz7d-56.js";import"./CheckCircleIcon-Dva35lTP.js";import"./arrow-right-BNMAry-H.js";import"./ArrowLeftIcon-Cw1eswTb.js";import"./check-DmNqM64J.js";import"./x-gzkF7O9v.js";function F({isChanging:o,error:l,success:w,form:e,setForm:c,onSubmit:W}){const{checks:_}=A(e.newPassword),I=e.confirmPassword.length>0,R=e.newPassword===e.confirmPassword;return r.jsxs(L,{children:[r.jsx("h2",{className:"text-xl font-semibold text-foreground mb-4",children:"Change Password"}),w&&r.jsx("div",{className:"mb-4 bg-success-bg border border-success-border text-success px-4 py-3 rounded",children:w}),l&&r.jsx("div",{className:"mb-4 bg-danger-bg border border-danger-border text-danger px-4 py-3 rounded",children:l}),r.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-3 gap-4",children:[r.jsxs("div",{children:[r.jsx(u,{className:"mb-2",children:"Current Password"}),r.jsx(p,{value:e.currentPassword,onChange:a=>c({currentPassword:a.target.value}),placeholder:"••••••••",disabled:o})]}),r.jsxs("div",{children:[r.jsx(u,{className:"mb-2",children:"New Password"}),r.jsx(p,{value:e.newPassword,onChange:a=>c({newPassword:a.target.value}),placeholder:"New secure password",disabled:o})]}),r.jsxs("div",{children:[r.jsx(u,{className:"mb-2",children:"Confirm New Password"}),r.jsx(p,{value:e.confirmPassword,onChange:a=>c({confirmPassword:a.target.value}),placeholder:"Re-enter new password",disabled:o})]})]}),r.jsx("div",{className:"mt-3",children:r.jsx(H,{checks:_,showHint:e.newPassword.length===0})}),I&&r.jsx("div",{className:"mt-2",children:r.jsx(O,{passwordsMatch:R})}),r.jsx("div",{className:"flex items-center justify-end space-x-3 pt-6 border-t border-border",children:r.jsx(B,{type:"button",onClick:W,disabled:o,loading:o,loadingText:"Changing...",children:"Change Password"})})]})}F.__docgenInfo={description:"",methods:[],displayName:"PasswordChangeCard",props:{isChanging:{required:!0,tsType:{name:"boolean"},description:""},error:{required:!1,tsType:{name:"union",raw:"string | null",elements:[{name:"string"},{name:"null"}]},description:""},success:{required:!1,tsType:{name:"union",raw:"string | null",elements:[{name:"string"},{name:"null"}]},description:""},form:{required:!0,tsType:{name:"signature",type:"object",raw:"{ currentPassword: string; newPassword: string; confirmPassword: string }",signature:{properties:[{key:"currentPassword",value:{name:"string",required:!0}},{key:"newPassword",value:{name:"string",required:!0}},{key:"confirmPassword",value:{name:"string",required:!0}}]}},description:""},setForm:{required:!0,tsType:{name:"signature",type:"function",raw:'(next: Partial) => void',signature:{arguments:[{type:{name:"Partial",elements:[{name:'PasswordChangeCardProps["form"]',raw:'PasswordChangeCardProps["form"]'}],raw:'Partial'},name:"next"}],return:{name:"void"}}},description:""},onSubmit:{required:!0,tsType:{name:"signature",type:"function",raw:"() => void",signature:{arguments:[],return:{name:"void"}}},description:""}}};const bs={title:"Features/Account/PasswordChangeCard",component:F,parameters:{layout:"padded"}},s={args:{isChanging:!1,error:null,success:null,form:{currentPassword:"",newPassword:"",confirmPassword:""},setForm:()=>{},onSubmit:()=>{}}},t={args:{...s.args,form:{currentPassword:"oldPassword123",newPassword:"NewSecure!Pass1",confirmPassword:"NewSecure!Pass1"}}},n={args:{...s.args,form:{currentPassword:"oldPassword123",newPassword:"NewSecure!Pass1",confirmPassword:"Different!Pass2"}}},i={args:{...s.args,isChanging:!0,form:{currentPassword:"oldPassword123",newPassword:"NewSecure!Pass1",confirmPassword:"NewSecure!Pass1"}}},d={args:{...s.args,error:"Current password is incorrect."}},m={args:{...s.args,success:"Password changed successfully!"}};var P,g,f;s.parameters={...s.parameters,docs:{...(P=s.parameters)==null?void 0:P.docs,source:{originalSource:`{ + args: { + isChanging: false, + error: null, + success: null, + form: { + currentPassword: "", + newPassword: "", + confirmPassword: "" + }, + setForm: () => {}, + onSubmit: () => {} + } +}`,...(f=(g=s.parameters)==null?void 0:g.docs)==null?void 0:f.source}}};var h,x,b;t.parameters={...t.parameters,docs:{...(h=t.parameters)==null?void 0:h.docs,source:{originalSource:`{ + args: { + ...Default.args, + form: { + currentPassword: "oldPassword123", + newPassword: "NewSecure!Pass1", + confirmPassword: "NewSecure!Pass1" + } + } +}`,...(b=(x=t.parameters)==null?void 0:x.docs)==null?void 0:b.source}}};var C,j,N;n.parameters={...n.parameters,docs:{...(C=n.parameters)==null?void 0:C.docs,source:{originalSource:`{ + args: { + ...Default.args, + form: { + currentPassword: "oldPassword123", + newPassword: "NewSecure!Pass1", + confirmPassword: "Different!Pass2" + } + } +}`,...(N=(j=n.parameters)==null?void 0:j.docs)==null?void 0:N.source}}};var S,v,y;i.parameters={...i.parameters,docs:{...(S=i.parameters)==null?void 0:S.docs,source:{originalSource:`{ + args: { + ...Default.args, + isChanging: true, + form: { + currentPassword: "oldPassword123", + newPassword: "NewSecure!Pass1", + confirmPassword: "NewSecure!Pass1" + } + } +}`,...(y=(v=i.parameters)==null?void 0:v.docs)==null?void 0:y.source}}};var q,D,T;d.parameters={...d.parameters,docs:{...(q=d.parameters)==null?void 0:q.docs,source:{originalSource:`{ + args: { + ...Default.args, + error: "Current password is incorrect." + } +}`,...(T=(D=d.parameters)==null?void 0:D.docs)==null?void 0:T.source}}};var k,M,E;m.parameters={...m.parameters,docs:{...(k=m.parameters)==null?void 0:k.docs,source:{originalSource:`{ + args: { + ...Default.args, + success: "Password changed successfully!" + } +}`,...(E=(M=m.parameters)==null?void 0:M.docs)==null?void 0:E.source}}};const Cs=["Default","Filled","PasswordMismatch","Changing","WithError","WithSuccess"];export{i as Changing,s as Default,t as Filled,n as PasswordMismatch,d as WithError,m as WithSuccess,Cs as __namedExportsOrder,bs as default}; diff --git a/apps/portal/public/storybook/assets/PasswordMatchIndicator-CoUjyU1r.js b/apps/portal/public/storybook/assets/PasswordMatchIndicator-CoUjyU1r.js new file mode 100644 index 00000000..658944f2 --- /dev/null +++ b/apps/portal/public/storybook/assets/PasswordMatchIndicator-CoUjyU1r.js @@ -0,0 +1 @@ +import{j as s}from"./jsx-runtime-D_zvdyIk.js";import{C as t}from"./check-DmNqM64J.js";import{X as a}from"./x-gzkF7O9v.js";function r({passwordsMatch:e}){return e?s.jsxs("div",{className:"flex items-center gap-1 text-xs",children:[s.jsx(t,{className:"h-3 w-3 text-success"}),s.jsx("span",{className:"text-success",children:"Passwords match"})]}):s.jsxs("div",{className:"flex items-center gap-1 text-xs",children:[s.jsx(a,{className:"h-3 w-3 text-danger"}),s.jsx("span",{className:"text-danger",children:"Passwords do not match"})]})}r.__docgenInfo={description:"",methods:[],displayName:"PasswordMatchIndicator",props:{passwordsMatch:{required:!0,tsType:{name:"boolean"},description:""}}};export{r as P}; diff --git a/apps/portal/public/storybook/assets/PasswordMatchIndicator.stories-BPnGI6X8.js b/apps/portal/public/storybook/assets/PasswordMatchIndicator.stories-BPnGI6X8.js new file mode 100644 index 00000000..d665404f --- /dev/null +++ b/apps/portal/public/storybook/assets/PasswordMatchIndicator.stories-BPnGI6X8.js @@ -0,0 +1,9 @@ +import{P as p}from"./PasswordMatchIndicator-CoUjyU1r.js";import"./jsx-runtime-D_zvdyIk.js";import"./check-DmNqM64J.js";import"./createLucideIcon-CctB0W3q.js";import"./index-JhL3uwfD.js";import"./x-gzkF7O9v.js";const M={title:"Features/Auth/PasswordMatchIndicator",component:p,parameters:{layout:"centered"}},r={args:{passwordsMatch:!0}},a={args:{passwordsMatch:!1}};var s,t,e;r.parameters={...r.parameters,docs:{...(s=r.parameters)==null?void 0:s.docs,source:{originalSource:`{ + args: { + passwordsMatch: true + } +}`,...(e=(t=r.parameters)==null?void 0:t.docs)==null?void 0:e.source}}};var o,c,n;a.parameters={...a.parameters,docs:{...(o=a.parameters)==null?void 0:o.docs,source:{originalSource:`{ + args: { + passwordsMatch: false + } +}`,...(n=(c=a.parameters)==null?void 0:c.docs)==null?void 0:n.source}}};const l=["Matching","NotMatching"];export{r as Matching,a as NotMatching,l as __namedExportsOrder,M as default}; diff --git a/apps/portal/public/storybook/assets/PasswordRequirements-Iusuj6EU.js b/apps/portal/public/storybook/assets/PasswordRequirements-Iusuj6EU.js new file mode 100644 index 00000000..341c34ee --- /dev/null +++ b/apps/portal/public/storybook/assets/PasswordRequirements-Iusuj6EU.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{C as a}from"./check-DmNqM64J.js";import{X as n}from"./x-gzkF7O9v.js";function r({met:s,label:t}){return e.jsxs("div",{className:"flex items-center gap-1",children:[s?e.jsx(a,{className:"h-3 w-3 text-success"}):e.jsx(n,{className:"h-3 w-3 text-muted-foreground"}),e.jsx("span",{className:s?"text-success":"text-muted-foreground",children:t})]})}function o({checks:s,showHint:t=!1}){return t?e.jsx("p",{className:"text-xs text-muted-foreground",children:"At least 8 characters with uppercase, lowercase, and numbers"}):e.jsxs("div",{className:"grid grid-cols-2 gap-1 text-xs",children:[e.jsx(r,{met:s.minLength,label:"8+ characters"}),e.jsx(r,{met:s.hasUppercase,label:"Uppercase letter"}),e.jsx(r,{met:s.hasLowercase,label:"Lowercase letter"}),e.jsx(r,{met:s.hasNumber,label:"Number"})]})}o.__docgenInfo={description:"",methods:[],displayName:"PasswordRequirements",props:{checks:{required:!0,tsType:{name:"PasswordChecks"},description:""},showHint:{required:!1,tsType:{name:"union",raw:"boolean | undefined",elements:[{name:"boolean"},{name:"undefined"}]},description:"",defaultValue:{value:"false",computed:!1}}}};export{o as P}; diff --git a/apps/portal/public/storybook/assets/PasswordRequirements.stories-BuqA3NhU.js b/apps/portal/public/storybook/assets/PasswordRequirements.stories-BuqA3NhU.js new file mode 100644 index 00000000..aa60f905 --- /dev/null +++ b/apps/portal/public/storybook/assets/PasswordRequirements.stories-BuqA3NhU.js @@ -0,0 +1,38 @@ +import{P as g}from"./PasswordRequirements-Iusuj6EU.js";import"./jsx-runtime-D_zvdyIk.js";import"./check-DmNqM64J.js";import"./createLucideIcon-CctB0W3q.js";import"./index-JhL3uwfD.js";import"./x-gzkF7O9v.js";const U={title:"Features/Auth/PasswordRequirements",component:g,parameters:{layout:"centered"}},e={args:{checks:{minLength:!0,hasUppercase:!0,hasLowercase:!0,hasNumber:!0}}},s={args:{checks:{minLength:!1,hasUppercase:!1,hasLowercase:!1,hasNumber:!1}}},a={args:{checks:{minLength:!0,hasUppercase:!0,hasLowercase:!1,hasNumber:!1}}},r={args:{checks:{minLength:!1,hasUppercase:!1,hasLowercase:!1,hasNumber:!1},showHint:!0}};var t,n,c;e.parameters={...e.parameters,docs:{...(t=e.parameters)==null?void 0:t.docs,source:{originalSource:`{ + args: { + checks: { + minLength: true, + hasUppercase: true, + hasLowercase: true, + hasNumber: true + } + } +}`,...(c=(n=e.parameters)==null?void 0:n.docs)==null?void 0:c.source}}};var o,m,h;s.parameters={...s.parameters,docs:{...(o=s.parameters)==null?void 0:o.docs,source:{originalSource:`{ + args: { + checks: { + minLength: false, + hasUppercase: false, + hasLowercase: false, + hasNumber: false + } + } +}`,...(h=(m=s.parameters)==null?void 0:m.docs)==null?void 0:h.source}}};var p,u,l;a.parameters={...a.parameters,docs:{...(p=a.parameters)==null?void 0:p.docs,source:{originalSource:`{ + args: { + checks: { + minLength: true, + hasUppercase: true, + hasLowercase: false, + hasNumber: false + } + } +}`,...(l=(u=a.parameters)==null?void 0:u.docs)==null?void 0:l.source}}};var i,f,d;r.parameters={...r.parameters,docs:{...(i=r.parameters)==null?void 0:i.docs,source:{originalSource:`{ + args: { + checks: { + minLength: false, + hasUppercase: false, + hasLowercase: false, + hasNumber: false + }, + showHint: true + } +}`,...(d=(f=r.parameters)==null?void 0:f.docs)==null?void 0:d.source}}};const P=["AllMet","NoneMet","PartiallyMet","HintMode"];export{e as AllMet,r as HintMode,s as NoneMet,a as PartiallyMet,P as __namedExportsOrder,U as default}; diff --git a/apps/portal/public/storybook/assets/PasswordSection-DeRa0d5T.js b/apps/portal/public/storybook/assets/PasswordSection-DeRa0d5T.js new file mode 100644 index 00000000..f0458f1c --- /dev/null +++ b/apps/portal/public/storybook/assets/PasswordSection-DeRa0d5T.js @@ -0,0 +1,4 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import"./button-C8_cybvS.js";import"./input-BbGJiz0K.js";import{P as p}from"./password-input-D4khGh8v.js";import"./checkbox-DahUyQbt.js";import{L as u}from"./label-C25VH7yk.js";import{E as c}from"./error-message-DeFFz6H_.js";import"./status-pill-wWp9xkwA.js";import"./badge-BdMsasyi.js";import"./spinner-mU4XywER.js";import"./loading-overlay-DMJTiFny.js";import"./error-state-BSicqqE6.js";import"./empty-state-DRUGJ9ip.js";import"./inline-toast-DQJ-O9wc.js";import"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import"./logo-f0fprTjz.js";import"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./animated-container-DyAZ9gmw.js";import{P as w}from"./PasswordRequirements-Iusuj6EU.js";import{P as f}from"./PasswordMatchIndicator-CoUjyU1r.js";import{r as h}from"./index-JhL3uwfD.js";const y=[{key:"minLength",label:"At least 8 characters",regex:/.{8,}/},{key:"uppercase",label:"One uppercase letter",regex:/[A-Z]/},{key:"lowercase",label:"One lowercase letter",regex:/[a-z]/},{key:"number",label:"One number",regex:/[0-9]/}];function P(n){const s=y.map(t=>({key:t.key,label:t.label,met:t.regex.test(n)})),a=s.filter(t=>t.met).length,i=a/s.length*100,r=a===s.length;return{requirements:s,strength:i,isValid:r}}function x(n){return h.useMemo(()=>{const{requirements:s,strength:a,isValid:i}=P(n),r=Object.fromEntries(s.map(o=>[o.key,o.met])),t={minLength:r.minLength??!1,hasUppercase:r.uppercase??!1,hasLowercase:r.lowercase??!1,hasNumber:r.number??!1},m=s.find(o=>!o.met);let d;return n.length===0?d="Password is required":m&&(d=m.label),{checks:t,strength:a,isValid:i,error:d}},[n])}function v({password:n,confirmPassword:s,onPasswordChange:a,onConfirmPasswordChange:i,errors:r,clearError:t,loading:m}){const{checks:d}=x(n),o=s.length>0&&!r.confirmPassword,g=n===s;return e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"space-y-2",children:[e.jsxs(u,{htmlFor:"password",children:["Password ",e.jsx("span",{className:"text-danger",children:"*"})]}),e.jsx(p,{id:"password",value:n,onChange:l=>{a(l.target.value),t("password")},placeholder:"Create a strong password",disabled:m,error:r.password,autoComplete:"new-password"}),e.jsx(c,{children:r.password}),e.jsx(w,{checks:d,showHint:n.length===0})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsxs(u,{htmlFor:"confirmPassword",children:["Confirm Password ",e.jsx("span",{className:"text-danger",children:"*"})]}),e.jsx(p,{id:"confirmPassword",value:s,onChange:l=>{i(l.target.value),t("confirmPassword")},placeholder:"Confirm your password",disabled:m,error:r.confirmPassword,autoComplete:"new-password"}),e.jsx(c,{children:r.confirmPassword}),o&&e.jsx(f,{passwordsMatch:g})]})]})}v.__docgenInfo={description:"",methods:[],displayName:"PasswordSection",props:{password:{required:!0,tsType:{name:"string"},description:""},confirmPassword:{required:!0,tsType:{name:"string"},description:""},onPasswordChange:{required:!0,tsType:{name:"signature",type:"function",raw:"(value: string) => void",signature:{arguments:[{type:{name:"string"},name:"value"}],return:{name:"void"}}},description:""},onConfirmPasswordChange:{required:!0,tsType:{name:"signature",type:"function",raw:"(value: string) => void",signature:{arguments:[{type:{name:"string"},name:"value"}],return:{name:"void"}}},description:""},errors:{required:!0,tsType:{name:"signature",type:"object",raw:`{ + password?: string | undefined; + confirmPassword?: string | undefined; +}`,signature:{properties:[{key:"password",value:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}],required:!1}},{key:"confirmPassword",value:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}],required:!1}}]}},description:""},clearError:{required:!0,tsType:{name:"signature",type:"function",raw:'(field: "password" | "confirmPassword") => void',signature:{arguments:[{type:{name:"union",raw:'"password" | "confirmPassword"',elements:[{name:"literal",value:'"password"'},{name:"literal",value:'"confirmPassword"'}]},name:"field"}],return:{name:"void"}}},description:""},loading:{required:!0,tsType:{name:"boolean"},description:""}}};export{v as P,x as u}; diff --git a/apps/portal/public/storybook/assets/PasswordSection.stories-CUGb6CmS.js b/apps/portal/public/storybook/assets/PasswordSection.stories-CUGb6CmS.js new file mode 100644 index 00000000..0f8d17df --- /dev/null +++ b/apps/portal/public/storybook/assets/PasswordSection.stories-CUGb6CmS.js @@ -0,0 +1,44 @@ +import"./SetPasswordForm-JAj2IB2C.js";import"./jsx-runtime-D_zvdyIk.js";import"./index-JhL3uwfD.js";import"./button-C8_cybvS.js";import"./input-BbGJiz0K.js";import"./password-input-D4khGh8v.js";import"./checkbox-DahUyQbt.js";import"./label-C25VH7yk.js";import"./error-message-DeFFz6H_.js";import"./status-pill-wWp9xkwA.js";import"./badge-BdMsasyi.js";import"./spinner-mU4XywER.js";import"./loading-overlay-DMJTiFny.js";import"./error-state-BSicqqE6.js";import"./empty-state-DRUGJ9ip.js";import"./inline-toast-DQJ-O9wc.js";import"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import"./logo-f0fprTjz.js";import"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./animated-container-DyAZ9gmw.js";import"./DataTable-COYdcx41.js";import"./FormField-C0UylACv.js";import"./OtpInput-6kd_2E0v.js";import"./OtpExpiryDisplay-BGgB7Tk6.js";import"./SearchFilterBar-Ds19v0-P.js";import"./PaginationBar-D_k7ztRb.js";import"./DetailHeader-C0ZsoM39.js";import"./AlertBanner-Bnlyj1xc.js";import"./index-BKyvj4H5.js";import"./SectionHeader-Bo81Whai.js";import"./ProgressSteps-weVdXcqu.js";import"./SubCard-1OZIPgEM.js";import"./AnimatedCard-DFAiX4zP.js";import"./ServiceCard-BJEHFLba.js";import"./SummaryStats-D6b7Am-p.js";import"./FilterDropdown-CUU04WmN.js";import"./ClearFiltersButton-CPCoyXk2.js";import"./DetailStatsGrid-CDkKTM-B.js";import"./SectionCard-BcUjc-7N.js";import"./MetricCard-BR1xVIXz.js";import"./BackLink-C5IY6wzy.js";import"./status-badge-5pzxe45J.js";import"./error-boundary-DIRO_cDI.js";import"./error-fallbacks-kSPsNxmV.js";import"./AuthLayout-DNr24V9g.js";import{P as f}from"./PasswordSection-DeRa0d5T.js";import"./PasswordRequirements-Iusuj6EU.js";import"./PasswordMatchIndicator-CoUjyU1r.js";import"./TermsCheckbox-CIu51LBN.js";import"./MarketingCheckbox-x7nAFt-_.js";import"./next-link-BmD4fPSy.js";import"./auth.store-CVqT-1lf.js";import"./error-handling-CCxr4Gjn.js";import"./coerce-BirWdn0y.js";import"./react-C6W-rNNW.js";import"./schema-JsDJirqf.js";import"./schema-B7GuHPAW.js";import"./schema-Dok_SHcO.js";import"./compat-BjFfok0x.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./createLucideIcon-CctB0W3q.js";import"./ExclamationCircleIcon-jFfW0Ax_.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./ArrowPathIcon-CZjG6RfV.js";import"./PlusIcon-DGufmf06.js";import"./index-CNXKWNLp.js";import"./proxy-ZkTvaR74.js";import"./next-image-69WeRggt.js";import"./Squares2X2Icon-BMQM_Wy1.js";import"./ChevronRightIcon-CMQWsJeW.js";import"./input-otp-Cin9-T84.js";import"./clock-C92s7kSC.js";import"./FunnelIcon-8nhbwqu0.js";import"./XMarkIcon-Bsb1W5VN.js";import"./XCircleIcon-CiVBnngB.js";import"./InformationCircleIcon-Clz7d-56.js";import"./CheckCircleIcon-Dva35lTP.js";import"./arrow-right-BNMAry-H.js";import"./ArrowLeftIcon-Cw1eswTb.js";import"./check-DmNqM64J.js";import"./x-gzkF7O9v.js";const Ur={title:"Features/Services/EligibilityCheck/PasswordSection",component:f,parameters:{layout:"centered"}},r={args:{password:"",confirmPassword:"",onPasswordChange:()=>{},onConfirmPasswordChange:()=>{},errors:{},clearError:()=>{},loading:!1}},o={args:{password:"StrongP@ss123",confirmPassword:"StrongP@ss123",onPasswordChange:()=>{},onConfirmPasswordChange:()=>{},errors:{},clearError:()=>{},loading:!1}},s={args:{password:"weak",confirmPassword:"different",onPasswordChange:()=>{},onConfirmPasswordChange:()=>{},errors:{password:"Password must be at least 8 characters",confirmPassword:"Passwords do not match"},clearError:()=>{},loading:!1}},a={args:{password:"StrongP@ss123",confirmPassword:"StrongP@ss123",onPasswordChange:()=>{},onConfirmPasswordChange:()=>{},errors:{},clearError:()=>{},loading:!0}};var t,i,n;r.parameters={...r.parameters,docs:{...(t=r.parameters)==null?void 0:t.docs,source:{originalSource:`{ + args: { + password: "", + confirmPassword: "", + onPasswordChange: () => {}, + onConfirmPasswordChange: () => {}, + errors: {}, + clearError: () => {}, + loading: false + } +}`,...(n=(i=r.parameters)==null?void 0:i.docs)==null?void 0:n.source}}};var m,e,p;o.parameters={...o.parameters,docs:{...(m=o.parameters)==null?void 0:m.docs,source:{originalSource:`{ + args: { + password: "StrongP@ss123", + confirmPassword: "StrongP@ss123", + onPasswordChange: () => {}, + onConfirmPasswordChange: () => {}, + errors: {}, + clearError: () => {}, + loading: false + } +}`,...(p=(e=o.parameters)==null?void 0:e.docs)==null?void 0:p.source}}};var d,c,g;s.parameters={...s.parameters,docs:{...(d=s.parameters)==null?void 0:d.docs,source:{originalSource:`{ + args: { + password: "weak", + confirmPassword: "different", + onPasswordChange: () => {}, + onConfirmPasswordChange: () => {}, + errors: { + password: "Password must be at least 8 characters", + confirmPassword: "Passwords do not match" + }, + clearError: () => {}, + loading: false + } +}`,...(g=(c=s.parameters)==null?void 0:c.docs)==null?void 0:g.source}}};var w,P,l;a.parameters={...a.parameters,docs:{...(w=a.parameters)==null?void 0:w.docs,source:{originalSource:`{ + args: { + password: "StrongP@ss123", + confirmPassword: "StrongP@ss123", + onPasswordChange: () => {}, + onConfirmPasswordChange: () => {}, + errors: {}, + clearError: () => {}, + loading: true + } +}`,...(l=(P=a.parameters)==null?void 0:P.docs)==null?void 0:l.source}}};const Vr=["Default","Filled","WithErrors","Loading"];export{r as Default,o as Filled,a as Loading,s as WithErrors,Vr as __namedExportsOrder,Ur as default}; diff --git a/apps/portal/public/storybook/assets/PasswordSection.stories-Dd7-O2Dr.js b/apps/portal/public/storybook/assets/PasswordSection.stories-Dd7-O2Dr.js new file mode 100644 index 00000000..21a0e494 --- /dev/null +++ b/apps/portal/public/storybook/assets/PasswordSection.stories-Dd7-O2Dr.js @@ -0,0 +1,53 @@ +import{j as s}from"./jsx-runtime-D_zvdyIk.js";import{fn as e}from"./index-B9TJ7cVi.js";import"./button-C8_cybvS.js";import"./input-BbGJiz0K.js";import{P as h}from"./password-input-D4khGh8v.js";import"./checkbox-DahUyQbt.js";import{L as w}from"./label-C25VH7yk.js";import{E as f}from"./error-message-DeFFz6H_.js";import"./status-pill-wWp9xkwA.js";import"./badge-BdMsasyi.js";import"./spinner-mU4XywER.js";import"./loading-overlay-DMJTiFny.js";import"./error-state-BSicqqE6.js";import"./empty-state-DRUGJ9ip.js";import"./inline-toast-DQJ-O9wc.js";import"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import"./logo-f0fprTjz.js";import"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./animated-container-DyAZ9gmw.js";import{C as E}from"./check-DmNqM64J.js";import{X as F}from"./x-gzkF7O9v.js";import"./index-JhL3uwfD.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./createLucideIcon-CctB0W3q.js";import"./ExclamationCircleIcon-jFfW0Ax_.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./ArrowPathIcon-CZjG6RfV.js";import"./PlusIcon-DGufmf06.js";import"./index-CNXKWNLp.js";import"./proxy-ZkTvaR74.js";import"./next-image-69WeRggt.js";import"./Squares2X2Icon-BMQM_Wy1.js";function n({met:r,label:a}){return s.jsxs("div",{className:"flex items-center gap-1",children:[r?s.jsx(E,{className:"h-3 w-3 text-success"}):s.jsx(F,{className:"h-3 w-3 text-muted-foreground"}),s.jsx("span",{className:r?"text-success":"text-muted-foreground",children:a})]})}function A({checks:r,showHint:a=!1}){return a?s.jsx("p",{className:"text-xs text-muted-foreground",children:"At least 8 characters with uppercase, lowercase, and numbers"}):s.jsxs("div",{className:"grid grid-cols-2 gap-1 text-xs",children:[s.jsx(n,{met:r.minLength,label:"8+ characters"}),s.jsx(n,{met:r.hasUppercase,label:"Uppercase letter"}),s.jsx(n,{met:r.hasLowercase,label:"Lowercase letter"}),s.jsx(n,{met:r.hasNumber,label:"Number"})]})}function D({passwordsMatch:r}){return r?s.jsxs("div",{className:"flex items-center gap-1 text-xs",children:[s.jsx(E,{className:"h-3 w-3 text-success"}),s.jsx("span",{className:"text-success",children:"Passwords match"})]}):s.jsxs("div",{className:"flex items-center gap-1 text-xs",children:[s.jsx(F,{className:"h-3 w-3 text-danger"}),s.jsx("span",{className:"text-danger",children:"Passwords do not match"})]})}function I({password:r,confirmPassword:a,onPasswordChange:U,onConfirmPasswordChange:y,errors:o,clearError:l,loading:p,checks:q}){const R=a.length>0&&!o.confirmPassword,W=r===a;return s.jsxs(s.Fragment,{children:[s.jsxs("div",{className:"space-y-2",children:[s.jsxs(w,{htmlFor:"password",children:["Password ",s.jsx("span",{className:"text-danger",children:"*"})]}),s.jsx(h,{id:"password",value:r,onChange:m=>{U(m.target.value),l("password")},placeholder:"Create a strong password",disabled:p,error:o.password,autoComplete:"new-password"}),s.jsx(f,{children:o.password}),s.jsx(A,{checks:q,showHint:r.length===0})]}),s.jsxs("div",{className:"space-y-2",children:[s.jsxs(w,{htmlFor:"confirmPassword",children:["Confirm Password ",s.jsx("span",{className:"text-danger",children:"*"})]}),s.jsx(h,{id:"confirmPassword",value:a,onChange:m=>{y(m.target.value),l("confirmPassword")},placeholder:"Confirm your password",disabled:p,error:o.confirmPassword,autoComplete:"new-password"}),s.jsx(f,{children:o.confirmPassword}),R&&s.jsx(D,{passwordsMatch:W})]})]})}const M={minLength:!0,hasUppercase:!0,hasLowercase:!0,hasNumber:!0},_={minLength:!1,hasUppercase:!1,hasLowercase:!1,hasNumber:!1},ks={title:"Features/GetStarted/CompleteAccount/PasswordSection",component:I,parameters:{layout:"centered"},decorators:[r=>s.jsx("div",{style:{maxWidth:480,width:"100%"},children:s.jsx(r,{})})]},t={args:{password:"",confirmPassword:"",onPasswordChange:e(),onConfirmPasswordChange:e(),errors:{},clearError:e(),loading:!1,checks:_}},c={args:{password:"StrongP@ss1",confirmPassword:"StrongP@ss1",onPasswordChange:e(),onConfirmPasswordChange:e(),errors:{},clearError:e(),loading:!1,checks:M}},i={args:{password:"weak",confirmPassword:"different",onPasswordChange:e(),onConfirmPasswordChange:e(),errors:{password:"Password does not meet requirements",confirmPassword:"Passwords do not match"},clearError:e(),loading:!1,checks:{minLength:!1,hasUppercase:!1,hasLowercase:!0,hasNumber:!1}}},d={args:{password:"StrongP@ss1",confirmPassword:"StrongP@ss1",onPasswordChange:e(),onConfirmPasswordChange:e(),errors:{},clearError:e(),loading:!0,checks:M}};var g,u,P;t.parameters={...t.parameters,docs:{...(g=t.parameters)==null?void 0:g.docs,source:{originalSource:`{ + args: { + password: "", + confirmPassword: "", + onPasswordChange: fn(), + onConfirmPasswordChange: fn(), + errors: {}, + clearError: fn(), + loading: false, + checks: allChecksFailing + } +}`,...(P=(u=t.parameters)==null?void 0:u.docs)==null?void 0:P.source}}};var x,C,j;c.parameters={...c.parameters,docs:{...(x=c.parameters)==null?void 0:x.docs,source:{originalSource:`{ + args: { + password: "StrongP@ss1", + confirmPassword: "StrongP@ss1", + onPasswordChange: fn(), + onConfirmPasswordChange: fn(), + errors: {}, + clearError: fn(), + loading: false, + checks: allChecksPassing + } +}`,...(j=(C=c.parameters)==null?void 0:C.docs)==null?void 0:j.source}}};var N,L,S;i.parameters={...i.parameters,docs:{...(N=i.parameters)==null?void 0:N.docs,source:{originalSource:`{ + args: { + password: "weak", + confirmPassword: "different", + onPasswordChange: fn(), + onConfirmPasswordChange: fn(), + errors: { + password: "Password does not meet requirements", + confirmPassword: "Passwords do not match" + }, + clearError: fn(), + loading: false, + checks: { + minLength: false, + hasUppercase: false, + hasLowercase: true, + hasNumber: false + } + } +}`,...(S=(L=i.parameters)==null?void 0:L.docs)==null?void 0:S.source}}};var b,k,v;d.parameters={...d.parameters,docs:{...(b=d.parameters)==null?void 0:b.docs,source:{originalSource:`{ + args: { + password: "StrongP@ss1", + confirmPassword: "StrongP@ss1", + onPasswordChange: fn(), + onConfirmPasswordChange: fn(), + errors: {}, + clearError: fn(), + loading: true, + checks: allChecksPassing + } +}`,...(v=(k=d.parameters)==null?void 0:k.docs)==null?void 0:v.source}}};const vs=["Default","FilledMatching","WithErrors","Loading"];export{t as Default,c as FilledMatching,d as Loading,i as WithErrors,vs as __namedExportsOrder,ks as default}; diff --git a/apps/portal/public/storybook/assets/PasswordSection.stories-Dp7SWmeD.js b/apps/portal/public/storybook/assets/PasswordSection.stories-Dp7SWmeD.js new file mode 100644 index 00000000..cbd7dfd1 --- /dev/null +++ b/apps/portal/public/storybook/assets/PasswordSection.stories-Dp7SWmeD.js @@ -0,0 +1,64 @@ +import{j as t}from"./jsx-runtime-D_zvdyIk.js";import{P as W}from"./PasswordSection-DeRa0d5T.js";import"./button-C8_cybvS.js";import"./index-JhL3uwfD.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./spinner-mU4XywER.js";import"./input-BbGJiz0K.js";import"./password-input-D4khGh8v.js";import"./createLucideIcon-CctB0W3q.js";import"./checkbox-DahUyQbt.js";import"./label-C25VH7yk.js";import"./error-message-DeFFz6H_.js";import"./ExclamationCircleIcon-jFfW0Ax_.js";import"./status-pill-wWp9xkwA.js";import"./badge-BdMsasyi.js";import"./loading-overlay-DMJTiFny.js";import"./error-state-BSicqqE6.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./ArrowPathIcon-CZjG6RfV.js";import"./empty-state-DRUGJ9ip.js";import"./PlusIcon-DGufmf06.js";import"./inline-toast-DQJ-O9wc.js";import"./index-CNXKWNLp.js";import"./proxy-ZkTvaR74.js";import"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import"./logo-f0fprTjz.js";import"./next-image-69WeRggt.js";import"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./Squares2X2Icon-BMQM_Wy1.js";import"./animated-container-DyAZ9gmw.js";import"./PasswordRequirements-Iusuj6EU.js";import"./check-DmNqM64J.js";import"./x-gzkF7O9v.js";import"./PasswordMatchIndicator-CoUjyU1r.js";const lr={title:"Features/Auth/PasswordSection",component:W,parameters:{layout:"centered"},decorators:[j=>t.jsx("div",{className:"w-[400px] space-y-4",children:t.jsx(j,{})})]},r={args:{password:"",confirmPassword:"",onPasswordChange:()=>{},onConfirmPasswordChange:()=>{},errors:{},clearError:()=>{},loading:!1}},s={args:{password:"MyPass123",confirmPassword:"",onPasswordChange:()=>{},onConfirmPasswordChange:()=>{},errors:{},clearError:()=>{},loading:!1}},o={args:{password:"MyPass123",confirmPassword:"MyPass123",onPasswordChange:()=>{},onConfirmPasswordChange:()=>{},errors:{},clearError:()=>{},loading:!1}},a={args:{password:"MyPass123",confirmPassword:"MyPass456",onPasswordChange:()=>{},onConfirmPasswordChange:()=>{},errors:{},clearError:()=>{},loading:!1}},n={args:{password:"short",confirmPassword:"",onPasswordChange:()=>{},onConfirmPasswordChange:()=>{},errors:{password:"Password does not meet requirements",confirmPassword:"Please confirm your password"},clearError:()=>{},loading:!1}},e={args:{password:"MyPass123",confirmPassword:"MyPass123",onPasswordChange:()=>{},onConfirmPasswordChange:()=>{},errors:{},clearError:()=>{},loading:!0}};var i,m,d;r.parameters={...r.parameters,docs:{...(i=r.parameters)==null?void 0:i.docs,source:{originalSource:`{ + args: { + password: "", + confirmPassword: "", + onPasswordChange: () => {}, + onConfirmPasswordChange: () => {}, + errors: {}, + clearError: () => {}, + loading: false + } +}`,...(d=(m=r.parameters)==null?void 0:m.docs)==null?void 0:d.source}}};var p,c,w;s.parameters={...s.parameters,docs:{...(p=s.parameters)==null?void 0:p.docs,source:{originalSource:`{ + args: { + password: "MyPass123", + confirmPassword: "", + onPasswordChange: () => {}, + onConfirmPasswordChange: () => {}, + errors: {}, + clearError: () => {}, + loading: false + } +}`,...(w=(c=s.parameters)==null?void 0:c.docs)==null?void 0:w.source}}};var P,g,l;o.parameters={...o.parameters,docs:{...(P=o.parameters)==null?void 0:P.docs,source:{originalSource:`{ + args: { + password: "MyPass123", + confirmPassword: "MyPass123", + onPasswordChange: () => {}, + onConfirmPasswordChange: () => {}, + errors: {}, + clearError: () => {}, + loading: false + } +}`,...(l=(g=o.parameters)==null?void 0:g.docs)==null?void 0:l.source}}};var f,h,C;a.parameters={...a.parameters,docs:{...(f=a.parameters)==null?void 0:f.docs,source:{originalSource:`{ + args: { + password: "MyPass123", + confirmPassword: "MyPass456", + onPasswordChange: () => {}, + onConfirmPasswordChange: () => {}, + errors: {}, + clearError: () => {}, + loading: false + } +}`,...(C=(h=a.parameters)==null?void 0:h.docs)==null?void 0:C.source}}};var u,y,E;n.parameters={...n.parameters,docs:{...(u=n.parameters)==null?void 0:u.docs,source:{originalSource:`{ + args: { + password: "short", + confirmPassword: "", + onPasswordChange: () => {}, + onConfirmPasswordChange: () => {}, + errors: { + password: "Password does not meet requirements", + confirmPassword: "Please confirm your password" + }, + clearError: () => {}, + loading: false + } +}`,...(E=(y=n.parameters)==null?void 0:y.docs)==null?void 0:E.source}}};var M,S,x;e.parameters={...e.parameters,docs:{...(M=e.parameters)==null?void 0:M.docs,source:{originalSource:`{ + args: { + password: "MyPass123", + confirmPassword: "MyPass123", + onPasswordChange: () => {}, + onConfirmPasswordChange: () => {}, + errors: {}, + clearError: () => {}, + loading: true + } +}`,...(x=(S=e.parameters)==null?void 0:S.docs)==null?void 0:x.source}}};const fr=["Empty","WithPassword","PasswordsMatch","PasswordsMismatch","WithErrors","Loading"];export{r as Empty,e as Loading,o as PasswordsMatch,a as PasswordsMismatch,n as WithErrors,s as WithPassword,fr as __namedExportsOrder,lr as default}; diff --git a/apps/portal/public/storybook/assets/PaymentForm-CHFxVgF8.js b/apps/portal/public/storybook/assets/PaymentForm-CHFxVgF8.js new file mode 100644 index 00000000..c9761e47 --- /dev/null +++ b/apps/portal/public/storybook/assets/PaymentForm-CHFxVgF8.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{r as l}from"./index-JhL3uwfD.js";import{S as o}from"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import{B as j}from"./button-C8_cybvS.js";import{A as P}from"./AlertBanner-Bnlyj1xc.js";import{F as p}from"./CreditCardIcon-BBdrpHQs.js";import{F as R}from"./CheckCircleIcon-Dva35lTP.js";function S(){return e.jsx("div",{className:"p-6 bg-white border border-gray-200 rounded-lg",children:e.jsx("div",{className:"space-y-4",children:Array.from({length:2}).map((t,r)=>e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx(o,{className:"h-8 w-12"}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(o,{className:"h-4 w-40"}),e.jsx(o,{className:"h-3 w-24"})]})]}),e.jsx(o,{className:"h-9 w-28"})]},r))})})}function F({method:t,isSelected:r,disabled:s,onSelect:n}){const i=String(t.id),d=t.cardLastFour?`•••• ${t.cardLastFour}`:"",m=t.cardType?`${t.cardType.toUpperCase()} ${d}`.trim():t.description??t.type;return e.jsxs("label",{className:["flex items-center justify-between p-4 border-2 rounded-lg cursor-pointer transition-colors",r?"border-blue-500 bg-blue-50":"border-gray-200 hover:border-gray-300",s?"opacity-50 cursor-not-allowed":""].join(" "),children:[e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx(p,{className:"h-6 w-6 text-gray-400"}),e.jsxs("div",{children:[e.jsxs("div",{className:"text-sm font-medium text-gray-900 flex items-center gap-2",children:[m,t.isDefault?e.jsx("span",{className:"bg-green-100 text-green-800 text-xs px-2 py-1 rounded-full",children:"Default"}):null]}),t.expiryDate?e.jsxs("div",{className:"text-xs text-gray-500",children:["Expires ",t.expiryDate]}):null]})]}),e.jsx("input",{type:"radio",name:"paymentMethod",value:i,checked:r,disabled:s,onChange:()=>{s||n(i)},className:"text-blue-600 focus:ring-blue-500"})]})}function E({allowNewMethod:t,onAddNewMethod:r,disabled:s}){return e.jsxs("div",{className:"py-8 text-center",children:[e.jsx("div",{className:"mx-auto mb-4 flex h-12 w-12 items-center justify-center rounded-full bg-gray-100",children:e.jsx(p,{className:"h-6 w-6 text-gray-400"})}),e.jsx("p",{className:"text-sm text-gray-600 mb-4",children:"Add a payment method to continue."}),t&&r?e.jsx(j,{onClick:r,disabled:s,children:"Add Payment Method"}):null]})}function A({errors:t,selectedMethod:r}){return t.length>0?e.jsx(P,{variant:"error",title:"Payment Required",elevated:!0,size:"sm",children:e.jsx("ul",{className:"list-disc list-inside",children:t.map((s,n)=>e.jsx("li",{children:s},n))})}):r?e.jsxs("div",{className:"flex items-center gap-2 text-sm text-green-600",children:[e.jsx(R,{className:"h-4 w-4"}),"Payment method selected"]}):null}function D(t,r,s){return t?r.length===0?["No payment methods on file. Add one to continue."]:s?[]:["Select a payment method to continue."]:[]}function V({title:t,description:r}){return e.jsxs("div",{children:[e.jsxs("div",{className:"flex items-center gap-2 mb-1",children:[e.jsx(p,{className:"h-5 w-5 text-blue-600"}),e.jsx("h3",{className:"text-lg font-semibold text-gray-900",children:t})]}),r?e.jsx("p",{className:"text-sm text-gray-600",children:r}):null]})}function k({existingMethods:t=[],selectedMethodId:r,onMethodSelect:s,onAddNewMethod:n,onValidationChange:i,title:d="Payment Method",description:m,showTitle:v=!0,allowNewMethod:f=!0,requirePaymentMethod:x=!0,loading:N=!1,disabled:u=!1,children:b,footerContent:y}){const[c,g]=l.useState(r??""),[w,T]=l.useState([]);l.useEffect(()=>{r!==void 0&&g(r)},[r]),l.useEffect(()=>{const a=D(x,t,c);T(a),i==null||i(a.length===0,a)},[t,x,c,i]);const h=l.useMemo(()=>t,[t]);if(N)return e.jsx(S,{});const q=a=>{g(a),s==null||s(a)};return e.jsxs("div",{className:"p-6 bg-white border border-gray-200 rounded-lg space-y-4",children:[v&&e.jsx(V,{title:d,description:m}),h.length===0?e.jsx(E,{allowNewMethod:f,onAddNewMethod:n,disabled:u}):e.jsxs("div",{className:"space-y-3",children:[h.map(a=>e.jsx(F,{method:a,isSelected:c===String(a.id),disabled:u,onSelect:q},a.id)),f&&n?e.jsx("div",{className:"pt-3",children:e.jsx(j,{variant:"outline",className:"w-full",onClick:n,disabled:u,children:"Add Another Method"})}):null]}),b,e.jsx(A,{errors:w,selectedMethod:c}),y?e.jsx("div",{className:"pt-4 border-t border-gray-200",children:y}):null]})}k.__docgenInfo={description:"",methods:[],displayName:"PaymentForm",props:{existingMethods:{required:!1,tsType:{name:"Array",elements:[{name:"z.infer",elements:[{name:"paymentMethodSchema"}],raw:"z.infer"}],raw:"PaymentMethod[]"},description:"",defaultValue:{value:"[]",computed:!1}},selectedMethodId:{required:!1,tsType:{name:"string"},description:""},onMethodSelect:{required:!1,tsType:{name:"signature",type:"function",raw:"(methodId: string) => void",signature:{arguments:[{type:{name:"string"},name:"methodId"}],return:{name:"void"}}},description:""},onAddNewMethod:{required:!1,tsType:{name:"signature",type:"function",raw:"() => void",signature:{arguments:[],return:{name:"void"}}},description:""},onValidationChange:{required:!1,tsType:{name:"signature",type:"function",raw:"(isValid: boolean, errors: string[]) => void",signature:{arguments:[{type:{name:"boolean"},name:"isValid"},{type:{name:"Array",elements:[{name:"string"}],raw:"string[]"},name:"errors"}],return:{name:"void"}}},description:""},title:{required:!1,tsType:{name:"string"},description:"",defaultValue:{value:'"Payment Method"',computed:!1}},description:{required:!1,tsType:{name:"string"},description:""},showTitle:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"true",computed:!1}},allowNewMethod:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"true",computed:!1}},requirePaymentMethod:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"true",computed:!1}},loading:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"false",computed:!1}},disabled:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"false",computed:!1}},children:{required:!1,tsType:{name:"ReactReactNode",raw:"React.ReactNode"},description:""},footerContent:{required:!1,tsType:{name:"ReactReactNode",raw:"React.ReactNode"},description:""}}};export{k as P}; diff --git a/apps/portal/public/storybook/assets/PaymentForm.stories-BSI-pusn.js b/apps/portal/public/storybook/assets/PaymentForm.stories-BSI-pusn.js new file mode 100644 index 00000000..d887fe51 --- /dev/null +++ b/apps/portal/public/storybook/assets/PaymentForm.stories-BSI-pusn.js @@ -0,0 +1,40 @@ +import{j as d}from"./jsx-runtime-D_zvdyIk.js";import{P as L}from"./PaymentForm-CHFxVgF8.js";import"./index-JhL3uwfD.js";import"./skeleton-ISCbfaf8.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./loading-card-BIOTKPal.js";import"./button-C8_cybvS.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./spinner-mU4XywER.js";import"./input-BbGJiz0K.js";import"./password-input-D4khGh8v.js";import"./createLucideIcon-CctB0W3q.js";import"./checkbox-DahUyQbt.js";import"./label-C25VH7yk.js";import"./error-message-DeFFz6H_.js";import"./ExclamationCircleIcon-jFfW0Ax_.js";import"./status-pill-wWp9xkwA.js";import"./badge-BdMsasyi.js";import"./loading-overlay-DMJTiFny.js";import"./error-state-BSicqqE6.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./ArrowPathIcon-CZjG6RfV.js";import"./empty-state-DRUGJ9ip.js";import"./PlusIcon-DGufmf06.js";import"./inline-toast-DQJ-O9wc.js";import"./index-CNXKWNLp.js";import"./proxy-ZkTvaR74.js";import"./logo-f0fprTjz.js";import"./next-image-69WeRggt.js";import"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./Squares2X2Icon-BMQM_Wy1.js";import"./animated-container-DyAZ9gmw.js";import"./AlertBanner-Bnlyj1xc.js";import"./XCircleIcon-CiVBnngB.js";import"./InformationCircleIcon-Clz7d-56.js";import"./CheckCircleIcon-Dva35lTP.js";import"./CreditCardIcon-BBdrpHQs.js";const De={title:"Features/Services/Base/PaymentForm",component:L,parameters:{layout:"centered"},decorators:[I=>d.jsx("div",{style:{maxWidth:500},children:d.jsx(I,{})})]},e=[{id:"pm-1",type:"credit_card",cardType:"visa",cardLastFour:"4242",expiryDate:"12/2027",isDefault:!0,description:"Visa ending in 4242"},{id:"pm-2",type:"credit_card",cardType:"mastercard",cardLastFour:"8888",expiryDate:"06/2026",isDefault:!1,description:"Mastercard ending in 8888"}],t={args:{existingMethods:e,onMethodSelect:()=>{}}},o={args:{existingMethods:e,selectedMethodId:"pm-1",onMethodSelect:()=>{}}},r={args:{existingMethods:[],onAddNewMethod:()=>{}}},s={args:{loading:!0}},a={args:{existingMethods:e,selectedMethodId:"pm-1",disabled:!0}},i={args:{existingMethods:e,title:"Select Payment",description:"Choose a payment method for your monthly subscription.",onMethodSelect:()=>{}}},n={args:{existingMethods:e,showTitle:!1,onMethodSelect:()=>{}}};var m,p,c;t.parameters={...t.parameters,docs:{...(m=t.parameters)==null?void 0:m.docs,source:{originalSource:`{ + args: { + existingMethods: sampleMethods, + onMethodSelect: () => {} + } +}`,...(c=(p=t.parameters)==null?void 0:p.docs)==null?void 0:c.source}}};var l,h,u;o.parameters={...o.parameters,docs:{...(l=o.parameters)==null?void 0:l.docs,source:{originalSource:`{ + args: { + existingMethods: sampleMethods, + selectedMethodId: "pm-1", + onMethodSelect: () => {} + } +}`,...(u=(h=o.parameters)==null?void 0:h.docs)==null?void 0:u.source}}};var g,M,x;r.parameters={...r.parameters,docs:{...(g=r.parameters)==null?void 0:g.docs,source:{originalSource:`{ + args: { + existingMethods: [], + onAddNewMethod: () => {} + } +}`,...(x=(M=r.parameters)==null?void 0:M.docs)==null?void 0:x.source}}};var S,y,f;s.parameters={...s.parameters,docs:{...(S=s.parameters)==null?void 0:S.docs,source:{originalSource:`{ + args: { + loading: true + } +}`,...(f=(y=s.parameters)==null?void 0:y.docs)==null?void 0:f.source}}};var D,b,N;a.parameters={...a.parameters,docs:{...(D=a.parameters)==null?void 0:D.docs,source:{originalSource:`{ + args: { + existingMethods: sampleMethods, + selectedMethodId: "pm-1", + disabled: true + } +}`,...(N=(b=a.parameters)==null?void 0:b.docs)==null?void 0:N.source}}};var T,F,P;i.parameters={...i.parameters,docs:{...(T=i.parameters)==null?void 0:T.docs,source:{originalSource:`{ + args: { + existingMethods: sampleMethods, + title: "Select Payment", + description: "Choose a payment method for your monthly subscription.", + onMethodSelect: () => {} + } +}`,...(P=(F=i.parameters)==null?void 0:F.docs)==null?void 0:P.source}}};var W,j,w;n.parameters={...n.parameters,docs:{...(W=n.parameters)==null?void 0:W.docs,source:{originalSource:`{ + args: { + existingMethods: sampleMethods, + showTitle: false, + onMethodSelect: () => {} + } +}`,...(w=(j=n.parameters)==null?void 0:j.docs)==null?void 0:w.source}}};const be=["Default","WithSelectedMethod","NoMethods","Loading","Disabled","WithDescription","NoTitle"];export{t as Default,a as Disabled,s as Loading,r as NoMethods,n as NoTitle,i as WithDescription,o as WithSelectedMethod,be as __namedExportsOrder,De as default}; diff --git a/apps/portal/public/storybook/assets/PaymentMethodSection.stories-CLy-Cpns.js b/apps/portal/public/storybook/assets/PaymentMethodSection.stories-CLy-Cpns.js new file mode 100644 index 00000000..61aac958 --- /dev/null +++ b/apps/portal/public/storybook/assets/PaymentMethodSection.stories-CLy-Cpns.js @@ -0,0 +1,43 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{S as O}from"./SubCard-1OZIPgEM.js";import{B as o}from"./button-C8_cybvS.js";import{A as d}from"./AlertBanner-Bnlyj1xc.js";import{S as C}from"./status-pill-wWp9xkwA.js";import{C as S}from"./credit-card-AndvzjKW.js";import{fn as m}from"./index-B9TJ7cVi.js";import"./index-JhL3uwfD.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./spinner-mU4XywER.js";import"./XCircleIcon-CiVBnngB.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./InformationCircleIcon-Clz7d-56.js";import"./CheckCircleIcon-Dva35lTP.js";import"./createLucideIcon-CctB0W3q.js";function l({onRefresh:t,onManagePayment:N,isOpeningPortal:w}){return e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(o,{type:"button",size:"sm",onClick:t,children:"Check Again"}),e.jsx(o,{type:"button",size:"sm",onClick:N,isLoading:w,loadingText:"Opening...",children:"Add Payment Method"})]})}function T(t){return t.isLoading?e.jsx("div",{className:"text-sm text-muted-foreground",children:"Checking payment methods..."}):t.isError?e.jsx(d,{variant:"warning",title:"Unable to verify payment methods",size:"sm",elevated:!0,children:e.jsx(l,{onRefresh:t.onRefresh,onManagePayment:t.onManagePayment,isOpeningPortal:t.isOpeningPortal})}):t.hasPaymentMethod?e.jsxs("div",{className:"space-y-3",children:[t.paymentMethodDisplay&&e.jsx("div",{className:"rounded-xl border border-border bg-card p-4 shadow-[var(--cp-shadow-1)] transition-shadow duration-200 hover:shadow-[var(--cp-shadow-2)]",children:e.jsx("div",{className:"flex flex-col gap-3 sm:flex-row sm:items-center sm:justify-between",children:e.jsxs("div",{children:[e.jsx("p",{className:"text-xs font-semibold uppercase tracking-wide text-primary",children:"Default payment method"}),e.jsx("p",{className:"mt-1 text-sm font-semibold text-foreground",children:t.paymentMethodDisplay.title}),t.paymentMethodDisplay.subtitle&&e.jsx("p",{className:"mt-1 text-xs text-muted-foreground",children:t.paymentMethodDisplay.subtitle})]})})}),e.jsx("p",{className:"text-xs text-muted-foreground",children:"We securely charge your saved payment method after the order is approved."})]}):e.jsx(d,{variant:"error",title:"No payment method on file",size:"sm",elevated:!0,children:e.jsx(l,{onRefresh:t.onRefresh,onManagePayment:t.onManagePayment,isOpeningPortal:t.isOpeningPortal})})}function L(t){return e.jsx(O,{title:"Billing & Payment",icon:e.jsx(S,{className:"w-5 h-5 text-primary"}),right:e.jsxs("div",{className:"flex items-center gap-2",children:[t.hasPaymentMethod&&e.jsx(C,{label:"Verified",variant:"success"}),e.jsx(o,{type:"button",size:"sm",variant:"outline",onClick:t.onManagePayment,isLoading:t.isOpeningPortal,loadingText:"Opening...",children:t.hasPaymentMethod?"Change":"Add"})]}),children:e.jsx(T,{...t})})}L.__docgenInfo={description:"",methods:[],displayName:"PaymentMethodSection",props:{isLoading:{required:!0,tsType:{name:"boolean"},description:""},isError:{required:!0,tsType:{name:"boolean"},description:""},hasPaymentMethod:{required:!0,tsType:{name:"boolean"},description:""},paymentMethodDisplay:{required:!0,tsType:{name:"union",raw:"PaymentMethodDisplay | null",elements:[{name:"PaymentMethodDisplay"},{name:"null"}]},description:""},onManagePayment:{required:!0,tsType:{name:"signature",type:"function",raw:"() => void",signature:{arguments:[],return:{name:"void"}}},description:""},onRefresh:{required:!0,tsType:{name:"signature",type:"function",raw:"() => void",signature:{arguments:[],return:{name:"void"}}},description:""},isOpeningPortal:{required:!0,tsType:{name:"boolean"},description:""}}};const $={title:"Features/Checkout/PaymentMethodSection",component:L,parameters:{layout:"centered"},decorators:[t=>e.jsx("div",{style:{width:560},children:e.jsx(t,{})})],args:{onManagePayment:m(),onRefresh:m(),isOpeningPortal:!1}},a={args:{isLoading:!1,isError:!1,hasPaymentMethod:!0,paymentMethodDisplay:{title:"Visa ending in 4242",subtitle:"Expires 12/2028"}}},n={args:{isLoading:!1,isError:!1,hasPaymentMethod:!1,paymentMethodDisplay:null}},r={args:{isLoading:!0,isError:!1,hasPaymentMethod:!1,paymentMethodDisplay:null}},s={args:{isLoading:!1,isError:!0,hasPaymentMethod:!1,paymentMethodDisplay:null}},i={args:{isLoading:!1,isError:!1,hasPaymentMethod:!0,paymentMethodDisplay:{title:"Visa ending in 4242",subtitle:"Expires 12/2028"},isOpeningPortal:!0}};var c,p,u;a.parameters={...a.parameters,docs:{...(c=a.parameters)==null?void 0:c.docs,source:{originalSource:`{ + args: { + isLoading: false, + isError: false, + hasPaymentMethod: true, + paymentMethodDisplay: { + title: "Visa ending in 4242", + subtitle: "Expires 12/2028" + } + } +}`,...(u=(p=a.parameters)==null?void 0:p.docs)==null?void 0:u.source}}};var h,y,g;n.parameters={...n.parameters,docs:{...(h=n.parameters)==null?void 0:h.docs,source:{originalSource:`{ + args: { + isLoading: false, + isError: false, + hasPaymentMethod: false, + paymentMethodDisplay: null + } +}`,...(g=(y=n.parameters)==null?void 0:y.docs)==null?void 0:g.source}}};var f,x,M;r.parameters={...r.parameters,docs:{...(f=r.parameters)==null?void 0:f.docs,source:{originalSource:`{ + args: { + isLoading: true, + isError: false, + hasPaymentMethod: false, + paymentMethodDisplay: null + } +}`,...(M=(x=r.parameters)==null?void 0:x.docs)==null?void 0:M.source}}};var P,j,v;s.parameters={...s.parameters,docs:{...(P=s.parameters)==null?void 0:P.docs,source:{originalSource:`{ + args: { + isLoading: false, + isError: true, + hasPaymentMethod: false, + paymentMethodDisplay: null + } +}`,...(v=(j=s.parameters)==null?void 0:j.docs)==null?void 0:v.source}}};var b,E,D;i.parameters={...i.parameters,docs:{...(b=i.parameters)==null?void 0:b.docs,source:{originalSource:`{ + args: { + isLoading: false, + isError: false, + hasPaymentMethod: true, + paymentMethodDisplay: { + title: "Visa ending in 4242", + subtitle: "Expires 12/2028" + }, + isOpeningPortal: true + } +}`,...(D=(E=i.parameters)==null?void 0:E.docs)==null?void 0:D.source}}};const ee=["WithPaymentMethod","NoPaymentMethod","Loading","Error","OpeningPortal"];export{s as Error,r as Loading,n as NoPaymentMethod,i as OpeningPortal,a as WithPaymentMethod,ee as __namedExportsOrder,$ as default}; diff --git a/apps/portal/public/storybook/assets/PencilIcon-XQqOFsKO.js b/apps/portal/public/storybook/assets/PencilIcon-XQqOFsKO.js new file mode 100644 index 00000000..71680f08 --- /dev/null +++ b/apps/portal/public/storybook/assets/PencilIcon-XQqOFsKO.js @@ -0,0 +1 @@ +import{r as e}from"./index-JhL3uwfD.js";function a({title:r,titleId:t,...o},n){return e.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:n,"aria-labelledby":t},o),r?e.createElement("title",{id:t},r):null,e.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"m16.862 4.487 1.687-1.688a1.875 1.875 0 1 1 2.652 2.652L6.832 19.82a4.5 4.5 0 0 1-1.897 1.13l-2.685.8.8-2.685a4.5 4.5 0 0 1 1.13-1.897L16.863 4.487Zm0 0L19.5 7.125"}))}const l=e.forwardRef(a);export{l as F}; diff --git a/apps/portal/public/storybook/assets/PersonalInfoCard.stories-C5Meizce.js b/apps/portal/public/storybook/assets/PersonalInfoCard.stories-C5Meizce.js new file mode 100644 index 00000000..9dafdec7 --- /dev/null +++ b/apps/portal/public/storybook/assets/PersonalInfoCard.stories-C5Meizce.js @@ -0,0 +1,39 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{B as u}from"./button-C8_cybvS.js";import{I as F}from"./input-BbGJiz0K.js";import{F as T}from"./UserIcon-BGV2Aso_.js";import{F as X}from"./PencilIcon-XQqOFsKO.js";import{F as q}from"./XMarkIcon-Bsb1W5VN.js";import{F as B}from"./CheckIcon-BKJSKBEC.js";import"./index-JhL3uwfD.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./spinner-mU4XywER.js";function o({label:r,value:s,hint:t}){return e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-muted-foreground mb-2",children:r}),e.jsxs("div",{className:"bg-card rounded-lg p-4 border border-border shadow-sm",children:[e.jsx("p",{className:"text-base text-foreground font-medium",children:s||e.jsx("span",{className:"text-muted-foreground italic",children:"Not provided"})}),e.jsx("p",{className:"text-xs text-muted-foreground mt-2",children:t})]})]})}const S="block w-full px-4 py-2.5 border border-input rounded-lg bg-background text-foreground shadow-[var(--cp-shadow-1)] focus:outline-none focus:ring-2 focus:ring-ring focus:border-ring transition-colors";function O({email:r,editEmail:s,isEditing:t,onChange:a}){return e.jsxs("div",{className:"sm:col-span-2",children:[e.jsx("label",{className:"block text-sm font-medium text-muted-foreground mb-2",children:"Email Address"}),t?e.jsx(F,{type:"email",value:s,onChange:n=>a("email",n.target.value),className:S}):e.jsxs("div",{className:"bg-card rounded-lg p-4 border border-border shadow-sm",children:[e.jsx("p",{className:"text-base text-foreground font-medium",children:r}),e.jsx("p",{className:"text-xs text-muted-foreground mt-2",children:"Email can be updated from the portal."})]})]})}function R({phonenumber:r,editPhoneNumber:s,isEditing:t,onChange:a}){return e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-muted-foreground mb-2",children:"Phone Number"}),t?e.jsx(F,{type:"tel",value:s,onChange:n=>a("phonenumber",n.target.value),placeholder:"+81 XX-XXXX-XXXX",className:S}):e.jsx("p",{className:"text-base text-foreground py-2",children:r||e.jsx("span",{className:"text-muted-foreground italic",children:"Not provided"})})]})}function P({data:r,editEmail:s,editPhoneNumber:t,isEditing:a,isSaving:n,onEdit:D,onCancel:I,onChange:p,onSave:k}){return e.jsxs("div",{className:"bg-card text-card-foreground rounded-xl border border-border shadow-[var(--cp-shadow-1)]",children:[e.jsx("div",{className:"px-6 py-5 border-b border-border",children:e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsxs("div",{className:"flex items-center space-x-3",children:[e.jsx(T,{className:"h-6 w-6 text-primary"}),e.jsx("h2",{className:"text-xl font-semibold text-foreground",children:"Personal Information"})]}),!a&&e.jsx(u,{variant:"outline",size:"sm",onClick:D,leftIcon:e.jsx(X,{className:"h-4 w-4"}),children:"Edit"})]})}),e.jsxs("div",{className:"p-6",children:[e.jsxs("div",{className:"grid grid-cols-1 gap-6 sm:grid-cols-2",children:[e.jsx(o,{label:"First Name",value:r.firstname,hint:"Name cannot be changed from the portal."}),e.jsx(o,{label:"Last Name",value:r.lastname,hint:"Name cannot be changed from the portal."}),e.jsx(O,{email:r.email,editEmail:s,isEditing:a,onChange:p}),e.jsx(o,{label:"Customer Number",value:r.sfNumber,hint:"Customer number is read-only."}),e.jsx(o,{label:"Date of Birth",value:r.dateOfBirth,hint:"Date of birth is stored in billing profile."}),e.jsx(R,{phonenumber:r.phonenumber,editPhoneNumber:t,isEditing:a,onChange:p}),e.jsx(o,{label:"Gender",value:r.gender,hint:"Gender is stored in billing profile."})]}),a&&e.jsxs("div",{className:"flex items-center justify-end space-x-3 pt-6 border-t border-border mt-6",children:[e.jsx(u,{variant:"outline",size:"sm",onClick:I,disabled:n,leftIcon:e.jsx(q,{className:"h-4 w-4"}),children:"Cancel"}),e.jsx(u,{size:"sm",onClick:k,isLoading:n,leftIcon:n?void 0:e.jsx(B,{className:"h-4 w-4"}),children:n?"Saving...":"Save Changes"})]})]})]})}P.__docgenInfo={description:"",methods:[],displayName:"PersonalInfoCard",props:{data:{required:!0,tsType:{name:"PersonalInfoData"},description:"User profile data including read-only fields"},editEmail:{required:!0,tsType:{name:"string"},description:"Email value for editing (may differ from data.email during edit)"},editPhoneNumber:{required:!0,tsType:{name:"string"},description:"Phone number value for editing (may differ from data.phonenumber during edit)"},isEditing:{required:!0,tsType:{name:"boolean"},description:""},isSaving:{required:!0,tsType:{name:"boolean"},description:""},onEdit:{required:!0,tsType:{name:"signature",type:"function",raw:"() => void",signature:{arguments:[],return:{name:"void"}}},description:""},onCancel:{required:!0,tsType:{name:"signature",type:"function",raw:"() => void",signature:{arguments:[],return:{name:"void"}}},description:""},onChange:{required:!0,tsType:{name:"signature",type:"function",raw:'(field: "email" | "phonenumber", value: string) => void',signature:{arguments:[{type:{name:"union",raw:'"email" | "phonenumber"',elements:[{name:"literal",value:'"email"'},{name:"literal",value:'"phonenumber"'}]},name:"field"},{type:{name:"string"},name:"value"}],return:{name:"void"}}},description:""},onSave:{required:!0,tsType:{name:"signature",type:"function",raw:"() => void",signature:{arguments:[],return:{name:"void"}}},description:""}}};const Z={title:"Features/Account/PersonalInfoCard",component:P,parameters:{layout:"padded"}},c={firstname:"Taro",lastname:"Yamada",email:"taro.yamada@example.com",phonenumber:"+81 90-1234-5678",sfNumber:"SF-001234",dateOfBirth:"1990-05-15",gender:"Male"},i={args:{data:c,editEmail:c.email,editPhoneNumber:c.phonenumber??"",isEditing:!1,isSaving:!1,onEdit:()=>{},onCancel:()=>{},onChange:()=>{},onSave:()=>{}}},d={args:{...i.args,isEditing:!0}},l={args:{...i.args,isEditing:!0,isSaving:!0}},m={args:{...i.args,data:{firstname:null,lastname:null,email:"user@example.com",phonenumber:null,sfNumber:null,dateOfBirth:null,gender:null},editEmail:"user@example.com",editPhoneNumber:""}};var f,g,x;i.parameters={...i.parameters,docs:{...(f=i.parameters)==null?void 0:f.docs,source:{originalSource:`{ + args: { + data: mockData, + editEmail: mockData.email, + editPhoneNumber: mockData.phonenumber ?? "", + isEditing: false, + isSaving: false, + onEdit: () => {}, + onCancel: () => {}, + onChange: () => {}, + onSave: () => {} + } +}`,...(x=(g=i.parameters)==null?void 0:g.docs)==null?void 0:x.source}}};var b,h,v;d.parameters={...d.parameters,docs:{...(b=d.parameters)==null?void 0:b.docs,source:{originalSource:`{ + args: { + ...Default.args, + isEditing: true + } +}`,...(v=(h=d.parameters)==null?void 0:h.docs)==null?void 0:v.source}}};var N,j,y;l.parameters={...l.parameters,docs:{...(N=l.parameters)==null?void 0:N.docs,source:{originalSource:`{ + args: { + ...Default.args, + isEditing: true, + isSaving: true + } +}`,...(y=(j=l.parameters)==null?void 0:j.docs)==null?void 0:y.source}}};var E,w,C;m.parameters={...m.parameters,docs:{...(E=m.parameters)==null?void 0:E.docs,source:{originalSource:`{ + args: { + ...Default.args, + data: { + firstname: null, + lastname: null, + email: "user@example.com", + phonenumber: null, + sfNumber: null, + dateOfBirth: null, + gender: null + }, + editEmail: "user@example.com", + editPhoneNumber: "" + } +}`,...(C=(w=m.parameters)==null?void 0:w.docs)==null?void 0:C.source}}};const ee=["Default","Editing","Saving","MissingFields"];export{i as Default,d as Editing,m as MissingFields,l as Saving,ee as __namedExportsOrder,Z as default}; diff --git a/apps/portal/public/storybook/assets/PersonalInfoFields-bPb0yCUu.js b/apps/portal/public/storybook/assets/PersonalInfoFields-bPb0yCUu.js new file mode 100644 index 00000000..e5ea8e99 --- /dev/null +++ b/apps/portal/public/storybook/assets/PersonalInfoFields-bPb0yCUu.js @@ -0,0 +1,5 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import"./button-C8_cybvS.js";import{I as l}from"./input-BbGJiz0K.js";import"./password-input-D4khGh8v.js";import"./checkbox-DahUyQbt.js";import{L as i}from"./label-C25VH7yk.js";import{E as s}from"./error-message-DeFFz6H_.js";import"./status-pill-wWp9xkwA.js";import"./badge-BdMsasyi.js";import"./spinner-mU4XywER.js";import"./loading-overlay-DMJTiFny.js";import"./error-state-BSicqqE6.js";import"./empty-state-DRUGJ9ip.js";import"./inline-toast-DQJ-O9wc.js";import"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import"./logo-f0fprTjz.js";import"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./animated-container-DyAZ9gmw.js";const g=["male","female","other"];function c({phone:d,dateOfBirth:m,gender:o,onPhoneChange:u,onDateOfBirthChange:p,onGenderChange:h,errors:r,clearError:a,loading:t}){return e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"space-y-2",children:[e.jsxs(i,{htmlFor:"phone",children:["Phone Number ",e.jsx("span",{className:"text-danger",children:"*"})]}),e.jsx(l,{id:"phone",type:"tel",value:d,onChange:n=>{u(n.target.value),a("phone")},placeholder:"090-1234-5678",disabled:t,error:r.phone}),e.jsx(s,{children:r.phone})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsxs(i,{htmlFor:"dateOfBirth",children:["Date of Birth ",e.jsx("span",{className:"text-danger",children:"*"})]}),e.jsx(l,{id:"dateOfBirth",type:"date",value:m,onChange:n=>{p(n.target.value),a("dateOfBirth")},disabled:t,error:r.dateOfBirth,max:new Date().toISOString().split("T")[0]}),e.jsx(s,{children:r.dateOfBirth})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsxs(i,{children:["Gender ",e.jsx("span",{className:"text-danger",children:"*"})]}),e.jsx("div",{className:"flex gap-4",children:g.map(n=>e.jsxs("label",{className:"flex items-center gap-2 cursor-pointer",children:[e.jsx("input",{type:"radio",name:"gender",value:n,checked:o===n,onChange:()=>{h(n),a("gender")},disabled:t,className:"h-4 w-4 text-primary focus:ring-primary"}),e.jsx("span",{className:"text-sm capitalize",children:n})]},n))}),e.jsx(s,{children:r.gender})]})]})}c.__docgenInfo={description:"",methods:[],displayName:"PersonalInfoFields",props:{phone:{required:!0,tsType:{name:"string"},description:""},dateOfBirth:{required:!0,tsType:{name:"string"},description:""},gender:{required:!0,tsType:{name:"union",raw:'"male" | "female" | "other" | ""',elements:[{name:"literal",value:'"male"'},{name:"literal",value:'"female"'},{name:"literal",value:'"other"'},{name:"literal",value:'""'}]},description:""},onPhoneChange:{required:!0,tsType:{name:"signature",type:"function",raw:"(value: string) => void",signature:{arguments:[{type:{name:"string"},name:"value"}],return:{name:"void"}}},description:""},onDateOfBirthChange:{required:!0,tsType:{name:"signature",type:"function",raw:"(value: string) => void",signature:{arguments:[{type:{name:"string"},name:"value"}],return:{name:"void"}}},description:""},onGenderChange:{required:!0,tsType:{name:"signature",type:"function",raw:'(value: "male" | "female" | "other") => void',signature:{arguments:[{type:{name:"union",raw:'"male" | "female" | "other"',elements:[{name:"literal",value:'"male"'},{name:"literal",value:'"female"'},{name:"literal",value:'"other"'}]},name:"value"}],return:{name:"void"}}},description:""},errors:{required:!0,tsType:{name:"signature",type:"object",raw:`{ + phone?: string | undefined; + dateOfBirth?: string | undefined; + gender?: string | undefined; +}`,signature:{properties:[{key:"phone",value:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}],required:!1}},{key:"dateOfBirth",value:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}],required:!1}},{key:"gender",value:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}],required:!1}}]}},description:""},clearError:{required:!0,tsType:{name:"signature",type:"function",raw:'(field: "phone" | "dateOfBirth" | "gender") => void',signature:{arguments:[{type:{name:"union",raw:'"phone" | "dateOfBirth" | "gender"',elements:[{name:"literal",value:'"phone"'},{name:"literal",value:'"dateOfBirth"'},{name:"literal",value:'"gender"'}]},name:"field"}],return:{name:"void"}}},description:""},loading:{required:!0,tsType:{name:"boolean"},description:""}}};export{c as P}; diff --git a/apps/portal/public/storybook/assets/PersonalInfoFields.stories-C6TPxiFP.js b/apps/portal/public/storybook/assets/PersonalInfoFields.stories-C6TPxiFP.js new file mode 100644 index 00000000..5587dfb6 --- /dev/null +++ b/apps/portal/public/storybook/assets/PersonalInfoFields.stories-C6TPxiFP.js @@ -0,0 +1,53 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import"./button-C8_cybvS.js";import{I as p}from"./input-BbGJiz0K.js";import"./password-input-D4khGh8v.js";import"./checkbox-DahUyQbt.js";import{L as m}from"./label-C25VH7yk.js";import"./error-message-DeFFz6H_.js";import"./status-pill-wWp9xkwA.js";import"./badge-BdMsasyi.js";import"./spinner-mU4XywER.js";import"./loading-overlay-DMJTiFny.js";import"./error-state-BSicqqE6.js";import"./empty-state-DRUGJ9ip.js";import"./inline-toast-DQJ-O9wc.js";import"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import"./logo-f0fprTjz.js";import"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./animated-container-DyAZ9gmw.js";import"./index-JhL3uwfD.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./createLucideIcon-CctB0W3q.js";import"./ExclamationCircleIcon-jFfW0Ax_.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./ArrowPathIcon-CZjG6RfV.js";import"./PlusIcon-DGufmf06.js";import"./index-CNXKWNLp.js";import"./proxy-ZkTvaR74.js";import"./next-image-69WeRggt.js";import"./Squares2X2Icon-BMQM_Wy1.js";const b=["male","female","other"];function P({phone:i,dateOfBirth:N,gender:D,onPhoneChange:E,onDateOfBirthChange:F,onGenderChange:G,errors:n,clearError:d,loading:l}){return e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"space-y-2",children:[e.jsxs(m,{htmlFor:"phone",children:["Phone Number ",e.jsx("span",{className:"text-danger",children:"*"})]}),e.jsx(p,{id:"phone",type:"tel",value:i,onChange:r=>{E(r.target.value),d("phone")},placeholder:"090-1234-5678",disabled:l,error:n.phone}),n.phone&&e.jsx("p",{className:"text-sm text-danger",children:n.phone})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsxs(m,{htmlFor:"dateOfBirth",children:["Date of Birth ",e.jsx("span",{className:"text-danger",children:"*"})]}),e.jsx(p,{id:"dateOfBirth",type:"date",value:N,onChange:r=>{F(r.target.value),d("dateOfBirth")},disabled:l,error:n.dateOfBirth,max:new Date().toISOString().split("T")[0]}),n.dateOfBirth&&e.jsx("p",{className:"text-sm text-danger",children:n.dateOfBirth})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsxs(m,{children:["Gender ",e.jsx("span",{className:"text-danger",children:"*"})]}),e.jsx("div",{className:"flex gap-4",children:b.map(r=>e.jsxs("label",{className:"flex items-center gap-2 cursor-pointer",children:[e.jsx("input",{type:"radio",name:"gender",value:r,checked:D===r,onChange:()=>{G(r),d("gender")},disabled:l,className:"h-4 w-4 text-primary focus:ring-primary"}),e.jsx("span",{className:"text-sm capitalize",children:r})]},r))}),n.gender&&e.jsx("p",{className:"text-sm text-danger",children:n.gender})]})]})}P.__docgenInfo={description:"",methods:[],displayName:"PersonalInfoFields",props:{phone:{required:!0,tsType:{name:"string"},description:""},dateOfBirth:{required:!0,tsType:{name:"string"},description:""},gender:{required:!0,tsType:{name:"union",raw:'"male" | "female" | "other" | ""',elements:[{name:"literal",value:'"male"'},{name:"literal",value:'"female"'},{name:"literal",value:'"other"'},{name:"literal",value:'""'}]},description:""},onPhoneChange:{required:!0,tsType:{name:"signature",type:"function",raw:"(value: string) => void",signature:{arguments:[{type:{name:"string"},name:"value"}],return:{name:"void"}}},description:""},onDateOfBirthChange:{required:!0,tsType:{name:"signature",type:"function",raw:"(value: string) => void",signature:{arguments:[{type:{name:"string"},name:"value"}],return:{name:"void"}}},description:""},onGenderChange:{required:!0,tsType:{name:"signature",type:"function",raw:'(value: "male" | "female" | "other") => void',signature:{arguments:[{type:{name:"union",raw:'"male" | "female" | "other"',elements:[{name:"literal",value:'"male"'},{name:"literal",value:'"female"'},{name:"literal",value:'"other"'}]},name:"value"}],return:{name:"void"}}},description:""},errors:{required:!0,tsType:{name:"AccountFormErrors"},description:""},clearError:{required:!0,tsType:{name:"signature",type:"function",raw:"(field: keyof AccountFormErrors) => void",signature:{arguments:[{type:{name:"AccountFormErrors"},name:"field"}],return:{name:"void"}}},description:""},loading:{required:!0,tsType:{name:"boolean"},description:""}}};const ge={title:"Features/GetStarted/CompleteAccount/PersonalInfoFields",component:P,parameters:{layout:"centered"},decorators:[i=>e.jsx("div",{style:{maxWidth:480,width:"100%"},children:e.jsx(i,{})})]},a={args:{phone:"",dateOfBirth:"",gender:"",onPhoneChange:()=>{},onDateOfBirthChange:()=>{},onGenderChange:()=>{},errors:{},clearError:()=>{},loading:!1}},t={args:{phone:"090-1234-5678",dateOfBirth:"1990-05-15",gender:"male",onPhoneChange:()=>{},onDateOfBirthChange:()=>{},onGenderChange:()=>{},errors:{},clearError:()=>{},loading:!1}},o={args:{phone:"123",dateOfBirth:"",gender:"",onPhoneChange:()=>{},onDateOfBirthChange:()=>{},onGenderChange:()=>{},errors:{phone:"Please enter a valid phone number",dateOfBirth:"Date of birth is required",gender:"Please select a gender"},clearError:()=>{},loading:!1}},s={args:{phone:"090-1234-5678",dateOfBirth:"1990-05-15",gender:"female",onPhoneChange:()=>{},onDateOfBirthChange:()=>{},onGenderChange:()=>{},errors:{},clearError:()=>{},loading:!0}};var h,c,g;a.parameters={...a.parameters,docs:{...(h=a.parameters)==null?void 0:h.docs,source:{originalSource:`{ + args: { + phone: "", + dateOfBirth: "", + gender: "", + onPhoneChange: () => {}, + onDateOfBirthChange: () => {}, + onGenderChange: () => {}, + errors: {}, + clearError: () => {}, + loading: false + } +}`,...(g=(c=a.parameters)==null?void 0:c.docs)==null?void 0:g.source}}};var u,f,x;t.parameters={...t.parameters,docs:{...(u=t.parameters)==null?void 0:u.docs,source:{originalSource:`{ + args: { + phone: "090-1234-5678", + dateOfBirth: "1990-05-15", + gender: "male", + onPhoneChange: () => {}, + onDateOfBirthChange: () => {}, + onGenderChange: () => {}, + errors: {}, + clearError: () => {}, + loading: false + } +}`,...(x=(f=t.parameters)==null?void 0:f.docs)==null?void 0:x.source}}};var v,C,O;o.parameters={...o.parameters,docs:{...(v=o.parameters)==null?void 0:v.docs,source:{originalSource:`{ + args: { + phone: "123", + dateOfBirth: "", + gender: "", + onPhoneChange: () => {}, + onDateOfBirthChange: () => {}, + onGenderChange: () => {}, + errors: { + phone: "Please enter a valid phone number", + dateOfBirth: "Date of birth is required", + gender: "Please select a gender" + }, + clearError: () => {}, + loading: false + } +}`,...(O=(C=o.parameters)==null?void 0:C.docs)==null?void 0:O.source}}};var y,B,j;s.parameters={...s.parameters,docs:{...(y=s.parameters)==null?void 0:y.docs,source:{originalSource:`{ + args: { + phone: "090-1234-5678", + dateOfBirth: "1990-05-15", + gender: "female", + onPhoneChange: () => {}, + onDateOfBirthChange: () => {}, + onGenderChange: () => {}, + errors: {}, + clearError: () => {}, + loading: true + } +}`,...(j=(B=s.parameters)==null?void 0:B.docs)==null?void 0:j.source}}};const ue=["Default","Filled","WithErrors","Loading"];export{a as Default,t as Filled,s as Loading,o as WithErrors,ue as __namedExportsOrder,ge as default}; diff --git a/apps/portal/public/storybook/assets/PersonalInfoFields.stories-J4TMhu6x.js b/apps/portal/public/storybook/assets/PersonalInfoFields.stories-J4TMhu6x.js new file mode 100644 index 00000000..973ab173 --- /dev/null +++ b/apps/portal/public/storybook/assets/PersonalInfoFields.stories-J4TMhu6x.js @@ -0,0 +1,53 @@ +import{P as u}from"./PersonalInfoFields-bPb0yCUu.js";import"./jsx-runtime-D_zvdyIk.js";import"./button-C8_cybvS.js";import"./index-JhL3uwfD.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./spinner-mU4XywER.js";import"./input-BbGJiz0K.js";import"./password-input-D4khGh8v.js";import"./createLucideIcon-CctB0W3q.js";import"./checkbox-DahUyQbt.js";import"./label-C25VH7yk.js";import"./error-message-DeFFz6H_.js";import"./ExclamationCircleIcon-jFfW0Ax_.js";import"./status-pill-wWp9xkwA.js";import"./badge-BdMsasyi.js";import"./loading-overlay-DMJTiFny.js";import"./error-state-BSicqqE6.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./ArrowPathIcon-CZjG6RfV.js";import"./empty-state-DRUGJ9ip.js";import"./PlusIcon-DGufmf06.js";import"./inline-toast-DQJ-O9wc.js";import"./index-CNXKWNLp.js";import"./proxy-ZkTvaR74.js";import"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import"./logo-f0fprTjz.js";import"./next-image-69WeRggt.js";import"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./Squares2X2Icon-BMQM_Wy1.js";import"./animated-container-DyAZ9gmw.js";const re={title:"Features/Services/EligibilityCheck/PersonalInfoFields",component:u,parameters:{layout:"centered"}},e={args:{phone:"",dateOfBirth:"",gender:"",onPhoneChange:()=>{},onDateOfBirthChange:()=>{},onGenderChange:()=>{},errors:{},clearError:()=>{},loading:!1}},r={args:{phone:"090-1234-5678",dateOfBirth:"1990-01-15",gender:"male",onPhoneChange:()=>{},onDateOfBirthChange:()=>{},onGenderChange:()=>{},errors:{},clearError:()=>{},loading:!1}},n={args:{phone:"",dateOfBirth:"",gender:"",onPhoneChange:()=>{},onDateOfBirthChange:()=>{},onGenderChange:()=>{},errors:{phone:"Phone number is required",dateOfBirth:"Date of birth is required",gender:"Please select a gender"},clearError:()=>{},loading:!1}},o={args:{phone:"090-1234-5678",dateOfBirth:"1990-01-15",gender:"female",onPhoneChange:()=>{},onDateOfBirthChange:()=>{},onGenderChange:()=>{},errors:{},clearError:()=>{},loading:!0}};var a,t,i;e.parameters={...e.parameters,docs:{...(a=e.parameters)==null?void 0:a.docs,source:{originalSource:`{ + args: { + phone: "", + dateOfBirth: "", + gender: "", + onPhoneChange: () => {}, + onDateOfBirthChange: () => {}, + onGenderChange: () => {}, + errors: {}, + clearError: () => {}, + loading: false + } +}`,...(i=(t=e.parameters)==null?void 0:t.docs)==null?void 0:i.source}}};var s,p,h;r.parameters={...r.parameters,docs:{...(s=r.parameters)==null?void 0:s.docs,source:{originalSource:`{ + args: { + phone: "090-1234-5678", + dateOfBirth: "1990-01-15", + gender: "male", + onPhoneChange: () => {}, + onDateOfBirthChange: () => {}, + onGenderChange: () => {}, + errors: {}, + clearError: () => {}, + loading: false + } +}`,...(h=(p=r.parameters)==null?void 0:p.docs)==null?void 0:h.source}}};var m,d,g;n.parameters={...n.parameters,docs:{...(m=n.parameters)==null?void 0:m.docs,source:{originalSource:`{ + args: { + phone: "", + dateOfBirth: "", + gender: "", + onPhoneChange: () => {}, + onDateOfBirthChange: () => {}, + onGenderChange: () => {}, + errors: { + phone: "Phone number is required", + dateOfBirth: "Date of birth is required", + gender: "Please select a gender" + }, + clearError: () => {}, + loading: false + } +}`,...(g=(d=n.parameters)==null?void 0:d.docs)==null?void 0:g.source}}};var l,c,f;o.parameters={...o.parameters,docs:{...(l=o.parameters)==null?void 0:l.docs,source:{originalSource:`{ + args: { + phone: "090-1234-5678", + dateOfBirth: "1990-01-15", + gender: "female", + onPhoneChange: () => {}, + onDateOfBirthChange: () => {}, + onGenderChange: () => {}, + errors: {}, + clearError: () => {}, + loading: true + } +}`,...(f=(c=o.parameters)==null?void 0:c.docs)==null?void 0:f.source}}};const ne=["Default","Filled","WithErrors","Loading"];export{e as Default,r as Filled,o as Loading,n as WithErrors,ne as __namedExportsOrder,re as default}; diff --git a/apps/portal/public/storybook/assets/PlanCard-C4v7V-Z7.js b/apps/portal/public/storybook/assets/PlanCard-C4v7V-Z7.js new file mode 100644 index 00000000..330d3762 --- /dev/null +++ b/apps/portal/public/storybook/assets/PlanCard-C4v7V-Z7.js @@ -0,0 +1 @@ +import{j as t}from"./jsx-runtime-D_zvdyIk.js";import"./DataTable-COYdcx41.js";import"./FormField-C0UylACv.js";import"./OtpInput-6kd_2E0v.js";import"./OtpExpiryDisplay-BGgB7Tk6.js";import"./SearchFilterBar-Ds19v0-P.js";import"./PaginationBar-D_k7ztRb.js";import"./DetailHeader-C0ZsoM39.js";import"./AlertBanner-Bnlyj1xc.js";import"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import"./error-state-BSicqqE6.js";import"./index-BKyvj4H5.js";import"./SectionHeader-Bo81Whai.js";import"./ProgressSteps-weVdXcqu.js";import"./SubCard-1OZIPgEM.js";import{A as r}from"./AnimatedCard-DFAiX4zP.js";import"./ServiceCard-BJEHFLba.js";import"./SummaryStats-D6b7Am-p.js";import"./FilterDropdown-CUU04WmN.js";import"./ClearFiltersButton-CPCoyXk2.js";import"./DetailStatsGrid-CDkKTM-B.js";import"./SectionCard-BcUjc-7N.js";import"./MetricCard-BR1xVIXz.js";import"./BackLink-C5IY6wzy.js";import"./status-badge-5pzxe45J.js";import"./error-boundary-DIRO_cDI.js";import"./error-fallbacks-kSPsNxmV.js";import{F as s}from"./DevicePhoneMobileIcon-SMwjWf6M.js";import{F as m}from"./UsersIcon-DB1YN4Bz.js";function o(e){return e==="DataSmsVoice"?"Data + SMS + Voice":e==="DataOnly"?"Data Only":"Voice + SMS Only"}function a({plan:e}){const i=e.monthlyPrice??e.unitPrice??e.oneTimePrice??0;return t.jsx(r,{variant:"static",className:"p-6",children:t.jsxs("div",{className:"flex justify-between items-start",children:[t.jsxs("div",{children:[t.jsxs("div",{className:"flex items-center gap-2 mb-2",children:[t.jsx(s,{className:"h-5 w-5 text-primary"}),t.jsx("h3",{className:"font-bold text-lg text-foreground",children:e.name}),e.simHasFamilyDiscount&&t.jsxs("span",{className:"bg-success-soft text-success text-xs px-2 py-1 rounded-full font-medium flex items-center gap-1",children:[t.jsx(m,{className:"h-3 w-3"}),"Family Discount"]})]}),t.jsxs("div",{className:"flex items-center gap-4 text-sm text-muted-foreground mb-2",children:[t.jsxs("span",{children:[t.jsx("strong",{children:"Data:"})," ",e.simDataSize]}),t.jsxs("span",{children:[t.jsx("strong",{children:"Type:"})," ",o(e.simPlanType??"")]})]})]}),t.jsxs("div",{className:"text-right",children:[t.jsxs("div",{className:"text-2xl font-bold text-primary",children:["¥",i.toLocaleString(),"/mo"]}),e.simHasFamilyDiscount&&t.jsx("div",{className:"text-sm text-success font-medium",children:"Discounted Price"})]})]})})}a.__docgenInfo={description:"",methods:[],displayName:"PlanCard",props:{plan:{required:!0,tsType:{name:"z.infer",elements:[{name:"simCatalogProductSchema"}],raw:"z.infer"},description:""}}};export{a as P}; diff --git a/apps/portal/public/storybook/assets/PlanCard.stories-BU5JLd60.js b/apps/portal/public/storybook/assets/PlanCard.stories-BU5JLd60.js new file mode 100644 index 00000000..777cda4c --- /dev/null +++ b/apps/portal/public/storybook/assets/PlanCard.stories-BU5JLd60.js @@ -0,0 +1,23 @@ +import{P as y}from"./PlanCard-C4v7V-Z7.js";import"./jsx-runtime-D_zvdyIk.js";import"./DataTable-COYdcx41.js";import"./empty-state-DRUGJ9ip.js";import"./button-C8_cybvS.js";import"./index-JhL3uwfD.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./spinner-mU4XywER.js";import"./PlusIcon-DGufmf06.js";import"./ChevronRightIcon-CMQWsJeW.js";import"./FormField-C0UylACv.js";import"./label-C25VH7yk.js";import"./input-BbGJiz0K.js";import"./error-message-DeFFz6H_.js";import"./ExclamationCircleIcon-jFfW0Ax_.js";import"./OtpInput-6kd_2E0v.js";import"./input-otp-Cin9-T84.js";import"./createLucideIcon-CctB0W3q.js";import"./OtpExpiryDisplay-BGgB7Tk6.js";import"./clock-C92s7kSC.js";import"./SearchFilterBar-Ds19v0-P.js";import"./FunnelIcon-8nhbwqu0.js";import"./XMarkIcon-Bsb1W5VN.js";import"./PaginationBar-D_k7ztRb.js";import"./DetailHeader-C0ZsoM39.js";import"./status-pill-wWp9xkwA.js";import"./AlertBanner-Bnlyj1xc.js";import"./XCircleIcon-CiVBnngB.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./InformationCircleIcon-Clz7d-56.js";import"./CheckCircleIcon-Dva35lTP.js";import"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import"./password-input-D4khGh8v.js";import"./checkbox-DahUyQbt.js";import"./badge-BdMsasyi.js";import"./loading-overlay-DMJTiFny.js";import"./error-state-BSicqqE6.js";import"./ArrowPathIcon-CZjG6RfV.js";import"./inline-toast-DQJ-O9wc.js";import"./index-CNXKWNLp.js";import"./proxy-ZkTvaR74.js";import"./logo-f0fprTjz.js";import"./next-image-69WeRggt.js";import"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./Squares2X2Icon-BMQM_Wy1.js";import"./animated-container-DyAZ9gmw.js";import"./SectionHeader-Bo81Whai.js";import"./ProgressSteps-weVdXcqu.js";import"./SubCard-1OZIPgEM.js";import"./AnimatedCard-DFAiX4zP.js";import"./ServiceCard-BJEHFLba.js";import"./arrow-right-BNMAry-H.js";import"./SummaryStats-D6b7Am-p.js";import"./FilterDropdown-CUU04WmN.js";import"./ClearFiltersButton-CPCoyXk2.js";import"./DetailStatsGrid-CDkKTM-B.js";import"./SectionCard-BcUjc-7N.js";import"./MetricCard-BR1xVIXz.js";import"./BackLink-C5IY6wzy.js";import"./ArrowLeftIcon-Cw1eswTb.js";import"./status-badge-5pzxe45J.js";import"./error-boundary-DIRO_cDI.js";import"./error-fallbacks-kSPsNxmV.js";import"./DevicePhoneMobileIcon-SMwjWf6M.js";import"./UsersIcon-DB1YN4Bz.js";const Ir={title:"Features/Services/SIM/Configure/PlanCard",component:y,parameters:{layout:"centered"}},i={id:"1",sku:"SIM-DV-3GB",name:"Data + Voice 3GB Plan",monthlyPrice:1100,unitPrice:1100,oneTimePrice:0,simDataSize:"3GB",simPlanType:"DataSmsVoice",simHasFamilyDiscount:!1,billingCycle:"Monthly",catalogMetadata:{}},r={args:{plan:i}},t={args:{plan:{...i,simHasFamilyDiscount:!0,monthlyPrice:800}}},o={args:{plan:{...i,simPlanType:"DataOnly",name:"Data Only 10GB",simDataSize:"10GB",monthlyPrice:2200}}};var m,a,p;r.parameters={...r.parameters,docs:{...(m=r.parameters)==null?void 0:m.docs,source:{originalSource:`{ + args: { + plan: mockPlan + } +}`,...(p=(a=r.parameters)==null?void 0:a.docs)==null?void 0:p.source}}};var e,n,s;t.parameters={...t.parameters,docs:{...(e=t.parameters)==null?void 0:e.docs,source:{originalSource:`{ + args: { + plan: { + ...mockPlan, + simHasFamilyDiscount: true, + monthlyPrice: 800 + } + } +}`,...(s=(n=t.parameters)==null?void 0:n.docs)==null?void 0:s.source}}};var c,l,u;o.parameters={...o.parameters,docs:{...(c=o.parameters)==null?void 0:c.docs,source:{originalSource:`{ + args: { + plan: { + ...mockPlan, + simPlanType: "DataOnly" as const, + name: "Data Only 10GB", + simDataSize: "10GB", + monthlyPrice: 2200 + } + } +}`,...(u=(l=o.parameters)==null?void 0:l.docs)==null?void 0:u.source}}};const _r=["Default","FamilyDiscount","DataOnly"];export{o as DataOnly,r as Default,t as FamilyDiscount,_r as __namedExportsOrder,Ir as default}; diff --git a/apps/portal/public/storybook/assets/PlanComparisonGuide.stories-B4fWF-h8.js b/apps/portal/public/storybook/assets/PlanComparisonGuide.stories-B4fWF-h8.js new file mode 100644 index 00000000..5bc95932 --- /dev/null +++ b/apps/portal/public/storybook/assets/PlanComparisonGuide.stories-B4fWF-h8.js @@ -0,0 +1,6 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{r as f}from"./index-JhL3uwfD.js";import{c as i}from"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import{C as h}from"./circle-question-mark-CauZ9VmE.js";import{C as g}from"./chevron-up-xeH5nNuh.js";import{C as b}from"./chevron-down-CuGyZVZ6.js";import{W as j}from"./wrench-BgTvXjQb.js";import{S as w}from"./sparkles-q054t7ye.js";import{c as N}from"./createLucideIcon-CctB0W3q.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";/** + * @license lucide-react v0.563.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const y=[["rect",{x:"16",y:"16",width:"6",height:"6",rx:"1",key:"4q2zg0"}],["rect",{x:"2",y:"16",width:"6",height:"6",rx:"1",key:"8cvhb9"}],["rect",{x:"9",y:"2",width:"6",height:"6",rx:"1",key:"1egb70"}],["path",{d:"M5 16v-3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v3",key:"1jsf9p"}],["path",{d:"M12 12V8",key:"2874zd"}]],v=N("network",y),k={Silver:{bg:"bg-muted/30",border:"border-muted-foreground/20",icon:"bg-muted text-muted-foreground border-muted-foreground/20",title:"text-muted-foreground"},Gold:{bg:"bg-warning-soft/30",border:"border-warning/30",icon:"bg-warning-soft text-warning border-warning/30",title:"text-warning"},Platinum:{bg:"bg-info-soft/30",border:"border-primary/30",icon:"bg-info-soft text-primary border-primary/30",title:"text-primary"}};function n({tier:r,icon:o,title:u,idealFor:x,description:p,highlight:a}){const s=k[r];return e.jsx("div",{className:i("rounded-xl border p-4 transition-all duration-200",s.bg,s.border,a&&"ring-2 ring-warning/30"),children:e.jsxs("div",{className:"flex items-start gap-3",children:[e.jsx("div",{className:i("flex h-10 w-10 items-center justify-center rounded-lg border flex-shrink-0",s.icon),children:o}),e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsxs("div",{className:"flex flex-wrap items-center gap-2 mb-1",children:[e.jsx("h4",{className:i("font-bold",s.title),children:u}),a&&e.jsx("span",{className:"text-xs bg-success-bg text-success px-2 py-0.5 rounded-full border border-success-border",children:"Most Popular"})]}),e.jsx("p",{className:"text-sm font-medium text-foreground mb-1",children:x}),e.jsx("p",{className:"text-sm text-muted-foreground leading-relaxed",children:p})]})]})})}function m(){const[r,o]=f.useState(!1);return e.jsxs("section",{className:"bg-card rounded-xl border border-border shadow-[var(--cp-shadow-1)] overflow-hidden",children:[e.jsxs("button",{type:"button",onClick:()=>o(!r),className:"w-full px-4 py-3.5 flex items-center justify-between gap-3 text-left hover:bg-muted/30 transition-colors",children:[e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx("div",{className:"flex h-8 w-8 items-center justify-center rounded-lg bg-info-soft/50 text-info border border-info/20 flex-shrink-0",children:e.jsx(h,{className:"h-4 w-4"})}),e.jsxs("div",{children:[e.jsx("h3",{className:"text-sm font-bold text-foreground",children:"Which tier is right for you?"}),e.jsx("p",{className:"text-xs text-muted-foreground",children:"Same speeds across all tiers—difference is equipment & support"})]})]}),e.jsxs("div",{className:"flex items-center gap-1.5 flex-shrink-0",children:[e.jsx("span",{className:"text-xs text-muted-foreground hidden sm:inline",children:r?"Hide":"Compare tiers"}),r?e.jsx(g,{className:"h-4 w-4 text-muted-foreground"}):e.jsx(b,{className:"h-4 w-4 text-muted-foreground"})]})]}),r&&e.jsxs("div",{className:"px-4 pb-4 border-t border-border pt-4",children:[e.jsxs("div",{className:"space-y-3",children:[e.jsx(n,{tier:"Silver",icon:e.jsx(j,{className:"h-5 w-5"}),title:"Silver",idealFor:"Tech-savvy users with their own router",description:"You get the NTT modem and ISP connection. Bring your own WiFi router and configure the network yourself."}),e.jsx(n,{tier:"Gold",icon:e.jsx(w,{className:"h-5 w-5"}),title:"Gold",idealFor:"Most customers—hassle-free setup",description:"We provide everything: NTT modem, WiFi router, and pre-configured ISP. Just plug in and connect. Optional range extender available.",highlight:!0}),e.jsx(n,{tier:"Platinum",icon:e.jsx(v,{className:"h-5 w-5"}),title:"Platinum",idealFor:"Larger homes needing custom coverage",description:"For residences where one router isn't enough. We design a custom mesh network with Netgear INSIGHT routers, cloud management, and professional setup."})]}),e.jsx("div",{className:"mt-4 p-3 bg-info-soft/30 border border-primary/20 rounded-lg",children:e.jsxs("p",{className:"text-sm text-muted-foreground",children:[e.jsx("span",{className:"font-semibold text-primary",children:"About Platinum:"})," After verifying your address, we'll assess your space and create a tailored proposal. Final pricing depends on your specific setup requirements."]})})]})]})}m.__docgenInfo={description:"",methods:[],displayName:"PlanComparisonGuide"};const D={title:"Features/Services/Internet/PlanComparisonGuide",component:m,parameters:{layout:"centered"}},t={};var d,c,l;t.parameters={...t.parameters,docs:{...(d=t.parameters)==null?void 0:d.docs,source:{originalSource:"{}",...(l=(c=t.parameters)==null?void 0:c.docs)==null?void 0:l.source}}};const z=["Default"];export{t as Default,z as __namedExportsOrder,D as default}; diff --git a/apps/portal/public/storybook/assets/PlanHeader.stories-Bwxdrl89.js b/apps/portal/public/storybook/assets/PlanHeader.stories-Bwxdrl89.js new file mode 100644 index 00000000..239aad7a --- /dev/null +++ b/apps/portal/public/storybook/assets/PlanHeader.stories-Bwxdrl89.js @@ -0,0 +1,30 @@ +import{j as r}from"./jsx-runtime-D_zvdyIk.js";import{B as N}from"./button-C8_cybvS.js";import{C as m}from"./CardBadge-CfIpSSwP.js";import{p as j}from"./planName-hiGpUxZ-.js";import{F as B}from"./ArrowLeftIcon-Cw1eswTb.js";import"./index-JhL3uwfD.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./spinner-mU4XywER.js";function v({plan:e,backHref:l,backLabel:k="Back to Internet Plans",title:I="Configure your plan",className:S=""}){const{baseName:H,detail:n}=j(e);return r.jsxs("div",{className:`text-center mb-8 animate-in fade-in duration-300 ${S}`,children:[l&&r.jsx(N,{as:"a",href:l,variant:"ghost",size:"sm",leftIcon:r.jsx(B,{className:"w-4 h-4"}),className:"mb-6 text-muted-foreground hover:text-foreground",children:k}),r.jsx("h1",{className:"text-2xl md:text-3xl font-bold text-foreground mb-5",children:I}),r.jsxs("span",{className:"sr-only",children:[H,n?` (${n})`:""]}),r.jsxs("div",{className:"inline-flex flex-wrap items-center justify-center gap-3 bg-card px-6 py-3 rounded-full border border-border shadow-sm text-sm",children:[e.internetPlanTier?r.jsx(m,{text:e.internetPlanTier,variant:G(e.internetPlanTier),size:"sm"}):null,n?r.jsx(m,{text:n,variant:"family",size:"sm"}):null,e.monthlyPrice&&e.monthlyPrice>0?r.jsxs("span",{className:"inline-flex items-center rounded-full bg-primary/10 px-3 py-1 text-sm font-semibold text-primary",children:["¥",e.monthlyPrice.toLocaleString(),"/month"]}):null]})]})}function G(e){switch(e){case"Gold":return"gold";case"Platinum":return"platinum";case"Silver":return"silver";case"Recommended":return"recommended";default:return"default"}}v.__docgenInfo={description:"",methods:[],displayName:"PlanHeader",props:{plan:{required:!0,tsType:{name:"z.infer",elements:[{name:"internetPlanCatalogItemSchema"}],raw:"z.infer"},description:""},backHref:{required:!1,tsType:{name:"string"},description:""},backLabel:{required:!1,tsType:{name:"string"},description:"",defaultValue:{value:'"Back to Internet Plans"',computed:!1}},title:{required:!1,tsType:{name:"string"},description:"",defaultValue:{value:'"Configure your plan"',computed:!1}},className:{required:!1,tsType:{name:"string"},description:"",defaultValue:{value:'""',computed:!1}}}};const o={id:"plan-001",sku:"INT-GOLD-1G-HOME",name:"Internet Gold 1Gbps Home",description:"High-speed fiber internet for homes",monthlyPrice:6800,oneTimePrice:0,internetPlanTier:"Gold",internetOfferingType:"Home 1G",catalogMetadata:{tierDescription:"Hassle-free setup with router included",features:["NTT Fiber","WiFi Router included","ISP pre-configured"],isRecommended:!0}},M={title:"Features/Services/Internet/PlanHeader",component:v,parameters:{layout:"centered"}},t={args:{plan:o}},a={args:{plan:o,backHref:"/services/internet",backLabel:"Back to Internet Plans",title:"Configure your plan"}},s={args:{plan:{...o,name:"Internet Silver 1Gbps Home",internetPlanTier:"Silver",monthlyPrice:4800}}},i={args:{plan:{...o,name:"Internet Platinum 1Gbps Home",internetPlanTier:"Platinum",monthlyPrice:9800}}};var c,d,p;t.parameters={...t.parameters,docs:{...(c=t.parameters)==null?void 0:c.docs,source:{originalSource:`{ + args: { + plan: mockPlan + } +}`,...(p=(d=t.parameters)==null?void 0:d.docs)==null?void 0:p.source}}};var u,f,P;a.parameters={...a.parameters,docs:{...(u=a.parameters)==null?void 0:u.docs,source:{originalSource:`{ + args: { + plan: mockPlan, + backHref: "/services/internet", + backLabel: "Back to Internet Plans", + title: "Configure your plan" + } +}`,...(P=(f=a.parameters)==null?void 0:f.docs)==null?void 0:P.source}}};var g,x,h;s.parameters={...s.parameters,docs:{...(g=s.parameters)==null?void 0:g.docs,source:{originalSource:`{ + args: { + plan: { + ...mockPlan, + name: "Internet Silver 1Gbps Home", + internetPlanTier: "Silver", + monthlyPrice: 4800 + } + } +}`,...(h=(x=s.parameters)==null?void 0:x.docs)==null?void 0:h.source}}};var y,b,T;i.parameters={...i.parameters,docs:{...(y=i.parameters)==null?void 0:y.docs,source:{originalSource:`{ + args: { + plan: { + ...mockPlan, + name: "Internet Platinum 1Gbps Home", + internetPlanTier: "Platinum", + monthlyPrice: 9800 + } + } +}`,...(T=(b=i.parameters)==null?void 0:b.docs)==null?void 0:T.source}}};const $=["Default","WithBackLink","SilverTier","PlatinumTier"];export{t as Default,i as PlatinumTier,s as SilverTier,a as WithBackLink,$ as __namedExportsOrder,M as default}; diff --git a/apps/portal/public/storybook/assets/PlanNotFound-C-GLleMO.js b/apps/portal/public/storybook/assets/PlanNotFound-C-GLleMO.js new file mode 100644 index 00000000..c17ebbd9 --- /dev/null +++ b/apps/portal/public/storybook/assets/PlanNotFound-C-GLleMO.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{P as s}from"./PageLayout-CxVUl3Jy.js";import{u as a}from"./useServicesBasePath-Cd3sXgEE.js";import{F as t}from"./ExclamationTriangleIcon-Di4DJZFg.js";function r(){const o=a();return e.jsx(s,{title:"Plan Not Found",icon:e.jsx(t,{className:"h-6 w-6"}),children:e.jsxs("div",{className:"text-center py-12",children:[e.jsx(t,{className:"h-12 w-12 mx-auto text-danger mb-4"}),e.jsx("h2",{className:"text-xl font-semibold text-foreground mb-2",children:"Plan Not Found"}),e.jsx("p",{className:"text-muted-foreground mb-4",children:"The selected plan could not be found"}),e.jsx("a",{href:`${o}/sim`,className:"text-primary hover:text-primary-hover font-medium",children:"← Return to SIM Plans"})]})})}r.__docgenInfo={description:"",methods:[],displayName:"PlanNotFound"};export{r as P}; diff --git a/apps/portal/public/storybook/assets/PlanNotFound.stories-B9Ze1Ljr.js b/apps/portal/public/storybook/assets/PlanNotFound.stories-B9Ze1Ljr.js new file mode 100644 index 00000000..b69495e0 --- /dev/null +++ b/apps/portal/public/storybook/assets/PlanNotFound.stories-B9Ze1Ljr.js @@ -0,0 +1 @@ +import{P as p}from"./PlanNotFound-C-GLleMO.js";import"./jsx-runtime-D_zvdyIk.js";import"./PageLayout-CxVUl3Jy.js";import"./next-link-BmD4fPSy.js";import"./index-JhL3uwfD.js";import"./skeleton-ISCbfaf8.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./loading-card-BIOTKPal.js";import"./button-C8_cybvS.js";import"./index-DXhM58Yq.js";import"./spinner-mU4XywER.js";import"./input-BbGJiz0K.js";import"./password-input-D4khGh8v.js";import"./createLucideIcon-CctB0W3q.js";import"./checkbox-DahUyQbt.js";import"./label-C25VH7yk.js";import"./error-message-DeFFz6H_.js";import"./ExclamationCircleIcon-jFfW0Ax_.js";import"./status-pill-wWp9xkwA.js";import"./badge-BdMsasyi.js";import"./loading-overlay-DMJTiFny.js";import"./error-state-BSicqqE6.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./ArrowPathIcon-CZjG6RfV.js";import"./empty-state-DRUGJ9ip.js";import"./PlusIcon-DGufmf06.js";import"./inline-toast-DQJ-O9wc.js";import"./index-CNXKWNLp.js";import"./proxy-ZkTvaR74.js";import"./logo-f0fprTjz.js";import"./next-image-69WeRggt.js";import"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./Squares2X2Icon-BMQM_Wy1.js";import"./animated-container-DyAZ9gmw.js";import"./ArrowLeftIcon-Cw1eswTb.js";import"./useServicesBasePath-Cd3sXgEE.js";import"./next-navigation-FtRxULo3.js";const U={title:"Features/Services/SIM/Configure/PlanNotFound",component:p,parameters:{layout:"fullscreen"}},r={};var o,t,m;r.parameters={...r.parameters,docs:{...(o=r.parameters)==null?void 0:o.docs,source:{originalSource:"{}",...(m=(t=r.parameters)==null?void 0:t.docs)==null?void 0:m.source}}};const V=["Default"];export{r as Default,V as __namedExportsOrder,U as default}; diff --git a/apps/portal/public/storybook/assets/PlatinumNotice-BGYq2W5f.js b/apps/portal/public/storybook/assets/PlatinumNotice-BGYq2W5f.js new file mode 100644 index 00000000..68902ffd --- /dev/null +++ b/apps/portal/public/storybook/assets/PlatinumNotice-BGYq2W5f.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{F as t}from"./ExclamationTriangleIcon-Di4DJZFg.js";function r({planName:s}){return s.toLowerCase().includes("platinum")?e.jsx("div",{className:"bg-warning-soft border border-warning/25 rounded-lg p-4",children:e.jsxs("div",{className:"flex items-start",children:[e.jsx(t,{className:"w-5 h-5 text-warning mt-0.5 flex-shrink-0"}),e.jsxs("div",{className:"ml-3",children:[e.jsx("h5",{className:"font-medium text-foreground",children:"PLATINUM Plan Notice"}),e.jsx("p",{className:"text-sm text-muted-foreground mt-1",children:"Additional device subscription fees may apply. Contact support for details."})]})]})}):null}r.__docgenInfo={description:"",methods:[],displayName:"PlatinumNotice",props:{planName:{required:!0,tsType:{name:"string"},description:""}}};export{r as P}; diff --git a/apps/portal/public/storybook/assets/PlatinumNotice.stories-Bl7xABNE.js b/apps/portal/public/storybook/assets/PlatinumNotice.stories-Bl7xABNE.js new file mode 100644 index 00000000..1d7f6c43 --- /dev/null +++ b/apps/portal/public/storybook/assets/PlatinumNotice.stories-Bl7xABNE.js @@ -0,0 +1,9 @@ +import{P as i}from"./PlatinumNotice-BGYq2W5f.js";import"./jsx-runtime-D_zvdyIk.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./index-JhL3uwfD.js";const u={title:"Features/Services/SIM/Configure/PlatinumNotice",component:i,parameters:{layout:"centered"}},e={args:{planName:"PLATINUM 50GB Plan"}},a={args:{planName:"Data + Voice 3GB Plan"}};var r,s,o;e.parameters={...e.parameters,docs:{...(r=e.parameters)==null?void 0:r.docs,source:{originalSource:`{ + args: { + planName: "PLATINUM 50GB Plan" + } +}`,...(o=(s=e.parameters)==null?void 0:s.docs)==null?void 0:o.source}}};var t,n,c;a.parameters={...a.parameters,docs:{...(t=a.parameters)==null?void 0:t.docs,source:{originalSource:`{ + args: { + planName: "Data + Voice 3GB Plan" + } +}`,...(c=(n=a.parameters)==null?void 0:n.docs)==null?void 0:c.source}}};const P=["Visible","Hidden"];export{a as Hidden,e as Visible,P as __namedExportsOrder,u as default}; diff --git a/apps/portal/public/storybook/assets/PlusIcon-DGufmf06.js b/apps/portal/public/storybook/assets/PlusIcon-DGufmf06.js new file mode 100644 index 00000000..73f553a7 --- /dev/null +++ b/apps/portal/public/storybook/assets/PlusIcon-DGufmf06.js @@ -0,0 +1 @@ +import{r as e}from"./index-JhL3uwfD.js";function a({title:r,titleId:t,...o},n){return e.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:n,"aria-labelledby":t},o),r?e.createElement("title",{id:t},r):null,e.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M12 4.5v15m7.5-7.5h-15"}))}const i=e.forwardRef(a);export{i as F}; diff --git a/apps/portal/public/storybook/assets/PricingDisplay-CBWoWrYN.js b/apps/portal/public/storybook/assets/PricingDisplay-CBWoWrYN.js new file mode 100644 index 00000000..c37bed2b --- /dev/null +++ b/apps/portal/public/storybook/assets/PricingDisplay-CBWoWrYN.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{F as j}from"./InformationCircleIcon-Clz7d-56.js";import{F as w}from"./CurrencyYenIcon-Bf5bmWZc.js";import{F as T}from"./index-9c86oO0t.js";const{formatCurrency:d}=T,b={left:"text-left",center:"text-center",right:"text-right"},x={sm:{price:"text-lg",currency:"h-4 w-4",label:"text-xs"},md:{price:"text-2xl",currency:"h-5 w-5",label:"text-sm"},lg:{price:"text-3xl",currency:"h-6 w-6",label:"text-base"}};function q({currency:s,showCurrencySymbol:r}){return r?s==="JPY"?e.jsx(w,{className:"h-5 w-5"}):e.jsx("span",{children:"$"}):null}function N({price:s,originalPrice:r,sizeKey:a,colorClass:n,periodLabel:t,getCurrencyIcon:l}){const i=x[a],m=r&&r>s;return e.jsxs("div",{className:"mb-4",children:[e.jsxs("div",{className:"flex items-baseline gap-1",children:[l(),e.jsx("span",{className:`font-bold ${n} ${i.price}`,children:d(s)}),e.jsx("span",{className:`text-muted-foreground ${i.label}`,children:t})]}),m&&e.jsxs("div",{className:"flex items-baseline gap-1 mt-1",children:[e.jsxs("span",{className:"text-muted-foreground/60 line-through text-sm",children:["¥",d(r)]}),e.jsxs("span",{className:"text-green-600 text-sm font-medium",children:["Save ¥",d(r-s),t==="/month"?"/month":""]})]})]})}function S({tier:s,size:r,getCurrencyIcon:a}){const n=x[r];return e.jsxs("div",{className:`border rounded-lg p-6 ${s.isRecommended?"border-blue-500 ring-2 ring-blue-100 bg-blue-50":"border-border bg-card"}`,children:[s.isRecommended&&e.jsx("div",{className:"text-center mb-4",children:e.jsx("span",{className:"bg-blue-500 text-white px-3 py-1 rounded-full text-sm font-medium",children:"Recommended"})}),e.jsxs("div",{className:"text-center mb-4",children:[e.jsx("h3",{className:"text-lg font-semibold text-foreground mb-2",children:s.name}),e.jsxs("div",{className:"flex items-baseline justify-center gap-1",children:[a(),e.jsx("span",{className:`font-bold text-foreground ${n.price}`,children:d(s.price)}),e.jsxs("span",{className:`text-muted-foreground ${n.label}`,children:["/",s.billingCycle.toLowerCase()]})]}),s.description&&e.jsx("p",{className:"text-muted-foreground text-sm mt-2",children:s.description})]}),s.features&&s.features.length>0&&e.jsx("ul",{className:"space-y-2 text-sm text-foreground",children:s.features.map((t,l)=>e.jsxs("li",{className:"flex items-start",children:[e.jsx("span",{className:"text-green-600 mr-2",children:"✓"}),t]},l))})]})}function $({features:s}){return s.length===0?null:e.jsxs("div",{className:"mb-4",children:[e.jsx("h4",{className:"font-medium text-foreground mb-2",children:"Included:"}),e.jsx("ul",{className:"space-y-1 text-sm text-foreground",children:s.map((r,a)=>e.jsxs("li",{className:"flex items-start",children:[e.jsx("span",{className:"text-green-600 mr-2",children:"✓"}),r]},a))})]})}function P({monthlyPrice:s,oneTimePrice:r,originalMonthlyPrice:a,originalOneTimePrice:n,features:t,size:l,getCurrencyIcon:i,children:m}){return e.jsxs("div",{className:"bg-card border border-border rounded-lg p-6",children:[e.jsx("h3",{className:"text-lg font-semibold text-foreground mb-4",children:"Pricing"}),s&&e.jsx(N,{price:s,originalPrice:a,sizeKey:l,colorClass:"text-foreground",periodLabel:"/month",getCurrencyIcon:i}),r&&e.jsx(N,{price:r,originalPrice:n,sizeKey:l,colorClass:"text-orange-600",periodLabel:"one-time",getCurrencyIcon:i}),e.jsx($,{features:t}),m]})}function C({monthlyPrice:s,oneTimePrice:r,size:a,getCurrencyIcon:n,children:t}){const l=x[a];return e.jsxs("div",{children:[s&&e.jsxs("div",{className:"flex items-baseline gap-1 mb-2",children:[n(),e.jsx("span",{className:`font-bold text-foreground ${l.price}`,children:d(s)}),e.jsx("span",{className:`text-muted-foreground ${l.label}`,children:"/month"})]}),r&&e.jsxs("div",{className:"flex items-baseline gap-1",children:[n(),e.jsx("span",{className:`font-bold text-orange-600 ${l.price}`,children:d(r)}),e.jsx("span",{className:`text-orange-500 ${l.label}`,children:"one-time"})]}),t]})}function D({monthlyPrice:s,oneTimePrice:r,originalMonthlyPrice:a,originalOneTimePrice:n,tiers:t,currency:l="JPY",showCurrencySymbol:i=!0,features:m=[],variant:p="simple",size:o="md",alignment:f="left",disclaimer:c,infoText:g,children:h}){const u=()=>e.jsx(q,{currency:l,showCurrencySymbol:i});return t&&t.length>0?e.jsxs("div",{className:b[f],children:[e.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6",children:t.map((v,y)=>e.jsx(S,{tier:v,size:o,getCurrencyIcon:u},y))}),c&&e.jsx("div",{className:"mt-6 p-4 bg-muted rounded-lg",children:e.jsxs("div",{className:"flex items-start gap-2",children:[e.jsx(j,{className:"h-5 w-5 text-muted-foreground flex-shrink-0 mt-0.5"}),e.jsx("p",{className:"text-sm text-muted-foreground",children:c})]})})]}):e.jsxs("div",{className:b[f],children:[p==="detailed"&&e.jsx(P,{monthlyPrice:s,oneTimePrice:r,originalMonthlyPrice:a,originalOneTimePrice:n,features:m,size:o,getCurrencyIcon:u,children:h}),p==="simple"&&e.jsx(C,{monthlyPrice:s,oneTimePrice:r,size:o,getCurrencyIcon:u,children:h}),g&&e.jsx("div",{className:"mt-4 p-3 bg-blue-50 rounded-lg",children:e.jsxs("div",{className:"flex items-start gap-2",children:[e.jsx(j,{className:"h-5 w-5 text-blue-500 flex-shrink-0 mt-0.5"}),e.jsx("p",{className:"text-sm text-blue-700",children:g})]})}),c&&e.jsx("div",{className:"mt-4 p-3 bg-muted rounded-lg",children:e.jsx("p",{className:"text-xs text-muted-foreground",children:c})})]})}D.__docgenInfo={description:"",methods:[],displayName:"PricingDisplay",props:{monthlyPrice:{required:!1,tsType:{name:"number"},description:""},oneTimePrice:{required:!1,tsType:{name:"number"},description:""},originalMonthlyPrice:{required:!1,tsType:{name:"number"},description:""},originalOneTimePrice:{required:!1,tsType:{name:"number"},description:""},tiers:{required:!1,tsType:{name:"Array",elements:[{name:"PricingTier"}],raw:"PricingTier[]"},description:""},currency:{required:!1,tsType:{name:"union",raw:'"JPY" | "USD"',elements:[{name:"literal",value:'"JPY"'},{name:"literal",value:'"USD"'}]},description:"",defaultValue:{value:'"JPY"',computed:!1}},showCurrencySymbol:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"true",computed:!1}},features:{required:!1,tsType:{name:"Array",elements:[{name:"string"}],raw:"string[]"},description:"",defaultValue:{value:"[]",computed:!1}},variant:{required:!1,tsType:{name:"union",raw:'"simple" | "detailed" | "comparison"',elements:[{name:"literal",value:'"simple"'},{name:"literal",value:'"detailed"'},{name:"literal",value:'"comparison"'}]},description:"",defaultValue:{value:'"simple"',computed:!1}},size:{required:!1,tsType:{name:"union",raw:'"sm" | "md" | "lg"',elements:[{name:"literal",value:'"sm"'},{name:"literal",value:'"md"'},{name:"literal",value:'"lg"'}]},description:"",defaultValue:{value:'"md"',computed:!1}},alignment:{required:!1,tsType:{name:"union",raw:'"left" | "center" | "right"',elements:[{name:"literal",value:'"left"'},{name:"literal",value:'"center"'},{name:"literal",value:'"right"'}]},description:"",defaultValue:{value:'"left"',computed:!1}},disclaimer:{required:!1,tsType:{name:"string"},description:""},infoText:{required:!1,tsType:{name:"string"},description:""},children:{required:!1,tsType:{name:"ReactNode"},description:""}}};export{D as P}; diff --git a/apps/portal/public/storybook/assets/PricingDisplay.stories-Dag-riPk.js b/apps/portal/public/storybook/assets/PricingDisplay.stories-Dag-riPk.js new file mode 100644 index 00000000..e3b00609 --- /dev/null +++ b/apps/portal/public/storybook/assets/PricingDisplay.stories-Dag-riPk.js @@ -0,0 +1,72 @@ +import{P as L}from"./PricingDisplay-CBWoWrYN.js";import"./jsx-runtime-D_zvdyIk.js";import"./InformationCircleIcon-Clz7d-56.js";import"./index-JhL3uwfD.js";import"./CurrencyYenIcon-Bf5bmWZc.js";import"./index-9c86oO0t.js";import"./currency-CYvr7ZUf.js";import"./date-CJlSVdaN.js";import"./text-CXa-DJQz.js";const K={title:"Features/Services/Base/PricingDisplay",component:L,parameters:{layout:"centered"}},e={args:{monthlyPrice:4980,variant:"simple"}},r={args:{monthlyPrice:4980,oneTimePrice:3300,variant:"simple"}},i={args:{monthlyPrice:3980,originalMonthlyPrice:4980,oneTimePrice:2200,originalOneTimePrice:3300,variant:"detailed",features:["Unlimited data","24/7 support","Free router rental"]}},n={args:{tiers:[{name:"Basic",price:2980,billingCycle:"Month",description:"For light users",features:["100 Mbps","Basic support"]},{name:"Standard",price:4980,billingCycle:"Month",description:"Most popular choice",isRecommended:!0,features:["500 Mbps","Priority support","Free router"]},{name:"Premium",price:7980,billingCycle:"Month",description:"For power users",features:["1 Gbps","Dedicated support","Free router","Static IP"]}]}},s={args:{monthlyPrice:4980,size:"sm"}},t={args:{monthlyPrice:4980,size:"lg"}},a={args:{monthlyPrice:4980,disclaimer:"Prices shown exclude tax. Contract period: 24 months.",variant:"simple"}},o={args:{monthlyPrice:4980,infoText:"First month free for new customers!",variant:"simple"}},c={args:{monthlyPrice:4980,oneTimePrice:3300,alignment:"center"}};var m,p,l;e.parameters={...e.parameters,docs:{...(m=e.parameters)==null?void 0:m.docs,source:{originalSource:`{ + args: { + monthlyPrice: 4980, + variant: "simple" + } +}`,...(l=(p=e.parameters)==null?void 0:p.docs)==null?void 0:l.source}}};var u,d,g;r.parameters={...r.parameters,docs:{...(u=r.parameters)==null?void 0:u.docs,source:{originalSource:`{ + args: { + monthlyPrice: 4980, + oneTimePrice: 3300, + variant: "simple" + } +}`,...(g=(d=r.parameters)==null?void 0:d.docs)==null?void 0:g.source}}};var h,P,y;i.parameters={...i.parameters,docs:{...(h=i.parameters)==null?void 0:h.docs,source:{originalSource:`{ + args: { + monthlyPrice: 3980, + originalMonthlyPrice: 4980, + oneTimePrice: 2200, + originalOneTimePrice: 3300, + variant: "detailed", + features: ["Unlimited data", "24/7 support", "Free router rental"] + } +}`,...(y=(P=i.parameters)==null?void 0:P.docs)==null?void 0:y.source}}};var S,f,M;n.parameters={...n.parameters,docs:{...(S=n.parameters)==null?void 0:S.docs,source:{originalSource:`{ + args: { + tiers: [{ + name: "Basic", + price: 2980, + billingCycle: "Month", + description: "For light users", + features: ["100 Mbps", "Basic support"] + }, { + name: "Standard", + price: 4980, + billingCycle: "Month", + description: "Most popular choice", + isRecommended: true, + features: ["500 Mbps", "Priority support", "Free router"] + }, { + name: "Premium", + price: 7980, + billingCycle: "Month", + description: "For power users", + features: ["1 Gbps", "Dedicated support", "Free router", "Static IP"] + }] + } +}`,...(M=(f=n.parameters)==null?void 0:f.docs)==null?void 0:M.source}}};var T,F,b;s.parameters={...s.parameters,docs:{...(T=s.parameters)==null?void 0:T.docs,source:{originalSource:`{ + args: { + monthlyPrice: 4980, + size: "sm" + } +}`,...(b=(F=s.parameters)==null?void 0:F.docs)==null?void 0:b.source}}};var v,x,C;t.parameters={...t.parameters,docs:{...(v=t.parameters)==null?void 0:v.docs,source:{originalSource:`{ + args: { + monthlyPrice: 4980, + size: "lg" + } +}`,...(C=(x=t.parameters)==null?void 0:x.docs)==null?void 0:C.source}}};var D,W,z;a.parameters={...a.parameters,docs:{...(D=a.parameters)==null?void 0:D.docs,source:{originalSource:`{ + args: { + monthlyPrice: 4980, + disclaimer: "Prices shown exclude tax. Contract period: 24 months.", + variant: "simple" + } +}`,...(z=(W=a.parameters)==null?void 0:W.docs)==null?void 0:z.source}}};var w,B,O;o.parameters={...o.parameters,docs:{...(w=o.parameters)==null?void 0:w.docs,source:{originalSource:`{ + args: { + monthlyPrice: 4980, + infoText: "First month free for new customers!", + variant: "simple" + } +}`,...(O=(B=o.parameters)==null?void 0:B.docs)==null?void 0:O.source}}};var I,A,G;c.parameters={...c.parameters,docs:{...(I=c.parameters)==null?void 0:I.docs,source:{originalSource:`{ + args: { + monthlyPrice: 4980, + oneTimePrice: 3300, + alignment: "center" + } +}`,...(G=(A=c.parameters)==null?void 0:A.docs)==null?void 0:G.source}}};const N=["SimpleMonthly","SimpleWithOneTime","DetailedWithDiscount","WithTiers","SmallSize","LargeSize","WithDisclaimer","WithInfoText","CenterAligned"];export{c as CenterAligned,i as DetailedWithDiscount,t as LargeSize,e as SimpleMonthly,r as SimpleWithOneTime,s as SmallSize,a as WithDisclaimer,o as WithInfoText,n as WithTiers,N as __namedExportsOrder,K as default}; diff --git a/apps/portal/public/storybook/assets/ProductCard-BA9t2pcL.js b/apps/portal/public/storybook/assets/ProductCard-BA9t2pcL.js new file mode 100644 index 00000000..1e0db7b2 --- /dev/null +++ b/apps/portal/public/storybook/assets/ProductCard-BA9t2pcL.js @@ -0,0 +1,4 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import"./DataTable-COYdcx41.js";import"./FormField-C0UylACv.js";import"./OtpInput-6kd_2E0v.js";import"./OtpExpiryDisplay-BGgB7Tk6.js";import"./SearchFilterBar-Ds19v0-P.js";import"./PaginationBar-D_k7ztRb.js";import"./DetailHeader-C0ZsoM39.js";import"./AlertBanner-Bnlyj1xc.js";import"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import"./error-state-BSicqqE6.js";import"./index-BKyvj4H5.js";import"./SectionHeader-Bo81Whai.js";import"./ProgressSteps-weVdXcqu.js";import"./SubCard-1OZIPgEM.js";import{A as y}from"./AnimatedCard-DFAiX4zP.js";import"./ServiceCard-BJEHFLba.js";import"./SummaryStats-D6b7Am-p.js";import"./FilterDropdown-CUU04WmN.js";import"./ClearFiltersButton-CPCoyXk2.js";import"./DetailStatsGrid-CDkKTM-B.js";import"./SectionCard-BcUjc-7N.js";import"./MetricCard-BR1xVIXz.js";import"./BackLink-C5IY6wzy.js";import"./status-badge-5pzxe45J.js";import"./error-boundary-DIRO_cDI.js";import"./error-fallbacks-kSPsNxmV.js";import{B as c}from"./button-C8_cybvS.js";import{u as b}from"./next-navigation-FtRxULo3.js";import{F as p}from"./CurrencyYenIcon-Bf5bmWZc.js";import{F as f}from"./ArrowRightIcon--Vuz7Q7x.js";const w={recommended:"bg-green-100 text-green-800 border-green-300",family:"bg-blue-100 text-blue-800 border-blue-300",success:"bg-emerald-100 text-emerald-800 border-emerald-300"},q="bg-muted text-foreground border-border",T={compact:"p-4",standard:"p-6",large:"p-8"};function S({monthlyPrice:t,oneTimePrice:r}){return!t&&!r?null:e.jsxs("div",{className:"text-right flex-shrink-0",children:[t&&e.jsxs("div",{className:"flex items-baseline justify-end gap-1 text-2xl font-bold text-foreground",children:[e.jsx(p,{className:"h-6 w-6"}),e.jsx("span",{children:t.toLocaleString()}),e.jsx("span",{className:"text-sm text-muted-foreground font-normal whitespace-nowrap",children:"/month"})]}),r&&e.jsxs("div",{className:"flex items-baseline justify-end gap-1 text-lg font-semibold text-orange-600 mt-1",children:[e.jsx(p,{className:"h-4 w-4"}),e.jsx("span",{children:r.toLocaleString()}),e.jsx("span",{className:"text-xs text-orange-500 font-normal",children:"one-time"})]})]})}function A({href:t,onClick:r,actionLabel:a,disabled:s}){const i=b();return t?e.jsx(c,{className:"w-full group",disabled:s,rightIcon:e.jsx(f,{className:"w-4 h-4"}),onClick:()=>{s||i.push(t)},children:a}):r?e.jsx(c,{onClick:r,className:"w-full group",disabled:s,rightIcon:e.jsx(f,{className:"w-4 h-4"}),children:a}):null}function C({name:t,description:r,monthlyPrice:a,oneTimePrice:s,icon:i,badge:n,features:l=[],variant:x="default",size:g="standard",href:h,onClick:m,actionLabel:j="Configure",disabled:d=!1,children:o,footer:u}){return e.jsxs(y,{variant:x,className:`overflow-hidden flex flex-col h-full ${T[g]}`,onClick:m,disabled:d,children:[e.jsxs("div",{className:"flex items-start justify-between mb-4",children:[e.jsxs("div",{className:"flex items-center gap-3",children:[i&&e.jsx("div",{className:"flex-shrink-0",children:i}),e.jsx("div",{className:"flex flex-col gap-2",children:n&&e.jsx("span",{className:`px-3 py-1 rounded-full text-sm font-medium border ${w[n.variant]??q}`,children:n.text})})]}),e.jsx(S,{monthlyPrice:a,oneTimePrice:s})]}),e.jsxs("div",{className:"mb-4",children:[e.jsx("h3",{className:"text-xl font-semibold text-foreground mb-2",children:t}),r&&e.jsx("p",{className:"text-muted-foreground text-sm leading-relaxed",children:r})]}),l.length>0&&e.jsxs("div",{className:"mb-6 flex-grow",children:[e.jsx("h4",{className:"font-medium text-foreground mb-3",children:"Features:"}),e.jsx("ul",{className:"space-y-2 text-sm text-foreground",children:l.map((v,N)=>e.jsxs("li",{className:"flex items-start",children:[e.jsx("span",{className:"text-green-600 mr-2 flex-shrink-0",children:"✓"}),e.jsx("span",{children:v})]},N))})]}),o&&e.jsx("div",{className:"mb-4 flex-grow",children:o}),e.jsx("div",{className:"mt-auto",children:e.jsx(A,{href:h,onClick:m,actionLabel:j,disabled:d})}),u&&e.jsx("div",{className:"mt-4 pt-4 border-t border-border",children:u})]})}C.__docgenInfo={description:"",methods:[],displayName:"ProductCard",props:{id:{required:!0,tsType:{name:"string"},description:""},name:{required:!0,tsType:{name:"string"},description:""},sku:{required:!0,tsType:{name:"string"},description:""},description:{required:!1,tsType:{name:"string"},description:""},monthlyPrice:{required:!1,tsType:{name:"number"},description:""},oneTimePrice:{required:!1,tsType:{name:"number"},description:""},icon:{required:!1,tsType:{name:"ReactNode"},description:""},badge:{required:!1,tsType:{name:"signature",type:"object",raw:`{ + text: string; + variant: "default" | "recommended" | "family" | "success"; +}`,signature:{properties:[{key:"text",value:{name:"string",required:!0}},{key:"variant",value:{name:"union",raw:'"default" | "recommended" | "family" | "success"',elements:[{name:"literal",value:'"default"'},{name:"literal",value:'"recommended"'},{name:"literal",value:'"family"'},{name:"literal",value:'"success"'}],required:!0}}]}},description:""},features:{required:!1,tsType:{name:"Array",elements:[{name:"string"}],raw:"string[]"},description:"",defaultValue:{value:"[]",computed:!1}},variant:{required:!1,tsType:{name:"union",raw:'"default" | "highlighted" | "success"',elements:[{name:"literal",value:'"default"'},{name:"literal",value:'"highlighted"'},{name:"literal",value:'"success"'}]},description:"",defaultValue:{value:'"default"',computed:!1}},size:{required:!1,tsType:{name:"union",raw:'"compact" | "standard" | "large"',elements:[{name:"literal",value:'"compact"'},{name:"literal",value:'"standard"'},{name:"literal",value:'"large"'}]},description:"",defaultValue:{value:'"standard"',computed:!1}},href:{required:!1,tsType:{name:"string"},description:""},onClick:{required:!1,tsType:{name:"signature",type:"function",raw:"() => void",signature:{arguments:[],return:{name:"void"}}},description:""},actionLabel:{required:!1,tsType:{name:"string"},description:"",defaultValue:{value:'"Configure"',computed:!1}},disabled:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"false",computed:!1}},children:{required:!1,tsType:{name:"ReactNode"},description:""},footer:{required:!1,tsType:{name:"ReactNode"},description:""}}};export{C as P}; diff --git a/apps/portal/public/storybook/assets/ProductCard.stories-BobRhhaF.js b/apps/portal/public/storybook/assets/ProductCard.stories-BobRhhaF.js new file mode 100644 index 00000000..38efbc7b --- /dev/null +++ b/apps/portal/public/storybook/assets/ProductCard.stories-BobRhhaF.js @@ -0,0 +1,86 @@ +import{j as s}from"./jsx-runtime-D_zvdyIk.js";import{P as R}from"./ProductCard-BA9t2pcL.js";import"./DataTable-COYdcx41.js";import"./empty-state-DRUGJ9ip.js";import"./button-C8_cybvS.js";import"./index-JhL3uwfD.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./spinner-mU4XywER.js";import"./PlusIcon-DGufmf06.js";import"./ChevronRightIcon-CMQWsJeW.js";import"./FormField-C0UylACv.js";import"./label-C25VH7yk.js";import"./input-BbGJiz0K.js";import"./error-message-DeFFz6H_.js";import"./ExclamationCircleIcon-jFfW0Ax_.js";import"./OtpInput-6kd_2E0v.js";import"./input-otp-Cin9-T84.js";import"./createLucideIcon-CctB0W3q.js";import"./OtpExpiryDisplay-BGgB7Tk6.js";import"./clock-C92s7kSC.js";import"./SearchFilterBar-Ds19v0-P.js";import"./FunnelIcon-8nhbwqu0.js";import"./XMarkIcon-Bsb1W5VN.js";import"./PaginationBar-D_k7ztRb.js";import"./DetailHeader-C0ZsoM39.js";import"./status-pill-wWp9xkwA.js";import"./AlertBanner-Bnlyj1xc.js";import"./XCircleIcon-CiVBnngB.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./InformationCircleIcon-Clz7d-56.js";import"./CheckCircleIcon-Dva35lTP.js";import"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import"./password-input-D4khGh8v.js";import"./checkbox-DahUyQbt.js";import"./badge-BdMsasyi.js";import"./loading-overlay-DMJTiFny.js";import"./error-state-BSicqqE6.js";import"./ArrowPathIcon-CZjG6RfV.js";import"./inline-toast-DQJ-O9wc.js";import"./index-CNXKWNLp.js";import"./proxy-ZkTvaR74.js";import"./logo-f0fprTjz.js";import"./next-image-69WeRggt.js";import"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./Squares2X2Icon-BMQM_Wy1.js";import"./animated-container-DyAZ9gmw.js";import"./SectionHeader-Bo81Whai.js";import"./ProgressSteps-weVdXcqu.js";import"./SubCard-1OZIPgEM.js";import"./AnimatedCard-DFAiX4zP.js";import"./ServiceCard-BJEHFLba.js";import"./arrow-right-BNMAry-H.js";import"./SummaryStats-D6b7Am-p.js";import"./FilterDropdown-CUU04WmN.js";import"./ClearFiltersButton-CPCoyXk2.js";import"./DetailStatsGrid-CDkKTM-B.js";import"./SectionCard-BcUjc-7N.js";import"./MetricCard-BR1xVIXz.js";import"./BackLink-C5IY6wzy.js";import"./ArrowLeftIcon-Cw1eswTb.js";import"./status-badge-5pzxe45J.js";import"./error-boundary-DIRO_cDI.js";import"./error-fallbacks-kSPsNxmV.js";import"./next-navigation-FtRxULo3.js";import"./CurrencyYenIcon-Bf5bmWZc.js";import"./ArrowRightIcon--Vuz7Q7x.js";const Ye={title:"Features/Services/Base/ProductCard",component:R,parameters:{layout:"centered"},decorators:[E=>s.jsx("div",{style:{maxWidth:400},children:s.jsx(E,{})})]},e={args:{id:"plan-1",name:"Fiber Internet 500",sku:"FIBER-500",description:"High-speed fiber internet with 500 Mbps download speeds.",monthlyPrice:4980,features:["500 Mbps download","200 Mbps upload","Unlimited data","Free Wi-Fi router"],actionLabel:"Configure",onClick:()=>{}}},r={args:{id:"plan-2",name:"Fiber Internet 1G",sku:"FIBER-1G",description:"Ultra-fast gigabit fiber for power users.",monthlyPrice:6980,badge:{text:"Most Popular",variant:"recommended"},features:["1 Gbps download","500 Mbps upload","Unlimited data","Free Wi-Fi 6 router"],actionLabel:"Configure",onClick:()=>{}}},t={args:{id:"plan-3",name:"Fiber Internet Basic",sku:"FIBER-BASIC",description:"Affordable fiber internet for everyday use.",monthlyPrice:2980,oneTimePrice:3300,features:["100 Mbps download","50 Mbps upload"],actionLabel:"Get Started",onClick:()=>{}}},i={args:{id:"plan-4",name:"Premium Plan",sku:"FIBER-PREM",description:"Our best plan with all the extras.",monthlyPrice:9800,variant:"highlighted",badge:{text:"Best Value",variant:"success"},features:["2 Gbps download","1 Gbps upload","Unlimited data","Premium support"],actionLabel:"Select Plan",onClick:()=>{}}},a={args:{id:"plan-5",name:"Unavailable Plan",sku:"FIBER-NA",description:"This plan is not available in your area.",monthlyPrice:4980,disabled:!0,actionLabel:"Not Available"}},o={args:{id:"plan-6",name:"Fiber Internet 500",sku:"FIBER-500",description:"Click to navigate to configuration page.",monthlyPrice:4980,href:"/services/internet/configure",actionLabel:"Configure"}},n={args:{id:"plan-7",name:"Compact Plan",sku:"COMPACT",description:"A compact card display.",monthlyPrice:1980,size:"compact",actionLabel:"Select",onClick:()=>{}}};var p,m,c;e.parameters={...e.parameters,docs:{...(p=e.parameters)==null?void 0:p.docs,source:{originalSource:`{ + args: { + id: "plan-1", + name: "Fiber Internet 500", + sku: "FIBER-500", + description: "High-speed fiber internet with 500 Mbps download speeds.", + monthlyPrice: 4980, + features: ["500 Mbps download", "200 Mbps upload", "Unlimited data", "Free Wi-Fi router"], + actionLabel: "Configure", + onClick: () => {} + } +}`,...(c=(m=e.parameters)==null?void 0:m.docs)==null?void 0:c.source}}};var l,d,u;r.parameters={...r.parameters,docs:{...(l=r.parameters)==null?void 0:l.docs,source:{originalSource:`{ + args: { + id: "plan-2", + name: "Fiber Internet 1G", + sku: "FIBER-1G", + description: "Ultra-fast gigabit fiber for power users.", + monthlyPrice: 6980, + badge: { + text: "Most Popular", + variant: "recommended" + }, + features: ["1 Gbps download", "500 Mbps upload", "Unlimited data", "Free Wi-Fi 6 router"], + actionLabel: "Configure", + onClick: () => {} + } +}`,...(u=(d=r.parameters)==null?void 0:d.docs)==null?void 0:u.source}}};var b,g,h;t.parameters={...t.parameters,docs:{...(b=t.parameters)==null?void 0:b.docs,source:{originalSource:`{ + args: { + id: "plan-3", + name: "Fiber Internet Basic", + sku: "FIBER-BASIC", + description: "Affordable fiber internet for everyday use.", + monthlyPrice: 2980, + oneTimePrice: 3300, + features: ["100 Mbps download", "50 Mbps upload"], + actionLabel: "Get Started", + onClick: () => {} + } +}`,...(h=(g=t.parameters)==null?void 0:g.docs)==null?void 0:h.source}}};var f,P,C;i.parameters={...i.parameters,docs:{...(f=i.parameters)==null?void 0:f.docs,source:{originalSource:`{ + args: { + id: "plan-4", + name: "Premium Plan", + sku: "FIBER-PREM", + description: "Our best plan with all the extras.", + monthlyPrice: 9800, + variant: "highlighted", + badge: { + text: "Best Value", + variant: "success" + }, + features: ["2 Gbps download", "1 Gbps upload", "Unlimited data", "Premium support"], + actionLabel: "Select Plan", + onClick: () => {} + } +}`,...(C=(P=i.parameters)==null?void 0:P.docs)==null?void 0:C.source}}};var F,k,y;a.parameters={...a.parameters,docs:{...(F=a.parameters)==null?void 0:F.docs,source:{originalSource:`{ + args: { + id: "plan-5", + name: "Unavailable Plan", + sku: "FIBER-NA", + description: "This plan is not available in your area.", + monthlyPrice: 4980, + disabled: true, + actionLabel: "Not Available" + } +}`,...(y=(k=a.parameters)==null?void 0:k.docs)==null?void 0:y.source}}};var I,B,v;o.parameters={...o.parameters,docs:{...(I=o.parameters)==null?void 0:I.docs,source:{originalSource:`{ + args: { + id: "plan-6", + name: "Fiber Internet 500", + sku: "FIBER-500", + description: "Click to navigate to configuration page.", + monthlyPrice: 4980, + href: "/services/internet/configure", + actionLabel: "Configure" + } +}`,...(v=(B=o.parameters)==null?void 0:B.docs)==null?void 0:v.source}}};var M,S,w;n.parameters={...n.parameters,docs:{...(M=n.parameters)==null?void 0:M.docs,source:{originalSource:`{ + args: { + id: "plan-7", + name: "Compact Plan", + sku: "COMPACT", + description: "A compact card display.", + monthlyPrice: 1980, + size: "compact", + actionLabel: "Select", + onClick: () => {} + } +}`,...(w=(S=n.parameters)==null?void 0:S.docs)==null?void 0:w.source}}};const Ze=["Default","WithBadge","WithOneTimePrice","Highlighted","Disabled","WithHref","CompactSize"];export{n as CompactSize,e as Default,a as Disabled,i as Highlighted,r as WithBadge,o as WithHref,t as WithOneTimePrice,Ze as __namedExportsOrder,Ye as default}; diff --git a/apps/portal/public/storybook/assets/ProductComparison-DYrBj0kv.js b/apps/portal/public/storybook/assets/ProductComparison-DYrBj0kv.js new file mode 100644 index 00000000..561397df --- /dev/null +++ b/apps/portal/public/storybook/assets/ProductComparison-DYrBj0kv.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{A as h}from"./AnimatedCard-DFAiX4zP.js";import{B as p}from"./button-C8_cybvS.js";import{F as o}from"./CurrencyYenIcon-Bf5bmWZc.js";import{F as g}from"./CheckIcon-BKJSKBEC.js";import{F as N}from"./XMarkIcon-Bsb1W5VN.js";function j(s,t){return s==null?e.jsx("span",{className:"text-muted-foreground/60","aria-label":"Not available",children:"—"}):typeof s=="boolean"?s?e.jsxs("span",{className:"inline-flex items-center",children:[e.jsx(g,{className:"h-5 w-5 text-green-600 mx-auto","aria-hidden":"true"}),e.jsx("span",{className:"sr-only",children:"Included"})]}):e.jsxs("span",{className:"inline-flex items-center",children:[e.jsx(N,{className:"h-5 w-5 text-muted-foreground/60 mx-auto","aria-hidden":"true"}),e.jsx("span",{className:"sr-only",children:"Not included"})]}):typeof s=="number"?e.jsx("span",{className:"font-medium",children:s.toLocaleString(t)}):e.jsx("span",{className:"text-sm",children:s})}function b({title:s,description:t}){return s?e.jsxs("div",{className:"text-center",children:[e.jsx("h2",{className:"text-3xl font-bold text-foreground mb-4",children:s}),t&&e.jsx("p",{className:"text-lg text-muted-foreground max-w-3xl mx-auto",children:t})]}):null}function y({product:s,showPricing:t,locale:l}){return!t||s.monthlyPrice==null&&s.oneTimePrice==null?null:e.jsxs("div",{className:"mt-4",children:[s.monthlyPrice!=null&&e.jsxs("div",{className:"flex items-baseline justify-center gap-1 text-2xl font-bold text-foreground",children:[e.jsx(o,{className:"h-6 w-6","aria-hidden":"true"}),e.jsx("span",{children:s.monthlyPrice.toLocaleString(l)}),e.jsx("span",{className:"text-sm text-muted-foreground font-normal",children:"/month"})]}),s.oneTimePrice!=null&&e.jsxs("div",{className:"flex items-baseline justify-center gap-1 text-lg font-semibold text-orange-600 mt-1",children:[e.jsx(o,{className:"h-4 w-4","aria-hidden":"true"}),e.jsx("span",{children:s.oneTimePrice.toLocaleString(l)}),e.jsx("span",{className:"text-xs text-orange-500 font-normal",children:"one-time"})]})]})}const f={1:"grid-cols-1",2:"grid-cols-1 md:grid-cols-2",3:"grid-cols-1 md:grid-cols-2 lg:grid-cols-3",4:"grid-cols-1 md:grid-cols-2 lg:grid-cols-4"};function v({displayProducts:s,features:t,showPricing:l,showActions:i,locale:r,maxColumns:a}){const d=f[Math.min(a,4)]??f[3];return e.jsx("div",{className:`grid ${d} gap-6`,children:s.map((n,c)=>e.jsxs(h,{variant:n.isRecommended?"highlighted":"default",className:"p-6 h-full flex flex-col",children:[e.jsxs("div",{className:"text-center mb-6",children:[e.jsxs("div",{className:"mb-3 flex items-center justify-center gap-2",children:[n.isRecommended&&e.jsx("span",{className:"bg-blue-500 text-white px-3 py-1 rounded-full text-sm font-medium",children:"Recommended"}),n.badge&&e.jsx("span",{className:"bg-muted text-foreground px-3 py-1 rounded-full text-sm font-medium",children:n.badge})]}),e.jsx("h3",{className:"text-xl font-bold text-foreground mb-2",children:n.name}),n.description&&e.jsx("p",{className:"text-muted-foreground text-sm",children:n.description}),e.jsx(y,{product:n,showPricing:l,locale:r})]}),e.jsx("div",{className:"flex-grow mb-6",children:e.jsx("ul",{className:"space-y-3",children:t.map(m=>{const x=m.values[c];return e.jsxs("li",{className:"flex items-start justify-between",children:[e.jsx("span",{className:"text-sm text-foreground flex-1",children:m.name}),e.jsx("div",{className:"ml-3 flex-shrink-0",children:j(x,r)})]},m.id)})})}),i&&n.href&&e.jsx(p,{as:"a",href:n.href,className:"w-full",variant:n.isRecommended?"default":"outline",children:n.actionLabel||"Select Plan"})]},n.id))})}function w({product:s,showPricing:t,locale:l}){return e.jsx("th",{scope:"col",className:"text-center py-4 px-6 bg-muted min-w-[200px]",children:e.jsxs("div",{className:"space-y-2",children:[e.jsxs("div",{className:"flex items-center justify-center gap-2",children:[s.isRecommended&&e.jsx("span",{className:"bg-blue-500 text-white px-2 py-1 rounded-full text-xs font-medium",children:"Recommended"}),s.badge&&e.jsx("span",{className:"bg-muted text-foreground px-2 py-1 rounded-full text-xs font-medium",children:s.badge})]}),e.jsx("div",{className:"font-bold text-foreground",children:s.name}),s.description&&e.jsx("div",{className:"text-sm text-muted-foreground",children:s.description}),t&&(s.monthlyPrice!=null||s.oneTimePrice!=null)&&e.jsxs("div",{className:"space-y-1",children:[s.monthlyPrice!=null&&e.jsxs("div",{className:"flex items-baseline justify-center gap-1 text-lg font-bold text-foreground",children:[e.jsx(o,{className:"h-4 w-4","aria-hidden":"true"}),e.jsx("span",{children:s.monthlyPrice.toLocaleString(l)}),e.jsx("span",{className:"text-xs text-muted-foreground font-normal",children:"/mo"})]}),s.oneTimePrice!=null&&e.jsxs("div",{className:"flex items-baseline justify-center gap-1 text-sm font-semibold text-orange-600",children:[e.jsx(o,{className:"h-3 w-3","aria-hidden":"true"}),e.jsx("span",{children:s.oneTimePrice.toLocaleString(l)}),e.jsx("span",{className:"text-xs text-orange-500 font-normal",children:"one-time"})]})]})]})})}function P({displayProducts:s,features:t,showPricing:l,showActions:i,locale:r}){return e.jsx(h,{className:"overflow-hidden",children:e.jsx("div",{className:"overflow-x-auto",children:e.jsxs("table",{className:"w-full",children:[e.jsx("thead",{children:e.jsxs("tr",{className:"border-b border-border",children:[e.jsx("th",{scope:"col",className:"text-left py-4 px-6 font-medium text-foreground bg-muted",children:"Features"}),s.map(a=>e.jsx(w,{product:a,showPricing:l,locale:r},a.id))]})}),e.jsx("tbody",{children:t.map(a=>e.jsxs("tr",{className:"border-b border-border/50 hover:bg-muted/50",children:[e.jsx("th",{scope:"row",className:"py-4 px-6 text-left font-normal",children:e.jsxs("div",{children:[e.jsx("div",{className:"font-medium text-foreground",children:a.name}),a.description&&e.jsx("div",{className:"text-sm text-muted-foreground mt-1",children:a.description})]})}),s.map((d,n)=>e.jsx("td",{className:"py-4 px-6 text-center",children:j(a.values[n],r)},d.id))]},a.id))}),i&&e.jsx("tfoot",{children:e.jsxs("tr",{children:[e.jsx("td",{className:"py-6 px-6"}),s.map(a=>e.jsx("td",{className:"py-6 px-6 text-center",children:a.href&&e.jsx(p,{as:"a",href:a.href,className:"w-full",variant:a.isRecommended?"default":"outline",children:a.actionLabel||"Select Plan"})},a.id))]})})]})})})}function T({products:s,features:t,title:l="Compare Plans",description:i,maxColumns:r=4,showPricing:a=!0,showActions:d=!0,variant:n="table",currencyLocale:c="ja-JP",children:m}){const u={displayProducts:s.slice(0,r),features:t,showPricing:a,showActions:d,locale:c};return e.jsxs("div",{className:"space-y-8",children:[e.jsx(b,{title:l,description:i}),n==="cards"?e.jsx(v,{...u,maxColumns:r}):e.jsx(P,{...u}),m]})}T.__docgenInfo={description:"",methods:[],displayName:"ProductComparison",props:{products:{required:!0,tsType:{name:"Array",elements:[{name:"ComparisonProduct"}],raw:"ComparisonProduct[]"},description:""},features:{required:!0,tsType:{name:"Array",elements:[{name:"ComparisonFeature"}],raw:"ComparisonFeature[]"},description:""},title:{required:!1,tsType:{name:"string"},description:"",defaultValue:{value:'"Compare Plans"',computed:!1}},description:{required:!1,tsType:{name:"string"},description:""},maxColumns:{required:!1,tsType:{name:"number"},description:"",defaultValue:{value:"4",computed:!1}},showPricing:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"true",computed:!1}},showActions:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"true",computed:!1}},variant:{required:!1,tsType:{name:"union",raw:'"table" | "cards"',elements:[{name:"literal",value:'"table"'},{name:"literal",value:'"cards"'}]},description:"",defaultValue:{value:'"table"',computed:!1}},currencyLocale:{required:!1,tsType:{name:"string"},description:"",defaultValue:{value:'"ja-JP"',computed:!1}},children:{required:!1,tsType:{name:"ReactNode"},description:""}}};export{T as P}; diff --git a/apps/portal/public/storybook/assets/ProductComparison.stories-DP0gZ24B.js b/apps/portal/public/storybook/assets/ProductComparison.stories-DP0gZ24B.js new file mode 100644 index 00000000..827f4639 --- /dev/null +++ b/apps/portal/public/storybook/assets/ProductComparison.stories-DP0gZ24B.js @@ -0,0 +1,42 @@ +import{P as B}from"./ProductComparison-DYrBj0kv.js";import"./jsx-runtime-D_zvdyIk.js";import"./AnimatedCard-DFAiX4zP.js";import"./proxy-ZkTvaR74.js";import"./index-JhL3uwfD.js";import"./button-C8_cybvS.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./spinner-mU4XywER.js";import"./CurrencyYenIcon-Bf5bmWZc.js";import"./CheckIcon-BKJSKBEC.js";import"./XMarkIcon-Bsb1W5VN.js";const j={title:"Features/Services/Base/ProductComparison",component:B,parameters:{layout:"padded"}},e=[{id:"basic",name:"Basic",sku:"FIBER-100",description:"For light internet users",monthlyPrice:2980,href:"/services/internet/basic"},{id:"standard",name:"Standard",sku:"FIBER-500",description:"Most popular choice",monthlyPrice:4980,isRecommended:!0,href:"/services/internet/standard"},{id:"premium",name:"Premium",sku:"FIBER-1G",description:"For power users",monthlyPrice:7980,oneTimePrice:0,badge:"Best Speed",href:"/services/internet/premium"}],r=[{id:"speed",name:"Download Speed",values:["100 Mbps","500 Mbps","1 Gbps"]},{id:"upload",name:"Upload Speed",values:["50 Mbps","200 Mbps","500 Mbps"]},{id:"data",name:"Unlimited Data",values:[!0,!0,!0]},{id:"router",name:"Free Router",values:[!1,!0,!0]},{id:"support",name:"Priority Support",values:[!1,!1,!0]},{id:"static-ip",name:"Static IP",values:[!1,!1,!0]}],s={args:{products:e,features:r,variant:"table"}},a={args:{products:e,features:r,variant:"cards"}},t={args:{products:e,features:r,title:"Choose Your Internet Plan",description:"Compare our plans side by side to find the perfect fit.",variant:"table"}},o={args:{products:e,features:r,showPricing:!1,variant:"cards"}},n={args:{products:e,features:r,showActions:!1,variant:"table"}},i={args:{products:e.slice(0,2),features:r,maxColumns:2,variant:"cards"}};var c,p,u;s.parameters={...s.parameters,docs:{...(c=s.parameters)==null?void 0:c.docs,source:{originalSource:`{ + args: { + products: sampleProducts, + features: sampleFeatures, + variant: "table" + } +}`,...(u=(p=s.parameters)==null?void 0:p.docs)==null?void 0:u.source}}};var d,m,l;a.parameters={...a.parameters,docs:{...(d=a.parameters)==null?void 0:d.docs,source:{originalSource:`{ + args: { + products: sampleProducts, + features: sampleFeatures, + variant: "cards" + } +}`,...(l=(m=a.parameters)==null?void 0:m.docs)==null?void 0:l.source}}};var f,P,g;t.parameters={...t.parameters,docs:{...(f=t.parameters)==null?void 0:f.docs,source:{originalSource:`{ + args: { + products: sampleProducts, + features: sampleFeatures, + title: "Choose Your Internet Plan", + description: "Compare our plans side by side to find the perfect fit.", + variant: "table" + } +}`,...(g=(P=t.parameters)==null?void 0:P.docs)==null?void 0:g.source}}};var v,b,h;o.parameters={...o.parameters,docs:{...(v=o.parameters)==null?void 0:v.docs,source:{originalSource:`{ + args: { + products: sampleProducts, + features: sampleFeatures, + showPricing: false, + variant: "cards" + } +}`,...(h=(b=o.parameters)==null?void 0:b.docs)==null?void 0:h.source}}};var F,S,w;n.parameters={...n.parameters,docs:{...(F=n.parameters)==null?void 0:F.docs,source:{originalSource:`{ + args: { + products: sampleProducts, + features: sampleFeatures, + showActions: false, + variant: "table" + } +}`,...(w=(S=n.parameters)==null?void 0:S.docs)==null?void 0:w.source}}};var C,y,T;i.parameters={...i.parameters,docs:{...(C=i.parameters)==null?void 0:C.docs,source:{originalSource:`{ + args: { + products: sampleProducts.slice(0, 2), + features: sampleFeatures, + maxColumns: 2, + variant: "cards" + } +}`,...(T=(y=i.parameters)==null?void 0:y.docs)==null?void 0:T.source}}};const q=["TableView","CardView","WithCustomTitle","NoPricing","NoActions","TwoProducts"];export{a as CardView,n as NoActions,o as NoPricing,s as TableView,i as TwoProducts,t as WithCustomTitle,q as __namedExportsOrder,j as default}; diff --git a/apps/portal/public/storybook/assets/ProfileLoadingSkeleton.stories-BU-PWcFX.js b/apps/portal/public/storybook/assets/ProfileLoadingSkeleton.stories-BU-PWcFX.js new file mode 100644 index 00000000..cbe59667 --- /dev/null +++ b/apps/portal/public/storybook/assets/ProfileLoadingSkeleton.stories-BU-PWcFX.js @@ -0,0 +1,2 @@ +import{j as s}from"./jsx-runtime-D_zvdyIk.js";import{S as e}from"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./button-C8_cybvS.js";import"./index-JhL3uwfD.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./spinner-mU4XywER.js";import"./input-BbGJiz0K.js";import"./password-input-D4khGh8v.js";import"./createLucideIcon-CctB0W3q.js";import"./checkbox-DahUyQbt.js";import"./label-C25VH7yk.js";import"./error-message-DeFFz6H_.js";import"./ExclamationCircleIcon-jFfW0Ax_.js";import"./status-pill-wWp9xkwA.js";import"./badge-BdMsasyi.js";import"./loading-overlay-DMJTiFny.js";import"./error-state-BSicqqE6.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./ArrowPathIcon-CZjG6RfV.js";import"./empty-state-DRUGJ9ip.js";import"./PlusIcon-DGufmf06.js";import"./inline-toast-DQJ-O9wc.js";import"./index-CNXKWNLp.js";import"./proxy-ZkTvaR74.js";import"./logo-f0fprTjz.js";import"./next-image-69WeRggt.js";import"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./Squares2X2Icon-BMQM_Wy1.js";import"./animated-container-DyAZ9gmw.js";function o(){return s.jsxs("div",{className:"space-y-8",children:[s.jsxs("div",{className:"bg-card border border-border rounded-xl shadow-[var(--cp-shadow-1)]",children:[s.jsx("div",{className:"px-6 py-5 border-b border-border",children:s.jsxs("div",{className:"flex items-center justify-between",children:[s.jsxs("div",{className:"flex items-center space-x-3",children:[s.jsx("div",{className:"h-6 w-6 bg-muted rounded"}),s.jsx("div",{className:"h-6 w-40 bg-muted rounded"})]}),s.jsx("div",{className:"h-8 w-20 bg-muted rounded"})]})}),s.jsxs("div",{className:"p-6",children:[s.jsxs("div",{className:"grid grid-cols-1 gap-8 sm:grid-cols-2",children:[Array.from({length:4}).map((c,m)=>s.jsxs("div",{className:"space-y-2",children:[s.jsx(e,{className:"h-4 w-24"}),s.jsx(e,{className:"h-10 w-full"})]},m)),s.jsxs("div",{className:"sm:col-span-2",children:[s.jsx(e,{className:"h-4 w-28 mb-3"}),s.jsxs("div",{className:"bg-card rounded-lg p-4 border border-border shadow-sm",children:[s.jsxs("div",{className:"flex items-center justify-between",children:[s.jsx(e,{className:"h-5 w-48"}),s.jsx(e,{className:"h-5 w-24"})]}),s.jsx(e,{className:"h-3 w-64 mt-2"})]})]})]}),s.jsxs("div",{className:"flex items-center justify-end space-x-3 pt-6 border-t border-border mt-6",children:[s.jsx(e,{className:"h-9 w-24"}),s.jsx(e,{className:"h-9 w-28"})]})]})]}),s.jsxs("div",{className:"bg-card border border-border rounded-xl shadow-[var(--cp-shadow-1)]",children:[s.jsx("div",{className:"px-6 py-5 border-b border-border",children:s.jsxs("div",{className:"flex items-center justify-between",children:[s.jsxs("div",{className:"flex items-center space-x-3",children:[s.jsx("div",{className:"h-6 w-6 bg-muted rounded"}),s.jsx("div",{className:"h-6 w-48 bg-muted rounded"})]}),s.jsx("div",{className:"h-8 w-20 bg-muted rounded"})]})}),s.jsxs("div",{className:"p-6",children:[s.jsx("div",{className:"bg-card rounded-lg p-4 border border-border shadow-sm",children:s.jsxs("div",{className:"space-y-2",children:[s.jsx(e,{className:"h-4 w-60"}),s.jsx(e,{className:"h-4 w-48"}),s.jsx(e,{className:"h-4 w-52"}),s.jsx(e,{className:"h-4 w-32"})]})}),s.jsxs("div",{className:"flex items-center justify-end space-x-3 pt-6",children:[s.jsx(e,{className:"h-9 w-24"}),s.jsx(e,{className:"h-9 w-28"})]})]})]}),s.jsxs("div",{className:"bg-card border border-border rounded-xl shadow-[var(--cp-shadow-1)]",children:[s.jsx("div",{className:"px-6 py-5 border-b border-border",children:s.jsxs("div",{className:"flex items-center justify-between",children:[s.jsxs("div",{className:"flex items-center space-x-3",children:[s.jsx("div",{className:"h-6 w-6 bg-muted rounded"}),s.jsx("div",{className:"h-6 w-40 bg-muted rounded"})]}),s.jsx(e,{className:"h-6 w-20"})]})}),s.jsx("div",{className:"p-6",children:s.jsxs("div",{className:"space-y-3",children:[s.jsx(e,{className:"h-4 w-48"}),s.jsx(e,{className:"h-4 w-32"})]})})]})]})}o.__docgenInfo={description:`Loading skeleton displayed while profile data is being fetched. +Matches the layout of PersonalInfoCard, AddressCard, and VerificationCard.`,methods:[],displayName:"ProfileLoadingSkeleton"};const Q={title:"Features/Account/ProfileLoadingSkeleton",component:o,parameters:{layout:"padded"}},r={};var a,d,i;r.parameters={...r.parameters,docs:{...(a=r.parameters)==null?void 0:a.docs,source:{originalSource:"{}",...(i=(d=r.parameters)==null?void 0:d.docs)==null?void 0:i.source}}};const T=["Default"];export{r as Default,T as __namedExportsOrder,Q as default}; diff --git a/apps/portal/public/storybook/assets/ProgressIndicator-zQZ52Xi8.js b/apps/portal/public/storybook/assets/ProgressIndicator-zQZ52Xi8.js new file mode 100644 index 00000000..a99934cc --- /dev/null +++ b/apps/portal/public/storybook/assets/ProgressIndicator-zQZ52Xi8.js @@ -0,0 +1,2 @@ +import{j as t}from"./jsx-runtime-D_zvdyIk.js";import{c as n}from"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";function a({currentStep:r,totalSteps:s}){return t.jsx("div",{className:"flex items-center gap-1.5 mb-6",children:Array.from({length:s}).map((i,e)=>t.jsx("div",{className:n("h-1 rounded-full transition-all duration-500",ee.jsxs("div",{className:"flex items-center flex-shrink-0",children:[e.jsxs("div",{className:"flex flex-col items-center gap-2",children:[e.jsx("div",{className:`relative flex items-center justify-center w-10 h-10 md:w-12 md:h-12 rounded-full border-2 transition-all duration-200 ease-out ${i(s,t)}`,children:s.completed?e.jsx(d,{className:"w-6 h-6 md:w-7 md:h-7 transition-all duration-150"}):e.jsx("span",{className:"font-bold text-sm md:text-base transition-all duration-150",children:s.number})}),e.jsx("span",{className:`text-xs md:text-sm font-medium text-center transition-all duration-150 max-w-[80px] md:max-w-none ${l(s,t)}`,children:s.title})]}),n({...i,completed:!0}))}};var s,n,a;e.parameters={...e.parameters,docs:{...(s=e.parameters)==null?void 0:s.docs,source:{originalSource:`{ + args: { + steps, + currentStep: 1 + } +}`,...(a=(n=e.parameters)==null?void 0:n.docs)==null?void 0:a.source}}};var o,l,m;t.parameters={...t.parameters,docs:{...(o=t.parameters)==null?void 0:o.docs,source:{originalSource:`{ + args: { + steps: [{ + number: 1, + title: "Plan", + completed: true + }, { + number: 2, + title: "Details", + completed: true + }, { + number: 3, + title: "Review", + completed: false + }, { + number: 4, + title: "Payment", + completed: false + }], + currentStep: 3 + } +}`,...(m=(l=t.parameters)==null?void 0:l.docs)==null?void 0:m.source}}};var p,c,u;r.parameters={...r.parameters,docs:{...(p=r.parameters)==null?void 0:p.docs,source:{originalSource:`{ + args: { + steps: steps.map(s => ({ + ...s, + completed: true + })) + } +}`,...(u=(c=r.parameters)==null?void 0:c.docs)==null?void 0:u.source}}};const A=["AtStart","InProgress","AllComplete"];export{r as AllComplete,e as AtStart,t as InProgress,A as __namedExportsOrder,y as default}; diff --git a/apps/portal/public/storybook/assets/PublicOfferingCard.stories-_cAv-Hmi.js b/apps/portal/public/storybook/assets/PublicOfferingCard.stories-_cAv-Hmi.js new file mode 100644 index 00000000..44774fe3 --- /dev/null +++ b/apps/portal/public/storybook/assets/PublicOfferingCard.stories-_cAv-Hmi.js @@ -0,0 +1,86 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{r as R}from"./index-JhL3uwfD.js";import{B as T}from"./button-C8_cybvS.js";import{C as J}from"./CardBadge-CfIpSSwP.js";import{c}from"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import{H as X}from"./house-pESumjO8.js";import{B as Y}from"./building-2-C7pcwIk2.js";import{C as K}from"./chevron-up-xeH5nNuh.js";import{C as Q}from"./chevron-down-CuGyZVZ6.js";import{I as W}from"./info-Ck405yVi.js";import{X as Z}from"./x-gzkF7O9v.js";import{S as ee}from"./sparkles-q054t7ye.js";import{C as te}from"./check-DmNqM64J.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./spinner-mU4XywER.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./createLucideIcon-CctB0W3q.js";const N="border-border/60 bg-card",re={Silver:{card:N,accent:"text-muted-foreground",leftBorder:"border-l-slate-400"},Gold:{card:N,accent:"text-amber-600",leftBorder:"border-l-amber-500"},Platinum:{card:N,accent:"text-primary",leftBorder:"border-l-primary"}};function se({onClose:t}){return e.jsxs("div",{className:"bg-info-soft/30 border border-info/15 rounded-lg p-3.5 mb-4",children:[e.jsxs("div",{className:"flex items-start justify-between gap-3 mb-2.5",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(W,{className:"h-4 w-4 text-info flex-shrink-0"}),e.jsx("h4",{className:"font-semibold text-xs text-foreground",children:"Why does speed vary by building?"})]}),e.jsx("button",{type:"button",onClick:t,className:"text-muted-foreground hover:text-foreground transition-colors",children:e.jsx(Z,{className:"h-3.5 w-3.5"})})]}),e.jsxs("div",{className:"space-y-2.5 text-[11px] text-muted-foreground",children:[e.jsx("p",{children:"Apartment buildings in Japan have different fiber infrastructure installed by NTT. Your available speed depends on what your building supports:"}),e.jsxs("div",{className:"grid gap-1.5",children:[e.jsxs("div",{className:"flex gap-2",children:[e.jsx("span",{className:"font-semibold text-foreground whitespace-nowrap",children:"FTTH (1Gbps)"}),e.jsx("span",{children:"— Fiber directly to your unit. Fastest option, available in newer buildings."})]}),e.jsxs("div",{className:"flex gap-2",children:[e.jsx("span",{className:"font-semibold text-foreground whitespace-nowrap",children:"VDSL (100Mbps)"}),e.jsx("span",{children:"— Fiber to building, then phone line to your unit. Most common in older buildings."})]}),e.jsxs("div",{className:"flex gap-2",children:[e.jsx("span",{className:"font-semibold text-foreground whitespace-nowrap",children:"LAN (100Mbps)"}),e.jsx("span",{children:"— Fiber to building, then ethernet to your unit. Common in some mansion types."})]})]}),e.jsx("p",{className:"text-foreground font-medium pt-0.5",children:"Good news: All types have the same monthly price (¥4,800~). We'll check what's available at your address."})]})]})}function ae({tier:t}){const r=re[t.tier];return e.jsxs("div",{className:c("rounded-lg border border-l-4 p-3 transition-all duration-200 flex flex-col relative",r.card,r.leftBorder),children:[t.tier==="Gold"&&e.jsx("div",{className:"absolute -top-2.5 left-1/2 -translate-x-1/2",children:e.jsxs("span",{className:"inline-flex items-center gap-1 px-2 py-0.5 rounded-full bg-amber-500 text-white text-[10px] font-semibold shadow-sm",children:[e.jsx(ee,{className:"h-2.5 w-2.5"}),"Popular"]})}),e.jsx("div",{className:c("flex items-center gap-2 mb-2",t.tier==="Gold"?"mt-1":""),children:e.jsx("span",{className:c("font-semibold text-xs",r.accent),children:t.tier})}),e.jsxs("div",{className:"mb-2",children:[e.jsxs("span",{className:"text-lg font-bold text-foreground",children:["¥",t.monthlyPrice.toLocaleString(),t.maxMonthlyPrice&&t.maxMonthlyPrice>t.monthlyPrice&&`~${t.maxMonthlyPrice.toLocaleString()}`]}),e.jsx("span",{className:"text-[10px] text-muted-foreground",children:"/mo"}),t.pricingNote&&e.jsx("span",{className:c("text-[10px] ml-0.5",t.tier==="Platinum"?"text-primary":"text-amber-600"),children:t.pricingNote})]}),e.jsx("p",{className:"text-[11px] text-muted-foreground mb-2",children:t.description}),e.jsx("ul",{className:"space-y-1 flex-grow",children:t.features.slice(0,3).map((s,a)=>e.jsxs("li",{className:"flex items-start gap-1.5 text-[11px]",children:[e.jsx(te,{className:"h-3 w-3 text-primary/60 flex-shrink-0 mt-0.5"}),e.jsx("span",{className:"text-muted-foreground leading-relaxed",children:s})]},a))})]})}function ie({tiers:t,setupFee:r,showConnectionInfo:s,ctaPath:a,customCtaLabel:o,onCtaClick:i}){const[d,l]=R.useState(!1);return e.jsxs("div",{className:"border-t border-border/60 px-4 py-4 bg-muted/5",children:[s&&!d&&e.jsxs("button",{type:"button",onClick:()=>l(!0),className:"flex items-center gap-1.5 text-[11px] text-info hover:text-info/80 transition-colors mb-3",children:[e.jsx(W,{className:"h-3.5 w-3.5"}),e.jsx("span",{children:"Why does speed vary by building?"})]}),s&&d&&e.jsx(se,{onClose:()=>l(!1)}),e.jsx("div",{className:"grid grid-cols-1 sm:grid-cols-3 gap-3 mb-4",children:t.map(n=>e.jsx(ae,{tier:n},n.tier))}),e.jsxs("div",{className:"flex flex-col sm:flex-row items-stretch sm:items-center gap-3 pt-2.5 border-t border-border/40",children:[e.jsxs("p",{className:"text-[11px] text-muted-foreground flex-1",children:[e.jsxs("span",{className:"font-semibold text-foreground",children:["+ ¥",r.toLocaleString()," one-time setup"]})," ","(or 12/24-month installment)"]}),i?e.jsx(T,{as:"button",onClick:i,size:"sm",className:"whitespace-nowrap",children:o??"Check availability"}):e.jsx(T,{as:"a",href:a,size:"sm",className:"whitespace-nowrap",children:o??"Check availability"})]})]})}function ne({title:t,speedBadge:r,description:s,iconType:a,startingPrice:o,maxPrice:i,isPremium:d,isExpanded:l,onToggle:n}){const y=a==="home"?X:Y;return e.jsxs("button",{type:"button",onClick:n,className:"w-full p-4 flex items-start justify-between gap-3 text-left hover:bg-muted/10 transition-colors",children:[e.jsxs("div",{className:"flex items-start gap-3",children:[e.jsx("div",{className:c("flex h-9 w-9 items-center justify-center rounded-lg flex-shrink-0",a==="home"?"bg-sky-500/10 text-sky-600":"bg-emerald-500/10 text-emerald-600"),children:e.jsx(y,{className:"h-4.5 w-4.5"})}),e.jsxs("div",{className:"space-y-0.5",children:[e.jsxs("div",{className:"flex flex-wrap items-center gap-1.5",children:[e.jsx("h3",{className:"text-sm font-bold text-foreground",children:t}),e.jsx(J,{text:r,variant:d?"new":"default",size:"sm"}),d&&e.jsx("span",{className:"text-[10px] text-muted-foreground",children:"(select areas)"})]}),e.jsx("p",{className:"text-xs text-muted-foreground",children:s}),e.jsxs("div",{className:"flex items-baseline gap-0.5 pt-0.5",children:[e.jsx("span",{className:"text-[10px] text-muted-foreground",children:"From"}),e.jsxs("span",{className:"text-base font-bold text-foreground",children:["¥",o.toLocaleString(),i&&i>o&&`~${i.toLocaleString()}`]}),e.jsx("span",{className:"text-xs text-muted-foreground",children:"/mo"})]})]})]}),e.jsxs("div",{className:"flex items-center gap-1 flex-shrink-0 mt-1",children:[e.jsx("span",{className:"text-[10px] text-muted-foreground hidden sm:inline",children:l?"Hide":"View tiers"}),l?e.jsx(K,{className:"h-4 w-4 text-muted-foreground"}):e.jsx(Q,{className:"h-4 w-4 text-muted-foreground"})]})]})}function U({title:t,speedBadge:r,description:s,iconType:a,startingPrice:o,maxPrice:i,setupFee:d,tiers:l,isPremium:n=!1,ctaPath:y,defaultExpanded:_=!1,showConnectionInfo:V=!1,customCtaLabel:z,onCtaClick:D}){const[p,$]=R.useState(_);return e.jsxs("div",{className:c("rounded-xl border bg-card overflow-hidden transition-all duration-300",p?"shadow-md ring-1 ring-primary/15":"hover:shadow-sm",n?"border-primary/25":"border-border/60"),children:[e.jsx("div",{className:c("h-0.5 w-full",n?"bg-gradient-to-r from-sky-500 to-blue-600":"bg-gradient-to-r from-sky-400 to-blue-500")}),e.jsx(ne,{title:t,speedBadge:r,description:s,iconType:a,startingPrice:o,maxPrice:i,isPremium:n,isExpanded:p,onToggle:()=>$(!p)}),p&&e.jsx(ie,{tiers:l,setupFee:d,showConnectionInfo:V,ctaPath:y,customCtaLabel:z,onCtaClick:D})]})}U.__docgenInfo={description:"",methods:[],displayName:"PublicOfferingCard",props:{offeringType:{required:!0,tsType:{name:"string"},description:""},title:{required:!0,tsType:{name:"string"},description:""},speedBadge:{required:!0,tsType:{name:"string"},description:""},description:{required:!0,tsType:{name:"string"},description:""},iconType:{required:!0,tsType:{name:"union",raw:'"home" | "apartment"',elements:[{name:"literal",value:'"home"'},{name:"literal",value:'"apartment"'}]},description:""},startingPrice:{required:!0,tsType:{name:"number"},description:""},maxPrice:{required:!1,tsType:{name:"number"},description:"Maximum price for showing price range"},setupFee:{required:!0,tsType:{name:"number"},description:""},tiers:{required:!0,tsType:{name:"Array",elements:[{name:"TierInfo"}],raw:"TierInfo[]"},description:""},isPremium:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"false",computed:!1}},ctaPath:{required:!0,tsType:{name:"string"},description:""},defaultExpanded:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"false",computed:!1}},showConnectionInfo:{required:!1,tsType:{name:"boolean"},description:"Show info tooltip explaining connection types (for Apartment)",defaultValue:{value:"false",computed:!1}},customCtaLabel:{required:!1,tsType:{name:"string"},description:""},onCtaClick:{required:!1,tsType:{name:"signature",type:"function",raw:"(e: React.MouseEvent) => void",signature:{arguments:[{type:{name:"ReactMouseEvent",raw:"React.MouseEvent"},name:"e"}],return:{name:"void"}}},description:""}}};const m=[{tier:"Silver",monthlyPrice:4800,description:"Bring your own router",features:["NTT modem included","Self-configure your router","PPPoE or IPoE"]},{tier:"Gold",monthlyPrice:6800,description:"Everything included",features:["NTT modem included","WiFi router included","ISP pre-configured"]},{tier:"Platinum",monthlyPrice:9800,description:"Custom mesh network",features:["Custom mesh network","Netgear INSIGHT routers","Professional setup"],pricingNote:"+ device fees"}],Ce={title:"Features/Services/Internet/PublicOfferingCard",component:U,parameters:{layout:"centered"}},u={args:{offeringType:"Home 1G",title:"Home 1Gbps",speedBadge:"1Gbps",description:"NTT Flet's Hikari Next for residential homes",iconType:"home",startingPrice:4800,setupFee:22800,tiers:m,ctaPath:"/internet"}},f={args:{offeringType:"Home 1G",title:"Home 1Gbps",speedBadge:"1Gbps",description:"NTT Flet's Hikari Next for residential homes",iconType:"home",startingPrice:4800,setupFee:22800,tiers:m,ctaPath:"/internet",defaultExpanded:!0}},x={args:{offeringType:"Apartment 1G",title:"Apartment 1Gbps",speedBadge:"Up to 1Gbps",description:"NTT Flet's Hikari Next for apartment buildings",iconType:"apartment",startingPrice:4800,setupFee:22800,tiers:m,ctaPath:"/internet",defaultExpanded:!0,showConnectionInfo:!0}},g={args:{offeringType:"Home 10G",title:"Home 10Gbps",speedBadge:"10Gbps",description:"Ultra-fast fiber for power users",iconType:"home",startingPrice:7800,setupFee:22800,tiers:m,isPremium:!0,ctaPath:"/internet",defaultExpanded:!0}},h={args:{offeringType:"Apartment 1G",title:"Apartment 1Gbps",speedBadge:"Up to 1Gbps",description:"NTT Flet's Hikari Next for apartment buildings",iconType:"apartment",startingPrice:4800,maxPrice:6800,setupFee:22800,tiers:m.map(t=>({...t,maxMonthlyPrice:t.monthlyPrice+500})),ctaPath:"/internet",defaultExpanded:!0}},b={args:{offeringType:"Home 1G",title:"Home 1Gbps",speedBadge:"1Gbps",description:"NTT Flet's Hikari Next for residential homes",iconType:"home",startingPrice:4800,setupFee:22800,tiers:m,ctaPath:"/internet",defaultExpanded:!0,customCtaLabel:"Get started",onCtaClick:()=>{}}};var j,P,v;u.parameters={...u.parameters,docs:{...(j=u.parameters)==null?void 0:j.docs,source:{originalSource:`{ + args: { + offeringType: "Home 1G", + title: "Home 1Gbps", + speedBadge: "1Gbps", + description: "NTT Flet's Hikari Next for residential homes", + iconType: "home", + startingPrice: 4800, + setupFee: 22800, + tiers: mockTiers, + ctaPath: "/internet" + } +}`,...(v=(P=u.parameters)==null?void 0:P.docs)==null?void 0:v.source}}};var w,G,C;f.parameters={...f.parameters,docs:{...(w=f.parameters)==null?void 0:w.docs,source:{originalSource:`{ + args: { + offeringType: "Home 1G", + title: "Home 1Gbps", + speedBadge: "1Gbps", + description: "NTT Flet's Hikari Next for residential homes", + iconType: "home", + startingPrice: 4800, + setupFee: 22800, + tiers: mockTiers, + ctaPath: "/internet", + defaultExpanded: true + } +}`,...(C=(G=f.parameters)==null?void 0:G.docs)==null?void 0:C.source}}};var k,H,F;x.parameters={...x.parameters,docs:{...(k=x.parameters)==null?void 0:k.docs,source:{originalSource:`{ + args: { + offeringType: "Apartment 1G", + title: "Apartment 1Gbps", + speedBadge: "Up to 1Gbps", + description: "NTT Flet's Hikari Next for apartment buildings", + iconType: "apartment", + startingPrice: 4800, + setupFee: 22800, + tiers: mockTiers, + ctaPath: "/internet", + defaultExpanded: true, + showConnectionInfo: true + } +}`,...(F=(H=x.parameters)==null?void 0:H.docs)==null?void 0:F.source}}};var E,S,B;g.parameters={...g.parameters,docs:{...(E=g.parameters)==null?void 0:E.docs,source:{originalSource:`{ + args: { + offeringType: "Home 10G", + title: "Home 10Gbps", + speedBadge: "10Gbps", + description: "Ultra-fast fiber for power users", + iconType: "home", + startingPrice: 7800, + setupFee: 22800, + tiers: mockTiers, + isPremium: true, + ctaPath: "/internet", + defaultExpanded: true + } +}`,...(B=(S=g.parameters)==null?void 0:S.docs)==null?void 0:B.source}}};var I,A,q;h.parameters={...h.parameters,docs:{...(I=h.parameters)==null?void 0:I.docs,source:{originalSource:`{ + args: { + offeringType: "Apartment 1G", + title: "Apartment 1Gbps", + speedBadge: "Up to 1Gbps", + description: "NTT Flet's Hikari Next for apartment buildings", + iconType: "apartment", + startingPrice: 4800, + maxPrice: 6800, + setupFee: 22800, + tiers: mockTiers.map(t => ({ + ...t, + maxMonthlyPrice: t.monthlyPrice + 500 + })), + ctaPath: "/internet", + defaultExpanded: true + } +}`,...(q=(A=h.parameters)==null?void 0:A.docs)==null?void 0:q.source}}};var M,L,O;b.parameters={...b.parameters,docs:{...(M=b.parameters)==null?void 0:M.docs,source:{originalSource:`{ + args: { + offeringType: "Home 1G", + title: "Home 1Gbps", + speedBadge: "1Gbps", + description: "NTT Flet's Hikari Next for residential homes", + iconType: "home", + startingPrice: 4800, + setupFee: 22800, + tiers: mockTiers, + ctaPath: "/internet", + defaultExpanded: true, + customCtaLabel: "Get started", + onCtaClick: () => {} + } +}`,...(O=(L=b.parameters)==null?void 0:L.docs)==null?void 0:O.source}}};const ke=["HomeCollapsed","HomeExpanded","ApartmentWithConnectionInfo","PremiumOffering","WithPriceRange","CustomCtaLabel"];export{x as ApartmentWithConnectionInfo,b as CustomCtaLabel,u as HomeCollapsed,f as HomeExpanded,g as PremiumOffering,h as WithPriceRange,ke as __namedExportsOrder,Ce as default}; diff --git a/apps/portal/public/storybook/assets/QueryClientProvider-D7wSf7Op.js b/apps/portal/public/storybook/assets/QueryClientProvider-D7wSf7Op.js new file mode 100644 index 00000000..00c08899 --- /dev/null +++ b/apps/portal/public/storybook/assets/QueryClientProvider-D7wSf7Op.js @@ -0,0 +1 @@ +var O=t=>{throw TypeError(t)};var S=(t,e,r)=>e.has(t)||O("Cannot "+r);var h=(t,e,r)=>(S(t,e,"read from private field"),r?r.call(t):e.get(t)),m=(t,e,r)=>e.has(t)?O("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(t):e.set(t,r),j=(t,e,r,s)=>(S(t,e,"write to private field"),s?s.call(t,r):e.set(t,r),r);import{r as C}from"./index-JhL3uwfD.js";import"./jsx-runtime-D_zvdyIk.js";var D=class{constructor(){this.listeners=new Set,this.subscribe=this.subscribe.bind(this)}subscribe(t){return this.listeners.add(t),this.onSubscribe(),()=>{this.listeners.delete(t),this.onUnsubscribe()}}hasListeners(){return this.listeners.size>0}onSubscribe(){}onUnsubscribe(){}},k={setTimeout:(t,e)=>setTimeout(t,e),clearTimeout:t=>clearTimeout(t),setInterval:(t,e)=>setInterval(t,e),clearInterval:t=>clearInterval(t)},o,v,w,x=(w=class{constructor(){m(this,o,k);m(this,v,!1)}setTimeoutProvider(t){j(this,o,t)}setTimeout(t,e){return h(this,o).setTimeout(t,e)}clearTimeout(t){h(this,o).clearTimeout(t)}setInterval(t,e){return h(this,o).setInterval(t,e)}clearInterval(t){h(this,o).clearInterval(t)}},o=new WeakMap,v=new WeakMap,w),U=new x;function N(t){setTimeout(t,0)}var B=typeof window>"u"||"Deno"in globalThis;function J(){}function K(t){return typeof t=="number"&&t>=0&&t!==1/0}function L(t,e){return Math.max(t+(e||0)-Date.now(),0)}function V(t,e){return typeof t=="function"?t(e):t}function Z(t,e){return typeof t=="function"?t(e):t}function _(t){return JSON.stringify(t,(e,r)=>d(r)?Object.keys(r).sort().reduce((s,u)=>(s[u]=r[u],s),{}):r)}var q=Object.prototype.hasOwnProperty;function P(t,e,r=0){if(t===e)return t;if(r>500)return e;const s=I(t)&&I(e);if(!s&&!(d(t)&&d(e)))return e;const c=(s?t:Object.keys(t)).length,b=s?e:Object.keys(e),n=b.length,i=s?new Array(n):{};let p=0;for(let f=0;f{n()},s=n=>{n()},u=E;const c=n=>{e?t.push(n):u(()=>{r(n)})},b=()=>{const n=t;t=[],n.length&&u(()=>{s(()=>{n.forEach(i=>{r(i)})})})};return{batch:n=>{let i;e++;try{i=n()}finally{e--,e||b()}return i},batchCalls:n=>(...i)=>{c(()=>{n(...i)})},schedule:c,setNotifyFunction:n=>{r=n},setBatchNotifyFunction:n=>{s=n},setScheduler:n=>{u=n}}}var W=F(),M=C.createContext(void 0),X=t=>{const e=C.useContext(M);if(!e)throw new Error("No QueryClient set, use QueryClientProvider to set one");return e};export{D as S,J as a,R as b,V as c,K as d,U as e,H as f,_ as h,B as i,W as n,Z as r,G as s,L as t,X as u}; diff --git a/apps/portal/public/storybook/assets/QuickAction.stories-CaLW2ODx.js b/apps/portal/public/storybook/assets/QuickAction.stories-CaLW2ODx.js new file mode 100644 index 00000000..f4c16e82 --- /dev/null +++ b/apps/portal/public/storybook/assets/QuickAction.stories-CaLW2ODx.js @@ -0,0 +1,28 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{L as S}from"./next-link-BmD4fPSy.js";import{F as v}from"./ArrowRightIcon--Vuz7Q7x.js";import{F as C}from"./CreditCardIcon-BBdrpHQs.js";import{F as w}from"./Squares2X2Icon-BMQM_Wy1.js";import{F as j}from"./ChatBubbleLeftRightIcon-DfYi9O0H.js";import"./index-JhL3uwfD.js";function g({href:n,title:x,description:f,icon:b,iconColor:h,bgColor:y}){return e.jsxs(S,{href:n,className:"flex items-center p-4 rounded-xl border border-transparent hover:border-border/60 hover:bg-muted/50 transition-all duration-200 group",children:[e.jsx("div",{className:`flex-shrink-0 p-2.5 rounded-xl ${y} border border-primary/10`,children:e.jsx(b,{className:`h-5 w-5 ${h}`})}),e.jsxs("div",{className:"ml-4 flex-1 min-w-0",children:[e.jsx("p",{className:"text-sm font-semibold text-foreground group-hover:text-primary transition-colors",children:x}),e.jsx("p",{className:"text-xs text-muted-foreground mt-0.5 leading-relaxed",children:f})]}),e.jsx(v,{className:"h-4 w-4 text-muted-foreground/50 group-hover:text-primary group-hover:translate-x-0.5 transition-all"})]})}g.__docgenInfo={description:"",methods:[],displayName:"QuickAction",props:{href:{required:!0,tsType:{name:"string"},description:""},title:{required:!0,tsType:{name:"string"},description:""},description:{required:!0,tsType:{name:"string"},description:""},icon:{required:!0,tsType:{name:"ReactComponentType",raw:"React.ComponentType>",elements:[{name:"ReactSVGProps",raw:"React.SVGProps",elements:[{name:"SVGSVGElement"}]}]},description:""},iconColor:{required:!0,tsType:{name:"string"},description:""},bgColor:{required:!0,tsType:{name:"string"},description:""}}};const T={title:"Features/Dashboard/QuickAction",component:g,parameters:{layout:"centered"},decorators:[n=>e.jsx("div",{style:{width:400},children:e.jsx(n,{})})]},r={args:{href:"/account/billing",title:"Pay Invoice",description:"View and pay your outstanding invoices",icon:C,iconColor:"text-primary",bgColor:"bg-primary/10"}},o={args:{href:"/account/services",title:"Browse Services",description:"Explore available internet and SIM plans",icon:w,iconColor:"text-info",bgColor:"bg-info/10"}},t={args:{href:"/account/support",title:"Get Support",description:"Open a support case or check existing tickets",icon:j,iconColor:"text-warning",bgColor:"bg-warning/10"}};var i,s,a;r.parameters={...r.parameters,docs:{...(i=r.parameters)==null?void 0:i.docs,source:{originalSource:`{ + args: { + href: "/account/billing", + title: "Pay Invoice", + description: "View and pay your outstanding invoices", + icon: CreditCardIcon, + iconColor: "text-primary", + bgColor: "bg-primary/10" + } +}`,...(a=(s=r.parameters)==null?void 0:s.docs)==null?void 0:a.source}}};var c,p,d;o.parameters={...o.parameters,docs:{...(c=o.parameters)==null?void 0:c.docs,source:{originalSource:`{ + args: { + href: "/account/services", + title: "Browse Services", + description: "Explore available internet and SIM plans", + icon: Squares2X2Icon, + iconColor: "text-info", + bgColor: "bg-info/10" + } +}`,...(d=(p=o.parameters)==null?void 0:p.docs)==null?void 0:d.source}}};var l,m,u;t.parameters={...t.parameters,docs:{...(l=t.parameters)==null?void 0:l.docs,source:{originalSource:`{ + args: { + href: "/account/support", + title: "Get Support", + description: "Open a support case or check existing tickets", + icon: ChatBubbleLeftRightIcon, + iconColor: "text-warning", + bgColor: "bg-warning/10" + } +}`,...(u=(m=t.parameters)==null?void 0:m.docs)==null?void 0:u.source}}};const q=["Default","Services","Support"];export{r as Default,o as Services,t as Support,q as __namedExportsOrder,T as default}; diff --git a/apps/portal/public/storybook/assets/ReissueSimModal.stories-CiG8OrwL.js b/apps/portal/public/storybook/assets/ReissueSimModal.stories-CiG8OrwL.js new file mode 100644 index 00000000..49201ff2 --- /dev/null +++ b/apps/portal/public/storybook/assets/ReissueSimModal.stories-CiG8OrwL.js @@ -0,0 +1,17 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{fn as s}from"./index-B9TJ7cVi.js";import{r as c}from"./index-JhL3uwfD.js";import{A as S}from"./AlertBanner-Bnlyj1xc.js";import{B as l}from"./button-C8_cybvS.js";import{F as N}from"./ArrowPathIcon-CZjG6RfV.js";import{F as v}from"./XMarkIcon-Bsb1W5VN.js";import"./XCircleIcon-CiVBnngB.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./InformationCircleIcon-Clz7d-56.js";import"./CheckCircleIcon-Dva35lTP.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./spinner-mU4XywER.js";const w=["The reissue request cannot be reversed.","Service to the existing SIM will be terminated with immediate effect.","A fee of 1,500 yen + tax will be incurred.","For physical SIM: allow approximately 3-5 business days for shipping.","For eSIM: activation typically completes within 30-60 minutes after processing."],I="Enter the 32-digit EID (numbers only). Leave blank to reuse Freebit's generated EID.";function E({selectedSimType:r,onSelect:t}){return e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-muted-foreground",children:"Select SIM type"}),e.jsxs("div",{className:"mt-3 space-y-2",children:[e.jsxs("label",{className:"flex items-start gap-3 rounded-lg border border-border bg-background p-3",children:[e.jsx("input",{type:"radio",name:"sim-type",value:"physical",checked:r==="physical",onChange:()=>t("physical"),className:"mt-1 text-primary focus:ring-ring"}),e.jsxs("div",{children:[e.jsx("p",{className:"text-sm font-medium text-foreground",children:"Physical SIM"}),e.jsx("p",{className:"text-xs text-muted-foreground",children:"We'll ship a replacement SIM card. Currently, online requests are not available; contact support to proceed."})]})]}),e.jsxs("label",{className:"flex items-start gap-3 rounded-lg border border-border bg-background p-3",children:[e.jsx("input",{type:"radio",name:"sim-type",value:"esim",checked:r==="esim",onChange:()=>t("esim"),className:"mt-1 text-primary focus:ring-ring"}),e.jsxs("div",{children:[e.jsx("p",{className:"text-sm font-medium text-foreground",children:"eSIM"}),e.jsx("p",{className:"text-xs text-muted-foreground",children:"Generate a new eSIM activation profile. You'll receive new QR code details once processing completes."})]})]})]})]})}function M({currentSimType:r,onClose:t}){const[a,h]=c.useState(r),[g,b]=c.useState(""),y=a==="esim",j=a==="physical";return e.jsxs("div",{className:"fixed inset-0 z-50 flex items-center justify-center",children:[e.jsx("div",{className:"absolute inset-0 bg-background/70 backdrop-blur-sm","aria-hidden":"true"}),e.jsxs("div",{className:"relative z-10 w-full max-w-2xl rounded-lg border border-border bg-card text-card-foreground shadow-[var(--cp-shadow-3)]",children:[e.jsxs("div",{className:"px-6 pt-6 pb-4 sm:px-8 sm:pb-6",children:[e.jsxs("div",{className:"flex items-start justify-between",children:[e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx("span",{className:"flex h-10 w-10 items-center justify-center rounded-full bg-success-soft border border-success/25",children:e.jsx(N,{className:"h-6 w-6 text-success"})}),e.jsxs("div",{children:[e.jsx("h3",{className:"text-lg font-semibold text-foreground",children:"Reissue SIM"}),e.jsx("p",{className:"text-sm text-muted-foreground",children:"Submit a reissue request for your SIM. Review the important information before continuing."})]})]}),e.jsx("button",{onClick:t,className:"text-muted-foreground transition-colors hover:text-foreground","aria-label":"Close reissue SIM modal",type:"button",children:e.jsx(v,{className:"h-5 w-5"})})]}),e.jsx("div",{className:"mt-6",children:e.jsx(S,{variant:"warning",title:"Important information",elevated:!0,children:e.jsx("ul",{className:"list-disc space-y-1 pl-5 text-sm",children:w.map(o=>e.jsx("li",{children:o},o))})})}),e.jsxs("div",{className:"mt-6 grid gap-6 md:grid-cols-2",children:[e.jsx(E,{selectedSimType:a,onSelect:h}),e.jsxs("div",{className:"rounded-lg border border-border bg-muted/30 p-4 text-sm text-muted-foreground",children:[e.jsxs("p",{children:["Current SIM type: ",e.jsx("strong",{className:"uppercase",children:r})]}),e.jsx("p",{className:"mt-2",children:"The selection above lets you specify which type of replacement you need. If you choose a physical SIM, a support agent will contact you to finalise the process."})]})]}),y&&e.jsxs("div",{className:"mt-6",children:[e.jsx("label",{htmlFor:"new-eid",className:"block text-sm font-medium text-muted-foreground",children:"New EID (optional)"}),e.jsx("input",{id:"new-eid",type:"text",inputMode:"numeric",pattern:"[0-9]*",value:g,onChange:o=>b(o.target.value.replace(/\s+/g,"")),placeholder:"Enter 32-digit EID",className:"mt-1 block w-full rounded-md border border-input bg-background text-foreground px-3 py-2 text-sm shadow-sm focus:border-ring focus:outline-none focus:ring-2 focus:ring-ring"}),e.jsx("p",{className:"mt-1 text-xs text-muted-foreground",children:I})]})]}),e.jsxs("div",{className:"flex flex-col gap-3 border-t border-border bg-muted p-4 sm:flex-row sm:justify-end sm:px-6",children:[e.jsx(l,{type:"button",children:j?"Contact Support":"Confirm Reissue"}),e.jsx(l,{type:"button",onClick:t,variant:"outline",children:"Cancel"})]})]})]})}const Y={title:"Features/Subscriptions/Sim/ReissueSimModal",component:M,parameters:{layout:"centered"}},i={args:{subscriptionId:123,currentSimType:"physical",onClose:s(),onSuccess:s(),onError:s()}},n={args:{subscriptionId:123,currentSimType:"esim",onClose:s(),onSuccess:s(),onError:s()}};var d,m,u;i.parameters={...i.parameters,docs:{...(d=i.parameters)==null?void 0:d.docs,source:{originalSource:`{ + args: { + subscriptionId: 123, + currentSimType: "physical", + onClose: fn(), + onSuccess: fn(), + onError: fn() + } +}`,...(u=(m=i.parameters)==null?void 0:m.docs)==null?void 0:u.source}}};var p,x,f;n.parameters={...n.parameters,docs:{...(p=n.parameters)==null?void 0:p.docs,source:{originalSource:`{ + args: { + subscriptionId: 123, + currentSimType: "esim", + onClose: fn(), + onSuccess: fn(), + onError: fn() + } +}`,...(f=(x=n.parameters)==null?void 0:x.docs)==null?void 0:f.source}}};const $=["PhysicalSim","ESim"];export{n as ESim,i as PhysicalSim,$ as __namedExportsOrder,Y as default}; diff --git a/apps/portal/public/storybook/assets/ResidenceCardUploadInput-CGlBhrJf.js b/apps/portal/public/storybook/assets/ResidenceCardUploadInput-CGlBhrJf.js new file mode 100644 index 00000000..72bf6e3c --- /dev/null +++ b/apps/portal/public/storybook/assets/ResidenceCardUploadInput-CGlBhrJf.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{r as o}from"./index-JhL3uwfD.js";import{B as u}from"./button-C8_cybvS.js";function g({onSubmit:m,isPending:r,isError:f,error:t,submitLabel:c="Submit for review",description:s}){const[n,d]=o.useState(null),i=o.useRef(null),a=()=>{d(null),i.current&&(i.current.value="")},p=()=>{n&&(m(n),a())};return e.jsxs("div",{className:"space-y-3",children:[s&&e.jsx("p",{className:"text-xs text-muted-foreground",children:s}),e.jsx("input",{ref:i,type:"file",accept:"image/*,application/pdf",onChange:x=>{var l;return d(((l=x.target.files)==null?void 0:l[0])??null)},className:"block w-full text-sm text-foreground file:mr-4 file:py-2 file:px-3 file:rounded-md file:border-0 file:text-sm file:font-medium file:bg-muted file:text-foreground hover:file:bg-muted/80"}),n&&e.jsxs("div",{className:"flex items-center justify-between gap-3 rounded-lg border border-border bg-muted/30 px-3 py-2",children:[e.jsxs("div",{className:"min-w-0",children:[e.jsx("div",{className:"text-xs font-medium text-muted-foreground",children:"Selected file"}),e.jsx("div",{className:"text-sm font-medium text-foreground truncate",children:n.name})]}),e.jsx(u,{type:"button",variant:"outline",size:"sm",onClick:a,children:"Change"})]}),e.jsx("div",{className:"flex items-center justify-end",children:e.jsx(u,{type:"button",size:"sm",disabled:!n||r,isLoading:r,loadingText:"Uploading...",onClick:p,children:c})}),f&&t&&e.jsx("div",{className:"text-sm text-destructive",children:t instanceof Error?t.message:"Failed to submit residence card."})]})}g.__docgenInfo={description:"",methods:[],displayName:"ResidenceCardUploadInput",props:{onSubmit:{required:!0,tsType:{name:"signature",type:"function",raw:"(file: File) => void",signature:{arguments:[{type:{name:"File"},name:"file"}],return:{name:"void"}}},description:""},isPending:{required:!0,tsType:{name:"boolean"},description:""},isError:{required:!0,tsType:{name:"boolean"},description:""},error:{required:!1,tsType:{name:"union",raw:"Error | null | undefined",elements:[{name:"Error"},{name:"null"},{name:"undefined"}]},description:""},submitLabel:{required:!1,tsType:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}]},description:"",defaultValue:{value:'"Submit for review"',computed:!1}},description:{required:!1,tsType:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}]},description:""}}};export{g as R}; diff --git a/apps/portal/public/storybook/assets/ResidenceCardUploadInput.stories-lG6nqfJJ.js b/apps/portal/public/storybook/assets/ResidenceCardUploadInput.stories-lG6nqfJJ.js new file mode 100644 index 00000000..2531f14b --- /dev/null +++ b/apps/portal/public/storybook/assets/ResidenceCardUploadInput.stories-lG6nqfJJ.js @@ -0,0 +1,21 @@ +import{j as a}from"./jsx-runtime-D_zvdyIk.js";import{R as L}from"./ResidenceCardUploadInput-CGlBhrJf.js";import{fn as v}from"./index-B9TJ7cVi.js";import"./index-JhL3uwfD.js";import"./button-C8_cybvS.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./spinner-mU4XywER.js";const z={title:"Features/Checkout/ResidenceCardUploadInput",component:L,parameters:{layout:"centered"},decorators:[E=>a.jsx("div",{style:{width:480},children:a.jsx(E,{})})],args:{onSubmit:v(),isPending:!1,isError:!1,error:null}},e={},r={args:{description:"Upload a JPG, PNG, or PDF (max 5MB).",submitLabel:"Submit for review"}},s={args:{isPending:!0,submitLabel:"Submit for review"}},t={args:{isError:!0,error:new Error("File size exceeds the 5MB limit. Please choose a smaller file.")}},o={args:{submitLabel:"Submit replacement",description:"Replacing the file restarts the verification process."}};var i,n,m;e.parameters={...e.parameters,docs:{...(i=e.parameters)==null?void 0:i.docs,source:{originalSource:"{}",...(m=(n=e.parameters)==null?void 0:n.docs)==null?void 0:m.source}}};var c,p,l;r.parameters={...r.parameters,docs:{...(c=r.parameters)==null?void 0:c.docs,source:{originalSource:`{ + args: { + description: "Upload a JPG, PNG, or PDF (max 5MB).", + submitLabel: "Submit for review" + } +}`,...(l=(p=r.parameters)==null?void 0:p.docs)==null?void 0:l.source}}};var u,d,b;s.parameters={...s.parameters,docs:{...(u=s.parameters)==null?void 0:u.docs,source:{originalSource:`{ + args: { + isPending: true, + submitLabel: "Submit for review" + } +}`,...(b=(d=s.parameters)==null?void 0:d.docs)==null?void 0:b.source}}};var g,f,h;t.parameters={...t.parameters,docs:{...(g=t.parameters)==null?void 0:g.docs,source:{originalSource:`{ + args: { + isError: true, + error: new Error("File size exceeds the 5MB limit. Please choose a smaller file.") + } +}`,...(h=(f=t.parameters)==null?void 0:f.docs)==null?void 0:h.source}}};var S,P,x;o.parameters={...o.parameters,docs:{...(S=o.parameters)==null?void 0:S.docs,source:{originalSource:`{ + args: { + submitLabel: "Submit replacement", + description: "Replacing the file restarts the verification process." + } +}`,...(x=(P=o.parameters)==null?void 0:P.docs)==null?void 0:x.source}}};const I=["Default","WithDescription","Uploading","WithError","CustomSubmitLabel"];export{o as CustomSubmitLabel,e as Default,s as Uploading,r as WithDescription,t as WithError,I as __namedExportsOrder,z as default}; diff --git a/apps/portal/public/storybook/assets/ReviewOrderStep-D8BlP-PO.js b/apps/portal/public/storybook/assets/ReviewOrderStep-D8BlP-PO.js new file mode 100644 index 00000000..7d6270dc --- /dev/null +++ b/apps/portal/public/storybook/assets/ReviewOrderStep-D8BlP-PO.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import"./DataTable-COYdcx41.js";import"./FormField-C0UylACv.js";import"./OtpInput-6kd_2E0v.js";import"./OtpExpiryDisplay-BGgB7Tk6.js";import"./SearchFilterBar-Ds19v0-P.js";import"./PaginationBar-D_k7ztRb.js";import"./DetailHeader-C0ZsoM39.js";import"./AlertBanner-Bnlyj1xc.js";import"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import"./error-state-BSicqqE6.js";import{f as N}from"./date-Csq1SWDU.js";import"./index-BKyvj4H5.js";import"./SectionHeader-Bo81Whai.js";import"./ProgressSteps-weVdXcqu.js";import"./SubCard-1OZIPgEM.js";import{A as y}from"./AnimatedCard-DFAiX4zP.js";import"./ServiceCard-BJEHFLba.js";import"./SummaryStats-D6b7Am-p.js";import"./FilterDropdown-CUU04WmN.js";import"./ClearFiltersButton-CPCoyXk2.js";import"./DetailStatsGrid-CDkKTM-B.js";import"./SectionCard-BcUjc-7N.js";import"./MetricCard-BR1xVIXz.js";import"./BackLink-C5IY6wzy.js";import"./status-badge-5pzxe45J.js";import"./error-boundary-DIRO_cDI.js";import"./error-fallbacks-kSPsNxmV.js";import{B as u}from"./button-C8_cybvS.js";import"./input-BbGJiz0K.js";import"./password-input-D4khGh8v.js";import"./checkbox-DahUyQbt.js";import"./label-C25VH7yk.js";import"./error-message-DeFFz6H_.js";import"./status-pill-wWp9xkwA.js";import"./badge-BdMsasyi.js";import"./spinner-mU4XywER.js";import"./loading-overlay-DMJTiFny.js";import"./empty-state-DRUGJ9ip.js";import"./inline-toast-DQJ-O9wc.js";import"./logo-f0fprTjz.js";import{S as v}from"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./animated-container-DyAZ9gmw.js";import{F as w}from"./ArrowLeftIcon-Cw1eswTb.js";import{F as S}from"./ArrowRightIcon--Vuz7Q7x.js";function T(t){return t?t.billingCycle==="Monthly"?t.monthlyPrice??t.unitPrice??0:t.oneTimePrice??t.unitPrice??0:0}function P({simType:t,eid:r,activationType:i,scheduledActivationDate:n,wantsMnp:a}){return e.jsxs("div",{className:"border-t border-border pt-4 mb-6",children:[e.jsx("h4",{className:"font-medium text-foreground mb-3",children:"Configuration"}),e.jsxs("div",{className:"space-y-2 text-sm",children:[e.jsxs("div",{className:"flex justify-between",children:[e.jsx("span",{className:"text-muted-foreground",children:"SIM Type:"}),e.jsx("span",{className:"text-foreground",children:t||"Not selected"})]}),t==="eSIM"&&r&&e.jsxs("div",{className:"flex justify-between",children:[e.jsx("span",{className:"text-muted-foreground",children:"EID:"}),e.jsxs("span",{className:"text-foreground font-mono text-xs",children:[r.slice(0,12),"..."]})]}),e.jsxs("div",{className:"flex justify-between",children:[e.jsx("span",{className:"text-muted-foreground",children:"Activation:"}),e.jsx("span",{className:"text-foreground",children:i==="Scheduled"&&n?N(n):i||"Not selected"})]}),a&&e.jsxs("div",{className:"flex justify-between",children:[e.jsx("span",{className:"text-muted-foreground",children:"Number Porting:"}),e.jsx("span",{className:"text-foreground",children:"Requested"})]})]})]})}function q(t){var c;const{plan:r,simType:i,eid:n,activationType:a,scheduledActivationDate:p,wantsMnp:x,selectedAddons:d,addons:f,activationFee:o,monthlyTotal:h,oneTimeTotal:l,isDefault:j}=t;return e.jsxs("div",{className:"max-w-lg mx-auto mb-8 bg-card shadow-[var(--cp-shadow-2)] rounded-lg border border-border p-6",children:[e.jsxs("div",{className:"text-center border-b-2 border-dashed border-border/60 pb-4 mb-6",children:[e.jsx("h3",{className:"text-xl font-bold text-foreground mb-1",children:"Order Summary"}),e.jsx("p",{className:"text-sm text-muted-foreground",children:"Review your configuration"})]}),e.jsx("div",{className:"space-y-3 mb-6",children:e.jsxs("div",{className:"flex justify-between items-start",children:[e.jsxs("div",{children:[e.jsx("h4",{className:"font-semibold text-foreground",children:r.name}),e.jsx("p",{className:"text-sm text-muted-foreground",children:r.simDataSize})]}),e.jsxs("div",{className:"text-right",children:[e.jsxs("p",{className:"font-semibold text-foreground",children:["¥",(c=r.monthlyPrice)==null?void 0:c.toLocaleString()]}),e.jsx("p",{className:"text-xs text-muted-foreground",children:"per month"})]})]})}),e.jsx(P,{simType:i,eid:n,activationType:a,scheduledActivationDate:p,wantsMnp:x}),d.length>0&&e.jsxs("div",{className:"border-t border-border pt-4 mb-6",children:[e.jsx("h4",{className:"font-medium text-foreground mb-3",children:"Add-ons"}),e.jsx("div",{className:"space-y-2",children:d.map(m=>{const s=f.find(b=>b.sku===m),g=T(s);return e.jsxs("div",{className:"flex justify-between text-sm",children:[e.jsx("span",{className:"text-muted-foreground",children:(s==null?void 0:s.name)||m}),e.jsxs("span",{className:"text-foreground",children:["¥",g.toLocaleString(),e.jsxs("span",{className:"text-xs text-muted-foreground ml-1",children:["/",(s==null?void 0:s.billingCycle)==="Monthly"?"mo":"once"]})]})]},m)})})]}),o&&e.jsxs("div",{className:"border-t border-border pt-4 mb-6",children:[e.jsx("h4",{className:"font-medium text-foreground mb-3",children:"One-time Fees"}),e.jsxs("div",{className:"space-y-2",children:[e.jsxs("div",{className:"flex justify-between text-sm",children:[e.jsx("span",{className:"text-muted-foreground",children:o.name}),e.jsxs("span",{className:"text-foreground",children:["¥",o.amount.toLocaleString()]})]}),j&&e.jsx("p",{className:"text-xs text-muted-foreground",children:"Required for all new SIM activations"})]})]}),e.jsx("div",{className:"border-t-2 border-dashed border-border/60 pt-4 bg-muted -mx-6 px-6 py-4 rounded-b-lg",children:e.jsxs("div",{className:"space-y-2",children:[e.jsxs("div",{className:"flex justify-between text-xl font-bold",children:[e.jsx("span",{className:"text-foreground",children:"Monthly Total"}),e.jsxs("span",{className:"text-primary",children:["¥",h.toLocaleString()]})]}),l>0&&e.jsxs("div",{className:"flex justify-between text-sm",children:[e.jsx("span",{className:"text-muted-foreground",children:"One-time Total"}),e.jsxs("span",{className:"text-warning font-semibold",children:["¥",l.toLocaleString()]})]}),e.jsx("p",{className:"text-xs text-muted-foreground pt-2",children:"Prices exclude 10% consumption tax"})]})})]})}function C(t){const{onBack:r,onConfirm:i,...n}=t;return e.jsxs(y,{variant:"static",className:"p-8",children:[e.jsx("div",{className:"mb-6",children:e.jsx(v,{stepNumber:5,title:"Review Your Order",description:"Review your configuration and proceed to checkout"})}),e.jsx(q,{...n}),e.jsx("div",{className:"max-w-lg mx-auto mb-6 bg-info/10 border border-info/25 rounded-lg p-4",children:e.jsxs("p",{className:"text-sm text-foreground",children:[e.jsx("span",{className:"font-medium",children:"Next steps after checkout:"})," ",e.jsx("span",{className:"text-muted-foreground",children:"We'll review your order and ID verification within 1-2 business days. You'll receive an email once approved."})]})}),e.jsxs("div",{className:"flex justify-between items-center pt-6 border-t border-border",children:[e.jsx(u,{onClick:r,variant:"outline",size:"lg",className:"px-8 py-4 text-lg",leftIcon:e.jsx(w,{className:"w-5 h-5"}),children:"Back to Number Porting"}),e.jsx(u,{onClick:i,size:"lg",className:"px-12 py-4 text-lg font-semibold",rightIcon:e.jsx(S,{className:"w-5 h-5"}),children:"Proceed to Checkout"})]})]})}C.__docgenInfo={description:"",methods:[],displayName:"ReviewOrderStep",props:{plan:{required:!0,tsType:{name:"z.infer",elements:[{name:"simCatalogProductSchema"}],raw:"z.infer"},description:""},simType:{required:!0,tsType:{name:"union",raw:'"eSIM" | "Physical SIM" | ""',elements:[{name:"literal",value:'"eSIM"'},{name:"literal",value:'"Physical SIM"'},{name:"literal",value:'""'}]},description:""},eid:{required:!0,tsType:{name:"string"},description:""},activationType:{required:!0,tsType:{name:"union",raw:'"Immediate" | "Scheduled" | ""',elements:[{name:"literal",value:'"Immediate"'},{name:"literal",value:'"Scheduled"'},{name:"literal",value:'""'}]},description:""},scheduledActivationDate:{required:!0,tsType:{name:"string"},description:""},wantsMnp:{required:!0,tsType:{name:"boolean"},description:""},selectedAddons:{required:!0,tsType:{name:"Array",elements:[{name:"string"}],raw:"string[]"},description:""},addons:{required:!0,tsType:{name:"Array",elements:[{name:"z.infer",elements:[{name:"simCatalogProductSchema"}],raw:"z.infer"}],raw:"SimCatalogProduct[]"},description:""},activationFee:{required:!1,tsType:{name:"union",raw:"ActivationFeeDetails | undefined",elements:[{name:"ActivationFeeDetails"},{name:"undefined"}]},description:""},monthlyTotal:{required:!0,tsType:{name:"number"},description:""},oneTimeTotal:{required:!0,tsType:{name:"number"},description:""},onBack:{required:!0,tsType:{name:"signature",type:"function",raw:"() => void",signature:{arguments:[],return:{name:"void"}}},description:""},onConfirm:{required:!0,tsType:{name:"signature",type:"function",raw:"() => void",signature:{arguments:[],return:{name:"void"}}},description:""},isDefault:{required:!1,tsType:{name:"union",raw:"boolean | undefined",elements:[{name:"boolean"},{name:"undefined"}]},description:""}}};export{C as R}; diff --git a/apps/portal/public/storybook/assets/ReviewOrderStep.stories-CLtZmMgB.js b/apps/portal/public/storybook/assets/ReviewOrderStep.stories-CLtZmMgB.js new file mode 100644 index 00000000..40c7c6e1 --- /dev/null +++ b/apps/portal/public/storybook/assets/ReviewOrderStep.stories-CLtZmMgB.js @@ -0,0 +1,68 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import"./DataTable-COYdcx41.js";import"./FormField-C0UylACv.js";import"./OtpInput-6kd_2E0v.js";import"./OtpExpiryDisplay-BGgB7Tk6.js";import"./SearchFilterBar-Ds19v0-P.js";import"./PaginationBar-D_k7ztRb.js";import"./DetailHeader-C0ZsoM39.js";import"./AlertBanner-Bnlyj1xc.js";import"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import"./error-state-BSicqqE6.js";import"./index-BKyvj4H5.js";import"./SectionHeader-Bo81Whai.js";import"./ProgressSteps-weVdXcqu.js";import"./SubCard-1OZIPgEM.js";import{A as G}from"./AnimatedCard-DFAiX4zP.js";import"./ServiceCard-BJEHFLba.js";import"./SummaryStats-D6b7Am-p.js";import"./FilterDropdown-CUU04WmN.js";import"./ClearFiltersButton-CPCoyXk2.js";import"./DetailStatsGrid-CDkKTM-B.js";import"./SectionCard-BcUjc-7N.js";import"./MetricCard-BR1xVIXz.js";import"./BackLink-C5IY6wzy.js";import"./status-badge-5pzxe45J.js";import"./error-boundary-DIRO_cDI.js";import"./error-fallbacks-kSPsNxmV.js";import{B as N}from"./button-C8_cybvS.js";import"./input-BbGJiz0K.js";import"./password-input-D4khGh8v.js";import"./checkbox-DahUyQbt.js";import"./label-C25VH7yk.js";import"./error-message-DeFFz6H_.js";import"./status-pill-wWp9xkwA.js";import"./badge-BdMsasyi.js";import"./spinner-mU4XywER.js";import"./loading-overlay-DMJTiFny.js";import"./empty-state-DRUGJ9ip.js";import"./inline-toast-DQJ-O9wc.js";import"./logo-f0fprTjz.js";import{S as q}from"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./animated-container-DyAZ9gmw.js";import{F as L}from"./ArrowLeftIcon-Cw1eswTb.js";import{F as W}from"./ArrowRightIcon--Vuz7Q7x.js";import"./ChevronRightIcon-CMQWsJeW.js";import"./index-JhL3uwfD.js";import"./cn-CDN07tui.js";import"./input-otp-Cin9-T84.js";import"./createLucideIcon-CctB0W3q.js";import"./clock-C92s7kSC.js";import"./FunnelIcon-8nhbwqu0.js";import"./XMarkIcon-Bsb1W5VN.js";import"./XCircleIcon-CiVBnngB.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./InformationCircleIcon-Clz7d-56.js";import"./CheckCircleIcon-Dva35lTP.js";import"./ArrowPathIcon-CZjG6RfV.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./proxy-ZkTvaR74.js";import"./next-link-BmD4fPSy.js";import"./arrow-right-BNMAry-H.js";import"./index-DXhM58Yq.js";import"./ExclamationCircleIcon-jFfW0Ax_.js";import"./PlusIcon-DGufmf06.js";import"./index-CNXKWNLp.js";import"./next-image-69WeRggt.js";import"./Squares2X2Icon-BMQM_Wy1.js";function H({plan:n,selectedInstallation:r,selectedAddonSkus:t,addons:s,mode:x,isTransitioning:a,onBack:M,onConfirm:R}){const f=s.filter(o=>t.includes(o.sku)),B=(n.monthlyPrice??0)+(r.monthlyPrice??0)+f.reduce((o,h)=>o+(h.monthlyPrice??0),0),F=(n.oneTimePrice??0)+(r.oneTimePrice??0)+f.reduce((o,h)=>o+(h.oneTimePrice??0),0);return e.jsxs(G,{variant:"static",className:`p-8 transition-all duration-150 ease-in-out transform ${a?"opacity-0 translate-y-2":"opacity-100 translate-y-0"}`,children:[e.jsx("div",{className:"mb-6",children:e.jsx(q,{stepNumber:4,title:"Review Your Order",description:"Review your configuration and proceed to checkout"})}),e.jsx("div",{className:"max-w-lg mx-auto mb-8",children:e.jsx(_,{plan:n,selectedInstallation:r,selectedAddons:f,mode:x,monthlyTotal:B,oneTimeTotal:F})}),e.jsxs("div",{className:"flex justify-between pt-6 border-t border-border",children:[e.jsx(N,{onClick:M,variant:"outline",leftIcon:e.jsx(L,{className:"w-4 h-4"}),children:"Back to Add-ons"}),e.jsx(N,{onClick:R,rightIcon:e.jsx(W,{className:"w-4 h-4"}),children:"Proceed to Checkout"})]})]})}function z({selectedInstallation:n,selectedAddons:r}){return e.jsxs(e.Fragment,{children:[(n.monthlyPrice??0)>0||(n.oneTimePrice??0)>0?e.jsxs("div",{className:"border-t border-border pt-4 mb-6",children:[e.jsx("h4",{className:"font-medium text-foreground mb-3",children:"Installation"}),e.jsxs("div",{className:"flex justify-between text-sm",children:[e.jsx("span",{className:"text-muted-foreground",children:n.name}),e.jsxs("span",{className:"text-foreground",children:[n.monthlyPrice&&n.monthlyPrice>0&&e.jsxs(e.Fragment,{children:["¥",n.monthlyPrice.toLocaleString(),e.jsx("span",{className:"text-xs text-muted-foreground ml-1",children:"/mo"})]}),n.oneTimePrice&&n.oneTimePrice>0&&e.jsxs(e.Fragment,{children:["¥",n.oneTimePrice.toLocaleString(),e.jsx("span",{className:"text-xs text-muted-foreground ml-1",children:"/once"})]})]})]})]}):null,r.length>0&&e.jsxs("div",{className:"border-t border-border pt-4 mb-6",children:[e.jsx("h4",{className:"font-medium text-foreground mb-3",children:"Add-ons"}),e.jsx("div",{className:"space-y-2",children:r.map(t=>e.jsxs("div",{className:"flex justify-between text-sm",children:[e.jsx("span",{className:"text-muted-foreground",children:t.name}),e.jsxs("span",{className:"text-foreground",children:[t.monthlyPrice&&t.monthlyPrice>0&&e.jsxs(e.Fragment,{children:["¥",t.monthlyPrice.toLocaleString(),e.jsx("span",{className:"text-xs text-muted-foreground ml-1",children:"/mo"})]}),t.oneTimePrice&&t.oneTimePrice>0&&e.jsxs(e.Fragment,{children:["¥",t.oneTimePrice.toLocaleString(),e.jsx("span",{className:"text-xs text-muted-foreground ml-1",children:"/once"})]})]})]},t.sku))})]})]})}function _({plan:n,selectedInstallation:r,selectedAddons:t,mode:s,monthlyTotal:x,oneTimeTotal:a}){return e.jsxs("div",{className:"bg-card shadow-xl rounded-lg border border-border p-6",children:[e.jsxs("div",{className:"text-center border-b-2 border-dashed border-border pb-4 mb-6",children:[e.jsx("h3",{className:"text-xl font-bold text-foreground mb-1",children:"Order Summary"}),e.jsx("p",{className:"text-sm text-muted-foreground",children:"Review your configuration"})]}),e.jsx("div",{className:"space-y-3 mb-6",children:e.jsxs("div",{className:"flex justify-between items-start",children:[e.jsxs("div",{children:[e.jsx("h4",{className:"font-semibold text-foreground",children:n.name}),e.jsx("p",{className:"text-sm text-muted-foreground",children:"Internet Service"}),s&&e.jsxs("p",{className:"text-sm text-muted-foreground",children:["Access Mode: ",s]})]}),e.jsxs("div",{className:"text-right",children:[e.jsxs("p",{className:"font-semibold text-foreground",children:["¥",(n.monthlyPrice??0).toLocaleString()]}),e.jsx("p",{className:"text-xs text-muted-foreground",children:"per month"})]})]})}),e.jsx(z,{selectedInstallation:r,selectedAddons:t}),e.jsx("div",{className:"border-t-2 border-dashed border-border pt-4 bg-muted/50 -mx-6 px-6 py-4 rounded-b-lg",children:e.jsxs("div",{className:"space-y-2",children:[e.jsxs("div",{className:"flex justify-between text-xl font-bold",children:[e.jsx("span",{className:"text-foreground",children:"Monthly Total"}),e.jsxs("span",{className:"text-primary",children:["¥",x.toLocaleString()]})]}),a>0&&e.jsxs("div",{className:"flex justify-between text-sm",children:[e.jsx("span",{className:"text-muted-foreground",children:"One-time Total"}),e.jsxs("span",{className:"text-warning font-semibold",children:["¥",a.toLocaleString()]})]})]})}),e.jsx("div",{className:"text-center mt-6 pt-4 border-t border-border",children:e.jsx("p",{className:"text-xs text-muted-foreground",children:"High-speed internet service"})})]})}H.__docgenInfo={description:"",methods:[],displayName:"ReviewOrderStep",props:{plan:{required:!0,tsType:{name:"z.infer",elements:[{name:"internetPlanCatalogItemSchema"}],raw:"z.infer"},description:""},selectedInstallation:{required:!0,tsType:{name:"z.infer",elements:[{name:"internetInstallationCatalogItemSchema"}],raw:"z.infer"},description:""},selectedAddonSkus:{required:!0,tsType:{name:"Array",elements:[{name:"string"}],raw:"string[]"},description:""},addons:{required:!0,tsType:{name:"Array",elements:[{name:"z.infer",elements:[{name:"internetAddonCatalogItemSchema"}],raw:"z.infer"}],raw:"InternetAddonCatalogItem[]"},description:""},mode:{required:!0,tsType:{name:"union",raw:"AccessModeValue | null",elements:[{name:"unknown[union]",raw:"(typeof ACCESS_MODE)[keyof typeof ACCESS_MODE]"},{name:"null"}]},description:""},isTransitioning:{required:!0,tsType:{name:"boolean"},description:""},onBack:{required:!0,tsType:{name:"signature",type:"function",raw:"() => void",signature:{arguments:[],return:{name:"void"}}},description:""},onConfirm:{required:!0,tsType:{name:"signature",type:"function",raw:"() => void",signature:{arguments:[],return:{name:"void"}}},description:""}}};const i={id:"plan-001",sku:"INT-GOLD-1G-HOME",name:"Internet Gold 1Gbps Home",description:"High-speed fiber internet for homes",monthlyPrice:6800,oneTimePrice:0,internetPlanTier:"Gold",internetOfferingType:"Home 1G",catalogMetadata:{tierDescription:"Hassle-free setup with router included",features:["NTT Fiber","WiFi Router included"],isRecommended:!0}},u={id:"inst-002",sku:"INT-INST-12M",name:"12-Month Installment",description:"Spread the installation fee across 12 monthly payments.",displayOrder:2,billingCycle:"Monthly",monthlyPrice:1900,oneTimePrice:0,catalogMetadata:{installationTerm:"12-Month"}},g=[{id:"addon-001",sku:"INT-ADDON-PHONE",name:"Hikari Denwa (IP Phone)",description:"Home phone service over fiber connection",monthlyPrice:450,oneTimePrice:1e3,displayOrder:1,catalogMetadata:{addonType:"phone"}},{id:"addon-002",sku:"INT-ADDON-EXTENDER",name:"WiFi Range Extender",description:"Extend your WiFi coverage",monthlyPrice:300,oneTimePrice:0,displayOrder:2,catalogMetadata:{addonType:"equipment"}}],dn={title:"Features/Services/Internet/Configure/ReviewOrderStep",component:H,parameters:{layout:"centered"}},m={args:{plan:i,selectedInstallation:u,selectedAddonSkus:["INT-ADDON-PHONE"],addons:g,mode:"IPoE-HGW",isTransitioning:!1,onBack:()=>{},onConfirm:()=>{}}},d={args:{plan:i,selectedInstallation:u,selectedAddonSkus:[],addons:g,mode:"IPoE-HGW",isTransitioning:!1,onBack:()=>{},onConfirm:()=>{}}},l={args:{plan:i,selectedInstallation:u,selectedAddonSkus:["INT-ADDON-PHONE","INT-ADDON-EXTENDER"],addons:g,mode:"PPPoE",isTransitioning:!1,onBack:()=>{},onConfirm:()=>{}}},c={args:{plan:i,selectedInstallation:{id:"inst-001",sku:"INT-INST-ONETIME",name:"One-time Payment",description:"Pay the full installation fee in one payment.",displayOrder:1,billingCycle:"One-time",monthlyPrice:0,oneTimePrice:22800,catalogMetadata:{installationTerm:"One-time"}},selectedAddonSkus:[],addons:[],mode:null,isTransitioning:!1,onBack:()=>{},onConfirm:()=>{}}},p={args:{plan:i,selectedInstallation:u,selectedAddonSkus:[],addons:[],mode:null,isTransitioning:!0,onBack:()=>{},onConfirm:()=>{}}};var y,T,P;m.parameters={...m.parameters,docs:{...(y=m.parameters)==null?void 0:y.docs,source:{originalSource:`{ + args: { + plan: mockPlan, + selectedInstallation: mockInstallation, + selectedAddonSkus: ["INT-ADDON-PHONE"], + addons: mockAddons, + mode: "IPoE-HGW", + isTransitioning: false, + onBack: () => {}, + onConfirm: () => {} + } +}`,...(P=(T=m.parameters)==null?void 0:T.docs)==null?void 0:P.source}}};var j,b,k;d.parameters={...d.parameters,docs:{...(j=d.parameters)==null?void 0:j.docs,source:{originalSource:`{ + args: { + plan: mockPlan, + selectedInstallation: mockInstallation, + selectedAddonSkus: [], + addons: mockAddons, + mode: "IPoE-HGW", + isTransitioning: false, + onBack: () => {}, + onConfirm: () => {} + } +}`,...(k=(b=d.parameters)==null?void 0:b.docs)==null?void 0:k.source}}};var I,S,A;l.parameters={...l.parameters,docs:{...(I=l.parameters)==null?void 0:I.docs,source:{originalSource:`{ + args: { + plan: mockPlan, + selectedInstallation: mockInstallation, + selectedAddonSkus: ["INT-ADDON-PHONE", "INT-ADDON-EXTENDER"], + addons: mockAddons, + mode: "PPPoE", + isTransitioning: false, + onBack: () => {}, + onConfirm: () => {} + } +}`,...(A=(S=l.parameters)==null?void 0:S.docs)==null?void 0:A.source}}};var O,v,E;c.parameters={...c.parameters,docs:{...(O=c.parameters)==null?void 0:O.docs,source:{originalSource:`{ + args: { + plan: mockPlan, + selectedInstallation: { + id: "inst-001", + sku: "INT-INST-ONETIME", + name: "One-time Payment", + description: "Pay the full installation fee in one payment.", + displayOrder: 1, + billingCycle: "One-time", + monthlyPrice: 0, + oneTimePrice: 22800, + catalogMetadata: { + installationTerm: "One-time" as const + } + }, + selectedAddonSkus: [], + addons: [], + mode: null, + isTransitioning: false, + onBack: () => {}, + onConfirm: () => {} + } +}`,...(E=(v=c.parameters)==null?void 0:v.docs)==null?void 0:E.source}}};var w,C,D;p.parameters={...p.parameters,docs:{...(w=p.parameters)==null?void 0:w.docs,source:{originalSource:`{ + args: { + plan: mockPlan, + selectedInstallation: mockInstallation, + selectedAddonSkus: [], + addons: [], + mode: null, + isTransitioning: true, + onBack: () => {}, + onConfirm: () => {} + } +}`,...(D=(C=p.parameters)==null?void 0:C.docs)==null?void 0:D.source}}};const ln=["Default","NoAddons","AllAddonsSelected","OneTimeInstallation","Transitioning"];export{l as AllAddonsSelected,m as Default,d as NoAddons,c as OneTimeInstallation,p as Transitioning,ln as __namedExportsOrder,dn as default}; diff --git a/apps/portal/public/storybook/assets/ReviewOrderStep.stories-DQaT1PbR.js b/apps/portal/public/storybook/assets/ReviewOrderStep.stories-DQaT1PbR.js new file mode 100644 index 00000000..98977527 --- /dev/null +++ b/apps/portal/public/storybook/assets/ReviewOrderStep.stories-DQaT1PbR.js @@ -0,0 +1,40 @@ +import{R as c}from"./ReviewOrderStep-D8BlP-PO.js";import"./jsx-runtime-D_zvdyIk.js";import"./DataTable-COYdcx41.js";import"./empty-state-DRUGJ9ip.js";import"./button-C8_cybvS.js";import"./index-JhL3uwfD.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./spinner-mU4XywER.js";import"./PlusIcon-DGufmf06.js";import"./ChevronRightIcon-CMQWsJeW.js";import"./FormField-C0UylACv.js";import"./label-C25VH7yk.js";import"./input-BbGJiz0K.js";import"./error-message-DeFFz6H_.js";import"./ExclamationCircleIcon-jFfW0Ax_.js";import"./OtpInput-6kd_2E0v.js";import"./input-otp-Cin9-T84.js";import"./createLucideIcon-CctB0W3q.js";import"./OtpExpiryDisplay-BGgB7Tk6.js";import"./clock-C92s7kSC.js";import"./SearchFilterBar-Ds19v0-P.js";import"./FunnelIcon-8nhbwqu0.js";import"./XMarkIcon-Bsb1W5VN.js";import"./PaginationBar-D_k7ztRb.js";import"./DetailHeader-C0ZsoM39.js";import"./status-pill-wWp9xkwA.js";import"./AlertBanner-Bnlyj1xc.js";import"./XCircleIcon-CiVBnngB.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./InformationCircleIcon-Clz7d-56.js";import"./CheckCircleIcon-Dva35lTP.js";import"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import"./password-input-D4khGh8v.js";import"./checkbox-DahUyQbt.js";import"./badge-BdMsasyi.js";import"./loading-overlay-DMJTiFny.js";import"./error-state-BSicqqE6.js";import"./ArrowPathIcon-CZjG6RfV.js";import"./inline-toast-DQJ-O9wc.js";import"./index-CNXKWNLp.js";import"./proxy-ZkTvaR74.js";import"./logo-f0fprTjz.js";import"./next-image-69WeRggt.js";import"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./Squares2X2Icon-BMQM_Wy1.js";import"./animated-container-DyAZ9gmw.js";import"./date-Csq1SWDU.js";import"./date-CJlSVdaN.js";import"./SectionHeader-Bo81Whai.js";import"./ProgressSteps-weVdXcqu.js";import"./SubCard-1OZIPgEM.js";import"./AnimatedCard-DFAiX4zP.js";import"./ServiceCard-BJEHFLba.js";import"./arrow-right-BNMAry-H.js";import"./SummaryStats-D6b7Am-p.js";import"./FilterDropdown-CUU04WmN.js";import"./ClearFiltersButton-CPCoyXk2.js";import"./DetailStatsGrid-CDkKTM-B.js";import"./SectionCard-BcUjc-7N.js";import"./MetricCard-BR1xVIXz.js";import"./BackLink-C5IY6wzy.js";import"./ArrowLeftIcon-Cw1eswTb.js";import"./status-badge-5pzxe45J.js";import"./error-boundary-DIRO_cDI.js";import"./error-fallbacks-kSPsNxmV.js";import"./ArrowRightIcon--Vuz7Q7x.js";const wt={title:"Features/Services/SIM/Configure/ReviewOrderStep",component:c,parameters:{layout:"centered"}},p={id:"1",sku:"SIM-DV-3GB",name:"Data + Voice 3GB Plan",monthlyPrice:1100,unitPrice:1100,oneTimePrice:0,simDataSize:"3GB",simPlanType:"DataSmsVoice",simHasFamilyDiscount:!1,billingCycle:"Monthly",catalogMetadata:{}},s=[{id:"addon-1",sku:"ADDON-UNLIMITED-CALL",name:"Unlimited Domestic Calling",monthlyPrice:3e3,unitPrice:3e3,oneTimePrice:0,billingCycle:"Monthly",simDataSize:"",simPlanType:"",simHasFamilyDiscount:!1,catalogMetadata:{}}],t={args:{plan:p,simType:"eSIM",eid:"89049032000000000000000000000001",activationType:"Immediate",scheduledActivationDate:"",wantsMnp:!1,selectedAddons:[],addons:s,activationFee:{name:"Activation Fee",amount:1500},monthlyTotal:1100,oneTimeTotal:1500,onBack:()=>{},onConfirm:()=>{},isDefault:!0}},o={args:{plan:p,simType:"Physical SIM",eid:"",activationType:"Scheduled",scheduledActivationDate:"2026-04-01",wantsMnp:!0,selectedAddons:["ADDON-UNLIMITED-CALL"],addons:s,activationFee:{name:"Activation Fee",amount:1500},monthlyTotal:4100,oneTimeTotal:1500,onBack:()=>{},onConfirm:()=>{}}};var i,e,n;t.parameters={...t.parameters,docs:{...(i=t.parameters)==null?void 0:i.docs,source:{originalSource:`{ + args: { + plan: mockPlan, + simType: "eSIM", + eid: "89049032000000000000000000000001", + activationType: "Immediate", + scheduledActivationDate: "", + wantsMnp: false, + selectedAddons: [], + addons: mockAddons, + activationFee: { + name: "Activation Fee", + amount: 1500 + }, + monthlyTotal: 1100, + oneTimeTotal: 1500, + onBack: () => {}, + onConfirm: () => {}, + isDefault: true + } +}`,...(n=(e=t.parameters)==null?void 0:e.docs)==null?void 0:n.source}}};var m,a,r;o.parameters={...o.parameters,docs:{...(m=o.parameters)==null?void 0:m.docs,source:{originalSource:`{ + args: { + plan: mockPlan, + simType: "Physical SIM", + eid: "", + activationType: "Scheduled", + scheduledActivationDate: "2026-04-01", + wantsMnp: true, + selectedAddons: ["ADDON-UNLIMITED-CALL"], + addons: mockAddons, + activationFee: { + name: "Activation Fee", + amount: 1500 + }, + monthlyTotal: 4100, + oneTimeTotal: 1500, + onBack: () => {}, + onConfirm: () => {} + } +}`,...(r=(a=o.parameters)==null?void 0:a.docs)==null?void 0:r.source}}};const Nt=["Default","WithAddons"];export{t as Default,o as WithAddons,Nt as __namedExportsOrder,wt as default}; diff --git a/apps/portal/public/storybook/assets/RouteLoading.stories-8Jpgwq8B.js b/apps/portal/public/storybook/assets/RouteLoading.stories-8Jpgwq8B.js new file mode 100644 index 00000000..c931342c --- /dev/null +++ b/apps/portal/public/storybook/assets/RouteLoading.stories-8Jpgwq8B.js @@ -0,0 +1,20 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";const i={title:"Molecules/RouteLoading",parameters:{layout:"fullscreen"}},s={render:()=>e.jsxs("div",{className:"bg-background min-h-[400px]",children:[e.jsx("div",{className:"bg-muted/40 border-b border-border/40 h-16 flex items-center px-8",children:e.jsx("div",{className:"h-6 w-36 bg-muted rounded animate-pulse"})}),e.jsxs("div",{className:"p-8 space-y-4",children:[e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx("div",{className:"h-8 w-8 rounded-full bg-muted animate-pulse"}),e.jsxs("div",{className:"space-y-2",children:[e.jsx("div",{className:"h-6 w-48 bg-muted rounded animate-pulse"}),e.jsx("div",{className:"h-4 w-64 bg-muted rounded animate-pulse"})]})]}),[1,2,3].map(m=>e.jsxs("div",{className:"bg-card border border-border rounded-lg p-4 shadow-sm",children:[e.jsx("div",{className:"h-4 w-1/2 bg-muted rounded animate-pulse mb-2"}),e.jsx("div",{className:"h-3 w-3/4 bg-muted rounded animate-pulse"})]},m))]})]})};var a,d,r;s.parameters={...s.parameters,docs:{...(a=s.parameters)==null?void 0:a.docs,source:{originalSource:`{ + render: () =>
+
+
+
+
+
+
+
+
+
+
+
+ {[1, 2, 3].map(i =>
+
+
+
)} +
+
+}`,...(r=(d=s.parameters)==null?void 0:d.docs)==null?void 0:r.source}}};const l=["Default"];export{s as Default,l as __namedExportsOrder,i as default}; diff --git a/apps/portal/public/storybook/assets/SearchFilterBar-Ds19v0-P.js b/apps/portal/public/storybook/assets/SearchFilterBar-Ds19v0-P.js new file mode 100644 index 00000000..f1b2dc72 --- /dev/null +++ b/apps/portal/public/storybook/assets/SearchFilterBar-Ds19v0-P.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{r as t}from"./index-JhL3uwfD.js";import{F as c}from"./FunnelIcon-8nhbwqu0.js";import{F as p}from"./XMarkIcon-Bsb1W5VN.js";function g({title:a,titleId:n,...s},i){return t.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":n},s),a?t.createElement("title",{id:n},a):null,t.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"m21 21-5.197-5.197m0 0A7.5 7.5 0 1 0 5.196 5.196a7.5 7.5 0 0 0 10.607 10.607Z"}))}const f=t.forwardRef(g);function v({searchValue:a,onSearchChange:n,searchPlaceholder:s="Search...",filterValue:i,onFilterChange:l,filterOptions:d,filterLabel:u="Filter",activeFilters:o,children:m}){return e.jsxs("div",{className:"space-y-3",children:[e.jsxs("div",{className:"flex flex-col sm:flex-row gap-2.5",children:[e.jsxs("div",{className:"relative flex-1 max-w-sm",children:[e.jsx(f,{className:"absolute left-3 top-1/2 -translate-y-1/2 h-4 w-4 text-muted-foreground/50"}),e.jsx("input",{type:"text",value:a,onChange:r=>n(r.target.value),placeholder:s,className:"w-full h-9 pl-9 pr-3 rounded-lg border border-border/60 bg-background text-sm text-foreground placeholder:text-muted-foreground/50 focus:outline-none focus:ring-2 focus:ring-primary/20 focus:border-primary/30 transition-all duration-200"})]}),e.jsxs("div",{className:"flex items-center gap-2",children:[d&&l&&e.jsxs("div",{className:"relative",children:[e.jsx("select",{value:i??"all",onChange:r=>l(r.target.value),className:"h-9 pl-3 pr-8 rounded-lg border border-border/60 bg-background text-sm text-foreground appearance-none focus:outline-none focus:ring-2 focus:ring-primary/20 focus:border-primary/30 transition-all duration-200","aria-label":u,children:d.map(r=>e.jsx("option",{value:r.value,children:r.label},r.value))}),e.jsx(c,{className:"absolute right-2.5 top-1/2 -translate-y-1/2 h-3.5 w-3.5 text-muted-foreground/50 pointer-events-none"})]}),m]})]}),o&&o.length>0&&e.jsx("div",{className:"flex flex-wrap gap-1.5",children:o.map(r=>e.jsxs("button",{onClick:r.onRemove,className:"inline-flex items-center gap-1 px-2 py-0.5 rounded-md bg-primary/10 text-primary text-xs font-medium hover:bg-primary/20 transition-colors duration-150",children:[r.label,e.jsx(p,{className:"h-3 w-3"})]},r.label))})]})}v.__docgenInfo={description:"",methods:[],displayName:"SearchFilterBar",props:{searchValue:{required:!0,tsType:{name:"string"},description:""},onSearchChange:{required:!0,tsType:{name:"signature",type:"function",raw:"(value: string) => void",signature:{arguments:[{type:{name:"string"},name:"value"}],return:{name:"void"}}},description:""},searchPlaceholder:{required:!1,tsType:{name:"string"},description:"",defaultValue:{value:'"Search..."',computed:!1}},filterValue:{required:!1,tsType:{name:"string"},description:""},onFilterChange:{required:!1,tsType:{name:"signature",type:"function",raw:"(value: string) => void",signature:{arguments:[{type:{name:"string"},name:"value"}],return:{name:"void"}}},description:""},filterOptions:{required:!1,tsType:{name:"Array",elements:[{name:"FilterOption"}],raw:"FilterOption[]"},description:""},filterLabel:{required:!1,tsType:{name:"string"},description:"",defaultValue:{value:'"Filter"',computed:!1}},activeFilters:{required:!1,tsType:{name:"union",raw:"{ label: string; onRemove: () => void }[] | undefined",elements:[{name:"Array",elements:[{name:"signature",type:"object",raw:"{ label: string; onRemove: () => void }",signature:{properties:[{key:"label",value:{name:"string",required:!0}},{key:"onRemove",value:{name:"signature",type:"function",raw:"() => void",signature:{arguments:[],return:{name:"void"}},required:!0}}]}}],raw:"{ label: string; onRemove: () => void }[]"},{name:"undefined"}]},description:""},children:{required:!1,tsType:{name:"ReactNode"},description:""}}};export{v as S}; diff --git a/apps/portal/public/storybook/assets/SearchFilterBar.stories-DxwUci-Y.js b/apps/portal/public/storybook/assets/SearchFilterBar.stories-DxwUci-Y.js new file mode 100644 index 00000000..6b54ad86 --- /dev/null +++ b/apps/portal/public/storybook/assets/SearchFilterBar.stories-DxwUci-Y.js @@ -0,0 +1,41 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{r as l}from"./index-JhL3uwfD.js";import{S as c}from"./SearchFilterBar-Ds19v0-P.js";import"./FunnelIcon-8nhbwqu0.js";import"./XMarkIcon-Bsb1W5VN.js";const V={title:"Molecules/SearchFilterBar",component:c,parameters:{layout:"padded"}},t={render:()=>{const[r,a]=l.useState("");return e.jsx("div",{className:"w-[600px]",children:e.jsx(c,{searchValue:r,onSearchChange:a,searchPlaceholder:"Search orders..."})})}},s={render:()=>{const[r,a]=l.useState(""),[x,b]=l.useState("all");return e.jsx("div",{className:"w-[600px]",children:e.jsx(c,{searchValue:r,onSearchChange:a,searchPlaceholder:"Search invoices...",filterValue:x,onFilterChange:b,filterOptions:[{value:"all",label:"All"},{value:"paid",label:"Paid"},{value:"unpaid",label:"Unpaid"},{value:"overdue",label:"Overdue"}],filterLabel:"Status"})})}},n={render:()=>{const[r,a]=l.useState("fiber");return e.jsx("div",{className:"w-[600px]",children:e.jsx(c,{searchValue:r,onSearchChange:a,activeFilters:[{label:"Status: Active",onRemove:()=>{}},{label:"Type: Internet",onRemove:()=>{}}]})})}};var o,i,h;t.parameters={...t.parameters,docs:{...(o=t.parameters)==null?void 0:o.docs,source:{originalSource:`{ + render: () => { + const [search, setSearch] = useState(""); + return
+ +
; + } +}`,...(h=(i=t.parameters)==null?void 0:i.docs)==null?void 0:h.source}}};var u,d,S;s.parameters={...s.parameters,docs:{...(u=s.parameters)==null?void 0:u.docs,source:{originalSource:`{ + render: () => { + const [search, setSearch] = useState(""); + const [filter, setFilter] = useState("all"); + return
+ +
; + } +}`,...(S=(d=s.parameters)==null?void 0:d.docs)==null?void 0:S.source}}};var p,m,v;n.parameters={...n.parameters,docs:{...(p=n.parameters)==null?void 0:p.docs,source:{originalSource:`{ + render: () => { + const [search, setSearch] = useState("fiber"); + return
+ {} + }, { + label: "Type: Internet", + onRemove: () => {} + }]} /> +
; + } +}`,...(v=(m=n.parameters)==null?void 0:m.docs)==null?void 0:v.source}}};const O=["SearchOnly","WithFilter","WithActiveFilters"];export{t as SearchOnly,n as WithActiveFilters,s as WithFilter,O as __namedExportsOrder,V as default}; diff --git a/apps/portal/public/storybook/assets/SectionCard-BcUjc-7N.js b/apps/portal/public/storybook/assets/SectionCard-BcUjc-7N.js new file mode 100644 index 00000000..ca9f637c --- /dev/null +++ b/apps/portal/public/storybook/assets/SectionCard-BcUjc-7N.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{c as a}from"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";const m={primary:"bg-primary/10 text-primary",success:"bg-success/10 text-success",info:"bg-info/10 text-info",warning:"bg-warning/10 text-warning",danger:"bg-danger/10 text-danger",neutral:"bg-neutral/10 text-neutral"};function c({icon:s,title:i,subtitle:n,tone:t="primary",actions:r,children:d,className:l}){return e.jsxs("div",{className:a("bg-card rounded-xl border border-border shadow-[var(--cp-shadow-1)] overflow-hidden",l),children:[e.jsx("div",{className:"bg-muted/40 px-6 py-4 border-b border-border/40",children:e.jsxs("div",{className:"flex items-center justify-between gap-3",children:[e.jsxs("div",{className:"flex items-center gap-3 min-w-0",children:[e.jsx("div",{className:a("h-9 w-9 rounded-lg flex items-center justify-center flex-shrink-0",m[t]),children:s}),e.jsxs("div",{className:"min-w-0",children:[e.jsx("h3",{className:"text-sm font-semibold text-foreground",children:i}),n&&e.jsx("p",{className:"text-xs text-muted-foreground mt-0.5",children:n})]})]}),r&&e.jsx("div",{className:"flex items-center gap-2 flex-shrink-0",children:r})]})}),e.jsx("div",{className:"px-6 py-5",children:d})]})}c.__docgenInfo={description:"",methods:[],displayName:"SectionCard",props:{icon:{required:!0,tsType:{name:"ReactNode"},description:""},title:{required:!0,tsType:{name:"string"},description:""},subtitle:{required:!1,tsType:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}]},description:""},tone:{required:!1,tsType:{name:"union",raw:'"primary" | "success" | "info" | "warning" | "danger" | "neutral"',elements:[{name:"literal",value:'"primary"'},{name:"literal",value:'"success"'},{name:"literal",value:'"info"'},{name:"literal",value:'"warning"'},{name:"literal",value:'"danger"'},{name:"literal",value:'"neutral"'}]},description:"",defaultValue:{value:'"primary"',computed:!1}},actions:{required:!1,tsType:{name:"union",raw:"ReactNode | undefined",elements:[{name:"ReactNode"},{name:"undefined"}]},description:""},children:{required:!0,tsType:{name:"ReactNode"},description:""},className:{required:!1,tsType:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}]},description:""}}};export{c as S}; diff --git a/apps/portal/public/storybook/assets/SectionCard.stories-BOS6yKH_.js b/apps/portal/public/storybook/assets/SectionCard.stories-BOS6yKH_.js new file mode 100644 index 00000000..fb8a247e --- /dev/null +++ b/apps/portal/public/storybook/assets/SectionCard.stories-BOS6yKH_.js @@ -0,0 +1,27 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{S as t}from"./SectionCard-BcUjc-7N.js";import{B as x}from"./button-C8_cybvS.js";import{F as n}from"./CreditCardIcon-BBdrpHQs.js";import{F as g}from"./UserIcon-BGV2Aso_.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./index-JhL3uwfD.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./spinner-mU4XywER.js";const b={title:"Molecules/SectionCard",component:t,argTypes:{tone:{control:"select",options:["primary","success","info","warning","danger","neutral"]}}},s={args:{icon:e.jsx(n,{className:"h-5 w-5"}),title:"Payment Methods",subtitle:"Manage your payment options",children:e.jsx("p",{className:"text-sm text-muted-foreground",children:"Your saved payment methods will appear here."})}},a={args:{icon:e.jsx(g,{className:"h-5 w-5"}),title:"Account Details",subtitle:"Your personal information",tone:"info",actions:e.jsx(x,{size:"sm",variant:"outline",children:"Edit"}),children:e.jsxs("div",{className:"space-y-2 text-sm",children:[e.jsxs("p",{children:[e.jsx("span",{className:"text-muted-foreground",children:"Name:"})," John Doe"]}),e.jsxs("p",{children:[e.jsx("span",{className:"text-muted-foreground",children:"Email:"})," john@example.com"]})]})}},o={render:()=>e.jsxs("div",{className:"flex flex-col gap-4 w-[500px]",children:[e.jsx(t,{icon:e.jsx(n,{className:"h-5 w-5"}),title:"Primary",tone:"primary",children:"Content"}),e.jsx(t,{icon:e.jsx(n,{className:"h-5 w-5"}),title:"Success",tone:"success",children:"Content"}),e.jsx(t,{icon:e.jsx(n,{className:"h-5 w-5"}),title:"Warning",tone:"warning",children:"Content"}),e.jsx(t,{icon:e.jsx(n,{className:"h-5 w-5"}),title:"Danger",tone:"danger",children:"Content"})]})};var r,i,c;s.parameters={...s.parameters,docs:{...(r=s.parameters)==null?void 0:r.docs,source:{originalSource:`{ + args: { + icon: , + title: "Payment Methods", + subtitle: "Manage your payment options", + children:

Your saved payment methods will appear here.

+ } +}`,...(c=(i=s.parameters)==null?void 0:i.docs)==null?void 0:c.source}}};var m,l,d;a.parameters={...a.parameters,docs:{...(m=a.parameters)==null?void 0:m.docs,source:{originalSource:`{ + args: { + icon: , + title: "Account Details", + subtitle: "Your personal information", + tone: "info", + actions: , + children:
+

Name: John Doe

+

Email: john@example.com

+
+ } +}`,...(d=(l=a.parameters)==null?void 0:l.docs)==null?void 0:d.source}}};var p,u,h;o.parameters={...o.parameters,docs:{...(p=o.parameters)==null?void 0:p.docs,source:{originalSource:`{ + render: () =>
+ } title="Primary" tone="primary">Content + } title="Success" tone="success">Content + } title="Warning" tone="warning">Content + } title="Danger" tone="danger">Content +
+}`,...(h=(u=o.parameters)==null?void 0:u.docs)==null?void 0:h.source}}};const B=["Default","WithActions","AllTones"];export{o as AllTones,s as Default,a as WithActions,B as __namedExportsOrder,b as default}; diff --git a/apps/portal/public/storybook/assets/SectionHeader-Bo81Whai.js b/apps/portal/public/storybook/assets/SectionHeader-Bo81Whai.js new file mode 100644 index 00000000..03987ec0 --- /dev/null +++ b/apps/portal/public/storybook/assets/SectionHeader-Bo81Whai.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";function i({title:t,children:r,className:s}){return e.jsxs("div",{className:["flex items-center justify-between",s].filter(Boolean).join(" "),children:[e.jsx("h2",{className:"text-lg font-semibold text-foreground",children:t}),r]})}i.__docgenInfo={description:"",methods:[],displayName:"SectionHeader",props:{title:{required:!0,tsType:{name:"string"},description:""},children:{required:!1,tsType:{name:"ReactReactNode",raw:"React.ReactNode"},description:""},className:{required:!1,tsType:{name:"string"},description:""}}};export{i as S}; diff --git a/apps/portal/public/storybook/assets/SectionHeader.stories-I03d34Dn.js b/apps/portal/public/storybook/assets/SectionHeader.stories-I03d34Dn.js new file mode 100644 index 00000000..affae211 --- /dev/null +++ b/apps/portal/public/storybook/assets/SectionHeader.stories-I03d34Dn.js @@ -0,0 +1,11 @@ +import{j as t}from"./jsx-runtime-D_zvdyIk.js";import{S as m}from"./SectionHeader-Bo81Whai.js";import{B as p}from"./button-C8_cybvS.js";import"./index-JhL3uwfD.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./spinner-mU4XywER.js";const A={title:"Molecules/SectionHeader",component:m},e={args:{title:"Recent Orders"}},r={render:()=>t.jsx("div",{className:"w-[500px]",children:t.jsx(m,{title:"Subscriptions",children:t.jsx(p,{size:"sm",variant:"outline",children:"View All"})})})};var o,s,i;e.parameters={...e.parameters,docs:{...(o=e.parameters)==null?void 0:o.docs,source:{originalSource:`{ + args: { + title: "Recent Orders" + } +}`,...(i=(s=e.parameters)==null?void 0:s.docs)==null?void 0:i.source}}};var n,a,c;r.parameters={...r.parameters,docs:{...(n=r.parameters)==null?void 0:n.docs,source:{originalSource:`{ + render: () =>
+ + + +
+}`,...(c=(a=r.parameters)==null?void 0:a.docs)==null?void 0:c.source}}};const B=["Default","WithAction"];export{e as Default,r as WithAction,B as __namedExportsOrder,A as default}; diff --git a/apps/portal/public/storybook/assets/ServerIcon-Cf--50di.js b/apps/portal/public/storybook/assets/ServerIcon-Cf--50di.js new file mode 100644 index 00000000..d04acf42 --- /dev/null +++ b/apps/portal/public/storybook/assets/ServerIcon-Cf--50di.js @@ -0,0 +1 @@ +import{r as e}from"./index-JhL3uwfD.js";function n({title:r,titleId:a,...t},o){return e.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:o,"aria-labelledby":a},t),r?e.createElement("title",{id:a},r):null,e.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M21.75 17.25v-.228a4.5 4.5 0 0 0-.12-1.03l-2.268-9.64a3.375 3.375 0 0 0-3.285-2.602H7.923a3.375 3.375 0 0 0-3.285 2.602l-2.268 9.64a4.5 4.5 0 0 0-.12 1.03v.228m19.5 0a3 3 0 0 1-3 3H5.25a3 3 0 0 1-3-3m19.5 0a3 3 0 0 0-3-3H5.25a3 3 0 0 0-3 3m16.5 0h.008v.008h-.008v-.008Zm-3 0h.008v.008h-.008v-.008Z"}))}const s=e.forwardRef(n);export{s as F}; diff --git a/apps/portal/public/storybook/assets/ServiceCTA-CNjQQIZn.js b/apps/portal/public/storybook/assets/ServiceCTA-CNjQQIZn.js new file mode 100644 index 00000000..7e79638c --- /dev/null +++ b/apps/portal/public/storybook/assets/ServiceCTA-CNjQQIZn.js @@ -0,0 +1,12 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{B as t}from"./button-C8_cybvS.js";import{c as m}from"./cn-CDN07tui.js";import{A as i}from"./arrow-right-BNMAry-H.js";import{S as u}from"./sparkles-q054t7ye.js";const c={backgroundImage:"radial-gradient(circle at center, color-mix(in oklch, var(--primary) 12%, transparent) 0.6px, transparent 0.6px)",backgroundSize:"20px 20px"};function p({eyebrow:a="Get started in minutes",eyebrowIcon:s=e.jsx(u,{className:"h-3.5 w-3.5"}),headline:l,description:d,primaryAction:n,secondaryAction:r,className:o}){return e.jsxs("section",{className:m("relative text-center py-10 rounded-2xl overflow-hidden",o),children:[e.jsx("div",{className:"absolute inset-0 bg-gradient-to-br from-primary/5 via-transparent to-primary/8"}),e.jsx("div",{className:"absolute inset-0 pointer-events-none opacity-30",style:c}),e.jsxs("div",{className:"relative",children:[e.jsxs("div",{className:"inline-flex items-center gap-1.5 text-xs font-medium text-primary mb-3 px-2.5 py-1 rounded-full bg-primary/10 border border-primary/15",children:[s,a]}),e.jsx("h2",{className:"text-xl sm:text-2xl font-bold leading-tight tracking-tight text-foreground mb-2",children:l}),e.jsx("p",{className:"text-sm text-muted-foreground mb-5 max-w-md mx-auto",children:d}),e.jsxs("div",{className:"flex flex-col sm:flex-row items-center justify-center gap-3",children:[n.onClick?e.jsx(t,{onClick:n.onClick,size:"lg",rightIcon:e.jsx(i,{className:"h-4 w-4"}),children:n.label}):e.jsx(t,{as:"a",href:n.href??"#",size:"lg",rightIcon:e.jsx(i,{className:"h-4 w-4"}),children:n.label}),r&&e.jsx(t,{as:"a",href:r.href,variant:"outline",size:"lg",children:r.label})]})]})]})}p.__docgenInfo={description:"ServiceCTA - Call-to-action section with decorative background.",methods:[],displayName:"ServiceCTA",props:{eyebrow:{required:!1,tsType:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}]},description:"",defaultValue:{value:'"Get started in minutes"',computed:!1}},eyebrowIcon:{required:!1,tsType:{name:"union",raw:"ReactNode | undefined",elements:[{name:"ReactNode"},{name:"undefined"}]},description:"",defaultValue:{value:'',computed:!1}},headline:{required:!0,tsType:{name:"string"},description:""},description:{required:!0,tsType:{name:"string"},description:""},primaryAction:{required:!0,tsType:{name:"signature",type:"object",raw:`{ + label: string; + href?: string | undefined; + onClick?: ((e: MouseEvent) => void) | undefined; +}`,signature:{properties:[{key:"label",value:{name:"string",required:!0}},{key:"href",value:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}],required:!1}},{key:"onClick",value:{name:"union",raw:"((e: MouseEvent) => void) | undefined",elements:[{name:"unknown"},{name:"undefined"}],required:!1}}]}},description:""},secondaryAction:{required:!1,tsType:{name:"union",raw:`| { + label: string; + href: string; + } +| undefined`,elements:[{name:"signature",type:"object",raw:`{ + label: string; + href: string; +}`,signature:{properties:[{key:"label",value:{name:"string",required:!0}},{key:"href",value:{name:"string",required:!0}}]}},{name:"undefined"}]},description:""},className:{required:!1,tsType:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}]},description:""}}};export{p as S}; diff --git a/apps/portal/public/storybook/assets/ServiceCTA.stories-B4ZpaOSF.js b/apps/portal/public/storybook/assets/ServiceCTA.stories-B4ZpaOSF.js new file mode 100644 index 00000000..bd161daf --- /dev/null +++ b/apps/portal/public/storybook/assets/ServiceCTA.stories-B4ZpaOSF.js @@ -0,0 +1,42 @@ +import{j as o}from"./jsx-runtime-D_zvdyIk.js";import{S as b}from"./ServiceCTA-CNjQQIZn.js";import"./button-C8_cybvS.js";import"./index-JhL3uwfD.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./spinner-mU4XywER.js";import"./arrow-right-BNMAry-H.js";import"./createLucideIcon-CctB0W3q.js";import"./sparkles-q054t7ye.js";const z={title:"Features/Services/Base/ServiceCTA",component:b,parameters:{layout:"padded"},decorators:[g=>o.jsx("div",{style:{maxWidth:700},children:o.jsx(g,{})})]},e={args:{headline:"Ready to get connected?",description:"Sign up today and enjoy high-speed internet in as little as 2 weeks.",primaryAction:{label:"Get Started",href:"/services/internet"}}},r={args:{headline:"Upgrade your internet today",description:"Experience blazing fast speeds with our fiber plans.",primaryAction:{label:"View Plans",href:"/services/internet"},secondaryAction:{label:"Learn More",href:"/services/internet/about"}}},t={args:{headline:"Start your order",description:"Configure your plan and get connected.",primaryAction:{label:"Configure Now",onClick:()=>{}}}},n={args:{eyebrow:"Limited time offer",headline:"50% off for the first 3 months",description:"Don't miss this special promotion on all fiber plans.",primaryAction:{label:"Claim Offer",href:"/services/promo"}}};var i,a,s;e.parameters={...e.parameters,docs:{...(i=e.parameters)==null?void 0:i.docs,source:{originalSource:`{ + args: { + headline: "Ready to get connected?", + description: "Sign up today and enjoy high-speed internet in as little as 2 weeks.", + primaryAction: { + label: "Get Started", + href: "/services/internet" + } + } +}`,...(s=(a=e.parameters)==null?void 0:a.docs)==null?void 0:s.source}}};var c,p,d;r.parameters={...r.parameters,docs:{...(c=r.parameters)==null?void 0:c.docs,source:{originalSource:`{ + args: { + headline: "Upgrade your internet today", + description: "Experience blazing fast speeds with our fiber plans.", + primaryAction: { + label: "View Plans", + href: "/services/internet" + }, + secondaryAction: { + label: "Learn More", + href: "/services/internet/about" + } + } +}`,...(d=(p=r.parameters)==null?void 0:p.docs)==null?void 0:d.source}}};var l,m,f;t.parameters={...t.parameters,docs:{...(l=t.parameters)==null?void 0:l.docs,source:{originalSource:`{ + args: { + headline: "Start your order", + description: "Configure your plan and get connected.", + primaryAction: { + label: "Configure Now", + onClick: () => {} + } + } +}`,...(f=(m=t.parameters)==null?void 0:m.docs)==null?void 0:f.source}}};var u,h,y;n.parameters={...n.parameters,docs:{...(u=n.parameters)==null?void 0:u.docs,source:{originalSource:`{ + args: { + eyebrow: "Limited time offer", + headline: "50% off for the first 3 months", + description: "Don't miss this special promotion on all fiber plans.", + primaryAction: { + label: "Claim Offer", + href: "/services/promo" + } + } +}`,...(y=(h=n.parameters)==null?void 0:h.docs)==null?void 0:y.source}}};const G=["Default","WithSecondaryAction","WithOnClick","CustomEyebrow"];export{n as CustomEyebrow,e as Default,t as WithOnClick,r as WithSecondaryAction,G as __namedExportsOrder,z as default}; diff --git a/apps/portal/public/storybook/assets/ServiceCard-BJEHFLba.js b/apps/portal/public/storybook/assets/ServiceCard-BJEHFLba.js new file mode 100644 index 00000000..d4be8596 --- /dev/null +++ b/apps/portal/public/storybook/assets/ServiceCard-BJEHFLba.js @@ -0,0 +1,50 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{L as h}from"./next-link-BmD4fPSy.js";import{c as a}from"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import{A as g}from"./arrow-right-BNMAry-H.js";const l="transition-all duration-[var(--cp-duration-normal)]",u={blue:{bg:"bg-blue-500/10",text:"text-blue-600 dark:text-blue-400",border:"border-blue-500/20",gradient:"from-blue-500/30 to-transparent",hoverBorder:"hover:border-blue-500/40",cardBg:"from-blue-500/10 via-card to-card"},green:{bg:"bg-green-500/10",text:"text-green-600 dark:text-green-400",border:"border-green-500/20",gradient:"from-green-500/30 to-transparent",hoverBorder:"hover:border-green-500/40",cardBg:"from-green-500/10 via-card to-card"},purple:{bg:"bg-purple-500/10",text:"text-purple-600 dark:text-purple-400",border:"border-purple-500/20",gradient:"from-purple-500/30 to-transparent",hoverBorder:"hover:border-purple-500/40",cardBg:"from-purple-500/10 via-card to-card"},orange:{bg:"bg-orange-500/10",text:"text-orange-600 dark:text-orange-400",border:"border-orange-500/20",gradient:"from-orange-500/30 to-transparent",hoverBorder:"hover:border-orange-500/40",cardBg:"from-orange-500/10 via-card to-card"},cyan:{bg:"bg-cyan-500/10",text:"text-cyan-600 dark:text-cyan-400",border:"border-cyan-500/20",gradient:"from-cyan-500/30 to-transparent",hoverBorder:"hover:border-cyan-500/40",cardBg:"from-cyan-500/10 via-card to-card"},pink:{bg:"bg-pink-500/10",text:"text-pink-600 dark:text-pink-400",border:"border-pink-500/20",gradient:"from-pink-500/30 to-transparent",hoverBorder:"hover:border-pink-500/40",cardBg:"from-pink-500/10 via-card to-card"},amber:{bg:"bg-amber-500/10",text:"text-amber-600 dark:text-amber-400",border:"border-amber-500/20",gradient:"from-amber-500/30 to-transparent",hoverBorder:"hover:border-amber-500/40",cardBg:"from-amber-500/10 via-card to-card"},rose:{bg:"bg-rose-500/10",text:"text-rose-600 dark:text-rose-400",border:"border-rose-500/20",gradient:"from-rose-500/30 to-transparent",hoverBorder:"hover:border-rose-500/40",cardBg:"from-rose-500/10 via-card to-card"}};function c(r,t){if(typeof r=="function"){const n=r;return e.jsx(n,{className:t})}return r}function m({href:r,className:t,children:n}){return r?e.jsx(h,{href:r,className:t,children:n}):e.jsx("div",{className:t,children:n})}function p({href:r,icon:t,title:n,description:o,price:i,badge:d,accentColor:s="blue",className:b}){const x=u[s];return e.jsx(m,{href:r,className:a("group block",b),children:e.jsxs("div",{className:a("relative h-full flex flex-col rounded-2xl border bg-card p-6",l,"hover:-translate-y-1 hover:shadow-lg hover:border-primary/30"),children:[d&&e.jsx("span",{className:"absolute -top-2.5 right-4 rounded-full bg-success px-2.5 py-0.5 text-xs font-medium text-success-foreground",children:d}),e.jsxs("div",{className:"flex items-start gap-4 mb-4",children:[e.jsx("div",{className:a("flex h-12 w-12 items-center justify-center rounded-xl border",x.bg,x.text,x.border),children:c(t,"h-6 w-6")}),e.jsxs("div",{className:"flex-1",children:[e.jsx("h3",{className:"text-lg font-semibold text-foreground font-heading",children:n}),i&&e.jsxs("span",{className:"text-sm text-muted-foreground",children:["From ",e.jsx("span",{className:"font-medium text-foreground",children:i})]})]})]}),o&&e.jsx("p",{className:"text-sm text-muted-foreground leading-relaxed flex-grow",children:o}),r&&e.jsxs("div",{className:"mt-4 flex items-center gap-1 text-sm font-medium text-primary",children:["Learn more",e.jsx(g,{className:"h-4 w-4 transition-transform group-hover:translate-x-0.5"})]})]})})}function f({href:r,icon:t,title:n,description:o,highlight:i,className:d}){return e.jsx(m,{href:r,className:a("group block h-full",d),children:e.jsxs("div",{className:a("h-full flex flex-col","rounded-xl border bg-card","p-6",l,"border-primary/20","shadow-md shadow-primary/5","hover:border-primary/40 hover:shadow-xl hover:shadow-primary/10","hover:-translate-y-1"),children:[e.jsx("div",{className:a("flex h-12 w-12 items-center justify-center rounded-xl mb-4","transition-all group-hover:scale-105","bg-primary shadow-md shadow-primary/20 group-hover:shadow-lg group-hover:shadow-primary/30"),children:c(t,"h-6 w-6 text-primary-foreground")}),e.jsx("h3",{className:"text-lg font-semibold text-foreground mb-2 font-heading",children:n}),o&&e.jsx("p",{className:"text-sm text-muted-foreground leading-relaxed flex-grow",children:o}),i&&e.jsx("span",{className:a("inline-flex self-start mt-3 rounded-full px-3 py-1 text-xs font-semibold","bg-success text-success-foreground shadow-sm"),children:i}),r&&e.jsxs("div",{className:a("flex items-center gap-1.5 mt-4 pt-4 border-t","text-sm font-medium text-primary","transition-colors group-hover:text-primary-hover","border-primary/10"),children:["Learn more",e.jsx(g,{className:"h-4 w-4 transition-transform group-hover:translate-x-1"})]})]})})}function v({href:r,icon:t,title:n,className:o}){return e.jsx(m,{href:r,className:a("group block",o),children:e.jsxs("div",{className:a("flex flex-col items-center text-center","rounded-xl border border-border bg-card","p-6",l,"hover:border-primary/30 hover:shadow-md","hover:-translate-y-0.5"),children:[e.jsx("div",{className:"flex h-12 w-12 items-center justify-center rounded-xl bg-primary/10 mb-3 transition-all group-hover:bg-primary/15",children:c(t,"h-6 w-6 text-primary")}),e.jsx("h3",{className:"text-sm font-semibold text-foreground font-heading",children:n})]})})}function y({href:r,icon:t,title:n,accentColor:o="blue",className:i}){const d=u[o];return e.jsx(m,{href:r,className:a("group rounded-xl bg-card/80 backdrop-blur-sm border border-border/50","p-4",l,"hover:bg-card hover:border-border",i),children:e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx("div",{className:a("h-10 w-10 rounded-lg flex items-center justify-center",d.text),children:c(t,"h-5 w-5")}),e.jsx("span",{className:"font-semibold text-foreground",children:n})]})})}function j({href:r,icon:t,title:n,description:o,accentColor:i="blue",className:d}){const s=u[i];return e.jsxs(m,{href:r,className:a("group rounded-xl bg-card border",s.border,s.hoverBorder,"p-6",l,"hover:-translate-y-0.5",d),children:[e.jsx("div",{className:a("inline-flex items-center justify-center h-12 w-12 rounded-lg mb-4","bg-gradient-to-br from-card to-muted",s.text),children:c(t,"h-6 w-6")}),e.jsx("h3",{className:"text-lg font-bold text-foreground mb-2 font-heading",children:n}),o&&e.jsx("p",{className:"text-sm text-muted-foreground leading-relaxed",children:o})]})}function N({href:r,icon:t,title:n,description:o,accentColor:i="blue",className:d}){const s=u[i];return e.jsxs(m,{href:r,className:a("group relative overflow-hidden rounded-2xl","bg-gradient-to-br",s.cardBg,"border",s.border,s.hoverBorder,"p-8",l,"hover:-translate-y-1",d),children:[e.jsx("div",{className:a("absolute -top-20 -right-20 w-64 h-64 rounded-full","bg-gradient-to-br opacity-30",s.gradient,"blur-2xl"),"aria-hidden":"true"}),e.jsxs("div",{className:"relative",children:[e.jsx("div",{className:a("inline-flex items-center justify-center h-14 w-14 rounded-xl mb-6","bg-background/50 backdrop-blur-sm border border-border/50",s.text),children:c(t,"h-7 w-7")}),e.jsx("h3",{className:"text-2xl font-bold text-foreground mb-3 font-heading",children:n}),o&&e.jsx("p",{className:"text-muted-foreground leading-relaxed max-w-sm mb-6",children:o}),r&&e.jsxs("span",{className:a("inline-flex items-center gap-2 font-semibold",s.text,"transition-transform duration-[var(--cp-duration-normal)]","group-hover:translate-x-1"),children:["Learn more",e.jsx(g,{className:"h-4 w-4"})]})]})]})}function w(r){const{variant:t="default"}=r;switch(t){case"featured":return e.jsx(f,{...r});case"minimal":return e.jsx(v,{...r});case"bento-sm":return e.jsx(y,{...r});case"bento-md":return e.jsx(j,{...r});case"bento-lg":return e.jsx(N,{...r});default:return e.jsx(p,{...r})}}w.__docgenInfo={description:`ServiceCard - Unified service card component + +A flexible card component for displaying services with multiple variants: +- default: Standard card with icon, title, description, price, badge +- featured: Premium styling with enhanced shadows and highlights +- minimal: Compact icon + title only +- bento-sm/md/lg: Bento grid cards in different sizes + +@example +\`\`\`tsx +// Default variant +} + title="Internet" + description="High-speed fiber internet" + price="¥3,200/mo" + accentColor="blue" +/> + +// Featured variant + + +// Minimal variant + +\`\`\``,methods:[],displayName:"ServiceCard",props:{href:{required:!1,tsType:{name:"string"},description:"Link destination (renders as div when omitted)"},icon:{required:!0,tsType:{name:"ReactNode"},description:'Icon element to display.\nPass a pre-styled JSX element: `icon={}`\nOr a component reference (className will be applied): `icon={Wifi}`'},title:{required:!0,tsType:{name:"string"},description:"Card title"},description:{required:!1,tsType:{name:"string"},description:"Card description (optional for minimal variant)"},price:{required:!1,tsType:{name:"string"},description:'Starting price text e.g. "¥3,200/mo"'},badge:{required:!1,tsType:{name:"string"},description:'Badge text shown at top-right e.g. "1st month free"'},highlight:{required:!1,tsType:{name:"string"},description:"Highlight text shown as a pill (alternative to badge)"},accentColor:{required:!1,tsType:{name:"union",raw:`| "blue" +| "green" +| "purple" +| "orange" +| "cyan" +| "pink" +| "amber" +| "rose"`,elements:[{name:"literal",value:'"blue"'},{name:"literal",value:'"green"'},{name:"literal",value:'"purple"'},{name:"literal",value:'"orange"'},{name:"literal",value:'"cyan"'},{name:"literal",value:'"pink"'},{name:"literal",value:'"amber"'},{name:"literal",value:'"rose"'}]},description:"Accent color for icon background"},variant:{required:!1,tsType:{name:"union",raw:`| "default" +| "featured" +| "minimal" +| "bento-sm" +| "bento-md" +| "bento-lg"`,elements:[{name:"literal",value:'"default"'},{name:"literal",value:'"featured"'},{name:"literal",value:'"minimal"'},{name:"literal",value:'"bento-sm"'},{name:"literal",value:'"bento-md"'},{name:"literal",value:'"bento-lg"'}]},description:"Card variant"},className:{required:!1,tsType:{name:"string"},description:"Additional CSS classes"}}};export{w as S}; diff --git a/apps/portal/public/storybook/assets/ServiceCard.stories-7dEyf33R.js b/apps/portal/public/storybook/assets/ServiceCard.stories-7dEyf33R.js new file mode 100644 index 00000000..89feb77b --- /dev/null +++ b/apps/portal/public/storybook/assets/ServiceCard.stories-7dEyf33R.js @@ -0,0 +1,52 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{S as r}from"./ServiceCard-BJEHFLba.js";import{F as a}from"./WifiIcon-BRIpHl8i.js";import{F as d}from"./DevicePhoneMobileIcon-SMwjWf6M.js";import{F as p}from"./ShieldCheckIcon-BBoI5cMX.js";import{F as A}from"./ServerIcon-Cf--50di.js";import"./next-link-BmD4fPSy.js";import"./index-JhL3uwfD.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./arrow-right-BNMAry-H.js";import"./createLucideIcon-CctB0W3q.js";const L={title:"Molecules/ServiceCard",component:r,argTypes:{variant:{control:"select",options:["default","featured","minimal","bento-sm","bento-md","bento-lg"]},accentColor:{control:"select",options:["blue","green","purple","orange","cyan","pink","amber","rose"]}}},i={args:{icon:e.jsx(a,{className:"h-6 w-6"}),title:"Internet",description:"High-speed fiber internet for your home or office",price:"¥3,200/mo",accentColor:"blue"}},n={args:{variant:"featured",icon:e.jsx(d,{className:"h-6 w-6"}),title:"SIM & eSIM",description:"Mobile data plans with flexible options",highlight:"1st month free"}},t={args:{variant:"minimal",icon:e.jsx(p,{className:"h-6 w-6"}),title:"VPN"}},s={args:{icon:e.jsx(a,{className:"h-6 w-6"}),title:"Fiber Internet",description:"Ultra-fast connection up to 10Gbps",price:"¥4,800/mo",badge:"Popular",accentColor:"blue"}},c={render:()=>e.jsxs("div",{className:"flex flex-col gap-6 w-[400px]",children:[e.jsx(r,{icon:e.jsx(a,{className:"h-6 w-6"}),title:"Default",description:"Standard card",price:"¥3,200/mo",accentColor:"blue"}),e.jsx(r,{variant:"featured",icon:e.jsx(d,{className:"h-6 w-6"}),title:"Featured",description:"Premium styling",highlight:"New"}),e.jsx(r,{variant:"minimal",icon:e.jsx(p,{className:"h-6 w-6"}),title:"Minimal"})]})},l={render:()=>e.jsxs("div",{className:"grid grid-cols-2 gap-4 w-[600px]",children:[e.jsx("div",{className:"col-span-2",children:e.jsx(r,{variant:"bento-lg",icon:e.jsx(a,{className:"h-7 w-7"}),title:"Internet",description:"High-speed fiber for home and office",accentColor:"blue"})}),e.jsx(r,{variant:"bento-md",icon:e.jsx(d,{className:"h-6 w-6"}),title:"Mobile",description:"SIM & eSIM plans",accentColor:"green"}),e.jsx(r,{variant:"bento-md",icon:e.jsx(p,{className:"h-6 w-6"}),title:"VPN",description:"Secure browsing",accentColor:"purple"}),e.jsx(r,{variant:"bento-sm",icon:e.jsx(A,{className:"h-5 w-5"}),title:"Hosting",accentColor:"orange"}),e.jsx(r,{variant:"bento-sm",icon:e.jsx(a,{className:"h-5 w-5"}),title:"WiFi Router",accentColor:"cyan"})]})},m={render:()=>e.jsx("div",{className:"grid grid-cols-2 gap-4 w-[600px]",children:["blue","green","purple","orange","cyan","pink","amber","rose"].map(o=>e.jsx(r,{icon:e.jsx(a,{className:"h-6 w-6"}),title:o.charAt(0).toUpperCase()+o.slice(1),description:`${o} accent`,accentColor:o},o))})};var h,u,g;i.parameters={...i.parameters,docs:{...(h=i.parameters)==null?void 0:h.docs,source:{originalSource:`{ + args: { + icon: , + title: "Internet", + description: "High-speed fiber internet for your home or office", + price: "¥3,200/mo", + accentColor: "blue" + } +}`,...(g=(u=i.parameters)==null?void 0:u.docs)==null?void 0:g.source}}};var f,b,v;n.parameters={...n.parameters,docs:{...(f=n.parameters)==null?void 0:f.docs,source:{originalSource:`{ + args: { + variant: "featured", + icon: , + title: "SIM & eSIM", + description: "Mobile data plans with flexible options", + highlight: "1st month free" + } +}`,...(v=(b=n.parameters)==null?void 0:b.docs)==null?void 0:v.source}}};var w,x,N;t.parameters={...t.parameters,docs:{...(w=t.parameters)==null?void 0:w.docs,source:{originalSource:`{ + args: { + variant: "minimal", + icon: , + title: "VPN" + } +}`,...(N=(x=t.parameters)==null?void 0:x.docs)==null?void 0:N.source}}};var C,S,j;s.parameters={...s.parameters,docs:{...(C=s.parameters)==null?void 0:C.docs,source:{originalSource:`{ + args: { + icon: , + title: "Fiber Internet", + description: "Ultra-fast connection up to 10Gbps", + price: "¥4,800/mo", + badge: "Popular", + accentColor: "blue" + } +}`,...(j=(S=s.parameters)==null?void 0:S.docs)==null?void 0:j.source}}};var I,M,F;c.parameters={...c.parameters,docs:{...(I=c.parameters)==null?void 0:I.docs,source:{originalSource:`{ + render: () =>
+ } title="Default" description="Standard card" price="¥3,200/mo" accentColor="blue" /> + } title="Featured" description="Premium styling" highlight="New" /> + } title="Minimal" /> +
+}`,...(F=(M=c.parameters)==null?void 0:M.docs)==null?void 0:F.source}}};var y,P,W;l.parameters={...l.parameters,docs:{...(y=l.parameters)==null?void 0:y.docs,source:{originalSource:`{ + render: () =>
+
+ } title="Internet" description="High-speed fiber for home and office" accentColor="blue" /> +
+ } title="Mobile" description="SIM & eSIM plans" accentColor="green" /> + } title="VPN" description="Secure browsing" accentColor="purple" /> + } title="Hosting" accentColor="orange" /> + } title="WiFi Router" accentColor="cyan" /> +
+}`,...(W=(P=l.parameters)==null?void 0:P.docs)==null?void 0:W.source}}};var k,D,R;m.parameters={...m.parameters,docs:{...(k=m.parameters)==null?void 0:k.docs,source:{originalSource:`{ + render: () =>
+ {(["blue", "green", "purple", "orange", "cyan", "pink", "amber", "rose"] as const).map(color => } title={color.charAt(0).toUpperCase() + color.slice(1)} description={\`\${color} accent\`} accentColor={color} />)} +
+}`,...(R=(D=m.parameters)==null?void 0:D.docs)==null?void 0:R.source}}};const Q=["Default","Featured","Minimal","WithBadge","AllVariants","BentoGrid","AccentColors"];export{m as AccentColors,c as AllVariants,l as BentoGrid,i as Default,n as Featured,t as Minimal,s as WithBadge,Q as __namedExportsOrder,L as default}; diff --git a/apps/portal/public/storybook/assets/ServiceConfigurationStep.stories-Kiqd8Qig.js b/apps/portal/public/storybook/assets/ServiceConfigurationStep.stories-Kiqd8Qig.js new file mode 100644 index 00000000..5b4e8472 --- /dev/null +++ b/apps/portal/public/storybook/assets/ServiceConfigurationStep.stories-Kiqd8Qig.js @@ -0,0 +1,49 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{B as D}from"./button-C8_cybvS.js";import"./input-BbGJiz0K.js";import"./password-input-D4khGh8v.js";import"./checkbox-DahUyQbt.js";import"./label-C25VH7yk.js";import"./error-message-DeFFz6H_.js";import"./status-pill-wWp9xkwA.js";import"./badge-BdMsasyi.js";import"./spinner-mU4XywER.js";import"./loading-overlay-DMJTiFny.js";import"./error-state-BSicqqE6.js";import"./empty-state-DRUGJ9ip.js";import"./inline-toast-DQJ-O9wc.js";import"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import"./logo-f0fprTjz.js";import{S as _}from"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./animated-container-DyAZ9gmw.js";import{F as z}from"./ArrowRightIcon--Vuz7Q7x.js";import"./index-JhL3uwfD.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./createLucideIcon-CctB0W3q.js";import"./ExclamationCircleIcon-jFfW0Ax_.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./ArrowPathIcon-CZjG6RfV.js";import"./PlusIcon-DGufmf06.js";import"./index-CNXKWNLp.js";import"./proxy-ZkTvaR74.js";import"./next-image-69WeRggt.js";import"./Squares2X2Icon-BMQM_Wy1.js";function A({plan:r,mode:n,setMode:m,isTransitioning:u,onNext:p}){return e.jsxs("div",{className:`bg-white rounded-2xl shadow-lg border border-gray-200/50 p-8 md:p-10 transition-all duration-150 ease-out ${u?"opacity-0 translate-y-2":"opacity-100 translate-y-0"}`,children:[e.jsx("div",{className:"mb-8",children:e.jsx(_,{stepNumber:1,title:"Service Configuration",description:"Review your plan details and configuration"})}),(r==null?void 0:r.internetPlanTier)==="Platinum"&&e.jsx("div",{className:"bg-gradient-to-r from-yellow-50 to-orange-50 border-2 border-yellow-200 rounded-xl p-5 mb-8 shadow-sm",children:e.jsxs("div",{className:"flex items-start gap-3",children:[e.jsx("svg",{className:"w-6 h-6 text-yellow-600 mt-0.5 flex-shrink-0",fill:"currentColor",viewBox:"0 0 20 20",children:e.jsx("path",{fillRule:"evenodd",d:"M8.257 3.099c.765-1.36 2.722-1.36 3.486 0l5.58 9.92c.75 1.334-.213 2.98-1.742 2.98H4.42c-1.53 0-2.493-1.646-1.743-2.98l5.58-9.92zM11 13a1 1 0 11-2 0 1 1 0 012 0zm-1-8a1 1 0 00-1 1v3a1 1 0 002 0V6a1 1 0 00-1-1z",clipRule:"evenodd"})}),e.jsxs("div",{className:"flex-1",children:[e.jsx("h4",{className:"font-bold text-yellow-900 text-base mb-1",children:"IMPORTANT - For PLATINUM subscribers"}),e.jsx("p",{className:"text-sm text-yellow-800 leading-relaxed",children:"Additional fees are incurred for the PLATINUM service. Please refer to the information from our tech team for details."}),e.jsx("p",{className:"text-xs text-yellow-700 mt-2 italic",children:'* Will appear on the invoice as "Platinum Base Plan". Device subscriptions will be added later.'})]})]})}),(r==null?void 0:r.internetPlanTier)==="Silver"?e.jsx(F,{mode:n,setMode:m}):e.jsx(q,{plan:r}),e.jsx("div",{className:"flex justify-end mt-8 pt-6 border-t border-gray-100",children:e.jsx(D,{onClick:p,disabled:(r==null?void 0:r.internetPlanTier)==="Silver"&&!n,rightIcon:e.jsx(z,{className:"w-4 h-4"}),className:"min-w-[200px]",children:"Continue to Installation"})})]})}function F({mode:r,setMode:n}){return e.jsxs("div",{className:"mb-8",children:[e.jsx("h4",{className:"font-bold text-gray-900 mb-5 text-base",children:"Select Your Router & ISP Configuration:"}),e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-5",children:[e.jsx(x,{mode:"PPPoE",selectedMode:r,onSelect:n,title:"Any Router + PPPoE",description:"Works with most routers you already own or can purchase anywhere.",note:"PPPoE may experience network congestion during peak hours, potentially resulting in slower speeds.",tone:"warning"}),e.jsx(x,{mode:"IPoE-BYOR",selectedMode:r,onSelect:n,title:"v6plus Router + IPoE",description:"Requires a v6plus-compatible router for faster, more stable connection.",note:e.jsxs("span",{children:[e.jsx("strong",{children:"Recommended:"})," Faster speeds with less congestion."," ",e.jsx("a",{href:"https://www.jpix.ad.jp/service/?p=3565",target:"_blank",rel:"noreferrer",className:"text-blue-600 underline hover:text-blue-700 font-medium",children:"Check compatibility →"})]}),tone:"success"})]})]})}function x({mode:r,selectedMode:n,onSelect:m,title:u,description:p,note:O,tone:H}){const t=n===r,B=H==="warning"?"bg-orange-100 text-orange-800 border-orange-200":"bg-green-100 text-green-800 border-green-200";return e.jsxs("button",{type:"button",onClick:()=>m(r),className:`p-6 rounded-xl border-2 text-left transition-all duration-200 focus:outline-none focus-visible:ring-2 focus-visible:ring-blue-500 focus-visible:ring-offset-2 ${t?"border-blue-500 bg-blue-50 shadow-md":"border-gray-200 hover:border-blue-400 hover:bg-blue-50/50 shadow-sm hover:shadow-md"}`,"aria-pressed":t,children:[e.jsxs("div",{className:"flex items-center justify-between mb-4",children:[e.jsx("h5",{className:"text-lg font-bold text-gray-900",children:u}),e.jsx("div",{className:`w-5 h-5 rounded-full border-2 flex items-center justify-center ${t?"bg-blue-500 border-blue-500":"border-gray-300 bg-white"}`,children:t&&e.jsx("div",{className:"w-2 h-2 bg-white rounded-full"})})]}),e.jsx("p",{className:"text-sm text-gray-700 mb-3 leading-relaxed",children:p}),e.jsx("div",{className:`rounded-lg border-2 px-4 py-3 text-xs leading-relaxed ${B}`,children:O})]})}function q({plan:r}){return e.jsx("div",{className:"bg-gradient-to-br from-green-50 to-emerald-50 border-2 border-green-200 rounded-xl p-5 shadow-sm",children:e.jsxs("div",{className:"flex items-start gap-3",children:[e.jsx("svg",{className:"w-6 h-6 text-green-600 mt-0.5 flex-shrink-0",fill:"currentColor",viewBox:"0 0 20 20",children:e.jsx("path",{fillRule:"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z",clipRule:"evenodd"})}),e.jsxs("div",{className:"flex-1",children:[e.jsx("h4",{className:"font-bold text-green-900 text-base mb-1",children:"Access Mode Pre-configured"}),e.jsxs("p",{className:"text-sm text-green-800 leading-relaxed",children:["Access Mode: IPoE-HGW (Pre-configured for ",r.internetPlanTier," plan)"]})]})]})})}A.__docgenInfo={description:"",methods:[],displayName:"ServiceConfigurationStep",props:{plan:{required:!0,tsType:{name:"z.infer",elements:[{name:"internetPlanCatalogItemSchema"}],raw:"z.infer"},description:""},mode:{required:!0,tsType:{name:"union",raw:"AccessModeValue | null",elements:[{name:"unknown[union]",raw:"(typeof ACCESS_MODE)[keyof typeof ACCESS_MODE]"},{name:"null"}]},description:""},setMode:{required:!0,tsType:{name:"signature",type:"function",raw:"(mode: AccessModeValue) => void",signature:{arguments:[{type:{name:"unknown[union]",raw:"(typeof ACCESS_MODE)[keyof typeof ACCESS_MODE]"},name:"mode"}],return:{name:"void"}}},description:""},isTransitioning:{required:!0,tsType:{name:"boolean"},description:""},onNext:{required:!0,tsType:{name:"signature",type:"function",raw:"() => void",signature:{arguments:[],return:{name:"void"}}},description:""}}};const c={id:"plan-001",sku:"INT-GOLD-1G-HOME",name:"Internet Gold 1Gbps Home",description:"High-speed fiber internet for homes",monthlyPrice:6800,oneTimePrice:0,internetPlanTier:"Gold",internetOfferingType:"Home 1G",catalogMetadata:{tierDescription:"Hassle-free setup with router included",features:["NTT Fiber","WiFi Router included","ISP pre-configured"],isRecommended:!0}},g={...c,id:"plan-002",sku:"INT-SILVER-1G-HOME",name:"Internet Silver 1Gbps Home",internetPlanTier:"Silver",monthlyPrice:4800,catalogMetadata:{tierDescription:"Bring your own router",features:["NTT modem included"]}},L={...c,id:"plan-003",sku:"INT-PLAT-1G-HOME",name:"Internet Platinum 1Gbps Home",internetPlanTier:"Platinum",monthlyPrice:9800,catalogMetadata:{tierDescription:"Custom mesh network with professional setup",features:["Mesh network","Netgear INSIGHT","Cloud management"]}},Ce={title:"Features/Services/Internet/Configure/ServiceConfigurationStep",component:A,parameters:{layout:"centered"}},o={args:{plan:c,mode:null,setMode:()=>{},isTransitioning:!1,onNext:()=>{}}},s={args:{plan:g,mode:null,setMode:()=>{},isTransitioning:!1,onNext:()=>{}}},i={args:{plan:g,mode:"PPPoE",setMode:()=>{},isTransitioning:!1,onNext:()=>{}}},a={args:{plan:g,mode:"IPoE-BYOR",setMode:()=>{},isTransitioning:!1,onNext:()=>{}}},l={args:{plan:L,mode:null,setMode:()=>{},isTransitioning:!1,onNext:()=>{}}},d={args:{plan:c,mode:null,setMode:()=>{},isTransitioning:!0,onNext:()=>{}}};var f,h,P;o.parameters={...o.parameters,docs:{...(f=o.parameters)==null?void 0:f.docs,source:{originalSource:`{ + args: { + plan: mockGoldPlan, + mode: null, + setMode: () => {}, + isTransitioning: false, + onNext: () => {} + } +}`,...(P=(h=o.parameters)==null?void 0:h.docs)==null?void 0:P.source}}};var b,v,N;s.parameters={...s.parameters,docs:{...(b=s.parameters)==null?void 0:b.docs,source:{originalSource:`{ + args: { + plan: mockSilverPlan, + mode: null, + setMode: () => {}, + isTransitioning: false, + onNext: () => {} + } +}`,...(N=(v=s.parameters)==null?void 0:v.docs)==null?void 0:N.source}}};var y,w,S;i.parameters={...i.parameters,docs:{...(y=i.parameters)==null?void 0:y.docs,source:{originalSource:`{ + args: { + plan: mockSilverPlan, + mode: "PPPoE", + setMode: () => {}, + isTransitioning: false, + onNext: () => {} + } +}`,...(S=(w=i.parameters)==null?void 0:w.docs)==null?void 0:S.source}}};var j,T,M;a.parameters={...a.parameters,docs:{...(j=a.parameters)==null?void 0:j.docs,source:{originalSource:`{ + args: { + plan: mockSilverPlan, + mode: "IPoE-BYOR", + setMode: () => {}, + isTransitioning: false, + onNext: () => {} + } +}`,...(M=(T=a.parameters)==null?void 0:T.docs)==null?void 0:M.source}}};var C,E,k;l.parameters={...l.parameters,docs:{...(C=l.parameters)==null?void 0:C.docs,source:{originalSource:`{ + args: { + plan: mockPlatinumPlan, + mode: null, + setMode: () => {}, + isTransitioning: false, + onNext: () => {} + } +}`,...(k=(E=l.parameters)==null?void 0:E.docs)==null?void 0:k.source}}};var I,R,G;d.parameters={...d.parameters,docs:{...(I=d.parameters)==null?void 0:I.docs,source:{originalSource:`{ + args: { + plan: mockGoldPlan, + mode: null, + setMode: () => {}, + isTransitioning: true, + onNext: () => {} + } +}`,...(G=(R=d.parameters)==null?void 0:R.docs)==null?void 0:G.source}}};const Ee=["GoldPlan","SilverPlanNoMode","SilverPlanPPPoE","SilverPlanIPoE","PlatinumPlan","Transitioning"];export{o as GoldPlan,l as PlatinumPlan,a as SilverPlanIPoE,s as SilverPlanNoMode,i as SilverPlanPPPoE,d as Transitioning,Ee as __namedExportsOrder,Ce as default}; diff --git a/apps/portal/public/storybook/assets/ServiceFAQ-DgotQw6I.js b/apps/portal/public/storybook/assets/ServiceFAQ-DgotQw6I.js new file mode 100644 index 00000000..32ba2cfd --- /dev/null +++ b/apps/portal/public/storybook/assets/ServiceFAQ-DgotQw6I.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{r as u}from"./index-JhL3uwfD.js";import{c as o}from"./cn-CDN07tui.js";import{C as c}from"./chevron-down-CuGyZVZ6.js";function p({question:s,answer:n,isOpen:t,onToggle:a}){return e.jsxs("div",{className:"border-b border-border/60 last:border-b-0",children:[e.jsxs("button",{type:"button",onClick:a,className:"w-full py-4 flex items-start justify-between gap-3 text-left group","aria-expanded":t,children:[e.jsx("span",{className:"text-sm font-medium text-foreground group-hover:text-primary transition-colors",children:s}),e.jsx(c,{className:o("h-4 w-4 text-muted-foreground flex-shrink-0 mt-0.5 transition-transform duration-200",t&&"rotate-180")})]}),e.jsx("div",{className:o("overflow-hidden transition-all duration-300",t?"max-h-[1000px] opacity-100":"max-h-0 opacity-0"),children:e.jsx("div",{className:"pb-4 pr-8",children:e.jsx("div",{className:"text-sm text-muted-foreground leading-relaxed",children:n})})})]})}function x({title:s="Frequently Asked Questions",eyebrow:n="Common Questions",items:t,className:a,defaultOpenIndex:d=null}){const[i,m]=u.useState(d);return t.length===0?null:e.jsxs("section",{className:o("py-6",a),children:[e.jsxs("div",{className:"text-center mb-6",children:[e.jsx("p",{className:"text-xs font-semibold text-primary uppercase tracking-wider mb-1.5",children:n}),e.jsx("h2",{className:"text-xl sm:text-2xl font-bold leading-tight tracking-tight text-foreground",children:s})]}),e.jsx("div",{className:"bg-card border border-border rounded-xl px-5 shadow-sm",children:t.map((l,r)=>e.jsx(p,{question:l.question,answer:l.answer,isOpen:i===r,onToggle:()=>m(i===r?null:r)},r))})]})}x.__docgenInfo={description:"ServiceFAQ - FAQ accordion section.",methods:[],displayName:"ServiceFAQ",props:{title:{required:!1,tsType:{name:"string"},description:"",defaultValue:{value:'"Frequently Asked Questions"',computed:!1}},eyebrow:{required:!1,tsType:{name:"string"},description:"",defaultValue:{value:'"Common Questions"',computed:!1}},items:{required:!0,tsType:{name:"Array",elements:[{name:"FAQItem"}],raw:"FAQItem[]"},description:""},className:{required:!1,tsType:{name:"string"},description:""},defaultOpenIndex:{required:!1,tsType:{name:"union",raw:"number | null",elements:[{name:"number"},{name:"null"}]},description:"",defaultValue:{value:"null",computed:!1}}}};export{x as S}; diff --git a/apps/portal/public/storybook/assets/ServiceFAQ.stories-BmgNqC-B.js b/apps/portal/public/storybook/assets/ServiceFAQ.stories-BmgNqC-B.js new file mode 100644 index 00000000..3ab16d92 --- /dev/null +++ b/apps/portal/public/storybook/assets/ServiceFAQ.stories-BmgNqC-B.js @@ -0,0 +1,20 @@ +import{j as n}from"./jsx-runtime-D_zvdyIk.js";import{S as x}from"./ServiceFAQ-DgotQw6I.js";import"./index-JhL3uwfD.js";import"./cn-CDN07tui.js";import"./chevron-down-CuGyZVZ6.js";import"./createLucideIcon-CctB0W3q.js";const b={title:"Features/Services/Base/ServiceFAQ",component:x,parameters:{layout:"centered"},decorators:[S=>n.jsx("div",{style:{maxWidth:600},children:n.jsx(S,{})})]},a=[{question:"What speeds can I expect?",answer:"Our fiber plans offer speeds from 100 Mbps up to 2 Gbps depending on your selected plan."},{question:"Is there a contract period?",answer:"Our standard plans have a 24-month minimum contract. Month-to-month options are available at a slightly higher rate."},{question:"What equipment is included?",answer:"All plans include a free Wi-Fi router rental. Premium plans include a Wi-Fi 6 router."},{question:"How long does installation take?",answer:"Installation typically takes 2-3 weeks from order confirmation. A technician will visit your location for setup."}],e={args:{items:a}},t={args:{title:"Internet Service FAQ",eyebrow:"Need Help?",items:a}},r={args:{items:a,defaultOpenIndex:0}},s={args:{items:[a[0]]}};var o,i,m;e.parameters={...e.parameters,docs:{...(o=e.parameters)==null?void 0:o.docs,source:{originalSource:`{ + args: { + items: sampleItems + } +}`,...(m=(i=e.parameters)==null?void 0:i.docs)==null?void 0:m.source}}};var c,p,l;t.parameters={...t.parameters,docs:{...(c=t.parameters)==null?void 0:c.docs,source:{originalSource:`{ + args: { + title: "Internet Service FAQ", + eyebrow: "Need Help?", + items: sampleItems + } +}`,...(l=(p=t.parameters)==null?void 0:p.docs)==null?void 0:l.source}}};var u,d,g;r.parameters={...r.parameters,docs:{...(u=r.parameters)==null?void 0:u.docs,source:{originalSource:`{ + args: { + items: sampleItems, + defaultOpenIndex: 0 + } +}`,...(g=(d=r.parameters)==null?void 0:d.docs)==null?void 0:g.source}}};var f,h,I;s.parameters={...s.parameters,docs:{...(f=s.parameters)==null?void 0:f.docs,source:{originalSource:`{ + args: { + items: [sampleItems[0]] + } +}`,...(I=(h=s.parameters)==null?void 0:h.docs)==null?void 0:I.source}}};const A=["Default","WithCustomTitle","WithDefaultOpen","SingleItem"];export{e as Default,s as SingleItem,t as WithCustomTitle,r as WithDefaultOpen,A as __namedExportsOrder,b as default}; diff --git a/apps/portal/public/storybook/assets/ServiceHeroCard-C1DUlYtH.js b/apps/portal/public/storybook/assets/ServiceHeroCard-C1DUlYtH.js new file mode 100644 index 00000000..17b40af9 --- /dev/null +++ b/apps/portal/public/storybook/assets/ServiceHeroCard-C1DUlYtH.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{A as c}from"./AnimatedCard-DFAiX4zP.js";import{B as m}from"./button-C8_cybvS.js";import{C as u}from"./check-DmNqM64J.js";import{A as x}from"./arrow-right-BNMAry-H.js";function p({title:s,description:o,icon:t,features:i,href:a,color:n}){const r={blue:{iconBg:"bg-info-soft",iconText:"text-info",border:"border-info/20",hoverBorder:"hover:border-info/40"},green:{iconBg:"bg-success-soft",iconText:"text-success",border:"border-success/20",hoverBorder:"hover:border-success/40"},purple:{iconBg:"bg-primary/10",iconText:"text-primary",border:"border-primary/20",hoverBorder:"hover:border-primary/40"}}[n];return e.jsx(c,{className:`relative group rounded-2xl overflow-hidden h-full border-2 ${r.border} ${r.hoverBorder} transition-all duration-300 hover:shadow-lg hover:-translate-y-1`,children:e.jsxs("div",{className:"p-8 h-full flex flex-col bg-card",children:[e.jsxs("div",{className:"flex items-start gap-4 mb-4",children:[e.jsx("div",{className:`p-3 rounded-xl ${r.iconBg} flex-shrink-0`,children:e.jsx("div",{className:r.iconText,children:t})}),e.jsx("div",{children:e.jsx("h3",{className:"text-2xl font-bold text-foreground",children:s})})]}),e.jsx("p",{className:"text-sm text-muted-foreground mb-6 leading-relaxed",children:o}),e.jsx("ul",{className:"space-y-2.5 mb-8 flex-grow",children:i.map((l,d)=>e.jsxs("li",{className:"flex items-start gap-2.5 text-sm text-foreground/80",children:[e.jsx(u,{className:"h-4 w-4 text-success mt-0.5 flex-shrink-0"}),e.jsx("span",{children:l})]},d))}),e.jsx("div",{className:"mt-auto",children:e.jsx(m,{as:"a",href:a,className:"w-full font-semibold rounded-xl",rightIcon:e.jsx(x,{className:"w-4 h-4"}),children:"Explore Plans"})})]})})}p.__docgenInfo={description:"",methods:[],displayName:"ServiceHeroCard",props:{title:{required:!0,tsType:{name:"string"},description:""},description:{required:!0,tsType:{name:"string"},description:""},icon:{required:!0,tsType:{name:"ReactReactNode",raw:"React.ReactNode"},description:""},features:{required:!0,tsType:{name:"Array",elements:[{name:"string"}],raw:"string[]"},description:""},href:{required:!0,tsType:{name:"string"},description:""},color:{required:!0,tsType:{name:"union",raw:'"blue" | "green" | "purple"',elements:[{name:"literal",value:'"blue"'},{name:"literal",value:'"green"'},{name:"literal",value:'"purple"'}]},description:""}}};export{p as S}; diff --git a/apps/portal/public/storybook/assets/ServiceHeroCard.stories-B78coRsl.js b/apps/portal/public/storybook/assets/ServiceHeroCard.stories-B78coRsl.js new file mode 100644 index 00000000..99ed01f9 --- /dev/null +++ b/apps/portal/public/storybook/assets/ServiceHeroCard.stories-B78coRsl.js @@ -0,0 +1,28 @@ +import{j as s}from"./jsx-runtime-D_zvdyIk.js";import{S as u}from"./ServiceHeroCard-C1DUlYtH.js";import"./AnimatedCard-DFAiX4zP.js";import"./proxy-ZkTvaR74.js";import"./index-JhL3uwfD.js";import"./button-C8_cybvS.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./spinner-mU4XywER.js";import"./check-DmNqM64J.js";import"./createLucideIcon-CctB0W3q.js";import"./arrow-right-BNMAry-H.js";const w={title:"Features/Services/Common/ServiceHeroCard",component:u,parameters:{layout:"centered"}},e={args:{title:"Internet",description:"High-speed fiber optic internet for your home or apartment in Japan.",icon:s.jsx("span",{className:"text-2xl",children:"📶"}),features:["Up to 10Gbps speeds","NTT Fiber Network","Professional installation","English support"],href:"/services/internet",color:"blue"}},r={args:{title:"SIM Cards",description:"Mobile data, voice, and SMS plans on the NTT Docomo network.",icon:s.jsx("span",{className:"text-2xl",children:"📱"}),features:["eSIM & Physical SIM","Data + Voice plans","First month free","No Japanese bank needed"],href:"/services/sim",color:"green"}},t={args:{title:"VPN Router",description:"Access US and UK streaming content with a pre-configured VPN router.",icon:s.jsx("span",{className:"text-2xl",children:"🛡️"}),features:["US & UK servers","Pre-configured router","Plug and play","Stream your favorites"],href:"/services/vpn",color:"purple"}};var o,n,a;e.parameters={...e.parameters,docs:{...(o=e.parameters)==null?void 0:o.docs,source:{originalSource:`{ + args: { + title: "Internet", + description: "High-speed fiber optic internet for your home or apartment in Japan.", + icon: 📶, + features: ["Up to 10Gbps speeds", "NTT Fiber Network", "Professional installation", "English support"], + href: "/services/internet", + color: "blue" + } +}`,...(a=(n=e.parameters)==null?void 0:n.docs)==null?void 0:a.source}}};var i,p,c;r.parameters={...r.parameters,docs:{...(i=r.parameters)==null?void 0:i.docs,source:{originalSource:`{ + args: { + title: "SIM Cards", + description: "Mobile data, voice, and SMS plans on the NTT Docomo network.", + icon: 📱, + features: ["eSIM & Physical SIM", "Data + Voice plans", "First month free", "No Japanese bank needed"], + href: "/services/sim", + color: "green" + } +}`,...(c=(p=r.parameters)==null?void 0:p.docs)==null?void 0:c.source}}};var l,m,d;t.parameters={...t.parameters,docs:{...(l=t.parameters)==null?void 0:l.docs,source:{originalSource:`{ + args: { + title: "VPN Router", + description: "Access US and UK streaming content with a pre-configured VPN router.", + icon: 🛡️, + features: ["US & UK servers", "Pre-configured router", "Plug and play", "Stream your favorites"], + href: "/services/vpn", + color: "purple" + } +}`,...(d=(m=t.parameters)==null?void 0:m.docs)==null?void 0:d.source}}};const E=["Blue","Green","Purple"];export{e as Blue,r as Green,t as Purple,E as __namedExportsOrder,w as default}; diff --git a/apps/portal/public/storybook/assets/ServiceHighlights-BOQJA3wz.js b/apps/portal/public/storybook/assets/ServiceHighlights-BOQJA3wz.js new file mode 100644 index 00000000..a51a82e5 --- /dev/null +++ b/apps/portal/public/storybook/assets/ServiceHighlights-BOQJA3wz.js @@ -0,0 +1,2 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{r as a}from"./index-JhL3uwfD.js";import{c as d}from"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";function p({icon:t,title:l,description:i,highlight:n}){return e.jsxs("div",{className:"group relative flex items-start gap-3 p-4 rounded-xl bg-card border border-border/60 hover:border-primary/30 hover:shadow-sm transition-all duration-200",children:[e.jsx("div",{className:"flex h-9 w-9 items-center justify-center rounded-lg bg-primary/8 text-primary flex-shrink-0 mt-0.5",children:t}),e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsxs("div",{className:"flex items-center gap-2 mb-0.5",children:[e.jsx("h3",{className:"font-semibold text-foreground text-sm",children:l}),n&&e.jsx("span",{className:"inline-flex py-0.5 px-1.5 rounded-md bg-primary/8 text-[10px] font-semibold text-primary whitespace-nowrap",children:n})]}),e.jsx("p",{className:"text-xs text-muted-foreground leading-relaxed",children:i})]})]})}function u({icon:t,title:l,description:i,highlight:n}){return e.jsx("div",{className:"flex-shrink-0 w-[260px] snap-center",children:e.jsxs("div",{className:"h-full p-4 rounded-xl bg-card border border-border/60 shadow-sm",children:[e.jsxs("div",{className:"flex items-center justify-between gap-2 mb-3",children:[e.jsx("div",{className:"flex h-9 w-9 items-center justify-center rounded-lg bg-primary/8 text-primary flex-shrink-0",children:t}),n&&e.jsx("span",{className:"inline-flex py-0.5 px-1.5 rounded-md bg-primary/8 text-[10px] font-bold text-primary uppercase tracking-wide",children:n})]}),e.jsx("h3",{className:"font-semibold text-foreground text-sm mb-1",children:l}),e.jsx("p",{className:"text-xs text-muted-foreground leading-relaxed line-clamp-3",children:i})]})})}function f({features:t,className:l=""}){const i=a.useRef(null),[n,x]=a.useState(0);a.useEffect(()=>{const s=i.current;if(!s)return;const r=()=>{const o=s.scrollLeft,c=Math.min(Math.round(o/272),t.length-1);x(m=>m===c?m:c)};return s.addEventListener("scroll",r,{passive:!0}),()=>s.removeEventListener("scroll",r)},[t.length]);const h=s=>{const r=i.current;if(!r)return;r.scrollTo({left:s*272,behavior:"smooth"})};return e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:d("md:hidden",l),children:[e.jsxs("div",{ref:i,className:"flex gap-3 overflow-x-auto pb-3 -mx-4 px-4 snap-x snap-mandatory scrollbar-hide touch-pan-x",children:[t.map((s,r)=>e.jsx(u,{...s},r)),e.jsx("div",{className:"flex-shrink-0 w-1","aria-hidden":"true"})]}),e.jsx("div",{className:"flex justify-center gap-1.5 mt-1.5",children:t.map((s,r)=>e.jsx("button",{type:"button",onClick:()=>h(r),"aria-label":`Go to slide ${r+1}`,className:d("h-1.5 rounded-full transition-all duration-300",n===r?"w-5 bg-primary":"w-1.5 bg-muted-foreground/25 hover:bg-muted-foreground/40")},r))})]}),e.jsx("div",{className:d("hidden md:grid md:grid-cols-2 lg:grid-cols-3 gap-3",l),children:t.map((s,r)=>e.jsx(p,{...s},r))})]})}f.__docgenInfo={description:`ServiceHighlights - Grid-based feature highlights. +Mobile: horizontal scrolling carousel. Desktop: 3-column grid.`,methods:[],displayName:"ServiceHighlights",props:{features:{required:!0,tsType:{name:"Array",elements:[{name:"HighlightFeature"}],raw:"HighlightFeature[]"},description:""},className:{required:!1,tsType:{name:"string"},description:"",defaultValue:{value:'""',computed:!1}}}};export{f as S}; diff --git a/apps/portal/public/storybook/assets/ServiceHighlights.stories-D4GoZ_5i.js b/apps/portal/public/storybook/assets/ServiceHighlights.stories-D4GoZ_5i.js new file mode 100644 index 00000000..1a007b4a --- /dev/null +++ b/apps/portal/public/storybook/assets/ServiceHighlights.stories-D4GoZ_5i.js @@ -0,0 +1,9 @@ +import{j as r}from"./jsx-runtime-D_zvdyIk.js";import{S as d}from"./ServiceHighlights-BOQJA3wz.js";import"./index-JhL3uwfD.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";const x={title:"Features/Services/Base/ServiceHighlights",component:d,parameters:{layout:"padded"}},e=r.jsx("svg",{className:"w-5 h-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:r.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M13 10V3L4 14h7v7l9-11h-7z"})}),p=[{icon:e,title:"Lightning Fast",description:"Up to 2 Gbps download speeds with our fiber network.",highlight:"NEW"},{icon:e,title:"Unlimited Data",description:"No data caps or throttling on any plan."},{icon:e,title:"24/7 Support",description:"English and Japanese support available around the clock."},{icon:e,title:"Free Installation",description:"Professional installation included with all annual plans.",highlight:"PROMO"},{icon:e,title:"No Lock-in",description:"Flexible month-to-month plans available."},{icon:e,title:"Coverage",description:"Available in major metropolitan areas across Japan."}],t={args:{features:p}},a={args:{features:p.slice(0,3)}};var o,s,i;t.parameters={...t.parameters,docs:{...(o=t.parameters)==null?void 0:o.docs,source:{originalSource:`{ + args: { + features: sampleFeatures + } +}`,...(i=(s=t.parameters)==null?void 0:s.docs)==null?void 0:i.source}}};var n,l,c;a.parameters={...a.parameters,docs:{...(n=a.parameters)==null?void 0:n.docs,source:{originalSource:`{ + args: { + features: sampleFeatures.slice(0, 3) + } +}`,...(c=(l=a.parameters)==null?void 0:l.docs)==null?void 0:c.source}}};const k=["Default","ThreeFeatures"];export{t as Default,a as ThreeFeatures,k as __namedExportsOrder,x as default}; diff --git a/apps/portal/public/storybook/assets/ServicesBackLink.stories-B5g0HtZH.js b/apps/portal/public/storybook/assets/ServicesBackLink.stories-B5g0HtZH.js new file mode 100644 index 00000000..e87885dd --- /dev/null +++ b/apps/portal/public/storybook/assets/ServicesBackLink.stories-B5g0HtZH.js @@ -0,0 +1,16 @@ +import{B as u}from"./BackLink-C5IY6wzy.js";import"./jsx-runtime-D_zvdyIk.js";import"./button-C8_cybvS.js";import"./index-JhL3uwfD.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./spinner-mU4XywER.js";import"./ArrowLeftIcon-Cw1eswTb.js";const A={title:"Features/Services/Base/ServicesBackLink",component:u,parameters:{layout:"centered"}},e={args:{href:"/services"}},r={args:{href:"/services",label:"Back to Services"}},s={args:{href:"/services",label:"Back to Plans",align:"center"}};var a,t,o;e.parameters={...e.parameters,docs:{...(a=e.parameters)==null?void 0:a.docs,source:{originalSource:`{ + args: { + href: "/services" + } +}`,...(o=(t=e.parameters)==null?void 0:t.docs)==null?void 0:o.source}}};var c,n,i;r.parameters={...r.parameters,docs:{...(c=r.parameters)==null?void 0:c.docs,source:{originalSource:`{ + args: { + href: "/services", + label: "Back to Services" + } +}`,...(i=(n=r.parameters)==null?void 0:n.docs)==null?void 0:i.source}}};var m,p,l;s.parameters={...s.parameters,docs:{...(m=s.parameters)==null?void 0:m.docs,source:{originalSource:`{ + args: { + href: "/services", + label: "Back to Plans", + align: "center" + } +}`,...(l=(p=s.parameters)==null?void 0:p.docs)==null?void 0:l.source}}};const D=["Default","WithCustomLabel","CenterAligned"];export{s as CenterAligned,e as Default,r as WithCustomLabel,D as __namedExportsOrder,A as default}; diff --git a/apps/portal/public/storybook/assets/ServicesCarousel.stories-Ba6UYuYL.js b/apps/portal/public/storybook/assets/ServicesCarousel.stories-Ba6UYuYL.js new file mode 100644 index 00000000..940918b8 --- /dev/null +++ b/apps/portal/public/storybook/assets/ServicesCarousel.stories-Ba6UYuYL.js @@ -0,0 +1,6 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{r}from"./index-JhL3uwfD.js";import{L as G}from"./next-link-BmD4fPSy.js";import{c as m}from"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import{u as J}from"./use-in-view-Du9cy_vv.js";import{p as W,b as q}from"./services-GtI5icT3.js";import{A as V}from"./index-CNXKWNLp.js";import{m as B}from"./proxy-ZkTvaR74.js";import{A as Q}from"./arrow-right-BNMAry-H.js";import{c as Z}from"./createLucideIcon-CctB0W3q.js";import{C as ee}from"./chevron-right-C40ybnlz.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./wifi-Df9jtwRo.js";import"./smartphone-Dk2P1VMI.js";import"./wrench-BgTvXjQb.js";import"./building-2-C7pcwIk2.js";/** + * @license lucide-react v0.563.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const te=[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]],re=Z("chevron-left",te);function oe({items:a,autoPlayMs:n=5e3}){const t=a.length,[o,i]=r.useState(0),[d,l]=r.useState(0),[u,x]=r.useState(!1),j=r.useRef(!1),h=r.useRef({activeIndex:o,dragOffset:d,total:t});h.current={activeIndex:o,dragOffset:d,total:t};const N=r.useRef(!1),C=r.useRef(void 0),f=r.useCallback(()=>{N.current=!0,clearTimeout(C.current),C.current=setTimeout(()=>{N.current=!1},n*2)},[n]);r.useEffect(()=>()=>clearTimeout(C.current),[]);const A=r.useCallback(s=>{f(),i(s),l(0)},[f]),k=r.useCallback(()=>{f(),i(s=>(s+1)%h.current.total),l(0)},[f]),T=r.useCallback(()=>{f(),i(s=>(s-1+h.current.total)%h.current.total),l(0)},[f]),E=r.useCallback(()=>{i(0),l(0)},[]),D=r.useRef(0),M=r.useRef(0),v=r.useRef(!1),p=r.useCallback((s,c)=>{D.current=s,M.current=c.getBoundingClientRect().width,v.current=!0,j.current=!1,x(!0),l(0),f()},[f]),y=r.useCallback(s=>{if(!v.current)return;const c=M.current||1,g=s-D.current;Math.abs(g)>5&&(j.current=!0),l(g/c)},[]),b=r.useCallback(()=>{if(!v.current)return;v.current=!1,x(!1);const{dragOffset:s,activeIndex:c,total:g}=h.current;s<-.15?i((c+1)%g):s>.15&&i((c-1+g)%g),l(0)},[]),$=r.useCallback(s=>{const c=s.touches[0];c&&p(c.clientX,s.currentTarget)},[p]),L=r.useCallback(s=>{const c=s.touches[0];c&&y(c.clientX)},[y]),P=r.useCallback(()=>b(),[b]),_=r.useCallback(s=>{s.preventDefault(),p(s.clientX,s.currentTarget)},[p]),X=r.useCallback(s=>y(s.clientX),[y]),z=r.useCallback(()=>b(),[b]),U=r.useCallback(()=>b(),[b]),K=r.useCallback(s=>{s.key==="ArrowLeft"?T():s.key==="ArrowRight"&&k()},[T,k]);r.useEffect(()=>{if(t<=1)return;const s=setInterval(()=>{N.current||(i(c=>(c+1)%t),l(0))},n);return()=>clearInterval(s)},[t,n]);const H=r.useCallback(s=>{let c=s-o;const g=Math.floor(t/2);return c>g&&(c-=t),c<-g&&(c+=t),c+d},[o,d,t]),Y=r.useCallback(()=>j.current,[]);return{items:a,total:t,activeIndex:o,isDragging:u,wasDragging:Y,getSlideOffset:H,goTo:A,goNext:k,goPrev:T,reset:E,onTouchStart:$,onTouchMove:L,onTouchEnd:P,onMouseDown:_,onMouseMove:X,onMouseUp:z,onMouseLeave:U,onKeyDown:K}}const se={};function ne(a=se){const n=r.useRef(null),t=J(n,{once:!0,amount:typeof a.threshold=="number"?a.threshold:.1,...a.root?{root:{current:a.root}}:void 0});return[n,t]}const F={blue:{iconBg:"bg-blue-500/12",iconText:"text-blue-600",ctaBg:"bg-blue-600 hover:bg-blue-700",dotBg:"bg-blue-600",border:"border-blue-500/20",glowFrom:"from-blue-500/5",cssVar:"var(--color-blue-500)"},emerald:{iconBg:"bg-emerald-500/12",iconText:"text-emerald-600",ctaBg:"bg-emerald-600 hover:bg-emerald-700",dotBg:"bg-emerald-600",border:"border-emerald-500/20",glowFrom:"from-emerald-500/5",cssVar:"var(--color-emerald-500)"},violet:{iconBg:"bg-violet-500/12",iconText:"text-violet-600",ctaBg:"bg-violet-600 hover:bg-violet-700",dotBg:"bg-violet-600",border:"border-violet-500/20",glowFrom:"from-violet-500/5",cssVar:"var(--color-violet-500)"},amber:{iconBg:"bg-amber-500/12",iconText:"text-amber-600",ctaBg:"bg-amber-600 hover:bg-amber-700",dotBg:"bg-amber-600",border:"border-amber-500/20",glowFrom:"from-amber-500/5",cssVar:"var(--color-amber-500)"},indigo:{iconBg:"bg-indigo-500/12",iconText:"text-indigo-600",ctaBg:"bg-indigo-600 hover:bg-indigo-700",dotBg:"bg-indigo-600",border:"border-indigo-500/20",glowFrom:"from-indigo-500/5",cssVar:"var(--color-indigo-500)"},cyan:{iconBg:"bg-cyan-500/12",iconText:"text-cyan-600",ctaBg:"bg-cyan-600 hover:bg-cyan-700",dotBg:"bg-cyan-600",border:"border-cyan-500/20",glowFrom:"from-cyan-500/5",cssVar:"var(--color-cyan-500)"},rose:{iconBg:"bg-rose-500/12",iconText:"text-rose-600",ctaBg:"bg-rose-600 hover:bg-rose-700",dotBg:"bg-rose-600",border:"border-rose-500/20",glowFrom:"from-rose-500/5",cssVar:"var(--color-rose-500)"},slate:{iconBg:"bg-slate-500/12",iconText:"text-slate-600",ctaBg:"bg-slate-600 hover:bg-slate-700",dotBg:"bg-slate-600",border:"border-slate-500/20",glowFrom:"from-slate-500/5",cssVar:"var(--color-slate-500)"}},ae={enter:{opacity:0,y:20,scale:.98},center:{opacity:1,y:0,scale:1},exit:{opacity:0,y:-20,scale:.98}},ie={enter:{opacity:0,y:12},center:{opacity:1,y:0},exit:{opacity:0,y:-12}},ce=r.memo(function({card:n,wasDragging:t}){const o=F[n.accent];return e.jsx(G,{href:n.href,draggable:!1,onClick:i=>{t()&&i.preventDefault()},className:m("block rounded-3xl border overflow-hidden","shadow-lg hover:shadow-xl transition-shadow duration-300",o.border),style:{background:`linear-gradient(145deg, color-mix(in oklch, ${o.cssVar} 6%, white), white)`},children:e.jsxs("div",{className:"flex flex-col sm:flex-row gap-6 sm:gap-10 p-7 sm:p-10",children:[e.jsxs("div",{className:"flex-1 flex flex-col justify-center min-w-0",children:[e.jsxs("div",{className:"flex items-center gap-3 mb-5",children:[e.jsx("div",{className:m("h-12 w-12 rounded-2xl flex items-center justify-center shrink-0",o.iconBg,o.iconText),children:e.jsx("div",{className:"[&>svg]:h-6 [&>svg]:w-6",children:n.icon})}),n.badge&&e.jsx("span",{className:"inline-flex items-center rounded-full bg-success/10 text-success px-3 py-1 text-xs font-bold tracking-wide",children:n.badge})]}),e.jsx("p",{className:"text-sm font-medium text-muted-foreground mb-1",children:n.problemHook}),e.jsx("h3",{className:"text-2xl sm:text-3xl font-extrabold text-foreground mb-3 leading-tight",children:n.title}),e.jsx("p",{className:"text-[15px] text-muted-foreground leading-relaxed mb-6 max-w-lg",children:n.description}),e.jsxs("span",{className:m("inline-flex items-center gap-2 rounded-full px-6 py-3 text-sm font-bold text-white","transition-all duration-200 self-start shadow-md hover:shadow-lg hover:gap-3",o.ctaBg),children:[n.ctaLabel,e.jsx(Q,{className:"h-4 w-4"})]})]}),e.jsx("div",{className:m("hidden sm:flex items-center justify-center w-56 shrink-0","rounded-2xl bg-gradient-to-br to-transparent",o.glowFrom),children:e.jsxs("div",{className:"text-center px-6 py-8",children:[e.jsx("div",{className:m("h-16 w-16 rounded-2xl flex items-center justify-center mx-auto mb-4",o.iconBg,o.iconText),children:e.jsx("div",{className:"[&>svg]:h-8 [&>svg]:w-8",children:n.icon})}),e.jsx("p",{className:"text-sm font-semibold text-foreground/80",children:n.keyBenefit})]})})]})})}),le={personal:{heading:"Personal Services",subheading:"Everything you need to stay connected in Japan"},business:{heading:"Business Services",subheading:"Enterprise connectivity solutions for your team"}};function de({activeTab:a,onTabChange:n}){const t=le[a];return e.jsx("div",{className:"mx-auto max-w-3xl px-6 sm:px-10 mb-10",children:e.jsxs("div",{className:"flex flex-col sm:flex-row sm:items-center sm:justify-between gap-4",children:[e.jsx("div",{className:"min-h-[4.5rem]",children:e.jsx(V,{mode:"wait",children:e.jsxs(B.div,{variants:ie,initial:"enter",animate:"center",exit:"exit",transition:{duration:.25,ease:"easeOut"},children:[e.jsx("h2",{className:"text-3xl sm:text-4xl font-extrabold text-foreground font-heading",children:t.heading}),e.jsx("p",{className:"mt-2 text-lg text-muted-foreground",children:t.subheading})]},a)})}),e.jsx("div",{className:"flex bg-muted rounded-full p-1 self-start relative",children:["personal","business"].map(o=>e.jsxs("button",{type:"button",onClick:()=>n(o),className:m("relative z-10 px-5 py-2.5 text-sm font-semibold rounded-full transition-colors duration-300",a===o?"text-background":"text-muted-foreground hover:text-foreground"),children:[a===o&&e.jsx(B.span,{layoutId:"tab-indicator",className:"absolute inset-0 rounded-full bg-foreground shadow-sm",transition:{type:"spring",stiffness:400,damping:30}}),e.jsx("span",{className:"relative z-10",children:o==="personal"?"For You":"For Business"})]},o))})]})})}function ue({cards:a,activeIndex:n,goTo:t,goPrev:o,goNext:i}){return e.jsx("div",{className:"mx-auto max-w-3xl px-6 sm:px-10",children:e.jsxs("div",{className:"flex items-center justify-center gap-6 mt-8",children:[e.jsx("button",{type:"button","aria-label":"Previous service",onClick:o,className:"h-10 w-10 rounded-full border border-border bg-card text-foreground shadow-sm hover:bg-muted transition-colors flex items-center justify-center",children:e.jsx(re,{className:"h-5 w-5"})}),e.jsx("div",{className:"flex items-center gap-2",children:a.map((d,l)=>{const u=F[d.accent];return e.jsx("button",{type:"button","aria-label":`Go to ${d.title}`,onClick:()=>t(l),className:m("rounded-full transition-all duration-300 h-2.5",l===n?m("w-8",u.dotBg):"w-2.5 bg-border hover:bg-muted-foreground")},`${d.title}-${l}`)})}),e.jsx("button",{type:"button","aria-label":"Next service",onClick:i,className:"h-10 w-10 rounded-full border border-border bg-card text-foreground shadow-sm hover:bg-muted transition-colors flex items-center justify-center",children:e.jsx(ee,{className:"h-5 w-5"})})]})})}function me(a,n){const t=Math.abs(a),o=t<2.5,i=Math.min(t,2),d=a*100,l=1-i*.15,u=o?1-i*.3:0,x=i*2;return{opacity:u,transform:`translateX(${d}%) scale(${l})`,filter:x>.1?`blur(${x}px)`:"none",transition:n?"none":"all 500ms cubic-bezier(0.25, 1, 0.5, 1)",zIndex:o?Math.round((1-t)*10):0,pointerEvents:t<.5?"auto":"none",visibility:o?"visible":"hidden"}}function ge({cards:a,carousel:n}){const t=n;return e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"relative overflow-hidden select-none cursor-grab active:cursor-grabbing",onTouchStart:t.onTouchStart,onTouchMove:t.onTouchMove,onTouchEnd:t.onTouchEnd,onMouseDown:t.onMouseDown,onMouseMove:t.onMouseMove,onMouseUp:t.onMouseUp,onMouseLeave:t.onMouseLeave,onKeyDown:t.onKeyDown,tabIndex:0,role:"region","aria-label":"Services carousel","aria-roledescription":"carousel",children:e.jsx("div",{className:"mx-auto max-w-3xl px-6 sm:px-10",children:e.jsx("div",{className:"relative",children:a.map((o,i)=>{const d=t.getSlideOffset(i),u=Math.abs(d)<.5,x=me(d,t.isDragging);return e.jsx("div",{className:m(u?"relative shadow-2xl rounded-3xl":"absolute inset-0"),style:x,role:"group","aria-roledescription":"slide","aria-label":`${i+1} of ${t.total}: ${o.title}`,"aria-hidden":!u,children:e.jsx(ce,{card:o,wasDragging:t.wasDragging})},`${o.title}-${i}`)})})})}),e.jsx(ue,{cards:a,activeIndex:t.activeIndex,goTo:t.goTo,goPrev:t.goPrev,goNext:t.goNext})]})}function O(){const[a,n]=r.useState("personal"),[t,o]=ne(),i=a==="personal"?W:q,d=oe({items:i,autoPlayMs:1e4}),l=u=>{u!==a&&(n(u),d.reset())};return e.jsxs("div",{ref:t,className:m("py-16 sm:py-20 transition-all duration-700",o?"opacity-100 translate-y-0":"opacity-0 translate-y-8"),children:[e.jsx(de,{activeTab:a,onTabChange:l}),e.jsx(V,{mode:"wait",children:e.jsx(B.div,{variants:ae,initial:"enter",animate:"center",exit:"exit",transition:{duration:.3,ease:[.25,1,.5,1]},children:e.jsx(ge,{cards:i,carousel:d})},a)})]})}O.__docgenInfo={description:"",methods:[],displayName:"ServicesCarousel"};const Ie={title:"Features/LandingPage/ServicesCarousel",component:O,parameters:{layout:"fullscreen"}},w={};var R,S,I;w.parameters={...w.parameters,docs:{...(R=w.parameters)==null?void 0:R.docs,source:{originalSource:"{}",...(I=(S=w.parameters)==null?void 0:S.docs)==null?void 0:I.source}}};const Ve=["Default"];export{w as Default,Ve as __namedExportsOrder,Ie as default}; diff --git a/apps/portal/public/storybook/assets/ServicesHero-BxvrExEF.js b/apps/portal/public/storybook/assets/ServicesHero-BxvrExEF.js new file mode 100644 index 00000000..ffac499f --- /dev/null +++ b/apps/portal/public/storybook/assets/ServicesHero-BxvrExEF.js @@ -0,0 +1 @@ +import{j as t}from"./jsx-runtime-D_zvdyIk.js";import{c as a}from"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";const c={left:"text-left items-start",center:"text-center items-center"};function u({title:l,description:o,align:i="center",eyebrow:r,children:n,className:d,displayFont:m=!0,animated:e=!0}){const s=e?"animate-in fade-in slide-in-from-bottom-4 duration-500":"";return t.jsxs("div",{className:a("flex flex-col gap-2",c[i],d,i==="center"?"mx-auto max-w-2xl":""),children:[r?t.jsx("div",{className:a("text-sm font-semibold text-primary uppercase tracking-wider mb-1",s),style:e?{animationDelay:"0ms"}:void 0,children:r}):null,t.jsx("h1",{className:a("text-2xl sm:text-3xl lg:text-4xl text-foreground leading-tight font-bold tracking-tight",m&&"font-heading",s),style:e?{animationDelay:"50ms"}:void 0,children:l}),t.jsx("p",{className:a("text-sm md:text-base text-muted-foreground leading-relaxed max-w-lg",i==="center"&&"mx-auto",s),style:e?{animationDelay:"100ms"}:void 0,children:o}),n?t.jsx("div",{className:a("mt-1 w-full",s),style:e?{animationDelay:"150ms"}:void 0,children:n}):null]})}u.__docgenInfo={description:"",methods:[],displayName:"ServicesHero",props:{title:{required:!0,tsType:{name:"string"},description:""},description:{required:!0,tsType:{name:"string"},description:""},align:{required:!1,tsType:{name:"union",raw:'"left" | "center"',elements:[{name:"literal",value:'"left"'},{name:"literal",value:'"center"'}]},description:"",defaultValue:{value:'"center"',computed:!1}},eyebrow:{required:!1,tsType:{name:"ReactNode"},description:""},children:{required:!1,tsType:{name:"ReactNode"},description:""},className:{required:!1,tsType:{name:"string"},description:""},displayFont:{required:!1,tsType:{name:"boolean"},description:"Use display font for title",defaultValue:{value:"true",computed:!1}},animated:{required:!1,tsType:{name:"boolean"},description:"Show animated entrance",defaultValue:{value:"true",computed:!1}}}};export{u as S}; diff --git a/apps/portal/public/storybook/assets/ServicesHero.stories-DhI0dPyd.js b/apps/portal/public/storybook/assets/ServicesHero.stories-DhI0dPyd.js new file mode 100644 index 00000000..e58bb0f1 --- /dev/null +++ b/apps/portal/public/storybook/assets/ServicesHero.stories-DhI0dPyd.js @@ -0,0 +1,43 @@ +import{j as C}from"./jsx-runtime-D_zvdyIk.js";import{S as k}from"./ServicesHero-BxvrExEF.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";const P={title:"Features/Services/Base/ServicesHero",component:k,parameters:{layout:"padded"}},e={args:{title:"Internet Services",description:"Choose from our range of high-speed fiber internet plans designed for your needs."}},r={args:{eyebrow:"Fiber Internet",title:"Blazing Fast Internet",description:"Experience the best internet speeds in Japan with our fiber network."}},t={args:{title:"Configure Your Plan",description:"Select your preferred options below.",align:"left"}},n={args:{title:"Static Hero Section",description:"This version does not use entrance animations.",animated:!1}},o={args:{title:"Get Started Today",description:"Pick a plan and configure it to your needs.",children:C.jsx("div",{style:{padding:"8px 16px",background:"#f0f0f0",borderRadius:8,textAlign:"center"},children:"Custom content slot"})}},s={args:{title:"Standard Font Hero",description:"Uses the default body font instead of the display font.",displayFont:!1}};var a,i,d;e.parameters={...e.parameters,docs:{...(a=e.parameters)==null?void 0:a.docs,source:{originalSource:`{ + args: { + title: "Internet Services", + description: "Choose from our range of high-speed fiber internet plans designed for your needs." + } +}`,...(d=(i=e.parameters)==null?void 0:i.docs)==null?void 0:d.source}}};var c,p,l;r.parameters={...r.parameters,docs:{...(c=r.parameters)==null?void 0:c.docs,source:{originalSource:`{ + args: { + eyebrow: "Fiber Internet", + title: "Blazing Fast Internet", + description: "Experience the best internet speeds in Japan with our fiber network." + } +}`,...(l=(p=r.parameters)==null?void 0:p.docs)==null?void 0:l.source}}};var u,m,f;t.parameters={...t.parameters,docs:{...(u=t.parameters)==null?void 0:u.docs,source:{originalSource:`{ + args: { + title: "Configure Your Plan", + description: "Select your preferred options below.", + align: "left" + } +}`,...(f=(m=t.parameters)==null?void 0:m.docs)==null?void 0:f.source}}};var g,h,y;n.parameters={...n.parameters,docs:{...(g=n.parameters)==null?void 0:g.docs,source:{originalSource:`{ + args: { + title: "Static Hero Section", + description: "This version does not use entrance animations.", + animated: false + } +}`,...(y=(h=n.parameters)==null?void 0:h.docs)==null?void 0:y.source}}};var S,b,x;o.parameters={...o.parameters,docs:{...(S=o.parameters)==null?void 0:S.docs,source:{originalSource:`{ + args: { + title: "Get Started Today", + description: "Pick a plan and configure it to your needs.", + children:
+ Custom content slot +
+ } +}`,...(x=(b=o.parameters)==null?void 0:b.docs)==null?void 0:x.source}}};var F,v,w;s.parameters={...s.parameters,docs:{...(F=s.parameters)==null?void 0:F.docs,source:{originalSource:`{ + args: { + title: "Standard Font Hero", + description: "Uses the default body font instead of the display font.", + displayFont: false + } +}`,...(w=(v=s.parameters)==null?void 0:v.docs)==null?void 0:w.source}}};const T=["Default","WithEyebrow","LeftAligned","NotAnimated","WithChildren","NoDisplayFont"];export{e as Default,t as LeftAligned,s as NoDisplayFont,n as NotAnimated,o as WithChildren,r as WithEyebrow,T as __namedExportsOrder,P as default}; diff --git a/apps/portal/public/storybook/assets/ServicesOverviewContent.stories-Dc0-GGC0.js b/apps/portal/public/storybook/assets/ServicesOverviewContent.stories-Dc0-GGC0.js new file mode 100644 index 00000000..e54c1fe0 --- /dev/null +++ b/apps/portal/public/storybook/assets/ServicesOverviewContent.stories-Dc0-GGC0.js @@ -0,0 +1,25 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{L as p}from"./next-link-BmD4fPSy.js";import{W as H}from"./wifi-Df9jtwRo.js";import{S as O}from"./smartphone-Dk2P1VMI.js";import{S as M}from"./shield-check-CusqZMaY.js";import{B as U}from"./building-2-C7pcwIk2.js";import{W as $}from"./wrench-BgTvXjQb.js";import{C as E}from"./check-DmNqM64J.js";import{A as u}from"./arrow-right-BNMAry-H.js";import{P as F}from"./phone-BtPh0Z3S.js";import"./index-JhL3uwfD.js";import"./createLucideIcon-CctB0W3q.js";const A={internet:{icon:"bg-sky-500/10 text-sky-600",badge:"bg-sky-500/10 text-sky-700 border-sky-500/20",stripe:"from-sky-500 to-blue-600"},sim:{icon:"bg-emerald-500/10 text-emerald-600",badge:"bg-emerald-500/10 text-emerald-700 border-emerald-500/20",stripe:"from-emerald-500 to-teal-600"},vpn:{icon:"bg-violet-500/10 text-violet-600",badge:"bg-violet-500/10 text-violet-700 border-violet-500/20",stripe:"from-violet-500 to-purple-600"},business:{icon:"bg-slate-500/10 text-slate-600",badge:"bg-slate-500/10 text-slate-700 border-slate-500/20",stripe:"from-slate-500 to-slate-700"},onsite:{icon:"bg-amber-500/10 text-amber-600",badge:"bg-amber-500/10 text-amber-700 border-amber-500/20",stripe:"from-amber-500 to-orange-600"}},x=[{id:"internet",icon:H,title:"Internet",subtitle:"Fiber Optic",description:"NTT Optical Fiber for homes and apartments. Speeds up to 10Gbps with professional installation.",price:"¥3,200",priceUnit:"/mo",features:["Up to 10Gbps","NTT Network","Pro Install"],useBasePath:!0},{id:"sim",icon:O,title:"SIM & eSIM",subtitle:"Mobile Data",description:"Data, voice & SMS on NTT Docomo network. Physical SIM or instant eSIM activation.",price:"¥1,100",priceUnit:"/mo",badge:"1st month free",features:["Docomo Network","Voice + Data","eSIM Ready"],useBasePath:!0},{id:"vpn",icon:M,title:"VPN Router",subtitle:"Streaming Access",description:"Access US & UK streaming content with a pre-configured router. Simple plug-and-play.",price:"¥2,500",priceUnit:"/mo",features:["US/UK Content","Pre-configured","Plug & Play"],useBasePath:!0},{id:"business",icon:U,title:"Business",subtitle:"Enterprise IT",description:"Enterprise solutions for offices and commercial spaces. Dedicated support and SLAs.",features:["Office Setup","Dedicated Support","Custom SLAs"],useBasePath:!1,fixedPath:"/services/business"},{id:"onsite",icon:$,title:"Onsite Support",subtitle:"Tech Assistance",description:"Professional technicians visit your location for setup, troubleshooting, and maintenance.",features:["Home Visits","Setup Help","Troubleshooting"],useBasePath:!1,fixedPath:"/services/onsite"}];function V(){return e.jsxs("section",{className:"relative overflow-hidden pt-8 pb-12",children:[e.jsx("div",{className:"absolute inset-0 pointer-events-none opacity-40",style:{backgroundImage:"radial-gradient(circle at center, color-mix(in oklch, var(--primary) 10%, transparent) 0.8px, transparent 0.8px)",backgroundSize:"28px 28px"}}),e.jsx("div",{className:"absolute -top-20 -right-20 w-80 h-80 rounded-full pointer-events-none opacity-50",style:{background:"radial-gradient(circle, color-mix(in oklch, var(--info) 20%, transparent) 0%, transparent 65%)"}}),e.jsx("div",{className:"absolute -bottom-16 -left-16 w-64 h-64 rounded-full pointer-events-none opacity-30",style:{background:"radial-gradient(circle, color-mix(in oklch, var(--primary) 18%, transparent) 0%, transparent 65%)"}}),e.jsxs("div",{className:"relative max-w-5xl mx-auto px-4 sm:px-6 lg:px-8 text-center",children:[e.jsx("p",{className:"text-sm font-semibold text-primary uppercase tracking-wider mb-3 animate-in fade-in slide-in-from-bottom-4 duration-500",children:"Full English Support"}),e.jsx("h1",{className:"text-3xl sm:text-4xl lg:text-5xl font-bold text-foreground tracking-tight animate-in fade-in slide-in-from-bottom-4 duration-500",style:{animationDelay:"80ms"},children:"Our Services"}),e.jsx("p",{className:"text-base sm:text-lg text-muted-foreground mt-3 max-w-xl mx-auto leading-relaxed animate-in fade-in slide-in-from-bottom-4 duration-500",style:{animationDelay:"160ms"},children:"Connectivity and support solutions designed for Japan's international community."})]})]})}function D(t,r){return t.useBasePath?`${r}/${t.id}`:t.fixedPath}function W({service:t,basePath:r,index:i}){const a=t.icon,s=A[t.id];return e.jsxs(p,{href:D(t,r),className:"group relative overflow-hidden rounded-2xl bg-card border border-border shadow-sm hover:shadow-md transition-all duration-300 animate-in fade-in slide-in-from-bottom-6 duration-600",style:{animationDelay:`${i*80}ms`},children:[e.jsx("div",{className:`h-1 w-full bg-gradient-to-r ${s.stripe}`}),e.jsxs("div",{className:"p-6",children:[t.badge&&e.jsx("div",{className:"absolute top-5 right-5",children:e.jsx("span",{className:`inline-flex items-center rounded-full border px-2.5 py-0.5 text-xs font-semibold ${s.badge}`,children:t.badge})}),e.jsx("div",{className:`w-11 h-11 rounded-xl ${s.icon} flex items-center justify-center mb-4`,children:e.jsx(a,{className:"h-5.5 w-5.5"})}),e.jsx("p",{className:"text-[11px] font-semibold uppercase tracking-wider text-muted-foreground mb-1",children:t.subtitle}),e.jsx("h3",{className:"text-xl font-bold text-foreground mb-2",children:t.title}),e.jsx("p",{className:"text-sm text-muted-foreground leading-relaxed mb-4",children:t.description}),e.jsxs("div",{className:"flex items-end justify-between gap-4",children:[e.jsx("div",{className:"flex flex-wrap gap-1.5",children:t.features.map(o=>e.jsxs("span",{className:"inline-flex items-center gap-1 rounded-md bg-muted/60 px-2 py-1 text-[11px] font-medium text-foreground/80",children:[e.jsx(E,{className:"h-3 w-3 text-primary/70"}),o]},o))}),t.price&&e.jsxs("div",{className:"text-right flex-shrink-0",children:[e.jsx("span",{className:"text-lg font-bold text-foreground",children:t.price}),e.jsx("span",{className:"text-xs text-muted-foreground",children:t.priceUnit})]})]}),e.jsxs("div",{className:"flex items-center gap-1.5 text-primary font-medium text-sm mt-4 group-hover:gap-2.5 transition-all duration-300",children:[e.jsx("span",{children:"View Plans"}),e.jsx(u,{className:"h-3.5 w-3.5 transition-transform group-hover:translate-x-0.5"})]})]})]},t.id)}function G({service:t,basePath:r,index:i}){const a=t.icon,s=A[t.id];return e.jsxs(p,{href:D(t,r),className:"group relative overflow-hidden rounded-xl bg-card border border-border shadow-sm hover:shadow-md transition-all duration-300 animate-in fade-in slide-in-from-bottom-6 duration-600",style:{animationDelay:`${(i+2)*80}ms`},children:[e.jsx("div",{className:`absolute left-0 top-0 bottom-0 w-1 bg-gradient-to-b ${s.stripe}`}),e.jsxs("div",{className:"p-5 pl-6",children:[e.jsxs("div",{className:"flex items-start gap-3.5",children:[e.jsx("div",{className:`w-10 h-10 rounded-lg ${s.icon} flex items-center justify-center flex-shrink-0`,children:e.jsx(a,{className:"h-5 w-5"})}),e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsx("p",{className:"text-[10px] font-semibold uppercase tracking-wider text-muted-foreground mb-0.5",children:t.subtitle}),e.jsx("h3",{className:"text-base font-bold text-foreground mb-1.5",children:t.title}),e.jsx("p",{className:"text-xs text-muted-foreground leading-relaxed line-clamp-2 mb-3",children:t.description}),e.jsx("div",{className:"flex flex-wrap gap-1",children:t.features.map(o=>e.jsx("span",{className:"inline-flex items-center rounded bg-muted/50 px-1.5 py-0.5 text-[10px] font-medium text-muted-foreground",children:o},o))})]})]}),e.jsx("div",{className:"absolute bottom-4 right-4 opacity-0 group-hover:opacity-100 transition-opacity duration-200",children:e.jsx(u,{className:"h-4 w-4 text-primary"})})]})]},t.id)}function L(){return e.jsx("section",{className:"py-14",children:e.jsxs("div",{className:"max-w-3xl mx-auto px-4 sm:px-6 lg:px-8 text-center",children:[e.jsx("h2",{className:"text-xl sm:text-2xl font-bold text-foreground mb-3",children:"Need help choosing?"}),e.jsx("p",{className:"text-sm text-muted-foreground mb-6 max-w-md mx-auto leading-relaxed",children:"Our bilingual team can help you find the right solution. Get personalized recommendations in English."}),e.jsxs("div",{className:"flex flex-col sm:flex-row items-center justify-center gap-3",children:[e.jsxs(p,{href:"/contact",className:"inline-flex items-center gap-2 rounded-full bg-primary px-5 py-2.5 text-sm font-semibold text-white hover:bg-primary/90 transition-colors shadow-sm",children:["Get in Touch",e.jsx(u,{className:"h-3.5 w-3.5"})]}),e.jsxs("a",{href:"tel:0120660470",className:"inline-flex items-center gap-2 text-sm font-medium text-muted-foreground hover:text-foreground transition-colors","aria-label":"Call us toll free at 0120-660-470",children:[e.jsx(F,{className:"h-4 w-4","aria-hidden":"true"}),"0120-660-470 (Toll Free)"]})]})]})})}function B({basePath:t,showHero:r=!0,showCta:i=!0}){return e.jsxs("div",{children:[r&&e.jsx(V,{}),e.jsx("section",{className:r?"":"pt-2",children:e.jsxs("div",{className:"max-w-5xl mx-auto px-4 sm:px-6 lg:px-8",children:[e.jsx("div",{className:"grid grid-cols-1 lg:grid-cols-2 gap-4 mb-4",children:x.slice(0,2).map((a,s)=>e.jsx(W,{service:a,basePath:t,index:s},a.id))}),e.jsx("div",{className:"grid grid-cols-1 sm:grid-cols-3 gap-4",children:x.slice(2).map((a,s)=>e.jsx(G,{service:a,basePath:t,index:s},a.id))})]})}),i&&e.jsx(L,{})]})}B.__docgenInfo={description:"",methods:[],displayName:"ServicesOverviewContent",props:{basePath:{required:!0,tsType:{name:"union",raw:'"/services" | "/account/services"',elements:[{name:"literal",value:'"/services"'},{name:"literal",value:'"/account/services"'}]},description:'Base path for service links ("/services" or "/account/services")'},showHero:{required:!1,tsType:{name:"boolean"},description:"Whether to show the hero section (default: true)",defaultValue:{value:"true",computed:!1}},showCta:{required:!1,tsType:{name:"boolean"},description:"Whether to show the CTA section (default: true)",defaultValue:{value:"true",computed:!1}}}};const se={title:"Features/Services/Common/ServicesOverviewContent",component:B,parameters:{layout:"fullscreen"}},n={args:{basePath:"/services"}},l={args:{basePath:"/account/services"}},c={args:{basePath:"/services",showHero:!1}},d={args:{basePath:"/services",showCta:!1}},m={args:{basePath:"/services",showHero:!1,showCta:!1}};var h,f,g;n.parameters={...n.parameters,docs:{...(h=n.parameters)==null?void 0:h.docs,source:{originalSource:`{ + args: { + basePath: "/services" + } +}`,...(g=(f=n.parameters)==null?void 0:f.docs)==null?void 0:g.source}}};var b,v,j;l.parameters={...l.parameters,docs:{...(b=l.parameters)==null?void 0:b.docs,source:{originalSource:`{ + args: { + basePath: "/account/services" + } +}`,...(j=(v=l.parameters)==null?void 0:v.docs)==null?void 0:j.source}}};var N,w,y;c.parameters={...c.parameters,docs:{...(N=c.parameters)==null?void 0:N.docs,source:{originalSource:`{ + args: { + basePath: "/services", + showHero: false + } +}`,...(y=(w=c.parameters)==null?void 0:w.docs)==null?void 0:y.source}}};var S,P,k;d.parameters={...d.parameters,docs:{...(S=d.parameters)==null?void 0:S.docs,source:{originalSource:`{ + args: { + basePath: "/services", + showCta: false + } +}`,...(k=(P=d.parameters)==null?void 0:P.docs)==null?void 0:k.source}}};var C,T,I;m.parameters={...m.parameters,docs:{...(C=m.parameters)==null?void 0:C.docs,source:{originalSource:`{ + args: { + basePath: "/services", + showHero: false, + showCta: false + } +}`,...(I=(T=m.parameters)==null?void 0:T.docs)==null?void 0:I.source}}};const ae=["Public","Account","NoHero","NoCta","Minimal"];export{l as Account,m as Minimal,d as NoCta,c as NoHero,n as Public,ae as __namedExportsOrder,se as default}; diff --git a/apps/portal/public/storybook/assets/SessionTimeoutWarning.stories-BmTm_C0V.js b/apps/portal/public/storybook/assets/SessionTimeoutWarning.stories-BmTm_C0V.js new file mode 100644 index 00000000..2f54b146 --- /dev/null +++ b/apps/portal/public/storybook/assets/SessionTimeoutWarning.stories-BmTm_C0V.js @@ -0,0 +1,9 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{B as r}from"./button-C8_cybvS.js";import"./index-JhL3uwfD.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./spinner-mU4XywER.js";function p({timeLeft:i=5,onExtend:d=()=>{},onLogout:u=()=>{}}){return e.jsx("div",{className:"fixed inset-0 bg-black/50 flex items-center justify-center z-50",role:"presentation",children:e.jsxs("div",{role:"dialog","aria-modal":"true","aria-labelledby":"session-timeout-title","aria-describedby":"session-timeout-description",tabIndex:-1,className:"bg-white rounded-lg p-6 max-w-md w-full mx-4 shadow-xl outline-none",children:[e.jsxs("div",{className:"flex items-center gap-2 mb-4",children:[e.jsx("span",{className:"text-yellow-500 text-xl",children:"⚠️"}),e.jsx("h2",{id:"session-timeout-title",className:"text-lg font-semibold",children:"Session Expiring Soon"})]}),e.jsxs("p",{id:"session-timeout-description",className:"text-gray-600 mb-6",children:["Your session will expire in"," ",e.jsxs("strong",{children:[i," minute",i===1?"":"s"]}),". Would you like to extend your session?"]}),e.jsxs("div",{className:"flex gap-2 justify-end",children:[e.jsx(r,{variant:"outline",onClick:u,children:"Logout Now"}),e.jsx(r,{onClick:d,children:"Extend Session"})]})]})})}const N={title:"Features/Auth/SessionTimeoutWarning",component:p,parameters:{layout:"fullscreen"}},s={args:{timeLeft:5}},t={args:{timeLeft:1}};var o,n,a;s.parameters={...s.parameters,docs:{...(o=s.parameters)==null?void 0:o.docs,source:{originalSource:`{ + args: { + timeLeft: 5 + } +}`,...(a=(n=s.parameters)==null?void 0:n.docs)==null?void 0:a.source}}};var l,m,c;t.parameters={...t.parameters,docs:{...(l=t.parameters)==null?void 0:l.docs,source:{originalSource:`{ + args: { + timeLeft: 1 + } +}`,...(c=(m=t.parameters)==null?void 0:m.docs)==null?void 0:c.source}}};const S=["FiveMinutesLeft","OneMinuteLeft"];export{s as FiveMinutesLeft,t as OneMinuteLeft,S as __namedExportsOrder,N as default}; diff --git a/apps/portal/public/storybook/assets/SetPasswordForm-JAj2IB2C.js b/apps/portal/public/storybook/assets/SetPasswordForm-JAj2IB2C.js new file mode 100644 index 00000000..9b0b7f10 --- /dev/null +++ b/apps/portal/public/storybook/assets/SetPasswordForm-JAj2IB2C.js @@ -0,0 +1 @@ +import"./jsx-runtime-D_zvdyIk.js";import"./index-JhL3uwfD.js";import"./next-link-BmD4fPSy.js";import"./button-C8_cybvS.js";import"./input-BbGJiz0K.js";import"./password-input-D4khGh8v.js";import"./checkbox-DahUyQbt.js";import"./label-C25VH7yk.js";import"./error-message-DeFFz6H_.js";import"./status-pill-wWp9xkwA.js";import"./badge-BdMsasyi.js";import"./spinner-mU4XywER.js";import"./loading-overlay-DMJTiFny.js";import"./error-state-BSicqqE6.js";import"./empty-state-DRUGJ9ip.js";import"./inline-toast-DQJ-O9wc.js";import"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import"./logo-f0fprTjz.js";import"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./animated-container-DyAZ9gmw.js";import"./FormField-C0UylACv.js";import"./DataTable-COYdcx41.js";import"./OtpInput-6kd_2E0v.js";import"./OtpExpiryDisplay-BGgB7Tk6.js";import"./SearchFilterBar-Ds19v0-P.js";import"./PaginationBar-D_k7ztRb.js";import"./DetailHeader-C0ZsoM39.js";import"./AlertBanner-Bnlyj1xc.js";import"./index-BKyvj4H5.js";import"./SectionHeader-Bo81Whai.js";import"./ProgressSteps-weVdXcqu.js";import"./SubCard-1OZIPgEM.js";import"./AnimatedCard-DFAiX4zP.js";import"./ServiceCard-BJEHFLba.js";import"./SummaryStats-D6b7Am-p.js";import"./FilterDropdown-CUU04WmN.js";import"./ClearFiltersButton-CPCoyXk2.js";import"./DetailStatsGrid-CDkKTM-B.js";import"./SectionCard-BcUjc-7N.js";import"./MetricCard-BR1xVIXz.js";import"./BackLink-C5IY6wzy.js";import"./status-badge-5pzxe45J.js";import"./error-boundary-DIRO_cDI.js";import"./error-fallbacks-kSPsNxmV.js";import"./auth.store-CVqT-1lf.js";import{d as i,p as t,s as p}from"./schema-JsDJirqf.js";import{b as s,s as r}from"./coerce-BirWdn0y.js";import"./AuthLayout-DNr24V9g.js";import"./PasswordSection-DeRa0d5T.js";import"./PasswordRequirements-Iusuj6EU.js";import"./PasswordMatchIndicator-CoUjyU1r.js";import"./TermsCheckbox-CIu51LBN.js";import"./MarketingCheckbox-x7nAFt-_.js";import{Z as e}from"./compat-BjFfok0x.js";i.extend({rememberMe:s().optional()});t.extend({confirmPassword:r().min(1,"Please confirm your new password")}).superRefine((o,m)=>{o.password!==o.confirmPassword&&m.addIssue({code:e.custom,path:["confirmPassword"],message:"Passwords do not match"})});p.extend({confirmPassword:r().min(1,"Please confirm your password")}).refine(o=>o.password===o.confirmPassword,{message:"Passwords do not match",path:["confirmPassword"]}); diff --git a/apps/portal/public/storybook/assets/ShieldCheckIcon-BBoI5cMX.js b/apps/portal/public/storybook/assets/ShieldCheckIcon-BBoI5cMX.js new file mode 100644 index 00000000..774a9c4f --- /dev/null +++ b/apps/portal/public/storybook/assets/ShieldCheckIcon-BBoI5cMX.js @@ -0,0 +1 @@ +import{r as e}from"./index-JhL3uwfD.js";function a({title:r,titleId:t,...o},n){return e.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:n,"aria-labelledby":t},o),r?e.createElement("title",{id:t},r):null,e.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M9 12.75 11.25 15 15 9.75m-3-7.036A11.959 11.959 0 0 1 3.598 6 11.99 11.99 0 0 0 3 9.749c0 5.592 3.824 10.29 9 11.623 5.176-1.332 9-6.03 9-11.622 0-1.31-.21-2.571-.598-3.751h-.152c-3.196 0-6.1-1.248-8.25-3.285Z"}))}const i=e.forwardRef(a);export{i as F}; diff --git a/apps/portal/public/storybook/assets/SignalIcon-CUFdTwmf.js b/apps/portal/public/storybook/assets/SignalIcon-CUFdTwmf.js new file mode 100644 index 00000000..3bebf6ec --- /dev/null +++ b/apps/portal/public/storybook/assets/SignalIcon-CUFdTwmf.js @@ -0,0 +1 @@ +import{r as e}from"./index-JhL3uwfD.js";function n({title:r,titleId:a,...t},o){return e.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:o,"aria-labelledby":a},t),r?e.createElement("title",{id:a},r):null,e.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M9.348 14.652a3.75 3.75 0 0 1 0-5.304m5.304 0a3.75 3.75 0 0 1 0 5.304m-7.425 2.121a6.75 6.75 0 0 1 0-9.546m9.546 0a6.75 6.75 0 0 1 0 9.546M5.106 18.894c-3.808-3.807-3.808-9.98 0-13.788m13.788 0c3.808 3.807 3.808 9.98 0 13.788M12 12h.008v.008H12V12Zm.375 0a.375.375 0 1 1-.75 0 .375.375 0 0 1 .75 0Z"}))}const s=e.forwardRef(n);export{s as F}; diff --git a/apps/portal/public/storybook/assets/SimActions.stories-DbEDRfW_.js b/apps/portal/public/storybook/assets/SimActions.stories-DbEDRfW_.js new file mode 100644 index 00000000..a4e58d65 --- /dev/null +++ b/apps/portal/public/storybook/assets/SimActions.stories-DbEDRfW_.js @@ -0,0 +1,37 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{fn as s}from"./index-B9TJ7cVi.js";import{A}from"./AlertBanner-Bnlyj1xc.js";import{F as $}from"./PlusIcon-DGufmf06.js";import{F as m}from"./ArrowPathIcon-CZjG6RfV.js";import{F as I}from"./XMarkIcon-Bsb1W5VN.js";import"./XCircleIcon-CiVBnngB.js";import"./index-JhL3uwfD.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./InformationCircleIcon-Clz7d-56.js";import"./CheckCircleIcon-Dva35lTP.js";const d="w-full flex items-center justify-start px-4 py-4 rounded-lg text-sm font-medium transition-colors duration-[var(--cp-duration-normal)]",r="focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 focus:ring-offset-background",l="text-muted-foreground bg-muted cursor-not-allowed",a="shadow-[var(--cp-shadow-1)] hover:shadow-[var(--cp-shadow-2)]";function P({status:j,embedded:c=!1,onTopUpClick:N,onChangePlanClick:S,onReissueClick:y,onCancelClick:k}){const n=j==="active",w=c?"":"bg-card shadow-[var(--cp-shadow-1)] rounded-xl border border-border",T=c?"":"px-6 lg:px-8 py-6";return e.jsxs("div",{id:"sim-actions",className:w,children:[!c&&e.jsxs("div",{className:"px-6 py-6 border-b border-border",children:[e.jsx("h3",{className:"text-lg font-semibold tracking-tight text-foreground mb-1",children:"SIM Management Actions"}),e.jsx("p",{className:"text-sm text-muted-foreground",children:"Manage your SIM service"})]}),e.jsxs("div",{className:T,children:[!n&&e.jsx("div",{className:"mb-4",children:e.jsx(A,{variant:"warning",title:"Not available",size:"sm",elevated:!0,children:"SIM management actions are only available for active services."})}),e.jsxs("div",{className:"space-y-3",children:[e.jsx("button",{onClick:N,disabled:!n,className:`${d} ${n?`text-primary-foreground bg-primary hover:bg-primary-hover ${a} ${r}`:l}`,children:e.jsxs("div",{className:"flex items-center",children:[e.jsx($,{className:"h-4 w-4 mr-3"}),e.jsxs("div",{className:"text-left",children:[e.jsx("div",{className:"font-medium",children:"Top Up Data"}),e.jsx("div",{className:"text-xs opacity-90",children:"Add more data to your plan"})]})]})}),e.jsx("button",{onClick:S,disabled:!n,className:`${d} ${n?`text-secondary-foreground bg-secondary hover:bg-secondary/80 ${a} ${r}`:l}`,children:e.jsxs("div",{className:"flex items-center",children:[e.jsx(m,{className:"h-4 w-4 mr-3"}),e.jsxs("div",{className:"text-left",children:[e.jsx("div",{className:"font-medium",children:"Change Plan"}),e.jsx("div",{className:"text-xs opacity-90",children:"Switch to a different plan"})]})]})}),e.jsxs("button",{onClick:y,disabled:!n,className:`w-full flex flex-col items-start justify-start rounded-lg border px-4 py-4 text-left text-sm font-medium transition-colors duration-[var(--cp-duration-normal)] ${n?`border-success/30 bg-success-soft text-foreground hover:bg-success-soft/80 ${a} ${r}`:"text-muted-foreground bg-muted border-border cursor-not-allowed"}`,children:[e.jsx("div",{className:"flex w-full items-center justify-between",children:e.jsxs("div",{className:"flex items-center",children:[e.jsx(m,{className:"h-4 w-4 mr-3"}),e.jsxs("div",{className:"text-left",children:[e.jsx("div",{className:"font-medium",children:"Reissue SIM"}),e.jsx("div",{className:"text-xs opacity-70",children:"Configure replacement options and submit your request."})]})]})}),!n&&e.jsx("div",{className:"mt-3 w-full rounded-md border border-warning/25 bg-warning-soft px-3 py-2 text-xs text-muted-foreground",children:"SIM must be active to request a reissue."})]}),e.jsx("button",{onClick:k,disabled:!n,className:`${d} ${n?`text-danger bg-danger-soft border border-danger/30 hover:bg-danger-soft/80 ${a} ${r}`:l}`,children:e.jsxs("div",{className:"flex items-center",children:[e.jsx(I,{className:"h-4 w-4 mr-3"}),e.jsxs("div",{className:"text-left",children:[e.jsx("div",{className:"font-medium",children:"Cancel SIM"}),e.jsx("div",{className:"text-xs opacity-90",children:"Permanently cancel service"})]})]})})]})]})]})}const q={title:"Features/Subscriptions/Sim/SimActions",component:P,parameters:{layout:"centered"}},t={args:{subscriptionId:123,simType:"esim",status:"active",embedded:!1,currentPlanCode:"10GB",onTopUpClick:s(),onChangePlanClick:s(),onReissueClick:s(),onCancelClick:s()}},o={args:{subscriptionId:123,simType:"physical",status:"suspended",embedded:!1,currentPlanCode:"5GB",onTopUpClick:s(),onChangePlanClick:s(),onReissueClick:s(),onCancelClick:s()}},i={args:{subscriptionId:123,simType:"esim",status:"active",embedded:!0,currentPlanCode:"25GB",onTopUpClick:s(),onChangePlanClick:s(),onReissueClick:s(),onCancelClick:s()}};var u,p,f;t.parameters={...t.parameters,docs:{...(u=t.parameters)==null?void 0:u.docs,source:{originalSource:`{ + args: { + subscriptionId: 123, + simType: "esim", + status: "active", + embedded: false, + currentPlanCode: "10GB", + onTopUpClick: fn(), + onChangePlanClick: fn(), + onReissueClick: fn(), + onCancelClick: fn() + } +}`,...(f=(p=t.parameters)==null?void 0:p.docs)==null?void 0:f.source}}};var x,g,h;o.parameters={...o.parameters,docs:{...(x=o.parameters)==null?void 0:x.docs,source:{originalSource:`{ + args: { + subscriptionId: 123, + simType: "physical", + status: "suspended", + embedded: false, + currentPlanCode: "5GB", + onTopUpClick: fn(), + onChangePlanClick: fn(), + onReissueClick: fn(), + onCancelClick: fn() + } +}`,...(h=(g=o.parameters)==null?void 0:g.docs)==null?void 0:h.source}}};var C,b,v;i.parameters={...i.parameters,docs:{...(C=i.parameters)==null?void 0:C.docs,source:{originalSource:`{ + args: { + subscriptionId: 123, + simType: "esim", + status: "active", + embedded: true, + currentPlanCode: "25GB", + onTopUpClick: fn(), + onChangePlanClick: fn(), + onReissueClick: fn(), + onCancelClick: fn() + } +}`,...(v=(b=i.parameters)==null?void 0:b.docs)==null?void 0:v.source}}};const z=["ActiveSim","SuspendedSim","Embedded"];export{t as ActiveSim,i as Embedded,o as SuspendedSim,z as __namedExportsOrder,q as default}; diff --git a/apps/portal/public/storybook/assets/SimCallingRates.stories-D_yJKnJY.js b/apps/portal/public/storybook/assets/SimCallingRates.stories-D_yJKnJY.js new file mode 100644 index 00000000..5dd281a2 --- /dev/null +++ b/apps/portal/public/storybook/assets/SimCallingRates.stories-D_yJKnJY.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{r}from"./index-JhL3uwfD.js";function f({title:t,titleId:s,...a},n){return r.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:n,"aria-labelledby":s},a),t?r.createElement("title",{id:s},t):null,r.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M2.25 12.76c0 1.6 1.123 2.994 2.707 3.227 1.087.16 2.185.283 3.293.369V21l4.076-4.076a1.526 1.526 0 0 1 1.037-.443 48.282 48.282 0 0 0 5.68-.494c1.584-.233 2.707-1.626 2.707-3.228V6.741c0-1.602-1.123-2.995-2.707-3.228A48.394 48.394 0 0 0 12 3c-2.392 0-4.744.175-7.043.513C3.373 3.746 2.25 5.14 2.25 6.741v6.018Z"}))}const h=r.forwardRef(f);function g({title:t,titleId:s,...a},n){return r.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:n,"aria-labelledby":s},a),t?r.createElement("title",{id:s},t):null,r.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M12 21a9.004 9.004 0 0 0 8.716-6.747M12 21a9.004 9.004 0 0 1-8.716-6.747M12 21c2.485 0 4.5-4.03 4.5-9S14.485 3 12 3m0 18c-2.485 0-4.5-4.03-4.5-9S9.515 3 12 3m0 0a8.997 8.997 0 0 1 7.843 4.582M12 3a8.997 8.997 0 0 0-7.843 4.582m15.686 0A11.953 11.953 0 0 1 12 10.5c-2.998 0-5.74-1.1-7.843-2.918m15.686 0A8.959 8.959 0 0 1 21 12c0 .778-.099 1.533-.284 2.253m0 0A17.919 17.919 0 0 1 12 16.5c-3.162 0-6.133-.815-8.716-2.247m0 0A9.015 9.015 0 0 1 3 12c0-1.605.42-3.113 1.157-4.418"}))}const p=r.forwardRef(g);function j({title:t,titleId:s,...a},n){return r.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:n,"aria-labelledby":s},a),t?r.createElement("title",{id:s},t):null,r.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M2.25 6.75c0 8.284 6.716 15 15 15h2.25a2.25 2.25 0 0 0 2.25-2.25v-1.372c0-.516-.351-.966-.852-1.091l-4.423-1.106c-.44-.11-.902.055-1.173.417l-.97 1.293c-.282.376-.769.542-1.21.38a12.035 12.035 0 0 1-7.143-7.143c-.162-.441.004-.928.38-1.21l1.293-.97c.363-.271.527-.734.417-1.173L6.963 3.102a1.125 1.125 0 0 0-1.091-.852H4.5A2.25 2.25 0 0 0 2.25 4.5v2.25Z"}))}const d=r.forwardRef(j);function b({title:t,titleId:s,...a},n){return r.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:n,"aria-labelledby":s},a),t?r.createElement("title",{id:s},t):null,r.createElement("path",{fillRule:"evenodd",d:"M12.53 16.28a.75.75 0 0 1-1.06 0l-7.5-7.5a.75.75 0 0 1 1.06-1.06L12 14.69l6.97-6.97a.75.75 0 1 1 1.06 1.06l-7.5 7.5Z",clipRule:"evenodd"}))}const w=r.forwardRef(b),o={calling:{rate:10,unit:"30 sec"},sms:{rate:3,unit:"message"}},N=100,c=[{country:"United States",code:"US",rate:"31-34"},{country:"United Kingdom",code:"UK",rate:"78-108"},{country:"Australia",code:"AU",rate:"63-68"},{country:"China",code:"CN",rate:"49-57"},{country:"India",code:"IN",rate:"98-148"},{country:"Singapore",code:"SG",rate:"63-68"},{country:"France",code:"FR",rate:"78-108"},{country:"Germany",code:"DE",rate:"78-108"}];function v(){return e.jsxs("div",{className:"p-6 bg-muted/30",children:[e.jsxs("h4",{className:"text-sm font-medium text-foreground mb-4 flex items-center gap-2",children:[e.jsx("span",{className:"w-6 h-4 rounded-sm bg-[#BC002D] relative overflow-hidden flex items-center justify-center",children:e.jsx("span",{className:"w-3 h-3 rounded-full bg-white"})}),"Domestic (Japan)"]}),e.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[e.jsxs("div",{className:"bg-card rounded-lg p-4 border border-border",children:[e.jsxs("div",{className:"flex items-center gap-2 mb-2",children:[e.jsx(d,{className:"w-4 h-4 text-muted-foreground"}),e.jsx("span",{className:"text-sm text-muted-foreground",children:"Voice Calls"})]}),e.jsxs("div",{className:"text-2xl font-bold text-foreground",children:["¥",o.calling.rate,e.jsxs("span",{className:"text-sm font-normal text-muted-foreground ml-1",children:["/",o.calling.unit]})]})]}),e.jsxs("div",{className:"bg-card rounded-lg p-4 border border-border",children:[e.jsxs("div",{className:"flex items-center gap-2 mb-2",children:[e.jsx(h,{className:"w-4 h-4 text-muted-foreground"}),e.jsx("span",{className:"text-sm text-muted-foreground",children:"SMS"})]}),e.jsxs("div",{className:"text-2xl font-bold text-foreground",children:["¥",o.sms.rate,e.jsxs("span",{className:"text-sm font-normal text-muted-foreground ml-1",children:["/",o.sms.unit]})]})]})]}),e.jsx("p",{className:"text-xs text-muted-foreground mt-3",children:"Incoming calls and SMS are free."})]})}function y({isExpanded:t,onToggle:s}){return e.jsxs("div",{className:"border-t border-border",children:[e.jsxs("button",{onClick:s,className:"w-full p-4 flex items-center justify-between text-left hover:bg-muted/50 transition-colors",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(p,{className:"w-5 h-5 text-primary"}),e.jsx("span",{className:"font-medium text-foreground",children:"International Calling Rates"})]}),e.jsx(w,{className:`w-5 h-5 text-muted-foreground transition-transform ${t?"rotate-180":""}`})]}),t&&e.jsxs("div",{className:"px-6 pb-6",children:[e.jsx("div",{className:"bg-muted/30 rounded-lg overflow-hidden",children:e.jsxs("table",{className:"w-full text-sm",children:[e.jsx("thead",{children:e.jsxs("tr",{className:"border-b border-border",children:[e.jsx("th",{className:"text-left p-3 font-medium text-muted-foreground",children:"Country"}),e.jsx("th",{className:"text-right p-3 font-medium text-muted-foreground",children:"Rate (¥/30sec)"})]})}),e.jsx("tbody",{children:c.map((a,n)=>e.jsxs("tr",{className:ns(!t)}),e.jsx("div",{className:"p-6 bg-success/5 border-t border-success/20",children:e.jsxs("div",{className:"flex items-start gap-3",children:[e.jsx("div",{className:"w-10 h-10 rounded-lg bg-success/10 flex items-center justify-center flex-shrink-0",children:e.jsx(d,{className:"w-5 h-5 text-success"})}),e.jsxs("div",{children:[e.jsx("h4",{className:"font-medium text-foreground",children:"Unlimited Domestic Calling"}),e.jsxs("p",{className:"text-sm text-muted-foreground mt-1",children:["Add unlimited domestic calls to any Data+Voice plan for"," ",e.jsx("span",{className:"font-semibold text-success",children:"¥3,000/month"})]}),e.jsx("p",{className:"text-xs text-muted-foreground mt-2",children:"Available as an add-on during checkout. International calls not included."})]})]})})]})}x.__docgenInfo={description:"",methods:[],displayName:"SimCallingRates"};const C={title:"Features/Services/SIM/SimCallingRates",component:x,parameters:{layout:"centered"}},l={};var i,m,u;l.parameters={...l.parameters,docs:{...(i=l.parameters)==null?void 0:i.docs,source:{originalSource:"{}",...(u=(m=l.parameters)==null?void 0:m.docs)==null?void 0:u.source}}};const k=["Default"];export{l as Default,k as __namedExportsOrder,C as default}; diff --git a/apps/portal/public/storybook/assets/SimConfigureView.stories-e1VMTQiC.js b/apps/portal/public/storybook/assets/SimConfigureView.stories-e1VMTQiC.js new file mode 100644 index 00000000..9618ae20 --- /dev/null +++ b/apps/portal/public/storybook/assets/SimConfigureView.stories-e1VMTQiC.js @@ -0,0 +1,22 @@ +import{j as r}from"./jsx-runtime-D_zvdyIk.js";import{P as $}from"./PageLayout-CxVUl3Jy.js";import"./DataTable-COYdcx41.js";import"./FormField-C0UylACv.js";import"./OtpInput-6kd_2E0v.js";import"./OtpExpiryDisplay-BGgB7Tk6.js";import"./SearchFilterBar-Ds19v0-P.js";import"./PaginationBar-D_k7ztRb.js";import"./DetailHeader-C0ZsoM39.js";import"./AlertBanner-Bnlyj1xc.js";import"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import"./error-state-BSicqqE6.js";import"./index-BKyvj4H5.js";import"./SectionHeader-Bo81Whai.js";import{P as K}from"./ProgressSteps-weVdXcqu.js";import"./SubCard-1OZIPgEM.js";import"./AnimatedCard-DFAiX4zP.js";import"./ServiceCard-BJEHFLba.js";import"./SummaryStats-D6b7Am-p.js";import"./FilterDropdown-CUU04WmN.js";import"./ClearFiltersButton-CPCoyXk2.js";import"./DetailStatsGrid-CDkKTM-B.js";import"./SectionCard-BcUjc-7N.js";import"./MetricCard-BR1xVIXz.js";import{B as H}from"./BackLink-C5IY6wzy.js";import"./status-badge-5pzxe45J.js";import"./error-boundary-DIRO_cDI.js";import"./error-fallbacks-kSPsNxmV.js";import{u as J}from"./useServicesBasePath-Cd3sXgEE.js";import{L as Q}from"./LoadingSkeleton-D14suK9p.js";import{P as X}from"./PlanNotFound-C-GLleMO.js";import{P as Y}from"./PlanCard-C4v7V-Z7.js";import{P as Z}from"./PlatinumNotice-BGYq2W5f.js";import{S as ee}from"./SimTypeStep-DDAAK-Br.js";import{A as te}from"./ActivationStep-DEd_rSq5.js";import{A as re}from"./AddonsStep-BL22SA_U.js";import{N as ne}from"./NumberPortingStep-Bx0osMV8.js";import{R as ie}from"./ReviewOrderStep-D8BlP-PO.js";import{F as ae}from"./DevicePhoneMobileIcon-SMwjWf6M.js";import"./next-link-BmD4fPSy.js";import"./index-JhL3uwfD.js";import"./ArrowLeftIcon-Cw1eswTb.js";import"./empty-state-DRUGJ9ip.js";import"./button-C8_cybvS.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./spinner-mU4XywER.js";import"./PlusIcon-DGufmf06.js";import"./ChevronRightIcon-CMQWsJeW.js";import"./label-C25VH7yk.js";import"./input-BbGJiz0K.js";import"./error-message-DeFFz6H_.js";import"./ExclamationCircleIcon-jFfW0Ax_.js";import"./input-otp-Cin9-T84.js";import"./createLucideIcon-CctB0W3q.js";import"./clock-C92s7kSC.js";import"./FunnelIcon-8nhbwqu0.js";import"./XMarkIcon-Bsb1W5VN.js";import"./status-pill-wWp9xkwA.js";import"./XCircleIcon-CiVBnngB.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./InformationCircleIcon-Clz7d-56.js";import"./CheckCircleIcon-Dva35lTP.js";import"./password-input-D4khGh8v.js";import"./checkbox-DahUyQbt.js";import"./badge-BdMsasyi.js";import"./loading-overlay-DMJTiFny.js";import"./inline-toast-DQJ-O9wc.js";import"./index-CNXKWNLp.js";import"./proxy-ZkTvaR74.js";import"./logo-f0fprTjz.js";import"./next-image-69WeRggt.js";import"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./Squares2X2Icon-BMQM_Wy1.js";import"./animated-container-DyAZ9gmw.js";import"./ArrowPathIcon-CZjG6RfV.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./arrow-right-BNMAry-H.js";import"./next-navigation-FtRxULo3.js";import"./UsersIcon-DB1YN4Bz.js";import"./SimTypeSelector-m-grYnOJ.js";import"./CheckIcon-BKJSKBEC.js";import"./SignalIcon-CUFdTwmf.js";import"./EnvelopeIcon-Bx94PDZ6.js";import"./TruckIcon-C8f1NFCW.js";import"./ArrowRightIcon--Vuz7Q7x.js";import"./ActivationForm-B27tsgwI.js";import"./CardPricing-FcGNWupq.js";import"./CurrencyYenIcon-Bf5bmWZc.js";import"./AddonGroup-BSDkN5FG.js";import"./CheckCircleIcon-DrKOIitY.js";import"./MnpForm-j5Hck9cV.js";import"./date-Csq1SWDU.js";import"./date-CJlSVdaN.js";function oe(e){if(!(!Array.isArray(e)||e.length===0))return e.find(t=>{var i;return(i=t.catalogMetadata)==null?void 0:i.isDefault})||e[0]}function me(e){return e?e.oneTimePrice??e.unitPrice??e.monthlyPrice??0:0}function se(e,t){if(!(!e||t<=0))return{name:e.name,amount:t}}function pe(e,t,i,a){const s=(e.monthlyPrice??0)+t.reduce((o,u)=>{const n=i.find(c=>c.sku===u);return o+((n==null?void 0:n.monthlyPrice)??0)},0),p=(e.oneTimePrice??0)+a+t.reduce((o,u)=>{const n=i.find(c=>c.sku===u);return o+((n==null?void 0:n.oneTimePrice)??0)},0);return{monthly:s,oneTime:p}}function ue(e){var b;const{plan:t,simType:i,setSimType:a,eid:s,setEid:p,selectedAddons:o,setSelectedAddons:u,activationType:n,setActivationType:c,scheduledActivationDate:T,setScheduledActivationDate:V,wantsMnp:h,setWantsMnp:E,mnpData:O,setMnpData:G,validate:A,currentStep:_,setCurrentStep:m,activationFees:U,addons:v,onConfirm:W}=e,d=oe(U),P=me(d),w=se(d,P),C=pe(t,o,v,P);switch(_){case 1:return r.jsx(ee,{simType:i,setSimType:a,eid:s,setEid:p,validate:A,onNext:()=>m(2)});case 2:return r.jsx(te,{activationType:n,setActivationType:c,scheduledActivationDate:T,setScheduledActivationDate:V,activationFee:w,onNext:()=>m(3),onBack:()=>m(1)});case 3:return r.jsx(re,{addons:v,selectedAddons:o,setSelectedAddons:u,planType:t.simPlanType??"",onNext:()=>m(4),onBack:()=>m(2)});case 4:return r.jsx(ne,{wantsMnp:h,setWantsMnp:E,mnpData:O,setMnpData:G,activationType:n,validate:A,onNext:()=>m(5),onBack:()=>m(3)});case 5:return r.jsx(ie,{plan:t,simType:i,eid:s,activationType:n,scheduledActivationDate:T,wantsMnp:h,selectedAddons:o,addons:v,activationFee:w,monthlyTotal:C.monthly,oneTimeTotal:C.oneTime,onBack:()=>m(4),onConfirm:W,isDefault:(b=d==null?void 0:d.catalogMetadata)==null?void 0:b.isDefault});default:return null}}function R(e){const{plan:t,loading:i,currentStep:a,...s}=e,p=J();if(i)return r.jsx(Q,{});if(!t)return r.jsx(X,{});const o=[{number:1,title:"SIM Type",completed:a>1},{number:2,title:"Activation",completed:a>2},{number:3,title:"Add-ons",completed:a>3},{number:4,title:"Number Porting",completed:a>4}];return r.jsx($,{title:`Configure ${t.name}`,backLink:{label:"Back to Services",href:"/account/services"},icon:r.jsx(ae,{className:"h-6 w-6"}),children:r.jsxs("div",{className:"max-w-4xl mx-auto space-y-8",children:[r.jsx(H,{href:`${p}/sim`,label:"Back to SIM Plans"}),r.jsx(Y,{plan:t}),r.jsx(K,{steps:o,currentStep:a}),r.jsx(Z,{planName:t.name}),r.jsx("div",{className:"space-y-8",children:r.jsx(ue,{plan:t,currentStep:a,...s})})]})})}R.__docgenInfo={description:"",methods:[],displayName:"SimConfigureView",props:{plan:{required:!0,tsType:{name:"union",raw:"SimCatalogProduct | null",elements:[{name:"z.infer",elements:[{name:"simCatalogProductSchema"}],raw:"z.infer"},{name:"null"}]},description:""},activationFees:{required:!0,tsType:{name:"Array",elements:[{name:"z.infer",elements:[{name:"simActivationFeeCatalogItemSchema"}],raw:"z.infer"}],raw:"SimActivationFeeCatalogItem[]"},description:""},addons:{required:!0,tsType:{name:"Array",elements:[{name:"z.infer",elements:[{name:"simCatalogProductSchema"}],raw:"z.infer"}],raw:"SimCatalogProduct[]"},description:""},loading:{required:!0,tsType:{name:"boolean"},description:""},simType:{required:!0,tsType:{name:"z.infer",elements:[{name:"simCardTypeSchema"}],raw:"z.infer"},description:""},setSimType:{required:!0,tsType:{name:"signature",type:"function",raw:"(value: SimCardType) => void",signature:{arguments:[{type:{name:"z.infer",elements:[{name:"simCardTypeSchema"}],raw:"z.infer"},name:"value"}],return:{name:"void"}}},description:""},eid:{required:!0,tsType:{name:"string"},description:""},setEid:{required:!0,tsType:{name:"signature",type:"function",raw:"(value: string) => void",signature:{arguments:[{type:{name:"string"},name:"value"}],return:{name:"void"}}},description:""},selectedAddons:{required:!0,tsType:{name:"Array",elements:[{name:"string"}],raw:"string[]"},description:""},setSelectedAddons:{required:!0,tsType:{name:"signature",type:"function",raw:"(value: string[]) => void",signature:{arguments:[{type:{name:"Array",elements:[{name:"string"}],raw:"string[]"},name:"value"}],return:{name:"void"}}},description:""},activationType:{required:!0,tsType:{name:"z.infer",elements:[{name:"simActivationTypeSchema"}],raw:"z.infer"},description:""},setActivationType:{required:!0,tsType:{name:"signature",type:"function",raw:"(value: ActivationType) => void",signature:{arguments:[{type:{name:"z.infer",elements:[{name:"simActivationTypeSchema"}],raw:"z.infer"},name:"value"}],return:{name:"void"}}},description:""},scheduledActivationDate:{required:!0,tsType:{name:"string"},description:""},setScheduledActivationDate:{required:!0,tsType:{name:"signature",type:"function",raw:"(value: string) => void",signature:{arguments:[{type:{name:"string"},name:"value"}],return:{name:"void"}}},description:""},wantsMnp:{required:!0,tsType:{name:"boolean"},description:""},setWantsMnp:{required:!0,tsType:{name:"signature",type:"function",raw:"(value: boolean) => void",signature:{arguments:[{type:{name:"boolean"},name:"value"}],return:{name:"void"}}},description:""},mnpData:{required:!0,tsType:{name:"z.infer",elements:[{name:"simMnpFormSchema"}],raw:"z.infer"},description:""},setMnpData:{required:!0,tsType:{name:"signature",type:"function",raw:"(value: MnpData) => void",signature:{arguments:[{type:{name:"z.infer",elements:[{name:"simMnpFormSchema"}],raw:"z.infer"},name:"value"}],return:{name:"void"}}},description:""},currentStep:{required:!0,tsType:{name:"number"},description:""},setCurrentStep:{required:!0,tsType:{name:"signature",type:"function",raw:"(step: number) => void",signature:{arguments:[{type:{name:"number"},name:"step"}],return:{name:"void"}}},description:""},buildCheckoutSearchParams:{required:!0,tsType:{name:"signature",type:"function",raw:"() => URLSearchParams | null",signature:{arguments:[],return:{name:"union",raw:"URLSearchParams | null",elements:[{name:"URLSearchParams"},{name:"null"}]}}},description:""},validate:{required:!0,tsType:{name:"signature",type:"function",raw:"() => boolean",signature:{arguments:[],return:{name:"boolean"}}},description:""},onConfirm:{required:!0,tsType:{name:"signature",type:"function",raw:"() => void",signature:{arguments:[],return:{name:"void"}}},description:""}}};const nr={title:"Features/Services/SIM/SimConfigureView",component:R,parameters:{layout:"fullscreen"}},ce={id:"1",sku:"SIM-DV-3GB",name:"Data + Voice 3GB Plan",monthlyPrice:1100,unitPrice:1100,oneTimePrice:0,simDataSize:"3GB",simPlanType:"DataSmsVoice",simHasFamilyDiscount:!1,billingCycle:"Monthly",catalogMetadata:{}},de={reservationNumber:"",expiryDate:"",phoneNumber:"",mvnoAccountNumber:"",portingLastName:"",portingFirstName:"",portingLastNameKatakana:"",portingFirstNameKatakana:"",portingGender:"",portingDateOfBirth:""},S={plan:ce,loading:!1,simType:"",setSimType:()=>{},eid:"",setEid:()=>{},selectedAddons:[],setSelectedAddons:()=>{},activationType:"",setActivationType:()=>{},scheduledActivationDate:"",setScheduledActivationDate:()=>{},wantsMnp:!1,setWantsMnp:()=>{},mnpData:de,setMnpData:()=>{},validate:()=>!0,currentStep:1,setCurrentStep:()=>{},activationFees:[],addons:[],onConfirm:()=>{}},l={args:{...S,currentStep:1}},y={args:{...S,currentStep:2,simType:"eSIM"}},g={args:{...S,loading:!0}},f={args:{...S,plan:void 0}};var x,D,M;l.parameters={...l.parameters,docs:{...(x=l.parameters)==null?void 0:x.docs,source:{originalSource:`{ + args: { + ...baseArgs, + currentStep: 1 + } +}`,...(M=(D=l.parameters)==null?void 0:D.docs)==null?void 0:M.source}}};var F,q,N;y.parameters={...y.parameters,docs:{...(F=y.parameters)==null?void 0:F.docs,source:{originalSource:`{ + args: { + ...baseArgs, + currentStep: 2, + simType: "eSIM" + } +}`,...(N=(q=y.parameters)==null?void 0:q.docs)==null?void 0:N.source}}};var z,j,k;g.parameters={...g.parameters,docs:{...(z=g.parameters)==null?void 0:z.docs,source:{originalSource:`{ + args: { + ...baseArgs, + loading: true + } +}`,...(k=(j=g.parameters)==null?void 0:j.docs)==null?void 0:k.source}}};var B,L,I;f.parameters={...f.parameters,docs:{...(B=f.parameters)==null?void 0:B.docs,source:{originalSource:`{ + args: { + ...baseArgs, + plan: undefined + } +}`,...(I=(L=f.parameters)==null?void 0:L.docs)==null?void 0:I.source}}};const ir=["Step1","Step2","Loading","PlanNotFound"];export{g as Loading,f as PlanNotFound,l as Step1,y as Step2,ir as __namedExportsOrder,nr as default}; diff --git a/apps/portal/public/storybook/assets/SimDetailsCard.stories-BduNzX1g.js b/apps/portal/public/storybook/assets/SimDetailsCard.stories-BduNzX1g.js new file mode 100644 index 00000000..d25637aa --- /dev/null +++ b/apps/portal/public/storybook/assets/SimDetailsCard.stories-BduNzX1g.js @@ -0,0 +1,54 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{a as K}from"./date-Csq1SWDU.js";import"./index-BKyvj4H5.js";import{F as B}from"./ExclamationTriangleIcon-Di4DJZFg.js";import{F as j}from"./DevicePhoneMobileIcon-SMwjWf6M.js";import{F as k}from"./ClockIcon-BFX11zAZ.js";import{F as J}from"./SignalIcon-CUFdTwmf.js";import{F as X}from"./WifiIcon-BRIpHl8i.js";import{F as Y}from"./XCircleIcon-CiVBnngB.js";import{F as Z}from"./CheckCircleIcon-Dva35lTP.js";import{c as O}from"./text-CXa-DJQz.js";import"./date-CJlSVdaN.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./index-JhL3uwfD.js";function z(s){if(!s)return"—";const a=s.match(/(?:^|[_-])(\d+(?:\.\d+)?)\s*G(?:B)?\b/i);if(a&&a[1])return`${a[1]}G`;const r=s.match(/(\d+(?:\.\d+)?)\s*G(?:B)?\b/i);return r&&r[1]?`${r[1]}G`:s}const b="bg-card shadow-sm rounded-[var(--cp-card-radius)] border border-border",g="p-[var(--cp-card-padding)] lg:p-[var(--cp-card-padding-lg)]",h="px-[var(--cp-space-6)] py-[var(--cp-space-4)]",ee="px-[var(--cp-space-6)] py-[var(--cp-space-6)]",se={active:e.jsx(Z,{className:"h-6 w-6 text-success"}),suspended:e.jsx(B,{className:"h-6 w-6 text-warning"}),cancelled:e.jsx(Y,{className:"h-6 w-6 text-danger"}),pending:e.jsx(k,{className:"h-6 w-6 text-info"})},ae={active:"bg-success-soft text-success",suspended:"bg-warning-soft text-warning",cancelled:"bg-danger-soft text-danger",pending:"bg-info-soft text-info"},re="bg-muted text-muted-foreground";function te(s){return se[s]??e.jsx(j,{className:"h-6 w-6 text-muted-foreground"})}function W(s){return ae[s]??re}function V(s){const a=z(s);return(a==null?void 0:a.replace(/^PASI\s*/,""))||a}function U(s){const a=K(s,{fallback:s,dateStyle:"medium"});return a==="Invalid date"?s:a}function ne(s){return s>=1e3?`${(s/1e3).toFixed(1)} GB`:`${s.toFixed(0)} MB`}function x(s){return s?"text-success":"text-muted-foreground"}function ie({embedded:s}){const a=s?g:[b,"hover:shadow-md transition-shadow duration-[var(--cp-transition-normal)]",g].join(" ");return e.jsx("div",{className:a,children:e.jsxs("div",{className:"animate-pulse",children:[e.jsxs("div",{className:"flex items-center space-x-4",children:[e.jsx("div",{className:"rounded-full bg-gradient-to-br from-primary-soft to-accent-soft h-14 w-14"}),e.jsxs("div",{className:"flex-1 space-y-3",children:[e.jsx("div",{className:"h-5 bg-gradient-to-r from-muted to-muted-hover rounded-[var(--cp-radius-md)] w-3/4"}),e.jsx("div",{className:"h-4 bg-gradient-to-r from-muted to-muted-hover rounded-[var(--cp-radius-md)] w-1/2"})]})]}),e.jsxs("div",{className:"mt-8 space-y-4",children:[e.jsx("div",{className:"h-4 bg-gradient-to-r from-muted to-muted-hover rounded-[var(--cp-radius-md)]"}),e.jsx("div",{className:"h-4 bg-gradient-to-r from-muted to-muted-hover rounded-[var(--cp-radius-md)] w-5/6"}),e.jsx("div",{className:"h-4 bg-gradient-to-r from-muted to-muted-hover rounded-[var(--cp-radius-md)] w-4/6"})]})]})})}function de({embedded:s,error:a}){return e.jsx("div",{className:`${s?"":"bg-card shadow-sm rounded-[var(--cp-card-radius)] border border-danger-soft "}${g}`,children:e.jsxs("div",{className:"text-center",children:[e.jsx("div",{className:"bg-danger-soft rounded-full p-3 w-16 h-16 mx-auto mb-4",children:e.jsx(B,{className:"h-10 w-10 text-danger mx-auto"})}),e.jsx("h3",{className:"text-lg font-semibold text-foreground mb-2",children:"Error Loading SIM Details"}),e.jsx("p",{className:"text-danger text-sm",children:a})]})})}function oe({size:s=120,usagePercentage:a,remainingGB:r}){const t=(s-16)/2,n=2*Math.PI*t,f=n-a/100*n;return e.jsxs("div",{className:"relative flex items-center justify-center",children:[e.jsxs("svg",{width:s,height:s,className:"transform -rotate-90",children:[e.jsx("circle",{cx:s/2,cy:s/2,r:t,fill:"none",stroke:"currentColor",strokeWidth:"8",className:"text-muted"}),e.jsx("circle",{cx:s/2,cy:s/2,r:t,fill:"none",stroke:"currentColor",strokeWidth:"8",strokeLinecap:"round",strokeDasharray:n,strokeDashoffset:f,className:"text-primary transition-all duration-[var(--cp-transition-normal)]"})]}),e.jsxs("div",{className:"absolute text-center",children:[e.jsx("div",{className:"text-3xl font-semibold text-foreground",children:r.toFixed(1)}),e.jsx("div",{className:"text-sm text-muted-foreground -mt-1",children:"GB remaining"}),e.jsxs("div",{className:"text-xs text-muted-foreground mt-1",children:[a.toFixed(1),"% used"]})]})]})}function le({simDetails:s,embedded:a}){const r=s.remainingQuotaMb/1e3,t=1048.6,f=(t-r)/t*100,q=a?"":h+" border-b border-border";return e.jsxs("div",{className:a?"":b,children:[e.jsxs("div",{className:q,children:[e.jsx("div",{className:"flex items-center justify-between",children:e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx("span",{className:`inline-flex px-3 py-1 text-xs font-medium rounded-full ${W(s.status)}`,children:O(s.status)}),e.jsx("span",{className:"text-lg font-semibold text-foreground",children:V(s.planCode)})]})}),e.jsx("div",{className:"text-sm text-muted-foreground mt-1",children:s.msisdn})]}),e.jsxs("div",{className:`${a?"":ee}`,children:[e.jsx("div",{className:"flex justify-center mb-6",children:e.jsx(oe,{size:160,usagePercentage:f,remainingGB:r})}),e.jsxs("div",{className:"border-t border-border pt-4",children:[e.jsx("h4",{className:"text-sm font-medium text-foreground mb-3",children:"Recent Usage History"}),e.jsx("div",{className:"space-y-2",children:[{date:"Sep 29",usage:"0 MB"},{date:"Sep 28",usage:"0 MB"},{date:"Sep 27",usage:"0 MB"}].map((N,H)=>e.jsxs("div",{className:"flex justify-between items-center text-xs",children:[e.jsx("span",{className:"text-muted-foreground",children:N.date}),e.jsx("span",{className:"text-foreground",children:N.usage})]},H))})]})]})]})}function p({icon:s,enabled:a,label:r}){return e.jsxs("div",{className:"flex items-center",children:[s,e.jsxs("span",{className:`text-sm ${x(a)}`,children:[r," ",a?"Enabled":"Disabled"]})]})}function ce({simDetails:s,embedded:a,showFeaturesSummary:r}){const t=a?"":h+" border-b border-border";return e.jsxs("div",{className:a?"":b,children:[e.jsx("div",{className:t,children:e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsxs("div",{className:"flex items-center",children:[e.jsx("div",{className:"text-2xl mr-3",children:e.jsx(j,{className:"h-8 w-8 text-primary"})}),e.jsxs("div",{children:[e.jsx("h3",{className:"text-lg font-medium text-foreground",children:"Physical SIM Details"}),e.jsxs("p",{className:"text-sm text-muted-foreground",children:[V(s.planCode)," • ",`${s.simType} SIM`]})]})]}),e.jsxs("div",{className:"flex items-center space-x-3",children:[te(s.status),e.jsx("span",{className:`inline-flex px-3 py-1 text-sm font-semibold rounded-full ${W(s.status)}`,children:O(s.status)})]})]})}),e.jsxs("div",{className:`${a?"":h}`,children:[e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-6",children:[e.jsx(me,{simDetails:s}),r&&e.jsx(ue,{simDetails:s})]}),s.expiresAt&&e.jsx("div",{className:"mt-6 pt-6 border-t border-border",children:e.jsxs("div",{className:"flex items-center text-sm",children:[e.jsx(k,{className:"h-4 w-4 text-warning mr-2"}),e.jsxs("span",{className:"text-warning-foreground",children:["Expires on ",U(s.expiresAt)]})]})})]})]})}function me({simDetails:s}){return e.jsxs("div",{children:[e.jsx("h4",{className:"text-sm font-medium text-muted-foreground uppercase tracking-wider mb-3",children:"SIM Information"}),e.jsxs("div",{className:"space-y-3",children:[e.jsxs("div",{children:[e.jsx("label",{className:"text-xs text-muted-foreground",children:"Phone Number"}),e.jsx("p",{className:"text-sm font-medium text-foreground",children:s.msisdn})]}),e.jsxs("div",{children:[e.jsx("label",{className:"text-xs text-muted-foreground",children:"ICCID"}),e.jsx("p",{className:"text-sm font-mono text-foreground break-all",children:s.iccid})]}),s.eid&&e.jsxs("div",{children:[e.jsx("label",{className:"text-xs text-muted-foreground",children:"EID (eSIM)"}),e.jsx("p",{className:"text-sm font-mono text-foreground break-all",children:s.eid})]}),s.imsi&&e.jsxs("div",{children:[e.jsx("label",{className:"text-xs text-muted-foreground",children:"IMSI"}),e.jsx("p",{className:"text-sm font-mono text-foreground",children:s.imsi})]}),s.activatedAt&&e.jsxs("div",{children:[e.jsx("label",{className:"text-xs text-muted-foreground",children:"Service Start Date"}),e.jsx("p",{className:"text-sm text-foreground",children:U(s.activatedAt)})]})]})]})}function ue({simDetails:s}){return e.jsxs("div",{children:[e.jsx("h4",{className:"text-sm font-medium text-muted-foreground uppercase tracking-wider mb-3",children:"Service Features"}),e.jsxs("div",{className:"space-y-3",children:[e.jsxs("div",{children:[e.jsx("label",{className:"text-xs text-muted-foreground",children:"Data Remaining"}),e.jsx("p",{className:"text-lg font-semibold text-success",children:ne(s.remainingQuotaMb)})]}),s.hasVoice===!1?e.jsx("p",{className:"text-sm text-muted-foreground",children:"Data-only plan (no voice features)"}):e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"flex items-center space-x-4",children:[e.jsx(p,{icon:e.jsx(J,{className:`h-4 w-4 mr-1 ${x(s.voiceMailEnabled)}`}),enabled:s.voiceMailEnabled,label:"Voicemail"}),e.jsx(p,{icon:e.jsx(j,{className:`h-4 w-4 mr-1 ${x(s.callWaitingEnabled)}`}),enabled:s.callWaitingEnabled,label:"Call Waiting"})]}),e.jsx(p,{icon:e.jsx(X,{className:`h-4 w-4 mr-1 ${x(s.internationalRoamingEnabled)}`}),enabled:s.internationalRoamingEnabled,label:"Int'l Roaming"})]})]})]})}function Q({simDetails:s,isLoading:a,error:r,embedded:t=!1,showFeaturesSummary:n=!0}){return a?e.jsx(ie,{embedded:t}):r?e.jsx(de,{embedded:t,error:r}):s.simType==="esim"?e.jsx(le,{simDetails:s,embedded:t}):e.jsx(ce,{simDetails:s,embedded:t,showFeaturesSummary:n})}Q.__docgenInfo={description:"",methods:[],displayName:"SimDetailsCard",props:{simDetails:{required:!0,tsType:{name:"z.infer",elements:[{name:"simDetailsSchema"}],raw:"z.infer"},description:""},isLoading:{required:!1,tsType:{name:"boolean"},description:""},error:{required:!1,tsType:{name:"union",raw:"string | null",elements:[{name:"string"},{name:"null"}]},description:""},embedded:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"false",computed:!1}},showFeaturesSummary:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"true",computed:!1}}}};const Ie={title:"Features/Subscriptions/Sim/SimDetailsCard",component:Q,parameters:{layout:"centered"}},i={account:"ACC-001",status:"active",planCode:"PASI 10GB",planName:"10GB Data Plan",simType:"standard",iccid:"8981100000000000001",eid:"",msisdn:"090-1234-5678",imsi:"440101234567890",remainingQuotaMb:8500,remainingQuotaKb:85e5,voiceMailEnabled:!0,callWaitingEnabled:!1,internationalRoamingEnabled:!0,networkType:"5G",hasVoice:!0,hasSms:!0,activatedAt:"2025-01-15"},d={args:{simDetails:i,isLoading:!1,error:null,embedded:!1,showFeaturesSummary:!0}},o={args:{simDetails:{...i,simType:"esim",eid:"89012345678901234567890123456789"},isLoading:!1,error:null,embedded:!1}},l={args:{simDetails:i,isLoading:!0,error:null,embedded:!1}},c={args:{simDetails:i,isLoading:!1,error:"Failed to load SIM details. Please try again.",embedded:!1}},m={args:{simDetails:i,isLoading:!1,error:null,embedded:!0,showFeaturesSummary:!0}},u={args:{simDetails:{...i,hasVoice:!1,hasSms:!1,voiceMailEnabled:!1,callWaitingEnabled:!1},isLoading:!1,error:null}};var v,S,w;d.parameters={...d.parameters,docs:{...(v=d.parameters)==null?void 0:v.docs,source:{originalSource:`{ + args: { + simDetails: baseSimDetails, + isLoading: false, + error: null, + embedded: false, + showFeaturesSummary: true + } +}`,...(w=(S=d.parameters)==null?void 0:S.docs)==null?void 0:w.source}}};var y,E,F;o.parameters={...o.parameters,docs:{...(y=o.parameters)==null?void 0:y.docs,source:{originalSource:`{ + args: { + simDetails: { + ...baseSimDetails, + simType: "esim", + eid: "89012345678901234567890123456789" + }, + isLoading: false, + error: null, + embedded: false + } +}`,...(F=(E=o.parameters)==null?void 0:E.docs)==null?void 0:F.source}}};var C,I,D;l.parameters={...l.parameters,docs:{...(C=l.parameters)==null?void 0:C.docs,source:{originalSource:`{ + args: { + simDetails: baseSimDetails, + isLoading: true, + error: null, + embedded: false + } +}`,...(D=(I=l.parameters)==null?void 0:I.docs)==null?void 0:D.source}}};var A,L,M;c.parameters={...c.parameters,docs:{...(A=c.parameters)==null?void 0:A.docs,source:{originalSource:`{ + args: { + simDetails: baseSimDetails, + isLoading: false, + error: "Failed to load SIM details. Please try again.", + embedded: false + } +}`,...(M=(L=c.parameters)==null?void 0:L.docs)==null?void 0:M.source}}};var T,$,P;m.parameters={...m.parameters,docs:{...(T=m.parameters)==null?void 0:T.docs,source:{originalSource:`{ + args: { + simDetails: baseSimDetails, + isLoading: false, + error: null, + embedded: true, + showFeaturesSummary: true + } +}`,...(P=($=m.parameters)==null?void 0:$.docs)==null?void 0:P.source}}};var _,R,G;u.parameters={...u.parameters,docs:{...(_=u.parameters)==null?void 0:_.docs,source:{originalSource:`{ + args: { + simDetails: { + ...baseSimDetails, + hasVoice: false, + hasSms: false, + voiceMailEnabled: false, + callWaitingEnabled: false + }, + isLoading: false, + error: null + } +}`,...(G=(R=u.parameters)==null?void 0:R.docs)==null?void 0:G.source}}};const De=["PhysicalSim","ESim","Loading","WithError","Embedded","DataOnlyPlan"];export{u as DataOnlyPlan,o as ESim,m as Embedded,l as Loading,d as PhysicalSim,c as WithError,De as __namedExportsOrder,Ie as default}; diff --git a/apps/portal/public/storybook/assets/SimFeatureToggles.stories-BKP0N4tw.js b/apps/portal/public/storybook/assets/SimFeatureToggles.stories-BKP0N4tw.js new file mode 100644 index 00000000..bcb628a3 --- /dev/null +++ b/apps/portal/public/storybook/assets/SimFeatureToggles.stories-BKP0N4tw.js @@ -0,0 +1,45 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{fn as s}from"./index-B9TJ7cVi.js";import{r as o}from"./index-JhL3uwfD.js";import{A as F}from"./AlertBanner-Bnlyj1xc.js";import{B as g}from"./button-C8_cybvS.js";import{m as A}from"./proxy-ZkTvaR74.js";import"./XCircleIcon-CiVBnngB.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./InformationCircleIcon-Clz7d-56.js";import"./CheckCircleIcon-Dva35lTP.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./spinner-mU4XywER.js";const L="relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-[var(--cp-duration-normal)] focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 focus:ring-offset-background",$="bg-primary",q="bg-muted",z="pointer-events-none inline-block h-5 w-5 rounded-full bg-background shadow ring-0";function u({label:a,description:r,checked:t,onChange:n}){return e.jsxs("div",{className:"flex items-center justify-between py-4",children:[e.jsxs("div",{className:"flex-1",children:[e.jsx("div",{className:"text-sm font-medium text-foreground",children:a}),e.jsx("div",{className:"text-xs text-muted-foreground",children:r})]}),e.jsx("button",{type:"button",role:"switch","aria-checked":t,onClick:n,className:`${L} ${t?$:q}`,children:e.jsx(A.span,{className:z,animate:{x:t?20:0},transition:{type:"spring",stiffness:500,damping:30}})})]})}function K({nt:a,setNt:r}){const t=["4G","5G"];return e.jsxs("div",{className:"border-t border-border pt-6",children:[e.jsxs("div",{className:"mb-4",children:[e.jsx("div",{className:"text-sm font-medium text-foreground mb-1",children:"Network Type"}),e.jsx("div",{className:"text-xs text-muted-foreground",children:"Choose your preferred connectivity"}),e.jsx("div",{className:"text-xs text-danger mt-1",children:"Voice, network, and plan changes must be requested at least 30 minutes apart. If you just changed another option, you may need to wait before submitting."})]}),e.jsx("div",{className:"inline-flex rounded-lg bg-muted/60 p-1",role:"radiogroup","aria-label":"Network Type",children:t.map(n=>e.jsxs("button",{type:"button",role:"radio","aria-checked":a===n,onClick:()=>r(n),className:"relative rounded-md px-6 py-1.5 text-sm font-medium transition-colors duration-200 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 focus:ring-offset-background",children:[a===n&&e.jsx(A.div,{layoutId:"network-type-indicator",className:"absolute inset-0 rounded-md bg-background shadow-sm",transition:{type:"spring",stiffness:400,damping:30}}),e.jsx("span",{className:`relative z-10 ${a===n?"text-foreground":"text-muted-foreground"}`,children:n})]},n))}),e.jsx("p",{className:"text-xs text-muted-foreground mt-2",children:"5G connectivity for enhanced speeds"})]})}function P({voiceMailEnabled:a=!1,callWaitingEnabled:r=!1,internationalRoamingEnabled:t=!1,networkType:n="4G",embedded:m=!1,onApply:C,onReset:I}){const[p,S]=o.useState(!!a),[f,M]=o.useState(!!r),[b,W]=o.useState(!!t),[V,_]=o.useState(n==="5G"?"5G":"4G"),B=m?"":"bg-card rounded-xl border border-border shadow-[var(--cp-shadow-1)]",O=m?"":"p-6",D=m?"":"bg-card rounded-xl border border-border p-6 shadow-[var(--cp-shadow-1)]";return e.jsxs("div",{className:"space-y-6",children:[e.jsx("div",{className:B,children:e.jsxs("div",{className:`${O} space-y-4`,children:[e.jsx(u,{label:"Voice Mail",description:"\\u00a5300/month",checked:p,onChange:()=>S(!p)}),e.jsx(u,{label:"Call Waiting",description:"\\u00a5300/month",checked:f,onChange:()=>M(!f)}),e.jsx(u,{label:"International Roaming",description:"Global connectivity",checked:b,onChange:()=>W(!b)}),e.jsx(K,{nt:V,setNt:_})]})}),e.jsxs("div",{className:D,children:[e.jsx(F,{variant:"info",title:"Important Notes",size:"sm",children:e.jsxs("ul",{className:"space-y-1 text-xs",children:[e.jsx("li",{children:"Changes take effect approximately 30 minutes after submission."}),e.jsx("li",{children:"You may need to restart your device after changes are applied."}),e.jsx("li",{children:e.jsx("span",{className:"font-medium",children:"Voice, network, and plan changes must be requested at least 30 minutes apart."})}),e.jsx("li",{children:"Voice Mail / Call Waiting changes must be requested before the 25th of the month."})]})}),e.jsxs("div",{className:"flex flex-col sm:flex-row gap-3",children:[e.jsx(g,{className:"flex-1",onClick:C,children:"Apply Changes"}),e.jsx(g,{className:"flex-1 sm:flex-none",variant:"outline",onClick:I,children:"Reset"})]})]})]})}const ce={title:"Features/Subscriptions/Sim/SimFeatureToggles",component:P,parameters:{layout:"centered"}},i={args:{subscriptionId:123,voiceMailEnabled:!0,callWaitingEnabled:!1,internationalRoamingEnabled:!0,networkType:"4G",embedded:!1,onApply:s(),onReset:s()}},l={args:{subscriptionId:123,voiceMailEnabled:!0,callWaitingEnabled:!0,internationalRoamingEnabled:!0,networkType:"5G",embedded:!1,onApply:s(),onReset:s()}},d={args:{subscriptionId:123,voiceMailEnabled:!1,callWaitingEnabled:!1,internationalRoamingEnabled:!1,networkType:"4G",embedded:!1,onApply:s(),onReset:s()}},c={args:{subscriptionId:123,voiceMailEnabled:!0,callWaitingEnabled:!0,internationalRoamingEnabled:!1,networkType:"5G",embedded:!0,onApply:s(),onReset:s()}};var x,h,y;i.parameters={...i.parameters,docs:{...(x=i.parameters)==null?void 0:x.docs,source:{originalSource:`{ + args: { + subscriptionId: 123, + voiceMailEnabled: true, + callWaitingEnabled: false, + internationalRoamingEnabled: true, + networkType: "4G", + embedded: false, + onApply: fn(), + onReset: fn() + } +}`,...(y=(h=i.parameters)==null?void 0:h.docs)==null?void 0:y.source}}};var E,j,v;l.parameters={...l.parameters,docs:{...(E=l.parameters)==null?void 0:E.docs,source:{originalSource:`{ + args: { + subscriptionId: 123, + voiceMailEnabled: true, + callWaitingEnabled: true, + internationalRoamingEnabled: true, + networkType: "5G", + embedded: false, + onApply: fn(), + onReset: fn() + } +}`,...(v=(j=l.parameters)==null?void 0:j.docs)==null?void 0:v.source}}};var N,w,k;d.parameters={...d.parameters,docs:{...(N=d.parameters)==null?void 0:N.docs,source:{originalSource:`{ + args: { + subscriptionId: 123, + voiceMailEnabled: false, + callWaitingEnabled: false, + internationalRoamingEnabled: false, + networkType: "4G", + embedded: false, + onApply: fn(), + onReset: fn() + } +}`,...(k=(w=d.parameters)==null?void 0:w.docs)==null?void 0:k.source}}};var G,R,T;c.parameters={...c.parameters,docs:{...(G=c.parameters)==null?void 0:G.docs,source:{originalSource:`{ + args: { + subscriptionId: 123, + voiceMailEnabled: true, + callWaitingEnabled: true, + internationalRoamingEnabled: false, + networkType: "5G", + embedded: true, + onApply: fn(), + onReset: fn() + } +}`,...(T=(R=c.parameters)==null?void 0:R.docs)==null?void 0:T.source}}};const me=["Default","AllEnabled","AllDisabled","Embedded"];export{d as AllDisabled,l as AllEnabled,i as Default,c as Embedded,me as __namedExportsOrder,ce as default}; diff --git a/apps/portal/public/storybook/assets/SimFees.stories-MB7Og5JI.js b/apps/portal/public/storybook/assets/SimFees.stories-MB7Og5JI.js new file mode 100644 index 00000000..d20d9867 --- /dev/null +++ b/apps/portal/public/storybook/assets/SimFees.stories-MB7Og5JI.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{r}from"./index-JhL3uwfD.js";import{F as a}from"./ArrowPathIcon-CZjG6RfV.js";import{F as d}from"./UsersIcon-DB1YN4Bz.js";function p({title:s,titleId:o,...x},u){return r.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:u,"aria-labelledby":o},x),s?r.createElement("title",{id:o},s):null,r.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M2.25 18.75a60.07 60.07 0 0 1 15.797 2.101c.727.198 1.453-.342 1.453-1.096V18.75M3.75 4.5v.75A.75.75 0 0 1 3 6h-.75m0 0v-.375c0-.621.504-1.125 1.125-1.125H20.25M2.25 6v9m18-10.5v.75c0 .414.336.75.75.75h.75m-1.5-1.5h.375c.621 0 1.125.504 1.125 1.125v9.75c0 .621-.504 1.125-1.125 1.125h-.375m1.5-1.5H21a.75.75 0 0 0-.75.75v.75m0 0H3.75m0 0h-.375a1.125 1.125 0 0 1-1.125-1.125V15m1.5 1.5v-.75A.75.75 0 0 0 3 15h-.75M15 10.5a3 3 0 1 1-6 0 3 3 0 0 1 6 0Zm3 0h.008v.008H18V10.5Zm-12 0h.008v.008H6V10.5Z"}))}const l=r.forwardRef(p),h=[{title:"Activation Fee",amount:1500,type:"one-time",description:"Required for all new SIM activations",icon:l},{title:"SIM Reissue",amount:1500,type:"one-time",description:"For lost, damaged, or replacement SIM cards",icon:a},{title:"eSIM Re-download",amount:1500,type:"one-time",description:"If eSIM download is interrupted or deleted",icon:a}],f=[{title:"Multi-SIM Discount",amount:-300,type:"monthly",description:"Per additional Voice SIM on your account",icon:d}];function m(){return e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-6",children:[e.jsxs("div",{className:"bg-card border border-border rounded-2xl p-6",children:[e.jsxs("h3",{className:"text-lg font-semibold text-foreground mb-4 flex items-center gap-2",children:[e.jsx(l,{className:"w-5 h-5 text-warning"}),"One-time Fees"]}),e.jsx("div",{className:"space-y-4",children:h.map(s=>e.jsxs("div",{className:"flex items-start gap-3 pb-4 border-b border-border last:border-0 last:pb-0",children:[e.jsx("div",{className:"w-10 h-10 rounded-lg bg-warning/10 flex items-center justify-center flex-shrink-0",children:e.jsx(s.icon,{className:"w-5 h-5 text-warning"})}),e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsxs("div",{className:"flex items-baseline justify-between gap-2",children:[e.jsx("h4",{className:"font-medium text-foreground",children:s.title}),e.jsxs("span",{className:"font-bold text-foreground whitespace-nowrap",children:["¥",s.amount.toLocaleString()]})]}),e.jsx("p",{className:"text-sm text-muted-foreground mt-0.5",children:s.description})]})]},s.title))}),e.jsx("p",{className:"text-xs text-muted-foreground mt-4 pt-4 border-t border-border",children:"All prices exclude 10% consumption tax"})]}),e.jsxs("div",{className:"bg-card border border-border rounded-2xl p-6",children:[e.jsxs("h3",{className:"text-lg font-semibold text-foreground mb-4 flex items-center gap-2",children:[e.jsx(d,{className:"w-5 h-5 text-success"}),"Available Discounts"]}),e.jsx("div",{className:"space-y-4",children:f.map(s=>e.jsxs("div",{className:"flex items-start gap-3 p-4 bg-success/5 border border-success/20 rounded-xl",children:[e.jsx("div",{className:"w-10 h-10 rounded-lg bg-success/10 flex items-center justify-center flex-shrink-0",children:e.jsx(s.icon,{className:"w-5 h-5 text-success"})}),e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsxs("div",{className:"flex items-baseline justify-between gap-2",children:[e.jsx("h4",{className:"font-medium text-foreground",children:s.title}),e.jsxs("span",{className:"font-bold text-success whitespace-nowrap",children:["¥",s.amount.toLocaleString(),"/mo"]})]}),e.jsx("p",{className:"text-sm text-muted-foreground mt-0.5",children:s.description})]})]},s.title))}),e.jsxs("div",{className:"mt-6 p-4 bg-muted/50 rounded-lg",children:[e.jsx("h4",{className:"font-medium text-foreground text-sm mb-2",children:"First Month Free"}),e.jsx("p",{className:"text-sm text-muted-foreground",children:"Basic fee from sign-up day to end of month is waived. Billing starts on the 1st of the following month."})]})]})]})}m.__docgenInfo={description:"",methods:[],displayName:"SimFees"};const w={title:"Features/Services/SIM/SimFees",component:m,parameters:{layout:"centered"}},t={};var n,i,c;t.parameters={...t.parameters,docs:{...(n=t.parameters)==null?void 0:n.docs,source:{originalSource:"{}",...(c=(i=t.parameters)==null?void 0:i.docs)==null?void 0:c.source}}};const N=["Default"];export{t as Default,N as __namedExportsOrder,w as default}; diff --git a/apps/portal/public/storybook/assets/SimHowItWorksSection-g7Gvkwka.js b/apps/portal/public/storybook/assets/SimHowItWorksSection-g7Gvkwka.js new file mode 100644 index 00000000..e5bab4d8 --- /dev/null +++ b/apps/portal/public/storybook/assets/SimHowItWorksSection-g7Gvkwka.js @@ -0,0 +1,16 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{H as o}from"./HowItWorks-CdRnFIF-.js";import{c as t}from"./createLucideIcon-CctB0W3q.js";import{C as a}from"./circle-check-big-Bab09Iah.js";/** + * @license lucide-react v0.563.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const i=[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"m9 15 2 2 4-4",key:"1grp1n"}]],s=t("file-check",i);/** + * @license lucide-react v0.563.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const c=[["path",{d:"M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z",key:"1ffxy3"}],["path",{d:"m21.854 2.147-10.94 10.939",key:"12cjpa"}]],n=t("send",c);/** + * @license lucide-react v0.563.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const r=[["path",{d:"M2 20h.01",key:"4haj6o"}],["path",{d:"M7 20v-4",key:"j294jx"}],["path",{d:"M12 20v-8",key:"i3yub9"}],["path",{d:"M17 20V8",key:"1tkaf5"}],["path",{d:"M22 4v16",key:"sih9yq"}]],d=t("signal",r),p=[{icon:e.jsx(d,{className:"h-6 w-6"}),title:"Choose Plan",description:"Select your data and voice options"},{icon:e.jsx(s,{className:"h-6 w-6"}),title:"Create Account",description:"Sign up with email verification"},{icon:e.jsx(n,{className:"h-6 w-6"}),title:"Place Order",description:"Configure SIM type and pay"},{icon:e.jsx(a,{className:"h-6 w-6"}),title:"Get Connected",description:"Receive SIM and activate"}];function h(){return e.jsx(o,{steps:p,eyebrow:"Getting Started",title:"How It Works"})}h.__docgenInfo={description:"",methods:[],displayName:"SimHowItWorksSection"};export{h as S,d as a}; diff --git a/apps/portal/public/storybook/assets/SimHowItWorksSection.stories-C1fM1NrP.js b/apps/portal/public/storybook/assets/SimHowItWorksSection.stories-C1fM1NrP.js new file mode 100644 index 00000000..41bcb4df --- /dev/null +++ b/apps/portal/public/storybook/assets/SimHowItWorksSection.stories-C1fM1NrP.js @@ -0,0 +1 @@ +import{S as a}from"./SimHowItWorksSection-g7Gvkwka.js";import"./jsx-runtime-D_zvdyIk.js";import"./HowItWorks-CdRnFIF-.js";import"./cn-CDN07tui.js";import"./createLucideIcon-CctB0W3q.js";import"./index-JhL3uwfD.js";import"./circle-check-big-Bab09Iah.js";const S={title:"Features/Services/SIM/SimHowItWorksSection",component:a,parameters:{layout:"centered"}},e={};var r,t,o;e.parameters={...e.parameters,docs:{...(r=e.parameters)==null?void 0:r.docs,source:{originalSource:"{}",...(o=(t=e.parameters)==null?void 0:t.docs)==null?void 0:o.source}}};const d=["Default"];export{e as Default,d as __namedExportsOrder,S as default}; diff --git a/apps/portal/public/storybook/assets/SimOrderProcess.stories-BPKj4bvH.js b/apps/portal/public/storybook/assets/SimOrderProcess.stories-BPKj4bvH.js new file mode 100644 index 00000000..a7585ca9 --- /dev/null +++ b/apps/portal/public/storybook/assets/SimOrderProcess.stories-BPKj4bvH.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{r as s}from"./index-JhL3uwfD.js";import{F as u}from"./CreditCardIcon-BBdrpHQs.js";import{F as p}from"./ShieldCheckIcon-BBoI5cMX.js";import{F as x}from"./DevicePhoneMobileIcon-SMwjWf6M.js";function f({title:r,titleId:t,...m},l){return s.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:l,"aria-labelledby":t},m),r?s.createElement("title",{id:t},r):null,s.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M9 12h3.75M9 15h3.75M9 18h3.75m3 .75H18a2.25 2.25 0 0 0 2.25-2.25V6.108c0-1.135-.845-2.098-1.976-2.192a48.424 48.424 0 0 0-1.123-.08m-5.801 0c-.065.21-.1.433-.1.664 0 .414.336.75.75.75h4.5a.75.75 0 0 0 .75-.75 2.25 2.25 0 0 0-.1-.664m-5.8 0A2.251 2.251 0 0 1 13.5 2.25H15c1.012 0 1.867.668 2.15 1.586m-5.8 0c-.376.023-.75.05-1.124.08C9.095 4.01 8.25 4.973 8.25 6.108V8.25m0 0H4.875c-.621 0-1.125.504-1.125 1.125v11.25c0 .621.504 1.125 1.125 1.125h9.75c.621 0 1.125-.504 1.125-1.125V9.375c0-.621-.504-1.125-1.125-1.125H8.25ZM6.75 12h.008v.008H6.75V12Zm0 3h.008v.008H6.75V15Zm0 3h.008v.008H6.75V18Z"}))}const h=s.forwardRef(f),i=[{number:1,title:"Select Plan",description:"Choose your data, voice, or combo plan",icon:h},{number:2,title:"Submit Order",description:"Add payment method & residence card",icon:u},{number:3,title:"Verification",description:"We review your ID (1-2 business days)",icon:p},{number:4,title:"Receive SIM",description:"eSIM via email or physical SIM shipped",icon:x}];function c(){return e.jsxs("div",{className:"bg-card border border-border rounded-2xl p-6 md:p-8",children:[e.jsx("h3",{className:"text-lg font-semibold text-foreground text-center mb-6",children:"How Ordering Works"}),e.jsx("div",{className:"grid grid-cols-2 md:grid-cols-4 gap-4 md:gap-6",children:i.map((r,t)=>e.jsxs("div",{className:"relative text-center",children:[t{if(i)return;if(s){t.push(s.href);return}const{resetSimConfig:u,setSimConfig:c}=y.getState();u(),c({planSku:n.sku,currentStep:1}),t.push(`${d}/sim/configure?planSku=${encodeURIComponent(n.sku)}`)},rightIcon:e.jsx(S,{className:"w-4 h-4"}),children:i?m||"Not available":(s==null?void 0:s.label)??"Configure"})]})}w.__docgenInfo={description:"",methods:[],displayName:"SimPlanCard",props:{plan:{required:!0,tsType:{name:"z.infer",elements:[{name:"simCatalogProductSchema"}],raw:"z.infer"},description:""},isFamily:{required:!1,tsType:{name:"union",raw:"boolean | undefined",elements:[{name:"boolean"},{name:"undefined"}]},description:""},action:{required:!1,tsType:{name:"union",raw:"SimPlanCardActionResolver | undefined",elements:[{name:"union",raw:`| SimPlanCardAction +| ((plan: SimCatalogProduct) => SimPlanCardAction)`,elements:[{name:"signature",type:"object",raw:"{ label: string; href: string }",signature:{properties:[{key:"label",value:{name:"string",required:!0}},{key:"href",value:{name:"string",required:!0}}]}},{name:"unknown"}]},{name:"undefined"}]},description:""},disabled:{required:!1,tsType:{name:"union",raw:"boolean | undefined",elements:[{name:"boolean"},{name:"undefined"}]},description:""},disabledReason:{required:!1,tsType:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}]},description:""}}};export{w as S}; diff --git a/apps/portal/public/storybook/assets/SimPlanCard.stories-CNc_VaKU.js b/apps/portal/public/storybook/assets/SimPlanCard.stories-CNc_VaKU.js new file mode 100644 index 00000000..598ef656 --- /dev/null +++ b/apps/portal/public/storybook/assets/SimPlanCard.stories-CNc_VaKU.js @@ -0,0 +1,28 @@ +import{S}from"./SimPlanCard-Ci7M9oOS.js";import"./jsx-runtime-D_zvdyIk.js";import"./AnimatedCard-DFAiX4zP.js";import"./proxy-ZkTvaR74.js";import"./index-JhL3uwfD.js";import"./button-C8_cybvS.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./spinner-mU4XywER.js";import"./CardPricing-FcGNWupq.js";import"./CurrencyYenIcon-Bf5bmWZc.js";import"./CardBadge-CfIpSSwP.js";import"./next-navigation-FtRxULo3.js";import"./services.store-BMSUdGRF.js";import"./schema-B8i337wU.js";import"./schema-Dok_SHcO.js";import"./compat-BjFfok0x.js";import"./helpers-C5Jr5RNp.js";import"./react-C6W-rNNW.js";import"./useServicesBasePath-Cd3sXgEE.js";import"./DevicePhoneMobileIcon-SMwjWf6M.js";import"./ArrowRightIcon--Vuz7Q7x.js";const j={title:"Features/Services/SIM/SimPlanCard",component:S,parameters:{layout:"centered"}},t={id:"1",sku:"SIM-DV-3GB",name:"Data + Voice 3GB Plan",monthlyPrice:1100,unitPrice:1100,oneTimePrice:0,simDataSize:"3GB",simPlanType:"DataSmsVoice",simHasFamilyDiscount:!1,billingCycle:"Monthly",catalogMetadata:{}},r={args:{plan:t}},a={args:{plan:{...t,simHasFamilyDiscount:!0,monthlyPrice:800},isFamily:!0}},e={args:{plan:t,disabled:!0,disabledReason:"Account required"}},o={args:{plan:t,action:{label:"Order Now",href:"/order"}}};var s,i,n;r.parameters={...r.parameters,docs:{...(s=r.parameters)==null?void 0:s.docs,source:{originalSource:`{ + args: { + plan: mockPlan + } +}`,...(n=(i=r.parameters)==null?void 0:i.docs)==null?void 0:n.source}}};var m,c,p;a.parameters={...a.parameters,docs:{...(m=a.parameters)==null?void 0:m.docs,source:{originalSource:`{ + args: { + plan: { + ...mockPlan, + simHasFamilyDiscount: true, + monthlyPrice: 800 + }, + isFamily: true + } +}`,...(p=(c=a.parameters)==null?void 0:c.docs)==null?void 0:p.source}}};var l,d,u;e.parameters={...e.parameters,docs:{...(l=e.parameters)==null?void 0:l.docs,source:{originalSource:`{ + args: { + plan: mockPlan, + disabled: true, + disabledReason: "Account required" + } +}`,...(u=(d=e.parameters)==null?void 0:d.docs)==null?void 0:u.source}}};var P,g,y;o.parameters={...o.parameters,docs:{...(P=o.parameters)==null?void 0:P.docs,source:{originalSource:`{ + args: { + plan: mockPlan, + action: { + label: "Order Now", + href: "/order" + } + } +}`,...(y=(g=o.parameters)==null?void 0:g.docs)==null?void 0:y.source}}};const J=["Default","FamilyPlan","Disabled","WithCustomAction"];export{r as Default,e as Disabled,a as FamilyPlan,o as WithCustomAction,J as __namedExportsOrder,j as default}; diff --git a/apps/portal/public/storybook/assets/SimPlanTypeSection.stories-DWYvRWOb.js b/apps/portal/public/storybook/assets/SimPlanTypeSection.stories-DWYvRWOb.js new file mode 100644 index 00000000..c3c749a4 --- /dev/null +++ b/apps/portal/public/storybook/assets/SimPlanTypeSection.stories-DWYvRWOb.js @@ -0,0 +1,18 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{S as m}from"./SimPlanCard-Ci7M9oOS.js";import{F as j}from"./UsersIcon-DB1YN4Bz.js";import"./AnimatedCard-DFAiX4zP.js";import"./proxy-ZkTvaR74.js";import"./index-JhL3uwfD.js";import"./button-C8_cybvS.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./spinner-mU4XywER.js";import"./CardPricing-FcGNWupq.js";import"./CurrencyYenIcon-Bf5bmWZc.js";import"./CardBadge-CfIpSSwP.js";import"./next-navigation-FtRxULo3.js";import"./services.store-BMSUdGRF.js";import"./schema-B8i337wU.js";import"./schema-Dok_SHcO.js";import"./compat-BjFfok0x.js";import"./helpers-C5Jr5RNp.js";import"./react-C6W-rNNW.js";import"./useServicesBasePath-Cd3sXgEE.js";import"./DevicePhoneMobileIcon-SMwjWf6M.js";import"./ArrowRightIcon--Vuz7Q7x.js";function x({title:f,description:P,icon:S,plans:n,showFamilyDiscount:D,cardAction:s,cardDisabled:r,cardDisabledReason:o}){if(n.length===0)return null;const F=n.filter(i=>!i.simHasFamilyDiscount),l=n.filter(i=>i.simHasFamilyDiscount);return e.jsxs("div",{className:"animate-in fade-in duration-500",children:[e.jsxs("div",{className:"flex items-center gap-3 mb-6",children:[S,e.jsxs("div",{children:[e.jsx("h2",{className:"text-2xl font-bold text-gray-900",children:f}),e.jsx("p",{className:"text-gray-600",children:P})]})]}),e.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4 gap-6 mb-6 justify-items-center",children:F.map(i=>e.jsx(m,{plan:i,action:s,disabled:r,disabledReason:o},i.id))}),D&&l.length>0&&e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"flex items-center gap-2 mb-4",children:[e.jsx(j,{className:"h-5 w-5 text-green-600"}),e.jsx("h3",{className:"text-lg font-semibold text-green-900",children:"Family Discount Applied"}),e.jsx("span",{className:"bg-green-100 text-green-800 text-xs px-2 py-1 rounded-full",children:"Eligible additional lines"})]}),e.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4 gap-6 justify-items-center",children:l.map(i=>e.jsx(m,{plan:i,isFamily:!0,action:s,disabled:r,disabledReason:o},i.id))})]})]})}x.__docgenInfo={description:"",methods:[],displayName:"SimPlanTypeSection",props:{title:{required:!0,tsType:{name:"string"},description:""},description:{required:!0,tsType:{name:"string"},description:""},icon:{required:!0,tsType:{name:"ReactReactNode",raw:"React.ReactNode"},description:""},plans:{required:!0,tsType:{name:"Array",elements:[{name:"z.infer",elements:[{name:"simCatalogProductSchema"}],raw:"z.infer"}],raw:"SimCatalogProduct[]"},description:""},showFamilyDiscount:{required:!0,tsType:{name:"boolean"},description:""},cardAction:{required:!1,tsType:{name:"union",raw:"SimPlanCardActionResolver | undefined",elements:[{name:"union",raw:`| SimPlanCardAction +| ((plan: SimCatalogProduct) => SimPlanCardAction)`,elements:[{name:"signature",type:"object",raw:"{ label: string; href: string }",signature:{properties:[{key:"label",value:{name:"string",required:!0}},{key:"href",value:{name:"string",required:!0}}]}},{name:"unknown"}]},{name:"undefined"}]},description:""},cardDisabled:{required:!1,tsType:{name:"union",raw:"boolean | undefined",elements:[{name:"boolean"},{name:"undefined"}]},description:""},cardDisabledReason:{required:!1,tsType:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}]},description:""}}};const Z={title:"Features/Services/SIM/SimPlanTypeSection",component:x,parameters:{layout:"padded"}},h=[{id:"1",sku:"SIM-DV-3GB",name:"Data + Voice 3GB",monthlyPrice:1100,unitPrice:1100,oneTimePrice:0,simDataSize:"3GB",simPlanType:"DataSmsVoice",simHasFamilyDiscount:!1,billingCycle:"Monthly",catalogMetadata:{}},{id:"2",sku:"SIM-DV-10GB",name:"Data + Voice 10GB",monthlyPrice:2200,unitPrice:2200,oneTimePrice:0,simDataSize:"10GB",simPlanType:"DataSmsVoice",simHasFamilyDiscount:!1,billingCycle:"Monthly",catalogMetadata:{}}],b=[{id:"3",sku:"SIM-DV-3GB-F",name:"Data + Voice 3GB (Family)",monthlyPrice:800,unitPrice:800,oneTimePrice:0,simDataSize:"3GB",simPlanType:"DataSmsVoice",simHasFamilyDiscount:!0,billingCycle:"Monthly",catalogMetadata:{}}],a={args:{title:"Data + Voice Plans",description:"Plans with data, SMS, and voice calling",icon:e.jsx("span",{className:"text-2xl",children:"📱"}),plans:h,showFamilyDiscount:!1}},t={args:{title:"Data + Voice Plans",description:"Plans with data, SMS, and voice calling",icon:e.jsx("span",{className:"text-2xl",children:"📱"}),plans:[...h,...b],showFamilyDiscount:!0}};var c,d,p;a.parameters={...a.parameters,docs:{...(c=a.parameters)==null?void 0:c.docs,source:{originalSource:`{ + args: { + title: "Data + Voice Plans", + description: "Plans with data, SMS, and voice calling", + icon: 📱, + plans: mockPlans, + showFamilyDiscount: false + } +}`,...(p=(d=a.parameters)==null?void 0:d.docs)==null?void 0:p.source}}};var u,g,y;t.parameters={...t.parameters,docs:{...(u=t.parameters)==null?void 0:u.docs,source:{originalSource:`{ + args: { + title: "Data + Voice Plans", + description: "Plans with data, SMS, and voice calling", + icon: 📱, + plans: [...mockPlans, ...mockFamilyPlans], + showFamilyDiscount: true + } +}`,...(y=(g=t.parameters)==null?void 0:g.docs)==null?void 0:y.source}}};const $=["Default","WithFamilyDiscount"];export{a as Default,t as WithFamilyDiscount,$ as __namedExportsOrder,Z as default}; diff --git a/apps/portal/public/storybook/assets/SimPlansContent.stories-B1C5gMOH.js b/apps/portal/public/storybook/assets/SimPlansContent.stories-B1C5gMOH.js new file mode 100644 index 00000000..2c3108c0 --- /dev/null +++ b/apps/portal/public/storybook/assets/SimPlansContent.stories-B1C5gMOH.js @@ -0,0 +1,63 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{r as l}from"./index-JhL3uwfD.js";import{S as o}from"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import{B as E}from"./button-C8_cybvS.js";import{A as $}from"./AlertBanner-Bnlyj1xc.js";import{B as N}from"./BackLink-C5IY6wzy.js";import{S as X}from"./ServicesHero-BxvrExEF.js";import{u as Z}from"./useServicesBasePath-Cd3sXgEE.js";import{C as S}from"./CollapsibleSection-CChCyQrB.js";import{S as ee}from"./ServiceFAQ-DgotQw6I.js";import{D as se}from"./DeviceCompatibility-BmppB3yg.js";import{S as ae}from"./ServiceHighlights-BOQJA3wz.js";import{S as te,a as _}from"./SimHowItWorksSection-g7Gvkwka.js";import{c}from"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./input-BbGJiz0K.js";import"./password-input-D4khGh8v.js";import"./checkbox-DahUyQbt.js";import"./label-C25VH7yk.js";import"./error-message-DeFFz6H_.js";import"./status-pill-wWp9xkwA.js";import"./badge-BdMsasyi.js";import"./spinner-mU4XywER.js";import"./loading-overlay-DMJTiFny.js";import"./error-state-BSicqqE6.js";import"./empty-state-DRUGJ9ip.js";import"./inline-toast-DQJ-O9wc.js";import"./logo-f0fprTjz.js";import"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import{m as re}from"./animated-container-DyAZ9gmw.js";import{P as v}from"./phone-BtPh0Z3S.js";import{G as ne}from"./globe-Bhk-JDfS.js";import{C as ie}from"./check-DmNqM64J.js";import{S as oe}from"./sparkles-q054t7ye.js";import{A as le}from"./arrow-left-DP07Iaeg.js";import{C as ce}from"./credit-card-AndvzjKW.js";import{c as H}from"./createLucideIcon-CctB0W3q.js";import{C as me}from"./calendar-6Kp0KrD6.js";import{S as de}from"./smartphone-Dk2P1VMI.js";import{A as xe}from"./index-CNXKWNLp.js";import{m as y}from"./proxy-ZkTvaR74.js";import{U as R}from"./users-BK0QOT9j.js";import{I as ue}from"./info-Ck405yVi.js";import{A as pe}from"./arrow-right-BNMAry-H.js";import{T as he}from"./triangle-alert-F5KF_Jv1.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./XCircleIcon-CiVBnngB.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./InformationCircleIcon-Clz7d-56.js";import"./CheckCircleIcon-Dva35lTP.js";import"./ArrowLeftIcon-Cw1eswTb.js";import"./next-navigation-FtRxULo3.js";import"./chevron-down-CuGyZVZ6.js";import"./search-DSeV2urL.js";import"./x-gzkF7O9v.js";import"./HowItWorks-CdRnFIF-.js";import"./circle-check-big-Bab09Iah.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./ExclamationCircleIcon-jFfW0Ax_.js";import"./ArrowPathIcon-CZjG6RfV.js";import"./PlusIcon-DGufmf06.js";import"./next-image-69WeRggt.js";import"./Squares2X2Icon-BMQM_Wy1.js";/** + * @license lucide-react v0.563.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const ge=[["path",{d:"m16 3 4 4-4 4",key:"1x1c3m"}],["path",{d:"M20 7H4",key:"zbl0bi"}],["path",{d:"m8 21-4-4 4-4",key:"h9nckh"}],["path",{d:"M4 17h16",key:"g4d7ey"}]],fe=H("arrow-right-left",ge);/** + * @license lucide-react v0.563.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const je=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M16 8h-6a2 2 0 1 0 0 4h4a2 2 0 1 1 0 4H8",key:"1h4pet"}],["path",{d:"M12 18V6",key:"zqpxq5"}]],z=H("circle-dollar-sign",je),be=[{icon:e.jsx(ce,{className:"h-6 w-6"}),title:"Foreign Cards Accepted",description:"Use your overseas credit card. No Japanese bank account needed",highlight:"Easy payment"},{icon:e.jsx(_,{className:"h-6 w-6"}),title:"Japan's Best Network",description:"NTT Docomo coverage reaches 99.9% of Japan's population",highlight:"Nationwide"},{icon:e.jsx(z,{className:"h-6 w-6"}),title:"First Month Free",description:"Try risk-free. Your first month's basic fee is waived",highlight:"Great value"},{icon:e.jsx(me,{className:"h-6 w-6"}),title:"Flexible Terms",description:"No multi-year contracts. Stay as long as you need",highlight:"No lock-in"},{icon:e.jsx(fe,{className:"h-6 w-6"}),title:"Keep Your Number",description:"Switching from another carrier? Bring your Japanese number with you",highlight:"Easy transfer"},{icon:e.jsx(de,{className:"h-6 w-6"}),title:"Free Plan Changes",description:"Switch data plans anytime for the next billing cycle",highlight:"Flexibility"}],J=[{key:"data-voice",icon:v,label:"Data + Voice",shortLabel:"All-in",planTypeKey:"DataSmsVoice"},{key:"data-only",icon:ne,label:"Data Only",shortLabel:"Data",planTypeKey:"DataOnly"},{key:"voice-only",icon:ie,label:"Voice Only",shortLabel:"Voice",planTypeKey:"VoiceOnly"}],ye=[{question:"What is the service contract period?",answer:"The minimum service requirement period is activation month + 3 billing months. After this period, the service will switch to a monthly service and you will be able to cancel at the end of each month."},{question:"I've changed my phone and the SIM card is not working on the new device.",answer:"Whenever the SIM card is used with a new device, the APN profile would need to be installed on said device. Please refer to the APN Setup Guide in the Documents section to check how the profile can be installed."},{question:"Are international calling features available?",answer:e.jsxs(e.Fragment,{children:[`Enter "+" or "010", "recipient's country code", and "recipient's phone number (regular phone number/mobile phone number)" → Make a call.`,e.jsx("br",{}),e.jsx("br",{}),"If the recipient's phone number begins with a 0, enter it without the first 0 (except in some countries and regions).",e.jsx("br",{}),"International calling rate is on the following Docomo's website:"," ",e.jsx("a",{href:"https://www.docomo.ne.jp/english/service/world/roaming/charges/kaigai/",target:"_blank",rel:"noopener noreferrer",className:"text-primary hover:underline",children:"Docomo International Calling Rates"})]})},{question:"How do I cancel the service?",answer:"To cancel, please log into the SonixNet SIM Management Website and send us a cancellation request before the 25th to cancel your account at the end of the month. For example, cancellation requests will need to be sent in by May 25th, in order to cancel at the end of May."}];function P({plan:s,isFamily:a,onSelect:r}){const t=s.monthlyPrice??s.unitPrice??s.oneTimePrice??0;return e.jsx("div",{className:c("group relative rounded-xl overflow-hidden transition-all duration-200","hover:-translate-y-0.5 hover:shadow-lg",a?"border border-success/30 bg-gradient-to-br from-emerald-50/60 to-card dark:from-emerald-950/20 dark:to-card hover:border-success":"border border-border bg-gradient-to-br from-sky-50/40 to-card dark:from-sky-950/15 dark:to-card hover:border-primary/50"),children:e.jsxs("div",{className:"p-5",children:[a&&e.jsxs("div",{className:"flex items-center gap-1.5 mb-3",children:[e.jsx(R,{className:"w-3.5 h-3.5 text-success"}),e.jsx("span",{className:"text-[10px] font-semibold text-success uppercase tracking-wider",children:"Family Discount"})]}),e.jsxs("div",{className:"flex items-center gap-2.5 mb-4",children:[e.jsx("div",{className:c("w-10 h-10 rounded-xl flex items-center justify-center",a?"bg-success/10":"bg-primary/8"),children:e.jsx(_,{className:c("w-5 h-5",a?"text-success":"text-primary")})}),e.jsx("span",{className:"text-2xl font-bold text-foreground tracking-tight",children:s.simDataSize})]}),e.jsxs("div",{className:"mb-1",children:[e.jsxs("div",{className:"flex items-baseline gap-0.5",children:[e.jsxs("span",{className:"text-xl font-bold text-foreground",children:["¥",t.toLocaleString()]}),e.jsx("span",{className:"text-xs text-muted-foreground",children:"/mo"})]}),a&&e.jsx("div",{className:"text-[10px] text-success font-medium mt-0.5",children:"Discounted price"})]}),e.jsx("p",{className:"text-xs text-muted-foreground mb-4 line-clamp-2 min-h-[2rem]",children:s.name}),e.jsx(E,{className:c("w-full",a&&"bg-success hover:bg-success/90 text-white"),variant:"default",size:"sm",onClick:()=>r(s.sku),rightIcon:e.jsx(pe,{className:"w-3.5 h-3.5"}),children:"Select Plan"})]})})}function ve({servicesBasePath:s}){return e.jsxs("div",{className:"max-w-5xl mx-auto px-4 pb-16 pt-6",children:[e.jsx(N,{href:s,label:"Back to Services"}),e.jsxs("div",{className:"text-center mb-10 pt-6",children:[e.jsx(o,{className:"h-8 w-72 mx-auto mb-3"}),e.jsx(o,{className:"h-5 w-96 max-w-full mx-auto"})]}),e.jsx("div",{className:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-4 gap-4",children:Array.from({length:4}).map((a,r)=>e.jsxs("div",{className:"bg-card rounded-xl border border-border p-4",children:[e.jsxs("div",{className:"flex items-center gap-2 mb-4",children:[e.jsx(o,{className:"h-9 w-9 rounded-lg"}),e.jsx(o,{className:"h-5 w-14"})]}),e.jsx(o,{className:"h-7 w-28 mb-3"}),e.jsx(o,{className:"h-4 w-full mb-2"}),e.jsx(o,{className:"h-4 w-3/4 mb-4"}),e.jsx(o,{className:"h-9 w-full rounded-md"})]},r))})]})}function Ne({servicesBasePath:s,error:a}){const r=a instanceof Error?a.message:"An unexpected error occurred";return e.jsxs("div",{className:"max-w-5xl mx-auto px-4 pb-16 pt-6",children:[e.jsx(N,{href:s,label:"Back to Services"}),e.jsxs("div",{className:"rounded-xl bg-destructive/10 border border-destructive/20 p-8 text-center mt-6",children:[e.jsx("div",{className:"text-destructive font-medium text-lg mb-2",children:"Failed to load SIM plans"}),e.jsx("div",{className:"text-destructive/80 text-sm mb-6",children:r}),e.jsx(E,{as:"a",href:s,leftIcon:e.jsx(le,{className:"w-4 h-4"}),children:"Back to Services"})]})]})}function Se({activeTab:s,onTabChange:a,plansByType:r}){return e.jsx("div",{className:"flex justify-center",children:e.jsx("div",{className:"inline-flex rounded-lg bg-muted/60 p-0.5 border border-border/60",children:J.map(t=>e.jsxs("button",{type:"button",onClick:()=>a(t.key),className:c("flex items-center gap-1.5 px-4 py-2 rounded-md text-sm font-medium transition-all",s===t.key?"bg-card text-foreground shadow-sm":"text-muted-foreground hover:text-foreground"),children:[e.jsx(t.icon,{className:"h-3.5 w-3.5"}),e.jsx("span",{className:"hidden sm:inline",children:t.label}),e.jsx("span",{className:"sm:hidden",children:t.shortLabel}),e.jsx("span",{className:"text-[10px] px-1.5 py-0.5 rounded-full bg-primary/8 text-primary font-semibold",children:r[t.planTypeKey].length})]},t.key))})})}const k=re.fadeUp;function we({regularPlans:s,familyPlans:a,activeTab:r,slideDirection:t,variant:n,hasExistingSim:f,onSelectPlan:d}){return s.length===0&&a.length===0?e.jsx("div",{id:"plans",className:"min-h-[280px] overflow-hidden",children:e.jsx("div",{className:"text-center py-12 text-muted-foreground text-sm",children:"No plans available in this category."})}):e.jsx("div",{id:"plans",className:"min-h-[280px] overflow-hidden",children:e.jsx(xe,{mode:"wait",children:e.jsxs(y.div,{className:"space-y-8",initial:"hidden",animate:"visible",exit:"exit",variants:{hidden:{opacity:0},visible:{opacity:1,transition:{staggerChildren:.06}},exit:{opacity:0,x:t==="left"?-24:24,transition:{duration:.2}}},children:[s.length>0&&e.jsx("div",{className:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-4 gap-4",children:s.map(i=>e.jsx(y.div,{variants:k,children:e.jsx(P,{plan:i,onSelect:d})},i.id))}),n==="account"&&f&&a.length>0&&e.jsxs("div",{children:[e.jsxs("div",{className:"flex items-center gap-2 mb-3",children:[e.jsx(R,{className:"h-4 w-4 text-success"}),e.jsx("h3",{className:"text-sm font-semibold text-foreground",children:"Family Discount Plans"})]}),e.jsx("div",{className:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-4 gap-4",children:a.map(i=>e.jsx(y.div,{variants:k,children:e.jsx(P,{plan:i,isFamily:!0,onSelect:d})},i.id))})]})]},r)})})}function De(){return e.jsx(S,{title:"Calling & SMS Rates",icon:v,children:e.jsxs("div",{className:"space-y-5 pt-4",children:[e.jsxs("div",{children:[e.jsxs("h4",{className:"text-sm font-medium text-foreground mb-3 flex items-center gap-2",children:[e.jsx("span",{className:"w-5 h-3 rounded-sm bg-[#BC002D] relative overflow-hidden flex items-center justify-center",children:e.jsx("span",{className:"w-2 h-2 rounded-full bg-white"})}),"Domestic (Japan)"]}),e.jsxs("div",{className:"grid grid-cols-2 gap-3",children:[e.jsxs("div",{className:"bg-muted/30 rounded-lg p-3 border border-border/60",children:[e.jsx("div",{className:"text-xs text-muted-foreground mb-1",children:"Voice Calls"}),e.jsxs("div",{className:"text-lg font-bold text-foreground",children:["¥10",e.jsx("span",{className:"text-xs font-normal text-muted-foreground",children:"/30 sec"})]})]}),e.jsxs("div",{className:"bg-muted/30 rounded-lg p-3 border border-border/60",children:[e.jsx("div",{className:"text-xs text-muted-foreground mb-1",children:"SMS"}),e.jsxs("div",{className:"text-lg font-bold text-foreground",children:["¥3",e.jsx("span",{className:"text-xs font-normal text-muted-foreground",children:"/message"})]})]})]}),e.jsx("p",{className:"text-[11px] text-muted-foreground mt-2",children:"Incoming calls and SMS are free. Pay-per-use charges billed 5-6 weeks after usage."})]}),e.jsx("div",{className:"p-3 bg-success/5 border border-success/15 rounded-lg",children:e.jsxs("div",{className:"flex items-start gap-2.5",children:[e.jsx(v,{className:"w-4 h-4 text-success mt-0.5"}),e.jsxs("div",{children:[e.jsx("h4",{className:"text-sm font-medium text-foreground",children:"Unlimited Domestic Calling"}),e.jsxs("p",{className:"text-xs text-muted-foreground",children:["Add unlimited domestic calls for"," ",e.jsx("span",{className:"font-semibold text-success",children:"¥3,000/month"})," (available at checkout)"]})]})]})}),e.jsx("div",{className:"text-xs text-muted-foreground",children:e.jsxs("p",{children:["International calling rates vary by country (¥31-148/30 sec). See"," ",e.jsx("a",{href:"https://www.docomo.ne.jp/service/world/worldcall/call/",target:"_blank",rel:"noopener noreferrer",className:"text-primary hover:underline",children:"NTT Docomo's website"})," ","for full details."]})})]})})}function Pe(){return e.jsx(S,{title:"Fees & Discounts",icon:z,children:e.jsxs("div",{className:"space-y-5 pt-4",children:[e.jsxs("div",{children:[e.jsx("h4",{className:"text-xs font-medium text-foreground mb-2.5",children:"One-time Fees"}),e.jsxs("div",{className:"space-y-2",children:[e.jsxs("div",{className:"flex items-center justify-between py-1.5 border-b border-border/60",children:[e.jsx("span",{className:"text-xs text-muted-foreground",children:"Activation Fee"}),e.jsx("span",{className:"text-sm font-medium text-foreground",children:"¥1,500"})]}),e.jsxs("div",{className:"flex items-center justify-between py-1.5 border-b border-border/60",children:[e.jsx("span",{className:"text-xs text-muted-foreground",children:"SIM Replacement (lost/damaged)"}),e.jsx("span",{className:"text-sm font-medium text-foreground",children:"¥1,500"})]}),e.jsxs("div",{className:"flex items-center justify-between py-1.5",children:[e.jsx("span",{className:"text-xs text-muted-foreground",children:"eSIM Re-download"}),e.jsx("span",{className:"text-sm font-medium text-foreground",children:"¥1,500"})]})]})]}),e.jsxs("div",{className:"p-3 bg-success/5 border border-success/15 rounded-lg",children:[e.jsx("h4",{className:"text-sm font-medium text-foreground mb-1",children:"Family Discount"}),e.jsxs("p",{className:"text-xs text-muted-foreground",children:[e.jsx("span",{className:"font-semibold text-success",children:"¥300/month off"})," per additional Voice SIM on your account"]})]}),e.jsx("p",{className:"text-[11px] text-muted-foreground",children:"All prices exclude 10% consumption tax."})]})})}function ke(){return e.jsxs("div",{children:[e.jsxs("h4",{className:"text-xs font-medium text-foreground mb-2.5 flex items-center gap-1.5",children:[e.jsx(he,{className:"w-3.5 h-3.5 text-warning"}),"Important Notices"]}),e.jsxs("ul",{className:"space-y-1.5 text-muted-foreground",children:[e.jsxs("li",{className:"flex items-start gap-2 text-xs",children:[e.jsx("span",{className:"text-foreground/60 mt-0.5",children:"•"}),e.jsx("span",{children:"ID verification with official documents (name, date of birth, address, photo) is required during checkout."})]}),e.jsxs("li",{className:"flex items-start gap-2 text-xs",children:[e.jsx("span",{className:"text-foreground/60 mt-0.5",children:"•"}),e.jsx("span",{children:"A compatible unlocked device is required. Check compatibility on our website."})]}),e.jsxs("li",{className:"flex items-start gap-2 text-xs",children:[e.jsx("span",{className:"text-foreground/60 mt-0.5",children:"•"}),e.jsxs("span",{children:["Service may not be available in areas with weak signal. See"," ",e.jsx("a",{href:"https://www.nttdocomo.co.jp/English/support/area/index.html",target:"_blank",rel:"noopener noreferrer",className:"text-primary hover:underline",children:"NTT Docomo coverage map"}),"."]})]}),e.jsxs("li",{className:"flex items-start gap-2 text-xs",children:[e.jsx("span",{className:"text-foreground/60 mt-0.5",children:"•"}),e.jsx("span",{children:"SIM is activated as 4G by default. 5G can be requested via your account portal."})]}),e.jsxs("li",{className:"flex items-start gap-2 text-xs",children:[e.jsx("span",{className:"text-foreground/60 mt-0.5",children:"•"}),e.jsx("span",{children:"International data roaming is not available. Voice/SMS roaming can be enabled upon request (¥50,000/month limit)."})]})]})]})}function Te(){return e.jsxs(e.Fragment,{children:[e.jsxs("div",{children:[e.jsx("h4",{className:"text-xs font-medium text-foreground mb-2.5",children:"Contract Terms"}),e.jsxs("ul",{className:"space-y-1.5 text-muted-foreground",children:[e.jsxs("li",{className:"flex items-start gap-2 text-xs",children:[e.jsx("span",{className:"text-foreground/60 mt-0.5",children:"•"}),e.jsxs("span",{children:[e.jsx("strong",{className:"text-foreground",children:"Minimum contract:"})," 3 full billing months. First month (sign-up to end of month) is free and doesn't count."]})]}),e.jsxs("li",{className:"flex items-start gap-2 text-xs",children:[e.jsx("span",{className:"text-foreground/60 mt-0.5",children:"•"}),e.jsxs("span",{children:[e.jsx("strong",{className:"text-foreground",children:"Billing cycle:"})," 1st to end of month. Regular billing starts the 1st of the following month after sign-up."]})]}),e.jsxs("li",{className:"flex items-start gap-2 text-xs",children:[e.jsx("span",{className:"text-foreground/60 mt-0.5",children:"•"}),e.jsxs("span",{children:[e.jsx("strong",{className:"text-foreground",children:"Cancellation:"})," Can be requested after 3rd month via cancellation form. Monthly fee is incurred in full for cancellation month."]})]}),e.jsxs("li",{className:"flex items-start gap-2 text-xs",children:[e.jsx("span",{className:"text-foreground/60 mt-0.5",children:"•"}),e.jsxs("span",{children:[e.jsx("strong",{className:"text-foreground",children:"SIM return:"})," SIM card must be returned after service termination."]})]})]})]}),e.jsxs("div",{children:[e.jsx("h4",{className:"text-xs font-medium text-foreground mb-2.5",children:"Additional Options"}),e.jsxs("ul",{className:"space-y-1.5 text-muted-foreground",children:[e.jsxs("li",{className:"flex items-start gap-2 text-xs",children:[e.jsx("span",{className:"text-foreground/60 mt-0.5",children:"•"}),e.jsx("span",{children:"Call waiting and voice mail available as separate paid options."})]}),e.jsxs("li",{className:"flex items-start gap-2 text-xs",children:[e.jsx("span",{className:"text-foreground/60 mt-0.5",children:"•"}),e.jsx("span",{children:"Data plan changes are free and take effect next billing month."})]}),e.jsxs("li",{className:"flex items-start gap-2 text-xs",children:[e.jsx("span",{className:"text-foreground/60 mt-0.5",children:"•"}),e.jsx("span",{children:"Voice plan changes require new SIM issuance and standard policies apply."})]})]})]})]})}function Me(){return e.jsx(S,{title:"Important Information & Terms",icon:ue,children:e.jsxs("div",{className:"space-y-5 pt-4 text-sm",children:[e.jsx(ke,{}),e.jsx(Te,{}),e.jsx("div",{className:"p-3 bg-muted/30 rounded-lg",children:e.jsx("p",{className:"text-[11px] text-muted-foreground",children:"Payment is by credit card only. Data service is not suitable for activities requiring continuous large data transfers. See full Terms of Service for complete details."})})]})})}function Ce(s){return s.reduce((a,r)=>{const t=r.simPlanType||"DataOnly";return t==="DataOnly"?a.DataOnly.push(r):t==="VoiceOnly"?a.VoiceOnly.push(r):a.DataSmsVoice.push(r),a},{DataOnly:[],DataSmsVoice:[],VoiceOnly:[]})}function Ie(s,a){const t={"data-voice":s.DataSmsVoice,"data-only":s.DataOnly,"voice-only":s.VoiceOnly}[a];return{regularPlans:t.filter(n=>!n.simHasFamilyDiscount),familyPlans:t.filter(n=>n.simHasFamilyDiscount)}}function K({variant:s,plans:a,isLoading:r,error:t,activeTab:n,onTabChange:f,onSelectPlan:d}){const i=Z(),j=l.useRef(n),w=l.useRef("left");if(j.current!==n){const u=J.map(Q=>Q.key);w.current=u.indexOf(n)>u.indexOf(j.current)?"left":"right",j.current=n}const x=l.useMemo(()=>a??[],[a]),D=l.useMemo(()=>x.some(u=>u.simHasFamilyDiscount),[x]),b=l.useMemo(()=>Ce(x),[x]),{regularPlans:W,familyPlans:Y}=l.useMemo(()=>Ie(b,n),[b,n]);return r?e.jsx(ve,{servicesBasePath:i}):t?e.jsx(Ne,{servicesBasePath:i,error:t}):e.jsxs("div",{className:"max-w-5xl mx-auto py-6 pb-16 space-y-8",children:[e.jsx(N,{href:i,label:"Back to Services",className:"mb-0"}),e.jsx(X,{title:"SIM Cards for Foreigners in Japan",description:"No hanko, no complicated Japanese forms. Get a SIM card with your foreign credit card and English support. eSIM for instant delivery or physical SIM shipped to your door.",eyebrow:e.jsxs("div",{className:"inline-flex items-center gap-2 px-3 py-1.5 rounded-full bg-primary/8 border border-primary/15",children:[e.jsx(oe,{className:"w-3.5 h-3.5 text-primary"}),e.jsx("span",{className:"text-xs font-medium text-primary",children:"Powered by NTT DOCOMO"})]})}),s==="account"&&D&&e.jsx($,{variant:"success",title:"Family Discount Available",children:e.jsx("p",{className:"text-sm",children:"You already have a SIM subscription. Discounted pricing is automatically shown for additional lines."})}),e.jsx(ae,{features:be}),e.jsx(Se,{activeTab:n,onTabChange:f,plansByType:b}),e.jsx(we,{regularPlans:W,familyPlans:Y,activeTab:n,slideDirection:w.current,variant:s,hasExistingSim:D,onSelectPlan:d}),e.jsx(se,{}),e.jsx(te,{}),e.jsxs("div",{className:"space-y-3",children:[e.jsx(De,{}),e.jsx(Pe,{}),e.jsx(Me,{})]}),e.jsx(ee,{items:ye}),e.jsx("div",{className:"text-center text-xs text-muted-foreground",children:e.jsxs("p",{children:["All prices exclude 10% consumption tax."," ",e.jsx("a",{href:"#",className:"text-primary hover:underline",children:"View full Terms of Service"})]})})]})}K.__docgenInfo={description:"",methods:[],displayName:"SimPlansContent",props:{variant:{required:!0,tsType:{name:"union",raw:'"public" | "account"',elements:[{name:"literal",value:'"public"'},{name:"literal",value:'"account"'}]},description:""},plans:{required:!0,tsType:{name:"Array",elements:[{name:"z.infer",elements:[{name:"simCatalogProductSchema"}],raw:"z.infer"}],raw:"SimCatalogProduct[]"},description:""},isLoading:{required:!0,tsType:{name:"boolean"},description:""},error:{required:!0,tsType:{name:"unknown"},description:""},activeTab:{required:!0,tsType:{name:"union",raw:'"data-voice" | "data-only" | "voice-only"',elements:[{name:"literal",value:'"data-voice"'},{name:"literal",value:'"data-only"'},{name:"literal",value:'"voice-only"'}]},description:""},onTabChange:{required:!0,tsType:{name:"signature",type:"function",raw:"(tab: SimPlansTab) => void",signature:{arguments:[{type:{name:"union",raw:'"data-voice" | "data-only" | "voice-only"',elements:[{name:"literal",value:'"data-voice"'},{name:"literal",value:'"data-only"'},{name:"literal",value:'"voice-only"'}]},name:"tab"}],return:{name:"void"}}},description:""},onSelectPlan:{required:!0,tsType:{name:"signature",type:"function",raw:"(sku: string) => void",signature:{arguments:[{type:{name:"string"},name:"sku"}],return:{name:"void"}}},description:""}}};const Ks={title:"Features/Services/SIM/SimPlansContent",component:K,parameters:{layout:"fullscreen"}},U=[{id:"1",sku:"SIM-DV-3GB",name:"Data + Voice 3GB Plan",monthlyPrice:1100,unitPrice:1100,oneTimePrice:0,simDataSize:"3GB",simPlanType:"DataSmsVoice",simHasFamilyDiscount:!1,billingCycle:"Monthly",catalogMetadata:{}},{id:"2",sku:"SIM-DV-10GB",name:"Data + Voice 10GB Plan",monthlyPrice:2200,unitPrice:2200,oneTimePrice:0,simDataSize:"10GB",simPlanType:"DataSmsVoice",simHasFamilyDiscount:!1,billingCycle:"Monthly",catalogMetadata:{}},{id:"3",sku:"SIM-DO-3GB",name:"Data Only 3GB Plan",monthlyPrice:900,unitPrice:900,oneTimePrice:0,simDataSize:"3GB",simPlanType:"DataOnly",simHasFamilyDiscount:!1,billingCycle:"Monthly",catalogMetadata:{}}],p={args:{variant:"public",plans:U,isLoading:!1,error:null,activeTab:"data-voice",onTabChange:()=>{},onSelectPlan:()=>{}}},h={args:{variant:"public",plans:[],isLoading:!0,error:null,activeTab:"data-voice",onTabChange:()=>{},onSelectPlan:()=>{}}},m={args:{variant:"public",plans:[],isLoading:!1,error:new m("Failed to fetch SIM plans"),activeTab:"data-voice",onTabChange:()=>{},onSelectPlan:()=>{}}},g={args:{variant:"account",plans:[...U,{id:"4",sku:"SIM-DV-3GB-F",name:"Data + Voice 3GB (Family)",monthlyPrice:800,unitPrice:800,oneTimePrice:0,simDataSize:"3GB",simPlanType:"DataSmsVoice",simHasFamilyDiscount:!0,billingCycle:"Monthly",catalogMetadata:{}}],isLoading:!1,error:null,activeTab:"data-voice",onTabChange:()=>{},onSelectPlan:()=>{}}};var T,M,C;p.parameters={...p.parameters,docs:{...(T=p.parameters)==null?void 0:T.docs,source:{originalSource:`{ + args: { + variant: "public", + plans: mockPlans, + isLoading: false, + error: null, + activeTab: "data-voice", + onTabChange: () => {}, + onSelectPlan: () => {} + } +}`,...(C=(M=p.parameters)==null?void 0:M.docs)==null?void 0:C.source}}};var I,F,V;h.parameters={...h.parameters,docs:{...(I=h.parameters)==null?void 0:I.docs,source:{originalSource:`{ + args: { + variant: "public", + plans: [], + isLoading: true, + error: null, + activeTab: "data-voice", + onTabChange: () => {}, + onSelectPlan: () => {} + } +}`,...(V=(F=h.parameters)==null?void 0:F.docs)==null?void 0:V.source}}};var A,B,O;m.parameters={...m.parameters,docs:{...(A=m.parameters)==null?void 0:A.docs,source:{originalSource:`{ + args: { + variant: "public", + plans: [], + isLoading: false, + error: new Error("Failed to fetch SIM plans"), + activeTab: "data-voice", + onTabChange: () => {}, + onSelectPlan: () => {} + } +}`,...(O=(B=m.parameters)==null?void 0:B.docs)==null?void 0:O.source}}};var q,G,L;g.parameters={...g.parameters,docs:{...(q=g.parameters)==null?void 0:q.docs,source:{originalSource:`{ + args: { + variant: "account", + plans: [...mockPlans, { + id: "4", + sku: "SIM-DV-3GB-F", + name: "Data + Voice 3GB (Family)", + monthlyPrice: 800, + unitPrice: 800, + oneTimePrice: 0, + simDataSize: "3GB", + simPlanType: "DataSmsVoice" as const, + simHasFamilyDiscount: true, + billingCycle: "Monthly" as const, + catalogMetadata: {} + }], + isLoading: false, + error: null, + activeTab: "data-voice", + onTabChange: () => {}, + onSelectPlan: () => {} + } +}`,...(L=(G=g.parameters)==null?void 0:G.docs)==null?void 0:L.source}}};const Us=["Default","Loading","Error","AccountVariant"];export{g as AccountVariant,p as Default,m as Error,h as Loading,Us as __namedExportsOrder,Ks as default}; diff --git a/apps/portal/public/storybook/assets/SimTypeComparison.stories-CnFVwS9R.js b/apps/portal/public/storybook/assets/SimTypeComparison.stories-CnFVwS9R.js new file mode 100644 index 00000000..7a73da14 --- /dev/null +++ b/apps/portal/public/storybook/assets/SimTypeComparison.stories-CnFVwS9R.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{r as a}from"./index-JhL3uwfD.js";import{F as x}from"./InformationCircleIcon-Clz7d-56.js";import{F as u}from"./SignalIcon-CUFdTwmf.js";import{F as c}from"./CheckIcon-BKJSKBEC.js";import{F as p}from"./EnvelopeIcon-Bx94PDZ6.js";import{F as f}from"./DevicePhoneMobileIcon-SMwjWf6M.js";import{F as h}from"./TruckIcon-C8f1NFCW.js";function j({title:r,titleId:s,...t},m){return a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:m,"aria-labelledby":s},t),r?a.createElement("title",{id:s},r):null,a.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M9.879 7.519c1.171-1.025 3.071-1.025 4.242 0 1.172 1.025 1.172 2.687 0 3.712-.203.179-.43.326-.67.442-.745.361-1.45.999-1.45 1.827v.75M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0Zm-9 5.25h.008v.008H12v-.008Z"}))}const g=a.forwardRef(j),N=[{text:"No physical card needed",included:!0},{text:"Delivered via email after approval",included:!0},{text:"EID number required",included:!0,note:!0},{text:"Can be transferred between devices",included:!1}],b=[{text:"Works with any unlocked device",included:!0},{text:"Ships after approval (1-3 days)",included:!0},{text:"3-in-1 size (Nano/Micro/Standard)",included:!0},{text:"No EID required",included:!0}],v=["89049032","89033023","89033024","89043051","89043052"];function y({onToggleEidInfo:r}){return e.jsxs("div",{className:"border border-primary/30 bg-primary/5 rounded-xl p-5",children:[e.jsxs("div",{className:"flex items-center gap-3 mb-4",children:[e.jsx("div",{className:"w-12 h-12 rounded-xl bg-primary/10 flex items-center justify-center",children:e.jsx(u,{className:"w-6 h-6 text-primary"})}),e.jsxs("div",{children:[e.jsx("h4",{className:"font-semibold text-foreground",children:"eSIM"}),e.jsx("p",{className:"text-xs text-muted-foreground",children:"Digital SIM card"})]})]}),e.jsx("ul",{className:"space-y-3",children:N.map((s,t)=>e.jsxs("li",{className:"flex items-start gap-2",children:[s.included?e.jsx(c,{className:"w-4 h-4 text-success mt-0.5 flex-shrink-0"}):e.jsx("span",{className:"w-4 h-4 mt-0.5 flex-shrink-0 text-center text-muted-foreground",children:"✕"}),e.jsxs("span",{className:"text-sm text-foreground",children:[s.text,s.note&&e.jsx("button",{onClick:r,className:"ml-1 text-primary hover:text-primary-hover",children:e.jsx(g,{className:"w-4 h-4 inline"})})]})]},t))}),e.jsx("div",{className:"mt-4 pt-4 border-t border-primary/20",children:e.jsxs("div",{className:"flex items-center gap-2 text-sm",children:[e.jsx(p,{className:"w-4 h-4 text-primary"}),e.jsxs("span",{className:"text-muted-foreground",children:["Delivery: ",e.jsx("span",{className:"text-foreground font-medium",children:"Email after approval"})]})]})})]})}function w(){return e.jsxs("div",{className:"border border-border bg-muted/30 rounded-xl p-5",children:[e.jsxs("div",{className:"flex items-center gap-3 mb-4",children:[e.jsx("div",{className:"w-12 h-12 rounded-xl bg-foreground/10 flex items-center justify-center",children:e.jsx(f,{className:"w-6 h-6 text-foreground"})}),e.jsxs("div",{children:[e.jsx("h4",{className:"font-semibold text-foreground",children:"Physical SIM"}),e.jsx("p",{className:"text-xs text-muted-foreground",children:"Traditional SIM card"})]})]}),e.jsx("ul",{className:"space-y-3",children:b.map((r,s)=>e.jsxs("li",{className:"flex items-start gap-2",children:[e.jsx(c,{className:"w-4 h-4 text-success mt-0.5 flex-shrink-0"}),e.jsx("span",{className:"text-sm text-foreground",children:r.text})]},s))}),e.jsx("div",{className:"mt-4 pt-4 border-t border-border",children:e.jsxs("div",{className:"flex items-center gap-2 text-sm",children:[e.jsx(h,{className:"w-4 h-4 text-muted-foreground"}),e.jsxs("span",{className:"text-muted-foreground",children:["Delivery: ",e.jsx("span",{className:"text-foreground font-medium",children:"1-3 business days"})]})]})})]})}function l(){const[r,s]=a.useState(!1);return e.jsxs("div",{className:"bg-card border border-border rounded-2xl p-6 md:p-8",children:[e.jsx("h3",{className:"text-lg font-semibold text-foreground text-center mb-2",children:"eSIM vs Physical SIM"}),e.jsx("p",{className:"text-sm text-muted-foreground text-center mb-6",children:"Choose the right option for your device"}),e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-6",children:[e.jsx(y,{onToggleEidInfo:()=>s(!r)}),e.jsx(w,{})]}),r&&e.jsx("div",{className:"mt-6 p-4 bg-info/10 border border-info/25 rounded-xl",children:e.jsxs("div",{className:"flex items-start gap-3",children:[e.jsx(x,{className:"w-5 h-5 text-info mt-0.5 flex-shrink-0"}),e.jsxs("div",{children:[e.jsx("h4",{className:"font-medium text-foreground mb-2",children:"What is an EID?"}),e.jsx("p",{className:"text-sm text-muted-foreground mb-3",children:`An EID (Embedded Identity Document) is a 32-digit number unique to your device's eSIM chip. You can find it in your phone's settings under "About" or "SIM status".`}),e.jsxs("div",{className:"text-sm",children:[e.jsx("p",{className:"font-medium text-foreground mb-1",children:"Compatible EID prefixes:"}),e.jsx("div",{className:"flex flex-wrap gap-2",children:v.map(t=>e.jsxs("code",{className:"px-2 py-1 bg-card rounded text-xs font-mono text-foreground",children:[t,"..."]},t))})]})]})]})}),e.jsx("p",{className:"text-center text-xs text-muted-foreground mt-6",children:"Both options require ID verification before activation (1-2 business days)"})]})}l.__docgenInfo={description:"",methods:[],displayName:"SimTypeComparison"};const R={title:"Features/Services/SIM/SimTypeComparison",component:l,parameters:{layout:"centered"}},d={};var i,o,n;d.parameters={...d.parameters,docs:{...(i=d.parameters)==null?void 0:i.docs,source:{originalSource:"{}",...(n=(o=d.parameters)==null?void 0:o.docs)==null?void 0:n.source}}};const $=["Default"];export{d as Default,$ as __namedExportsOrder,R as default}; diff --git a/apps/portal/public/storybook/assets/SimTypeSelector-m-grYnOJ.js b/apps/portal/public/storybook/assets/SimTypeSelector-m-grYnOJ.js new file mode 100644 index 00000000..8493fd08 --- /dev/null +++ b/apps/portal/public/storybook/assets/SimTypeSelector-m-grYnOJ.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{r as u}from"./index-JhL3uwfD.js";import{F as c}from"./InformationCircleIcon-Clz7d-56.js";import{F as t}from"./CheckIcon-BKJSKBEC.js";import{F as p}from"./SignalIcon-CUFdTwmf.js";import{F as h}from"./EnvelopeIcon-Bx94PDZ6.js";import{F as f}from"./DevicePhoneMobileIcon-SMwjWf6M.js";import{F as g}from"./TruckIcon-C8f1NFCW.js";const d="Physical SIM",j=["89049032","89033023","89033024","89043051","89043052"];function b({isSelected:r,onSelect:s}){return e.jsxs("button",{type:"button",onClick:s,className:`relative text-left p-5 rounded-xl border-2 transition-all duration-200 ${r?"border-primary bg-primary/5 ring-1 ring-primary/20":"border-border bg-card hover:border-primary/40 hover:bg-muted/50"}`,children:[r&&e.jsx("div",{className:"absolute top-3 right-3 w-6 h-6 rounded-full bg-primary flex items-center justify-center",children:e.jsx(t,{className:"w-4 h-4 text-primary-foreground"})}),e.jsxs("div",{className:"flex items-start gap-4",children:[e.jsx("div",{className:`w-12 h-12 rounded-xl flex items-center justify-center flex-shrink-0 ${r?"bg-primary/10":"bg-muted"}`,children:e.jsx(p,{className:`w-6 h-6 ${r?"text-primary":"text-muted-foreground"}`})}),e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsx("h4",{className:"font-semibold text-foreground mb-1",children:"eSIM (Digital)"}),e.jsx("p",{className:"text-sm text-muted-foreground mb-3",children:"Digital SIM delivered via email after approval"}),e.jsxs("div",{className:"flex items-center gap-2 text-sm",children:[e.jsx(h,{className:"w-4 h-4 text-primary"}),e.jsxs("span",{className:"text-muted-foreground",children:["Delivery: ",e.jsx("span",{className:"text-foreground font-medium",children:"Email after approval"})]})]})]})]}),e.jsxs("ul",{className:"mt-4 space-y-2 text-sm text-muted-foreground",children:[e.jsxs("li",{className:"flex items-center gap-2",children:[e.jsx(t,{className:"w-4 h-4 text-success flex-shrink-0"}),e.jsx("span",{children:"No physical card needed"})]}),e.jsxs("li",{className:"flex items-center gap-2",children:[e.jsx(t,{className:"w-4 h-4 text-success flex-shrink-0"}),e.jsx("span",{children:"EID number required"})]})]})]})}function y({isSelected:r,onSelect:s}){return e.jsxs("button",{type:"button",onClick:s,className:`relative text-left p-5 rounded-xl border-2 transition-all duration-200 ${r?"border-primary bg-primary/5 ring-1 ring-primary/20":"border-border bg-card hover:border-primary/40 hover:bg-muted/50"}`,children:[r&&e.jsx("div",{className:"absolute top-3 right-3 w-6 h-6 rounded-full bg-primary flex items-center justify-center",children:e.jsx(t,{className:"w-4 h-4 text-primary-foreground"})}),e.jsxs("div",{className:"flex items-start gap-4",children:[e.jsx("div",{className:`w-12 h-12 rounded-xl flex items-center justify-center flex-shrink-0 ${r?"bg-primary/10":"bg-muted"}`,children:e.jsx(f,{className:`w-6 h-6 ${r?"text-primary":"text-muted-foreground"}`})}),e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsx("h4",{className:"font-semibold text-foreground mb-1",children:d}),e.jsx("p",{className:"text-sm text-muted-foreground mb-3",children:"Traditional SIM card shipped to your address"}),e.jsxs("div",{className:"flex items-center gap-2 text-sm",children:[e.jsx(g,{className:"w-4 h-4 text-muted-foreground"}),e.jsxs("span",{className:"text-muted-foreground",children:["Delivery: ",e.jsx("span",{className:"text-foreground font-medium",children:"1-3 business days"})]})]})]})]}),e.jsxs("ul",{className:"mt-4 space-y-2 text-sm text-muted-foreground",children:[e.jsxs("li",{className:"flex items-center gap-2",children:[e.jsx(t,{className:"w-4 h-4 text-success flex-shrink-0"}),e.jsx("span",{children:"Works with any unlocked device"})]}),e.jsxs("li",{className:"flex items-center gap-2",children:[e.jsx(t,{className:"w-4 h-4 text-success flex-shrink-0"}),e.jsx("span",{children:"3-in-1 size (Nano/Micro/Standard)"})]})]})]})}function N(r){if(r&&r.length<32)return`EID must be 32 digits (${r.length}/32)`}function v({simType:r,eid:s,onEidChange:o,errors:i}){const[a,x]=u.useState(!1),l=N(s),m=!!i.eid;return e.jsx("div",{className:`overflow-hidden transition-all duration-300 ease-out ${r==="eSIM"?"max-h-[400px] opacity-100":"max-h-0 opacity-0"}`,"aria-hidden":r!=="eSIM",children:e.jsxs("div",{className:"p-5 bg-primary/5 border border-primary/20 rounded-xl",children:[e.jsxs("div",{className:"flex items-start gap-3 mb-4",children:[e.jsx(c,{className:"w-5 h-5 text-primary mt-0.5 flex-shrink-0"}),e.jsxs("div",{children:[e.jsx("h4",{className:"font-medium text-foreground mb-1",children:"eSIM Device Information"}),e.jsx("p",{className:"text-sm text-muted-foreground",children:"Your EID (Embedded Identity Document) is required to provision the eSIM to your device."})]})]}),e.jsxs("div",{children:[e.jsxs("label",{htmlFor:"eid",className:"block text-sm font-medium text-foreground mb-2",children:["EID Number ",e.jsx("span",{className:"text-destructive",children:"*"})]}),e.jsx("input",{type:"text",inputMode:"numeric",id:"eid",value:s,onChange:n=>o(n.target.value.replace(/\D/g,"").slice(0,32)),className:`w-full px-4 py-3 bg-card border rounded-lg text-foreground font-mono tracking-wider placeholder:text-muted-foreground placeholder:font-sans placeholder:tracking-normal focus:outline-none focus:ring-2 focus:ring-primary/50 focus:border-primary transition-colors ${m?"border-destructive":l?"border-warning":"border-border"}`,placeholder:"32-digit EID number (numbers only)",maxLength:32}),m&&e.jsx("p",{className:"text-destructive text-sm mt-2",children:i.eid}),!m&&l&&e.jsx("p",{className:"text-warning text-sm mt-2",children:l}),e.jsx("button",{type:"button",onClick:()=>x(!a),className:"text-sm text-primary hover:underline mt-2",children:a?"Hide":"Where to find your EID?"}),a&&e.jsxs("div",{className:"mt-3 p-4 bg-card border border-border rounded-lg text-sm",children:[e.jsx("p",{className:"text-muted-foreground mb-3",children:"Find your EID in your phone's settings:"}),e.jsxs("ul",{className:"space-y-2 text-muted-foreground",children:[e.jsxs("li",{children:[e.jsx("strong",{className:"text-foreground",children:"iOS:"})," Settings → General → About → EID"]}),e.jsxs("li",{children:[e.jsx("strong",{className:"text-foreground",children:"Android:"})," Settings → About Phone → SIM status → EID"]})]}),e.jsxs("div",{className:"mt-4 pt-3 border-t border-border",children:[e.jsx("p",{className:"font-medium text-foreground mb-2",children:"Compatible EID prefixes:"}),e.jsx("div",{className:"flex flex-wrap gap-2",children:j.map(n=>e.jsxs("code",{className:"px-2 py-1 bg-muted rounded text-xs font-mono text-foreground",children:[n,"..."]},n))})]})]})]})]})})}function I({simType:r,onSimTypeChange:s,eid:o,onEidChange:i,errors:a}){return e.jsxs("div",{className:"space-y-6",children:[e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4",children:[e.jsx(b,{isSelected:r==="eSIM",onSelect:()=>s("eSIM")}),e.jsx(y,{isSelected:r===d,onSelect:()=>s(d)})]}),e.jsx(v,{simType:r,eid:o,onEidChange:i,errors:a}),e.jsxs("div",{className:"flex items-start gap-3 p-4 bg-muted/50 border border-border rounded-lg",children:[e.jsx(c,{className:"w-5 h-5 text-muted-foreground mt-0.5 flex-shrink-0"}),e.jsxs("p",{className:"text-sm text-muted-foreground",children:["Both eSIM and ",d," require ID verification before activation (1-2 business days)."]})]})]})}I.__docgenInfo={description:"",methods:[],displayName:"SimTypeSelector",props:{simType:{required:!0,tsType:{name:"union",raw:'"Physical SIM" | "eSIM" | ""',elements:[{name:"literal",value:'"Physical SIM"'},{name:"literal",value:'"eSIM"'},{name:"literal",value:'""'}]},description:""},onSimTypeChange:{required:!0,tsType:{name:"signature",type:"function",raw:'(type: "Physical SIM" | "eSIM") => void',signature:{arguments:[{type:{name:"union",raw:'"Physical SIM" | "eSIM"',elements:[{name:"literal",value:'"Physical SIM"'},{name:"literal",value:'"eSIM"'}]},name:"type"}],return:{name:"void"}}},description:""},eid:{required:!0,tsType:{name:"string"},description:""},onEidChange:{required:!0,tsType:{name:"signature",type:"function",raw:"(eid: string) => void",signature:{arguments:[{type:{name:"string"},name:"eid"}],return:{name:"void"}}},description:""},errors:{required:!0,tsType:{name:"Record",elements:[{name:"string"},{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}]}],raw:"Record"},description:""}}};export{I as S}; diff --git a/apps/portal/public/storybook/assets/SimTypeSelector.stories-DpuYMLx1.js b/apps/portal/public/storybook/assets/SimTypeSelector.stories-DpuYMLx1.js new file mode 100644 index 00000000..e9f82286 --- /dev/null +++ b/apps/portal/public/storybook/assets/SimTypeSelector.stories-DpuYMLx1.js @@ -0,0 +1,43 @@ +import{S as C}from"./SimTypeSelector-m-grYnOJ.js";import"./jsx-runtime-D_zvdyIk.js";import"./index-JhL3uwfD.js";import"./InformationCircleIcon-Clz7d-56.js";import"./CheckIcon-BKJSKBEC.js";import"./SignalIcon-CUFdTwmf.js";import"./EnvelopeIcon-Bx94PDZ6.js";import"./DevicePhoneMobileIcon-SMwjWf6M.js";import"./TruckIcon-C8f1NFCW.js";const _={title:"Features/Services/SIM/SimTypeSelector",component:C,parameters:{layout:"centered"}},e={args:{simType:"",onSimTypeChange:()=>{},eid:"",onEidChange:()=>{},errors:{}}},r={args:{simType:"eSIM",onSimTypeChange:()=>{},eid:"",onEidChange:()=>{},errors:{}}},n={args:{simType:"Physical SIM",onSimTypeChange:()=>{},eid:"",onEidChange:()=>{},errors:{}}},a={args:{simType:"eSIM",onSimTypeChange:()=>{},eid:"89049032000000000000000000000001",onEidChange:()=>{},errors:{}}},s={args:{simType:"eSIM",onSimTypeChange:()=>{},eid:"12345",onEidChange:()=>{},errors:{eid:"EID must start with a compatible prefix"}}};var o,i,t;e.parameters={...e.parameters,docs:{...(o=e.parameters)==null?void 0:o.docs,source:{originalSource:`{ + args: { + simType: "", + onSimTypeChange: () => {}, + eid: "", + onEidChange: () => {}, + errors: {} + } +}`,...(t=(i=e.parameters)==null?void 0:i.docs)==null?void 0:t.source}}};var m,p,c;r.parameters={...r.parameters,docs:{...(m=r.parameters)==null?void 0:m.docs,source:{originalSource:`{ + args: { + simType: "eSIM", + onSimTypeChange: () => {}, + eid: "", + onEidChange: () => {}, + errors: {} + } +}`,...(c=(p=r.parameters)==null?void 0:p.docs)==null?void 0:c.source}}};var d,S,g;n.parameters={...n.parameters,docs:{...(d=n.parameters)==null?void 0:d.docs,source:{originalSource:`{ + args: { + simType: "Physical SIM", + onSimTypeChange: () => {}, + eid: "", + onEidChange: () => {}, + errors: {} + } +}`,...(g=(S=n.parameters)==null?void 0:S.docs)==null?void 0:g.source}}};var h,y,E;a.parameters={...a.parameters,docs:{...(h=a.parameters)==null?void 0:h.docs,source:{originalSource:`{ + args: { + simType: "eSIM", + onSimTypeChange: () => {}, + eid: "89049032000000000000000000000001", + onEidChange: () => {}, + errors: {} + } +}`,...(E=(y=a.parameters)==null?void 0:y.docs)==null?void 0:E.source}}};var l,u,T;s.parameters={...s.parameters,docs:{...(l=s.parameters)==null?void 0:l.docs,source:{originalSource:`{ + args: { + simType: "eSIM", + onSimTypeChange: () => {}, + eid: "12345", + onEidChange: () => {}, + errors: { + eid: "EID must start with a compatible prefix" + } + } +}`,...(T=(u=s.parameters)==null?void 0:u.docs)==null?void 0:T.source}}};const v=["Default","ESimSelected","PhysicalSimSelected","ESimWithEid","ESimWithEidError"];export{e as Default,r as ESimSelected,a as ESimWithEid,s as ESimWithEidError,n as PhysicalSimSelected,v as __namedExportsOrder,_ as default}; diff --git a/apps/portal/public/storybook/assets/SimTypeStep-DDAAK-Br.js b/apps/portal/public/storybook/assets/SimTypeStep-DDAAK-Br.js new file mode 100644 index 00000000..c20ba35c --- /dev/null +++ b/apps/portal/public/storybook/assets/SimTypeStep-DDAAK-Br.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import"./DataTable-COYdcx41.js";import"./FormField-C0UylACv.js";import"./OtpInput-6kd_2E0v.js";import"./OtpExpiryDisplay-BGgB7Tk6.js";import"./SearchFilterBar-Ds19v0-P.js";import"./PaginationBar-D_k7ztRb.js";import"./DetailHeader-C0ZsoM39.js";import"./AlertBanner-Bnlyj1xc.js";import"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import"./error-state-BSicqqE6.js";import"./index-BKyvj4H5.js";import"./SectionHeader-Bo81Whai.js";import"./ProgressSteps-weVdXcqu.js";import"./SubCard-1OZIPgEM.js";import{A as p}from"./AnimatedCard-DFAiX4zP.js";import"./ServiceCard-BJEHFLba.js";import"./SummaryStats-D6b7Am-p.js";import"./FilterDropdown-CUU04WmN.js";import"./ClearFiltersButton-CPCoyXk2.js";import"./DetailStatsGrid-CDkKTM-B.js";import"./SectionCard-BcUjc-7N.js";import"./MetricCard-BR1xVIXz.js";import"./BackLink-C5IY6wzy.js";import"./status-badge-5pzxe45J.js";import"./error-boundary-DIRO_cDI.js";import"./error-fallbacks-kSPsNxmV.js";import{B as s}from"./button-C8_cybvS.js";import"./input-BbGJiz0K.js";import"./password-input-D4khGh8v.js";import"./checkbox-DahUyQbt.js";import"./label-C25VH7yk.js";import"./error-message-DeFFz6H_.js";import"./status-pill-wWp9xkwA.js";import"./badge-BdMsasyi.js";import"./spinner-mU4XywER.js";import"./loading-overlay-DMJTiFny.js";import"./empty-state-DRUGJ9ip.js";import"./inline-toast-DQJ-O9wc.js";import"./logo-f0fprTjz.js";import{S as u}from"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./animated-container-DyAZ9gmw.js";import{S as d}from"./SimTypeSelector-m-grYnOJ.js";import{F as l}from"./ArrowRightIcon--Vuz7Q7x.js";function c({simType:t,setSimType:i,eid:r,setEid:n,validate:o,onNext:m}){const a=()=>{t==="eSIM"&&!o()||m()};return e.jsxs(p,{variant:"static",className:"p-8",children:[e.jsx("div",{className:"mb-6",children:e.jsx(u,{stepNumber:1,title:"Select SIM Type",description:"Choose between eSIM and physical SIM"})}),e.jsx(d,{simType:t,onSimTypeChange:i,eid:r,onEidChange:n,errors:{}}),e.jsx("div",{className:"flex justify-end mt-6",children:e.jsx(s,{onClick:a,rightIcon:e.jsx(l,{className:"w-4 h-4"}),children:"Continue to Activation"})})]})}c.__docgenInfo={description:"",methods:[],displayName:"SimTypeStep",props:{onNext:{required:!0,tsType:{name:"signature",type:"function",raw:"() => void",signature:{arguments:[],return:{name:"void"}}},description:""},onBack:{required:!1,tsType:{name:"union",raw:"(() => void) | undefined",elements:[{name:"unknown"},{name:"undefined"}]},description:""},simType:{required:!0,tsType:{name:"union",raw:'"eSIM" | "Physical SIM" | ""',elements:[{name:"literal",value:'"eSIM"'},{name:"literal",value:'"Physical SIM"'},{name:"literal",value:'""'}]},description:""},setSimType:{required:!0,tsType:{name:"signature",type:"function",raw:'(type: "eSIM" | "Physical SIM") => void',signature:{arguments:[{type:{name:"union",raw:'"eSIM" | "Physical SIM"',elements:[{name:"literal",value:'"eSIM"'},{name:"literal",value:'"Physical SIM"'}]},name:"type"}],return:{name:"void"}}},description:""},eid:{required:!0,tsType:{name:"string"},description:""},setEid:{required:!0,tsType:{name:"signature",type:"function",raw:"(eid: string) => void",signature:{arguments:[{type:{name:"string"},name:"eid"}],return:{name:"void"}}},description:""},validate:{required:!0,tsType:{name:"signature",type:"function",raw:"() => boolean",signature:{arguments:[],return:{name:"boolean"}}},description:""}}};export{c as S}; diff --git a/apps/portal/public/storybook/assets/SimTypeStep.stories-B8JX6W0f.js b/apps/portal/public/storybook/assets/SimTypeStep.stories-B8JX6W0f.js new file mode 100644 index 00000000..793902d4 --- /dev/null +++ b/apps/portal/public/storybook/assets/SimTypeStep.stories-B8JX6W0f.js @@ -0,0 +1,28 @@ +import{S}from"./SimTypeStep-DDAAK-Br.js";import"./jsx-runtime-D_zvdyIk.js";import"./DataTable-COYdcx41.js";import"./empty-state-DRUGJ9ip.js";import"./button-C8_cybvS.js";import"./index-JhL3uwfD.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./spinner-mU4XywER.js";import"./PlusIcon-DGufmf06.js";import"./ChevronRightIcon-CMQWsJeW.js";import"./FormField-C0UylACv.js";import"./label-C25VH7yk.js";import"./input-BbGJiz0K.js";import"./error-message-DeFFz6H_.js";import"./ExclamationCircleIcon-jFfW0Ax_.js";import"./OtpInput-6kd_2E0v.js";import"./input-otp-Cin9-T84.js";import"./createLucideIcon-CctB0W3q.js";import"./OtpExpiryDisplay-BGgB7Tk6.js";import"./clock-C92s7kSC.js";import"./SearchFilterBar-Ds19v0-P.js";import"./FunnelIcon-8nhbwqu0.js";import"./XMarkIcon-Bsb1W5VN.js";import"./PaginationBar-D_k7ztRb.js";import"./DetailHeader-C0ZsoM39.js";import"./status-pill-wWp9xkwA.js";import"./AlertBanner-Bnlyj1xc.js";import"./XCircleIcon-CiVBnngB.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./InformationCircleIcon-Clz7d-56.js";import"./CheckCircleIcon-Dva35lTP.js";import"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import"./password-input-D4khGh8v.js";import"./checkbox-DahUyQbt.js";import"./badge-BdMsasyi.js";import"./loading-overlay-DMJTiFny.js";import"./error-state-BSicqqE6.js";import"./ArrowPathIcon-CZjG6RfV.js";import"./inline-toast-DQJ-O9wc.js";import"./index-CNXKWNLp.js";import"./proxy-ZkTvaR74.js";import"./logo-f0fprTjz.js";import"./next-image-69WeRggt.js";import"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./Squares2X2Icon-BMQM_Wy1.js";import"./animated-container-DyAZ9gmw.js";import"./SectionHeader-Bo81Whai.js";import"./ProgressSteps-weVdXcqu.js";import"./SubCard-1OZIPgEM.js";import"./AnimatedCard-DFAiX4zP.js";import"./ServiceCard-BJEHFLba.js";import"./arrow-right-BNMAry-H.js";import"./SummaryStats-D6b7Am-p.js";import"./FilterDropdown-CUU04WmN.js";import"./ClearFiltersButton-CPCoyXk2.js";import"./DetailStatsGrid-CDkKTM-B.js";import"./SectionCard-BcUjc-7N.js";import"./MetricCard-BR1xVIXz.js";import"./BackLink-C5IY6wzy.js";import"./ArrowLeftIcon-Cw1eswTb.js";import"./status-badge-5pzxe45J.js";import"./error-boundary-DIRO_cDI.js";import"./error-fallbacks-kSPsNxmV.js";import"./SimTypeSelector-m-grYnOJ.js";import"./CheckIcon-BKJSKBEC.js";import"./SignalIcon-CUFdTwmf.js";import"./EnvelopeIcon-Bx94PDZ6.js";import"./DevicePhoneMobileIcon-SMwjWf6M.js";import"./TruckIcon-C8f1NFCW.js";import"./ArrowRightIcon--Vuz7Q7x.js";const zt={title:"Features/Services/SIM/Configure/SimTypeStep",component:S,parameters:{layout:"centered"}},t={args:{simType:"",setSimType:()=>{},eid:"",setEid:()=>{},validate:()=>!0,onNext:()=>{}}},r={args:{simType:"eSIM",setSimType:()=>{},eid:"89049032000000000000000000000001",setEid:()=>{},validate:()=>!0,onNext:()=>{}}},i={args:{simType:"Physical SIM",setSimType:()=>{},eid:"",setEid:()=>{},validate:()=>!0,onNext:()=>{}}};var e,o,m;t.parameters={...t.parameters,docs:{...(e=t.parameters)==null?void 0:e.docs,source:{originalSource:`{ + args: { + simType: "", + setSimType: () => {}, + eid: "", + setEid: () => {}, + validate: () => true, + onNext: () => {} + } +}`,...(m=(o=t.parameters)==null?void 0:o.docs)==null?void 0:m.source}}};var p,s,a;r.parameters={...r.parameters,docs:{...(p=r.parameters)==null?void 0:p.docs,source:{originalSource:`{ + args: { + simType: "eSIM", + setSimType: () => {}, + eid: "89049032000000000000000000000001", + setEid: () => {}, + validate: () => true, + onNext: () => {} + } +}`,...(a=(s=r.parameters)==null?void 0:s.docs)==null?void 0:a.source}}};var n,d,c;i.parameters={...i.parameters,docs:{...(n=i.parameters)==null?void 0:n.docs,source:{originalSource:`{ + args: { + simType: "Physical SIM", + setSimType: () => {}, + eid: "", + setEid: () => {}, + validate: () => true, + onNext: () => {} + } +}`,...(c=(d=i.parameters)==null?void 0:d.docs)==null?void 0:c.source}}};const At=["Default","ESimSelected","PhysicalSimSelected"];export{t as Default,r as ESimSelected,i as PhysicalSimSelected,At as __namedExportsOrder,zt as default}; diff --git a/apps/portal/public/storybook/assets/SiteFooter.stories-Cz1zqKrh.js b/apps/portal/public/storybook/assets/SiteFooter.stories-Cz1zqKrh.js new file mode 100644 index 00000000..d396cc5f --- /dev/null +++ b/apps/portal/public/storybook/assets/SiteFooter.stories-Cz1zqKrh.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{L as l}from"./next-link-BmD4fPSy.js";import{L as d}from"./logo-f0fprTjz.js";import{M as x}from"./map-pin-Bm-ztWPO.js";import{P as p}from"./phone-BtPh0Z3S.js";import"./index-JhL3uwfD.js";import"./next-image-69WeRggt.js";import"./createLucideIcon-CctB0W3q.js";const f="text-muted-foreground hover:text-foreground transition-colors",h=[{href:"/services/internet",label:"Internet"},{href:"/services/sim",label:"SIM & eSIM"},{href:"/services/vpn",label:"VPN"}],u=[{href:"/about",label:"About Us"},{href:"/support",label:"Support"},{href:"/contact",label:"Contact"},{href:"/blog",label:"Blog"}];function t({title:m,links:c}){return e.jsxs("div",{children:[e.jsx("h3",{className:"text-sm font-semibold text-foreground mb-4 font-heading",children:m}),e.jsx("ul",{className:"space-y-2 text-sm",children:c.map(r=>e.jsx("li",{children:e.jsx(l,{href:r.href,className:f,children:r.label})},r.href))})]})}function n(){return e.jsxs("footer",{className:"relative border-t border-border/40 bg-muted/30",children:[e.jsx("div",{className:"absolute top-0 left-0 right-0 h-px bg-gradient-to-r from-transparent via-primary/20 to-transparent"}),e.jsxs("div",{className:"max-w-[var(--cp-page-max-width)] mx-auto px-[var(--cp-page-padding)] py-12",children:[e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-4 gap-8 mb-8",children:[e.jsxs("div",{className:"md:col-span-2",children:[e.jsxs(l,{href:"/",className:"inline-flex items-center gap-2.5 mb-4",children:[e.jsx("span",{className:"inline-flex items-center justify-center h-8 w-8 rounded-lg bg-primary/10 text-primary",children:e.jsx(d,{size:18})}),e.jsx("span",{className:"text-base font-bold text-foreground",children:"Assist Solutions"})]}),e.jsx("p",{className:"text-sm text-muted-foreground mb-4 max-w-sm",children:"Serving Japan's international community with reliable IT solutions since 2002."}),e.jsxs("div",{className:"space-y-2 text-sm text-muted-foreground",children:[e.jsxs("div",{className:"flex items-start gap-2",children:[e.jsx(x,{className:"h-4 w-4 mt-0.5 flex-shrink-0"}),e.jsxs("span",{children:["3F Azabu Maruka Bldg., 3-8-2 Higashi Azabu,",e.jsx("br",{}),"Minato-ku, Tokyo 106-0044"]})]}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(p,{className:"h-4 w-4 flex-shrink-0"}),e.jsxs("span",{children:[e.jsx("a",{href:"tel:0120-660-470",className:"hover:text-foreground transition-colors",children:"0120-660-470"})," ","(Toll Free)"]})]})]})]}),e.jsx(t,{title:"Services",links:h}),e.jsx(t,{title:"Company",links:u})]}),e.jsxs("div",{className:"pt-8 border-t border-border/40 flex flex-col sm:flex-row items-center justify-between gap-4",children:[e.jsxs("div",{className:"text-sm text-muted-foreground",children:["© ",new Date().getFullYear()," Assist Solutions Corp. All rights reserved."]}),e.jsx("div",{className:"text-xs text-muted-foreground",children:"Notified Telecommunication Carrier: A-19-9538"})]})]})]})}n.__docgenInfo={description:"",methods:[],displayName:"SiteFooter"};const A={title:"Organisms/SiteFooter",component:n,parameters:{layout:"fullscreen"}},s={};var a,o,i;s.parameters={...s.parameters,docs:{...(a=s.parameters)==null?void 0:a.docs,source:{originalSource:"{}",...(i=(o=s.parameters)==null?void 0:o.docs)==null?void 0:i.source}}};const I=["Default"];export{s as Default,I as __namedExportsOrder,A as default}; diff --git a/apps/portal/public/storybook/assets/Squares2X2Icon-BMQM_Wy1.js b/apps/portal/public/storybook/assets/Squares2X2Icon-BMQM_Wy1.js new file mode 100644 index 00000000..9f621720 --- /dev/null +++ b/apps/portal/public/storybook/assets/Squares2X2Icon-BMQM_Wy1.js @@ -0,0 +1 @@ +import{r as e}from"./index-JhL3uwfD.js";function n({title:r,titleId:a,...t},o){return e.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:o,"aria-labelledby":a},t),r?e.createElement("title",{id:a},r):null,e.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M3.75 6A2.25 2.25 0 0 1 6 3.75h2.25A2.25 2.25 0 0 1 10.5 6v2.25a2.25 2.25 0 0 1-2.25 2.25H6a2.25 2.25 0 0 1-2.25-2.25V6ZM3.75 15.75A2.25 2.25 0 0 1 6 13.5h2.25a2.25 2.25 0 0 1 2.25 2.25V18a2.25 2.25 0 0 1-2.25 2.25H6A2.25 2.25 0 0 1 3.75 18v-2.25ZM13.5 6a2.25 2.25 0 0 1 2.25-2.25H18A2.25 2.25 0 0 1 20.25 6v2.25A2.25 2.25 0 0 1 18 10.5h-2.25a2.25 2.25 0 0 1-2.25-2.25V6ZM13.5 15.75a2.25 2.25 0 0 1 2.25-2.25H18a2.25 2.25 0 0 1 2.25 2.25V18A2.25 2.25 0 0 1 18 20.25h-2.25A2.25 2.25 0 0 1 13.5 18v-2.25Z"}))}const i=e.forwardRef(n);export{i as F}; diff --git a/apps/portal/public/storybook/assets/StatCard.stories-ByQilz1z.js b/apps/portal/public/storybook/assets/StatCard.stories-ByQilz1z.js new file mode 100644 index 00000000..6ad217c3 --- /dev/null +++ b/apps/portal/public/storybook/assets/StatCard.stories-ByQilz1z.js @@ -0,0 +1,41 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{L as N}from"./next-link-BmD4fPSy.js";import{F as V}from"./ArrowRightIcon--Vuz7Q7x.js";import{F as G}from"./Squares2X2Icon-BMQM_Wy1.js";import{F as T}from"./DocumentTextIcon-Dk_xQMYi.js";import{F as $}from"./ChatBubbleLeftRightIcon-DfYi9O0H.js";import{F as O}from"./CurrencyYenIcon-Bf5bmWZc.js";import"./index-JhL3uwfD.js";function j({title:r,value:i,icon:C,href:F,tone:I="neutral"}){const c={neutral:{iconWrap:"bg-muted/50",icon:"text-muted-foreground"},primary:{iconWrap:"bg-primary/10",icon:"text-primary"},info:{iconWrap:"bg-info/10",icon:"text-info"},success:{iconWrap:"bg-success/10",icon:"text-success"},warning:{iconWrap:"bg-warning/10",icon:"text-warning"}}[I];return e.jsxs(N,{href:F,className:"group flex items-center gap-4 p-4 rounded-xl hover:bg-muted/50 transition-colors","aria-label":`${r}: ${i}`,children:[e.jsx("div",{className:`flex-shrink-0 h-10 w-10 rounded-xl flex items-center justify-center ${c.iconWrap}`,"aria-hidden":"true",children:e.jsx(C,{className:`h-5 w-5 ${c.icon}`})}),e.jsxs("div",{className:"min-w-0 flex-1",children:[e.jsx("p",{className:"text-xs font-medium text-muted-foreground uppercase tracking-wide",children:r}),e.jsx("p",{className:"text-2xl font-bold text-foreground mt-0.5 tabular-nums",children:i})]}),e.jsx(V,{className:"h-4 w-4 text-muted-foreground/40 group-hover:text-foreground group-hover:translate-x-0.5 transition-all"})]})}j.__docgenInfo={description:"",methods:[],displayName:"StatCard",props:{title:{required:!0,tsType:{name:"string"},description:""},value:{required:!0,tsType:{name:"union",raw:"string | number",elements:[{name:"string"},{name:"number"}]},description:""},icon:{required:!0,tsType:{name:"ReactComponentType",raw:"React.ComponentType>",elements:[{name:"ReactSVGProps",raw:"React.SVGProps",elements:[{name:"SVGSVGElement"}]}]},description:""},href:{required:!0,tsType:{name:"string"},description:""},tone:{required:!1,tsType:{name:"union",raw:'"neutral" | "primary" | "info" | "success" | "warning"',elements:[{name:"literal",value:'"neutral"'},{name:"literal",value:'"primary"'},{name:"literal",value:'"info"'},{name:"literal",value:'"success"'},{name:"literal",value:'"warning"'}]},description:"",defaultValue:{value:'"neutral"',computed:!1}}}};const Y={title:"Features/Dashboard/StatCard",component:j,parameters:{layout:"centered"},decorators:[r=>e.jsx("div",{style:{width:320},children:e.jsx(r,{})})]},n={args:{title:"Active Services",value:3,icon:G,href:"/account/services",tone:"primary"}},t={args:{title:"Unpaid Invoices",value:2,icon:T,href:"/account/billing",tone:"warning"}},a={args:{title:"Open Cases",value:0,icon:$,href:"/account/support",tone:"info"}},s={args:{title:"Total Spent",value:"17,940 JPY",icon:O,href:"/account/billing",tone:"success"}},o={args:{title:"Recent Orders",value:1,icon:T,href:"/account/orders",tone:"neutral"}};var l,u,m;n.parameters={...n.parameters,docs:{...(l=n.parameters)==null?void 0:l.docs,source:{originalSource:`{ + args: { + title: "Active Services", + value: 3, + icon: Squares2X2Icon, + href: "/account/services", + tone: "primary" + } +}`,...(m=(u=n.parameters)==null?void 0:u.docs)==null?void 0:m.source}}};var p,d,f;t.parameters={...t.parameters,docs:{...(p=t.parameters)==null?void 0:p.docs,source:{originalSource:`{ + args: { + title: "Unpaid Invoices", + value: 2, + icon: DocumentTextIcon, + href: "/account/billing", + tone: "warning" + } +}`,...(f=(d=t.parameters)==null?void 0:d.docs)==null?void 0:f.source}}};var g,x,v;a.parameters={...a.parameters,docs:{...(g=a.parameters)==null?void 0:g.docs,source:{originalSource:`{ + args: { + title: "Open Cases", + value: 0, + icon: ChatBubbleLeftRightIcon, + href: "/account/support", + tone: "info" + } +}`,...(v=(x=a.parameters)==null?void 0:x.docs)==null?void 0:v.source}}};var h,S,w;s.parameters={...s.parameters,docs:{...(h=s.parameters)==null?void 0:h.docs,source:{originalSource:`{ + args: { + title: "Total Spent", + value: "17,940 JPY", + icon: CurrencyYenIcon, + href: "/account/billing", + tone: "success" + } +}`,...(w=(S=s.parameters)==null?void 0:S.docs)==null?void 0:w.source}}};var y,b,R;o.parameters={...o.parameters,docs:{...(y=o.parameters)==null?void 0:y.docs,source:{originalSource:`{ + args: { + title: "Recent Orders", + value: 1, + icon: DocumentTextIcon, + href: "/account/orders", + tone: "neutral" + } +}`,...(R=(b=o.parameters)==null?void 0:b.docs)==null?void 0:R.source}}};const A=["Default","UnpaidInvoices","OpenCases","TotalSpent","Neutral"];export{n as Default,o as Neutral,a as OpenCases,s as TotalSpent,t as UnpaidInvoices,A as __namedExportsOrder,Y as default}; diff --git a/apps/portal/public/storybook/assets/StatusBadge.stories-DyHwG2dd.js b/apps/portal/public/storybook/assets/StatusBadge.stories-DyHwG2dd.js new file mode 100644 index 00000000..c22e168d --- /dev/null +++ b/apps/portal/public/storybook/assets/StatusBadge.stories-DyHwG2dd.js @@ -0,0 +1,23 @@ +import{j as a}from"./jsx-runtime-D_zvdyIk.js";import{S as e}from"./status-badge-5pzxe45J.js";import{F as v}from"./ExclamationTriangleIcon-Di4DJZFg.js";import{F as M}from"./XCircleIcon-CiVBnngB.js";import{F as j}from"./ClockIcon-BFX11zAZ.js";import{F as h}from"./CheckCircleIcon-Dva35lTP.js";import"./index-JhL3uwfD.js";import"./status-pill-wWp9xkwA.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";const s={active:{variant:"success",icon:a.jsx(h,{className:"h-3.5 w-3.5"}),label:"Active"},pending:{variant:"warning",icon:a.jsx(j,{className:"h-3.5 w-3.5"}),label:"Pending"},cancelled:{variant:"error",icon:a.jsx(M,{className:"h-3.5 w-3.5"}),label:"Cancelled"},suspended:{variant:"warning",icon:a.jsx(v,{className:"h-3.5 w-3.5"}),label:"Suspended"}},E={title:"Molecules/StatusBadge",component:e},t={args:{status:"Active",configMap:s}},r={render:()=>a.jsxs("div",{className:"flex flex-wrap gap-3",children:[a.jsx(e,{status:"Active",configMap:s}),a.jsx(e,{status:"Pending",configMap:s}),a.jsx(e,{status:"Cancelled",configMap:s}),a.jsx(e,{status:"Suspended",configMap:s})]})},n={render:()=>a.jsxs("div",{className:"flex flex-wrap gap-3",children:[a.jsx(e,{status:"Active",configMap:s,showIcon:!1}),a.jsx(e,{status:"Pending",configMap:s,showIcon:!1})]})},o={args:{status:"Unknown",configMap:s}};var c,i,d;t.parameters={...t.parameters,docs:{...(c=t.parameters)==null?void 0:c.docs,source:{originalSource:`{ + args: { + status: "Active", + configMap: orderStatusConfig + } +}`,...(d=(i=t.parameters)==null?void 0:i.docs)==null?void 0:d.source}}};var p,u,g;r.parameters={...r.parameters,docs:{...(p=r.parameters)==null?void 0:p.docs,source:{originalSource:`{ + render: () =>
+ + + + +
+}`,...(g=(u=r.parameters)==null?void 0:u.docs)==null?void 0:g.source}}};var l,f,m;n.parameters={...n.parameters,docs:{...(l=n.parameters)==null?void 0:l.docs,source:{originalSource:`{ + render: () =>
+ + +
+}`,...(m=(f=n.parameters)==null?void 0:f.docs)==null?void 0:m.source}}};var S,x,w;o.parameters={...o.parameters,docs:{...(S=o.parameters)==null?void 0:S.docs,source:{originalSource:`{ + args: { + status: "Unknown", + configMap: orderStatusConfig + } +}`,...(w=(x=o.parameters)==null?void 0:x.docs)==null?void 0:w.source}}};const W=["Active","AllStatuses","WithoutIcons","UnknownStatus"];export{t as Active,r as AllStatuses,o as UnknownStatus,n as WithoutIcons,W as __namedExportsOrder,E as default}; diff --git a/apps/portal/public/storybook/assets/StepActions-x37eBfO8.js b/apps/portal/public/storybook/assets/StepActions-x37eBfO8.js new file mode 100644 index 00000000..30089415 --- /dev/null +++ b/apps/portal/public/storybook/assets/StepActions-x37eBfO8.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{B as a}from"./button-C8_cybvS.js";function f(){return e.jsxs("span",{className:"flex items-center justify-center",children:[e.jsxs("svg",{className:"animate-spin -ml-1 mr-3 h-4 w-4 text-white",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",children:[e.jsx("circle",{className:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"4"}),e.jsx("path",{className:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"})]}),"Processing..."]})}function c({onNext:s,onPrevious:i,onSkip:l,nextLabel:t="Continue",previousLabel:o="Back",skipLabel:r="Skip",loading:d=!1,disabled:u=!1,hasErrors:m=!1}){const n=u||d;return e.jsxs("div",{className:"flex flex-col sm:flex-row gap-3",children:[e.jsxs("div",{className:"flex gap-3 flex-1",children:[i&&e.jsx(a,{onClick:i,variant:"outline",className:"flex-1 sm:flex-none",disabled:n,children:o}),l&&e.jsx(a,{onClick:l,variant:"outline",className:"flex-1 sm:flex-none",disabled:n,children:r})]}),s&&e.jsx(a,{onClick:s,className:"flex-1 sm:flex-none sm:min-w-[120px]",disabled:n||m,children:d?e.jsx(f,{}):t})]})}c.__docgenInfo={description:"",methods:[],displayName:"StepActions",props:{onNext:{required:!1,tsType:{name:"union",raw:"(() => void) | undefined",elements:[{name:"unknown"},{name:"undefined"}]},description:""},onPrevious:{required:!1,tsType:{name:"union",raw:"(() => void) | undefined",elements:[{name:"unknown"},{name:"undefined"}]},description:""},onSkip:{required:!1,tsType:{name:"union",raw:"(() => void) | undefined",elements:[{name:"unknown"},{name:"undefined"}]},description:""},nextLabel:{required:!1,tsType:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}]},description:"",defaultValue:{value:'"Continue"',computed:!1}},previousLabel:{required:!1,tsType:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}]},description:"",defaultValue:{value:'"Back"',computed:!1}},skipLabel:{required:!1,tsType:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}]},description:"",defaultValue:{value:'"Skip"',computed:!1}},loading:{required:!1,tsType:{name:"union",raw:"boolean | undefined",elements:[{name:"boolean"},{name:"undefined"}]},description:"",defaultValue:{value:"false",computed:!1}},disabled:{required:!1,tsType:{name:"union",raw:"boolean | undefined",elements:[{name:"boolean"},{name:"undefined"}]},description:"",defaultValue:{value:"false",computed:!1}},hasErrors:{required:!1,tsType:{name:"union",raw:"boolean | undefined",elements:[{name:"boolean"},{name:"undefined"}]},description:"",defaultValue:{value:"false",computed:!1}}}};export{c as S}; diff --git a/apps/portal/public/storybook/assets/StepActions.stories-Dsc7u9rl.js b/apps/portal/public/storybook/assets/StepActions.stories-Dsc7u9rl.js new file mode 100644 index 00000000..ee965cdb --- /dev/null +++ b/apps/portal/public/storybook/assets/StepActions.stories-Dsc7u9rl.js @@ -0,0 +1,43 @@ +import{j as i}from"./jsx-runtime-D_zvdyIk.js";import{S as O}from"./StepActions-x37eBfO8.js";import"./button-C8_cybvS.js";import"./index-JhL3uwfD.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./spinner-mU4XywER.js";const H={title:"Features/Services/ConfigurationStep/StepActions",component:O,parameters:{layout:"centered"},decorators:[C=>i.jsx("div",{style:{maxWidth:500},children:i.jsx(C,{})})]},e={args:{onNext:()=>{}}},r={args:{onNext:()=>{},onPrevious:()=>{}}},o={args:{onNext:()=>{},onPrevious:()=>{},onSkip:()=>{}}},s={args:{onNext:()=>{},onPrevious:()=>{},onSkip:()=>{},nextLabel:"Proceed to Payment",previousLabel:"Go Back",skipLabel:"Skip This Step"}},a={args:{onNext:()=>{},onPrevious:()=>{},loading:!0}},n={args:{onNext:()=>{},onPrevious:()=>{},disabled:!0}},t={args:{onNext:()=>{},onPrevious:()=>{},hasErrors:!0}};var c,p,m;e.parameters={...e.parameters,docs:{...(c=e.parameters)==null?void 0:c.docs,source:{originalSource:`{ + args: { + onNext: () => {} + } +}`,...(m=(p=e.parameters)==null?void 0:p.docs)==null?void 0:m.source}}};var u,d,l;r.parameters={...r.parameters,docs:{...(u=r.parameters)==null?void 0:u.docs,source:{originalSource:`{ + args: { + onNext: () => {}, + onPrevious: () => {} + } +}`,...(l=(d=r.parameters)==null?void 0:d.docs)==null?void 0:l.source}}};var x,g,S;o.parameters={...o.parameters,docs:{...(x=o.parameters)==null?void 0:x.docs,source:{originalSource:`{ + args: { + onNext: () => {}, + onPrevious: () => {}, + onSkip: () => {} + } +}`,...(S=(g=o.parameters)==null?void 0:g.docs)==null?void 0:S.source}}};var v,N,P;s.parameters={...s.parameters,docs:{...(v=s.parameters)==null?void 0:v.docs,source:{originalSource:`{ + args: { + onNext: () => {}, + onPrevious: () => {}, + onSkip: () => {}, + nextLabel: "Proceed to Payment", + previousLabel: "Go Back", + skipLabel: "Skip This Step" + } +}`,...(P=(N=s.parameters)==null?void 0:N.docs)==null?void 0:P.source}}};var b,k,L;a.parameters={...a.parameters,docs:{...(b=a.parameters)==null?void 0:b.docs,source:{originalSource:`{ + args: { + onNext: () => {}, + onPrevious: () => {}, + loading: true + } +}`,...(L=(k=a.parameters)==null?void 0:k.docs)==null?void 0:L.source}}};var h,A,y;n.parameters={...n.parameters,docs:{...(h=n.parameters)==null?void 0:h.docs,source:{originalSource:`{ + args: { + onNext: () => {}, + onPrevious: () => {}, + disabled: true + } +}`,...(y=(A=n.parameters)==null?void 0:A.docs)==null?void 0:y.source}}};var E,f,j;t.parameters={...t.parameters,docs:{...(E=t.parameters)==null?void 0:E.docs,source:{originalSource:`{ + args: { + onNext: () => {}, + onPrevious: () => {}, + hasErrors: true + } +}`,...(j=(f=t.parameters)==null?void 0:f.docs)==null?void 0:j.source}}};const I=["NextOnly","NextAndPrevious","AllActions","CustomLabels","Loading","Disabled","WithErrors"];export{o as AllActions,s as CustomLabels,n as Disabled,a as Loading,r as NextAndPrevious,e as NextOnly,t as WithErrors,I as __namedExportsOrder,H as default}; diff --git a/apps/portal/public/storybook/assets/StepContent-D57mrCa_.js b/apps/portal/public/storybook/assets/StepContent-D57mrCa_.js new file mode 100644 index 00000000..a421b6c2 --- /dev/null +++ b/apps/portal/public/storybook/assets/StepContent-D57mrCa_.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{H as s}from"./HelpPanel-rRaRP4jS.js";import{I as a}from"./InfoPanel-CAJ6XA4c.js";function o({children:r,helpText:n,infoText:t,isDisabled:i}){return i?null:e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"mb-6",children:r}),n&&e.jsx(s,{text:n}),t&&e.jsx(a,{text:t})]})}o.__docgenInfo={description:"",methods:[],displayName:"StepContent",props:{children:{required:!0,tsType:{name:"ReactNode"},description:""},helpText:{required:!1,tsType:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}]},description:""},infoText:{required:!1,tsType:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}]},description:""},isDisabled:{required:!0,tsType:{name:"boolean"},description:""}}};export{o as S}; diff --git a/apps/portal/public/storybook/assets/StepContent.stories-nOPQZWRB.js b/apps/portal/public/storybook/assets/StepContent.stories-nOPQZWRB.js new file mode 100644 index 00000000..c70caf27 --- /dev/null +++ b/apps/portal/public/storybook/assets/StepContent.stories-nOPQZWRB.js @@ -0,0 +1,40 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{S as w}from"./StepContent-D57mrCa_.js";import"./HelpPanel-rRaRP4jS.js";import"./InformationCircleIcon-Clz7d-56.js";import"./index-JhL3uwfD.js";import"./InfoPanel-CAJ6XA4c.js";const C={title:"Features/Services/ConfigurationStep/StepContent",component:w,parameters:{layout:"centered"},decorators:[S=>e.jsx("div",{style:{maxWidth:500},children:e.jsx(S,{})})]},s={args:{isDisabled:!1,children:e.jsx("div",{className:"p-4 bg-gray-50 rounded border",children:e.jsx("p",{children:"This is the main step content area where forms and controls are placed."})})}},a={args:{isDisabled:!1,helpText:"Select the plan that best matches your usage needs. You can always upgrade later.",children:e.jsx("div",{className:"p-4 bg-gray-50 rounded border",children:e.jsx("p",{children:"Step content with help text displayed below."})})}},r={args:{isDisabled:!1,infoText:"All plans include a 14-day free trial period.",children:e.jsx("div",{className:"p-4 bg-gray-50 rounded border",children:e.jsx("p",{children:"Step content with info text displayed below."})})}},t={args:{isDisabled:!1,helpText:"Need help choosing? Our support team is available 24/7.",infoText:"Prices shown are tax-inclusive.",children:e.jsx("div",{className:"p-4 bg-gray-50 rounded border",children:e.jsx("p",{children:"Step content with both help and info panels."})})}},n={args:{isDisabled:!0,children:e.jsx("div",{className:"p-4 bg-gray-50 rounded border",children:e.jsx("p",{children:"This content is hidden when the step is disabled."})})}};var i,d,o;s.parameters={...s.parameters,docs:{...(i=s.parameters)==null?void 0:i.docs,source:{originalSource:`{ + args: { + isDisabled: false, + children:
+

This is the main step content area where forms and controls are placed.

+
+ } +}`,...(o=(d=s.parameters)==null?void 0:d.docs)==null?void 0:o.source}}};var l,p,c;a.parameters={...a.parameters,docs:{...(l=a.parameters)==null?void 0:l.docs,source:{originalSource:`{ + args: { + isDisabled: false, + helpText: "Select the plan that best matches your usage needs. You can always upgrade later.", + children:
+

Step content with help text displayed below.

+
+ } +}`,...(c=(p=a.parameters)==null?void 0:p.docs)==null?void 0:c.source}}};var h,m,u;r.parameters={...r.parameters,docs:{...(h=r.parameters)==null?void 0:h.docs,source:{originalSource:`{ + args: { + isDisabled: false, + infoText: "All plans include a 14-day free trial period.", + children:
+

Step content with info text displayed below.

+
+ } +}`,...(u=(m=r.parameters)==null?void 0:m.docs)==null?void 0:u.source}}};var b,g,x;t.parameters={...t.parameters,docs:{...(b=t.parameters)==null?void 0:b.docs,source:{originalSource:`{ + args: { + isDisabled: false, + helpText: "Need help choosing? Our support team is available 24/7.", + infoText: "Prices shown are tax-inclusive.", + children:
+

Step content with both help and info panels.

+
+ } +}`,...(x=(g=t.parameters)==null?void 0:g.docs)==null?void 0:x.source}}};var f,y,v;n.parameters={...n.parameters,docs:{...(f=n.parameters)==null?void 0:f.docs,source:{originalSource:`{ + args: { + isDisabled: true, + children:
+

This content is hidden when the step is disabled.

+
+ } +}`,...(v=(y=n.parameters)==null?void 0:y.docs)==null?void 0:v.source}}};const O=["Default","WithHelpText","WithInfoText","WithBothPanels","DisabledState"];export{s as Default,n as DisabledState,t as WithBothPanels,a as WithHelpText,r as WithInfoText,O as __namedExportsOrder,C as default}; diff --git a/apps/portal/public/storybook/assets/StepHeader-D_31J9G_.js b/apps/portal/public/storybook/assets/StepHeader-D_31J9G_.js new file mode 100644 index 00000000..304ed823 --- /dev/null +++ b/apps/portal/public/storybook/assets/StepHeader-D_31J9G_.js @@ -0,0 +1 @@ +import{j as n}from"./jsx-runtime-D_zvdyIk.js";import{S as o}from"./StepIndicator-chJR-dG8.js";import{V as p}from"./ValidationStatus-Dsgne9Qr.js";function h(s){return s.isCompleted?"completed":s.isDisabled?"disabled":s.isActive?"active":"pending"}function f({stepNumber:s,title:d,description:t,status:r,validation:e,showStepIndicator:l=!0,headerContent:i}){const a=r==="disabled",m=r==="completed",u=(e==null?void 0:e.isValid)!==!1,c=(e==null?void 0:e.warnings)&&e.warnings.length>0;return n.jsxs("div",{className:"mb-6",children:[n.jsxs("div",{className:"flex items-start gap-4",children:[l&&n.jsx(o,{stepNumber:s,status:r}),n.jsxs("div",{className:"flex-1",children:[n.jsx("h3",{className:`text-xl font-bold mb-2 ${a?"text-gray-500":"text-gray-900"}`,children:d}),t&&n.jsx("p",{className:`text-sm leading-relaxed ${a?"text-gray-400":"text-gray-600"}`,children:t}),e&&n.jsx("div",{className:"mt-3",children:n.jsx(p,{errors:e.errors,warnings:e.warnings,showSuccess:u&&!c&&m})})]})]}),i&&n.jsx("div",{className:"mt-4",children:i})]})}f.__docgenInfo={description:"",methods:[],displayName:"StepHeader",props:{stepNumber:{required:!0,tsType:{name:"number"},description:""},title:{required:!0,tsType:{name:"string"},description:""},description:{required:!1,tsType:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}]},description:""},status:{required:!0,tsType:{name:"union",raw:'"pending" | "active" | "completed" | "disabled"',elements:[{name:"literal",value:'"pending"'},{name:"literal",value:'"active"'},{name:"literal",value:'"completed"'},{name:"literal",value:'"disabled"'}]},description:""},validation:{required:!1,tsType:{name:"union",raw:"StepValidation | undefined",elements:[{name:"StepValidation"},{name:"undefined"}]},description:""},showStepIndicator:{required:!1,tsType:{name:"union",raw:"boolean | undefined",elements:[{name:"boolean"},{name:"undefined"}]},description:"",defaultValue:{value:"true",computed:!1}},headerContent:{required:!1,tsType:{name:"union",raw:"ReactNode | undefined",elements:[{name:"ReactNode"},{name:"undefined"}]},description:""}}};export{f as S,h as d}; diff --git a/apps/portal/public/storybook/assets/StepHeader.stories-BUAXqID2.js b/apps/portal/public/storybook/assets/StepHeader.stories-BUAXqID2.js new file mode 100644 index 00000000..d1ed5203 --- /dev/null +++ b/apps/portal/public/storybook/assets/StepHeader.stories-BUAXqID2.js @@ -0,0 +1,72 @@ +import{j as d}from"./jsx-runtime-D_zvdyIk.js";import{S as q}from"./StepHeader-D_31J9G_.js";import"./StepIndicator-chJR-dG8.js";import"./CheckCircleIcon-Dva35lTP.js";import"./index-JhL3uwfD.js";import"./ValidationStatus-Dsgne9Qr.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";const k={title:"Features/Services/ConfigurationStep/StepHeader",component:q,parameters:{layout:"centered"},decorators:[F=>d.jsx("div",{style:{maxWidth:500},children:d.jsx(F,{})})]},e={args:{stepNumber:1,title:"Select Your Plan",description:"Choose the internet plan that best fits your needs.",status:"active"}},t={args:{stepNumber:1,title:"Plan Selected",description:"Fiber Internet 1G plan selected.",status:"completed",validation:{isValid:!0}}},s={args:{stepNumber:3,title:"Payment Method",description:"Complete previous steps first.",status:"disabled"}},r={args:{stepNumber:2,title:"Configure Add-ons",description:"Select optional add-on services.",status:"pending"}},a={args:{stepNumber:2,title:"Address Verification",description:"Confirm your installation address.",status:"active",validation:{isValid:!1,errors:["Address is required","Postcode format is invalid"]}}},n={args:{stepNumber:2,title:"Address Verification",description:"Confirm your installation address.",status:"active",validation:{isValid:!0,warnings:["Address could not be verified automatically"]}}},i={args:{stepNumber:1,title:"Simple Header",description:"Without the step number indicator.",status:"active",showStepIndicator:!1}},o={args:{stepNumber:1,title:"Plan Selection",description:"Choose your plan.",status:"active",headerContent:d.jsx("div",{className:"p-2 bg-blue-50 rounded text-sm text-blue-700",children:"Custom header content slot"})}};var c,p,l;e.parameters={...e.parameters,docs:{...(c=e.parameters)==null?void 0:c.docs,source:{originalSource:`{ + args: { + stepNumber: 1, + title: "Select Your Plan", + description: "Choose the internet plan that best fits your needs.", + status: "active" + } +}`,...(l=(p=e.parameters)==null?void 0:p.docs)==null?void 0:l.source}}};var u,m,g;t.parameters={...t.parameters,docs:{...(u=t.parameters)==null?void 0:u.docs,source:{originalSource:`{ + args: { + stepNumber: 1, + title: "Plan Selected", + description: "Fiber Internet 1G plan selected.", + status: "completed", + validation: { + isValid: true + } + } +}`,...(g=(m=t.parameters)==null?void 0:m.docs)==null?void 0:g.source}}};var b,v,h;s.parameters={...s.parameters,docs:{...(b=s.parameters)==null?void 0:b.docs,source:{originalSource:`{ + args: { + stepNumber: 3, + title: "Payment Method", + description: "Complete previous steps first.", + status: "disabled" + } +}`,...(h=(v=s.parameters)==null?void 0:v.docs)==null?void 0:h.source}}};var S,f,C;r.parameters={...r.parameters,docs:{...(S=r.parameters)==null?void 0:S.docs,source:{originalSource:`{ + args: { + stepNumber: 2, + title: "Configure Add-ons", + description: "Select optional add-on services.", + status: "pending" + } +}`,...(C=(f=r.parameters)==null?void 0:f.docs)==null?void 0:C.source}}};var N,y,x;a.parameters={...a.parameters,docs:{...(N=a.parameters)==null?void 0:N.docs,source:{originalSource:`{ + args: { + stepNumber: 2, + title: "Address Verification", + description: "Confirm your installation address.", + status: "active", + validation: { + isValid: false, + errors: ["Address is required", "Postcode format is invalid"] + } + } +}`,...(x=(y=a.parameters)==null?void 0:y.docs)==null?void 0:x.source}}};var A,P,W;n.parameters={...n.parameters,docs:{...(A=n.parameters)==null?void 0:A.docs,source:{originalSource:`{ + args: { + stepNumber: 2, + title: "Address Verification", + description: "Confirm your installation address.", + status: "active", + validation: { + isValid: true, + warnings: ["Address could not be verified automatically"] + } + } +}`,...(W=(P=n.parameters)==null?void 0:P.docs)==null?void 0:W.source}}};var V,H,I;i.parameters={...i.parameters,docs:{...(V=i.parameters)==null?void 0:V.docs,source:{originalSource:`{ + args: { + stepNumber: 1, + title: "Simple Header", + description: "Without the step number indicator.", + status: "active", + showStepIndicator: false + } +}`,...(I=(H=i.parameters)==null?void 0:H.docs)==null?void 0:I.source}}};var j,w,E;o.parameters={...o.parameters,docs:{...(j=o.parameters)==null?void 0:j.docs,source:{originalSource:`{ + args: { + stepNumber: 1, + title: "Plan Selection", + description: "Choose your plan.", + status: "active", + headerContent:
+ Custom header content slot +
+ } +}`,...(E=(w=o.parameters)==null?void 0:w.docs)==null?void 0:E.source}}};const z=["Active","Completed","Disabled","Pending","WithErrors","WithWarnings","NoStepIndicator","WithHeaderContent"];export{e as Active,t as Completed,s as Disabled,i as NoStepIndicator,r as Pending,a as WithErrors,o as WithHeaderContent,n as WithWarnings,z as __namedExportsOrder,k as default}; diff --git a/apps/portal/public/storybook/assets/StepIndicator-chJR-dG8.js b/apps/portal/public/storybook/assets/StepIndicator-chJR-dG8.js new file mode 100644 index 00000000..b140f249 --- /dev/null +++ b/apps/portal/public/storybook/assets/StepIndicator-chJR-dG8.js @@ -0,0 +1 @@ +import{j as r}from"./jsx-runtime-D_zvdyIk.js";import{F as n}from"./CheckCircleIcon-Dva35lTP.js";function d(e){switch(e){case"completed":return"bg-green-500 border-green-500 text-white";case"active":return"border-blue-500 text-blue-500 bg-blue-50";case"disabled":return"border-border text-muted-foreground/60 bg-muted";default:return"border-border text-muted-foreground bg-card"}}function a({stepNumber:e,status:t}){return r.jsx("div",{className:`flex-shrink-0 w-10 h-10 rounded-full border-2 flex items-center justify-center font-bold transition-all duration-300 ${d(t)}`,children:t==="completed"?r.jsx(n,{className:"w-6 h-6"}):r.jsx("span",{children:e})})}a.__docgenInfo={description:"",methods:[],displayName:"StepIndicator",props:{stepNumber:{required:!0,tsType:{name:"number"},description:""},status:{required:!0,tsType:{name:"union",raw:'"pending" | "active" | "completed" | "disabled"',elements:[{name:"literal",value:'"pending"'},{name:"literal",value:'"active"'},{name:"literal",value:'"completed"'},{name:"literal",value:'"disabled"'}]},description:""}}};export{a as S}; diff --git a/apps/portal/public/storybook/assets/StepIndicator.stories-BdRLQJwc.js b/apps/portal/public/storybook/assets/StepIndicator.stories-BdRLQJwc.js new file mode 100644 index 00000000..af8ec29a --- /dev/null +++ b/apps/portal/public/storybook/assets/StepIndicator.stories-BdRLQJwc.js @@ -0,0 +1,28 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{S as s}from"./StepIndicator-chJR-dG8.js";import"./CheckCircleIcon-Dva35lTP.js";import"./index-JhL3uwfD.js";const E={title:"Features/Services/ConfigurationStep/StepIndicator",component:s,parameters:{layout:"centered"}},t={args:{stepNumber:1,status:"active"}},r={args:{stepNumber:1,status:"completed"}},a={args:{stepNumber:2,status:"pending"}},n={args:{stepNumber:3,status:"disabled"}},o={render:()=>e.jsxs("div",{className:"flex gap-4 items-center",children:[e.jsx(s,{stepNumber:1,status:"completed"}),e.jsx(s,{stepNumber:2,status:"active"}),e.jsx(s,{stepNumber:3,status:"pending"}),e.jsx(s,{stepNumber:4,status:"disabled"})]})};var p,c,m;t.parameters={...t.parameters,docs:{...(p=t.parameters)==null?void 0:p.docs,source:{originalSource:`{ + args: { + stepNumber: 1, + status: "active" + } +}`,...(m=(c=t.parameters)==null?void 0:c.docs)==null?void 0:m.source}}};var u,d,i;r.parameters={...r.parameters,docs:{...(u=r.parameters)==null?void 0:u.docs,source:{originalSource:`{ + args: { + stepNumber: 1, + status: "completed" + } +}`,...(i=(d=r.parameters)==null?void 0:d.docs)==null?void 0:i.source}}};var l,b,g;a.parameters={...a.parameters,docs:{...(l=a.parameters)==null?void 0:l.docs,source:{originalSource:`{ + args: { + stepNumber: 2, + status: "pending" + } +}`,...(g=(b=a.parameters)==null?void 0:b.docs)==null?void 0:g.source}}};var N,S,x;n.parameters={...n.parameters,docs:{...(N=n.parameters)==null?void 0:N.docs,source:{originalSource:`{ + args: { + stepNumber: 3, + status: "disabled" + } +}`,...(x=(S=n.parameters)==null?void 0:S.docs)==null?void 0:x.source}}};var v,j,f;o.parameters={...o.parameters,docs:{...(v=o.parameters)==null?void 0:v.docs,source:{originalSource:`{ + render: () =>
+ + + + +
+}`,...(f=(j=o.parameters)==null?void 0:j.docs)==null?void 0:f.source}}};const P=["Active","Completed","Pending","Disabled","AllStatuses"];export{t as Active,o as AllStatuses,r as Completed,n as Disabled,a as Pending,P as __namedExportsOrder,E as default}; diff --git a/apps/portal/public/storybook/assets/SubCard-1OZIPgEM.js b/apps/portal/public/storybook/assets/SubCard-1OZIPgEM.js new file mode 100644 index 00000000..b5236ed9 --- /dev/null +++ b/apps/portal/public/storybook/assets/SubCard-1OZIPgEM.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{r as p}from"./index-JhL3uwfD.js";import{c as f}from"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";function b({header:s,title:a,icon:t,right:d,headerClassName:r}){return s?e.jsx("div",{className:`${r||"mb-5"}`,children:s}):a?e.jsxs("div",{className:`flex items-center justify-between mb-5 ${r}`,children:[e.jsxs("div",{className:"flex items-center gap-3",children:[t&&e.jsx("div",{className:"text-primary",children:t}),e.jsx("h3",{className:"text-lg font-semibold text-foreground",children:a})]}),d]}):null}const i=p.forwardRef(({title:s,icon:a,right:t,header:d,footer:r,children:o,className:n="",headerClassName:l="",bodyClassName:c="",interactive:m=!1},u)=>e.jsxs("div",{ref:u,className:f("border border-border bg-card text-card-foreground shadow-sm rounded-2xl p-5 sm:p-6",m&&"transition-all duration-200 hover:shadow-md hover:border-border/80 cursor-pointer",n),children:[b({header:d,title:s,icon:a,right:t,headerClassName:l}),e.jsx("div",{className:c,children:o}),r?e.jsx("div",{className:"mt-5 pt-5 border-t border-border/60",children:r}):null]}));i.displayName="SubCard";i.__docgenInfo={description:"",methods:[],displayName:"SubCard",props:{title:{required:!1,tsType:{name:"string"},description:""},icon:{required:!1,tsType:{name:"ReactNode"},description:""},right:{required:!1,tsType:{name:"ReactNode"},description:""},header:{required:!1,tsType:{name:"ReactNode"},description:""},footer:{required:!1,tsType:{name:"ReactNode"},description:""},children:{required:!0,tsType:{name:"ReactNode"},description:""},className:{required:!1,tsType:{name:"string"},description:"",defaultValue:{value:'""',computed:!1}},headerClassName:{required:!1,tsType:{name:"string"},description:"",defaultValue:{value:'""',computed:!1}},bodyClassName:{required:!1,tsType:{name:"string"},description:"",defaultValue:{value:'""',computed:!1}},interactive:{required:!1,tsType:{name:"boolean"},description:"Enable hover effects for interactive cards",defaultValue:{value:"false",computed:!1}}}};export{i as S}; diff --git a/apps/portal/public/storybook/assets/SubCard.stories-FgNAFG2V.js b/apps/portal/public/storybook/assets/SubCard.stories-FgNAFG2V.js new file mode 100644 index 00000000..45174ee3 --- /dev/null +++ b/apps/portal/public/storybook/assets/SubCard.stories-FgNAFG2V.js @@ -0,0 +1,37 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{S as E}from"./SubCard-1OZIPgEM.js";import{B as S}from"./button-C8_cybvS.js";import{r as o}from"./index-JhL3uwfD.js";import{F as I}from"./CreditCardIcon-BBdrpHQs.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./spinner-mU4XywER.js";function B({title:i,titleId:c,...y},C){return o.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:C,"aria-labelledby":c},y),i?o.createElement("title",{id:c},i):null,o.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M4.5 12a7.5 7.5 0 0 0 15 0m-15 0a7.5 7.5 0 1 1 15 0m-15 0H3m16.5 0H21m-1.5 0H12m-8.457 3.077 1.41-.513m14.095-5.13 1.41-.513M5.106 17.785l1.15-.964m11.49-9.642 1.149-.964M7.501 19.795l.75-1.3m7.5-12.99.75-1.3m-6.063 16.658.26-1.477m2.605-14.772.26-1.477m0 17.726-.26-1.477M10.698 4.614l-.26-1.477M16.5 19.794l-.75-1.299M7.5 4.205 12 12m6.894 5.785-1.149-.964M6.256 7.178l-1.15-.964m15.352 8.864-1.41-.513M4.954 9.435l-1.41-.514M12.002 12l-3.75 6.495"}))}const F=o.forwardRef(B),Y={title:"Molecules/SubCard",component:E},t={args:{title:"Payment Information",children:e.jsx("p",{className:"text-sm text-muted-foreground",children:"Your payment details will appear here."})}},r={args:{title:"Billing Details",icon:e.jsx(I,{className:"h-5 w-5"}),children:e.jsxs("div",{className:"space-y-2 text-sm",children:[e.jsxs("p",{children:[e.jsx("span",{className:"text-muted-foreground",children:"Card:"})," **** **** **** 4242"]}),e.jsxs("p",{children:[e.jsx("span",{className:"text-muted-foreground",children:"Expires:"})," 12/2027"]})]})}},s={args:{title:"Settings",icon:e.jsx(F,{className:"h-5 w-5"}),right:e.jsx(S,{size:"sm",variant:"outline",children:"Edit"}),children:e.jsx("p",{className:"text-sm text-muted-foreground",children:"Manage your preferences."})}},a={args:{title:"Subscription",children:e.jsx("p",{className:"text-sm",children:"Fiber Internet 1Gbps - Active"}),footer:e.jsxs("div",{className:"flex justify-between items-center",children:[e.jsx("span",{className:"text-sm text-muted-foreground",children:"Next billing: April 1"}),e.jsx(S,{size:"sm",variant:"outline",children:"Manage"})]})}},n={args:{interactive:!0,title:"Click me",children:e.jsx("p",{className:"text-sm text-muted-foreground",children:"This card has hover effects."})}};var m,l,d;t.parameters={...t.parameters,docs:{...(m=t.parameters)==null?void 0:m.docs,source:{originalSource:`{ + args: { + title: "Payment Information", + children:

Your payment details will appear here.

+ } +}`,...(d=(l=t.parameters)==null?void 0:l.docs)==null?void 0:d.source}}};var p,u,x;r.parameters={...r.parameters,docs:{...(p=r.parameters)==null?void 0:p.docs,source:{originalSource:`{ + args: { + title: "Billing Details", + icon: , + children:
+

Card: **** **** **** 4242

+

Expires: 12/2027

+
+ } +}`,...(x=(u=r.parameters)==null?void 0:u.docs)==null?void 0:x.source}}};var h,g,f;s.parameters={...s.parameters,docs:{...(h=s.parameters)==null?void 0:h.docs,source:{originalSource:`{ + args: { + title: "Settings", + icon: , + right: , + children:

Manage your preferences.

+ } +}`,...(f=(g=s.parameters)==null?void 0:g.docs)==null?void 0:f.source}}};var N,j,v;a.parameters={...a.parameters,docs:{...(N=a.parameters)==null?void 0:N.docs,source:{originalSource:`{ + args: { + title: "Subscription", + children:

Fiber Internet 1Gbps - Active

, + footer:
+ Next billing: April 1 + +
+ } +}`,...(v=(j=a.parameters)==null?void 0:j.docs)==null?void 0:v.source}}};var w,b,M;n.parameters={...n.parameters,docs:{...(w=n.parameters)==null?void 0:w.docs,source:{originalSource:`{ + args: { + interactive: true, + title: "Click me", + children:

This card has hover effects.

+ } +}`,...(M=(b=n.parameters)==null?void 0:b.docs)==null?void 0:M.source}}};const _=["Default","WithIcon","WithHeaderRight","WithFooter","Interactive"];export{t as Default,n as Interactive,a as WithFooter,s as WithHeaderRight,r as WithIcon,_ as __namedExportsOrder,Y as default}; diff --git a/apps/portal/public/storybook/assets/SubscriptionCard.stories-DOfk_HBP.js b/apps/portal/public/storybook/assets/SubscriptionCard.stories-DOfk_HBP.js new file mode 100644 index 00000000..d8469876 --- /dev/null +++ b/apps/portal/public/storybook/assets/SubscriptionCard.stories-DOfk_HBP.js @@ -0,0 +1,39 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{fn as R}from"./index-B9TJ7cVi.js";import{S as f}from"./status-pill-wWp9xkwA.js";import{B as p}from"./button-C8_cybvS.js";import{S as h}from"./SubCard-1OZIPgEM.js";import{c as g}from"./cn-CDN07tui.js";import{a as d}from"./date-Csq1SWDU.js";import"./index-BKyvj4H5.js";import{F as j}from"./CalendarIcon-DHpf4s_h.js";import{F as v}from"./ArrowTopRightOnSquareIcon-CouP_SCN.js";import{f as M}from"./currency-CYvr7ZUf.js";import"./index-JhL3uwfD.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./spinner-mU4XywER.js";import"./date-CJlSVdaN.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";function N(s){switch(s){case"Active":return"success";case"Pending":return"warning";case"Cancelled":case"Terminated":return"error";default:return"neutral"}}function w(s){switch(s){case"Active":return e.jsx("span",{className:"h-5 w-5 rounded-full bg-success/20 flex items-center justify-center text-success text-xs",children:"✓"});case"Pending":return e.jsx("span",{className:"h-5 w-5 rounded-full bg-warning/20 flex items-center justify-center text-warning text-xs",children:"…"});default:return e.jsx("span",{className:"h-5 w-5 rounded-full bg-muted flex items-center justify-center text-muted-foreground text-xs",children:"—"})}}function V({subscription:s,variant:E="list",showActions:m=!0,onViewClick:t,className:l}){const u=J=>M(J,s.currency??"JPY"),x=s.cycle;return E==="grid"?e.jsx(h,{className:g("hover:shadow-lg hover:-translate-y-0.5 transition-all duration-200",l),children:e.jsxs("div",{className:"space-y-4",children:[e.jsxs("div",{className:"flex items-start justify-between",children:[e.jsxs("div",{className:"flex items-center space-x-3",children:[w(s.status),e.jsxs("div",{className:"min-w-0 flex-1",children:[e.jsx("h3",{className:"text-lg font-semibold text-foreground truncate",children:s.productName}),e.jsxs("p",{className:"text-sm text-muted-foreground",children:["Service ID: ",s.serviceId]})]})]}),e.jsx(f,{label:s.status,variant:N(s.status),size:"sm"})]}),e.jsxs("div",{className:"grid grid-cols-2 gap-4 text-sm",children:[e.jsxs("div",{children:[e.jsx("p",{className:"text-muted-foreground text-xs font-medium uppercase tracking-wider",children:"Price"}),e.jsx("p",{className:"font-semibold text-foreground mt-1",children:u(s.amount)}),e.jsx("p",{className:"text-xs text-muted-foreground",children:x})]}),e.jsxs("div",{children:[e.jsx("p",{className:"text-muted-foreground text-xs font-medium uppercase tracking-wider",children:"Next Due"}),e.jsxs("div",{className:"flex items-center space-x-1 mt-1",children:[e.jsx(j,{className:"h-4 w-4 text-muted-foreground/60"}),e.jsx("p",{className:"font-medium text-foreground",children:d(s.nextDue)})]})]})]}),m&&e.jsxs("div",{className:"flex items-center justify-between pt-3 border-t border-border/60",children:[e.jsxs("p",{className:"text-xs text-muted-foreground",children:["Created ",d(s.registrationDate)]}),e.jsx("div",{className:"flex items-center space-x-2",children:e.jsx(p,{variant:"outline",size:"sm",onClick:()=>t==null?void 0:t(s),rightIcon:e.jsx(v,{className:"h-4 w-4"}),children:"View"})})]})]})}):e.jsx(h,{className:g("hover:shadow-lg hover:-translate-y-0.5 transition-all duration-200",l),children:e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsxs("div",{className:"flex items-center space-x-4 min-w-0 flex-1",children:[w(s.status),e.jsxs("div",{className:"min-w-0 flex-1",children:[e.jsxs("div",{className:"flex items-center space-x-3",children:[e.jsx("h3",{className:"text-base font-semibold text-foreground truncate",children:s.productName}),e.jsx(f,{label:s.status,variant:N(s.status),size:"sm"})]}),e.jsxs("p",{className:"text-sm text-muted-foreground mt-1",children:["Service ID: ",s.serviceId]})]})]}),e.jsxs("div",{className:"flex items-center space-x-6 text-sm",children:[e.jsxs("div",{className:"text-right",children:[e.jsx("p",{className:"font-semibold text-foreground tabular-nums",children:u(s.amount)}),e.jsx("p",{className:"text-muted-foreground text-xs",children:x})]}),e.jsxs("div",{className:"text-right hidden sm:block",children:[e.jsxs("div",{className:"flex items-center space-x-1",children:[e.jsx(j,{className:"h-4 w-4 text-muted-foreground/60"}),e.jsx("p",{className:"text-foreground",children:d(s.nextDue)})]}),e.jsx("p",{className:"text-muted-foreground text-xs",children:"Next due"})]}),m&&e.jsx("div",{className:"flex items-center space-x-2",children:e.jsx(p,{variant:"ghost",size:"sm",onClick:()=>t==null?void 0:t(s),rightIcon:e.jsx(v,{className:"h-4 w-4"}),children:"View"})})]})]})})}const ie={title:"Features/Subscriptions/SubscriptionCard",component:V,parameters:{layout:"padded"}},r={id:1,serviceId:1001,productName:"SIM 10GB Data Plan",cycle:"Monthly",status:"Active",nextDue:"2026-04-01",amount:3500,currency:"JPY",currencySymbol:"¥",registrationDate:"2025-06-15"},a={args:{subscription:r,variant:"list",showActions:!0,onViewClick:R()}},n={args:{subscription:r,variant:"grid",showActions:!0,onViewClick:R()}},i={args:{subscription:r,variant:"grid",showActions:!1}},c={args:{subscription:{...r,status:"Pending"},variant:"grid",showActions:!0}},o={args:{subscription:{...r,status:"Terminated"},variant:"list",showActions:!0}};var S,b,y;a.parameters={...a.parameters,docs:{...(S=a.parameters)==null?void 0:S.docs,source:{originalSource:`{ + args: { + subscription: mockSubscription, + variant: "list", + showActions: true, + onViewClick: fn() + } +}`,...(y=(b=a.parameters)==null?void 0:b.docs)==null?void 0:y.source}}};var A,P,D;n.parameters={...n.parameters,docs:{...(A=n.parameters)==null?void 0:A.docs,source:{originalSource:`{ + args: { + subscription: mockSubscription, + variant: "grid", + showActions: true, + onViewClick: fn() + } +}`,...(D=(P=n.parameters)==null?void 0:P.docs)==null?void 0:D.source}}};var I,k,F;i.parameters={...i.parameters,docs:{...(I=i.parameters)==null?void 0:I.docs,source:{originalSource:`{ + args: { + subscription: mockSubscription, + variant: "grid", + showActions: false + } +}`,...(F=(k=i.parameters)==null?void 0:k.docs)==null?void 0:F.source}}};var T,z,C;c.parameters={...c.parameters,docs:{...(T=c.parameters)==null?void 0:T.docs,source:{originalSource:`{ + args: { + subscription: { + ...mockSubscription, + status: "Pending" as const + }, + variant: "grid", + showActions: true + } +}`,...(C=(z=c.parameters)==null?void 0:z.docs)==null?void 0:C.source}}};var B,G,L;o.parameters={...o.parameters,docs:{...(B=o.parameters)==null?void 0:B.docs,source:{originalSource:`{ + args: { + subscription: { + ...mockSubscription, + status: "Terminated" as const + }, + variant: "list", + showActions: true + } +}`,...(L=(G=o.parameters)==null?void 0:G.docs)==null?void 0:L.source}}};const ce=["ListVariant","GridVariant","WithoutActions","PendingStatus","TerminatedStatus"];export{n as GridVariant,a as ListVariant,c as PendingStatus,o as TerminatedStatus,i as WithoutActions,ce as __namedExportsOrder,ie as default}; diff --git a/apps/portal/public/storybook/assets/SubscriptionDetails.stories-BlMknBO7.js b/apps/portal/public/storybook/assets/SubscriptionDetails.stories-BlMknBO7.js new file mode 100644 index 00000000..fa15e30f --- /dev/null +++ b/apps/portal/public/storybook/assets/SubscriptionDetails.stories-BlMknBO7.js @@ -0,0 +1,38 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{S as V}from"./status-pill-wWp9xkwA.js";import{S as k}from"./SubCard-1OZIPgEM.js";import{c as L}from"./cn-CDN07tui.js";import{a as h}from"./date-Csq1SWDU.js";import"./index-BKyvj4H5.js";import{F as B}from"./CurrencyYenIcon-Bf5bmWZc.js";import{F as O}from"./CalendarIcon-DHpf4s_h.js";import{r as n}from"./index-JhL3uwfD.js";import{F as i}from"./ServerIcon-Cf--50di.js";import{f as G}from"./currency-CYvr7ZUf.js";import"./date-CJlSVdaN.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";function Y({title:s,titleId:t,...a},c){return n.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:c,"aria-labelledby":t},a),s?n.createElement("title",{id:t},s):null,n.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M15 9h3.75M15 12h3.75M15 15h3.75M4.5 19.5h15a2.25 2.25 0 0 0 2.25-2.25V6.75A2.25 2.25 0 0 0 19.5 4.5h-15a2.25 2.25 0 0 0-2.25 2.25v10.5A2.25 2.25 0 0 0 4.5 19.5Zm6-10.125a1.875 1.875 0 1 1-3.75 0 1.875 1.875 0 0 1 3.75 0Zm1.294 6.336a6.721 6.721 0 0 1-3.17.789 6.721 6.721 0 0 1-3.168-.789 3.376 3.376 0 0 1 6.338 0Z"}))}const Z=n.forwardRef(Y);function T({title:s,titleId:t,...a},c){return n.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:c,"aria-labelledby":t},a),s?n.createElement("title",{id:t},s):null,n.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M9.568 3H5.25A2.25 2.25 0 0 0 3 5.25v4.318c0 .597.237 1.17.659 1.591l9.581 9.581c.699.699 1.78.872 2.607.33a18.095 18.095 0 0 0 5.223-5.223c.542-.827.369-1.908-.33-2.607L11.16 3.66A2.25 2.25 0 0 0 9.568 3Z"}),n.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M6 6h.008v.008H6V6Z"}))}const g=n.forwardRef(T);function J(s){switch(s){case"Active":return"success";case"Pending":return"warning";case"Cancelled":case"Terminated":return"error";default:return"neutral"}}function H(s){switch(s){case"Active":return e.jsx(i,{className:"h-6 w-6 text-success"});case"Pending":return e.jsx(i,{className:"h-6 w-6 text-warning"});default:return e.jsx(i,{className:"h-6 w-6 text-muted-foreground"})}}const z=s=>s.toLowerCase().includes("sim"),W=s=>{const t=s.toLowerCase();return t.includes("internet")||t.includes("broadband")||t.includes("fiber")},_=s=>s.toLowerCase().includes("vpn");function x({title:s,heading:t,description:a,features:c,colorScheme:r}){const u=r==="info"?"bg-info-bg border-info-border":"bg-success-bg border-success-border",F=r==="info"?"bg-info/20":"bg-success/20",A=r==="info"?"text-info":"text-success",R=r==="info"?"text-info":"text-success",$=r==="info"?"text-info/80":"text-success/80",E=r==="info"?"text-info/70":"text-success/70";return e.jsx(k,{title:s,icon:e.jsx(i,{className:"h-5 w-5"}),children:e.jsx("div",{className:`${u} border rounded-lg p-4`,children:e.jsxs("div",{className:"flex items-start space-x-3",children:[e.jsx("div",{className:`${F} rounded-lg p-2`,children:e.jsx(i,{className:`h-5 w-5 ${A}`})}),e.jsxs("div",{children:[e.jsx("h4",{className:`text-sm font-semibold ${R} mb-2`,children:t}),e.jsx("p",{className:`text-sm ${$} mb-3`,children:a}),e.jsx("ul",{className:`text-sm ${E} space-y-1`,children:c.map(f=>e.jsxs("li",{children:["• ",f]},f))})]})]})})})}function q({subscription:s,showServiceSpecificSections:t=!0,className:a}){const c=r=>G(r,s.currency??"JPY");return e.jsxs("div",{className:L("space-y-6",a),children:[e.jsxs(k,{header:e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsxs("div",{className:"flex items-center space-x-3",children:[H(s.status),e.jsxs("div",{children:[e.jsx("h3",{className:"text-lg font-semibold text-foreground",children:"Subscription Details"}),e.jsx("p",{className:"text-sm text-muted-foreground",children:"Service subscription information"})]})]}),e.jsx(V,{label:s.status,variant:J(s.status),size:"lg"})]}),children:[e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-3 gap-6",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsxs("div",{className:"flex items-center space-x-2",children:[e.jsx(B,{className:"h-5 w-5 text-muted-foreground"}),e.jsx("h4",{className:"text-sm font-medium text-muted-foreground uppercase tracking-wider",children:"Billing Amount"})]}),e.jsx("p",{className:"text-2xl font-bold text-foreground",children:c(s.amount)}),e.jsx("p",{className:"text-sm text-muted-foreground",children:s.cycle})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsxs("div",{className:"flex items-center space-x-2",children:[e.jsx(O,{className:"h-5 w-5 text-muted-foreground"}),e.jsx("h4",{className:"text-sm font-medium text-muted-foreground uppercase tracking-wider",children:"Next Due Date"})]}),e.jsx("p",{className:"text-lg font-semibold text-foreground",children:h(s.nextDue)}),e.jsx("p",{className:"text-sm text-muted-foreground",children:"Due date"})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsxs("div",{className:"flex items-center space-x-2",children:[e.jsx(g,{className:"h-5 w-5 text-muted-foreground"}),e.jsx("h4",{className:"text-sm font-medium text-muted-foreground uppercase tracking-wider",children:"Registration Date"})]}),e.jsx("p",{className:"text-lg font-semibold text-foreground",children:h(s.registrationDate)}),e.jsx("p",{className:"text-sm text-muted-foreground",children:"Service created"})]})]}),e.jsx("div",{className:"mt-6 pt-6 border-t border-border",children:e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-6",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsxs("div",{className:"flex items-center space-x-2",children:[e.jsx(Z,{className:"h-5 w-5 text-muted-foreground"}),e.jsx("h4",{className:"text-sm font-medium text-muted-foreground",children:"Service ID"})]}),e.jsx("p",{className:"text-base font-medium text-foreground",children:s.serviceId})]}),s.orderNumber&&e.jsxs("div",{className:"space-y-2",children:[e.jsxs("div",{className:"flex items-center space-x-2",children:[e.jsx(g,{className:"h-5 w-5 text-muted-foreground"}),e.jsx("h4",{className:"text-sm font-medium text-muted-foreground",children:"Order Number"})]}),e.jsx("p",{className:"text-base font-medium text-foreground",children:s.orderNumber})]}),s.groupName&&e.jsxs("div",{className:"space-y-2",children:[e.jsx("h4",{className:"text-sm font-medium text-muted-foreground",children:"Product Group"}),e.jsx("p",{className:"text-base font-medium text-foreground",children:s.groupName})]}),s.paymentMethod&&e.jsxs("div",{className:"space-y-2",children:[e.jsx("h4",{className:"text-sm font-medium text-muted-foreground",children:"Payment Method"}),e.jsx("p",{className:"text-base font-medium text-foreground",children:s.paymentMethod})]})]})}),s.customFields&&Object.keys(s.customFields).length>0&&e.jsxs("div",{className:"mt-6 pt-6 border-t border-border",children:[e.jsx("h4",{className:"text-sm font-medium text-muted-foreground mb-3",children:"Additional Information"}),e.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4",children:Object.entries(s.customFields).map(([r,u])=>e.jsxs("div",{className:"space-y-1",children:[e.jsx("p",{className:"text-sm text-muted-foreground capitalize",children:r.replace(/([A-Z])/g," $1").trim()}),e.jsx("p",{className:"text-sm font-medium text-foreground",children:u})]},r))})]}),s.notes&&e.jsxs("div",{className:"mt-6 pt-6 border-t border-border",children:[e.jsx("h4",{className:"text-sm font-medium text-muted-foreground mb-2",children:"Notes"}),e.jsx("p",{className:"text-sm text-foreground bg-muted rounded-md p-3",children:s.notes})]})]}),t&&e.jsxs(e.Fragment,{children:[z(s.productName)&&e.jsx(x,{title:"SIM Service Information",heading:"SIM Management Available",description:"This subscription includes SIM management features such as data usage monitoring, top-up options, and service configuration.",features:["Real-time data usage tracking","Data top-up and plan changes","Service feature toggles","SIM reissue options"],colorScheme:"info"}),W(s.productName)&&e.jsx(x,{title:"Internet Service Information",heading:"Internet Service Features",description:"Your internet service includes high-speed connectivity and support options.",features:["High-speed internet connection","24/7 technical support","Service monitoring","Installation support"],colorScheme:"success"}),_(s.productName)&&e.jsx(x,{title:"VPN Service Information",heading:"VPN Service Features",description:"Your VPN service provides secure and private internet access.",features:["Encrypted internet connection","Multiple server locations","No-logs policy","Multi-device support"],colorScheme:"info"})]})]})}const me={title:"Features/Subscriptions/SubscriptionDetails",component:q,parameters:{layout:"padded"}},p={id:1,serviceId:1001,productName:"SIM 10GB Data Plan",cycle:"Monthly",status:"Active",nextDue:"2026-04-01",amount:3500,currency:"JPY",currencySymbol:"¥",registrationDate:"2025-06-15",orderNumber:"ORD-20250615-001",groupName:"Mobile Services",paymentMethod:"Credit Card",notes:"Customer requested 5G upgrade in March.",customFields:{contractType:"12-month",promotionCode:"SPRING2025"}},o={args:{subscription:p,showServiceSpecificSections:!0}},d={args:{subscription:{...p,productName:"Fiber Internet 1Gbps",groupName:"Internet Services"},showServiceSpecificSections:!0}},m={args:{subscription:{...p,productName:"VPN Premium",groupName:"Security Services"},showServiceSpecificSections:!0}},l={args:{subscription:{id:2,serviceId:1002,productName:"Basic Plan",cycle:"Monthly",status:"Active",amount:1e3,currency:"JPY",registrationDate:"2025-01-01"},showServiceSpecificSections:!1}};var N,v,j;o.parameters={...o.parameters,docs:{...(N=o.parameters)==null?void 0:N.docs,source:{originalSource:`{ + args: { + subscription: mockSubscription, + showServiceSpecificSections: true + } +}`,...(j=(v=o.parameters)==null?void 0:v.docs)==null?void 0:j.source}}};var S,b,w;d.parameters={...d.parameters,docs:{...(S=d.parameters)==null?void 0:S.docs,source:{originalSource:`{ + args: { + subscription: { + ...mockSubscription, + productName: "Fiber Internet 1Gbps", + groupName: "Internet Services" + }, + showServiceSpecificSections: true + } +}`,...(w=(b=d.parameters)==null?void 0:b.docs)==null?void 0:w.source}}};var y,I,M;m.parameters={...m.parameters,docs:{...(y=m.parameters)==null?void 0:y.docs,source:{originalSource:`{ + args: { + subscription: { + ...mockSubscription, + productName: "VPN Premium", + groupName: "Security Services" + }, + showServiceSpecificSections: true + } +}`,...(M=(I=m.parameters)==null?void 0:I.docs)==null?void 0:M.source}}};var D,P,C;l.parameters={...l.parameters,docs:{...(D=l.parameters)==null?void 0:D.docs,source:{originalSource:`{ + args: { + subscription: { + id: 2, + serviceId: 1002, + productName: "Basic Plan", + cycle: "Monthly", + status: "Active" as const, + amount: 1000, + currency: "JPY", + registrationDate: "2025-01-01" + }, + showServiceSpecificSections: false + } +}`,...(C=(P=l.parameters)==null?void 0:P.docs)==null?void 0:C.source}}};const le=["Default","InternetService","VpnService","MinimalData"];export{o as Default,d as InternetService,l as MinimalData,m as VpnService,le as __namedExportsOrder,me as default}; diff --git a/apps/portal/public/storybook/assets/SubscriptionGridCard.stories-zp08ViBs.js b/apps/portal/public/storybook/assets/SubscriptionGridCard.stories-zp08ViBs.js new file mode 100644 index 00000000..813f9611 --- /dev/null +++ b/apps/portal/public/storybook/assets/SubscriptionGridCard.stories-zp08ViBs.js @@ -0,0 +1,28 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import"./button-C8_cybvS.js";import"./input-BbGJiz0K.js";import"./password-input-D4khGh8v.js";import"./checkbox-DahUyQbt.js";import"./label-C25VH7yk.js";import"./error-message-DeFFz6H_.js";import"./status-pill-wWp9xkwA.js";import"./badge-BdMsasyi.js";import"./spinner-mU4XywER.js";import"./loading-overlay-DMJTiFny.js";import"./error-state-BSicqqE6.js";import"./empty-state-DRUGJ9ip.js";import"./inline-toast-DQJ-O9wc.js";import"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import"./logo-f0fprTjz.js";import"./step-header-C0A-1Uoh.js";import{S as A}from"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./animated-container-DyAZ9gmw.js";import{c as I}from"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import{S as t}from"./contract-CH57by1Y.js";import{r as d}from"./index-JhL3uwfD.js";import{F as P}from"./ArrowRightIcon--Vuz7Q7x.js";import{f as T}from"./currency-CYvr7ZUf.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./createLucideIcon-CctB0W3q.js";import"./ExclamationCircleIcon-jFfW0Ax_.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./ArrowPathIcon-CZjG6RfV.js";import"./PlusIcon-DGufmf06.js";import"./index-CNXKWNLp.js";import"./proxy-ZkTvaR74.js";import"./next-image-69WeRggt.js";import"./Squares2X2Icon-BMQM_Wy1.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";function M({title:r,titleId:s,...p},o){return d.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:o,"aria-labelledby":s},p),r?d.createElement("title",{id:s},r):null,d.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M6.75 3v2.25M17.25 3v2.25M3 18.75V7.5a2.25 2.25 0 0 1 2.25-2.25h13.5A2.25 2.25 0 0 1 21 7.5v11.25m-18 0A2.25 2.25 0 0 0 5.25 21h13.5A2.25 2.25 0 0 0 21 18.75m-18 0v-7.5A2.25 2.25 0 0 1 5.25 9h13.5A2.25 2.25 0 0 1 21 11.25v7.5m-9-6h.008v.008H12v-.008ZM12 15h.008v.008H12V15Zm0 2.25h.008v.008H12v-.008ZM9.75 15h.008v.008H9.75V15Zm0 2.25h.008v.008H9.75v-.008ZM7.5 15h.008v.008H7.5V15Zm0 2.25h.008v.008H7.5v-.008Zm6.75-4.5h.008v.008h-.008v-.008Zm0 2.25h.008v.008h-.008V15Zm0 2.25h.008v.008h-.008v-.008Zm2.25-4.5h.008v.008H16.5v-.008Zm0 2.25h.008v.008H16.5V15Z"}))}const Z=d.forwardRef(M);function L(r){switch(r){case t.ACTIVE:return"active";case t.PENDING:return"pending";case t.SUSPENDED:case t.CANCELLED:return"warning";case t.TERMINATED:return"error";default:return"inactive"}}function H({subscription:r,className:s}){const p=L(r.status),o=r.cycle.toLowerCase(),D=[t.COMPLETED,t.CANCELLED,t.TERMINATED].includes(r.status);return e.jsxs("a",{href:`/account/subscriptions/${r.serviceId}`,className:I("group flex flex-col p-4 rounded-xl bg-card border border-border",D&&"opacity-60","transition-all duration-200","hover:border-border hover:shadow-[var(--cp-shadow-2)] hover:-translate-y-0.5","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/30",s),children:[e.jsxs("div",{className:"flex items-start justify-between gap-2 mb-3",children:[e.jsxs("div",{className:"min-w-0 flex-1",children:[e.jsx("h3",{className:"text-sm font-semibold text-foreground truncate group-hover:text-primary transition-colors",children:r.productName}),e.jsxs("p",{className:"text-xs text-muted-foreground mt-0.5 font-mono",children:["#",r.serviceId]})]}),e.jsx(A,{status:p,label:r.status,size:"sm"})]}),e.jsxs("div",{className:"mb-3",children:[e.jsx("span",{className:"text-lg font-bold text-foreground tabular-nums font-heading",children:T(r.amount,r.currency)}),o&&e.jsxs("span",{className:"text-xs text-muted-foreground ml-1",children:["/",o]})]}),e.jsxs("div",{className:"flex items-center justify-between mt-auto pt-3 border-t border-border/40",children:[r.nextDue&&e.jsxs("div",{className:"flex items-center gap-1.5 text-xs text-muted-foreground",children:[e.jsx(Z,{className:"h-3.5 w-3.5"}),e.jsx("span",{children:new Date(r.nextDue).toLocaleDateString("en-US",{month:"short",day:"numeric"})})]}),e.jsxs("span",{className:"inline-flex items-center gap-1 text-xs font-medium text-primary opacity-0 group-hover:opacity-100 transition-opacity duration-200",children:["Manage",e.jsx(P,{className:"h-3 w-3 group-hover:translate-x-0.5 transition-transform"})]})]})]})}function R(){return e.jsxs("div",{className:"flex flex-col p-4 rounded-xl bg-card border border-border",children:[e.jsxs("div",{className:"flex items-start justify-between gap-2 mb-3",children:[e.jsxs("div",{className:"space-y-1.5 flex-1",children:[e.jsx("div",{className:"h-4 cp-skeleton-shimmer rounded w-3/4"}),e.jsx("div",{className:"h-3 cp-skeleton-shimmer rounded w-16"})]}),e.jsx("div",{className:"h-4 cp-skeleton-shimmer rounded-full w-14"})]}),e.jsx("div",{className:"h-6 cp-skeleton-shimmer rounded w-20 mb-3"}),e.jsx("div",{className:"pt-3 border-t border-border/40",children:e.jsx("div",{className:"h-3 cp-skeleton-shimmer rounded w-24"})})]})}const ye={title:"Features/Subscriptions/SubscriptionGridCard",component:H,parameters:{layout:"centered"}},l={id:1,serviceId:1001,productName:"SIM 10GB Data Plan",cycle:"Monthly",status:"Active",nextDue:"2026-04-01",amount:3500,currency:"JPY",currencySymbol:"¥",registrationDate:"2025-06-15"},a={args:{subscription:l}},n={args:{subscription:{...l,status:"Pending"}}},i={args:{subscription:{...l,status:"Cancelled"}}},c={args:{subscription:{...l,status:"Terminated"}}},m={render:()=>e.jsx(R,{})};var u,x,h;a.parameters={...a.parameters,docs:{...(u=a.parameters)==null?void 0:u.docs,source:{originalSource:`{ + args: { + subscription: mockSubscription + } +}`,...(h=(x=a.parameters)==null?void 0:x.docs)==null?void 0:h.source}}};var v,f,b;n.parameters={...n.parameters,docs:{...(v=n.parameters)==null?void 0:v.docs,source:{originalSource:`{ + args: { + subscription: { + ...mockSubscription, + status: "Pending" as const + } + } +}`,...(b=(f=n.parameters)==null?void 0:f.docs)==null?void 0:b.source}}};var g,S,j;i.parameters={...i.parameters,docs:{...(g=i.parameters)==null?void 0:g.docs,source:{originalSource:`{ + args: { + subscription: { + ...mockSubscription, + status: "Cancelled" as const + } + } +}`,...(j=(S=i.parameters)==null?void 0:S.docs)==null?void 0:j.source}}};var N,w,y;c.parameters={...c.parameters,docs:{...(N=c.parameters)==null?void 0:N.docs,source:{originalSource:`{ + args: { + subscription: { + ...mockSubscription, + status: "Terminated" as const + } + } +}`,...(y=(w=c.parameters)==null?void 0:w.docs)==null?void 0:y.source}}};var E,C,k;m.parameters={...m.parameters,docs:{...(E=m.parameters)==null?void 0:E.docs,source:{originalSource:`{ + render: () => +}`,...(k=(C=m.parameters)==null?void 0:C.docs)==null?void 0:k.source}}};const Ee=["Active","Pending","Cancelled","Terminated","Skeleton"];export{a as Active,i as Cancelled,n as Pending,m as Skeleton,c as Terminated,Ee as __namedExportsOrder,ye as default}; diff --git a/apps/portal/public/storybook/assets/SubscriptionStatusBadge.stories-DhvN9bQ1.js b/apps/portal/public/storybook/assets/SubscriptionStatusBadge.stories-DhvN9bQ1.js new file mode 100644 index 00000000..18d98473 --- /dev/null +++ b/apps/portal/public/storybook/assets/SubscriptionStatusBadge.stories-DhvN9bQ1.js @@ -0,0 +1,29 @@ +import{j as x}from"./jsx-runtime-D_zvdyIk.js";import"./DataTable-COYdcx41.js";import"./FormField-C0UylACv.js";import"./OtpInput-6kd_2E0v.js";import"./OtpExpiryDisplay-BGgB7Tk6.js";import"./SearchFilterBar-Ds19v0-P.js";import"./PaginationBar-D_k7ztRb.js";import"./DetailHeader-C0ZsoM39.js";import"./AlertBanner-Bnlyj1xc.js";import"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import"./error-state-BSicqqE6.js";import"./index-BKyvj4H5.js";import"./SectionHeader-Bo81Whai.js";import"./ProgressSteps-weVdXcqu.js";import"./SubCard-1OZIPgEM.js";import"./AnimatedCard-DFAiX4zP.js";import"./ServiceCard-BJEHFLba.js";import"./SummaryStats-D6b7Am-p.js";import"./FilterDropdown-CUU04WmN.js";import"./ClearFiltersButton-CPCoyXk2.js";import"./DetailStatsGrid-CDkKTM-B.js";import"./SectionCard-BcUjc-7N.js";import"./MetricCard-BR1xVIXz.js";import"./BackLink-C5IY6wzy.js";import{S as O}from"./status-badge-5pzxe45J.js";import"./error-boundary-DIRO_cDI.js";import"./error-fallbacks-kSPsNxmV.js";import{S as t}from"./contract-CH57by1Y.js";import"./empty-state-DRUGJ9ip.js";import"./button-C8_cybvS.js";import"./index-JhL3uwfD.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./spinner-mU4XywER.js";import"./PlusIcon-DGufmf06.js";import"./ChevronRightIcon-CMQWsJeW.js";import"./label-C25VH7yk.js";import"./input-BbGJiz0K.js";import"./error-message-DeFFz6H_.js";import"./ExclamationCircleIcon-jFfW0Ax_.js";import"./input-otp-Cin9-T84.js";import"./createLucideIcon-CctB0W3q.js";import"./clock-C92s7kSC.js";import"./FunnelIcon-8nhbwqu0.js";import"./XMarkIcon-Bsb1W5VN.js";import"./status-pill-wWp9xkwA.js";import"./XCircleIcon-CiVBnngB.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./InformationCircleIcon-Clz7d-56.js";import"./CheckCircleIcon-Dva35lTP.js";import"./password-input-D4khGh8v.js";import"./checkbox-DahUyQbt.js";import"./badge-BdMsasyi.js";import"./loading-overlay-DMJTiFny.js";import"./inline-toast-DQJ-O9wc.js";import"./index-CNXKWNLp.js";import"./proxy-ZkTvaR74.js";import"./logo-f0fprTjz.js";import"./next-image-69WeRggt.js";import"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./Squares2X2Icon-BMQM_Wy1.js";import"./animated-container-DyAZ9gmw.js";import"./ArrowPathIcon-CZjG6RfV.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./arrow-right-BNMAry-H.js";import"./ArrowLeftIcon-Cw1eswTb.js";const U={[t.ACTIVE.toLowerCase()]:{variant:"success"},[t.INACTIVE.toLowerCase()]:{variant:"neutral"},[t.PENDING.toLowerCase()]:{variant:"warning"},[t.SUSPENDED.toLowerCase()]:{variant:"neutral"},[t.CANCELLED.toLowerCase()]:{variant:"neutral"},[t.TERMINATED.toLowerCase()]:{variant:"error"},[t.COMPLETED.toLowerCase()]:{variant:"neutral"}},h={variant:"neutral"};function D({status:_}){return x.jsx(O,{status:_,configMap:U,defaultConfig:h,showIcon:!1})}D.__docgenInfo={description:'SubscriptionStatusBadge - Displays the status of a subscription.\n\n@example\n```tsx\n\n\n```',methods:[],displayName:"SubscriptionStatusBadge",props:{status:{required:!0,tsType:{name:"z.infer",elements:[{name:"subscriptionStatusSchema"}],raw:"z.infer"},description:""}}};const Zt={title:"Features/Subscriptions/SubscriptionStatusBadge",component:D,parameters:{layout:"centered"}},r={args:{status:"Active"}},e={args:{status:"Pending"}},s={args:{status:"Suspended"}},o={args:{status:"Cancelled"}},a={args:{status:"Terminated"}},i={args:{status:"Completed"}},p={args:{status:"Inactive"}};var m,n,c;r.parameters={...r.parameters,docs:{...(m=r.parameters)==null?void 0:m.docs,source:{originalSource:`{ + args: { + status: "Active" + } +}`,...(c=(n=r.parameters)==null?void 0:n.docs)==null?void 0:c.source}}};var u,d,S;e.parameters={...e.parameters,docs:{...(u=e.parameters)==null?void 0:u.docs,source:{originalSource:`{ + args: { + status: "Pending" + } +}`,...(S=(d=e.parameters)==null?void 0:d.docs)==null?void 0:S.source}}};var g,l,C;s.parameters={...s.parameters,docs:{...(g=s.parameters)==null?void 0:g.docs,source:{originalSource:`{ + args: { + status: "Suspended" + } +}`,...(C=(l=s.parameters)==null?void 0:l.docs)==null?void 0:C.source}}};var T,v,I;o.parameters={...o.parameters,docs:{...(T=o.parameters)==null?void 0:T.docs,source:{originalSource:`{ + args: { + status: "Cancelled" + } +}`,...(I=(v=o.parameters)==null?void 0:v.docs)==null?void 0:I.source}}};var f,E,A;a.parameters={...a.parameters,docs:{...(f=a.parameters)==null?void 0:f.docs,source:{originalSource:`{ + args: { + status: "Terminated" + } +}`,...(A=(E=a.parameters)==null?void 0:E.docs)==null?void 0:A.source}}};var L,N,b;i.parameters={...i.parameters,docs:{...(L=i.parameters)==null?void 0:L.docs,source:{originalSource:`{ + args: { + status: "Completed" + } +}`,...(b=(N=i.parameters)==null?void 0:N.docs)==null?void 0:b.source}}};var w,B,P;p.parameters={...p.parameters,docs:{...(w=p.parameters)==null?void 0:w.docs,source:{originalSource:`{ + args: { + status: "Inactive" + } +}`,...(P=(B=p.parameters)==null?void 0:B.docs)==null?void 0:P.source}}};const $t=["Active","Pending","Suspended","Cancelled","Terminated","Completed","Inactive"];export{r as Active,o as Cancelled,i as Completed,p as Inactive,e as Pending,s as Suspended,a as Terminated,$t as __namedExportsOrder,Zt as default}; diff --git a/apps/portal/public/storybook/assets/SubscriptionTable.stories-Crx6kQDq.js b/apps/portal/public/storybook/assets/SubscriptionTable.stories-Crx6kQDq.js new file mode 100644 index 00000000..0c8604ac --- /dev/null +++ b/apps/portal/public/storybook/assets/SubscriptionTable.stories-Crx6kQDq.js @@ -0,0 +1,23 @@ +import{fn as A}from"./index-B9TJ7cVi.js";import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{r as R}from"./index-JhL3uwfD.js";import{u as F}from"./next-navigation-FtRxULo3.js";import{D as M}from"./DataTable-COYdcx41.js";import{S as k}from"./status-pill-wWp9xkwA.js";import{c as d}from"./cn-CDN07tui.js";import{a as Y}from"./date-Csq1SWDU.js";import"./index-BKyvj4H5.js";import{F as m}from"./ServerIcon-Cf--50di.js";import{S as s,a as t}from"./contract-CH57by1Y.js";import{F as h}from"./CheckCircleIcon-Dva35lTP.js";import{F as f}from"./XCircleIcon-CiVBnngB.js";import{F as U}from"./ExclamationTriangleIcon-Di4DJZFg.js";import{F as B}from"./ClockIcon-BFX11zAZ.js";import{F as O}from"./CalendarIcon-DHpf4s_h.js";import{F as V}from"./index-9c86oO0t.js";import"./empty-state-DRUGJ9ip.js";import"./button-C8_cybvS.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./spinner-mU4XywER.js";import"./PlusIcon-DGufmf06.js";import"./ChevronRightIcon-CMQWsJeW.js";import"./date-CJlSVdaN.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./currency-CYvr7ZUf.js";import"./text-CXa-DJQz.js";const $={[s.ACTIVE]:e.jsx(h,{className:"h-6 w-6 text-success"}),[s.INACTIVE]:e.jsx(m,{className:"h-6 w-6 text-muted-foreground"}),[s.PENDING]:e.jsx(B,{className:"h-6 w-6 text-info"}),[s.SUSPENDED]:e.jsx(U,{className:"h-6 w-6 text-warning"}),[s.TERMINATED]:e.jsx(f,{className:"h-6 w-6 text-danger"}),[s.CANCELLED]:e.jsx(f,{className:"h-6 w-6 text-muted-foreground"}),[s.COMPLETED]:e.jsx(h,{className:"h-6 w-6 text-success"})},q={[s.ACTIVE]:"success",[s.INACTIVE]:"neutral",[s.PENDING]:"info",[s.SUSPENDED]:"warning",[s.TERMINATED]:"error",[s.CANCELLED]:"neutral",[s.COMPLETED]:"success"};function D(r){return $[r]??e.jsx(m,{className:"h-6 w-6 text-muted-foreground"})}function z(r){return q[r]??"neutral"}D.__docgenInfo={description:"",methods:[],displayName:"getSubscriptionStatusIcon"};const{formatCurrency:G}=V,J=r=>{switch(r){case t.MONTHLY:return"per month";case t.ANNUALLY:return"per year";case t.QUARTERLY:return"per quarter";case t.SEMI_ANNUALLY:return"per 6 months";case t.BIENNIALLY:return"per 2 years";case t.TRIENNIALLY:return"per 3 years";case t.ONE_TIME:return"one-time";case t.FREE:return"free";default:return r.toLowerCase()}};function H({className:r}){return e.jsx("div",{className:d("bg-card overflow-hidden",r),children:e.jsxs("div",{className:"animate-pulse",children:[e.jsx("div",{className:"bg-muted/50 px-6 py-4 border-b border-border",children:e.jsxs("div",{className:"grid grid-cols-3 gap-6",children:[e.jsx("div",{className:"h-3 bg-muted rounded w-24"}),e.jsx("div",{className:"h-3 bg-muted rounded w-20 ml-auto"}),e.jsx("div",{className:"h-3 bg-muted rounded w-24"})]})}),e.jsx("div",{className:"divide-y divide-border",children:Array.from({length:6}).map((u,a)=>e.jsx("div",{className:"px-6 py-5",children:e.jsxs("div",{className:"grid grid-cols-3 gap-6 items-center",children:[e.jsxs("div",{className:"flex items-center space-x-3",children:[e.jsx("div",{className:"h-5 w-5 bg-muted rounded-full flex-shrink-0"}),e.jsx("div",{className:"space-y-2 flex-1",children:e.jsx("div",{className:"h-4 bg-muted rounded w-48"})})]}),e.jsx("div",{className:"text-right",children:e.jsx("div",{className:"h-4 bg-muted rounded w-32 ml-auto"})}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("div",{className:"h-4 w-4 bg-muted rounded"}),e.jsx("div",{className:"h-4 bg-muted rounded w-28"})]})]})},a))})]})})}const Q=d("subscription-table","[&_thead]:bg-muted/50","[&_thead_th]:px-6 [&_thead_th]:py-3.5 [&_thead_th]:text-xs [&_thead_th]:font-medium [&_thead_th]:text-muted-foreground [&_thead_th]:uppercase [&_thead_th]:tracking-wide","[&_thead_th]:border-b [&_thead_th]:border-border","[&_thead_th:nth-child(2)]:text-right","[&_tbody_tr]:border-b [&_tbody_tr]:border-border [&_tbody_tr]:transition-all [&_tbody_tr]:duration-200","[&_tbody_tr:hover]:bg-primary/5 [&_tbody_tr]:cursor-pointer","[&_tbody_tr:last-child]:border-b-0","[&_tbody_td]:px-6 [&_tbody_td]:py-1 [&_tbody_td]:align-top","[&_.divide-y]:divide-transparent"),K=[{key:"service",header:"Service",className:"",render:r=>e.jsxs("div",{className:"flex items-center space-x-3 py-5",children:[e.jsx("div",{className:"flex-shrink-0",children:D(r.status)}),e.jsx("div",{className:"min-w-0 flex-1",children:e.jsxs("div",{className:"flex items-center gap-2.5",children:[e.jsx("div",{className:"font-semibold text-foreground text-sm",children:r.productName}),e.jsx(k,{label:r.status,variant:z(r.status),size:"sm"})]})})]})},{key:"amount",header:"Amount",className:"",render:r=>e.jsx("div",{className:"py-5 text-right",children:e.jsxs("div",{className:"font-bold text-foreground text-sm tabular-nums",children:[G(r.amount,r.currency)," ",e.jsx("span",{className:"text-xs text-muted-foreground font-normal",children:J(r.cycle)})]})})},{key:"nextDue",header:"Next Due",className:"",render:r=>e.jsx("div",{className:"py-5",children:e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(O,{className:"h-4 w-4 text-muted-foreground"}),e.jsx("div",{className:"text-sm font-medium text-foreground",children:Y(r.nextDue)})]})})}],W={icon:e.jsx(m,{className:"h-12 w-12"}),title:"No subscriptions found",description:"No active subscriptions at this time."};function C({subscriptions:r,loading:u=!1,onSubscriptionClick:a,className:l}){const p=F(),P=R.useCallback(x=>{a?a(x):p.push(`/account/subscriptions/${x.id}`)},[a,p]);return u?e.jsx(H,{className:l}):e.jsx("div",{className:d("bg-card overflow-hidden",l),children:e.jsx(M,{data:r,columns:K,emptyState:W,onRowClick:P,className:Q})})}C.__docgenInfo={description:"",methods:[],displayName:"SubscriptionTable",props:{subscriptions:{required:!0,tsType:{name:"Array",elements:[{name:"z.infer",elements:[{name:"subscriptionSchema"}],raw:"z.infer"}],raw:"Subscription[]"},description:""},loading:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"false",computed:!1}},onSubscriptionClick:{required:!1,tsType:{name:"signature",type:"function",raw:"(subscription: Subscription) => void",signature:{arguments:[{type:{name:"z.infer",elements:[{name:"subscriptionSchema"}],raw:"z.infer"},name:"subscription"}],return:{name:"void"}}},description:""},className:{required:!1,tsType:{name:"string"},description:""}}};const we={title:"Features/Subscriptions/SubscriptionTable",component:C,parameters:{layout:"padded"}},L=[{id:1,serviceId:1001,productName:"SIM 10GB Data Plan",cycle:"Monthly",status:"Active",nextDue:"2026-04-01",amount:3500,currency:"JPY",currencySymbol:"¥",registrationDate:"2025-06-15"},{id:2,serviceId:1002,productName:"Fiber Internet 1Gbps",cycle:"Monthly",status:"Active",nextDue:"2026-04-01",amount:5800,currency:"JPY",currencySymbol:"¥",registrationDate:"2025-03-10"},{id:3,serviceId:1003,productName:"VPN Premium",cycle:"Annually",status:"Pending",nextDue:"2027-01-01",amount:12e3,currency:"JPY",currencySymbol:"¥",registrationDate:"2026-01-01"},{id:4,serviceId:1004,productName:"SIM 5GB Data Plan",cycle:"Monthly",status:"Cancelled",nextDue:"2026-03-15",amount:2e3,currency:"JPY",currencySymbol:"¥",registrationDate:"2024-12-01"}],o={args:{subscriptions:L,loading:!1,onSubscriptionClick:A()}},n={args:{subscriptions:[],loading:!0}},i={args:{subscriptions:[],loading:!1}},c={args:{subscriptions:L.slice(0,1),loading:!1,onSubscriptionClick:A()}};var b,N,g;o.parameters={...o.parameters,docs:{...(b=o.parameters)==null?void 0:b.docs,source:{originalSource:`{ + args: { + subscriptions: mockSubscriptions, + loading: false, + onSubscriptionClick: fn() + } +}`,...(g=(N=o.parameters)==null?void 0:N.docs)==null?void 0:g.source}}};var y,S,_;n.parameters={...n.parameters,docs:{...(y=n.parameters)==null?void 0:y.docs,source:{originalSource:`{ + args: { + subscriptions: [], + loading: true + } +}`,...(_=(S=n.parameters)==null?void 0:S.docs)==null?void 0:_.source}}};var v,j,E;i.parameters={...i.parameters,docs:{...(v=i.parameters)==null?void 0:v.docs,source:{originalSource:`{ + args: { + subscriptions: [], + loading: false + } +}`,...(E=(j=i.parameters)==null?void 0:j.docs)==null?void 0:E.source}}};var T,w,I;c.parameters={...c.parameters,docs:{...(T=c.parameters)==null?void 0:T.docs,source:{originalSource:`{ + args: { + subscriptions: mockSubscriptions.slice(0, 1), + loading: false, + onSubscriptionClick: fn() + } +}`,...(I=(w=c.parameters)==null?void 0:w.docs)==null?void 0:I.source}}};const Ie=["Default","Loading","Empty","SingleItem"];export{o as Default,i as Empty,n as Loading,c as SingleItem,Ie as __namedExportsOrder,we as default}; diff --git a/apps/portal/public/storybook/assets/SuccessStep.stories-GoxphLJW.js b/apps/portal/public/storybook/assets/SuccessStep.stories-GoxphLJW.js new file mode 100644 index 00000000..c02b302d --- /dev/null +++ b/apps/portal/public/storybook/assets/SuccessStep.stories-GoxphLJW.js @@ -0,0 +1,27 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{r as a}from"./index-JhL3uwfD.js";import{u as A}from"./next-navigation-FtRxULo3.js";import{B as d}from"./button-C8_cybvS.js";import"./input-BbGJiz0K.js";import"./password-input-D4khGh8v.js";import"./checkbox-DahUyQbt.js";import"./label-C25VH7yk.js";import"./error-message-DeFFz6H_.js";import"./status-pill-wWp9xkwA.js";import"./badge-BdMsasyi.js";import"./spinner-mU4XywER.js";import"./loading-overlay-DMJTiFny.js";import"./error-state-BSicqqE6.js";import"./empty-state-DRUGJ9ip.js";import"./inline-toast-DQJ-O9wc.js";import"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import"./logo-f0fprTjz.js";import"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./animated-container-DyAZ9gmw.js";import{u as l}from"./eligibility-check.store-5rXvIK_a.js";import{A as E}from"./arrow-right-BNMAry-H.js";import{H as k}from"./house-pESumjO8.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./createLucideIcon-CctB0W3q.js";import"./ExclamationCircleIcon-jFfW0Ax_.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./ArrowPathIcon-CZjG6RfV.js";import"./PlusIcon-DGufmf06.js";import"./index-CNXKWNLp.js";import"./proxy-ZkTvaR74.js";import"./next-image-69WeRggt.js";import"./Squares2X2Icon-BMQM_Wy1.js";import"./error-handling-CCxr4Gjn.js";import"./schema-Cvvg7S_W.js";import"./text-CXa-DJQz.js";import"./schema-JsDJirqf.js";import"./schema-Dok_SHcO.js";import"./react-C6W-rNNW.js";const C=5,w=["We check service availability at your address","You receive an email with available plans and pricing"];function T({hasAccount:t}){const o=t?"Log in to your dashboard to complete your order":"Create an account or reply to the email to proceed";return e.jsxs("div",{className:"pt-4 border-t border-border",children:[e.jsx("h3",{className:"text-sm font-medium text-foreground mb-3",children:"What happens next?"}),e.jsx("ul",{className:"space-y-2",children:[...w,o].map((c,r)=>e.jsxs("li",{className:"flex items-start gap-2",children:[e.jsx("span",{className:"flex-shrink-0 h-5 w-5 rounded-full bg-primary/10 text-primary text-xs flex items-center justify-center font-medium",children:r+1}),e.jsx("span",{className:"text-sm text-muted-foreground",children:c})]},r))})]})}function S(){const t=A(),{hasAccount:o,formData:c,reset:r}=l(),[p,b]=a.useState(C),n=a.useRef(null),s=a.useCallback(()=>{n.current&&(clearInterval(n.current),n.current=null)},[]);a.useEffect(()=>{if(o)return n.current=setInterval(()=>{b(u=>u<=1?(s(),t.push("/dashboard"),0):u-1)},1e3),s},[o,t,s]);const g=a.useCallback(()=>{s(),r(),t.push("/dashboard")},[s,r,t]),v=a.useCallback(()=>{s(),r(),t.push("/services/internet")},[s,r,t]);return e.jsxs("div",{className:"space-y-6",children:[e.jsxs("div",{className:"p-4 rounded-lg bg-primary/5 border border-primary/20",children:[e.jsxs("p",{className:"text-sm text-foreground",children:["We'll send the results to ",e.jsx("span",{className:"font-medium",children:c.email})]}),e.jsx("p",{className:"text-xs text-muted-foreground mt-1",children:"You should receive an update within 1-2 business days."})]}),o?e.jsxs("div",{className:"space-y-3",children:[e.jsx(d,{type:"button",onClick:g,rightIcon:e.jsx(E,{className:"h-4 w-4"}),className:"w-full",children:"Go to Dashboard"}),e.jsxs("p",{className:"text-xs text-muted-foreground text-center",children:["Redirecting in ",p," second",p===1?"":"s","..."]})]}):e.jsx("div",{className:"space-y-3",children:e.jsx(d,{type:"button",onClick:v,leftIcon:e.jsx(k,{className:"h-4 w-4"}),className:"w-full",children:"View Internet Plans"})}),e.jsx(T,{hasAccount:o})]})}S.__docgenInfo={description:"",methods:[],displayName:"SuccessStep"};const ve={title:"Features/Services/EligibilityCheck/SuccessStep",component:S,parameters:{layout:"centered"}},i={decorators:[t=>(l.setState({hasAccount:!0,formData:{firstName:"Taro",lastName:"Yamada",email:"taro@example.com",address:null}}),e.jsx(t,{}))]},m={decorators:[t=>(l.setState({hasAccount:!1,formData:{firstName:"Jane",lastName:"Smith",email:"jane@example.com",address:null}}),e.jsx(t,{}))]};var h,x,f;i.parameters={...i.parameters,docs:{...(h=i.parameters)==null?void 0:h.docs,source:{originalSource:`{ + decorators: [Story => { + useEligibilityCheckStore.setState({ + hasAccount: true, + formData: { + firstName: "Taro", + lastName: "Yamada", + email: "taro@example.com", + address: null + } + }); + return ; + }] +}`,...(f=(x=i.parameters)==null?void 0:x.docs)==null?void 0:f.source}}};var N,y,j;m.parameters={...m.parameters,docs:{...(N=m.parameters)==null?void 0:N.docs,source:{originalSource:`{ + decorators: [Story => { + useEligibilityCheckStore.setState({ + hasAccount: false, + formData: { + firstName: "Jane", + lastName: "Smith", + email: "jane@example.com", + address: null + } + }); + return ; + }] +}`,...(j=(y=m.parameters)==null?void 0:y.docs)==null?void 0:j.source}}};const Ae=["WithAccount","WithoutAccount"];export{i as WithAccount,m as WithoutAccount,Ae as __namedExportsOrder,ve as default}; diff --git a/apps/portal/public/storybook/assets/SummaryStats-D6b7Am-p.js b/apps/portal/public/storybook/assets/SummaryStats-D6b7Am-p.js new file mode 100644 index 00000000..2b3764cf --- /dev/null +++ b/apps/portal/public/storybook/assets/SummaryStats-D6b7Am-p.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{c as s}from"./cn-CDN07tui.js";const c={neutral:{iconBg:"bg-muted/50",iconText:"text-muted-foreground",valueText:"text-foreground"},primary:{iconBg:"bg-primary/10",iconText:"text-primary",valueText:"text-primary"},info:{iconBg:"bg-info/10",iconText:"text-info",valueText:"text-info"},success:{iconBg:"bg-success/10",iconText:"text-success",valueText:"text-success"},warning:{iconBg:"bg-warning/10",iconText:"text-warning",valueText:"text-warning"},muted:{iconBg:"bg-muted",iconText:"text-muted-foreground",valueText:"text-foreground"}};function o({item:t}){const a=t.tone??"neutral",n=c[a];return e.jsx("div",{className:"bg-card rounded-xl border border-border p-5 shadow-[var(--cp-shadow-1)]",children:e.jsxs("div",{className:"flex items-center gap-4",children:[e.jsx("div",{className:s("h-10 w-10 rounded-lg flex items-center justify-center flex-shrink-0",n.iconBg),children:e.jsx("span",{className:s("h-5 w-5",n.iconText),children:t.icon})}),e.jsxs("div",{className:"min-w-0",children:[e.jsx("p",{className:"text-sm font-medium text-muted-foreground",children:t.label}),e.jsx("p",{className:s("text-2xl font-bold",n.valueText),children:t.value})]})]})})}function d({item:t}){const a=t.tone??"neutral",n=c[a];return e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("span",{className:s("h-4 w-4",n.iconText),children:t.icon}),e.jsx("span",{className:"text-muted-foreground",children:t.label}),e.jsx("span",{className:s("font-semibold",n.valueText),children:t.value})]})}function x({items:t,variant:a="inline",className:n}){const i=t.filter(r=>r.show!==!1);return i.length===0?null:a==="cards"?e.jsx("div",{className:s("grid grid-cols-1 md:grid-cols-3 gap-4",n),children:i.map((r,l)=>e.jsx(o,{item:r},l))}):e.jsx("div",{className:s("flex flex-wrap items-center gap-6 px-1 text-sm",n),children:i.map((r,l)=>e.jsx(d,{item:r},l))})}x.__docgenInfo={description:"",methods:[],displayName:"SummaryStats",props:{items:{required:!0,tsType:{name:"Array",elements:[{name:"StatItem"}],raw:"StatItem[]"},description:""},variant:{required:!1,tsType:{name:"union",raw:'"cards" | "inline"',elements:[{name:"literal",value:'"cards"'},{name:"literal",value:'"inline"'}]},description:"",defaultValue:{value:'"inline"',computed:!1}},className:{required:!1,tsType:{name:"string"},description:""}}};export{x as S}; diff --git a/apps/portal/public/storybook/assets/SummaryStats.stories-Bgs7dcLW.js b/apps/portal/public/storybook/assets/SummaryStats.stories-Bgs7dcLW.js new file mode 100644 index 00000000..aa248922 --- /dev/null +++ b/apps/portal/public/storybook/assets/SummaryStats.stories-Bgs7dcLW.js @@ -0,0 +1,31 @@ +import{j as a}from"./jsx-runtime-D_zvdyIk.js";import{S as w}from"./SummaryStats-D6b7Am-p.js";import{F as f}from"./DocumentTextIcon-Dk_xQMYi.js";import{F as u}from"./CurrencyYenIcon-Bf5bmWZc.js";import{F as v}from"./ClockIcon-BFX11zAZ.js";import{F as h}from"./CheckCircleIcon-Dva35lTP.js";import"./cn-CDN07tui.js";import"./index-JhL3uwfD.js";const R={title:"Molecules/SummaryStats",component:w,argTypes:{variant:{control:"select",options:["inline","cards"]}},parameters:{layout:"padded"}},g=[{icon:a.jsx(f,{className:"h-5 w-5"}),label:"Total Orders",value:24,tone:"primary"},{icon:a.jsx(u,{className:"h-5 w-5"}),label:"Revenue",value:"¥1.2M",tone:"success"},{icon:a.jsx(v,{className:"h-5 w-5"}),label:"Pending",value:3,tone:"warning"}],e={args:{items:g,variant:"inline"}},n={args:{items:g,variant:"cards"}},s={args:{variant:"cards",items:[{icon:a.jsx(h,{className:"h-5 w-5"}),label:"Active",value:12,tone:"success"},{icon:a.jsx(v,{className:"h-5 w-5"}),label:"Pending",value:3,tone:"warning"},{icon:a.jsx(u,{className:"h-5 w-5"}),label:"Total Spent",value:"¥89,400",tone:"info"}]}};var r,o,t;e.parameters={...e.parameters,docs:{...(r=e.parameters)==null?void 0:r.docs,source:{originalSource:`{ + args: { + items, + variant: "inline" + } +}`,...(t=(o=e.parameters)==null?void 0:o.docs)==null?void 0:t.source}}};var c,i,l;n.parameters={...n.parameters,docs:{...(c=n.parameters)==null?void 0:c.docs,source:{originalSource:`{ + args: { + items, + variant: "cards" + } +}`,...(l=(i=n.parameters)==null?void 0:i.docs)==null?void 0:l.source}}};var m,p,d;s.parameters={...s.parameters,docs:{...(m=s.parameters)==null?void 0:m.docs,source:{originalSource:`{ + args: { + variant: "cards", + items: [{ + icon: , + label: "Active", + value: 12, + tone: "success" + }, { + icon: , + label: "Pending", + value: 3, + tone: "warning" + }, { + icon: , + label: "Total Spent", + value: "¥89,400", + tone: "info" + }] + } +}`,...(d=(p=s.parameters)==null?void 0:p.docs)==null?void 0:d.source}}};const T=["Inline","Cards","WithTones"];export{n as Cards,e as Inline,s as WithTones,T as __namedExportsOrder,R as default}; diff --git a/apps/portal/public/storybook/assets/SupportDownloadsSection.stories-CSqHhYLq.js b/apps/portal/public/storybook/assets/SupportDownloadsSection.stories-CSqHhYLq.js new file mode 100644 index 00000000..8414073b --- /dev/null +++ b/apps/portal/public/storybook/assets/SupportDownloadsSection.stories-CSqHhYLq.js @@ -0,0 +1,6 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{r as c}from"./index-JhL3uwfD.js";import{I as d}from"./next-image-69WeRggt.js";import{s as l}from"./services-GtI5icT3.js";import{u as p}from"./use-in-view-Du9cy_vv.js";import{m as x}from"./proxy-ZkTvaR74.js";import{c as u}from"./createLucideIcon-CctB0W3q.js";import"./wifi-Df9jtwRo.js";import"./smartphone-Dk2P1VMI.js";import"./wrench-BgTvXjQb.js";import"./building-2-C7pcwIk2.js";/** + * @license lucide-react v0.563.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const h=[["path",{d:"M12 15V3",key:"m9g1x1"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["path",{d:"m7 10 5 5 5-5",key:"brsn70"}]],f=u("download",h);function i(){const s=c.useRef(null),m=p(s,{once:!0,amount:.1});return e.jsx(x.section,{ref:s,initial:{opacity:0,y:32},animate:m?{opacity:1,y:0}:{opacity:0,y:32},transition:{duration:.7,ease:"easeOut"},className:"py-14 sm:py-16",children:e.jsxs("div",{className:"mx-auto max-w-5xl px-6 sm:px-10 lg:px-14",children:[e.jsx("h2",{className:"text-center text-2xl sm:text-3xl font-extrabold text-foreground tracking-tight mb-2 font-heading",children:"Remote Support"}),e.jsx("p",{className:"text-center text-muted-foreground mb-8",children:"Download one of these tools so our technicians can assist you remotely."}),e.jsx("div",{className:"grid grid-cols-1 sm:grid-cols-2 gap-6",children:l.map(t=>e.jsx("a",{href:t.href,target:"_blank",rel:"noopener noreferrer",className:"group bg-card rounded-2xl border border-border/60 p-6 hover:border-primary/40 hover:shadow-md transition-all duration-200",children:e.jsxs("div",{className:"flex items-start gap-5",children:[e.jsx("div",{className:"w-16 h-16 rounded-xl bg-muted/30 flex items-center justify-center shrink-0 overflow-hidden",children:e.jsx(d,{src:t.image,alt:t.title,width:48,height:48,className:"object-contain"})}),e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsxs("div",{className:"flex items-center gap-2 mb-1",children:[e.jsx("h3",{className:"font-bold text-foreground group-hover:text-primary transition-colors",children:t.title}),e.jsx(f,{className:"h-4 w-4 text-muted-foreground group-hover:text-primary transition-colors"})]}),e.jsx("p",{className:"text-sm text-muted-foreground leading-relaxed mb-2",children:t.description}),e.jsx("p",{className:"text-xs font-medium text-primary",children:t.useCase})]})]})},t.title))})]})})}i.__docgenInfo={description:"",methods:[],displayName:"SupportDownloadsSection"};const I={title:"Features/LandingPage/SupportDownloadsSection",component:i,parameters:{layout:"fullscreen"}},r={};var o,a,n;r.parameters={...r.parameters,docs:{...(o=r.parameters)==null?void 0:o.docs,source:{originalSource:"{}",...(n=(a=r.parameters)==null?void 0:a.docs)==null?void 0:n.source}}};const E=["Default"];export{r as Default,E as __namedExportsOrder,I as default}; diff --git a/apps/portal/public/storybook/assets/TaskCard-BDKND5XO.js b/apps/portal/public/storybook/assets/TaskCard-BDKND5XO.js new file mode 100644 index 00000000..61485797 --- /dev/null +++ b/apps/portal/public/storybook/assets/TaskCard-BDKND5XO.js @@ -0,0 +1 @@ +import{r as i}from"./index-JhL3uwfD.js";import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{L as v}from"./next-link-BmD4fPSy.js";import{c as a}from"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import{B as k}from"./button-C8_cybvS.js";import{F as b}from"./ChevronRightIcon-CMQWsJeW.js";function y({title:n,titleId:t,...o},s){return i.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:s,"aria-labelledby":t},o),n?i.createElement("title",{id:t},n):null,i.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M9.813 15.904 9 18.75l-.813-2.846a4.5 4.5 0 0 0-3.09-3.09L2.25 12l2.846-.813a4.5 4.5 0 0 0 3.09-3.09L9 5.25l.813 2.846a4.5 4.5 0 0 0 3.09 3.09L15.75 12l-2.846.813a4.5 4.5 0 0 0-3.09 3.09ZM18.259 8.715 18 9.75l-.259-1.035a3.375 3.375 0 0 0-2.455-2.456L14.25 6l1.036-.259a3.375 3.375 0 0 0 2.455-2.456L18 2.25l.259 1.035a3.375 3.375 0 0 0 2.456 2.456L21.75 6l-1.035.259a3.375 3.375 0 0 0-2.456 2.456ZM16.894 20.567 16.5 21.75l-.394-1.183a2.25 2.25 0 0 0-1.423-1.423L13.5 18.75l1.183-.394a2.25 2.25 0 0 0 1.423-1.423l.394-1.183.394 1.183a2.25 2.25 0 0 0 1.423 1.423l1.183.394-1.183.394a2.25 2.25 0 0 0-1.423 1.423Z"}))}const R=i.forwardRef(y),j={critical:{card:"bg-danger/5 hover:bg-danger/10",border:"border-l-danger",iconBg:"bg-danger/15",iconColor:"text-danger",buttonVariant:"default"},warning:{card:"bg-warning/5 hover:bg-warning/10",border:"border-l-warning",iconBg:"bg-warning/15",iconColor:"text-warning",buttonVariant:"outline"},info:{card:"bg-info/5 hover:bg-info/10",border:"border-l-info",iconBg:"bg-info/15",iconColor:"text-info",buttonVariant:"outline"},neutral:{card:"bg-primary/5 hover:bg-primary/10",border:"border-l-primary",iconBg:"bg-primary/15",iconColor:"text-primary",buttonVariant:"outline"}};function N({id:n,icon:t,title:o,description:s,actionLabel:l,detailHref:d,onAction:c,tone:x="neutral",isLoading:m=!1,loadingText:h,className:w}){const r=j[x],u=e.jsxs(e.Fragment,{children:[e.jsx("div",{className:a("flex-shrink-0 h-12 w-12 rounded-xl flex items-center justify-center",r.iconBg),"aria-hidden":"true",children:e.jsx(t,{className:a("h-6 w-6",r.iconColor)})}),e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsx("h3",{className:"text-base font-semibold text-foreground",children:o}),e.jsx("p",{className:"text-sm text-muted-foreground mt-1 line-clamp-2",children:s})]})]}),p=c?e.jsx(k,{variant:r.buttonVariant,size:"sm",onClick:g=>{g.preventDefault(),g.stopPropagation(),c()},isLoading:m,loadingText:h,rightIcon:m?void 0:e.jsx(b,{className:"h-4 w-4"}),className:"shrink-0",children:l}):e.jsxs("span",{className:a("inline-flex items-center gap-2 px-3 py-2 text-sm font-medium rounded-lg","text-foreground/80 group-hover:text-foreground transition-colors"),children:[l,e.jsx(b,{className:"h-4 w-4"})]}),f=a("group flex items-center gap-5 p-5 rounded-2xl border border-border/60","border-l-4",r.border,r.card,"transition-all duration-[var(--cp-duration-normal)]","shadow-[var(--cp-shadow-1)] hover:shadow-[var(--cp-shadow-3)]",d&&"cursor-pointer",w);return d?e.jsx(v,{href:d,"data-task-id":n,className:a(f,"block"),children:e.jsxs("div",{className:"flex items-center gap-5 w-full",children:[u,e.jsx("div",{className:"shrink-0",children:p})]})}):e.jsxs("div",{"data-task-id":n,className:f,children:[u,e.jsx("div",{className:"shrink-0",children:p})]})}function T(){return e.jsxs("div",{className:"flex items-center gap-5 p-5 rounded-2xl bg-muted/30 border border-border/60 border-l-4 border-l-muted animate-pulse",children:[e.jsx("div",{className:"flex-shrink-0 h-12 w-12 rounded-xl bg-muted"}),e.jsxs("div",{className:"flex-1 min-w-0 space-y-2",children:[e.jsx("div",{className:"h-5 bg-muted rounded w-1/3"}),e.jsx("div",{className:"h-4 bg-muted rounded w-2/3"})]}),e.jsx("div",{className:"h-9 w-24 bg-muted rounded-lg"})]})}N.__docgenInfo={description:"",methods:[],displayName:"TaskCard",props:{id:{required:!0,tsType:{name:"string"},description:"Unique identifier for the task"},icon:{required:!0,tsType:{name:"ReactComponentType",raw:"React.ComponentType>",elements:[{name:"ReactSVGProps",raw:"React.SVGProps",elements:[{name:"SVGSVGElement"}]}]},description:"Icon component to display"},title:{required:!0,tsType:{name:"string"},description:"Task title"},description:{required:!0,tsType:{name:"string"},description:"Task description"},actionLabel:{required:!0,tsType:{name:"string"},description:"Action button label"},detailHref:{required:!1,tsType:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}]},description:"Link destination for the card click (navigates to detail page)"},onAction:{required:!1,tsType:{name:"union",raw:"(() => void) | undefined",elements:[{name:"unknown"},{name:"undefined"}]},description:"Click handler for the action button"},tone:{required:!1,tsType:{name:"union",raw:"TaskTone | undefined",elements:[{name:"union",raw:'"critical" | "warning" | "info" | "neutral"',elements:[{name:"literal",value:'"critical"'},{name:"literal",value:'"warning"'},{name:"literal",value:'"info"'},{name:"literal",value:'"neutral"'}]},{name:"undefined"}]},description:"Visual tone based on priority",defaultValue:{value:'"neutral"',computed:!1}},isLoading:{required:!1,tsType:{name:"union",raw:"boolean | undefined",elements:[{name:"boolean"},{name:"undefined"}]},description:"Loading state for the action button",defaultValue:{value:"false",computed:!1}},loadingText:{required:!1,tsType:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}]},description:"Loading text for the action button"},className:{required:!1,tsType:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}]},description:"Additional className"}}};T.__docgenInfo={description:"Loading skeleton for TaskCard",methods:[],displayName:"TaskCardSkeleton"};export{R as F,N as T,T as a}; diff --git a/apps/portal/public/storybook/assets/TaskCard.stories-DrZu2XPm.js b/apps/portal/public/storybook/assets/TaskCard.stories-DrZu2XPm.js new file mode 100644 index 00000000..62ee279a --- /dev/null +++ b/apps/portal/public/storybook/assets/TaskCard.stories-DrZu2XPm.js @@ -0,0 +1,64 @@ +import{j as d}from"./jsx-runtime-D_zvdyIk.js";import{F,T as O}from"./TaskCard-BDKND5XO.js";import{fn as i}from"./index-B9TJ7cVi.js";import{F as R}from"./ExclamationCircleIcon-jFfW0Ax_.js";import{F as S}from"./ClockIcon-BFX11zAZ.js";import{F as s}from"./CreditCardIcon-BBdrpHQs.js";import"./index-JhL3uwfD.js";import"./next-link-BmD4fPSy.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./button-C8_cybvS.js";import"./index-DXhM58Yq.js";import"./spinner-mU4XywER.js";import"./ChevronRightIcon-CMQWsJeW.js";const z={title:"Features/Dashboard/TaskCard",component:O,parameters:{layout:"centered"},decorators:[P=>d.jsx("div",{style:{width:560},children:d.jsx(P,{})})]},e={args:{id:"task-1",icon:R,title:"Invoice #1042 overdue",description:"Payment of 5,980 JPY was due on March 1, 2026. Pay now to avoid service interruption.",actionLabel:"Pay now",detailHref:"/account/billing",onAction:i(),tone:"critical"}},r={args:{id:"task-2",icon:s,title:"Add a payment method",description:"A payment method is required before you can place orders.",actionLabel:"Add payment",onAction:i(),tone:"warning"}},n={args:{id:"task-3",icon:S,title:"Order being processed",description:"Your internet service order is being reviewed by our team.",actionLabel:"View order",detailHref:"/account/orders/ORD-001",tone:"info"}},o={args:{id:"task-4",icon:F,title:"Complete your profile",description:"Add your address and verify your identity to unlock all features.",actionLabel:"Get started",detailHref:"/account/settings",tone:"neutral"}},t={args:{id:"task-5",icon:s,title:"Add a payment method",description:"A payment method is required before you can place orders.",actionLabel:"Add payment",onAction:i(),tone:"warning",isLoading:!0,loadingText:"Opening..."}},a={args:{id:"task-6",icon:s,title:"Update payment method",description:"Your card on file has expired. Please update it.",actionLabel:"Update",onAction:i(),tone:"warning"}};var c,p,m;e.parameters={...e.parameters,docs:{...(c=e.parameters)==null?void 0:c.docs,source:{originalSource:`{ + args: { + id: "task-1", + icon: ExclamationCircleIcon, + title: "Invoice #1042 overdue", + description: "Payment of 5,980 JPY was due on March 1, 2026. Pay now to avoid service interruption.", + actionLabel: "Pay now", + detailHref: "/account/billing", + onAction: fn(), + tone: "critical" + } +}`,...(m=(p=e.parameters)==null?void 0:p.docs)==null?void 0:m.source}}};var l,u,g;r.parameters={...r.parameters,docs:{...(l=r.parameters)==null?void 0:l.docs,source:{originalSource:`{ + args: { + id: "task-2", + icon: CreditCardIcon, + title: "Add a payment method", + description: "A payment method is required before you can place orders.", + actionLabel: "Add payment", + onAction: fn(), + tone: "warning" + } +}`,...(g=(u=r.parameters)==null?void 0:u.docs)==null?void 0:g.source}}};var f,y,b;n.parameters={...n.parameters,docs:{...(f=n.parameters)==null?void 0:f.docs,source:{originalSource:`{ + args: { + id: "task-3", + icon: ClockIcon, + title: "Order being processed", + description: "Your internet service order is being reviewed by our team.", + actionLabel: "View order", + detailHref: "/account/orders/ORD-001", + tone: "info" + } +}`,...(b=(y=n.parameters)==null?void 0:y.docs)==null?void 0:b.source}}};var A,w,k;o.parameters={...o.parameters,docs:{...(A=o.parameters)==null?void 0:A.docs,source:{originalSource:`{ + args: { + id: "task-4", + icon: SparklesIcon, + title: "Complete your profile", + description: "Add your address and verify your identity to unlock all features.", + actionLabel: "Get started", + detailHref: "/account/settings", + tone: "neutral" + } +}`,...(k=(w=o.parameters)==null?void 0:w.docs)==null?void 0:k.source}}};var h,L,v;t.parameters={...t.parameters,docs:{...(h=t.parameters)==null?void 0:h.docs,source:{originalSource:`{ + args: { + id: "task-5", + icon: CreditCardIcon, + title: "Add a payment method", + description: "A payment method is required before you can place orders.", + actionLabel: "Add payment", + onAction: fn(), + tone: "warning", + isLoading: true, + loadingText: "Opening..." + } +}`,...(v=(L=t.parameters)==null?void 0:L.docs)==null?void 0:v.source}}};var C,x,I;a.parameters={...a.parameters,docs:{...(C=a.parameters)==null?void 0:C.docs,source:{originalSource:`{ + args: { + id: "task-6", + icon: CreditCardIcon, + title: "Update payment method", + description: "Your card on file has expired. Please update it.", + actionLabel: "Update", + onAction: fn(), + tone: "warning" + } +}`,...(I=(x=a.parameters)==null?void 0:x.docs)==null?void 0:I.source}}};const B=["Critical","Warning","Info","Neutral","Loading","WithoutDetailLink"];export{e as Critical,n as Info,t as Loading,o as Neutral,r as Warning,a as WithoutDetailLink,B as __namedExportsOrder,z as default}; diff --git a/apps/portal/public/storybook/assets/TaskList.stories-Cqc9zFS6.js b/apps/portal/public/storybook/assets/TaskList.stories-Cqc9zFS6.js new file mode 100644 index 00000000..0e125f22 --- /dev/null +++ b/apps/portal/public/storybook/assets/TaskList.stories-Cqc9zFS6.js @@ -0,0 +1,52 @@ +import{j as r}from"./jsx-runtime-D_zvdyIk.js";import{F as w,a as s,T as v}from"./TaskCard-BDKND5XO.js";import{F as x}from"./ExclamationCircleIcon-jFfW0Ax_.js";import{F as j}from"./CreditCardIcon-BBdrpHQs.js";import{F as A}from"./ClockIcon-BFX11zAZ.js";import"./index-JhL3uwfD.js";import"./next-link-BmD4fPSy.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./button-C8_cybvS.js";import"./index-DXhM58Yq.js";import"./spinner-mU4XywER.js";import"./ChevronRightIcon-CMQWsJeW.js";function F({tasks:t,isLoading:h}){return h?r.jsxs("div",{className:"space-y-4",children:[r.jsx(s,{}),r.jsx(s,{})]}):t.length===0?r.jsx("div",{className:"text-center py-12 text-muted-foreground",children:"All caught up! No tasks to show."}):r.jsx("div",{className:"space-y-4",children:t.map(e=>r.jsx(v,{id:e.id,icon:e.icon,title:e.title,description:e.description,actionLabel:e.actionLabel,detailHref:e.detailHref,tone:e.tone},e.id))})}const J={title:"Features/Dashboard/TaskList",component:F,parameters:{layout:"centered"},decorators:[t=>r.jsx("div",{style:{width:600},children:r.jsx(t,{})})]},a={args:{isLoading:!1,tasks:[{id:"task-1",title:"Invoice #1042 overdue",description:"Payment of 5,980 JPY was due on March 1, 2026.",actionLabel:"Pay now",detailHref:"/account/billing",tone:"critical",icon:x},{id:"task-2",title:"Add a payment method",description:"A payment method is required before you can place orders.",actionLabel:"Add payment",tone:"warning",icon:j},{id:"task-3",title:"Order being processed",description:"Your internet service order is being reviewed.",actionLabel:"View order",detailHref:"/account/orders/ORD-001",tone:"info",icon:A}]}},n={args:{isLoading:!1,tasks:[]}},o={args:{isLoading:!0,tasks:[]}},i={args:{isLoading:!1,tasks:[{id:"task-1",title:"Complete your profile",description:"Add your address and verify your identity to unlock all features.",actionLabel:"Get started",detailHref:"/account/settings",tone:"neutral",icon:w}]}};var d,c,l;a.parameters={...a.parameters,docs:{...(d=a.parameters)==null?void 0:d.docs,source:{originalSource:`{ + args: { + isLoading: false, + tasks: [{ + id: "task-1", + title: "Invoice #1042 overdue", + description: "Payment of 5,980 JPY was due on March 1, 2026.", + actionLabel: "Pay now", + detailHref: "/account/billing", + tone: "critical", + icon: ExclamationCircleIcon + }, { + id: "task-2", + title: "Add a payment method", + description: "A payment method is required before you can place orders.", + actionLabel: "Add payment", + tone: "warning", + icon: CreditCardIcon + }, { + id: "task-3", + title: "Order being processed", + description: "Your internet service order is being reviewed.", + actionLabel: "View order", + detailHref: "/account/orders/ORD-001", + tone: "info", + icon: ClockIcon + }] + } +}`,...(l=(c=a.parameters)==null?void 0:c.docs)==null?void 0:l.source}}};var p,m,u;n.parameters={...n.parameters,docs:{...(p=n.parameters)==null?void 0:p.docs,source:{originalSource:`{ + args: { + isLoading: false, + tasks: [] + } +}`,...(u=(m=n.parameters)==null?void 0:m.docs)==null?void 0:u.source}}};var f,g,y;o.parameters={...o.parameters,docs:{...(f=o.parameters)==null?void 0:f.docs,source:{originalSource:`{ + args: { + isLoading: true, + tasks: [] + } +}`,...(y=(g=o.parameters)==null?void 0:g.docs)==null?void 0:y.source}}};var k,L,b;i.parameters={...i.parameters,docs:{...(k=i.parameters)==null?void 0:k.docs,source:{originalSource:`{ + args: { + isLoading: false, + tasks: [{ + id: "task-1", + title: "Complete your profile", + description: "Add your address and verify your identity to unlock all features.", + actionLabel: "Get started", + detailHref: "/account/settings", + tone: "neutral", + icon: SparklesIcon + }] + } +}`,...(b=(L=i.parameters)==null?void 0:L.docs)==null?void 0:b.source}}};const M=["WithTasks","Empty","Loading","SingleTask"];export{n as Empty,o as Loading,i as SingleTask,a as WithTasks,M as __namedExportsOrder,J as default}; diff --git a/apps/portal/public/storybook/assets/TermsCheckbox-CIu51LBN.js b/apps/portal/public/storybook/assets/TermsCheckbox-CIu51LBN.js new file mode 100644 index 00000000..6ae4d7d5 --- /dev/null +++ b/apps/portal/public/storybook/assets/TermsCheckbox-CIu51LBN.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{C as o}from"./checkbox-DahUyQbt.js";import"./button-C8_cybvS.js";import"./input-BbGJiz0K.js";import"./password-input-D4khGh8v.js";import{L as s}from"./label-C25VH7yk.js";import"./error-message-DeFFz6H_.js";import"./status-pill-wWp9xkwA.js";import"./badge-BdMsasyi.js";import"./spinner-mU4XywER.js";import"./loading-overlay-DMJTiFny.js";import"./error-state-BSicqqE6.js";import"./empty-state-DRUGJ9ip.js";import"./inline-toast-DQJ-O9wc.js";import"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import"./logo-f0fprTjz.js";import"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./animated-container-DyAZ9gmw.js";function m({checked:n,onChange:t,disabled:i,error:r}){return e.jsxs("div",{className:"space-y-1",children:[e.jsxs("div",{className:"flex items-start gap-2",children:[e.jsx(o,{id:"acceptTerms",checked:n,onChange:a=>t(a.target.checked),disabled:i}),e.jsxs(s,{htmlFor:"acceptTerms",className:"text-sm font-normal leading-tight cursor-pointer",children:["I accept the"," ",e.jsx("a",{href:"/terms",target:"_blank",rel:"noopener noreferrer",className:"text-primary hover:underline",children:"Terms of Service"})," ","and"," ",e.jsx("a",{href:"/privacy",target:"_blank",rel:"noopener noreferrer",className:"text-primary hover:underline",children:"Privacy Policy"})," ",e.jsx("span",{className:"text-danger",children:"*"})]})]}),r&&e.jsx("p",{className:"text-sm text-danger ml-6",children:r})]})}m.__docgenInfo={description:"",methods:[],displayName:"TermsCheckbox",props:{checked:{required:!0,tsType:{name:"boolean"},description:""},onChange:{required:!0,tsType:{name:"signature",type:"function",raw:"(checked: boolean) => void",signature:{arguments:[{type:{name:"boolean"},name:"checked"}],return:{name:"void"}}},description:""},disabled:{required:!1,tsType:{name:"union",raw:"boolean | undefined",elements:[{name:"boolean"},{name:"undefined"}]},description:""},error:{required:!1,tsType:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}]},description:""}}};export{m as T}; diff --git a/apps/portal/public/storybook/assets/TermsCheckbox.stories-BKOMXPZQ.js b/apps/portal/public/storybook/assets/TermsCheckbox.stories-BKOMXPZQ.js new file mode 100644 index 00000000..0b64f65a --- /dev/null +++ b/apps/portal/public/storybook/assets/TermsCheckbox.stories-BKOMXPZQ.js @@ -0,0 +1,23 @@ +import{T as k}from"./TermsCheckbox-CIu51LBN.js";import"./jsx-runtime-D_zvdyIk.js";import"./checkbox-DahUyQbt.js";import"./index-JhL3uwfD.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./button-C8_cybvS.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./spinner-mU4XywER.js";import"./input-BbGJiz0K.js";import"./password-input-D4khGh8v.js";import"./createLucideIcon-CctB0W3q.js";import"./label-C25VH7yk.js";import"./error-message-DeFFz6H_.js";import"./ExclamationCircleIcon-jFfW0Ax_.js";import"./status-pill-wWp9xkwA.js";import"./badge-BdMsasyi.js";import"./loading-overlay-DMJTiFny.js";import"./error-state-BSicqqE6.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./ArrowPathIcon-CZjG6RfV.js";import"./empty-state-DRUGJ9ip.js";import"./PlusIcon-DGufmf06.js";import"./inline-toast-DQJ-O9wc.js";import"./index-CNXKWNLp.js";import"./proxy-ZkTvaR74.js";import"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import"./logo-f0fprTjz.js";import"./next-image-69WeRggt.js";import"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./Squares2X2Icon-BMQM_Wy1.js";import"./animated-container-DyAZ9gmw.js";const er={title:"Features/Auth/TermsCheckbox",component:k,parameters:{layout:"centered"}},r={args:{checked:!1,onChange:()=>{}}},e={args:{checked:!0,onChange:()=>{}}},o={args:{checked:!1,onChange:()=>{},error:"You must accept the terms to continue"}},t={args:{checked:!1,onChange:()=>{},disabled:!0}};var a,s,m;r.parameters={...r.parameters,docs:{...(a=r.parameters)==null?void 0:a.docs,source:{originalSource:`{ + args: { + checked: false, + onChange: () => {} + } +}`,...(m=(s=r.parameters)==null?void 0:s.docs)==null?void 0:m.source}}};var c,p,n;e.parameters={...e.parameters,docs:{...(c=e.parameters)==null?void 0:c.docs,source:{originalSource:`{ + args: { + checked: true, + onChange: () => {} + } +}`,...(n=(p=e.parameters)==null?void 0:p.docs)==null?void 0:n.source}}};var i,d,h;o.parameters={...o.parameters,docs:{...(i=o.parameters)==null?void 0:i.docs,source:{originalSource:`{ + args: { + checked: false, + onChange: () => {}, + error: "You must accept the terms to continue" + } +}`,...(h=(d=o.parameters)==null?void 0:d.docs)==null?void 0:h.source}}};var u,g,l;t.parameters={...t.parameters,docs:{...(u=t.parameters)==null?void 0:u.docs,source:{originalSource:`{ + args: { + checked: false, + onChange: () => {}, + disabled: true + } +}`,...(l=(g=t.parameters)==null?void 0:g.docs)==null?void 0:l.source}}};const or=["Unchecked","Checked","WithError","Disabled"];export{e as Checked,t as Disabled,r as Unchecked,o as WithError,or as __namedExportsOrder,er as default}; diff --git a/apps/portal/public/storybook/assets/TopUpModal.stories-vBYsF3Fd.js b/apps/portal/public/storybook/assets/TopUpModal.stories-vBYsF3Fd.js new file mode 100644 index 00000000..d9e45b7d --- /dev/null +++ b/apps/portal/public/storybook/assets/TopUpModal.stories-vBYsF3Fd.js @@ -0,0 +1,8 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{fn as l}from"./index-B9TJ7cVi.js";import{r as g}from"./index-JhL3uwfD.js";import{F as N}from"./PlusIcon-DGufmf06.js";import{F as j}from"./XMarkIcon-Bsb1W5VN.js";import{F as v}from"./ExclamationTriangleIcon-Di4DJZFg.js";const i={pricePerGbJpy:500,minQuotaMb:1e3,maxQuotaMb:5e4};function y({onClose:o}){const[t,p]=g.useState("1"),c=i.pricePerGbJpy,r=Math.ceil(i.minQuotaMb/1e3),a=Math.floor(i.maxQuotaMb/1e3),f=()=>{const s=Number.parseInt(t,10);return Number.isNaN(s)?0:s*1e3},m=()=>{const s=Number(t);return Number.isInteger(s)&&s>=r&&s<=a},d=()=>{const s=Number.parseInt(t,10);return Number.isNaN(s)?0:s*c},h=s=>{s.target===s.currentTarget&&o()};return e.jsx("div",{className:"fixed inset-0 z-50 overflow-y-auto",onClick:h,children:e.jsxs("div",{className:"flex items-end justify-center min-h-screen pt-4 px-4 pb-20 text-center sm:block sm:p-0",children:[e.jsx("div",{className:"fixed inset-0 bg-gray-500 bg-opacity-75 transition-opacity"}),e.jsx("div",{className:"relative z-10 inline-block align-bottom bg-white rounded-lg text-left overflow-hidden shadow-xl transition-all sm:my-8 sm:align-middle sm:max-w-lg sm:w-full",children:e.jsxs("div",{className:"bg-white px-4 pt-5 pb-4 sm:p-6 sm:pb-4",children:[e.jsxs("div",{className:"flex items-center justify-between mb-4",children:[e.jsxs("div",{className:"flex items-center",children:[e.jsx("div",{className:"mx-auto flex-shrink-0 flex items-center justify-center h-12 w-12 rounded-full bg-blue-100 sm:mx-0 sm:h-10 sm:w-10",children:e.jsx(N,{className:"h-6 w-6 text-blue-600"})}),e.jsxs("div",{className:"ml-4",children:[e.jsx("h3",{className:"text-lg leading-6 font-medium text-gray-900",children:"Top Up Data"}),e.jsx("p",{className:"text-sm text-gray-500",children:"Add data quota to your SIM service"})]})]}),e.jsx("button",{onClick:o,className:"text-gray-400 hover:text-gray-500 focus:outline-none",children:e.jsx(j,{className:"h-6 w-6"})})]}),e.jsxs("form",{onSubmit:s=>s.preventDefault(),children:[e.jsxs("div",{className:"mb-6",children:[e.jsx("label",{className:"block text-sm font-medium text-gray-700 mb-2",children:"Amount (GB)"}),e.jsxs("div",{className:"relative",children:[e.jsx("input",{type:"number",value:t,onChange:s=>p(s.target.value),placeholder:"Enter amount in GB",min:r,max:a,step:"1",className:"w-full px-3 py-2 border border-gray-300 rounded-md shadow-sm focus:outline-none focus:ring-blue-500 focus:border-blue-500 pr-12"}),e.jsx("div",{className:"absolute inset-y-0 right-0 pr-3 flex items-center pointer-events-none",children:e.jsx("span",{className:"text-gray-500 text-sm",children:"GB"})})]}),e.jsxs("p",{className:"text-xs text-gray-500 mt-1",children:["Enter the amount of data you want to add (",r," - ",a," GB, whole numbers)"]})]}),e.jsx("div",{className:"mb-6 p-4 bg-blue-50 rounded-lg border border-blue-200",children:e.jsxs("div",{className:"flex justify-between items-center",children:[e.jsxs("div",{children:[e.jsx("div",{className:"text-sm font-medium text-blue-900",children:t&&!Number.isNaN(Number.parseInt(t,10))?`${t} GB`:"0 GB"}),e.jsxs("div",{className:"text-xs text-blue-700",children:["= ",f()," MB"]})]}),e.jsxs("div",{className:"text-right",children:[e.jsxs("div",{className:"text-lg font-bold text-blue-900",children:["\\u00a5",d().toLocaleString()]}),e.jsxs("div",{className:"text-xs text-blue-700",children:["(1GB = \\u00a5",c.toLocaleString(),")"]})]})]})}),!m()&&t&&e.jsx("div",{className:"mb-4 bg-red-50 border border-red-200 rounded-lg p-3",children:e.jsxs("div",{className:"flex items-center",children:[e.jsx(v,{className:"h-4 w-4 text-red-500 mr-2"}),e.jsxs("p",{className:"text-sm text-red-800",children:["Amount must be a whole number between ",r," GB and ",a," GB"]})]})}),e.jsxs("div",{className:"flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-3 space-y-3 space-y-reverse sm:space-y-0",children:[e.jsx("button",{type:"button",onClick:o,className:"w-full sm:w-auto px-4 py-2 border border-gray-300 rounded-md shadow-sm text-sm font-medium text-gray-700 bg-white hover:bg-gray-50 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-blue-500 disabled:opacity-50",children:"Back"}),e.jsxs("button",{type:"button",disabled:!m(),className:"w-full sm:w-auto px-4 py-2 border border-transparent rounded-md shadow-sm text-sm font-medium text-white bg-blue-600 hover:bg-blue-700 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-blue-500 disabled:opacity-50",children:["Top Up Now - \\u00a5",d().toLocaleString()]})]})]})]})})]})})}const I={title:"Features/Subscriptions/Sim/TopUpModal",component:y,parameters:{layout:"centered"}},n={args:{subscriptionId:123,onClose:l(),onSuccess:l(),onError:l()}};var u,x,b;n.parameters={...n.parameters,docs:{...(u=n.parameters)==null?void 0:u.docs,source:{originalSource:`{ + args: { + subscriptionId: 123, + onClose: fn(), + onSuccess: fn(), + onError: fn() + } +}`,...(b=(x=n.parameters)==null?void 0:x.docs)==null?void 0:b.source}}};const C=["Default"];export{n as Default,C as __namedExportsOrder,I as default}; diff --git a/apps/portal/public/storybook/assets/TruckIcon-C8f1NFCW.js b/apps/portal/public/storybook/assets/TruckIcon-C8f1NFCW.js new file mode 100644 index 00000000..62ba7613 --- /dev/null +++ b/apps/portal/public/storybook/assets/TruckIcon-C8f1NFCW.js @@ -0,0 +1 @@ +import{r as e}from"./index-JhL3uwfD.js";function n({title:r,titleId:a,...t},o){return e.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:o,"aria-labelledby":a},t),r?e.createElement("title",{id:a},r):null,e.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M8.25 18.75a1.5 1.5 0 0 1-3 0m3 0a1.5 1.5 0 0 0-3 0m3 0h6m-9 0H3.375a1.125 1.125 0 0 1-1.125-1.125V14.25m17.25 4.5a1.5 1.5 0 0 1-3 0m3 0a1.5 1.5 0 0 0-3 0m3 0h1.125c.621 0 1.129-.504 1.09-1.124a17.902 17.902 0 0 0-3.213-9.193 2.056 2.056 0 0 0-1.58-.86H14.25M16.5 18.75h-2.25m0-11.177v-.958c0-.568-.422-1.048-.987-1.106a48.554 48.554 0 0 0-10.026 0 1.106 1.106 0 0 0-.987 1.106v7.635m12-6.677v6.677m0 4.5v-4.5m0 0h-12"}))}const c=e.forwardRef(n);export{c as F}; diff --git a/apps/portal/public/storybook/assets/TrustStrip.stories-DSpC9tt5.js b/apps/portal/public/storybook/assets/TrustStrip.stories-DSpC9tt5.js new file mode 100644 index 00000000..072a6da9 --- /dev/null +++ b/apps/portal/public/storybook/assets/TrustStrip.stories-DSpC9tt5.js @@ -0,0 +1 @@ +import{j as d}from"./jsx-runtime-D_zvdyIk.js";import{r as K}from"./index-JhL3uwfD.js";import{c as ue}from"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import{c as ce,V as fe,d as me,h as pe,e as de,p as he,r as ge,f as ye,g as ne,j as se,k as xe,l as Ae,n as Se,o as ve,s as be,q as Ee,t as Ve,v as Me,S as je,H as Te,w as L,x as Ne,y as we,z as De,A as Ce,m as Oe}from"./proxy-ZkTvaR74.js";import{u as Ie}from"./use-in-view-Du9cy_vv.js";import{C as Fe}from"./clock-C92s7kSC.js";import{G as Ge}from"./globe-Bhk-JDfS.js";import{U as Re}from"./users-BK0QOT9j.js";import{C as ke}from"./credit-card-AndvzjKW.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./createLucideIcon-CctB0W3q.js";const Ke=(e,t,n)=>{const s=t-e;return((n-e)%s+s)%s+e};function re(e,t){return ce(e)?e[Ke(0,e.length,t)]:e}class Le{constructor(t){this.stop=()=>this.runAll("stop"),this.animations=t.filter(Boolean)}get finished(){return Promise.all(this.animations.map(t=>t.finished))}getAll(t){return this.animations[0][t]}setAll(t,n){for(let s=0;ss.attachTimeline(t));return()=>{n.forEach((s,r)=>{s&&s(),this.animations[r].stop()})}}get time(){return this.getAll("time")}set time(t){this.setAll("time",t)}get speed(){return this.getAll("speed")}set speed(t){this.setAll("speed",t)}get state(){return this.getAll("state")}get startTime(){return this.getAll("startTime")}get duration(){return J(this.animations,"duration")}get iterationDuration(){return J(this.animations,"iterationDuration")}runAll(t){this.animations.forEach(n=>n[t]())}play(){this.runAll("play")}pause(){this.runAll("pause")}cancel(){this.runAll("cancel")}complete(){this.runAll("complete")}}function J(e,t){let n=0;for(let s=0;sn&&(n=r)}return n}class _e extends Le{then(t,n){return this.finished.finally(t).then(()=>{})}}function Be(e,t){return e in t}class Pe extends fe{constructor(){super(...arguments),this.type="object"}readValueFromInstance(t,n){if(Be(n,t)){const s=t[n];if(typeof s=="string"||typeof s=="number")return s}}getBaseTargetFromProps(){}removeValueFromRenderState(t,n){delete n.output[t]}measureInstanceViewportBox(){return me()}build(t,n){Object.assign(t.output,n)}renderInstance(t,{output:n}){Object.assign(t,n)}sortInstanceNodePosition(){return 0}}function Ue(){!pe.current&&de();const[e]=K.useState(he.current);return e}function B(e){return typeof e=="object"&&!Array.isArray(e)}function ie(e,t,n,s){return e==null?[]:typeof e=="string"&&B(t)?ge(e,n,s):e instanceof NodeList?Array.from(e):Array.isArray(e)?e.filter(r=>r!=null):[e]}function We(e,t,n){return e*(t+1)}function Y(e,t,n,s){return typeof t=="number"?t:t.startsWith("-")||t.startsWith("+")?Math.max(0,e+parseFloat(t)):t==="<"?n:t.startsWith("<")?Math.max(0,n+parseFloat(t.slice(1))):s.get(t)??e}function ze(e,t,n){for(let s=0;st&&r.at{const u=Xe(x),{delay:w=0,times:A=xe(u),type:_=t.type||"keyframes",repeat:F,repeatType:ft,repeatDelay:mt=0,...le}=T;let{ease:b=t.ease||"easeOut",duration:S}=T;const P=typeof w=="function"?w(V,N):w,U=u.length,W=ve(_)?_:r==null?void 0:r[_||"keyframes"];if(U<=2&&W){let D=100;if(U===2&&et(u)){const C=u[1]-u[0];D=Math.abs(C)}const G={...t,...le};S!==void 0&&(G.duration=be(S));const R=Ae(G,D,W);b=R.ease,S=R.duration}S??(S=c);const z=l+P;A.length===1&&A[0]===0&&(A[1]=1);const q=A.length-u.length;if(q>0&&Se(A,q),u.length===1&&u.unshift(null),F){S=We(S,F);const D=[...u],G=[...A];b=Array.isArray(b)?[...b]:[b];const R=[...b];for(let C=0;C{for(const E in M){const y=M[E];y.sort(Je);const p=[],h=[],j=[];for(let V=0;Vtypeof e=="number",et=e=>e.every($e);function tt(e){const t={presenceContext:null,props:{},visualState:{renderState:{transform:{},transformOrigin:{},style:{},vars:{},attrs:{}},latestValues:{}}},n=Ve(e)&&!Me(e)?new je(t):new Te(t);n.mount(e),L.set(e,n)}function nt(e){const t={presenceContext:null,props:{},visualState:{renderState:{output:{}},latestValues:{}}},n=new Pe(t);n.mount(e),L.set(e,n)}function st(e,t){return se(e)||typeof e=="number"||typeof e=="string"&&!B(t)}function ae(e,t,n,s){const r=[];if(st(e,t))r.push(Ne(e,B(t)&&t.default||t,n&&(n.default||n)));else{if(e==null)return r;const c=ie(e,t,s),i=c.length;for(let o=0;o{if(Array.isArray(i)&&typeof i[0]=="function"){const o=i[0],a=De(0);return a.on("change",o),i.length===1?[a,[0,1]]:i.length===2?[a,[0,1],i[1]]:[a,i[1],i[2]]}return i});return Qe(r,t,n,{spring:Ce}).forEach(({keyframes:i,transition:o},a)=>{s.push(...ae(a,i,o))}),s}function it(e){return Array.isArray(e)&&e.some(Array.isArray)}function at(e={}){const{scope:t,reduceMotion:n}=e;function s(r,c,i){let o=[],a;if(it(r)){const{onComplete:m,...l}=c||{};typeof m=="function"&&(a=m),o=rt(r,n!==void 0?{reduceMotion:n,...l}:l,t)}else{const{onComplete:m,...l}=i||{};typeof m=="function"&&(a=m),o=ae(r,c,n!==void 0?{reduceMotion:n,...l}:l,t)}const f=new _e(o);return a&&f.finished.then(a),t&&(t.animations.push(f),f.finished.then(()=>{ne(t.animations,f)})),f}return s}const ot=at();function lt({start:e=0,end:t,duration:n=300,delay:s=0,enabled:r=!0}){const[c,i]=K.useState(e),o=Ue();return K.useEffect(()=>{if(!r){i(e);return}if(o){i(t);return}let a;const f=setTimeout(()=>{a=ot(e,t,{duration:n/1e3,ease:[0,0,.2,1],onUpdate:m=>{i(Math.round(m))}})},s);return()=>{clearTimeout(f),a==null||a.stop()}},[e,t,n,s,r,o]),c}const ut=new Intl.NumberFormat,Z=[{icon:Fe,kind:"animated",value:20,suffix:"+",label:"Years in Japan",delay:0},{icon:Ge,kind:"animated",value:100,suffix:"%",label:"English Support",delay:100},{icon:Re,kind:"animated",value:1e4,suffix:"+",label:"Customers Served",delay:200,formatter:e=>ut.format(e)},{icon:ke,kind:"static",text:"Foreign Cards",label:"Accepted"}];function ct({value:e,duration:t,enabled:n,delay:s,suffix:r,formatter:c}){const i=lt({end:e,duration:t,enabled:n,delay:s});return d.jsxs("span",{className:"text-3xl sm:text-4xl font-extrabold text-primary tabular-nums font-heading",children:[c?c(i):i,r]})}function oe(){const e=K.useRef(null),t=Ie(e,{once:!0,amount:.1});return d.jsxs(Oe.div,{ref:e,"aria-label":"Company statistics",initial:{opacity:0,y:32},animate:t?{opacity:1,y:0}:{opacity:0,y:32},transition:{duration:.7,ease:"easeOut"},className:"relative py-10 sm:py-12 overflow-hidden",children:[d.jsx("div",{className:"absolute inset-0 bg-gradient-to-r from-surface-sunken via-background to-info-bg/30"}),d.jsx("div",{className:"relative mx-auto max-w-6xl px-6 sm:px-10 lg:px-14",children:d.jsx("div",{className:"grid grid-cols-2 gap-8 sm:flex sm:justify-between sm:items-center",children:Z.map((n,s)=>d.jsxs("div",{className:ue("flex flex-col items-center text-center gap-3 sm:flex-1",s0,d=n&&n.length>0;return m?e.jsxs("div",{className:"flex items-start gap-2 text-red-600",children:[e.jsx(r,{className:"h-4 w-4 flex-shrink-0 mt-0.5"}),e.jsx("div",{className:"text-sm",children:s.map((a,t)=>e.jsx("div",{children:a},t))})]}):d?e.jsxs("div",{className:"flex items-start gap-2 text-amber-600",children:[e.jsx(r,{className:"h-4 w-4 flex-shrink-0 mt-0.5"}),e.jsx("div",{className:"text-sm",children:n.map((a,t)=>e.jsx("div",{children:a},t))})]}):i?e.jsxs("div",{className:"flex items-center gap-2 text-green-600",children:[e.jsx(l,{className:"h-4 w-4"}),e.jsx("span",{className:"text-sm font-medium",children:"Configuration complete"})]}):null}o.__docgenInfo={description:"",methods:[],displayName:"ValidationStatus",props:{errors:{required:!1,tsType:{name:"union",raw:"string[] | undefined",elements:[{name:"Array",elements:[{name:"string"}],raw:"string[]"},{name:"undefined"}]},description:""},warnings:{required:!1,tsType:{name:"union",raw:"string[] | undefined",elements:[{name:"Array",elements:[{name:"string"}],raw:"string[]"},{name:"undefined"}]},description:""},showSuccess:{required:!1,tsType:{name:"union",raw:"boolean | undefined",elements:[{name:"boolean"},{name:"undefined"}]},description:""}}};export{o as V}; diff --git a/apps/portal/public/storybook/assets/ValidationStatus.stories-B5CKE5IR.js b/apps/portal/public/storybook/assets/ValidationStatus.stories-B5CKE5IR.js new file mode 100644 index 00000000..37dc03d1 --- /dev/null +++ b/apps/portal/public/storybook/assets/ValidationStatus.stories-B5CKE5IR.js @@ -0,0 +1,19 @@ +import{V as y}from"./ValidationStatus-Dsgne9Qr.js";import"./jsx-runtime-D_zvdyIk.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./index-JhL3uwfD.js";import"./CheckCircleIcon-Dva35lTP.js";const q={title:"Features/Services/ConfigurationStep/ValidationStatus",component:y,parameters:{layout:"centered"}},r={args:{errors:["This field is required","Invalid format"]}},e={args:{errors:["Please select a payment method"]}},s={args:{warnings:["Address could not be verified","Consider upgrading your plan"]}},a={args:{showSuccess:!0}},o={args:{}};var t,n,c;r.parameters={...r.parameters,docs:{...(t=r.parameters)==null?void 0:t.docs,source:{originalSource:`{ + args: { + errors: ["This field is required", "Invalid format"] + } +}`,...(c=(n=r.parameters)==null?void 0:n.docs)==null?void 0:c.source}}};var i,d,u;e.parameters={...e.parameters,docs:{...(i=e.parameters)==null?void 0:i.docs,source:{originalSource:`{ + args: { + errors: ["Please select a payment method"] + } +}`,...(u=(d=e.parameters)==null?void 0:d.docs)==null?void 0:u.source}}};var m,p,g;s.parameters={...s.parameters,docs:{...(m=s.parameters)==null?void 0:m.docs,source:{originalSource:`{ + args: { + warnings: ["Address could not be verified", "Consider upgrading your plan"] + } +}`,...(g=(p=s.parameters)==null?void 0:p.docs)==null?void 0:g.source}}};var l,S,h;a.parameters={...a.parameters,docs:{...(l=a.parameters)==null?void 0:l.docs,source:{originalSource:`{ + args: { + showSuccess: true + } +}`,...(h=(S=a.parameters)==null?void 0:S.docs)==null?void 0:h.source}}};var f,W,v;o.parameters={...o.parameters,docs:{...(f=o.parameters)==null?void 0:f.docs,source:{originalSource:`{ + args: {} +}`,...(v=(W=o.parameters)==null?void 0:W.docs)==null?void 0:v.source}}};const x=["WithErrors","SingleError","WithWarnings","Success","NoStatus"];export{o as NoStatus,e as SingleError,a as Success,r as WithErrors,s as WithWarnings,x as __namedExportsOrder,q as default}; diff --git a/apps/portal/public/storybook/assets/VerificationCard.stories-B-cVK-j0.js b/apps/portal/public/storybook/assets/VerificationCard.stories-B-cVK-j0.js new file mode 100644 index 00000000..c28734d3 --- /dev/null +++ b/apps/portal/public/storybook/assets/VerificationCard.stories-B-cVK-j0.js @@ -0,0 +1,52 @@ +import{r as Q}from"./index-JhL3uwfD.js";import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{S as p}from"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import{A as V}from"./AlertBanner-Bnlyj1xc.js";import{B as x}from"./button-C8_cybvS.js";import{S as a}from"./status-pill-wWp9xkwA.js";import{a as u}from"./date-Csq1SWDU.js";import"./index-BKyvj4H5.js";import{F as P}from"./ShieldCheckIcon-BBoI5cMX.js";import"./cn-CDN07tui.js";import"./input-BbGJiz0K.js";import"./password-input-D4khGh8v.js";import"./createLucideIcon-CctB0W3q.js";import"./checkbox-DahUyQbt.js";import"./label-C25VH7yk.js";import"./error-message-DeFFz6H_.js";import"./index-DXhM58Yq.js";import"./ExclamationCircleIcon-jFfW0Ax_.js";import"./badge-BdMsasyi.js";import"./spinner-mU4XywER.js";import"./loading-overlay-DMJTiFny.js";import"./error-state-BSicqqE6.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./ArrowPathIcon-CZjG6RfV.js";import"./empty-state-DRUGJ9ip.js";import"./PlusIcon-DGufmf06.js";import"./inline-toast-DQJ-O9wc.js";import"./index-CNXKWNLp.js";import"./proxy-ZkTvaR74.js";import"./logo-f0fprTjz.js";import"./next-image-69WeRggt.js";import"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./Squares2X2Icon-BMQM_Wy1.js";import"./animated-container-DyAZ9gmw.js";import"./XCircleIcon-CiVBnngB.js";import"./InformationCircleIcon-Clz7d-56.js";import"./CheckCircleIcon-Dva35lTP.js";import"./next-link-BmD4fPSy.js";import"./date-CJlSVdaN.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";function E({status:r,isLoading:i}){if(i)return e.jsx(p,{className:"h-6 w-20"});switch(r){case"verified":return e.jsx(a,{label:"Verified",variant:"success"});case"pending":return e.jsx(a,{label:"Under Review",variant:"info"});case"rejected":return e.jsx(a,{label:"Action Needed",variant:"warning"});default:return e.jsx(a,{label:"Required for SIM",variant:"warning"})}}function M({data:r,status:i,isLoading:t}){return t?e.jsxs("div",{className:"space-y-3",children:[e.jsx(p,{className:"h-4 w-48"}),e.jsx(p,{className:"h-4 w-32"})]}):i==="verified"?e.jsxs("div",{className:"space-y-2",children:[e.jsx("p",{className:"text-sm text-muted-foreground",children:"Your identity has been verified. No further action is needed."}),(r==null?void 0:r.reviewedAt)&&e.jsxs("p",{className:"text-xs text-muted-foreground",children:["Verified on ",u(r.reviewedAt,{dateStyle:"medium"})]})]}):i==="pending"?e.jsxs("div",{className:"space-y-4",children:[e.jsx(V,{variant:"info",title:"Under review",size:"sm",elevated:!0,children:"Your residence card has been submitted. We'll verify it before activating SIM service."}),(r==null?void 0:r.submittedAt)&&e.jsxs("div",{className:"rounded-lg border border-border bg-muted/30 px-4 py-3",children:[e.jsx("div",{className:"text-xs font-medium text-muted-foreground uppercase tracking-wide",children:"Submission status"}),e.jsxs("div",{className:"mt-1 text-xs text-muted-foreground",children:["Submitted on ",u(r.submittedAt,{dateStyle:"medium"})]})]})]}):null}function Z({status:r,reviewerNotes:i}){return r==="rejected"?e.jsx(V,{variant:"warning",title:"Verification rejected",size:"sm",elevated:!0,children:e.jsxs("div",{className:"space-y-2",children:[i&&e.jsx("p",{children:i}),e.jsx("p",{children:"Please upload a new, clear photo or scan of your residence card."}),e.jsxs("ul",{className:"list-disc space-y-1 pl-5 text-sm text-muted-foreground",children:[e.jsx("li",{children:"Make sure all text is readable and the full card is visible."}),e.jsx("li",{children:"Avoid glare/reflections and blurry photos."}),e.jsx("li",{children:"Maximum file size: 5MB."})]})]})}):e.jsx("p",{className:"text-sm text-muted-foreground",children:"Upload your residence card to activate SIM services. This is required for SIM orders."})}function I({submittedAt:r,reviewedAt:i}){return!r&&!i?null:e.jsxs("div",{className:"rounded-lg border border-border bg-muted/30 px-4 py-3",children:[e.jsx("div",{className:"text-xs font-medium text-muted-foreground uppercase tracking-wide",children:"Latest submission"}),r&&e.jsxs("div",{className:"mt-1 text-xs text-muted-foreground",children:["Submitted on ",u(r,{dateStyle:"medium"})]}),i&&e.jsxs("div",{className:"mt-1 text-xs text-muted-foreground",children:["Reviewed on ",u(i,{dateStyle:"medium"})]})]})}function z({fileUpload:r}){return r.canUpload?e.jsxs("div",{className:"space-y-3",children:[e.jsx("input",{ref:r.inputRef,type:"file",accept:"image/*,application/pdf",onChange:i=>{var t;return r.handleFileChange(((t=i.target.files)==null?void 0:t[0])??null)},className:"block w-full text-sm text-foreground file:mr-4 file:py-2 file:px-3 file:rounded-md file:border-0 file:text-sm file:font-medium file:bg-muted file:text-foreground hover:file:bg-muted/80"}),r.file&&e.jsxs("div",{className:"flex items-center justify-between gap-3 rounded-lg border border-border bg-muted/30 px-3 py-2",children:[e.jsxs("div",{className:"min-w-0",children:[e.jsx("div",{className:"text-xs font-medium text-muted-foreground",children:"Selected file"}),e.jsx("div",{className:"text-sm font-medium text-foreground truncate",children:r.file.name})]}),e.jsx(x,{type:"button",variant:"outline",size:"sm",onClick:r.clearFile,children:"Change"})]}),e.jsx("div",{className:"flex items-center justify-end",children:e.jsx(x,{type:"button",disabled:!r.file||r.isSubmitting,isLoading:r.isSubmitting,loadingText:"Uploading...",onClick:r.submit,children:"Submit Document"})}),r.isError&&e.jsx("p",{className:"text-sm text-destructive",children:r.error instanceof Error?r.error.message:"Failed to submit residence card."}),e.jsx("p",{className:"text-xs text-muted-foreground",children:"Accepted formats: JPG, PNG, or PDF (max 5MB). Make sure all text is readable."})]}):null}function B({data:r,status:i,fileUpload:t}){return i==="verified"||i==="pending"?null:e.jsxs("div",{className:"space-y-4",children:[e.jsx(Z,{status:i,reviewerNotes:r==null?void 0:r.reviewerNotes}),e.jsx(I,{submittedAt:r==null?void 0:r.submittedAt,reviewedAt:r==null?void 0:r.reviewedAt}),e.jsx(z,{fileUpload:t})]})}function k({verificationQuery:r,fileUpload:i}){var f;const t=(f=r.data)==null?void 0:f.status;return e.jsxs("div",{className:"bg-card text-card-foreground rounded-xl border border-border shadow-[var(--cp-shadow-1)]",children:[e.jsx("div",{className:"px-6 py-5 border-b border-border",children:e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsxs("div",{className:"flex items-center space-x-3",children:[e.jsx(P,{className:"h-6 w-6 text-primary"}),e.jsx("h2",{className:"text-xl font-semibold text-foreground",children:"Identity Verification"})]}),e.jsx(E,{status:t,isLoading:r.isLoading})]})}),e.jsxs("div",{className:"p-6",children:[e.jsx(M,{data:r.data,status:t,isLoading:r.isLoading}),!r.isLoading&&e.jsx(B,{data:r.data,status:t,fileUpload:i})]})]})}k.__docgenInfo={description:"",methods:[],displayName:"VerificationCard",props:{verificationQuery:{required:!0,tsType:{name:"UseQueryResult",elements:[{name:"z.infer",elements:[{name:"residenceCardVerificationSchema"}],raw:"z.infer"},{name:"Error"}],raw:"UseQueryResult"},description:""},fileUpload:{required:!0,tsType:{name:"ReturnType",elements:[{name:"useVerificationFileUpload"}],raw:"ReturnType"},description:""}}};const m={canUpload:!1,file:null,isSubmitting:!1,isError:!1,error:null,inputRef:Q.createRef(),handleFileChange:()=>{},clearFile:()=>{},submit:()=>{}},L={...m,canUpload:!0};function s(r={}){return{data:void 0,error:null,isLoading:!1,isError:!1,isSuccess:!1,isPending:!1,isFetching:!1,isRefetching:!1,status:"success",fetchStatus:"idle",dataUpdatedAt:0,errorUpdatedAt:0,failureCount:0,failureReason:null,errorUpdateCount:0,isFetched:!0,isFetchedAfterMount:!0,isInitialLoading:!1,isLoadingError:!1,isPlaceholderData:!1,isRefetchError:!1,isStale:!1,refetch:async()=>({}),promise:Promise.resolve({}),...r}}const ke={title:"Features/Account/VerificationCard",component:k,parameters:{layout:"padded"}},n={args:{verificationQuery:s({isLoading:!0,data:void 0}),fileUpload:m}},o={args:{verificationQuery:s({data:{status:"verified",submittedAt:"2025-01-10T12:00:00Z",reviewedAt:"2025-01-12T09:30:00Z",reviewerNotes:null}}),fileUpload:m}},d={args:{verificationQuery:s({data:{status:"pending",submittedAt:"2025-02-01T08:00:00Z",reviewedAt:null,reviewerNotes:null}}),fileUpload:m}},l={args:{verificationQuery:s({data:{status:"rejected",submittedAt:"2025-01-15T10:00:00Z",reviewedAt:"2025-01-17T14:00:00Z",reviewerNotes:"The photo is too blurry. Please upload a clearer image."}}),fileUpload:L}},c={args:{verificationQuery:s({data:void 0}),fileUpload:L}};var g,v,h;n.parameters={...n.parameters,docs:{...(g=n.parameters)==null?void 0:g.docs,source:{originalSource:`{ + args: { + verificationQuery: makeQuery({ + isLoading: true, + data: undefined + }), + fileUpload: noopFileUpload as never + } +}`,...(h=(v=n.parameters)==null?void 0:v.docs)==null?void 0:h.source}}};var b,j,y;o.parameters={...o.parameters,docs:{...(b=o.parameters)==null?void 0:b.docs,source:{originalSource:`{ + args: { + verificationQuery: makeQuery({ + data: { + status: "verified", + submittedAt: "2025-01-10T12:00:00Z", + reviewedAt: "2025-01-12T09:30:00Z", + reviewerNotes: null + } + }), + fileUpload: noopFileUpload as never + } +}`,...(y=(j=o.parameters)==null?void 0:j.docs)==null?void 0:y.source}}};var N,w,S;d.parameters={...d.parameters,docs:{...(N=d.parameters)==null?void 0:N.docs,source:{originalSource:`{ + args: { + verificationQuery: makeQuery({ + data: { + status: "pending", + submittedAt: "2025-02-01T08:00:00Z", + reviewedAt: null, + reviewerNotes: null + } + }), + fileUpload: noopFileUpload as never + } +}`,...(S=(w=d.parameters)==null?void 0:w.docs)==null?void 0:S.source}}};var A,U,F;l.parameters={...l.parameters,docs:{...(A=l.parameters)==null?void 0:A.docs,source:{originalSource:`{ + args: { + verificationQuery: makeQuery({ + data: { + status: "rejected", + submittedAt: "2025-01-15T10:00:00Z", + reviewedAt: "2025-01-17T14:00:00Z", + reviewerNotes: "The photo is too blurry. Please upload a clearer image." + } + }), + fileUpload: uploadableFileUpload as never + } +}`,...(F=(U=l.parameters)==null?void 0:U.docs)==null?void 0:F.source}}};var R,T,C;c.parameters={...c.parameters,docs:{...(R=c.parameters)==null?void 0:R.docs,source:{originalSource:`{ + args: { + verificationQuery: makeQuery({ + data: undefined + }), + fileUpload: uploadableFileUpload as never + } +}`,...(C=(T=c.parameters)==null?void 0:T.docs)==null?void 0:C.source}}};const Le=["Loading","Verified","Pending","Rejected","NotSubmitted"];export{n as Loading,c as NotSubmitted,d as Pending,l as Rejected,o as Verified,Le as __namedExportsOrder,ke as default}; diff --git a/apps/portal/public/storybook/assets/VpnPlanCard-B5Xn3--e.js b/apps/portal/public/storybook/assets/VpnPlanCard-B5Xn3--e.js new file mode 100644 index 00000000..3ab6592c --- /dev/null +++ b/apps/portal/public/storybook/assets/VpnPlanCard-B5Xn3--e.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import"./DataTable-COYdcx41.js";import"./FormField-C0UylACv.js";import"./OtpInput-6kd_2E0v.js";import"./OtpExpiryDisplay-BGgB7Tk6.js";import"./SearchFilterBar-Ds19v0-P.js";import"./PaginationBar-D_k7ztRb.js";import"./DetailHeader-C0ZsoM39.js";import"./AlertBanner-Bnlyj1xc.js";import"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import"./error-state-BSicqqE6.js";import"./index-BKyvj4H5.js";import"./SectionHeader-Bo81Whai.js";import"./ProgressSteps-weVdXcqu.js";import"./SubCard-1OZIPgEM.js";import{A as o}from"./AnimatedCard-DFAiX4zP.js";import"./ServiceCard-BJEHFLba.js";import"./SummaryStats-D6b7Am-p.js";import"./FilterDropdown-CUU04WmN.js";import"./ClearFiltersButton-CPCoyXk2.js";import"./DetailStatsGrid-CDkKTM-B.js";import"./SectionCard-BcUjc-7N.js";import"./MetricCard-BR1xVIXz.js";import"./BackLink-C5IY6wzy.js";import"./status-badge-5pzxe45J.js";import"./error-boundary-DIRO_cDI.js";import"./error-fallbacks-kSPsNxmV.js";import{B as a}from"./button-C8_cybvS.js";import{G as i}from"./globe-Bhk-JDfS.js";import{C as m}from"./check-DmNqM64J.js";import{A as l}from"./arrow-right-BNMAry-H.js";const n=["Secure VPN connection","Pre-configured router","Easy plug & play setup","English support included"];function d({plan:r}){return e.jsxs(o,{className:"overflow-hidden border border-border hover:border-primary/30 transition-all duration-300 hover:shadow-md flex flex-col h-full bg-card",children:[e.jsx("div",{className:"h-0.5 w-full bg-gradient-to-r from-violet-500 to-purple-600"}),e.jsxs("div",{className:"p-5 flex flex-col h-full",children:[e.jsx("div",{className:"flex items-start justify-between mb-4",children:e.jsxs("div",{className:"flex items-start gap-3",children:[e.jsx("div",{className:"p-2 bg-violet-500/10 rounded-lg",children:e.jsx(i,{className:"h-5 w-5 text-violet-600"})}),e.jsxs("div",{children:[e.jsx("h3",{className:"text-base font-bold text-foreground",children:r.name}),e.jsx("span",{className:"text-xs text-muted-foreground",children:"International"})]})]})}),e.jsxs("div",{className:"mb-4",children:[e.jsxs("div",{className:"flex items-baseline gap-0.5",children:[e.jsx("span",{className:"text-xs text-primary font-medium",children:"¥"}),e.jsx("span",{className:"text-2xl font-bold text-foreground",children:(r.monthlyPrice??0).toLocaleString()}),e.jsx("span",{className:"text-xs text-muted-foreground",children:"/month"})]}),e.jsx("p",{className:"text-[11px] text-muted-foreground mt-0.5",children:"Router rental included"})]}),e.jsx("ul",{className:"space-y-2 mb-5 flex-grow",children:n.map((t,s)=>e.jsxs("li",{className:"flex items-start gap-2 text-xs",children:[e.jsx(m,{className:"h-3.5 w-3.5 text-primary/60 flex-shrink-0 mt-0.5"}),e.jsx("span",{className:"text-muted-foreground",children:t})]},s))}),e.jsx("div",{className:"mt-auto",children:e.jsxs(a,{as:"a",href:`/order?type=vpn&planSku=${encodeURIComponent(r.sku)}`,className:"w-full",size:"sm",rightIcon:e.jsx(l,{className:"w-3.5 h-3.5"}),children:["Select ",r.name]})})]})]})}d.__docgenInfo={description:"",methods:[],displayName:"VpnPlanCard",props:{plan:{required:!0,tsType:{name:"z.infer",elements:[{name:"vpnCatalogProductSchema"}],raw:"z.infer"},description:""}}};export{d as V}; diff --git a/apps/portal/public/storybook/assets/VpnPlanCard.stories-CVRnm0HA.js b/apps/portal/public/storybook/assets/VpnPlanCard.stories-CVRnm0HA.js new file mode 100644 index 00000000..3178b9f8 --- /dev/null +++ b/apps/portal/public/storybook/assets/VpnPlanCard.stories-CVRnm0HA.js @@ -0,0 +1,27 @@ +import{V as e}from"./VpnPlanCard-B5Xn3--e.js";import"./jsx-runtime-D_zvdyIk.js";import"./DataTable-COYdcx41.js";import"./empty-state-DRUGJ9ip.js";import"./button-C8_cybvS.js";import"./index-JhL3uwfD.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./spinner-mU4XywER.js";import"./PlusIcon-DGufmf06.js";import"./ChevronRightIcon-CMQWsJeW.js";import"./FormField-C0UylACv.js";import"./label-C25VH7yk.js";import"./input-BbGJiz0K.js";import"./error-message-DeFFz6H_.js";import"./ExclamationCircleIcon-jFfW0Ax_.js";import"./OtpInput-6kd_2E0v.js";import"./input-otp-Cin9-T84.js";import"./createLucideIcon-CctB0W3q.js";import"./OtpExpiryDisplay-BGgB7Tk6.js";import"./clock-C92s7kSC.js";import"./SearchFilterBar-Ds19v0-P.js";import"./FunnelIcon-8nhbwqu0.js";import"./XMarkIcon-Bsb1W5VN.js";import"./PaginationBar-D_k7ztRb.js";import"./DetailHeader-C0ZsoM39.js";import"./status-pill-wWp9xkwA.js";import"./AlertBanner-Bnlyj1xc.js";import"./XCircleIcon-CiVBnngB.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./InformationCircleIcon-Clz7d-56.js";import"./CheckCircleIcon-Dva35lTP.js";import"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import"./password-input-D4khGh8v.js";import"./checkbox-DahUyQbt.js";import"./badge-BdMsasyi.js";import"./loading-overlay-DMJTiFny.js";import"./error-state-BSicqqE6.js";import"./ArrowPathIcon-CZjG6RfV.js";import"./inline-toast-DQJ-O9wc.js";import"./index-CNXKWNLp.js";import"./proxy-ZkTvaR74.js";import"./logo-f0fprTjz.js";import"./next-image-69WeRggt.js";import"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./Squares2X2Icon-BMQM_Wy1.js";import"./animated-container-DyAZ9gmw.js";import"./SectionHeader-Bo81Whai.js";import"./ProgressSteps-weVdXcqu.js";import"./SubCard-1OZIPgEM.js";import"./AnimatedCard-DFAiX4zP.js";import"./ServiceCard-BJEHFLba.js";import"./arrow-right-BNMAry-H.js";import"./SummaryStats-D6b7Am-p.js";import"./FilterDropdown-CUU04WmN.js";import"./ClearFiltersButton-CPCoyXk2.js";import"./DetailStatsGrid-CDkKTM-B.js";import"./SectionCard-BcUjc-7N.js";import"./MetricCard-BR1xVIXz.js";import"./BackLink-C5IY6wzy.js";import"./ArrowLeftIcon-Cw1eswTb.js";import"./status-badge-5pzxe45J.js";import"./error-boundary-DIRO_cDI.js";import"./error-fallbacks-kSPsNxmV.js";import"./globe-Bhk-JDfS.js";import"./check-DmNqM64J.js";const Tr={title:"Features/Services/VPN/VpnPlanCard",component:e,parameters:{layout:"centered"}},r={args:{plan:{id:"vpn-1",sku:"VPN-US",name:"US (San Francisco)",monthlyPrice:2500,unitPrice:2500,oneTimePrice:0,billingCycle:"Monthly",catalogMetadata:{}}}},t={args:{plan:{id:"vpn-2",sku:"VPN-UK",name:"UK (London)",monthlyPrice:2500,unitPrice:2500,oneTimePrice:0,billingCycle:"Monthly",catalogMetadata:{}}}};var o,i,m;r.parameters={...r.parameters,docs:{...(o=r.parameters)==null?void 0:o.docs,source:{originalSource:`{ + args: { + plan: { + id: "vpn-1", + sku: "VPN-US", + name: "US (San Francisco)", + monthlyPrice: 2500, + unitPrice: 2500, + oneTimePrice: 0, + billingCycle: "Monthly" as const, + catalogMetadata: {} + } + } +}`,...(m=(i=r.parameters)==null?void 0:i.docs)==null?void 0:m.source}}};var p,n,a;t.parameters={...t.parameters,docs:{...(p=t.parameters)==null?void 0:p.docs,source:{originalSource:`{ + args: { + plan: { + id: "vpn-2", + sku: "VPN-UK", + name: "UK (London)", + monthlyPrice: 2500, + unitPrice: 2500, + oneTimePrice: 0, + billingCycle: "Monthly" as const, + catalogMetadata: {} + } + } +}`,...(a=(n=t.parameters)==null?void 0:n.docs)==null?void 0:a.source}}};const Fr=["UsPlan","UkPlan"];export{t as UkPlan,r as UsPlan,Fr as __namedExportsOrder,Tr as default}; diff --git a/apps/portal/public/storybook/assets/VpnPlansContent.stories-CAnr4IUa.js b/apps/portal/public/storybook/assets/VpnPlansContent.stories-CAnr4IUa.js new file mode 100644 index 00000000..db1228c0 --- /dev/null +++ b/apps/portal/public/storybook/assets/VpnPlansContent.stories-CAnr4IUa.js @@ -0,0 +1,71 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{S as z}from"./ServicesHero-BxvrExEF.js";import{S as t}from"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import{B as E}from"./button-C8_cybvS.js";import{A as M}from"./AlertBanner-Bnlyj1xc.js";import{B as h}from"./BackLink-C5IY6wzy.js";import{u as H}from"./useServicesBasePath-Cd3sXgEE.js";import{S as R}from"./ServiceHighlights-BOQJA3wz.js";import{H as W}from"./HowItWorks-CdRnFIF-.js";import{S as O}from"./ServiceCTA-CNjQQIZn.js";import{S as D}from"./ServiceFAQ-DgotQw6I.js";import{V as K}from"./VpnPlanCard-B5Xn3--e.js";import{c as a}from"./createLucideIcon-CctB0W3q.js";import{G as q}from"./globe-Bhk-JDfS.js";import{W as $}from"./wifi-Df9jtwRo.js";import{A as Y}from"./arrow-left-DP07Iaeg.js";import{S as L}from"./shield-check-CusqZMaY.js";import{C as G}from"./credit-card-AndvzjKW.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./input-BbGJiz0K.js";import"./index-JhL3uwfD.js";import"./password-input-D4khGh8v.js";import"./checkbox-DahUyQbt.js";import"./label-C25VH7yk.js";import"./error-message-DeFFz6H_.js";import"./index-DXhM58Yq.js";import"./ExclamationCircleIcon-jFfW0Ax_.js";import"./status-pill-wWp9xkwA.js";import"./badge-BdMsasyi.js";import"./spinner-mU4XywER.js";import"./loading-overlay-DMJTiFny.js";import"./error-state-BSicqqE6.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./ArrowPathIcon-CZjG6RfV.js";import"./empty-state-DRUGJ9ip.js";import"./PlusIcon-DGufmf06.js";import"./inline-toast-DQJ-O9wc.js";import"./index-CNXKWNLp.js";import"./proxy-ZkTvaR74.js";import"./logo-f0fprTjz.js";import"./next-image-69WeRggt.js";import"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./Squares2X2Icon-BMQM_Wy1.js";import"./animated-container-DyAZ9gmw.js";import"./next-link-BmD4fPSy.js";import"./XCircleIcon-CiVBnngB.js";import"./InformationCircleIcon-Clz7d-56.js";import"./CheckCircleIcon-Dva35lTP.js";import"./ArrowLeftIcon-Cw1eswTb.js";import"./next-navigation-FtRxULo3.js";import"./arrow-right-BNMAry-H.js";import"./sparkles-q054t7ye.js";import"./chevron-down-CuGyZVZ6.js";import"./DataTable-COYdcx41.js";import"./ChevronRightIcon-CMQWsJeW.js";import"./FormField-C0UylACv.js";import"./OtpInput-6kd_2E0v.js";import"./input-otp-Cin9-T84.js";import"./OtpExpiryDisplay-BGgB7Tk6.js";import"./clock-C92s7kSC.js";import"./SearchFilterBar-Ds19v0-P.js";import"./FunnelIcon-8nhbwqu0.js";import"./XMarkIcon-Bsb1W5VN.js";import"./PaginationBar-D_k7ztRb.js";import"./DetailHeader-C0ZsoM39.js";import"./SectionHeader-Bo81Whai.js";import"./ProgressSteps-weVdXcqu.js";import"./SubCard-1OZIPgEM.js";import"./AnimatedCard-DFAiX4zP.js";import"./ServiceCard-BJEHFLba.js";import"./SummaryStats-D6b7Am-p.js";import"./FilterDropdown-CUU04WmN.js";import"./ClearFiltersButton-CPCoyXk2.js";import"./DetailStatsGrid-CDkKTM-B.js";import"./SectionCard-BcUjc-7N.js";import"./MetricCard-BR1xVIXz.js";import"./status-badge-5pzxe45J.js";import"./error-boundary-DIRO_cDI.js";import"./error-fallbacks-kSPsNxmV.js";import"./check-DmNqM64J.js";/** + * @license lucide-react v0.563.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const Q=[["path",{d:"M3 14h3a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-7a9 9 0 0 1 18 0v7a2 2 0 0 1-2 2h-1a2 2 0 0 1-2-2v-3a2 2 0 0 1 2-2h3",key:"1xhozi"}]],Z=a("headphones",Q);/** + * @license lucide-react v0.563.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const J=[["path",{d:"M15.033 9.44a.647.647 0 0 1 0 1.12l-4.065 2.352a.645.645 0 0 1-.968-.56V7.648a.645.645 0 0 1 .967-.56z",key:"vbtd3f"}],["path",{d:"M12 17v4",key:"1riwvh"}],["path",{d:"M8 21h8",key:"1ev6f3"}],["rect",{x:"2",y:"3",width:"20",height:"14",rx:"2",key:"x3v2xh"}]],X=a("monitor-play",J);/** + * @license lucide-react v0.563.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const ee=[["path",{d:"M11 21.73a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73z",key:"1a0edw"}],["path",{d:"M12 22V12",key:"d0xqtd"}],["polyline",{points:"3.29 7 12 12 20.71 7",key:"ousv84"}],["path",{d:"m7.5 4.27 9 5.15",key:"1c824w"}]],_=a("package",ee);/** + * @license lucide-react v0.563.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const te=[["path",{d:"M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z",key:"10ikf1"}]],re=a("play",te);/** + * @license lucide-react v0.563.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const ae=[["rect",{width:"20",height:"8",x:"2",y:"14",rx:"2",key:"w68u3i"}],["path",{d:"M6.01 18H6",key:"19vcac"}],["path",{d:"M10.01 18H10",key:"uamcmx"}],["path",{d:"M15 10v4",key:"qjz1xs"}],["path",{d:"M17.84 7.17a4 4 0 0 0-5.66 0",key:"1rif40"}],["path",{d:"M20.66 4.34a8 8 0 0 0-11.31 0",key:"6a5xfq"}]],oe=a("router",ae);/** + * @license lucide-react v0.563.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const se=[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z",key:"1xq2db"}]],ie=a("zap",se),ne=[{icon:e.jsx(oe,{className:"h-6 w-6"}),title:"Pre-configured Router",description:"Ready to use out of the box — just plug in and connect",highlight:"Plug & play"},{icon:e.jsx(q,{className:"h-6 w-6"}),title:"US & UK Servers",description:"Access content from San Francisco or London regions",highlight:"2 locations"},{icon:e.jsx(X,{className:"h-6 w-6"}),title:"Streaming Ready",description:"Works with Apple TV, Roku, Amazon Fire, and more",highlight:"All devices"},{icon:e.jsx($,{className:"h-6 w-6"}),title:"Separate Network",description:"VPN runs on dedicated WiFi, keep regular internet normal",highlight:"No interference"},{icon:e.jsx(_,{className:"h-6 w-6"}),title:"Router Rental Included",description:"No equipment purchase — router rental is part of the plan",highlight:"No hidden costs"},{icon:e.jsx(Z,{className:"h-6 w-6"}),title:"English Support",description:"Full English assistance for setup and troubleshooting",highlight:"Dedicated help"}],ce=[{icon:e.jsx(G,{className:"h-6 w-6"}),title:"Sign Up",description:"Create your account to get started"},{icon:e.jsx(q,{className:"h-6 w-6"}),title:"Choose Region",description:"Select US (San Francisco) or UK (London)"},{icon:e.jsx(_,{className:"h-6 w-6"}),title:"Place Order",description:"Complete checkout and receive router"},{icon:e.jsx(re,{className:"h-6 w-6"}),title:"Connect & Stream",description:"Plug in, connect devices, enjoy"}],le=[{question:"Which streaming services can I access?",answer:"Our VPN establishes a network connection that virtually locates you in the designated server location (US or UK). This can help access region-specific content on services like Netflix, Hulu, BBC iPlayer, and others. However, not all services can be unblocked, and we cannot guarantee access to any specific streaming platform."},{question:"How fast is the VPN connection?",answer:"The VPN connection speed depends on your existing internet connection. For HD streaming, we recommend at least 10Mbps download speed. The VPN router is optimized for streaming and should provide smooth playback for most content."},{question:"Can I use multiple devices at once?",answer:"Yes! Any device connected to the VPN router's WiFi network will be routed through the VPN. This includes smart TVs, streaming boxes, gaming consoles, and more. Your regular internet devices can stay on your normal WiFi."},{question:"What happens if I need help with setup?",answer:"We provide full English support for setup and troubleshooting. The router comes pre-configured, so most users just need to plug it in. If you encounter any issues, our support team can assist via email or phone."},{question:"Is there a contract or commitment period?",answer:"The VPN service is a monthly rental with no long-term contract required. You can cancel at any time. The one-time activation fee covers initial setup and router preparation."}];function me({servicesBasePath:r}){return e.jsxs("div",{className:"max-w-5xl mx-auto px-4 pb-16 pt-6",children:[e.jsx(h,{href:r,label:"Back to Services"}),e.jsxs("div",{className:"text-center mb-10 pt-6",children:[e.jsx(t,{className:"h-8 w-72 mx-auto mb-3"}),e.jsx(t,{className:"h-5 w-96 max-w-full mx-auto"})]}),e.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-5 max-w-3xl mx-auto",children:Array.from({length:2}).map((l,o)=>e.jsxs("div",{className:"bg-card rounded-xl border border-border p-5",children:[e.jsxs("div",{className:"flex items-start gap-3 mb-4",children:[e.jsx(t,{className:"h-10 w-10 rounded-lg"}),e.jsxs("div",{className:"flex-1",children:[e.jsx(t,{className:"h-5 w-28 mb-1.5"}),e.jsx(t,{className:"h-3.5 w-20"})]})]}),e.jsx(t,{className:"h-7 w-32 mb-4"}),e.jsx("div",{className:"space-y-2 mb-5",children:Array.from({length:4}).map((s,i)=>e.jsx(t,{className:"h-3.5 w-full"},i))}),e.jsx(t,{className:"h-9 w-full rounded-md"})]},o))})]})}function pe({plans:r,activationFees:l,servicesBasePath:o}){return r.length===0?e.jsxs("div",{className:"text-center py-10",children:[e.jsx(L,{className:"h-10 w-10 text-muted-foreground mx-auto mb-3"}),e.jsx("h3",{className:"text-base font-medium text-foreground mb-1.5",children:"No VPN Plans Available"}),e.jsx("p",{className:"text-sm text-muted-foreground mb-5",children:"We couldn't find any VPN plans available at this time."}),e.jsx(h,{href:o,label:"Back to Services",align:"center",className:"mt-4 mb-0"})]}):e.jsxs("section",{id:"plans",className:"animate-in fade-in slide-in-from-bottom-8 duration-700",style:{animationDelay:"500ms"},children:[e.jsxs("div",{className:"text-center mb-5",children:[e.jsx("p",{className:"text-xs font-semibold text-primary uppercase tracking-wider mb-1.5",children:"Choose Your Region"}),e.jsx("h2",{className:"text-xl sm:text-2xl font-bold leading-tight tracking-tight text-foreground",children:"Available Plans"}),e.jsx("p",{className:"text-xs text-muted-foreground mt-1.5",children:"Select one region per router rental"})]}),e.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-5 max-w-3xl mx-auto",children:r.map(s=>e.jsx(K,{plan:s},s.id))}),l.length>0&&e.jsx(M,{variant:"info",className:"mt-5 max-w-3xl mx-auto",title:"Activation Fee",children:"A one-time activation fee of ¥3,000 applies per router rental. Tax (10%) not included."})]})}function I({variant:r,plans:l,activationFees:o,isLoading:s,error:i}){const n=H();if(s)return e.jsx(me,{servicesBasePath:n});if(i){const x=i instanceof Error?i.message:"An unexpected error occurred";return e.jsxs("div",{className:"max-w-5xl mx-auto px-4 pb-16 pt-6",children:[e.jsx(h,{href:n,label:"Back to Services"}),e.jsxs("div",{className:"rounded-xl bg-destructive/10 border border-destructive/20 p-8 text-center mt-6",children:[e.jsx("div",{className:"text-destructive font-medium text-lg mb-2",children:"Failed to load VPN plans"}),e.jsx("div",{className:"text-destructive/80 text-sm mb-6",children:x}),e.jsx(E,{as:"a",href:n,leftIcon:e.jsx(Y,{className:"w-4 h-4"}),children:"Back to Services"})]})]})}return e.jsxs("div",{className:"space-y-8 pb-16",children:[e.jsx(h,{href:n,label:"Back to Services"}),e.jsx(z,{title:"Stream Content from Abroad",description:"Access US and UK streaming services using a pre-configured VPN router. No technical setup required.",eyebrow:e.jsxs("span",{className:"inline-flex items-center gap-1.5 rounded-full bg-violet-500/10 border border-violet-500/15 px-3 py-1 text-xs text-violet-600 dark:text-violet-400 font-medium",children:[e.jsx(L,{className:"h-3.5 w-3.5"}),"VPN Router Service"]}),children:r==="public"&&e.jsx("div",{className:"flex justify-center",children:e.jsx("div",{className:"bg-success-soft border border-success/20 rounded-lg px-3 py-2",children:e.jsxs("div",{className:"flex items-center gap-1.5 justify-center",children:[e.jsx(ie,{className:"h-3.5 w-3.5 text-success flex-shrink-0"}),e.jsxs("p",{className:"text-xs text-foreground",children:[e.jsx("span",{className:"font-medium",children:"Order today"}),e.jsxs("span",{className:"text-muted-foreground",children:[" ","— create account, add payment, and your router ships upon confirmation."]})]})]})})})}),e.jsx(R,{features:ne}),e.jsx(pe,{plans:l,activationFees:o,servicesBasePath:n}),e.jsx(W,{steps:ce,eyebrow:"Simple Setup",title:"How It Works"}),r==="public"&&e.jsx(O,{eyebrow:"Get started today",headline:"Ready to unlock your content?",description:"Choose your region and get your pre-configured router shipped to you",primaryAction:{label:"View Plans",href:"#plans",onClick:x=>{var g;x.preventDefault(),(g=document.getElementById("plans"))==null||g.scrollIntoView({behavior:"smooth"})}}}),e.jsx(D,{items:le,eyebrow:"Common Questions",title:"Frequently Asked Questions"}),e.jsx(M,{variant:"warning",title:"Important Disclaimer",children:e.jsx("p",{className:"text-sm",children:"Content subscriptions are NOT included in the VPN package. Our VPN service establishes a network connection that virtually locates you in the designated server location. Not all services can be unblocked. We do not guarantee access to any specific website or streaming service quality."})}),e.jsx("div",{className:"text-center text-xs text-muted-foreground",children:e.jsx("p",{children:"All prices exclude 10% consumption tax."})})]})}I.__docgenInfo={description:"",methods:[],displayName:"VpnPlansContent",props:{variant:{required:!0,tsType:{name:"union",raw:'"public" | "account"',elements:[{name:"literal",value:'"public"'},{name:"literal",value:'"account"'}]},description:""},plans:{required:!0,tsType:{name:"Array",elements:[{name:"z.infer",elements:[{name:"vpnCatalogProductSchema"}],raw:"z.infer"}],raw:"VpnCatalogProduct[]"},description:""},activationFees:{required:!0,tsType:{name:"Array",elements:[{name:"z.infer",elements:[{name:"vpnCatalogProductSchema"}],raw:"z.infer"}],raw:"VpnCatalogProduct[]"},description:""},isLoading:{required:!0,tsType:{name:"boolean"},description:""},error:{required:!0,tsType:{name:"unknown"},description:""}}};const Ot={title:"Features/Services/VPN/VpnPlansContent",component:I,parameters:{layout:"fullscreen"}},B=[{id:"vpn-1",sku:"VPN-US",name:"US (San Francisco)",monthlyPrice:2500,unitPrice:2500,oneTimePrice:0,billingCycle:"Monthly",catalogMetadata:{}},{id:"vpn-2",sku:"VPN-UK",name:"UK (London)",monthlyPrice:2500,unitPrice:2500,oneTimePrice:0,billingCycle:"Monthly",catalogMetadata:{}}],U=[{id:"vpn-fee-1",sku:"VPN-ACTIVATION",name:"VPN Activation Fee",monthlyPrice:0,unitPrice:3e3,oneTimePrice:3e3,billingCycle:"OneTime",catalogMetadata:{}}],m={args:{variant:"public",plans:B,activationFees:U,isLoading:!1,error:null}},p={args:{variant:"account",plans:B,activationFees:U,isLoading:!1,error:null}},d={args:{variant:"public",plans:[],activationFees:[],isLoading:!0,error:null}},c={args:{variant:"public",plans:[],activationFees:[],isLoading:!1,error:new c("Failed to load VPN plans")}},u={args:{variant:"public",plans:[],activationFees:[],isLoading:!1,error:null}};var v,f,N;m.parameters={...m.parameters,docs:{...(v=m.parameters)==null?void 0:v.docs,source:{originalSource:`{ + args: { + variant: "public", + plans: mockPlans, + activationFees: mockActivationFees, + isLoading: false, + error: null + } +}`,...(N=(f=m.parameters)==null?void 0:f.docs)==null?void 0:N.source}}};var y,b,j;p.parameters={...p.parameters,docs:{...(y=p.parameters)==null?void 0:y.docs,source:{originalSource:`{ + args: { + variant: "account", + plans: mockPlans, + activationFees: mockActivationFees, + isLoading: false, + error: null + } +}`,...(j=(b=p.parameters)==null?void 0:b.docs)==null?void 0:j.source}}};var w,k,P;d.parameters={...d.parameters,docs:{...(w=d.parameters)==null?void 0:w.docs,source:{originalSource:`{ + args: { + variant: "public", + plans: [], + activationFees: [], + isLoading: true, + error: null + } +}`,...(P=(k=d.parameters)==null?void 0:k.docs)==null?void 0:P.source}}};var S,V,A;c.parameters={...c.parameters,docs:{...(S=c.parameters)==null?void 0:S.docs,source:{originalSource:`{ + args: { + variant: "public", + plans: [], + activationFees: [], + isLoading: false, + error: new Error("Failed to load VPN plans") + } +}`,...(A=(V=c.parameters)==null?void 0:V.docs)==null?void 0:A.source}}};var F,C,T;u.parameters={...u.parameters,docs:{...(F=u.parameters)==null?void 0:F.docs,source:{originalSource:`{ + args: { + variant: "public", + plans: [], + activationFees: [], + isLoading: false, + error: null + } +}`,...(T=(C=u.parameters)==null?void 0:C.docs)==null?void 0:T.source}}};const Dt=["Default","AccountVariant","Loading","Error","NoPlans"];export{p as AccountVariant,m as Default,c as Error,d as Loading,u as NoPlans,Dt as __namedExportsOrder,Ot as default}; diff --git a/apps/portal/public/storybook/assets/WhyUsSection.stories-D1s7CEcr.js b/apps/portal/public/storybook/assets/WhyUsSection.stories-D1s7CEcr.js new file mode 100644 index 00000000..cea05052 --- /dev/null +++ b/apps/portal/public/storybook/assets/WhyUsSection.stories-D1s7CEcr.js @@ -0,0 +1,6 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{r as l}from"./index-JhL3uwfD.js";import{I as d}from"./next-image-69WeRggt.js";import{L as m}from"./next-link-BmD4fPSy.js";import{u as p}from"./use-in-view-Du9cy_vv.js";import{m as x}from"./proxy-ZkTvaR74.js";import{c as u}from"./createLucideIcon-CctB0W3q.js";import{A as h}from"./arrow-right-BNMAry-H.js";/** + * @license lucide-react v0.563.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const g=[["path",{d:"M3.85 8.62a4 4 0 0 1 4.78-4.77 4 4 0 0 1 6.74 0 4 4 0 0 1 4.78 4.78 4 4 0 0 1 0 6.74 4 4 0 0 1-4.77 4.78 4 4 0 0 1-6.75 0 4 4 0 0 1-4.78-4.77 4 4 0 0 1 0-6.76Z",key:"3c2336"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]],f=u("badge-check",g),y=["Full English support, no Japanese needed","Foreign credit cards accepted","Bilingual contracts and documentation"];function i(){const a=l.useRef(null),c=p(a,{once:!0,amount:.1});return e.jsx(x.div,{ref:a,initial:{opacity:0,y:32},animate:c?{opacity:1,y:0}:{opacity:0,y:32},transition:{duration:.7,ease:"easeOut"},children:e.jsx("div",{className:"max-w-6xl mx-auto px-6 sm:px-10 lg:px-14 py-14 sm:py-16",children:e.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-2 gap-10 lg:gap-14 items-center",children:[e.jsx("div",{className:"relative w-full overflow-hidden rounded-2xl shadow-md border border-border/60 bg-card aspect-[3/2]",children:e.jsx(d,{src:"/assets/images/Why_us.png",alt:"Team collaborating with trust and excellence",fill:!0,className:"object-cover",sizes:"(max-width: 1024px) 100vw, 50vw"})}),e.jsxs("div",{className:"space-y-6",children:[e.jsxs("div",{children:[e.jsx("h2",{className:"text-2xl sm:text-3xl font-extrabold text-primary uppercase tracking-wide mb-3 font-heading",children:"Built on Trust and Excellence"}),e.jsx("p",{className:"text-xl sm:text-2xl font-semibold text-foreground leading-relaxed",children:"For over two decades, we've been helping foreigners, expats, and international businesses in Japan navigate the tech landscape with confidence."})]}),e.jsx("ul",{className:"space-y-3 text-foreground",children:y.map(t=>e.jsxs("li",{className:"flex items-center gap-3 text-base font-semibold",children:[e.jsx(f,{className:"h-5 w-5 text-primary"}),e.jsx("span",{children:t})]},t))}),e.jsxs(m,{href:"/about",className:"inline-flex items-center gap-2 text-primary font-semibold hover:text-primary/80 transition-colors",children:["About our company",e.jsx(h,{className:"h-4 w-4"})]})]})]})})})}i.__docgenInfo={description:"",methods:[],displayName:"WhyUsSection"};const E={title:"Features/LandingPage/WhyUsSection",component:i,parameters:{layout:"fullscreen"}},s={};var r,o,n;s.parameters={...s.parameters,docs:{...(r=s.parameters)==null?void 0:r.docs,source:{originalSource:"{}",...(n=(o=s.parameters)==null?void 0:o.docs)==null?void 0:n.source}}};const F=["Default"];export{s as Default,F as __namedExportsOrder,E as default}; diff --git a/apps/portal/public/storybook/assets/WifiIcon-BRIpHl8i.js b/apps/portal/public/storybook/assets/WifiIcon-BRIpHl8i.js new file mode 100644 index 00000000..f5f7d8fc --- /dev/null +++ b/apps/portal/public/storybook/assets/WifiIcon-BRIpHl8i.js @@ -0,0 +1 @@ +import{r as e}from"./index-JhL3uwfD.js";function a({title:r,titleId:t,...o},n){return e.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:n,"aria-labelledby":t},o),r?e.createElement("title",{id:t},r):null,e.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M8.288 15.038a5.25 5.25 0 0 1 7.424 0M5.106 11.856c3.807-3.808 9.98-3.808 13.788 0M1.924 8.674c5.565-5.565 14.587-5.565 20.152 0M12.53 18.22l-.53.53-.53-.53a.75.75 0 0 1 1.06 0Z"}))}const s=e.forwardRef(a);export{s as F}; diff --git a/apps/portal/public/storybook/assets/XCircleIcon-CiVBnngB.js b/apps/portal/public/storybook/assets/XCircleIcon-CiVBnngB.js new file mode 100644 index 00000000..3007dd6b --- /dev/null +++ b/apps/portal/public/storybook/assets/XCircleIcon-CiVBnngB.js @@ -0,0 +1 @@ +import{r as e}from"./index-JhL3uwfD.js";function a({title:r,titleId:t,...o},n){return e.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:n,"aria-labelledby":t},o),r?e.createElement("title",{id:t},r):null,e.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"m9.75 9.75 4.5 4.5m0-4.5-4.5 4.5M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z"}))}const s=e.forwardRef(a);export{s as F}; diff --git a/apps/portal/public/storybook/assets/XMarkIcon-Bsb1W5VN.js b/apps/portal/public/storybook/assets/XMarkIcon-Bsb1W5VN.js new file mode 100644 index 00000000..784a7be3 --- /dev/null +++ b/apps/portal/public/storybook/assets/XMarkIcon-Bsb1W5VN.js @@ -0,0 +1 @@ +import{r as e}from"./index-JhL3uwfD.js";function a({title:r,titleId:t,...o},n){return e.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:n,"aria-labelledby":t},o),r?e.createElement("title",{id:t},r):null,e.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M6 18 18 6M6 6l12 12"}))}const i=e.forwardRef(a);export{i as F}; diff --git a/apps/portal/public/storybook/assets/ZipCodeInput-C0pEKKnJ.js b/apps/portal/public/storybook/assets/ZipCodeInput-C0pEKKnJ.js new file mode 100644 index 00000000..85a7d616 --- /dev/null +++ b/apps/portal/public/storybook/assets/ZipCodeInput-C0pEKKnJ.js @@ -0,0 +1,11 @@ +import{j as i}from"./jsx-runtime-D_zvdyIk.js";import{r as c}from"./index-JhL3uwfD.js";import"./button-C8_cybvS.js";import{I as j}from"./input-BbGJiz0K.js";import"./password-input-D4khGh8v.js";import"./checkbox-DahUyQbt.js";import"./label-C25VH7yk.js";import"./error-message-DeFFz6H_.js";import"./status-pill-wWp9xkwA.js";import"./badge-BdMsasyi.js";import"./spinner-mU4XywER.js";import"./loading-overlay-DMJTiFny.js";import"./error-state-BSicqqE6.js";import"./empty-state-DRUGJ9ip.js";import"./inline-toast-DQJ-O9wc.js";import"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import"./logo-f0fprTjz.js";import"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./animated-container-DyAZ9gmw.js";import{F as E}from"./FormField-C0UylACv.js";import{c as $}from"./cn-CDN07tui.js";import{a as v,b as x,q as L}from"./index-BKyvj4H5.js";import"./countries-CY6LSu2r.js";import{u as V}from"./useQuery-tNNTAmfW.js";import{a as _}from"./schema-Cvvg7S_W.js";import{c as T}from"./createLucideIcon-CctB0W3q.js";import{C as z}from"./circle-check-big-Bab09Iah.js";import{S as D}from"./search-DSeV2urL.js";/** + * @license lucide-react v0.563.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const W=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]],B=T("circle-x",W);/** + * @license lucide-react v0.563.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const F=[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]],H=T("loader-circle",F);function J(e){const n=e.replace(/\D/g,"");return n.length<=3?n:n.length<=7?`${n.slice(0,3)}-${n.slice(3)}`:`${n.slice(0,3)}-${n.slice(3,7)}`}async function G(e){const n=e.replace(/-/g,""),t=await v.GET("/api/address/lookup/zip/{zipCode}",{params:{path:{zipCode:n}}}),a=x(t,"ZIP code lookup failed");return _.parse(a)}async function K(){const e=await v.GET("/api/address/status");return x(e,"Failed to check address service status")}const M={lookupByZipCode:G,getStatus:K};function A(e,n){const t=(e==null?void 0:e.replace(/-/g,""))??"",a=/^\d{7}$/.test(t);return V({queryKey:L.address.zipLookup(t),queryFn:()=>M.lookupByZipCode(t),enabled:!!e&&a,staleTime:300*1e3,retry:(r,s)=>s.message.includes("404")||s.message.includes("not found")?!1:r<2,...n})}function O(e,n,t){return e?i.jsx(H,{className:"h-4 w-4 animate-spin text-muted-foreground"}):n&&t?t.count>0?i.jsx(z,{className:"h-4 w-4 text-success"}):i.jsx(B,{className:"h-4 w-4 text-warning"}):i.jsx(D,{className:"h-4 w-4 text-muted-foreground"})}function Q({isLoading:e,isError:n,lookupError:t,isValidFormat:a,lookupResult:r,helperText:s}){return e?"Looking up address...":n&&t?"Something went wrong. Please try again or contact support.":a&&r?r.count===0?"No address found. Please check your ZIP code.":r.count===1?"Address found!":`Found ${r.count} addresses`:s}function U({isLoading:e,isError:n,lookupError:t,isValidFormat:a,lookupResult:r,helperText:s}){const l=O(e,a,r),m=Q({isLoading:e,isError:n,lookupError:t,isValidFormat:a,lookupResult:r,helperText:s}),p=a&&r&&r.count>0,f=a&&r&&r.count===0;return{statusIcon:l,computedHelperText:m,hasLookupSuccess:p,hasLookupWarning:f}}function Y({value:e,onChange:n,onAddressFound:t,onLookupComplete:a,error:r,required:s=!0,disabled:l=!1,autoFocus:m=!1,label:p="Postal Code",helperText:f="Format: XXX-XXXX",autoLookup:g=!0,debounceMs:b=500}){const[q,w]=c.useState(""),{data:d,isLoading:Z,isError:C,error:I}=A(g?q:void 0),h=e.replace(/-/g,""),y=/^\d{7}$/.test(h),X=c.useCallback(o=>{const u=J(o.target.value);n(u)},[n]);c.useEffect(()=>{if(!g||!y){w("");return}const o=setTimeout(()=>{w(h)},b);return()=>clearTimeout(o)},[h,y,g,b]),c.useEffect(()=>{if(!d)return;const o=d.addresses,u=o.length>0;a==null||a(u,o),u&&o[0]&&(t==null||t(o[0]))},[d,t,a]);const{statusIcon:k,computedHelperText:P,hasLookupSuccess:N,hasLookupWarning:S}=U({isLoading:Z,isError:C,lookupError:I,isValidFormat:y,lookupResult:d,helperText:f});return i.jsx(E,{label:p,error:r,required:s,helperText:r?void 0:P,children:i.jsxs("div",{className:"relative",children:[i.jsx(j,{type:"text",inputMode:"numeric",value:e,onChange:X,placeholder:"100-0001",autoComplete:"postal-code",maxLength:8,disabled:l,autoFocus:m,className:$("pr-10",N&&"border-success focus-visible:border-success",S&&"border-warning focus-visible:border-warning"),"data-field":"address.postcode"}),i.jsx("div",{className:"absolute inset-y-0 right-0 flex items-center pr-3 pointer-events-none",children:k})]})})}Y.__docgenInfo={description:"",methods:[],displayName:"ZipCodeInput",props:{value:{required:!0,tsType:{name:"string"},description:"Current ZIP code value"},onChange:{required:!0,tsType:{name:"signature",type:"function",raw:"(value: string) => void",signature:{arguments:[{type:{name:"string"},name:"value"}],return:{name:"void"}}},description:"Called when ZIP code changes"},onAddressFound:{required:!1,tsType:{name:"union",raw:"((address: JapanPostAddress) => void) | undefined",elements:[{name:"unknown"},{name:"undefined"}]},description:"Called when address is found from ZIP lookup"},onLookupComplete:{required:!1,tsType:{name:"union",raw:"((found: boolean, addresses: JapanPostAddress[]) => void) | undefined",elements:[{name:"unknown"},{name:"undefined"}]},description:"Called when lookup completes (found or not found)"},error:{required:!1,tsType:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}]},description:"Field error message"},required:{required:!1,tsType:{name:"union",raw:"boolean | undefined",elements:[{name:"boolean"},{name:"undefined"}]},description:"Whether the field is required",defaultValue:{value:"true",computed:!1}},disabled:{required:!1,tsType:{name:"union",raw:"boolean | undefined",elements:[{name:"boolean"},{name:"undefined"}]},description:"Whether the input is disabled",defaultValue:{value:"false",computed:!1}},autoFocus:{required:!1,tsType:{name:"union",raw:"boolean | undefined",elements:[{name:"boolean"},{name:"undefined"}]},description:"Auto-focus the input",defaultValue:{value:"false",computed:!1}},label:{required:!1,tsType:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}]},description:"Custom label",defaultValue:{value:'"Postal Code"',computed:!1}},helperText:{required:!1,tsType:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}]},description:"Helper text below input",defaultValue:{value:'"Format: XXX-XXXX"',computed:!1}},autoLookup:{required:!1,tsType:{name:"union",raw:"boolean | undefined",elements:[{name:"boolean"},{name:"undefined"}]},description:"Whether to auto-trigger lookup on valid ZIP",defaultValue:{value:"true",computed:!1}},debounceMs:{required:!1,tsType:{name:"union",raw:"number | undefined",elements:[{name:"number"},{name:"undefined"}]},description:"Debounce delay for auto-lookup (ms)",defaultValue:{value:"500",computed:!1}}}};export{Y as Z}; diff --git a/apps/portal/public/storybook/assets/ZipCodeInput.stories-BFozAGDn.js b/apps/portal/public/storybook/assets/ZipCodeInput.stories-BFozAGDn.js new file mode 100644 index 00000000..cf2b4bcc --- /dev/null +++ b/apps/portal/public/storybook/assets/ZipCodeInput.stories-BFozAGDn.js @@ -0,0 +1,36 @@ +import{Z as E}from"./ZipCodeInput-C0pEKKnJ.js";import"./jsx-runtime-D_zvdyIk.js";import"./index-JhL3uwfD.js";import"./button-C8_cybvS.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./spinner-mU4XywER.js";import"./input-BbGJiz0K.js";import"./password-input-D4khGh8v.js";import"./createLucideIcon-CctB0W3q.js";import"./checkbox-DahUyQbt.js";import"./label-C25VH7yk.js";import"./error-message-DeFFz6H_.js";import"./ExclamationCircleIcon-jFfW0Ax_.js";import"./status-pill-wWp9xkwA.js";import"./badge-BdMsasyi.js";import"./loading-overlay-DMJTiFny.js";import"./error-state-BSicqqE6.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./ArrowPathIcon-CZjG6RfV.js";import"./empty-state-DRUGJ9ip.js";import"./PlusIcon-DGufmf06.js";import"./inline-toast-DQJ-O9wc.js";import"./index-CNXKWNLp.js";import"./proxy-ZkTvaR74.js";import"./skeleton-ISCbfaf8.js";import"./loading-card-BIOTKPal.js";import"./logo-f0fprTjz.js";import"./next-image-69WeRggt.js";import"./step-header-C0A-1Uoh.js";import"./status-indicator-C7K_QPts.js";import"./view-toggle-ja_vihxz.js";import"./Squares2X2Icon-BMQM_Wy1.js";import"./animated-container-DyAZ9gmw.js";import"./FormField-C0UylACv.js";import"./countries-CY6LSu2r.js";import"./useQuery-tNNTAmfW.js";import"./QueryClientProvider-D7wSf7Op.js";import"./schema-Cvvg7S_W.js";import"./text-CXa-DJQz.js";import"./circle-check-big-Bab09Iah.js";import"./search-DSeV2urL.js";const cr={title:"Features/Address/ZipCodeInput",component:E,parameters:{layout:"centered",docs:{description:{component:`ZipCodeInput uses an internal useZipCodeLookup hook. +Stories provide static props; the lookup will not fire in isolation +unless the hook's API endpoint is available. Visual appearance is +still rendered correctly from the props.`}}}},r={args:{value:"",onChange:()=>{},required:!0,label:"Postal Code",helperText:"Format: XXX-XXXX",autoLookup:!1}},e={args:{...r.args,value:"160-0023"}},o={args:{...r.args,value:"123",error:"Please enter a valid 7-digit ZIP code."}},t={args:{...r.args,value:"160-0023",disabled:!0}},a={args:{...r.args,label:"ZIP Code (Japan)",helperText:"Enter your Japanese postal code"}};var s,p,i;r.parameters={...r.parameters,docs:{...(s=r.parameters)==null?void 0:s.docs,source:{originalSource:`{ + args: { + value: "", + onChange: () => {}, + required: true, + label: "Postal Code", + helperText: "Format: XXX-XXXX", + autoLookup: false + } +}`,...(i=(p=r.parameters)==null?void 0:p.docs)==null?void 0:i.source}}};var m,n,l;e.parameters={...e.parameters,docs:{...(m=e.parameters)==null?void 0:m.docs,source:{originalSource:`{ + args: { + ...Empty.args, + value: "160-0023" + } +}`,...(l=(n=e.parameters)==null?void 0:n.docs)==null?void 0:l.source}}};var d,u,c;o.parameters={...o.parameters,docs:{...(d=o.parameters)==null?void 0:d.docs,source:{originalSource:`{ + args: { + ...Empty.args, + value: "123", + error: "Please enter a valid 7-digit ZIP code." + } +}`,...(c=(u=o.parameters)==null?void 0:u.docs)==null?void 0:c.source}}};var g,h,X;t.parameters={...t.parameters,docs:{...(g=t.parameters)==null?void 0:g.docs,source:{originalSource:`{ + args: { + ...Empty.args, + value: "160-0023", + disabled: true + } +}`,...(X=(h=t.parameters)==null?void 0:h.docs)==null?void 0:X.source}}};var v,C,b;a.parameters={...a.parameters,docs:{...(v=a.parameters)==null?void 0:v.docs,source:{originalSource:`{ + args: { + ...Empty.args, + label: "ZIP Code (Japan)", + helperText: "Enter your Japanese postal code" + } +}`,...(b=(C=a.parameters)==null?void 0:C.docs)==null?void 0:b.source}}};const gr=["Empty","WithValue","WithError","Disabled","CustomLabel"];export{a as CustomLabel,t as Disabled,r as Empty,o as WithError,e as WithValue,gr as __namedExportsOrder,cr as default}; diff --git a/apps/portal/public/storybook/assets/animated-container-DyAZ9gmw.js b/apps/portal/public/storybook/assets/animated-container-DyAZ9gmw.js new file mode 100644 index 00000000..825a74fe --- /dev/null +++ b/apps/portal/public/storybook/assets/animated-container-DyAZ9gmw.js @@ -0,0 +1 @@ +import{j as o}from"./jsx-runtime-D_zvdyIk.js";import{c as d}from"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import{m as r}from"./proxy-ZkTvaR74.js";const a={hidden:{opacity:0,y:16},visible:{opacity:1,y:0,transition:{duration:.3,ease:"easeOut"}}},c={hidden:{opacity:0,scale:.95},visible:{opacity:1,scale:1,transition:{duration:.2,ease:"easeOut"}}},u={hidden:{opacity:0,x:-24},visible:{opacity:1,x:0,transition:{duration:.3,ease:"easeOut"}}},p={hidden:{},visible:{}},g={fadeUp:a},m={"fade-up":a,"fade-scale":c,"slide-left":u,none:p};function f({children:i,className:t,animation:n="fade-up",stagger:s=!1,delay:e=0}){const l=m[n];return o.jsx(r.div,{className:d(t),initial:"hidden",animate:"visible",variants:l,transition:s?{staggerChildren:.1,delayChildren:e/1e3}:{delay:e/1e3},children:i})}f.__docgenInfo={description:"",methods:[],displayName:"AnimatedContainer",props:{children:{required:!0,tsType:{name:"ReactReactNode",raw:"React.ReactNode"},description:""},className:{required:!1,tsType:{name:"string"},description:""},animation:{required:!1,tsType:{name:"union",raw:'"fade-up" | "fade-scale" | "slide-left" | "none"',elements:[{name:"literal",value:'"fade-up"'},{name:"literal",value:'"fade-scale"'},{name:"literal",value:'"slide-left"'},{name:"literal",value:'"none"'}]},description:"",defaultValue:{value:'"fade-up"',computed:!1}},stagger:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"false",computed:!1}},delay:{required:!1,tsType:{name:"number"},description:"",defaultValue:{value:"0",computed:!1}}}};export{f as A,g as m}; diff --git a/apps/portal/public/storybook/assets/animated-container.stories-Bl35KCC2.js b/apps/portal/public/storybook/assets/animated-container.stories-Bl35KCC2.js new file mode 100644 index 00000000..84df13b7 --- /dev/null +++ b/apps/portal/public/storybook/assets/animated-container.stories-Bl35KCC2.js @@ -0,0 +1,16 @@ +import{j as o}from"./jsx-runtime-D_zvdyIk.js";import{A as b}from"./animated-container-DyAZ9gmw.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./proxy-ZkTvaR74.js";import"./index-JhL3uwfD.js";const F={title:"Atoms/AnimatedContainer",component:b,argTypes:{animation:{control:"select",options:["fade-up","fade-scale","slide-left","none"]},stagger:{control:"boolean"},delay:{control:{type:"number",min:0,max:2e3,step:100}}}},e={args:{animation:"fade-up",children:o.jsx("div",{className:"bg-card border border-border rounded-xl p-6 shadow-sm",children:"Fade Up Animation"})}},r={args:{animation:"fade-scale",children:o.jsx("div",{className:"bg-card border border-border rounded-xl p-6 shadow-sm",children:"Fade Scale Animation"})}},a={args:{animation:"slide-left",children:o.jsx("div",{className:"bg-card border border-border rounded-xl p-6 shadow-sm",children:"Slide Left Animation"})}};var d,n,s;e.parameters={...e.parameters,docs:{...(d=e.parameters)==null?void 0:d.docs,source:{originalSource:`{ + args: { + animation: "fade-up", + children:
Fade Up Animation
+ } +}`,...(s=(n=e.parameters)==null?void 0:n.docs)==null?void 0:s.source}}};var i,t,m;r.parameters={...r.parameters,docs:{...(i=r.parameters)==null?void 0:i.docs,source:{originalSource:`{ + args: { + animation: "fade-scale", + children:
Fade Scale Animation
+ } +}`,...(m=(t=r.parameters)==null?void 0:t.docs)==null?void 0:m.source}}};var c,l,p;a.parameters={...a.parameters,docs:{...(c=a.parameters)==null?void 0:c.docs,source:{originalSource:`{ + args: { + animation: "slide-left", + children:
Slide Left Animation
+ } +}`,...(p=(l=a.parameters)==null?void 0:l.docs)==null?void 0:p.source}}};const w=["FadeUp","FadeScale","SlideLeft"];export{r as FadeScale,e as FadeUp,a as SlideLeft,w as __namedExportsOrder,F as default}; diff --git a/apps/portal/public/storybook/assets/arrow-left-DP07Iaeg.js b/apps/portal/public/storybook/assets/arrow-left-DP07Iaeg.js new file mode 100644 index 00000000..7f84a7ee --- /dev/null +++ b/apps/portal/public/storybook/assets/arrow-left-DP07Iaeg.js @@ -0,0 +1,6 @@ +import{c as o}from"./createLucideIcon-CctB0W3q.js";/** + * @license lucide-react v0.563.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const e=[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]],r=o("arrow-left",e);export{r as A}; diff --git a/apps/portal/public/storybook/assets/arrow-right-BNMAry-H.js b/apps/portal/public/storybook/assets/arrow-right-BNMAry-H.js new file mode 100644 index 00000000..90c9f9a0 --- /dev/null +++ b/apps/portal/public/storybook/assets/arrow-right-BNMAry-H.js @@ -0,0 +1,6 @@ +import{c as o}from"./createLucideIcon-CctB0W3q.js";/** + * @license lucide-react v0.563.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const r=[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"m12 5 7 7-7 7",key:"xquz4c"}]],c=o("arrow-right",r);export{c as A}; diff --git a/apps/portal/public/storybook/assets/auth.store-CVqT-1lf.js b/apps/portal/public/storybook/assets/auth.store-CVqT-1lf.js new file mode 100644 index 00000000..c5a7fc03 --- /dev/null +++ b/apps/portal/public/storybook/assets/auth.store-CVqT-1lf.js @@ -0,0 +1 @@ +import{o as O,a as o,l,g as p}from"./index-BKyvj4H5.js";import{p as w}from"./error-handling-CCxr4Gjn.js";import{c as P}from"./react-C6W-rNNW.js";import{a as f,c as m,l as A,b}from"./schema-JsDJirqf.js";const d={SESSION_EXPIRED:"session-expired",TOKEN_REVOKED:"token-revoked"},E="customer-portal:lastLogoutReason";function R(e){if(!(typeof window>"u"))try{sessionStorage.setItem(E,e)}catch{}}function T(){if(!(typeof window>"u"))try{sessionStorage.removeItem(E)}catch{}}function S(e){switch(e){case"TOKEN_REVOKED":case"INVALID_REFRESH_TOKEN":return d.TOKEN_REVOKED;case"SESSION_EXPIRED":return d.SESSION_EXPIRED;default:return}}let g=!1,h=0;async function i(e,s,r){e({loading:!0,error:null});try{return await s()}catch(t){const n={loading:!1,error:w(t).message};throw r!=null&&r.markUnauthenticated&&(n.isAuthenticated=!1),e(n),t}}function u(e,s,r){var a,n;const t=e.safeParse(s);if(!t.success)throw new Error(((n=(a=t.error.issues)==null?void 0:a[0])==null?void 0:n.message)??r);return t.data}function k(e,s=300*1e3){if(Date.now()t!==void 0);return r.length===0?{}:{user:{...e.user,...Object.fromEntries(r)}}}async function y(e){try{const s=await o.GET("/api/me"),r=p(s);if(r){e({user:r,isAuthenticated:!0,error:null});return}}catch{}try{const s=await o.GET("/api/auth/me"),r=p(s);if(r!=null&&r.isAuthenticated&&r.user){e({user:r.user,isAuthenticated:!0,error:null});return}}catch{}e({user:null,isAuthenticated:!1,session:{}})}async function N(e,s,r){try{await y(e)}catch(t){const a=w(t);if(a.shouldLogout){const n=S(a.code)??d.SESSION_EXPIRED;await s().logout({reason:n});return}try{await r(!0),await y(e)}catch(n){l.error("Failed to refresh session after auth error",n),e({user:null,isAuthenticated:!1,session:{}})}}}function L(e,s,r,t){return{signup:async a=>{await i(e,async()=>{const n=await o.POST("/api/auth/signup",{body:a,disableCsrf:!0});r(u(f,n.data,"Signup failed"))})},logout:async a=>{a!=null&&a.reason?R(a.reason):T();try{await o.POST("/api/auth/logout",{})}catch(n){l.warn("Logout API call failed",{error:n})}finally{e({user:null,session:{},isAuthenticated:!1,error:null,loading:!1})}},requestPasswordReset:async a=>{await i(e,async()=>{await o.POST("/api/auth/request-password-reset",{body:{email:a},disableCsrf:!0}),e({loading:!1})})},resetPassword:async(a,n)=>{await i(e,async()=>{await o.POST("/api/auth/reset-password",{body:{token:a,password:n},disableCsrf:!0}),e({user:null,session:{},isAuthenticated:!1,loading:!1,error:null})})},changePassword:async(a,n)=>{await i(e,async()=>{const c=await o.POST("/api/auth/change-password",{body:{currentPassword:a,newPassword:n}});r(u(f,c.data,"Password change failed"))})},checkPasswordNeeded:async a=>i(e,async()=>{const n=await o.POST("/api/auth/check-password-needed",{body:{email:a},disableCsrf:!0}),c=u(m,n.data,"Check failed");return e({loading:!1}),c}),setPassword:async(a,n)=>{await i(e,async()=>{const c=await o.POST("/api/auth/set-password",{body:{email:a,password:n},disableCsrf:!0});r(u(f,c.data,"Set password failed"))})},refreshUser:async()=>{await N(e,s,t)},refreshSession:async()=>{await t()},checkAuth:async()=>{e({loading:!0});try{await s().refreshUser()}finally{e({hasCheckedAuth:!0,loading:!1})}},clearError:()=>e({error:null}),clearLoading:()=>e({loading:!1}),applyAuthResponse:r,hydrateUserProfile:a=>{e(n=>I(n,a))}}}async function U(e,s){try{const r=await o.POST("/api/auth/refresh",{body:{}});h=0,e(u(f,r.data,"Session refresh failed"))}catch(r){l.error("Failed to refresh session",r);const t=w(r);if(t.code==="NET_003")throw h=Date.now()+60*1e3,l.warn("Token refresh rate limited, backing off for 60s"),r;if(t.shouldLogout){const a=S(t.code)??d.SESSION_EXPIRED;await s().logout({reason:a})}throw r}}function C(e,s){let r=null;return async(t=!1)=>{if(!t&&!k(s().session)){l.debug("Skipping refresh: token not expiring soon");return}r||(r=U(e,s).finally(()=>{r=null})),await r}}function _(e,s){return{initiateLogin:async r=>i(e,async()=>{const t=await o.POST("/api/auth/login",{body:r,disableCsrf:!0}),a=u(b,t.data,"Login failed");return"requiresOtp"in a&&a.requiresOtp===!0?(e({loading:!1}),a):(s(a),{requiresOtp:!1})},{markUnauthenticated:!0}),verifyLoginOtp:async(r,t,a)=>{await i(e,async()=>{const n={sessionToken:r,code:t,...a!==void 0&&{rememberDevice:a}},c=await o.POST("/api/auth/login/verify-otp",{body:n,disableCsrf:!0});s(u(f,c.data,"Verification failed"))},{markUnauthenticated:!0})},login:async r=>{await i(e,async()=>{const t=await o.POST("/api/auth/login",{body:r,disableCsrf:!0});if(A.safeParse(t.data).success)throw e({loading:!1}),new Error("OTP verification required. Please use the updated login flow.");s(u(f,t.data,"Login failed"))},{markUnauthenticated:!0})}}}function D(e){return(s,r=!1)=>{e({user:s.user,session:{accessExpiresAt:s.session.expiresAt,refreshExpiresAt:s.session.refreshExpiresAt},isAuthenticated:!0,hasCheckedAuth:!0,loading:r,error:null})}}const X=P()((e,s)=>{const r=D(e),t=C(r,s);return g||(g=!0,O(a=>{l.warn("401 Unauthorized detected - triggering logout",{url:a==null?void 0:a.url,status:a==null?void 0:a.status}),s().logout({reason:d.SESSION_EXPIRED})})),{user:null,session:{},isAuthenticated:!1,loading:!1,error:null,hasCheckedAuth:!1,..._(e,r),...L(e,s,r,t)}});export{X as u}; diff --git a/apps/portal/public/storybook/assets/badge-BdMsasyi.js b/apps/portal/public/storybook/assets/badge-BdMsasyi.js new file mode 100644 index 00000000..75e783db --- /dev/null +++ b/apps/portal/public/storybook/assets/badge-BdMsasyi.js @@ -0,0 +1 @@ +import{j as r}from"./jsx-runtime-D_zvdyIk.js";import{r as p}from"./index-JhL3uwfD.js";import{c as b}from"./index-DXhM58Yq.js";import{c as o}from"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";const x={success:"bg-success",warning:"bg-warning",error:"bg-danger",info:"bg-info",default:"bg-primary-foreground",secondary:"bg-secondary-foreground",outline:"bg-muted-foreground",ghost:"bg-muted-foreground"},e="hover:bg-black/10",y={default:"text-primary-foreground hover:bg-primary-foreground/10",secondary:`text-secondary-foreground ${e}`,success:e,warning:e,error:e,info:e,outline:e,ghost:e},v=b("inline-flex items-center font-medium transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary-hover",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",success:"bg-success-soft text-success hover:bg-success-soft/80",warning:"bg-warning-soft text-foreground hover:bg-warning-soft/80",error:"bg-danger-soft text-danger hover:bg-danger-soft/80",info:"bg-info-soft text-info hover:bg-info-soft/80",outline:"border border-border bg-background text-foreground hover:bg-muted",ghost:"text-foreground hover:bg-muted"},size:{sm:"px-2 py-0.5 text-xs rounded",default:"px-2.5 py-1 text-xs rounded-md",lg:"px-3 py-1.5 text-sm rounded-lg"}},defaultVariants:{variant:"default",size:"default"}}),a=p.forwardRef(({className:i,variant:n="default",size:d,icon:s,dot:u,removable:c,onRemove:g,children:f,...l},m)=>{const t=n;return r.jsxs("span",{ref:m,className:o(v({variant:n,size:d}),i),...l,children:[u&&r.jsx("span",{className:o("mr-1.5 h-1.5 w-1.5 rounded-full",x[t])}),s&&r.jsx("span",{className:"mr-1",children:s}),f,c&&r.jsx("button",{type:"button",onClick:g,className:o("ml-1 inline-flex h-3 w-3 items-center justify-center rounded-full focus:outline-none focus:ring-1 focus:ring-inset focus:ring-ring/20",y[t]),"aria-label":"Remove",children:r.jsx("svg",{className:"h-2 w-2",fill:"currentColor",viewBox:"0 0 8 8",children:r.jsx("path",{d:"M1.5 1.5l5 5m0-5l-5 5",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round"})})})]})});a.displayName="Badge";a.__docgenInfo={description:"",methods:[],displayName:"Badge",props:{icon:{required:!1,tsType:{name:"ReactReactNode",raw:"React.ReactNode"},description:""},dot:{required:!1,tsType:{name:"boolean"},description:""},removable:{required:!1,tsType:{name:"boolean"},description:""},onRemove:{required:!1,tsType:{name:"signature",type:"function",raw:"() => void",signature:{arguments:[],return:{name:"void"}}},description:""},variant:{defaultValue:{value:'"default"',computed:!1},required:!1}},composes:["VariantProps"]};export{a as B}; diff --git a/apps/portal/public/storybook/assets/badge.stories-CmRWDa_s.js b/apps/portal/public/storybook/assets/badge.stories-CmRWDa_s.js new file mode 100644 index 00000000..0b38e157 --- /dev/null +++ b/apps/portal/public/storybook/assets/badge.stories-CmRWDa_s.js @@ -0,0 +1,35 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{B as a}from"./badge-BdMsasyi.js";import"./index-JhL3uwfD.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";const E={title:"Atoms/Badge",component:a,argTypes:{variant:{control:"select",options:["default","secondary","success","warning","error","info","outline","ghost"]},size:{control:"select",options:["sm","default","lg"]},dot:{control:"boolean"},removable:{control:"boolean"}}},r={args:{children:"Badge"}},n={render:()=>e.jsxs("div",{className:"flex flex-wrap gap-2",children:[e.jsx(a,{variant:"default",children:"Default"}),e.jsx(a,{variant:"secondary",children:"Secondary"}),e.jsx(a,{variant:"success",children:"Success"}),e.jsx(a,{variant:"warning",children:"Warning"}),e.jsx(a,{variant:"error",children:"Error"}),e.jsx(a,{variant:"info",children:"Info"}),e.jsx(a,{variant:"outline",children:"Outline"}),e.jsx(a,{variant:"ghost",children:"Ghost"})]})},s={render:()=>e.jsxs("div",{className:"flex gap-2 items-center",children:[e.jsx(a,{size:"sm",children:"Small"}),e.jsx(a,{size:"default",children:"Default"}),e.jsx(a,{size:"lg",children:"Large"})]})},t={render:()=>e.jsxs("div",{className:"flex flex-wrap gap-2",children:[e.jsx(a,{variant:"success",dot:!0,children:"Active"}),e.jsx(a,{variant:"warning",dot:!0,children:"Pending"}),e.jsx(a,{variant:"error",dot:!0,children:"Failed"}),e.jsx(a,{variant:"info",dot:!0,children:"Processing"})]})},o={args:{children:"Removable",removable:!0,onRemove:()=>alert("Removed!")}};var i,d,c;r.parameters={...r.parameters,docs:{...(i=r.parameters)==null?void 0:i.docs,source:{originalSource:`{ + args: { + children: "Badge" + } +}`,...(c=(d=r.parameters)==null?void 0:d.docs)==null?void 0:c.source}}};var l,g,m;n.parameters={...n.parameters,docs:{...(l=n.parameters)==null?void 0:l.docs,source:{originalSource:`{ + render: () =>
+ Default + Secondary + Success + Warning + Error + Info + Outline + Ghost +
+}`,...(m=(g=n.parameters)==null?void 0:g.docs)==null?void 0:m.source}}};var u,v,p;s.parameters={...s.parameters,docs:{...(u=s.parameters)==null?void 0:u.docs,source:{originalSource:`{ + render: () =>
+ Small + Default + Large +
+}`,...(p=(v=s.parameters)==null?void 0:v.docs)==null?void 0:p.source}}};var B,f,x;t.parameters={...t.parameters,docs:{...(B=t.parameters)==null?void 0:B.docs,source:{originalSource:`{ + render: () =>
+ Active + Pending + Failed + Processing +
+}`,...(x=(f=t.parameters)==null?void 0:f.docs)==null?void 0:x.source}}};var h,j,S;o.parameters={...o.parameters,docs:{...(h=o.parameters)==null?void 0:h.docs,source:{originalSource:`{ + args: { + children: "Removable", + removable: true, + onRemove: () => alert("Removed!") + } +}`,...(S=(j=o.parameters)==null?void 0:j.docs)==null?void 0:S.source}}};const P=["Default","AllVariants","Sizes","WithDot","Removable"];export{n as AllVariants,r as Default,o as Removable,s as Sizes,t as WithDot,P as __namedExportsOrder,E as default}; diff --git a/apps/portal/public/storybook/assets/building-2-C7pcwIk2.js b/apps/portal/public/storybook/assets/building-2-C7pcwIk2.js new file mode 100644 index 00000000..03e5b4fd --- /dev/null +++ b/apps/portal/public/storybook/assets/building-2-C7pcwIk2.js @@ -0,0 +1,6 @@ +import{c as a}from"./createLucideIcon-CctB0W3q.js";/** + * @license lucide-react v0.563.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const e=[["path",{d:"M10 12h4",key:"a56b0p"}],["path",{d:"M10 8h4",key:"1sr2af"}],["path",{d:"M14 21v-3a2 2 0 0 0-4 0v3",key:"1rgiei"}],["path",{d:"M6 10H4a2 2 0 0 0-2 2v7a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2h-2",key:"secmi2"}],["path",{d:"M6 21V5a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v16",key:"16ra0t"}]],h=a("building-2",e);export{h as B}; diff --git a/apps/portal/public/storybook/assets/button-C8_cybvS.js b/apps/portal/public/storybook/assets/button-C8_cybvS.js new file mode 100644 index 00000000..8b8e92a7 --- /dev/null +++ b/apps/portal/public/storybook/assets/button-C8_cybvS.js @@ -0,0 +1 @@ +import{j as r}from"./jsx-runtime-D_zvdyIk.js";import{r as _}from"./index-JhL3uwfD.js";import{L as E}from"./next-link-BmD4fPSy.js";import{c as L}from"./index-DXhM58Yq.js";import{c as m}from"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import{S as I}from"./spinner-mU4XywER.js";const p=L("group inline-flex items-center justify-center rounded-lg text-sm font-medium transition-all duration-[var(--cp-duration-normal)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background disabled:opacity-50 disabled:pointer-events-none hover:scale-[1.01] active:scale-[0.98]",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary-hover shadow-[var(--cp-shadow-1)] hover:shadow-[var(--cp-shadow-2)]",destructive:"bg-danger text-danger-foreground hover:bg-danger/90 shadow-[var(--cp-shadow-1)] hover:shadow-[var(--cp-shadow-2)]",outline:"border border-border bg-background text-foreground hover:bg-muted shadow-[var(--cp-shadow-1)] hover:shadow-[var(--cp-shadow-2)]",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80 shadow-[var(--cp-shadow-1)] hover:shadow-[var(--cp-shadow-2)]",ghost:"text-foreground hover:bg-muted",subtle:"bg-muted/50 text-foreground hover:bg-muted border border-transparent hover:border-border/40",link:"underline-offset-4 hover:underline text-primary",pill:"rounded-full bg-primary text-primary-foreground hover:bg-primary/90 shadow-md shadow-primary/20 hover:-translate-y-0.5",pillOutline:"rounded-full border border-border bg-card text-primary hover:bg-primary/5"},size:{default:"h-11 py-2.5 px-4",sm:"h-9 px-3 text-xs",lg:"h-12 px-6 text-base"}},defaultVariants:{variant:"default",size:"default"}});function c({loading:e,leftIcon:o,rightIcon:a,loadingText:i,children:s}){return r.jsxs("span",{className:"inline-flex items-center justify-center gap-2",children:[e?r.jsx(I,{size:"sm"}):o,r.jsx("span",{children:e?i??s:s}),!e&&a&&r.jsx("span",{className:"transition-transform duration-200 group-hover:translate-x-0.5",children:a})]})}const v=_.forwardRef((e,o)=>{const{leftIcon:a,rightIcon:i,loading:s,isLoading:f,loadingText:b,children:g,...l}=e,t=s??f??!1,d={loading:t,leftIcon:a,rightIcon:i,loadingText:b,children:g};if(e.as==="a"){const{className:z,variant:B,size:P,as:S,href:n,...u}=l,k=n.startsWith("http")||n.startsWith("mailto:"),h={className:m(p({variant:B,size:P,className:z})),"aria-busy":t||void 0};return k?r.jsx("a",{...h,href:n,ref:o,...u,children:r.jsx(c,{...d})}):r.jsx(E,{...h,href:n,ref:o,...u,children:r.jsx(c,{...d})})}const{className:x,variant:y,size:w,as:R,disabled:j,...N}=l;return r.jsx("button",{className:m(p({variant:y,size:w,className:x})),ref:o,disabled:t||j,"aria-busy":t||void 0,...N,children:r.jsx(c,{...d})})});v.displayName="Button";v.__docgenInfo={description:"",methods:[],displayName:"Button"};export{v as B}; diff --git a/apps/portal/public/storybook/assets/button.stories-ChBuZSRT.js b/apps/portal/public/storybook/assets/button.stories-ChBuZSRT.js new file mode 100644 index 00000000..5af21be3 --- /dev/null +++ b/apps/portal/public/storybook/assets/button.stories-ChBuZSRT.js @@ -0,0 +1,41 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{B as t}from"./button-C8_cybvS.js";import{F as l}from"./PlusIcon-DGufmf06.js";import{F as c}from"./ArrowRightIcon--Vuz7Q7x.js";import"./index-JhL3uwfD.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./spinner-mU4XywER.js";const W={title:"Atoms/Button",component:t,argTypes:{variant:{control:"select",options:["default","destructive","outline","secondary","ghost","subtle","link","pill","pillOutline"]},size:{control:"select",options:["default","sm","lg"]},loading:{control:"boolean"},disabled:{control:"boolean"}}},n={args:{children:"Button"}},r={render:()=>e.jsxs("div",{className:"flex flex-wrap gap-3 items-center",children:[e.jsx(t,{variant:"default",children:"Primary"}),e.jsx(t,{variant:"secondary",children:"Secondary"}),e.jsx(t,{variant:"outline",children:"Outline"}),e.jsx(t,{variant:"destructive",children:"Destructive"}),e.jsx(t,{variant:"ghost",children:"Ghost"}),e.jsx(t,{variant:"subtle",children:"Subtle"}),e.jsx(t,{variant:"link",children:"Link"}),e.jsx(t,{variant:"pill",children:"Pill"}),e.jsx(t,{variant:"pillOutline",children:"Pill Outline"})]})},a={render:()=>e.jsxs("div",{className:"flex gap-3 items-center",children:[e.jsx(t,{size:"sm",children:"Small"}),e.jsx(t,{size:"default",children:"Default"}),e.jsx(t,{size:"lg",children:"Large"})]})},s={render:()=>e.jsxs("div",{className:"flex gap-3 items-center",children:[e.jsx(t,{leftIcon:e.jsx(l,{className:"h-4 w-4"}),children:"Add Item"}),e.jsx(t,{rightIcon:e.jsx(c,{className:"h-4 w-4"}),children:"Continue"}),e.jsx(t,{leftIcon:e.jsx(l,{className:"h-4 w-4"}),rightIcon:e.jsx(c,{className:"h-4 w-4"}),children:"Both Icons"})]})},o={args:{children:"Submitting...",loading:!0}},i={args:{children:"Disabled",disabled:!0}};var d,u,m;n.parameters={...n.parameters,docs:{...(d=n.parameters)==null?void 0:d.docs,source:{originalSource:`{ + args: { + children: "Button" + } +}`,...(m=(u=n.parameters)==null?void 0:u.docs)==null?void 0:m.source}}};var p,h,g;r.parameters={...r.parameters,docs:{...(p=r.parameters)==null?void 0:p.docs,source:{originalSource:`{ + render: () =>
+ + + + + + + + + +
+}`,...(g=(h=r.parameters)==null?void 0:h.docs)==null?void 0:g.source}}};var B,x,v;a.parameters={...a.parameters,docs:{...(B=a.parameters)==null?void 0:B.docs,source:{originalSource:`{ + render: () =>
+ + + +
+}`,...(v=(x=a.parameters)==null?void 0:x.docs)==null?void 0:v.source}}};var f,j,I;s.parameters={...s.parameters,docs:{...(f=s.parameters)==null?void 0:f.docs,source:{originalSource:`{ + render: () =>
+ + + +
+}`,...(I=(j=s.parameters)==null?void 0:j.docs)==null?void 0:I.source}}};var b,S,w;o.parameters={...o.parameters,docs:{...(b=o.parameters)==null?void 0:b.docs,source:{originalSource:`{ + args: { + children: "Submitting...", + loading: true + } +}`,...(w=(S=o.parameters)==null?void 0:S.docs)==null?void 0:w.source}}};var N,D,z;i.parameters={...i.parameters,docs:{...(N=i.parameters)==null?void 0:N.docs,source:{originalSource:`{ + args: { + children: "Disabled", + disabled: true + } +}`,...(z=(D=i.parameters)==null?void 0:D.docs)==null?void 0:z.source}}};const _=["Default","AllVariants","Sizes","WithIcons","Loading","Disabled"];export{r as AllVariants,n as Default,i as Disabled,o as Loading,a as Sizes,s as WithIcons,_ as __namedExportsOrder,W as default}; diff --git a/apps/portal/public/storybook/assets/calendar-6Kp0KrD6.js b/apps/portal/public/storybook/assets/calendar-6Kp0KrD6.js new file mode 100644 index 00000000..51057c2b --- /dev/null +++ b/apps/portal/public/storybook/assets/calendar-6Kp0KrD6.js @@ -0,0 +1,6 @@ +import{c as e}from"./createLucideIcon-CctB0W3q.js";/** + * @license lucide-react v0.563.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const t=[["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M16 2v4",key:"4m81vk"}],["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2",key:"1hopcy"}],["path",{d:"M3 10h18",key:"8toen8"}]],a=e("calendar",t);export{a as C}; diff --git a/apps/portal/public/storybook/assets/check-DmNqM64J.js b/apps/portal/public/storybook/assets/check-DmNqM64J.js new file mode 100644 index 00000000..85f8173c --- /dev/null +++ b/apps/portal/public/storybook/assets/check-DmNqM64J.js @@ -0,0 +1,6 @@ +import{c}from"./createLucideIcon-CctB0W3q.js";/** + * @license lucide-react v0.563.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const e=[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]],t=c("check",e);export{t as C}; diff --git a/apps/portal/public/storybook/assets/checkbox-DahUyQbt.js b/apps/portal/public/storybook/assets/checkbox-DahUyQbt.js new file mode 100644 index 00000000..8d4be3e8 --- /dev/null +++ b/apps/portal/public/storybook/assets/checkbox-DahUyQbt.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{R as l}from"./index-JhL3uwfD.js";import{c as o}from"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";const a=l.forwardRef(({className:n,label:t,error:s,helperText:r,id:c,...d},m)=>{const i=c||`checkbox-${Math.random().toString(36).slice(2,11)}`;return e.jsxs("div",{className:"flex flex-col space-y-1",children:[e.jsxs("div",{className:"flex items-center space-x-2",children:[e.jsx("input",{type:"checkbox",id:i,ref:m,className:o("h-4 w-4 rounded border-input text-primary focus:ring-ring focus:ring-2",s&&"border-danger",n),...d}),t&&e.jsx("label",{htmlFor:i,className:o("text-sm font-medium leading-none text-foreground peer-disabled:cursor-not-allowed peer-disabled:opacity-70",s&&"text-danger"),children:t})]}),r&&!s&&e.jsx("p",{className:"text-xs text-muted-foreground",children:r}),s&&e.jsx("p",{className:"text-xs text-danger",children:s})]})});a.displayName="Checkbox";a.__docgenInfo={description:"",methods:[],displayName:"Checkbox",props:{label:{required:!1,tsType:{name:"string"},description:""},error:{required:!1,tsType:{name:"string"},description:""},helperText:{required:!1,tsType:{name:"string"},description:""}},composes:["Omit"]};export{a as C}; diff --git a/apps/portal/public/storybook/assets/checkbox.stories-eSDwLnhF.js b/apps/portal/public/storybook/assets/checkbox.stories-eSDwLnhF.js new file mode 100644 index 00000000..73d5b125 --- /dev/null +++ b/apps/portal/public/storybook/assets/checkbox.stories-eSDwLnhF.js @@ -0,0 +1,29 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{C as r}from"./checkbox-DahUyQbt.js";import"./index-JhL3uwfD.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";const v={title:"Atoms/Checkbox",component:r},a={args:{label:"Accept terms and conditions"}},s={args:{label:"Send me emails",helperText:"We'll only send important updates"}},t={args:{label:"I agree to the terms",error:"You must accept the terms"}},l={args:{label:"Already checked",defaultChecked:!0}},o={render:()=>e.jsxs("div",{className:"flex flex-col gap-4",children:[e.jsx(r,{label:"Default"}),e.jsx(r,{label:"Checked",defaultChecked:!0}),e.jsx(r,{label:"With helper",helperText:"Additional information"}),e.jsx(r,{label:"With error",error:"This is required"}),e.jsx(r,{label:"Disabled",disabled:!0}),e.jsx(r,{label:"Disabled checked",disabled:!0,defaultChecked:!0})]})};var c,d,n;a.parameters={...a.parameters,docs:{...(c=a.parameters)==null?void 0:c.docs,source:{originalSource:`{ + args: { + label: "Accept terms and conditions" + } +}`,...(n=(d=a.parameters)==null?void 0:d.docs)==null?void 0:n.source}}};var i,m,p;s.parameters={...s.parameters,docs:{...(i=s.parameters)==null?void 0:i.docs,source:{originalSource:`{ + args: { + label: "Send me emails", + helperText: "We'll only send important updates" + } +}`,...(p=(m=s.parameters)==null?void 0:m.docs)==null?void 0:p.source}}};var h,u,b;t.parameters={...t.parameters,docs:{...(h=t.parameters)==null?void 0:h.docs,source:{originalSource:`{ + args: { + label: "I agree to the terms", + error: "You must accept the terms" + } +}`,...(b=(u=t.parameters)==null?void 0:u.docs)==null?void 0:b.source}}};var x,k,f;l.parameters={...l.parameters,docs:{...(x=l.parameters)==null?void 0:x.docs,source:{originalSource:`{ + args: { + label: "Already checked", + defaultChecked: true + } +}`,...(f=(k=l.parameters)==null?void 0:k.docs)==null?void 0:f.source}}};var C,g,W;o.parameters={...o.parameters,docs:{...(C=o.parameters)==null?void 0:C.docs,source:{originalSource:`{ + render: () =>
+ + + + + + +
+}`,...(W=(g=o.parameters)==null?void 0:g.docs)==null?void 0:W.source}}};const q=["Default","WithHelperText","WithError","Checked","AllStates"];export{o as AllStates,l as Checked,a as Default,t as WithError,s as WithHelperText,q as __namedExportsOrder,v as default}; diff --git a/apps/portal/public/storybook/assets/chevron-down-CuGyZVZ6.js b/apps/portal/public/storybook/assets/chevron-down-CuGyZVZ6.js new file mode 100644 index 00000000..8f7a70d7 --- /dev/null +++ b/apps/portal/public/storybook/assets/chevron-down-CuGyZVZ6.js @@ -0,0 +1,6 @@ +import{c as o}from"./createLucideIcon-CctB0W3q.js";/** + * @license lucide-react v0.563.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const n=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],e=o("chevron-down",n);export{e as C}; diff --git a/apps/portal/public/storybook/assets/chevron-right-C40ybnlz.js b/apps/portal/public/storybook/assets/chevron-right-C40ybnlz.js new file mode 100644 index 00000000..65e79158 --- /dev/null +++ b/apps/portal/public/storybook/assets/chevron-right-C40ybnlz.js @@ -0,0 +1,6 @@ +import{c as o}from"./createLucideIcon-CctB0W3q.js";/** + * @license lucide-react v0.563.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const t=[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]],e=o("chevron-right",t);export{e as C}; diff --git a/apps/portal/public/storybook/assets/chevron-up-xeH5nNuh.js b/apps/portal/public/storybook/assets/chevron-up-xeH5nNuh.js new file mode 100644 index 00000000..07c083b5 --- /dev/null +++ b/apps/portal/public/storybook/assets/chevron-up-xeH5nNuh.js @@ -0,0 +1,6 @@ +import{c as o}from"./createLucideIcon-CctB0W3q.js";/** + * @license lucide-react v0.563.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const c=[["path",{d:"m18 15-6-6-6 6",key:"153udz"}]],n=o("chevron-up",c);export{n as C}; diff --git a/apps/portal/public/storybook/assets/chunk-XP5HYGXS-BHXC9YeQ.js b/apps/portal/public/storybook/assets/chunk-XP5HYGXS-BHXC9YeQ.js new file mode 100644 index 00000000..079a7a4b --- /dev/null +++ b/apps/portal/public/storybook/assets/chunk-XP5HYGXS-BHXC9YeQ.js @@ -0,0 +1 @@ +var u=Object.create,a=Object.defineProperty,s=Object.getOwnPropertyDescriptor,o=Object.getOwnPropertyNames,c=Object.getPrototypeOf,O=Object.prototype.hasOwnProperty,l=(e,r)=>function(){return e&&(r=(0,e[o(e)[0]])(e=0)),r},v=(e,r)=>function(){return r||(0,e[o(e)[0]])((r={exports:{}}).exports,r),r.exports},b=(e,r)=>{for(var t in r)a(e,t,{get:r[t],enumerable:!0})},n=(e,r,t,p)=>{if(r&&typeof r=="object"||typeof r=="function")for(let _ of o(r))!O.call(e,_)&&_!==t&&a(e,_,{get:()=>r[_],enumerable:!(p=s(r,_))||p.enumerable});return e},P=(e,r,t)=>(t=e!=null?u(c(e)):{},n(!e||!e.__esModule?a(t,"default",{value:e,enumerable:!0}):t,e)),y=e=>n(a({},"__esModule",{value:!0}),e);export{P as _,v as a,b,y as c,l as d}; diff --git a/apps/portal/public/storybook/assets/circle-check-big-Bab09Iah.js b/apps/portal/public/storybook/assets/circle-check-big-Bab09Iah.js new file mode 100644 index 00000000..43d4d01c --- /dev/null +++ b/apps/portal/public/storybook/assets/circle-check-big-Bab09Iah.js @@ -0,0 +1,6 @@ +import{c}from"./createLucideIcon-CctB0W3q.js";/** + * @license lucide-react v0.563.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const e=[["path",{d:"M21.801 10A10 10 0 1 1 17 3.335",key:"yps3ct"}],["path",{d:"m9 11 3 3L22 4",key:"1pflzl"}]],t=c("circle-check-big",e);export{t as C}; diff --git a/apps/portal/public/storybook/assets/circle-question-mark-CauZ9VmE.js b/apps/portal/public/storybook/assets/circle-question-mark-CauZ9VmE.js new file mode 100644 index 00000000..9b4b1e9f --- /dev/null +++ b/apps/portal/public/storybook/assets/circle-question-mark-CauZ9VmE.js @@ -0,0 +1,6 @@ +import{c}from"./createLucideIcon-CctB0W3q.js";/** + * @license lucide-react v0.563.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const e=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3",key:"1u773s"}],["path",{d:"M12 17h.01",key:"p32p05"}]],r=c("circle-question-mark",e);export{r as C}; diff --git a/apps/portal/public/storybook/assets/client-B9ae35Ip.js b/apps/portal/public/storybook/assets/client-B9ae35Ip.js new file mode 100644 index 00000000..3fa13a4c --- /dev/null +++ b/apps/portal/public/storybook/assets/client-B9ae35Ip.js @@ -0,0 +1,33 @@ +import{a as d1}from"./index-JhL3uwfD.js";var ti={exports:{}},me={},ai={exports:{}},ui={};/** + * @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 f1;function Rd(){return f1||(f1=1,(function(D){function Nl(z,E){var N=z.length;z.push(E);l:for(;0>>1,$=z[w];if(0>>1;wdt(V,N))ml<$&&0>dt(ct,V)?(z[w]=ct,z[ml]=N,w=ml):(z[w]=V,z[P]=N,w=P);else if(ml<$&&0>dt(ct,N))z[w]=ct,z[ml]=N,w=ml;else break l}}return E}function dt(z,E){var N=z.sortIndex-E.sortIndex;return N!==0?N:z.id-E.id}if(D.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var ht=performance;D.unstable_now=function(){return ht.now()}}else{var Pl=Date,St=Pl.now();D.unstable_now=function(){return Pl.now()-St}}var U=[],A=[],r=1,H=null,ul=3,lt=!1,tt=!1,Vl=!1,Ha=!1,Na=typeof setTimeout=="function"?setTimeout:null,bu=typeof clearTimeout=="function"?clearTimeout:null,pl=typeof setImmediate<"u"?setImmediate:null;function Qt(z){for(var E=al(A);E!==null;){if(E.callback===null)g(A);else if(E.startTime<=z)g(A),E.sortIndex=E.expirationTime,Nl(U,E);else break;E=al(A)}}function ia(z){if(Vl=!1,Qt(z),!tt)if(al(U)!==null)tt=!0,ft||(ft=!0,Kl());else{var E=al(A);E!==null&&st(ia,E.startTime-z)}}var ft=!1,gt=-1,at=5,qa=-1;function de(){return Ha?!0:!(D.unstable_now()-qaz&&de());){var w=H.callback;if(typeof w=="function"){H.callback=null,ul=H.priorityLevel;var $=w(H.expirationTime<=z);if(z=D.unstable_now(),typeof $=="function"){H.callback=$,Qt(z),E=!0;break t}H===al(U)&&g(U),Qt(z)}else g(U);H=al(U)}if(H!==null)E=!0;else{var Al=al(A);Al!==null&&st(ia,Al.startTime-z),E=!1}}break l}finally{H=null,ul=N,lt=!1}E=void 0}}finally{E?Kl():ft=!1}}}var Kl;if(typeof pl=="function")Kl=function(){pl(Ba)};else if(typeof MessageChannel<"u"){var he=new MessageChannel,zu=he.port2;he.port1.onmessage=Ba,Kl=function(){zu.postMessage(null)}}else Kl=function(){Na(Ba,0)};function st(z,E){gt=Na(function(){z(D.unstable_now())},E)}D.unstable_IdlePriority=5,D.unstable_ImmediatePriority=1,D.unstable_LowPriority=4,D.unstable_NormalPriority=3,D.unstable_Profiling=null,D.unstable_UserBlockingPriority=2,D.unstable_cancelCallback=function(z){z.callback=null},D.unstable_forceFrameRate=function(z){0>z||125w?(z.sortIndex=N,Nl(A,z),al(U)===null&&z===al(A)&&(Vl?(bu(gt),gt=-1):Vl=!0,st(ia,N-w))):(z.sortIndex=$,Nl(U,z),tt||lt||(tt=!0,ft||(ft=!0,Kl()))),z},D.unstable_shouldYield=de,D.unstable_wrapCallback=function(z){var E=ul;return function(){var N=ul;ul=E;try{return z.apply(this,arguments)}finally{ul=N}}}})(ui)),ui}var c1;function Cd(){return c1||(c1=1,ai.exports=Rd()),ai.exports}var ei={exports:{}},Tl={};/** + * @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 i1;function Zd(){if(i1)return Tl;i1=1;var D=d1();function Nl(U){var A="https://react.dev/errors/"+U;if(1"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(D)}catch(Nl){console.error(Nl)}}return D(),ei.exports=Zd(),ei.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 y1;function Vd(){if(y1)return me;y1=1;var D=Cd(),Nl=d1(),al=jd();function g(l){var t="https://react.dev/errors/"+l;if(1$||(l.current=w[$],w[$]=null,$--)}function V(l,t){$++,w[$]=l.current,l.current=t}var ml=Al(null),ct=Al(null),Rt=Al(null),Se=Al(null);function ge(l,t){switch(V(Rt,t),V(ct,l),V(ml,null),t.nodeType){case 9:case 11:l=(l=t.documentElement)&&(l=l.namespaceURI)?Ny(l):0;break;default:if(l=t.tagName,t=t.namespaceURI)t=Ny(t),l=qy(t,l);else switch(l){case"svg":l=1;break;case"math":l=2;break;default:l=0}}P(ml),V(ml,l)}function Ya(){P(ml),P(ct),P(Rt)}function Qn(l){l.memoizedState!==null&&V(Se,l);var t=ml.current,a=qy(t,l.type);t!==a&&(V(ct,l),V(ml,a))}function se(l){ct.current===l&&(P(ml),P(ct)),Se.current===l&&(P(Se),ce._currentValue=N)}var Rn,ni;function va(l){if(Rn===void 0)try{throw Error()}catch(a){var t=a.stack.trim().match(/\n( *(at )?)/);Rn=t&&t[1]||"",ni=-1)":-1e||i[u]!==d[e]){var s=` +`+i[u].replace(" at new "," at ");return l.displayName&&s.includes("")&&(s=s.replace("",l.displayName)),s}while(1<=u&&0<=e);break}}}finally{Cn=!1,Error.prepareStackTrace=a}return(a=l?l.displayName||l.name:"")?va(a):""}function h1(l,t){switch(l.tag){case 26:case 27:case 5:return va(l.type);case 16:return va("Lazy");case 13:return l.child!==t&&t!==null?va("Suspense Fallback"):va("Suspense");case 19:return va("SuspenseList");case 0:case 15:return Zn(l.type,!1);case 11:return Zn(l.type.render,!1);case 1:return Zn(l.type,!0);case 31:return va("Activity");default:return""}}function fi(l){try{var t="",a=null;do t+=h1(l,a),a=l,l=l.return;while(l);return t}catch(u){return` +Error generating stack: `+u.message+` +`+u.stack}}var jn=Object.prototype.hasOwnProperty,Vn=D.unstable_scheduleCallback,pn=D.unstable_cancelCallback,S1=D.unstable_shouldYield,g1=D.unstable_requestPaint,ql=D.unstable_now,s1=D.unstable_getCurrentPriorityLevel,ci=D.unstable_ImmediatePriority,ii=D.unstable_UserBlockingPriority,be=D.unstable_NormalPriority,b1=D.unstable_LowPriority,vi=D.unstable_IdlePriority,z1=D.log,T1=D.unstable_setDisableYieldValue,Tu=null,Bl=null;function Ct(l){if(typeof z1=="function"&&T1(l),Bl&&typeof Bl.setStrictMode=="function")try{Bl.setStrictMode(Tu,l)}catch{}}var Yl=Math.clz32?Math.clz32:o1,A1=Math.log,E1=Math.LN2;function o1(l){return l>>>=0,l===0?32:31-(A1(l)/E1|0)|0}var ze=256,Te=262144,Ae=4194304;function ya(l){var t=l&42;if(t!==0)return t;switch(l&-l){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 l&261888;case 262144:case 524288:case 1048576:case 2097152:return l&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return l&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return l}}function Ee(l,t,a){var u=l.pendingLanes;if(u===0)return 0;var e=0,n=l.suspendedLanes,f=l.pingedLanes;l=l.warmLanes;var c=u&134217727;return c!==0?(u=c&~n,u!==0?e=ya(u):(f&=c,f!==0?e=ya(f):a||(a=c&~l,a!==0&&(e=ya(a))))):(c=u&~n,c!==0?e=ya(c):f!==0?e=ya(f):a||(a=u&~l,a!==0&&(e=ya(a)))),e===0?0:t!==0&&t!==e&&(t&n)===0&&(n=e&-e,a=t&-t,n>=a||n===32&&(a&4194048)!==0)?t:e}function Au(l,t){return(l.pendingLanes&~(l.suspendedLanes&~l.pingedLanes)&t)===0}function O1(l,t){switch(l){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 yi(){var l=Ae;return Ae<<=1,(Ae&62914560)===0&&(Ae=4194304),l}function Kn(l){for(var t=[],a=0;31>a;a++)t.push(l);return t}function Eu(l,t){l.pendingLanes|=t,t!==268435456&&(l.suspendedLanes=0,l.pingedLanes=0,l.warmLanes=0)}function M1(l,t,a,u,e,n){var f=l.pendingLanes;l.pendingLanes=a,l.suspendedLanes=0,l.pingedLanes=0,l.warmLanes=0,l.expiredLanes&=a,l.entangledLanes&=a,l.errorRecoveryDisabledLanes&=a,l.shellSuspendCounter=0;var c=l.entanglements,i=l.expirationTimes,d=l.hiddenUpdates;for(a=f&~a;0"u")return null;try{return l.activeElement||l.body}catch{return l.body}}var q1=/[\n"\\]/g;function xl(l){return l.replace(q1,function(t){return"\\"+t.charCodeAt(0).toString(16)+" "})}function wn(l,t,a,u,e,n,f,c){l.name="",f!=null&&typeof f!="function"&&typeof f!="symbol"&&typeof f!="boolean"?l.type=f:l.removeAttribute("type"),t!=null?f==="number"?(t===0&&l.value===""||l.value!=t)&&(l.value=""+Ll(t)):l.value!==""+Ll(t)&&(l.value=""+Ll(t)):f!=="submit"&&f!=="reset"||l.removeAttribute("value"),t!=null?$n(l,f,Ll(t)):a!=null?$n(l,f,Ll(a)):u!=null&&l.removeAttribute("value"),e==null&&n!=null&&(l.defaultChecked=!!n),e!=null&&(l.checked=e&&typeof e!="function"&&typeof e!="symbol"),c!=null&&typeof c!="function"&&typeof c!="symbol"&&typeof c!="boolean"?l.name=""+Ll(c):l.removeAttribute("name")}function Oi(l,t,a,u,e,n,f,c){if(n!=null&&typeof n!="function"&&typeof n!="symbol"&&typeof n!="boolean"&&(l.type=n),t!=null||a!=null){if(!(n!=="submit"&&n!=="reset"||t!=null)){Wn(l);return}a=a!=null?""+Ll(a):"",t=t!=null?""+Ll(t):a,c||t===l.value||(l.value=t),l.defaultValue=t}u=u??e,u=typeof u!="function"&&typeof u!="symbol"&&!!u,l.checked=c?l.checked:!!u,l.defaultChecked=!!u,f!=null&&typeof f!="function"&&typeof f!="symbol"&&typeof f!="boolean"&&(l.name=f),Wn(l)}function $n(l,t,a){t==="number"&&Me(l.ownerDocument)===l||l.defaultValue===""+a||(l.defaultValue=""+a)}function Za(l,t,a,u){if(l=l.options,t){t={};for(var e=0;e"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),lf=!1;if(Tt)try{var Du={};Object.defineProperty(Du,"passive",{get:function(){lf=!0}}),window.addEventListener("test",Du,Du),window.removeEventListener("test",Du,Du)}catch{lf=!1}var jt=null,tf=null,Ue=null;function qi(){if(Ue)return Ue;var l,t=tf,a=t.length,u,e="value"in jt?jt.value:jt.textContent,n=e.length;for(l=0;l=Hu),Ri=" ",Ci=!1;function Zi(l,t){switch(l){case"keyup":return em.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function ji(l){return l=l.detail,typeof l=="object"&&"data"in l?l.data:null}var Ka=!1;function fm(l,t){switch(l){case"compositionend":return ji(t);case"keypress":return t.which!==32?null:(Ci=!0,Ri);case"textInput":return l=t.data,l===Ri&&Ci?null:l;default:return null}}function cm(l,t){if(Ka)return l==="compositionend"||!ff&&Zi(l,t)?(l=qi(),Ue=tf=jt=null,Ka=!1,l):null;switch(l){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:a,offset:t-l};l=u}l:{for(;a;){if(a.nextSibling){a=a.nextSibling;break l}a=a.parentNode}a=void 0}a=Wi(a)}}function $i(l,t){return l&&t?l===t?!0:l&&l.nodeType===3?!1:t&&t.nodeType===3?$i(l,t.parentNode):"contains"in l?l.contains(t):l.compareDocumentPosition?!!(l.compareDocumentPosition(t)&16):!1:!1}function Fi(l){l=l!=null&&l.ownerDocument!=null&&l.ownerDocument.defaultView!=null?l.ownerDocument.defaultView:window;for(var t=Me(l.document);t instanceof l.HTMLIFrameElement;){try{var a=typeof t.contentWindow.location.href=="string"}catch{a=!1}if(a)l=t.contentWindow;else break;t=Me(l.document)}return t}function yf(l){var t=l&&l.nodeName&&l.nodeName.toLowerCase();return t&&(t==="input"&&(l.type==="text"||l.type==="search"||l.type==="tel"||l.type==="url"||l.type==="password")||t==="textarea"||l.contentEditable==="true")}var gm=Tt&&"documentMode"in document&&11>=document.documentMode,La=null,mf=null,Yu=null,df=!1;function ki(l,t,a){var u=a.window===a?a.document:a.nodeType===9?a:a.ownerDocument;df||La==null||La!==Me(u)||(u=La,"selectionStart"in u&&yf(u)?u={start:u.selectionStart,end:u.selectionEnd}:(u=(u.ownerDocument&&u.ownerDocument.defaultView||window).getSelection(),u={anchorNode:u.anchorNode,anchorOffset:u.anchorOffset,focusNode:u.focusNode,focusOffset:u.focusOffset}),Yu&&Bu(Yu,u)||(Yu=u,u=An(mf,"onSelect"),0>=f,e-=f,it=1<<32-Yl(t)+e|a<B?(Q=O,O=null):Q=O.sibling;var Z=h(y,O,m[B],b);if(Z===null){O===null&&(O=Q);break}l&&O&&Z.alternate===null&&t(y,O),v=n(Z,v,B),C===null?M=Z:C.sibling=Z,C=Z,O=Q}if(B===m.length)return a(y,O),R&&Et(y,B),M;if(O===null){for(;BB?(Q=O,O=null):Q=O.sibling;var ca=h(y,O,Z.value,b);if(ca===null){O===null&&(O=Q);break}l&&O&&ca.alternate===null&&t(y,O),v=n(ca,v,B),C===null?M=ca:C.sibling=ca,C=ca,O=Q}if(Z.done)return a(y,O),R&&Et(y,B),M;if(O===null){for(;!Z.done;B++,Z=m.next())Z=T(y,Z.value,b),Z!==null&&(v=n(Z,v,B),C===null?M=Z:C.sibling=Z,C=Z);return R&&Et(y,B),M}for(O=u(O);!Z.done;B++,Z=m.next())Z=S(O,y,B,Z.value,b),Z!==null&&(l&&Z.alternate!==null&&O.delete(Z.key===null?B:Z.key),v=n(Z,v,B),C===null?M=Z:C.sibling=Z,C=Z);return l&&O.forEach(function(Qd){return t(y,Qd)}),R&&Et(y,B),M}function J(y,v,m,b){if(typeof m=="object"&&m!==null&&m.type===Vl&&m.key===null&&(m=m.props.children),typeof m=="object"&&m!==null){switch(m.$$typeof){case lt:l:{for(var M=m.key;v!==null;){if(v.key===M){if(M=m.type,M===Vl){if(v.tag===7){a(y,v.sibling),b=e(v,m.props.children),b.return=y,y=b;break l}}else if(v.elementType===M||typeof M=="object"&&M!==null&&M.$$typeof===at&&Ea(M)===v.type){a(y,v.sibling),b=e(v,m.props),Zu(b,m),b.return=y,y=b;break l}a(y,v);break}else t(y,v);v=v.sibling}m.type===Vl?(b=sa(m.props.children,y.mode,b,m.key),b.return=y,y=b):(b=Re(m.type,m.key,m.props,null,y.mode,b),Zu(b,m),b.return=y,y=b)}return f(y);case tt:l:{for(M=m.key;v!==null;){if(v.key===M)if(v.tag===4&&v.stateNode.containerInfo===m.containerInfo&&v.stateNode.implementation===m.implementation){a(y,v.sibling),b=e(v,m.children||[]),b.return=y,y=b;break l}else{a(y,v);break}else t(y,v);v=v.sibling}b=Tf(m,y.mode,b),b.return=y,y=b}return f(y);case at:return m=Ea(m),J(y,v,m,b)}if(st(m))return o(y,v,m,b);if(Kl(m)){if(M=Kl(m),typeof M!="function")throw Error(g(150));return m=M.call(m),_(y,v,m,b)}if(typeof m.then=="function")return J(y,v,Le(m),b);if(m.$$typeof===pl)return J(y,v,je(y,m),b);xe(y,m)}return typeof m=="string"&&m!==""||typeof m=="number"||typeof m=="bigint"?(m=""+m,v!==null&&v.tag===6?(a(y,v.sibling),b=e(v,m),b.return=y,y=b):(a(y,v),b=zf(m,y.mode,b),b.return=y,y=b),f(y)):a(y,v)}return function(y,v,m,b){try{Cu=0;var M=J(y,v,m,b);return lu=null,M}catch(O){if(O===Pa||O===pe)throw O;var C=Xl(29,O,null,y.mode);return C.lanes=b,C.return=y,C}finally{}}}var Oa=A0(!0),E0=A0(!1),xt=!1;function Bf(l){l.updateQueue={baseState:l.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function Yf(l,t){l=l.updateQueue,t.updateQueue===l&&(t.updateQueue={baseState:l.baseState,firstBaseUpdate:l.firstBaseUpdate,lastBaseUpdate:l.lastBaseUpdate,shared:l.shared,callbacks:null})}function Jt(l){return{lane:l,tag:0,payload:null,callback:null,next:null}}function rt(l,t,a){var u=l.updateQueue;if(u===null)return null;if(u=u.shared,(j&2)!==0){var e=u.pending;return e===null?t.next=t:(t.next=e.next,e.next=t),u.pending=t,t=Qe(l),e0(l,null,a),t}return Xe(l,u,t,a),Qe(l)}function ju(l,t,a){if(t=t.updateQueue,t!==null&&(t=t.shared,(a&4194048)!==0)){var u=t.lanes;u&=l.pendingLanes,a|=u,t.lanes=a,di(l,a)}}function Gf(l,t){var a=l.updateQueue,u=l.alternate;if(u!==null&&(u=u.updateQueue,a===u)){var e=null,n=null;if(a=a.firstBaseUpdate,a!==null){do{var f={lane:a.lane,tag:a.tag,payload:a.payload,callback:null,next:null};n===null?e=n=f:n=n.next=f,a=a.next}while(a!==null);n===null?e=n=t:n=n.next=t}else e=n=t;a={baseState:u.baseState,firstBaseUpdate:e,lastBaseUpdate:n,shared:u.shared,callbacks:u.callbacks},l.updateQueue=a;return}l=a.lastBaseUpdate,l===null?a.firstBaseUpdate=t:l.next=t,a.lastBaseUpdate=t}var Xf=!1;function Vu(){if(Xf){var l=Ia;if(l!==null)throw l}}function pu(l,t,a,u){Xf=!1;var e=l.updateQueue;xt=!1;var n=e.firstBaseUpdate,f=e.lastBaseUpdate,c=e.shared.pending;if(c!==null){e.shared.pending=null;var i=c,d=i.next;i.next=null,f===null?n=d:f.next=d,f=i;var s=l.alternate;s!==null&&(s=s.updateQueue,c=s.lastBaseUpdate,c!==f&&(c===null?s.firstBaseUpdate=d:c.next=d,s.lastBaseUpdate=i))}if(n!==null){var T=e.baseState;f=0,s=d=i=null,c=n;do{var h=c.lane&-536870913,S=h!==c.lane;if(S?(X&h)===h:(u&h)===h){h!==0&&h===ka&&(Xf=!0),s!==null&&(s=s.next={lane:0,tag:c.tag,payload:c.payload,callback:null,next:null});l:{var o=l,_=c;h=t;var J=a;switch(_.tag){case 1:if(o=_.payload,typeof o=="function"){T=o.call(J,T,h);break l}T=o;break l;case 3:o.flags=o.flags&-65537|128;case 0:if(o=_.payload,h=typeof o=="function"?o.call(J,T,h):o,h==null)break l;T=H({},T,h);break l;case 2:xt=!0}}h=c.callback,h!==null&&(l.flags|=64,S&&(l.flags|=8192),S=e.callbacks,S===null?e.callbacks=[h]:S.push(h))}else S={lane:h,tag:c.tag,payload:c.payload,callback:c.callback,next:null},s===null?(d=s=S,i=T):s=s.next=S,f|=h;if(c=c.next,c===null){if(c=e.shared.pending,c===null)break;S=c,c=S.next,S.next=null,e.lastBaseUpdate=S,e.shared.pending=null}}while(!0);s===null&&(i=T),e.baseState=i,e.firstBaseUpdate=d,e.lastBaseUpdate=s,n===null&&(e.shared.lanes=0),kt|=f,l.lanes=f,l.memoizedState=T}}function o0(l,t){if(typeof l!="function")throw Error(g(191,l));l.call(t)}function O0(l,t){var a=l.callbacks;if(a!==null)for(l.callbacks=null,l=0;ln?n:8;var f=z.T,c={};z.T=c,Pf(l,!1,t,a);try{var i=e(),d=z.S;if(d!==null&&d(c,i),i!==null&&typeof i=="object"&&typeof i.then=="function"){var s=Mm(i,u);xu(l,t,s,jl(l))}else xu(l,t,u,jl(l))}catch(T){xu(l,t,{then:function(){},status:"rejected",reason:T},jl())}finally{E.p=n,f!==null&&c.types!==null&&(f.types=c.types),z.T=f}}function qm(){}function kf(l,t,a,u){if(l.tag!==5)throw Error(g(476));var e=tv(l).queue;lv(l,e,t,N,a===null?qm:function(){return av(l),a(u)})}function tv(l){var t=l.memoizedState;if(t!==null)return t;t={memoizedState:N,baseState:N,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Dt,lastRenderedState:N},next:null};var a={};return t.next={memoizedState:a,baseState:a,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Dt,lastRenderedState:a},next:null},l.memoizedState=t,l=l.alternate,l!==null&&(l.memoizedState=t),t}function av(l){var t=tv(l);t.next===null&&(t=l.alternate.memoizedState),xu(l,t.next.queue,{},jl())}function If(){return sl(ce)}function uv(){return nl().memoizedState}function ev(){return nl().memoizedState}function Bm(l){for(var t=l.return;t!==null;){switch(t.tag){case 24:case 3:var a=jl();l=Jt(a);var u=rt(t,l,a);u!==null&&(Hl(u,t,a),ju(u,t,a)),t={cache:_f()},l.payload=t;return}t=t.return}}function Ym(l,t,a){var u=jl();a={lane:u,revertLane:0,gesture:null,action:a,hasEagerState:!1,eagerState:null,next:null},ln(l)?fv(t,a):(a=sf(l,t,a,u),a!==null&&(Hl(a,l,u),cv(a,t,u)))}function nv(l,t,a){var u=jl();xu(l,t,a,u)}function xu(l,t,a,u){var e={lane:u,revertLane:0,gesture:null,action:a,hasEagerState:!1,eagerState:null,next:null};if(ln(l))fv(t,e);else{var n=l.alternate;if(l.lanes===0&&(n===null||n.lanes===0)&&(n=t.lastRenderedReducer,n!==null))try{var f=t.lastRenderedState,c=n(f,a);if(e.hasEagerState=!0,e.eagerState=c,Gl(c,f))return Xe(l,t,e,0),W===null&&Ge(),!1}catch{}finally{}if(a=sf(l,t,e,u),a!==null)return Hl(a,l,u),cv(a,t,u),!0}return!1}function Pf(l,t,a,u){if(u={lane:2,revertLane:Bc(),gesture:null,action:u,hasEagerState:!1,eagerState:null,next:null},ln(l)){if(t)throw Error(g(479))}else t=sf(l,a,u,2),t!==null&&Hl(t,l,2)}function ln(l){var t=l.alternate;return l===q||t!==null&&t===q}function fv(l,t){au=We=!0;var a=l.pending;a===null?t.next=t:(t.next=a.next,a.next=t),l.pending=t}function cv(l,t,a){if((a&4194048)!==0){var u=t.lanes;u&=l.pendingLanes,a|=u,t.lanes=a,di(l,a)}}var Ju={readContext:sl,use:Fe,useCallback:ll,useContext:ll,useEffect:ll,useImperativeHandle:ll,useLayoutEffect:ll,useInsertionEffect:ll,useMemo:ll,useReducer:ll,useRef:ll,useState:ll,useDebugValue:ll,useDeferredValue:ll,useTransition:ll,useSyncExternalStore:ll,useId:ll,useHostTransitionStatus:ll,useFormState:ll,useActionState:ll,useOptimistic:ll,useMemoCache:ll,useCacheRefresh:ll};Ju.useEffectEvent=ll;var iv={readContext:sl,use:Fe,useCallback:function(l,t){return El().memoizedState=[l,t===void 0?null:t],l},useContext:sl,useEffect:J0,useImperativeHandle:function(l,t,a){a=a!=null?a.concat([l]):null,Ie(4194308,4,$0.bind(null,t,l),a)},useLayoutEffect:function(l,t){return Ie(4194308,4,l,t)},useInsertionEffect:function(l,t){Ie(4,2,l,t)},useMemo:function(l,t){var a=El();t=t===void 0?null:t;var u=l();if(Ma){Ct(!0);try{l()}finally{Ct(!1)}}return a.memoizedState=[u,t],u},useReducer:function(l,t,a){var u=El();if(a!==void 0){var e=a(t);if(Ma){Ct(!0);try{a(t)}finally{Ct(!1)}}}else e=t;return u.memoizedState=u.baseState=e,l={pending:null,lanes:0,dispatch:null,lastRenderedReducer:l,lastRenderedState:e},u.queue=l,l=l.dispatch=Ym.bind(null,q,l),[u.memoizedState,l]},useRef:function(l){var t=El();return l={current:l},t.memoizedState=l},useState:function(l){l=rf(l);var t=l.queue,a=nv.bind(null,q,t);return t.dispatch=a,[l.memoizedState,a]},useDebugValue:$f,useDeferredValue:function(l,t){var a=El();return Ff(a,l,t)},useTransition:function(){var l=rf(!1);return l=lv.bind(null,q,l.queue,!0,!1),El().memoizedState=l,[!1,l]},useSyncExternalStore:function(l,t,a){var u=q,e=El();if(R){if(a===void 0)throw Error(g(407));a=a()}else{if(a=t(),W===null)throw Error(g(349));(X&127)!==0||N0(u,t,a)}e.memoizedState=a;var n={value:a,getSnapshot:t};return e.queue=n,J0(B0.bind(null,u,n,l),[l]),u.flags|=2048,eu(9,{destroy:void 0},q0.bind(null,u,n,a,t),null),a},useId:function(){var l=El(),t=W.identifierPrefix;if(R){var a=vt,u=it;a=(u&~(1<<32-Yl(u)-1)).toString(32)+a,t="_"+t+"R_"+a,a=we++,0<\/script>",n=n.removeChild(n.firstChild);break;case"select":n=typeof u.is=="string"?f.createElement("select",{is:u.is}):f.createElement("select"),u.multiple?n.multiple=!0:u.size&&(n.size=u.size);break;default:n=typeof u.is=="string"?f.createElement(e,{is:u.is}):f.createElement(e)}}n[Sl]=t,n[ol]=u;l:for(f=t.child;f!==null;){if(f.tag===5||f.tag===6)n.appendChild(f.stateNode);else if(f.tag!==4&&f.tag!==27&&f.child!==null){f.child.return=f,f=f.child;continue}if(f===t)break l;for(;f.sibling===null;){if(f.return===null||f.return===t)break l;f=f.return}f.sibling.return=f.return,f=f.sibling}t.stateNode=n;l:switch(zl(n,e,u),e){case"button":case"input":case"select":case"textarea":u=!!u.autoFocus;break l;case"img":u=!0;break l;default:u=!1}u&&_t(t)}}return k(t),hc(t,t.type,l===null?null:l.memoizedProps,t.pendingProps,a),null;case 6:if(l&&t.stateNode!=null)l.memoizedProps!==u&&_t(t);else{if(typeof u!="string"&&t.stateNode===null)throw Error(g(166));if(l=Rt.current,$a(t)){if(l=t.stateNode,a=t.memoizedProps,u=null,e=gl,e!==null)switch(e.tag){case 27:case 5:u=e.memoizedProps}l[Sl]=t,l=!!(l.nodeValue===a||u!==null&&u.suppressHydrationWarning===!0||_y(l.nodeValue,a)),l||Kt(t,!0)}else l=En(l).createTextNode(u),l[Sl]=t,t.stateNode=l}return k(t),null;case 31:if(a=t.memoizedState,l===null||l.memoizedState!==null){if(u=$a(t),a!==null){if(l===null){if(!u)throw Error(g(318));if(l=t.memoizedState,l=l!==null?l.dehydrated:null,!l)throw Error(g(557));l[Sl]=t}else ba(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;k(t),l=!1}else a=Of(),l!==null&&l.memoizedState!==null&&(l.memoizedState.hydrationErrors=a),l=!0;if(!l)return t.flags&256?(Rl(t),t):(Rl(t),null);if((t.flags&128)!==0)throw Error(g(558))}return k(t),null;case 13:if(u=t.memoizedState,l===null||l.memoizedState!==null&&l.memoizedState.dehydrated!==null){if(e=$a(t),u!==null&&u.dehydrated!==null){if(l===null){if(!e)throw Error(g(318));if(e=t.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(g(317));e[Sl]=t}else ba(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;k(t),e=!1}else e=Of(),l!==null&&l.memoizedState!==null&&(l.memoizedState.hydrationErrors=e),e=!0;if(!e)return t.flags&256?(Rl(t),t):(Rl(t),null)}return Rl(t),(t.flags&128)!==0?(t.lanes=a,t):(a=u!==null,l=l!==null&&l.memoizedState!==null,a&&(u=t.child,e=null,u.alternate!==null&&u.alternate.memoizedState!==null&&u.alternate.memoizedState.cachePool!==null&&(e=u.alternate.memoizedState.cachePool.pool),n=null,u.memoizedState!==null&&u.memoizedState.cachePool!==null&&(n=u.memoizedState.cachePool.pool),n!==e&&(u.flags|=2048)),a!==l&&a&&(t.child.flags|=8192),nn(t,t.updateQueue),k(t),null);case 4:return Ya(),l===null&&Qc(t.stateNode.containerInfo),k(t),null;case 10:return Ot(t.type),k(t),null;case 19:if(P(el),u=t.memoizedState,u===null)return k(t),null;if(e=(t.flags&128)!==0,n=u.rendering,n===null)if(e)Wu(u,!1);else{if(tl!==0||l!==null&&(l.flags&128)!==0)for(l=t.child;l!==null;){if(n=re(l),n!==null){for(t.flags|=128,Wu(u,!1),l=n.updateQueue,t.updateQueue=l,nn(t,l),t.subtreeFlags=0,l=a,a=t.child;a!==null;)n0(a,l),a=a.sibling;return V(el,el.current&1|2),R&&Et(t,u.treeForkCount),t.child}l=l.sibling}u.tail!==null&&ql()>mn&&(t.flags|=128,e=!0,Wu(u,!1),t.lanes=4194304)}else{if(!e)if(l=re(n),l!==null){if(t.flags|=128,e=!0,l=l.updateQueue,t.updateQueue=l,nn(t,l),Wu(u,!0),u.tail===null&&u.tailMode==="hidden"&&!n.alternate&&!R)return k(t),null}else 2*ql()-u.renderingStartTime>mn&&a!==536870912&&(t.flags|=128,e=!0,Wu(u,!1),t.lanes=4194304);u.isBackwards?(n.sibling=t.child,t.child=n):(l=u.last,l!==null?l.sibling=n:t.child=n,u.last=n)}return u.tail!==null?(l=u.tail,u.rendering=l,u.tail=l.sibling,u.renderingStartTime=ql(),l.sibling=null,a=el.current,V(el,e?a&1|2:a&1),R&&Et(t,u.treeForkCount),l):(k(t),null);case 22:case 23:return Rl(t),Rf(),u=t.memoizedState!==null,l!==null?l.memoizedState!==null!==u&&(t.flags|=8192):u&&(t.flags|=8192),u?(a&536870912)!==0&&(t.flags&128)===0&&(k(t),t.subtreeFlags&6&&(t.flags|=8192)):k(t),a=t.updateQueue,a!==null&&nn(t,a.retryQueue),a=null,l!==null&&l.memoizedState!==null&&l.memoizedState.cachePool!==null&&(a=l.memoizedState.cachePool.pool),u=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(u=t.memoizedState.cachePool.pool),u!==a&&(t.flags|=2048),l!==null&&P(Aa),null;case 24:return a=null,l!==null&&(a=l.memoizedState.cache),t.memoizedState.cache!==a&&(t.flags|=2048),Ot(fl),k(t),null;case 25:return null;case 30:return null}throw Error(g(156,t.tag))}function Cm(l,t){switch(Ef(t),t.tag){case 1:return l=t.flags,l&65536?(t.flags=l&-65537|128,t):null;case 3:return Ot(fl),Ya(),l=t.flags,(l&65536)!==0&&(l&128)===0?(t.flags=l&-65537|128,t):null;case 26:case 27:case 5:return se(t),null;case 31:if(t.memoizedState!==null){if(Rl(t),t.alternate===null)throw Error(g(340));ba()}return l=t.flags,l&65536?(t.flags=l&-65537|128,t):null;case 13:if(Rl(t),l=t.memoizedState,l!==null&&l.dehydrated!==null){if(t.alternate===null)throw Error(g(340));ba()}return l=t.flags,l&65536?(t.flags=l&-65537|128,t):null;case 19:return P(el),null;case 4:return Ya(),null;case 10:return Ot(t.type),null;case 22:case 23:return Rl(t),Rf(),l!==null&&P(Aa),l=t.flags,l&65536?(t.flags=l&-65537|128,t):null;case 24:return Ot(fl),null;case 25:return null;default:return null}}function Yv(l,t){switch(Ef(t),t.tag){case 3:Ot(fl),Ya();break;case 26:case 27:case 5:se(t);break;case 4:Ya();break;case 31:t.memoizedState!==null&&Rl(t);break;case 13:Rl(t);break;case 19:P(el);break;case 10:Ot(t.type);break;case 22:case 23:Rl(t),Rf(),l!==null&&P(Aa);break;case 24:Ot(fl)}}function wu(l,t){try{var a=t.updateQueue,u=a!==null?a.lastEffect:null;if(u!==null){var e=u.next;a=e;do{if((a.tag&l)===l){u=void 0;var n=a.create,f=a.inst;u=n(),f.destroy=u}a=a.next}while(a!==e)}}catch(c){K(t,t.return,c)}}function $t(l,t,a){try{var u=t.updateQueue,e=u!==null?u.lastEffect:null;if(e!==null){var n=e.next;u=n;do{if((u.tag&l)===l){var f=u.inst,c=f.destroy;if(c!==void 0){f.destroy=void 0,e=t;var i=a,d=c;try{d()}catch(s){K(e,i,s)}}}u=u.next}while(u!==n)}}catch(s){K(t,t.return,s)}}function Gv(l){var t=l.updateQueue;if(t!==null){var a=l.stateNode;try{O0(t,a)}catch(u){K(l,l.return,u)}}}function Xv(l,t,a){a.props=Da(l.type,l.memoizedProps),a.state=l.memoizedState;try{a.componentWillUnmount()}catch(u){K(l,t,u)}}function $u(l,t){try{var a=l.ref;if(a!==null){switch(l.tag){case 26:case 27:case 5:var u=l.stateNode;break;case 30:u=l.stateNode;break;default:u=l.stateNode}typeof a=="function"?l.refCleanup=a(u):a.current=u}}catch(e){K(l,t,e)}}function yt(l,t){var a=l.ref,u=l.refCleanup;if(a!==null)if(typeof u=="function")try{u()}catch(e){K(l,t,e)}finally{l.refCleanup=null,l=l.alternate,l!=null&&(l.refCleanup=null)}else if(typeof a=="function")try{a(null)}catch(e){K(l,t,e)}else a.current=null}function Qv(l){var t=l.type,a=l.memoizedProps,u=l.stateNode;try{l:switch(t){case"button":case"input":case"select":case"textarea":a.autoFocus&&u.focus();break l;case"img":a.src?u.src=a.src:a.srcSet&&(u.srcset=a.srcSet)}}catch(e){K(l,l.return,e)}}function Sc(l,t,a){try{var u=l.stateNode;nd(u,l.type,a,t),u[ol]=t}catch(e){K(l,l.return,e)}}function Rv(l){return l.tag===5||l.tag===3||l.tag===26||l.tag===27&&aa(l.type)||l.tag===4}function gc(l){l:for(;;){for(;l.sibling===null;){if(l.return===null||Rv(l.return))return null;l=l.return}for(l.sibling.return=l.return,l=l.sibling;l.tag!==5&&l.tag!==6&&l.tag!==18;){if(l.tag===27&&aa(l.type)||l.flags&2||l.child===null||l.tag===4)continue l;l.child.return=l,l=l.child}if(!(l.flags&2))return l.stateNode}}function sc(l,t,a){var u=l.tag;if(u===5||u===6)l=l.stateNode,t?(a.nodeType===9?a.body:a.nodeName==="HTML"?a.ownerDocument.body:a).insertBefore(l,t):(t=a.nodeType===9?a.body:a.nodeName==="HTML"?a.ownerDocument.body:a,t.appendChild(l),a=a._reactRootContainer,a!=null||t.onclick!==null||(t.onclick=zt));else if(u!==4&&(u===27&&aa(l.type)&&(a=l.stateNode,t=null),l=l.child,l!==null))for(sc(l,t,a),l=l.sibling;l!==null;)sc(l,t,a),l=l.sibling}function fn(l,t,a){var u=l.tag;if(u===5||u===6)l=l.stateNode,t?a.insertBefore(l,t):a.appendChild(l);else if(u!==4&&(u===27&&aa(l.type)&&(a=l.stateNode),l=l.child,l!==null))for(fn(l,t,a),l=l.sibling;l!==null;)fn(l,t,a),l=l.sibling}function Cv(l){var t=l.stateNode,a=l.memoizedProps;try{for(var u=l.type,e=t.attributes;e.length;)t.removeAttributeNode(e[0]);zl(t,u,a),t[Sl]=l,t[ol]=a}catch(n){K(l,l.return,n)}}var Ht=!1,vl=!1,bc=!1,Zv=typeof WeakSet=="function"?WeakSet:Set,hl=null;function Zm(l,t){if(l=l.containerInfo,Zc=Hn,l=Fi(l),yf(l)){if("selectionStart"in l)var a={start:l.selectionStart,end:l.selectionEnd};else l:{a=(a=l.ownerDocument)&&a.defaultView||window;var u=a.getSelection&&a.getSelection();if(u&&u.rangeCount!==0){a=u.anchorNode;var e=u.anchorOffset,n=u.focusNode;u=u.focusOffset;try{a.nodeType,n.nodeType}catch{a=null;break l}var f=0,c=-1,i=-1,d=0,s=0,T=l,h=null;t:for(;;){for(var S;T!==a||e!==0&&T.nodeType!==3||(c=f+e),T!==n||u!==0&&T.nodeType!==3||(i=f+u),T.nodeType===3&&(f+=T.nodeValue.length),(S=T.firstChild)!==null;)h=T,T=S;for(;;){if(T===l)break t;if(h===a&&++d===e&&(c=f),h===n&&++s===u&&(i=f),(S=T.nextSibling)!==null)break;T=h,h=T.parentNode}T=S}a=c===-1||i===-1?null:{start:c,end:i}}else a=null}a=a||{start:0,end:0}}else a=null;for(jc={focusedElem:l,selectionRange:a},Hn=!1,hl=t;hl!==null;)if(t=hl,l=t.child,(t.subtreeFlags&1028)!==0&&l!==null)l.return=t,hl=l;else for(;hl!==null;){switch(t=hl,n=t.alternate,l=t.flags,t.tag){case 0:if((l&4)!==0&&(l=t.updateQueue,l=l!==null?l.events:null,l!==null))for(a=0;a title"))),zl(n,u,a),n[Sl]=l,dl(n),u=n;break l;case"link":var f=xy("link","href",e).get(u+(a.href||""));if(f){for(var c=0;cJ&&(f=J,J=_,_=f);var y=wi(c,_),v=wi(c,J);if(y&&v&&(S.rangeCount!==1||S.anchorNode!==y.node||S.anchorOffset!==y.offset||S.focusNode!==v.node||S.focusOffset!==v.offset)){var m=T.createRange();m.setStart(y.node,y.offset),S.removeAllRanges(),_>J?(S.addRange(m),S.extend(v.node,v.offset)):(m.setEnd(v.node,v.offset),S.addRange(m))}}}}for(T=[],S=c;S=S.parentNode;)S.nodeType===1&&T.push({element:S,left:S.scrollLeft,top:S.scrollTop});for(typeof c.focus=="function"&&c.focus(),c=0;ca?32:a,z.T=null,a=Mc,Mc=null;var n=Pt,f=Gt;if(yl=0,vu=Pt=null,Gt=0,(j&6)!==0)throw Error(g(331));var c=j;if(j|=4,$v(n.current),rv(n,n.current,f,a),j=c,te(0,!1),Bl&&typeof Bl.onPostCommitFiberRoot=="function")try{Bl.onPostCommitFiberRoot(Tu,n)}catch{}return!0}finally{E.p=e,z.T=u,hy(l,t)}}function gy(l,t,a){t=rl(a,t),t=uc(l.stateNode,t,2),l=rt(l,t,2),l!==null&&(Eu(l,2),mt(l))}function K(l,t,a){if(l.tag===3)gy(l,l,a);else for(;t!==null;){if(t.tag===3){gy(t,l,a);break}else if(t.tag===1){var u=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof u.componentDidCatch=="function"&&(It===null||!It.has(u))){l=rl(a,l),a=sv(2),u=rt(t,a,2),u!==null&&(bv(a,u,t,l),Eu(u,2),mt(u));break}}t=t.return}}function Hc(l,t,a){var u=l.pingCache;if(u===null){u=l.pingCache=new pm;var e=new Set;u.set(t,e)}else e=u.get(t),e===void 0&&(e=new Set,u.set(t,e));e.has(a)||(Ac=!0,e.add(a),l=rm.bind(null,l,t,a),t.then(l,l))}function rm(l,t,a){var u=l.pingCache;u!==null&&u.delete(t),l.pingedLanes|=l.suspendedLanes&a,l.warmLanes&=~a,W===l&&(X&a)===a&&(tl===4||tl===3&&(X&62914560)===X&&300>ql()-yn?(j&2)===0&&yu(l,0):Ec|=a,iu===X&&(iu=0)),mt(l)}function sy(l,t){t===0&&(t=yi()),l=ga(l,t),l!==null&&(Eu(l,t),mt(l))}function Wm(l){var t=l.memoizedState,a=0;t!==null&&(a=t.retryLane),sy(l,a)}function wm(l,t){var a=0;switch(l.tag){case 31:case 13:var u=l.stateNode,e=l.memoizedState;e!==null&&(a=e.retryLane);break;case 19:u=l.stateNode;break;case 22:u=l.stateNode._retryCache;break;default:throw Error(g(314))}u!==null&&u.delete(t),sy(l,a)}function $m(l,t){return Vn(l,t)}var bn=null,du=null,Nc=!1,zn=!1,qc=!1,ta=0;function mt(l){l!==du&&l.next===null&&(du===null?bn=du=l:du=du.next=l),zn=!0,Nc||(Nc=!0,km())}function te(l,t){if(!qc&&zn){qc=!0;do for(var a=!1,u=bn;u!==null;){if(l!==0){var e=u.pendingLanes;if(e===0)var n=0;else{var f=u.suspendedLanes,c=u.pingedLanes;n=(1<<31-Yl(42|l)+1)-1,n&=e&~(f&~c),n=n&201326741?n&201326741|1:n?n|2:0}n!==0&&(a=!0,Ay(u,n))}else n=X,n=Ee(u,u===W?n:0,u.cancelPendingCommit!==null||u.timeoutHandle!==-1),(n&3)===0||Au(u,n)||(a=!0,Ay(u,n));u=u.next}while(a);qc=!1}}function Fm(){by()}function by(){zn=Nc=!1;var l=0;ta!==0&&cd()&&(l=ta);for(var t=ql(),a=null,u=bn;u!==null;){var e=u.next,n=zy(u,t);n===0?(u.next=null,a===null?bn=e:a.next=e,e===null&&(du=a)):(a=u,(l!==0||(n&3)!==0)&&(zn=!0)),u=e}yl!==0&&yl!==5||te(l),ta!==0&&(ta=0)}function zy(l,t){for(var a=l.suspendedLanes,u=l.pingedLanes,e=l.expirationTimes,n=l.pendingLanes&-62914561;0c)break;var s=i.transferSize,T=i.initiatorType;s&&Hy(T)&&(i=i.responseEnd,f+=s*(i"u"?null:document;function Vy(l,t,a){var u=hu;if(u&&typeof t=="string"&&t){var e=xl(t);e='link[rel="'+l+'"][href="'+e+'"]',typeof a=="string"&&(e+='[crossorigin="'+a+'"]'),jy.has(e)||(jy.add(e),l={rel:l,crossOrigin:a,href:t},u.querySelector(e)===null&&(t=u.createElement("link"),zl(t,"link",l),dl(t),u.head.appendChild(t)))}}function sd(l){Xt.D(l),Vy("dns-prefetch",l,null)}function bd(l,t){Xt.C(l,t),Vy("preconnect",l,t)}function zd(l,t,a){Xt.L(l,t,a);var u=hu;if(u&&l&&t){var e='link[rel="preload"][as="'+xl(t)+'"]';t==="image"&&a&&a.imageSrcSet?(e+='[imagesrcset="'+xl(a.imageSrcSet)+'"]',typeof a.imageSizes=="string"&&(e+='[imagesizes="'+xl(a.imageSizes)+'"]')):e+='[href="'+xl(l)+'"]';var n=e;switch(t){case"style":n=Su(l);break;case"script":n=gu(l)}Il.has(n)||(l=H({rel:"preload",href:t==="image"&&a&&a.imageSrcSet?void 0:l,as:t},a),Il.set(n,l),u.querySelector(e)!==null||t==="style"&&u.querySelector(ne(n))||t==="script"&&u.querySelector(fe(n))||(t=u.createElement("link"),zl(t,"link",l),dl(t),u.head.appendChild(t)))}}function Td(l,t){Xt.m(l,t);var a=hu;if(a&&l){var u=t&&typeof t.as=="string"?t.as:"script",e='link[rel="modulepreload"][as="'+xl(u)+'"][href="'+xl(l)+'"]',n=e;switch(u){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":n=gu(l)}if(!Il.has(n)&&(l=H({rel:"modulepreload",href:l},t),Il.set(n,l),a.querySelector(e)===null)){switch(u){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(a.querySelector(fe(n)))return}u=a.createElement("link"),zl(u,"link",l),dl(u),a.head.appendChild(u)}}}function Ad(l,t,a){Xt.S(l,t,a);var u=hu;if(u&&l){var e=Ra(u).hoistableStyles,n=Su(l);t=t||"default";var f=e.get(n);if(!f){var c={loading:0,preload:null};if(f=u.querySelector(ne(n)))c.loading=5;else{l=H({rel:"stylesheet",href:l,"data-precedence":t},a),(a=Il.get(n))&&rc(l,a);var i=f=u.createElement("link");dl(i),zl(i,"link",l),i._p=new Promise(function(d,s){i.onload=d,i.onerror=s}),i.addEventListener("load",function(){c.loading|=1}),i.addEventListener("error",function(){c.loading|=2}),c.loading|=4,On(f,t,u)}f={type:"stylesheet",instance:f,count:1,state:c},e.set(n,f)}}}function Ed(l,t){Xt.X(l,t);var a=hu;if(a&&l){var u=Ra(a).hoistableScripts,e=gu(l),n=u.get(e);n||(n=a.querySelector(fe(e)),n||(l=H({src:l,async:!0},t),(t=Il.get(e))&&Wc(l,t),n=a.createElement("script"),dl(n),zl(n,"link",l),a.head.appendChild(n)),n={type:"script",instance:n,count:1,state:null},u.set(e,n))}}function od(l,t){Xt.M(l,t);var a=hu;if(a&&l){var u=Ra(a).hoistableScripts,e=gu(l),n=u.get(e);n||(n=a.querySelector(fe(e)),n||(l=H({src:l,async:!0,type:"module"},t),(t=Il.get(e))&&Wc(l,t),n=a.createElement("script"),dl(n),zl(n,"link",l),a.head.appendChild(n)),n={type:"script",instance:n,count:1,state:null},u.set(e,n))}}function py(l,t,a,u){var e=(e=Rt.current)?on(e):null;if(!e)throw Error(g(446));switch(l){case"meta":case"title":return null;case"style":return typeof a.precedence=="string"&&typeof a.href=="string"?(t=Su(a.href),a=Ra(e).hoistableStyles,u=a.get(t),u||(u={type:"style",instance:null,count:0,state:null},a.set(t,u)),u):{type:"void",instance:null,count:0,state:null};case"link":if(a.rel==="stylesheet"&&typeof a.href=="string"&&typeof a.precedence=="string"){l=Su(a.href);var n=Ra(e).hoistableStyles,f=n.get(l);if(f||(e=e.ownerDocument||e,f={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},n.set(l,f),(n=e.querySelector(ne(l)))&&!n._p&&(f.instance=n,f.state.loading=5),Il.has(l)||(a={rel:"preload",as:"style",href:a.href,crossOrigin:a.crossOrigin,integrity:a.integrity,media:a.media,hrefLang:a.hrefLang,referrerPolicy:a.referrerPolicy},Il.set(l,a),n||Od(e,l,a,f.state))),t&&u===null)throw Error(g(528,""));return f}if(t&&u!==null)throw Error(g(529,""));return null;case"script":return t=a.async,a=a.src,typeof a=="string"&&t&&typeof t!="function"&&typeof t!="symbol"?(t=gu(a),a=Ra(e).hoistableScripts,u=a.get(t),u||(u={type:"script",instance:null,count:0,state:null},a.set(t,u)),u):{type:"void",instance:null,count:0,state:null};default:throw Error(g(444,l))}}function Su(l){return'href="'+xl(l)+'"'}function ne(l){return'link[rel="stylesheet"]['+l+"]"}function Ky(l){return H({},l,{"data-precedence":l.precedence,precedence:null})}function Od(l,t,a,u){l.querySelector('link[rel="preload"][as="style"]['+t+"]")?u.loading=1:(t=l.createElement("link"),u.preload=t,t.addEventListener("load",function(){return u.loading|=1}),t.addEventListener("error",function(){return u.loading|=2}),zl(t,"link",a),dl(t),l.head.appendChild(t))}function gu(l){return'[src="'+xl(l)+'"]'}function fe(l){return"script[async]"+l}function Ly(l,t,a){if(t.count++,t.instance===null)switch(t.type){case"style":var u=l.querySelector('style[data-href~="'+xl(a.href)+'"]');if(u)return t.instance=u,dl(u),u;var e=H({},a,{"data-href":a.href,"data-precedence":a.precedence,href:null,precedence:null});return u=(l.ownerDocument||l).createElement("style"),dl(u),zl(u,"style",e),On(u,a.precedence,l),t.instance=u;case"stylesheet":e=Su(a.href);var n=l.querySelector(ne(e));if(n)return t.state.loading|=4,t.instance=n,dl(n),n;u=Ky(a),(e=Il.get(e))&&rc(u,e),n=(l.ownerDocument||l).createElement("link"),dl(n);var f=n;return f._p=new Promise(function(c,i){f.onload=c,f.onerror=i}),zl(n,"link",u),t.state.loading|=4,On(n,a.precedence,l),t.instance=n;case"script":return n=gu(a.src),(e=l.querySelector(fe(n)))?(t.instance=e,dl(e),e):(u=a,(e=Il.get(n))&&(u=H({},a),Wc(u,e)),l=l.ownerDocument||l,e=l.createElement("script"),dl(e),zl(e,"link",u),l.head.appendChild(e),t.instance=e);case"void":return null;default:throw Error(g(443,t.type))}else t.type==="stylesheet"&&(t.state.loading&4)===0&&(u=t.instance,t.state.loading|=4,On(u,a.precedence,l));return t.instance}function On(l,t,a){for(var u=a.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),e=u.length?u[u.length-1]:null,n=e,f=0;f title"):null)}function Md(l,t,a){if(a===1||t.itemProp!=null)return!1;switch(l){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 l=t.disabled,typeof t.precedence=="string"&&l==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 ry(l){return!(l.type==="stylesheet"&&(l.state.loading&3)===0)}function Dd(l,t,a,u){if(a.type==="stylesheet"&&(typeof u.media!="string"||matchMedia(u.media).matches!==!1)&&(a.state.loading&4)===0){if(a.instance===null){var e=Su(u.href),n=t.querySelector(ne(e));if(n){t=n._p,t!==null&&typeof t=="object"&&typeof t.then=="function"&&(l.count++,l=Dn.bind(l),t.then(l,l)),a.state.loading|=4,a.instance=n,dl(n);return}n=t.ownerDocument||t,u=Ky(u),(e=Il.get(e))&&rc(u,e),n=n.createElement("link"),dl(n);var f=n;f._p=new Promise(function(c,i){f.onload=c,f.onerror=i}),zl(n,"link",u),a.instance=n}l.stylesheets===null&&(l.stylesheets=new Map),l.stylesheets.set(a,t),(t=a.state.preload)&&(a.state.loading&3)===0&&(l.count++,a=Dn.bind(l),t.addEventListener("load",a),t.addEventListener("error",a))}}var wc=0;function Ud(l,t){return l.stylesheets&&l.count===0&&_n(l,l.stylesheets),0wc?50:800)+t);return l.unsuspend=a,function(){l.unsuspend=null,clearTimeout(u),clearTimeout(e)}}:null}function Dn(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)_n(this,this.stylesheets);else if(this.unsuspend){var l=this.unsuspend;this.unsuspend=null,l()}}}var Un=null;function _n(l,t){l.stylesheets=null,l.unsuspend!==null&&(l.count++,Un=new Map,t.forEach(_d,l),Un=null,Dn.call(l))}function _d(l,t){if(!(t.state.loading&4)){var a=Un.get(l);if(a)var u=a.get(null);else{a=new Map,Un.set(l,a);for(var e=l.querySelectorAll("link[data-precedence],style[data-precedence]"),n=0;n"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(D)}catch(Nl){console.error(Nl)}}return D(),ti.exports=Vd(),ti.exports}var Ld=pd();export{Ld as c,jd as r}; diff --git a/apps/portal/public/storybook/assets/clock-C92s7kSC.js b/apps/portal/public/storybook/assets/clock-C92s7kSC.js new file mode 100644 index 00000000..eca9210a --- /dev/null +++ b/apps/portal/public/storybook/assets/clock-C92s7kSC.js @@ -0,0 +1,6 @@ +import{c}from"./createLucideIcon-CctB0W3q.js";/** + * @license lucide-react v0.563.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const o=[["path",{d:"M12 6v6l4 2",key:"mmk7yg"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]],r=c("clock",o);export{r as C}; diff --git a/apps/portal/public/storybook/assets/cn-CDN07tui.js b/apps/portal/public/storybook/assets/cn-CDN07tui.js new file mode 100644 index 00000000..edd0aea9 --- /dev/null +++ b/apps/portal/public/storybook/assets/cn-CDN07tui.js @@ -0,0 +1 @@ +function xe(e){var t,r,o="";if(typeof e=="string"||typeof e=="number")o+=e;else if(typeof e=="object")if(Array.isArray(e)){var i=e.length;for(t=0;t{const r=new Array(e.length+t.length);for(let o=0;o({classGroupId:e,validator:t}),we=(e=new Map,t=null,r)=>({nextPart:e,validators:t,classGroupId:r}),K="-",ue=[],je="arbitrary..",Le=e=>{const t=Ne(e),{conflictingClassGroups:r,conflictingClassGroupModifiers:o}=e;return{getClassGroupId:a=>{if(a.startsWith("[")&&a.endsWith("]"))return Ee(a);const u=a.split(K),c=u[0]===""&&u.length>1?1:0;return ke(u,c,t)},getConflictingClassGroupIds:(a,u)=>{if(u){const c=o[a],f=r[a];return c?f?Te(f,c):c:f||ue}return r[a]||ue}}},ke=(e,t,r)=>{if(e.length-t===0)return r.classGroupId;const i=e[t],d=r.nextPart.get(i);if(d){const f=ke(e,t+1,d);if(f)return f}const a=r.validators;if(a===null)return;const u=t===0?e.join(K):e.slice(t).join(K),c=a.length;for(let f=0;fe.slice(1,-1).indexOf(":")===-1?void 0:(()=>{const t=e.slice(1,-1),r=t.indexOf(":"),o=t.slice(0,r);return o?je+o:void 0})(),Ne=e=>{const{theme:t,classGroups:r}=e;return Ve(r,t)},Ve=(e,t)=>{const r=we();for(const o in e){const i=e[o];se(i,r,o,t)}return r},se=(e,t,r,o)=>{const i=e.length;for(let d=0;d{if(typeof e=="string"){_e(e,t,r);return}if(typeof e=="function"){We(e,t,r,o);return}Be(e,t,r,o)},_e=(e,t,r)=>{const o=e===""?t:ye(t,e);o.classGroupId=r},We=(e,t,r,o)=>{if($e(e)){se(e(o),t,r,o);return}t.validators===null&&(t.validators=[]),t.validators.push(Oe(r,e))},Be=(e,t,r,o)=>{const i=Object.entries(e),d=i.length;for(let a=0;a{let r=e;const o=t.split(K),i=o.length;for(let d=0;d"isThemeGetter"in e&&e.isThemeGetter===!0,Ue=e=>{if(e<1)return{get:()=>{},set:()=>{}};let t=0,r=Object.create(null),o=Object.create(null);const i=(d,a)=>{r[d]=a,t++,t>e&&(t=0,o=r,r=Object.create(null))};return{get(d){let a=r[d];if(a!==void 0)return a;if((a=o[d])!==void 0)return i(d,a),a},set(d,a){d in r?r[d]=a:i(d,a)}}},te="!",fe=":",De=[],be=(e,t,r,o,i)=>({modifiers:e,hasImportantModifier:t,baseClassName:r,maybePostfixModifierPosition:o,isExternal:i}),Ye=e=>{const{prefix:t,experimentalParseClassName:r}=e;let o=i=>{const d=[];let a=0,u=0,c=0,f;const h=i.length;for(let v=0;vc?f-c:void 0;return be(d,I,z,M)};if(t){const i=t+fe,d=o;o=a=>a.startsWith(i)?d(a.slice(i.length)):be(De,!1,a,void 0,!0)}if(r){const i=o;o=d=>r({className:d,parseClassName:i})}return o},qe=e=>{const t=new Map;return e.orderSensitiveModifiers.forEach((r,o)=>{t.set(r,1e6+o)}),r=>{const o=[];let i=[];for(let d=0;d0&&(i.sort(),o.push(...i),i=[]),o.push(a)):i.push(a)}return i.length>0&&(i.sort(),o.push(...i)),o}},Xe=e=>({cache:Ue(e.cacheSize),parseClassName:Ye(e),sortModifiers:qe(e),...Le(e)}),Je=/\s+/,He=(e,t)=>{const{parseClassName:r,getClassGroupId:o,getConflictingClassGroupIds:i,sortModifiers:d}=t,a=[],u=e.trim().split(Je);let c="";for(let f=u.length-1;f>=0;f-=1){const h=u[f],{isExternal:y,modifiers:z,hasImportantModifier:I,baseClassName:M,maybePostfixModifierPosition:v}=r(h);if(y){c=h+(c.length>0?" "+c:c);continue}let w=!!v,P=o(w?M.substring(0,v):M);if(!P){if(!w){c=h+(c.length>0?" "+c:c);continue}if(P=o(M),!P){c=h+(c.length>0?" "+c:c);continue}w=!1}const $=z.length===0?"":z.length===1?z[0]:d(z).join(":"),_=I?$+te:$,j=_+P;if(a.indexOf(j)>-1)continue;a.push(j);const L=i(P,w);for(let G=0;G0?" "+c:c)}return c},Ke=(...e)=>{let t=0,r,o,i="";for(;t{if(typeof e=="string")return e;let t,r="";for(let o=0;o{let r,o,i,d;const a=c=>{const f=t.reduce((h,y)=>y(h),e());return r=Xe(f),o=r.cache.get,i=r.cache.set,d=u,u(c)},u=c=>{const f=o(c);if(f)return f;const h=He(c,r);return i(c,h),h};return d=a,(...c)=>d(Ke(...c))},Ze=[],b=e=>{const t=r=>r[e]||Ze;return t.isThemeGetter=!0,t},ze=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,Ce=/^\((?:(\w[\w-]*):)?(.+)\)$/i,eo=/^\d+\/\d+$/,oo=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,ro=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,to=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,so=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,no=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,N=e=>eo.test(e),p=e=>!!e&&!Number.isNaN(Number(e)),R=e=>!!e&&Number.isInteger(Number(e)),oe=e=>e.endsWith("%")&&p(e.slice(0,-1)),S=e=>oo.test(e),ao=()=>!0,io=e=>ro.test(e)&&!to.test(e),Ae=()=>!1,lo=e=>so.test(e),co=e=>no.test(e),mo=e=>!s(e)&&!n(e),po=e=>V(e,Ie,Ae),s=e=>ze.test(e),O=e=>V(e,Me,io),re=e=>V(e,ho,p),ge=e=>V(e,Se,Ae),uo=e=>V(e,Re,co),J=e=>V(e,Pe,lo),n=e=>Ce.test(e),B=e=>F(e,Me),fo=e=>F(e,xo),he=e=>F(e,Se),bo=e=>F(e,Ie),go=e=>F(e,Re),H=e=>F(e,Pe,!0),V=(e,t,r)=>{const o=ze.exec(e);return o?o[1]?t(o[1]):r(o[2]):!1},F=(e,t,r=!1)=>{const o=Ce.exec(e);return o?o[1]?t(o[1]):r:!1},Se=e=>e==="position"||e==="percentage",Re=e=>e==="image"||e==="url",Ie=e=>e==="length"||e==="size"||e==="bg-size",Me=e=>e==="length",ho=e=>e==="number",xo=e=>e==="family-name",Pe=e=>e==="shadow",wo=()=>{const e=b("color"),t=b("font"),r=b("text"),o=b("font-weight"),i=b("tracking"),d=b("leading"),a=b("breakpoint"),u=b("container"),c=b("spacing"),f=b("radius"),h=b("shadow"),y=b("inset-shadow"),z=b("text-shadow"),I=b("drop-shadow"),M=b("blur"),v=b("perspective"),w=b("aspect"),P=b("ease"),$=b("animate"),_=()=>["auto","avoid","all","avoid-page","page","left","right","column"],j=()=>["center","top","bottom","left","right","top-left","left-top","top-right","right-top","bottom-right","right-bottom","bottom-left","left-bottom"],L=()=>[...j(),n,s],G=()=>["auto","hidden","clip","visible","scroll"],W=()=>["auto","contain","none"],m=()=>[n,s,c],C=()=>[N,"full","auto",...m()],ne=()=>[R,"none","subgrid",n,s],ae=()=>["auto",{span:["full",R,n,s]},R,n,s],U=()=>[R,"auto",n,s],ie=()=>["auto","min","max","fr",n,s],Q=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],E=()=>["start","end","center","stretch","center-safe","end-safe"],A=()=>["auto",...m()],T=()=>[N,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",...m()],l=()=>[e,n,s],le=()=>[...j(),he,ge,{position:[n,s]}],ce=()=>["no-repeat",{repeat:["","x","y","space","round"]}],de=()=>["auto","cover","contain",bo,po,{size:[n,s]}],Z=()=>[oe,B,O],x=()=>["","none","full",f,n,s],k=()=>["",p,B,O],D=()=>["solid","dashed","dotted","double"],me=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],g=()=>[p,oe,he,ge],pe=()=>["","none",M,n,s],Y=()=>["none",p,n,s],q=()=>["none",p,n,s],ee=()=>[p,n,s],X=()=>[N,"full",...m()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[S],breakpoint:[S],color:[ao],container:[S],"drop-shadow":[S],ease:["in","out","in-out"],font:[mo],"font-weight":["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"],"inset-shadow":[S],leading:["none","tight","snug","normal","relaxed","loose"],perspective:["dramatic","near","normal","midrange","distant","none"],radius:[S],shadow:[S],spacing:["px",p],text:[S],"text-shadow":[S],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",N,s,n,w]}],container:["container"],columns:[{columns:[p,s,n,u]}],"break-after":[{"break-after":_()}],"break-before":[{"break-before":_()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],sr:["sr-only","not-sr-only"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:L()}],overflow:[{overflow:G()}],"overflow-x":[{"overflow-x":G()}],"overflow-y":[{"overflow-y":G()}],overscroll:[{overscroll:W()}],"overscroll-x":[{"overscroll-x":W()}],"overscroll-y":[{"overscroll-y":W()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:C()}],"inset-x":[{"inset-x":C()}],"inset-y":[{"inset-y":C()}],start:[{start:C()}],end:[{end:C()}],top:[{top:C()}],right:[{right:C()}],bottom:[{bottom:C()}],left:[{left:C()}],visibility:["visible","invisible","collapse"],z:[{z:[R,"auto",n,s]}],basis:[{basis:[N,"full","auto",u,...m()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[p,N,"auto","initial","none",s]}],grow:[{grow:["",p,n,s]}],shrink:[{shrink:["",p,n,s]}],order:[{order:[R,"first","last","none",n,s]}],"grid-cols":[{"grid-cols":ne()}],"col-start-end":[{col:ae()}],"col-start":[{"col-start":U()}],"col-end":[{"col-end":U()}],"grid-rows":[{"grid-rows":ne()}],"row-start-end":[{row:ae()}],"row-start":[{"row-start":U()}],"row-end":[{"row-end":U()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":ie()}],"auto-rows":[{"auto-rows":ie()}],gap:[{gap:m()}],"gap-x":[{"gap-x":m()}],"gap-y":[{"gap-y":m()}],"justify-content":[{justify:[...Q(),"normal"]}],"justify-items":[{"justify-items":[...E(),"normal"]}],"justify-self":[{"justify-self":["auto",...E()]}],"align-content":[{content:["normal",...Q()]}],"align-items":[{items:[...E(),{baseline:["","last"]}]}],"align-self":[{self:["auto",...E(),{baseline:["","last"]}]}],"place-content":[{"place-content":Q()}],"place-items":[{"place-items":[...E(),"baseline"]}],"place-self":[{"place-self":["auto",...E()]}],p:[{p:m()}],px:[{px:m()}],py:[{py:m()}],ps:[{ps:m()}],pe:[{pe:m()}],pt:[{pt:m()}],pr:[{pr:m()}],pb:[{pb:m()}],pl:[{pl:m()}],m:[{m:A()}],mx:[{mx:A()}],my:[{my:A()}],ms:[{ms:A()}],me:[{me:A()}],mt:[{mt:A()}],mr:[{mr:A()}],mb:[{mb:A()}],ml:[{ml:A()}],"space-x":[{"space-x":m()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":m()}],"space-y-reverse":["space-y-reverse"],size:[{size:T()}],w:[{w:[u,"screen",...T()]}],"min-w":[{"min-w":[u,"screen","none",...T()]}],"max-w":[{"max-w":[u,"screen","none","prose",{screen:[a]},...T()]}],h:[{h:["screen","lh",...T()]}],"min-h":[{"min-h":["screen","lh","none",...T()]}],"max-h":[{"max-h":["screen","lh",...T()]}],"font-size":[{text:["base",r,B,O]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[o,n,re]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",oe,s]}],"font-family":[{font:[fo,s,t]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractions"],tracking:[{tracking:[i,n,s]}],"line-clamp":[{"line-clamp":[p,"none",n,re]}],leading:[{leading:[d,...m()]}],"list-image":[{"list-image":["none",n,s]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",n,s]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:l()}],"text-color":[{text:l()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...D(),"wavy"]}],"text-decoration-thickness":[{decoration:[p,"from-font","auto",n,O]}],"text-decoration-color":[{decoration:l()}],"underline-offset":[{"underline-offset":[p,"auto",n,s]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:m()}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",n,s]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],wrap:[{wrap:["break-word","anywhere","normal"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",n,s]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:le()}],"bg-repeat":[{bg:ce()}],"bg-size":[{bg:de()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},R,n,s],radial:["",n,s],conic:[R,n,s]},go,uo]}],"bg-color":[{bg:l()}],"gradient-from-pos":[{from:Z()}],"gradient-via-pos":[{via:Z()}],"gradient-to-pos":[{to:Z()}],"gradient-from":[{from:l()}],"gradient-via":[{via:l()}],"gradient-to":[{to:l()}],rounded:[{rounded:x()}],"rounded-s":[{"rounded-s":x()}],"rounded-e":[{"rounded-e":x()}],"rounded-t":[{"rounded-t":x()}],"rounded-r":[{"rounded-r":x()}],"rounded-b":[{"rounded-b":x()}],"rounded-l":[{"rounded-l":x()}],"rounded-ss":[{"rounded-ss":x()}],"rounded-se":[{"rounded-se":x()}],"rounded-ee":[{"rounded-ee":x()}],"rounded-es":[{"rounded-es":x()}],"rounded-tl":[{"rounded-tl":x()}],"rounded-tr":[{"rounded-tr":x()}],"rounded-br":[{"rounded-br":x()}],"rounded-bl":[{"rounded-bl":x()}],"border-w":[{border:k()}],"border-w-x":[{"border-x":k()}],"border-w-y":[{"border-y":k()}],"border-w-s":[{"border-s":k()}],"border-w-e":[{"border-e":k()}],"border-w-t":[{"border-t":k()}],"border-w-r":[{"border-r":k()}],"border-w-b":[{"border-b":k()}],"border-w-l":[{"border-l":k()}],"divide-x":[{"divide-x":k()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":k()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...D(),"hidden","none"]}],"divide-style":[{divide:[...D(),"hidden","none"]}],"border-color":[{border:l()}],"border-color-x":[{"border-x":l()}],"border-color-y":[{"border-y":l()}],"border-color-s":[{"border-s":l()}],"border-color-e":[{"border-e":l()}],"border-color-t":[{"border-t":l()}],"border-color-r":[{"border-r":l()}],"border-color-b":[{"border-b":l()}],"border-color-l":[{"border-l":l()}],"divide-color":[{divide:l()}],"outline-style":[{outline:[...D(),"none","hidden"]}],"outline-offset":[{"outline-offset":[p,n,s]}],"outline-w":[{outline:["",p,B,O]}],"outline-color":[{outline:l()}],shadow:[{shadow:["","none",h,H,J]}],"shadow-color":[{shadow:l()}],"inset-shadow":[{"inset-shadow":["none",y,H,J]}],"inset-shadow-color":[{"inset-shadow":l()}],"ring-w":[{ring:k()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:l()}],"ring-offset-w":[{"ring-offset":[p,O]}],"ring-offset-color":[{"ring-offset":l()}],"inset-ring-w":[{"inset-ring":k()}],"inset-ring-color":[{"inset-ring":l()}],"text-shadow":[{"text-shadow":["none",z,H,J]}],"text-shadow-color":[{"text-shadow":l()}],opacity:[{opacity:[p,n,s]}],"mix-blend":[{"mix-blend":[...me(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":me()}],"mask-clip":[{"mask-clip":["border","padding","content","fill","stroke","view"]},"mask-no-clip"],"mask-composite":[{mask:["add","subtract","intersect","exclude"]}],"mask-image-linear-pos":[{"mask-linear":[p]}],"mask-image-linear-from-pos":[{"mask-linear-from":g()}],"mask-image-linear-to-pos":[{"mask-linear-to":g()}],"mask-image-linear-from-color":[{"mask-linear-from":l()}],"mask-image-linear-to-color":[{"mask-linear-to":l()}],"mask-image-t-from-pos":[{"mask-t-from":g()}],"mask-image-t-to-pos":[{"mask-t-to":g()}],"mask-image-t-from-color":[{"mask-t-from":l()}],"mask-image-t-to-color":[{"mask-t-to":l()}],"mask-image-r-from-pos":[{"mask-r-from":g()}],"mask-image-r-to-pos":[{"mask-r-to":g()}],"mask-image-r-from-color":[{"mask-r-from":l()}],"mask-image-r-to-color":[{"mask-r-to":l()}],"mask-image-b-from-pos":[{"mask-b-from":g()}],"mask-image-b-to-pos":[{"mask-b-to":g()}],"mask-image-b-from-color":[{"mask-b-from":l()}],"mask-image-b-to-color":[{"mask-b-to":l()}],"mask-image-l-from-pos":[{"mask-l-from":g()}],"mask-image-l-to-pos":[{"mask-l-to":g()}],"mask-image-l-from-color":[{"mask-l-from":l()}],"mask-image-l-to-color":[{"mask-l-to":l()}],"mask-image-x-from-pos":[{"mask-x-from":g()}],"mask-image-x-to-pos":[{"mask-x-to":g()}],"mask-image-x-from-color":[{"mask-x-from":l()}],"mask-image-x-to-color":[{"mask-x-to":l()}],"mask-image-y-from-pos":[{"mask-y-from":g()}],"mask-image-y-to-pos":[{"mask-y-to":g()}],"mask-image-y-from-color":[{"mask-y-from":l()}],"mask-image-y-to-color":[{"mask-y-to":l()}],"mask-image-radial":[{"mask-radial":[n,s]}],"mask-image-radial-from-pos":[{"mask-radial-from":g()}],"mask-image-radial-to-pos":[{"mask-radial-to":g()}],"mask-image-radial-from-color":[{"mask-radial-from":l()}],"mask-image-radial-to-color":[{"mask-radial-to":l()}],"mask-image-radial-shape":[{"mask-radial":["circle","ellipse"]}],"mask-image-radial-size":[{"mask-radial":[{closest:["side","corner"],farthest:["side","corner"]}]}],"mask-image-radial-pos":[{"mask-radial-at":j()}],"mask-image-conic-pos":[{"mask-conic":[p]}],"mask-image-conic-from-pos":[{"mask-conic-from":g()}],"mask-image-conic-to-pos":[{"mask-conic-to":g()}],"mask-image-conic-from-color":[{"mask-conic-from":l()}],"mask-image-conic-to-color":[{"mask-conic-to":l()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:le()}],"mask-repeat":[{mask:ce()}],"mask-size":[{mask:de()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",n,s]}],filter:[{filter:["","none",n,s]}],blur:[{blur:pe()}],brightness:[{brightness:[p,n,s]}],contrast:[{contrast:[p,n,s]}],"drop-shadow":[{"drop-shadow":["","none",I,H,J]}],"drop-shadow-color":[{"drop-shadow":l()}],grayscale:[{grayscale:["",p,n,s]}],"hue-rotate":[{"hue-rotate":[p,n,s]}],invert:[{invert:["",p,n,s]}],saturate:[{saturate:[p,n,s]}],sepia:[{sepia:["",p,n,s]}],"backdrop-filter":[{"backdrop-filter":["","none",n,s]}],"backdrop-blur":[{"backdrop-blur":pe()}],"backdrop-brightness":[{"backdrop-brightness":[p,n,s]}],"backdrop-contrast":[{"backdrop-contrast":[p,n,s]}],"backdrop-grayscale":[{"backdrop-grayscale":["",p,n,s]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[p,n,s]}],"backdrop-invert":[{"backdrop-invert":["",p,n,s]}],"backdrop-opacity":[{"backdrop-opacity":[p,n,s]}],"backdrop-saturate":[{"backdrop-saturate":[p,n,s]}],"backdrop-sepia":[{"backdrop-sepia":["",p,n,s]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":m()}],"border-spacing-x":[{"border-spacing-x":m()}],"border-spacing-y":[{"border-spacing-y":m()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",n,s]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[p,"initial",n,s]}],ease:[{ease:["linear","initial",P,n,s]}],delay:[{delay:[p,n,s]}],animate:[{animate:["none",$,n,s]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[v,n,s]}],"perspective-origin":[{"perspective-origin":L()}],rotate:[{rotate:Y()}],"rotate-x":[{"rotate-x":Y()}],"rotate-y":[{"rotate-y":Y()}],"rotate-z":[{"rotate-z":Y()}],scale:[{scale:q()}],"scale-x":[{"scale-x":q()}],"scale-y":[{"scale-y":q()}],"scale-z":[{"scale-z":q()}],"scale-3d":["scale-3d"],skew:[{skew:ee()}],"skew-x":[{"skew-x":ee()}],"skew-y":[{"skew-y":ee()}],transform:[{transform:[n,s,"","none","gpu","cpu"]}],"transform-origin":[{origin:L()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:X()}],"translate-x":[{"translate-x":X()}],"translate-y":[{"translate-y":X()}],"translate-z":[{"translate-z":X()}],"translate-none":["translate-none"],accent:[{accent:l()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:l()}],"color-scheme":[{scheme:["normal","dark","light","light-dark","only-dark","only-light"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",n,s]}],"field-sizing":[{"field-sizing":["fixed","content"]}],"pointer-events":[{"pointer-events":["auto","none"]}],resize:[{resize:["none","","y","x"]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scroll-m":[{"scroll-m":m()}],"scroll-mx":[{"scroll-mx":m()}],"scroll-my":[{"scroll-my":m()}],"scroll-ms":[{"scroll-ms":m()}],"scroll-me":[{"scroll-me":m()}],"scroll-mt":[{"scroll-mt":m()}],"scroll-mr":[{"scroll-mr":m()}],"scroll-mb":[{"scroll-mb":m()}],"scroll-ml":[{"scroll-ml":m()}],"scroll-p":[{"scroll-p":m()}],"scroll-px":[{"scroll-px":m()}],"scroll-py":[{"scroll-py":m()}],"scroll-ps":[{"scroll-ps":m()}],"scroll-pe":[{"scroll-pe":m()}],"scroll-pt":[{"scroll-pt":m()}],"scroll-pr":[{"scroll-pr":m()}],"scroll-pb":[{"scroll-pb":m()}],"scroll-pl":[{"scroll-pl":m()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",n,s]}],fill:[{fill:["none",...l()]}],"stroke-w":[{stroke:[p,B,O,re]}],stroke:[{stroke:["none",...l()]}],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","start","end","top","right","bottom","left"],"inset-x":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mt","mr","mb","ml"],mx:["mr","ml"],my:["mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-x","border-w-y","border-w-s","border-w-e","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-r","border-w-l"],"border-w-y":["border-w-t","border-w-b"],"border-color":["border-color-x","border-color-y","border-color-s","border-color-e","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-r","border-color-l"],"border-color-y":["border-color-t","border-color-b"],translate:["translate-x","translate-y","translate-none"],"translate-none":["translate","translate-x","translate-y","translate-z"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-mr","scroll-ml"],"scroll-my":["scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]},orderSensitiveModifiers:["*","**","after","backdrop","before","details-content","file","first-letter","first-line","marker","placeholder","selection"]}},ko=Qe(wo);function yo(...e){return ko(Ge(e))}export{Ge as a,yo as c}; diff --git a/apps/portal/public/storybook/assets/coerce-BirWdn0y.js b/apps/portal/public/storybook/assets/coerce-BirWdn0y.js new file mode 100644 index 00000000..141a0167 --- /dev/null +++ b/apps/portal/public/storybook/assets/coerce-BirWdn0y.js @@ -0,0 +1,39 @@ +function a(e,n,t){function r(c,u){if(c._zod||Object.defineProperty(c,"_zod",{value:{def:u,constr:s,traits:new Set},enumerable:!1}),c._zod.traits.has(e))return;c._zod.traits.add(e),n(c,u);const l=s.prototype,f=Object.keys(l);for(let d=0;d{var u,l;return t!=null&&t.Parent&&c instanceof t.Parent?!0:(l=(u=c==null?void 0:c._zod)==null?void 0:u.traits)==null?void 0:l.has(e)}}),Object.defineProperty(s,"name",{value:e}),s}class F extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class Fe extends Error{constructor(n){super(`Encountered unidirectional transform during encode: ${n}`),this.name="ZodEncodeError"}}const Je={};function N(e){return Je}function Me(e){const n=Object.values(e).filter(r=>typeof r=="number");return Object.entries(e).filter(([r,o])=>n.indexOf(+r)===-1).map(([r,o])=>o)}function se(e,n){return typeof n=="bigint"?n.toString():n}function le(e){return{get value(){{const n=e();return Object.defineProperty(this,"value",{value:n}),n}}}}function fe(e){return e==null}function de(e){const n=e.startsWith("^")?1:0,t=e.endsWith("$")?e.length-1:e.length;return e.slice(n,t)}function kn(e,n){const t=(e.toString().split(".")[1]||"").length,r=n.toString();let o=(r.split(".")[1]||"").length;if(o===0&&/\d?e-\d?/.test(r)){const u=r.match(/\d?e-(\d?)/);u!=null&&u[1]&&(o=Number.parseInt(u[1]))}const i=t>o?t:o,s=Number.parseInt(e.toFixed(i).replace(".","")),c=Number.parseInt(n.toFixed(i).replace(".",""));return s%c/10**i}const ve=Symbol("evaluating");function g(e,n,t){let r;Object.defineProperty(e,n,{get(){if(r!==ve)return r===void 0&&(r=ve,r=t()),r},set(o){Object.defineProperty(e,n,{value:o})},configurable:!0})}function C(e,n,t){Object.defineProperty(e,n,{value:t,writable:!0,enumerable:!0,configurable:!0})}function A(...e){const n={};for(const t of e){const r=Object.getOwnPropertyDescriptors(t);Object.assign(n,r)}return Object.defineProperties({},n)}function ye(e){return JSON.stringify(e)}function $n(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}const Le="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};function q(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}const Zn=le(()=>{var e;if(typeof navigator<"u"&&((e=navigator==null?void 0:navigator.userAgent)!=null&&e.includes("Cloudflare")))return!1;try{const n=Function;return new n(""),!0}catch{return!1}});function J(e){if(q(e)===!1)return!1;const n=e.constructor;if(n===void 0||typeof n!="function")return!0;const t=n.prototype;return!(q(t)===!1||Object.prototype.hasOwnProperty.call(t,"isPrototypeOf")===!1)}function xe(e){return J(e)?{...e}:Array.isArray(e)?[...e]:e}const On=new Set(["string","number","symbol"]);function M(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function R(e,n,t){const r=new e._zod.constr(n??e._zod.def);return(!n||t!=null&&t.parent)&&(r._zod.parent=e),r}function p(e){const n=e;if(!n)return{};if(typeof n=="string")return{error:()=>n};if((n==null?void 0:n.message)!==void 0){if((n==null?void 0:n.error)!==void 0)throw new Error("Cannot specify both `message` and `error` params");n.error=n.message}return delete n.message,typeof n.error=="string"?{...n,error:()=>n.error}:n}function Sn(e){return Object.keys(e).filter(n=>e[n]._zod.optin==="optional"&&e[n]._zod.optout==="optional")}const En={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]};function In(e,n){const t=e._zod.def,r=t.checks;if(r&&r.length>0)throw new Error(".pick() cannot be used on object schemas containing refinements");const i=A(e._zod.def,{get shape(){const s={};for(const c in n){if(!(c in t.shape))throw new Error(`Unrecognized key: "${c}"`);n[c]&&(s[c]=t.shape[c])}return C(this,"shape",s),s},checks:[]});return R(e,i)}function Tn(e,n){const t=e._zod.def,r=t.checks;if(r&&r.length>0)throw new Error(".omit() cannot be used on object schemas containing refinements");const i=A(e._zod.def,{get shape(){const s={...e._zod.def.shape};for(const c in n){if(!(c in t.shape))throw new Error(`Unrecognized key: "${c}"`);n[c]&&delete s[c]}return C(this,"shape",s),s},checks:[]});return R(e,i)}function Pn(e,n){if(!J(n))throw new Error("Invalid input to extend: expected a plain object");const t=e._zod.def.checks;if(t&&t.length>0){const i=e._zod.def.shape;for(const s in n)if(Object.getOwnPropertyDescriptor(i,s)!==void 0)throw new Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}const o=A(e._zod.def,{get shape(){const i={...e._zod.def.shape,...n};return C(this,"shape",i),i}});return R(e,o)}function Nn(e,n){if(!J(n))throw new Error("Invalid input to safeExtend: expected a plain object");const t=A(e._zod.def,{get shape(){const r={...e._zod.def.shape,...n};return C(this,"shape",r),r}});return R(e,t)}function jn(e,n){const t=A(e._zod.def,{get shape(){const r={...e._zod.def.shape,...n._zod.def.shape};return C(this,"shape",r),r},get catchall(){return n._zod.def.catchall},checks:[]});return R(e,t)}function An(e,n,t){const o=n._zod.def.checks;if(o&&o.length>0)throw new Error(".partial() cannot be used on object schemas containing refinements");const s=A(n._zod.def,{get shape(){const c=n._zod.def.shape,u={...c};if(t)for(const l in t){if(!(l in c))throw new Error(`Unrecognized key: "${l}"`);t[l]&&(u[l]=e?new e({type:"optional",innerType:c[l]}):c[l])}else for(const l in c)u[l]=e?new e({type:"optional",innerType:c[l]}):c[l];return C(this,"shape",u),u},checks:[]});return R(n,s)}function Rn(e,n,t){const r=A(n._zod.def,{get shape(){const o=n._zod.def.shape,i={...o};if(t)for(const s in t){if(!(s in i))throw new Error(`Unrecognized key: "${s}"`);t[s]&&(i[s]=new e({type:"nonoptional",innerType:o[s]}))}else for(const s in o)i[s]=new e({type:"nonoptional",innerType:o[s]});return C(this,"shape",i),i}});return R(n,r)}function D(e,n=0){var t;if(e.aborted===!0)return!0;for(let r=n;r{var r;return(r=t).path??(r.path=[]),t.path.unshift(e),t})}function B(e){return typeof e=="string"?e:e==null?void 0:e.message}function j(e,n,t){var o,i,s,c,u,l;const r={...e,path:e.path??[]};if(!e.message){const f=B((s=(i=(o=e.inst)==null?void 0:o._zod.def)==null?void 0:i.error)==null?void 0:s.call(i,e))??B((c=n==null?void 0:n.error)==null?void 0:c.call(n,e))??B((u=t.customError)==null?void 0:u.call(t,e))??B((l=t.localeError)==null?void 0:l.call(t,e))??"Invalid input";r.message=f}return delete r.inst,delete r.continue,n!=null&&n.reportInput||delete r.input,r}function pe(e){return Array.isArray(e)?"array":typeof e=="string"?"string":"unknown"}function W(...e){const[n,t,r]=e;return typeof n=="string"?{message:n,code:"custom",input:t,inst:r}:{...n}}const Ve=(e,n)=>{e.name="$ZodError",Object.defineProperty(e,"_zod",{value:e._zod,enumerable:!1}),Object.defineProperty(e,"issues",{value:n,enumerable:!1}),e.message=JSON.stringify(n,se,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},We=a("$ZodError",Ve),Ke=a("$ZodError",Ve,{Parent:Error});function Cn(e,n=t=>t.message){const t={},r=[];for(const o of e.issues)o.path.length>0?(t[o.path[0]]=t[o.path[0]]||[],t[o.path[0]].push(n(o))):r.push(n(o));return{formErrors:r,fieldErrors:t}}function Dn(e,n=t=>t.message){const t={_errors:[]},r=o=>{for(const i of o.issues)if(i.code==="invalid_union"&&i.errors.length)i.errors.map(s=>r({issues:s}));else if(i.code==="invalid_key")r({issues:i.issues});else if(i.code==="invalid_element")r({issues:i.issues});else if(i.path.length===0)t._errors.push(n(i));else{let s=t,c=0;for(;c(n,t,r,o)=>{const i=r?Object.assign(r,{async:!1}):{async:!1},s=n._zod.run({value:t,issues:[]},i);if(s instanceof Promise)throw new F;if(s.issues.length){const c=new((o==null?void 0:o.Err)??e)(s.issues.map(u=>j(u,i,N())));throw Le(c,o==null?void 0:o.callee),c}return s.value},me=e=>async(n,t,r,o)=>{const i=r?Object.assign(r,{async:!0}):{async:!0};let s=n._zod.run({value:t,issues:[]},i);if(s instanceof Promise&&(s=await s),s.issues.length){const c=new((o==null?void 0:o.Err)??e)(s.issues.map(u=>j(u,i,N())));throw Le(c,o==null?void 0:o.callee),c}return s.value},ee=e=>(n,t,r)=>{const o=r?{...r,async:!1}:{async:!1},i=n._zod.run({value:t,issues:[]},o);if(i instanceof Promise)throw new F;return i.issues.length?{success:!1,error:new(e??We)(i.issues.map(s=>j(s,o,N())))}:{success:!0,data:i.value}},Un=ee(Ke),ne=e=>async(n,t,r)=>{const o=r?Object.assign(r,{async:!0}):{async:!0};let i=n._zod.run({value:t,issues:[]},o);return i instanceof Promise&&(i=await i),i.issues.length?{success:!1,error:new e(i.issues.map(s=>j(s,o,N())))}:{success:!0,data:i.value}},Fn=ne(Ke),Jn=e=>(n,t,r)=>{const o=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return he(e)(n,t,o)},Mn=e=>(n,t,r)=>he(e)(n,t,r),Ln=e=>async(n,t,r)=>{const o=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return me(e)(n,t,o)},xn=e=>async(n,t,r)=>me(e)(n,t,r),Vn=e=>(n,t,r)=>{const o=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return ee(e)(n,t,o)},Wn=e=>(n,t,r)=>ee(e)(n,t,r),Kn=e=>async(n,t,r)=>{const o=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return ne(e)(n,t,o)},Bn=e=>async(n,t,r)=>ne(e)(n,t,r),Gn=/^[cC][^\s-]{8,}$/,Yn=/^[0-9a-z]+$/,qn=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Xn=/^[0-9a-vA-V]{20}$/,Hn=/^[A-Za-z0-9]{27}$/,Qn=/^[a-zA-Z0-9_-]{21}$/,et=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,nt=/^([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})$/,ze=e=>e?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[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)$/,tt=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,rt="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function ot(){return new RegExp(rt,"u")}const it=/^(?:(?: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])$/,st=/^(([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}|:))$/,ct=/^((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])$/,ut=/^(([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])$/,at=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Be=/^[A-Za-z0-9_-]*$/,lt=/^\+[1-9]\d{6,14}$/,Ge="(?:(?:\\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])))",ft=new RegExp(`^${Ge}$`);function Ye(e){const n="(?:[01]\\d|2[0-3]):[0-5]\\d";return typeof e.precision=="number"?e.precision===-1?`${n}`:e.precision===0?`${n}:[0-5]\\d`:`${n}:[0-5]\\d\\.\\d{${e.precision}}`:`${n}(?::[0-5]\\d(?:\\.\\d+)?)?`}function dt(e){return new RegExp(`^${Ye(e)}$`)}function pt(e){const n=Ye({precision:e.precision}),t=["Z"];e.local&&t.push(""),e.offset&&t.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");const r=`${n}(?:${t.join("|")})`;return new RegExp(`^${Ge}T(?:${r})$`)}const ht=e=>{const n=e?`[\\s\\S]{${(e==null?void 0:e.minimum)??0},${(e==null?void 0:e.maximum)??""}}`:"[\\s\\S]*";return new RegExp(`^${n}$`)},mt=/^-?\d+$/,qe=/^-?\d+(?:\.\d+)?$/,_t=/^(?:true|false)$/i,gt=/^null$/i,vt=/^[^A-Z]*$/,yt=/^[^a-z]*$/,E=a("$ZodCheck",(e,n)=>{var t;e._zod??(e._zod={}),e._zod.def=n,(t=e._zod).onattach??(t.onattach=[])}),Xe={number:"number",bigint:"bigint",object:"date"},He=a("$ZodCheckLessThan",(e,n)=>{E.init(e,n);const t=Xe[typeof n.value];e._zod.onattach.push(r=>{const o=r._zod.bag,i=(n.inclusive?o.maximum:o.exclusiveMaximum)??Number.POSITIVE_INFINITY;n.value{(n.inclusive?r.value<=n.value:r.value{E.init(e,n);const t=Xe[typeof n.value];e._zod.onattach.push(r=>{const o=r._zod.bag,i=(n.inclusive?o.minimum:o.exclusiveMinimum)??Number.NEGATIVE_INFINITY;n.value>i&&(n.inclusive?o.minimum=n.value:o.exclusiveMinimum=n.value)}),e._zod.check=r=>{(n.inclusive?r.value>=n.value:r.value>n.value)||r.issues.push({origin:t,code:"too_small",minimum:typeof n.value=="object"?n.value.getTime():n.value,input:r.value,inclusive:n.inclusive,inst:e,continue:!n.abort})}}),zt=a("$ZodCheckMultipleOf",(e,n)=>{E.init(e,n),e._zod.onattach.push(t=>{var r;(r=t._zod.bag).multipleOf??(r.multipleOf=n.value)}),e._zod.check=t=>{if(typeof t.value!=typeof n.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof t.value=="bigint"?t.value%n.value===BigInt(0):kn(t.value,n.value)===0)||t.issues.push({origin:typeof t.value,code:"not_multiple_of",divisor:n.value,input:t.value,inst:e,continue:!n.abort})}}),bt=a("$ZodCheckNumberFormat",(e,n)=>{var s;E.init(e,n),n.format=n.format||"float64";const t=(s=n.format)==null?void 0:s.includes("int"),r=t?"int":"number",[o,i]=En[n.format];e._zod.onattach.push(c=>{const u=c._zod.bag;u.format=n.format,u.minimum=o,u.maximum=i,t&&(u.pattern=mt)}),e._zod.check=c=>{const u=c.value;if(t){if(!Number.isInteger(u)){c.issues.push({expected:r,format:n.format,code:"invalid_type",continue:!1,input:u,inst:e});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:e,origin:r,inclusive:!0,continue:!n.abort}):c.issues.push({input:u,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:r,inclusive:!0,continue:!n.abort});return}}ui&&c.issues.push({origin:"number",input:u,code:"too_big",maximum:i,inclusive:!0,inst:e,continue:!n.abort})}}),wt=a("$ZodCheckMaxLength",(e,n)=>{var t;E.init(e,n),(t=e._zod.def).when??(t.when=r=>{const o=r.value;return!fe(o)&&o.length!==void 0}),e._zod.onattach.push(r=>{const o=r._zod.bag.maximum??Number.POSITIVE_INFINITY;n.maximum{const o=r.value;if(o.length<=n.maximum)return;const s=pe(o);r.issues.push({origin:s,code:"too_big",maximum:n.maximum,inclusive:!0,input:o,inst:e,continue:!n.abort})}}),kt=a("$ZodCheckMinLength",(e,n)=>{var t;E.init(e,n),(t=e._zod.def).when??(t.when=r=>{const o=r.value;return!fe(o)&&o.length!==void 0}),e._zod.onattach.push(r=>{const o=r._zod.bag.minimum??Number.NEGATIVE_INFINITY;n.minimum>o&&(r._zod.bag.minimum=n.minimum)}),e._zod.check=r=>{const o=r.value;if(o.length>=n.minimum)return;const s=pe(o);r.issues.push({origin:s,code:"too_small",minimum:n.minimum,inclusive:!0,input:o,inst:e,continue:!n.abort})}}),$t=a("$ZodCheckLengthEquals",(e,n)=>{var t;E.init(e,n),(t=e._zod.def).when??(t.when=r=>{const o=r.value;return!fe(o)&&o.length!==void 0}),e._zod.onattach.push(r=>{const o=r._zod.bag;o.minimum=n.length,o.maximum=n.length,o.length=n.length}),e._zod.check=r=>{const o=r.value,i=o.length;if(i===n.length)return;const s=pe(o),c=i>n.length;r.issues.push({origin:s,...c?{code:"too_big",maximum:n.length}:{code:"too_small",minimum:n.length},inclusive:!0,exact:!0,input:r.value,inst:e,continue:!n.abort})}}),te=a("$ZodCheckStringFormat",(e,n)=>{var t,r;E.init(e,n),e._zod.onattach.push(o=>{const i=o._zod.bag;i.format=n.format,n.pattern&&(i.patterns??(i.patterns=new Set),i.patterns.add(n.pattern))}),n.pattern?(t=e._zod).check??(t.check=o=>{n.pattern.lastIndex=0,!n.pattern.test(o.value)&&o.issues.push({origin:"string",code:"invalid_format",format:n.format,input:o.value,...n.pattern?{pattern:n.pattern.toString()}:{},inst:e,continue:!n.abort})}):(r=e._zod).check??(r.check=()=>{})}),Zt=a("$ZodCheckRegex",(e,n)=>{te.init(e,n),e._zod.check=t=>{n.pattern.lastIndex=0,!n.pattern.test(t.value)&&t.issues.push({origin:"string",code:"invalid_format",format:"regex",input:t.value,pattern:n.pattern.toString(),inst:e,continue:!n.abort})}}),Ot=a("$ZodCheckLowerCase",(e,n)=>{n.pattern??(n.pattern=vt),te.init(e,n)}),St=a("$ZodCheckUpperCase",(e,n)=>{n.pattern??(n.pattern=yt),te.init(e,n)}),Et=a("$ZodCheckIncludes",(e,n)=>{E.init(e,n);const t=M(n.includes),r=new RegExp(typeof n.position=="number"?`^.{${n.position}}${t}`:t);n.pattern=r,e._zod.onattach.push(o=>{const i=o._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(r)}),e._zod.check=o=>{o.value.includes(n.includes,n.position)||o.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:n.includes,input:o.value,inst:e,continue:!n.abort})}}),It=a("$ZodCheckStartsWith",(e,n)=>{E.init(e,n);const t=new RegExp(`^${M(n.prefix)}.*`);n.pattern??(n.pattern=t),e._zod.onattach.push(r=>{const o=r._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(t)}),e._zod.check=r=>{r.value.startsWith(n.prefix)||r.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:n.prefix,input:r.value,inst:e,continue:!n.abort})}}),Tt=a("$ZodCheckEndsWith",(e,n)=>{E.init(e,n);const t=new RegExp(`.*${M(n.suffix)}$`);n.pattern??(n.pattern=t),e._zod.onattach.push(r=>{const o=r._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(t)}),e._zod.check=r=>{r.value.endsWith(n.suffix)||r.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:n.suffix,input:r.value,inst:e,continue:!n.abort})}}),Pt=a("$ZodCheckOverwrite",(e,n)=>{E.init(e,n),e._zod.check=t=>{t.value=n.tx(t.value)}});class Nt{constructor(n=[]){this.content=[],this.indent=0,this&&(this.args=n)}indented(n){this.indent+=1,n(this),this.indent-=1}write(n){if(typeof n=="function"){n(this,{execution:"sync"}),n(this,{execution:"async"});return}const r=n.split(` +`).filter(s=>s),o=Math.min(...r.map(s=>s.length-s.trimStart().length)),i=r.map(s=>s.slice(o)).map(s=>" ".repeat(this.indent*2)+s);for(const s of i)this.content.push(s)}compile(){const n=Function,t=this==null?void 0:this.args,o=[...((this==null?void 0:this.content)??[""]).map(i=>` ${i}`)];return new n(...t,o.join(` +`))}}const jt={major:4,minor:3,patch:6},y=a("$ZodType",(e,n)=>{var o;var t;e??(e={}),e._zod.def=n,e._zod.bag=e._zod.bag||{},e._zod.version=jt;const r=[...e._zod.def.checks??[]];e._zod.traits.has("$ZodCheck")&&r.unshift(e);for(const i of r)for(const s of i._zod.onattach)s(e);if(r.length===0)(t=e._zod).deferred??(t.deferred=[]),(o=e._zod.deferred)==null||o.push(()=>{e._zod.run=e._zod.parse});else{const i=(c,u,l)=>{let f=D(c),d;for(const m of u){if(m._zod.def.when){if(!m._zod.def.when(c))continue}else if(f)continue;const h=c.issues.length,v=m._zod.check(c);if(v instanceof Promise&&(l==null?void 0:l.async)===!1)throw new F;if(d||v instanceof Promise)d=(d??Promise.resolve()).then(async()=>{await v,c.issues.length!==h&&(f||(f=D(c,h)))});else{if(c.issues.length===h)continue;f||(f=D(c,h))}}return d?d.then(()=>c):c},s=(c,u,l)=>{if(D(c))return c.aborted=!0,c;const f=i(u,r,l);if(f instanceof Promise){if(l.async===!1)throw new F;return f.then(d=>e._zod.parse(d,l))}return e._zod.parse(f,l)};e._zod.run=(c,u)=>{if(u.skipChecks)return e._zod.parse(c,u);if(u.direction==="backward"){const f=e._zod.parse({value:c.value,issues:[]},{...u,skipChecks:!0});return f instanceof Promise?f.then(d=>s(d,c,u)):s(f,c,u)}const l=e._zod.parse(c,u);if(l instanceof Promise){if(u.async===!1)throw new F;return l.then(f=>i(f,r,u))}return i(l,r,u)}}g(e,"~standard",()=>({validate:i=>{var s;try{const c=Un(e,i);return c.success?{value:c.data}:{issues:(s=c.error)==null?void 0:s.issues}}catch{return Fn(e,i).then(u=>{var l;return u.success?{value:u.data}:{issues:(l=u.error)==null?void 0:l.issues}})}},vendor:"zod",version:1}))}),_e=a("$ZodString",(e,n)=>{var t;y.init(e,n),e._zod.pattern=[...((t=e==null?void 0:e._zod.bag)==null?void 0:t.patterns)??[]].pop()??ht(e._zod.bag),e._zod.parse=(r,o)=>{if(n.coerce)try{r.value=String(r.value)}catch{}return typeof r.value=="string"||r.issues.push({expected:"string",code:"invalid_type",input:r.value,inst:e}),r}}),z=a("$ZodStringFormat",(e,n)=>{te.init(e,n),_e.init(e,n)}),At=a("$ZodGUID",(e,n)=>{n.pattern??(n.pattern=nt),z.init(e,n)}),Rt=a("$ZodUUID",(e,n)=>{if(n.version){const r={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[n.version];if(r===void 0)throw new Error(`Invalid UUID version: "${n.version}"`);n.pattern??(n.pattern=ze(r))}else n.pattern??(n.pattern=ze());z.init(e,n)}),Ct=a("$ZodEmail",(e,n)=>{n.pattern??(n.pattern=tt),z.init(e,n)}),Dt=a("$ZodURL",(e,n)=>{z.init(e,n),e._zod.check=t=>{try{const r=t.value.trim(),o=new URL(r);n.hostname&&(n.hostname.lastIndex=0,n.hostname.test(o.hostname)||t.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:n.hostname.source,input:t.value,inst:e,continue:!n.abort})),n.protocol&&(n.protocol.lastIndex=0,n.protocol.test(o.protocol.endsWith(":")?o.protocol.slice(0,-1):o.protocol)||t.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:n.protocol.source,input:t.value,inst:e,continue:!n.abort})),n.normalize?t.value=o.href:t.value=r;return}catch{t.issues.push({code:"invalid_format",format:"url",input:t.value,inst:e,continue:!n.abort})}}}),Ut=a("$ZodEmoji",(e,n)=>{n.pattern??(n.pattern=ot()),z.init(e,n)}),Ft=a("$ZodNanoID",(e,n)=>{n.pattern??(n.pattern=Qn),z.init(e,n)}),Jt=a("$ZodCUID",(e,n)=>{n.pattern??(n.pattern=Gn),z.init(e,n)}),Mt=a("$ZodCUID2",(e,n)=>{n.pattern??(n.pattern=Yn),z.init(e,n)}),Lt=a("$ZodULID",(e,n)=>{n.pattern??(n.pattern=qn),z.init(e,n)}),xt=a("$ZodXID",(e,n)=>{n.pattern??(n.pattern=Xn),z.init(e,n)}),Vt=a("$ZodKSUID",(e,n)=>{n.pattern??(n.pattern=Hn),z.init(e,n)}),Wt=a("$ZodISODateTime",(e,n)=>{n.pattern??(n.pattern=pt(n)),z.init(e,n)}),Kt=a("$ZodISODate",(e,n)=>{n.pattern??(n.pattern=ft),z.init(e,n)}),Bt=a("$ZodISOTime",(e,n)=>{n.pattern??(n.pattern=dt(n)),z.init(e,n)}),Gt=a("$ZodISODuration",(e,n)=>{n.pattern??(n.pattern=et),z.init(e,n)}),Yt=a("$ZodIPv4",(e,n)=>{n.pattern??(n.pattern=it),z.init(e,n),e._zod.bag.format="ipv4"}),qt=a("$ZodIPv6",(e,n)=>{n.pattern??(n.pattern=st),z.init(e,n),e._zod.bag.format="ipv6",e._zod.check=t=>{try{new URL(`http://[${t.value}]`)}catch{t.issues.push({code:"invalid_format",format:"ipv6",input:t.value,inst:e,continue:!n.abort})}}}),Xt=a("$ZodCIDRv4",(e,n)=>{n.pattern??(n.pattern=ct),z.init(e,n)}),Ht=a("$ZodCIDRv6",(e,n)=>{n.pattern??(n.pattern=ut),z.init(e,n),e._zod.check=t=>{const r=t.value.split("/");try{if(r.length!==2)throw new Error;const[o,i]=r;if(!i)throw new Error;const s=Number(i);if(`${s}`!==i)throw new Error;if(s<0||s>128)throw new Error;new URL(`http://[${o}]`)}catch{t.issues.push({code:"invalid_format",format:"cidrv6",input:t.value,inst:e,continue:!n.abort})}}});function en(e){if(e==="")return!0;if(e.length%4!==0)return!1;try{return atob(e),!0}catch{return!1}}const Qt=a("$ZodBase64",(e,n)=>{n.pattern??(n.pattern=at),z.init(e,n),e._zod.bag.contentEncoding="base64",e._zod.check=t=>{en(t.value)||t.issues.push({code:"invalid_format",format:"base64",input:t.value,inst:e,continue:!n.abort})}});function er(e){if(!Be.test(e))return!1;const n=e.replace(/[-_]/g,r=>r==="-"?"+":"/"),t=n.padEnd(Math.ceil(n.length/4)*4,"=");return en(t)}const nr=a("$ZodBase64URL",(e,n)=>{n.pattern??(n.pattern=Be),z.init(e,n),e._zod.bag.contentEncoding="base64url",e._zod.check=t=>{er(t.value)||t.issues.push({code:"invalid_format",format:"base64url",input:t.value,inst:e,continue:!n.abort})}}),tr=a("$ZodE164",(e,n)=>{n.pattern??(n.pattern=lt),z.init(e,n)});function rr(e,n=null){try{const t=e.split(".");if(t.length!==3)return!1;const[r]=t;if(!r)return!1;const o=JSON.parse(atob(r));return!("typ"in o&&(o==null?void 0:o.typ)!=="JWT"||!o.alg||n&&(!("alg"in o)||o.alg!==n))}catch{return!1}}const or=a("$ZodJWT",(e,n)=>{z.init(e,n),e._zod.check=t=>{rr(t.value,n.alg)||t.issues.push({code:"invalid_format",format:"jwt",input:t.value,inst:e,continue:!n.abort})}}),nn=a("$ZodNumber",(e,n)=>{y.init(e,n),e._zod.pattern=e._zod.bag.pattern??qe,e._zod.parse=(t,r)=>{if(n.coerce)try{t.value=Number(t.value)}catch{}const o=t.value;if(typeof o=="number"&&!Number.isNaN(o)&&Number.isFinite(o))return t;const i=typeof o=="number"?Number.isNaN(o)?"NaN":Number.isFinite(o)?void 0:"Infinity":void 0;return t.issues.push({expected:"number",code:"invalid_type",input:o,inst:e,...i?{received:i}:{}}),t}}),ir=a("$ZodNumberFormat",(e,n)=>{bt.init(e,n),nn.init(e,n)}),sr=a("$ZodBoolean",(e,n)=>{y.init(e,n),e._zod.pattern=_t,e._zod.parse=(t,r)=>{if(n.coerce)try{t.value=!!t.value}catch{}const o=t.value;return typeof o=="boolean"||t.issues.push({expected:"boolean",code:"invalid_type",input:o,inst:e}),t}}),cr=a("$ZodNull",(e,n)=>{y.init(e,n),e._zod.pattern=gt,e._zod.values=new Set([null]),e._zod.parse=(t,r)=>{const o=t.value;return o===null||t.issues.push({expected:"null",code:"invalid_type",input:o,inst:e}),t}}),ur=a("$ZodUnknown",(e,n)=>{y.init(e,n),e._zod.parse=t=>t}),ar=a("$ZodNever",(e,n)=>{y.init(e,n),e._zod.parse=(t,r)=>(t.issues.push({expected:"never",code:"invalid_type",input:t.value,inst:e}),t)});function be(e,n,t){e.issues.length&&n.issues.push(...U(t,e.issues)),n.value[t]=e.value}const lr=a("$ZodArray",(e,n)=>{y.init(e,n),e._zod.parse=(t,r)=>{const o=t.value;if(!Array.isArray(o))return t.issues.push({expected:"array",code:"invalid_type",input:o,inst:e}),t;t.value=Array(o.length);const i=[];for(let s=0;sbe(l,t,s))):be(u,t,s)}return i.length?Promise.all(i).then(()=>t):t}});function X(e,n,t,r,o){if(e.issues.length){if(o&&!(t in r))return;n.issues.push(...U(t,e.issues))}e.value===void 0?t in r&&(n.value[t]=void 0):n.value[t]=e.value}function tn(e){var r,o,i,s;const n=Object.keys(e.shape);for(const c of n)if(!((s=(i=(o=(r=e.shape)==null?void 0:r[c])==null?void 0:o._zod)==null?void 0:i.traits)!=null&&s.has("$ZodType")))throw new Error(`Invalid element at key "${c}": expected a Zod schema`);const t=Sn(e.shape);return{...e,keys:n,keySet:new Set(n),numKeys:n.length,optionalKeys:new Set(t)}}function rn(e,n,t,r,o,i){const s=[],c=o.keySet,u=o.catchall._zod,l=u.def.type,f=u.optout==="optional";for(const d in n){if(c.has(d))continue;if(l==="never"){s.push(d);continue}const m=u.run({value:n[d],issues:[]},r);m instanceof Promise?e.push(m.then(h=>X(h,t,d,n,f))):X(m,t,d,n,f)}return s.length&&t.issues.push({code:"unrecognized_keys",keys:s,input:n,inst:i}),e.length?Promise.all(e).then(()=>t):t}const fr=a("$ZodObject",(e,n)=>{y.init(e,n);const t=Object.getOwnPropertyDescriptor(n,"shape");if(!(t!=null&&t.get)){const c=n.shape;Object.defineProperty(n,"shape",{get:()=>{const u={...c};return Object.defineProperty(n,"shape",{value:u}),u}})}const r=le(()=>tn(n));g(e._zod,"propValues",()=>{const c=n.shape,u={};for(const l in c){const f=c[l]._zod;if(f.values){u[l]??(u[l]=new Set);for(const d of f.values)u[l].add(d)}}return u});const o=q,i=n.catchall;let s;e._zod.parse=(c,u)=>{s??(s=r.value);const l=c.value;if(!o(l))return c.issues.push({expected:"object",code:"invalid_type",input:l,inst:e}),c;c.value={};const f=[],d=s.shape;for(const m of s.keys){const h=d[m],v=h._zod.optout==="optional",_=h._zod.run({value:l[m],issues:[]},u);_ instanceof Promise?f.push(_.then($=>X($,c,m,l,v))):X(_,c,m,l,v)}return i?rn(f,l,c,u,r.value,e):f.length?Promise.all(f).then(()=>c):c}}),dr=a("$ZodObjectJIT",(e,n)=>{fr.init(e,n);const t=e._zod.parse,r=le(()=>tn(n)),o=m=>{var K;const h=new Nt(["shape","payload","ctx"]),v=r.value,_=P=>{const S=ye(P);return`shape[${S}]._zod.run({ value: input[${S}], issues: [] }, ctx)`};h.write("const input = payload.value;");const $=Object.create(null);let x=0;for(const P of v.keys)$[P]=`key_${x++}`;h.write("const newResult = {};");for(const P of v.keys){const S=$[P],T=ye(P),re=m[P],wn=((K=re==null?void 0:re._zod)==null?void 0:K.optout)==="optional";h.write(`const ${S} = ${_(P)};`),wn?h.write(` + if (${S}.issues.length) { + if (${T} in input) { + payload.issues = payload.issues.concat(${S}.issues.map(iss => ({ + ...iss, + path: iss.path ? [${T}, ...iss.path] : [${T}] + }))); + } + } + + if (${S}.value === undefined) { + if (${T} in input) { + newResult[${T}] = undefined; + } + } else { + newResult[${T}] = ${S}.value; + } + + `):h.write(` + if (${S}.issues.length) { + payload.issues = payload.issues.concat(${S}.issues.map(iss => ({ + ...iss, + path: iss.path ? [${T}, ...iss.path] : [${T}] + }))); + } + + if (${S}.value === undefined) { + if (${T} in input) { + newResult[${T}] = undefined; + } + } else { + newResult[${T}] = ${S}.value; + } + + `)}h.write("payload.value = newResult;"),h.write("return payload;");const Z=h.compile();return(P,S)=>Z(m,P,S)};let i;const s=q,c=!Je.jitless,l=c&&Zn.value,f=n.catchall;let d;e._zod.parse=(m,h)=>{d??(d=r.value);const v=m.value;return s(v)?c&&l&&(h==null?void 0:h.async)===!1&&h.jitless!==!0?(i||(i=o(n.shape)),m=i(m,h),f?rn([],v,m,h,d,e):m):t(m,h):(m.issues.push({expected:"object",code:"invalid_type",input:v,inst:e}),m)}});function we(e,n,t,r){for(const i of e)if(i.issues.length===0)return n.value=i.value,n;const o=e.filter(i=>!D(i));return o.length===1?(n.value=o[0].value,o[0]):(n.issues.push({code:"invalid_union",input:n.value,inst:t,errors:e.map(i=>i.issues.map(s=>j(s,r,N())))}),n)}const pr=a("$ZodUnion",(e,n)=>{y.init(e,n),g(e._zod,"optin",()=>n.options.some(o=>o._zod.optin==="optional")?"optional":void 0),g(e._zod,"optout",()=>n.options.some(o=>o._zod.optout==="optional")?"optional":void 0),g(e._zod,"values",()=>{if(n.options.every(o=>o._zod.values))return new Set(n.options.flatMap(o=>Array.from(o._zod.values)))}),g(e._zod,"pattern",()=>{if(n.options.every(o=>o._zod.pattern)){const o=n.options.map(i=>i._zod.pattern);return new RegExp(`^(${o.map(i=>de(i.source)).join("|")})$`)}});const t=n.options.length===1,r=n.options[0]._zod.run;e._zod.parse=(o,i)=>{if(t)return r(o,i);let s=!1;const c=[];for(const u of n.options){const l=u._zod.run({value:o.value,issues:[]},i);if(l instanceof Promise)c.push(l),s=!0;else{if(l.issues.length===0)return l;c.push(l)}}return s?Promise.all(c).then(u=>we(u,o,e,i)):we(c,o,e,i)}}),hr=a("$ZodIntersection",(e,n)=>{y.init(e,n),e._zod.parse=(t,r)=>{const o=t.value,i=n.left._zod.run({value:o,issues:[]},r),s=n.right._zod.run({value:o,issues:[]},r);return i instanceof Promise||s instanceof Promise?Promise.all([i,s]).then(([u,l])=>ke(t,u,l)):ke(t,i,s)}});function ce(e,n){if(e===n)return{valid:!0,data:e};if(e instanceof Date&&n instanceof Date&&+e==+n)return{valid:!0,data:e};if(J(e)&&J(n)){const t=Object.keys(n),r=Object.keys(e).filter(i=>t.indexOf(i)!==-1),o={...e,...n};for(const i of r){const s=ce(e[i],n[i]);if(!s.valid)return{valid:!1,mergeErrorPath:[i,...s.mergeErrorPath]};o[i]=s.data}return{valid:!0,data:o}}if(Array.isArray(e)&&Array.isArray(n)){if(e.length!==n.length)return{valid:!1,mergeErrorPath:[]};const t=[];for(let r=0;rc.l&&c.r).map(([c])=>c);if(i.length&&o&&e.issues.push({...o,keys:i}),D(e))return e;const s=ce(n.value,t.value);if(!s.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(s.mergeErrorPath)}`);return e.value=s.data,e}const mr=a("$ZodRecord",(e,n)=>{y.init(e,n),e._zod.parse=(t,r)=>{const o=t.value;if(!J(o))return t.issues.push({expected:"record",code:"invalid_type",input:o,inst:e}),t;const i=[],s=n.keyType._zod.values;if(s){t.value={};const c=new Set;for(const l of s)if(typeof l=="string"||typeof l=="number"||typeof l=="symbol"){c.add(typeof l=="number"?l.toString():l);const f=n.valueType._zod.run({value:o[l],issues:[]},r);f instanceof Promise?i.push(f.then(d=>{d.issues.length&&t.issues.push(...U(l,d.issues)),t.value[l]=d.value})):(f.issues.length&&t.issues.push(...U(l,f.issues)),t.value[l]=f.value)}let u;for(const l in o)c.has(l)||(u=u??[],u.push(l));u&&u.length>0&&t.issues.push({code:"unrecognized_keys",input:o,inst:e,keys:u})}else{t.value={};for(const c of Reflect.ownKeys(o)){if(c==="__proto__")continue;let u=n.keyType._zod.run({value:c,issues:[]},r);if(u instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(typeof c=="string"&&qe.test(c)&&u.issues.length){const d=n.keyType._zod.run({value:Number(c),issues:[]},r);if(d instanceof Promise)throw new Error("Async schemas not supported in object keys currently");d.issues.length===0&&(u=d)}if(u.issues.length){n.mode==="loose"?t.value[c]=o[c]:t.issues.push({code:"invalid_key",origin:"record",issues:u.issues.map(d=>j(d,r,N())),input:c,path:[c],inst:e});continue}const f=n.valueType._zod.run({value:o[c],issues:[]},r);f instanceof Promise?i.push(f.then(d=>{d.issues.length&&t.issues.push(...U(c,d.issues)),t.value[u.value]=d.value})):(f.issues.length&&t.issues.push(...U(c,f.issues)),t.value[u.value]=f.value)}}return i.length?Promise.all(i).then(()=>t):t}}),_r=a("$ZodEnum",(e,n)=>{y.init(e,n);const t=Me(n.entries),r=new Set(t);e._zod.values=r,e._zod.pattern=new RegExp(`^(${t.filter(o=>On.has(typeof o)).map(o=>typeof o=="string"?M(o):o.toString()).join("|")})$`),e._zod.parse=(o,i)=>{const s=o.value;return r.has(s)||o.issues.push({code:"invalid_value",values:t,input:s,inst:e}),o}}),gr=a("$ZodLiteral",(e,n)=>{if(y.init(e,n),n.values.length===0)throw new Error("Cannot create literal schema with no valid values");const t=new Set(n.values);e._zod.values=t,e._zod.pattern=new RegExp(`^(${n.values.map(r=>typeof r=="string"?M(r):r?M(r.toString()):String(r)).join("|")})$`),e._zod.parse=(r,o)=>{const i=r.value;return t.has(i)||r.issues.push({code:"invalid_value",values:n.values,input:i,inst:e}),r}}),vr=a("$ZodTransform",(e,n)=>{y.init(e,n),e._zod.parse=(t,r)=>{if(r.direction==="backward")throw new Fe(e.constructor.name);const o=n.transform(t.value,t);if(r.async)return(o instanceof Promise?o:Promise.resolve(o)).then(s=>(t.value=s,t));if(o instanceof Promise)throw new F;return t.value=o,t}});function $e(e,n){return e.issues.length&&n===void 0?{issues:[],value:void 0}:e}const on=a("$ZodOptional",(e,n)=>{y.init(e,n),e._zod.optin="optional",e._zod.optout="optional",g(e._zod,"values",()=>n.innerType._zod.values?new Set([...n.innerType._zod.values,void 0]):void 0),g(e._zod,"pattern",()=>{const t=n.innerType._zod.pattern;return t?new RegExp(`^(${de(t.source)})?$`):void 0}),e._zod.parse=(t,r)=>{if(n.innerType._zod.optin==="optional"){const o=n.innerType._zod.run(t,r);return o instanceof Promise?o.then(i=>$e(i,t.value)):$e(o,t.value)}return t.value===void 0?t:n.innerType._zod.run(t,r)}}),yr=a("$ZodExactOptional",(e,n)=>{on.init(e,n),g(e._zod,"values",()=>n.innerType._zod.values),g(e._zod,"pattern",()=>n.innerType._zod.pattern),e._zod.parse=(t,r)=>n.innerType._zod.run(t,r)}),zr=a("$ZodNullable",(e,n)=>{y.init(e,n),g(e._zod,"optin",()=>n.innerType._zod.optin),g(e._zod,"optout",()=>n.innerType._zod.optout),g(e._zod,"pattern",()=>{const t=n.innerType._zod.pattern;return t?new RegExp(`^(${de(t.source)}|null)$`):void 0}),g(e._zod,"values",()=>n.innerType._zod.values?new Set([...n.innerType._zod.values,null]):void 0),e._zod.parse=(t,r)=>t.value===null?t:n.innerType._zod.run(t,r)}),br=a("$ZodDefault",(e,n)=>{y.init(e,n),e._zod.optin="optional",g(e._zod,"values",()=>n.innerType._zod.values),e._zod.parse=(t,r)=>{if(r.direction==="backward")return n.innerType._zod.run(t,r);if(t.value===void 0)return t.value=n.defaultValue,t;const o=n.innerType._zod.run(t,r);return o instanceof Promise?o.then(i=>Ze(i,n)):Ze(o,n)}});function Ze(e,n){return e.value===void 0&&(e.value=n.defaultValue),e}const wr=a("$ZodPrefault",(e,n)=>{y.init(e,n),e._zod.optin="optional",g(e._zod,"values",()=>n.innerType._zod.values),e._zod.parse=(t,r)=>(r.direction==="backward"||t.value===void 0&&(t.value=n.defaultValue),n.innerType._zod.run(t,r))}),kr=a("$ZodNonOptional",(e,n)=>{y.init(e,n),g(e._zod,"values",()=>{const t=n.innerType._zod.values;return t?new Set([...t].filter(r=>r!==void 0)):void 0}),e._zod.parse=(t,r)=>{const o=n.innerType._zod.run(t,r);return o instanceof Promise?o.then(i=>Oe(i,e)):Oe(o,e)}});function Oe(e,n){return!e.issues.length&&e.value===void 0&&e.issues.push({code:"invalid_type",expected:"nonoptional",input:e.value,inst:n}),e}const $r=a("$ZodCatch",(e,n)=>{y.init(e,n),g(e._zod,"optin",()=>n.innerType._zod.optin),g(e._zod,"optout",()=>n.innerType._zod.optout),g(e._zod,"values",()=>n.innerType._zod.values),e._zod.parse=(t,r)=>{if(r.direction==="backward")return n.innerType._zod.run(t,r);const o=n.innerType._zod.run(t,r);return o instanceof Promise?o.then(i=>(t.value=i.value,i.issues.length&&(t.value=n.catchValue({...t,error:{issues:i.issues.map(s=>j(s,r,N()))},input:t.value}),t.issues=[]),t)):(t.value=o.value,o.issues.length&&(t.value=n.catchValue({...t,error:{issues:o.issues.map(i=>j(i,r,N()))},input:t.value}),t.issues=[]),t)}}),Zr=a("$ZodPipe",(e,n)=>{y.init(e,n),g(e._zod,"values",()=>n.in._zod.values),g(e._zod,"optin",()=>n.in._zod.optin),g(e._zod,"optout",()=>n.out._zod.optout),g(e._zod,"propValues",()=>n.in._zod.propValues),e._zod.parse=(t,r)=>{if(r.direction==="backward"){const i=n.out._zod.run(t,r);return i instanceof Promise?i.then(s=>G(s,n.in,r)):G(i,n.in,r)}const o=n.in._zod.run(t,r);return o instanceof Promise?o.then(i=>G(i,n.out,r)):G(o,n.out,r)}});function G(e,n,t){return e.issues.length?(e.aborted=!0,e):n._zod.run({value:e.value,issues:e.issues},t)}const Or=a("$ZodReadonly",(e,n)=>{y.init(e,n),g(e._zod,"propValues",()=>n.innerType._zod.propValues),g(e._zod,"values",()=>n.innerType._zod.values),g(e._zod,"optin",()=>{var t,r;return(r=(t=n.innerType)==null?void 0:t._zod)==null?void 0:r.optin}),g(e._zod,"optout",()=>{var t,r;return(r=(t=n.innerType)==null?void 0:t._zod)==null?void 0:r.optout}),e._zod.parse=(t,r)=>{if(r.direction==="backward")return n.innerType._zod.run(t,r);const o=n.innerType._zod.run(t,r);return o instanceof Promise?o.then(Se):Se(o)}});function Se(e){return e.value=Object.freeze(e.value),e}const Sr=a("$ZodCustom",(e,n)=>{E.init(e,n),y.init(e,n),e._zod.parse=(t,r)=>t,e._zod.check=t=>{const r=t.value,o=n.fn(r);if(o instanceof Promise)return o.then(i=>Ee(i,t,r,e));Ee(o,t,r,e)}});function Ee(e,n,t,r){if(!e){const o={code:"custom",input:t,inst:r,path:[...r._zod.def.path??[]],continue:!r._zod.def.abort};r._zod.def.params&&(o.params=r._zod.def.params),n.issues.push(W(o))}}var Ie;class Er{constructor(){this._map=new WeakMap,this._idmap=new Map}add(n,...t){const r=t[0];return this._map.set(n,r),r&&typeof r=="object"&&"id"in r&&this._idmap.set(r.id,n),this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(n){const t=this._map.get(n);return t&&typeof t=="object"&&"id"in t&&this._idmap.delete(t.id),this._map.delete(n),this}get(n){const t=n._zod.parent;if(t){const r={...this.get(t)??{}};delete r.id;const o={...r,...this._map.get(n)};return Object.keys(o).length?o:void 0}return this._map.get(n)}has(n){return this._map.has(n)}}function Ir(){return new Er}(Ie=globalThis).__zod_globalRegistry??(Ie.__zod_globalRegistry=Ir());const V=globalThis.__zod_globalRegistry;function Tr(e,n){return new e({type:"string",...p(n)})}function Pr(e,n){return new e({type:"string",coerce:!0,...p(n)})}function sn(e,n){return new e({type:"string",format:"email",check:"string_format",abort:!1,...p(n)})}function Te(e,n){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...p(n)})}function Nr(e,n){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...p(n)})}function jr(e,n){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...p(n)})}function Ar(e,n){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...p(n)})}function Rr(e,n){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...p(n)})}function cn(e,n){return new e({type:"string",format:"url",check:"string_format",abort:!1,...p(n)})}function Cr(e,n){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...p(n)})}function Dr(e,n){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...p(n)})}function Ur(e,n){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...p(n)})}function Fr(e,n){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...p(n)})}function Jr(e,n){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...p(n)})}function Mr(e,n){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...p(n)})}function Lr(e,n){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...p(n)})}function xr(e,n){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...p(n)})}function Vr(e,n){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...p(n)})}function Wr(e,n){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...p(n)})}function Kr(e,n){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...p(n)})}function Br(e,n){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...p(n)})}function Gr(e,n){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...p(n)})}function Yr(e,n){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...p(n)})}function qr(e,n){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...p(n)})}function Xr(e,n){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...p(n)})}function Hr(e,n){return new e({type:"string",format:"date",check:"string_format",...p(n)})}function Qr(e,n){return new e({type:"string",format:"time",check:"string_format",precision:null,...p(n)})}function eo(e,n){return new e({type:"string",format:"duration",check:"string_format",...p(n)})}function no(e,n){return new e({type:"number",checks:[],...p(n)})}function to(e,n){return new e({type:"number",coerce:!0,checks:[],...p(n)})}function ro(e,n){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",...p(n)})}function oo(e,n){return new e({type:"boolean",...p(n)})}function io(e,n){return new e({type:"null",...p(n)})}function so(e){return new e({type:"unknown"})}function co(e,n){return new e({type:"never",...p(n)})}function Pe(e,n){return new He({check:"less_than",...p(n),value:e,inclusive:!1})}function oe(e,n){return new He({check:"less_than",...p(n),value:e,inclusive:!0})}function Ne(e,n){return new Qe({check:"greater_than",...p(n),value:e,inclusive:!1})}function ie(e,n){return new Qe({check:"greater_than",...p(n),value:e,inclusive:!0})}function je(e,n){return new zt({check:"multiple_of",...p(n),value:e})}function un(e,n){return new wt({check:"max_length",...p(n),maximum:e})}function H(e,n){return new kt({check:"min_length",...p(n),minimum:e})}function an(e,n){return new $t({check:"length_equals",...p(n),length:e})}function uo(e,n){return new Zt({check:"string_format",format:"regex",...p(n),pattern:e})}function ao(e){return new Ot({check:"string_format",format:"lowercase",...p(e)})}function lo(e){return new St({check:"string_format",format:"uppercase",...p(e)})}function fo(e,n){return new Et({check:"string_format",format:"includes",...p(n),includes:e})}function po(e,n){return new It({check:"string_format",format:"starts_with",...p(n),prefix:e})}function ho(e,n){return new Tt({check:"string_format",format:"ends_with",...p(n),suffix:e})}function L(e){return new Pt({check:"overwrite",tx:e})}function mo(e){return L(n=>n.normalize(e))}function _o(){return L(e=>e.trim())}function go(){return L(e=>e.toLowerCase())}function vo(){return L(e=>e.toUpperCase())}function yo(){return L(e=>$n(e))}function zo(e,n,t){return new e({type:"array",element:n,...p(t)})}function bo(e,n,t){return new e({type:"custom",check:"custom",fn:n,...p(t)})}function wo(e){const n=ko(t=>(t.addIssue=r=>{if(typeof r=="string")t.issues.push(W(r,t.value,n._zod.def));else{const o=r;o.fatal&&(o.continue=!1),o.code??(o.code="custom"),o.input??(o.input=t.value),o.inst??(o.inst=n),o.continue??(o.continue=!n._zod.def.abort),t.issues.push(W(o))}},e(t.value,t)));return n}function ko(e,n){const t=new E({check:"custom",...p(n)});return t._zod.check=e,t}function ln(e){let n=(e==null?void 0:e.target)??"draft-2020-12";return n==="draft-4"&&(n="draft-04"),n==="draft-7"&&(n="draft-07"),{processors:e.processors??{},metadataRegistry:(e==null?void 0:e.metadata)??V,target:n,unrepresentable:(e==null?void 0:e.unrepresentable)??"throw",override:(e==null?void 0:e.override)??(()=>{}),io:(e==null?void 0:e.io)??"output",counter:0,seen:new Map,cycles:(e==null?void 0:e.cycles)??"ref",reused:(e==null?void 0:e.reused)??"inline",external:(e==null?void 0:e.external)??void 0}}function k(e,n,t={path:[],schemaPath:[]}){var f,d;var r;const o=e._zod.def,i=n.seen.get(e);if(i)return i.count++,t.schemaPath.includes(e)&&(i.cycle=t.path),i.schema;const s={schema:{},count:1,cycle:void 0,path:t.path};n.seen.set(e,s);const c=(d=(f=e._zod).toJSONSchema)==null?void 0:d.call(f);if(c)s.schema=c;else{const m={...t,schemaPath:[...t.schemaPath,e],path:t.path};if(e._zod.processJSONSchema)e._zod.processJSONSchema(n,s.schema,m);else{const v=s.schema,_=n.processors[o.type];if(!_)throw new Error(`[toJSONSchema]: Non-representable type encountered: ${o.type}`);_(e,n,v,m)}const h=e._zod.parent;h&&(s.ref||(s.ref=h),k(h,n,m),n.seen.get(h).isParent=!0)}const u=n.metadataRegistry.get(e);return u&&Object.assign(s.schema,u),n.io==="input"&&O(e)&&(delete s.schema.examples,delete s.schema.default),n.io==="input"&&s.schema._prefault&&((r=s.schema).default??(r.default=s.schema._prefault)),delete s.schema._prefault,n.seen.get(e).schema}function fn(e,n){var s,c,u,l;const t=e.seen.get(n);if(!t)throw new Error("Unprocessed schema. This is a bug in Zod.");const r=new Map;for(const f of e.seen.entries()){const d=(s=e.metadataRegistry.get(f[0]))==null?void 0:s.id;if(d){const m=r.get(d);if(m&&m!==f[0])throw new Error(`Duplicate schema id "${d}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);r.set(d,f[0])}}const o=f=>{var _;const d=e.target==="draft-2020-12"?"$defs":"definitions";if(e.external){const $=(_=e.external.registry.get(f[0]))==null?void 0:_.id,x=e.external.uri??(K=>K);if($)return{ref:x($)};const Z=f[1].defId??f[1].schema.id??`schema${e.counter++}`;return f[1].defId=Z,{defId:Z,ref:`${x("__shared")}#/${d}/${Z}`}}if(f[1]===t)return{ref:"#"};const h=`#/${d}/`,v=f[1].schema.id??`__schema${e.counter++}`;return{defId:v,ref:h+v}},i=f=>{if(f[1].schema.$ref)return;const d=f[1],{ref:m,defId:h}=o(f);d.def={...d.schema},h&&(d.defId=h);const v=d.schema;for(const _ in v)delete v[_];v.$ref=m};if(e.cycles==="throw")for(const f of e.seen.entries()){const d=f[1];if(d.cycle)throw new Error(`Cycle detected: #/${(c=d.cycle)==null?void 0:c.join("/")}/ + +Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(const f of e.seen.entries()){const d=f[1];if(n===f[0]){i(f);continue}if(e.external){const h=(u=e.external.registry.get(f[0]))==null?void 0:u.id;if(n!==f[0]&&h){i(f);continue}}if((l=e.metadataRegistry.get(f[0]))==null?void 0:l.id){i(f);continue}if(d.cycle){i(f);continue}if(d.count>1&&e.reused==="ref"){i(f);continue}}}function dn(e,n){var s,c,u;const t=e.seen.get(n);if(!t)throw new Error("Unprocessed schema. This is a bug in Zod.");const r=l=>{const f=e.seen.get(l);if(f.ref===null)return;const d=f.def??f.schema,m={...d},h=f.ref;if(f.ref=null,h){r(h);const _=e.seen.get(h),$=_.schema;if($.$ref&&(e.target==="draft-07"||e.target==="draft-04"||e.target==="openapi-3.0")?(d.allOf=d.allOf??[],d.allOf.push($)):Object.assign(d,$),Object.assign(d,m),l._zod.parent===h)for(const Z in d)Z==="$ref"||Z==="allOf"||Z in m||delete d[Z];if($.$ref&&_.def)for(const Z in d)Z==="$ref"||Z==="allOf"||Z in _.def&&JSON.stringify(d[Z])===JSON.stringify(_.def[Z])&&delete d[Z]}const v=l._zod.parent;if(v&&v!==h){r(v);const _=e.seen.get(v);if(_!=null&&_.schema.$ref&&(d.$ref=_.schema.$ref,_.def))for(const $ in d)$==="$ref"||$==="allOf"||$ in _.def&&JSON.stringify(d[$])===JSON.stringify(_.def[$])&&delete d[$]}e.override({zodSchema:l,jsonSchema:d,path:f.path??[]})};for(const l of[...e.seen.entries()].reverse())r(l[0]);const o={};if(e.target==="draft-2020-12"?o.$schema="https://json-schema.org/draft/2020-12/schema":e.target==="draft-07"?o.$schema="http://json-schema.org/draft-07/schema#":e.target==="draft-04"?o.$schema="http://json-schema.org/draft-04/schema#":e.target,(s=e.external)!=null&&s.uri){const l=(c=e.external.registry.get(n))==null?void 0:c.id;if(!l)throw new Error("Schema is missing an `id` property");o.$id=e.external.uri(l)}Object.assign(o,t.def??t.schema);const i=((u=e.external)==null?void 0:u.defs)??{};for(const l of e.seen.entries()){const f=l[1];f.def&&f.defId&&(i[f.defId]=f.def)}e.external||Object.keys(i).length>0&&(e.target==="draft-2020-12"?o.$defs=i:o.definitions=i);try{const l=JSON.parse(JSON.stringify(o));return Object.defineProperty(l,"~standard",{value:{...n["~standard"],jsonSchema:{input:Q(n,"input",e.processors),output:Q(n,"output",e.processors)}},enumerable:!1,writable:!1}),l}catch{throw new Error("Error converting schema to JSON.")}}function O(e,n){const t=n??{seen:new Set};if(t.seen.has(e))return!1;t.seen.add(e);const r=e._zod.def;if(r.type==="transform")return!0;if(r.type==="array")return O(r.element,t);if(r.type==="set")return O(r.valueType,t);if(r.type==="lazy")return O(r.getter(),t);if(r.type==="promise"||r.type==="optional"||r.type==="nonoptional"||r.type==="nullable"||r.type==="readonly"||r.type==="default"||r.type==="prefault")return O(r.innerType,t);if(r.type==="intersection")return O(r.left,t)||O(r.right,t);if(r.type==="record"||r.type==="map")return O(r.keyType,t)||O(r.valueType,t);if(r.type==="pipe")return O(r.in,t)||O(r.out,t);if(r.type==="object"){for(const o in r.shape)if(O(r.shape[o],t))return!0;return!1}if(r.type==="union"){for(const o of r.options)if(O(o,t))return!0;return!1}if(r.type==="tuple"){for(const o of r.items)if(O(o,t))return!0;return!!(r.rest&&O(r.rest,t))}return!1}const $o=(e,n={})=>t=>{const r=ln({...t,processors:n});return k(e,r),fn(r,e),dn(r,e)},Q=(e,n,t={})=>r=>{const{libraryOptions:o,target:i}=r??{},s=ln({...o??{},target:i,io:n,processors:t});return k(e,s),fn(s,e),dn(s,e)},Zo={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},Oo=(e,n,t,r)=>{const o=t;o.type="string";const{minimum:i,maximum:s,format:c,patterns:u,contentEncoding:l}=e._zod.bag;if(typeof i=="number"&&(o.minLength=i),typeof s=="number"&&(o.maxLength=s),c&&(o.format=Zo[c]??c,o.format===""&&delete o.format,c==="time"&&delete o.format),l&&(o.contentEncoding=l),u&&u.size>0){const f=[...u];f.length===1?o.pattern=f[0].source:f.length>1&&(o.allOf=[...f.map(d=>({...n.target==="draft-07"||n.target==="draft-04"||n.target==="openapi-3.0"?{type:"string"}:{},pattern:d.source}))])}},So=(e,n,t,r)=>{const o=t,{minimum:i,maximum:s,format:c,multipleOf:u,exclusiveMaximum:l,exclusiveMinimum:f}=e._zod.bag;typeof c=="string"&&c.includes("int")?o.type="integer":o.type="number",typeof f=="number"&&(n.target==="draft-04"||n.target==="openapi-3.0"?(o.minimum=f,o.exclusiveMinimum=!0):o.exclusiveMinimum=f),typeof i=="number"&&(o.minimum=i,typeof f=="number"&&n.target!=="draft-04"&&(f>=i?delete o.minimum:delete o.exclusiveMinimum)),typeof l=="number"&&(n.target==="draft-04"||n.target==="openapi-3.0"?(o.maximum=l,o.exclusiveMaximum=!0):o.exclusiveMaximum=l),typeof s=="number"&&(o.maximum=s,typeof l=="number"&&n.target!=="draft-04"&&(l<=s?delete o.maximum:delete o.exclusiveMaximum)),typeof u=="number"&&(o.multipleOf=u)},Eo=(e,n,t,r)=>{t.type="boolean"},Io=(e,n,t,r)=>{n.target==="openapi-3.0"?(t.type="string",t.nullable=!0,t.enum=[null]):t.type="null"},To=(e,n,t,r)=>{t.not={}},Po=(e,n,t,r)=>{},No=(e,n,t,r)=>{const o=e._zod.def,i=Me(o.entries);i.every(s=>typeof s=="number")&&(t.type="number"),i.every(s=>typeof s=="string")&&(t.type="string"),t.enum=i},jo=(e,n,t,r)=>{const o=e._zod.def,i=[];for(const s of o.values)if(s===void 0){if(n.unrepresentable==="throw")throw new Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof s=="bigint"){if(n.unrepresentable==="throw")throw new Error("BigInt literals cannot be represented in JSON Schema");i.push(Number(s))}else i.push(s);if(i.length!==0)if(i.length===1){const s=i[0];t.type=s===null?"null":typeof s,n.target==="draft-04"||n.target==="openapi-3.0"?t.enum=[s]:t.const=s}else i.every(s=>typeof s=="number")&&(t.type="number"),i.every(s=>typeof s=="string")&&(t.type="string"),i.every(s=>typeof s=="boolean")&&(t.type="boolean"),i.every(s=>s===null)&&(t.type="null"),t.enum=i},Ao=(e,n,t,r)=>{if(n.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema")},Ro=(e,n,t,r)=>{if(n.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema")},Co=(e,n,t,r)=>{const o=t,i=e._zod.def,{minimum:s,maximum:c}=e._zod.bag;typeof s=="number"&&(o.minItems=s),typeof c=="number"&&(o.maxItems=c),o.type="array",o.items=k(i.element,n,{...r,path:[...r.path,"items"]})},Do=(e,n,t,r)=>{var l;const o=t,i=e._zod.def;o.type="object",o.properties={};const s=i.shape;for(const f in s)o.properties[f]=k(s[f],n,{...r,path:[...r.path,"properties",f]});const c=new Set(Object.keys(s)),u=new Set([...c].filter(f=>{const d=i.shape[f]._zod;return n.io==="input"?d.optin===void 0:d.optout===void 0}));u.size>0&&(o.required=Array.from(u)),((l=i.catchall)==null?void 0:l._zod.def.type)==="never"?o.additionalProperties=!1:i.catchall?i.catchall&&(o.additionalProperties=k(i.catchall,n,{...r,path:[...r.path,"additionalProperties"]})):n.io==="output"&&(o.additionalProperties=!1)},Uo=(e,n,t,r)=>{const o=e._zod.def,i=o.inclusive===!1,s=o.options.map((c,u)=>k(c,n,{...r,path:[...r.path,i?"oneOf":"anyOf",u]}));i?t.oneOf=s:t.anyOf=s},Fo=(e,n,t,r)=>{const o=e._zod.def,i=k(o.left,n,{...r,path:[...r.path,"allOf",0]}),s=k(o.right,n,{...r,path:[...r.path,"allOf",1]}),c=l=>"allOf"in l&&Object.keys(l).length===1,u=[...c(i)?i.allOf:[i],...c(s)?s.allOf:[s]];t.allOf=u},Jo=(e,n,t,r)=>{const o=t,i=e._zod.def;o.type="object";const s=i.keyType,c=s._zod.bag,u=c==null?void 0:c.patterns;if(i.mode==="loose"&&u&&u.size>0){const f=k(i.valueType,n,{...r,path:[...r.path,"patternProperties","*"]});o.patternProperties={};for(const d of u)o.patternProperties[d.source]=f}else(n.target==="draft-07"||n.target==="draft-2020-12")&&(o.propertyNames=k(i.keyType,n,{...r,path:[...r.path,"propertyNames"]})),o.additionalProperties=k(i.valueType,n,{...r,path:[...r.path,"additionalProperties"]});const l=s._zod.values;if(l){const f=[...l].filter(d=>typeof d=="string"||typeof d=="number");f.length>0&&(o.required=f)}},Mo=(e,n,t,r)=>{const o=e._zod.def,i=k(o.innerType,n,r),s=n.seen.get(e);n.target==="openapi-3.0"?(s.ref=o.innerType,t.nullable=!0):t.anyOf=[i,{type:"null"}]},Lo=(e,n,t,r)=>{const o=e._zod.def;k(o.innerType,n,r);const i=n.seen.get(e);i.ref=o.innerType},xo=(e,n,t,r)=>{const o=e._zod.def;k(o.innerType,n,r);const i=n.seen.get(e);i.ref=o.innerType,t.default=JSON.parse(JSON.stringify(o.defaultValue))},Vo=(e,n,t,r)=>{const o=e._zod.def;k(o.innerType,n,r);const i=n.seen.get(e);i.ref=o.innerType,n.io==="input"&&(t._prefault=JSON.parse(JSON.stringify(o.defaultValue)))},Wo=(e,n,t,r)=>{const o=e._zod.def;k(o.innerType,n,r);const i=n.seen.get(e);i.ref=o.innerType;let s;try{s=o.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}t.default=s},Ko=(e,n,t,r)=>{const o=e._zod.def,i=n.io==="input"?o.in._zod.def.type==="transform"?o.out:o.in:o.out;k(i,n,r);const s=n.seen.get(e);s.ref=i},Bo=(e,n,t,r)=>{const o=e._zod.def;k(o.innerType,n,r);const i=n.seen.get(e);i.ref=o.innerType,t.readOnly=!0},pn=(e,n,t,r)=>{const o=e._zod.def;k(o.innerType,n,r);const i=n.seen.get(e);i.ref=o.innerType},Go=a("ZodISODateTime",(e,n)=>{Wt.init(e,n),w.init(e,n)});function Yo(e){return Xr(Go,e)}const qo=a("ZodISODate",(e,n)=>{Kt.init(e,n),w.init(e,n)});function Xo(e){return Hr(qo,e)}const Ho=a("ZodISOTime",(e,n)=>{Bt.init(e,n),w.init(e,n)});function Qo(e){return Qr(Ho,e)}const ei=a("ZodISODuration",(e,n)=>{Gt.init(e,n),w.init(e,n)});function ni(e){return eo(ei,e)}const hn=(e,n)=>{We.init(e,n),e.name="ZodError",Object.defineProperties(e,{format:{value:t=>Dn(e,t)},flatten:{value:t=>Cn(e,t)},addIssue:{value:t=>{e.issues.push(t),e.message=JSON.stringify(e.issues,se,2)}},addIssues:{value:t=>{e.issues.push(...t),e.message=JSON.stringify(e.issues,se,2)}},isEmpty:{get(){return e.issues.length===0}}})},us=a("ZodError",hn),I=a("ZodError",hn,{Parent:Error}),ti=he(I),ri=me(I),oi=ee(I),ii=ne(I),si=Jn(I),ci=Mn(I),ui=Ln(I),ai=xn(I),li=Vn(I),fi=Wn(I),di=Kn(I),pi=Bn(I),b=a("ZodType",(e,n)=>(y.init(e,n),Object.assign(e["~standard"],{jsonSchema:{input:Q(e,"input"),output:Q(e,"output")}}),e.toJSONSchema=$o(e,{}),e.def=n,e.type=n.type,Object.defineProperty(e,"_def",{value:n}),e.check=(...t)=>e.clone(A(n,{checks:[...n.checks??[],...t.map(r=>typeof r=="function"?{_zod:{check:r,def:{check:"custom"},onattach:[]}}:r)]}),{parent:!0}),e.with=e.check,e.clone=(t,r)=>R(e,t,r),e.brand=()=>e,e.register=((t,r)=>(t.add(e,r),e)),e.parse=(t,r)=>ti(e,t,r,{callee:e.parse}),e.safeParse=(t,r)=>oi(e,t,r),e.parseAsync=async(t,r)=>ri(e,t,r,{callee:e.parseAsync}),e.safeParseAsync=async(t,r)=>ii(e,t,r),e.spa=e.safeParseAsync,e.encode=(t,r)=>si(e,t,r),e.decode=(t,r)=>ci(e,t,r),e.encodeAsync=async(t,r)=>ui(e,t,r),e.decodeAsync=async(t,r)=>ai(e,t,r),e.safeEncode=(t,r)=>li(e,t,r),e.safeDecode=(t,r)=>fi(e,t,r),e.safeEncodeAsync=async(t,r)=>di(e,t,r),e.safeDecodeAsync=async(t,r)=>pi(e,t,r),e.refine=(t,r)=>e.check(ss(t,r)),e.superRefine=t=>e.check(cs(t)),e.overwrite=t=>e.check(L(t)),e.optional=()=>De(e),e.exactOptional=()=>Bi(e),e.nullable=()=>Ue(e),e.nullish=()=>De(Ue(e)),e.nonoptional=t=>Qi(e,t),e.array=()=>Ci(e),e.or=t=>Fi([e,t]),e.and=t=>Mi(e,t),e.transform=t=>ae(e,yn(t)),e.default=t=>qi(e,t),e.prefault=t=>Hi(e,t),e.catch=t=>ns(e,t),e.pipe=t=>ae(e,t),e.readonly=()=>os(e),e.describe=t=>{const r=e.clone();return V.add(r,{description:t}),r},Object.defineProperty(e,"description",{get(){var t;return(t=V.get(e))==null?void 0:t.description},configurable:!0}),e.meta=(...t)=>{if(t.length===0)return V.get(e);const r=e.clone();return V.add(r,t[0]),r},e.isOptional=()=>e.safeParse(void 0).success,e.isNullable=()=>e.safeParse(null).success,e.apply=t=>t(e),e)),mn=a("_ZodString",(e,n)=>{_e.init(e,n),b.init(e,n),e._zod.processJSONSchema=(r,o,i)=>Oo(e,r,o);const t=e._zod.bag;e.format=t.format??null,e.minLength=t.minimum??null,e.maxLength=t.maximum??null,e.regex=(...r)=>e.check(uo(...r)),e.includes=(...r)=>e.check(fo(...r)),e.startsWith=(...r)=>e.check(po(...r)),e.endsWith=(...r)=>e.check(ho(...r)),e.min=(...r)=>e.check(H(...r)),e.max=(...r)=>e.check(un(...r)),e.length=(...r)=>e.check(an(...r)),e.nonempty=(...r)=>e.check(H(1,...r)),e.lowercase=r=>e.check(ao(r)),e.uppercase=r=>e.check(lo(r)),e.trim=()=>e.check(_o()),e.normalize=(...r)=>e.check(mo(...r)),e.toLowerCase=()=>e.check(go()),e.toUpperCase=()=>e.check(vo()),e.slugify=()=>e.check(yo())}),_n=a("ZodString",(e,n)=>{_e.init(e,n),mn.init(e,n),e.email=t=>e.check(sn(gn,t)),e.url=t=>e.check(cn(vn,t)),e.jwt=t=>e.check(qr(Ei,t)),e.emoji=t=>e.check(Cr(hi,t)),e.guid=t=>e.check(Te(Ae,t)),e.uuid=t=>e.check(Nr(Y,t)),e.uuidv4=t=>e.check(jr(Y,t)),e.uuidv6=t=>e.check(Ar(Y,t)),e.uuidv7=t=>e.check(Rr(Y,t)),e.nanoid=t=>e.check(Dr(mi,t)),e.guid=t=>e.check(Te(Ae,t)),e.cuid=t=>e.check(Ur(_i,t)),e.cuid2=t=>e.check(Fr(gi,t)),e.ulid=t=>e.check(Jr(vi,t)),e.base64=t=>e.check(Br(Zi,t)),e.base64url=t=>e.check(Gr(Oi,t)),e.xid=t=>e.check(Mr(yi,t)),e.ksuid=t=>e.check(Lr(zi,t)),e.ipv4=t=>e.check(xr(bi,t)),e.ipv6=t=>e.check(Vr(wi,t)),e.cidrv4=t=>e.check(Wr(ki,t)),e.cidrv6=t=>e.check(Kr($i,t)),e.e164=t=>e.check(Yr(Si,t)),e.datetime=t=>e.check(Yo(t)),e.date=t=>e.check(Xo(t)),e.time=t=>e.check(Qo(t)),e.duration=t=>e.check(ni(t))});function as(e){return Tr(_n,e)}const w=a("ZodStringFormat",(e,n)=>{z.init(e,n),mn.init(e,n)}),gn=a("ZodEmail",(e,n)=>{Ct.init(e,n),w.init(e,n)});function ls(e){return sn(gn,e)}const Ae=a("ZodGUID",(e,n)=>{At.init(e,n),w.init(e,n)}),Y=a("ZodUUID",(e,n)=>{Rt.init(e,n),w.init(e,n)}),vn=a("ZodURL",(e,n)=>{Dt.init(e,n),w.init(e,n)});function fs(e){return cn(vn,e)}const hi=a("ZodEmoji",(e,n)=>{Ut.init(e,n),w.init(e,n)}),mi=a("ZodNanoID",(e,n)=>{Ft.init(e,n),w.init(e,n)}),_i=a("ZodCUID",(e,n)=>{Jt.init(e,n),w.init(e,n)}),gi=a("ZodCUID2",(e,n)=>{Mt.init(e,n),w.init(e,n)}),vi=a("ZodULID",(e,n)=>{Lt.init(e,n),w.init(e,n)}),yi=a("ZodXID",(e,n)=>{xt.init(e,n),w.init(e,n)}),zi=a("ZodKSUID",(e,n)=>{Vt.init(e,n),w.init(e,n)}),bi=a("ZodIPv4",(e,n)=>{Yt.init(e,n),w.init(e,n)}),wi=a("ZodIPv6",(e,n)=>{qt.init(e,n),w.init(e,n)}),ki=a("ZodCIDRv4",(e,n)=>{Xt.init(e,n),w.init(e,n)}),$i=a("ZodCIDRv6",(e,n)=>{Ht.init(e,n),w.init(e,n)}),Zi=a("ZodBase64",(e,n)=>{Qt.init(e,n),w.init(e,n)}),Oi=a("ZodBase64URL",(e,n)=>{nr.init(e,n),w.init(e,n)}),Si=a("ZodE164",(e,n)=>{tr.init(e,n),w.init(e,n)}),Ei=a("ZodJWT",(e,n)=>{or.init(e,n),w.init(e,n)}),ge=a("ZodNumber",(e,n)=>{nn.init(e,n),b.init(e,n),e._zod.processJSONSchema=(r,o,i)=>So(e,r,o),e.gt=(r,o)=>e.check(Ne(r,o)),e.gte=(r,o)=>e.check(ie(r,o)),e.min=(r,o)=>e.check(ie(r,o)),e.lt=(r,o)=>e.check(Pe(r,o)),e.lte=(r,o)=>e.check(oe(r,o)),e.max=(r,o)=>e.check(oe(r,o)),e.int=r=>e.check(Re(r)),e.safe=r=>e.check(Re(r)),e.positive=r=>e.check(Ne(0,r)),e.nonnegative=r=>e.check(ie(0,r)),e.negative=r=>e.check(Pe(0,r)),e.nonpositive=r=>e.check(oe(0,r)),e.multipleOf=(r,o)=>e.check(je(r,o)),e.step=(r,o)=>e.check(je(r,o)),e.finite=()=>e;const t=e._zod.bag;e.minValue=Math.max(t.minimum??Number.NEGATIVE_INFINITY,t.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,e.maxValue=Math.min(t.maximum??Number.POSITIVE_INFINITY,t.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,e.isInt=(t.format??"").includes("int")||Number.isSafeInteger(t.multipleOf??.5),e.isFinite=!0,e.format=t.format??null});function ds(e){return no(ge,e)}const Ii=a("ZodNumberFormat",(e,n)=>{ir.init(e,n),ge.init(e,n)});function Re(e){return ro(Ii,e)}const Ti=a("ZodBoolean",(e,n)=>{sr.init(e,n),b.init(e,n),e._zod.processJSONSchema=(t,r,o)=>Eo(e,t,r)});function ps(e){return oo(Ti,e)}const Pi=a("ZodNull",(e,n)=>{cr.init(e,n),b.init(e,n),e._zod.processJSONSchema=(t,r,o)=>Io(e,t,r)});function hs(e){return io(Pi,e)}const Ni=a("ZodUnknown",(e,n)=>{ur.init(e,n),b.init(e,n),e._zod.processJSONSchema=(t,r,o)=>Po()});function Ce(){return so(Ni)}const ji=a("ZodNever",(e,n)=>{ar.init(e,n),b.init(e,n),e._zod.processJSONSchema=(t,r,o)=>To(e,t,r)});function Ai(e){return co(ji,e)}const Ri=a("ZodArray",(e,n)=>{lr.init(e,n),b.init(e,n),e._zod.processJSONSchema=(t,r,o)=>Co(e,t,r,o),e.element=n.element,e.min=(t,r)=>e.check(H(t,r)),e.nonempty=t=>e.check(H(1,t)),e.max=(t,r)=>e.check(un(t,r)),e.length=(t,r)=>e.check(an(t,r)),e.unwrap=()=>e.element});function Ci(e,n){return zo(Ri,e,n)}const Di=a("ZodObject",(e,n)=>{dr.init(e,n),b.init(e,n),e._zod.processJSONSchema=(t,r,o)=>Do(e,t,r,o),g(e,"shape",()=>n.shape),e.keyof=()=>xi(Object.keys(e._zod.def.shape)),e.catchall=t=>e.clone({...e._zod.def,catchall:t}),e.passthrough=()=>e.clone({...e._zod.def,catchall:Ce()}),e.loose=()=>e.clone({...e._zod.def,catchall:Ce()}),e.strict=()=>e.clone({...e._zod.def,catchall:Ai()}),e.strip=()=>e.clone({...e._zod.def,catchall:void 0}),e.extend=t=>Pn(e,t),e.safeExtend=t=>Nn(e,t),e.merge=t=>jn(e,t),e.pick=t=>In(e,t),e.omit=t=>Tn(e,t),e.partial=(...t)=>An(zn,e,t[0]),e.required=(...t)=>Rn(bn,e,t[0])});function ms(e,n){const t={type:"object",shape:e??{},...p(n)};return new Di(t)}const Ui=a("ZodUnion",(e,n)=>{pr.init(e,n),b.init(e,n),e._zod.processJSONSchema=(t,r,o)=>Uo(e,t,r,o),e.options=n.options});function Fi(e,n){return new Ui({type:"union",options:e,...p(n)})}const Ji=a("ZodIntersection",(e,n)=>{hr.init(e,n),b.init(e,n),e._zod.processJSONSchema=(t,r,o)=>Fo(e,t,r,o)});function Mi(e,n){return new Ji({type:"intersection",left:e,right:n})}const Li=a("ZodRecord",(e,n)=>{mr.init(e,n),b.init(e,n),e._zod.processJSONSchema=(t,r,o)=>Jo(e,t,r,o),e.keyType=n.keyType,e.valueType=n.valueType});function _s(e,n,t){return new Li({type:"record",keyType:e,valueType:n,...p(t)})}const ue=a("ZodEnum",(e,n)=>{_r.init(e,n),b.init(e,n),e._zod.processJSONSchema=(r,o,i)=>No(e,r,o),e.enum=n.entries,e.options=Object.values(n.entries);const t=new Set(Object.keys(n.entries));e.extract=(r,o)=>{const i={};for(const s of r)if(t.has(s))i[s]=n.entries[s];else throw new Error(`Key ${s} not found in enum`);return new ue({...n,checks:[],...p(o),entries:i})},e.exclude=(r,o)=>{const i={...n.entries};for(const s of r)if(t.has(s))delete i[s];else throw new Error(`Key ${s} not found in enum`);return new ue({...n,checks:[],...p(o),entries:i})}});function xi(e,n){const t=Array.isArray(e)?Object.fromEntries(e.map(r=>[r,r])):e;return new ue({type:"enum",entries:t,...p(n)})}const Vi=a("ZodLiteral",(e,n)=>{gr.init(e,n),b.init(e,n),e._zod.processJSONSchema=(t,r,o)=>jo(e,t,r),e.values=new Set(n.values),Object.defineProperty(e,"value",{get(){if(n.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return n.values[0]}})});function gs(e,n){return new Vi({type:"literal",values:Array.isArray(e)?e:[e],...p(n)})}const Wi=a("ZodTransform",(e,n)=>{vr.init(e,n),b.init(e,n),e._zod.processJSONSchema=(t,r,o)=>Ro(e,t),e._zod.parse=(t,r)=>{if(r.direction==="backward")throw new Fe(e.constructor.name);t.addIssue=i=>{if(typeof i=="string")t.issues.push(W(i,t.value,n));else{const s=i;s.fatal&&(s.continue=!1),s.code??(s.code="custom"),s.input??(s.input=t.value),s.inst??(s.inst=e),t.issues.push(W(s))}};const o=n.transform(t.value,t);return o instanceof Promise?o.then(i=>(t.value=i,t)):(t.value=o,t)}});function yn(e){return new Wi({type:"transform",transform:e})}const zn=a("ZodOptional",(e,n)=>{on.init(e,n),b.init(e,n),e._zod.processJSONSchema=(t,r,o)=>pn(e,t,r,o),e.unwrap=()=>e._zod.def.innerType});function De(e){return new zn({type:"optional",innerType:e})}const Ki=a("ZodExactOptional",(e,n)=>{yr.init(e,n),b.init(e,n),e._zod.processJSONSchema=(t,r,o)=>pn(e,t,r,o),e.unwrap=()=>e._zod.def.innerType});function Bi(e){return new Ki({type:"optional",innerType:e})}const Gi=a("ZodNullable",(e,n)=>{zr.init(e,n),b.init(e,n),e._zod.processJSONSchema=(t,r,o)=>Mo(e,t,r,o),e.unwrap=()=>e._zod.def.innerType});function Ue(e){return new Gi({type:"nullable",innerType:e})}const Yi=a("ZodDefault",(e,n)=>{br.init(e,n),b.init(e,n),e._zod.processJSONSchema=(t,r,o)=>xo(e,t,r,o),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function qi(e,n){return new Yi({type:"default",innerType:e,get defaultValue(){return typeof n=="function"?n():xe(n)}})}const Xi=a("ZodPrefault",(e,n)=>{wr.init(e,n),b.init(e,n),e._zod.processJSONSchema=(t,r,o)=>Vo(e,t,r,o),e.unwrap=()=>e._zod.def.innerType});function Hi(e,n){return new Xi({type:"prefault",innerType:e,get defaultValue(){return typeof n=="function"?n():xe(n)}})}const bn=a("ZodNonOptional",(e,n)=>{kr.init(e,n),b.init(e,n),e._zod.processJSONSchema=(t,r,o)=>Lo(e,t,r,o),e.unwrap=()=>e._zod.def.innerType});function Qi(e,n){return new bn({type:"nonoptional",innerType:e,...p(n)})}const es=a("ZodCatch",(e,n)=>{$r.init(e,n),b.init(e,n),e._zod.processJSONSchema=(t,r,o)=>Wo(e,t,r,o),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function ns(e,n){return new es({type:"catch",innerType:e,catchValue:typeof n=="function"?n:()=>n})}const ts=a("ZodPipe",(e,n)=>{Zr.init(e,n),b.init(e,n),e._zod.processJSONSchema=(t,r,o)=>Ko(e,t,r,o),e.in=n.in,e.out=n.out});function ae(e,n){return new ts({type:"pipe",in:e,out:n})}const rs=a("ZodReadonly",(e,n)=>{Or.init(e,n),b.init(e,n),e._zod.processJSONSchema=(t,r,o)=>Bo(e,t,r,o),e.unwrap=()=>e._zod.def.innerType});function os(e){return new rs({type:"readonly",innerType:e})}const is=a("ZodCustom",(e,n)=>{Sr.init(e,n),b.init(e,n),e._zod.processJSONSchema=(t,r,o)=>Ao(e,t)});function ss(e,n={}){return bo(is,e,n)}function cs(e){return wo(e)}function vs(e,n){return ae(yn(e),n)}function ys(e){return Pr(_n,e)}function zs(e){return to(ge,e)}export{us as Z,xi as _,Fi as a,ps as b,Ci as c,zs as d,ls as e,Ce as f,ys as g,hs as h,gs as l,ds as n,ms as o,vs as p,_s as r,as as s,fs as u}; diff --git a/apps/portal/public/storybook/assets/compat-BjFfok0x.js b/apps/portal/public/storybook/assets/compat-BjFfok0x.js new file mode 100644 index 00000000..1464af62 --- /dev/null +++ b/apps/portal/public/storybook/assets/compat-BjFfok0x.js @@ -0,0 +1 @@ +import"./coerce-BirWdn0y.js";const s={custom:"custom"};export{s as Z}; diff --git a/apps/portal/public/storybook/assets/constants-Cd_qStHG.js b/apps/portal/public/storybook/assets/constants-Cd_qStHG.js new file mode 100644 index 00000000..9eb0389a --- /dev/null +++ b/apps/portal/public/storybook/assets/constants-Cd_qStHG.js @@ -0,0 +1 @@ +const I={id:1,code:"JPY",prefix:"¥",suffix:"",format:"1",rate:"1.00000"},A={MIN_LIMIT:1,MAX_LIMIT:100,DEFAULT_LIMIT:10,DEFAULT_PAGE:1},e=["Paid","Unpaid","Cancelled","Overdue","Collections"];export{I as F,A as I,e as V}; diff --git a/apps/portal/public/storybook/assets/contract-CH57by1Y.js b/apps/portal/public/storybook/assets/contract-CH57by1Y.js new file mode 100644 index 00000000..784d17a6 --- /dev/null +++ b/apps/portal/public/storybook/assets/contract-CH57by1Y.js @@ -0,0 +1 @@ +const e={ACTIVE:"Active",INACTIVE:"Inactive",PENDING:"Pending",CANCELLED:"Cancelled",SUSPENDED:"Suspended",TERMINATED:"Terminated",COMPLETED:"Completed"},E={MONTHLY:"Monthly",QUARTERLY:"Quarterly",SEMI_ANNUALLY:"Semi-Annually",ANNUALLY:"Annually",BIENNIALLY:"Biennially",TRIENNIALLY:"Triennially",ONE_TIME:"One-time",FREE:"Free"};export{e as S,E as a}; diff --git a/apps/portal/public/storybook/assets/countries-CY6LSu2r.js b/apps/portal/public/storybook/assets/countries-CY6LSu2r.js new file mode 100644 index 00000000..61bbf6fb --- /dev/null +++ b/apps/portal/public/storybook/assets/countries-CY6LSu2r.js @@ -0,0 +1 @@ +const l=JSON.parse(`[{"name":{"common":"Aruba","official":"Aruba","native":{"nld":{"official":"Aruba","common":"Aruba"},"pap":{"official":"Aruba","common":"Aruba"}}},"tld":[".aw"],"cca2":"AW","ccn3":"533","cca3":"ABW","cioc":"ARU","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"AWG":{"name":"Aruban florin","symbol":"ƒ"}},"idd":{"root":"+2","suffixes":["97"]},"capital":["Oranjestad"],"altSpellings":["AW"],"region":"Americas","subregion":"Caribbean","languages":{"nld":"Dutch","pap":"Papiamento"},"translations":{"ara":{"official":"أروبا","common":"أروبا"},"ces":{"official":"Aruba","common":"Aruba"},"deu":{"official":"Aruba","common":"Aruba"},"est":{"official":"Aruba","common":"Aruba"},"fin":{"official":"Aruba","common":"Aruba"},"fra":{"official":"Aruba","common":"Aruba"},"hrv":{"official":"Aruba","common":"Aruba"},"hun":{"official":"Aruba","common":"Aruba"},"ita":{"official":"Aruba","common":"Aruba"},"jpn":{"official":"アルバ","common":"アルバ"},"kor":{"official":"아루바","common":"아루바"},"nld":{"official":"Aruba","common":"Aruba"},"per":{"official":"آروبا","common":"آروبا"},"pol":{"official":"Aruba","common":"Aruba"},"por":{"official":"Aruba","common":"Aruba"},"rus":{"official":"Аруба","common":"Аруба"},"slk":{"official":"Aruba","common":"Aruba"},"spa":{"official":"Aruba","common":"Aruba"},"srp":{"official":"Aruba","common":"Aruba"},"swe":{"official":"Aruba","common":"Aruba"},"tur":{"official":"Aruba","common":"Aruba"},"urd":{"official":"اروبا","common":"اروبا"},"zho":{"official":"阿鲁巴","common":"阿鲁巴"}},"latlng":[12.5,-69.96666666],"landlocked":false,"borders":[],"area":180,"flag":"🇦🇼","demonyms":{"eng":{"f":"Aruban","m":"Aruban"},"fra":{"f":"Arubaise","m":"Arubais"}}},{"name":{"common":"Afghanistan","official":"Islamic Republic of Afghanistan","native":{"prs":{"official":"جمهوری اسلامی افغانستان","common":"افغانستان"},"pus":{"official":"د افغانستان اسلامي جمهوریت","common":"افغانستان"},"tuk":{"official":"Owganystan Yslam Respublikasy","common":"Owganystan"}}},"tld":[".af"],"cca2":"AF","ccn3":"004","cca3":"AFG","cioc":"AFG","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"AFN":{"name":"Afghan afghani","symbol":"؋"}},"idd":{"root":"+9","suffixes":["3"]},"capital":["Kabul"],"altSpellings":["AF","Afġānistān"],"region":"Asia","subregion":"Southern Asia","languages":{"prs":"Dari","pus":"Pashto","tuk":"Turkmen"},"translations":{"ara":{"official":"جمهورية أففانستان الإسلامية","common":"أفغانستان"},"ces":{"official":"Afghánská islámská republika","common":"Afghánistán"},"deu":{"official":"Islamische Republik Afghanistan","common":"Afghanistan"},"est":{"official":"Afganistani Islamivabariik","common":"Afganistan"},"fin":{"official":"Afganistanin islamilainen tasavalta","common":"Afganistan"},"fra":{"official":"République islamique d'Afghanistan","common":"Afghanistan"},"hrv":{"official":"Islamska Republika Afganistan","common":"Afganistan"},"hun":{"official":"Afganisztáni Iszlám Köztársaság","common":"Afganisztán"},"ita":{"official":"Repubblica islamica dell'Afghanistan","common":"Afghanistan"},"jpn":{"official":"アフガニスタン・イスラム共和国","common":"アフガニスタン"},"kor":{"official":"아프가니스탄 이슬람 공화국","common":"아프가니스탄"},"nld":{"official":"Islamitische Republiek Afghanistan","common":"Afghanistan"},"per":{"official":"جمهوری اسلامی افغانستان","common":"افغانستان"},"pol":{"official":"Islamska Republika Afganistanu","common":"Afganistan"},"por":{"official":"República Islâmica do Afeganistão","common":"Afeganistão"},"rus":{"official":"Исламская Республика Афганистан","common":"Афганистан"},"slk":{"official":"Afgánsky islamský štát","common":"Afganistan"},"spa":{"official":"República Islámica de Afganistán","common":"Afganistán"},"srp":{"official":"Islamska Republika Avganistan","common":"Avganistan"},"swe":{"official":"Islamiska republiken Afghanistan","common":"Afghanistan"},"tur":{"official":"Afganistan İslam Cumhuriyeti","common":"Afganistan"},"urd":{"official":"اسلامی جمہوریہ افغانستان","common":"افغانستان"},"zho":{"official":"阿富汗伊斯兰共和国","common":"阿富汗"}},"latlng":[33,65],"landlocked":true,"borders":["IRN","PAK","TKM","UZB","TJK","CHN"],"area":652230,"flag":"🇦🇫","demonyms":{"eng":{"f":"Afghan","m":"Afghan"},"fra":{"f":"Afghane","m":"Afghan"}}},{"name":{"common":"Angola","official":"Republic of Angola","native":{"por":{"official":"República de Angola","common":"Angola"}}},"tld":[".ao"],"cca2":"AO","ccn3":"024","cca3":"AGO","cioc":"ANG","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"AOA":{"name":"Angolan kwanza","symbol":"Kz"}},"idd":{"root":"+2","suffixes":["44"]},"capital":["Luanda"],"altSpellings":["AO","República de Angola","ʁɛpublika de an'ɡɔla"],"region":"Africa","subregion":"Middle Africa","languages":{"por":"Portuguese"},"translations":{"ara":{"official":"أنغولا","common":"جمهورية أنغولا"},"ces":{"official":"Angolská republika","common":"Angola"},"deu":{"official":"Republik Angola","common":"Angola"},"est":{"official":"Angola Vabariik","common":"Angola"},"fin":{"official":"Angolan tasavalta","common":"Angola"},"fra":{"official":"République d'Angola","common":"Angola"},"hrv":{"official":"Republika Angola","common":"Angola"},"hun":{"official":"Angola","common":"Angola"},"ita":{"official":"Repubblica dell'Angola","common":"Angola"},"jpn":{"official":"アンゴラ共和国","common":"アンゴラ"},"kor":{"official":"앙골라 공화국","common":"앙골라"},"nld":{"official":"Republiek Angola","common":"Angola"},"per":{"official":"جمهوری آنگولا","common":"آنگولا"},"pol":{"official":"Republika Angoli","common":"Angola"},"por":{"official":"República de Angola","common":"Angola"},"rus":{"official":"Республика Ангола","common":"Ангола"},"slk":{"official":"Angolská republika","common":"Angola"},"spa":{"official":"República de Angola","common":"Angola"},"srp":{"official":"Republika Angola","common":"Angola"},"swe":{"official":"Republiken Angola","common":"Angola"},"tur":{"official":"Angola Cumhuriyeti","common":"Angola"},"urd":{"official":"جمہوریہ انگولہ","common":"انگولہ"},"zho":{"official":"安哥拉共和国","common":"安哥拉"}},"latlng":[-12.5,18.5],"landlocked":false,"borders":["COG","COD","ZMB","NAM"],"area":1246700,"flag":"🇦🇴","demonyms":{"eng":{"f":"Angolan","m":"Angolan"},"fra":{"f":"Angolaise","m":"Angolais"}}},{"name":{"common":"Anguilla","official":"Anguilla","native":{"eng":{"official":"Anguilla","common":"Anguilla"}}},"tld":[".ai"],"cca2":"AI","ccn3":"660","cca3":"AIA","cioc":"","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"XCD":{"name":"Eastern Caribbean dollar","symbol":"$"}},"idd":{"root":"+1","suffixes":["264"]},"capital":["The Valley"],"altSpellings":["AI"],"region":"Americas","subregion":"Caribbean","languages":{"eng":"English"},"translations":{"ara":{"official":"أنغويلا","common":"أنغويلا"},"ces":{"official":"Anguilla","common":"Anguilla"},"deu":{"official":"Anguilla","common":"Anguilla"},"est":{"official":"Anguilla","common":"Anguilla"},"fin":{"official":"Anguilla","common":"Anguilla"},"fra":{"official":"Anguilla","common":"Anguilla"},"hrv":{"official":"Anguilla","common":"Angvila"},"hun":{"official":"Anguilla","common":"Anguilla"},"ita":{"official":"Anguilla","common":"Anguilla"},"jpn":{"official":"アンギラ","common":"アンギラ"},"kor":{"official":"앵귈라","common":"앵귈라"},"nld":{"official":"Anguilla","common":"Anguilla"},"per":{"official":"آنگویلا","common":"آنگویلا"},"pol":{"official":"Anguilla","common":"Anguilla"},"por":{"official":"Anguilla","common":"Anguilla"},"rus":{"official":"Ангилья","common":"Ангилья"},"slk":{"official":"Anguilla","common":"Anguilla"},"spa":{"official":"Anguila","common":"Anguilla"},"srp":{"official":"Angvila","common":"Angvila"},"swe":{"official":"Anguilla","common":"Anguilla"},"tur":{"official":"Anguilla","common":"Anguilla"},"urd":{"official":"اینگویلا","common":"اینگویلا"},"zho":{"official":"安圭拉","common":"安圭拉"}},"latlng":[18.25,-63.16666666],"landlocked":false,"borders":[],"area":91,"flag":"🇦🇮","demonyms":{"eng":{"f":"Anguillian","m":"Anguillian"},"fra":{"f":"Anguillane","m":"Anguillan"}}},{"name":{"common":"Åland Islands","official":"Åland Islands","native":{"swe":{"official":"Landskapet Åland","common":"Åland"}}},"tld":[".ax"],"cca2":"AX","ccn3":"248","cca3":"ALA","cioc":"","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"EUR":{"name":"Euro","symbol":"€"}},"idd":{"root":"+3","suffixes":["5818"]},"capital":["Mariehamn"],"altSpellings":["AX","Aaland","Aland","Ahvenanmaa"],"region":"Europe","subregion":"Northern Europe","languages":{"swe":"Swedish"},"translations":{"ara":{"official":"جزر أولاند","common":"جزر أولاند"},"ces":{"official":"Ålandské ostrovy","common":"Ålandy"},"deu":{"official":"Åland-Inseln","common":"Åland"},"est":{"official":"Ahvenamaa maakond","common":"Ahvenamaa"},"fin":{"official":"Ahvenanmaan maakunta","common":"Ahvenanmaa"},"fra":{"official":"Ahvenanmaa","common":"Ahvenanmaa"},"hrv":{"official":"Aland Islands","common":"Ålandski otoci"},"hun":{"official":"Åland-szigetek","common":"Åland-szigetek"},"ita":{"official":"Isole Åland","common":"Isole Aland"},"jpn":{"official":"オーランド諸島","common":"オーランド"},"kor":{"official":"올란드 제도","common":"올란드 제도"},"nld":{"official":"Åland eilanden","common":"Ålandeilanden"},"per":{"official":"جزایر الند","common":"جزایر الند"},"pol":{"official":"Wyspy Alandzkie","common":"Wyspy Alandzkie"},"por":{"official":"Ilhas Åland","common":"Alândia"},"rus":{"official":"Аландские острова","common":"Аландские острова"},"slk":{"official":"Alandské ostrovy","common":"Alandy"},"spa":{"official":"Islas Åland","common":"Alandia"},"srp":{"official":"Olandska Ostrva","common":"Olandska Ostrva"},"swe":{"official":"Åland","common":"Åland"},"tur":{"official":"Åland Adaları","common":"Åland"},"urd":{"official":"جزائر اولند","common":"جزائر اولند"},"zho":{"official":"奥兰群岛","common":"奥兰群岛"}},"latlng":[60.116667,19.9],"landlocked":false,"borders":[],"area":1580,"flag":"🇦🇽","demonyms":{"eng":{"f":"Ålandish","m":"Ålandish"},"fra":{"f":"Ålandaise","m":"Ålandais"}}},{"name":{"common":"Albania","official":"Republic of Albania","native":{"sqi":{"official":"Republika e Shqipërisë","common":"Shqipëria"}}},"tld":[".al"],"cca2":"AL","ccn3":"008","cca3":"ALB","cioc":"ALB","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Eastern European Group","currencies":{"ALL":{"name":"Albanian lek","symbol":"L"}},"idd":{"root":"+3","suffixes":["55"]},"capital":["Tirana"],"altSpellings":["AL","Shqipëri","Shqipëria","Shqipnia"],"region":"Europe","subregion":"Southeast Europe","languages":{"sqi":"Albanian"},"translations":{"ara":{"official":"جمهورية ألبانيا","common":"ألبانيا"},"ces":{"official":"Albánská republika","common":"Albánie"},"deu":{"official":"Republik Albanien","common":"Albanien"},"est":{"official":"Albaania Vabariik","common":"Albaania"},"fin":{"official":"Albanian tasavalta","common":"Albania"},"fra":{"official":"République d'Albanie","common":"Albanie"},"hrv":{"official":"Republika Albanija","common":"Albanija"},"hun":{"official":"Albán Köztársaság","common":"Albánia"},"ita":{"official":"Repubblica d'Albania","common":"Albania"},"jpn":{"official":"アルバニア共和国","common":"アルバニア"},"kor":{"official":"알바니아 공화국","common":"알바니아"},"nld":{"official":"Republiek Albanië","common":"Albanië"},"per":{"official":"جمهوری آلبانی","common":"آلبانی"},"pol":{"official":"Republika Albanii","common":"Albania"},"por":{"official":"República da Albânia","common":"Albânia"},"rus":{"official":"Республика Албания","common":"Албания"},"slk":{"official":"Albánska republika","common":"Albánsko"},"spa":{"official":"República de Albania","common":"Albania"},"srp":{"official":"Republika Albanija","common":"Albanija"},"swe":{"official":"Republiken Albanien","common":"Albanien"},"tur":{"official":"Arnavutluk Cumhuriyeti","common":"Arnavutluk"},"urd":{"official":"جمہوریہ البانیا","common":"البانیا"},"zho":{"official":"阿尔巴尼亚共和国","common":"阿尔巴尼亚"}},"latlng":[41,20],"landlocked":false,"borders":["MNE","GRC","MKD","UNK"],"area":28748,"flag":"🇦🇱","demonyms":{"eng":{"f":"Albanian","m":"Albanian"},"fra":{"f":"Albanaise","m":"Albanais"}}},{"name":{"common":"Andorra","official":"Principality of Andorra","native":{"cat":{"official":"Principat d'Andorra","common":"Andorra"}}},"tld":[".ad"],"cca2":"AD","ccn3":"020","cca3":"AND","cioc":"AND","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Western European and Others Group","currencies":{"EUR":{"name":"Euro","symbol":"€"}},"idd":{"root":"+3","suffixes":["76"]},"capital":["Andorra la Vella"],"altSpellings":["AD","Principality of Andorra","Principat d'Andorra"],"region":"Europe","subregion":"Southern Europe","languages":{"cat":"Catalan"},"translations":{"ara":{"official":"إمارة أندورا","common":"أندورا"},"ces":{"official":"Andorrské knížectví","common":"Andorra"},"deu":{"official":"Fürstentum Andorra","common":"Andorra"},"est":{"official":"Andorra Vürstiriik","common":"Andorra"},"fin":{"official":"Andorran ruhtinaskunta","common":"Andorra"},"fra":{"official":"Principauté d'Andorre","common":"Andorre"},"hrv":{"official":"Kneževina Andora","common":"Andora"},"hun":{"official":"Andorra","common":"Andorra"},"ita":{"official":"Principato di Andorra","common":"Andorra"},"jpn":{"official":"アンドラ公国","common":"アンドラ"},"kor":{"official":"안도라 공국","common":"안도라"},"nld":{"official":"Prinsdom Andorra","common":"Andorra"},"per":{"official":"شاهزاده‌نشین آندورا","common":"آندورا"},"pol":{"official":"Księstwo Andory","common":"Andora"},"por":{"official":"Principado de Andorra","common":"Andorra"},"rus":{"official":"Княжество Андорра","common":"Андорра"},"slk":{"official":"Andorrské kniežatstvo","common":"Andorra"},"spa":{"official":"Principado de Andorra","common":"Andorra"},"srp":{"official":"Kneževina Andora","common":"Andora"},"swe":{"official":"Furstendömet Andorra","common":"Andorra"},"tur":{"official":"Andorra Prensliği","common":"Andorra"},"urd":{"official":"اماراتِ انڈورا","common":"انڈورا"},"zho":{"official":"安道尔公国","common":"安道尔"}},"latlng":[42.5,1.5],"landlocked":true,"borders":["FRA","ESP"],"area":468,"flag":"🇦🇩","demonyms":{"eng":{"f":"Andorran","m":"Andorran"},"fra":{"f":"Andorrane","m":"Andorran"}}},{"name":{"common":"United Arab Emirates","official":"United Arab Emirates","native":{"ara":{"official":"الإمارات العربية المتحدة","common":"الإمارات"}}},"tld":[".ae","امارات."],"cca2":"AE","ccn3":"784","cca3":"ARE","cioc":"UAE","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"AED":{"name":"United Arab Emirates dirham","symbol":"د.إ"}},"idd":{"root":"+9","suffixes":["71"]},"capital":["Abu Dhabi"],"altSpellings":["AE","UAE","Emirates"],"region":"Asia","subregion":"Western Asia","languages":{"ara":"Arabic"},"translations":{"ara":{"official":"الإمارات العربية المتحدة","common":"الإمارات"},"ces":{"official":"Spojené arabské emiráty","common":"Spojené arabské emiráty"},"deu":{"official":"Vereinigte Arabische Emirate","common":"Vereinigte Arabische Emirate"},"est":{"official":"Araabia Ühendemiraadid","common":"Araabia Ühendemiraadid"},"fin":{"official":"Yhdistyneet arabiemiirikunnat","common":"Arabiemiraatit"},"fra":{"official":"Émirats arabes unis","common":"Émirats arabes unis"},"hrv":{"official":"Ujedinjeni Arapski Emirati","common":"Ujedinjeni Arapski Emirati"},"hun":{"official":"Egyesült Arab Emírségek","common":"Egyesült Arab Emírségek"},"ita":{"official":"Emirati Arabi Uniti","common":"Emirati Arabi Uniti"},"jpn":{"official":"アラブ首長国連邦","common":"UAE"},"kor":{"official":"아랍 토후국 연방","common":"아랍에미리트"},"nld":{"official":"Verenigde Arabische Emiraten","common":"Verenigde Arabische Emiraten"},"per":{"official":"امارات متحده عربی","common":"امارات"},"pol":{"official":"Zjednoczone Emiraty Arabskie","common":"Zjednoczone Emiraty Arabskie"},"por":{"official":"Emirados Árabes Unidos","common":"Emirados Árabes Unidos"},"rus":{"official":"Объединенные Арабские Эмираты","common":"Объединённые Арабские Эмираты"},"slk":{"official":"Spojené arabské emiráty","common":"Spojené arabské emiráty"},"spa":{"official":"Emiratos Árabes Unidos","common":"Emiratos Árabes Unidos"},"srp":{"official":"Ujedinjeni Arapski Emirati","common":"Ujedinjeni Arapski Emirati"},"swe":{"official":"Förenade Arabemiraten","common":"Förenade Arabemiraten"},"tur":{"official":"Birleşik Arap Emirlikleri","common":"Birleşik Arap Emirlikleri"},"urd":{"official":"متحدہ عرب امارات","common":"متحدہ عرب امارات"},"zho":{"official":"阿拉伯联合酋长国","common":"阿拉伯联合酋长国"}},"latlng":[24,54],"landlocked":false,"borders":["OMN","SAU"],"area":83600,"flag":"🇦🇪","demonyms":{"eng":{"f":"Emirati","m":"Emirati"},"fra":{"f":"Emirienne","m":"Emirien"}}},{"name":{"common":"Argentina","official":"Argentine Republic","native":{"grn":{"official":"Argentine Republic","common":"Argentina"},"spa":{"official":"República Argentina","common":"Argentina"}}},"tld":[".ar"],"cca2":"AR","ccn3":"032","cca3":"ARG","cioc":"ARG","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Latin American and Caribbean Group","currencies":{"ARS":{"name":"Argentine peso","symbol":"$"}},"idd":{"root":"+5","suffixes":["4"]},"capital":["Buenos Aires"],"altSpellings":["AR","Argentine Republic","República Argentina"],"region":"Americas","subregion":"South America","languages":{"grn":"Guaraní","spa":"Spanish"},"translations":{"ara":{"official":"جمهورية الأرجنتين","common":"الأرجنتين"},"ces":{"official":"Argentinská republika","common":"Argentina"},"deu":{"official":"Argentinische Republik","common":"Argentinien"},"est":{"official":"Argentina Vabariik","common":"Argentina"},"fin":{"official":"Argentiinan tasavalta","common":"Argentiina"},"fra":{"official":"République argentine","common":"Argentine"},"hrv":{"official":"Argentinski Republika","common":"Argentina"},"hun":{"official":"Argentin Köztársaság","common":"Argentína"},"ita":{"official":"Repubblica Argentina","common":"Argentina"},"jpn":{"official":"アルゼンチン共和国","common":"アルゼンチン"},"kor":{"official":"아르헨티나 공화국","common":"아르헨티나"},"nld":{"official":"Argentijnse Republiek","common":"Argentinië"},"per":{"official":"جمهوری آرژانتین","common":"آرژانتین"},"pol":{"official":"Republika Argentyńska","common":"Argentyna"},"por":{"official":"República Argentina","common":"Argentina"},"rus":{"official":"Аргентинская Республика","common":"Аргентина"},"slk":{"official":"Argentínska republika","common":"Argentína"},"spa":{"official":"República Argentina","common":"Argentina"},"srp":{"official":"Republika Argentina","common":"Argentina"},"swe":{"official":"Republiken Argentina","common":"Argentina"},"tur":{"official":"Arjantin Cumhuriyeti","common":"Arjantin"},"urd":{"official":"جمہوریہ ارجنٹائن","common":"ارجنٹائن"},"zho":{"official":"阿根廷共和国","common":"阿根廷"}},"latlng":[-34,-64],"landlocked":false,"borders":["BOL","BRA","CHL","PRY","URY"],"area":2780400,"flag":"🇦🇷","demonyms":{"eng":{"f":"Argentine","m":"Argentine"},"fra":{"f":"Argentine","m":"Argentin"}}},{"name":{"common":"Armenia","official":"Republic of Armenia","native":{"hye":{"official":"Հայաստանի Հանրապետություն","common":"Հայաստան"}}},"tld":[".am"],"cca2":"AM","ccn3":"051","cca3":"ARM","cioc":"ARM","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Eastern European Group","currencies":{"AMD":{"name":"Armenian dram","symbol":"֏"}},"idd":{"root":"+3","suffixes":["74"]},"capital":["Yerevan"],"altSpellings":["AM","Hayastan","Republic of Armenia","Հայաստանի Հանրապետություն"],"region":"Asia","subregion":"Western Asia","languages":{"hye":"Armenian"},"translations":{"ara":{"official":"جمهورية أرمينيا","common":"أرمينيا"},"ces":{"official":"Arménská republika","common":"Arménie"},"deu":{"official":"Republik Armenien","common":"Armenien"},"est":{"official":"Armeenia Vabariik","common":"Armeenia"},"fin":{"official":"Armenian tasavalta","common":"Armenia"},"fra":{"official":"République d'Arménie","common":"Arménie"},"hrv":{"official":"Republika Armenija","common":"Armenija"},"hun":{"official":"Örményország","common":"Örményország"},"ita":{"official":"Repubblica di Armenia","common":"Armenia"},"jpn":{"official":"アルメニア共和国","common":"アルメニア"},"kor":{"official":"아르메니아 공화국","common":"아르메니아"},"nld":{"official":"Republiek Armenië","common":"Armenië"},"per":{"official":"جمهوری ارمنستان","common":"ارمنستان"},"pol":{"official":"Republika Armenii","common":"Armenia"},"por":{"official":"República da Arménia","common":"Arménia"},"rus":{"official":"Республика Армения","common":"Армения"},"slk":{"official":"Arménska republika","common":"Arménsko"},"spa":{"official":"República de Armenia","common":"Armenia"},"srp":{"official":"Republika Jermenija","common":"Jermenija"},"swe":{"official":"Republiken Armenien","common":"Armenien"},"tur":{"official":"Ermenistan Cumhuriyeti","common":"Ermenistan"},"urd":{"official":"جمہوریہ آرمینیا","common":"آرمینیا"},"zho":{"official":"亚美尼亚共和国","common":"亚美尼亚"}},"latlng":[40,45],"landlocked":true,"borders":["AZE","GEO","IRN","TUR"],"area":29743,"flag":"🇦🇲","demonyms":{"eng":{"f":"Armenian","m":"Armenian"},"fra":{"f":"Arménienne","m":"Arménien"}}},{"name":{"common":"American Samoa","official":"American Samoa","native":{"eng":{"official":"American Samoa","common":"American Samoa"},"smo":{"official":"Sāmoa Amelika","common":"Sāmoa Amelika"}}},"tld":[".as"],"cca2":"AS","ccn3":"016","cca3":"ASM","cioc":"ASA","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"USD":{"name":"United States dollar","symbol":"$"}},"idd":{"root":"+1","suffixes":["684"]},"capital":["Pago Pago"],"altSpellings":["AS","Amerika Sāmoa","Amelika Sāmoa","Sāmoa Amelika"],"region":"Oceania","subregion":"Polynesia","languages":{"eng":"English","smo":"Samoan"},"translations":{"ara":{"official":"ساموا الأمريكية","common":"ساموا الأمريكية"},"ces":{"official":"Americká Samoa","common":"Americká Samoa"},"deu":{"official":"Amerikanisch-Samoa","common":"Amerikanisch-Samoa"},"est":{"official":"Ameerika Samoa","common":"Ameerika Samoa"},"fin":{"official":"Amerikan Samoa","common":"Amerikan Samoa"},"fra":{"official":"Samoa américaines","common":"Samoa américaines"},"hrv":{"official":"američka Samoa","common":"Američka Samoa"},"hun":{"official":"Szamoa","common":"Szamoa"},"ita":{"official":"Samoa americane","common":"Samoa Americane"},"jpn":{"official":"米領サモア","common":"アメリカ領サモア"},"kor":{"official":"아메리칸사모아","common":"아메리칸사모아"},"nld":{"official":"Amerikaans Samoa","common":"Amerikaans Samoa"},"per":{"official":"ساموآی آمریکا","common":"ساموآی آمریکا"},"pol":{"official":"Samoa Amerykańskie","common":"Samoa Amerykańskie"},"por":{"official":"Samoa americana","common":"Samoa Americana"},"rus":{"official":"американское Самоа","common":"Американское Самоа"},"slk":{"official":"Americká Samoa","common":"Americká Samoa"},"spa":{"official":"Samoa Americana","common":"Samoa Americana"},"srp":{"official":"Američka Samoa","common":"Američka Samoa"},"swe":{"official":"Amerikanska Samoa","common":"Amerikanska Samoa"},"tur":{"official":"Amerikan Samoası","common":"Amerikan Samoası"},"urd":{"official":"امریکی سمووا","common":"امریکی سمووا"},"zho":{"official":"美属萨摩亚","common":"美属萨摩亚"}},"latlng":[-14.33333333,-170],"landlocked":false,"borders":[],"area":199,"flag":"🇦🇸","demonyms":{"eng":{"f":"American Samoan","m":"American Samoan"},"fra":{"f":"Samoane","m":"Samoan"}}},{"name":{"common":"Antarctica","official":"Antarctica","native":{}},"tld":[".aq"],"cca2":"AQ","ccn3":"010","cca3":"ATA","cioc":"","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{},"idd":{"root":"","suffixes":[]},"capital":[],"altSpellings":["AQ"],"region":"Antarctic","subregion":"","languages":{},"translations":{"ara":{"official":"أنتارتيكا","common":"أنتارتيكا"},"ces":{"official":"Antarktida","common":"Antarktida"},"deu":{"official":"Antarktika","common":"Antarktis"},"est":{"official":"Antarktika","common":"Antarktika"},"fin":{"official":"Etelämanner","common":"Etelämanner"},"fra":{"official":"Antarctique","common":"Antarctique"},"hrv":{"official":"Antarktika","common":"Antarktika"},"hun":{"official":"Antarktisz","common":"Antarktisz"},"ita":{"official":"Antartide","common":"Antartide"},"jpn":{"official":"南極","common":"南極大陸"},"kor":{"official":"남극","common":"남극"},"nld":{"official":"Antarctica","common":"Antarctica"},"per":{"official":"جنوبگان","common":"جنوبگان"},"pol":{"official":"Antarktyka","common":"Antarktyka"},"por":{"official":"Antártica","common":"Antártida"},"rus":{"official":"Антарктида","common":"Антарктида"},"slk":{"official":"Antarktída","common":"Antarktída"},"spa":{"official":"Antártida","common":"Antártida"},"srp":{"official":"Antarktik","common":"Antarktik"},"swe":{"official":"Antarktis","common":"Antarktis"},"tur":{"official":"Antarktika","common":"Antarktika"},"urd":{"official":"انٹارکٹکا","common":"انٹارکٹکا"},"zho":{"official":"南极洲","common":"南极洲"}},"latlng":[-90,0],"landlocked":false,"borders":[],"area":14000000,"flag":"🇦🇶","demonyms":{"eng":{"f":"Antarctican","m":"Antarctican"},"fra":{"f":"Antarcticaine","m":"Antarcticain"}}},{"name":{"common":"French Southern and Antarctic Lands","official":"Territory of the French Southern and Antarctic Lands","native":{"fra":{"official":"Territoire des Terres australes et antarctiques françaises","common":"Terres australes et antarctiques françaises"}}},"tld":[".tf"],"cca2":"TF","ccn3":"260","cca3":"ATF","cioc":"","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"EUR":{"name":"Euro","symbol":"€"}},"idd":{"root":"+2","suffixes":["62"]},"capital":["Port-aux-Français"],"altSpellings":["TF","French Southern Territories"],"region":"Antarctic","subregion":"","languages":{"fra":"French"},"translations":{"ara":{"official":"مقاطعات وأقاليم ما وراء البحار الفرنسية","common":"أراض فرنسية جنوبية وأنتارتيكية"},"ces":{"official":"Teritorium Francouzská jižní a antarktická území","common":"Francouzská jižní a antarktická území"},"deu":{"official":"Gebiet der Französisch Süd- und Antarktisgebiete","common":"Französische Süd- und Antarktisgebiete"},"est":{"official":"Prantsuse Lõunaalad","common":"Prantsuse Lõunaalad"},"fin":{"official":"Ranskan eteläiset ja antarktiset alueet","common":"Ranskan eteläiset ja antarktiset alueet"},"fra":{"official":"Territoire des Terres australes et antarctiques françaises","common":"Terres australes et antarctiques françaises"},"hrv":{"official":"Teritoriju Francuski južni i antarktički teritoriji","common":"Francuski južni i antarktički teritoriji"},"hun":{"official":"Francia déli és antarktiszi területek","common":"Francia déli és antarktiszi területek"},"ita":{"official":"Territorio della australi e antartiche francesi Terre","common":"Territori Francesi del Sud"},"jpn":{"official":"フランス領極南諸島","common":"フランス領南方・南極地域"},"kor":{"official":"프랑스령 남부와 남극 지역","common":"프랑스령 남부와 남극 지역"},"nld":{"official":"Grondgebied van de Franse Zuidelijke en Antarctische gebieden","common":"Franse Gebieden in de zuidelijke Indische Oceaan"},"per":{"official":"سرزمین‌های جنوبی و جنوبگانی فرانسه","common":"سرزمین‌های جنوبی و جنوبگانی فرانسه"},"pol":{"official":"Francuskie Terytoria Południowe i Antarktyczne","common":"Francuskie Terytoria Południowe i Antarktyczne"},"por":{"official":"Território do Sul e Antártica Francesa","common":"Terras Austrais e Antárticas Francesas"},"rus":{"official":"Территория Французские Южные и Антарктические земли","common":"Французские Южные и Антарктические территории"},"slk":{"official":"Francúzske južné a antarktické územia","common":"Francúzske juŽné a antarktické územia"},"spa":{"official":"Territorio del Francés Tierras australes y antárticas","common":"Tierras Australes y Antárticas Francesas"},"srp":{"official":"Francuske južne i antarktičke zemlje","common":"Francuske južne i antarktičke zemlje"},"swe":{"official":"Franska syd- och Antarktisterritorierna","common":"Franska södra territorierna"},"tur":{"official":"Fransız Güney ve Antarktika Toprakları","common":"Fransız Güney ve Antarktika Toprakları"},"urd":{"official":"سرزمینِ جنوبی فرانسیسیہ و انٹارکٹیکہ","common":"سرزمین جنوبی فرانسیسیہ و انٹارکٹیکا"},"zho":{"official":"法国南部和南极土地","common":"法国南部和南极土地"}},"latlng":[-49.25,69.167],"landlocked":false,"borders":[],"area":7747,"flag":"🇹🇫","demonyms":{"eng":{"f":"French","m":"French"},"fra":{"f":"Française","m":"Français"}}},{"name":{"common":"Antigua and Barbuda","official":"Antigua and Barbuda","native":{"eng":{"official":"Antigua and Barbuda","common":"Antigua and Barbuda"}}},"tld":[".ag"],"cca2":"AG","ccn3":"028","cca3":"ATG","cioc":"ANT","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Latin American and Caribbean Group","currencies":{"XCD":{"name":"Eastern Caribbean dollar","symbol":"$"}},"idd":{"root":"+1","suffixes":["268"]},"capital":["Saint John's"],"altSpellings":["AG"],"region":"Americas","subregion":"Caribbean","languages":{"eng":"English"},"translations":{"ara":{"official":"أنتيغوا وباربودا","common":"أنتيغوا وباربودا"},"ces":{"official":"Antigua a Barbuda","common":"Antigua a Barbuda"},"deu":{"official":"Antigua und Barbuda","common":"Antigua und Barbuda"},"est":{"official":"Antigua ja Barbuda","common":"Antigua ja Barbuda"},"fin":{"official":"Antigua ja Barbuda","common":"Antigua ja Barbuda"},"fra":{"official":"Antigua -et-Barbuda","common":"Antigua-et-Barbuda"},"hrv":{"official":"Antigva i Barbuda","common":"Antigva i Barbuda"},"hun":{"official":"Antigua és Barbuda","common":"Antigua és Barbuda"},"ita":{"official":"Antigua e Barbuda","common":"Antigua e Barbuda"},"jpn":{"official":"アンティグア・バーブーダ","common":"アンティグア・バーブーダ"},"kor":{"official":"앤티가 바부다","common":"앤티가 바부다"},"nld":{"official":"Antigua en Barbuda","common":"Antigua en Barbuda"},"per":{"official":"آنتیگوا و باربودا","common":"آنتیگوا و باربودا"},"pol":{"official":"Antigua i Barbuda","common":"Antigua i Barbuda"},"por":{"official":"Antigua e Barbuda","common":"Antígua e Barbuda"},"rus":{"official":"Антигуа и Барбуда","common":"Антигуа и Барбуда"},"slk":{"official":"Antigua a Barbuda","common":"Antigua a Barbuda"},"spa":{"official":"Antigua y Barbuda","common":"Antigua y Barbuda"},"srp":{"official":"Antigva i Barbuda","common":"Antigva i Barbuda"},"swe":{"official":"Antigua och Barbuda","common":"Antigua och Barbuda"},"tur":{"official":"Antigua ve Barbuda","common":"Antigua ve Barbuda"},"urd":{"official":"اینٹیگوا و باربوڈا","common":"اینٹیگوا و باربوڈا"},"zho":{"official":"安提瓜和巴布达","common":"安提瓜和巴布达"}},"latlng":[17.05,-61.8],"landlocked":false,"borders":[],"area":442,"flag":"🇦🇬","demonyms":{"eng":{"f":"Antiguan, Barbudan","m":"Antiguan, Barbudan"},"fra":{"f":"Antiguaise et barbudienne","m":"Antiguaise et barbudien"}}},{"name":{"common":"Australia","official":"Commonwealth of Australia","native":{"eng":{"official":"Commonwealth of Australia","common":"Australia"}}},"tld":[".au"],"cca2":"AU","ccn3":"036","cca3":"AUS","cioc":"AUS","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Western European and Others Group","currencies":{"AUD":{"name":"Australian dollar","symbol":"$"}},"idd":{"root":"+6","suffixes":["1"]},"capital":["Canberra"],"altSpellings":["AU"],"region":"Oceania","subregion":"Australia and New Zealand","languages":{"eng":"English"},"translations":{"ara":{"official":"كومونولث أستراليا","common":"أستراليا"},"ces":{"official":"Australské společenství","common":"Austrálie"},"deu":{"official":"Commonwealth Australien","common":"Australien"},"est":{"official":"Austraalia Ühendus","common":"Austraalia"},"fin":{"official":"Australian liittovaltio","common":"Australia"},"fra":{"official":"Australie","common":"Australie"},"hrv":{"official":"Commonwealth of Australia","common":"Australija"},"hun":{"official":"Ausztrál Államszövetség","common":"Ausztrália"},"ita":{"official":"Commonwealth dell'Australia","common":"Australia"},"jpn":{"official":"オーストラリア連邦","common":"オーストラリア"},"kor":{"official":"오스트레일리아 연방","common":"호주"},"nld":{"official":"Gemenebest van Australië","common":"Australië"},"per":{"official":"قلمرو همسود استرالیا","common":"استرالیا"},"pol":{"official":"Związek Australijski","common":"Australia"},"por":{"official":"Comunidade da Austrália","common":"Austrália"},"rus":{"official":"Содружество Австралии","common":"Австралия"},"slk":{"official":"Austrálsky zväz","common":"Austrália"},"spa":{"official":"Mancomunidad de Australia","common":"Australia"},"srp":{"official":"Komonvelt Australija","common":"Australija"},"swe":{"official":"Australiska statsförbundet","common":"Australien"},"tur":{"official":"Avustralya Federal Devleti","common":"Avustralya"},"urd":{"official":"دولتِ مشترکہ آسٹریلیا","common":"آسٹریلیا"},"zho":{"official":"澳大利亚联邦","common":"澳大利亚"}},"latlng":[-27,133],"landlocked":false,"borders":[],"area":7692024,"flag":"🇦🇺","demonyms":{"eng":{"f":"Australian","m":"Australian"},"fra":{"f":"Australienne","m":"Australien"}}},{"name":{"common":"Austria","official":"Republic of Austria","native":{"bar":{"official":"Republik Österreich","common":"Österreich"}}},"tld":[".at"],"cca2":"AT","ccn3":"040","cca3":"AUT","cioc":"AUT","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Western European and Others Group","currencies":{"EUR":{"name":"Euro","symbol":"€"}},"idd":{"root":"+4","suffixes":["3"]},"capital":["Vienna"],"altSpellings":["AT","Osterreich","Oesterreich"],"region":"Europe","subregion":"Central Europe","languages":{"bar":"Austro-Bavarian German"},"translations":{"ara":{"official":"جمهورية النمسا","common":"النمسا"},"ces":{"official":"Rakouská republika","common":"Rakousko"},"deu":{"official":"Republik Österreich","common":"Österreich"},"est":{"official":"Austria Vabariik","common":"Austria"},"fin":{"official":"Itävallan tasavalta","common":"Itävalta"},"fra":{"official":"République d'Autriche","common":"Autriche"},"hrv":{"official":"Republika Austrija","common":"Austrija"},"hun":{"official":"Ausztria","common":"Ausztria"},"ita":{"official":"Repubblica d'Austria","common":"Austria"},"jpn":{"official":"オーストリア共和国","common":"オーストリア"},"kor":{"official":"오스트리아 공화국","common":"오스트리아"},"nld":{"official":"Republiek Oostenrijk","common":"Oostenrijk"},"per":{"official":"جمهوری اتریش","common":"اتریش"},"pol":{"official":"Republika Austrii","common":"Austria"},"por":{"official":"República da Áustria","common":"Áustria"},"rus":{"official":"Австрийская Республика","common":"Австрия"},"slk":{"official":"Rakúska republika","common":"Rakúsko"},"spa":{"official":"República de Austria","common":"Austria"},"srp":{"official":"Republika Austrija","common":"Austrija"},"swe":{"official":"Republiken Österrike","common":"Österrike"},"tur":{"official":"Avusturya Cumhuriyeti","common":"Avusturya"},"urd":{"official":"جمہوریہ آسٹریا","common":"آسٹریا"},"zho":{"official":"奥地利共和国","common":"奥地利"}},"latlng":[47.33333333,13.33333333],"landlocked":true,"borders":["CZE","DEU","HUN","ITA","LIE","SVK","SVN","CHE"],"area":83871,"flag":"🇦🇹","demonyms":{"eng":{"f":"Austrian","m":"Austrian"},"fra":{"f":"Autrichienne","m":"Autrichien"}}},{"name":{"common":"Azerbaijan","official":"Republic of Azerbaijan","native":{"aze":{"official":"Azərbaycan Respublikası","common":"Azərbaycan"},"rus":{"official":"Азербайджанская Республика","common":"Азербайджан"}}},"tld":[".az"],"cca2":"AZ","ccn3":"031","cca3":"AZE","cioc":"AZE","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Eastern European Group","currencies":{"AZN":{"name":"Azerbaijani manat","symbol":"₼"}},"idd":{"root":"+9","suffixes":["94"]},"capital":["Baku"],"altSpellings":["AZ","Republic of Azerbaijan","Azərbaycan Respublikası"],"region":"Asia","subregion":"Western Asia","languages":{"aze":"Azerbaijani","rus":"Russian"},"translations":{"ara":{"official":"جمهورية أذربيجان","common":"أذربيجان"},"ces":{"official":"Ázerbájdžánská republika","common":"Ázerbájdžán"},"deu":{"official":"Republik Aserbaidschan","common":"Aserbaidschan"},"est":{"official":"Aserbaidžaani Vabariik","common":"Aserbaidžaan"},"fin":{"official":"Azerbaidzanin tasavalta","common":"Azerbaidzan"},"fra":{"official":"République d'Azerbaïdjan","common":"Azerbaïdjan"},"hrv":{"official":"Republika Azerbajdžan","common":"Azerbajdžan"},"hun":{"official":"Azerbajdzsán","common":"Azerbajdzsán"},"ita":{"official":"Repubblica dell'Azerbaigian","common":"Azerbaijan"},"jpn":{"official":"アゼルバイジャン共和国","common":"アゼルバイジャン"},"kor":{"official":"아제르바이잔 공화국","common":"아제르바이잔"},"nld":{"official":"Republiek Azerbeidzjan","common":"Azerbeidzjan"},"per":{"official":"جمهوری آذربایجان","common":"جمهوری آذربایجان"},"pol":{"official":"Republika Azerbejdżanu","common":"Azerbejdżan"},"por":{"official":"República do Azerbaijão","common":"Azerbeijão"},"rus":{"official":"Азербайджанская Республика","common":"Азербайджан"},"slk":{"official":"Azerbajdžanská republika","common":"AzerbajLJan"},"spa":{"official":"República de Azerbaiyán","common":"Azerbaiyán"},"srp":{"official":"Republika Azerbejdžan","common":"Azerbejdžan"},"swe":{"official":"Republiken Azerbajdzjan","common":"Azerbajdzjan"},"tur":{"official":"Azerbaycan Cumhuriyeti","common":"Azerbaycan"},"urd":{"official":"جمہوریہ آذربائیجان","common":"آذربائیجان"},"zho":{"official":"阿塞拜疆共和国","common":"阿塞拜疆"}},"latlng":[40.5,47.5],"landlocked":true,"borders":["ARM","GEO","IRN","RUS","TUR"],"area":86600,"flag":"🇦🇿","demonyms":{"eng":{"f":"Azerbaijani","m":"Azerbaijani"},"fra":{"f":"Azerbaïdjanaise","m":"Azerbaïdjanais"}}},{"name":{"common":"Burundi","official":"Republic of Burundi","native":{"fra":{"official":"République du Burundi","common":"Burundi"},"run":{"official":"Republika y'Uburundi ","common":"Uburundi"}}},"tld":[".bi"],"cca2":"BI","ccn3":"108","cca3":"BDI","cioc":"BDI","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"BIF":{"name":"Burundian franc","symbol":"Fr"}},"idd":{"root":"+2","suffixes":["57"]},"capital":["Gitega"],"altSpellings":["BI","Republic of Burundi","Republika y'Uburundi","République du Burundi"],"region":"Africa","subregion":"Eastern Africa","languages":{"fra":"French","run":"Kirundi"},"translations":{"ara":{"official":"جمهورية بوروندي","common":"بوروندي"},"ces":{"official":"Burundská republika","common":"Burundi"},"deu":{"official":"Republik Burundi","common":"Burundi"},"est":{"official":"Burundi Vabariik","common":"Burundi"},"fin":{"official":"Burundin tasavalta","common":"Burundi"},"fra":{"official":"République du Burundi","common":"Burundi"},"hrv":{"official":"Burundi","common":"Burundi"},"hun":{"official":"Burundi","common":"Burundi"},"ita":{"official":"Repubblica del Burundi","common":"Burundi"},"jpn":{"official":"ブルンジ共和国","common":"ブルンジ"},"kor":{"official":"부룬디","common":"부룬디"},"nld":{"official":"Republiek Burundi","common":"Burundi"},"per":{"official":"جمهوری بوروندی","common":"بوروندی"},"pol":{"official":"Republika Burundi","common":"Burundi"},"por":{"official":"República do Burundi","common":"Burundi"},"rus":{"official":"Республика Бурунди","common":"Бурунди"},"slk":{"official":"Burundská republika","common":"Burundi"},"spa":{"official":"República de Burundi","common":"Burundi"},"srp":{"official":"Republika Burundi","common":"Burundi"},"swe":{"official":"Republiken Burundi","common":"Burundi"},"tur":{"official":"Burundi Cumhuriyeti","common":"Burundi"},"urd":{"official":"جمہوریہ برونڈی","common":"برونڈی"},"zho":{"official":"布隆迪共和国","common":"布隆迪"}},"latlng":[-3.5,30],"landlocked":true,"borders":["COD","RWA","TZA"],"area":27834,"flag":"🇧🇮","demonyms":{"eng":{"f":"Burundian","m":"Burundian"},"fra":{"f":"Burundaise","m":"Burundais"}}},{"name":{"common":"Belgium","official":"Kingdom of Belgium","native":{"deu":{"official":"Königreich Belgien","common":"Belgien"},"fra":{"official":"Royaume de Belgique","common":"Belgique"},"nld":{"official":"Koninkrijk België","common":"België"}}},"tld":[".be"],"cca2":"BE","ccn3":"056","cca3":"BEL","cioc":"BEL","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Western European and Others Group","currencies":{"EUR":{"name":"Euro","symbol":"€"}},"idd":{"root":"+3","suffixes":["2"]},"capital":["Brussels"],"altSpellings":["BE","België","Belgie","Belgien","Belgique","Kingdom of Belgium","Koninkrijk België","Royaume de Belgique","Königreich Belgien"],"region":"Europe","subregion":"Western Europe","languages":{"deu":"German","fra":"French","nld":"Dutch"},"translations":{"ara":{"official":"مملكة بلجيكا","common":"بلجيكا"},"ces":{"official":"Belgické království","common":"Belgie"},"deu":{"official":"Königreich Belgien","common":"Belgien"},"est":{"official":"Belgia Kuningriik","common":"Belgia"},"fin":{"official":"Belgian kuningaskunta","common":"Belgia"},"fra":{"official":"Royaume de Belgique","common":"Belgique"},"hrv":{"official":"Kraljevina Belgija","common":"Belgija"},"hun":{"official":"Belga Királyság","common":"Belgium"},"ita":{"official":"Regno del Belgio","common":"Belgio"},"jpn":{"official":"ベルギー王国","common":"ベルギー"},"kor":{"official":"벨기에 왕국","common":"벨기에"},"nld":{"official":"Koninkrijk België","common":"België"},"per":{"official":"پادشاهی بلژیک","common":"بلژیک"},"pol":{"official":"Królestwo Belgii","common":"Belgia"},"por":{"official":"Reino da Bélgica","common":"Bélgica"},"rus":{"official":"Королевство Бельгия","common":"Бельгия"},"slk":{"official":"Belgické kráľovstvo","common":"Belgicko"},"spa":{"official":"Reino de Bélgica","common":"Bélgica"},"srp":{"official":"Kraljevina Belgija","common":"Belgija"},"swe":{"official":"Konungariket Belgien","common":"Belgien"},"tur":{"official":"Belçika Krallığı","common":"Belçika"},"urd":{"official":"مملکتِ بلجئیم","common":"بلجئیم"},"zho":{"official":"比利时王国","common":"比利时"}},"latlng":[50.83333333,4],"landlocked":false,"borders":["FRA","DEU","LUX","NLD"],"area":30528,"flag":"🇧🇪","demonyms":{"eng":{"f":"Belgian","m":"Belgian"},"fra":{"f":"Belge","m":"Belge"}}},{"name":{"common":"Benin","official":"Republic of Benin","native":{"fra":{"official":"République du Bénin","common":"Bénin"}}},"tld":[".bj"],"cca2":"BJ","ccn3":"204","cca3":"BEN","cioc":"BEN","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"XOF":{"name":"West African CFA franc","symbol":"Fr"}},"idd":{"root":"+2","suffixes":["29"]},"capital":["Porto-Novo"],"altSpellings":["BJ","Republic of Benin","République du Bénin"],"region":"Africa","subregion":"Western Africa","languages":{"fra":"French"},"translations":{"ara":{"official":"جمهورية بنين","common":"بنين"},"ces":{"official":"Beninská republika","common":"Benin"},"deu":{"official":"Republik Benin","common":"Benin"},"est":{"official":"Benini Vabariik","common":"Benin"},"fin":{"official":"Beninin tasavalta","common":"Benin"},"fra":{"official":"République du Bénin","common":"Bénin"},"hrv":{"official":"Republika Benin","common":"Benin"},"hun":{"official":"Benini Köztársaság","common":"Benin"},"ita":{"official":"Repubblica del Benin","common":"Benin"},"jpn":{"official":"ベナン共和国","common":"ベナン"},"kor":{"official":"베냉 공화국","common":"베냉"},"nld":{"official":"Republiek Benin","common":"Benin"},"per":{"official":"جمهوری بنین","common":"بنین"},"pol":{"official":"Benin","common":"Benin"},"por":{"official":"República do Benin","common":"Benin"},"rus":{"official":"Республика Бенин","common":"Бенин"},"slk":{"official":"Beninská republika","common":"Benin"},"spa":{"official":"República de Benin","common":"Benín"},"srp":{"official":"Republika Benin","common":"Benin"},"swe":{"official":"Republiken Benin","common":"Benin"},"tur":{"official":"Benin Cumhuriyeti","common":"Benin"},"urd":{"official":"جمہوریہ بینن","common":"بینن"},"zho":{"official":"贝宁共和国","common":"贝宁"}},"latlng":[9.5,2.25],"landlocked":false,"borders":["BFA","NER","NGA","TGO"],"area":112622,"flag":"🇧🇯","demonyms":{"eng":{"f":"Beninese","m":"Beninese"},"fra":{"f":"Béninoise","m":"Béninois"}}},{"name":{"common":"Burkina Faso","official":"Burkina Faso","native":{"fra":{"official":"République du Burkina","common":"Burkina Faso"}}},"tld":[".bf"],"cca2":"BF","ccn3":"854","cca3":"BFA","cioc":"BUR","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"XOF":{"name":"West African CFA franc","symbol":"Fr"}},"idd":{"root":"+2","suffixes":["26"]},"capital":["Ouagadougou"],"altSpellings":["BF"],"region":"Africa","subregion":"Western Africa","languages":{"fra":"French"},"translations":{"ara":{"official":"بوركينا فاسو","common":"بوركينا فاسو"},"ces":{"official":"Burkina Faso","common":"Burkina Faso"},"deu":{"official":"Burkina Faso","common":"Burkina Faso"},"est":{"official":"Burkina Faso","common":"Burkina Faso"},"fin":{"official":"Burkina Faso","common":"Burkina Faso"},"fra":{"official":"République du Burkina","common":"Burkina Faso"},"hrv":{"official":"Burkina Faso","common":"Burkina Faso"},"hun":{"official":"Burkina Faso","common":"Burkina"},"ita":{"official":"Burkina Faso","common":"Burkina Faso"},"jpn":{"official":"ブルキナファソ","common":"ブルキナファソ"},"kor":{"official":"부르키나파소","common":"부르키나파소"},"nld":{"official":"Burkina Faso","common":"Burkina Faso"},"per":{"official":"بورکینافاسو","common":"بورکینافاسو"},"pol":{"official":"Burkina Faso","common":"Burkina Faso"},"por":{"official":"Burkina Faso","common":"Burkina Faso"},"rus":{"official":"Буркина -Фасо","common":"Буркина-Фасо"},"slk":{"official":"Burkina Faso","common":"Burkina Faso"},"spa":{"official":"Burkina Faso","common":"Burkina Faso"},"srp":{"official":"Burkina Faso","common":"Burkina Faso"},"swe":{"official":"Burkina Faso","common":"Burkina Faso"},"tur":{"official":"Burkina Faso","common":"Burkina Faso"},"urd":{"official":"برکینا فاسو","common":"برکینا فاسو"},"zho":{"official":"布基纳法索","common":"布基纳法索"}},"latlng":[13,-2],"landlocked":true,"borders":["BEN","CIV","GHA","MLI","NER","TGO"],"area":272967,"flag":"🇧🇫","demonyms":{"eng":{"f":"Burkinabe","m":"Burkinabe"},"fra":{"f":"Burkinabée","m":"Burkinabé"}}},{"name":{"common":"Bangladesh","official":"People's Republic of Bangladesh","native":{"ben":{"official":"বাংলাদেশ গণপ্রজাতন্ত্রী","common":"বাংলাদেশ"}}},"tld":[".bd"],"cca2":"BD","ccn3":"050","cca3":"BGD","cioc":"BAN","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"BDT":{"name":"Bangladeshi taka","symbol":"৳"}},"idd":{"root":"+8","suffixes":["80"]},"capital":["Dhaka"],"altSpellings":["BD","People's Republic of Bangladesh","Gônôprôjatôntri Bangladesh"],"region":"Asia","subregion":"Southern Asia","languages":{"ben":"Bengali"},"translations":{"ara":{"official":"جمهورية بنغلاديش الشعبية","common":"بنغلاديش"},"ces":{"official":"Bangladéšská lidová republika","common":"Bangladéš"},"deu":{"official":"Volksrepublik Bangladesch","common":"Bangladesch"},"est":{"official":"Bangladeshi Rahvavabariik","common":"Bangladesh"},"fin":{"official":"Bangladeshin kansantasavalta","common":"Bangladesh"},"fra":{"official":"La République populaire du Bangladesh","common":"Bangladesh"},"hrv":{"official":"Narodna Republika Bangladeš","common":"Bangladeš"},"hun":{"official":"Banglades","common":"Banglades"},"ita":{"official":"Repubblica popolare del Bangladesh","common":"Bangladesh"},"jpn":{"official":"バングラデシュ人民共和国","common":"バングラデシュ"},"kor":{"official":"방글라데시 인민 공화국","common":"방글라데시"},"nld":{"official":"Volksrepubliek Bangladesh","common":"Bangladesh"},"per":{"official":"جمهوری خلق بنگلادش","common":"بنگلادش"},"pol":{"official":"Ludowa Republika Bangladeszu","common":"Bangladesz"},"por":{"official":"República Popular do Bangladesh","common":"Bangladesh"},"rus":{"official":"Народная Республика Бангладеш","common":"Бангладеш"},"slk":{"official":"Bangladéšska ľudová republika","common":"Bangladéš"},"spa":{"official":"República Popular de Bangladesh","common":"Bangladesh"},"srp":{"official":"Narodna Republika Bangladeš","common":"Bangladeš"},"swe":{"official":"Folkrepubliken Bangladesh","common":"Bangladesh"},"tur":{"official":"Bangladeş Halk Cumhuriyeti","common":"Bangladeş"},"urd":{"official":"عوامی جمہوریہ بنگلہ دیش","common":"بنگلہ دیش"},"zho":{"official":"孟加拉人民共和国","common":"孟加拉国"}},"latlng":[24,90],"landlocked":false,"borders":["MMR","IND"],"area":147570,"flag":"🇧🇩","demonyms":{"eng":{"f":"Bangladeshi","m":"Bangladeshi"},"fra":{"f":"Bangladaise","m":"Bangladais"}}},{"name":{"common":"Bulgaria","official":"Republic of Bulgaria","native":{"bul":{"official":"Република България","common":"България"}}},"tld":[".bg"],"cca2":"BG","ccn3":"100","cca3":"BGR","cioc":"BUL","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Eastern European Group","currencies":{"BGN":{"name":"Bulgarian lev","symbol":"лв"}},"idd":{"root":"+3","suffixes":["59"]},"capital":["Sofia"],"altSpellings":["BG","Republic of Bulgaria","Република България"],"region":"Europe","subregion":"Southeast Europe","languages":{"bul":"Bulgarian"},"translations":{"ara":{"official":"جمهورية بلغاريا","common":"بلغاريا"},"ces":{"official":"Bulharská republika","common":"Bulharsko"},"deu":{"official":"Republik Bulgarien","common":"Bulgarien"},"est":{"official":"Bulgaaria Vabariik","common":"Bulgaaria"},"fin":{"official":"Bulgarian tasavalta","common":"Bulgaria"},"fra":{"official":"République de Bulgarie","common":"Bulgarie"},"hrv":{"official":"Republika Bugarska","common":"Bugarska"},"hun":{"official":"Bolgár Köztársaság","common":"Bulgária"},"ita":{"official":"Repubblica di Bulgaria","common":"Bulgaria"},"jpn":{"official":"ブルガリア共和国","common":"ブルガリア"},"kor":{"official":"불가리아 공화국","common":"불가리아"},"nld":{"official":"Republiek Bulgarije","common":"Bulgarije"},"per":{"official":"جمهوری بلغارستان","common":"بلغارستان"},"pol":{"official":"Republika Bułgarii","common":"Bułgaria"},"por":{"official":"República da Bulgária","common":"Bulgária"},"rus":{"official":"Республика Болгария","common":"Болгария"},"slk":{"official":"Bulharská republika","common":"Bulharsko"},"spa":{"official":"República de Bulgaria","common":"Bulgaria"},"srp":{"official":"Republika Bugarska","common":"Bugarska"},"swe":{"official":"Republiken Bulgarien","common":"Bulgarien"},"tur":{"official":"Bulgaristan Cumhuriyeti","common":"Bulgaristan"},"urd":{"official":"جمہوریہ بلغاریہ","common":"بلغاریہ"},"zho":{"official":"保加利亚共和国","common":"保加利亚"}},"latlng":[43,25],"landlocked":false,"borders":["GRC","MKD","ROU","SRB","TUR"],"area":110879,"flag":"🇧🇬","demonyms":{"eng":{"f":"Bulgarian","m":"Bulgarian"},"fra":{"f":"Bulgare","m":"Bulgare"}}},{"name":{"common":"Bahrain","official":"Kingdom of Bahrain","native":{"ara":{"official":"مملكة البحرين","common":"البحرين"}}},"tld":[".bh"],"cca2":"BH","ccn3":"048","cca3":"BHR","cioc":"BRN","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"BHD":{"name":"Bahraini dinar","symbol":".د.ب"}},"idd":{"root":"+9","suffixes":["73"]},"capital":["Manama"],"altSpellings":["BH","Kingdom of Bahrain","Mamlakat al-Baḥrayn"],"region":"Asia","subregion":"Western Asia","languages":{"ara":"Arabic"},"translations":{"ara":{"official":"مملكة البحرين","common":"البحرين"},"ces":{"official":"Království Bahrajn","common":"Bahrajn"},"deu":{"official":"Königreich Bahrain","common":"Bahrain"},"est":{"official":"Bahreini Kuningriik","common":"Bahrein"},"fin":{"official":"Bahrainin kuningaskunta","common":"Bahrain"},"fra":{"official":"Royaume de Bahreïn","common":"Bahreïn"},"hrv":{"official":"Kraljevina Bahrein","common":"Bahrein"},"hun":{"official":"Bahreini Királyság","common":"Bahrein"},"ita":{"official":"Regno del Bahrain","common":"Bahrein"},"jpn":{"official":"バーレーン王国","common":"バーレーン"},"kor":{"official":"바레인 왕국","common":"바레인"},"nld":{"official":"Koninkrijk Bahrein","common":"Bahrein"},"per":{"official":"پادشاهی بحرین","common":"بحرین"},"pol":{"official":"Królestwo Bahrajnu","common":"Bahrajn"},"por":{"official":"Reino do Bahrein","common":"Bahrein"},"rus":{"official":"Королевство Бахрейн","common":"Бахрейн"},"slk":{"official":"Bahrajnské kráľovstvo","common":"Bahrajn"},"spa":{"official":"Reino de Bahrein","common":"Bahrein"},"srp":{"official":"Kraljevina Bahrein","common":"Bahrein"},"swe":{"official":"Konungariket Bahrain","common":"Bahrain"},"tur":{"official":"Bahreyn Krallığı","common":"Bahreyn"},"urd":{"official":"مملکتِ بحرین","common":"بحرین"},"zho":{"official":"巴林王国","common":"巴林"}},"latlng":[26,50.55],"landlocked":false,"borders":[],"area":765,"flag":"🇧🇭","demonyms":{"eng":{"f":"Bahraini","m":"Bahraini"},"fra":{"f":"Bahreïnienne","m":"Bahreïnien"}}},{"name":{"common":"Bahamas","official":"Commonwealth of the Bahamas","native":{"eng":{"official":"Commonwealth of the Bahamas","common":"Bahamas"}}},"tld":[".bs"],"cca2":"BS","ccn3":"044","cca3":"BHS","cioc":"BAH","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Latin American and Caribbean Group","currencies":{"BSD":{"name":"Bahamian dollar","symbol":"$"},"USD":{"name":"United States dollar","symbol":"$"}},"idd":{"root":"+1","suffixes":["242"]},"capital":["Nassau"],"altSpellings":["BS","Commonwealth of the Bahamas"],"region":"Americas","subregion":"Caribbean","languages":{"eng":"English"},"translations":{"ara":{"official":"كومنولث جزر البهاما","common":"البهاما"},"ces":{"official":"Bahamské společenství","common":"Bahamy"},"deu":{"official":"Commonwealth der Bahamas","common":"Bahamas"},"est":{"official":"Bahama Ühendus","common":"Bahama"},"fin":{"official":"Bahaman liittovaltio","common":"Bahamasaaret"},"fra":{"official":"Commonwealth des Bahamas","common":"Bahamas"},"hrv":{"official":"Zajednica Bahama","common":"Bahami"},"hun":{"official":"Bahamai Közösség","common":"Bahama-szigetek"},"ita":{"official":"Commonwealth delle Bahamas","common":"Bahamas"},"jpn":{"official":"バハマ国","common":"バハマ"},"kor":{"official":"바하마 연방","common":"바하마"},"nld":{"official":"Gemenebest van de Bahama's","common":"Bahama’s"},"per":{"official":"قلمرو همسود باهاما","common":"باهاما"},"pol":{"official":"Bahamy","common":"Bahamy"},"por":{"official":"Comunidade das Bahamas","common":"Bahamas"},"rus":{"official":"Содружество Багамских Островов","common":"Багамские Острова"},"slk":{"official":"Bahamské spoločenstvo","common":"Bahamy"},"spa":{"official":"Commonwealth de las Bahamas","common":"Bahamas"},"srp":{"official":"Komonvelt Bahama","common":"Bahami"},"swe":{"official":"Samväldet Bahamas","common":"Bahamas"},"tur":{"official":"Bahama Milletler Topluluğu","common":"Bahamalar"},"urd":{"official":"دولتِ مشترکہ بہاماس","common":"بہاماس"},"zho":{"official":"巴哈马联邦","common":"巴哈马"}},"latlng":[24.25,-76],"landlocked":false,"borders":[],"area":13943,"flag":"🇧🇸","demonyms":{"eng":{"f":"Bahamian","m":"Bahamian"},"fra":{"f":"Bahamienne","m":"Bahamien"}}},{"name":{"common":"Bosnia and Herzegovina","official":"Bosnia and Herzegovina","native":{"bos":{"official":"Bosna i Hercegovina","common":"Bosna i Hercegovina"},"hrv":{"official":"Bosna i Hercegovina","common":"Bosna i Hercegovina"},"srp":{"official":"Боснa и Херцеговина","common":"Боснa и Херцеговина"}}},"tld":[".ba"],"cca2":"BA","ccn3":"070","cca3":"BIH","cioc":"BIH","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Eastern European Group","currencies":{"BAM":{"name":"Bosnia and Herzegovina convertible mark","symbol":"KM"}},"idd":{"root":"+3","suffixes":["87"]},"capital":["Sarajevo"],"altSpellings":["BA","Bosnia-Herzegovina","Босна и Херцеговина"],"region":"Europe","subregion":"Southeast Europe","languages":{"bos":"Bosnian","hrv":"Croatian","srp":"Serbian"},"translations":{"ara":{"official":"البوسنة والهرسك","common":"البوسنة والهرسك"},"ces":{"official":"Bosna a Hercegovina","common":"Bosna a Hercegovina"},"deu":{"official":"Bosnien und Herzegowina","common":"Bosnien und Herzegowina"},"est":{"official":"Bosnia ja Hertsegoviina","common":"Bosnia ja Hertsegoviina"},"fin":{"official":"Bosnia ja Hertsegovina","common":"Bosnia ja Hertsegovina"},"fra":{"official":"Bosnie-et-Herzégovine","common":"Bosnie-Herzégovine"},"hrv":{"official":"Bosna i Hercegovina","common":"Bosna i Hercegovina"},"hun":{"official":"Bosznia-Hercegovina","common":"Bosznia-Hercegovina"},"ita":{"official":"Bosnia-Erzegovina","common":"Bosnia ed Erzegovina"},"jpn":{"official":"ボスニア・ヘルツェゴビナ","common":"ボスニア・ヘルツェゴビナ"},"kor":{"official":"보스니아 헤르체고비나","common":"보스니아 헤르체고비나"},"nld":{"official":"Bosnië-Herzegovina","common":"Bosnië en Herzegovina"},"per":{"official":"بوسنی و هرزگوین","common":"بوسنی و هرزگوین"},"pol":{"official":"Bośnia i Hercegowina","common":"Bośnia i Hercegowina"},"por":{"official":"Bósnia e Herzegovina","common":"Bósnia e Herzegovina"},"rus":{"official":"Босния и Герцеговина","common":"Босния и Герцеговина"},"slk":{"official":"Republika Bosny a Hercegoviny","common":"Bosna a Hercegovina"},"spa":{"official":"Bosnia y Herzegovina","common":"Bosnia y Herzegovina"},"srp":{"official":"Bosna i Hercegovina","common":"Bosna i Hercegovina"},"swe":{"official":"Bosnien och Hercegovina","common":"Bosnien och Hercegovina"},"tur":{"official":"Bosna ve Hersek","common":"Bosna-Hersek"},"urd":{"official":"بوسنیا و ہرزیگووینا","common":"بوسنیا و ہرزیگووینا"},"zho":{"official":"波斯尼亚和黑塞哥维那","common":"波斯尼亚和黑塞哥维那"}},"latlng":[44,18],"landlocked":false,"borders":["HRV","MNE","SRB"],"area":51209,"flag":"🇧🇦","demonyms":{"eng":{"f":"Bosnian, Herzegovinian","m":"Bosnian, Herzegovinian"},"fra":{"f":"Bosnienne","m":"Bosnien"}}},{"name":{"common":"Saint Barthélemy","official":"Collectivity of Saint Barthélemy","native":{"fra":{"official":"Collectivité de Saint-Barthélemy","common":"Saint-Barthélemy"}}},"tld":[".bl"],"cca2":"BL","ccn3":"652","cca3":"BLM","cioc":"","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"EUR":{"name":"Euro","symbol":"€"}},"idd":{"root":"+5","suffixes":["90"]},"capital":["Gustavia"],"altSpellings":["BL","St. Barthelemy","Collectivity of Saint Barthélemy","Collectivité de Saint-Barthélemy"],"region":"Americas","subregion":"Caribbean","languages":{"fra":"French"},"translations":{"ara":{"official":"التجمع الإقليمي لسانت بارتيليمي","common":"سان بارتليمي"},"ces":{"official":"Svatý Bartoloměj","common":"Svatý Bartoloměj"},"deu":{"official":"Gebietskörperschaft Saint-Barthélemy","common":"Saint-Barthélemy"},"est":{"official":"Saint-Barthélemy territoriaalühendus","common":"Saint-Barthélemy"},"fin":{"official":"Saint-Barthélemyn yhteisö","common":"Saint-Barthélemy"},"fra":{"official":"Collectivité de Saint-Barthélemy","common":"Saint-Barthélemy"},"hrv":{"official":"Kolektivnost sv Barthélemy","common":"Saint Barthélemy"},"hun":{"official":"Saint-Barthélemy","common":"Saint-Barthélemy"},"ita":{"official":"Collettività di Saint Barthélemy","common":"Antille Francesi"},"jpn":{"official":"サンバルテルミー","common":"サン・バルテルミー島"},"kor":{"official":"생바르텔레미","common":"생바르텔레미"},"nld":{"official":"Gemeenschap Saint Barthélemy","common":"Saint Barthélemy"},"per":{"official":"سن بارتلمی","common":"سن بارتلمی"},"pol":{"official":"Saint-Barthélemy","common":"Saint-Barthélemy"},"por":{"official":"Coletividade de Saint Barthélemy","common":"São Bartolomeu"},"rus":{"official":"Коллективность Санкт -Бартельми","common":"Сен-Бартелеми"},"slk":{"official":"Svätý Bartolomej","common":"Svätý Bartolomej"},"spa":{"official":"Colectividad de San Barthélemy","common":"San Bartolomé"},"srp":{"official":"Sveti Bartolomej","common":"kolektivitet Sveti Bartolomej"},"swe":{"official":"Saint-Barthélemy","common":"Saint-Barthélemy"},"tur":{"official":"Saint Barthélemy","common":"Saint Barthélemy"},"urd":{"official":"سینٹ بارتھیملے","common":"سینٹ بارتھیملے"},"zho":{"official":"圣巴泰勒米集体","common":"圣巴泰勒米"}},"latlng":[18.5,-63.41666666],"landlocked":false,"borders":[],"area":21,"flag":"🇧🇱","demonyms":{"eng":{"f":"Saint Barthélemy Islander","m":"Saint Barthélemy Islander"},"fra":{"f":"Barthéloméenne","m":"Barthéloméen"}}},{"name":{"common":"Saint Helena, Ascension and Tristan da Cunha","official":"Saint Helena, Ascension and Tristan da Cunha","native":{"eng":{"official":"Saint Helena, Ascension and Tristan da Cunha","common":"Saint Helena, Ascension and Tristan da Cunha"}}},"tld":[".sh",".ac"],"cca2":"SH","ccn3":"654","cca3":"SHN","cioc":"","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"GBP":{"name":"Pound sterling","symbol":"£"},"SHP":{"name":"Saint Helena pound","symbol":"£"}},"idd":{"root":"+2","suffixes":["90","47"]},"capital":["Jamestown"],"altSpellings":["Saint Helena","St. Helena, Ascension and Tristan da Cunha"],"region":"Africa","subregion":"Western Africa","languages":{"eng":"English"},"translations":{"ara":{"official":"سانت هيلينا وأسينشين وتريستان دا كونا","common":"سانت هيلينا وأسينشين وتريستان دا كونا"},"ces":{"official":"Svatá Helena, Ascension a Tristan da Cunha","common":"Svatá Helena, Ascension a Tristan da Cunha"},"deu":{"official":"Sankt Helena, Ascension und Tristan da Cunha","common":"St. Helena, Ascension und Tristan da Cunha"},"est":{"official":"Saint Helena, Ascension ja Tristan da Cunha","common":"Saint Helena, Ascension ja Tristan da Cunha"},"fin":{"official":"Saint Helena, Ascension ja Tristan da Cunha","common":"Saint Helena, Ascension ja Tristan da Cunha"},"fra":{"official":"Sainte-Hélène, Ascension et Tristan da Cunha","common":"Sainte-Hélène, Ascension et Tristan da Cunha"},"hrv":{"official":"Sveta Helena","common":"Sveta Helena"},"hun":{"official":"Szent Ilona","common":"Szent Ilona-sziget"},"ita":{"official":"Sant'Elena, Ascensione e Tristan da Cunha","common":"Sant'Elena, Ascensione e Tristan da Cunha"},"jpn":{"official":"セントヘレナ・アセンション・トリスタンダクーニャ","common":"セントヘレナ"},"kor":{"official":"세인트헬레나","common":"세인트헬레나"},"nld":{"official":"Sint-Helena, Ascension en Tristan da Cunha","common":"Sint-Helena, Ascension en Tristan da Cunha"},"per":{"official":"سنت هلن","common":"سنت هلن"},"pol":{"official":"Wyspa Świętej Heleny, Wyspa Wniebowstąpienia i Tristan da Cunha","common":"Wyspa Świętej Heleny, Wyspa Wniebowstąpienia i Tristan da Cunha"},"por":{"official":"Santa Helena, Ascensão e Tristão da Cunha","common":"Santa Helena, Ascensão e Tristão da Cunha"},"rus":{"official":"Острова Святой Елены, Вознесения и Тристан-да-Кунья","common":"Острова Святой Елены, Вознесения и Тристан-да-Кунья"},"slk":{"official":"Svätá Helena (zámorské územie)","common":"Svätá Helena (zámorské územie)"},"spa":{"official":"Santa Elena, Ascensión y Tristán de Acuña","common":"Santa Elena, Ascensión y Tristán de Acuña"},"srp":{"official":"Sveta Jelena","common":"Sveta Jelena"},"swe":{"official":"Sankta Helena","common":"Sankta Helena"},"tur":{"official":"Saint Helena","common":"Saint Helena"},"urd":{"official":"سینٹ ہلینا، اسینشن و ترسٹان دا کونیا","common":"سینٹ ہلینا، اسینشن و ترسٹان دا کونیا"},"zho":{"official":"圣赫勒拿、阿森松和特里斯坦-达库尼亚","common":"圣赫勒拿、阿森松和特里斯坦-达库尼亚"}},"latlng":[-15.95,-5.72],"landlocked":false,"borders":[],"area":394,"flag":"🇸🇭","demonyms":{"eng":{"f":"Saint Helenian","m":"Saint Helenian"},"fra":{"f":"Sainte-Hélénoise","m":"Sainte-Hélènois"}}},{"name":{"common":"Belarus","official":"Republic of Belarus","native":{"bel":{"official":"Рэспубліка Беларусь","common":"Белару́сь"},"rus":{"official":"Республика Беларусь","common":"Беларусь"}}},"tld":[".by"],"cca2":"BY","ccn3":"112","cca3":"BLR","cioc":"BLR","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Eastern European Group","currencies":{"BYN":{"name":"Belarusian ruble","symbol":"Br"}},"idd":{"root":"+3","suffixes":["75"]},"capital":["Minsk"],"altSpellings":["BY","Bielaruś","Republic of Belarus","Белоруссия","Республика Белоруссия"],"region":"Europe","subregion":"Eastern Europe","languages":{"bel":"Belarusian","rus":"Russian"},"translations":{"ara":{"official":"جمهورية بيلاروسيا","common":"بيلاروسيا"},"ces":{"official":"Běloruská republika","common":"Bělorusko"},"deu":{"official":"Republik Belarus","common":"Belarus"},"est":{"official":"Valgevene Vabariik","common":"Valgevene"},"fin":{"official":"Valko-Venäjän tasavalta","common":"Valko-Venäjä"},"fra":{"official":"République de Biélorussie","common":"Biélorussie"},"hrv":{"official":"Republika Bjelorusija","common":"Bjelorusija"},"hun":{"official":"Fehérorosz Köztársaság","common":"Fehéroroszország"},"ita":{"official":"Repubblica di Belarus","common":"Bielorussia"},"jpn":{"official":"ベラルーシ共和国","common":"ベラルーシ"},"kor":{"official":"벨라루스 공화국","common":"벨라루스"},"nld":{"official":"Republiek Belarus","common":"Wit-Rusland"},"per":{"official":"جمهوری بلاروس","common":"بلاروس"},"pol":{"official":"Republika Białorusi","common":"Białoruś"},"por":{"official":"República da Bielorrússia","common":"Bielorússia"},"rus":{"official":"Республика Беларусь","common":"Беларусь"},"slk":{"official":"Bieloruská republika","common":"Bielorusko"},"spa":{"official":"República de Belarús","common":"Bielorrusia"},"srp":{"official":"Republika Belorusija","common":"Belorusija"},"swe":{"official":"Republiken Vitryssland","common":"Belarus"},"tur":{"official":"Belarus Cumhuriyeti","common":"Belarus"},"urd":{"official":"جمہوریہ بیلاروس","common":"بیلاروس"},"zho":{"official":"白俄罗斯共和国","common":"白俄罗斯"}},"latlng":[53,28],"landlocked":true,"borders":["LVA","LTU","POL","RUS","UKR"],"area":207600,"flag":"🇧🇾","demonyms":{"eng":{"f":"Belarusian","m":"Belarusian"},"fra":{"f":"Biélorusse","m":"Biélorusse"}}},{"name":{"common":"Belize","official":"Belize","native":{"bjz":{"official":"Belize","common":"Belize"},"eng":{"official":"Belize","common":"Belize"},"spa":{"official":"Belice","common":"Belice"}}},"tld":[".bz"],"cca2":"BZ","ccn3":"084","cca3":"BLZ","cioc":"BIZ","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Latin American and Caribbean Group","currencies":{"BZD":{"name":"Belize dollar","symbol":"$"}},"idd":{"root":"+5","suffixes":["01"]},"capital":["Belmopan"],"altSpellings":["BZ"],"region":"Americas","subregion":"Central America","languages":{"bjz":"Belizean Creole","eng":"English","spa":"Spanish"},"translations":{"ara":{"official":"بليز","common":"بليز"},"ces":{"official":"Belize","common":"Belize"},"deu":{"official":"Belize","common":"Belize"},"est":{"official":"Belize","common":"Belize"},"fin":{"official":"Belize","common":"Belize"},"fra":{"official":"Belize","common":"Belize"},"hrv":{"official":"Belize","common":"Belize"},"hun":{"official":"Belize","common":"Belize"},"ita":{"official":"Belize","common":"Belize"},"jpn":{"official":"ベリーズ","common":"ベリーズ"},"kor":{"official":"벨리즈","common":"벨리즈"},"nld":{"official":"Belize","common":"Belize"},"per":{"official":"بلیز","common":"بلیز"},"pol":{"official":"Belize","common":"Belize"},"por":{"official":"Belize","common":"Belize"},"rus":{"official":"Белиз","common":"Белиз"},"slk":{"official":"Belize","common":"Belize"},"spa":{"official":"Belice","common":"Belice"},"srp":{"official":"Belize","common":"Belize"},"swe":{"official":"Belize","common":"Belize"},"tur":{"official":"Belize","common":"Belize"},"urd":{"official":"بیلیز","common":"بیلیز"},"zho":{"official":"伯利兹","common":"伯利兹"}},"latlng":[17.25,-88.75],"landlocked":false,"borders":["GTM","MEX"],"area":22966,"flag":"🇧🇿","demonyms":{"eng":{"f":"Belizean","m":"Belizean"},"fra":{"f":"Bélizienne","m":"Bélizien"}}},{"name":{"common":"Bermuda","official":"Bermuda","native":{"eng":{"official":"Bermuda","common":"Bermuda"}}},"tld":[".bm"],"cca2":"BM","ccn3":"060","cca3":"BMU","cioc":"BER","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"BMD":{"name":"Bermudian dollar","symbol":"$"}},"idd":{"root":"+1","suffixes":["441"]},"capital":["Hamilton"],"altSpellings":["BM","The Islands of Bermuda","The Bermudas","Somers Isles"],"region":"Americas","subregion":"North America","languages":{"eng":"English"},"translations":{"ara":{"official":"برمودا","common":"برمودا"},"ces":{"official":"Bermudské ostrovy","common":"Bermudy"},"deu":{"official":"Bermuda","common":"Bermuda"},"est":{"official":"Bermuda","common":"Bermuda"},"fin":{"official":"Bermuda","common":"Bermuda"},"fra":{"official":"Bermudes","common":"Bermudes"},"hrv":{"official":"Bermuda","common":"Bermudi"},"hun":{"official":"Bermuda","common":"Bermuda"},"ita":{"official":"Bermuda","common":"Bermuda"},"jpn":{"official":"バミューダ諸島","common":"バミューダ"},"kor":{"official":"버뮤다","common":"버뮤다"},"nld":{"official":"Bermuda","common":"Bermuda"},"per":{"official":"جزایر برمودا","common":"برمودا"},"pol":{"official":"Bermudy","common":"Bermudy"},"por":{"official":"Bermudas","common":"Bermudas"},"rus":{"official":"Бермудские острова","common":"Бермудские Острова"},"slk":{"official":"Bermudy","common":"Bermudy"},"spa":{"official":"Bermuda","common":"Bermudas"},"srp":{"official":"Bermuda","common":"Bermudi"},"swe":{"official":"Bermuda","common":"Bermuda"},"tur":{"official":"Bermuda","common":"Bermuda"},"urd":{"official":"برمودا","common":"برمودا"},"zho":{"official":"百慕大","common":"百慕大"}},"latlng":[32.33333333,-64.75],"landlocked":false,"borders":[],"area":54,"flag":"🇧🇲","demonyms":{"eng":{"f":"Bermudian","m":"Bermudian"},"fra":{"f":"Bermudienne","m":"Bermudien"}}},{"name":{"common":"Bolivia","official":"Plurinational State of Bolivia","native":{"aym":{"official":"Wuliwya Suyu","common":"Wuliwya"},"grn":{"official":"Tetã Volívia","common":"Volívia"},"que":{"official":"Buliwya Mamallaqta","common":"Buliwya"},"spa":{"official":"Estado Plurinacional de Bolivia","common":"Bolivia"}}},"tld":[".bo"],"cca2":"BO","ccn3":"068","cca3":"BOL","cioc":"BOL","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Latin American and Caribbean Group","currencies":{"BOB":{"name":"Bolivian boliviano","symbol":"Bs."}},"idd":{"root":"+5","suffixes":["91"]},"capital":["Sucre"],"altSpellings":["BO","Buliwya","Wuliwya","Bolivia, Plurinational State of","Plurinational State of Bolivia","Estado Plurinacional de Bolivia","Buliwya Mamallaqta","Wuliwya Suyu","Tetã Volívia"],"region":"Americas","subregion":"South America","languages":{"aym":"Aymara","grn":"Guaraní","que":"Quechua","spa":"Spanish"},"translations":{"ara":{"official":"دولة بوليفيا المتعددة القوميات","common":"بوليفيا"},"ces":{"official":"Mnohonárodnostní stát Bolívie","common":"Bolívie"},"deu":{"official":"Plurinationaler Staat Bolivien","common":"Bolivien"},"est":{"official":"Boliivia Paljurahvuseline Riik","common":"Boliivia"},"fin":{"official":"Bolivian monikansainen valtio","common":"Bolivia"},"fra":{"official":"État plurinational de Bolivie","common":"Bolivie"},"hrv":{"official":"Plurinational State of Bolivia","common":"Bolivija"},"hun":{"official":"Bolíviai Többnemzetiségű Állam","common":"Bolívia"},"ita":{"official":"Stato Plurinazionale della Bolivia","common":"Bolivia"},"jpn":{"official":"ボリビア多民族国","common":"ボリビア"},"kor":{"official":"볼리비아 다민족국","common":"볼리비아"},"nld":{"official":"Plurinationale Staat van Bolivia","common":"Bolivia"},"per":{"official":"جمهوری بولیوی","common":"بولیوی"},"pol":{"official":"Wielonarodowe Państwo Boliwia","common":"Boliwia"},"por":{"official":"Estado Plurinacional da Bolívia","common":"Bolívia"},"rus":{"official":"Многонациональное Государство Боливия","common":"Боливия"},"slk":{"official":"Bolívijská republika","common":"Bolívia"},"spa":{"official":"Estado Plurinacional de Bolivia","common":"Bolivia"},"srp":{"official":"Višenacionalna Država Bolivija","common":"Bolivija"},"swe":{"official":"Mångnationella staten Bolivia","common":"Bolivia"},"tur":{"official":"Bolivya çokuluslu Devleti","common":"Bolivya"},"urd":{"official":"جمہوریہ بولیویا","common":"بولیویا"},"zho":{"official":"多民族玻利维亚国","common":"玻利维亚"}},"latlng":[-17,-65],"landlocked":true,"borders":["ARG","BRA","CHL","PRY","PER"],"area":1098581,"flag":"🇧🇴","demonyms":{"eng":{"f":"Bolivian","m":"Bolivian"},"fra":{"f":"Bolivienne","m":"Bolivien"}}},{"name":{"common":"Caribbean Netherlands","official":"Bonaire, Sint Eustatius and Saba","native":{"nld":{"official":"Bonaire, Sint Eustatius en Saba","common":"Caribisch Nederland"},"pap":{"official":"Boneiru, Sint Eustatius y Saba","common":"Boneiru, Sint Eustatius y Saba"}}},"tld":[".bq",".nl"],"cca2":"BQ","ccn3":"535","cca3":"BES","cioc":"","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"USD":{"name":"United States dollar","symbol":"$"}},"idd":{"root":"+5","suffixes":["99"]},"capital":["Kralendijk","Oranjestad","The Bottom"],"altSpellings":["BES islands","Bonaire Sint Eustatius and Saba"],"region":"Americas","subregion":"Caribbean","languages":{"eng":"English","nld":"Dutch","pap":"Papiamento"},"translations":{"ara":{"official":"بونير وسينت أوستاتيوس وسابا","common":"الجزر الكاريبية الهولندية"},"ces":{"official":"Karibské Nizozemsko","common":"Karibské Nizozemsko"},"deu":{"official":"Bonaire, Sint Eustatius und Saba","common":"Karibische Niederlande"},"est":{"official":"Bonaire, Sint Eustatius ja Saba","common":"Bonaire, Sint Eustatius ja Saba"},"fin":{"official":"Bonaire, Sint Eustatius ja Saba","common":"Bonaire, Sint Eustatius ja Saba"},"fra":{"official":"Bonaire, Saint-Eustache et Saba","common":"Pays-Bas caribéens"},"hrv":{"official":"Bonaire, Sint Eustatius i Saba","common":"Bonaire, Sint Eustatius i Saba"},"hun":{"official":"Bonaire","common":"Bonaire"},"ita":{"official":"Bonaire, Sint Eustatius e Saba","common":"Paesi Bassi caraibici"},"jpn":{"official":"オランダカリブ領域","common":"BES諸島"},"kor":{"official":"보네르, 신트외스타티위스, 사바","common":"카리브 네덜란드"},"nld":{"official":"Bonaire, Sint Eustatius en Saba","common":"Caribisch Nederland"},"per":{"official":"جزایر کارائیب هلند","common":"جزایر کارائیب هلند"},"pol":{"official":"Bonaire, Sint Eustatius i Saba","common":"Antyle Holenderskie"},"por":{"official":"Bonaire, Saba e Santo Eustáquio","common":"Países Baixos Caribenhos"},"rus":{"official":"Бонэйр, Синт-Эстатиус и Саба","common":"Карибские Нидерланды"},"slk":{"official":"Bonaire, Sint Eustatius a Saba","common":"Bonaire, Sint Eustatius a Saba"},"spa":{"official":"Bonaire, San Eustaquio y Saba","common":"Caribe Neerlandés"},"srp":{"official":"Karipska Holandija","common":"Karipska Holandija"},"swe":{"official":"Bonaire, Sint Eustatius and Saba","common":"Karibiska Nederländerna"},"tur":{"official":"Karayip Hollandası","common":"Karayip Hollandası"},"urd":{"official":"بونایر، سینٹ ایوسٹائیس اور سابا","common":"کیریبین نیدرلینڈز"},"zho":{"official":"荷蘭加勒比區","common":"荷蘭加勒比區"}},"latlng":[12.18,-68.25],"landlocked":false,"borders":[],"area":328,"flag":"","demonyms":{"eng":{"f":"Dutch","m":"Dutch"},"fra":{"f":"Néerlandaise","m":"Néerlandais"}}},{"name":{"common":"Brazil","official":"Federative Republic of Brazil","native":{"por":{"official":"República Federativa do Brasil","common":"Brasil"}}},"tld":[".br"],"cca2":"BR","ccn3":"076","cca3":"BRA","cioc":"BRA","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Latin American and Caribbean Group","currencies":{"BRL":{"name":"Brazilian real","symbol":"R$"}},"idd":{"root":"+5","suffixes":["5"]},"capital":["Brasília"],"altSpellings":["BR","Brasil","Federative Republic of Brazil","República Federativa do Brasil"],"region":"Americas","subregion":"South America","languages":{"por":"Portuguese"},"translations":{"ara":{"official":"جمهورية البرازيل الاتحادية","common":"البرازيل"},"ces":{"official":"Brazilská federativní republika","common":"Brazílie"},"deu":{"official":"Föderative Republik Brasilien","common":"Brasilien"},"est":{"official":"Brasiilia Liitvabariik","common":"Brasiilia"},"fin":{"official":"Brasilian liittotasavalta","common":"Brasilia"},"fra":{"official":"République fédérative du Brésil","common":"Brésil"},"hrv":{"official":"Savezne Republike Brazil","common":"Brazil"},"hun":{"official":"Brazil Szövetségi Köztársaság","common":"Brazília"},"ita":{"official":"Repubblica federativa del Brasile","common":"Brasile"},"jpn":{"official":"ブラジル連邦共和国","common":"ブラジル"},"kor":{"official":"브라질 연방 공화국","common":"브라질"},"nld":{"official":"Federale Republiek Brazilië","common":"Brazilië"},"per":{"official":"جمهوری فدراتیو برزیل","common":"برزیل"},"pol":{"official":"Federacyjna Republika Brazylii","common":"Brazylia"},"por":{"official":"República Federativa do Brasil","common":"Brasil"},"rus":{"official":"Федеративная Республика Бразилия","common":"Бразилия"},"slk":{"official":"Brazílska federatívna republika","common":"Brazília"},"spa":{"official":"República Federativa del Brasil","common":"Brasil"},"srp":{"official":"Federativna Republika Brazil","common":"Brazil"},"swe":{"official":"Förbundsrepubliken Brasilien","common":"Brasilien"},"tur":{"official":"Brezilya Federal Cumhuriyeti","common":"Brezilya"},"urd":{"official":"وفاقی جمہوریہ برازیل","common":"برازیل"},"zho":{"official":"巴西联邦共和国","common":"巴西"}},"latlng":[-10,-55],"landlocked":false,"borders":["ARG","BOL","COL","GUF","GUY","PRY","PER","SUR","URY","VEN"],"area":8515767,"flag":"🇧🇷","demonyms":{"eng":{"f":"Brazilian","m":"Brazilian"},"fra":{"f":"Brésilienne","m":"Brésilien"}}},{"name":{"common":"Barbados","official":"Barbados","native":{"eng":{"official":"Barbados","common":"Barbados"}}},"tld":[".bb"],"cca2":"BB","ccn3":"052","cca3":"BRB","cioc":"BAR","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Latin American and Caribbean Group","currencies":{"BBD":{"name":"Barbadian dollar","symbol":"$"}},"idd":{"root":"+1","suffixes":["246"]},"capital":["Bridgetown"],"altSpellings":["BB"],"region":"Americas","subregion":"Caribbean","languages":{"eng":"English"},"translations":{"ara":{"official":"باربادوس","common":"باربادوس"},"ces":{"official":"Barbados","common":"Barbados"},"deu":{"official":"Barbados","common":"Barbados"},"est":{"official":"Barbados","common":"Barbados"},"fin":{"official":"Barbados","common":"Barbados"},"fra":{"official":"Barbade","common":"Barbade"},"hrv":{"official":"Barbados","common":"Barbados"},"hun":{"official":"Barbados","common":"Barbados"},"ita":{"official":"Barbados","common":"Barbados"},"jpn":{"official":"バルバドス","common":"バルバドス"},"kor":{"official":"바베이도스","common":"바베이도스"},"nld":{"official":"Barbados","common":"Barbados"},"per":{"official":"باربادوس","common":"باربادوس"},"pol":{"official":"Barbados","common":"Barbados"},"por":{"official":"Barbados","common":"Barbados"},"rus":{"official":"Барбадос","common":"Барбадос"},"slk":{"official":"Barbados","common":"Barbados"},"spa":{"official":"Barbados","common":"Barbados"},"srp":{"official":"Barbados","common":"Barbados"},"swe":{"official":"Barbados","common":"Barbados"},"tur":{"official":"Barbados","common":"Barbados"},"urd":{"official":"بارباڈوس","common":"بارباڈوس"},"zho":{"official":"巴巴多斯","common":"巴巴多斯"}},"latlng":[13.16666666,-59.53333333],"landlocked":false,"borders":[],"area":430,"flag":"🇧🇧","demonyms":{"eng":{"f":"Barbadian","m":"Barbadian"},"fra":{"f":"Barbadienne","m":"Barbadien"}}},{"name":{"common":"Brunei","official":"Nation of Brunei, Abode of Peace","native":{"msa":{"official":"Nation of Brunei, Abode Damai","common":"Negara Brunei Darussalam"}}},"tld":[".bn"],"cca2":"BN","ccn3":"096","cca3":"BRN","cioc":"BRU","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"BND":{"name":"Brunei dollar","symbol":"$"},"SGD":{"name":"Singapore dollar","symbol":"$"}},"idd":{"root":"+6","suffixes":["73"]},"capital":["Bandar Seri Begawan"],"altSpellings":["BN","Brunei Darussalam","Nation of Brunei","the Abode of Peace"],"region":"Asia","subregion":"South-Eastern Asia","languages":{"msa":"Malay"},"translations":{"ara":{"official":"بروناي دار السلام","common":"بروناي"},"ces":{"official":"Sultanát Brunej","common":"Brunej"},"deu":{"official":"Sultanat Brunei Darussalam","common":"Brunei"},"est":{"official":"Brunei Darussalami Riik","common":"Brunei"},"fin":{"official":"Brunei Darussalamin valtio","common":"Brunei"},"fra":{"official":"État de Brunei Darussalam","common":"Brunei"},"hrv":{"official":"Nacija od Bruneja, Kuću Mira","common":"Brunej"},"hun":{"official":"Brunei Szultanátus","common":"Brunei"},"ita":{"official":"Nazione di Brunei, Dimora della Pace","common":"Brunei"},"jpn":{"official":"ブルネイ・ダルサラーム国","common":"ブルネイ"},"kor":{"official":"브루나이 다루살람국","common":"브루나이"},"nld":{"official":"Natie van Brunei, de verblijfplaats van de Vrede","common":"Brunei"},"per":{"official":"برونئی سرای صلح","common":"برونئی"},"pol":{"official":"Państwo Brunei Darussalam","common":"Brunei"},"por":{"official":"Nação do Brunei, Morada da Paz","common":"Brunei"},"rus":{"official":"Нация Бруней, обитель мира","common":"Бруней"},"slk":{"official":"Brunejský sultanât","common":"Brunej"},"spa":{"official":"Nación de Brunei, Morada de la Paz","common":"Brunei"},"srp":{"official":"Brunej Darusalam","common":"Brunej"},"swe":{"official":"Brunei Darussalam","common":"Brunei"},"tur":{"official":"Brunei Barış ülkesi Devleti (Darü's-Selam)","common":"Brunei"},"urd":{"official":"ریاستِ برونائی دارالسلام","common":"برونائی"},"zho":{"official":"文莱和平之国","common":"文莱"}},"latlng":[4.5,114.66666666],"landlocked":false,"borders":["MYS"],"area":5765,"flag":"🇧🇳","demonyms":{"eng":{"f":"Bruneian","m":"Bruneian"},"fra":{"f":"Brunéienne","m":"Brunéien"}}},{"name":{"common":"Bhutan","official":"Kingdom of Bhutan","native":{"dzo":{"official":"འབྲུག་རྒྱལ་ཁབ་","common":"འབྲུག་ཡུལ་"}}},"tld":[".bt"],"cca2":"BT","ccn3":"064","cca3":"BTN","cioc":"BHU","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"BTN":{"name":"Bhutanese ngultrum","symbol":"Nu."},"INR":{"name":"Indian rupee","symbol":"₹"}},"idd":{"root":"+9","suffixes":["75"]},"capital":["Thimphu"],"altSpellings":["BT","Kingdom of Bhutan"],"region":"Asia","subregion":"Southern Asia","languages":{"dzo":"Dzongkha"},"translations":{"ara":{"official":"مملكة بوتان","common":"بوتان"},"ces":{"official":"Bhútánské království","common":"Bhútán"},"deu":{"official":"Königreich Bhutan","common":"Bhutan"},"est":{"official":"Bhutani Kuningriik","common":"Bhutan"},"fin":{"official":"Bhutanin kuningaskunta","common":"Bhutan"},"fra":{"official":"Royaume du Bhoutan","common":"Bhoutan"},"hrv":{"official":"Kraljevina Butan","common":"Butan"},"hun":{"official":"Bhutáni Királyság","common":"Bhután"},"ita":{"official":"Regno del Bhutan","common":"Bhutan"},"jpn":{"official":"ブータン王国","common":"ブータン"},"kor":{"official":"부탄 왕국","common":"부탄"},"nld":{"official":"Koninkrijk Bhutan","common":"Bhutan"},"per":{"official":"پادشاهی بوتان","common":"بوتان"},"pol":{"official":"Bhutan","common":"Bhutan"},"por":{"official":"Reino do Butão","common":"Butão"},"rus":{"official":"Королевство Бутан","common":"Бутан"},"slk":{"official":"Bhutánske krâľovstvo","common":"Bhután"},"spa":{"official":"Reino de Bután","common":"Bután"},"srp":{"official":"Kraljevina Butan","common":"Butan"},"swe":{"official":"Konungariket Bhutan","common":"Bhutan"},"tur":{"official":"Butan Krallığı","common":"Butan"},"urd":{"official":"سلطنت بھوٹان","common":"بھوٹان"},"zho":{"official":"不丹王国","common":"不丹"}},"latlng":[27.5,90.5],"landlocked":true,"borders":["CHN","IND"],"area":38394,"flag":"🇧🇹","demonyms":{"eng":{"f":"Bhutanese","m":"Bhutanese"},"fra":{"f":"Bhoutanaise","m":"Bhoutanais"}}},{"name":{"common":"Bouvet Island","official":"Bouvet Island","native":{"nor":{"official":"Bouvetøya","common":"Bouvetøya"}}},"tld":[".bv"],"cca2":"BV","ccn3":"074","cca3":"BVT","cioc":"","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{},"idd":{"root":"+4","suffixes":["7"]},"capital":[],"altSpellings":["BV","Bouvetøya","Bouvet-øya"],"region":"Antarctic","subregion":"","languages":{"nor":"Norwegian"},"translations":{"ara":{"official":"جزر بوفيه","common":"جزر بوفيه"},"ces":{"official":"Bouvetův ostrov","common":"Bouvetův ostrov"},"deu":{"official":"Bouvetinsel","common":"Bouvetinsel"},"est":{"official":"Bouvet’ saar","common":"Bouvet’ saar"},"fin":{"official":"Bouvet'nsaari","common":"Bouvet'nsaari"},"fra":{"official":"Île Bouvet","common":"Île Bouvet"},"hrv":{"official":"Bouvet Island","common":"Otok Bouvet"},"hun":{"official":"Bouvet-sziget","common":"Bouvet-sziget"},"ita":{"official":"Isola Bouvet","common":"Isola Bouvet"},"jpn":{"official":"ブーベ島","common":"ブーベ島"},"kor":{"official":"부베 섬","common":"부베 섬"},"nld":{"official":"Bouvet Island","common":"Bouveteiland"},"per":{"official":"جزیرهٔ بووه","common":"جزیرهٔ بووه"},"pol":{"official":"Wyspa Bouveta","common":"Wyspa Bouveta"},"por":{"official":"Ilha Bouvet","common":"Ilha Bouvet"},"rus":{"official":"Остров Буве","common":"Остров Буве"},"slk":{"official":"Bouvetov ostrov","common":"Bouvetov ostrov"},"spa":{"official":"Isla Bouvet","common":"Isla Bouvet"},"srp":{"official":"Ostrvo Buve","common":"Buve"},"swe":{"official":"Bouvetön","common":"Bouvetön"},"tur":{"official":"Bouvet Adası","common":"Bouvet Adası"},"urd":{"official":"جزیرہ بووہ","common":"جزیرہ بووہ"},"zho":{"official":"布维岛","common":"布维岛"}},"latlng":[-54.43333333,3.4],"landlocked":false,"borders":[],"area":49,"flag":"🇧🇻","demonyms":{"eng":{"f":"","m":""},"fra":{"f":"","m":""}}},{"name":{"common":"Botswana","official":"Republic of Botswana","native":{"eng":{"official":"Republic of Botswana","common":"Botswana"},"tsn":{"official":"Lefatshe la Botswana","common":"Botswana"}}},"tld":[".bw"],"cca2":"BW","ccn3":"072","cca3":"BWA","cioc":"BOT","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"BWP":{"name":"Botswana pula","symbol":"P"}},"idd":{"root":"+2","suffixes":["67"]},"capital":["Gaborone"],"altSpellings":["BW","Republic of Botswana","Lefatshe la Botswana"],"region":"Africa","subregion":"Southern Africa","languages":{"eng":"English","tsn":"Tswana"},"translations":{"ara":{"official":"جمهورية بوتسوانا","common":"بوتسوانا"},"ces":{"official":"Botswanská republika","common":"Botswana"},"deu":{"official":"Republik Botsuana","common":"Botswana"},"est":{"official":"Botswana Vabariik","common":"Botswana"},"fin":{"official":"Botswanan tasavalta","common":"Botswana"},"fra":{"official":"République du Botswana","common":"Botswana"},"hrv":{"official":"Republika Bocvana","common":"Bocvana"},"hun":{"official":"Botswanai Köztársaság","common":"Botswana"},"ita":{"official":"Repubblica del Botswana","common":"Botswana"},"jpn":{"official":"ボツワナ共和国","common":"ボツワナ"},"kor":{"official":"보츠와나 공화국","common":"보츠와나"},"nld":{"official":"Republiek Botswana","common":"Botswana"},"per":{"official":"جمهوری بوتسوانا","common":"بوتسوانا"},"pol":{"official":"Republika Botswany","common":"Botswana"},"por":{"official":"República do Botswana","common":"Botswana"},"rus":{"official":"Республика Ботсвана","common":"Ботсвана"},"slk":{"official":"Botswanská republika","common":"Botswana"},"spa":{"official":"República de Botswana","common":"Botswana"},"srp":{"official":"Republika Bocvana","common":"Bocvana"},"swe":{"official":"Republiken Botswana","common":"Botswana"},"tur":{"official":"Botsvana Cumhuriyeti","common":"Botsvana"},"urd":{"official":"جمہوریہ بوٹسوانا","common":"بوٹسوانا"},"zho":{"official":"博茨瓦纳共和国","common":"博茨瓦纳"}},"latlng":[-22,24],"landlocked":true,"borders":["NAM","ZAF","ZMB","ZWE"],"area":582000,"flag":"🇧🇼","demonyms":{"eng":{"f":"Motswana","m":"Motswana"},"fra":{"f":"Botswanaise","m":"Botswanais"}}},{"name":{"common":"Central African Republic","official":"Central African Republic","native":{"fra":{"official":"République centrafricaine","common":"République centrafricaine"},"sag":{"official":"Ködörösêse tî Bêafrîka","common":"Bêafrîka"}}},"tld":[".cf"],"cca2":"CF","ccn3":"140","cca3":"CAF","cioc":"CAF","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"XAF":{"name":"Central African CFA franc","symbol":"Fr"}},"idd":{"root":"+2","suffixes":["36"]},"capital":["Bangui"],"altSpellings":["CF","Central African Republic","République centrafricaine"],"region":"Africa","subregion":"Middle Africa","languages":{"fra":"French","sag":"Sango"},"translations":{"ara":{"official":"جمهورية أفريقيا الوسطى","common":"جمهورية أفريقيا الوسطى"},"ces":{"official":"Středoafrická republika","common":"Středoafrická republika"},"deu":{"official":"Zentralafrikanische Republik","common":"Zentralafrikanische Republik"},"est":{"official":"Kesk-Aafrika Vabariik","common":"Kesk-Aafrika Vabariik"},"fin":{"official":"Keski-Afrikan tasavalta","common":"Keski-Afrikan tasavalta"},"fra":{"official":"République centrafricaine","common":"République centrafricaine"},"hrv":{"official":"Centralna Afrička Republika","common":"Srednjoafrička Republika"},"hun":{"official":"Közép-afrikai Köztársaság","common":"Közép-afrikai Köztársaság"},"ita":{"official":"Repubblica Centrafricana","common":"Repubblica Centrafricana"},"jpn":{"official":"中央アフリカ共和国","common":"中央アフリカ"},"kor":{"official":"중앙아프리카 공화국","common":"중앙아프리카 공화국"},"nld":{"official":"Centraal-Afrikaanse Republiek","common":"Centraal-Afrikaanse Republiek"},"per":{"official":"جمهوری آفریقای مرکزی","common":"جمهوری آفریقای مرکزی"},"pol":{"official":"Republika Środkowoafrykańska","common":"Republika Środkowoafrykańska"},"por":{"official":"República Centro-Africano","common":"República Centro-Africana"},"rus":{"official":"Центрально-Африканская Республика","common":"Центральноафриканская Республика"},"slk":{"official":"Stredoafrická republika","common":"Stredoafrická republika"},"spa":{"official":"República Centroafricana","common":"República Centroafricana"},"srp":{"official":"Centralnoafrička Republika","common":"Centralnoafrička Republika"},"swe":{"official":"Centralafrikanska republiken","common":"Centralafrikanska republiken"},"tur":{"official":"Orta Afrika Cumhuriyeti","common":"Orta Afrika Cumhuriyeti"},"urd":{"official":"وسطی افریقی جمہوریہ","common":"وسطی افریقی جمہوریہ"},"zho":{"official":"中非共和国","common":"中非共和国"}},"latlng":[7,21],"landlocked":true,"borders":["CMR","TCD","COD","COG","SSD","SDN"],"area":622984,"flag":"🇨🇫","demonyms":{"eng":{"f":"Central African","m":"Central African"},"fra":{"f":"Centrafricaine","m":"Centrafricain"}}},{"name":{"common":"Canada","official":"Canada","native":{"eng":{"official":"Canada","common":"Canada"},"fra":{"official":"Canada","common":"Canada"}}},"tld":[".ca"],"cca2":"CA","ccn3":"124","cca3":"CAN","cioc":"CAN","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Western European and Others Group","currencies":{"CAD":{"name":"Canadian dollar","symbol":"$"}},"idd":{"root":"+1","suffixes":["204","226","236","249","250","263","289","306","343","354","365","367","368","382","387","403","416","418","428","431","437","438","450","468","474","506","514","519","548","579","581","584","587","600","604","613","622","633","639","644","647","655","672","677","683","688","705","709","742","753","778","780","782","807","819","825","867","873","879","902","905","942"]},"capital":["Ottawa"],"altSpellings":["CA"],"region":"Americas","subregion":"North America","languages":{"eng":"English","fra":"French"},"translations":{"ara":{"official":"كندا","common":"كندا"},"ces":{"official":"Kanada","common":"Kanada"},"deu":{"official":"Kanada","common":"Kanada"},"est":{"official":"Kanada","common":"Kanada"},"fin":{"official":"Kanada","common":"Kanada"},"fra":{"official":"Canada","common":"Canada"},"hrv":{"official":"Kanada","common":"Kanada"},"hun":{"official":"Kanada","common":"Kanada"},"ita":{"official":"Canada","common":"Canada"},"jpn":{"official":"カナダ","common":"カナダ"},"kor":{"official":"캐나다","common":"캐나다"},"nld":{"official":"Canada","common":"Canada"},"per":{"official":"کانادا","common":"کانادا"},"pol":{"official":"Kanada","common":"Kanada"},"por":{"official":"Canadá","common":"Canadá"},"rus":{"official":"Канада","common":"Канада"},"slk":{"official":"Kanada","common":"Kanada"},"spa":{"official":"Canadá","common":"Canadá"},"srp":{"official":"Kanada","common":"Kanada"},"swe":{"official":"Kanada","common":"Kanada"},"tur":{"official":"Kanada","common":"Kanada"},"urd":{"official":"کینیڈا","common":"کینیڈا"},"zho":{"official":"加拿大","common":"加拿大"}},"latlng":[60,-95],"landlocked":false,"borders":["USA"],"area":9984670,"flag":"🇨🇦","demonyms":{"eng":{"f":"Canadian","m":"Canadian"},"fra":{"f":"Canadienne","m":"Canadien"}}},{"name":{"common":"Cocos (Keeling) Islands","official":"Territory of the Cocos (Keeling) Islands","native":{"eng":{"official":"Territory of the Cocos (Keeling) Islands","common":"Cocos (Keeling) Islands"}}},"tld":[".cc"],"cca2":"CC","ccn3":"166","cca3":"CCK","cioc":"","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"AUD":{"name":"Australian dollar","symbol":"$"}},"idd":{"root":"+6","suffixes":["1"]},"capital":["West Island"],"altSpellings":["CC","Keeling Islands","Cocos Islands"],"region":"Oceania","subregion":"Australia and New Zealand","languages":{"eng":"English"},"translations":{"ara":{"official":"إقليم جزر كوكوس","common":"جزر كوكوس"},"ces":{"official":"Kokosové ostrovy","common":"Kokosové ostrovy"},"deu":{"official":"Gebiet der Kokos- (Keeling-) Inseln","common":"Kokosinseln"},"est":{"official":"Kookossaarte ala","common":"Kookossaared"},"fin":{"official":"Kookossaaret","common":"Kookossaaret"},"fra":{"official":"Territoire des îles Cocos (Keeling)","common":"Îles Cocos"},"hrv":{"official":"Teritoriju Kokosovi (Keeling) Islands","common":"Kokosovi Otoci"},"hun":{"official":"Kókusz-szigetek","common":"Kókusz-szigetek"},"ita":{"official":"Territorio della (Keeling) Isole Cocos","common":"Isole Cocos e Keeling"},"jpn":{"official":"ココス諸島","common":"ココス諸島"},"kor":{"official":"코코스 제도","common":"코코스 제도"},"nld":{"official":"Grondgebied van de Eilanden Cocos (Keeling )","common":"Cocoseilanden"},"per":{"official":"جزایر کوکوس","common":"جزایر کوکوس"},"pol":{"official":"Wyspy Kokosowe","common":"Wyspy Kokosowe"},"por":{"official":"Território dos Cocos (Keeling)","common":"Ilhas Cocos (Keeling)"},"rus":{"official":"Территория Кокосовые (Килинг) острова","common":"Кокосовые острова"},"slk":{"official":"Kokosové ostrovy","common":"Kokosové ostrovy"},"spa":{"official":"Territorio de los (Keeling) Islas Cocos","common":"Islas Cocos o Islas Keeling"},"srp":{"official":"Teritorija Kokosovih (Kiling) Ostrva","common":"Kokosova Ostrva"},"swe":{"official":"Kokosöarna","common":"Kokosöarna"},"tur":{"official":"Cocos (Keeling) Adaları","common":"Cocos (Keeling) Adaları"},"urd":{"official":"جزائر (کیلنگ) کوکوس","common":"جزائر کوکوس"},"zho":{"official":"科科斯","common":"科科斯"}},"latlng":[-12.5,96.83333333],"landlocked":false,"borders":[],"area":14,"flag":"🇨🇨","demonyms":{"eng":{"f":"Cocos Islander","m":"Cocos Islander"},"fra":{"f":"","m":""}}},{"name":{"common":"Switzerland","official":"Swiss Confederation","native":{"fra":{"official":"Confédération suisse","common":"Suisse"},"gsw":{"official":"Schweizerische Eidgenossenschaft","common":"Schweiz"},"ita":{"official":"Confederazione Svizzera","common":"Svizzera"},"roh":{"official":"Confederaziun svizra","common":"Svizra"}}},"tld":[".ch"],"cca2":"CH","ccn3":"756","cca3":"CHE","cioc":"SUI","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Western European and Others Group","currencies":{"CHF":{"name":"Swiss franc","symbol":"Fr."}},"idd":{"root":"+4","suffixes":["1"]},"capital":["Bern"],"altSpellings":["CH","Swiss Confederation","Schweiz","Suisse","Svizzera","Svizra"],"region":"Europe","subregion":"Western Europe","languages":{"fra":"French","gsw":"Swiss German","ita":"Italian","roh":"Romansh"},"translations":{"ara":{"official":"الاتحاد السويسري","common":"سويسرا"},"ces":{"official":"Švýcarská konfederace","common":"Švýcarsko"},"deu":{"official":"Schweizerische Eidgenossenschaft","common":"Schweiz"},"est":{"official":"Šveitsi Konföderatsioon","common":"Šveits"},"fin":{"official":"Sveitsin valaliitto","common":"Sveitsi"},"fra":{"official":"Confédération suisse","common":"Suisse"},"hrv":{"official":"švicarska Konfederacija","common":"Švicarska"},"hun":{"official":"Svájc","common":"Svájc"},"ita":{"official":"Confederazione svizzera","common":"Svizzera"},"jpn":{"official":"スイス連邦","common":"スイス"},"kor":{"official":"스위스 연방","common":"스위스"},"nld":{"official":"Zwitserse Confederatie","common":"Zwitserland"},"per":{"official":"کنفدراسیون سوئیس","common":"سوئیس"},"pol":{"official":"Konfederacja Szwajcarska","common":"Szwajcaria"},"por":{"official":"Confederação Suíça","common":"Suíça"},"rus":{"official":"Швейцарская Конфедерация","common":"Швейцария"},"slk":{"official":"Švajčiarska konfederácia","common":"Švajčiarsko"},"spa":{"official":"Confederación Suiza","common":"Suiza"},"srp":{"official":"Švajcarska Konfederacija","common":"Švajcarska"},"swe":{"official":"Schweiziska edsförbundet","common":"Schweiz"},"tur":{"official":"İsviçre Konfederasyonu","common":"İsviçre"},"urd":{"official":"سوئیس متحدہ","common":"سویٹذرلینڈ"},"zho":{"official":"瑞士联邦","common":"瑞士"}},"latlng":[47,8],"landlocked":true,"borders":["AUT","FRA","ITA","LIE","DEU"],"area":41284,"flag":"🇨🇭","demonyms":{"eng":{"f":"Swiss","m":"Swiss"},"fra":{"f":"Suisse","m":"Suisse"}}},{"name":{"common":"Chile","official":"Republic of Chile","native":{"spa":{"official":"República de Chile","common":"Chile"}}},"tld":[".cl"],"cca2":"CL","ccn3":"152","cca3":"CHL","cioc":"CHI","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Latin American and Caribbean Group","currencies":{"CLP":{"name":"Chilean peso","symbol":"$"}},"idd":{"root":"+5","suffixes":["6"]},"capital":["Santiago"],"altSpellings":["CL","Republic of Chile","República de Chile"],"region":"Americas","subregion":"South America","languages":{"spa":"Spanish"},"translations":{"ara":{"official":"جمهورية تشيلي","common":"تشيلي"},"ces":{"official":"Chilská republika","common":"Chile"},"deu":{"official":"Republik Chile","common":"Chile"},"est":{"official":"Tšiili Vabariik","common":"Tšiili"},"fin":{"official":"Chilen tasavalta","common":"Chile"},"fra":{"official":"République du Chili","common":"Chili"},"hrv":{"official":"Republika Čile","common":"Čile"},"hun":{"official":"Chilei Köztársaság","common":"Chile"},"ita":{"official":"Repubblica del Cile","common":"Cile"},"jpn":{"official":"チリ共和国","common":"チリ"},"kor":{"official":"칠레 공화국","common":"칠레"},"nld":{"official":"Republiek Chili","common":"Chili"},"per":{"official":"جمهوری شیلی","common":"شیلی"},"pol":{"official":"Republika Chile","common":"Chile"},"por":{"official":"República do Chile","common":"Chile"},"rus":{"official":"Республика Чили","common":"Чили"},"slk":{"official":"Čílska republika","common":"Čile"},"spa":{"official":"República de Chile","common":"Chile"},"srp":{"official":"Republika Čile","common":"Čile"},"swe":{"official":"Republiken Chile","common":"Chile"},"tur":{"official":"şili Cumhuriyeti","common":"şili"},"urd":{"official":"جمہوریہ چلی","common":"چلی"},"zho":{"official":"智利共和国","common":"智利"}},"latlng":[-30,-71],"landlocked":false,"borders":["ARG","BOL","PER"],"area":756102,"flag":"🇨🇱","demonyms":{"eng":{"f":"Chilean","m":"Chilean"},"fra":{"f":"Chilienne","m":"Chilien"}}},{"name":{"common":"China","official":"People's Republic of China","native":{"zho":{"official":"中华人民共和国","common":"中国"}}},"tld":[".cn",".中国",".中國",".公司",".网络"],"cca2":"CN","ccn3":"156","cca3":"CHN","cioc":"CHN","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"CNY":{"name":"Chinese yuan","symbol":"¥"}},"idd":{"root":"+8","suffixes":["6"]},"capital":["Beijing"],"altSpellings":["CN","Zhōngguó","Zhongguo","Zhonghua","People's Republic of China","中华人民共和国","Zhōnghuá Rénmín Gònghéguó"],"region":"Asia","subregion":"Eastern Asia","languages":{"zho":"Chinese"},"translations":{"ara":{"official":"جمهورية الصين الشعبية","common":"الصين"},"ces":{"official":"Čínská lidová republika","common":"Čína"},"deu":{"official":"Volksrepublik China","common":"China"},"est":{"official":"Hiina Rahvavabariik","common":"Hiina"},"fin":{"official":"Kiinan kansantasavalta","common":"Kiina"},"fra":{"official":"République populaire de Chine","common":"Chine"},"hrv":{"official":"Narodna Republika Kina","common":"Kina"},"hun":{"official":"Kínai Népköztársaság","common":"Kína"},"ita":{"official":"Repubblica popolare cinese","common":"Cina"},"jpn":{"official":"中華人民共和国","common":"中国"},"kor":{"official":"중화인민공화국","common":"중국"},"nld":{"official":"Volksrepubliek China","common":"China"},"per":{"official":"جمهوری خلق چین","common":"چین"},"pol":{"official":"Chińska Republika Ludowa","common":"Chiny"},"por":{"official":"República Popular da China","common":"China"},"rus":{"official":"Народная Республика Китай","common":"Китай"},"slk":{"official":"Čínska ľudová republika","common":"Čína"},"spa":{"official":"República Popular de China","common":"China"},"srp":{"official":"Narodna Republika Kina","common":"Kina"},"swe":{"official":"Folkrepubliken Kina","common":"Kina"},"tur":{"official":"çin Halk Cumhuriyeti","common":"çin"},"urd":{"official":"عوامی جمہوریہ چین","common":"چین"},"zho":{"official":"中华人民共和国","common":"中国"}},"latlng":[35,105],"landlocked":false,"borders":["AFG","BTN","MMR","HKG","IND","KAZ","NPL","PRK","KGZ","LAO","MAC","MNG","PAK","RUS","TJK","VNM"],"area":9706961,"flag":"🇨🇳","demonyms":{"eng":{"f":"Chinese","m":"Chinese"},"fra":{"f":"Chinoise","m":"Chinois"}}},{"name":{"common":"Ivory Coast","official":"Republic of Côte d'Ivoire","native":{"fra":{"official":"République de Côte d'Ivoire","common":"Côte d'Ivoire"}}},"tld":[".ci"],"cca2":"CI","ccn3":"384","cca3":"CIV","cioc":"CIV","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"XOF":{"name":"West African CFA franc","symbol":"Fr"}},"idd":{"root":"+2","suffixes":["25"]},"capital":["Yamoussoukro"],"altSpellings":["CI","Côte d'Ivoire","Cote d'Ivoire","Ivory Coast","Republic of Côte d'Ivoire","République de Côte d'Ivoire"],"region":"Africa","subregion":"Western Africa","languages":{"fra":"French"},"translations":{"ara":{"official":"جمهورية ساحل العاج","common":"ساحل العاج"},"ces":{"official":"Republika Pobřeží slonoviny","common":"Pobřeží slonoviny"},"deu":{"official":"Republik Côte d'Ivoire","common":"Côte d'Ivoire"},"est":{"official":"Côte d’Ivoire’i Vabariik","common":"Elevandiluurannik"},"fin":{"official":"Norsunluurannikon tasavalta","common":"Norsunluurannikko"},"fra":{"official":"République de Côte d' Ivoire","common":"Côte d'Ivoire"},"hrv":{"official":"Republika Côte d'Ivoire","common":"Obala Bjelokosti"},"hun":{"official":"Elefántcsontparti Köztársaság","common":"Elefántcsontpart"},"ita":{"official":"Repubblica della Costa d'Avorio","common":"Costa d'Avorio"},"jpn":{"official":"コートジボワール共和国","common":"コートジボワール"},"kor":{"official":"코트디부아르 공화국","common":"코트디부아르"},"nld":{"official":"Republiek Ivoorkust","common":"Ivoorkust"},"per":{"official":"جمهوری ساحل عاج","common":"ساحل عاج"},"pol":{"official":"Republika WybrzeŻa Kości Słoniowej","common":"WybrzeŻe Kości Słoniowej"},"por":{"official":"República da Côte d'Ivoire","common":"Costa do Marfim"},"rus":{"official":"Республика Кот-д'Ивуаре","common":"Кот-д’Ивуар"},"slk":{"official":"Republika Pobrežie Slonoviny","common":"Pobržie Slonoviny"},"spa":{"official":"República de Côte d'Ivoire","common":"Costa de Marfil"},"srp":{"official":"Republika Obala Slonovače","common":"Obala Slonovače"},"swe":{"official":"Republiken Elfenbenskusten","common":"Elfenbenskusten"},"tur":{"official":"Fildişi Sahili","common":"Fildişi Sahili"},"urd":{"official":"جمہوریہ کوت دیواغ","common":"آئیوری کوسٹ"},"zho":{"official":"科特迪瓦共和国","common":"科特迪瓦"}},"latlng":[8,-5],"landlocked":false,"borders":["BFA","GHA","GIN","LBR","MLI"],"area":322463,"flag":"🇨🇮","demonyms":{"eng":{"f":"Ivorian","m":"Ivorian"},"fra":{"f":"Ivoirienne","m":"Ivoirien"}}},{"name":{"common":"Cameroon","official":"Republic of Cameroon","native":{"eng":{"official":"Republic of Cameroon","common":"Cameroon"},"fra":{"official":"République du Cameroun","common":"Cameroun"}}},"tld":[".cm"],"cca2":"CM","ccn3":"120","cca3":"CMR","cioc":"CMR","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"XAF":{"name":"Central African CFA franc","symbol":"Fr"}},"idd":{"root":"+2","suffixes":["37"]},"capital":["Yaoundé"],"altSpellings":["CM","Republic of Cameroon","République du Cameroun"],"region":"Africa","subregion":"Middle Africa","languages":{"eng":"English","fra":"French"},"translations":{"ara":{"official":"جمهورية الكاميرون","common":"الكاميرون"},"ces":{"official":"Kamerunská republika","common":"Kamerun"},"deu":{"official":"Republik Kamerun","common":"Kamerun"},"est":{"official":"Kameruni Vabariik","common":"Kamerun"},"fin":{"official":"Kamerunin tasavalta","common":"Kamerun"},"fra":{"official":"République du Cameroun","common":"Cameroun"},"hrv":{"official":"Republika Kamerun","common":"Kamerun"},"hun":{"official":"Kameruni Köztársaság","common":"Kamerun"},"ita":{"official":"Repubblica del Camerun","common":"Camerun"},"jpn":{"official":"カメルーン共和国","common":"カメルーン"},"kor":{"official":"카메룬 공화국","common":"카메룬"},"nld":{"official":"Republiek Kameroen","common":"Kameroen"},"per":{"official":"جمهوری کامِرون","common":"کامِرون"},"pol":{"official":"Republika WybrzeŻa Kości Słoniowej","common":"WybrzeŻe Kości Słoniowej"},"por":{"official":"República dos Camarões","common":"Camarões"},"rus":{"official":"Республика Камерун","common":"Камерун"},"slk":{"official":"Kamerunská republika","common":"Kamerun"},"spa":{"official":"República de Camerún","common":"Camerún"},"srp":{"official":"Republika Kamerun","common":"Kamerun"},"swe":{"official":"Republiken Kamerun","common":"Kamerun"},"tur":{"official":"Kamerun Cumhuriyeti","common":"Kamerun"},"urd":{"official":"جمہوریہ کیمرون","common":"کیمرون"},"zho":{"official":"喀麦隆共和国","common":"喀麦隆"}},"latlng":[6,12],"landlocked":false,"borders":["CAF","TCD","COG","GNQ","GAB","NGA"],"area":475442,"flag":"🇨🇲","demonyms":{"eng":{"f":"Cameroonian","m":"Cameroonian"},"fra":{"f":"Camerounaise","m":"Camerounais"}}},{"name":{"common":"DR Congo","official":"Democratic Republic of the Congo","native":{"fra":{"official":"République démocratique du Congo","common":"RD Congo"},"kon":{"official":"Repubilika ya Kongo Demokratiki","common":"Repubilika ya Kongo Demokratiki"},"lin":{"official":"Republiki ya Kongó Demokratiki","common":"Republiki ya Kongó Demokratiki"},"lua":{"official":"Ditunga dia Kongu wa Mungalaata","common":"Ditunga dia Kongu wa Mungalaata"},"swa":{"official":"Jamhuri ya Kidemokrasia ya Kongo","common":"Jamhuri ya Kidemokrasia ya Kongo"}}},"tld":[".cd"],"cca2":"CD","ccn3":"180","cca3":"COD","cioc":"COD","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"CDF":{"name":"Congolese franc","symbol":"FC"}},"idd":{"root":"+2","suffixes":["43"]},"capital":["Kinshasa"],"altSpellings":["CD","DR Congo","Congo-Kinshasa","Congo, the Democratic Republic of the","Democratic Republic of Congo","DRC"],"region":"Africa","subregion":"Middle Africa","languages":{"fra":"French","kon":"Kikongo","lin":"Lingala","lua":"Tshiluba","swa":"Swahili"},"translations":{"ara":{"official":"جمهورية الكونغو الديمقراطية","common":"الكونغو"},"ces":{"official":"Demokratická republika Kongo","common":"DR Kongo"},"deu":{"official":"Demokratische Republik Kongo","common":"Kongo (Dem. Rep.)"},"est":{"official":"Kongo Demokraatlik Vabariik","common":"Kongo DV"},"fin":{"official":"Kongon demokraattinen tasavalta","common":"Kongon demokraattinen tasavalta"},"fra":{"official":"République démocratique du Congo","common":"Congo (Rép. dém.)"},"hrv":{"official":"Demokratska Republika Kongo","common":"Kongo, Demokratska Republika"},"hun":{"official":"Kongói Demokratikus Köztársaság","common":"Kongói Demokratikus Köztársaság"},"ita":{"official":"Repubblica Democratica del Congo","common":"Congo (Rep. Dem.)"},"jpn":{"official":"コンゴ民主共和国","common":"コンゴ民主共和国"},"kor":{"official":"콩고 민주 공화국","common":"콩고 민주 공화국"},"nld":{"official":"Democratische Republiek Congo","common":"Congo (DRC)"},"per":{"official":"جمهوری دموکراتیک کنگو","common":"کنگو دموکراتیک"},"pol":{"official":"Demokratyczna Republika Konga","common":"Demokratyczna Republika Konga"},"por":{"official":"República Democrática do Congo","common":"República Democrática do Congo"},"rus":{"official":"Демократическая Республика Конго","common":"Демократическая Республика Конго"},"slk":{"official":"Konžská demokratická republika","common":"Kongo"},"spa":{"official":"República Democrática del Congo","common":"Congo (Rep. Dem.)"},"srp":{"official":"Demokratska Republika Kongo","common":"Kongo, Demokratska Republika"},"swe":{"official":"Demokratiska republiken Kongo","common":"Kongo-Kinshasa"},"tur":{"official":"Kongo Demokratik Cumhuriyeti","common":"Kongo Demokratik Cumhuriyeti"},"urd":{"official":"جمہوری جمہوریہ کانگو","common":"کانگو"},"zho":{"official":"刚果民主共和国","common":"民主刚果"}},"latlng":[0,25],"landlocked":false,"borders":["AGO","BDI","CAF","COG","RWA","SSD","TZA","UGA","ZMB"],"area":2344858,"flag":"🇨🇩","demonyms":{"eng":{"f":"Congolese","m":"Congolese"},"fra":{"f":"Congolaise","m":"Congolais"}}},{"name":{"common":"Republic of the Congo","official":"Republic of the Congo","native":{"fra":{"official":"République du Congo","common":"République du Congo"},"kon":{"official":"Repubilika ya Kongo","common":"Repubilika ya Kongo"},"lin":{"official":"Republíki ya Kongó","common":"Republíki ya Kongó"}}},"tld":[".cg"],"cca2":"CG","ccn3":"178","cca3":"COG","cioc":"CGO","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"XAF":{"name":"Central African CFA franc","symbol":"Fr"}},"idd":{"root":"+2","suffixes":["42"]},"capital":["Brazzaville"],"altSpellings":["CG","Congo","Congo-Brazzaville"],"region":"Africa","subregion":"Middle Africa","languages":{"fra":"French","kon":"Kikongo","lin":"Lingala"},"translations":{"ara":{"official":"جمهورية الكونغو","common":"جمهورية الكونغو"},"ces":{"official":"Konžská republika","common":"Kongo"},"deu":{"official":"Republik Kongo","common":"Kongo"},"est":{"official":"Kongo Vabariik","common":"Kongo Vabariik"},"fin":{"official":"Kongon tasavalta","common":"Kongo-Brazzaville"},"fra":{"official":"République du Congo","common":"Congo"},"hrv":{"official":"Republika Kongo","common":"Kongo"},"hun":{"official":"Kongói Köztársaság","common":"Kongói Köztársaság"},"ita":{"official":"Repubblica del Congo","common":"Congo"},"jpn":{"official":"コンゴ共和国","common":"コンゴ共和国"},"kor":{"official":"콩고","common":"콩고"},"nld":{"official":"Republiek Congo","common":"Congo"},"per":{"official":"جمهوری برازاویل کُنگو","common":"جمهوری کُنگو"},"pol":{"official":"Republika Konga","common":"Kongo"},"por":{"official":"República do Congo","common":"Congo"},"rus":{"official":"Республика Конго","common":"Республика Конго"},"slk":{"official":"Konžská republika","common":"Kongo"},"spa":{"official":"República del Congo","common":"Congo"},"srp":{"official":"Republika Kongo","common":"Kongo, Republika"},"swe":{"official":"Republiken Kongo","common":"Kongo-Brazzaville"},"tur":{"official":"Kongo Cumhuriyeti","common":"Kongo Cumhuriyeti"},"urd":{"official":"جمہوریہ کانگو","common":"جمہوریہ کانگو"},"zho":{"official":"刚果共和国","common":"刚果"}},"latlng":[-1,15],"landlocked":false,"borders":["AGO","CMR","CAF","COD","GAB"],"area":342000,"flag":"🇨🇬","demonyms":{"eng":{"f":"Congolese","m":"Congolese"},"fra":{"f":"Congolaise","m":"Congolais"}}},{"name":{"common":"Cook Islands","official":"Cook Islands","native":{"eng":{"official":"Cook Islands","common":"Cook Islands"},"rar":{"official":"Kūki 'Āirani","common":"Kūki 'Āirani"}}},"tld":[".ck"],"cca2":"CK","ccn3":"184","cca3":"COK","cioc":"COK","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"CKD":{"name":"Cook Islands dollar","symbol":"$"},"NZD":{"name":"New Zealand dollar","symbol":"$"}},"idd":{"root":"+6","suffixes":["82"]},"capital":["Avarua"],"altSpellings":["CK","Kūki 'Āirani"],"region":"Oceania","subregion":"Polynesia","languages":{"eng":"English","rar":"Cook Islands Māori"},"translations":{"ara":{"official":"جزر كوك","common":"جزر كوك"},"ces":{"official":"Cookovy ostrovy","common":"Cookovy ostrovy"},"deu":{"official":"Cookinseln","common":"Cookinseln"},"est":{"official":"Cooki saared","common":"Cooki saared"},"fin":{"official":"Cookinsaaret","common":"Cookinsaaret"},"fra":{"official":"Îles Cook","common":"Îles Cook"},"hrv":{"official":"Cook Islands","common":"Cookovo Otočje"},"hun":{"official":"Cook-szigetek","common":"Cook-szigetek"},"ita":{"official":"Isole Cook","common":"Isole Cook"},"jpn":{"official":"クック諸島","common":"クック諸島"},"kor":{"official":"쿡 제도","common":"쿡 제도"},"nld":{"official":"Cook eilanden","common":"Cookeilanden"},"per":{"official":"جزایر کوک","common":"جزایر کوک"},"pol":{"official":"Wyspy Cooka","common":"Wyspy Cooka"},"por":{"official":"Ilhas Cook","common":"Ilhas Cook"},"rus":{"official":"острова Кука","common":"Острова Кука"},"slk":{"official":"Cookove ostrovy","common":"Cookove ostrovy"},"spa":{"official":"Islas Cook","common":"Islas Cook"},"srp":{"official":"Kukova Ostrva","common":"Kukova Ostrva"},"swe":{"official":"Cooköarna","common":"Cooköarna"},"tur":{"official":"Cook Adaları","common":"Cook Adaları"},"urd":{"official":"جزائر کک","common":"جزائر کک"},"zho":{"official":"库克群岛","common":"库克群岛"}},"latlng":[-21.23333333,-159.76666666],"landlocked":false,"borders":[],"area":236,"flag":"🇨🇰","demonyms":{"eng":{"f":"Cook Islander","m":"Cook Islander"},"fra":{"f":"Cookienne","m":"Cookien"}}},{"name":{"common":"Colombia","official":"Republic of Colombia","native":{"spa":{"official":"República de Colombia","common":"Colombia"}}},"tld":[".co"],"cca2":"CO","ccn3":"170","cca3":"COL","cioc":"COL","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Latin American and Caribbean Group","currencies":{"COP":{"name":"Colombian peso","symbol":"$"}},"idd":{"root":"+5","suffixes":["7"]},"capital":["Bogotá"],"altSpellings":["CO","Republic of Colombia","República de Colombia"],"region":"Americas","subregion":"South America","languages":{"spa":"Spanish"},"translations":{"ara":{"official":"جمهورية كولومبيا","common":"كولومبيا"},"ces":{"official":"Kolumbijská republika","common":"Kolumbie"},"deu":{"official":"Republik Kolumbien","common":"Kolumbien"},"est":{"official":"Colombia Vabariik","common":"Colombia"},"fin":{"official":"Kolumbian tasavalta","common":"Kolumbia"},"fra":{"official":"République de Colombie","common":"Colombie"},"hrv":{"official":"Republika Kolumbija","common":"Kolumbija"},"hun":{"official":"Kolumbiai Köztársaság","common":"Kolumbia"},"ita":{"official":"Repubblica di Colombia","common":"Colombia"},"jpn":{"official":"コロンビア共和国","common":"コロンビア"},"kor":{"official":"콜롬비아 공화국","common":"콜롬비아"},"nld":{"official":"Republiek Colombia","common":"Colombia"},"per":{"official":"جمهوری کلمبیا","common":"کلمبیا"},"pol":{"official":"Republika Kolumbii","common":"Kolumbia"},"por":{"official":"República da Colômbia","common":"Colômbia"},"rus":{"official":"Республика Колумбия","common":"Колумбия"},"slk":{"official":"Kolumbijská republika","common":"Kolumbia"},"spa":{"official":"República de Colombia","common":"Colombia"},"srp":{"official":"Republika Kolumbija","common":"Kolumbija"},"swe":{"official":"Republiken Colombia","common":"Colombia"},"tur":{"official":"Kolombiya Cumhuriyeti","common":"Kolombiya"},"urd":{"official":"جمہوریہ کولمبیا","common":"کولمبیا"},"zho":{"official":"哥伦比亚共和国","common":"哥伦比亚"}},"latlng":[4,-72],"landlocked":false,"borders":["BRA","ECU","PAN","PER","VEN"],"area":1141748,"flag":"🇨🇴","demonyms":{"eng":{"f":"Colombian","m":"Colombian"},"fra":{"f":"Colombienne","m":"Colombien"}}},{"name":{"common":"Comoros","official":"Union of the Comoros","native":{"ara":{"official":"الاتحاد القمري","common":"جزر القمر"},"fra":{"official":"Union des Comores","common":"Comores"},"zdj":{"official":"Udzima wa Komori","common":"Komori"}}},"tld":[".km"],"cca2":"KM","ccn3":"174","cca3":"COM","cioc":"COM","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"KMF":{"name":"Comorian franc","symbol":"Fr"}},"idd":{"root":"+2","suffixes":["69"]},"capital":["Moroni"],"altSpellings":["KM","Union of the Comoros","Union des Comores","Udzima wa Komori","al-Ittiḥād al-Qumurī"],"region":"Africa","subregion":"Eastern Africa","languages":{"ara":"Arabic","fra":"French","zdj":"Comorian"},"translations":{"ara":{"official":"الإتحاد القمري","common":"جزر القمر"},"ces":{"official":"Komorský svaz","common":"Komory"},"deu":{"official":"Union der Komoren","common":"Komoren"},"est":{"official":"Komoori Liit","common":"Komoorid"},"fin":{"official":"Komorien liitto","common":"Komorit"},"fra":{"official":"Union des Comores","common":"Comores"},"hrv":{"official":"Savez Komori","common":"Komori"},"hun":{"official":"Comore-szigeteki Unió","common":"Comore-szigetek"},"ita":{"official":"Unione delle Comore","common":"Comore"},"jpn":{"official":"コモロ連合","common":"コモロ"},"kor":{"official":"코모로 연방","common":"코모로"},"nld":{"official":"Unie van de Comoren","common":"Comoren"},"per":{"official":"مجمع‌الجزایر قمر","common":"اتحاد قُمُر"},"pol":{"official":"Związek Komorów","common":"Komory"},"por":{"official":"União das Comores","common":"Comores"},"rus":{"official":"Союз Коморских Островов","common":"Коморы"},"slk":{"official":"Komorská únia","common":"Komory"},"spa":{"official":"Unión de las Comoras","common":"Comoras"},"srp":{"official":"Unija Komora","common":"Komori"},"swe":{"official":"Unionen Komorerna","common":"Komorerna"},"tur":{"official":"Komorlar Birliği","common":"Komorlar"},"urd":{"official":"اتحاد القمری","common":"القمری"},"zho":{"official":"科摩罗联盟","common":"科摩罗"}},"latlng":[-12.16666666,44.25],"landlocked":false,"borders":[],"area":1862,"flag":"🇰🇲","demonyms":{"eng":{"f":"Comoran","m":"Comoran"},"fra":{"f":"Comorienne","m":"Comorien"}}},{"name":{"common":"Cape Verde","official":"Republic of Cabo Verde","native":{"por":{"official":"República de Cabo Verde","common":"Cabo Verde"}}},"tld":[".cv"],"cca2":"CV","ccn3":"132","cca3":"CPV","cioc":"CPV","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"CVE":{"name":"Cape Verdean escudo","symbol":"Esc"}},"idd":{"root":"+2","suffixes":["38"]},"capital":["Praia"],"altSpellings":["CV","Republic of Cabo Verde","República de Cabo Verde"],"region":"Africa","subregion":"Western Africa","languages":{"por":"Portuguese"},"translations":{"ara":{"official":"جمهورية كابو فيردي","common":"كابو فيردي"},"ces":{"official":"Kapverdská republika","common":"Kapverdy"},"deu":{"official":"Republik Cabo Verde","common":"Kap Verde"},"est":{"official":"Cabo Verde Vabariik","common":"Roheneemesaared"},"fin":{"official":"Kap Verden tasavalta","common":"Kap Verde"},"fra":{"official":"République du Cap-Vert","common":"Îles du Cap-Vert"},"hrv":{"official":"Republika Cabo Verde","common":"Zelenortska Republika"},"hun":{"official":"Zöld-foki Köztársaság","common":"Zöld-foki Köztársaság"},"ita":{"official":"Repubblica di Capo Verde","common":"Capo Verde"},"jpn":{"official":"カーボベルデ共和国","common":"カーボベルデ"},"kor":{"official":"카보베르데 공화국","common":"카보베르데"},"nld":{"official":"Republiek van Cabo Verde","common":"Kaapverdië"},"per":{"official":"جمهوری کبو ورد","common":"دماغهٔ سبز"},"pol":{"official":"Republika Zielonego Przylądka","common":"Republika Zielonego Przylądka"},"por":{"official":"República de Cabo Verde","common":"Cabo Verde"},"rus":{"official":"Республика Кабо -Верде","common":"Кабо-Верде"},"slk":{"official":"Kapverdská republika","common":"Kapverdy"},"spa":{"official":"República de Cabo Verde","common":"Cabo Verde"},"srp":{"official":"Republika Zelenortska Ostrva","common":"Zelenortska Ostrva"},"swe":{"official":"Republiken Kap Verde","common":"Kap Verde"},"tur":{"official":"Yeşil Burun Cumhuriyeti","common":"Yeşil Burun"},"urd":{"official":"جمہوریہ کیپ ورڈی","common":"کیپ ورڈی"},"zho":{"official":"佛得角共和国","common":"佛得角"}},"latlng":[16,-24],"landlocked":false,"borders":[],"area":4033,"flag":"🇨🇻","demonyms":{"eng":{"f":"Cape Verdian","m":"Cape Verdian"},"fra":{"f":"Cap-verdienne","m":"Cap-verdien"}}},{"name":{"common":"Costa Rica","official":"Republic of Costa Rica","native":{"spa":{"official":"República de Costa Rica","common":"Costa Rica"}}},"tld":[".cr"],"cca2":"CR","ccn3":"188","cca3":"CRI","cioc":"CRC","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Latin American and Caribbean Group","currencies":{"CRC":{"name":"Costa Rican colón","symbol":"₡"}},"idd":{"root":"+5","suffixes":["06"]},"capital":["San José"],"altSpellings":["CR","Republic of Costa Rica","República de Costa Rica"],"region":"Americas","subregion":"Central America","languages":{"spa":"Spanish"},"translations":{"ara":{"official":"جمهورية كوستاريكا","common":"كوستاريكا"},"ces":{"official":"Kostarická republika","common":"Kostarika"},"deu":{"official":"Republik Costa Rica","common":"Costa Rica"},"est":{"official":"Costa Rica Vabariik","common":"Costa Rica"},"fin":{"official":"Costa Rican tasavalta","common":"Costa Rica"},"fra":{"official":"République du Costa Rica","common":"Costa Rica"},"hrv":{"official":"Republika Kostarika","common":"Kostarika"},"hun":{"official":"Costa Rica-i Köztársaság","common":"Costa Rica"},"ita":{"official":"Repubblica di Costa Rica","common":"Costa Rica"},"jpn":{"official":"コスタリカ共和国","common":"コスタリカ"},"kor":{"official":"코스타리카 공화국","common":"코스타리카"},"nld":{"official":"Republiek Costa Rica","common":"Costa Rica"},"per":{"official":"جمهوری کاستاریکا","common":"کاستاریکا"},"pol":{"official":"Republika Kostaryki","common":"Kostaryka"},"por":{"official":"República da Costa Rica","common":"Costa Rica"},"rus":{"official":"Республика Коста-Рика","common":"Коста-Рика"},"slk":{"official":"Kostarická republika","common":"Kostarika"},"spa":{"official":"República de Costa Rica","common":"Costa Rica"},"srp":{"official":"Republika Kostarika","common":"Kostarika"},"swe":{"official":"Republiken Costa Rica","common":"Costa Rica"},"tur":{"official":"Kosta Rika Cumhuriyeti","common":"Kosta Rika"},"urd":{"official":"جمہوریہ کوسٹاریکا","common":"کوسٹاریکا"},"zho":{"official":"哥斯达黎加共和国","common":"哥斯达黎加"}},"latlng":[10,-84],"landlocked":false,"borders":["NIC","PAN"],"area":51100,"flag":"🇨🇷","demonyms":{"eng":{"f":"Costa Rican","m":"Costa Rican"},"fra":{"f":"Costaricaine","m":"Costaricain"}}},{"name":{"common":"Cuba","official":"Republic of Cuba","native":{"spa":{"official":"República de Cuba","common":"Cuba"}}},"tld":[".cu"],"cca2":"CU","ccn3":"192","cca3":"CUB","cioc":"CUB","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Latin American and Caribbean Group","currencies":{"CUC":{"name":"Cuban convertible peso","symbol":"$"},"CUP":{"name":"Cuban peso","symbol":"$"}},"idd":{"root":"+5","suffixes":["3"]},"capital":["Havana"],"altSpellings":["CU","Republic of Cuba","República de Cuba"],"region":"Americas","subregion":"Caribbean","languages":{"spa":"Spanish"},"translations":{"ara":{"official":"جمهورية كوبا","common":"كوبا"},"ces":{"official":"Kubánská republika","common":"Kuba"},"deu":{"official":"Republik Kuba","common":"Kuba"},"est":{"official":"Kuuba Vabariik","common":"Kuuba"},"fin":{"official":"Kuuban tasavalta","common":"Kuuba"},"fra":{"official":"République de Cuba","common":"Cuba"},"hrv":{"official":"Republika Kuba","common":"Kuba"},"hun":{"official":"Kubai Köztársaság","common":"Kuba"},"ita":{"official":"Repubblica di Cuba","common":"Cuba"},"jpn":{"official":"キューバ共和国","common":"キューバ"},"kor":{"official":"쿠바 공화국","common":"쿠바"},"nld":{"official":"Republiek Cuba","common":"Cuba"},"per":{"official":"جمهوری کوبا","common":"کوبا"},"pol":{"official":"Republika Kuby","common":"Kuba"},"por":{"official":"República de Cuba","common":"Cuba"},"rus":{"official":"Республика Куба","common":"Куба"},"slk":{"official":"Kubánska republika","common":"Kuba"},"spa":{"official":"República de Cuba","common":"Cuba"},"srp":{"official":"Republika Kuba","common":"Kuba"},"swe":{"official":"Republiken Kuba","common":"Kuba"},"tur":{"official":"Küba Cumhuriyeti","common":"Küba"},"urd":{"official":"جمہوریہ کیوبا","common":"کیوبا"},"zho":{"official":"古巴共和国","common":"古巴"}},"latlng":[21.5,-80],"landlocked":false,"borders":[],"area":109884,"flag":"🇨🇺","demonyms":{"eng":{"f":"Cuban","m":"Cuban"},"fra":{"f":"Cubaine","m":"Cubain"}}},{"name":{"common":"Curaçao","official":"Country of Curaçao","native":{"eng":{"official":"Country of Curaçao","common":"Curaçao"},"nld":{"official":"Land Curaçao","common":"Curaçao"},"pap":{"official":"Pais Kòrsou","common":"Pais Kòrsou"}}},"tld":[".cw"],"cca2":"CW","ccn3":"531","cca3":"CUW","cioc":"","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"ANG":{"name":"Netherlands Antillean guilder","symbol":"ƒ"}},"idd":{"root":"+5","suffixes":["99"]},"capital":["Willemstad"],"altSpellings":["CW","Curacao","Kòrsou","Country of Curaçao","Land Curaçao","Pais Kòrsou"],"region":"Americas","subregion":"Caribbean","languages":{"eng":"English","nld":"Dutch","pap":"Papiamento"},"translations":{"ara":{"official":"دولة كوراساو","common":"كوراساو"},"ces":{"official":"Autonomní země Curaçao","common":"Curaçao"},"deu":{"official":"Land Curaçao","common":"Curaçao"},"est":{"official":"Curaçao","common":"Curaçao"},"fin":{"official":"Curaçao","common":"Curaçao"},"fra":{"official":"Pays de Curaçao","common":"Curaçao"},"hrv":{"official":"Curaçao","common":"Curaçao"},"hun":{"official":"Curaçao","common":"Curaçao"},"ita":{"official":"Paese di Curaçao","common":"Curaçao"},"jpn":{"official":"キュラソー","common":"キュラソー"},"kor":{"official":"퀴라소","common":"퀴라소"},"nld":{"official":"Land Curaçao","common":"Curaçao"},"per":{"official":"کوراسائو","common":"کوراسائو"},"pol":{"official":"Curaçao","common":"Curaçao"},"por":{"official":"País de Curaçao","common":"ilha da Curação"},"rus":{"official":"Страна Кюрасао","common":"Кюрасао"},"slk":{"official":"Curacao","common":"Curacao"},"spa":{"official":"País de Curazao","common":"Curazao"},"srp":{"official":"Država Kurasao","common":"Kurasao"},"swe":{"official":"Curaçao","common":"Curaçao"},"tur":{"official":"Curaçao","common":"Curaçao"},"urd":{"official":"مملکتِ کیوراساؤ","common":"کیوراساؤ"},"zho":{"official":"库拉索","common":"库拉索"}},"latlng":[12.116667,-68.933333],"landlocked":false,"borders":[],"area":444,"flag":"🇨🇼","demonyms":{"eng":{"f":"Curaçaoan","m":"Curaçaoan"},"fra":{"f":"Curacienne","m":"Curacien"}}},{"name":{"common":"Christmas Island","official":"Territory of Christmas Island","native":{"eng":{"official":"Territory of Christmas Island","common":"Christmas Island"}}},"tld":[".cx"],"cca2":"CX","ccn3":"162","cca3":"CXR","cioc":"","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"AUD":{"name":"Australian dollar","symbol":"$"}},"idd":{"root":"+6","suffixes":["1"]},"capital":["Flying Fish Cove"],"altSpellings":["CX","Territory of Christmas Island"],"region":"Oceania","subregion":"Australia and New Zealand","languages":{"eng":"English"},"translations":{"ara":{"official":"جزيرة كريسماس","common":"جزيرة كريسماس"},"ces":{"official":"Teritorium Vánočního ostrova","common":"Vánoční ostrov"},"deu":{"official":"Gebiet der Weihnachtsinsel","common":"Weihnachtsinsel"},"est":{"official":"Jõulusaare ala","common":"Jõulusaar"},"fin":{"official":"Joulusaaren alue","common":"Joulusaari"},"fra":{"official":"Territoire de l'île Christmas","common":"Île Christmas"},"hrv":{"official":"Teritorij Božićni otok","common":"Božićni otok"},"hun":{"official":"Karácsony-sziget","common":"Karácsony-sziget"},"ita":{"official":"Territorio di Christmas Island","common":"Isola di Natale"},"jpn":{"official":"クリスマス島","common":"クリスマス島"},"kor":{"official":"크리스마스 섬","common":"크리스마스 섬"},"nld":{"official":"Grondgebied van Christmas Island","common":"Christmaseiland"},"per":{"official":"جزیرهٔ کریسمس","common":"جزیرهٔ کریسمس"},"pol":{"official":"Wyspa Bożego Narodzenia","common":"Wyspa Bożego Narodzenia"},"por":{"official":"Território da Ilha Christmas","common":"Ilha do Natal"},"rus":{"official":"Территория острова Рождества","common":"Остров Рождества"},"slk":{"official":"Teritórium Vianočného ostrova","common":"Vianočnú ostrov"},"spa":{"official":"Territorio de la Isla de Navidad","common":"Isla de Navidad"},"srp":{"official":"Teritorija Božićno ostrvo","common":"Božićno Ostrvo"},"swe":{"official":"Julön","common":"Julön"},"tur":{"official":"Christmas Adası","common":"Christmas Adası"},"urd":{"official":"ریاستِ جزیرہ کرسمس","common":"جزیرہ کرسمس"},"zho":{"official":"圣诞岛","common":"圣诞岛"}},"latlng":[-10.5,105.66666666],"landlocked":false,"borders":[],"area":135,"flag":"🇨🇽","demonyms":{"eng":{"f":"Christmas Islander","m":"Christmas Islander"},"fra":{"f":"","m":""}}},{"name":{"common":"Cayman Islands","official":"Cayman Islands","native":{"eng":{"official":"Cayman Islands","common":"Cayman Islands"}}},"tld":[".ky"],"cca2":"KY","ccn3":"136","cca3":"CYM","cioc":"CAY","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"KYD":{"name":"Cayman Islands dollar","symbol":"$"}},"idd":{"root":"+1","suffixes":["345"]},"capital":["George Town"],"altSpellings":["KY"],"region":"Americas","subregion":"Caribbean","languages":{"eng":"English"},"translations":{"ara":{"official":"جزر كايمان","common":"جزر كايمان"},"ces":{"official":"Kajmanské ostrovy","common":"Kajmanské ostrovy"},"deu":{"official":"Cayman-Inseln","common":"Kaimaninseln"},"est":{"official":"Kaimanisaared","common":"Kaimanisaared"},"fin":{"official":"Caymansaaret","common":"Caymansaaret"},"fra":{"official":"Îles Caïmans","common":"Îles Caïmans"},"hrv":{"official":"Kajmanski otoci","common":"Kajmanski otoci"},"hun":{"official":"Kajmán-szigetek","common":"Kajmán-szigetek"},"ita":{"official":"Isole Cayman","common":"Isole Cayman"},"jpn":{"official":"ケイマン諸島","common":"ケイマン諸島"},"kor":{"official":"케이맨 제도","common":"케이맨 제도"},"nld":{"official":"Caymaneilanden","common":"Caymaneilanden"},"per":{"official":"جزایر کیمن","common":"جزایر کیمن"},"pol":{"official":"Kajmany","common":"Kajmany"},"por":{"official":"Ilhas Cayman","common":"Ilhas Caimão"},"rus":{"official":"Каймановы острова","common":"Каймановы острова"},"slk":{"official":"Kajmanie ostrovy","common":"Kajmanie ostrovy"},"spa":{"official":"Islas Caimán","common":"Islas Caimán"},"srp":{"official":"Kajmanska Ostrva","common":"Kajmanska Ostrva"},"swe":{"official":"Caymanöarna","common":"Caymanöarna"},"tur":{"official":"Cayman Adaları","common":"Cayman Adaları"},"urd":{"official":"جزائر کیمین","common":"جزائر کیمین"},"zho":{"official":"开曼群岛","common":"开曼群岛"}},"latlng":[19.5,-80.5],"landlocked":false,"borders":[],"area":264,"flag":"🇰🇾","demonyms":{"eng":{"f":"Caymanian","m":"Caymanian"},"fra":{"f":"Caïmanienne","m":"Caïmanien"}}},{"name":{"common":"Cyprus","official":"Republic of Cyprus","native":{"ell":{"official":"Δημοκρατία της Κύπρος","common":"Κύπρος"},"tur":{"official":"Kıbrıs Cumhuriyeti","common":"Kıbrıs"}}},"tld":[".cy"],"cca2":"CY","ccn3":"196","cca3":"CYP","cioc":"CYP","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"EUR":{"name":"Euro","symbol":"€"}},"idd":{"root":"+3","suffixes":["57"]},"capital":["Nicosia"],"altSpellings":["CY","Kýpros","Kıbrıs","Republic of Cyprus","Κυπριακή Δημοκρατία","Kıbrıs Cumhuriyeti"],"region":"Europe","subregion":"Southern Europe","languages":{"ell":"Greek","tur":"Turkish"},"translations":{"ara":{"official":"جمهورية قبرص","common":"قبرص"},"ces":{"official":"Kyperská republika","common":"Kypr"},"deu":{"official":"Republik Zypern","common":"Zypern"},"est":{"official":"Küprose Vabariik","common":"Küpros"},"fin":{"official":"Kyproksen tasavalta","common":"Kypros"},"fra":{"official":"République de Chypre","common":"Chypre"},"hrv":{"official":"Republika Cipar","common":"Cipar"},"hun":{"official":"Ciprusi Köztársaság","common":"Ciprus"},"ita":{"official":"Repubblica di Cipro","common":"Cipro"},"jpn":{"official":"キプロス共和国","common":"キプロス"},"kor":{"official":"키프로스 공화국","common":"키프로스"},"nld":{"official":"Republiek Cyprus","common":"Cyprus"},"per":{"official":"جمهوری قبرس","common":"قِبرِس"},"pol":{"official":"Republika Cypryjska","common":"Cypr"},"por":{"official":"República de Chipre","common":"Chipre"},"rus":{"official":"Республика Кипр","common":"Кипр"},"slk":{"official":"Cyperská republika","common":"Cyprus"},"spa":{"official":"República de Chipre","common":"Chipre"},"srp":{"official":"Republika Kipar","common":"Kipar"},"swe":{"official":"Republiken Cypern","common":"Cypern"},"tur":{"official":"Kıbrıs Cumhuriyeti","common":"Kıbrıs"},"urd":{"official":"جمہوریہ قبرص","common":"قبرص"},"zho":{"official":"塞浦路斯共和国","common":"塞浦路斯"}},"latlng":[35,33],"landlocked":false,"borders":[],"area":9251,"flag":"🇨🇾","demonyms":{"eng":{"f":"Cypriot","m":"Cypriot"},"fra":{"f":"Chypriote","m":"Chypriote"}}},{"name":{"common":"Czechia","official":"Czech Republic","native":{"ces":{"official":"Česká republika","common":"Česko"},"slk":{"official":"Česká republika","common":"Česko"}}},"tld":[".cz"],"cca2":"CZ","ccn3":"203","cca3":"CZE","cioc":"CZE","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Eastern European Group","currencies":{"CZK":{"name":"Czech koruna","symbol":"Kč"}},"idd":{"root":"+4","suffixes":["20"]},"capital":["Prague"],"altSpellings":["CZ","Česká republika","Česko"],"region":"Europe","subregion":"Central Europe","languages":{"ces":"Czech","slk":"Slovak"},"translations":{"ara":{"official":"جمهورية التشيك","common":"التشيك"},"ces":{"official":"Česká republika","common":"Česko"},"deu":{"official":"Tschechische Republik","common":"Tschechien"},"est":{"official":"Tšehhi Vabariik","common":"Tšehhi"},"fin":{"official":"Tšekin tasavalta","common":"Tšekki"},"fra":{"official":"République tchèque","common":"Tchéquie"},"hrv":{"official":"Češka","common":"Češka"},"hun":{"official":"Cseh Köztársaság","common":"Csehország"},"ita":{"official":"Repubblica Ceca","common":"Cechia"},"jpn":{"official":"チェコ共和国","common":"チェコ"},"kor":{"official":"체코","common":"체코"},"nld":{"official":"Tsjechische Republiek","common":"Tsjechië"},"per":{"official":"جمهوری چک","common":"جمهوری چک"},"pol":{"official":"Republika Czeska","common":"Czechy"},"por":{"official":"República Checa","common":"Chéquia"},"rus":{"official":"Чешская Республика","common":"Чехия"},"slk":{"official":"Česká republika","common":"Česko"},"spa":{"official":"República Checa","common":"Chequia"},"srp":{"official":"Češka Republika","common":"Češka"},"swe":{"official":"Republiken Tjeckien","common":"Tjeckien"},"tur":{"official":"çek Cumhuriyeti","common":"çekya"},"urd":{"official":"چيک جمہوريہ","common":"چيک"},"zho":{"official":"捷克共和国","common":"捷克"}},"latlng":[49.75,15.5],"landlocked":true,"borders":["AUT","DEU","POL","SVK"],"area":78865,"flag":"🇨🇿","demonyms":{"eng":{"f":"Czech","m":"Czech"},"fra":{"f":"Tchèque","m":"Tchèque"}}},{"name":{"common":"Germany","official":"Federal Republic of Germany","native":{"deu":{"official":"Bundesrepublik Deutschland","common":"Deutschland"}}},"tld":[".de"],"cca2":"DE","ccn3":"276","cca3":"DEU","cioc":"GER","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Western European and Others Group","currencies":{"EUR":{"name":"Euro","symbol":"€"}},"idd":{"root":"+4","suffixes":["9"]},"capital":["Berlin"],"altSpellings":["DE","Federal Republic of Germany","Bundesrepublik Deutschland"],"region":"Europe","subregion":"Western Europe","languages":{"deu":"German"},"translations":{"ara":{"official":"جمهورية ألمانيا الاتحادية","common":"ألمانيا"},"ces":{"official":"Spolková republika Německo","common":"Německo"},"deu":{"official":"Bundesrepublik Deutschland","common":"Deutschland"},"est":{"official":"Saksamaa Liitvabariik","common":"Saksamaa"},"fin":{"official":"Saksan liittotasavalta","common":"Saksa"},"fra":{"official":"République fédérale d'Allemagne","common":"Allemagne"},"hrv":{"official":"Njemačka Federativna Republika","common":"Njemačka"},"hun":{"official":"Német Szövetségi Köztársaság","common":"Németország"},"ita":{"official":"Repubblica federale di Germania","common":"Germania"},"jpn":{"official":"ドイツ連邦共和国","common":"ドイツ"},"kor":{"official":"독일 연방 공화국","common":"독일"},"nld":{"official":"Bondsrepubliek Duitsland","common":"Duitsland"},"per":{"official":"جمهوری فدرال آلمان","common":"آلمان"},"pol":{"official":"Republika Federalna Niemiec","common":"Niemcy"},"por":{"official":"República Federal da Alemanha","common":"Alemanha"},"rus":{"official":"Федеративная Республика Германия","common":"Германия"},"slk":{"official":"Nemecká spolková republika","common":"Nemecko"},"spa":{"official":"República Federal de Alemania","common":"Alemania"},"srp":{"official":"Savezna Republika Nemačka","common":"Nemačka"},"swe":{"official":"Förbundsrepubliken Tyskland","common":"Tyskland"},"tur":{"official":"Almanya Federal Cumhuriyeti","common":"Almanya"},"urd":{"official":"وفاقی جمہوریہ جرمنی","common":"جرمنی"},"zho":{"official":"德意志联邦共和国","common":"德国"}},"latlng":[51,9],"landlocked":false,"borders":["AUT","BEL","CZE","DNK","FRA","LUX","NLD","POL","CHE"],"area":357114,"flag":"🇩🇪","demonyms":{"eng":{"f":"German","m":"German"},"fra":{"f":"Allemande","m":"Allemand"}}},{"name":{"common":"Djibouti","official":"Republic of Djibouti","native":{"ara":{"official":"جمهورية جيبوتي","common":"جيبوتي"},"fra":{"official":"République de Djibouti","common":"Djibouti"}}},"tld":[".dj"],"cca2":"DJ","ccn3":"262","cca3":"DJI","cioc":"DJI","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"DJF":{"name":"Djiboutian franc","symbol":"Fr"}},"idd":{"root":"+2","suffixes":["53"]},"capital":["Djibouti"],"altSpellings":["DJ","Jabuuti","Gabuuti","Republic of Djibouti","République de Djibouti","Gabuutih Ummuuno","Jamhuuriyadda Jabuuti"],"region":"Africa","subregion":"Eastern Africa","languages":{"ara":"Arabic","fra":"French"},"translations":{"ara":{"official":"جمهورية جيبوتي","common":"جيبوتي"},"ces":{"official":"Džibutská republika","common":"Džibutsko"},"deu":{"official":"Republik Dschibuti","common":"Dschibuti"},"est":{"official":"Djibouti Vabariik","common":"Djibouti"},"fin":{"official":"Dijiboutin tasavalta","common":"Dijibouti"},"fra":{"official":"République de Djibouti","common":"Djibouti"},"hrv":{"official":"Republika Džibuti","common":"Džibuti"},"hun":{"official":"Dzsibuti Köztársaság","common":"Dzsibuti"},"ita":{"official":"Repubblica di Gibuti","common":"Gibuti"},"jpn":{"official":"ジブチ共和国","common":"ジブチ"},"kor":{"official":"지부티 공화국","common":"지부티"},"nld":{"official":"Republiek Djibouti","common":"Djibouti"},"per":{"official":"جمهوری جیبوتی","common":"جیبوتی"},"pol":{"official":"Republika Dżibuti","common":"Dżibuti"},"por":{"official":"República do Djibouti","common":"Djibouti"},"rus":{"official":"Республика Джибути","common":"Джибути"},"slk":{"official":"Džibutská republika","common":"Džibutsko"},"spa":{"official":"República de Djibouti","common":"Djibouti"},"srp":{"official":"Republika Džibuti","common":"Džibuti"},"swe":{"official":"Republiken Djibouti","common":"Djibouti"},"tur":{"official":"Cibuti Cumhuriyeti","common":"Cibuti"},"urd":{"official":"جمہوریہ جبوتی","common":"جبوتی"},"zho":{"official":"吉布提共和国","common":"吉布提"}},"latlng":[11.5,43],"landlocked":false,"borders":["ERI","ETH","SOM"],"area":23200,"flag":"🇩🇯","demonyms":{"eng":{"f":"Djibouti","m":"Djibouti"},"fra":{"f":"Djiboutienne","m":"Djiboutien"}}},{"name":{"common":"Dominica","official":"Commonwealth of Dominica","native":{"eng":{"official":"Commonwealth of Dominica","common":"Dominica"}}},"tld":[".dm"],"cca2":"DM","ccn3":"212","cca3":"DMA","cioc":"DMA","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Latin American and Caribbean Group","currencies":{"XCD":{"name":"Eastern Caribbean dollar","symbol":"$"}},"idd":{"root":"+1","suffixes":["767"]},"capital":["Roseau"],"altSpellings":["DM","Dominique","Wai‘tu kubuli","Commonwealth of Dominica"],"region":"Americas","subregion":"Caribbean","languages":{"eng":"English"},"translations":{"ara":{"official":"كومونولث دومينيكا","common":"دومينيكا"},"ces":{"official":"Dominikánské společenství","common":"Dominika"},"deu":{"official":"Commonwealth von Dominica","common":"Dominica"},"est":{"official":"Dominica Ühendus","common":"Dominica"},"fin":{"official":"Dominican liittovaltio","common":"Dominica"},"fra":{"official":"Commonwealth de la Dominique","common":"Dominique"},"hrv":{"official":"Zajednica Dominika","common":"Dominika"},"hun":{"official":"Dominikai Közösség","common":"Dominikai Közösség"},"ita":{"official":"Commonwealth di Dominica","common":"Dominica"},"jpn":{"official":"ドミニカ国","common":"ドミニカ国"},"kor":{"official":"도미니카 공화국","common":"도미니카 공화국"},"nld":{"official":"Gemenebest Dominica","common":"Dominica"},"per":{"official":"قلمرو همسود دومینیکا","common":"دومینیکا"},"pol":{"official":"Wspólnota Dominiki","common":"Dominika"},"por":{"official":"Comunidade da Dominica","common":"Dominica"},"rus":{"official":"Содружество Доминики","common":"Доминика"},"slk":{"official":"Dominické spoločenstvo","common":"Dominika"},"spa":{"official":"Mancomunidad de Dominica","common":"Dominica"},"srp":{"official":"Komonvelt Dominika","common":"Dominika"},"swe":{"official":"Samväldet Dominica","common":"Dominica"},"tur":{"official":"Dominika Topluluğu","common":"Dominika"},"urd":{"official":"دولتِ مشترکہ ڈومینیکا","common":"ڈومینیکا"},"zho":{"official":"多米尼加共和国","common":"多米尼加"}},"latlng":[15.41666666,-61.33333333],"landlocked":false,"borders":[],"area":751,"flag":"🇩🇲","demonyms":{"eng":{"f":"Dominican","m":"Dominican"},"fra":{"f":"Dominiquaise","m":"Dominiquais"}}},{"name":{"common":"Denmark","official":"Kingdom of Denmark","native":{"dan":{"official":"Kongeriget Danmark","common":"Danmark"}}},"tld":[".dk"],"cca2":"DK","ccn3":"208","cca3":"DNK","cioc":"DEN","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Western European and Others Group","currencies":{"DKK":{"name":"Danish krone","symbol":"kr"}},"idd":{"root":"+4","suffixes":["5"]},"capital":["Copenhagen"],"altSpellings":["DK","Danmark","Kingdom of Denmark","Kongeriget Danmark"],"region":"Europe","subregion":"Northern Europe","languages":{"dan":"Danish"},"translations":{"ara":{"official":"مملكة الدنمارك","common":"الدنمارك"},"ces":{"official":"Dánské království","common":"Dánsko"},"deu":{"official":"Königreich Dänemark","common":"Dänemark"},"est":{"official":"Taani Kuningriik","common":"Taani"},"fin":{"official":"Tanskan kuningaskunta","common":"Tanska"},"fra":{"official":"Royaume du Danemark","common":"Danemark"},"hrv":{"official":"Kraljevina Danska","common":"Danska"},"hun":{"official":"Dán Királyság","common":"Dánia"},"ita":{"official":"Regno di Danimarca","common":"Danimarca"},"jpn":{"official":"デンマーク王国","common":"デンマーク"},"kor":{"official":"덴마크 왕국","common":"덴마크"},"nld":{"official":"Koninkrijk Denemarken","common":"Denemarken"},"per":{"official":"پادشاهی دانمارک","common":"دانمارک"},"pol":{"official":"Królestwo Danii","common":"Dania"},"por":{"official":"Reino da Dinamarca","common":"Dinamarca"},"rus":{"official":"Королевство Дания","common":"Дания"},"slk":{"official":"Dánske kráľovstvo","common":"Dánsko"},"spa":{"official":"Reino de Dinamarca","common":"Dinamarca"},"srp":{"official":"Kraljevina Danska","common":"Danska"},"swe":{"official":"Konungariket Danmark","common":"Danmark"},"tur":{"official":"Danimarka Krallığı","common":"Danimarka"},"urd":{"official":"مملکتِ ڈنمارک","common":"ڈنمارک"},"zho":{"official":"丹麦王国","common":"丹麦"}},"latlng":[56,10],"landlocked":false,"borders":["DEU"],"area":43094,"flag":"🇩🇰","demonyms":{"eng":{"f":"Danish","m":"Danish"},"fra":{"f":"Danoise","m":"Danois"}}},{"name":{"common":"Dominican Republic","official":"Dominican Republic","native":{"spa":{"official":"República Dominicana","common":"República Dominicana"}}},"tld":[".do"],"cca2":"DO","ccn3":"214","cca3":"DOM","cioc":"DOM","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Latin American and Caribbean Group","currencies":{"DOP":{"name":"Dominican peso","symbol":"$"}},"idd":{"root":"+1","suffixes":["809","829","849"]},"capital":["Santo Domingo"],"altSpellings":["DO"],"region":"Americas","subregion":"Caribbean","languages":{"spa":"Spanish"},"translations":{"ara":{"official":"جمهورية الدومينيكان","common":"جمهورية الدومينيكان"},"ces":{"official":"Dominikánská republika","common":"Dominikánská republika"},"deu":{"official":"Dominikanische Republik","common":"Dominikanische Republik"},"est":{"official":"Dominikaani Vabariik","common":"Dominikaani Vabariik"},"fin":{"official":"Dominikaaninen tasavalta","common":"Dominikaaninen tasavalta"},"fra":{"official":"République Dominicaine","common":"République dominicaine"},"hrv":{"official":"Dominikanska Republika","common":"Dominikanska Republika"},"hun":{"official":"Dominikai Köztársaság","common":"Dominikai Köztársaság"},"ita":{"official":"Repubblica Dominicana","common":"Repubblica Dominicana"},"jpn":{"official":"ドミニカ共和国","common":"ドミニカ共和国"},"kor":{"official":"도미니카 공화국","common":"도미니카 공화국"},"nld":{"official":"Dominicaanse Republiek","common":"Dominicaanse Republiek"},"per":{"official":"جمهوری دومینیکن","common":"جمهوری دومینیکن"},"pol":{"official":"Republika Dominikańska","common":"Dominikana"},"por":{"official":"República Dominicana","common":"República Dominicana"},"rus":{"official":"Доминиканская Республика","common":"Доминиканская Республика"},"slk":{"official":"Dominikánska republika","common":"Dominikánska republika"},"spa":{"official":"República Dominicana","common":"República Dominicana"},"srp":{"official":"Dominikanska Republika","common":"Dominikanska Republika"},"swe":{"official":"Dominikanska republiken","common":"Dominikanska republiken"},"tur":{"official":"Dominik Cumhuriyeti","common":"Dominik Cumhuriyeti"},"urd":{"official":"جمہوریہ ڈومینیکن","common":"ڈومینیکن"},"zho":{"official":"多明尼加共和国","common":"多明尼加"}},"latlng":[19,-70.66666666],"landlocked":false,"borders":["HTI"],"area":48671,"flag":"🇩🇴","demonyms":{"eng":{"f":"Dominican","m":"Dominican"},"fra":{"f":"Dominicaine","m":"Dominicain"}}},{"name":{"common":"Algeria","official":"People's Democratic Republic of Algeria","native":{"ara":{"official":"الجمهورية الديمقراطية الشعبية الجزائرية","common":"الجزائر"}}},"tld":[".dz","الجزائر."],"cca2":"DZ","ccn3":"012","cca3":"DZA","cioc":"ALG","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"DZD":{"name":"Algerian dinar","symbol":"د.ج"}},"idd":{"root":"+2","suffixes":["13"]},"capital":["Algiers"],"altSpellings":["DZ","Dzayer","Algérie"],"region":"Africa","subregion":"Northern Africa","languages":{"ara":"Arabic"},"translations":{"ara":{"official":"الجمهورية الديمقراطية الشعبية الجزائرية","common":"الجزائر"},"ces":{"official":"Alžírská demokratická a lidová republika","common":"Alžírsko"},"deu":{"official":"Demokratische Volksrepublik Algerien","common":"Algerien"},"est":{"official":"Alžeeria Demokraatlik Rahvavabariik","common":"Alžeeria"},"fin":{"official":"Algerian demokraattinen kansantasavalta","common":"Algeria"},"fra":{"official":"République démocratique et populaire d'Algérie","common":"Algérie"},"hrv":{"official":"Narodna Demokratska Republika Alžir","common":"Alžir"},"hun":{"official":"Algériai Népi Demokratikus Köztársaság","common":"Algéria"},"ita":{"official":"Repubblica popolare democratica di Algeria","common":"Algeria"},"jpn":{"official":"アルジェリア人民民主共和国","common":"アルジェリア"},"kor":{"official":"알제리 인민 민주 공화국","common":"알제리"},"nld":{"official":"Democratische Volksrepubliek Algerije","common":"Algerije"},"per":{"official":"جمهوری دموکراتیک خلق الجزایر","common":"الجزایر"},"pol":{"official":"Algierska Republika Ludowo-Demokratyczna","common":"Algieria"},"por":{"official":"República Argelina Democrática e Popular","common":"Argélia"},"rus":{"official":"Народно-Демократическая Республика Алжир","common":"Алжир"},"slk":{"official":"Alžírska demokratická ľudová republika","common":"Alžírsko"},"spa":{"official":"República Argelina Democrática y Popular","common":"Argelia"},"srp":{"official":"Narodna Demokratska Republika Alžir","common":"Alžir"},"swe":{"official":"Demokratiska folkrepubliken Algeriet","common":"Algeriet"},"tur":{"official":"Cezayir Demokratik Halk Cumhuriyeti","common":"Cezayir"},"urd":{"official":"عوامی جمہوری جمہوریہ الجزائر","common":"الجزائر"},"zho":{"official":"阿尔及利亚人民民主共和国","common":"阿尔及利亚"}},"latlng":[28,3],"landlocked":false,"borders":["TUN","LBY","NER","ESH","MRT","MLI","MAR"],"area":2381741,"flag":"🇩🇿","demonyms":{"eng":{"f":"Algerian","m":"Algerian"},"fra":{"f":"Algérienne","m":"Algérien"}}},{"name":{"common":"Ecuador","official":"Republic of Ecuador","native":{"spa":{"official":"República del Ecuador","common":"Ecuador"}}},"tld":[".ec"],"cca2":"EC","ccn3":"218","cca3":"ECU","cioc":"ECU","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Latin American and Caribbean Group","currencies":{"USD":{"name":"United States dollar","symbol":"$"}},"idd":{"root":"+5","suffixes":["93"]},"capital":["Quito"],"altSpellings":["EC","Republic of Ecuador","República del Ecuador"],"region":"Americas","subregion":"South America","languages":{"spa":"Spanish"},"translations":{"ara":{"official":"جمهورية الإكوادور","common":"الإكوادور"},"ces":{"official":"Ekvádorská republika","common":"Ekvádor"},"deu":{"official":"Republik Ecuador","common":"Ecuador"},"est":{"official":"Ecuadori Vabariik","common":"Ecuador"},"fin":{"official":"Ecuadorin tasavalta","common":"Ecuador"},"fra":{"official":"République de l'Équateur","common":"Équateur"},"hrv":{"official":"Republika Ekvador","common":"Ekvador"},"hun":{"official":"Ecuadori Köztársaság","common":"Ecuador"},"ita":{"official":"Repubblica dell'Ecuador","common":"Ecuador"},"jpn":{"official":"エクアドル共和国","common":"エクアドル"},"kor":{"official":"에콰도르 공화국","common":"에콰도르"},"nld":{"official":"Republiek Ecuador","common":"Ecuador"},"per":{"official":"جمهوری اکوادور","common":"اکوادور"},"pol":{"official":"Ekwador","common":"Ekwador"},"por":{"official":"República do Equador","common":"Equador"},"rus":{"official":"Республика Эквадор","common":"Эквадор"},"slk":{"official":"Ekvádorská republika","common":"Ekvádor"},"spa":{"official":"República del Ecuador","common":"Ecuador"},"srp":{"official":"Republika Ekvador","common":"Ekvador"},"swe":{"official":"Republiken Ecuador","common":"Ecuador"},"tur":{"official":"Ekvador Cumhuriyeti","common":"Ekvador"},"urd":{"official":"جمہوریہ ایکوڈور","common":"ایکواڈور"},"zho":{"official":"厄瓜多尔共和国","common":"厄瓜多尔"}},"latlng":[-2,-77.5],"landlocked":false,"borders":["COL","PER"],"area":276841,"flag":"🇪🇨","demonyms":{"eng":{"f":"Ecuadorean","m":"Ecuadorean"},"fra":{"f":"Équatorienne","m":"Équatorien"}}},{"name":{"common":"Egypt","official":"Arab Republic of Egypt","native":{"ara":{"official":"جمهورية مصر العربية","common":"مصر"}}},"tld":[".eg",".مصر"],"cca2":"EG","ccn3":"818","cca3":"EGY","cioc":"EGY","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"EGP":{"name":"Egyptian pound","symbol":"£"}},"idd":{"root":"+2","suffixes":["0"]},"capital":["Cairo"],"altSpellings":["EG","Arab Republic of Egypt"],"region":"Africa","subregion":"Northern Africa","languages":{"ara":"Arabic"},"translations":{"ara":{"official":"جمهورية مصر العربية","common":"مصر"},"ces":{"official":"Egyptská arabská republika","common":"Egypt"},"deu":{"official":"Arabische Republik Ägypten","common":"Ägypten"},"est":{"official":"Egiptuse Araabia Vabariik","common":"Egiptus"},"fin":{"official":"Egyptin arabitasavalta","common":"Egypti"},"fra":{"official":"République arabe d'Égypte","common":"Égypte"},"hrv":{"official":"Arapska Republika Egipat","common":"Egipat"},"hun":{"official":"Egyiptomi Arab Köztársaság","common":"Egyiptom"},"ita":{"official":"Repubblica araba d'Egitto","common":"Egitto"},"jpn":{"official":"エジプト・アラブ共和国","common":"エジプト"},"kor":{"official":"이집트 아랍 공화국","common":"이집트"},"nld":{"official":"Arabische Republiek Egypte","common":"Egypte"},"per":{"official":"جمهوری عربی مصر","common":"مصر"},"pol":{"official":"Arabska Republika Egiptu","common":"Egipt"},"por":{"official":"República Árabe do Egipto","common":"Egito"},"rus":{"official":"Арабская Республика Египет","common":"Египет"},"slk":{"official":"Egyptská arabská republika","common":"Egypt"},"spa":{"official":"República Árabe de Egipto","common":"Egipto"},"srp":{"official":"Arapska Republika Egipat","common":"Egipat"},"swe":{"official":"Arabrepubliken Egypten","common":"Egypten"},"tur":{"official":"Mısır Arap Cumhuriyeti","common":"Mısır"},"urd":{"official":"مصری عرب جمہوریہ","common":"مصر"},"zho":{"official":"阿拉伯埃及共和国","common":"埃及"}},"latlng":[27,30],"landlocked":false,"borders":["ISR","LBY","PSE","SDN"],"area":1002450,"flag":"🇪🇬","demonyms":{"eng":{"f":"Egyptian","m":"Egyptian"},"fra":{"f":"Égyptienne","m":"Égyptien"}}},{"name":{"common":"Eritrea","official":"State of Eritrea","native":{"ara":{"official":"دولة إريتريا","common":"إريتريا"},"eng":{"official":"State of Eritrea","common":"Eritrea"},"tir":{"official":"ሃገረ ኤርትራ","common":"ኤርትራ"}}},"tld":[".er"],"cca2":"ER","ccn3":"232","cca3":"ERI","cioc":"ERI","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"ERN":{"name":"Eritrean nakfa","symbol":"Nfk"}},"idd":{"root":"+2","suffixes":["91"]},"capital":["Asmara"],"altSpellings":["ER","State of Eritrea","ሃገረ ኤርትራ","Dawlat Iritriyá","ʾErtrā","Iritriyā"],"region":"Africa","subregion":"Eastern Africa","languages":{"ara":"Arabic","eng":"English","tir":"Tigrinya"},"translations":{"ara":{"official":"دولة إريتريا","common":"إريتريا"},"ces":{"official":"Stát Eritrea","common":"Eritrea"},"deu":{"official":"Staat Eritrea","common":"Eritrea"},"est":{"official":"Eritrea Riik","common":"Eritrea"},"fin":{"official":"Eritrean valtio","common":"Eritrea"},"fra":{"official":"État d'Érythrée","common":"Érythrée"},"hrv":{"official":"Država Eritreji","common":"Eritreja"},"hun":{"official":"Eritrea","common":"Eritrea"},"ita":{"official":"Stato di Eritrea","common":"Eritrea"},"jpn":{"official":"エリトリア国","common":"エリトリア"},"kor":{"official":"에리트레아국","common":"에리트레아"},"nld":{"official":"Staat Eritrea","common":"Eritrea"},"per":{"official":"جمهوری اریتره","common":"اریتره"},"pol":{"official":"Państwo Erytrea","common":"Erytrea"},"por":{"official":"Estado da Eritreia","common":"Eritreia"},"rus":{"official":"Государство Эритрея","common":"Эритрея"},"slk":{"official":"Eritrejský štát","common":"Eritrea"},"spa":{"official":"Estado de Eritrea","common":"Eritrea"},"srp":{"official":"Država Eritreja","common":"Eritreja"},"swe":{"official":"Staten Eritrea","common":"Eritrea"},"tur":{"official":"Eritre Devleti","common":"Eritre"},"urd":{"official":"ریاستِ ارتریا","common":"ارتریا"},"zho":{"official":"厄立特里亚","common":"厄立特里亚"}},"latlng":[15,39],"landlocked":false,"borders":["DJI","ETH","SDN"],"area":117600,"flag":"🇪🇷","demonyms":{"eng":{"f":"Eritrean","m":"Eritrean"},"fra":{"f":"Érythréenne","m":"Érythréen"}}},{"name":{"common":"Western Sahara","official":"Sahrawi Arab Democratic Republic","native":{"ber":{"official":"Sahrawi Arab Democratic Republic","common":"Western Sahara"},"mey":{"official":"الجمهورية العربية الصحراوية الديمقراطية","common":"الصحراء الغربية"},"spa":{"official":"República Árabe Saharaui Democrática","common":"Sahara Occidental"}}},"tld":[".eh"],"cca2":"EH","ccn3":"732","cca3":"ESH","cioc":"","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"DZD":{"name":"Algerian dinar","symbol":"دج"},"MAD":{"name":"Moroccan dirham","symbol":"DH"},"MRU":{"name":"Mauritanian ouguiya","symbol":"UM"}},"idd":{"root":"+2","suffixes":["125288","125289"]},"capital":["El Aaiún"],"altSpellings":["EH","Taneẓroft Tutrimt"],"region":"Africa","subregion":"Northern Africa","languages":{"ber":"Berber","mey":"Hassaniya","spa":"Spanish"},"translations":{"ara":{"official":"الجمهورية العربية الصحراوية الديمقراطية","common":"الصحراء الغربية"},"ces":{"official":"Západní Sahara","common":"Západní Sahara"},"deu":{"official":"Demokratische Arabische Republik Sahara","common":"Westsahara"},"est":{"official":"Lääne-Sahara","common":"Lääne-Sahara"},"fin":{"official":"Länsi-Sahara","common":"Länsi-Sahara"},"fra":{"official":"République arabe sahraouie démocratique","common":"Sahara Occidental"},"hrv":{"official":"Sahrawi Arab Demokratska Republika","common":"Zapadna Sahara"},"hun":{"official":"Nyugat-Szahara","common":"Nyugat-Szahara"},"ita":{"official":"Repubblica Araba Saharawi Democratica","common":"Sahara Occidentale"},"jpn":{"official":"西サハラ","common":"西サハラ"},"kor":{"official":"사하라 아랍 민주 공화국","common":"서사하라"},"nld":{"official":"Sahrawi Arabische Democratische Republiek","common":"Westelijke Sahara"},"per":{"official":"صحرای غربی","common":"صحرای غربی"},"pol":{"official":"Saharyjska Arabska Republika Demokratyczna","common":"Sahara Zachodnia"},"por":{"official":"República Árabe Saharaui Democrática","common":"Saara Ocidental"},"rus":{"official":"Sahrawi Арабская Демократическая Республика","common":"Западная Сахара"},"slk":{"official":"Západná Sahara","common":"Západná Sahara"},"spa":{"official":"República Árabe Saharaui Democrática","common":"Sahara Occidental"},"srp":{"official":"Saharska Arapska Demokratska Republika","common":"Zapadna Sahara"},"swe":{"official":"Västsahara","common":"Västsahara"},"tur":{"official":"Sahra Demokratik Arap Cumhuriyeti","common":"Sahra Demokratik Arap Cumhuriyeti"},"urd":{"official":"صحراوی عرب عوامی جمہوریہ","common":"مغربی صحارا"},"zho":{"official":"阿拉伯撒哈拉民主共和国","common":"西撒哈拉"}},"latlng":[24.5,-13],"landlocked":false,"borders":["DZA","MRT","MAR"],"area":266000,"flag":"🇪🇭","demonyms":{"eng":{"f":"Sahrawi","m":"Sahrawi"},"fra":{"f":"","m":""}}},{"name":{"common":"Spain","official":"Kingdom of Spain","native":{"spa":{"official":"Reino de España","common":"España"}}},"tld":[".es"],"cca2":"ES","ccn3":"724","cca3":"ESP","cioc":"ESP","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Western European and Others Group","currencies":{"EUR":{"name":"Euro","symbol":"€"}},"idd":{"root":"+3","suffixes":["4"]},"capital":["Madrid"],"altSpellings":["ES","Kingdom of Spain","Reino de España"],"region":"Europe","subregion":"Southern Europe","languages":{"spa":"Spanish"},"translations":{"ara":{"official":"مملكة إسبانيا","common":"إسبانيا"},"ces":{"official":"Španělské království","common":"Španělsko"},"deu":{"official":"Königreich Spanien","common":"Spanien"},"est":{"official":"Hispaania Kuningriik","common":"Hispaania"},"fin":{"official":"Espanjan kuningaskunta","common":"Espanja"},"fra":{"official":"Royaume d'Espagne","common":"Espagne"},"hrv":{"official":"Kraljevina Španjolska","common":"Španjolska"},"hun":{"official":"Spanyol Királyság","common":"Spanyolország"},"ita":{"official":"Regno di Spagna","common":"Spagna"},"jpn":{"official":"スペイン","common":"スペイン"},"kor":{"official":"에스파냐 왕국","common":"스페인"},"nld":{"official":"Koninkrijk Spanje","common":"Spanje"},"per":{"official":"پادشاهی اسپانیا","common":"اسپانیا"},"pol":{"official":"Królestwo Hiszpanii ","common":"Hiszpania"},"por":{"official":"Reino de Espanha","common":"Espanha"},"rus":{"official":"Королевство Испания","common":"Испания"},"slk":{"official":"Španielske kráľovstvo","common":"Španielsko"},"spa":{"official":"Reino de España","common":"España"},"srp":{"official":"Kraljevina Španija","common":"Španija"},"swe":{"official":"Konungariket Spanien","common":"Spanien"},"tur":{"official":"İspanya Krallığı","common":"İspanya"},"urd":{"official":"مملکتِ ہسپانیہ","common":"ہسپانیہ"},"zho":{"official":"西班牙王国","common":"西班牙"}},"latlng":[40,-4],"landlocked":false,"borders":["AND","FRA","GIB","PRT","MAR"],"area":505992,"flag":"🇪🇸","demonyms":{"eng":{"f":"Spanish","m":"Spanish"},"fra":{"f":"Espagnole","m":"Espagnol"}}},{"name":{"common":"Estonia","official":"Republic of Estonia","native":{"est":{"official":"Eesti Vabariik","common":"Eesti"}}},"tld":[".ee"],"cca2":"EE","ccn3":"233","cca3":"EST","cioc":"EST","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Eastern European Group","currencies":{"EUR":{"name":"Euro","symbol":"€"}},"idd":{"root":"+3","suffixes":["72"]},"capital":["Tallinn"],"altSpellings":["EE","Eesti","Republic of Estonia","Eesti Vabariik"],"region":"Europe","subregion":"Northern Europe","languages":{"est":"Estonian"},"translations":{"ara":{"official":"جمهورية إستونيا","common":"إستونيا"},"ces":{"official":"Estonská republika","common":"Estonsko"},"deu":{"official":"Republik Estland","common":"Estland"},"est":{"official":"Eesti Vabariik","common":"Eesti"},"fin":{"official":"Viron tasavalta","common":"Viro"},"fra":{"official":"République d'Estonie","common":"Estonie"},"hrv":{"official":"Republika Estonija","common":"Estonija"},"hun":{"official":"Észt Köztársaság","common":"Észtország"},"ita":{"official":"Repubblica di Estonia","common":"Estonia"},"jpn":{"official":"エストニア共和国","common":"エストニア"},"kor":{"official":"에스토니아 공화국","common":"에스토니아"},"nld":{"official":"Republiek Estland","common":"Estland"},"per":{"official":"جمهوری استونی","common":"اِستونی"},"pol":{"official":"Republika Estońska","common":"Estonia"},"por":{"official":"República da Estónia","common":"Estónia"},"rus":{"official":"Эстонская Республика","common":"Эстония"},"slk":{"official":"Estónska republika","common":"Estónsko"},"spa":{"official":"República de Estonia","common":"Estonia"},"srp":{"official":"Republika Estonija","common":"Estonija"},"swe":{"official":"Republiken Estland","common":"Estland"},"tur":{"official":"Estonya Cumhuriyeti","common":"Estonya"},"urd":{"official":"جمہوریہ اسٹونیا","common":"اسٹونیا"},"zho":{"official":"爱沙尼亚共和国","common":"爱沙尼亚"}},"latlng":[59,26],"landlocked":false,"borders":["LVA","RUS"],"area":45227,"flag":"🇪🇪","demonyms":{"eng":{"f":"Estonian","m":"Estonian"},"fra":{"f":"Estonienne","m":"Estonien"}}},{"name":{"common":"Ethiopia","official":"Federal Democratic Republic of Ethiopia","native":{"amh":{"official":"የኢትዮጵያ ፌዴራላዊ ዲሞክራሲያዊ ሪፐብሊክ","common":"ኢትዮጵያ"}}},"tld":[".et"],"cca2":"ET","ccn3":"231","cca3":"ETH","cioc":"ETH","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"ETB":{"name":"Ethiopian birr","symbol":"Br"}},"idd":{"root":"+2","suffixes":["51"]},"capital":["Addis Ababa"],"altSpellings":["ET","ʾĪtyōṗṗyā","Federal Democratic Republic of Ethiopia","የኢትዮጵያ ፌዴራላዊ ዲሞክራሲያዊ ሪፐብሊክ"],"region":"Africa","subregion":"Eastern Africa","languages":{"amh":"Amharic"},"translations":{"ara":{"official":"جمهورية إثيوبيا الفدرالية الديموقراطية","common":"إثيوبيا"},"ces":{"official":"Etiopská federativní demokratická republika","common":"Etiopie"},"deu":{"official":"Demokratische Bundesrepublik Äthiopien","common":"Äthiopien"},"est":{"official":"Etioopia Demokraatlik Liitvabariik","common":"Etioopia"},"fin":{"official":"Etiopian demokraattinen liittotasavalta","common":"Etiopia"},"fra":{"official":"République fédérale démocratique d'Éthiopie","common":"Éthiopie"},"hrv":{"official":"Savezna Demokratska Republika Etiopija","common":"Etiopija"},"hun":{"official":"Etióp Szövetségi Demokratikus Köztársaság","common":"Etiópia"},"ita":{"official":"Repubblica federale democratica di Etiopia","common":"Etiopia"},"jpn":{"official":"エチオピア連邦民主共和国","common":"エチオピア"},"kor":{"official":"에티오피아 연방 민주 공화국","common":"에티오피아"},"nld":{"official":"Federale Democratische Republiek Ethiopië","common":"Ethiopië"},"per":{"official":"جمهوری فدرال دموکراتیک اتیوپی","common":"اِتیوپی"},"pol":{"official":"Federalna Demokratyczna Republika Etiopii","common":"Etiopia"},"por":{"official":"República Federal Democrática da Etiópia","common":"Etiópia"},"rus":{"official":"Федеративная Демократическая Республика Эфиопия","common":"Эфиопия"},"slk":{"official":"Etiópska federatívna demokratická republika","common":"Etiópia"},"spa":{"official":"República Democrática Federal de Etiopía","common":"Etiopía"},"srp":{"official":"Savezna Demokratska Republika Etiopija","common":"Etiopija"},"swe":{"official":"Demokratiska förbundsrepubliken Etiopien","common":"Etiopien"},"tur":{"official":"Etiyopya Federal Demokratik Cumhuriyeti","common":"Etiyopya"},"urd":{"official":"وفاقی جمہوری جمہوریہ ایتھوپیا","common":"ایتھوپیا"},"zho":{"official":"埃塞俄比亚联邦民主共和国","common":"埃塞俄比亚"}},"latlng":[8,38],"landlocked":true,"borders":["DJI","ERI","KEN","SOM","SSD","SDN"],"area":1104300,"flag":"🇪🇹","demonyms":{"eng":{"f":"Ethiopian","m":"Ethiopian"},"fra":{"f":"Éthiopienne","m":"Éthiopien"}}},{"name":{"common":"Finland","official":"Republic of Finland","native":{"fin":{"official":"Suomen tasavalta","common":"Suomi"},"swe":{"official":"Republiken Finland","common":"Finland"}}},"tld":[".fi"],"cca2":"FI","ccn3":"246","cca3":"FIN","cioc":"FIN","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Western European and Others Group","currencies":{"EUR":{"name":"Euro","symbol":"€"}},"idd":{"root":"+3","suffixes":["58"]},"capital":["Helsinki"],"altSpellings":["FI","Suomi","Republic of Finland","Suomen tasavalta","Republiken Finland"],"region":"Europe","subregion":"Northern Europe","languages":{"fin":"Finnish","swe":"Swedish"},"translations":{"ara":{"official":"جمهورية فنلندا","common":"فنلندا"},"ces":{"official":"Finská republika","common":"Finsko"},"deu":{"official":"Republik Finnland","common":"Finnland"},"est":{"official":"Soome Vabariik","common":"Soome"},"fin":{"official":"Suomen tasavalta","common":"Suomi"},"fra":{"official":"République de Finlande","common":"Finlande"},"hrv":{"official":"Republika Finska","common":"Finska"},"hun":{"official":"Finn Köztársaság","common":"Finnország"},"ita":{"official":"Repubblica di Finlandia","common":"Finlandia"},"jpn":{"official":"フィンランド共和国","common":"フィンランド"},"kor":{"official":"핀란드 공화국","common":"핀란드"},"nld":{"official":"Republiek Finland","common":"Finland"},"per":{"official":"جمهوری فنلاند","common":"فنلاند"},"pol":{"official":"Republika Finlandii","common":"Finlandia"},"por":{"official":"República da Finlândia","common":"Finlândia"},"rus":{"official":"Финляндская Республика","common":"Финляндия"},"slk":{"official":"Fínska republika","common":"Fínsko"},"spa":{"official":"República de Finlandia","common":"Finlandia"},"srp":{"official":"Republika Finska","common":"Finska"},"swe":{"official":"Republiken Finland","common":"Finland"},"tur":{"official":"Finlandiya Cumhuriyeti","common":"Finlandiya"},"urd":{"official":"جمہوریہ فن لینڈ","common":"فن لینڈ"},"zho":{"official":"芬兰共和国","common":"芬兰"}},"latlng":[64,26],"landlocked":false,"borders":["NOR","SWE","RUS"],"area":338424,"flag":"🇫🇮","demonyms":{"eng":{"f":"Finnish","m":"Finnish"},"fra":{"f":"Finlandaise","m":"Finlandais"}}},{"name":{"common":"Fiji","official":"Republic of Fiji","native":{"eng":{"official":"Republic of Fiji","common":"Fiji"},"fij":{"official":"Matanitu Tugalala o Viti","common":"Viti"},"hif":{"official":"रिपब्लिक ऑफ फीजी","common":"फिजी"}}},"tld":[".fj"],"cca2":"FJ","ccn3":"242","cca3":"FJI","cioc":"FIJ","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"FJD":{"name":"Fijian dollar","symbol":"$"}},"idd":{"root":"+6","suffixes":["79"]},"capital":["Suva"],"altSpellings":["FJ","Viti","Republic of Fiji","Matanitu ko Viti","Fijī Gaṇarājya"],"region":"Oceania","subregion":"Melanesia","languages":{"eng":"English","fij":"Fijian","hif":"Fiji Hindi"},"translations":{"ara":{"official":"جمهورية جزر فيجي","common":"فيجي"},"ces":{"official":"Republika Fidžijských ostrovů","common":"Fidži"},"deu":{"official":"Republik Fidschi","common":"Fidschi"},"est":{"official":"Fidži Vabariik","common":"Fidži"},"fin":{"official":"Fidžin tasavalta","common":"Fidži"},"fra":{"official":"République des Fidji","common":"Fidji"},"hrv":{"official":"Republika Fidži","common":"Fiđi"},"hun":{"official":"Fidzsi-szigeteki Köztársaság","common":"Fidzsi-szigetek"},"ita":{"official":"Repubblica di Figi","common":"Figi"},"jpn":{"official":"フィジー諸島共和国","common":"フィジー"},"kor":{"official":"피지 공화국","common":"피지"},"nld":{"official":"Republiek Fiji","common":"Fiji"},"per":{"official":"جمهوری جزایر فیجی","common":"فیجی"},"pol":{"official":"Republika Fidżi","common":"Fidżi"},"por":{"official":"República de Fiji","common":"Fiji"},"rus":{"official":"Республика Фиджи","common":"Фиджи"},"slk":{"official":"Fidžijská republika","common":"Fidži"},"spa":{"official":"República de Fiji","common":"Fiyi"},"srp":{"official":"Republika Fidži","common":"Fidži"},"swe":{"official":"Republiken Fiji","common":"Fiji"},"tur":{"official":"Fiji Cumhuriyeti","common":"Fiji"},"urd":{"official":"جمہوریہ فجی","common":"فجی"},"zho":{"official":"斐济共和国","common":"斐济"}},"latlng":[-18,175],"landlocked":false,"borders":[],"area":18272,"flag":"🇫🇯","demonyms":{"eng":{"f":"Fijian","m":"Fijian"},"fra":{"f":"Fidjienne","m":"Fidjien"}}},{"name":{"common":"Falkland Islands","official":"Falkland Islands","native":{"eng":{"official":"Falkland Islands","common":"Falkland Islands"}}},"tld":[".fk"],"cca2":"FK","ccn3":"238","cca3":"FLK","cioc":"","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"FKP":{"name":"Falkland Islands pound","symbol":"£"}},"idd":{"root":"+5","suffixes":["00"]},"capital":["Stanley"],"altSpellings":["FK","Islas Malvinas","Falkland Islands (Malvinas)"],"region":"Americas","subregion":"South America","languages":{"eng":"English"},"translations":{"ara":{"official":"جزر فوكلاند","common":"جزر فوكلاند"},"ces":{"official":"Falklandské ostrovy","common":"Falklandy"},"deu":{"official":"Falklandinseln","common":"Falklandinseln"},"est":{"official":"Falklandi saared","common":"Falklandi saared"},"fin":{"official":"Falkandinsaaret","common":"Falkandinsaaret"},"fra":{"official":"Îles Malouines","common":"Îles Malouines"},"hrv":{"official":"Falklandski otoci","common":"Falklandski Otoci"},"hun":{"official":"Falkland-szigetek","common":"Falkland-szigetek"},"ita":{"official":"Isole Falkland","common":"Isole Falkland o Isole Malvine"},"jpn":{"official":"フォークランド(マルビナス)諸島","common":"フォークランド諸島"},"kor":{"official":"포클랜드 제도","common":"포클랜드 제도"},"nld":{"official":"Falkland eilanden","common":"Falklandeilanden"},"per":{"official":"جزایر فالکلند","common":"جزایر فالکلند"},"pol":{"official":"Falklandy","common":"Falklandy"},"por":{"official":"Ilhas Malvinas","common":"Ilhas Malvinas"},"rus":{"official":"Фолклендские острова","common":"Фолклендские острова"},"slk":{"official":"Falklandské ostrovy","common":"Falklandy"},"spa":{"official":"islas Malvinas","common":"Islas Malvinas"},"srp":{"official":"Folklandska ostrva","common":"Folklandska ostrva"},"swe":{"official":"Falklandsöarna","common":"Falklandsöarna"},"tur":{"official":"Falkland (Malvina) Adaları","common":"Falkland (Malvina) Adaları"},"urd":{"official":"جزائر فاکلینڈ","common":"جزائر فاکلینڈ"},"zho":{"official":"福克兰群岛","common":"福克兰群岛"}},"latlng":[-51.75,-59],"landlocked":false,"borders":[],"area":12173,"flag":"🇫🇰","demonyms":{"eng":{"f":"Falkland Islander","m":"Falkland Islander"},"fra":{"f":"Malouinne","m":"Malouin"}}},{"name":{"common":"France","official":"French Republic","native":{"fra":{"official":"République française","common":"France"}}},"tld":[".fr"],"cca2":"FR","ccn3":"250","cca3":"FRA","cioc":"FRA","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Western European and Others Group","currencies":{"EUR":{"name":"Euro","symbol":"€"}},"idd":{"root":"+3","suffixes":["3"]},"capital":["Paris"],"altSpellings":["FR","French Republic","République française"],"region":"Europe","subregion":"Western Europe","languages":{"fra":"French"},"translations":{"ara":{"official":"الجمهورية الفرنسية","common":"فرنسا"},"ces":{"official":"Francouzská republika","common":"Francie"},"deu":{"official":"Französische Republik","common":"Frankreich"},"est":{"official":"Prantsuse Vabariik","common":"Prantsusmaa"},"fin":{"official":"Ranskan tasavalta","common":"Ranska"},"fra":{"official":"République française","common":"France"},"hrv":{"official":"Francuska Republika","common":"Francuska"},"hun":{"official":"Francia Köztársaság","common":"Franciaország"},"ita":{"official":"Repubblica francese","common":"Francia"},"jpn":{"official":"フランス共和国","common":"フランス"},"kor":{"official":"프랑스 공화국","common":"프랑스"},"nld":{"official":"Franse Republiek","common":"Frankrijk"},"per":{"official":"جمهوری فرانسه","common":"فرانسه"},"pol":{"official":"Republika Francuska","common":"Francja"},"por":{"official":"República Francesa","common":"França"},"rus":{"official":"Французская Республика","common":"Франция"},"slk":{"official":"Francúzska republika","common":"Francúzsko"},"spa":{"official":"República francés","common":"Francia"},"srp":{"official":"Republika Francuska","common":"Francuska"},"swe":{"official":"Republiken Frankrike","common":"Frankrike"},"tur":{"official":"Fransa Cumhuriyeti","common":"Fransa"},"urd":{"official":"جمہوریہ فرانس","common":"فرانس"},"zho":{"official":"法兰西共和国","common":"法国"}},"latlng":[46,2],"landlocked":false,"borders":["AND","BEL","DEU","ITA","LUX","MCO","ESP","CHE"],"area":551695,"flag":"🇫🇷","demonyms":{"eng":{"f":"French","m":"French"},"fra":{"f":"Française","m":"Français"}}},{"name":{"common":"Faroe Islands","official":"Faroe Islands","native":{"dan":{"official":"Færøerne","common":"Færøerne"},"fao":{"official":"Føroyar","common":"Føroyar"}}},"tld":[".fo"],"cca2":"FO","ccn3":"234","cca3":"FRO","cioc":"","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"DKK":{"name":"Danish krone","symbol":"kr"},"FOK":{"name":"Faroese króna","symbol":"kr"}},"idd":{"root":"+2","suffixes":["98"]},"capital":["Tórshavn"],"altSpellings":["FO","Føroyar","Færøerne","Faeroe Islands"],"region":"Europe","subregion":"Northern Europe","languages":{"dan":"Danish","fao":"Faroese"},"translations":{"ara":{"official":"جزر فارو","common":"جزر فارو"},"ces":{"official":"Faerské ostrovy","common":"Faerské ostrovy"},"deu":{"official":"Färöer","common":"Färöer-Inseln"},"est":{"official":"Fääri saared","common":"Fääri saared"},"fin":{"official":"Färsaaret","common":"Färsaaret"},"fra":{"official":"Îles Féroé","common":"Îles Féroé"},"hrv":{"official":"Farski Otoci","common":"Farski Otoci"},"hun":{"official":"Feröer","common":"Feröer"},"ita":{"official":"Isole Faroe","common":"Isole Far Oer"},"jpn":{"official":"フェロー諸島","common":"フェロー諸島"},"kor":{"official":"페로 제도","common":"페로 제도"},"nld":{"official":"Faeröer","common":"Faeröer"},"per":{"official":"جزایر فاروئه","common":"جزایر فاروئه"},"pol":{"official":"Wyspy Owcze","common":"Wyspy Owcze"},"por":{"official":"Ilhas Faroe","common":"Ilhas Faroé"},"rus":{"official":"Фарерские острова","common":"Фарерские острова"},"slk":{"official":"Faerské ostrovy","common":"Faerské ostrovy"},"spa":{"official":"Islas Feroe","common":"Islas Faroe"},"srp":{"official":"Farska Ostrva","common":"Farska Ostrva"},"swe":{"official":"Färöarna","common":"Färöarna"},"tur":{"official":"Faroe Adaları","common":"Faroe Adaları"},"urd":{"official":"جزائر فارو","common":"جزائر فارو"},"zho":{"official":"法罗群岛","common":"法罗群岛"}},"latlng":[62,-7],"landlocked":false,"borders":[],"area":1393,"flag":"🇫🇴","demonyms":{"eng":{"f":"Faroese","m":"Faroese"},"fra":{"f":"Féroïenne","m":"Féroïen"}}},{"name":{"common":"Micronesia","official":"Federated States of Micronesia","native":{"eng":{"official":"Federated States of Micronesia","common":"Micronesia"}}},"tld":[".fm"],"cca2":"FM","ccn3":"583","cca3":"FSM","cioc":"FSM","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{},"idd":{"root":"+6","suffixes":["91"]},"capital":["Palikir"],"altSpellings":["FM","Federated States of Micronesia","Micronesia, Federated States of"],"region":"Oceania","subregion":"Micronesia","languages":{"eng":"English"},"translations":{"ara":{"official":"ولايات ميكرونيسيا المتحدة","common":"ميكرونيسيا"},"ces":{"official":"Federativní státy Mikronésie","common":"Mikronésie"},"deu":{"official":"Föderierte Staaten von Mikronesien","common":"Mikronesien"},"est":{"official":"Mikroneesia Liiduriigid","common":"Mikroneesia"},"fin":{"official":"Mikronesian liittovaltio","common":"Mikronesia"},"fra":{"official":"États fédérés de Micronésie","common":"Micronésie"},"hrv":{"official":"Savezne Države Mikronezije","common":"Mikronezija"},"hun":{"official":"Mikronéziai Szövetségi Államok","common":"Mikronéziai Szövetségi Államok"},"ita":{"official":"Stati federati di Micronesia","common":"Micronesia"},"jpn":{"official":"ミクロネシア連邦","common":"ミクロネシア"},"kor":{"official":"미크로네시아 연방","common":"미크로네시아"},"nld":{"official":"Federale Staten van Micronesia","common":"Micronesië"},"per":{"official":"ایالات فدرال میکرونزی","common":"میکرونزی"},"pol":{"official":"Sfederowane Stany Mikronezji","common":"Mikronezja"},"por":{"official":"Estados Federados da Micronésia","common":"Micronésia"},"rus":{"official":"Федеративные Штаты Микронезии","common":"Федеративные Штаты Микронезии"},"slk":{"official":"Mikronézske federatívne štáty","common":"Mikronézia"},"spa":{"official":"Estados Federados de Micronesia","common":"Micronesia"},"srp":{"official":"Savezne Države Mikronezije","common":"Mikronezija"},"swe":{"official":"Mikronesiska federationen","common":"Mikronesiska federationen"},"tur":{"official":"Mikronezya Federal Devletleri","common":"Mikronezya"},"urd":{"official":"ریاستہائے وفاقیہ مائکرونیشیا","common":"مائکرونیشیا"},"zho":{"official":"密克罗尼西亚联邦","common":"密克罗尼西亚"}},"latlng":[6.91666666,158.25],"landlocked":false,"borders":[],"area":702,"flag":"🇫🇲","demonyms":{"eng":{"f":"Micronesian","m":"Micronesian"},"fra":{"f":"Micronésienne","m":"Micronésien"}}},{"name":{"common":"Gabon","official":"Gabonese Republic","native":{"fra":{"official":"République gabonaise","common":"Gabon"}}},"tld":[".ga"],"cca2":"GA","ccn3":"266","cca3":"GAB","cioc":"GAB","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"XAF":{"name":"Central African CFA franc","symbol":"Fr"}},"idd":{"root":"+2","suffixes":["41"]},"capital":["Libreville"],"altSpellings":["GA","Gabonese Republic","République Gabonaise"],"region":"Africa","subregion":"Middle Africa","languages":{"fra":"French"},"translations":{"ara":{"official":"جمهورية الغابون","common":"الغابون"},"ces":{"official":"Gabonská republika","common":"Gabon"},"deu":{"official":"Gabunische Republik","common":"Gabun"},"est":{"official":"Gaboni Vabariik","common":"Gabon"},"fin":{"official":"Gabonin tasavalta","common":"Gabon"},"fra":{"official":"République gabonaise","common":"Gabon"},"hrv":{"official":"Gabon Republika","common":"Gabon"},"hun":{"official":"Gaboni Köztársaság","common":"Gabon"},"ita":{"official":"Repubblica gabonese","common":"Gabon"},"jpn":{"official":"ガボン共和国","common":"ガボン"},"kor":{"official":"가봉 공화국","common":"가봉"},"nld":{"official":"Republiek Gabon","common":"Gabon"},"per":{"official":"جمهوری گابُن","common":"گابن"},"pol":{"official":"Republika Gabońska","common":"Gabon"},"por":{"official":"República do Gabão","common":"Gabão"},"rus":{"official":"Габона Республика","common":"Габон"},"slk":{"official":"Gabonská republika","common":"Gabon"},"spa":{"official":"República de Gabón","common":"Gabón"},"srp":{"official":"Gabonska Republika","common":"Gabon"},"swe":{"official":"Republiken Gabon","common":"Gabon"},"tur":{"official":"Gabon Cumhuriyeti","common":"Gabon"},"urd":{"official":"جمہوریہ گیبون","common":"گیبون"},"zho":{"official":"加蓬共和国","common":"加蓬"}},"latlng":[-1,11.75],"landlocked":false,"borders":["CMR","COG","GNQ"],"area":267668,"flag":"🇬🇦","demonyms":{"eng":{"f":"Gabonese","m":"Gabonese"},"fra":{"f":"Gabonaise","m":"Gabonais"}}},{"name":{"common":"United Kingdom","official":"United Kingdom of Great Britain and Northern Ireland","native":{"eng":{"official":"United Kingdom of Great Britain and Northern Ireland","common":"United Kingdom"}}},"tld":[".uk"],"cca2":"GB","ccn3":"826","cca3":"GBR","cioc":"GBR","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Western European and Others Group","currencies":{"GBP":{"name":"British pound","symbol":"£"}},"idd":{"root":"+4","suffixes":["4"]},"capital":["London"],"altSpellings":["GB","UK","Great Britain"],"region":"Europe","subregion":"Northern Europe","languages":{"eng":"English"},"translations":{"ara":{"official":"المملكة المتحدة لبريطانيا العظمى وايرلندا الشمالية","common":"المملكة المتحدة"},"ces":{"official":"Spojené království Velké Británie a Severního Irska","common":"Spojené království"},"deu":{"official":"Vereinigtes Königreich Großbritannien und Nordirland","common":"Vereinigtes Königreich"},"est":{"official":"Suurbritannia ja Põhja-Iiri Ühendkuningriik","common":"Suurbritannia"},"fin":{"official":"Ison-Britannian ja Pohjois-Irlannin yhdistynyt kuningaskunta","common":"Yhdistynyt kuningaskunta"},"fra":{"official":"Royaume-Uni de Grande-Bretagne et d'Irlande du Nord","common":"Royaume-Uni"},"hrv":{"official":"Ujedinjeno Kraljevstvo Velike Britanije i Sjeverne Irske","common":"Ujedinjeno Kraljevstvo"},"hun":{"official":"Nagy-Britannia és Észak-Írország Egyesült Királysága","common":"Egyesült Királyság"},"ita":{"official":"Regno Unito di Gran Bretagna e Irlanda del Nord","common":"Regno Unito"},"jpn":{"official":"グレートブリテン及び北アイルランド連合王国","common":"イギリス"},"kor":{"official":"그레이트브리튼 북아일랜드 연합 왕국","common":"영국"},"nld":{"official":"Verenigd Koninkrijk van Groot-Brittannië en Noord-Ierland","common":"Verenigd Koninkrijk"},"per":{"official":"پادشاهی متحد بریتانیای کبیر و ایرلند شمالی","common":"انگلیس"},"pol":{"official":"Zjednoczone Królestwo Wielkiej Brytanii i Irlandii Północnej","common":"Zjednoczone Królestwo"},"por":{"official":"Reino Unido da Grã-Bretanha e Irlanda do Norte","common":"Reino Unido"},"rus":{"official":"Соединенное Королевство Великобритании и Северной Ирландии","common":"Великобритания"},"slk":{"official":"Spojené kráľovstvo Veľkej Británie a SevernéhoÌrska","common":"Veľká Británia (Spojené kráľovstvo)"},"spa":{"official":"Reino Unido de Gran Bretaña e Irlanda del Norte","common":"Reino Unido"},"srp":{"official":"Ujedinjeno Kraljevstvo Velike Britanije i Severne Irske","common":"Ujedinjeno Kraljevstvo"},"swe":{"official":"Förenade konungariket Storbritannien och Nordirland","common":"Storbritannien"},"tur":{"official":"Büyük Britanya ve Kuzey İrlanda Birleşik Krallığı","common":"Birleşik Krallık"},"urd":{"official":"مملکتِ متحدہ برطانیہ عظمی و شمالی آئرلینڈ","common":"مملکتِ متحدہ"},"zho":{"official":"大不列颠及北爱尔兰联合王国","common":"英国"}},"latlng":[54,-2],"landlocked":false,"borders":["IRL"],"area":242900,"flag":"🇬🇧","demonyms":{"eng":{"f":"British","m":"British"},"fra":{"f":"Britannique","m":"Britannique"}}},{"name":{"common":"Georgia","official":"Georgia","native":{"kat":{"official":"საქართველო","common":"საქართველო"}}},"tld":[".ge"],"cca2":"GE","ccn3":"268","cca3":"GEO","cioc":"GEO","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Eastern European Group","currencies":{"GEL":{"name":"lari","symbol":"₾"}},"idd":{"root":"+9","suffixes":["95"]},"capital":["Tbilisi"],"altSpellings":["GE","Sakartvelo"],"region":"Asia","subregion":"Western Asia","languages":{"kat":"Georgian"},"translations":{"ara":{"official":"جورجيا","common":"جورجيا"},"ces":{"official":"Gruzie","common":"Gruzie"},"deu":{"official":"Georgien","common":"Georgien"},"est":{"official":"Gruusia","common":"Gruusia"},"fin":{"official":"Georgia","common":"Georgia"},"fra":{"official":"République de Géorgie","common":"Géorgie"},"hrv":{"official":"Gruzija","common":"Gruzija"},"hun":{"official":"Grúzia","common":"Grúzia"},"ita":{"official":"Georgia","common":"Georgia"},"jpn":{"official":"ジョージア","common":"ジョージア"},"kor":{"official":"조지아","common":"조지아"},"nld":{"official":"Georgia","common":"Georgië"},"per":{"official":"گرجستان","common":"گرجستان"},"pol":{"official":"Gruzja","common":"Gruzja"},"por":{"official":"Georgia","common":"Geórgia"},"rus":{"official":"Грузия","common":"Грузия"},"slk":{"official":"Gruzínsko","common":"Gruzínsko"},"spa":{"official":"Georgia","common":"Georgia"},"srp":{"official":"Gruzija","common":"Gruzija"},"swe":{"official":"Georgien","common":"Georgien"},"tur":{"official":"Gürcistan","common":"Gürcistan"},"urd":{"official":"جارجیا","common":"جارجیا"},"zho":{"official":"格鲁吉亚","common":"格鲁吉亚"}},"latlng":[42,43.5],"landlocked":false,"borders":["ARM","AZE","RUS","TUR"],"area":69700,"flag":"🇬🇪","demonyms":{"eng":{"f":"Georgian","m":"Georgian"},"fra":{"f":"Géorgienne","m":"Géorgien"}}},{"name":{"common":"Guernsey","official":"Bailiwick of Guernsey","native":{"eng":{"official":"Bailiwick of Guernsey","common":"Guernsey"},"fra":{"official":"Bailliage de Guernesey","common":"Guernesey"},"nfr":{"official":"Dgèrnésiais","common":"Dgèrnésiais"}}},"tld":[".gg"],"cca2":"GG","ccn3":"831","cca3":"GGY","cioc":"","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"GBP":{"name":"British pound","symbol":"£"},"GGP":{"name":"Guernsey pound","symbol":"£"}},"idd":{"root":"+4","suffixes":["4"]},"capital":["St. Peter Port"],"altSpellings":["GG","Bailiwick of Guernsey","Bailliage de Guernesey"],"region":"Europe","subregion":"Northern Europe","languages":{"eng":"English","fra":"French","nfr":"Guernésiais"},"translations":{"ara":{"official":"غيرنزي","common":"غيرنزي"},"ces":{"official":"Rychtářství Guernsey","common":"Guernsey"},"deu":{"official":"Vogtei Guernsey","common":"Guernsey"},"est":{"official":"Guernsey foogtkond","common":"Guernsey"},"fin":{"official":"Guernsey","common":"Guernsey"},"fra":{"official":"Bailliage de Guernesey","common":"Guernesey"},"hrv":{"official":"Struka Guernsey","common":"Guernsey"},"hun":{"official":"Guernsey","common":"Guernsey"},"ita":{"official":"Baliato di Guernsey","common":"Guernsey"},"jpn":{"official":"ガーンジー島","common":"ガーンジー"},"kor":{"official":"건지 섬","common":"건지 섬"},"nld":{"official":"Baljuwschap Guernsey","common":"Guernsey"},"per":{"official":"گرنزی","common":"گرنزی"},"pol":{"official":"Baliwat Guernsey","common":"Guernsey"},"por":{"official":"Bailiado de Guernsey","common":"Guernsey"},"rus":{"official":"Коронное владение Гернси","common":"Гернси"},"slk":{"official":"Guernsey","common":"Guernsey"},"spa":{"official":"Bailía de Guernsey","common":"Guernsey"},"srp":{"official":"Bejlivik Gernzi","common":"Gernzi"},"swe":{"official":"Guernsey","common":"Guernsey"},"tur":{"official":"Guernsey Muhafızlığı","common":"Guernsey"},"urd":{"official":"گرنزی رودبار","common":"گرنزی"},"zho":{"official":"根西岛","common":"根西岛"}},"latlng":[49.46666666,-2.58333333],"landlocked":false,"borders":[],"area":78,"flag":"🇬🇬","demonyms":{"eng":{"f":"Channel Islander","m":"Channel Islander"},"fra":{"f":"Guernesiaise","m":"Guernesiais"}}},{"name":{"common":"Ghana","official":"Republic of Ghana","native":{"eng":{"official":"Republic of Ghana","common":"Ghana"}}},"tld":[".gh"],"cca2":"GH","ccn3":"288","cca3":"GHA","cioc":"GHA","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"GHS":{"name":"Ghanaian cedi","symbol":"₵"}},"idd":{"root":"+2","suffixes":["33"]},"capital":["Accra"],"altSpellings":["GH"],"region":"Africa","subregion":"Western Africa","languages":{"eng":"English"},"translations":{"ara":{"official":"جمهورية غانا","common":"غانا"},"ces":{"official":"Ghanská republika","common":"Ghana"},"deu":{"official":"Republik Ghana","common":"Ghana"},"est":{"official":"Ghana Vabariik","common":"Ghana"},"fin":{"official":"Ghanan tasavalta","common":"Ghana"},"fra":{"official":"République du Ghana","common":"Ghana"},"hrv":{"official":"Republika Gana","common":"Gana"},"hun":{"official":"Ghánai Köztársaság","common":"Ghána"},"ita":{"official":"Repubblica del Ghana","common":"Ghana"},"jpn":{"official":"ガーナ共和国","common":"ガーナ"},"kor":{"official":"가나 공화국","common":"가나"},"nld":{"official":"Republiek Ghana","common":"Ghana"},"per":{"official":"جمهوری غنا","common":"غنا"},"pol":{"official":"Republika Ghany","common":"Ghana"},"por":{"official":"República do Gana","common":"Gana"},"rus":{"official":"Республика Гана","common":"Гана"},"slk":{"official":"Ghanská republika","common":"Ghana"},"spa":{"official":"República de Ghana","common":"Ghana"},"srp":{"official":"Republika Gana","common":"Gana"},"swe":{"official":"Republiken Ghana","common":"Ghana"},"tur":{"official":"Gana Cumhuriyeti","common":"Gana"},"urd":{"official":"جمہوریہ گھانا","common":"گھانا"},"zho":{"official":"加纳共和国","common":"加纳"}},"latlng":[8,-2],"landlocked":false,"borders":["BFA","CIV","TGO"],"area":238533,"flag":"🇬🇭","demonyms":{"eng":{"f":"Ghanaian","m":"Ghanaian"},"fra":{"f":"Ghanéenne","m":"Ghanéen"}}},{"name":{"common":"Gibraltar","official":"Gibraltar","native":{"eng":{"official":"Gibraltar","common":"Gibraltar"}}},"tld":[".gi"],"cca2":"GI","ccn3":"292","cca3":"GIB","cioc":"","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"GIP":{"name":"Gibraltar pound","symbol":"£"}},"idd":{"root":"+3","suffixes":["50"]},"capital":["Gibraltar"],"altSpellings":["GI"],"region":"Europe","subregion":"Southern Europe","languages":{"eng":"English"},"translations":{"ara":{"official":"جبل طارق","common":"جبل طارق"},"ces":{"official":"Gibraltar","common":"Gibraltar"},"deu":{"official":"Gibraltar","common":"Gibraltar"},"est":{"official":"Gibraltar","common":"Gibraltar"},"fin":{"official":"Gibraltar","common":"Gibraltar"},"fra":{"official":"Gibraltar","common":"Gibraltar"},"hrv":{"official":"Gibraltar","common":"Gibraltar"},"hun":{"official":"Gibraltár","common":"Gibraltár"},"ita":{"official":"Gibilterra","common":"Gibilterra"},"jpn":{"official":"ジブラルタル","common":"ジブラルタル"},"kor":{"official":"지브롤터","common":"지브롤터"},"nld":{"official":"Gibraltar","common":"Gibraltar"},"per":{"official":"جبل طارق","common":"جبل طارق"},"pol":{"official":"Gibraltar","common":"Gibraltar"},"por":{"official":"Gibraltar","common":"Gibraltar"},"rus":{"official":"Гибралтар","common":"Гибралтар"},"slk":{"official":"Gibraltár","common":"Gibraltár"},"spa":{"official":"Gibraltar","common":"Gibraltar"},"srp":{"official":"Gibraltar","common":"Gibraltar"},"swe":{"official":"Gibraltar","common":"Gibraltar"},"tur":{"official":"Cebelitarık","common":"Cebelitarık"},"urd":{"official":"جبل الطارق","common":"جبل الطارق"},"zho":{"official":"直布罗陀","common":"直布罗陀"}},"latlng":[36.13333333,-5.35],"landlocked":false,"borders":["ESP"],"area":6,"flag":"🇬🇮","demonyms":{"eng":{"f":"Gibraltar","m":"Gibraltar"},"fra":{"f":"Gibraltarienne","m":"Gibraltarien"}}},{"name":{"common":"Guinea","official":"Republic of Guinea","native":{"fra":{"official":"République de Guinée","common":"Guinée"}}},"tld":[".gn"],"cca2":"GN","ccn3":"324","cca3":"GIN","cioc":"GUI","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"GNF":{"name":"Guinean franc","symbol":"Fr"}},"idd":{"root":"+2","suffixes":["24"]},"capital":["Conakry"],"altSpellings":["GN","Republic of Guinea","République de Guinée"],"region":"Africa","subregion":"Western Africa","languages":{"fra":"French"},"translations":{"ara":{"official":"جمهورية غينيا","common":"غينيا"},"ces":{"official":"Guinejská republika","common":"Guinea"},"deu":{"official":"Republik Guinea","common":"Guinea"},"est":{"official":"Guinea Vabariik","common":"Guinea"},"fin":{"official":"Guinean tasavalta","common":"Guinea"},"fra":{"official":"République de Guinée","common":"Guinée"},"hrv":{"official":"Republika Gvineja","common":"Gvineja"},"hun":{"official":"Guineai Köztársaság","common":"Guinea"},"ita":{"official":"Repubblica di Guinea","common":"Guinea"},"jpn":{"official":"ギニア共和国","common":"ギニア"},"kor":{"official":"기니 공화국","common":"기니"},"nld":{"official":"Republiek Guinee","common":"Guinee"},"per":{"official":"مملکت مستقل پاپوآ گینه نو","common":"پاپوآ گینه نو"},"pol":{"official":"Republika Gwinei","common":"Gwinea"},"por":{"official":"República da Guiné","common":"Guiné"},"rus":{"official":"Республика Гвинея","common":"Гвинея"},"slk":{"official":"Guinejská republika","common":"Guinea"},"spa":{"official":"República de Guinea","common":"Guinea"},"srp":{"official":"Republika Gvineja","common":"Gvineja"},"swe":{"official":"Republiken Guinea","common":"Guinea"},"tur":{"official":"Gine Cumhuriyeti","common":"Gine"},"urd":{"official":"جمہوریہ گنی","common":"گنی"},"zho":{"official":"几内亚共和国","common":"几内亚"}},"latlng":[11,-10],"landlocked":false,"borders":["CIV","GNB","LBR","MLI","SEN","SLE"],"area":245857,"flag":"🇬🇳","demonyms":{"eng":{"f":"Guinean","m":"Guinean"},"fra":{"f":"Guinéenne","m":"Guinéen"}}},{"name":{"common":"Guadeloupe","official":"Guadeloupe","native":{"fra":{"official":"Guadeloupe","common":"Guadeloupe"}}},"tld":[".gp"],"cca2":"GP","ccn3":"312","cca3":"GLP","cioc":"","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"EUR":{"name":"Euro","symbol":"€"}},"idd":{"root":"+5","suffixes":["90"]},"capital":["Basse-Terre"],"altSpellings":["GP","Gwadloup"],"region":"Americas","subregion":"Caribbean","languages":{"fra":"French"},"translations":{"ara":{"official":"غوادلوب","common":"غوادلوب"},"ces":{"official":"Guadeloupe","common":"Guadeloupe"},"deu":{"official":"Guadeloupe","common":"Guadeloupe"},"est":{"official":"Guadeloupe’i ja sõltkondade departemang","common":"Guadeloupe"},"fin":{"official":"Guadeloupen departmentti","common":"Guadeloupe"},"fra":{"official":"Guadeloupe","common":"Guadeloupe"},"hrv":{"official":"Gvadalupa","common":"Gvadalupa"},"hun":{"official":"Guadeloupe","common":"Guadeloupe"},"ita":{"official":"Guadeloupe","common":"Guadeloupa"},"jpn":{"official":"グアドループ島","common":"グアドループ"},"kor":{"official":"과들루프","common":"과들루프"},"nld":{"official":"Guadeloupe","common":"Guadeloupe"},"per":{"official":"گوادلوپ","common":"گوادلوپ"},"pol":{"official":"Gwadelupa","common":"Gwadelupa"},"por":{"official":"Guadalupe","common":"Guadalupe"},"rus":{"official":"Гваделупа","common":"Гваделупа"},"slk":{"official":"Guadeloupe","common":"Guadeloupe"},"spa":{"official":"Guadalupe","common":"Guadalupe"},"srp":{"official":"Gvadelup","common":"Gvadelup"},"swe":{"official":"Guadeloupe","common":"Guadeloupe"},"tur":{"official":"Guadeloupe","common":"Guadeloupe"},"urd":{"official":"گواڈیلوپ","common":"گواڈیلوپ"},"zho":{"official":"瓜德罗普岛","common":"瓜德罗普岛"}},"latlng":[16.25,-61.583333],"landlocked":false,"borders":[],"area":1628,"flag":"🇬🇵","demonyms":{"eng":{"f":"Guadeloupian","m":"Guadeloupian"},"fra":{"f":"Guadeloupéenne","m":"Guadeloupéen"}}},{"name":{"common":"Gambia","official":"Republic of the Gambia","native":{"eng":{"official":"Republic of the Gambia","common":"Gambia"}}},"tld":[".gm"],"cca2":"GM","ccn3":"270","cca3":"GMB","cioc":"GAM","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"GMD":{"name":"dalasi","symbol":"D"}},"idd":{"root":"+2","suffixes":["20"]},"capital":["Banjul"],"altSpellings":["GM","Republic of the Gambia"],"region":"Africa","subregion":"Western Africa","languages":{"eng":"English"},"translations":{"ara":{"official":"جمهورية غامبيا","common":"غامبيا"},"ces":{"official":"Gambijská republika","common":"Gambie"},"deu":{"official":"Republik Gambia","common":"Gambia"},"est":{"official":"Gambia Vabariik","common":"Gambia"},"fin":{"official":"Gambian tasavalta","common":"Gambia"},"fra":{"official":"République de Gambie","common":"Gambie"},"hrv":{"official":"Republika Gambija","common":"Gambija"},"hun":{"official":"Gambiai Köztársaság","common":"Gambia"},"ita":{"official":"Repubblica del Gambia","common":"Gambia"},"jpn":{"official":"ガンビア共和国","common":"ガンビア"},"kor":{"official":"감비아 공화국","common":"감비아"},"nld":{"official":"Republiek Gambia","common":"Gambia"},"per":{"official":"جمهوری گامبیا","common":"گامبیا"},"pol":{"official":"Republika Gambii","common":"Gambia"},"por":{"official":"República da Gâmbia","common":"Gâmbia"},"rus":{"official":"Республика Гамбия","common":"Гамбия"},"slk":{"official":"Gambijská republika","common":"Gambia"},"spa":{"official":"República de Gambia","common":"Gambia"},"srp":{"official":"Republika Gambija","common":"Gambija"},"swe":{"official":"Republiken Gambia","common":"Gambia"},"tur":{"official":"Gambiya Cumhuriyeti","common":"Gambiya"},"urd":{"official":"جمہوریہ گیمبیا","common":"گیمبیا"},"zho":{"official":"冈比亚共和国","common":"冈比亚"}},"latlng":[13.46666666,-16.56666666],"landlocked":false,"borders":["SEN"],"area":10689,"flag":"🇬🇲","demonyms":{"eng":{"f":"Gambian","m":"Gambian"},"fra":{"f":"Gambienne","m":"Gambien"}}},{"name":{"common":"Guinea-Bissau","official":"Republic of Guinea-Bissau","native":{"por":{"official":"República da Guiné-Bissau","common":"Guiné-Bissau"},"pov":{"official":"República da Guiné-Bissau","common":"Guiné-Bissau"}}},"tld":[".gw"],"cca2":"GW","ccn3":"624","cca3":"GNB","cioc":"GBS","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"XOF":{"name":"West African CFA franc","symbol":"Fr"}},"idd":{"root":"+2","suffixes":["45"]},"capital":["Bissau"],"altSpellings":["GW","Republic of Guinea-Bissau","República da Guiné-Bissau"],"region":"Africa","subregion":"Western Africa","languages":{"por":"Portuguese","pov":"Upper Guinea Creole"},"translations":{"ara":{"official":"جمهورية غينيا بيساو","common":"غينيا بيساو"},"ces":{"official":"Republika Guinea-Bissau","common":"Guinea-Bissau"},"deu":{"official":"Republik Guinea-Bissau","common":"Guinea-Bissau"},"est":{"official":"Guinea-Bissau Vabariik","common":"Guinea-Bissau"},"fin":{"official":"Guinea-Bissaun tasavalta","common":"Guinea-Bissau"},"fra":{"official":"République de Guinée-Bissau","common":"Guinée-Bissau"},"hrv":{"official":"Republika Gvineja Bisau","common":"Gvineja Bisau"},"hun":{"official":"Bissau-Guineai Köztársaság","common":"Bissau-Guinea"},"ita":{"official":"Repubblica di Guinea-Bissau","common":"Guinea-Bissau"},"jpn":{"official":"ギニアビサウ共和国","common":"ギニアビサウ"},"kor":{"official":"기니비사우 공화국","common":"기니비사우"},"nld":{"official":"Republiek Guinee-Bissau","common":"Guinee-Bissau"},"per":{"official":"جمهوری گینه بیسائو","common":"گینه بیسائو"},"pol":{"official":"Republika Gwinei Bissau","common":"Gwinea Bissau"},"por":{"official":"República da Guiné-Bissau","common":"Guiné-Bissau"},"rus":{"official":"Республика Гвинея -Бисау","common":"Гвинея-Бисау"},"slk":{"official":"Guinejsko-bissauská republika","common":"Guinea-Bissau"},"spa":{"official":"República de Guinea-Bissau","common":"Guinea-Bisáu"},"srp":{"official":"Republika Gvineja Bisao","common":"Gvineja Bisao"},"swe":{"official":"Republiken Guinea-Bissau","common":"Guinea-Bissau"},"tur":{"official":"Gine-Bissau Cumhuriyeti","common":"Gine-Bissau"},"urd":{"official":"جمہوریہ گنی بساؤ","common":"گنی بساؤ"},"zho":{"official":"几内亚比绍共和国","common":"几内亚比绍"}},"latlng":[12,-15],"landlocked":false,"borders":["GIN","SEN"],"area":36125,"flag":"🇬🇼","demonyms":{"eng":{"f":"Guinea-Bissauan","m":"Guinea-Bissauan"},"fra":{"f":"Bissau-Guinéenne","m":"Bissau-Guinéen"}}},{"name":{"common":"Equatorial Guinea","official":"Republic of Equatorial Guinea","native":{"fra":{"official":"République de la Guinée Équatoriale","common":"Guinée équatoriale"},"por":{"official":"República da Guiné Equatorial","common":"Guiné Equatorial"},"spa":{"official":"República de Guinea Ecuatorial","common":"Guinea Ecuatorial"}}},"tld":[".gq"],"cca2":"GQ","ccn3":"226","cca3":"GNQ","cioc":"GEQ","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"XAF":{"name":"Central African CFA franc","symbol":"Fr"}},"idd":{"root":"+2","suffixes":["40"]},"capital":["Malabo"],"altSpellings":["GQ","Republic of Equatorial Guinea","República de Guinea Ecuatorial","République de Guinée équatoriale","República da Guiné Equatorial"],"region":"Africa","subregion":"Middle Africa","languages":{"fra":"French","por":"Portuguese","spa":"Spanish"},"translations":{"ara":{"official":"جمهورية غينيا الاستوائية","common":"غينيا الاستوائية"},"ces":{"official":"Republika Rovníková Guinea","common":"Rovníková Guinea"},"deu":{"official":"Republik Äquatorialguinea","common":"Äquatorialguinea"},"est":{"official":"Ekvatoriaal-Guinea Vabariik","common":"Ekvatoriaal-Guinea"},"fin":{"official":"Päiväntasaajan Guinean tasavalta","common":"Päiväntasaajan Guinea"},"fra":{"official":"République de Guinée équatoriale","common":"Guinée équatoriale"},"hrv":{"official":"Republika Ekvatorska Gvineja","common":"Ekvatorijalna Gvineja"},"hun":{"official":"Egyenlítői-Guinea-i Köztársaság","common":"Egyenlítői-Guinea"},"ita":{"official":"Repubblica della Guinea Equatoriale","common":"Guinea Equatoriale"},"jpn":{"official":"赤道ギニア共和国","common":"赤道ギニア"},"kor":{"official":"적도 기니 공화국","common":"적도 기니"},"nld":{"official":"Republiek Equatoriaal-Guinea","common":"Equatoriaal-Guinea"},"per":{"official":"جمهوری گینه استوایی","common":"گینه استوایی"},"pol":{"official":"Republika Gwinei Równikowej","common":"Gwinea Równikowa"},"por":{"official":"República da Guiné Equatorial","common":"Guiné Equatorial"},"rus":{"official":"Республика Экваториальная Гвинея","common":"Экваториальная Гвинея"},"slk":{"official":"Republika rovníkovej Guiney","common":"Rovníková Guinea"},"spa":{"official":"República de Guinea Ecuatorial","common":"Guinea Ecuatorial"},"srp":{"official":"Republika Ekvatorijalna Gvineja","common":"Ekvatorijalna Gvineja"},"swe":{"official":"Republiken Ekvatorialguinea","common":"Ekvatorialguinea"},"tur":{"official":"Ekvator Ginesi Cumhuriyeti","common":"Ekvator Ginesi"},"urd":{"official":"جمہوریہ استوائی گنی","common":"استوائی گنی"},"zho":{"official":"赤道几内亚共和国","common":"赤道几内亚"}},"latlng":[2,10],"landlocked":false,"borders":["CMR","GAB"],"area":28051,"flag":"🇬🇶","demonyms":{"eng":{"f":"Equatorial Guinean","m":"Equatorial Guinean"},"fra":{"f":"Équato-guinéenne","m":"Équato-guinéen"}}},{"name":{"common":"Greece","official":"Hellenic Republic","native":{"ell":{"official":"Ελληνική Δημοκρατία","common":"Ελλάδα"}}},"tld":[".gr"],"cca2":"GR","ccn3":"300","cca3":"GRC","cioc":"GRE","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Western European and Others Group","currencies":{"EUR":{"name":"Euro","symbol":"€"}},"idd":{"root":"+3","suffixes":["0"]},"capital":["Athens"],"altSpellings":["GR","Elláda","Hellenic Republic","Ελληνική Δημοκρατία"],"region":"Europe","subregion":"Southern Europe","languages":{"ell":"Greek"},"translations":{"ara":{"official":"الجمهورية الهيلينية","common":"اليونان"},"ces":{"official":"Řecká republika","common":"Řecko"},"deu":{"official":"Hellenische Republik","common":"Griechenland"},"est":{"official":"Kreeka Vabariik","common":"Kreeka"},"fin":{"official":"Helleenien tasavalta","common":"Kreikka"},"fra":{"official":"République hellénique","common":"Grèce"},"hrv":{"official":"Helenska Republika","common":"Grčka"},"hun":{"official":"Görög Köztársaság","common":"Görögország"},"ita":{"official":"Repubblica ellenica","common":"Grecia"},"jpn":{"official":"ギリシャ共和国","common":"ギリシャ"},"kor":{"official":"그리스 공화국","common":"그리스"},"nld":{"official":"Helleense Republiek","common":"Griekenland"},"per":{"official":"جمهوری یونان","common":"یونان"},"pol":{"official":"Republika Grecka","common":"Grecja"},"por":{"official":"República Helénica","common":"Grécia"},"rus":{"official":"Греческая Республика","common":"Греция"},"slk":{"official":"Grécka republika","common":"Greécko"},"spa":{"official":"República Helénica","common":"Grecia"},"srp":{"official":"Republika Grčka","common":"Grčka"},"swe":{"official":"Republiken Grekland","common":"Grekland"},"tur":{"official":"Helen Cumhuriyeti","common":"Yunanistan"},"urd":{"official":"جمہوریہ ہیلینیہ","common":"یونان"},"zho":{"official":"希腊共和国","common":"希腊"}},"latlng":[39,22],"landlocked":false,"borders":["ALB","BGR","TUR","MKD"],"area":131990,"flag":"🇬🇷","demonyms":{"eng":{"f":"Greek","m":"Greek"},"fra":{"f":"Grecque","m":"Grec"}}},{"name":{"common":"Grenada","official":"Grenada","native":{"eng":{"official":"Grenada","common":"Grenada"}}},"tld":[".gd"],"cca2":"GD","ccn3":"308","cca3":"GRD","cioc":"GRN","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Latin American and Caribbean Group","currencies":{"XCD":{"name":"Eastern Caribbean dollar","symbol":"$"}},"idd":{"root":"+1","suffixes":["473"]},"capital":["St. George's"],"altSpellings":["GD"],"region":"Americas","subregion":"Caribbean","languages":{"eng":"English"},"translations":{"ara":{"official":"غرينادا","common":"غرينادا"},"ces":{"official":"Grenada","common":"Grenada"},"deu":{"official":"Grenada","common":"Grenada"},"est":{"official":"Grenada","common":"Grenada"},"fin":{"official":"Grenada","common":"Grenada"},"fra":{"official":"Grenade","common":"Grenade"},"hrv":{"official":"Grenada","common":"Grenada"},"hun":{"official":"Grenada","common":"Grenada"},"ita":{"official":"Grenada","common":"Grenada"},"jpn":{"official":"グレナダ","common":"グレナダ"},"kor":{"official":"그레나다","common":"그레나다"},"nld":{"official":"Grenada","common":"Grenada"},"per":{"official":"گرنادا","common":"گرنادا"},"pol":{"official":"Grenada","common":"Grenada"},"por":{"official":"Grenada","common":"Granada"},"rus":{"official":"Гренада","common":"Гренада"},"slk":{"official":"Grenada","common":"Grenada"},"spa":{"official":"Granada","common":"Grenada"},"srp":{"official":"Grenada","common":"Grenada"},"swe":{"official":"Grenada","common":"Grenada"},"tur":{"official":"Grenada","common":"Grenada"},"urd":{"official":"گریناڈا","common":"گریناڈا"},"zho":{"official":"格林纳达","common":"格林纳达"}},"latlng":[12.11666666,-61.66666666],"landlocked":false,"borders":[],"area":344,"flag":"🇬🇩","demonyms":{"eng":{"f":"Grenadian","m":"Grenadian"},"fra":{"f":"Grenadienne","m":"Grenadien"}}},{"name":{"common":"Greenland","official":"Greenland","native":{"kal":{"official":"Kalaallit Nunaat","common":"Kalaallit Nunaat"}}},"tld":[".gl"],"cca2":"GL","ccn3":"304","cca3":"GRL","cioc":"","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"DKK":{"name":"krone","symbol":"kr."}},"idd":{"root":"+2","suffixes":["99"]},"capital":["Nuuk"],"altSpellings":["GL","Grønland"],"region":"Americas","subregion":"North America","languages":{"kal":"Greenlandic"},"translations":{"ara":{"official":"جرينلاند","common":"جرينلاند"},"ces":{"official":"Grónsko","common":"Grónsko"},"deu":{"official":"Grönland","common":"Grönland"},"est":{"official":"Gröönimaa","common":"Gröönimaa"},"fin":{"official":"Groönlanti","common":"Groönlanti"},"fra":{"official":"Groenland","common":"Groenland"},"hrv":{"official":"Grenland","common":"Grenland"},"hun":{"official":"Grönland","common":"Grönland"},"ita":{"official":"Groenlandia","common":"Groenlandia"},"jpn":{"official":"グリーンランド","common":"グリーンランド"},"kor":{"official":"그린란드","common":"그린란드"},"nld":{"official":"Groenland","common":"Groenland"},"per":{"official":"گروئنلند","common":"گرینلند"},"pol":{"official":"Grenlandia","common":"Grenlandia"},"por":{"official":"Groenlândia","common":"Gronelândia"},"rus":{"official":"Гренландия","common":"Гренландия"},"slk":{"official":"Grónsko","common":"Grónsko"},"spa":{"official":"Groenlandia","common":"Groenlandia"},"srp":{"official":"Grenland","common":"Grenland"},"swe":{"official":"Grönland","common":"Grönland"},"tur":{"official":"Grönland","common":"Grönland"},"urd":{"official":"گرین لینڈ","common":"گرین لینڈ"},"zho":{"official":"格陵兰","common":"格陵兰"}},"latlng":[72,-40],"landlocked":false,"borders":[],"area":2166086,"flag":"🇬🇱","demonyms":{"eng":{"f":"Greenlandic","m":"Greenlandic"},"fra":{"f":"Groenlandaise","m":"Groenlandais"}}},{"name":{"common":"Guatemala","official":"Republic of Guatemala","native":{"spa":{"official":"República de Guatemala","common":"Guatemala"}}},"tld":[".gt"],"cca2":"GT","ccn3":"320","cca3":"GTM","cioc":"GUA","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Latin American and Caribbean Group","currencies":{"GTQ":{"name":"Guatemalan quetzal","symbol":"Q"}},"idd":{"root":"+5","suffixes":["02"]},"capital":["Guatemala City"],"altSpellings":["GT"],"region":"Americas","subregion":"Central America","languages":{"spa":"Spanish"},"translations":{"ara":{"official":"جمهورية غواتيمالا","common":"غواتيمالا"},"ces":{"official":"Republika Guatemala","common":"Guatemala"},"deu":{"official":"Republik Guatemala","common":"Guatemala"},"est":{"official":"Guatemala Vabariik","common":"Guatemala"},"fin":{"official":"Guatemalan tasavalta","common":"Guatemala"},"fra":{"official":"République du Guatemala","common":"Guatemala"},"hrv":{"official":"Republika Gvatemala","common":"Gvatemala"},"hun":{"official":"Guatemalai Köztársaság","common":"Guatemala"},"ita":{"official":"Repubblica del Guatemala","common":"Guatemala"},"jpn":{"official":"グアテマラ共和国","common":"グアテマラ"},"kor":{"official":"과테말라 공화국","common":"과테말라"},"nld":{"official":"Republiek Guatemala","common":"Guatemala"},"per":{"official":"جمهوری گواتِمالا","common":"گواتِمالا"},"pol":{"official":"Republika Gwatemali","common":"Gwatemala"},"por":{"official":"República da Guatemala","common":"Guatemala"},"rus":{"official":"Республика Гватемала","common":"Гватемала"},"slk":{"official":"Guatemalská republika","common":"Guatemala"},"spa":{"official":"República de Guatemala","common":"Guatemala"},"srp":{"official":"Republika Gvatemala","common":"Gvatemala"},"swe":{"official":"Republiken Guatemala","common":"Guatemala"},"tur":{"official":"Guatemala Cumhuriyeti","common":"Guatemala"},"urd":{"official":"جمہوریہ گواتیمالا","common":"گواتیمالا"},"zho":{"official":"危地马拉共和国","common":"危地马拉"}},"latlng":[15.5,-90.25],"landlocked":false,"borders":["BLZ","SLV","HND","MEX"],"area":108889,"flag":"🇬🇹","demonyms":{"eng":{"f":"Guatemalan","m":"Guatemalan"},"fra":{"f":"Guatémaltèque","m":"Guatémaltèque"}}},{"name":{"common":"French Guiana","official":"Guiana","native":{"fra":{"official":"Guyane","common":"Guyane française"}}},"tld":[".gf"],"cca2":"GF","ccn3":"254","cca3":"GUF","cioc":"","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"EUR":{"name":"Euro","symbol":"€"}},"idd":{"root":"+5","suffixes":["94"]},"capital":["Cayenne"],"altSpellings":["GF","Guiana","Guyane"],"region":"Americas","subregion":"South America","languages":{"fra":"French"},"translations":{"ara":{"official":"غويانا الفرنسية","common":"غويانا"},"ces":{"official":"Francouzská Guyana","common":"Francouzská Guyana"},"deu":{"official":"Französisch-Guayana","common":"Französisch-Guayana"},"est":{"official":"Guajaana departemang","common":"Prantsuse Guajaana"},"fin":{"official":"Ranskan Guayana","common":"Ranskan Guayana"},"fra":{"official":"Guyane","common":"Guyane"},"hrv":{"official":"Gijana","common":"Francuska Gvajana"},"hun":{"official":"Francia Guyana","common":"Francia Guyana"},"ita":{"official":"Guiana","common":"Guyana francese"},"jpn":{"official":"フランス領ギアナ","common":"フランス領ギアナ"},"kor":{"official":"프랑스령 기아나","common":"프랑스령 기아나"},"nld":{"official":"Guyana","common":"Frans-Guyana"},"per":{"official":"گویان فرانسه","common":"گویان فرانسه"},"pol":{"official":"Gujana Francuska","common":"Gujana Francuska"},"por":{"official":"Guiana","common":"Guiana Francesa"},"rus":{"official":"Гвиана","common":"Французская Гвиана"},"slk":{"official":"Francúzska Guyana","common":"Guyana"},"spa":{"official":"Guayana","common":"Guayana Francesa"},"srp":{"official":"Gvajana","common":"Francuska Gvajana"},"swe":{"official":"Franska Guyana","common":"Franska Guyana"},"tur":{"official":"Fransız Guyanası","common":"Fransız Guyanası"},"urd":{"official":"گیانا","common":"فرانسیسی گیانا"},"zho":{"official":"法属圭亚那","common":"法属圭亚那"}},"latlng":[4,-53],"landlocked":false,"borders":["BRA","SUR"],"area":83534,"flag":"🇬🇫","demonyms":{"eng":{"f":"Guianan","m":"Guianan"},"fra":{"f":"Guyanaise","m":"Guyanais"}}},{"name":{"common":"Guam","official":"Guam","native":{"cha":{"official":"Guåhån","common":"Guåhån"},"eng":{"official":"Guam","common":"Guam"},"spa":{"official":"Guam","common":"Guam"}}},"tld":[".gu"],"cca2":"GU","ccn3":"316","cca3":"GUM","cioc":"GUM","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"USD":{"name":"United States dollar","symbol":"$"}},"idd":{"root":"+1","suffixes":["671"]},"capital":["Hagåtña"],"altSpellings":["GU","Guåhån"],"region":"Oceania","subregion":"Micronesia","languages":{"cha":"Chamorro","eng":"English","spa":"Spanish"},"translations":{"ara":{"official":"غوام","common":"غوام"},"ces":{"official":"Guam","common":"Guam"},"deu":{"official":"Guam","common":"Guam"},"est":{"official":"Guami ala","common":"Guam"},"fin":{"official":"Guam","common":"Guam"},"fra":{"official":"Guam","common":"Guam"},"hrv":{"official":"Guam","common":"Guam"},"hun":{"official":"Guam","common":"Guam"},"ita":{"official":"Guam","common":"Guam"},"jpn":{"official":"グアム","common":"グアム"},"kor":{"official":"괌","common":"괌"},"nld":{"official":"Guam","common":"Guam"},"per":{"official":"گوآم","common":"گوآم"},"pol":{"official":"Terytorium Guamu","common":"Guam"},"por":{"official":"Guam","common":"Guam"},"rus":{"official":"Гуам","common":"Гуам"},"slk":{"official":"Guam","common":"Guam"},"spa":{"official":"Guam","common":"Guam"},"srp":{"official":"Gvam","common":"Gvam"},"swe":{"official":"Guam","common":"Guam"},"tur":{"official":"Guam Toprağı","common":"Guam"},"urd":{"official":"گوام","common":"گوام"},"zho":{"official":"关岛","common":"关岛"}},"latlng":[13.46666666,144.78333333],"landlocked":false,"borders":[],"area":549,"flag":"🇬🇺","demonyms":{"eng":{"f":"Guamanian","m":"Guamanian"},"fra":{"f":"","m":""}}},{"name":{"common":"Guyana","official":"Co-operative Republic of Guyana","native":{"eng":{"official":"Co-operative Republic of Guyana","common":"Guyana"}}},"tld":[".gy"],"cca2":"GY","ccn3":"328","cca3":"GUY","cioc":"GUY","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Latin American and Caribbean Group","currencies":{"GYD":{"name":"Guyanese dollar","symbol":"$"}},"idd":{"root":"+5","suffixes":["92"]},"capital":["Georgetown"],"altSpellings":["GY","Co-operative Republic of Guyana"],"region":"Americas","subregion":"South America","languages":{"eng":"English"},"translations":{"ara":{"official":"جمهورية غيانا التعاونية","common":"غيانا"},"ces":{"official":"Kooperativní republika Guyana","common":"Guyana"},"deu":{"official":"Kooperative Republik Guyana","common":"Guyana"},"est":{"official":"Guyana Vabariik","common":"Guyana"},"fin":{"official":"Guayanan osuustoiminnallinen tasavalta","common":"Guayana"},"fra":{"official":"République coopérative de Guyana","common":"Guyana"},"hrv":{"official":"Zadruga Republika Gvajana","common":"Gvajana"},"hun":{"official":"Guyanai Szövetkezeti Köztársaság","common":"Guyana"},"ita":{"official":"Co -operative Republic of Guyana","common":"Guyana"},"jpn":{"official":"ガイアナ共和国","common":"ガイアナ"},"kor":{"official":"가이아나 협동 공화국","common":"가이아나"},"nld":{"official":"Coöperatieve Republiek Guyana","common":"Guyana"},"per":{"official":"جمهوری تعاونی گویان","common":"گویان"},"pol":{"official":"Kooperacyjna Republika Gujany","common":"Gujana"},"por":{"official":"Co -operative República da Guiana","common":"Guiana"},"rus":{"official":"Кооперативная Республика Гайана","common":"Гайана"},"slk":{"official":"Guyanská kooperatívna republika","common":"Guyana"},"spa":{"official":"República Cooperativa de Guyana","common":"Guyana"},"srp":{"official":"Kooperativna Republika Gvajana","common":"Gvajana"},"swe":{"official":"Kooperativa republiken Guyana","common":"Guyana"},"tur":{"official":"Guyana Kooperatif Cumhuriyeti","common":"Guyana"},"urd":{"official":"تعاونی جمہوریہ گیانا","common":"گیانا"},"zho":{"official":"圭亚那共和国","common":"圭亚那"}},"latlng":[5,-59],"landlocked":false,"borders":["BRA","SUR","VEN"],"area":214969,"flag":"🇬🇾","demonyms":{"eng":{"f":"Guyanese","m":"Guyanese"},"fra":{"f":"Guyanienne","m":"Guyanien"}}},{"name":{"common":"Hong Kong","official":"Hong Kong Special Administrative Region of the People's Republic of China","native":{"eng":{"official":"Hong Kong Special Administrative Region of the People's Republic of China","common":"Hong Kong"},"zho":{"official":"中华人民共和国香港特别行政区","common":"香港"}}},"tld":[".hk",".香港"],"cca2":"HK","ccn3":"344","cca3":"HKG","cioc":"HKG","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"HKD":{"name":"Hong Kong dollar","symbol":"$"}},"idd":{"root":"+8","suffixes":["52"]},"capital":["City of Victoria"],"altSpellings":["HK"],"region":"Asia","subregion":"Eastern Asia","languages":{"eng":"English","zho":"Chinese"},"translations":{"ara":{"official":"منطقة هونغ كونغ الادارية التابعة لجمهورية الصين الشعبية","common":"هونغ كونغ"},"ces":{"official":"Zvláštní administrativní oblast Čínské lidové republiky Hongkong","common":"Hongkong"},"deu":{"official":"Sonderverwaltungszone Hongkong der Volksrepublik China","common":"Hongkong"},"est":{"official":"Hongkongi erihalduspiirkond","common":"Hongkong"},"fin":{"official":"Hong Kongin erityishallintoalue","common":"Hongkong"},"fra":{"official":"Région administrative spéciale de Hong Kong de la République populaire de Chine","common":"Hong Kong"},"hrv":{"official":"Hong Kong Posebnog upravnog područjaNarodne Republike Kine","common":"Hong Kong"},"hun":{"official":"Hongkong","common":"Hongkong"},"ita":{"official":"Hong Kong Regione amministrativa speciale della Repubblica Popolare Cinese","common":"Hong Kong"},"jpn":{"official":"香港特別行政区","common":"香港"},"kor":{"official":"중화인민공화국 홍콩 특별행정구","common":"홍콩"},"nld":{"official":"Hong Kong Speciale Administratieve Regio van de Volksrepubliek China","common":"Hongkong"},"per":{"official":"هُنگ کُنگ","common":"هُنگ کُنگ"},"pol":{"official":"Specjalny Region Administracyjny Chińskiej Republiki Ludowej Hongkong","common":"Hongkong"},"por":{"official":"Hong Kong Região Administrativa Especial da República Popular da China","common":"Hong Kong"},"rus":{"official":"Hong Kong Специальный административный район Китайской Народной Республики Китая","common":"Гонконг"},"slk":{"official":"Špeciálna administratívna oblasťČínskej ľudovej republiky Hongkong","common":"Hongkong"},"spa":{"official":"Hong Kong Región Administrativa Especial de la República Popular China","common":"Hong Kong"},"srp":{"official":"Hongkong specijalna administrativna oblast Narodne Republike Kine","common":"Hongkong"},"swe":{"official":"Hongkong","common":"Hongkong"},"tur":{"official":"çin Halk Cumhuriyeti Hong Kong özel İdari Bölgesi","common":"Hong Kong"},"urd":{"official":"ہانگ کانگ عوامی جمہوریہ چین کا خصوصی انتظامی علاقہ","common":"ہانگ کانگ"},"zho":{"official":"中华人民共和国香港特别行政区","common":"香港"}},"latlng":[22.267,114.188],"landlocked":false,"borders":["CHN"],"area":1104,"flag":"🇭🇰","demonyms":{"eng":{"f":"Hong Konger","m":"Hong Konger"},"fra":{"f":"Hongkongaise","m":"Hongkongais"}}},{"name":{"common":"Heard Island and McDonald Islands","official":"Heard Island and McDonald Islands","native":{"eng":{"official":"Heard Island and McDonald Islands","common":"Heard Island and McDonald Islands"}}},"tld":[".hm",".aq"],"cca2":"HM","ccn3":"334","cca3":"HMD","cioc":"","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{},"idd":{"root":"","suffixes":[]},"capital":[],"altSpellings":["HM","Heard Island and McDonald Islands"],"region":"Antarctic","subregion":"","languages":{"eng":"English"},"translations":{"ara":{"official":"جزيرة هيرد وجزر ماكدونالد","common":"جزيرة هيرد وجزر ماكدونالد"},"ces":{"official":"Heardův ostrov a McDonaldovy ostrovy","common":"Heardův ostrov a McDonaldovy ostrovy"},"deu":{"official":"Heard und McDonaldinseln","common":"Heard und die McDonaldinseln"},"est":{"official":"Heardi ja McDonaldi saarte ala","common":"Heard ja McDonald"},"fin":{"official":"Heard ja McDonaldinsaaret","common":"Heard ja McDonaldinsaaret"},"fra":{"official":"Îles Heard-et-MacDonald","common":"Îles Heard-et-MacDonald"},"hrv":{"official":"Otok Heard i otočje McDonald","common":"Otok Heard i otočje McDonald"},"hun":{"official":"Heard-sziget és McDonald-szigetek","common":"Heard-sziget és McDonald-szigetek"},"ita":{"official":"Isole Heard e McDonald","common":"Isole Heard e McDonald"},"jpn":{"official":"ハード島・マクドナルド諸島","common":"ハード島とマクドナルド諸島"},"kor":{"official":"허드 맥도널드 제도","common":"허드 맥도널드 제도"},"nld":{"official":"Heard en McDonaldeilanden","common":"Heard-en McDonaldeilanden"},"per":{"official":"جزیره هرد و جزایر مک‌دونالد","common":"جزیره هرد و جزایر مک‌دونالد"},"pol":{"official":"Terytorium Wysp Heard i McDonalda","common":"Wyspy Heard i McDonalda"},"por":{"official":"Ilha Heard e Ilhas McDonald","common":"Ilha Heard e Ilhas McDonald"},"rus":{"official":"Остров Херд и острова Макдональд","common":"Остров Херд и острова Макдональд"},"slk":{"official":"Teritórium Heardovho ostrova a Macdonaldových ostrovov","common":"Heardov ostrov"},"spa":{"official":"Islas Heard y McDonald","common":"Islas Heard y McDonald"},"srp":{"official":"Herdovo ostrvo i Makdonaldova ostrva","common":"Herdovo ostrvo i Makdonaldova ostrva"},"swe":{"official":"Heard- och McDonaldöarna","common":"Heard- och McDonaldöarna"},"tur":{"official":"Heard Adası ve McDonald Adaları","common":"Heard Adası ve McDonald Adaları"},"urd":{"official":"جزیرہ ہرڈ و جزائر مکڈونلڈ","common":"جزیرہ ہرڈ و جزائر مکڈونلڈ"},"zho":{"official":"赫德岛和麦当劳群岛","common":"赫德岛和麦当劳群岛"}},"latlng":[-53.1,72.51666666],"landlocked":false,"borders":[],"area":412,"flag":"🇭🇲","demonyms":{"eng":{"f":"Heard and McDonald Islander","m":"Heard and McDonald Islander"},"fra":{"f":"","m":""}}},{"name":{"common":"Honduras","official":"Republic of Honduras","native":{"spa":{"official":"República de Honduras","common":"Honduras"}}},"tld":[".hn"],"cca2":"HN","ccn3":"340","cca3":"HND","cioc":"HON","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Latin American and Caribbean Group","currencies":{"HNL":{"name":"Honduran lempira","symbol":"L"}},"idd":{"root":"+5","suffixes":["04"]},"capital":["Tegucigalpa"],"altSpellings":["HN","Republic of Honduras","República de Honduras"],"region":"Americas","subregion":"Central America","languages":{"spa":"Spanish"},"translations":{"ara":{"official":"جمهورية هندوراس","common":"هندوراس"},"ces":{"official":"Honduraská republika","common":"Honduras"},"deu":{"official":"Republik Honduras","common":"Honduras"},"est":{"official":"Hondurase Vabariik","common":"Honduras"},"fin":{"official":"Hondurasin tasavalta","common":"Honduras"},"fra":{"official":"République du Honduras","common":"Honduras"},"hrv":{"official":"Republika Honduras","common":"Honduras"},"hun":{"official":"Hondurasi Köztársaság","common":"Honduras"},"ita":{"official":"Repubblica di Honduras","common":"Honduras"},"jpn":{"official":"ホンジュラス共和国","common":"ホンジュラス"},"kor":{"official":"온두라스 공화국","common":"온두라스"},"nld":{"official":"Republiek Honduras","common":"Honduras"},"per":{"official":"جمهوری هندوراس","common":"هُندوراس"},"pol":{"official":"Republika Hondurasu","common":"Honduras"},"por":{"official":"República de Honduras","common":"Honduras"},"rus":{"official":"Республика Гондурас","common":"Гондурас"},"slk":{"official":"Honduraská republika","common":"Honduras"},"spa":{"official":"República de Honduras","common":"Honduras"},"srp":{"official":"Republika Honduras","common":"Honduras"},"swe":{"official":"Republiken Honduras","common":"Honduras"},"tur":{"official":"Honduras Cumhuriyeti","common":"Honduras"},"urd":{"official":"جمہوریہ ہونڈوراس","common":"ہونڈوراس"},"zho":{"official":"洪都拉斯共和国","common":"洪都拉斯"}},"latlng":[15,-86.5],"landlocked":false,"borders":["GTM","SLV","NIC"],"area":112492,"flag":"🇭🇳","demonyms":{"eng":{"f":"Honduran","m":"Honduran"},"fra":{"f":"Hondurienne","m":"Hondurien"}}},{"name":{"common":"Croatia","official":"Republic of Croatia","native":{"hrv":{"official":"Republika Hrvatska","common":"Hrvatska"}}},"tld":[".hr"],"cca2":"HR","ccn3":"191","cca3":"HRV","cioc":"CRO","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Eastern European Group","currencies":{"EUR":{"name":"Euro","symbol":"€"}},"idd":{"root":"+3","suffixes":["85"]},"capital":["Zagreb"],"altSpellings":["HR","Hrvatska","Republic of Croatia","Republika Hrvatska"],"region":"Europe","subregion":"Southeast Europe","languages":{"hrv":"Croatian"},"translations":{"ara":{"official":"جمهورية كرواتيا","common":"كرواتيا"},"ces":{"official":"Chorvatská republika","common":"Chorvatsko"},"deu":{"official":"Republik Kroatien","common":"Kroatien"},"est":{"official":"Horvaatia Vabariik","common":"Horvaatia"},"fin":{"official":"Kroatian tasavalta","common":"Kroatia"},"fra":{"official":"République de Croatie","common":"Croatie"},"hrv":{"official":"Republika Hrvatska","common":"Hrvatska"},"hun":{"official":"Horvát Köztársaság","common":"Horvátország"},"ita":{"official":"Repubblica di Croazia","common":"Croazia"},"jpn":{"official":"クロアチア共和国","common":"クロアチア"},"kor":{"official":"크로아티아 공화국","common":"크로아티아"},"nld":{"official":"Republiek Kroatië","common":"Kroatië"},"per":{"official":"جمهوری کرواسی","common":"کرُواسی"},"pol":{"official":"Republika Chorwacji","common":"Chorwacja"},"por":{"official":"República da Croácia","common":"Croácia"},"rus":{"official":"Республика Хорватия","common":"Хорватия"},"slk":{"official":"Chorvátska republika","common":"Chorvátsko"},"spa":{"official":"República de Croacia","common":"Croacia"},"srp":{"official":"Republika Hrvatska","common":"Hrvatska"},"swe":{"official":"Republiken Kroatien","common":"Kroatien"},"tur":{"official":"Hırvatistan Cumhuriyeti","common":"Hırvatistan"},"urd":{"official":"جمہوریہ کرویئشا","common":"کرویئشا"},"zho":{"official":"克罗地亚共和国","common":"克罗地亚"}},"latlng":[45.16666666,15.5],"landlocked":false,"borders":["BIH","HUN","MNE","SRB","SVN"],"area":56594,"flag":"🇭🇷","demonyms":{"eng":{"f":"Croatian","m":"Croatian"},"fra":{"f":"Croate","m":"Croate"}}},{"name":{"common":"Haiti","official":"Republic of Haiti","native":{"fra":{"official":"République d'Haïti","common":"Haïti"},"hat":{"official":"Repiblik Ayiti","common":"Ayiti"}}},"tld":[".ht"],"cca2":"HT","ccn3":"332","cca3":"HTI","cioc":"HAI","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Latin American and Caribbean Group","currencies":{"HTG":{"name":"Haitian gourde","symbol":"G"}},"idd":{"root":"+5","suffixes":["09"]},"capital":["Port-au-Prince"],"altSpellings":["HT","Republic of Haiti","République d'Haïti","Repiblik Ayiti"],"region":"Americas","subregion":"Caribbean","languages":{"fra":"French","hat":"Haitian Creole"},"translations":{"ara":{"official":"جمهورية هايتي","common":"هايتي"},"ces":{"official":"Republika Haiti","common":"Haiti"},"deu":{"official":"Republik Haiti","common":"Haiti"},"est":{"official":"Haiti Vabariik","common":"Haiti"},"fin":{"official":"Haitin tasavalta","common":"Haiti"},"fra":{"official":"République d'Haïti","common":"Haïti"},"hrv":{"official":"Republika Haiti","common":"Haiti"},"hun":{"official":"Haiti Köztársaság","common":"Haiti"},"ita":{"official":"Repubblica di Haiti","common":"Haiti"},"jpn":{"official":"ハイチ共和国","common":"ハイチ"},"kor":{"official":"아이티 공화국","common":"아이티"},"nld":{"official":"Republiek Haïti","common":"Haïti"},"per":{"official":"جمهوری هائیتی","common":"هائیتی"},"pol":{"official":"Republika Haiti","common":"Haiti"},"por":{"official":"República do Haiti","common":"Haiti"},"rus":{"official":"Республика Гаити","common":"Гаити"},"slk":{"official":"Haitská republika","common":"Haiti"},"spa":{"official":"República de Haití","common":"Haití"},"srp":{"official":"Republika Haiti","common":"Haiti"},"swe":{"official":"Republiken Haiti","common":"Haiti"},"tur":{"official":"Haiti Cumhuriyeti","common":"Haiti"},"urd":{"official":"جمہوریہ ہیٹی","common":"ہیٹی"},"zho":{"official":"海地共和国","common":"海地"}},"latlng":[19,-72.41666666],"landlocked":false,"borders":["DOM"],"area":27750,"flag":"🇭🇹","demonyms":{"eng":{"f":"Haitian","m":"Haitian"},"fra":{"f":"Haïtienne","m":"Haïtien"}}},{"name":{"common":"Hungary","official":"Hungary","native":{"hun":{"official":"Magyarország","common":"Magyarország"}}},"tld":[".hu"],"cca2":"HU","ccn3":"348","cca3":"HUN","cioc":"HUN","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Eastern European Group","currencies":{"HUF":{"name":"Hungarian forint","symbol":"Ft"}},"idd":{"root":"+3","suffixes":["6"]},"capital":["Budapest"],"altSpellings":["HU"],"region":"Europe","subregion":"Central Europe","languages":{"hun":"Hungarian"},"translations":{"ara":{"official":"الجمهورية المجرية","common":"المجر"},"ces":{"official":"Maďarsko","common":"Maďarsko"},"deu":{"official":"Ungarn","common":"Ungarn"},"est":{"official":"Ungari","common":"Ungari"},"fin":{"official":"Unkari","common":"Unkari"},"fra":{"official":"Hongrie","common":"Hongrie"},"hrv":{"official":"Madžarska","common":"Mađarska"},"hun":{"official":"Magyarország","common":"Magyarország"},"ita":{"official":"Ungheria","common":"Ungheria"},"jpn":{"official":"ハンガリー","common":"ハンガリー"},"kor":{"official":"헝가리","common":"헝가리"},"nld":{"official":"Hongarije","common":"Hongarije"},"per":{"official":"مجارستان","common":"مجارستان"},"pol":{"official":"Węgry","common":"Węgry"},"por":{"official":"Hungria","common":"Hungria"},"rus":{"official":"Венгрия","common":"Венгрия"},"slk":{"official":"Maďarsko","common":"Maďarsko"},"spa":{"official":"Hungría","common":"Hungría"},"srp":{"official":"Madjarska","common":"Madjarska"},"swe":{"official":"Ungern","common":"Ungern"},"tur":{"official":"Macaristan","common":"Macaristan"},"urd":{"official":"مجارستان","common":"مجارستان"},"zho":{"official":"匈牙利","common":"匈牙利"}},"latlng":[47,20],"landlocked":true,"borders":["AUT","HRV","ROU","SRB","SVK","SVN","UKR"],"area":93028,"flag":"🇭🇺","demonyms":{"eng":{"f":"Hungarian","m":"Hungarian"},"fra":{"f":"Hongroise","m":"Hongrois"}}},{"name":{"common":"Indonesia","official":"Republic of Indonesia","native":{"ind":{"official":"Republik Indonesia","common":"Indonesia"}}},"tld":[".id"],"cca2":"ID","ccn3":"360","cca3":"IDN","cioc":"INA","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"IDR":{"name":"Indonesian rupiah","symbol":"Rp"}},"idd":{"root":"+6","suffixes":["2"]},"capital":["Jakarta"],"altSpellings":["ID","Republic of Indonesia","Republik Indonesia"],"region":"Asia","subregion":"South-Eastern Asia","languages":{"ind":"Indonesian"},"translations":{"ara":{"official":"جمهورية إندونيسيا","common":"إندونيسيا"},"ces":{"official":"Indonéská republika","common":"Indonésie"},"deu":{"official":"Republik Indonesien","common":"Indonesien"},"est":{"official":"Indoneesia Vabariik","common":"Indoneesia"},"fin":{"official":"Indonesian tasavalta","common":"Indonesia"},"fra":{"official":"République d'Indonésie","common":"Indonésie"},"hrv":{"official":"Republika Indonezija","common":"Indonezija"},"hun":{"official":"Indonéz Köztársaság","common":"Indonézia"},"ita":{"official":"Repubblica di Indonesia","common":"Indonesia"},"jpn":{"official":"インドネシア共和国","common":"インドネシア"},"kor":{"official":"인도네시아 공화국","common":"인도네시아"},"nld":{"official":"Republiek Indonesië","common":"Indonesië"},"per":{"official":"جمهوری اندونزی","common":"اندونزی"},"pol":{"official":"Republika Indonezji","common":"Indonezja"},"por":{"official":"República da Indonésia","common":"Indonésia"},"rus":{"official":"Республика Индонезия","common":"Индонезия"},"slk":{"official":"Indonézska republika","common":"Indonézia"},"spa":{"official":"República de Indonesia","common":"Indonesia"},"srp":{"official":"Republika Indonezija","common":"Indonezija"},"swe":{"official":"Republiken Indonesien","common":"Indonesien"},"tur":{"official":"Endonezya Cumhuriyeti","common":"Endonezya"},"urd":{"official":"جمہوریہ انڈونیشیا","common":"انڈونیشیا"},"zho":{"official":"印度尼西亚共和国","common":"印度尼西亚"}},"latlng":[-5,120],"landlocked":false,"borders":["TLS","MYS","PNG"],"area":1904569,"flag":"🇮🇩","demonyms":{"eng":{"f":"Indonesian","m":"Indonesian"},"fra":{"f":"Indonésienne","m":"Indonésien"}}},{"name":{"common":"Isle of Man","official":"Isle of Man","native":{"eng":{"official":"Isle of Man","common":"Isle of Man"},"glv":{"official":"Ellan Vannin or Mannin","common":"Mannin"}}},"tld":[".im"],"cca2":"IM","ccn3":"833","cca3":"IMN","cioc":"","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"GBP":{"name":"British pound","symbol":"£"},"IMP":{"name":"Manx pound","symbol":"£"}},"idd":{"root":"+4","suffixes":["4"]},"capital":["Douglas"],"altSpellings":["IM","Ellan Vannin","Mann","Mannin"],"region":"Europe","subregion":"Northern Europe","languages":{"eng":"English","glv":"Manx"},"translations":{"ara":{"official":"جزيرة مان","common":"جزيرة مان"},"ces":{"official":"Ostrov Man","common":"Ostrov Man"},"deu":{"official":"Isle of Man","common":"Insel Man"},"est":{"official":"Mani saar","common":"Mani saar"},"fin":{"official":"Mansaari","common":"Mansaari"},"fra":{"official":"Isle of Man","common":"Île de Man"},"hrv":{"official":"Mana ostrvo","common":"Otok Man"},"hun":{"official":"Man","common":"Man"},"ita":{"official":"Isola di Man","common":"Isola di Man"},"jpn":{"official":"マン島","common":"マン島"},"kor":{"official":"맨섬","common":"맨섬"},"nld":{"official":"Isle of Man","common":"Isle of Man"},"per":{"official":"جزیرهٔ مَن","common":"جزیرهٔ مَن"},"pol":{"official":"Wyspa Man","common":"Wyspa Man"},"por":{"official":"Isle of Man","common":"Ilha de Man"},"rus":{"official":"Остров Мэн","common":"Остров Мэн"},"slk":{"official":"Ostrov Man","common":"Man"},"spa":{"official":"Isla de Man","common":"Isla de Man"},"srp":{"official":"Ostrvo Men","common":"Men Ostrvo"},"swe":{"official":"Isle of Man","common":"Isle of Man"},"tur":{"official":"Man Adası","common":"Man Adası"},"urd":{"official":"آئل آف مین","common":"آئل آف مین"},"zho":{"official":"马恩岛","common":"马恩岛"}},"latlng":[54.25,-4.5],"landlocked":false,"borders":[],"area":572,"flag":"🇮🇲","demonyms":{"eng":{"f":"Manx","m":"Manx"},"fra":{"f":"","m":""}}},{"name":{"common":"India","official":"Republic of India","native":{"eng":{"official":"Republic of India","common":"India"},"hin":{"official":"भारत गणराज्य","common":"भारत"},"tam":{"official":"இந்தியக் குடியரசு","common":"இந்தியா"}}},"tld":[".in"],"cca2":"IN","ccn3":"356","cca3":"IND","cioc":"IND","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"INR":{"name":"Indian rupee","symbol":"₹"}},"idd":{"root":"+9","suffixes":["1"]},"capital":["New Delhi"],"altSpellings":["IN","Bhārat","Republic of India","Bharat Ganrajya","இந்தியா"],"region":"Asia","subregion":"Southern Asia","languages":{"eng":"English","hin":"Hindi","tam":"Tamil"},"translations":{"ara":{"official":"جمهورية الهند","common":"الهند"},"ces":{"official":"Indická republika","common":"Indie"},"deu":{"official":"Republik Indien","common":"Indien"},"est":{"official":"India Vabariik","common":"India"},"fin":{"official":"Intian tasavalta","common":"Intia"},"fra":{"official":"République de l'Inde","common":"Inde"},"hrv":{"official":"Republika Indija","common":"Indija"},"hun":{"official":"Indiai Köztársaság","common":"India"},"ita":{"official":"Repubblica dell'India","common":"India"},"jpn":{"official":"インド","common":"インド"},"kor":{"official":"인도 공화국","common":"인도"},"nld":{"official":"Republiek India","common":"India"},"per":{"official":"جمهوری هندوستان","common":"هند"},"pol":{"official":"Republika Indii","common":"Indie"},"por":{"official":"República da Índia","common":"Índia"},"rus":{"official":"Республика Индия","common":"Индия"},"slk":{"official":"Indická republika","common":"India"},"spa":{"official":"República de la India","common":"India"},"srp":{"official":"Republika Indija","common":"Indija"},"swe":{"official":"Republiken Indien","common":"Indien"},"tur":{"official":"Hindistan Cumhuriyeti","common":"Hindistan"},"urd":{"official":"جمہوریہ بھارت","common":"بھارت"},"zho":{"official":"印度共和国","common":"印度"}},"latlng":[20,77],"landlocked":false,"borders":["BGD","BTN","MMR","CHN","NPL","PAK"],"area":3287590,"flag":"🇮🇳","demonyms":{"eng":{"f":"Indian","m":"Indian"},"fra":{"f":"Indienne","m":"Indien"}}},{"name":{"common":"British Indian Ocean Territory","official":"British Indian Ocean Territory","native":{"eng":{"official":"British Indian Ocean Territory","common":"British Indian Ocean Territory"}}},"tld":[".io"],"cca2":"IO","ccn3":"086","cca3":"IOT","cioc":"","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"USD":{"name":"United States dollar","symbol":"$"}},"idd":{"root":"+2","suffixes":["46"]},"capital":["Diego Garcia"],"altSpellings":["IO"],"region":"Africa","subregion":"Eastern Africa","languages":{"eng":"English"},"translations":{"ara":{"official":"إقليم المحيط الهندي البريطاني","common":"إقليم المحيط الهندي البريطاني"},"ces":{"official":"Britské indickooceánské území","common":"Britské indickooceánské území"},"deu":{"official":"Britisches Territorium im Indischen Ozean","common":"Britisches Territorium im Indischen Ozean"},"est":{"official":"Briti India ookeani ala","common":"Briti India ookeani ala"},"fin":{"official":"Brittiläinen Intian valtameren alue","common":"Brittiläinen Intian valtameren alue"},"fra":{"official":"Territoire britannique de l' océan Indien","common":"Territoire britannique de l'océan Indien"},"hrv":{"official":"British Indian Ocean Territory","common":"Britanski Indijskooceanski teritorij"},"hun":{"official":"Brit Indiai-óceáni Terület","common":"Brit Indiai-óceáni Terület"},"ita":{"official":"Territorio britannico dell'Oceano Indiano","common":"Territorio britannico dell'oceano indiano"},"jpn":{"official":"英領インド洋地域","common":"イギリス領インド洋地域"},"kor":{"official":"인도 공화국","common":"인도"},"nld":{"official":"Brits Indische Oceaan Territorium","common":"Britse Gebieden in de Indische Oceaan"},"per":{"official":"قلمرو بریتانیا در اقیانوس هند","common":"قلمرو بریتانیا در اقیانوس هند"},"pol":{"official":"Brytyjskie Terytorium Oceanu Indyjskiego","common":"Brytyjskie Terytorium Oceanu Indyjskiego"},"por":{"official":"British Indian Ocean Territory","common":"Território Britânico do Oceano Índico"},"rus":{"official":"Британская территория Индийского океана","common":"Британская территория в Индийском океане"},"slk":{"official":"Britské indickooceánske územie","common":"Britské indickooceánske územie"},"spa":{"official":"Territorio Británico del Océano Índico","common":"Territorio Británico del Océano Índico"},"srp":{"official":"Britanska Teritorija Indijskog Okeana","common":"Britanska Teritorija Indijskog Okeana"},"swe":{"official":"Brittiska territoriet i Indiska Oceanen","common":"Brittiska territoriet i Indiska Oceanen"},"tur":{"official":"Britanya Hint Okyanusu Toprakları","common":"Britanya Hint Okyanusu Toprakları"},"urd":{"official":"برطانوی بحرہند خطہ","common":"برطانوی بحرہند خطہ"},"zho":{"official":"英属印度洋领地","common":"英属印度洋领地"}},"latlng":[-6,71.5],"landlocked":false,"borders":[],"area":60,"flag":"🇮🇴","demonyms":{"eng":{"f":"Indian","m":"Indian"},"fra":{"f":"","m":""}}},{"name":{"common":"Ireland","official":"Republic of Ireland","native":{"eng":{"official":"Republic of Ireland","common":"Ireland"},"gle":{"official":"Poblacht na hÉireann","common":"Éire"}}},"tld":[".ie"],"cca2":"IE","ccn3":"372","cca3":"IRL","cioc":"IRL","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Western European and Others Group","currencies":{"EUR":{"name":"Euro","symbol":"€"}},"idd":{"root":"+3","suffixes":["53"]},"capital":["Dublin"],"altSpellings":["IE","Éire","Republic of Ireland","Poblacht na hÉireann"],"region":"Europe","subregion":"Northern Europe","languages":{"eng":"English","gle":"Irish"},"translations":{"ara":{"official":"جمهورية أيرلندا","common":"أيرلندا"},"ces":{"official":"Irsko","common":"Irsko"},"deu":{"official":"Republik Irland","common":"Irland"},"est":{"official":"Iirimaa","common":"Iirimaa"},"fin":{"official":"Irlannin tasavalta","common":"Irlanti"},"fra":{"official":"République d'Irlande","common":"Irlande"},"hrv":{"official":"Republika Irska","common":"Irska"},"hun":{"official":"Ír Köztársaság","common":"Írország"},"ita":{"official":"Repubblica d'Irlanda","common":"Irlanda"},"jpn":{"official":"アイルランド","common":"アイルランド"},"kor":{"official":"아일랜드 공화국","common":"아일랜드"},"nld":{"official":"Republic of Ireland","common":"Ierland"},"per":{"official":"ایرلند","common":"ایرلند"},"pol":{"official":"Republika Irlandii","common":"Irlandia"},"por":{"official":"República da Irlanda","common":"Irlanda"},"rus":{"official":"Ирландия","common":"Ирландия"},"slk":{"official":"Írska republika","common":"Írsko"},"spa":{"official":"República de Irlanda","common":"Irlanda"},"srp":{"official":"Republika Irska","common":"Irska"},"swe":{"official":"Irland","common":"Irland"},"tur":{"official":"İrlanda Cumhuriyeti","common":"İrlanda"},"urd":{"official":"جمہوریہ جزیرہ آئرلینڈ","common":"جزیرہ آئرلینڈ"},"zho":{"official":"爱尔兰共和国","common":"爱尔兰"}},"latlng":[53,-8],"landlocked":false,"borders":["GBR"],"area":70273,"flag":"🇮🇪","demonyms":{"eng":{"f":"Irish","m":"Irish"},"fra":{"f":"Irlandaise","m":"Irlandais"}}},{"name":{"common":"Iran","official":"Islamic Republic of Iran","native":{"fas":{"official":"جمهوری اسلامی ایران","common":"ایران"}}},"tld":[".ir","ایران."],"cca2":"IR","ccn3":"364","cca3":"IRN","cioc":"IRI","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"IRR":{"name":"Iranian rial","symbol":"﷼"}},"idd":{"root":"+9","suffixes":["8"]},"capital":["Tehran"],"altSpellings":["IR","Islamic Republic of Iran","Iran, Islamic Republic of","Jomhuri-ye Eslāmi-ye Irān"],"region":"Asia","subregion":"Southern Asia","languages":{"fas":"Persian (Farsi)"},"translations":{"ara":{"official":"جمهورية إيران الإسلامية","common":"إيران"},"ces":{"official":"Islámská republika Írán","common":"Írán"},"deu":{"official":"Islamische Republik Iran","common":"Iran"},"est":{"official":"Iraani Islamivabariik","common":"Iraan"},"fin":{"official":"Iranin islamilainen tasavalta","common":"Iran"},"fra":{"official":"République islamique d'Iran","common":"Iran"},"hrv":{"official":"Islamska Republika Iran","common":"Iran"},"hun":{"official":"Iráni Iszlám Köztársaság","common":"Irán"},"ita":{"official":"Repubblica islamica dell'Iran","common":"Iran"},"jpn":{"official":"イラン・イスラム共和国","common":"イラン"},"kor":{"official":"이란 이슬람 공화국","common":"이란"},"nld":{"official":"Islamitische Republiek Iran","common":"Iran"},"per":{"official":"جمهوری اسلامی ایران","common":"ایران"},"pol":{"official":"Islamska Republika Iranu","common":"Iran"},"por":{"official":"República Islâmica do Irã","common":"Irão"},"rus":{"official":"Исламская Республика Иран","common":"Иран"},"slk":{"official":"Iránska islamská republika","common":"Irán"},"spa":{"official":"República Islámica de Irán","common":"Iran"},"srp":{"official":"Islamska Republika Iran","common":"Iran"},"swe":{"official":"Islamiska republiken Iran","common":"Iran"},"tur":{"official":"İran İslam Cumhuriyeti","common":"İran"},"urd":{"official":"جمہوریہ ایران","common":"ایران"},"zho":{"official":"伊朗伊斯兰共和国","common":"伊朗"}},"latlng":[32,53],"landlocked":false,"borders":["AFG","ARM","AZE","IRQ","PAK","TUR","TKM"],"area":1648195,"flag":"🇮🇷","demonyms":{"eng":{"f":"Iranian","m":"Iranian"},"fra":{"f":"Iranienne","m":"Iranien"}}},{"name":{"common":"Iraq","official":"Republic of Iraq","native":{"ara":{"official":"جمهورية العراق","common":"العراق"},"arc":{"official":"ܩܘܼܛܢܵܐ ܐܝܼܪܲܩ","common":"ܩܘܼܛܢܵܐ"},"ckb":{"official":"کۆماری عێراق","common":"کۆماری"}}},"tld":[".iq"],"cca2":"IQ","ccn3":"368","cca3":"IRQ","cioc":"IRQ","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"IQD":{"name":"Iraqi dinar","symbol":"ع.د"}},"idd":{"root":"+9","suffixes":["64"]},"capital":["Baghdad"],"altSpellings":["IQ","Republic of Iraq","Jumhūriyyat al-‘Irāq"],"region":"Asia","subregion":"Western Asia","languages":{"ara":"Arabic","arc":"Aramaic","ckb":"Sorani"},"translations":{"ara":{"official":"جمهورية العراق","common":"العراق"},"ces":{"official":"Irácká republika","common":"Irák"},"deu":{"official":"Republik Irak","common":"Irak"},"est":{"official":"Iraagi Vabariik","common":"Iraak"},"fin":{"official":"Irakin tasavalta","common":"Irak"},"fra":{"official":"République d'Irak","common":"Irak"},"hrv":{"official":"Republika Irak","common":"Irak"},"hun":{"official":"Iraki Köztársaság","common":"Irak"},"ita":{"official":"Repubblica dell'Iraq","common":"Iraq"},"jpn":{"official":"イラク共和国","common":"イラク"},"kor":{"official":"이라크 공화국","common":"이라크"},"nld":{"official":"Republiek Irak","common":"Irak"},"per":{"official":"جمهوری عراق","common":"عراق"},"pol":{"official":"Republika Iraku","common":"Irak"},"por":{"official":"República do Iraque","common":"Iraque"},"rus":{"official":"Республика Ирак","common":"Ирак"},"slk":{"official":"Iracká republika","common":"Irak"},"spa":{"official":"República de Irak","common":"Irak"},"srp":{"official":"Republika Irak","common":"Irak"},"swe":{"official":"Republiken Irak","common":"Irak"},"tur":{"official":"Irak Cumhuriyeti","common":"Irak"},"urd":{"official":"جمہوریہ عراق","common":"عراق"},"zho":{"official":"伊拉克共和国","common":"伊拉克"}},"latlng":[33,44],"landlocked":false,"borders":["IRN","JOR","KWT","SAU","SYR","TUR"],"area":438317,"flag":"🇮🇶","demonyms":{"eng":{"f":"Iraqi","m":"Iraqi"},"fra":{"f":"Irakienne","m":"Irakien"}}},{"name":{"common":"Iceland","official":"Iceland","native":{"isl":{"official":"Ísland","common":"Ísland"}}},"tld":[".is"],"cca2":"IS","ccn3":"352","cca3":"ISL","cioc":"ISL","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Western European and Others Group","currencies":{"ISK":{"name":"Icelandic króna","symbol":"kr"}},"idd":{"root":"+3","suffixes":["54"]},"capital":["Reykjavik"],"altSpellings":["IS","Island","Republic of Iceland","Lýðveldið Ísland"],"region":"Europe","subregion":"Northern Europe","languages":{"isl":"Icelandic"},"translations":{"ara":{"official":"آيسلندا","common":"آيسلندا"},"ces":{"official":"Island","common":"Island"},"deu":{"official":"Island","common":"Island"},"est":{"official":"Islandi Vabariik","common":"Island"},"fin":{"official":"Islanti","common":"Islanti"},"fra":{"official":"République d'Islande","common":"Islande"},"hrv":{"official":"Island","common":"Island"},"hun":{"official":"Izland","common":"Izland"},"ita":{"official":"Islanda","common":"Islanda"},"jpn":{"official":"アイスランド","common":"アイスランド"},"kor":{"official":"아이슬란드 공화국","common":"아이슬란드"},"nld":{"official":"IJsland","common":"IJsland"},"per":{"official":"جمهوری ایسلند","common":"ایسلند"},"pol":{"official":"Republika Islandii","common":"Islandia"},"por":{"official":"Islândia","common":"Islândia"},"rus":{"official":"Исландия","common":"Исландия"},"slk":{"official":"Islandská republika","common":"Island"},"spa":{"official":"Islandia","common":"Islandia"},"srp":{"official":"Republika Island","common":"Island"},"swe":{"official":"Island","common":"Island"},"tur":{"official":"İzlanda","common":"İzlanda"},"urd":{"official":"آئس لینڈ","common":"آئس لینڈ"},"zho":{"official":"冰岛","common":"冰岛"}},"latlng":[65,-18],"landlocked":false,"borders":[],"area":103000,"flag":"🇮🇸","demonyms":{"eng":{"f":"Icelander","m":"Icelander"},"fra":{"f":"Islandaise","m":"Islandais"}}},{"name":{"common":"Israel","official":"State of Israel","native":{"ara":{"official":"دولة إسرائيل","common":"إسرائيل"},"heb":{"official":"מדינת ישראל","common":"ישראל"}}},"tld":[".il"],"cca2":"IL","ccn3":"376","cca3":"ISR","cioc":"ISR","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Western European and Others Group","currencies":{"ILS":{"name":"Israeli new shekel","symbol":"₪"}},"idd":{"root":"+9","suffixes":["72"]},"capital":["Jerusalem"],"altSpellings":["IL","State of Israel","Medīnat Yisrā'el"],"region":"Asia","subregion":"Western Asia","languages":{"ara":"Arabic","heb":"Hebrew"},"translations":{"ara":{"official":"دولة إسرائيل","common":"إسرائيل"},"ces":{"official":"Stát Izrael","common":"Izrael"},"deu":{"official":"Staat Israel","common":"Israel"},"est":{"official":"Iisraeli Riik","common":"Iisrael"},"fin":{"official":"Israelin valtio","common":"Israel"},"fra":{"official":"État d'Israël","common":"Israël"},"hrv":{"official":"Država Izrael","common":"Izrael"},"hun":{"official":"Izrael","common":"Izrael"},"ita":{"official":"Stato di Israele","common":"Israele"},"jpn":{"official":"イスラエル国","common":"イスラエル"},"kor":{"official":"이스라엘국","common":"이스라엘"},"nld":{"official":"Staat Israël","common":"Israël"},"per":{"official":"فلسطين اشغالی","common":"فلسطين اشغالی"},"pol":{"official":"Państwo Izrael","common":"Izrael"},"por":{"official":"Estado de Israel","common":"Israel"},"rus":{"official":"Государство Израиль","common":"Израиль"},"slk":{"official":"Izraelský štát","common":"Izrael"},"spa":{"official":"Estado de Israel","common":"Israel"},"srp":{"official":"Država Izrael","common":"Izrael"},"swe":{"official":"Staten Israel","common":"Israel"},"tur":{"official":"İsrail Devleti","common":"İsrail"},"urd":{"official":"ریاستِ اسرائیل","common":"اسرائیل"},"zho":{"official":"以色列国","common":"以色列"}},"latlng":[31.47,35.13],"landlocked":false,"borders":["EGY","JOR","LBN","PSE","SYR"],"area":20770,"flag":"🇮🇱","demonyms":{"eng":{"f":"Israeli","m":"Israeli"},"fra":{"f":"Israélienne","m":"Israélien"}}},{"name":{"common":"Italy","official":"Italian Republic","native":{"ita":{"official":"Repubblica italiana","common":"Italia"}}},"tld":[".it"],"cca2":"IT","ccn3":"380","cca3":"ITA","cioc":"ITA","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Western European and Others Group","currencies":{"EUR":{"name":"Euro","symbol":"€"}},"idd":{"root":"+3","suffixes":["9"]},"capital":["Rome"],"altSpellings":["IT","Italian Republic","Repubblica italiana"],"region":"Europe","subregion":"Southern Europe","languages":{"ita":"Italian"},"translations":{"ara":{"official":"الجمهورية الإيطالية","common":"إيطاليا"},"ces":{"official":"Italská republika","common":"Itálie"},"deu":{"official":"Italienische Republik","common":"Italien"},"est":{"official":"Itaalia Vabariik","common":"Itaalia"},"fin":{"official":"Italian tasavalta","common":"Italia"},"fra":{"official":"République italienne","common":"Italie"},"hrv":{"official":"talijanska Republika","common":"Italija"},"hun":{"official":"Olasz Köztársaság","common":"Olaszország"},"ita":{"official":"Repubblica italiana","common":"Italia"},"jpn":{"official":"イタリア共和国","common":"イタリア"},"kor":{"official":"이탈리아 공화국","common":"이탈리아"},"nld":{"official":"Italiaanse Republiek","common":"Italië"},"per":{"official":"جمهوری ایتالیا","common":"ایتالیا"},"pol":{"official":"Republika Włoska","common":"Włochy"},"por":{"official":"República Italiana","common":"Itália"},"rus":{"official":"итальянская Республика","common":"Италия"},"slk":{"official":"Talianska republika","common":"Taliansko"},"spa":{"official":"República Italiana","common":"Italia"},"srp":{"official":"Republika Italija","common":"Italija"},"swe":{"official":"Republiken Italien","common":"Italien"},"tur":{"official":"İtalya Cumhuriyeti","common":"İtalya"},"urd":{"official":"جمہوریہ اطالیہ","common":"اطالیہ"},"zho":{"official":"意大利共和国","common":"意大利"}},"latlng":[42.83333333,12.83333333],"landlocked":false,"borders":["AUT","FRA","SMR","SVN","CHE","VAT"],"area":301336,"flag":"🇮🇹","demonyms":{"eng":{"f":"Italian","m":"Italian"},"fra":{"f":"Italienne","m":"Italien"}}},{"name":{"common":"Jamaica","official":"Jamaica","native":{"eng":{"official":"Jamaica","common":"Jamaica"},"jam":{"official":"Jamaica","common":"Jamaica"}}},"tld":[".jm"],"cca2":"JM","ccn3":"388","cca3":"JAM","cioc":"JAM","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Latin American and Caribbean Group","currencies":{"JMD":{"name":"Jamaican dollar","symbol":"$"}},"idd":{"root":"+1","suffixes":["876"]},"capital":["Kingston"],"altSpellings":["JM"],"region":"Americas","subregion":"Caribbean","languages":{"eng":"English","jam":"Jamaican Patois"},"translations":{"ara":{"official":"جامايكا","common":"جامايكا"},"ces":{"official":"Jamajka","common":"Jamajka"},"deu":{"official":"Jamaika","common":"Jamaika"},"est":{"official":"Jamaica","common":"Jamaica"},"fin":{"official":"Jamaika","common":"Jamaika"},"fra":{"official":"Jamaïque","common":"Jamaïque"},"hrv":{"official":"Jamajka","common":"Jamajka"},"hun":{"official":"Jamaica","common":"Jamaica"},"ita":{"official":"Giamaica","common":"Giamaica"},"jpn":{"official":"ジャマイカ","common":"ジャマイカ"},"kor":{"official":"자메이카","common":"자메이카"},"nld":{"official":"Jamaica","common":"Jamaica"},"per":{"official":"جامائیکا","common":"جامائیکا"},"pol":{"official":"Jamajka","common":"Jamajka"},"por":{"official":"Jamaica","common":"Jamaica"},"rus":{"official":"Ямайка","common":"Ямайка"},"slk":{"official":"Jamajka","common":"Jamajka"},"spa":{"official":"Jamaica","common":"Jamaica"},"srp":{"official":"Jamajka","common":"Jamajka"},"swe":{"official":"Jamaica","common":"Jamaica"},"tur":{"official":"Jamaika","common":"Jamaika"},"urd":{"official":"جمیکا","common":"جمیکا"},"zho":{"official":"牙买加","common":"牙买加"}},"latlng":[18.25,-77.5],"landlocked":false,"borders":[],"area":10991,"flag":"🇯🇲","demonyms":{"eng":{"f":"Jamaican","m":"Jamaican"},"fra":{"f":"Jamaïcaine","m":"Jamaïcain"}}},{"name":{"common":"Jersey","official":"Bailiwick of Jersey","native":{"eng":{"official":"Bailiwick of Jersey","common":"Jersey"},"fra":{"official":"Bailliage de Jersey","common":"Jersey"},"nrf":{"official":"Bailliage dé Jèrri","common":"Jèrri"}}},"tld":[".je"],"cca2":"JE","ccn3":"832","cca3":"JEY","cioc":"","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"GBP":{"name":"British pound","symbol":"£"},"JEP":{"name":"Jersey pound","symbol":"£"}},"idd":{"root":"+4","suffixes":["4"]},"capital":["Saint Helier"],"altSpellings":["JE","Bailiwick of Jersey","Bailliage de Jersey","Bailliage dé Jèrri"],"region":"Europe","subregion":"Northern Europe","languages":{"eng":"English","fra":"French","nrf":"Jèrriais"},"translations":{"ara":{"official":"جيرزي","common":"جيرزي"},"ces":{"official":"Rychtářství Jersey","common":"Jersey"},"deu":{"official":"Vogtei Jersey","common":"Jersey"},"est":{"official":"Jersey foogtkond","common":"Jersey"},"fin":{"official":"Jersey","common":"Jersey"},"fra":{"official":"Bailliage de Jersey","common":"Jersey"},"hrv":{"official":"Struka od Jersey","common":"Jersey"},"hun":{"official":"Jersey","common":"Jersey"},"ita":{"official":"Baliato di Jersey","common":"Isola di Jersey"},"jpn":{"official":"ジャージー島","common":"ジャージー"},"kor":{"official":"저지 섬","common":"저지 섬"},"nld":{"official":"Baljuwschap Jersey","common":"Jersey"},"per":{"official":"جرزی","common":"جرزی"},"pol":{"official":"Jersey","common":"Jersey"},"por":{"official":"Bailiado de Jersey","common":"Jersey"},"rus":{"official":"Коронное владение Джерси","common":"Джерси"},"slk":{"official":"Bailiwick Jersey","common":"Jersey"},"spa":{"official":"Bailía de Jersey","common":"Jersey"},"srp":{"official":"Bejlivik Džerzi","common":"Džerzi"},"swe":{"official":"Jersey","common":"Jersey"},"tur":{"official":"Jersey","common":"Jersey"},"urd":{"official":"جرزی","common":"جرزی"},"zho":{"official":"泽西岛","common":"泽西岛"}},"latlng":[49.25,-2.16666666],"landlocked":false,"borders":[],"area":116,"flag":"🇯🇪","demonyms":{"eng":{"f":"Channel Islander","m":"Channel Islander"},"fra":{"f":"Jersiaise","m":"Jersiais"}}},{"name":{"common":"Jordan","official":"Hashemite Kingdom of Jordan","native":{"ara":{"official":"المملكة الأردنية الهاشمية","common":"الأردن"}}},"tld":[".jo","الاردن."],"cca2":"JO","ccn3":"400","cca3":"JOR","cioc":"JOR","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"JOD":{"name":"Jordanian dinar","symbol":"د.ا"}},"idd":{"root":"+9","suffixes":["62"]},"capital":["Amman"],"altSpellings":["JO","Hashemite Kingdom of Jordan","al-Mamlakah al-Urdunīyah al-Hāshimīyah"],"region":"Asia","subregion":"Western Asia","languages":{"ara":"Arabic"},"translations":{"ara":{"official":"المملكة الأردنية الهاشمية","common":"الأردن"},"ces":{"official":"Jordánské hášimovské království","common":"Jordánsko"},"deu":{"official":"Haschemitisches Königreich Jordanien","common":"Jordanien"},"est":{"official":"Jordaania Hašimiidi Kuningriik","common":"Jordaania"},"fin":{"official":"Jordanian hašemiittinen kunigaskunta","common":"Jordania"},"fra":{"official":"Royaume hachémite de Jordanie","common":"Jordanie"},"hrv":{"official":"Hašemitske Kraljevine Jordan","common":"Jordan"},"hun":{"official":"Jordánia","common":"Jordánia"},"ita":{"official":"Regno hascemita di Giordania","common":"Giordania"},"jpn":{"official":"ヨルダン・ハシミテ王国","common":"ヨルダン"},"kor":{"official":"요르단 하심 왕국","common":"요르단"},"nld":{"official":"Hasjemitisch Koninkrijk Jordanië","common":"Jordanië"},"per":{"official":"پادشاهی اُردُن هاشمی","common":"اردن"},"pol":{"official":"Jordańskie Królestwo Haszymidzkie","common":"Jordania"},"por":{"official":"Reino Hachemita da Jordânia","common":"Jordânia"},"rus":{"official":"Иорданского Хашимитского Королевства","common":"Иордания"},"slk":{"official":"Jordánske hášimovské kráľovstvo","common":"Jordánsko"},"spa":{"official":"Reino Hachemita de Jordania","common":"Jordania"},"srp":{"official":"Hašemitska Kraljevina Jordan","common":"Jordan"},"swe":{"official":"Hashimitiska kungadömet Jordanien","common":"Jordanien"},"tur":{"official":"ürdün Hâşimi Krallığı","common":"ürdün"},"urd":{"official":"ھاشمی مملکتِ اردن","common":"اردن"},"zho":{"official":"约旦哈希姆王国","common":"约旦"}},"latlng":[31,36],"landlocked":false,"borders":["IRQ","ISR","PSE","SAU","SYR"],"area":89342,"flag":"🇯🇴","demonyms":{"eng":{"f":"Jordanian","m":"Jordanian"},"fra":{"f":"Jordanienne","m":"Jordanien"}}},{"name":{"common":"Japan","official":"Japan","native":{"jpn":{"official":"日本","common":"日本"}}},"tld":[".jp",".みんな"],"cca2":"JP","ccn3":"392","cca3":"JPN","cioc":"JPN","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"JPY":{"name":"Japanese yen","symbol":"¥"}},"idd":{"root":"+8","suffixes":["1"]},"capital":["Tokyo"],"altSpellings":["JP","Nippon","Nihon"],"region":"Asia","subregion":"Eastern Asia","languages":{"jpn":"Japanese"},"translations":{"ara":{"official":"اليابان","common":"اليابان"},"ces":{"official":"Japonsko","common":"Japonsko"},"deu":{"official":"Japan","common":"Japan"},"est":{"official":"Jaapan","common":"Jaapan"},"fin":{"official":"Japani","common":"Japani"},"fra":{"official":"Japon","common":"Japon"},"hrv":{"official":"Japan","common":"Japan"},"hun":{"official":"Japán","common":"Japán"},"ita":{"official":"Giappone","common":"Giappone"},"jpn":{"official":"日本国","common":"日本"},"kor":{"official":"일본국","common":"일본"},"nld":{"official":"Japan","common":"Japan"},"per":{"official":"ژاپن","common":"ژاپن"},"pol":{"official":"Japonia","common":"Japonia"},"por":{"official":"Japão","common":"Japão"},"rus":{"official":"Япония","common":"Япония"},"slk":{"official":"Japonsko","common":"Japonsko"},"spa":{"official":"Japón","common":"Japón"},"srp":{"official":"Japan","common":"Japan"},"swe":{"official":"Japan","common":"Japan"},"tur":{"official":"Japonya","common":"Japonya"},"urd":{"official":"جاپان","common":"جاپان"},"zho":{"official":"日本国","common":"日本"}},"latlng":[36,138],"landlocked":false,"borders":[],"area":377930,"flag":"🇯🇵","demonyms":{"eng":{"f":"Japanese","m":"Japanese"},"fra":{"f":"Japonaise","m":"Japonais"}}},{"name":{"common":"Kazakhstan","official":"Republic of Kazakhstan","native":{"kaz":{"official":"Қазақстан Республикасы","common":"Қазақстан"},"rus":{"official":"Республика Казахстан","common":"Казахстан"}}},"tld":[".kz",".қаз"],"cca2":"KZ","ccn3":"398","cca3":"KAZ","cioc":"KAZ","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"KZT":{"name":"Kazakhstani tenge","symbol":"₸"}},"idd":{"root":"+7","suffixes":["6","7"]},"capital":["Astana"],"altSpellings":["KZ","Qazaqstan","Казахстан","Republic of Kazakhstan","Қазақстан Республикасы","Qazaqstan Respublïkası","Республика Казахстан","Respublika Kazakhstan"],"region":"Asia","subregion":"Central Asia","languages":{"kaz":"Kazakh","rus":"Russian"},"translations":{"ara":{"official":"جمهورية كازاخستان","common":"كازاخستان"},"ces":{"official":"Republika Kazachstán","common":"Kazachstán"},"deu":{"official":"Republik Kasachstan","common":"Kasachstan"},"est":{"official":"Kasahstani Vabariik","common":"Kasahstan"},"fin":{"official":"Kazakstanin tasavalta","common":"Kazakstan"},"fra":{"official":"République du Kazakhstan","common":"Kazakhstan"},"hrv":{"official":"Republika Kazahstan","common":"Kazahstan"},"hun":{"official":"Kazah Köztársaság","common":"Kazahsztán"},"ita":{"official":"Repubblica del Kazakhstan","common":"Kazakistan"},"jpn":{"official":"カザフスタン共和国","common":"カザフスタン"},"kor":{"official":"카자흐스탄 공화국","common":"카자흐스탄"},"nld":{"official":"Republiek Kazachstan","common":"Kazachstan"},"per":{"official":"جمهوری قزاقستان","common":"قزاقستان"},"pol":{"official":"Republika Kazachstanu","common":"Kazachstan"},"por":{"official":"República do Cazaquistão","common":"Cazaquistão"},"rus":{"official":"Республика Казахстан","common":"Казахстан"},"slk":{"official":"Kazašská republika","common":"Kazachstan"},"spa":{"official":"República de Kazajstán","common":"Kazajistán"},"srp":{"official":"Republika Kazahstan","common":"Kazahstan"},"swe":{"official":"Republiken Kazakstan","common":"Kazakstan"},"tur":{"official":"Kazakistan Cumhuriyeti","common":"Kazakistan"},"urd":{"official":"جمہوریہ قازقستان","common":"قازقستان"},"zho":{"official":"哈萨克斯坦共和国","common":"哈萨克斯坦"}},"latlng":[48,68],"landlocked":true,"borders":["CHN","KGZ","RUS","TKM","UZB"],"area":2724900,"flag":"🇰🇿","demonyms":{"eng":{"f":"Kazakhstani","m":"Kazakhstani"},"fra":{"f":"Kazakhstanaise","m":"Kazakhstanais"}}},{"name":{"common":"Kenya","official":"Republic of Kenya","native":{"eng":{"official":"Republic of Kenya","common":"Kenya"},"swa":{"official":"Republic of Kenya","common":"Kenya"}}},"tld":[".ke"],"cca2":"KE","ccn3":"404","cca3":"KEN","cioc":"KEN","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"KES":{"name":"Kenyan shilling","symbol":"Sh"}},"idd":{"root":"+2","suffixes":["54"]},"capital":["Nairobi"],"altSpellings":["KE","Republic of Kenya","Jamhuri ya Kenya"],"region":"Africa","subregion":"Eastern Africa","languages":{"eng":"English","swa":"Swahili"},"translations":{"ara":{"official":"جمهورية كينيا","common":"كينيا"},"ces":{"official":"Keňská republika","common":"Keňa"},"deu":{"official":"Republik Kenia","common":"Kenia"},"est":{"official":"Keenia Vabariik","common":"Keenia"},"fin":{"official":"Kenian tasavalta","common":"Kenia"},"fra":{"official":"République du Kenya","common":"Kenya"},"hrv":{"official":"Republika Kenija","common":"Kenija"},"hun":{"official":"Kenyai Köztársaság","common":"Kenya"},"ita":{"official":"Repubblica del Kenya","common":"Kenya"},"jpn":{"official":"ケニア共和国","common":"ケニア"},"kor":{"official":"케냐 공화국","common":"케냐"},"nld":{"official":"Republiek Kenia","common":"Kenia"},"per":{"official":"جمهوری کنیا","common":"کنیا"},"pol":{"official":"Republika Kenii","common":"Kenia"},"por":{"official":"República do Quénia","common":"Quénia"},"rus":{"official":"Республика Кения","common":"Кения"},"slk":{"official":"Kenská republika","common":"Keňa"},"spa":{"official":"República de Kenya","common":"Kenia"},"srp":{"official":"Republika Kenija","common":"Kenija"},"swe":{"official":"Republiken Kenya","common":"Kenya"},"tur":{"official":"Kenya Cumhuriyeti","common":"Kenya"},"urd":{"official":"جمہوریہ کینیا","common":"کینیا"},"zho":{"official":"肯尼亚共和国","common":"肯尼亚"}},"latlng":[1,38],"landlocked":false,"borders":["ETH","SOM","SSD","TZA","UGA"],"area":580367,"flag":"🇰🇪","demonyms":{"eng":{"f":"Kenyan","m":"Kenyan"},"fra":{"f":"Kényane","m":"Kényan"}}},{"name":{"common":"Kyrgyzstan","official":"Kyrgyz Republic","native":{"kir":{"official":"Кыргыз Республикасы","common":"Кыргызстан"},"rus":{"official":"Кыргызская Республика","common":"Киргизия"}}},"tld":[".kg"],"cca2":"KG","ccn3":"417","cca3":"KGZ","cioc":"KGZ","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"KGS":{"name":"Kyrgyzstani som","symbol":"с"}},"idd":{"root":"+9","suffixes":["96"]},"capital":["Bishkek"],"altSpellings":["KG","Киргизия","Kyrgyz Republic","Кыргыз Республикасы","Kyrgyz Respublikasy"],"region":"Asia","subregion":"Central Asia","languages":{"kir":"Kyrgyz","rus":"Russian"},"translations":{"ara":{"official":"الجمهورية القيرغيزية","common":"قيرغيزستان"},"ces":{"official":"Kyrgyzská republika","common":"Kyrgyzstán"},"deu":{"official":"Kirgisische Republik","common":"Kirgisistan"},"est":{"official":"Kirgiisi Vabariik","common":"Kõrgõzstan"},"fin":{"official":"Kirgisian tasavalta","common":"Kirgisia"},"fra":{"official":"République kirghize","common":"Kirghizistan"},"hrv":{"official":"Kirgistanu","common":"Kirgistan"},"hun":{"official":"Kirgiz Köztársaság","common":"Kirgizisztán"},"ita":{"official":"Kirghizistan","common":"Kirghizistan"},"jpn":{"official":"キルギス共和国","common":"キルギス"},"kor":{"official":"키르기스 공화국","common":"키르기스스탄"},"nld":{"official":"Kirgizische Republiek","common":"Kirgizië"},"per":{"official":"جمهوری قِرقیزستان","common":"قرقیزستان"},"pol":{"official":"Republika Kirgiska","common":"Kirgistan"},"por":{"official":"República do Quirguistão","common":"Quirguistão"},"rus":{"official":"Кыргызская Республика","common":"Киргизия"},"slk":{"official":"Kirgizská republika","common":"Kirgizsko"},"spa":{"official":"República Kirguisa","common":"Kirguizistán"},"srp":{"official":"Kirgiska Republika","common":"Kirgistan"},"swe":{"official":"Republiken Kirgizistan","common":"Kirgizistan"},"tur":{"official":"Kırgız Cumhuriyeti","common":"Kırgızistan"},"urd":{"official":"جمہوریہ کرغیزستان","common":"کرغیزستان"},"zho":{"official":"吉尔吉斯斯坦共和国","common":"吉尔吉斯斯坦"}},"latlng":[41,75],"landlocked":true,"borders":["CHN","KAZ","TJK","UZB"],"area":199951,"flag":"🇰🇬","demonyms":{"eng":{"f":"Kirghiz","m":"Kirghiz"},"fra":{"f":"Kirghize","m":"Kirghize"}}},{"name":{"common":"Cambodia","official":"Kingdom of Cambodia","native":{"khm":{"official":"ព្រះរាជាណាចក្រកម្ពុជា","common":"Kâmpŭchéa"}}},"tld":[".kh"],"cca2":"KH","ccn3":"116","cca3":"KHM","cioc":"CAM","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"KHR":{"name":"Cambodian riel","symbol":"៛"},"USD":{"name":"United States dollar","symbol":"$"}},"idd":{"root":"+8","suffixes":["55"]},"capital":["Phnom Penh"],"altSpellings":["KH","Kingdom of Cambodia"],"region":"Asia","subregion":"South-Eastern Asia","languages":{"khm":"Khmer"},"translations":{"ara":{"official":"مملكة كمبوديا","common":"كمبوديا"},"ces":{"official":"Kambodžské království","common":"Kambodža"},"deu":{"official":"Königreich Kambodscha","common":"Kambodscha"},"est":{"official":"Kambodža Kuningriik","common":"Kambodža"},"fin":{"official":"Kambodžan kuningaskunta","common":"Kambodža"},"fra":{"official":"Royaume du Cambodge","common":"Cambodge"},"hrv":{"official":"Kraljevina Kambodža","common":"Kambodža"},"hun":{"official":"Kambodzsai Királyság","common":"Kambodzsa"},"ita":{"official":"Regno di Cambogia","common":"Cambogia"},"jpn":{"official":"カンボジア王国","common":"カンボジア"},"kor":{"official":"캄보디아 왕국","common":"캄보디아"},"nld":{"official":"Koninkrijk Cambodja","common":"Cambodja"},"per":{"official":"پادشاهی کامبوج","common":"کامبوج"},"pol":{"official":"Królestwo Kambodży","common":"Kambodża"},"por":{"official":"Reino do Camboja","common":"Camboja"},"rus":{"official":"Королевство Камбоджа","common":"Камбоджа"},"slk":{"official":"Kambodžské kráľovstvo","common":"Kambodža"},"spa":{"official":"Reino de Camboya","common":"Camboya"},"srp":{"official":"Kraljevina Kambodža","common":"Kambodža"},"swe":{"official":"Konungariket Kambodja","common":"Kambodja"},"tur":{"official":"Kamboçya Krallığı","common":"Kamboçya"},"urd":{"official":"مملکتِ کمبوڈیا","common":"کمبوڈیا"},"zho":{"official":"柬埔寨王国","common":"柬埔寨"}},"latlng":[13,105],"landlocked":false,"borders":["LAO","THA","VNM"],"area":181035,"flag":"🇰🇭","demonyms":{"eng":{"f":"Cambodian","m":"Cambodian"},"fra":{"f":"Cambodgienne","m":"Cambodgien"}}},{"name":{"common":"Kiribati","official":"Independent and Sovereign Republic of Kiribati","native":{"eng":{"official":"Independent and Sovereign Republic of Kiribati","common":"Kiribati"},"gil":{"official":"Ribaberiki Kiribati","common":"Kiribati"}}},"tld":[".ki"],"cca2":"KI","ccn3":"296","cca3":"KIR","cioc":"KIR","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"AUD":{"name":"Australian dollar","symbol":"$"},"KID":{"name":"Kiribati dollar","symbol":"$"}},"idd":{"root":"+6","suffixes":["86"]},"capital":["South Tarawa"],"altSpellings":["KI","Republic of Kiribati","Ribaberiki Kiribati"],"region":"Oceania","subregion":"Micronesia","languages":{"eng":"English","gil":"Gilbertese"},"translations":{"ara":{"official":"جمهورية كيريباتي","common":"كيريباتي"},"ces":{"official":"Republika Kiribati","common":"Kiribati"},"deu":{"official":"Republik Kiribati","common":"Kiribati"},"est":{"official":"Kiribati Vabariik","common":"Kiribati"},"fin":{"official":"Kiribatin tasavalta","common":"Kiribati"},"fra":{"official":"République de Kiribati","common":"Kiribati"},"hrv":{"official":"Samostalne i suverene Republike Kiribati","common":"Kiribati"},"hun":{"official":"Kiribati Köztársaság","common":"Kiribati"},"ita":{"official":"Repubblica indipendente e sovrano di Kiribati","common":"Kiribati"},"jpn":{"official":"キリバス共和国","common":"キリバス"},"kor":{"official":"키리바시 공화국","common":"키리바시"},"nld":{"official":"Onafhankelijke en soevereine republiek Kiribati","common":"Kiribati"},"per":{"official":"جمهوری کیریباتی","common":"کیریباتی"},"pol":{"official":"Republika Kiribati","common":"Kiribati"},"por":{"official":"Independente e soberano República de Kiribati","common":"Kiribati"},"rus":{"official":"Независимой и суверенной Республики Кирибати","common":"Кирибати"},"slk":{"official":"Kiribatská republika","common":"Kiribati"},"spa":{"official":"República Independiente y Soberano de Kiribati","common":"Kiribati"},"srp":{"official":"Republika Kiribati","common":"Kiribati"},"swe":{"official":"Republiken Kiribati","common":"Kiribati"},"tur":{"official":"Kiribati Cumhuriyeti","common":"Kiribati"},"urd":{"official":"سلطنت آزاد جمہوریہ کیریباتی","common":"کیریباتی"},"zho":{"official":"基里巴斯共和国","common":"基里巴斯"}},"latlng":[1.41666666,173],"landlocked":false,"borders":[],"area":811,"flag":"🇰🇮","demonyms":{"eng":{"f":"I-Kiribati","m":"I-Kiribati"},"fra":{"f":"Kiribatienne","m":"Kiribatien"}}},{"name":{"common":"Saint Kitts and Nevis","official":"Federation of Saint Christopher and Nevis","native":{"eng":{"official":"Federation of Saint Christopher and Nevis","common":"Saint Kitts and Nevis"}}},"tld":[".kn"],"cca2":"KN","ccn3":"659","cca3":"KNA","cioc":"SKN","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Latin American and Caribbean Group","currencies":{"XCD":{"name":"Eastern Caribbean dollar","symbol":"$"}},"idd":{"root":"+1","suffixes":["869"]},"capital":["Basseterre"],"altSpellings":["KN","Federation of Saint Christopher and Nevis"],"region":"Americas","subregion":"Caribbean","languages":{"eng":"English"},"translations":{"ara":{"official":"اتحاد القديس كريستوفر ونيفيس","common":"سانت كيتس ونيفيس"},"ces":{"official":"Federace Sv. Kryštof a Nevis","common":"Svatý Kryštof a Nevis"},"deu":{"official":"Föderation von St. Kitts und Nevis","common":"St. Kitts und Nevis"},"est":{"official":"Saint Kittsi ja Nevise Föderatsioon","common":"Saint Kitts ja Nevis"},"fin":{"official":"Saint Christopherin ja Nevisin federaatio","common":"Saint Kitts ja Nevis"},"fra":{"official":"Fédération de Saint-Christophe-et-Niévès","common":"Saint-Christophe-et-Niévès"},"hrv":{"official":"Federacija Sv.Kristofora i Nevisa","common":"Sveti Kristof i Nevis"},"hun":{"official":"Saint Christopher és Nevis Államszövetség","common":"Saint Kitts és Nevis"},"ita":{"official":"Federazione di Saint Christopher e Nevis","common":"Saint Kitts e Nevis"},"jpn":{"official":"セントキッツ・ネービス","common":"セントキッツ・ネーヴィス連邦"},"kor":{"official":"세인트키츠 네비스 연방","common":"세인트키츠 네비스"},"nld":{"official":"Federatie van Saint Kitts en Nevis","common":"Saint Kitts en Nevis"},"per":{"official":"فدراسیون سنت کیتس و نویس","common":"سنت کیتس و نویس"},"pol":{"official":"Federacja Saint Kitts i Nevis","common":"Saint Kitts i Nevis"},"por":{"official":"Federação de São Cristóvão e Nevis","common":"São Cristóvão e Nevis"},"rus":{"official":"Федерация Сент-Кристофер и Н е в и с","common":"Сент-Китс и Невис"},"slk":{"official":"Feder໡cia Svätého Krištofa a Nevisu","common":"Svätý Krištof a Nevis"},"spa":{"official":"Federación de San Cristóbal y Nevis","common":"San Cristóbal y Nieves"},"srp":{"official":"Federacija Sent Kits i Nevis","common":"Sveti Kits i Nevis"},"swe":{"official":"Federationen Saint Kitts och Nevis","common":"Saint Kitts och Nevis"},"tur":{"official":"Saint Kitts ve Nevis Federasyonu","common":"Saint Kitts ve Nevis"},"urd":{"official":"وفاقِ سینٹ کیٹز و ناویس","common":"سینٹ کیٹز و ناویس"},"zho":{"official":"圣克里斯托弗和尼维斯联邦","common":"圣基茨和尼维斯"}},"latlng":[17.33333333,-62.75],"landlocked":false,"borders":[],"area":261,"flag":"🇰🇳","demonyms":{"eng":{"f":"Kittitian or Nevisian","m":"Kittitian or Nevisian"},"fra":{"f":"Kittitienne-et-nevicienne","m":"Kittitien-et-nevicien"}}},{"name":{"common":"South Korea","official":"Republic of Korea","native":{"kor":{"official":"대한민국","common":"한국"}}},"tld":[".kr",".한국"],"cca2":"KR","ccn3":"410","cca3":"KOR","cioc":"KOR","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"KRW":{"name":"South Korean won","symbol":"₩"}},"idd":{"root":"+8","suffixes":["2"]},"capital":["Seoul"],"altSpellings":["KR","Korea, Republic of","Republic of Korea","남한","남조선"],"region":"Asia","subregion":"Eastern Asia","languages":{"kor":"Korean"},"translations":{"ara":{"official":"جمهورية كوريا","common":"كوريا الجنوبية"},"ces":{"official":"Korejská republika","common":"Jižní Korea"},"deu":{"official":"Republik Korea","common":"Südkorea"},"est":{"official":"Korea Vabariik","common":"Lõuna-Korea"},"fin":{"official":"Korean tasavalta","common":"Etelä-Korea"},"fra":{"official":"République de Corée","common":"Corée du Sud"},"hrv":{"official":"Republika Koreja","common":"Južna Koreja"},"hun":{"official":"Koreai Köztársaság","common":"Dél-Korea"},"ita":{"official":"Repubblica di Corea","common":"Corea del Sud"},"jpn":{"official":"大韓民国","common":"韓国"},"kor":{"official":"대한민국","common":"한국"},"nld":{"official":"Republiek Korea","common":"Zuid-Korea"},"per":{"official":"جمهوری کره","common":"کرهٔ جنوبی"},"pol":{"official":"Republika Korei","common":"Korea Południowa"},"por":{"official":"República da Coreia","common":"Coreia do Sul"},"rus":{"official":"Республика Корея","common":"Южная Корея"},"slk":{"official":"Kórejská republika","common":"Južná Kórea"},"spa":{"official":"República de Corea","common":"Corea del Sur"},"srp":{"official":"Republika Koreja","common":"Južna Koreja"},"swe":{"official":"Republiken Korea","common":"Sydkorea"},"tur":{"official":"Kore Cumhuriyeti","common":"Güney Kore"},"urd":{"official":"جمہوریہ کوریا ","common":"جنوبی کوریا"},"zho":{"official":"大韩民国","common":"韩国"}},"latlng":[37,127.5],"landlocked":false,"borders":["PRK"],"area":100210,"flag":"🇰🇷","demonyms":{"eng":{"f":"South Korean","m":"South Korean"},"fra":{"f":"Sud-coréenne","m":"Sud-coréen"}}},{"name":{"common":"Kosovo","official":"Republic of Kosovo","native":{"sqi":{"official":"Republika e Kosovës","common":"Kosova"},"srp":{"official":"Република Косово","common":"Косово"}}},"tld":[".xk"],"cca2":"XK","ccn3":"","cca3":"UNK","cioc":"KOS","independent":null,"status":"user-assigned","unMember":false,"unRegionalGroup":"","currencies":{"EUR":{"name":"Euro","symbol":"€"}},"idd":{"root":"+3","suffixes":["83"]},"capital":["Pristina"],"altSpellings":["XK","Република Косово"],"region":"Europe","subregion":"Southeast Europe","languages":{"sqi":"Albanian","srp":"Serbian"},"translations":{"ara":{"official":"جمهورية كوسوفو","common":"كوسوفو"},"ces":{"official":"Kosovská republika","common":"Kosovo"},"deu":{"official":"Republik Kosovo","common":"Kosovo"},"est":{"official":"Kosovo Vabariik","common":"Kosovo"},"fin":{"official":"Kosovon tasavalta","common":"Kosovo"},"fra":{"official":"République du Kosovo","common":"Kosovo"},"hrv":{"official":"Republika Kosovo","common":"Kosovo"},"hun":{"official":"Koszovó","common":"Koszovó"},"ita":{"official":"Repubblica del Kosovo","common":"Kosovo"},"jpn":{"official":"コソボ共和国","common":"コソボ"},"kor":{"official":"코소보 공화국","common":"코소보"},"nld":{"official":"Republiek Kosovo","common":"Kosovo"},"per":{"official":"جمهوری کوزوو","common":"کوزوو"},"pol":{"official":"Republika Kosowa","common":"Kosowo"},"por":{"official":"República do Kosovo","common":"Kosovo"},"rus":{"official":"Республика Косово","common":"Республика Косово"},"slk":{"official":"Republika Kosovo","common":"Kosovo"},"spa":{"official":"República de Kosovo","common":"Kosovo"},"srp":{"official":"Republika Kosovo","common":"Kosovo"},"swe":{"official":"Republiken Kosovo","common":"Kosovo"},"tur":{"official":"Kosova Cumhuriyeti","common":"Kosova"},"urd":{"official":"جمہوریہ کوسووہ","common":"کوسووہ"},"zho":{"official":"科索沃共和国","common":"科索沃"}},"latlng":[42.666667,21.166667],"landlocked":true,"borders":["ALB","MKD","MNE","SRB"],"area":10908,"flag":"🇽🇰","demonyms":{"eng":{"f":"Kosovar","m":"Kosovar"},"fra":{"f":"Kosovare","m":"Kosovar"}}},{"name":{"common":"Kuwait","official":"State of Kuwait","native":{"ara":{"official":"دولة الكويت","common":"الكويت"}}},"tld":[".kw"],"cca2":"KW","ccn3":"414","cca3":"KWT","cioc":"KUW","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"KWD":{"name":"Kuwaiti dinar","symbol":"د.ك"}},"idd":{"root":"+9","suffixes":["65"]},"capital":["Kuwait City"],"altSpellings":["KW","State of Kuwait","Dawlat al-Kuwait"],"region":"Asia","subregion":"Western Asia","languages":{"ara":"Arabic"},"translations":{"ara":{"official":"دولة الكويت","common":"الكويت"},"ces":{"official":"Stát Kuvajt","common":"Kuvajt"},"deu":{"official":"Staat Kuwait","common":"Kuwait"},"est":{"official":"Kuveidi Riik","common":"Kuveit"},"fin":{"official":"Kuwaitin valtio","common":"Kuwait"},"fra":{"official":"État du Koweït","common":"Koweït"},"hrv":{"official":"Država Kuvajt","common":"Kuvajt"},"hun":{"official":"Kuvaiti Állam","common":"Kuvait"},"ita":{"official":"Stato del Kuwait","common":"Kuwait"},"jpn":{"official":"クウェート国","common":"クウェート"},"kor":{"official":"쿠웨이트국","common":"쿠웨이트"},"nld":{"official":"Staat Koeweit","common":"Koeweit"},"per":{"official":"دولت کویت","common":"کُویت"},"pol":{"official":"Państwo Kuwejt","common":"Kuwejt"},"por":{"official":"Estado do Kuwait","common":"Kuwait"},"rus":{"official":"Государство Кувейт","common":"Кувейт"},"slk":{"official":"Kuvajtský štát","common":"Kuvajt"},"spa":{"official":"Estado de Kuwait","common":"Kuwait"},"srp":{"official":"Država Kuvajt","common":"Kuvajt"},"swe":{"official":"Staten Kuwait","common":"Kuwait"},"tur":{"official":"Kuveyt Devleti","common":"Kuveyt"},"urd":{"official":"دولتِ کویت","common":"کویت"},"zho":{"official":"科威特国","common":"科威特"}},"latlng":[29.5,45.75],"landlocked":false,"borders":["IRQ","SAU"],"area":17818,"flag":"🇰🇼","demonyms":{"eng":{"f":"Kuwaiti","m":"Kuwaiti"},"fra":{"f":"Koweïtienne","m":"Koweïtien"}}},{"name":{"common":"Laos","official":"Lao People's Democratic Republic","native":{"lao":{"official":"ສາທາລະນະ ຊາທິປະໄຕ ຄົນລາວ ຂອງ","common":"ສປປລາວ"}}},"tld":[".la"],"cca2":"LA","ccn3":"418","cca3":"LAO","cioc":"LAO","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"LAK":{"name":"Lao kip","symbol":"₭"}},"idd":{"root":"+8","suffixes":["56"]},"capital":["Vientiane"],"altSpellings":["LA","Lao","Lao People's Democratic Republic","Sathalanalat Paxathipatai Paxaxon Lao"],"region":"Asia","subregion":"South-Eastern Asia","languages":{"lao":"Lao"},"translations":{"ara":{"official":"جمهورية لاوس الديمقراطية الشعبية","common":"لاوس"},"ces":{"official":"Laoská lidově demokratická republika","common":"Laos"},"deu":{"official":"Demokratische Volksrepublik Laos","common":"Laos"},"est":{"official":"Laose Demokraatlik Rahvavabariik","common":"Laos"},"fin":{"official":"Laosin demokraattinen kansantasavalta","common":"Laos"},"fra":{"official":"République démocratique populaire lao","common":"Laos"},"hrv":{"official":"Narodna Demokratska Republika","common":"Laos"},"hun":{"official":"Laoszi Népi Demokratikus Köztársaság","common":"Laosz"},"ita":{"official":"Repubblica democratica popolare del Laos","common":"Laos"},"jpn":{"official":"ラオス人民民主共和国","common":"ラオス"},"kor":{"official":"라오 인민 민주 공화국","common":"라오스"},"nld":{"official":"Lao Democratische Volksrepubliek","common":"Laos"},"per":{"official":"جمهوری دموکراتیک خلق لائوس","common":"لائوس"},"pol":{"official":"Laotańska Republika Ludowo-Demokratyczna","common":"Laos"},"por":{"official":"Laos, República Democrática","common":"Laos"},"rus":{"official":"Лаосская Народно-Демократическая Республика","common":"Лаос"},"slk":{"official":"Laoská ľudovodemokratická republika","common":"Laos"},"spa":{"official":"República Democrática Popular Lao","common":"Laos"},"srp":{"official":"Narodna Demokratska Republika Laos","common":"Laos"},"swe":{"official":"Demokratiska folkrepubliken Laos","common":"Laos"},"tur":{"official":"Laos Demokratik Halk Cumhuriyeti","common":"Laos"},"urd":{"official":"عوامی جمہوری جمہوریہ لاؤ","common":"لاؤس"},"zho":{"official":"老挝人民民主共和国","common":"老挝"}},"latlng":[18,105],"landlocked":true,"borders":["MMR","KHM","CHN","THA","VNM"],"area":236800,"flag":"🇱🇦","demonyms":{"eng":{"f":"Laotian","m":"Laotian"},"fra":{"f":"Laotienne","m":"Laotien"}}},{"name":{"common":"Lebanon","official":"Lebanese Republic","native":{"ara":{"official":"الجمهورية اللبنانية","common":"لبنان"},"fra":{"official":"République libanaise","common":"Liban"}}},"tld":[".lb"],"cca2":"LB","ccn3":"422","cca3":"LBN","cioc":"LBN","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"LBP":{"name":"Lebanese pound","symbol":"ل.ل"}},"idd":{"root":"+9","suffixes":["61"]},"capital":["Beirut"],"altSpellings":["LB","Lebanese Republic","Al-Jumhūrīyah Al-Libnānīyah"],"region":"Asia","subregion":"Western Asia","languages":{"ara":"Arabic","fra":"French"},"translations":{"ara":{"official":"الجمهورية اللبنانية","common":"لبنان"},"ces":{"official":"Libanonská republika","common":"Libanon"},"deu":{"official":"Libanesische Republik","common":"Libanon"},"est":{"official":"Liibanoni Vabariik","common":"Liibanon"},"fin":{"official":"Libanonin tasavalta","common":"Libanon"},"fra":{"official":"République libanaise","common":"Liban"},"hrv":{"official":"Libanonska Republika","common":"Libanon"},"hun":{"official":"Libanoni Köztársaság","common":"Libanon"},"ita":{"official":"Repubblica libanese","common":"Libano"},"jpn":{"official":"レバノン共和国","common":"レバノン"},"kor":{"official":"레바논 공화국","common":"레바논"},"nld":{"official":"Libanese Republiek","common":"Libanon"},"per":{"official":"جمهوری لبنان","common":"لبنان"},"pol":{"official":"Republika Libańska","common":"Liban"},"por":{"official":"República Libanesa","common":"Líbano"},"rus":{"official":"Ливанская Республика","common":"Ливан"},"slk":{"official":"Libanonská republika","common":"Libanon"},"spa":{"official":"República Libanesa","common":"Líbano"},"srp":{"official":"Libanska Republika","common":"Liban"},"swe":{"official":"Republiken Libanon","common":"Libanon"},"tur":{"official":"Lübnan Cumhuriyeti","common":"Lübnan"},"urd":{"official":"جمہوریہ لبنان","common":"لبنان"},"zho":{"official":"黎巴嫩共和国","common":"黎巴嫩"}},"latlng":[33.83333333,35.83333333],"landlocked":false,"borders":["ISR","SYR"],"area":10452,"flag":"🇱🇧","demonyms":{"eng":{"f":"Lebanese","m":"Lebanese"},"fra":{"f":"Libanaise","m":"Libanais"}}},{"name":{"common":"Liberia","official":"Republic of Liberia","native":{"eng":{"official":"Republic of Liberia","common":"Liberia"}}},"tld":[".lr"],"cca2":"LR","ccn3":"430","cca3":"LBR","cioc":"LBR","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"LRD":{"name":"Liberian dollar","symbol":"$"}},"idd":{"root":"+2","suffixes":["31"]},"capital":["Monrovia"],"altSpellings":["LR","Republic of Liberia"],"region":"Africa","subregion":"Western Africa","languages":{"eng":"English"},"translations":{"ara":{"official":"جمهورية ليبيريا","common":"ليبيريا"},"ces":{"official":"Liberijská republika","common":"Libérie"},"deu":{"official":"Republik Liberia","common":"Liberia"},"est":{"official":"Libeeria Vabariik","common":"Libeeria"},"fin":{"official":"Liberian tasavalta","common":"Liberia"},"fra":{"official":"République du Libéria","common":"Liberia"},"hrv":{"official":"Republika Liberija","common":"Liberija"},"hun":{"official":"Libériai Köztársaság","common":"Libéria"},"ita":{"official":"Repubblica di Liberia","common":"Liberia"},"jpn":{"official":"リベリア共和国","common":"リベリア"},"kor":{"official":"라이베리아 공화국","common":"라이베리아"},"nld":{"official":"Republiek Liberia","common":"Liberia"},"per":{"official":"جمهوری لیبریا","common":"لیبـِریا"},"pol":{"official":"Republika Liberii","common":"Liberia"},"por":{"official":"República da Libéria","common":"Libéria"},"rus":{"official":"Республика Либерия","common":"Либерия"},"slk":{"official":"Libérijská republika","common":"Libéria"},"spa":{"official":"República de Liberia","common":"Liberia"},"srp":{"official":"Republika Liberija","common":"Liberija"},"swe":{"official":"Republiken Liberia","common":"Liberia"},"tur":{"official":"Liberya Cumhuriyeti","common":"Liberya"},"urd":{"official":"جمہوریہ لائبیریا","common":"لائبیریا"},"zho":{"official":"利比里亚共和国","common":"利比里亚"}},"latlng":[6.5,-9.5],"landlocked":false,"borders":["GIN","CIV","SLE"],"area":111369,"flag":"🇱🇷","demonyms":{"eng":{"f":"Liberian","m":"Liberian"},"fra":{"f":"Libérienne","m":"Libérien"}}},{"name":{"common":"Libya","official":"State of Libya","native":{"ara":{"official":"دولة ليبيا","common":"ليبيا"}}},"tld":[".ly"],"cca2":"LY","ccn3":"434","cca3":"LBY","cioc":"LBA","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"LYD":{"name":"Libyan dinar","symbol":"ل.د"}},"idd":{"root":"+2","suffixes":["18"]},"capital":["Tripoli"],"altSpellings":["LY","State of Libya","Dawlat Libya"],"region":"Africa","subregion":"Northern Africa","languages":{"ara":"Arabic"},"translations":{"ara":{"official":"دولة ليبيا","common":"ليبيا"},"ces":{"official":"Stát Libye","common":"Libye"},"deu":{"official":"Staat Libyen","common":"Libyen"},"est":{"official":"Liibüa","common":"Liibüa"},"fin":{"official":"Libyan valtio","common":"Libya"},"fra":{"official":"Grande République arabe libyenne populaire et socialiste","common":"Libye"},"hrv":{"official":"Država Libiji","common":"Libija"},"hun":{"official":"Líbia Állam","common":"Líbia"},"ita":{"official":"Stato della Libia","common":"Libia"},"jpn":{"official":"リビア","common":"リビア"},"kor":{"official":"리비아","common":"리비아"},"nld":{"official":"Staat van Libië","common":"Libië"},"per":{"official":"دولت لیبی","common":"لیبی"},"pol":{"official":"Państwo Libia","common":"Libia"},"por":{"official":"Estado da Líbia","common":"Líbia"},"rus":{"official":"Государство Ливии","common":"Ливия"},"slk":{"official":"Líbya","common":"Líbya"},"spa":{"official":"Estado de Libia","common":"Libia"},"srp":{"official":"Država Libija","common":"Libija"},"swe":{"official":"Staten Libyen","common":"Libyen"},"tur":{"official":"Libya Devleti","common":"Libya"},"urd":{"official":"ریاستِ لیبیا","common":"لیبیا"},"zho":{"official":"利比亚国","common":"利比亚"}},"latlng":[25,17],"landlocked":false,"borders":["DZA","TCD","EGY","NER","SDN","TUN"],"area":1759540,"flag":"🇱🇾","demonyms":{"eng":{"f":"Libyan","m":"Libyan"},"fra":{"f":"Libyenne","m":"Libyen"}}},{"name":{"common":"Saint Lucia","official":"Saint Lucia","native":{"eng":{"official":"Saint Lucia","common":"Saint Lucia"}}},"tld":[".lc"],"cca2":"LC","ccn3":"662","cca3":"LCA","cioc":"LCA","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Latin American and Caribbean Group","currencies":{"XCD":{"name":"Eastern Caribbean dollar","symbol":"$"}},"idd":{"root":"+1","suffixes":["758"]},"capital":["Castries"],"altSpellings":["LC"],"region":"Americas","subregion":"Caribbean","languages":{"eng":"English"},"translations":{"ara":{"official":"سانت لوسيا","common":"سانت لوسيا"},"ces":{"official":"Svatá Lucie","common":"Svatá Lucie"},"deu":{"official":"St. Lucia","common":"St. Lucia"},"est":{"official":"Saint Lucia","common":"Saint Lucia"},"fin":{"official":"Saint Lucia","common":"Saint Lucia"},"fra":{"official":"Sainte-Lucie","common":"Sainte-Lucie"},"hrv":{"official":"Sveta Lucija","common":"Sveta Lucija"},"hun":{"official":"Saint Lucia","common":"Saint Lucia"},"ita":{"official":"Santa Lucia","common":"Santa Lucia"},"jpn":{"official":"セントルシア","common":"セントルシア"},"kor":{"official":"세인트루시아","common":"세인트루시아"},"nld":{"official":"Saint Lucia","common":"Saint Lucia"},"per":{"official":"سنت لوسیا","common":"سنت لوسیا"},"pol":{"official":"Saint Lucia","common":"Saint Lucia"},"por":{"official":"Santa Lúcia","common":"Santa Lúcia"},"rus":{"official":"Сент-Люсия","common":"Сент-Люсия"},"slk":{"official":"Svätá Lucia","common":"Svätá Lucia"},"spa":{"official":"Santa Lucía","common":"Santa Lucía"},"srp":{"official":"Sveta Lucija","common":"Sveta Lucija"},"swe":{"official":"Saint Lucia","common":"Saint Lucia"},"tur":{"official":"Saint Lucia","common":"Saint Lucia"},"urd":{"official":"سینٹ لوسیا","common":"سینٹ لوسیا"},"zho":{"official":"圣卢西亚","common":"圣卢西亚"}},"latlng":[13.88333333,-60.96666666],"landlocked":false,"borders":[],"area":616,"flag":"🇱🇨","demonyms":{"eng":{"f":"Saint Lucian","m":"Saint Lucian"},"fra":{"f":"Saint-Lucienne","m":"Saint-Lucien"}}},{"name":{"common":"Liechtenstein","official":"Principality of Liechtenstein","native":{"deu":{"official":"Fürstentum Liechtenstein","common":"Liechtenstein"}}},"tld":[".li"],"cca2":"LI","ccn3":"438","cca3":"LIE","cioc":"LIE","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Western European and Others Group","currencies":{"CHF":{"name":"Swiss franc","symbol":"Fr"}},"idd":{"root":"+4","suffixes":["23"]},"capital":["Vaduz"],"altSpellings":["LI","Principality of Liechtenstein","Fürstentum Liechtenstein"],"region":"Europe","subregion":"Western Europe","languages":{"deu":"German"},"translations":{"ara":{"official":"إمارة ليختنشتاين","common":"ليختنشتاين"},"ces":{"official":"Knížectví Lichtenštejnské","common":"Lichtenštejnsko"},"deu":{"official":"Fürstentum Liechtenstein","common":"Liechtenstein"},"est":{"official":"Liechtensteini Vürstiriik","common":"Liechtenstein"},"fin":{"official":"Liechensteinin ruhtinaskunta","common":"Liechenstein"},"fra":{"official":"Principauté du Liechtenstein","common":"Liechtenstein"},"hrv":{"official":"Kneževina Lihtenštajn","common":"Lihtenštajn"},"hun":{"official":"Liechtensteini Hercegség","common":"Liechtenstein"},"ita":{"official":"Principato del Liechtenstein","common":"Liechtenstein"},"jpn":{"official":"リヒテンシュタイン公国","common":"リヒテンシュタイン"},"kor":{"official":"리히텐슈타인 공국","common":"리히텐슈타인"},"nld":{"official":"Vorstendom Liechtenstein","common":"Liechtenstein"},"per":{"official":"شاهزاده‌نشین لیختن‌اشتاین","common":"لیختن‌اشتاین"},"pol":{"official":"Księstwo Liechtensteinu","common":"Liechtenstein"},"por":{"official":"Principado de Liechtenstein","common":"Liechtenstein"},"rus":{"official":"Княжество Лихтенштейн","common":"Лихтенштейн"},"slk":{"official":"Lichtenštajnské kniežatstvo","common":"Lichtenštajnsko"},"spa":{"official":"Principado de Liechtenstein","common":"Liechtenstein"},"srp":{"official":"Kneževina Lihtenštajn","common":"Lihtenštajn"},"swe":{"official":"Furstendömet Liechtenstein","common":"Liechtenstein"},"tur":{"official":"Lihtenştayn Prensliği","common":"Lihtenştayn"},"urd":{"official":"امارات لیختینستائن","common":"لیختینستائن"},"zho":{"official":"列支敦士登公国","common":"列支敦士登"}},"latlng":[47.26666666,9.53333333],"landlocked":true,"borders":["AUT","CHE"],"area":160,"flag":"🇱🇮","demonyms":{"eng":{"f":"Liechtensteiner","m":"Liechtensteiner"},"fra":{"f":"Liechtensteinoise","m":"Liechtensteinois"}}},{"name":{"common":"Sri Lanka","official":"Democratic Socialist Republic of Sri Lanka","native":{"sin":{"official":"ශ්‍රී ලංකා ප්‍රජාතාන්ත්‍රික සමාජවාදී ජනරජය","common":"ශ්‍රී ලංකාව"},"tam":{"official":"இலங்கை சனநாயக சோசலிசக் குடியரசு","common":"இலங்கை"}}},"tld":[".lk",".இலங்கை",".ලංකා"],"cca2":"LK","ccn3":"144","cca3":"LKA","cioc":"SRI","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"LKR":{"name":"Sri Lankan rupee","symbol":"Rs රු"}},"idd":{"root":"+9","suffixes":["4"]},"capital":["Colombo"],"altSpellings":["LK","ilaṅkai","Democratic Socialist Republic of Sri Lanka"],"region":"Asia","subregion":"Southern Asia","languages":{"sin":"Sinhala","tam":"Tamil"},"translations":{"ara":{"official":"جمهورية سريلانكا الديمقراطية الشعبية","common":"سريلانكا"},"ces":{"official":"Srílanská demokratická socialistická republika","common":"Srí Lanka"},"deu":{"official":"Demokratische Sozialistische Republik Sri Lanka","common":"Sri Lanka"},"est":{"official":"Sri Lanka Demokraatlik Sotsialistlik Vabariik","common":"Sri Lanka"},"fin":{"official":"Sri Lankan demokraattinen sosialistinen tasavalta","common":"Sri Lanka"},"fra":{"official":"République démocratique socialiste du Sri Lanka","common":"Sri Lanka"},"hrv":{"official":"Demokratska Socijalističke Republike Šri Lanke","common":"Šri Lanka"},"hun":{"official":"Srí Lanka-i Demokratikus Szocialista Köztársaság","common":"Srí Lanka"},"ita":{"official":"Repubblica democratica socialista dello Sri Lanka","common":"Sri Lanka"},"jpn":{"official":"スリランカ民主社会主義共和国","common":"スリランカ"},"kor":{"official":"스리랑카 민주 사회주의 공화국","common":"스리랑카"},"nld":{"official":"Democratische Socialistische Republiek Sri Lanka","common":"Sri Lanka"},"per":{"official":"جمهوری دموکراتیک سوسیالیستی سری‌لانکا","common":"سری‌لانکا"},"pol":{"official":"Demokratyczno-Socjalistyczna Republika Sri Lanki","common":"Sri Lanka"},"por":{"official":"República Democrática Socialista do Sri Lanka","common":"Sri Lanka"},"rus":{"official":"Демократическая Социалистическая Республика Шри-Ланка","common":"Шри-Ланка"},"slk":{"official":"Srílanská demokratická socialistická republika","common":"Srí Lanka"},"spa":{"official":"República Democrática Socialista de Sri Lanka","common":"Sri Lanka"},"srp":{"official":"Demokratska Socijalistička Republika Šri Lanka","common":"Šri Lanka"},"swe":{"official":"Demokratiska socialistiska republiken Sri Lanka","common":"Sri Lanka"},"tur":{"official":"Sri Lanka Demokratik Sosyalist Cumhuriyeti","common":"Sri Lanka"},"urd":{"official":"جمہوری و اشتراکی جمہوریہ سری لنکا","common":"سری لنکا"},"zho":{"official":"斯里兰卡民主社会主义共和国","common":"斯里兰卡"}},"latlng":[7,81],"landlocked":false,"borders":["IND"],"area":65610,"flag":"🇱🇰","demonyms":{"eng":{"f":"Sri Lankan","m":"Sri Lankan"},"fra":{"f":"Sri-lankaise","m":"Sri-lankais"}}},{"name":{"common":"Lesotho","official":"Kingdom of Lesotho","native":{"eng":{"official":"Kingdom of Lesotho","common":"Lesotho"},"sot":{"official":"Kingdom of Lesotho","common":"Lesotho"}}},"tld":[".ls"],"cca2":"LS","ccn3":"426","cca3":"LSO","cioc":"LES","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"LSL":{"name":"Lesotho loti","symbol":"L"},"ZAR":{"name":"South African rand","symbol":"R"}},"idd":{"root":"+2","suffixes":["66"]},"capital":["Maseru"],"altSpellings":["LS","Kingdom of Lesotho","Muso oa Lesotho"],"region":"Africa","subregion":"Southern Africa","languages":{"eng":"English","sot":"Sotho"},"translations":{"ara":{"official":"مملكة ليسوتو","common":"ليسوتو"},"ces":{"official":"Lesothské království","common":"Lesotho"},"deu":{"official":"Königreich Lesotho","common":"Lesotho"},"est":{"official":"Lesotho Kuningriik","common":"Lesotho"},"fin":{"official":"Lesothon kuningaskunta","common":"Lesotho"},"fra":{"official":"Royaume du Lesotho","common":"Lesotho"},"hrv":{"official":"Kraljevina Lesoto","common":"Lesoto"},"hun":{"official":"Lesothói Királyság","common":"Lesotho"},"ita":{"official":"Regno del Lesotho","common":"Lesotho"},"jpn":{"official":"レソト王国","common":"レソト"},"kor":{"official":"레소토 왕국","common":"레소토"},"nld":{"official":"Koninkrijk Lesotho","common":"Lesotho"},"per":{"official":"پادشاهی لسوتو","common":"لسوتو"},"pol":{"official":"Królestwo Lesotho","common":"Lesotho"},"por":{"official":"Reino do Lesoto","common":"Lesoto"},"rus":{"official":"Королевство Лесото","common":"Лесото"},"slk":{"official":"Lesothské kráľovstvo","common":"Lesotho"},"spa":{"official":"Reino de Lesotho","common":"Lesotho"},"srp":{"official":"Kraljevina Lesoto","common":"Lesoto"},"swe":{"official":"Konungariket Lesotho","common":"Lesotho"},"tur":{"official":"Lesotho Krallığı","common":"Lesotho"},"urd":{"official":"مملکتِ لیسوتھو","common":"لیسوتھو"},"zho":{"official":"莱索托王国","common":"莱索托"}},"latlng":[-29.5,28.5],"landlocked":true,"borders":["ZAF"],"area":30355,"flag":"🇱🇸","demonyms":{"eng":{"f":"Mosotho","m":"Mosotho"},"fra":{"f":"Lésothienne","m":"Lésothien"}}},{"name":{"common":"Lithuania","official":"Republic of Lithuania","native":{"lit":{"official":"Lietuvos Respublikos","common":"Lietuva"}}},"tld":[".lt"],"cca2":"LT","ccn3":"440","cca3":"LTU","cioc":"LTU","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Eastern European Group","currencies":{"EUR":{"name":"Euro","symbol":"€"}},"idd":{"root":"+3","suffixes":["70"]},"capital":["Vilnius"],"altSpellings":["LT","Republic of Lithuania","Lietuvos Respublika"],"region":"Europe","subregion":"Northern Europe","languages":{"lit":"Lithuanian"},"translations":{"ara":{"official":"جمهورية ليتوانيا","common":"ليتوانيا"},"ces":{"official":"Litevská republika","common":"Litva"},"deu":{"official":"Republik Litauen","common":"Litauen"},"est":{"official":"Leedu Vabariik","common":"Leedu"},"fin":{"official":"Liettuan tasavalta","common":"Liettua"},"fra":{"official":"République de Lituanie","common":"Lituanie"},"hrv":{"official":"Republika Litva","common":"Litva"},"hun":{"official":"Litván Köztársaság","common":"Litvánia"},"ita":{"official":"Repubblica di Lituania","common":"Lituania"},"jpn":{"official":"リトアニア共和国","common":"リトアニア"},"kor":{"official":"리투아니아 공화국","common":"리투아니아"},"nld":{"official":"Republiek Litouwen","common":"Litouwen"},"per":{"official":"لیتوانیایی‌ها","common":"لیتوانیایی‌ها"},"pol":{"official":"Republika Litewska","common":"Litwa"},"por":{"official":"República da Lituânia","common":"Lituânia"},"rus":{"official":"Литовская Республика","common":"Литва"},"slk":{"official":"Litovská republika","common":"Litva"},"spa":{"official":"República de Lituania","common":"Lituania"},"srp":{"official":"Republika Litvanija","common":"Litvanija"},"swe":{"official":"Republiken Litauen","common":"Litauen"},"tur":{"official":"Litvanya Cumhuriyeti","common":"Litvanya"},"urd":{"official":"جمہوریہ لتھووینیا","common":"لتھووینیا"},"zho":{"official":"立陶宛共和国","common":"立陶宛"}},"latlng":[56,24],"landlocked":false,"borders":["BLR","LVA","POL","RUS"],"area":65300,"flag":"🇱🇹","demonyms":{"eng":{"f":"Lithuanian","m":"Lithuanian"},"fra":{"f":"Lituanienne","m":"Lituanien"}}},{"name":{"common":"Luxembourg","official":"Grand Duchy of Luxembourg","native":{"deu":{"official":"Großherzogtum Luxemburg","common":"Luxemburg"},"fra":{"official":"Grand-Duché de Luxembourg","common":"Luxembourg"},"ltz":{"official":"Groussherzogtum Lëtzebuerg","common":"Lëtzebuerg"}}},"tld":[".lu"],"cca2":"LU","ccn3":"442","cca3":"LUX","cioc":"LUX","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Western European and Others Group","currencies":{"EUR":{"name":"Euro","symbol":"€"}},"idd":{"root":"+3","suffixes":["52"]},"capital":["Luxembourg"],"altSpellings":["LU","Grand Duchy of Luxembourg","Grand-Duché de Luxembourg","Großherzogtum Luxemburg","Groussherzogtum Lëtzebuerg"],"region":"Europe","subregion":"Western Europe","languages":{"deu":"German","fra":"French","ltz":"Luxembourgish"},"translations":{"ara":{"official":"دوقية لوكسمبورغ","common":"لوكسمبورغ"},"ces":{"official":"Lucemburské velkovévodství","common":"Lucembursko"},"deu":{"official":"Großherzogtum Luxemburg,","common":"Luxemburg"},"est":{"official":"Luksemburgi Suurhertsogiriik","common":"Luksemburg"},"fin":{"official":"Luxemburgin suurherttuakunta","common":"Luxemburg"},"fra":{"official":"Grand-Duché de Luxembourg","common":"Luxembourg"},"hrv":{"official":"Veliko Vojvodstvo Luksemburg","common":"Luksemburg"},"hun":{"official":"Luxemburgi Nagyhercegség","common":"Luxemburg"},"ita":{"official":"Granducato di Lussemburgo","common":"Lussemburgo"},"jpn":{"official":"ルクセンブルク大公国","common":"ルクセンブルク"},"kor":{"official":"룩셈부르크 대공국","common":"룩셈부르크"},"nld":{"official":"Groothertogdom Luxemburg","common":"Luxemburg"},"per":{"official":"دوک‌نشین لوکزامبورگ","common":"لوکزامبورگ"},"pol":{"official":"Wielkie Księstwo Luksemburga","common":"Luksemburg"},"por":{"official":"Grão-Ducado do Luxemburgo","common":"Luxemburgo"},"rus":{"official":"Великое Герцогство Люксембург","common":"Люксембург"},"slk":{"official":"Luxemburské veľkovojvodstvo","common":"Luxembursko"},"spa":{"official":"Gran Ducado de Luxemburgo","common":"Luxemburgo"},"srp":{"official":"Veliko Vojvodstvo Luksemburg","common":"Luksemburg"},"swe":{"official":"Storhertigdömet Luxemburg","common":"Luxemburg"},"tur":{"official":"Lüksemburg Büyük Dükalığı","common":"Lüksemburg"},"urd":{"official":"دوقیہ کبیرلکسمبرگ","common":"لکسمبرگ"},"zho":{"official":"卢森堡大公国","common":"卢森堡"}},"latlng":[49.75,6.16666666],"landlocked":true,"borders":["BEL","FRA","DEU"],"area":2586,"flag":"🇱🇺","demonyms":{"eng":{"f":"Luxembourger","m":"Luxembourger"},"fra":{"f":"Luxembourgeoise","m":"Luxembourgeois"}}},{"name":{"common":"Latvia","official":"Republic of Latvia","native":{"lav":{"official":"Latvijas Republikas","common":"Latvija"}}},"tld":[".lv"],"cca2":"LV","ccn3":"428","cca3":"LVA","cioc":"LAT","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Eastern European Group","currencies":{"EUR":{"name":"Euro","symbol":"€"}},"idd":{"root":"+3","suffixes":["71"]},"capital":["Riga"],"altSpellings":["LV","Republic of Latvia","Latvijas Republika"],"region":"Europe","subregion":"Northern Europe","languages":{"lav":"Latvian"},"translations":{"ara":{"official":"جمهورية لاتفيا","common":"لاتفيا"},"ces":{"official":"Lotyšská republika","common":"Lotyšsko"},"deu":{"official":"Republik Lettland","common":"Lettland"},"est":{"official":"Läti Vabariik","common":"Läti"},"fin":{"official":"Latvian tasavalta","common":"Latvia"},"fra":{"official":"République de Lettonie","common":"Lettonie"},"hrv":{"official":"Republika Latvija","common":"Latvija"},"hun":{"official":"Lett Köztársaság","common":"Lettország"},"ita":{"official":"Repubblica di Lettonia","common":"Lettonia"},"jpn":{"official":"ラトビア共和国","common":"ラトビア"},"kor":{"official":"라트비아 공화국","common":"라트비아"},"nld":{"official":"Republiek Letland","common":"Letland"},"per":{"official":"جمهوری لتونی","common":"لتونی"},"pol":{"official":"Republika Łotewska","common":"Łotwa"},"por":{"official":"República da Letónia","common":"Letónia"},"rus":{"official":"Латвийская Республика","common":"Латвия"},"slk":{"official":"Lotyšská republika","common":"Lotyšsko"},"spa":{"official":"República de Letonia","common":"Letonia"},"srp":{"official":"Republika Letonija","common":"Letonija"},"swe":{"official":"Republiken Lettland","common":"Lettland"},"tur":{"official":"Letonya Cumhuriyeti","common":"Letonya"},"urd":{"official":"جمہوریہ لٹویا","common":"لٹویا"},"zho":{"official":"拉脱维亚共和国","common":"拉脱维亚"}},"latlng":[57,25],"landlocked":false,"borders":["BLR","EST","LTU","RUS"],"area":64559,"flag":"🇱🇻","demonyms":{"eng":{"f":"Latvian","m":"Latvian"},"fra":{"f":"Lettone","m":"Letton"}}},{"name":{"common":"Macau","official":"Macao Special Administrative Region of the People's Republic of China","native":{"por":{"official":"Região Administrativa Especial de Macau da República Popular da China","common":"Macau"},"zho":{"official":"中华人民共和国澳门特别行政区","common":"澳门"}}},"tld":[".mo"],"cca2":"MO","ccn3":"446","cca3":"MAC","cioc":"","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"MOP":{"name":"Macanese pataca","symbol":"P"}},"idd":{"root":"+8","suffixes":["53"]},"capital":[],"altSpellings":["MO","澳门","Macao","Macao Special Administrative Region of the People's Republic of China","中華人民共和國澳門特別行政區","Região Administrativa Especial de Macau da República Popular da China"],"region":"Asia","subregion":"Eastern Asia","languages":{"por":"Portuguese","zho":"Chinese"},"translations":{"ara":{"official":"منطقة ماكاو الإدارية التابعة لجمهورية الصين الشعبية","common":"ماكاو"},"ces":{"official":"Zvláštní správní oblast Čínské lidové republiky Macao","common":"Macao"},"deu":{"official":"Sonderverwaltungsregion Macau der Volksrepublik China","common":"Macao"},"est":{"official":"Macau erihalduspiirkond","common":"Macau"},"fin":{"official":"Macaon Kiinan kansantasavallan erityishallintoalue","common":"Macao"},"fra":{"official":"Région administrative spéciale de Macao de la République populaire de Chine","common":"Macao"},"hrv":{"official":"Makao Posebnog upravnog područjaNarodne Republike Kine","common":"Makao"},"hun":{"official":"Makaó","common":"Makaó"},"ita":{"official":"Macao Regione amministrativa speciale della Repubblica Popolare Cinese","common":"Macao"},"jpn":{"official":"澳門特別行政区","common":"マカオ"},"kor":{"official":"중화인민공화국 마카오 특별행정구","common":"마카오"},"nld":{"official":"Speciale Administratieve Regio Macau van de Volksrepubliek China","common":"Macao"},"per":{"official":"ماکائو","common":"ماکائو"},"pol":{"official":"Specjalny Region Administracyjny Chińskiej Republiki Ludowej Makau","common":"Makau"},"por":{"official":"Macau Região Administrativa Especial da República Popular da China","common":"Macau"},"rus":{"official":"Специальный административный район Макао Китайской Народной Республики Китай","common":"Макао"},"slk":{"official":"Macao, Špeciàlna administratívna oblasŦ","common":"Macao"},"spa":{"official":"Macao, Región Administrativa Especial de la República Popular China","common":"Macao"},"srp":{"official":"Makao specijalna administrativna oblast Narodne Republike Kine","common":"Makao"},"swe":{"official":"Macao","common":"Macao"},"tur":{"official":"çin Halk Cumhuriyeti Makao özel İdari Bölgesi","common":"Makao"},"urd":{"official":"مکاؤ عوامی جمہوریہ چین کا خصوصی انتظامی علاقہ","common":"مکاؤ"},"zho":{"official":"中华人民共和国澳门特别行政区","common":"澳门"}},"latlng":[22.16666666,113.55],"landlocked":false,"borders":["CHN"],"area":30,"flag":"🇲🇴","demonyms":{"eng":{"f":"Macanese","m":"Macanese"},"fra":{"f":"Macanaise","m":"Macanais"}}},{"name":{"common":"Saint Martin","official":"Saint Martin","native":{"fra":{"official":"Saint-Martin","common":"Saint-Martin"}}},"tld":[".fr",".gp"],"cca2":"MF","ccn3":"663","cca3":"MAF","cioc":"","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"EUR":{"name":"Euro","symbol":"€"}},"idd":{"root":"+5","suffixes":["90"]},"capital":["Marigot"],"altSpellings":["MF","Collectivity of Saint Martin","Collectivité de Saint-Martin","Saint Martin (French part)"],"region":"Americas","subregion":"Caribbean","languages":{"fra":"French"},"translations":{"ara":{"official":"سانت مارتن","common":"سانت مارتن"},"ces":{"official":"Svatý Martin","common":"Svatý Martin (Francie)"},"deu":{"official":"Saint-Martin","common":"Saint-Martin"},"est":{"official":"Saint-Martini ühendus","common":"Saint-Martin"},"fin":{"official":"Saint-Martin","common":"Saint-Martin"},"fra":{"official":"Saint-Martin","common":"Saint-Martin"},"hrv":{"official":"Saint Martin","common":"Sveti Martin"},"hun":{"official":"Saint-Martin Közösség","common":"Saint-Martin"},"ita":{"official":"saint Martin","common":"Saint Martin"},"jpn":{"official":"サンマルタン","common":"サン・マルタン"},"kor":{"official":"생마르탱","common":"생마르탱"},"nld":{"official":"Saint Martin","common":"Saint-Martin"},"per":{"official":"سن مارتن","common":"سن مارتن"},"pol":{"official":"Wspólnota Saint-Martin","common":"Saint-Martin"},"por":{"official":"saint Martin","common":"São Martinho"},"rus":{"official":"Сен-Мартен","common":"Сен-Мартен"},"slk":{"official":"Saint-Martin","common":"Saint-Martin"},"spa":{"official":"Saint Martin","common":"Saint Martin"},"srp":{"official":"Sveti Martin","common":"Sveti Martin"},"swe":{"official":"Förvaltningsområdet Saint-Martin","common":"Saint-Martin"},"tur":{"official":"Saint Martin","common":"Saint Martin"},"urd":{"official":"سینٹ مارٹن","common":"سینٹ مارٹن"},"zho":{"official":"圣马丁","common":"圣马丁"}},"latlng":[18.08333333,-63.95],"landlocked":false,"borders":["SXM"],"area":53,"flag":"🇲🇫","demonyms":{"eng":{"f":"Saint Martin Islander","m":"Saint Martin Islander"},"fra":{"f":"Saint-Martinoise","m":"Saint-Martinois"}}},{"name":{"common":"Morocco","official":"Kingdom of Morocco","native":{"ara":{"official":"المملكة المغربية","common":"المغرب"},"ber":{"official":"ⵜⴰⴳⵍⴷⵉⵜ ⵏ ⵍⵎⵖⵔⵉⴱ","common":"ⵍⵎⴰⵖⵔⵉⴱ"}}},"tld":[".ma","المغرب."],"cca2":"MA","ccn3":"504","cca3":"MAR","cioc":"MAR","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"MAD":{"name":"Moroccan dirham","symbol":"د.م."}},"idd":{"root":"+2","suffixes":["12"]},"capital":["Rabat"],"altSpellings":["MA","Kingdom of Morocco","Al-Mamlakah al-Maġribiyah"],"region":"Africa","subregion":"Northern Africa","languages":{"ara":"Arabic","ber":"Berber"},"translations":{"ara":{"official":"المملكة المغربية","common":"المغرب"},"ces":{"official":"Marocké království","common":"Maroko"},"deu":{"official":"Königreich Marokko","common":"Marokko"},"est":{"official":"Maroko Kuningriik","common":"Maroko"},"fin":{"official":"Marokon kuningaskunta","common":"Marokko"},"fra":{"official":"Royaume du Maroc","common":"Maroc"},"hrv":{"official":"Kraljevina Maroko","common":"Maroko"},"hun":{"official":"Marokkói Királyság","common":"Marokkó"},"ita":{"official":"Regno del Marocco","common":"Marocco"},"jpn":{"official":"モロッコ王国","common":"モロッコ"},"kor":{"official":"모로코 왕국","common":"모로코"},"nld":{"official":"Koninkrijk Marokko","common":"Marokko"},"per":{"official":"پادشاهی مراکش","common":"مراکش"},"pol":{"official":"Królestwo Marokańskie","common":"Maroko"},"por":{"official":"Reino de Marrocos","common":"Marrocos"},"rus":{"official":"Королевство Марокко","common":"Марокко"},"slk":{"official":"Marocké kniežatstvo","common":"Maroko"},"spa":{"official":"Reino de Marruecos","common":"Marruecos"},"srp":{"official":"Kraljevina Maroko","common":"Maroko"},"swe":{"official":"Konungariket Marocko","common":"Marocko"},"tur":{"official":"Fas Krallığı","common":"Fas"},"urd":{"official":"مملکتِ مراکش","common":"مراکش"},"zho":{"official":"摩洛哥王国","common":"摩洛哥"}},"latlng":[32,-5],"landlocked":false,"borders":["DZA","ESH","ESP"],"area":446550,"flag":"🇲🇦","demonyms":{"eng":{"f":"Moroccan","m":"Moroccan"},"fra":{"f":"Marocaine","m":"Marocain"}}},{"name":{"common":"Monaco","official":"Principality of Monaco","native":{"fra":{"official":"Principauté de Monaco","common":"Monaco"}}},"tld":[".mc"],"cca2":"MC","ccn3":"492","cca3":"MCO","cioc":"MON","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Western European and Others Group","currencies":{"EUR":{"name":"Euro","symbol":"€"}},"idd":{"root":"+3","suffixes":["77"]},"capital":["Monaco"],"altSpellings":["MC","Principality of Monaco","Principauté de Monaco"],"region":"Europe","subregion":"Western Europe","languages":{"fra":"French"},"translations":{"ara":{"official":"إمارة موناكو","common":"موناكو"},"ces":{"official":"Monacké knížectví","common":"Monako"},"deu":{"official":"Fürstentum Monaco","common":"Monaco"},"est":{"official":"Monaco Vürstiriik","common":"Monaco"},"fin":{"official":"Monacon ruhtinaskunta","common":"Monaco"},"fra":{"official":"Principauté de Monaco","common":"Monaco"},"hrv":{"official":"Kneževina Monako","common":"Monako"},"hun":{"official":"Monacói Hercegség","common":"Monaco"},"ita":{"official":"Principato di Monaco","common":"Principato di Monaco"},"jpn":{"official":"モナコ公国","common":"モナコ"},"kor":{"official":"모나코 공국","common":"모나코"},"nld":{"official":"Vorstendom Monaco","common":"Monaco"},"per":{"official":"شاهزاده‌نشین موناکو","common":"موناکو"},"pol":{"official":"Księstwo Monako","common":"Monako"},"por":{"official":"Principado do Mónaco","common":"Mónaco"},"rus":{"official":"Княжество Монако","common":"Монако"},"slk":{"official":"Monacké kniežatstvo","common":"Monako"},"spa":{"official":"Principado de Mónaco","common":"Mónaco"},"srp":{"official":"Kneževina Monako","common":"Monako"},"swe":{"official":"Furstendömet Monaco","common":"Monaco"},"tur":{"official":"Monako Prensliği","common":"Monako"},"urd":{"official":"جمہوریہ مناکو","common":"موناکو"},"zho":{"official":"摩纳哥公国","common":"摩纳哥"}},"latlng":[43.73333333,7.4],"landlocked":false,"borders":["FRA"],"area":2.02,"flag":"🇲🇨","demonyms":{"eng":{"f":"Monegasque","m":"Monegasque"},"fra":{"f":"Monégasque","m":"Monégasque"}}},{"name":{"common":"Moldova","official":"Republic of Moldova","native":{"ron":{"official":"Republica Moldova","common":"Moldova"}}},"tld":[".md"],"cca2":"MD","ccn3":"498","cca3":"MDA","cioc":"MDA","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Eastern European Group","currencies":{"MDL":{"name":"Moldovan leu","symbol":"L"}},"idd":{"root":"+3","suffixes":["73"]},"capital":["Chișinău"],"altSpellings":["MD","Moldova, Republic of","Republic of Moldova","Republica Moldova"],"region":"Europe","subregion":"Eastern Europe","languages":{"ron":"Moldavian"},"translations":{"ara":{"official":"جمهورية مولدوڤا","common":"مولدوڤا"},"ces":{"official":"Moldavská republika","common":"Moldavsko"},"deu":{"official":"Republik Moldau","common":"Moldawien"},"est":{"official":"Moldova Vabariik","common":"Moldova"},"fin":{"official":"Moldovan tasavalta","common":"Moldova"},"fra":{"official":"République de Moldavie","common":"Moldavie"},"hrv":{"official":"Moldavija","common":"Moldova"},"hun":{"official":"Moldovai Köztársaság","common":"Moldova"},"ita":{"official":"Repubblica di Moldova","common":"Moldavia"},"jpn":{"official":"モルドバ共和国","common":"モルドバ"},"kor":{"official":"몰도바 공화국","common":"몰도바"},"nld":{"official":"Republiek Moldavië","common":"Moldavië"},"per":{"official":"جمهوری مولداوی","common":"مولداوی"},"pol":{"official":"Republika Mołdawii","common":"Mołdawia"},"por":{"official":"República da Moldávia","common":"Moldávia"},"rus":{"official":"Молдова","common":"Молдавия"},"slk":{"official":"Moldavská republika","common":"Moldavsko"},"spa":{"official":"República de Moldova","common":"Moldavia"},"srp":{"official":"Republika Moldavija","common":"Moldavija"},"swe":{"official":"Republiken Moldavien","common":"Moldavien"},"tur":{"official":"Moldova Cumhuriyeti","common":"Moldova"},"urd":{"official":"جمہوریہ مالدووا","common":"مالدووا"},"zho":{"official":"摩尔多瓦共和国","common":"摩尔多瓦"}},"latlng":[47,29],"landlocked":true,"borders":["ROU","UKR"],"area":33846,"flag":"🇲🇩","demonyms":{"eng":{"f":"Moldovan","m":"Moldovan"},"fra":{"f":"Moldave","m":"Moldave"}}},{"name":{"common":"Madagascar","official":"Republic of Madagascar","native":{"fra":{"official":"République de Madagascar","common":"Madagascar"},"mlg":{"official":"Repoblikan'i Madagasikara","common":"Madagasikara"}}},"tld":[".mg"],"cca2":"MG","ccn3":"450","cca3":"MDG","cioc":"MAD","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"MGA":{"name":"Malagasy ariary","symbol":"Ar"}},"idd":{"root":"+2","suffixes":["61"]},"capital":["Antananarivo"],"altSpellings":["MG","Republic of Madagascar","Repoblikan'i Madagasikara","République de Madagascar"],"region":"Africa","subregion":"Eastern Africa","languages":{"fra":"French","mlg":"Malagasy"},"translations":{"ara":{"official":"جمهورية مدغشقر","common":"مدغشقر"},"ces":{"official":"Madagaskarská republika","common":"Madagaskar"},"deu":{"official":"Republik Madagaskar","common":"Madagaskar"},"est":{"official":"Madagaskari Vabariik","common":"Madagaskar"},"fin":{"official":"Madagaskarin tasavalta","common":"Madagaskar"},"fra":{"official":"République de Madagascar","common":"Madagascar"},"hrv":{"official":"Republika Madagaskar","common":"Madagaskar"},"hun":{"official":"Madagaszkári Köztársaság","common":"Madagaszkár"},"ita":{"official":"Repubblica del Madagascar","common":"Madagascar"},"jpn":{"official":"マダガスカル共和国","common":"マダガスカル"},"kor":{"official":"마다가스카르 공화국","common":"마다가스카르"},"nld":{"official":"Republiek Madagaskar","common":"Madagaskar"},"per":{"official":"جمهوری ماداگاسکار","common":"ماداگاسکار"},"pol":{"official":"Republika Madagaskaru","common":"Madagaskar"},"por":{"official":"República de Madagáscar","common":"Madagáscar"},"rus":{"official":"Республика Мадагаскар","common":"Мадагаскар"},"slk":{"official":"Madagaskarská republika","common":"Madagaskar"},"spa":{"official":"República de Madagascar","common":"Madagascar"},"srp":{"official":"Republika Madagaskar","common":"Madagaskar"},"swe":{"official":"Republiken Madagaskar","common":"Madagaskar"},"tur":{"official":"Madagaskar Cumhuriyeti","common":"Madagaskar"},"urd":{"official":"جمہوریہ مڈغاسکر","common":"مڈغاسکر"},"zho":{"official":"马达加斯加共和国","common":"马达加斯加"}},"latlng":[-20,47],"landlocked":false,"borders":[],"area":587041,"flag":"🇲🇬","demonyms":{"eng":{"f":"Malagasy","m":"Malagasy"},"fra":{"f":"Malgache","m":"Malgache"}}},{"name":{"common":"Maldives","official":"Republic of the Maldives","native":{"div":{"official":"ދިވެހިރާއްޖޭގެ ޖުމްހޫރިއްޔާ","common":"ދިވެހިރާއްޖޭގެ"}}},"tld":[".mv"],"cca2":"MV","ccn3":"462","cca3":"MDV","cioc":"MDV","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"MVR":{"name":"Maldivian rufiyaa","symbol":".ރ"}},"idd":{"root":"+9","suffixes":["60"]},"capital":["Malé"],"altSpellings":["MV","Maldive Islands","Republic of the Maldives","Dhivehi Raajjeyge Jumhooriyya"],"region":"Asia","subregion":"Southern Asia","languages":{"div":"Maldivian"},"translations":{"ara":{"official":"جمهورية المالديف","common":"المالديف"},"ces":{"official":"Maledivská republika","common":"Maledivy"},"deu":{"official":"Republik Malediven","common":"Malediven"},"est":{"official":"Maldiivi Vabariik","common":"Maldiivid"},"fin":{"official":"Malediivien tasavalta","common":"Malediivit"},"fra":{"official":"République des Maldives","common":"Maldives"},"hrv":{"official":"Republika Maldivi","common":"Maldivi"},"hun":{"official":"Maldív-szigetek","common":"Maldív-szigetek"},"ita":{"official":"Repubblica delle Maldive","common":"Maldive"},"jpn":{"official":"モルディブ共和国","common":"モルディブ"},"kor":{"official":"몰디브 공화국","common":"몰디브"},"nld":{"official":"Republiek van de Malediven","common":"Maldiven"},"per":{"official":"جمهوری مالدیو","common":"مالدیو"},"pol":{"official":"Republika Malediwów","common":"Malediwy"},"por":{"official":"República das Maldivas","common":"Maldivas"},"rus":{"official":"Республика Мальдивы","common":"Мальдивы"},"slk":{"official":"Maldivská republika","common":"Maldivy"},"spa":{"official":"República de las Maldivas","common":"Maldivas"},"srp":{"official":"Republika Maldivi","common":"Maldivi"},"swe":{"official":"Republiken Maldiverna","common":"Maldiverna"},"tur":{"official":"Maldivler Cumhuriyeti","common":"Maldivler"},"urd":{"official":"جمہوریہ مالدیپ","common":"مالدیپ"},"zho":{"official":"马尔代夫共和国","common":"马尔代夫"}},"latlng":[3.25,73],"landlocked":false,"borders":[],"area":300,"flag":"🇲🇻","demonyms":{"eng":{"f":"Maldivan","m":"Maldivan"},"fra":{"f":"Maldivienne","m":"Maldivien"}}},{"name":{"common":"Mexico","official":"United Mexican States","native":{"spa":{"official":"Estados Unidos Mexicanos","common":"México"}}},"tld":[".mx"],"cca2":"MX","ccn3":"484","cca3":"MEX","cioc":"MEX","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Latin American and Caribbean Group","currencies":{"MXN":{"name":"Mexican peso","symbol":"$"}},"idd":{"root":"+5","suffixes":["2"]},"capital":["Mexico City"],"altSpellings":["MX","Mexicanos","United Mexican States","Estados Unidos Mexicanos"],"region":"Americas","subregion":"North America","languages":{"spa":"Spanish"},"translations":{"ara":{"official":"الولايات المتحدة المكسيكية","common":"المسكيك"},"ces":{"official":"Spojené státy mexické","common":"Mexiko"},"deu":{"official":"Vereinigte Mexikanische Staaten","common":"Mexiko"},"est":{"official":"Mehhiko Ühendriigid","common":"Mehhiko"},"fin":{"official":"Meksikon yhdysvallat","common":"Meksiko"},"fra":{"official":"États-Unis du Mexique","common":"Mexique"},"hrv":{"official":"Sjedinjene Meksičke Države","common":"Meksiko"},"hun":{"official":"Mexikói Egyesült Államok","common":"Mexikó"},"ita":{"official":"Stati Uniti del Messico","common":"Messico"},"jpn":{"official":"メキシコ合衆国","common":"メキシコ"},"kor":{"official":"멕시코 합중국","common":"멕시코"},"nld":{"official":"Verenigde Mexicaanse Staten","common":"Mexico"},"per":{"official":"ایالات متحد مکزیک","common":"مکزیک"},"pol":{"official":"Meksykańskie Stany Zjednoczone","common":"Meksyk"},"por":{"official":"Estados Unidos Mexicanos","common":"México"},"rus":{"official":"Мексиканские Соединённые Штаты","common":"Мексика"},"slk":{"official":"Spojené štášy mexické","common":"Mexiko"},"spa":{"official":"Estados Unidos Mexicanos","common":"México"},"srp":{"official":"Sjedinjene Meksičke Države","common":"Meksiko"},"swe":{"official":"Mexikos förenta stater","common":"Mexiko"},"tur":{"official":"Birleşik Meksika Devletleri","common":"Meksika"},"urd":{"official":"ریاستہائے متحدہ میکسیکو","common":"میکسیکو"},"zho":{"official":"墨西哥合众国","common":"墨西哥"}},"latlng":[23,-102],"landlocked":false,"borders":["BLZ","GTM","USA"],"area":1964375,"flag":"🇲🇽","demonyms":{"eng":{"f":"Mexican","m":"Mexican"},"fra":{"f":"Mexicaine","m":"Mexicain"}}},{"name":{"common":"Marshall Islands","official":"Republic of the Marshall Islands","native":{"eng":{"official":"Republic of the Marshall Islands","common":"Marshall Islands"},"mah":{"official":"Republic of the Marshall Islands","common":"M̧ajeļ"}}},"tld":[".mh"],"cca2":"MH","ccn3":"584","cca3":"MHL","cioc":"MHL","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"USD":{"name":"United States dollar","symbol":"$"}},"idd":{"root":"+6","suffixes":["92"]},"capital":["Majuro"],"altSpellings":["MH","Republic of the Marshall Islands","Aolepān Aorōkin M̧ajeļ"],"region":"Oceania","subregion":"Micronesia","languages":{"eng":"English","mah":"Marshallese"},"translations":{"ara":{"official":"جمهورية جزر مارشال","common":"جزر مارشال"},"ces":{"official":"Republika Marshallovy ostrovy","common":"Marshallovy ostrovy"},"deu":{"official":"Republik Marshallinseln","common":"Marshallinseln"},"est":{"official":"Marshalli Saarte Vabariik","common":"Marshalli Saared"},"fin":{"official":"Marshallinsaarten tasavalta","common":"Marshallinsaaret"},"fra":{"official":"République des Îles Marshall","common":"Îles Marshall"},"hrv":{"official":"Republika Maršalovi Otoci","common":"Maršalovi Otoci"},"hun":{"official":"Marshall-szigetek","common":"Marshall-szigetek"},"ita":{"official":"Repubblica delle Isole Marshall","common":"Isole Marshall"},"jpn":{"official":"マーシャル諸島共和国","common":"マーシャル諸島"},"kor":{"official":"마셜 제도 공화국","common":"마셜 제도"},"nld":{"official":"Republiek van de Marshall-eilanden","common":"Marshalleilanden"},"per":{"official":"جمهوری جزایر مارشال","common":"جزایر مارشال"},"pol":{"official":"Republika Wysp Marshalla","common":"Wyspy Marshalla"},"por":{"official":"República das Ilhas Marshall","common":"Ilhas Marshall"},"rus":{"official":"Республика Маршалловы острова","common":"Маршалловы Острова"},"slk":{"official":"Republika Marshallových ostrovov","common":"Marshallove ostrovy"},"spa":{"official":"República de las Islas Marshall","common":"Islas Marshall"},"srp":{"official":"Republika Maršalska Ostrva","common":"Maršalska Ostrva"},"swe":{"official":"Republiken Marshallöarna","common":"Marshallöarna"},"tur":{"official":"Marshall Adaları Cumhuriyeti","common":"Marshall Adaları"},"urd":{"official":"جمہوریہ جزائر مارشل","common":"جزائر مارشل"},"zho":{"official":"马绍尔群岛共和国","common":"马绍尔群岛"}},"latlng":[9,168],"landlocked":false,"borders":[],"area":181,"flag":"🇲🇭","demonyms":{"eng":{"f":"Marshallese","m":"Marshallese"},"fra":{"f":"Marshallaise","m":"Marshallais"}}},{"name":{"common":"North Macedonia","official":"Republic of North Macedonia","native":{"mkd":{"official":"Република Северна Македонија","common":"Македонија"}}},"tld":[".mk"],"cca2":"MK","ccn3":"807","cca3":"MKD","cioc":"MKD","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Eastern European Group","currencies":{"MKD":{"name":"denar","symbol":"den"}},"idd":{"root":"+3","suffixes":["89"]},"capital":["Skopje"],"altSpellings":["MK","The former Yugoslav Republic of Macedonia","Republic of North Macedonia","Macedonia, The Former Yugoslav Republic of","Република Северна Македонија","Macedonia"],"region":"Europe","subregion":"Southeast Europe","languages":{"mkd":"Macedonian"},"translations":{"ara":{"official":"جمهورية شمال مقدونيا","common":"شمال مقدونيا"},"ces":{"official":"Republika Severní Makedonie","common":"Severní Makedonie"},"deu":{"official":"Republik Nordmazedonien","common":"Nordmazedonien"},"est":{"official":"Põhja-Makedoonia Vabariik","common":"Põhja-Makedoonia"},"fin":{"official":"Pohjois-Makedonian tasavalta","common":"Pohjois-Makedonia"},"fra":{"official":"République de Macédoine du Nord","common":"Macédoine du Nord"},"hrv":{"official":"Republika Sjeverna Makedonija","common":"Sjeverna Makedonija"},"hun":{"official":"Észak-macedón Köztársaság","common":"Észak-Macedónia"},"ita":{"official":"Repubblica di Macedonia del Nord","common":"Macedonia del Nord"},"jpn":{"official":"北マケドニア共和国","common":"北マケドニア"},"kor":{"official":"북마케도니아 공화국","common":"북마케도니아"},"nld":{"official":"Republiek Noord-Macedonië","common":"Noord-Macedonië"},"per":{"official":"جمهوری مقدونیه شمالی","common":"مقدونیه شمالی"},"pol":{"official":"Republika Macedonii Północnej","common":"Macedonia Północna"},"por":{"official":"República da Macedônia do Norte","common":"Macedónia do Norte"},"rus":{"official":"Республика Северная Македония","common":"Северная Македония"},"slk":{"official":"Severomacedónska republika","common":"Severné Macedónsko"},"spa":{"official":"República de Macedonia del Norte","common":"Macedonia del Norte"},"srp":{"official":"Republika Severna Makedonija","common":"Severna Makedonija"},"swe":{"official":"Republiken Nordmakedonien","common":"Nordmakedonien"},"tur":{"official":"Kuzey Makedonya Cumhuriyeti","common":"Kuzey Makedonya"},"urd":{"official":"جمہوریہ مقدونیہ","common":"شمالی مقدونیہ"},"zho":{"official":"北馬其頓共和國","common":"北馬其頓"}},"latlng":[41.83333333,22],"landlocked":true,"borders":["ALB","BGR","GRC","UNK","SRB"],"area":25713,"flag":"🇲🇰","demonyms":{"eng":{"f":"Macedonian","m":"Macedonian"},"fra":{"f":"Macédonienne","m":"Macédonien"}}},{"name":{"common":"Mali","official":"Republic of Mali","native":{"fra":{"official":"République du Mali","common":"Mali"}}},"tld":[".ml"],"cca2":"ML","ccn3":"466","cca3":"MLI","cioc":"MLI","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"XOF":{"name":"West African CFA franc","symbol":"Fr"}},"idd":{"root":"+2","suffixes":["23"]},"capital":["Bamako"],"altSpellings":["ML","Republic of Mali","République du Mali"],"region":"Africa","subregion":"Western Africa","languages":{"fra":"French"},"translations":{"ara":{"official":"جمهورية مالي","common":"مالي"},"ces":{"official":"Republika Mali","common":"Mali"},"deu":{"official":"Republik Mali","common":"Mali"},"est":{"official":"Mali Vabariik","common":"Mali"},"fin":{"official":"Malin tasavalta","common":"Mali"},"fra":{"official":"République du Mali","common":"Mali"},"hrv":{"official":"Republika Mali","common":"Mali"},"hun":{"official":"Mali Köztársaság","common":"Mali"},"ita":{"official":"Repubblica del Mali","common":"Mali"},"jpn":{"official":"マリ共和国","common":"マリ"},"kor":{"official":"말리 공화국","common":"말리"},"nld":{"official":"Republiek Mali","common":"Mali"},"per":{"official":"جمهوری مالی","common":"مالی"},"pol":{"official":"Republika Mali","common":"Mali"},"por":{"official":"República do Mali","common":"Mali"},"rus":{"official":"Республика Мали","common":"Мали"},"slk":{"official":"Malijská republika","common":"Mali"},"spa":{"official":"República de Malí","common":"Mali"},"srp":{"official":"Republika Mali","common":"Mali"},"swe":{"official":"Republiken Mali","common":"Mali"},"tur":{"official":"Mali Cumhuriyeti","common":"Mali"},"urd":{"official":"جمہوریہ مالی","common":"مالی"},"zho":{"official":"马里共和国","common":"马里"}},"latlng":[17,-4],"landlocked":true,"borders":["DZA","BFA","GIN","CIV","MRT","NER","SEN"],"area":1240192,"flag":"🇲🇱","demonyms":{"eng":{"f":"Malian","m":"Malian"},"fra":{"f":"Malienne","m":"Malien"}}},{"name":{"common":"Malta","official":"Republic of Malta","native":{"eng":{"official":"Republic of Malta","common":"Malta"},"mlt":{"official":"Repubblika ta ' Malta","common":"Malta"}}},"tld":[".mt"],"cca2":"MT","ccn3":"470","cca3":"MLT","cioc":"MLT","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Western European and Others Group","currencies":{"EUR":{"name":"Euro","symbol":"€"}},"idd":{"root":"+3","suffixes":["56"]},"capital":["Valletta"],"altSpellings":["MT","Republic of Malta","Repubblika ta' Malta"],"region":"Europe","subregion":"Southern Europe","languages":{"eng":"English","mlt":"Maltese"},"translations":{"ara":{"official":"جمهورية مالطا","common":"مالطا"},"ces":{"official":"Maltská republika","common":"Malta"},"deu":{"official":"Republik Malta","common":"Malta"},"est":{"official":"Malta Vabariik","common":"Malta"},"fin":{"official":"Maltan tasavalta","common":"Malta"},"fra":{"official":"République de Malte","common":"Malte"},"hrv":{"official":"Republika Malta","common":"Malta"},"hun":{"official":"Máltai Köztársaság","common":"Málta"},"ita":{"official":"Repubblica di Malta","common":"Malta"},"jpn":{"official":"マルタ共和国","common":"マルタ"},"kor":{"official":"몰타 공화국","common":"몰타"},"nld":{"official":"Republiek Malta","common":"Malta"},"per":{"official":"جمهوری مالت","common":"مالت"},"pol":{"official":"Republika Malty","common":"Malta"},"por":{"official":"República de Malta","common":"Malta"},"rus":{"official":"Республика Мальта","common":"Мальта"},"slk":{"official":"Maltská republika","common":"Malta"},"spa":{"official":"República de Malta","common":"Malta"},"srp":{"official":"Republika Malta","common":"Malta"},"swe":{"official":"Republiken Malta","common":"Malta"},"tur":{"official":"Malta Cumhuriyeti","common":"Malta"},"urd":{"official":"جمہوریہ مالٹا","common":"مالٹا"},"zho":{"official":"马耳他共和国","common":"马耳他"}},"latlng":[35.83333333,14.58333333],"landlocked":false,"borders":[],"area":316,"flag":"🇲🇹","demonyms":{"eng":{"f":"Maltese","m":"Maltese"},"fra":{"f":"Maltaise","m":"Maltais"}}},{"name":{"common":"Myanmar","official":"Republic of the Union of Myanmar","native":{"mya":{"official":"ပြည်ထောင်စု သမ္မတ မြန်မာနိုင်ငံတော်","common":"မြန်မာ"}}},"tld":[".mm"],"cca2":"MM","ccn3":"104","cca3":"MMR","cioc":"MYA","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"MMK":{"name":"Burmese kyat","symbol":"Ks"}},"idd":{"root":"+9","suffixes":["5"]},"capital":["Naypyidaw"],"altSpellings":["MM","Burma","Republic of the Union of Myanmar","Pyidaunzu Thanmăda Myăma Nainngandaw"],"region":"Asia","subregion":"South-Eastern Asia","languages":{"mya":"Burmese"},"translations":{"ara":{"official":"جمهورية اتحاد ميانمار","common":"ميانمار"},"ces":{"official":"Republika Myanmarský svaz","common":"Myanmar"},"deu":{"official":"Republik der Union Myanmar","common":"Myanmar"},"est":{"official":"Myanmari Liidu Vabariik","common":"Myanmar"},"fin":{"official":"Myanmarin liiton tasavalta","common":"Myanmar"},"fra":{"official":"République de l'Union du Myanmar","common":"Birmanie"},"hrv":{"official":"Republika Unije Mijanmar","common":"Mijanmar"},"hun":{"official":"Mianmari Államszövetség Köztársasága","common":"Mianmar"},"ita":{"official":"Repubblica dell'Unione di Myanmar","common":"Birmania"},"jpn":{"official":"ミャンマー連邦共和国","common":"ミャンマー"},"kor":{"official":"미얀마 연방 공화국","common":"미얀마"},"nld":{"official":"Republiek van de Unie van Myanmar","common":"Myanmar"},"per":{"official":"اتحادیه جمهوری میانمار","common":"میانمار"},"pol":{"official":"Republika Związku Mjanmy","common":"Mjanma"},"por":{"official":"República da União de Myanmar","common":"Myanmar"},"rus":{"official":"Республика Союза Мьянма","common":"Мьянма"},"slk":{"official":"Mjanmarská zväzová republika","common":"Mjanmarsko"},"spa":{"official":"República de la Unión de Myanmar","common":"Myanmar"},"srp":{"official":"Republika Mjanmarska Unija","common":"Mjanmar"},"swe":{"official":"Republiken Unionen Myanmar","common":"Myanmar"},"tur":{"official":"Myanmar Birliği Cumhuriyeti","common":"Myanmar"},"urd":{"official":"متحدہ جمہوریہ میانمار","common":"میانمار"},"zho":{"official":"缅甸联邦共和国","common":"缅甸"}},"latlng":[22,98],"landlocked":false,"borders":["BGD","CHN","IND","LAO","THA"],"area":676578,"flag":"🇲🇲","demonyms":{"eng":{"f":"Burmese","m":"Burmese"},"fra":{"f":"Birmane","m":"Birman"}}},{"name":{"common":"Montenegro","official":"Montenegro","native":{"cnr":{"official":"Црна Гора","common":"Црна Гора"}}},"tld":[".me"],"cca2":"ME","ccn3":"499","cca3":"MNE","cioc":"MNE","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Eastern European Group","currencies":{"EUR":{"name":"Euro","symbol":"€"}},"idd":{"root":"+3","suffixes":["82"]},"capital":["Podgorica"],"altSpellings":["ME","Crna Gora"],"region":"Europe","subregion":"Southeast Europe","languages":{"cnr":"Montenegrin"},"translations":{"ara":{"official":"الجبل الاسود","common":"الجبل الاسود"},"ces":{"official":"Černá Hora","common":"Černá Hora"},"deu":{"official":"Montenegro","common":"Montenegro"},"est":{"official":"Montenegro","common":"Montenegro"},"fin":{"official":"Montenegro","common":"Montenegro"},"fra":{"official":"Monténégro","common":"Monténégro"},"hrv":{"official":"Crna Gora","common":"Crna Gora"},"hun":{"official":"Montenegró","common":"Montenegró"},"ita":{"official":"Montenegro","common":"Montenegro"},"jpn":{"official":"モンテネグロ","common":"モンテネグロ"},"kor":{"official":"몬테네그로","common":"몬테네그로"},"nld":{"official":"Montenegro","common":"Montenegro"},"per":{"official":"مونته‌نگرو","common":"مونته‌نگرو"},"pol":{"official":"Czarnogóra","common":"Czarnogóra"},"por":{"official":"Montenegro","common":"Montenegro"},"rus":{"official":"Черногория","common":"Черногория"},"slk":{"official":"Čierna Hora","common":"Čierna Hora"},"spa":{"official":"Montenegro","common":"Montenegro"},"srp":{"official":"Crna Gora","common":"Crna Gora"},"swe":{"official":"Montenegro","common":"Montenegro"},"tur":{"official":"Karadağ","common":"Karadağ"},"urd":{"official":"مونٹینیگرو","common":"مونٹینیگرو"},"zho":{"official":"黑山","common":"黑山"}},"latlng":[42.5,19.3],"landlocked":false,"borders":["ALB","BIH","HRV","UNK","SRB"],"area":13812,"flag":"🇲🇪","demonyms":{"eng":{"f":"Montenegrin","m":"Montenegrin"},"fra":{"f":"Monténégrine","m":"Monténégrin"}}},{"name":{"common":"Mongolia","official":"Mongolia","native":{"mon":{"official":"Монгол улс","common":"Монгол улс"}}},"tld":[".mn"],"cca2":"MN","ccn3":"496","cca3":"MNG","cioc":"MGL","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"MNT":{"name":"Mongolian tögrög","symbol":"₮"}},"idd":{"root":"+9","suffixes":["76"]},"capital":["Ulan Bator"],"altSpellings":["MN"],"region":"Asia","subregion":"Eastern Asia","languages":{"mon":"Mongolian"},"translations":{"ara":{"official":"جمهورية منغوليا","common":"منغوليا"},"ces":{"official":"Stát Mongolsko","common":"Mongolsko"},"deu":{"official":"Mongolei","common":"Mongolei"},"est":{"official":"Mongoolia","common":"Mongoolia"},"fin":{"official":"Mongolian tasavalta","common":"Mongolia"},"fra":{"official":"Mongolie","common":"Mongolie"},"hrv":{"official":"Mongolija","common":"Mongolija"},"hun":{"official":"Mongólia","common":"Mongólia"},"ita":{"official":"Mongolia","common":"Mongolia"},"jpn":{"official":"モンゴル国","common":"モンゴル"},"kor":{"official":"몽골","common":"몽골국"},"nld":{"official":"Mongolië","common":"Mongolië"},"per":{"official":"مغولستان","common":"مغولستان"},"pol":{"official":"Mongolia","common":"Mongolia"},"por":{"official":"Mongólia","common":"Mongólia"},"rus":{"official":"Монголия","common":"Монголия"},"slk":{"official":"Mongolsko","common":"Mongolsko"},"spa":{"official":"Mongolia","common":"Mongolia"},"srp":{"official":"Mongolija","common":"Mongolija"},"swe":{"official":"Mongoliet","common":"Mongoliet"},"tur":{"official":"Moğolistan","common":"Moğolistan"},"urd":{"official":"منگولیا","common":"منگولیا"},"zho":{"official":"蒙古","common":"蒙古"}},"latlng":[46,105],"landlocked":true,"borders":["CHN","RUS"],"area":1564110,"flag":"🇲🇳","demonyms":{"eng":{"f":"Mongolian","m":"Mongolian"},"fra":{"f":"Mongole","m":"Mongol"}}},{"name":{"common":"Northern Mariana Islands","official":"Commonwealth of the Northern Mariana Islands","native":{"cal":{"official":"Commonwealth of the Northern Mariana Islands","common":"Northern Mariana Islands"},"cha":{"official":"Sankattan Siha Na Islas Mariånas","common":"Na Islas Mariånas"},"eng":{"official":"Commonwealth of the Northern Mariana Islands","common":"Northern Mariana Islands"}}},"tld":[".mp"],"cca2":"MP","ccn3":"580","cca3":"MNP","cioc":"","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"USD":{"name":"United States dollar","symbol":"$"}},"idd":{"root":"+1","suffixes":["670"]},"capital":["Saipan"],"altSpellings":["MP","Commonwealth of the Northern Mariana Islands","Sankattan Siha Na Islas Mariånas"],"region":"Oceania","subregion":"Micronesia","languages":{"cal":"Carolinian","cha":"Chamorro","eng":"English"},"translations":{"ara":{"official":"كومونولث جزر ماريانا الشمالية","common":"جزر ماريانا الشمالية"},"ces":{"official":"Společenství Severních Marian","common":"Severní Mariany"},"deu":{"official":"Commonwealth der Nördlichen Marianen","common":"Nördliche Marianen"},"est":{"official":"Põhja-Mariaani Ühendus","common":"Põhja-Mariaanid"},"fin":{"official":"Pohjois-Mariaanit","common":"Pohjois-Mariaanit"},"fra":{"official":"Commonwealth des îles Mariannes du Nord","common":"Îles Mariannes du Nord"},"hrv":{"official":"Zajednica je Sjeverni Marijanski otoci","common":"Sjevernomarijanski otoci"},"hun":{"official":"Északi-Mariana-szigetek","common":"Északi-Mariana-szigetek"},"ita":{"official":"Commonwealth delle Isole Marianne Settentrionali","common":"Isole Marianne Settentrionali"},"jpn":{"official":"北マリアナ諸島","common":"北マリアナ諸島"},"kor":{"official":"북마리아나 제도","common":"북마리아나 제도"},"nld":{"official":"Commonwealth van de Noordelijke Marianen","common":"Noordelijke Marianeneilanden"},"per":{"official":"جزایر ماریانای شمالی","common":"جزایر ماریانای شمالی"},"pol":{"official":"Wspólnota Marianów Północnych","common":"Mariany Północne"},"por":{"official":"Comunidade das Ilhas Marianas do Norte","common":"Marianas Setentrionais"},"rus":{"official":"Содружество Северных Марианских островов","common":"Северные Марианские острова"},"slk":{"official":"Spoločenstvo ostrovov Severné Mariány","common":"Severné Mariány"},"spa":{"official":"Mancomunidad de las Islas Marianas del Norte","common":"Islas Marianas del Norte"},"srp":{"official":"Komonvelt Severna Marijanska Ostrva","common":"Severna Marijanska Ostrva"},"swe":{"official":"Nordmarianerna","common":"Nordmarianerna"},"tur":{"official":"Kuzey Mariana Adaları Milletler Topluluğu","common":"Kuzey Mariana Adaları"},"urd":{"official":"دولتِ مشترکہ جزائر شمالی ماریانا","common":"جزائر شمالی ماریانا"},"zho":{"official":"北马里亚纳群岛","common":"北马里亚纳群岛"}},"latlng":[15.2,145.75],"landlocked":false,"borders":[],"area":464,"flag":"🇲🇵","demonyms":{"eng":{"f":"American","m":"American"},"fra":{"f":"Américaine","m":"Américan"}}},{"name":{"common":"Mozambique","official":"Republic of Mozambique","native":{"por":{"official":"República de Moçambique","common":"Moçambique"}}},"tld":[".mz"],"cca2":"MZ","ccn3":"508","cca3":"MOZ","cioc":"MOZ","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"MZN":{"name":"Mozambican metical","symbol":"MT"}},"idd":{"root":"+2","suffixes":["58"]},"capital":["Maputo"],"altSpellings":["MZ","Republic of Mozambique","República de Moçambique"],"region":"Africa","subregion":"Eastern Africa","languages":{"por":"Portuguese"},"translations":{"ara":{"official":"جمهورية موزمبيق","common":"موزمبيق"},"ces":{"official":"Mosambická republika","common":"Mosambik"},"deu":{"official":"Republik Mosambik","common":"Mosambik"},"est":{"official":"Mosambiigi Vabariik","common":"Mosambiik"},"fin":{"official":"Mosambikin tasavalta","common":"Mosambik"},"fra":{"official":"République du Mozambique","common":"Mozambique"},"hrv":{"official":"Republika Mozambiku","common":"Mozambik"},"hun":{"official":"Mozambiki Köztársaság","common":"Mozambik"},"ita":{"official":"Repubblica del Mozambico","common":"Mozambico"},"jpn":{"official":"モザンビーク共和国","common":"モザンビーク"},"kor":{"official":"모잠비크 공화국","common":"모잠비크"},"nld":{"official":"Republiek Mozambique","common":"Mozambique"},"per":{"official":"جمهوری موزامبیک","common":"موزامبیک"},"pol":{"official":"Republika Mozambiku","common":"Mozambik"},"por":{"official":"República de Moçambique","common":"Moçambique"},"rus":{"official":"Республика Мозамбик","common":"Мозамбик"},"slk":{"official":"Mozambická republika","common":"Mozambik"},"spa":{"official":"República de Mozambique","common":"Mozambique"},"srp":{"official":"Republika Mozambik","common":"Mozambik"},"swe":{"official":"Republiken Moçambique","common":"Moçambique"},"tur":{"official":"Mozambik Cumhuriyeti","common":"Mozambik"},"urd":{"official":"جمہوریہ موزمبیق","common":"موزمبیق"},"zho":{"official":"莫桑比克共和国","common":"莫桑比克"}},"latlng":[-18.25,35],"landlocked":false,"borders":["MWI","ZAF","SWZ","TZA","ZMB","ZWE"],"area":801590,"flag":"🇲🇿","demonyms":{"eng":{"f":"Mozambican","m":"Mozambican"},"fra":{"f":"Mozambicaine","m":"Mozambicain"}}},{"name":{"common":"Mauritania","official":"Islamic Republic of Mauritania","native":{"ara":{"official":"الجمهورية الإسلامية الموريتانية","common":"موريتانيا"}}},"tld":[".mr"],"cca2":"MR","ccn3":"478","cca3":"MRT","cioc":"MTN","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"MRU":{"name":"Mauritanian ouguiya","symbol":"UM"}},"idd":{"root":"+2","suffixes":["22"]},"capital":["Nouakchott"],"altSpellings":["MR","Islamic Republic of Mauritania","al-Jumhūriyyah al-ʾIslāmiyyah al-Mūrītāniyyah"],"region":"Africa","subregion":"Western Africa","languages":{"ara":"Arabic"},"translations":{"ara":{"official":"الجمهورية الإسلامية الموريتانية","common":"موريتانيا"},"ces":{"official":"Mauritánská islámská republika","common":"Mauritánie"},"deu":{"official":"Islamische Republik Mauretanien","common":"Mauretanien"},"est":{"official":"Mauritaania Islamivabariik","common":"Mauritaania"},"fin":{"official":"Mauritanian islamilainen tasavalta","common":"Mauritania"},"fra":{"official":"République islamique de Mauritanie","common":"Mauritanie"},"hrv":{"official":"Islamska Republika Mauritanija","common":"Mauritanija"},"hun":{"official":"Mauritániai Iszlám Köztársaság","common":"Mauritánia"},"ita":{"official":"Repubblica islamica di Mauritania","common":"Mauritania"},"jpn":{"official":"モーリタニア・イスラム共和国","common":"モーリタニア"},"kor":{"official":"모리타니 이슬람 공화국","common":"모리타니"},"nld":{"official":"Islamitische Republiek Mauritanië","common":"Mauritanië"},"per":{"official":"جمهوری اسلامی موریتانی","common":"موریتانی"},"pol":{"official":"Islamska Republika Mauretańska","common":"Mauretania"},"por":{"official":"República Islâmica da Mauritânia","common":"Mauritânia"},"rus":{"official":"Исламская Республика Мавритания","common":"Мавритания"},"slk":{"official":"Mauritánska islamská republika","common":"Mauritánia"},"spa":{"official":"República Islámica de Mauritania","common":"Mauritania"},"srp":{"official":"Islamska Republika Mauritanija","common":"Mauritanija"},"swe":{"official":"Islamiska republiken Mauretanien","common":"Mauretanien"},"tur":{"official":"Moritanya İslam Cumhuriyeti","common":"Moritanya"},"urd":{"official":"اسلامی جمہوریہ موریتانیہ","common":"موریتانیہ"},"zho":{"official":"毛里塔尼亚伊斯兰共和国","common":"毛里塔尼亚"}},"latlng":[20,-12],"landlocked":false,"borders":["DZA","MLI","SEN","ESH"],"area":1030700,"flag":"🇲🇷","demonyms":{"eng":{"f":"Mauritanian","m":"Mauritanian"},"fra":{"f":"Mauritanienne","m":"Mauritanien"}}},{"name":{"common":"Montserrat","official":"Montserrat","native":{"eng":{"official":"Montserrat","common":"Montserrat"}}},"tld":[".ms"],"cca2":"MS","ccn3":"500","cca3":"MSR","cioc":"","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"XCD":{"name":"Eastern Caribbean dollar","symbol":"$"}},"idd":{"root":"+1","suffixes":["664"]},"capital":["Plymouth"],"altSpellings":["MS"],"region":"Americas","subregion":"Caribbean","languages":{"eng":"English"},"translations":{"ara":{"official":"مونتسرات","common":"مونتسرات"},"ces":{"official":"Montserrat","common":"Montserrat"},"deu":{"official":"Montserrat","common":"Montserrat"},"est":{"official":"Montserrat","common":"Montserrat"},"fin":{"official":"Montserrat","common":"Montserrat"},"fra":{"official":"Montserrat","common":"Montserrat"},"hrv":{"official":"Montserrat","common":"Montserrat"},"hun":{"official":"Montserrat","common":"Montserrat"},"ita":{"official":"Montserrat","common":"Montserrat"},"jpn":{"official":"モントセラト","common":"モントセラト"},"kor":{"official":"몬트세랫","common":"몬트세랫"},"nld":{"official":"Montserrat","common":"Montserrat"},"per":{"official":"مونتسرات","common":"مونتسرات"},"pol":{"official":"Montserrat","common":"Montserrat"},"por":{"official":"Montserrat","common":"Montserrat"},"rus":{"official":"Монтсеррат","common":"Монтсеррат"},"slk":{"official":"Montserrat","common":"Montserrat"},"spa":{"official":"Montserrat","common":"Montserrat"},"srp":{"official":"Montserat","common":"Montserat"},"swe":{"official":"Montserrat","common":"Montserrat"},"tur":{"official":"Montserrat","common":"Montserrat"},"urd":{"official":"مانٹسریٹ","common":"مانٹسریٹ"},"zho":{"official":"蒙特塞拉特","common":"蒙特塞拉特"}},"latlng":[16.75,-62.2],"landlocked":false,"borders":[],"area":102,"flag":"🇲🇸","demonyms":{"eng":{"f":"Montserratian","m":"Montserratian"},"fra":{"f":"Montserratienne","m":"Montserratien"}}},{"name":{"common":"Martinique","official":"Martinique","native":{"fra":{"official":"Martinique","common":"Martinique"}}},"tld":[".mq"],"cca2":"MQ","ccn3":"474","cca3":"MTQ","cioc":"","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"EUR":{"name":"Euro","symbol":"€"}},"idd":{"root":"+5","suffixes":["96"]},"capital":["Fort-de-France"],"altSpellings":["MQ"],"region":"Americas","subregion":"Caribbean","languages":{"fra":"French"},"translations":{"ara":{"official":"مارتينيك","common":"مارتينيك"},"ces":{"official":"Martinik","common":"Martinik"},"deu":{"official":"Martinique","common":"Martinique"},"est":{"official":"Martinique’i departemang","common":"Martinique"},"fin":{"official":"Martinique","common":"Martinique"},"fra":{"official":"Martinique","common":"Martinique"},"hrv":{"official":"Martinique","common":"Martinique"},"hun":{"official":"Martinique","common":"Martinique"},"ita":{"official":"Martinique","common":"Martinica"},"jpn":{"official":"マルチニーク島","common":"マルティニーク"},"kor":{"official":"마르티니크","common":"마르티니크"},"nld":{"official":"Martinique","common":"Martinique"},"per":{"official":"مارتینیک","common":"مارتینیک"},"pol":{"official":"Martynika","common":"Martynika"},"por":{"official":"Martinique","common":"Martinica"},"rus":{"official":"Мартиника","common":"Мартиника"},"slk":{"official":"Martinique","common":"Martinique"},"spa":{"official":"Martinica","common":"Martinica"},"srp":{"official":"Martinik","common":"Martinik"},"swe":{"official":"Martinique","common":"Martinique"},"tur":{"official":"Martinik","common":"Martinik"},"urd":{"official":"مارٹینیک","common":"مارٹینیک"},"zho":{"official":"马提尼克","common":"马提尼克"}},"latlng":[14.666667,-61],"landlocked":false,"borders":[],"area":1128,"flag":"🇲🇶","demonyms":{"eng":{"f":"Martinican","m":"Martinican"},"fra":{"f":"Martiniquaise","m":"Martiniquais"}}},{"name":{"common":"Mauritius","official":"Republic of Mauritius","native":{"eng":{"official":"Republic of Mauritius","common":"Mauritius"},"fra":{"official":"République de Maurice","common":"Maurice"},"mfe":{"official":"Republik Moris","common":"Moris"}}},"tld":[".mu"],"cca2":"MU","ccn3":"480","cca3":"MUS","cioc":"MRI","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"MUR":{"name":"Mauritian rupee","symbol":"₨"}},"idd":{"root":"+2","suffixes":["30"]},"capital":["Port Louis"],"altSpellings":["MU","Republic of Mauritius","République de Maurice"],"region":"Africa","subregion":"Eastern Africa","languages":{"eng":"English","fra":"French","mfe":"Mauritian Creole"},"translations":{"ara":{"official":"جمهورية موريشيوس","common":"موريشيوس"},"ces":{"official":"Mauricijská republika","common":"Mauricius"},"deu":{"official":"Republik Mauritius","common":"Mauritius"},"est":{"official":"Mauritiuse Vabariik","common":"Mauritius"},"fin":{"official":"Mauritiuksen tasavalta","common":"Mauritius"},"fra":{"official":"République de Maurice","common":"Île Maurice"},"hrv":{"official":"Republika Mauricijus","common":"Mauricijus"},"hun":{"official":"Mauritiusi Köztársaság","common":"Mauritius"},"ita":{"official":"Repubblica di Mauritius","common":"Mauritius"},"jpn":{"official":"モーリシャス共和国","common":"モーリシャス"},"kor":{"official":"모리셔스 공화국","common":"모리셔스"},"nld":{"official":"Republiek Mauritius","common":"Mauritius"},"per":{"official":"جمهوری موریس","common":"موریس"},"pol":{"official":"Republika Mauritiusu","common":"Mauritius"},"por":{"official":"República das Maurícias","common":"Maurício"},"rus":{"official":"Республика Маврикий","common":"Маврикий"},"slk":{"official":"Maurícijská republika","common":"Maurícius"},"spa":{"official":"República de Mauricio","common":"Mauricio"},"srp":{"official":"Republika Mauricijus","common":"Mauricijus"},"swe":{"official":"Republiken Mauritius","common":"Mauritius"},"tur":{"official":"Mauritius Cumhuriyeti","common":"Mauritius"},"urd":{"official":"جمہوریہ موریشس","common":"موریشس"},"zho":{"official":"毛里求斯共和国","common":"毛里求斯"}},"latlng":[-20.28333333,57.55],"landlocked":false,"borders":[],"area":2040,"flag":"🇲🇺","demonyms":{"eng":{"f":"Mauritian","m":"Mauritian"},"fra":{"f":"Mauricienne","m":"Mauricien"}}},{"name":{"common":"Malawi","official":"Republic of Malawi","native":{"eng":{"official":"Republic of Malawi","common":"Malawi"},"nya":{"official":"Chalo cha Malawi, Dziko la Malaŵi","common":"Malaŵi"}}},"tld":[".mw"],"cca2":"MW","ccn3":"454","cca3":"MWI","cioc":"MAW","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"MWK":{"name":"Malawian kwacha","symbol":"MK"}},"idd":{"root":"+2","suffixes":["65"]},"capital":["Lilongwe"],"altSpellings":["MW","Republic of Malawi"],"region":"Africa","subregion":"Eastern Africa","languages":{"eng":"English","nya":"Chewa"},"translations":{"ara":{"official":"جمهورية مالاوي","common":"مالاوي"},"ces":{"official":"Malawiská republika","common":"Malawi"},"deu":{"official":"Republik Malawi","common":"Malawi"},"est":{"official":"Malawi Vabariik","common":"Malawi"},"fin":{"official":"Malawin tasavalta","common":"Malawi"},"fra":{"official":"République du Malawi","common":"Malawi"},"hrv":{"official":"Republika Malavi","common":"Malavi"},"hun":{"official":"Malawi Köztársaság","common":"Malawi"},"ita":{"official":"Repubblica del Malawi","common":"Malawi"},"jpn":{"official":"マラウイ共和国","common":"マラウイ"},"kor":{"official":"말라위 공화국","common":"말라위"},"nld":{"official":"Republiek Malawi","common":"Malawi"},"per":{"official":"جمهوری مالاوی","common":"مالاوی"},"pol":{"official":"Republika Malawi","common":"Malawi"},"por":{"official":"República do Malawi","common":"Malawi"},"rus":{"official":"Республика Малави","common":"Малави"},"slk":{"official":"Malawijská republika","common":"Malawi"},"spa":{"official":"República de Malawi","common":"Malawi"},"srp":{"official":"Republika Malavi","common":"Malavi"},"swe":{"official":"Republiken Malawi","common":"Malawi"},"tur":{"official":"Malavi Cumhuriyeti","common":"Malavi"},"urd":{"official":"جمہوریہ ملاوی","common":"ملاوی"},"zho":{"official":"马拉维共和国","common":"马拉维"}},"latlng":[-13.5,34],"landlocked":true,"borders":["MOZ","TZA","ZMB"],"area":118484,"flag":"🇲🇼","demonyms":{"eng":{"f":"Malawian","m":"Malawian"},"fra":{"f":"Malawienne","m":"Malawien"}}},{"name":{"common":"Malaysia","official":"Malaysia","native":{"eng":{"official":"Malaysia","common":"Malaysia"},"msa":{"official":"مليسيا","common":"مليسيا"}}},"tld":[".my"],"cca2":"MY","ccn3":"458","cca3":"MYS","cioc":"MAS","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"MYR":{"name":"Malaysian ringgit","symbol":"RM"}},"idd":{"root":"+6","suffixes":["0"]},"capital":["Kuala Lumpur"],"altSpellings":["MY"],"region":"Asia","subregion":"South-Eastern Asia","languages":{"eng":"English","msa":"Malay"},"translations":{"ara":{"official":"ماليزيا","common":"ماليزيا"},"ces":{"official":"Malajsie","common":"Malajsie"},"deu":{"official":"Malaysia","common":"Malaysia"},"est":{"official":"Malaisia","common":"Malaisia"},"fin":{"official":"Malesia","common":"Malesia"},"fra":{"official":"Fédération de Malaisie","common":"Malaisie"},"hrv":{"official":"Malezija","common":"Malezija"},"hun":{"official":"Malajzia","common":"Malajzia"},"ita":{"official":"Malaysia","common":"Malesia"},"jpn":{"official":"マレーシア","common":"マレーシア"},"kor":{"official":"말레이시아","common":"말레이시아"},"nld":{"official":"Maleisië","common":"Maleisië"},"per":{"official":"فدراسیون مالزی","common":"مالزی"},"pol":{"official":"Malezja","common":"Malezja"},"por":{"official":"Malásia","common":"Malásia"},"rus":{"official":"Малайзия","common":"Малайзия"},"slk":{"official":"Malajzia","common":"Malajzia"},"spa":{"official":"Malasia","common":"Malasia"},"srp":{"official":"Malezija","common":"Malezija"},"swe":{"official":"Malaysia","common":"Malaysia"},"tur":{"official":"Malezya","common":"Malezya"},"urd":{"official":"ملائیشیا","common":"ملائیشیا"},"zho":{"official":"马来西亚","common":"马来西亚"}},"latlng":[2.5,112.5],"landlocked":false,"borders":["BRN","IDN","THA"],"area":330803,"flag":"🇲🇾","demonyms":{"eng":{"f":"Malaysian","m":"Malaysian"},"fra":{"f":"Malaisienne","m":"Malaisien"}}},{"name":{"common":"Mayotte","official":"Department of Mayotte","native":{"fra":{"official":"Département de Mayotte","common":"Mayotte"}}},"tld":[".yt"],"cca2":"YT","ccn3":"175","cca3":"MYT","cioc":"","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"EUR":{"name":"Euro","symbol":"€"}},"idd":{"root":"+2","suffixes":["62"]},"capital":["Mamoudzou"],"altSpellings":["YT","Department of Mayotte","Département de Mayotte"],"region":"Africa","subregion":"Eastern Africa","languages":{"fra":"French"},"translations":{"ara":{"official":"مايوت","common":"مايوت"},"ces":{"official":"Mayotte","common":"Mayotte"},"deu":{"official":"Übersee-Département Mayotte","common":"Mayotte"},"est":{"official":"Mayotte","common":"Mayotte"},"fin":{"official":"Mayotte","common":"Mayotte"},"fra":{"official":"Département de Mayotte","common":"Mayotte"},"hrv":{"official":"Odjel Mayotte","common":"Mayotte"},"hun":{"official":"Mayotte","common":"Mayotte"},"ita":{"official":"Dipartimento di Mayotte","common":"Mayotte"},"jpn":{"official":"マイヨット島","common":"マヨット"},"kor":{"official":"마요트","common":"마요트"},"nld":{"official":"Afdeling Mayotte","common":"Mayotte"},"per":{"official":"مجموعه شهرستانی مایوت","common":"مایوت"},"pol":{"official":"Majotta","common":"Majotta"},"por":{"official":"Departamento de Mayotte","common":"Mayotte"},"rus":{"official":"Департамент Майотта","common":"Майотта"},"slk":{"official":"Department Mayotte","common":"Mayotte"},"spa":{"official":"Departamento de Mayotte","common":"Mayotte"},"srp":{"official":"Kolektivitet Majot","common":"Majot"},"swe":{"official":"Departementsområdet Mayotte","common":"Mayotte"},"tur":{"official":"Mayotte","common":"Mayotte"},"urd":{"official":"مایوٹ","common":"مایوٹ"},"zho":{"official":"马约特","common":"马约特"}},"latlng":[-12.83333333,45.16666666],"landlocked":false,"borders":[],"area":374,"flag":"🇾🇹","demonyms":{"eng":{"f":"Mahoran","m":"Mahoran"},"fra":{"f":"Mahoraise","m":"Mahorais"}}},{"name":{"common":"Namibia","official":"Republic of Namibia","native":{"afr":{"official":"Republiek van Namibië","common":"Namibië"},"deu":{"official":"Republik Namibia","common":"Namibia"},"eng":{"official":"Republic of Namibia","common":"Namibia"},"her":{"official":"Republic of Namibia","common":"Namibia"},"hgm":{"official":"Republic of Namibia","common":"Namibia"},"kwn":{"official":"Republic of Namibia","common":"Namibia"},"loz":{"official":"Republic of Namibia","common":"Namibia"},"ndo":{"official":"Republic of Namibia","common":"Namibia"},"tsn":{"official":"Lefatshe la Namibia","common":"Namibia"}}},"tld":[".na"],"cca2":"NA","ccn3":"516","cca3":"NAM","cioc":"NAM","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"NAD":{"name":"Namibian dollar","symbol":"$"},"ZAR":{"name":"South African rand","symbol":"R"}},"idd":{"root":"+2","suffixes":["64"]},"capital":["Windhoek"],"altSpellings":["NA","Namibië","Republic of Namibia"],"region":"Africa","subregion":"Southern Africa","languages":{"afr":"Afrikaans","deu":"German","eng":"English","her":"Herero","hgm":"Khoekhoe","kwn":"Kwangali","loz":"Lozi","ndo":"Ndonga","tsn":"Tswana"},"translations":{"ara":{"official":"جمهورية ناميبيا","common":"ناميبيا"},"ces":{"official":"Namibijská republika","common":"Namibie"},"deu":{"official":"Republik Namibia","common":"Namibia"},"est":{"official":"Namiibia Vabariik","common":"Namiibia"},"fin":{"official":"Namibian tasavalta","common":"Namibia"},"fra":{"official":"République de Namibie","common":"Namibie"},"hrv":{"official":"Republika Namibija","common":"Namibija"},"hun":{"official":"Namíbiai Köztársaság","common":"Namíbia"},"ita":{"official":"Repubblica di Namibia","common":"Namibia"},"jpn":{"official":"ナミビア共和国","common":"ナミビア"},"kor":{"official":"나미비아 공화국","common":"나미비아"},"nld":{"official":"Republiek Namibië","common":"Namibië"},"per":{"official":"جمهوری نامیبیا","common":"نامیبیا"},"pol":{"official":"Republika Namibii","common":"Namibia"},"por":{"official":"República da Namíbia","common":"Namíbia"},"rus":{"official":"Республика Намибия","common":"Намибия"},"slk":{"official":"Namíbijská republika","common":"Namíbia"},"spa":{"official":"República de Namibia","common":"Namibia"},"srp":{"official":"Republika Namibija","common":"Namibija"},"swe":{"official":"Republiken Namibia","common":"Namibia"},"tur":{"official":"Namibya Cumhuriyeti","common":"Namibya"},"urd":{"official":"جمہوریہ نمیبیا","common":"نمیبیا"},"zho":{"official":"纳米比亚共和国","common":"纳米比亚"}},"latlng":[-22,17],"landlocked":false,"borders":["AGO","BWA","ZAF","ZMB"],"area":825615,"flag":"🇳🇦","demonyms":{"eng":{"f":"Namibian","m":"Namibian"},"fra":{"f":"Namibienne","m":"Namibien"}}},{"name":{"common":"New Caledonia","official":"New Caledonia","native":{"fra":{"official":"Nouvelle-Calédonie","common":"Nouvelle-Calédonie"}}},"tld":[".nc"],"cca2":"NC","ccn3":"540","cca3":"NCL","cioc":"","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"XPF":{"name":"CFP franc","symbol":"₣"}},"idd":{"root":"+6","suffixes":["87"]},"capital":["Nouméa"],"altSpellings":["NC"],"region":"Oceania","subregion":"Melanesia","languages":{"fra":"French"},"translations":{"ara":{"official":"كاليدونيا الجديدة","common":"كاليدونيا الجديدة"},"ces":{"official":"Nová Kaledonie","common":"Nová Kaledonie"},"deu":{"official":"Neukaledonien","common":"Neukaledonien"},"est":{"official":"Uus-Kaledoonia","common":"Uus-Kaledoonia"},"fin":{"official":"Uusi-Kaledonia","common":"Uusi-Kaledonia"},"fra":{"official":"Nouvelle-Calédonie","common":"Nouvelle-Calédonie"},"hrv":{"official":"Nova Kaledonija","common":"Nova Kaledonija"},"hun":{"official":"Új-Kaledónia","common":"Új-Kaledónia"},"ita":{"official":"Nuova Caledonia","common":"Nuova Caledonia"},"jpn":{"official":"ニューカレドニア","common":"ニューカレドニア"},"kor":{"official":"누벨칼레도니","common":"누벨칼레도니"},"nld":{"official":"nieuw -Caledonië","common":"Nieuw-Caledonië"},"per":{"official":"کالدونیای جدید","common":"کالدونیای جدید"},"pol":{"official":"Nowa Kaledonia","common":"Nowa Kaledonia"},"por":{"official":"New Caledonia","common":"Nova Caledónia"},"rus":{"official":"Новая Каледония","common":"Новая Каледония"},"slk":{"official":"Nová Kaledónia","common":"Nová Kaledónia"},"spa":{"official":"nueva Caledonia","common":"Nueva Caledonia"},"srp":{"official":"Nova Kaledonija","common":"Nova Kaledonija"},"swe":{"official":"Nya Kaledonien","common":"Nya Kaledonien"},"tur":{"official":"Yeni Kaledonya","common":"Yeni Kaledonya"},"urd":{"official":"نیو کیلیڈونیا","common":"نیو کیلیڈونیا"},"zho":{"official":"新喀里多尼亚","common":"新喀里多尼亚"}},"latlng":[-21.5,165.5],"landlocked":false,"borders":[],"area":18575,"flag":"🇳🇨","demonyms":{"eng":{"f":"New Caledonian","m":"New Caledonian"},"fra":{"f":"Néo-Calédonienne","m":"Néo-Calédonien"}}},{"name":{"common":"Niger","official":"Republic of Niger","native":{"fra":{"official":"République du Niger","common":"Niger"}}},"tld":[".ne"],"cca2":"NE","ccn3":"562","cca3":"NER","cioc":"NIG","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"XOF":{"name":"West African CFA franc","symbol":"Fr"}},"idd":{"root":"+2","suffixes":["27"]},"capital":["Niamey"],"altSpellings":["NE","Nijar"],"region":"Africa","subregion":"Western Africa","languages":{"fra":"French"},"translations":{"ara":{"official":"جمهورية النيجر","common":"النيجر"},"ces":{"official":"Nigerská republika","common":"Niger"},"deu":{"official":"Republik Niger","common":"Niger"},"est":{"official":"Nigeri Vabariik","common":"Niger"},"fin":{"official":"Nigerin tasavalta","common":"Niger"},"fra":{"official":"République du Niger","common":"Niger"},"hrv":{"official":"Republika Niger","common":"Niger"},"hun":{"official":"Nigeri Köztársaság","common":"Niger"},"ita":{"official":"Repubblica del Niger","common":"Niger"},"jpn":{"official":"ニジェール共和国","common":"ニジェール"},"kor":{"official":"니제르 공화국","common":"니제르"},"nld":{"official":"Republiek Niger","common":"Niger"},"per":{"official":"جمهوری نیجر","common":"نیجر"},"pol":{"official":"Republika Nigru","common":"Niger"},"por":{"official":"República do Níger","common":"Níger"},"rus":{"official":"Республика Нигер","common":"Нигер"},"slk":{"official":"Nigérská republika","common":"Niger"},"spa":{"official":"República de Níger","common":"Níger"},"srp":{"official":"Republika Niger","common":"Niger"},"swe":{"official":"Republiken Niger","common":"Niger"},"tur":{"official":"Nijer Cumhuriyeti","common":"Nijer"},"urd":{"official":"جمہوریہ نائجر","common":"نائجر"},"zho":{"official":"尼日尔共和国","common":"尼日尔"}},"latlng":[16,8],"landlocked":true,"borders":["DZA","BEN","BFA","TCD","LBY","MLI","NGA"],"area":1267000,"flag":"🇳🇪","demonyms":{"eng":{"f":"Nigerien","m":"Nigerien"},"fra":{"f":"Nigérienne","m":"Nigérien"}}},{"name":{"common":"Norfolk Island","official":"Territory of Norfolk Island","native":{"eng":{"official":"Territory of Norfolk Island","common":"Norfolk Island"},"pih":{"official":"Teratri of Norf'k Ailen","common":"Norf'k Ailen"}}},"tld":[".nf"],"cca2":"NF","ccn3":"574","cca3":"NFK","cioc":"","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"AUD":{"name":"Australian dollar","symbol":"$"}},"idd":{"root":"+6","suffixes":["72"]},"capital":["Kingston"],"altSpellings":["NF","Territory of Norfolk Island","Teratri of Norf'k Ailen"],"region":"Oceania","subregion":"Australia and New Zealand","languages":{"eng":"English","pih":"Norfuk"},"translations":{"ara":{"official":"إقليم جزيرة نورفولك","common":"جزيرة نورفولك"},"ces":{"official":"Teritorium ostrova Norfolk","common":"Norfolk"},"deu":{"official":"Gebiet der Norfolkinsel","common":"Norfolkinsel"},"est":{"official":"Norfolki saare ala","common":"Norfolk"},"fin":{"official":"Norfolkinsaaren territorio","common":"Norfolkinsaari"},"fra":{"official":"Territoire de l'île Norfolk","common":"Île Norfolk"},"hrv":{"official":"Teritorij Norfolk Island","common":"Otok Norfolk"},"hun":{"official":"Norfolk-sziget","common":"Norfolk-sziget"},"ita":{"official":"Territorio di Norfolk Island","common":"Isola Norfolk"},"jpn":{"official":"ノーフォーク島","common":"ノーフォーク島"},"kor":{"official":"노퍽 섬","common":"노퍽 섬"},"nld":{"official":"Grondgebied van Norfolk Island","common":"Norfolkeiland"},"per":{"official":"قلمرو جزایر نورفک","common":"جزیره نورفک"},"pol":{"official":"Terytorium Wyspy Norfolk","common":"Wyspa Norfolk"},"por":{"official":"Território da Ilha Norfolk","common":"Ilha Norfolk"},"rus":{"official":"Территория острова Норфолк","common":"Норфолк"},"slk":{"official":"Teritórium ostrova Norfolk","common":"Norfolk"},"spa":{"official":"Territorio de la Isla Norfolk","common":"Isla de Norfolk"},"srp":{"official":"Teritorija Ostrva Norfok","common":"Ostrvo Norfok"},"swe":{"official":"Norfolkön","common":"Norfolkön"},"tur":{"official":"Norfolk Adası","common":"Norfolk Adası"},"urd":{"official":"جزیرہ نورفک خطہ","common":"جزیرہ نورفک"},"zho":{"official":"诺福克岛","common":"诺福克岛"}},"latlng":[-29.03333333,167.95],"landlocked":false,"borders":[],"area":36,"flag":"🇳🇫","demonyms":{"eng":{"f":"Norfolk Islander","m":"Norfolk Islander"},"fra":{"f":"Norfolkaise","m":"Norfolkais"}}},{"name":{"common":"Nigeria","official":"Federal Republic of Nigeria","native":{"eng":{"official":"Federal Republic of Nigeria","common":"Nigeria"}}},"tld":[".ng"],"cca2":"NG","ccn3":"566","cca3":"NGA","cioc":"NGR","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"NGN":{"name":"Nigerian naira","symbol":"₦"}},"idd":{"root":"+2","suffixes":["34"]},"capital":["Abuja"],"altSpellings":["NG","Nijeriya","Naíjíríà","Federal Republic of Nigeria"],"region":"Africa","subregion":"Western Africa","languages":{"eng":"English"},"translations":{"ara":{"official":"جمهورية نيجيريا الاتحادية","common":"نيجيريا"},"ces":{"official":"Nigerijská federativní republika","common":"Nigérie"},"deu":{"official":"Bundesrepublik Nigeria","common":"Nigeria"},"est":{"official":"Nigeeria Liitvabariik","common":"Nigeeria"},"fin":{"official":"Nigerian liittotasavalta","common":"Nigeria"},"fra":{"official":"République fédérale du Nigeria","common":"Nigéria"},"hrv":{"official":"Savezna Republika Nigerija","common":"Nigerija"},"hun":{"official":"Nigéria","common":"Nigéria"},"ita":{"official":"Repubblica federale di Nigeria","common":"Nigeria"},"jpn":{"official":"ナイジェリア連邦共和国","common":"ナイジェリア"},"kor":{"official":"나이지리아 연방 공화국","common":"나이지리아"},"nld":{"official":"Federale Republiek Nigeria","common":"Nigeria"},"per":{"official":"جمهوری فدرال نیجریه","common":"نیجریه"},"pol":{"official":"Federalna Republika Nigerii","common":"Nigeria"},"por":{"official":"República Federal da Nigéria","common":"Nigéria"},"rus":{"official":"Федеративная Республика Нигерия","common":"Нигерия"},"slk":{"official":"Nigérijská federatívna republika","common":"Nigéria"},"spa":{"official":"República Federal de Nigeria","common":"Nigeria"},"srp":{"official":"Savezna Republika Nigerija","common":"Nigerija"},"swe":{"official":"Förbundsrepubliken Nigeria","common":"Nigeria"},"tur":{"official":"Nijerya Federal Cumhuriyeti","common":"Nijerya"},"urd":{"official":"وفاقی جمہوریہ نائجیریا","common":"نائجیریا"},"zho":{"official":"尼日利亚联邦共和国","common":"尼日利亚"}},"latlng":[10,8],"landlocked":false,"borders":["BEN","CMR","TCD","NER"],"area":923768,"flag":"🇳🇬","demonyms":{"eng":{"f":"Nigerian","m":"Nigerian"},"fra":{"f":"Nigériane","m":"Nigérian"}}},{"name":{"common":"Nicaragua","official":"Republic of Nicaragua","native":{"spa":{"official":"República de Nicaragua","common":"Nicaragua"}}},"tld":[".ni"],"cca2":"NI","ccn3":"558","cca3":"NIC","cioc":"NCA","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Latin American and Caribbean Group","currencies":{"NIO":{"name":"Nicaraguan córdoba","symbol":"C$"}},"idd":{"root":"+5","suffixes":["05"]},"capital":["Managua"],"altSpellings":["NI","Republic of Nicaragua","República de Nicaragua"],"region":"Americas","subregion":"Central America","languages":{"spa":"Spanish"},"translations":{"ara":{"official":"جمهورية نيكاراغوا","common":"نيكاراغوا"},"ces":{"official":"Republika Nikaragua","common":"Nikaragua"},"deu":{"official":"Republik Nicaragua","common":"Nicaragua"},"est":{"official":"Nicaragua Vabariik","common":"Nicaragua"},"fin":{"official":"Nicaraguan tasavalta","common":"Nicaragua"},"fra":{"official":"République du Nicaragua","common":"Nicaragua"},"hrv":{"official":"Republika Nikaragva","common":"Nikaragva"},"hun":{"official":"Nicaraguai Köztársaság","common":"Nicaragua"},"ita":{"official":"Repubblica del Nicaragua","common":"Nicaragua"},"jpn":{"official":"ニカラグア共和国","common":"ニカラグア"},"kor":{"official":"니카라과 공화국","common":"니카라과"},"nld":{"official":"Republiek Nicaragua","common":"Nicaragua"},"per":{"official":"جمهوری نیکاراگوئه","common":"نیکاراگوئه"},"pol":{"official":"Republika Nikaragui","common":"Nikaragua"},"por":{"official":"República da Nicarágua","common":"Nicarágua"},"rus":{"official":"Республика Никарагуа","common":"Никарагуа"},"slk":{"official":"Nikaragujská republika","common":"Nikaragua"},"spa":{"official":"República de Nicaragua","common":"Nicaragua"},"srp":{"official":"Republika Nikaragva","common":"Nikaragva"},"swe":{"official":"Republiken Nicaragua","common":"Nicaragua"},"tur":{"official":"Nikaragua Cumhuriyeti","common":"Nikaragua"},"urd":{"official":"جمہوریہ نکاراگوا","common":"نکاراگوا"},"zho":{"official":"尼加拉瓜共和国","common":"尼加拉瓜"}},"latlng":[13,-85],"landlocked":false,"borders":["CRI","HND"],"area":130373,"flag":"🇳🇮","demonyms":{"eng":{"f":"Nicaraguan","m":"Nicaraguan"},"fra":{"f":"Nicaraguayenne","m":"Nicaraguayen"}}},{"name":{"common":"Niue","official":"Niue","native":{"eng":{"official":"Niue","common":"Niue"},"niu":{"official":"Niuē","common":"Niuē"}}},"tld":[".nu"],"cca2":"NU","ccn3":"570","cca3":"NIU","cioc":"","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"NZD":{"name":"New Zealand dollar","symbol":"$"}},"idd":{"root":"+6","suffixes":["83"]},"capital":["Alofi"],"altSpellings":["NU"],"region":"Oceania","subregion":"Polynesia","languages":{"eng":"English","niu":"Niuean"},"translations":{"ara":{"official":"نييوي","common":"نييوي"},"ces":{"official":"Niue","common":"Niue"},"deu":{"official":"Niue","common":"Niue"},"est":{"official":"Niue","common":"Niue"},"fin":{"official":"Niue","common":"Niue"},"fra":{"official":"Niue","common":"Niue"},"hrv":{"official":"Niue","common":"Niue"},"hun":{"official":"Niue","common":"Niue"},"ita":{"official":"Niue","common":"Niue"},"jpn":{"official":"ニウエ","common":"ニウエ"},"kor":{"official":"니우에","common":"니우에"},"nld":{"official":"Niue","common":"Niue"},"per":{"official":"نیووی","common":"نیووی"},"pol":{"official":"Niue","common":"Niue"},"por":{"official":"Niue","common":"Niue"},"rus":{"official":"Ниуэ","common":"Ниуэ"},"slk":{"official":"Niue","common":"Niue"},"spa":{"official":"Niue","common":"Niue"},"srp":{"official":"Nijue","common":"Nijue"},"swe":{"official":"Niue","common":"Niue"},"tur":{"official":"Niue","common":"Niue"},"urd":{"official":"نیووے","common":"نیووے"},"zho":{"official":"纽埃","common":"纽埃"}},"latlng":[-19.03333333,-169.86666666],"landlocked":false,"borders":[],"area":260,"flag":"🇳🇺","demonyms":{"eng":{"f":"Niuean","m":"Niuean"},"fra":{"f":"Niuéenne","m":"Niuéen"}}},{"name":{"common":"Netherlands","official":"Kingdom of the Netherlands","native":{"nld":{"official":"Koninkrijk der Nederlanden","common":"Nederland"}}},"tld":[".nl"],"cca2":"NL","ccn3":"528","cca3":"NLD","cioc":"NED","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Western European and Others Group","currencies":{"EUR":{"name":"Euro","symbol":"€"}},"idd":{"root":"+3","suffixes":["1"]},"capital":["Amsterdam"],"altSpellings":["NL","Holland","Nederland","The Netherlands"],"region":"Europe","subregion":"Western Europe","languages":{"nld":"Dutch"},"translations":{"ara":{"official":"هولندا","common":"هولندا"},"ces":{"official":"Nizozemské království","common":"Nizozemsko"},"deu":{"official":"Niederlande","common":"Niederlande"},"est":{"official":"Madalmaade Kuningriik","common":"Holland"},"fin":{"official":"Alankomaat","common":"Alankomaat"},"fra":{"official":"Pays-Bas","common":"Pays-Bas"},"hrv":{"official":"Holandija","common":"Nizozemska"},"hun":{"official":"Holland Királyság","common":"Hollandia"},"ita":{"official":"Paesi Bassi","common":"Paesi Bassi"},"jpn":{"official":"オランダ王国","common":"オランダ"},"kor":{"official":"네덜란드 왕국","common":"네덜란드"},"nld":{"official":"Nederland","common":"Nederland"},"per":{"official":"هلند","common":"هلند"},"pol":{"official":"Królestwo Niderlandów","common":"Holandia"},"por":{"official":"Holanda","common":"Holanda"},"rus":{"official":"Нидерланды","common":"Нидерланды"},"slk":{"official":"Holandské kráľovstvo","common":"Holansko"},"spa":{"official":"Países Bajos","common":"Países Bajos"},"srp":{"official":"Kraljevina Holandija","common":"Holandija"},"swe":{"official":"Nederländerna","common":"Nederländerna"},"tur":{"official":"Hollanda Krallığı","common":"Hollanda"},"urd":{"official":"مملکتِ نیدرلینڈز","common":"نیدرلینڈز"},"zho":{"official":"荷兰","common":"荷兰"}},"latlng":[52.5,5.75],"landlocked":false,"borders":["BEL","DEU"],"area":41850,"flag":"🇳🇱","demonyms":{"eng":{"f":"Dutch","m":"Dutch"},"fra":{"f":"Néerlandaise","m":"Néerlandais"}}},{"name":{"common":"Norway","official":"Kingdom of Norway","native":{"nno":{"official":"Kongeriket Noreg","common":"Noreg"},"nob":{"official":"Kongeriket Norge","common":"Norge"},"smi":{"official":"Norgga gonagasriika","common":"Norgga"}}},"tld":[".no"],"cca2":"NO","ccn3":"578","cca3":"NOR","cioc":"NOR","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Western European and Others Group","currencies":{"NOK":{"name":"Norwegian krone","symbol":"kr"}},"idd":{"root":"+4","suffixes":["7"]},"capital":["Oslo"],"altSpellings":["NO","Norge","Noreg","Kingdom of Norway","Kongeriket Norge","Kongeriket Noreg"],"region":"Europe","subregion":"Northern Europe","languages":{"nno":"Norwegian Nynorsk","nob":"Norwegian Bokmål","smi":"Sami"},"translations":{"ara":{"official":"مملكة النرويج","common":"النرويج"},"ces":{"official":"Norské království","common":"Norsko"},"deu":{"official":"Königreich Norwegen","common":"Norwegen"},"est":{"official":"Norra Kuningriik","common":"Norra"},"fin":{"official":"Norjan kuningaskunta","common":"Norja"},"fra":{"official":"Royaume de Norvège","common":"Norvège"},"hrv":{"official":"Kraljevina Norveška","common":"Norveška"},"hun":{"official":"Norvég Királyság","common":"Norvégia"},"ita":{"official":"Regno di Norvegia","common":"Norvegia"},"jpn":{"official":"ノルウェー王国","common":"ノルウェー"},"kor":{"official":"노르웨이 왕국","common":"노르웨이"},"nld":{"official":"Koninkrijk Noorwegen","common":"Noorwegen"},"per":{"official":"پادشاهی نروژ","common":"نروژ"},"pol":{"official":"Królestwo Norwegii","common":"Norwegia"},"por":{"official":"Reino da Noruega","common":"Noruega"},"rus":{"official":"Королевство Норвегия","common":"Норвегия"},"slk":{"official":"Nórske kráľovstvo","common":"Nórsko"},"spa":{"official":"Reino de Noruega","common":"Noruega"},"srp":{"official":"Kraljevina Norveška","common":"Norveška"},"swe":{"official":"Konungariket Norge","common":"Norge"},"tur":{"official":"Norveç Krallığı","common":"Norveç"},"urd":{"official":"مملکتِ ناروے","common":"ناروے"},"zho":{"official":"挪威王国","common":"挪威"}},"latlng":[62,10],"landlocked":false,"borders":["FIN","SWE","RUS"],"area":323802,"flag":"🇳🇴","demonyms":{"eng":{"f":"Norwegian","m":"Norwegian"},"fra":{"f":"Norvégienne","m":"Norvégien"}}},{"name":{"common":"Nepal","official":"Federal Democratic Republic of Nepal","native":{"nep":{"official":"नेपाल संघीय लोकतान्त्रिक गणतन्त्र","common":"नेपाल"}}},"tld":[".np"],"cca2":"NP","ccn3":"524","cca3":"NPL","cioc":"NEP","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"NPR":{"name":"Nepalese rupee","symbol":"₨"}},"idd":{"root":"+9","suffixes":["77"]},"capital":["Kathmandu"],"altSpellings":["NP","Federal Democratic Republic of Nepal","Loktāntrik Ganatantra Nepāl"],"region":"Asia","subregion":"Southern Asia","languages":{"nep":"Nepali"},"translations":{"ara":{"official":"جمهورية نيبال الديمقراطية الاتحادية","common":"نيبال"},"ces":{"official":"Federativní demokratická republika Nepál","common":"Nepál"},"deu":{"official":"Demokratische Bundesrepublik Nepal","common":"Nepal"},"est":{"official":"Nepali Demokraatlik Liitvabariik","common":"Nepal"},"fin":{"official":"Nepalin demokraattinen liittotasavalta","common":"Nepal"},"fra":{"official":"République du Népal","common":"Népal"},"hrv":{"official":"Savezna Demokratska Republika Nepal","common":"Nepal"},"hun":{"official":"Nepáli Szövetségi Demokratikus Köztársaság","common":"Nepál"},"ita":{"official":"Repubblica federale democratica del Nepal","common":"Nepal"},"jpn":{"official":"ネパール連邦民主共和国","common":"ネパール"},"kor":{"official":"네팔 연방 민주 공화국","common":"네팔"},"nld":{"official":"Federale Democratische Republiek Nepal","common":"Nepal"},"per":{"official":"جمهوری فدرال دموکراتیک نپال","common":"نپال"},"pol":{"official":"Federalna Demokratyczna Republika Nepalu","common":"Nepal"},"por":{"official":"República Democrática Federal do Nepal","common":"Nepal"},"rus":{"official":"Федеративная Демократическая Республика Непал","common":"Непал"},"slk":{"official":"Nepálska federatívna demokratická republika","common":"Nepál"},"spa":{"official":"República Democrática Federal de Nepal","common":"Nepal"},"srp":{"official":"Savezna Demokratska Republika Nepal","common":"Nepal"},"swe":{"official":"Demokratiska förbundsrepubliken Nepal","common":"Nepal"},"tur":{"official":"Nepal Federal Demokratik Cumhuriyeti","common":"Nepal"},"urd":{"official":"وفاقی جمہوری جمہوریہ نیپال","common":"نیپال"},"zho":{"official":"尼泊尔联邦民主共和国","common":"尼泊尔"}},"latlng":[28,84],"landlocked":true,"borders":["CHN","IND"],"area":147181,"flag":"🇳🇵","demonyms":{"eng":{"f":"Nepalese","m":"Nepalese"},"fra":{"f":"Népalaise","m":"Népalais"}}},{"name":{"common":"Nauru","official":"Republic of Nauru","native":{"eng":{"official":"Republic of Nauru","common":"Nauru"},"nau":{"official":"Republic of Nauru","common":"Nauru"}}},"tld":[".nr"],"cca2":"NR","ccn3":"520","cca3":"NRU","cioc":"NRU","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"AUD":{"name":"Australian dollar","symbol":"$"}},"idd":{"root":"+6","suffixes":["74"]},"capital":["Yaren"],"altSpellings":["NR","Naoero","Pleasant Island","Republic of Nauru","Ripublik Naoero"],"region":"Oceania","subregion":"Micronesia","languages":{"eng":"English","nau":"Nauru"},"translations":{"ara":{"official":"جمهورية ناورو","common":"ناورو"},"ces":{"official":"Republika Nauru","common":"Nauru"},"deu":{"official":"Republik Nauru","common":"Nauru"},"est":{"official":"Nauru Vabariik","common":"Nauru"},"fin":{"official":"Naurun tasavalta","common":"Nauru"},"fra":{"official":"République de Nauru","common":"Nauru"},"hrv":{"official":"Republika Nauru","common":"Nauru"},"hun":{"official":"Naurui Köztársaság","common":"Nauru"},"ita":{"official":"Repubblica di Nauru","common":"Nauru"},"jpn":{"official":"ナウル共和国","common":"ナウル"},"kor":{"official":"나우루 공화국","common":"나우루"},"nld":{"official":"Republiek Nauru","common":"Nauru"},"per":{"official":"جمهوری نائورو","common":"نائورو"},"pol":{"official":"Republika Nauru","common":"Nauru"},"por":{"official":"República de Nauru","common":"Nauru"},"rus":{"official":"Республика Науру","common":"Науру"},"slk":{"official":"Naurská republika","common":"Nauru"},"spa":{"official":"República de Nauru","common":"Nauru"},"srp":{"official":"Republika Nauru","common":"Nauru"},"swe":{"official":"Republiken Nauru","common":"Nauru"},"tur":{"official":"Nauru Cumhuriyeti","common":"Nauru"},"urd":{"official":"جمہوریہ ناورو","common":"ناورو"},"zho":{"official":"瑙鲁共和国","common":"瑙鲁"}},"latlng":[-0.53333333,166.91666666],"landlocked":false,"borders":[],"area":21,"flag":"🇳🇷","demonyms":{"eng":{"f":"Nauruan","m":"Nauruan"},"fra":{"f":"Nauruane","m":"Nauruan"}}},{"name":{"common":"New Zealand","official":"New Zealand","native":{"eng":{"official":"New Zealand","common":"New Zealand"},"mri":{"official":"Aotearoa","common":"Aotearoa"},"nzs":{"official":"New Zealand","common":"New Zealand"}}},"tld":[".nz"],"cca2":"NZ","ccn3":"554","cca3":"NZL","cioc":"NZL","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Western European and Others Group","currencies":{"NZD":{"name":"New Zealand dollar","symbol":"$"}},"idd":{"root":"+6","suffixes":["4"]},"capital":["Wellington"],"altSpellings":["NZ","Aotearoa"],"region":"Oceania","subregion":"Australia and New Zealand","languages":{"eng":"English","mri":"Māori","nzs":"New Zealand Sign Language"},"translations":{"ara":{"official":"نيوزيلندا","common":"نيوزيلندا"},"ces":{"official":"Nový Zéland","common":"Nový Zéland"},"deu":{"official":"Neuseeland","common":"Neuseeland"},"est":{"official":"Uus-Meremaa","common":"Uus-Meremaa"},"fin":{"official":"Uusi-Seelanti","common":"Uusi-Seelanti"},"fra":{"official":"Nouvelle-Zélande","common":"Nouvelle-Zélande"},"hrv":{"official":"Novi Zeland","common":"Novi Zeland"},"hun":{"official":"Új-Zéland","common":"Új-Zéland"},"ita":{"official":"Nuova Zelanda","common":"Nuova Zelanda"},"jpn":{"official":"ニュージーランド","common":"ニュージーランド"},"kor":{"official":"뉴질랜드","common":"뉴질랜드"},"nld":{"official":"Nieuw Zeeland","common":"Nieuw-Zeeland"},"per":{"official":"نیوزیلند","common":"نیوزیلند"},"pol":{"official":"Nowa Zelandia","common":"Nowa Zelandia"},"por":{"official":"nova Zelândia","common":"Nova Zelândia"},"rus":{"official":"Новая Зеландия","common":"Новая Зеландия"},"slk":{"official":"Nový Zéland","common":"Nový Zéland"},"spa":{"official":"nueva Zelanda","common":"Nueva Zelanda"},"srp":{"official":"Novi Zeland","common":"Novi Zeland"},"swe":{"official":"Nya Zeeland","common":"Nya Zeeland"},"tur":{"official":"Yeni Zelanda","common":"Yeni Zelanda"},"urd":{"official":"نیوزی لینڈ","common":"نیوزی لینڈ"},"zho":{"official":"新西兰","common":"新西兰"}},"latlng":[-41,174],"landlocked":false,"borders":[],"area":270467,"flag":"🇳🇿","demonyms":{"eng":{"f":"New Zealander","m":"New Zealander"},"fra":{"f":"Neo-Zélandaise","m":"Neo-Zélandais"}}},{"name":{"common":"Oman","official":"Sultanate of Oman","native":{"ara":{"official":"سلطنة عمان","common":"عمان"}}},"tld":[".om"],"cca2":"OM","ccn3":"512","cca3":"OMN","cioc":"OMA","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"OMR":{"name":"Omani rial","symbol":"ر.ع."}},"idd":{"root":"+9","suffixes":["68"]},"capital":["Muscat"],"altSpellings":["OM","Sultanate of Oman","Salṭanat ʻUmān"],"region":"Asia","subregion":"Western Asia","languages":{"ara":"Arabic"},"translations":{"ara":{"official":"سلطنة عمان","common":"عمان"},"ces":{"official":"Sultanát Omán","common":"Omán"},"deu":{"official":"Sultanat Oman","common":"Oman"},"est":{"official":"Omaani Sultaniriik","common":"Omaan"},"fin":{"official":"Omanin sulttaanikunta","common":"Oman"},"fra":{"official":"Sultanat d'Oman","common":"Oman"},"hrv":{"official":"Sultanat Oman","common":"Oman"},"hun":{"official":"Ománi Szultanátus","common":"Omán"},"ita":{"official":"Sultanato dell'Oman","common":"oman"},"jpn":{"official":"オマーン国","common":"オマーン"},"kor":{"official":"오만 술탄국","common":"오만"},"nld":{"official":"Sultanaat van Oman","common":"Oman"},"per":{"official":"سلطان‌نشین عُمان","common":"عمان"},"pol":{"official":"Sułtanat Omanu","common":"Oman"},"por":{"official":"Sultanato de Omã","common":"Omã"},"rus":{"official":"Султанат Оман","common":"Оман"},"slk":{"official":"Ománsky sultanát","common":"Omán"},"spa":{"official":"Sultanato de Omán","common":"Omán"},"srp":{"official":"Sultanat Oman","common":"Oman"},"swe":{"official":"Sultanatet Oman","common":"Oman"},"tur":{"official":"Umman Sultanlığı","common":"Umman"},"urd":{"official":"سلطنت عمان","common":"عمان"},"zho":{"official":"阿曼苏丹国","common":"阿曼"}},"latlng":[21,57],"landlocked":false,"borders":["SAU","ARE","YEM"],"area":309500,"flag":"🇴🇲","demonyms":{"eng":{"f":"Omani","m":"Omani"},"fra":{"f":"Omanaise","m":"Omanais"}}},{"name":{"common":"Pakistan","official":"Islamic Republic of Pakistan","native":{"eng":{"official":"Islamic Republic of Pakistan","common":"Pakistan"},"urd":{"official":"اسلامی جمہوریۂ پاكستان","common":"پاكستان"}}},"tld":[".pk"],"cca2":"PK","ccn3":"586","cca3":"PAK","cioc":"PAK","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"PKR":{"name":"Pakistani rupee","symbol":"₨"}},"idd":{"root":"+9","suffixes":["2"]},"capital":["Islamabad"],"altSpellings":["PK","Pākistān","Islamic Republic of Pakistan","Islāmī Jumhūriya'eh Pākistān"],"region":"Asia","subregion":"Southern Asia","languages":{"eng":"English","urd":"Urdu"},"translations":{"ara":{"official":"جمهورية باكستان الإسلامية","common":"باكستان"},"ces":{"official":"Pákistánská islámská republika","common":"Pákistán"},"deu":{"official":"Islamische Republik Pakistan","common":"Pakistan"},"est":{"official":"Pakistani Islamivabariik","common":"Pakistan"},"fin":{"official":"Pakistanin islamilainen tasavalta","common":"Pakistan"},"fra":{"official":"République islamique du Pakistan","common":"Pakistan"},"hrv":{"official":"Islamska Republika Pakistan","common":"Pakistan"},"hun":{"official":"Pakisztán","common":"Pakisztán"},"ita":{"official":"Repubblica islamica del Pakistan","common":"Pakistan"},"jpn":{"official":"パキスタン・イスラム共和国","common":"パキスタン"},"kor":{"official":"파키스탄 이슬람 공화국","common":"파키스탄"},"nld":{"official":"Islamitische Republiek Pakistan","common":"Pakistan"},"per":{"official":"جمهوری اسلامی پاکستان","common":"پاکستان"},"pol":{"official":"Islamska Republika Pakistanu","common":"Pakistan"},"por":{"official":"República Islâmica do Paquistão","common":"Paquistão"},"rus":{"official":"Исламская Республика Пакистан","common":"Пакистан"},"slk":{"official":"Pakistanská islamská republika","common":"Pakistan"},"spa":{"official":"República Islámica de Pakistán","common":"Pakistán"},"srp":{"official":"Islamska Republika Pakistan","common":"Pakistan"},"swe":{"official":"Islamiska republiken Pakistan","common":"Pakistan"},"tur":{"official":"Pakistan İslam Cumhuriyeti","common":"Pakistan"},"urd":{"official":"اسلامی جمہوریہ پاکستان","common":"پاکستان"},"zho":{"official":"巴基斯坦伊斯兰共和国","common":"巴基斯坦"}},"latlng":[30,70],"landlocked":false,"borders":["AFG","CHN","IND","IRN"],"area":881912,"flag":"🇵🇰","demonyms":{"eng":{"f":"Pakistani","m":"Pakistani"},"fra":{"f":"Pakistanaise","m":"Pakistanais"}}},{"name":{"common":"Panama","official":"Republic of Panama","native":{"spa":{"official":"República de Panamá","common":"Panamá"}}},"tld":[".pa"],"cca2":"PA","ccn3":"591","cca3":"PAN","cioc":"PAN","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Latin American and Caribbean Group","currencies":{"PAB":{"name":"Panamanian balboa","symbol":"B/."},"USD":{"name":"United States dollar","symbol":"$"}},"idd":{"root":"+5","suffixes":["07"]},"capital":["Panama City"],"altSpellings":["PA","Republic of Panama","República de Panamá"],"region":"Americas","subregion":"Central America","languages":{"spa":"Spanish"},"translations":{"ara":{"official":"جمهورية بنما","common":"بنما"},"ces":{"official":"Panamská republika","common":"Panama"},"deu":{"official":"Republik Panama","common":"Panama"},"est":{"official":"Panama Vabariik","common":"Panama"},"fin":{"official":"Panaman tasavalta","common":"Panama"},"fra":{"official":"République du Panama","common":"Panama"},"hrv":{"official":"Republika Panama","common":"Panama"},"hun":{"official":"Panamai Köztársaság","common":"Panama"},"ita":{"official":"Repubblica di Panama","common":"Panama"},"jpn":{"official":"パナマ共和国","common":"パナマ"},"kor":{"official":"파나마 공화국","common":"파나마"},"nld":{"official":"Republiek Panama","common":"Panama"},"per":{"official":"جمهوری پاناما","common":"پاناما"},"pol":{"official":"Republika Panamy","common":"Panama"},"por":{"official":"República do Panamá","common":"Panamá"},"rus":{"official":"Республика Панама","common":"Панама"},"slk":{"official":"Panamská republika","common":"Panama"},"spa":{"official":"República de Panamá","common":"Panamá"},"srp":{"official":"Republika Panama","common":"Panama"},"swe":{"official":"Republiken Panama","common":"Panama"},"tur":{"official":"Panama Cumhuriyeti","common":"Panama"},"urd":{"official":"جمہوریہ پاناما","common":"پاناما"},"zho":{"official":"巴拿马共和国","common":"巴拿马"}},"latlng":[9,-80],"landlocked":false,"borders":["COL","CRI"],"area":75417,"flag":"🇵🇦","demonyms":{"eng":{"f":"Panamanian","m":"Panamanian"},"fra":{"f":"Panaméenne","m":"Panaméen"}}},{"name":{"common":"Pitcairn Islands","official":"Pitcairn Group of Islands","native":{"eng":{"official":"Pitcairn Group of Islands","common":"Pitcairn Islands"}}},"tld":[".pn"],"cca2":"PN","ccn3":"612","cca3":"PCN","cioc":"","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"NZD":{"name":"New Zealand dollar","symbol":"$"}},"idd":{"root":"+6","suffixes":["4"]},"capital":["Adamstown"],"altSpellings":["PN","Pitcairn","Pitcairn Henderson Ducie and Oeno Islands"],"region":"Oceania","subregion":"Polynesia","languages":{"eng":"English"},"translations":{"ara":{"official":"جزر بيتكيرن","common":"جزر بيتكيرن"},"ces":{"official":"Pitcairnovy ostrovy","common":"Pitcairnovy ostrovy"},"deu":{"official":"Pitcairninseln","common":"Pitcairninseln"},"est":{"official":"Pitcairni, Hendersoni, Ducie ja Oeno saar","common":"Pitcairn"},"fin":{"official":"Pitcairn","common":"Pitcairn"},"fra":{"official":"Groupe d'îles Pitcairn","common":"Îles Pitcairn"},"hrv":{"official":"Pitcairn skupine otoka","common":"Pitcairnovo otočje"},"hun":{"official":"Pitcairn-szigetek","common":"Pitcairn-szigetek"},"ita":{"official":"Pitcairn gruppo di isole","common":"Isole Pitcairn"},"jpn":{"official":"ピトケアン諸島","common":"ピトケアン諸島"},"kor":{"official":"핏케언 제도","common":"핏케언 제도"},"nld":{"official":"Pitcairn groep eilanden","common":"Pitcairneilanden"},"per":{"official":"جزایر پیت‌کرن","common":"جزایر پیت‌کرن"},"pol":{"official":"Wyspy Pitcairn, Henderson, Ducie i Oeno","common":"Pitcairn"},"por":{"official":"Pitcairn grupo de ilhas","common":"Ilhas Pitcairn"},"rus":{"official":"Питкэрн группа островов","common":"Острова Питкэрн"},"slk":{"official":"Pitcairnove ostrovy","common":"Pitcairnove ostrovy"},"spa":{"official":"Grupo de Islas Pitcairn","common":"Islas Pitcairn"},"srp":{"official":"Grupa Ostrva Pitkern","common":"Ostrva Pitkern"},"swe":{"official":"Pitcairnöarna","common":"Pitcairnöarna"},"tur":{"official":"Pitcairn, Henderson, Ducie ve Oeno Adaları","common":"Pitcairn Adaları"},"urd":{"official":"پٹکیرن جزائر","common":"جزائر پٹکیرن"},"zho":{"official":"皮特凯恩群岛","common":"皮特凯恩群岛"}},"latlng":[-25.06666666,-130.1],"landlocked":false,"borders":[],"area":47,"flag":"🇵🇳","demonyms":{"eng":{"f":"Pitcairn Islander","m":"Pitcairn Islander"},"fra":{"f":"Pitcairnaise","m":"Pitcairnais"}}},{"name":{"common":"Peru","official":"Republic of Peru","native":{"aym":{"official":"Piruw Suyu","common":"Piruw"},"que":{"official":"Piruw Ripuwlika","common":"Piruw"},"spa":{"official":"República del Perú","common":"Perú"}}},"tld":[".pe"],"cca2":"PE","ccn3":"604","cca3":"PER","cioc":"PER","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Latin American and Caribbean Group","currencies":{"PEN":{"name":"Peruvian sol","symbol":"S/."}},"idd":{"root":"+5","suffixes":["1"]},"capital":["Lima"],"altSpellings":["PE","Republic of Peru","República del Perú"],"region":"Americas","subregion":"South America","languages":{"aym":"Aymara","que":"Quechua","spa":"Spanish"},"translations":{"ara":{"official":"جمهورية بيرو","common":"بيرو"},"ces":{"official":"Peruánská republika","common":"Peru"},"deu":{"official":"Republik Peru","common":"Peru"},"est":{"official":"Peruu Vabariik","common":"Peruu"},"fin":{"official":"Perun tasavalta","common":"Peru"},"fra":{"official":"République du Pérou","common":"Pérou"},"hrv":{"official":"Republika Peru","common":"Peru"},"hun":{"official":"Perui Köztársaság","common":"Peru"},"ita":{"official":"Repubblica del Perù","common":"Perù"},"jpn":{"official":"ペルー共和国","common":"ペルー"},"kor":{"official":"페루 공화국","common":"페루"},"nld":{"official":"Republiek Peru","common":"Peru"},"per":{"official":"جمهوری پرو","common":"پرو"},"pol":{"official":"Republika Peru","common":"Peru"},"por":{"official":"República do Peru","common":"Perú"},"rus":{"official":"Республика Перу","common":"Перу"},"slk":{"official":"Peruánska republika","common":"Peru"},"spa":{"official":"República de Perú","common":"Perú"},"srp":{"official":"Republika Peru","common":"Peru"},"swe":{"official":"Republiken Peru","common":"Peru"},"tur":{"official":"Peru Cumhuriyeti","common":"Peru"},"urd":{"official":"جمہوریہ پیرو","common":"پیرو"},"zho":{"official":"秘鲁共和国","common":"秘鲁"}},"latlng":[-10,-76],"landlocked":false,"borders":["BOL","BRA","CHL","COL","ECU"],"area":1285216,"flag":"🇵🇪","demonyms":{"eng":{"f":"Peruvian","m":"Peruvian"},"fra":{"f":"Péruvienne","m":"Péruvien"}}},{"name":{"common":"Philippines","official":"Republic of the Philippines","native":{"eng":{"official":"Republic of the Philippines","common":"Philippines"},"fil":{"official":"Republic of the Philippines","common":"Pilipinas"}}},"tld":[".ph"],"cca2":"PH","ccn3":"608","cca3":"PHL","cioc":"PHI","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"PHP":{"name":"Philippine peso","symbol":"₱"}},"idd":{"root":"+6","suffixes":["3"]},"capital":["Manila"],"altSpellings":["PH","Republic of the Philippines","Repúblika ng Pilipinas"],"region":"Asia","subregion":"South-Eastern Asia","languages":{"eng":"English","fil":"Filipino"},"translations":{"ara":{"official":"جمهورية الفلبين","common":"الفلبين"},"ces":{"official":"Filipínská republika","common":"Filipíny"},"deu":{"official":"Republik der Philippinen","common":"Philippinen"},"est":{"official":"Filipiini Vabariik","common":"Filipiinid"},"fin":{"official":"Filippiinien tasavalta","common":"Filippiinit"},"fra":{"official":"République des Philippines","common":"Philippines"},"hrv":{"official":"Republika Filipini","common":"Filipini"},"hun":{"official":"Fülöp-szigeteki Köztársaság","common":"Fülöp-szigetek"},"ita":{"official":"Repubblica delle Filippine","common":"Filippine"},"jpn":{"official":"フィリピン共和国","common":"フィリピン"},"kor":{"official":"필리핀 공화국","common":"필리핀"},"nld":{"official":"Republiek der Filipijnen","common":"Filipijnen"},"per":{"official":"جمهوری فیلیپین","common":"فیلیپین"},"pol":{"official":"Republika Filipin","common":"Filipiny"},"por":{"official":"República das Filipinas","common":"Filipinas"},"rus":{"official":"Республика Филиппины","common":"Филиппины"},"slk":{"official":"Filipínska republika","common":"Filipíny"},"spa":{"official":"República de las Filipinas","common":"Filipinas"},"srp":{"official":"Republika Filipini","common":"Filipini"},"swe":{"official":"Republiken Filippinerna","common":"Filippinerna"},"tur":{"official":"Filipinler Cumhuriyeti","common":"Filipinler"},"urd":{"official":"جمہوریہ فلپائن","common":"فلپائن"},"zho":{"official":"菲律宾共和国","common":"菲律宾"}},"latlng":[13,122],"landlocked":false,"borders":[],"area":342353,"flag":"🇵🇭","demonyms":{"eng":{"f":"Filipino","m":"Filipino"},"fra":{"f":"Philippine","m":"Philippin"}}},{"name":{"common":"Palau","official":"Republic of Palau","native":{"eng":{"official":"Republic of Palau","common":"Palau"},"pau":{"official":"Beluu er a Belau","common":"Belau"}}},"tld":[".pw"],"cca2":"PW","ccn3":"585","cca3":"PLW","cioc":"PLW","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"USD":{"name":"United States dollar","symbol":"$"}},"idd":{"root":"+6","suffixes":["80"]},"capital":["Ngerulmud"],"altSpellings":["PW","Republic of Palau","Beluu er a Belau"],"region":"Oceania","subregion":"Micronesia","languages":{"eng":"English","pau":"Palauan"},"translations":{"ara":{"official":"جمهورية بالاو","common":"بالاو"},"ces":{"official":"Republika Palau","common":"Palau"},"deu":{"official":"Republik Palau","common":"Palau"},"est":{"official":"Belau Vabariik","common":"Belau"},"fin":{"official":"Palaun tasavalta","common":"Palau"},"fra":{"official":"République des Palaos (Palau)","common":"Palaos (Palau)"},"hrv":{"official":"Republika Palau","common":"Palau"},"hun":{"official":"Palaui Köztársaság","common":"Palau"},"ita":{"official":"Repubblica di Palau","common":"Palau"},"jpn":{"official":"パラオ共和国","common":"パラオ"},"kor":{"official":"팔라우 공화국","common":"팔라우"},"nld":{"official":"Republiek van Palau","common":"Palau"},"per":{"official":"جمهوری پالائو","common":"پالائو"},"pol":{"official":"Republika Palau","common":"Palau"},"por":{"official":"República de Palau","common":"Palau"},"rus":{"official":"Республика Палау","common":"Палау"},"slk":{"official":"Palauská republika","common":"Palau"},"spa":{"official":"República de Palau","common":"Palau"},"srp":{"official":"Republika Palau","common":"Palau"},"swe":{"official":"Republiken Palau","common":"Palau"},"tur":{"official":"Palau Cumhuriyeti","common":"Palau"},"urd":{"official":"جمہوریہ پلاؤ","common":"پلاؤ"},"zho":{"official":"帕劳共和国","common":"帕劳"}},"latlng":[7.5,134.5],"landlocked":false,"borders":[],"area":459,"flag":"🇵🇼","demonyms":{"eng":{"f":"Palauan","m":"Palauan"},"fra":{"f":"Paluane","m":"Paluan"}}},{"name":{"common":"Papua New Guinea","official":"Independent State of Papua New Guinea","native":{"eng":{"official":"Independent State of Papua New Guinea","common":"Papua New Guinea"},"hmo":{"official":"Independen Stet bilong Papua Niugini","common":"Papua Niu Gini"},"tpi":{"official":"Independen Stet bilong Papua Niugini","common":"Papua Niugini"}}},"tld":[".pg"],"cca2":"PG","ccn3":"598","cca3":"PNG","cioc":"PNG","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"PGK":{"name":"Papua New Guinean kina","symbol":"K"}},"idd":{"root":"+6","suffixes":["75"]},"capital":["Port Moresby"],"altSpellings":["PG","Independent State of Papua New Guinea","Independen Stet bilong Papua Niugini"],"region":"Oceania","subregion":"Melanesia","languages":{"eng":"English","hmo":"Hiri Motu","tpi":"Tok Pisin"},"translations":{"ara":{"official":"دولة بابوا غينيا الجديدة","common":"بابوا غينيا الجديدة"},"ces":{"official":"Nezávislý stát Papua Nová Guinea","common":"Papua-Nová Guinea"},"deu":{"official":"Unabhängiger Staat Papua-Neuguinea","common":"Papua-Neuguinea"},"est":{"official":"Paapua Uus-Guinea Iseseisvusriik","common":"Paapua Uus-Guinea"},"fin":{"official":"Papua-Uuden-Guinean Itsenäinen valtio","common":"Papua-Uusi-Guinea"},"fra":{"official":"État indépendant de Papouasie-Nouvelle-Guinée","common":"Papouasie-Nouvelle-Guinée"},"hrv":{"official":"Nezavisna Država Papui Novoj Gvineji","common":"Papua Nova Gvineja"},"hun":{"official":"Pápua Új-Guinea Független Állam","common":"Pápua Új-Guinea"},"ita":{"official":"Stato indipendente di Papua Nuova Guinea","common":"Papua Nuova Guinea"},"jpn":{"official":"パプアニューギニア独立国","common":"パプアニューギニア"},"kor":{"official":"파푸아뉴기니 독립국","common":"파푸아뉴기니"},"nld":{"official":"Onafhankelijke Staat Papoea -Nieuw-Guinea","common":"Papoea-Nieuw-Guinea"},"per":{"official":"مملکت مستقل پاپوآ گینهٔ نو","common":"پاپوآ گینه نو"},"pol":{"official":"Niezależne Państwo Papui-Nowej Gwinei","common":"Papua-Nowa Gwinea"},"por":{"official":"Estado Independente da Papua Nova Guiné","common":"Papua Nova Guiné"},"rus":{"official":"Независимое Государство Папуа-Новой Гвинеи","common":"Папуа — Новая Гвинея"},"slk":{"official":"Nezávislý štát Papua-Nová Guinea","common":"Papua-Nová Guinea"},"spa":{"official":"Estado Independiente de Papúa Nueva Guinea","common":"Papúa Nueva Guinea"},"srp":{"official":"Nezavisna Država Papua Nova Gvineja","common":"Papua Nova Gvineja"},"swe":{"official":"Den oberoende staten Papua Nya Guinea","common":"Papua Nya Guinea"},"tur":{"official":"Papua Yeni Gine Bağımsız Devleti","common":"Papua Yeni Gine"},"urd":{"official":"آزاد ریاستِ پاپوا نیو گنی","common":"پاپوا نیو گنی"},"zho":{"official":"巴布亚新几内亚","common":"巴布亚新几内亚"}},"latlng":[-6,147],"landlocked":false,"borders":["IDN"],"area":462840,"flag":"🇵🇬","demonyms":{"eng":{"f":"Papua New Guinean","m":"Papua New Guinean"},"fra":{"f":"Papouasienne","m":"Papouasien"}}},{"name":{"common":"Poland","official":"Republic of Poland","native":{"pol":{"official":"Rzeczpospolita Polska","common":"Polska"}}},"tld":[".pl"],"cca2":"PL","ccn3":"616","cca3":"POL","cioc":"POL","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Eastern European Group","currencies":{"PLN":{"name":"Polish złoty","symbol":"zł"}},"idd":{"root":"+4","suffixes":["8"]},"capital":["Warsaw"],"altSpellings":["PL","Republic of Poland","Rzeczpospolita Polska"],"region":"Europe","subregion":"Central Europe","languages":{"pol":"Polish"},"translations":{"ara":{"official":"الجمهورية البولندية","common":"بولندا"},"ces":{"official":"Polská republika","common":"Polsko"},"deu":{"official":"Republik Polen","common":"Polen"},"est":{"official":"Poola Vabariik","common":"Poola"},"fin":{"official":"Puolan tasavalta","common":"Puola"},"fra":{"official":"République de Pologne","common":"Pologne"},"hrv":{"official":"Republika Poljska","common":"Poljska"},"hun":{"official":"Lengyel Köztársaság","common":"Lengyelország"},"ita":{"official":"Repubblica di Polonia","common":"Polonia"},"jpn":{"official":"ポーランド共和国","common":"ポーランド"},"kor":{"official":"폴란드 공화국","common":"폴란드"},"nld":{"official":"Republiek Polen","common":"Polen"},"per":{"official":"جمهوری لهستان","common":"لهستان"},"pol":{"official":"Rzeczpospolita Polska","common":"Polska"},"por":{"official":"República da Polónia","common":"Polónia"},"rus":{"official":"Республика Польша","common":"Польша"},"slk":{"official":"Poľská republika","common":"Poľsko"},"spa":{"official":"República de Polonia","common":"Polonia"},"srp":{"official":"Republika Poljska","common":"Poljska"},"swe":{"official":"Republiken Polen","common":"Polen"},"tur":{"official":"Polonya Cumhuriyeti","common":"Polonya"},"urd":{"official":"جمہوریہ پولینڈ","common":"پولینڈ"},"zho":{"official":"波兰共和国","common":"波兰"}},"latlng":[52,20],"landlocked":false,"borders":["BLR","CZE","DEU","LTU","RUS","SVK","UKR"],"area":312679,"flag":"🇵🇱","demonyms":{"eng":{"f":"Polish","m":"Polish"},"fra":{"f":"Polonaise","m":"Polonais"}}},{"name":{"common":"Puerto Rico","official":"Commonwealth of Puerto Rico","native":{"eng":{"official":"Commonwealth of Puerto Rico","common":"Puerto Rico"},"spa":{"official":"Estado Libre Asociado de Puerto Rico","common":"Puerto Rico"}}},"tld":[".pr"],"cca2":"PR","ccn3":"630","cca3":"PRI","cioc":"PUR","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"USD":{"name":"United States dollar","symbol":"$"}},"idd":{"root":"+1","suffixes":["787","939"]},"capital":["San Juan"],"altSpellings":["PR","Commonwealth of Puerto Rico","Estado Libre Asociado de Puerto Rico"],"region":"Americas","subregion":"Caribbean","languages":{"eng":"English","spa":"Spanish"},"translations":{"ara":{"official":"كومنولث بويرتوريكو","common":"بويرتوريكو"},"ces":{"official":"Portoriko","common":"Portoriko"},"deu":{"official":"Freistaat Puerto Rico","common":"Puerto Rico"},"est":{"official":"Puerto Rico Ühendus","common":"Puerto Rico"},"fin":{"official":"Puerto Rico","common":"Puerto Rico"},"fra":{"official":"Porto Rico","common":"Porto Rico"},"hrv":{"official":"Zajednica Puerto Rico","common":"Portoriko"},"hun":{"official":"Puerto Rico","common":"Puerto Rico"},"ita":{"official":"Commonwealth di Porto Rico","common":"Porto Rico"},"jpn":{"official":"プエルトリコ","common":"プエルトリコ"},"kor":{"official":"푸에르토리코","common":"푸에르토리코"},"nld":{"official":"Gemenebest van Puerto Rico","common":"Puerto Rico"},"per":{"official":"قلمرو همسود پورتوریکو","common":"پورتوریکو"},"pol":{"official":"Wolne Stowarzyszone Państwo Portoryko","common":"Portoryko"},"por":{"official":"Commonwealth of Puerto Rico","common":"Porto Rico"},"rus":{"official":"Содружество Пуэрто-Рико","common":"Пуэрто-Рико"},"slk":{"official":"Portorické spoločenstvo","common":"Portoriko"},"spa":{"official":"Asociado de Puerto Rico","common":"Puerto Rico"},"srp":{"official":"Komonvelt Portoriko","common":"Portoriko"},"swe":{"official":"Puerto Rico","common":"Puerto Rico"},"tur":{"official":"Porto Riko Topluluğu","common":"Porto Riko"},"urd":{"official":" دولتِ مشترکہ پورٹو ریکو","common":"پورٹو ریکو"},"zho":{"official":"波多黎各联邦","common":"波多黎各"}},"latlng":[18.25,-66.5],"landlocked":false,"borders":[],"area":8870,"flag":"🇵🇷","demonyms":{"eng":{"f":"Puerto Rican","m":"Puerto Rican"},"fra":{"f":"Portoricaine","m":"Portoricain"}}},{"name":{"common":"North Korea","official":"Democratic People's Republic of Korea","native":{"kor":{"official":"조선민주주의인민공화국","common":"조선"}}},"tld":[".kp"],"cca2":"KP","ccn3":"408","cca3":"PRK","cioc":"PRK","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"KPW":{"name":"North Korean won","symbol":"₩"}},"idd":{"root":"+8","suffixes":["50"]},"capital":["Pyongyang"],"altSpellings":["KP","Democratic People's Republic of Korea","DPRK","조선민주주의인민공화국","Chosŏn Minjujuŭi Inmin Konghwaguk","Korea, Democratic People's Republic of","북한","북조선"],"region":"Asia","subregion":"Eastern Asia","languages":{"kor":"Korean"},"translations":{"ara":{"official":"جمهورية كوريا الديمقراطية الشعبية","common":"كوريا الشمالية"},"ces":{"official":"Korejská lidově demokratická republika","common":"Severní Korea"},"deu":{"official":"Demokratische Volksrepublik Korea","common":"Nordkorea"},"est":{"official":"Korea Rahvademokraatlik Vabariik","common":"Põhja-Korea"},"fin":{"official":"Korean demokraattinen kansantasavalta","common":"Pohjois-Korea"},"fra":{"official":"République populaire démocratique de Corée","common":"Corée du Nord"},"hrv":{"official":"Demokratska Narodna Republika Koreja","common":"Sjeverna Koreja"},"hun":{"official":"Koreai Népi Demokratikus Köztársaság","common":"Észak-Korea"},"ita":{"official":"Repubblica democratica popolare di Corea","common":"Corea del Nord"},"jpn":{"official":"北朝鮮","common":"北朝鮮"},"kor":{"official":"조선민주주의인민공화국","common":"조선"},"nld":{"official":"Democratische Volksrepubliek Korea","common":"Noord-Korea"},"per":{"official":"جمهوری دموکراتیک خلق کره","common":"کُره شمالی"},"pol":{"official":"Koreańska Republika Ludowo-Demokratyczna","common":"Korea Północna"},"por":{"official":"República Popular Democrática da Coreia","common":"Coreia do Norte"},"rus":{"official":"Корейская Народно-Демократическая Республика Корея","common":"Северная Корея"},"slk":{"official":"Kórejská ľudovodemokratická republika","common":"Kórejská ľudovodemokratická republika (KĽR, Severná Kórea)"},"spa":{"official":"República Popular Democrática de Corea","common":"Corea del Norte"},"srp":{"official":"Demokratska Narodna Republika Koreja","common":"Severna Koreja"},"swe":{"official":"Demokratiska Folkrepubliken Korea","common":"Nordkorea"},"tur":{"official":"Kore Demokratik Halk Cumhuriyeti","common":"Kuzey Kore"},"urd":{"official":"جمہوری عوامی جمہوریہ کوریا","common":"شمالی کوریا"},"zho":{"official":"朝鲜人民民主共和国","common":"朝鲜"}},"latlng":[40,127],"landlocked":false,"borders":["CHN","KOR","RUS"],"area":120538,"flag":"🇰🇵","demonyms":{"eng":{"f":"North Korean","m":"North Korean"},"fra":{"f":"Nord-coréenne","m":"Nord-coréen"}}},{"name":{"common":"Portugal","official":"Portuguese Republic","native":{"por":{"official":"República português","common":"Portugal"}}},"tld":[".pt"],"cca2":"PT","ccn3":"620","cca3":"PRT","cioc":"POR","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Western European and Others Group","currencies":{"EUR":{"name":"Euro","symbol":"€"}},"idd":{"root":"+3","suffixes":["51"]},"capital":["Lisbon"],"altSpellings":["PT","Portuguesa","Portuguese Republic","República Portuguesa"],"region":"Europe","subregion":"Southern Europe","languages":{"por":"Portuguese"},"translations":{"ara":{"official":"الجمهورية البرتغالية","common":"البرتغال"},"ces":{"official":"Portugalská republika","common":"Portugalsko"},"deu":{"official":"Portugiesische Republik","common":"Portugal"},"est":{"official":"Portugali Vabariik","common":"Portugal"},"fin":{"official":"Portugalin tasavalta","common":"Portugali"},"fra":{"official":"République portugaise","common":"Portugal"},"hrv":{"official":"Portugalska Republika","common":"Portugal"},"hun":{"official":"Portugál Köztársaság","common":"Portugália"},"ita":{"official":"Repubblica portoghese","common":"Portogallo"},"jpn":{"official":"ポルトガル共和国","common":"ポルトガル"},"kor":{"official":"포르투갈 공화국","common":"포르투갈"},"nld":{"official":"Portugese Republiek","common":"Portugal"},"per":{"official":"جمهوری پرتغال","common":"پرتغال"},"pol":{"official":"Republika Portugalska","common":"Portugalia"},"por":{"official":"República português","common":"Portugal"},"rus":{"official":"Португальская Республика","common":"Португалия"},"slk":{"official":"Portugalská republika","common":"Portugalsko"},"spa":{"official":"República Portuguesa","common":"Portugal"},"srp":{"official":"Republika Portugal","common":"Portugal"},"swe":{"official":"Republiken Portugal","common":"Portugal"},"tur":{"official":"Portekiz Cumhuriyeti","common":"Portekiz"},"urd":{"official":"جمہوریہ پرتگال","common":"پرتگال"},"zho":{"official":"葡萄牙共和国","common":"葡萄牙"}},"latlng":[39.5,-8],"landlocked":false,"borders":["ESP"],"area":92090,"flag":"🇵🇹","demonyms":{"eng":{"f":"Portuguese","m":"Portuguese"},"fra":{"f":"Portugaise","m":"Portugais"}}},{"name":{"common":"Paraguay","official":"Republic of Paraguay","native":{"grn":{"official":"Tetã Paraguái","common":"Paraguái"},"spa":{"official":"República de Paraguay","common":"Paraguay"}}},"tld":[".py"],"cca2":"PY","ccn3":"600","cca3":"PRY","cioc":"PAR","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Latin American and Caribbean Group","currencies":{"PYG":{"name":"Paraguayan guaraní","symbol":"₲"}},"idd":{"root":"+5","suffixes":["95"]},"capital":["Asunción"],"altSpellings":["PY","Republic of Paraguay","República del Paraguay","Tetã Paraguái"],"region":"Americas","subregion":"South America","languages":{"grn":"Guaraní","spa":"Spanish"},"translations":{"ara":{"official":"جمهورية باراغواي","common":"باراغواي"},"ces":{"official":"Paraguayská republika","common":"Paraguay"},"deu":{"official":"Republik Paraguay","common":"Paraguay"},"est":{"official":"Paraguay Vabariik","common":"Paraguay"},"fin":{"official":"Paraguayn tasavalta","common":"Paraguay"},"fra":{"official":"République du Paraguay","common":"Paraguay"},"hrv":{"official":"Republika Paragvaj","common":"Paragvaj"},"hun":{"official":"Paraguayi Köztársaság","common":"Paraguay"},"ita":{"official":"Repubblica del Paraguay","common":"Paraguay"},"jpn":{"official":"パラグアイ共和国","common":"パラグアイ"},"kor":{"official":"파라과이 공화국","common":"파라과이"},"nld":{"official":"Republiek Paraguay","common":"Paraguay"},"per":{"official":"جمهوری پاراگوئه","common":"پاراگوئه"},"pol":{"official":"Republika Paragwaju","common":"Paragwaj"},"por":{"official":"República do Paraguai","common":"Paraguai"},"rus":{"official":"Республика Парагвай","common":"Парагвай"},"slk":{"official":"Paraguajská republika","common":"Paraguaj"},"spa":{"official":"República de Paraguay","common":"Paraguay"},"srp":{"official":"Republika Paragvaj","common":"Paragvaj"},"swe":{"official":"Republiken Paraguay","common":"Paraguay"},"tur":{"official":"Paraguay Cumhuriyeti","common":"Paraguay"},"urd":{"official":"جمہوریہ پیراگوئے","common":"پیراگوئے"},"zho":{"official":"巴拉圭共和国","common":"巴拉圭"}},"latlng":[-23,-58],"landlocked":true,"borders":["ARG","BOL","BRA"],"area":406752,"flag":"🇵🇾","demonyms":{"eng":{"f":"Paraguayan","m":"Paraguayan"},"fra":{"f":"Paraguayenne","m":"Paraguayen"}}},{"name":{"common":"Palestine","official":"State of Palestine","native":{"ara":{"official":"دولة فلسطين","common":"فلسطين"}}},"tld":[".ps","فلسطين."],"cca2":"PS","ccn3":"275","cca3":"PSE","cioc":"PLE","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"EGP":{"name":"Egyptian pound","symbol":"E£"},"ILS":{"name":"Israeli new shekel","symbol":"₪"},"JOD":{"name":"Jordanian dinar","symbol":"JD"}},"idd":{"root":"+9","suffixes":["70"]},"capital":["Ramallah"],"altSpellings":["PS","Palestine, State of","State of Palestine","Dawlat Filasṭin"],"region":"Asia","subregion":"Western Asia","languages":{"ara":"Arabic"},"translations":{"ara":{"official":"دولة فلسطين","common":"فلسطين"},"ces":{"official":"Stát Palestina","common":"Palestina"},"deu":{"official":"Staat Palästina","common":"Palästina"},"est":{"official":"Palestiina Riik","common":"Palestiina"},"fin":{"official":"Palestiinan valtio","common":"Palestiina"},"fra":{"official":"État de Palestine","common":"Palestine"},"hrv":{"official":"State of Palestine","common":"Palestina"},"hun":{"official":"Palesztin Autonómia","common":"Palesztina"},"ita":{"official":"Stato di Palestina","common":"Palestina"},"jpn":{"official":"パレスチナ","common":"パレスチナ"},"kor":{"official":"팔레스타인국","common":"팔레스타인"},"nld":{"official":"Staat Palestina","common":"Palestijnse gebieden"},"per":{"official":"دولت فلسطین","common":"فلسطین"},"pol":{"official":"Państwo Palestyna","common":"Palestyna"},"por":{"official":"Estado da Palestina","common":"Palestina"},"rus":{"official":"Государство Палестина","common":"Палестина"},"slk":{"official":"Palestínsky štát","common":"Palestína"},"spa":{"official":"Estado de Palestina","common":"Palestina"},"srp":{"official":"Država Palestina","common":"Palestina"},"swe":{"official":"Palestina","common":"Palestina"},"tur":{"official":"Filistin Devleti","common":"Filistin"},"urd":{"official":"ریاستِ فلسطین","common":"فلسطین"},"zho":{"official":"巴勒斯坦国","common":"巴勒斯坦"}},"latlng":[31.9,35.2],"landlocked":false,"borders":["ISR","EGY","JOR"],"area":6220,"flag":"🇵🇸","demonyms":{"eng":{"f":"Palestinian","m":"Palestinian"},"fra":{"f":"Palestinienne","m":"Palestinien"}}},{"name":{"common":"French Polynesia","official":"French Polynesia","native":{"fra":{"official":"Polynésie française","common":"Polynésie française"}}},"tld":[".pf"],"cca2":"PF","ccn3":"258","cca3":"PYF","cioc":"","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"XPF":{"name":"CFP franc","symbol":"₣"}},"idd":{"root":"+6","suffixes":["89"]},"capital":["Papeetē"],"altSpellings":["PF","Polynésie française","French Polynesia","Pōrīnetia Farāni"],"region":"Oceania","subregion":"Polynesia","languages":{"fra":"French"},"translations":{"ara":{"official":"بولينزيا الفرنسية","common":"بولينزيا الفرنسية"},"ces":{"official":"Francouzská Polynésie","common":"Francouzská Polynésie"},"deu":{"official":"Französisch-Polynesien","common":"Französisch-Polynesien"},"est":{"official":"Prantsuse Polüneesia","common":"Prantsuse Polüneesia"},"fin":{"official":"Ranskan Polynesia","common":"Ranskan Polynesia"},"fra":{"official":"Polynésie française","common":"Polynésie française"},"hrv":{"official":"Francuska Polinezija","common":"Francuska Polinezija"},"hun":{"official":"Francia Polinézia","common":"Francia Polinézia"},"ita":{"official":"Polinesia Francese","common":"Polinesia Francese"},"jpn":{"official":"フランス領ポリネシア","common":"フランス領ポリネシア"},"kor":{"official":"프랑스령 폴리네시아","common":"프랑스령 폴리네시아"},"nld":{"official":"Frans-Polynesië","common":"Frans-Polynesië"},"per":{"official":"پُلی‌نِزی فرانسه","common":"پُلی‌نِزی فرانسه"},"pol":{"official":"Polinezja Francuska","common":"Polinezja Francuska"},"por":{"official":"Polinésia Francesa","common":"Polinésia Francesa"},"rus":{"official":"Французская Полинезия","common":"Французская Полинезия"},"slk":{"official":"Francúzska Polynézia","common":"Francúzska Polynézia"},"spa":{"official":"Polinesia francés","common":"Polinesia Francesa"},"srp":{"official":"Francuska Polinezija","common":"Francuska Polinezija"},"swe":{"official":"Franska Polynesien","common":"Franska Polynesien"},"tur":{"official":"Fransız Polinezyası","common":"Fransız Polinezyası"},"urd":{"official":"فرانسیسی پولینیشیا","common":"فرانسیسی پولینیشیا"},"zho":{"official":"法属波利尼西亚","common":"法属波利尼西亚"}},"latlng":[-15,-140],"landlocked":false,"borders":[],"area":4167,"flag":"🇵🇫","demonyms":{"eng":{"f":"French Polynesian","m":"French Polynesian"},"fra":{"f":"Polynésienne","m":"Polynésien"}}},{"name":{"common":"Qatar","official":"State of Qatar","native":{"ara":{"official":"دولة قطر","common":"قطر"}}},"tld":[".qa","قطر."],"cca2":"QA","ccn3":"634","cca3":"QAT","cioc":"QAT","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"QAR":{"name":"Qatari riyal","symbol":"ر.ق"}},"idd":{"root":"+9","suffixes":["74"]},"capital":["Doha"],"altSpellings":["QA","State of Qatar","Dawlat Qaṭar"],"region":"Asia","subregion":"Western Asia","languages":{"ara":"Arabic"},"translations":{"ara":{"official":"دولة قطر","common":"قطر"},"ces":{"official":"Stát Katar","common":"Katar"},"deu":{"official":"Staat Katar","common":"Katar"},"est":{"official":"Katari Riik","common":"Katar"},"fin":{"official":"Qatarin valtio","common":"Qatar"},"fra":{"official":"État du Qatar","common":"Qatar"},"hrv":{"official":"Država Katar","common":"Katar"},"hun":{"official":"Katari Állam","common":"Katar"},"ita":{"official":"Stato del Qatar","common":"Qatar"},"jpn":{"official":"カタール国","common":"カタール"},"kor":{"official":"카타르국","common":"카타르"},"nld":{"official":"Staat Qatar","common":"Qatar"},"per":{"official":"دولت قطر","common":"قطر"},"pol":{"official":"Państwo Katar","common":"Katar"},"por":{"official":"Estado do Qatar","common":"Catar"},"rus":{"official":"Государство Катар","common":"Катар"},"slk":{"official":"Katarský štát","common":"Katar"},"spa":{"official":"Estado de Qatar","common":"Catar"},"srp":{"official":"Država Katar","common":"Katar"},"swe":{"official":"Staten Qatar","common":"Qatar"},"tur":{"official":"Katar Devleti","common":"Katar"},"urd":{"official":"ریاستِ قطر","common":"قطر"},"zho":{"official":"卡塔尔国","common":"卡塔尔"}},"latlng":[25.5,51.25],"landlocked":false,"borders":["SAU"],"area":11586,"flag":"🇶🇦","demonyms":{"eng":{"f":"Qatari","m":"Qatari"},"fra":{"f":"Qatarienne","m":"Qatarien"}}},{"name":{"common":"Réunion","official":"Réunion Island","native":{"fra":{"official":"Ile de la Réunion","common":"La Réunion"}}},"tld":[".re"],"cca2":"RE","ccn3":"638","cca3":"REU","cioc":"","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"EUR":{"name":"Euro","symbol":"€"}},"idd":{"root":"+2","suffixes":["62"]},"capital":["Saint-Denis"],"altSpellings":["RE","Reunion"],"region":"Africa","subregion":"Eastern Africa","languages":{"fra":"French"},"translations":{"ara":{"official":"جزيرة لا ريونيون","common":"لا ريونيون"},"ces":{"official":"Réunion","common":"Réunion"},"deu":{"official":"Réunion","common":"Réunion"},"est":{"official":"Réunioni departemang","common":"Réunion"},"fin":{"official":"Réunion","common":"Réunion"},"fra":{"official":"Ile de la Réunion","common":"Réunion"},"hrv":{"official":"Réunion Island","common":"Réunion"},"hun":{"official":"Réunion","common":"Réunion"},"ita":{"official":"Réunion","common":"Riunione"},"jpn":{"official":"レユニオン","common":"レユニオン"},"kor":{"official":"레위니옹","common":"레위니옹"},"nld":{"official":"Réunion","common":"Réunion"},"per":{"official":"رئونیون","common":"رئونیون"},"pol":{"official":"Reunion","common":"Reunion"},"por":{"official":"Ilha da Reunião","common":"Reunião"},"rus":{"official":"Реюньон","common":"Реюньон"},"slk":{"official":"Réunionský zámorský departmán","common":"Réunion"},"spa":{"official":"Isla de la Reunión","common":"Reunión"},"srp":{"official":"Departman Reinion","common":"Reinion"},"swe":{"official":"Réunion","common":"Réunion"},"tur":{"official":"Réunion","common":"Réunion"},"urd":{"official":"رے یونیوں جزیرہ","common":"رے یونیوں"},"zho":{"official":"留尼旺岛","common":"留尼旺岛"}},"latlng":[-21.15,55.5],"landlocked":false,"borders":[],"area":2511,"flag":"🇷🇪","demonyms":{"eng":{"f":"Réunionese","m":"Réunionese"},"fra":{"f":"Réunionnaise","m":"Réunionnais"}}},{"name":{"common":"Romania","official":"Romania","native":{"ron":{"official":"România","common":"România"}}},"tld":[".ro"],"cca2":"RO","ccn3":"642","cca3":"ROU","cioc":"ROU","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Eastern European Group","currencies":{"RON":{"name":"Romanian leu","symbol":"lei"}},"idd":{"root":"+4","suffixes":["0"]},"capital":["Bucharest"],"altSpellings":["RO","Rumania","Roumania","România"],"region":"Europe","subregion":"Southeast Europe","languages":{"ron":"Romanian"},"translations":{"ara":{"official":"رومانيا","common":"رومانيا"},"ces":{"official":"Rumunsko","common":"Rumunsko"},"deu":{"official":"Rumänien","common":"Rumänien"},"est":{"official":"Rumeenia","common":"Rumeenia"},"fin":{"official":"Romania","common":"Romania"},"fra":{"official":"Roumanie","common":"Roumanie"},"hrv":{"official":"Rumunija","common":"Rumunjska"},"hun":{"official":"Románia","common":"Románia"},"ita":{"official":"Romania","common":"Romania"},"jpn":{"official":"ルーマニア","common":"ルーマニア"},"kor":{"official":"루마니아","common":"루마니아"},"nld":{"official":"Roemenië","common":"Roemenië"},"per":{"official":"رومانی","common":"رومانی"},"pol":{"official":"Rumunia","common":"Rumunia"},"por":{"official":"Romênia","common":"Roménia"},"rus":{"official":"Румыния","common":"Румыния"},"slk":{"official":"Rumunsko","common":"Rumunsko"},"spa":{"official":"Rumania","common":"Rumania"},"srp":{"official":"Rumunija","common":"Rumunija"},"swe":{"official":"Rumänien","common":"Rumänien"},"tur":{"official":"Romanya","common":"Romanya"},"urd":{"official":"رومانیہ","common":"رومانیہ"},"zho":{"official":"罗马尼亚","common":"罗马尼亚"}},"latlng":[46,25],"landlocked":false,"borders":["BGR","HUN","MDA","SRB","UKR"],"area":238391,"flag":"🇷🇴","demonyms":{"eng":{"f":"Romanian","m":"Romanian"},"fra":{"f":"Roumaine","m":"Roumain"}}},{"name":{"common":"Russia","official":"Russian Federation","native":{"rus":{"official":"Российская Федерация","common":"Россия"}}},"tld":[".ru",".su",".рф"],"cca2":"RU","ccn3":"643","cca3":"RUS","cioc":"RUS","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Eastern European Group","currencies":{"RUB":{"name":"Russian ruble","symbol":"₽"}},"idd":{"root":"+7","suffixes":["3","4","5","8","9"]},"capital":["Moscow"],"altSpellings":["RU","Russian Federation","Российская Федерация"],"region":"Europe","subregion":"Eastern Europe","languages":{"rus":"Russian"},"translations":{"ara":{"official":"روسيا الاتحادية","common":"روسيا"},"ces":{"official":"Ruská federace","common":"Rusko"},"deu":{"official":"Russische Föderation","common":"Russland"},"est":{"official":"Venemaa Föderatsioon","common":"Venemaa"},"fin":{"official":"Venäjän federaatio","common":"Venäjä"},"fra":{"official":"Fédération de Russie","common":"Russie"},"hrv":{"official":"Ruska Federacija","common":"Rusija"},"hun":{"official":"Oroszországi Föderáció","common":"Oroszország"},"ita":{"official":"Federazione russa","common":"Russia"},"jpn":{"official":"ロシア連邦","common":"ロシア"},"kor":{"official":"러시아 연방","common":"러시아"},"nld":{"official":"Russische Federatie","common":"Rusland"},"per":{"official":"فدراسیون روسیه","common":"روسیه"},"pol":{"official":"Federacja Rosyjska","common":"Rosja"},"por":{"official":"Federação Russa","common":"Rússia"},"rus":{"official":"Российская Федерация","common":"Россия"},"slk":{"official":"Ruská federácia","common":"Rusko"},"spa":{"official":"Federación de Rusia","common":"Rusia"},"srp":{"official":"Ruska Federacija","common":"Rusija"},"swe":{"official":"Ryska federationen","common":"Ryssland"},"tur":{"official":"Rusya Federasyonu","common":"Rusya"},"urd":{"official":"روسی وفاق","common":"روس"},"zho":{"official":"俄罗斯联邦","common":"俄罗斯"}},"latlng":[60,100],"landlocked":false,"borders":["AZE","BLR","CHN","EST","FIN","GEO","KAZ","PRK","LVA","LTU","MNG","NOR","POL","UKR"],"area":17098242,"flag":"🇷🇺","demonyms":{"eng":{"f":"Russian","m":"Russian"},"fra":{"f":"Russe","m":"Russe"}}},{"name":{"common":"Rwanda","official":"Republic of Rwanda","native":{"eng":{"official":"Republic of Rwanda","common":"Rwanda"},"fra":{"official":"République rwandaise","common":"Rwanda"},"kin":{"official":"Repubulika y'u Rwanda","common":"Rwanda"}}},"tld":[".rw"],"cca2":"RW","ccn3":"646","cca3":"RWA","cioc":"RWA","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"RWF":{"name":"Rwandan franc","symbol":"Fr"}},"idd":{"root":"+2","suffixes":["50"]},"capital":["Kigali"],"altSpellings":["RW","Republic of Rwanda","Repubulika y'u Rwanda","République du Rwanda"],"region":"Africa","subregion":"Eastern Africa","languages":{"eng":"English","fra":"French","kin":"Kinyarwanda"},"translations":{"ara":{"official":"جمهورية رواندا","common":"رواندا"},"ces":{"official":"Rwandská republika","common":"Rwanda"},"deu":{"official":"Republik Ruanda","common":"Ruanda"},"est":{"official":"Rwanda Vabariik","common":"Rwanda"},"fin":{"official":"Ruandan tasavalta","common":"Ruanda"},"fra":{"official":"République rwandaise","common":"Rwanda"},"hrv":{"official":"Republika Ruandi","common":"Ruanda"},"hun":{"official":"Ruandai Köztársaság","common":"Ruanda"},"ita":{"official":"Repubblica del Ruanda","common":"Ruanda"},"jpn":{"official":"ルワンダ共和国","common":"ルワンダ"},"kor":{"official":"르완다 공화국","common":"르완다"},"nld":{"official":"Republiek Rwanda","common":"Rwanda"},"per":{"official":"جمهوری رواندا","common":"رواندا"},"pol":{"official":"Republika Rwandy","common":"Rwanda"},"por":{"official":"República do Ruanda","common":"Ruanda"},"rus":{"official":"Республика Руанда","common":"Руанда"},"slk":{"official":"Rwandská republika","common":"Rwanda"},"spa":{"official":"República de Rwanda","common":"Ruanda"},"srp":{"official":"Republika Ruanda","common":"Ruanda"},"swe":{"official":"Republiken Rwanda","common":"Rwanda"},"tur":{"official":"Ruanda Cumhuriyeti","common":"Ruanda"},"urd":{"official":"جمہوریہ روانڈا","common":"روانڈا"},"zho":{"official":"卢旺达共和国","common":"卢旺达"}},"latlng":[-2,30],"landlocked":true,"borders":["BDI","COD","TZA","UGA"],"area":26338,"flag":"🇷🇼","demonyms":{"eng":{"f":"Rwandan","m":"Rwandan"},"fra":{"f":"Rwandaise","m":"Rwandais"}}},{"name":{"common":"Saudi Arabia","official":"Kingdom of Saudi Arabia","native":{"ara":{"official":"المملكة العربية السعودية","common":"السعودية"}}},"tld":[".sa",".السعودية"],"cca2":"SA","ccn3":"682","cca3":"SAU","cioc":"KSA","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"SAR":{"name":"Saudi riyal","symbol":"ر.س"}},"idd":{"root":"+9","suffixes":["66"]},"capital":["Riyadh"],"altSpellings":["Saudi","SA","Kingdom of Saudi Arabia","Al-Mamlakah al-‘Arabiyyah as-Su‘ūdiyyah"],"region":"Asia","subregion":"Western Asia","languages":{"ara":"Arabic"},"translations":{"ara":{"official":"المملكة العربية السعودية","common":"السعودية"},"ces":{"official":"Saúdskoarabské království","common":"Saúdská Arábie"},"deu":{"official":"Königreich Saudi-Arabien","common":"Saudi-Arabien"},"est":{"official":"Saudi Araabia Kuningriik","common":"Saudi Araabia"},"fin":{"official":"Saudi-Arabian kuningaskunta","common":"Saudi-Arabia"},"fra":{"official":"Royaume d'Arabie Saoudite","common":"Arabie Saoudite"},"hrv":{"official":"Kraljevina Saudijska Arabija","common":"Saudijska Arabija"},"hun":{"official":"Szaúd-Arábia","common":"Szaúd-Arábia"},"ita":{"official":"Arabia Saudita","common":"Arabia Saudita"},"jpn":{"official":"サウジアラビア王国","common":"サウジアラビア"},"kor":{"official":"사우디아라비아 왕국","common":"사우디아라비아"},"nld":{"official":"Koninkrijk van Saoedi-Arabië","common":"Saoedi-Arabië"},"per":{"official":"پادشاهی عربی سَعودی","common":"عربستان سعودی"},"pol":{"official":"Królestwo Arabii Saudyjskiej","common":"Arabia Saudyjska"},"por":{"official":"Reino da Arábia Saudita","common":"Arábia Saudita"},"rus":{"official":"Королевство Саудовская Аравия","common":"Саудовская Аравия"},"slk":{"official":"Saudskoarabské kráľovstvo","common":"Saudská Arábia"},"spa":{"official":"Reino de Arabia Saudita","common":"Arabia Saudí"},"srp":{"official":"Kraljevina Saudijska Arabija","common":"Saudijska Arabija"},"swe":{"official":"Kungadömet Saudiarabien","common":"Saudiarabien"},"tur":{"official":"Suudi Arabistan Krallığı","common":"Suudi Arabistan"},"urd":{"official":"مملکتِ سعودی عرب","common":"سعودی عرب"},"zho":{"official":"沙特阿拉伯王国","common":"沙特阿拉伯"}},"latlng":[25,45],"landlocked":false,"borders":["IRQ","JOR","KWT","OMN","QAT","ARE","YEM"],"area":2149690,"flag":"🇸🇦","demonyms":{"eng":{"f":"Saudi Arabian","m":"Saudi Arabian"},"fra":{"f":"Saoudienne","m":"Saoudien"}}},{"name":{"common":"Sudan","official":"Republic of the Sudan","native":{"ara":{"official":"جمهورية السودان","common":"السودان"},"eng":{"official":"Republic of the Sudan","common":"Sudan"}}},"tld":[".sd"],"cca2":"SD","ccn3":"729","cca3":"SDN","cioc":"SUD","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"SDG":{"name":"Sudanese pound","symbol":"PT"}},"idd":{"root":"+2","suffixes":["49"]},"capital":["Khartoum"],"altSpellings":["SD","Republic of the Sudan","Jumhūrīyat as-Sūdān"],"region":"Africa","subregion":"Northern Africa","languages":{"ara":"Arabic","eng":"English"},"translations":{"ara":{"official":"جمهورية السودان","common":"السودان"},"ces":{"official":"Súdánská republika","common":"Súdán"},"deu":{"official":"Republik Sudan","common":"Sudan"},"est":{"official":"Sudaani Vabariik","common":"Sudaan"},"fin":{"official":"Sudanin tasavalta","common":"Sudan"},"fra":{"official":"République du Soudan","common":"Soudan"},"hrv":{"official":"Republika Sudan","common":"Sudan"},"hun":{"official":"Szudáni Köztársaság","common":"Szudán"},"ita":{"official":"Repubblica del Sudan","common":"Sudan"},"jpn":{"official":"スーダン共和国","common":"スーダン"},"kor":{"official":"수단 공화국","common":"수단"},"nld":{"official":"Republiek Soedan","common":"Soedan"},"per":{"official":"جمهوری سودان","common":"سودان"},"pol":{"official":"Republika Sudanu","common":"Sudan"},"por":{"official":"República do Sudão","common":"Sudão"},"rus":{"official":"Республика Судан","common":"Судан"},"slk":{"official":"Sudánska republika","common":"Sudán"},"spa":{"official":"República de Sudán","common":"Sudán"},"srp":{"official":"Republika Sudan","common":"Sudan"},"swe":{"official":"Republiken Sudan","common":"Sudan"},"tur":{"official":"Sudan Cumhuriyeti","common":"Sudan"},"urd":{"official":"جمہوریہ سودان","common":"سودان"},"zho":{"official":"苏丹共和国","common":"苏丹"}},"latlng":[15,30],"landlocked":false,"borders":["CAF","TCD","EGY","ERI","ETH","LBY","SSD"],"area":1886068,"flag":"🇸🇩","demonyms":{"eng":{"f":"Sudanese","m":"Sudanese"},"fra":{"f":"Soudanaise","m":"Soudanais"}}},{"name":{"common":"Senegal","official":"Republic of Senegal","native":{"fra":{"official":"République du Sénégal","common":"Sénégal"}}},"tld":[".sn"],"cca2":"SN","ccn3":"686","cca3":"SEN","cioc":"SEN","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"XOF":{"name":"West African CFA franc","symbol":"Fr"}},"idd":{"root":"+2","suffixes":["21"]},"capital":["Dakar"],"altSpellings":["SN","Republic of Senegal","République du Sénégal"],"region":"Africa","subregion":"Western Africa","languages":{"fra":"French"},"translations":{"ara":{"official":"جمهورية السنغال","common":"السنغال"},"ces":{"official":"Senegalská republika","common":"Senegal"},"deu":{"official":"Republik Senegal","common":"Senegal"},"est":{"official":"Senegali Vabariik","common":"Senegal"},"fin":{"official":"Senegalin tasavalta","common":"Senegal"},"fra":{"official":"République du Sénégal","common":"Sénégal"},"hrv":{"official":"Republika Senegal","common":"Senegal"},"hun":{"official":"Szenegáli Köztársaság","common":"Szenegál"},"ita":{"official":"Repubblica del Senegal","common":"Senegal"},"jpn":{"official":"セネガル共和国","common":"セネガル"},"kor":{"official":"세네갈 공화국","common":"세네갈"},"nld":{"official":"Republiek Senegal","common":"Senegal"},"per":{"official":"جمهوری سنگال","common":"سنگال"},"pol":{"official":"Senegal","common":"Senegal"},"por":{"official":"República do Senegal","common":"Senegal"},"rus":{"official":"Республика Сенегал","common":"Сенегал"},"slk":{"official":"Senegalská republika","common":"Senegal"},"spa":{"official":"República de Senegal","common":"Senegal"},"srp":{"official":"Republika Senegal","common":"Senegal"},"swe":{"official":"Republiken Senegal","common":"Senegal"},"tur":{"official":"Senegal Cumhuriyeti","common":"Senegal"},"urd":{"official":"جمہوریہ سینیگال","common":"سینیگال"},"zho":{"official":"塞内加尔共和国","common":"塞内加尔"}},"latlng":[14,-14],"landlocked":false,"borders":["GMB","GIN","GNB","MLI","MRT"],"area":196722,"flag":"🇸🇳","demonyms":{"eng":{"f":"Senegalese","m":"Senegalese"},"fra":{"f":"Sénégalaise","m":"Sénégalais"}}},{"name":{"common":"Singapore","official":"Republic of Singapore","native":{"eng":{"official":"Republic of Singapore","common":"Singapore"},"msa":{"official":"Republik Singapura","common":"Singapura"},"tam":{"official":"சிங்கப்பூர் குடியரசு","common":"சிங்கப்பூர்"},"zho":{"official":"新加坡共和国","common":"新加坡"}}},"tld":[".sg",".新加坡",".சிங்கப்பூர்"],"cca2":"SG","ccn3":"702","cca3":"SGP","cioc":"SGP","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"SGD":{"name":"Singapore dollar","symbol":"$"}},"idd":{"root":"+6","suffixes":["5"]},"capital":["Singapore"],"altSpellings":["SG","Singapura","Republik Singapura","新加坡共和国"],"region":"Asia","subregion":"South-Eastern Asia","languages":{"eng":"English","msa":"Malay","tam":"Tamil","zho":"Chinese"},"translations":{"ara":{"official":"جمهورية سنغافورة","common":"سنغافورة"},"ces":{"official":"Singapurská republika","common":"Singapur"},"deu":{"official":"Republik Singapur","common":"Singapur"},"est":{"official":"Singapuri Vabariik","common":"Singapur"},"fin":{"official":"Singaporen tasavalta","common":"Singapore"},"fra":{"official":"République de Singapour","common":"Singapour"},"hrv":{"official":"Republika Singapur","common":"Singapur"},"hun":{"official":"Szingapúri Köztársaság","common":"Szingapúr"},"ita":{"official":"Repubblica di Singapore","common":"Singapore"},"jpn":{"official":"シンガポール共和国","common":"シンガポール"},"kor":{"official":"싱가포르 공화국","common":"싱가포르"},"nld":{"official":"Republiek Singapore","common":"Singapore"},"per":{"official":"جمهوری سنگاپور","common":"سنگاپور"},"pol":{"official":"Republika Singapuru","common":"Singapur"},"por":{"official":"República de Singapura","common":"Singapura"},"rus":{"official":"Республика Сингапур","common":"Сингапур"},"slk":{"official":"Singapurská republika","common":"Singapur"},"spa":{"official":"República de Singapur","common":"Singapur"},"srp":{"official":"Republika Singapur","common":"Singapur"},"swe":{"official":"Republiken Singapore","common":"Singapore"},"tur":{"official":"Singapur Cumhuriyeti","common":"Singapur"},"urd":{"official":"جمہوریہ سنگاپور","common":"سنگاپور"},"zho":{"official":"新加坡共和国","common":"新加坡"}},"latlng":[1.36666666,103.8],"landlocked":false,"borders":[],"area":710,"flag":"🇸🇬","demonyms":{"eng":{"f":"Singaporean","m":"Singaporean"},"fra":{"f":"Singapourienne","m":"Singapourien"}}},{"name":{"common":"South Georgia","official":"South Georgia and the South Sandwich Islands","native":{"eng":{"official":"South Georgia and the South Sandwich Islands","common":"South Georgia"}}},"tld":[".gs"],"cca2":"GS","ccn3":"239","cca3":"SGS","cioc":"","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"SHP":{"name":"Saint Helena pound","symbol":"£"}},"idd":{"root":"+5","suffixes":["00"]},"capital":["King Edward Point"],"altSpellings":["GS","South Georgia and the South Sandwich Islands"],"region":"Antarctic","subregion":"","languages":{"eng":"English"},"translations":{"ara":{"official":"جورجيا الجنوبية وجزر ساندوتش الجنوبية","common":"جورجيا الجنوبية"},"ces":{"official":"Jižní Georgie a Jižní Sandwichovy ostrovy","common":"Jižní Georgie a Jižní Sandwichovy ostrovy"},"deu":{"official":"Südgeorgien und die Südlichen Sandwichinseln","common":"Südgeorgien und die Südlichen Sandwichinseln"},"est":{"official":"Lõuna-Georgia ja Lõuna-Sandwichi saared","common":"Lõuna-Georgia ja Lõuna-Sandwichi saared"},"fin":{"official":"Etelä-Georgia ja Eteläiset Sandwichsaaret","common":"Etelä-Georgia ja Eteläiset Sandwichsaaret"},"fra":{"official":"Géorgie du Sud et les îles Sandwich du Sud","common":"Géorgie du Sud-et-les Îles Sandwich du Sud"},"hrv":{"official":"Južna Džordžija i Otoci Južni Sendvič","common":"Južna Georgija i otočje Južni Sandwich"},"hun":{"official":"Déli-Georgia és Déli-Sandwich-szigetek","common":"Déli-Georgia és Déli-Sandwich-szigetek"},"ita":{"official":"Georgia del Sud e isole Sandwich del Sud","common":"Georgia del Sud e Isole Sandwich Meridionali"},"jpn":{"official":"南ジョージア島・南サンドイッチ諸島","common":"サウスジョージア・サウスサンドウィッチ諸島"},"kor":{"official":"조지아","common":"조지아"},"nld":{"official":"Zuid-Georgië en de Zuidelijke Sandwich-eilanden","common":"Zuid-Georgia en Zuidelijke Sandwicheilanden"},"per":{"official":"جزایر جورجیای جنوبی و ساندویچ جنوبی","common":"جزایر جورجیای جنوبی و ساندویچ جنوبی"},"pol":{"official":"Georgia Południowa i Sandwich Południowy","common":"Georgia Południowa i Sandwich Południowy"},"por":{"official":"Geórgia do Sul e Sandwich do Sul","common":"Ilhas Geórgia do Sul e Sandwich do Sul"},"rus":{"official":"Южная Георгия и Южные Сандвичевы острова","common":"Южная Георгия и Южные Сандвичевы острова"},"slk":{"official":"Južná Georgia a Južné Sandwichove ostrovy","common":"Južná Georgia a Južné Sandwichove ostrovy"},"spa":{"official":"Georgia del Sur y las Islas Sandwich del Sur","common":"Islas Georgias del Sur y Sandwich del Sur"},"srp":{"official":"Južna Džordžija i Južna Sendvička Ostrva","common":"Južna Džordžija"},"swe":{"official":"Sydgeorgien","common":"Sydgeorgien"},"tur":{"official":"Güney Georgia ve Güney Sandwich Adaları","common":"Güney Georgia ve Güney Sandwich Adaları"},"urd":{"official":"جنوبی جارجیا و جزائر جنوبی سینڈوچ","common":"جنوبی جارجیا"},"zho":{"official":"南乔治亚岛和南桑威奇群岛","common":"南乔治亚"}},"latlng":[-54.5,-37],"landlocked":false,"borders":[],"area":3903,"flag":"🇬🇸","demonyms":{"eng":{"f":"South Georgian South Sandwich Islander","m":"South Georgian South Sandwich Islander"},"fra":{"f":"","m":""}}},{"name":{"common":"Svalbard and Jan Mayen","official":"Svalbard og Jan Mayen","native":{"nor":{"official":"Svalbard og Jan Mayen","common":"Svalbard og Jan Mayen"}}},"tld":[".sj"],"cca2":"SJ","ccn3":"744","cca3":"SJM","cioc":"","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"NOK":{"name":"krone","symbol":"kr"}},"idd":{"root":"+4","suffixes":["779"]},"capital":["Longyearbyen"],"altSpellings":["SJ","Svalbard and Jan Mayen Islands"],"region":"Europe","subregion":"Northern Europe","languages":{"nor":"Norwegian"},"translations":{"ara":{"official":"سفالبارد ويان ماين","common":"سفالبارد ويان ماين"},"ces":{"official":"Špicberky a Jan Mayen","common":"Špicberky a Jan Mayen"},"deu":{"official":"Spitzbergen und Jan Mayen","common":"Spitzbergen und Jan Mayen"},"est":{"official":"Svalbard","common":"Svalbard"},"fin":{"official":"Huippuvuoret","common":"Huippuvuoret"},"fra":{"official":"Jan Mayen Svalbard","common":"Svalbard et Jan Mayen"},"hrv":{"official":"Svalbard og Jan Mayen","common":"Svalbard i Jan Mayen"},"hun":{"official":"Svalbard és Jan Mayen","common":"Svalbard és Jan Mayen"},"ita":{"official":"Svalbard og Jan Mayen","common":"Svalbard e Jan Mayen"},"jpn":{"official":"スヴァールバル諸島・ヤンマイエン島","common":"スヴァールバル諸島およびヤンマイエン島"},"kor":{"official":"스발바르 얀마옌 제도","common":"스발바르 얀마옌 제도"},"nld":{"official":"Svalbard og Jan Mayen","common":"Svalbard en Jan Mayen"},"per":{"official":"سوالبارد و یان ماین","common":"سوالبارد و یان ماین"},"pol":{"official":"Svalbard i Jan Mayen","common":"Svalbard i Jan Mayen"},"por":{"official":"Svalbard og Jan Mayen","common":"Ilhas Svalbard e Jan Mayen"},"rus":{"official":"Свальбарда ог Ян-Майен","common":"Шпицберген и Ян-Майен"},"slk":{"official":"Svalbard a Jan Mayen","common":"Svalbard a Jan Mayen"},"spa":{"official":"Svalbard og Jan Mayen","common":"Islas Svalbard y Jan Mayen"},"srp":{"official":"Svalbard i Jan Majen","common":"Svalbard i Jan Majen"},"swe":{"official":"Svalbard och Jan Mayen","common":"Svalbard och Jan Mayen"},"tur":{"official":"Svalbard ve Jan Mayen","common":"Svalbard ve Jan Mayen"},"urd":{"official":"سوالبارڈ اور جان میئن","common":"سوالبارڈ اور جان میئن"},"zho":{"official":"斯瓦尔巴特","common":"斯瓦尔巴特"}},"latlng":[78,20],"landlocked":false,"borders":[],"area":-1,"flag":"🇸🇯","demonyms":{"eng":{"f":"Norwegian","m":"Norwegian"},"fra":{"f":"","m":""}}},{"name":{"common":"Solomon Islands","official":"Solomon Islands","native":{"eng":{"official":"Solomon Islands","common":"Solomon Islands"}}},"tld":[".sb"],"cca2":"SB","ccn3":"090","cca3":"SLB","cioc":"SOL","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"SBD":{"name":"Solomon Islands dollar","symbol":"$"}},"idd":{"root":"+6","suffixes":["77"]},"capital":["Honiara"],"altSpellings":["SB"],"region":"Oceania","subregion":"Melanesia","languages":{"eng":"English"},"translations":{"ara":{"official":"جزر سليمان","common":"جزر سليمان"},"ces":{"official":"Šalamounovy ostrovy","common":"Šalamounovy ostrovy"},"deu":{"official":"Salomonen","common":"Salomonen"},"est":{"official":"Saalomoni Saared","common":"Saalomoni Saared"},"fin":{"official":"Salomonsaaret","common":"Salomonsaaret"},"fra":{"official":"Îles Salomon","common":"Îles Salomon"},"hrv":{"official":"Solomonski Otoci","common":"Solomonski Otoci"},"hun":{"official":"Salamon-szigetek","common":"Salamon-szigetek"},"ita":{"official":"Isole Salomone","common":"Isole Salomone"},"jpn":{"official":"ソロモン諸島","common":"ソロモン諸島"},"kor":{"official":"솔로몬 제도","common":"솔로몬 제도"},"nld":{"official":"Solomon eilanden","common":"Salomonseilanden"},"per":{"official":"جزایر سلیمان","common":"جزایر سلیمان"},"pol":{"official":"Wyspy Salomona","common":"Wyspy Salomona"},"por":{"official":"Ilhas Salomão","common":"Ilhas Salomão"},"rus":{"official":"Соломоновы острова","common":"Соломоновы Острова"},"slk":{"official":"Salomonove ostrovy","common":"Salomonove ostrovy"},"spa":{"official":"islas Salomón","common":"Islas Salomón"},"srp":{"official":"Solomonova Ostrva","common":"Solomonova Ostrva"},"swe":{"official":"Salomonöarna","common":"Salomonöarna"},"tur":{"official":"Solomon Adaları","common":"Solomon Adaları"},"urd":{"official":"جزائر سلیمان","common":"جزائر سلیمان"},"zho":{"official":"所罗门群岛","common":"所罗门群岛"}},"latlng":[-8,159],"landlocked":false,"borders":[],"area":28896,"flag":"🇸🇧","demonyms":{"eng":{"f":"Solomon Islander","m":"Solomon Islander"},"fra":{"f":"Salomonienne","m":"Salomonien"}}},{"name":{"common":"Sierra Leone","official":"Republic of Sierra Leone","native":{"eng":{"official":"Republic of Sierra Leone","common":"Sierra Leone"}}},"tld":[".sl"],"cca2":"SL","ccn3":"694","cca3":"SLE","cioc":"SLE","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"SLL":{"name":"Sierra Leonean leone","symbol":"Le"}},"idd":{"root":"+2","suffixes":["32"]},"capital":["Freetown"],"altSpellings":["SL","Republic of Sierra Leone"],"region":"Africa","subregion":"Western Africa","languages":{"eng":"English"},"translations":{"ara":{"official":"جمهورية سيراليون","common":"سيراليون"},"ces":{"official":"Republika Sierra Leone","common":"Sierra Leone"},"deu":{"official":"Republik Sierra Leone","common":"Sierra Leone"},"est":{"official":"Sierra Leone Vabariik","common":"Sierra Leone"},"fin":{"official":"Sierra Leonen tasavalta","common":"Sierra Leone"},"fra":{"official":"République de Sierra Leone","common":"Sierra Leone"},"hrv":{"official":"Republika Sijera Leone","common":"Sijera Leone"},"hun":{"official":"Sierra Leone Köztársaság","common":"Sierra Leone"},"ita":{"official":"Repubblica della Sierra Leone","common":"Sierra Leone"},"jpn":{"official":"シエラレオネ共和国","common":"シエラレオネ"},"kor":{"official":"시에라리온 공화국","common":"시에라리온"},"nld":{"official":"Republiek Sierra Leone","common":"Sierra Leone"},"per":{"official":"جمهوری سیرالئون","common":"سیرالئون"},"pol":{"official":"Sierra Leone","common":"Sierra Leone"},"por":{"official":"República da Serra Leoa","common":"Serra Leoa"},"rus":{"official":"Республика Сьерра-Леоне","common":"Сьерра-Леоне"},"slk":{"official":"Sierraleonská republika","common":"Sierra Leone"},"spa":{"official":"República de Sierra Leona","common":"Sierra Leone"},"srp":{"official":"Republika Sijera Leone","common":"Sijera Leone"},"swe":{"official":"Republiken Sierra Leone","common":"Sierra Leone"},"tur":{"official":"Sierra Leone Cumhuriyeti","common":"Sierra Leone"},"urd":{"official":"جمہوریہ سیرالیون","common":"سیرالیون"},"zho":{"official":"塞拉利昂共和国","common":"塞拉利昂"}},"latlng":[8.5,-11.5],"landlocked":false,"borders":["GIN","LBR"],"area":71740,"flag":"🇸🇱","demonyms":{"eng":{"f":"Sierra Leonean","m":"Sierra Leonean"},"fra":{"f":"Sierra-leonaise","m":"Sierra-leonais"}}},{"name":{"common":"El Salvador","official":"Republic of El Salvador","native":{"spa":{"official":"República de El Salvador","common":"El Salvador"}}},"tld":[".sv"],"cca2":"SV","ccn3":"222","cca3":"SLV","cioc":"ESA","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Latin American and Caribbean Group","currencies":{"USD":{"name":"United States dollar","symbol":"$"}},"idd":{"root":"+5","suffixes":["03"]},"capital":["San Salvador"],"altSpellings":["SV","Republic of El Salvador","República de El Salvador"],"region":"Americas","subregion":"Central America","languages":{"spa":"Spanish"},"translations":{"ara":{"official":"جمهورية السلفادور","common":"السلفادور"},"ces":{"official":"Salvadorská republika","common":"Salvador"},"deu":{"official":"Republik El Salvador","common":"El Salvador"},"est":{"official":"El Salvadori Vabariik","common":"El Salvador"},"fin":{"official":"El Salvadorin tasavalta","common":"El Salvador"},"fra":{"official":"République du Salvador","common":"Salvador"},"hrv":{"official":"Republika El Salvador","common":"Salvador"},"hun":{"official":"Salvadori Köztársaság","common":"Salvador"},"ita":{"official":"Repubblica di El Salvador","common":"El Salvador"},"jpn":{"official":"エルサルバドル共和国","common":"エルサルバドル"},"kor":{"official":"엘살바도르 공화국","common":"엘살바도르"},"nld":{"official":"Republiek El Salvador","common":"El Salvador"},"per":{"official":"جمهوری السالوادور","common":"السالوادور"},"pol":{"official":"Republika Salwadoru","common":"Salwador"},"por":{"official":"República de El Salvador","common":"El Salvador"},"rus":{"official":"Республика Эль-Сальвадор","common":"Сальвадор"},"slk":{"official":"Salvádorská republika","common":"Salvádor"},"spa":{"official":"República de El Salvador","common":"El Salvador"},"srp":{"official":"Republika El Salvador","common":"El Salvador"},"swe":{"official":"Republiken El Salvador","common":"El Salvador"},"tur":{"official":"El Salvador Cumhuriyeti","common":"El Salvador"},"urd":{"official":"جمہوریہ ایل سیلواڈور","common":"ایل سیلواڈور"},"zho":{"official":"萨尔瓦多共和国","common":"萨尔瓦多"}},"latlng":[13.83333333,-88.91666666],"landlocked":false,"borders":["GTM","HND"],"area":21041,"flag":"🇸🇻","demonyms":{"eng":{"f":"Salvadoran","m":"Salvadoran"},"fra":{"f":"Salvadorienne","m":"Salvadorien"}}},{"name":{"common":"San Marino","official":"Most Serene Republic of San Marino","native":{"ita":{"official":"Serenissima Repubblica di San Marino","common":"San Marino"}}},"tld":[".sm"],"cca2":"SM","ccn3":"674","cca3":"SMR","cioc":"SMR","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Western European and Others Group","currencies":{"EUR":{"name":"Euro","symbol":"€"}},"idd":{"root":"+3","suffixes":["78"]},"capital":["City of San Marino"],"altSpellings":["SM","Republic of San Marino","Repubblica di San Marino"],"region":"Europe","subregion":"Southern Europe","languages":{"ita":"Italian"},"translations":{"ara":{"official":"جمهورية سان مارينو","common":"سان مارينو"},"ces":{"official":"Republika San Marino","common":"San Marino"},"deu":{"official":"Republik San Marino","common":"San Marino"},"est":{"official":"San Marino Vabariik","common":"San Marino"},"fin":{"official":"San Marinon seesteinen tasavalta","common":"San Marino"},"fra":{"official":"République de Saint-Marin","common":"Saint-Marin"},"hrv":{"official":"Većina Serene Republika San Marino","common":"San Marino"},"hun":{"official":"San Marino Köztársaság","common":"San Marino"},"ita":{"official":"Serenissima Repubblica di San Marino","common":"San Marino"},"jpn":{"official":"サンマリノ共和国","common":"サンマリノ"},"kor":{"official":"산마리노 공화국","common":"산마리노"},"nld":{"official":"Meest Serene Republiek San Marino","common":"San Marino"},"per":{"official":"جمهوری سان مارینو","common":"سان مارینو"},"pol":{"official":"Republika San Marino","common":"San Marino"},"por":{"official":"Sereníssima República de San Marino","common":"San Marino"},"rus":{"official":"Большинство Serene Республика Сан-Марино","common":"Сан-Марино"},"slk":{"official":"Sanmarínska republika","common":"San Maríno"},"spa":{"official":"Serenísima República de San Marino","common":"San Marino"},"srp":{"official":"Republika San Marino","common":"San Marino"},"swe":{"official":"Republiken San Marino","common":"San Marino"},"tur":{"official":"San Marino Cumhuriyeti","common":"San Marino"},"urd":{"official":"جمہوریہ سان مارینو","common":"سان مارینو"},"zho":{"official":"圣马力诺共和国","common":"圣马力诺"}},"latlng":[43.76666666,12.41666666],"landlocked":true,"borders":["ITA"],"area":61,"flag":"🇸🇲","demonyms":{"eng":{"f":"Sammarinese","m":"Sammarinese"},"fra":{"f":"Saint-Marinaise","m":"Saint-Marinais"}}},{"name":{"common":"Somalia","official":"Federal Republic of Somalia","native":{"ara":{"official":"جمهورية الصومال الفيدرالية","common":"الصومال"},"som":{"official":"Jamhuuriyadda Federaalka Soomaaliya","common":"Soomaaliya"}}},"tld":[".so"],"cca2":"SO","ccn3":"706","cca3":"SOM","cioc":"SOM","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"SOS":{"name":"Somali shilling","symbol":"Sh"}},"idd":{"root":"+2","suffixes":["52"]},"capital":["Mogadishu"],"altSpellings":["SO","aṣ-Ṣūmāl","Federal Republic of Somalia","Jamhuuriyadda Federaalka Soomaaliya","Jumhūriyyat aṣ-Ṣūmāl al-Fiderāliyya"],"region":"Africa","subregion":"Eastern Africa","languages":{"ara":"Arabic","som":"Somali"},"translations":{"ara":{"official":"جمهورية الصومال الفيدرالية","common":"الصومال"},"ces":{"official":"Somálská demokratická republika","common":"Somálsko"},"deu":{"official":"Bundesrepublik Somalia","common":"Somalia"},"est":{"official":"Somaalia Liitvabariik","common":"Somaalia"},"fin":{"official":"Somalian liittotasavalta","common":"Somalia"},"fra":{"official":"République fédérale de Somalie","common":"Somalie"},"hrv":{"official":"Savezna Republika Somaliji","common":"Somalija"},"hun":{"official":"Szomáli Szövetségi Köztársaság","common":"Szomália"},"ita":{"official":"Repubblica federale di Somalia","common":"Somalia"},"jpn":{"official":"ソマリア連邦共和国","common":"ソマリア"},"kor":{"official":" 소말리아 연방 공화국","common":"소말리아"},"nld":{"official":"Federale Republiek Somalië","common":"Somalië"},"per":{"official":"جمهوری فدرال سومالی","common":"سومالی"},"pol":{"official":"Federalna Republika Somalii","common":"Somalia"},"por":{"official":"República Federal da Somália","common":"Somália"},"rus":{"official":"Федеративная Республика Сомали","common":"Сомали"},"slk":{"official":"Somálska federatívna republika","common":"Somálsko"},"spa":{"official":"República Federal de Somalia","common":"Somalia"},"srp":{"official":"Savezna Republika Somalija","common":"Somalija"},"swe":{"official":"Förbundsrepubliken Somalia","common":"Somalia"},"tur":{"official":"Somali Federal Cumhuriyeti","common":"Somali"},"urd":{"official":"وفاقی جمہوریہ صومالیہ","common":"صومالیہ"},"zho":{"official":"索马里共和国","common":"索马里"}},"latlng":[10,49],"landlocked":false,"borders":["DJI","ETH","KEN"],"area":637657,"flag":"🇸🇴","demonyms":{"eng":{"f":"Somali","m":"Somali"},"fra":{"f":"Somalienne","m":"Somalien"}}},{"name":{"common":"Saint Pierre and Miquelon","official":"Saint Pierre and Miquelon","native":{"fra":{"official":"Collectivité territoriale de Saint-Pierre-et-Miquelon","common":"Saint-Pierre-et-Miquelon"}}},"tld":[".pm"],"cca2":"PM","ccn3":"666","cca3":"SPM","cioc":"","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"EUR":{"name":"Euro","symbol":"€"}},"idd":{"root":"+5","suffixes":["08"]},"capital":["Saint-Pierre"],"altSpellings":["PM","Collectivité territoriale de Saint-Pierre-et-Miquelon"],"region":"Americas","subregion":"North America","languages":{"fra":"French"},"translations":{"ara":{"official":"سان بيير وميكلون","common":"سان بيير وميكلون"},"ces":{"official":"Saint-Pierre a Miquelon","common":"Saint-Pierre a Miquelon"},"deu":{"official":"St. Pierre und Miquelon","common":"St. Pierre und Miquelon"},"est":{"official":"Saint-Pierre’i ja Miqueloni territoriaalühendus","common":"Saint-Pierre ja Miquelon"},"fin":{"official":"Saint-Pierre ja Miquelon","common":"Saint-Pierre ja Miquelon"},"fra":{"official":"Saint-Pierre-et-Miquelon","common":"Saint-Pierre-et-Miquelon"},"hrv":{"official":"Saint Pierre i Miquelon","common":"Sveti Petar i Mikelon"},"hun":{"official":"Saint-Pierre és Miquelon","common":"Saint-Pierre és Miquelon"},"ita":{"official":"Saint Pierre e Miquelon","common":"Saint-Pierre e Miquelon"},"jpn":{"official":"サンピエール島・ミクロン島","common":"サンピエール島及びミクロン島"},"kor":{"official":"생피에르 미클롱","common":"생피에르 미클롱"},"nld":{"official":"Saint-Pierre en Miquelon","common":"Saint Pierre en Miquelon"},"per":{"official":"سن-پیر-ا-میکلون","common":"سن-پیِر و میکلُن"},"pol":{"official":"Saint-Pierre i Miquelon","common":"Saint-Pierre i Miquelon"},"por":{"official":"Saint Pierre e Miquelon","common":"Saint-Pierre e Miquelon"},"rus":{"official":"Сен-Пьер и Микелон","common":"Сен-Пьер и Микелон"},"slk":{"official":"Ostrovy Saint Pierre a Miquelon","common":"Saint Pierre a Miquelon"},"spa":{"official":"San Pedro y Miquelón","common":"San Pedro y Miquelón"},"srp":{"official":"Sent Pjer i Mikelon","common":"Sent Pjer i Mikelon"},"swe":{"official":"Saint-Pierre och Miquelon","common":"Saint-Pierre och Miquelon"},"tur":{"official":"Saint Pierre ve Miquelon","common":"Saint Pierre ve Miquelon"},"urd":{"official":"سینٹ پیئر و میکیلون","common":"سینٹ پیئر و میکیلون"},"zho":{"official":"圣皮埃尔和密克隆","common":"圣皮埃尔和密克隆"}},"latlng":[46.83333333,-56.33333333],"landlocked":false,"borders":[],"area":242,"flag":"🇵🇲","demonyms":{"eng":{"f":"Saint-Pierrais, Miquelonnais","m":"Saint-Pierrais, Miquelonnais"},"fra":{"f":"Saint-Pierraise, Miquelonaise","m":"Saint-Pierrais, Miquelonais"}}},{"name":{"common":"Serbia","official":"Republic of Serbia","native":{"srp":{"official":"Република Србија","common":"Србија"}}},"tld":[".rs",".срб"],"cca2":"RS","ccn3":"688","cca3":"SRB","cioc":"SRB","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Eastern European Group","currencies":{"RSD":{"name":"Serbian dinar","symbol":"дин."}},"idd":{"root":"+3","suffixes":["81"]},"capital":["Belgrade"],"altSpellings":["RS","Srbija","Republika Srbija","Србија","Република Србија","Republic of Serbia"],"region":"Europe","subregion":"Southeast Europe","languages":{"srp":"Serbian"},"translations":{"ara":{"official":"جمهورية صيربيا","common":"صيربيا"},"ces":{"official":"Srbská republika","common":"Srbsko"},"deu":{"official":"Republik Serbien","common":"Serbien"},"est":{"official":"Serbia Vabariik","common":"Serbia"},"fin":{"official":"Serbian tasavalta","common":"Serbia"},"fra":{"official":"République de Serbie","common":"Serbie"},"hrv":{"official":"Republika Srbija","common":"Srbija"},"hun":{"official":"Szerb Köztársaság","common":"Szerbia"},"ita":{"official":"Repubblica di Serbia","common":"Serbia"},"jpn":{"official":"セルビア共和国","common":"セルビア"},"kor":{"official":"세르비아 공화국","common":"세르비아"},"nld":{"official":"Republiek Servië","common":"Servië"},"per":{"official":"جمهوری صربستان","common":"صربستان"},"pol":{"official":"Republika Serbii","common":"Serbia"},"por":{"official":"República da Sérvia","common":"Sérvia"},"rus":{"official":"Республика Сербия","common":"Сербия"},"slk":{"official":"Srbská republika","common":"Srbsko"},"spa":{"official":"República de Serbia","common":"Serbia"},"srp":{"official":"Republika Srbija","common":"Srbija"},"swe":{"official":"Republiken Serbien","common":"Serbien"},"tur":{"official":"Sırbistan Cumhuriyeti","common":"Sırbistan"},"urd":{"official":"جمہوریہ سربیا","common":"سربیا"},"zho":{"official":"塞尔维亚共和国","common":"塞尔维亚"}},"latlng":[44,21],"landlocked":true,"borders":["BIH","BGR","HRV","HUN","UNK","MKD","MNE","ROU"],"area":88361,"flag":"🇷🇸","demonyms":{"eng":{"f":"Serbian","m":"Serbian"},"fra":{"f":"Serbe","m":"Serbe"}}},{"name":{"common":"South Sudan","official":"Republic of South Sudan","native":{"eng":{"official":"Republic of South Sudan","common":"South Sudan"}}},"tld":[".ss"],"cca2":"SS","ccn3":"728","cca3":"SSD","cioc":"","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"SSP":{"name":"South Sudanese pound","symbol":"£"}},"idd":{"root":"+2","suffixes":["11"]},"capital":["Juba"],"altSpellings":["SS"],"region":"Africa","subregion":"Middle Africa","languages":{"eng":"English"},"translations":{"ara":{"official":"جمهورية جنوب السودان","common":"جنوب السودان"},"ces":{"official":"Jihosúdánská republika","common":"Jižní Súdán"},"deu":{"official":"Republik Südsudan","common":"Südsudan"},"est":{"official":"Lõuna-Sudaani Vabariik","common":"Lõuna-Sudaan"},"fin":{"official":"Etelä-Sudanin tasavalta","common":"Etelä-Sudan"},"fra":{"official":"République du Soudan du Sud","common":"Soudan du Sud"},"hrv":{"official":"Republika Južni Sudan","common":"Južni Sudan"},"hun":{"official":"Dél-szudáni Köztársaság","common":"Dél-Szudán"},"ita":{"official":"Repubblica del Sudan del Sud","common":"Sudan del sud"},"jpn":{"official":"南スーダン共和国","common":"南スーダン"},"kor":{"official":"남수단 공화국","common":"남수단"},"nld":{"official":"Republiek Zuid-Soedan","common":"Zuid-Soedan"},"per":{"official":"جمهوری سودان جنوبی","common":"سودان جنوبی"},"pol":{"official":"Republika Sudanu","common":"Sudan"},"por":{"official":"República do Sudão do Sul","common":"Sudão do Sul"},"rus":{"official":"Республика Южный Судан","common":"Южный Судан"},"slk":{"official":"Juhosudánska republika","common":"Južný Sudán"},"spa":{"official":"República de Sudán del Sur","common":"Sudán del Sur"},"srp":{"official":"Republika Južni Sudan","common":"Južni Sudan"},"swe":{"official":"Republiken Sydsudan","common":"Sydsudan"},"tur":{"official":"Güney Sudan Cumhuriyeti","common":"Güney Sudan"},"urd":{"official":"جمہوریہ جنوبی سوڈان","common":"جنوبی سوڈان"},"zho":{"official":"南苏丹共和国","common":"南苏丹"}},"latlng":[7,30],"landlocked":true,"borders":["CAF","COD","ETH","KEN","SDN","UGA"],"area":619745,"flag":"🇸🇸","demonyms":{"eng":{"f":"South Sudanese","m":"South Sudanese"},"fra":{"f":"Sud-Soudanaise","m":"Sud-Soudanais"}}},{"name":{"common":"São Tomé and Príncipe","official":"Democratic Republic of São Tomé and Príncipe","native":{"por":{"official":"República Democrática do São Tomé e Príncipe","common":"São Tomé e Príncipe"}}},"tld":[".st"],"cca2":"ST","ccn3":"678","cca3":"STP","cioc":"STP","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"STN":{"name":"São Tomé and Príncipe dobra","symbol":"Db"}},"idd":{"root":"+2","suffixes":["39"]},"capital":["São Tomé"],"altSpellings":["ST","Democratic Republic of São Tomé and Príncipe","Sao Tome and Principe","República Democrática de São Tomé e Príncipe"],"region":"Africa","subregion":"Middle Africa","languages":{"por":"Portuguese"},"translations":{"ara":{"official":"جمهورية ساو تومي وبرينسيب الديمقراطية","common":"ساو تومي وبرينسيب"},"ces":{"official":"Demokratická republika Svatý Tomáš a Princův ostrov","common":"Svatý Tomáš a Princův ostrov"},"deu":{"official":"Demokratische Republik São Tomé und Príncipe","common":"São Tomé und Príncipe"},"est":{"official":"São Tomé ja Príncipe Demokraatlik Vabariik","common":"São Tomé ja Príncipe"},"fin":{"official":"São Tomé ja Príncipen demokraattinen tasavalta","common":"São Téme ja Príncipe"},"fra":{"official":"République démocratique de São Tomé et Príncipe","common":"São Tomé et Príncipe"},"hrv":{"official":"Demokratska Republika São Tome i Principe","common":"Sveti Toma i Princip"},"hun":{"official":"São Tomé és Príncipe Demokratikus Köztársaság","common":"São Tomé és Príncipe"},"ita":{"official":"Repubblica democratica di São Tomé e Príncipe","common":"São Tomé e Príncipe"},"jpn":{"official":"サントメ・プリンシペ民主共和国","common":"サントメ・プリンシペ"},"kor":{"official":"상투메 프린시페 민주 공화국","common":"상투메 프린시페"},"nld":{"official":"Democratische Republiek Sao Tomé en Principe","common":"Sao Tomé en Principe"},"per":{"official":"جمهوری دموکراتیک سائوتومه و پرنسیپ","common":"سائوتومه و پرنسیپ"},"pol":{"official":"Demokratyczna Republika Wysp Świętego Tomasza i Książęcej","common":"Wyspy Świętego Tomasza i Książęca"},"por":{"official":"República Democrática de São Tomé e Príncipe","common":"São Tomé e Príncipe"},"rus":{"official":"Демократическая Республика Сан-Томе и Принсипи","common":"Сан-Томе и Принсипи"},"slk":{"official":"Demokratická republika Svätého Tomáša A princovho ostrova","common":"Svätý Tomáš a Princov ostrov"},"spa":{"official":"República Democrática de Santo Tomé y Príncipe","common":"Santo Tomé y Príncipe"},"srp":{"official":"Demokratska Republika Sao Tome i Prinsipe","common":"Sao Tome i Prinsipe"},"swe":{"official":"Demokratiska republiken São Tomé och Príncipe","common":"São Tomé och Príncipe"},"tur":{"official":"São Tomé ve Príncipe Demokratik Cumhuriyeti","common":"São Tomé ve Príncipe"},"urd":{"official":"جمہوریہ ساؤ ٹومے و پرنسپے","common":"ساؤ ٹومے و پرنسپے"},"zho":{"official":"圣多美和普林西比民主共和国","common":"圣多美和普林西比"}},"latlng":[1,7],"landlocked":false,"borders":[],"area":964,"flag":"🇸🇹","demonyms":{"eng":{"f":"Sao Tomean","m":"Sao Tomean"},"fra":{"f":"Santoméenne","m":"Santoméen"}}},{"name":{"common":"Suriname","official":"Republic of Suriname","native":{"nld":{"official":"Republiek Suriname","common":"Suriname"}}},"tld":[".sr"],"cca2":"SR","ccn3":"740","cca3":"SUR","cioc":"SUR","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Latin American and Caribbean Group","currencies":{"SRD":{"name":"Surinamese dollar","symbol":"$"}},"idd":{"root":"+5","suffixes":["97"]},"capital":["Paramaribo"],"altSpellings":["SR","Sarnam","Sranangron","Republic of Suriname","Republiek Suriname"],"region":"Americas","subregion":"South America","languages":{"nld":"Dutch"},"translations":{"ara":{"official":"جمهورية سورينام","common":"سورينام"},"ces":{"official":"Republika Surinam","common":"Surinam"},"deu":{"official":"Republik Suriname","common":"Suriname"},"est":{"official":"Suriname Vabariik","common":"Suriname"},"fin":{"official":"Surinamen tasavalta","common":"Suriname"},"fra":{"official":"République du Suriname","common":"Surinam"},"hrv":{"official":"Republika Surinam","common":"Surinam"},"hun":{"official":"Suriname Köztársaság","common":"Suriname"},"ita":{"official":"Repubblica del Suriname","common":"Suriname"},"jpn":{"official":"スリナム共和国","common":"スリナム"},"kor":{"official":"수리남 공화국","common":"수리남"},"nld":{"official":"Republiek Suriname","common":"Suriname"},"per":{"official":"جمهوری سورینام","common":"سورینام"},"pol":{"official":"Republika Surinamu","common":"Surinam"},"por":{"official":"República do Suriname","common":"Suriname"},"rus":{"official":"Республика Суринам","common":"Суринам"},"slk":{"official":"Surinamská republika","common":"Surinam"},"spa":{"official":"República de Suriname","common":"Surinam"},"srp":{"official":"Republika Surinam","common":"Surinam"},"swe":{"official":"Republiken Surinam","common":"Surinam"},"tur":{"official":"Surinam Cumhuriyeti","common":"Surinam"},"urd":{"official":"جمہوریہ سرینام","common":"سرینام"},"zho":{"official":"苏里南共和国","common":"苏里南"}},"latlng":[4,-56],"landlocked":false,"borders":["BRA","GUF","GUY"],"area":163820,"flag":"🇸🇷","demonyms":{"eng":{"f":"Surinamer","m":"Surinamer"},"fra":{"f":"Surinamaise","m":"Surinamais"}}},{"name":{"common":"Slovakia","official":"Slovak Republic","native":{"slk":{"official":"Slovenská republika","common":"Slovensko"}}},"tld":[".sk"],"cca2":"SK","ccn3":"703","cca3":"SVK","cioc":"SVK","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Eastern European Group","currencies":{"EUR":{"name":"Euro","symbol":"€"}},"idd":{"root":"+4","suffixes":["21"]},"capital":["Bratislava"],"altSpellings":["SK","Slovak Republic","Slovenská republika"],"region":"Europe","subregion":"Central Europe","languages":{"slk":"Slovak"},"translations":{"ara":{"official":"جمهورية سلوفاكيا","common":"سلوفاكيا"},"ces":{"official":"Slovenská republika","common":"Slovensko"},"deu":{"official":"Slowakische Republik","common":"Slowakei"},"est":{"official":"Slovaki Vabariik","common":"Slovakkia"},"fin":{"official":"Slovakian tasavalta","common":"Slovakia"},"fra":{"official":"République slovaque","common":"Slovaquie"},"hrv":{"official":"slovačka","common":"Slovačka"},"hun":{"official":"Szlovák Köztársaság","common":"Szlovákia"},"ita":{"official":"Repubblica slovacca","common":"Slovacchia"},"jpn":{"official":"スロバキア共和国","common":"スロバキア"},"kor":{"official":"슬로바키아 공화국","common":"슬로바키아"},"nld":{"official":"Slowaakse Republiek","common":"Slowakije"},"per":{"official":"جمهوری اسلواکی","common":"اِسلُواکی"},"pol":{"official":"Republika Słowacka","common":"Słowacja"},"por":{"official":"República Eslovaca","common":"Eslováquia"},"rus":{"official":"Словацкая Республика","common":"Словакия"},"slk":{"official":"Slovenská republika","common":"Slovensko"},"spa":{"official":"República Eslovaca","common":"Eslovaquia"},"srp":{"official":"Slovačka republika","common":"Slovačka"},"swe":{"official":"Republiken Slovakien","common":"Slovakien"},"tur":{"official":"Slovak Cumhuriyeti","common":"Slovakya"},"urd":{"official":"جمہوریہ سلوواکیہ","common":"سلوواکیہ"},"zho":{"official":"斯洛伐克共和国","common":"斯洛伐克"}},"latlng":[48.66666666,19.5],"landlocked":true,"borders":["AUT","CZE","HUN","POL","UKR"],"area":49037,"flag":"🇸🇰","demonyms":{"eng":{"f":"Slovak","m":"Slovak"},"fra":{"f":"Slovaque","m":"Slovaque"}}},{"name":{"common":"Slovenia","official":"Republic of Slovenia","native":{"slv":{"official":"Republika Slovenija","common":"Slovenija"}}},"tld":[".si"],"cca2":"SI","ccn3":"705","cca3":"SVN","cioc":"SLO","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Eastern European Group","currencies":{"EUR":{"name":"Euro","symbol":"€"}},"idd":{"root":"+3","suffixes":["86"]},"capital":["Ljubljana"],"altSpellings":["SI","Republic of Slovenia","Republika Slovenija"],"region":"Europe","subregion":"Central Europe","languages":{"slv":"Slovene"},"translations":{"ara":{"official":"جمهورية سلوفينيا","common":"سلوفينيا"},"ces":{"official":"Slovinská republika","common":"Slovinsko"},"deu":{"official":"Republik Slowenien","common":"Slowenien"},"est":{"official":"Sloveenia Vabariik","common":"Sloveenia"},"fin":{"official":"Slovenian tasavalta","common":"Slovenia"},"fra":{"official":"République de Slovénie","common":"Slovénie"},"hrv":{"official":"Republika Slovenija","common":"Slovenija"},"hun":{"official":"Szlovén Köztársaság","common":"Szlovénia"},"ita":{"official":"Repubblica di Slovenia","common":"Slovenia"},"jpn":{"official":"スロベニア共和国","common":"スロベニア"},"kor":{"official":"슬로베니아 공화국","common":"슬로베니아"},"nld":{"official":"Republiek Slovenië","common":"Slovenië"},"per":{"official":"جمهوری اسلوونی","common":"اسلوونی"},"pol":{"official":"Republika Słowenii","common":"Słowenia"},"por":{"official":"República da Eslovénia","common":"Eslovénia"},"rus":{"official":"Республика Словения","common":"Словения"},"slk":{"official":"Slovinská republika","common":"Slovinsko"},"spa":{"official":"República de Eslovenia","common":"Eslovenia"},"srp":{"official":"Republika Slovenija","common":"Slovenija"},"swe":{"official":"Republiken Slovenien","common":"Slovenien"},"tur":{"official":"Slovenya Cumhuriyeti","common":"Slovenya"},"urd":{"official":"جمہوریہ سلووینیا","common":"سلووینیا"},"zho":{"official":"斯洛文尼亚共和国","common":"斯洛文尼亚"}},"latlng":[46.11666666,14.81666666],"landlocked":false,"borders":["AUT","HRV","ITA","HUN"],"area":20273,"flag":"🇸🇮","demonyms":{"eng":{"f":"Slovene","m":"Slovene"},"fra":{"f":"Slovène","m":"Slovène"}}},{"name":{"common":"Sweden","official":"Kingdom of Sweden","native":{"swe":{"official":"Konungariket Sverige","common":"Sverige"}}},"tld":[".se"],"cca2":"SE","ccn3":"752","cca3":"SWE","cioc":"SWE","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Western European and Others Group","currencies":{"SEK":{"name":"Swedish krona","symbol":"kr"}},"idd":{"root":"+4","suffixes":["6"]},"capital":["Stockholm"],"altSpellings":["SE","Kingdom of Sweden","Konungariket Sverige"],"region":"Europe","subregion":"Northern Europe","languages":{"swe":"Swedish"},"translations":{"ara":{"official":"مملكة السويد","common":"السويد"},"ces":{"official":"Švédské království","common":"Švédsko"},"deu":{"official":"Königreich Schweden","common":"Schweden"},"est":{"official":"Rootsi Kuningriik","common":"Rootsi"},"fin":{"official":"Ruotsin kuningaskunta","common":"Ruotsi"},"fra":{"official":"Royaume de Suède","common":"Suède"},"hrv":{"official":"Kraljevina Švedska","common":"Švedska"},"hun":{"official":"Svéd Királyság","common":"Svédország"},"ita":{"official":"Regno di Svezia","common":"Svezia"},"jpn":{"official":"スウェーデン王国","common":"スウェーデン"},"kor":{"official":"스웨덴 왕국","common":"스웨덴"},"nld":{"official":"Koninkrijk Zweden","common":"Zweden"},"per":{"official":"پادشاهی سوئد","common":"سوئد"},"pol":{"official":"Królestwo Szwecji","common":"Szwecja"},"por":{"official":"Reino da Suécia","common":"Suécia"},"rus":{"official":"Королевство Швеция","common":"Швеция"},"slk":{"official":"Švédske kráľovstvo","common":"Švédsko"},"spa":{"official":"Reino de Suecia","common":"Suecia"},"srp":{"official":"Kraljevina Švedska","common":"Švedska"},"swe":{"official":"Konungariket Sverige","common":"Sverige"},"tur":{"official":"İsveç Krallığı","common":"İsveç"},"urd":{"official":"مملکتِ سویڈن","common":"سویڈن"},"zho":{"official":"瑞典王国","common":"瑞典"}},"latlng":[62,15],"landlocked":false,"borders":["FIN","NOR"],"area":450295,"flag":"🇸🇪","demonyms":{"eng":{"f":"Swedish","m":"Swedish"},"fra":{"f":"Suédoise","m":"Suédois"}}},{"name":{"common":"Eswatini","official":"Kingdom of Eswatini","native":{"eng":{"official":"Kingdom of Eswatini","common":"Eswatini"},"ssw":{"official":"Umbuso weSwatini","common":"eSwatini"}}},"tld":[".sz"],"cca2":"SZ","ccn3":"748","cca3":"SWZ","cioc":"SWZ","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"SZL":{"name":"Swazi lilangeni","symbol":"L"},"ZAR":{"name":"South African rand","symbol":"R"}},"idd":{"root":"+2","suffixes":["68"]},"capital":["Lobamba"],"altSpellings":["SZ","Swaziland","weSwatini","Swatini","Ngwane","Kingdom of Eswatini","Umbuso weSwatini"],"region":"Africa","subregion":"Southern Africa","languages":{"eng":"English","ssw":"Swazi"},"translations":{"ara":{"official":"مملكة إسواتيني","common":"إسواتيني"},"ces":{"official":"Svazijské království","common":"Svazijsko"},"deu":{"official":"Königreich Eswatini","common":"Swasiland"},"est":{"official":"eSwatini Kuningriik","common":"Svaasimaa"},"fin":{"official":"Swazimaan kuningaskunta","common":"Swazimaa"},"fra":{"official":"Royaume d’Eswatini","common":"Swaziland"},"hrv":{"official":"Kraljevina eSwatini","common":"Svazi"},"hun":{"official":"Szváziföldi Királyság","common":"Szváziföld"},"ita":{"official":"Regno di eSwatini","common":"Swaziland"},"jpn":{"official":"エスワティニ王国","common":"エスワティニ"},"kor":{"official":"에스와티니 왕국","common":"에스와티니"},"nld":{"official":"Koninkrijk eSwatini","common":"Swaziland"},"per":{"official":"پادشاهی سوازیلند","common":"اسواتینی"},"pol":{"official":"Królestwo Suazi","common":"Suazi"},"por":{"official":"Reino de eSwatini","common":"Suazilândia"},"rus":{"official":"Королевство Свазиленд","common":"Свазиленд"},"slk":{"official":"Svazijské kráľovstvo","common":"Svazijsko"},"spa":{"official":"Reino de eSwatini","common":"Suazilandia"},"srp":{"official":"Kraljevina Esvatini","common":"Esvatini"},"swe":{"official":"Konungariket Eswatini","common":"Swaziland"},"tur":{"official":"Esvatini Krallığı","common":"Esvatini"},"urd":{"official":"مملکتِ سوازی لینڈ","common":"سوازی لینڈ"},"zho":{"official":"斯威士兰王国","common":"斯威士兰"}},"latlng":[-26.5,31.5],"landlocked":true,"borders":["MOZ","ZAF"],"area":17364,"flag":"🇸🇿","demonyms":{"eng":{"f":"Swazi","m":"Swazi"},"fra":{"f":"Swazie","m":"Swazie"}}},{"name":{"common":"Sint Maarten","official":"Sint Maarten","native":{"eng":{"official":"Sint Maarten","common":"Sint Maarten"},"fra":{"official":"Saint-Martin","common":"Saint-Martin"},"nld":{"official":"Sint Maarten","common":"Sint Maarten"}}},"tld":[".sx"],"cca2":"SX","ccn3":"534","cca3":"SXM","cioc":"","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"ANG":{"name":"Netherlands Antillean guilder","symbol":"ƒ"}},"idd":{"root":"+1","suffixes":["721"]},"capital":["Philipsburg"],"altSpellings":["SX","Sint Maarten (Dutch part)"],"region":"Americas","subregion":"Caribbean","languages":{"eng":"English","fra":"French","nld":"Dutch"},"translations":{"ara":{"official":"سينت مارتن","common":"سينت مارتن"},"ces":{"official":"Svatý Martin","common":"Svatý Martin (Nizozemsko)"},"deu":{"official":"Sint Maarten","common":"Sint Maarten"},"est":{"official":"Sint Maarten","common":"Sint Maarten"},"fin":{"official":"Sint Maarten","common":"Sint Maarten"},"fra":{"official":"Sint Maarten","common":"Saint-Martin"},"hrv":{"official":"Sveti Martin","common":"Sveti Martin"},"hun":{"official":"Sint Maarten","common":"Sint Maarten"},"ita":{"official":"Sint Maarten","common":"Sint Maarten"},"jpn":{"official":"シント・マールテン","common":"シント・マールテン"},"kor":{"official":"신트마르턴","common":"신트마르턴"},"nld":{"official":"Sint Maarten","common":"Sint Maarten"},"per":{"official":"سن مارتن","common":"سن مارتن"},"pol":{"official":"Sint Maarten","common":"Sint Maarten"},"por":{"official":"Sint Maarten","common":"São Martinho"},"rus":{"official":"Синт-Маартен","common":"Синт-Мартен"},"slk":{"official":"Sint Maarten","common":"Sint Maarten"},"spa":{"official":"Sint Maarten","common":"Sint Maarten"},"srp":{"official":"Sveti Martin","common":"Sveti Martin"},"swe":{"official":"Sint Maarten","common":"Sint Maarten"},"tur":{"official":"Sint Maarten","common":"Sint Maarten"},"urd":{"official":"سنٹ مارٹن","common":"سنٹ مارٹن"},"zho":{"official":"圣马丁岛","common":"圣马丁岛"}},"latlng":[18.033333,-63.05],"landlocked":false,"borders":["MAF"],"area":34,"flag":"🇸🇽","demonyms":{"eng":{"f":"St. Maartener","m":"St. Maartener"},"fra":{"f":"Saint-Martinoise","m":"Saint-Martinois"}}},{"name":{"common":"Seychelles","official":"Republic of Seychelles","native":{"crs":{"official":"Repiblik Sesel","common":"Sesel"},"eng":{"official":"Republic of Seychelles","common":"Seychelles"},"fra":{"official":"République des Seychelles","common":"Seychelles"}}},"tld":[".sc"],"cca2":"SC","ccn3":"690","cca3":"SYC","cioc":"SEY","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"SCR":{"name":"Seychellois rupee","symbol":"₨"}},"idd":{"root":"+2","suffixes":["48"]},"capital":["Victoria"],"altSpellings":["SC","Republic of Seychelles","Repiblik Sesel","République des Seychelles"],"region":"Africa","subregion":"Eastern Africa","languages":{"crs":"Seychellois Creole","eng":"English","fra":"French"},"translations":{"ara":{"official":"جمهورية سيشل","common":"سيشل"},"ces":{"official":"Seychelská republika","common":"Seychely"},"deu":{"official":"Republik der Seychellen","common":"Seychellen"},"est":{"official":"Seišelli Vabariik","common":"Seišellid"},"fin":{"official":"Seychellien tasavalta","common":"Seychellit"},"fra":{"official":"République des Seychelles","common":"Seychelles"},"hrv":{"official":"Republika Sejšeli","common":"Sejšeli"},"hun":{"official":"Seychelle Köztársaság","common":"Seychelle-szigetek"},"ita":{"official":"Repubblica delle Seychelles","common":"Seychelles"},"jpn":{"official":"セーシェル共和国","common":"セーシェル"},"kor":{"official":"세이셸 공화국","common":"세이셸"},"nld":{"official":"Republiek der Seychellen","common":"Seychellen"},"per":{"official":"جمهوری سیشل","common":"سیشل"},"pol":{"official":"Republika Seszeli","common":"Seszele"},"por":{"official":"República das Seychelles","common":"Seicheles"},"rus":{"official":"Республика Сейшельские Острова","common":"Сейшельские Острова"},"slk":{"official":"Seychelská republika","common":"Seychely"},"spa":{"official":"República de las Seychelles","common":"Seychelles"},"srp":{"official":"Republika Sejšeli","common":"Sejšeli"},"swe":{"official":"Republiken Seychellerna","common":"Seychellerna"},"tur":{"official":"Seyşeller Cumhuriyeti","common":"Seyşeller"},"urd":{"official":"جمہوریہ سیچیلیس","common":"سیچیلیس"},"zho":{"official":"塞舌尔共和国","common":"塞舌尔"}},"latlng":[-4.58333333,55.66666666],"landlocked":false,"borders":[],"area":452,"flag":"🇸🇨","demonyms":{"eng":{"f":"Seychellois","m":"Seychellois"},"fra":{"f":"Seychelloise","m":"Seychellois"}}},{"name":{"common":"Syria","official":"Syrian Arab Republic","native":{"ara":{"official":"الجمهورية العربية السورية","common":"سوريا"}}},"tld":[".sy","سوريا."],"cca2":"SY","ccn3":"760","cca3":"SYR","cioc":"SYR","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"SYP":{"name":"Syrian pound","symbol":"£"}},"idd":{"root":"+9","suffixes":["63"]},"capital":["Damascus"],"altSpellings":["SY","Syrian Arab Republic","Al-Jumhūrīyah Al-ʻArabīyah As-Sūrīyah"],"region":"Asia","subregion":"Western Asia","languages":{"ara":"Arabic"},"translations":{"ara":{"official":"الجمهورية العربية السورية","common":"سوريا"},"ces":{"official":"Syrská arabská republika","common":"Sýrie"},"deu":{"official":"Arabische Republik Syrien","common":"Syrien"},"est":{"official":"Süüria Araabia Vabariik","common":"Süüria"},"fin":{"official":"Syyrian arabitasavalta","common":"Syyria"},"fra":{"official":"République arabe syrienne","common":"Syrie"},"hrv":{"official":"Sirijska Arapska Republika","common":"Sirija"},"hun":{"official":"Szíriai Arab Köztársaság","common":"Szíria"},"ita":{"official":"Repubblica araba siriana","common":"Siria"},"jpn":{"official":"シリア・アラブ共和国","common":"シリア"},"kor":{"official":"시리아 아랍 공화국","common":"시리아"},"nld":{"official":"Syrische Arabische Republiek","common":"Syrië"},"per":{"official":"جمهوری عربی سوریه","common":"سوریه"},"pol":{"official":"Syryjska Republika Arabska","common":"Syria"},"por":{"official":"República Árabe Síria","common":"Síria"},"rus":{"official":"Сирийская Арабская Республика","common":"Сирия"},"slk":{"official":"Sýrska arabská republika","common":"Sýria"},"spa":{"official":"República Árabe Siria","common":"Siria"},"srp":{"official":"Sirijska Arapska Republika","common":"Sirija"},"swe":{"official":"Syriska arabiska republiken","common":"Syrien"},"tur":{"official":"Suriye Arap Cumhuriyeti","common":"Suriye"},"urd":{"official":"عرب جمہوریہ سوریہ","common":"سوریہ"},"zho":{"official":"叙利亚阿拉伯共和国","common":"叙利亚"}},"latlng":[35,38],"landlocked":false,"borders":["IRQ","ISR","JOR","LBN","TUR"],"area":185180,"flag":"🇸🇾","demonyms":{"eng":{"f":"Syrian","m":"Syrian"},"fra":{"f":"Syrienne","m":"Syrien"}}},{"name":{"common":"Turks and Caicos Islands","official":"Turks and Caicos Islands","native":{"eng":{"official":"Turks and Caicos Islands","common":"Turks and Caicos Islands"}}},"tld":[".tc"],"cca2":"TC","ccn3":"796","cca3":"TCA","cioc":"","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"USD":{"name":"United States dollar","symbol":"$"}},"idd":{"root":"+1","suffixes":["649"]},"capital":["Cockburn Town"],"altSpellings":["TC"],"region":"Americas","subregion":"Caribbean","languages":{"eng":"English"},"translations":{"ara":{"official":"جزر توركس وكايكوس","common":"جزر توركس وكايكوس"},"ces":{"official":"Turks a Caicos","common":"Turks a Caicos"},"deu":{"official":"Turks und Caicos Inseln","common":"Turks-und Caicosinseln"},"est":{"official":"Turksi ja Caicose saared","common":"Turks ja Caicos"},"fin":{"official":"Turks-ja Caicossaaret","common":"Turks-ja Caicossaaret"},"fra":{"official":"Îles Turques et Caïques","common":"Îles Turques-et-Caïques"},"hrv":{"official":"Otoci Turks i Caicos","common":"Otoci Turks i Caicos"},"hun":{"official":"Turks- és Caicos-szigetek","common":"Turks- és Caicos-szigetek"},"ita":{"official":"Turks e Caicos","common":"Isole Turks e Caicos"},"jpn":{"official":"タークス・カイコス諸島","common":"タークス・カイコス諸島"},"kor":{"official":"터크스 케이커스 제도","common":"터크스 케이커스 제도"},"nld":{"official":"Turks-en Caicoseilanden","common":"Turks-en Caicoseilanden"},"per":{"official":"جزایر تورکس و کایکوس","common":"جزایر تورکس و کایکوس"},"pol":{"official":"Turks i Caicos","common":"Turks i Caicos"},"por":{"official":"Ilhas Turks e Caicos","common":"Ilhas Turks e Caicos"},"rus":{"official":"Теркс и Кайкос острова","common":"Теркс и Кайкос"},"slk":{"official":"Ostrovy Turks a Caicos","common":"Turks a Caicos"},"spa":{"official":"Islas Turcas y Caicos","common":"Islas Turks y Caicos"},"srp":{"official":"Ostrva Terks i Kejkos","common":"Ostrva Terks i Kejkos"},"swe":{"official":"Turks- och Caicosöarna","common":"Turks- och Caicosöarna"},"tur":{"official":"Turks ve Caicos Adaları","common":"Turks ve Caicos Adaları"},"urd":{"official":"جزائر کیکس و ترکیہ","common":"جزائر کیکس و ترکیہ"},"zho":{"official":"特克斯和凯科斯群岛","common":"特克斯和凯科斯群岛"}},"latlng":[21.75,-71.58333333],"landlocked":false,"borders":[],"area":948,"flag":"🇹🇨","demonyms":{"eng":{"f":"Turks and Caicos Islander","m":"Turks and Caicos Islander"},"fra":{"f":"","m":""}}},{"name":{"common":"Chad","official":"Republic of Chad","native":{"ara":{"official":"جمهورية تشاد","common":"تشاد"},"fra":{"official":"République du Tchad","common":"Tchad"}}},"tld":[".td"],"cca2":"TD","ccn3":"148","cca3":"TCD","cioc":"CHA","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"XAF":{"name":"Central African CFA franc","symbol":"Fr"}},"idd":{"root":"+2","suffixes":["35"]},"capital":["N'Djamena"],"altSpellings":["TD","Tchad","Republic of Chad","République du Tchad"],"region":"Africa","subregion":"Middle Africa","languages":{"ara":"Arabic","fra":"French"},"translations":{"ara":{"official":"جمهورية تشاد","common":"تشاد"},"ces":{"official":"Čadská republika","common":"Čad"},"deu":{"official":"Republik Tschad","common":"Tschad"},"est":{"official":"Tšaadi Vabariik","common":"Tšaad"},"fin":{"official":"Tšadin tasavalta","common":"Tšad"},"fra":{"official":"République du Tchad","common":"Tchad"},"hrv":{"official":"Čadu","common":"Čad"},"hun":{"official":"Csád Köztársaság","common":"Csád"},"ita":{"official":"Repubblica del Ciad","common":"Ciad"},"jpn":{"official":"チャド共和国","common":"チャド"},"kor":{"official":"차드 공화국","common":"차드"},"nld":{"official":"Republiek Tsjaad","common":"Tsjaad"},"per":{"official":"جمهوری چاد","common":"چاد"},"pol":{"official":"Republika Czadu","common":"Czad"},"por":{"official":"República do Chade","common":"Chade"},"rus":{"official":"Республика Чад","common":"Чад"},"slk":{"official":"Čadská republika","common":"Čad"},"spa":{"official":"República de Chad","common":"Chad"},"srp":{"official":"Republika Čad","common":"Čad"},"swe":{"official":"Republiken Tchad","common":"Tchad"},"tur":{"official":"çad Cumhuriyeti","common":"çad"},"urd":{"official":"جمہوریہ چاڈ","common":"چاڈ"},"zho":{"official":"乍得共和国","common":"乍得"}},"latlng":[15,19],"landlocked":true,"borders":["CMR","CAF","LBY","NER","NGA","SDN"],"area":1284000,"flag":"🇹🇩","demonyms":{"eng":{"f":"Chadian","m":"Chadian"},"fra":{"f":"Tchadienne","m":"Tchadien"}}},{"name":{"common":"Togo","official":"Togolese Republic","native":{"fra":{"official":"République togolaise","common":"Togo"}}},"tld":[".tg"],"cca2":"TG","ccn3":"768","cca3":"TGO","cioc":"TOG","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"XOF":{"name":"West African CFA franc","symbol":"Fr"}},"idd":{"root":"+2","suffixes":["28"]},"capital":["Lomé"],"altSpellings":["TG","Togolese","Togolese Republic","République Togolaise"],"region":"Africa","subregion":"Western Africa","languages":{"fra":"French"},"translations":{"ara":{"official":"جمهورية توغو","common":"توغو"},"ces":{"official":"Republika Togo","common":"Togo"},"deu":{"official":"Republik Togo","common":"Togo"},"est":{"official":"Togo Vabariik","common":"Togo"},"fin":{"official":"Togon tasavalta","common":"Togo"},"fra":{"official":"République togolaise","common":"Togo"},"hrv":{"official":"Togolese Republika","common":"Togo"},"hun":{"official":"Togói Köztársaság","common":"Togo"},"ita":{"official":"Repubblica del Togo","common":"Togo"},"jpn":{"official":"トーゴ共和国","common":"トーゴ"},"kor":{"official":"토고 공화국","common":"토고"},"nld":{"official":"Republiek Togo","common":"Togo"},"per":{"official":"جمهوری توگو","common":"توگو"},"pol":{"official":"Republika Togijska","common":"Togo"},"por":{"official":"República do Togo","common":"Togo"},"rus":{"official":"Того Республика","common":"Того"},"slk":{"official":"Togská republika","common":"Togo"},"spa":{"official":"República de Togo","common":"Togo"},"srp":{"official":"Republika Togo","common":"Togo"},"swe":{"official":"Republiken Togo","common":"Togo"},"tur":{"official":"Togo Cumhuriyeti","common":"Togo"},"urd":{"official":"جمہوریہ ٹوگو","common":"ٹوگو"},"zho":{"official":"多哥共和国","common":"多哥"}},"latlng":[8,1.16666666],"landlocked":false,"borders":["BEN","BFA","GHA"],"area":56785,"flag":"🇹🇬","demonyms":{"eng":{"f":"Togolese","m":"Togolese"},"fra":{"f":"Togolaise","m":"Togolais"}}},{"name":{"common":"Thailand","official":"Kingdom of Thailand","native":{"tha":{"official":"ราชอาณาจักรไทย","common":"ประเทศไทย"}}},"tld":[".th",".ไทย"],"cca2":"TH","ccn3":"764","cca3":"THA","cioc":"THA","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"THB":{"name":"Thai baht","symbol":"฿"}},"idd":{"root":"+6","suffixes":["6"]},"capital":["Bangkok"],"altSpellings":["TH","Prathet","Thai","Kingdom of Thailand","ราชอาณาจักรไทย","Ratcha Anachak Thai"],"region":"Asia","subregion":"South-Eastern Asia","languages":{"tha":"Thai"},"translations":{"ara":{"official":"مملكة تايلند","common":"تايلند"},"ces":{"official":"Thajské království","common":"Thajsko"},"deu":{"official":"Königreich Thailand","common":"Thailand"},"est":{"official":"Tai Kuningriik","common":"Tai"},"fin":{"official":"Thaimaan kuningaskunta","common":"Thaimaa"},"fra":{"official":"Royaume de Thaïlande","common":"Thaïlande"},"hrv":{"official":"Kraljevina Tajland","common":"Tajland"},"hun":{"official":"Thaiföldi Királyság","common":"Thaiföld"},"ita":{"official":"Regno di Thailandia","common":"Tailandia"},"jpn":{"official":"タイ王国","common":"タイ"},"kor":{"official":"타이 왕국","common":"태국"},"nld":{"official":"Koninkrijk Thailand","common":"Thailand"},"per":{"official":"پادشاهی تایلند","common":"تایلند"},"pol":{"official":"Królestwo Tajlandii","common":"Tajlandia"},"por":{"official":"Reino da Tailândia","common":"Tailândia"},"rus":{"official":"Королевство Таиланд","common":"Таиланд"},"slk":{"official":"Thajské kráľovstvo","common":"Thajsko"},"spa":{"official":"Reino de Tailandia","common":"Tailandia"},"srp":{"official":"Kraljevina Tajland","common":"Tajland"},"swe":{"official":"Konungariket Thailand","common":"Thailand"},"tur":{"official":"Tayland Krallığı","common":"Tayland"},"urd":{"official":"مملکتِ تھائی لینڈ","common":"تھائی لینڈ"},"zho":{"official":"泰王国","common":"泰国"}},"latlng":[15,100],"landlocked":false,"borders":["MMR","KHM","LAO","MYS"],"area":513120,"flag":"🇹🇭","demonyms":{"eng":{"f":"Thai","m":"Thai"},"fra":{"f":"Thaïlandaise","m":"Thaïlandais"}}},{"name":{"common":"Tajikistan","official":"Republic of Tajikistan","native":{"rus":{"official":"Республика Таджикистан","common":"Таджикистан"},"tgk":{"official":"Ҷумҳурии Тоҷикистон","common":"Тоҷикистон"}}},"tld":[".tj"],"cca2":"TJ","ccn3":"762","cca3":"TJK","cioc":"TJK","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"TJS":{"name":"Tajikistani somoni","symbol":"ЅМ"}},"idd":{"root":"+9","suffixes":["92"]},"capital":["Dushanbe"],"altSpellings":["TJ","Toçikiston","Republic of Tajikistan","Ҷумҳурии Тоҷикистон","Çumhuriyi Toçikiston"],"region":"Asia","subregion":"Central Asia","languages":{"rus":"Russian","tgk":"Tajik"},"translations":{"ara":{"official":"جمهورية طاجيكستان","common":"طاجيكستان"},"ces":{"official":"Republika Tádžikistán","common":"Tádžikistán"},"deu":{"official":"Republik Tadschikistan","common":"Tadschikistan"},"est":{"official":"Tadžikistani Vabariik","common":"Tadžikistan"},"fin":{"official":"Tadžikistanin tasavalta","common":"Tadžikistan"},"fra":{"official":"République du Tadjikistan","common":"Tadjikistan"},"hrv":{"official":"Republika Tadžikistan","common":"Tađikistan"},"hun":{"official":"Tádzsik Köztársaság","common":"Tádzsikisztán"},"ita":{"official":"Repubblica del Tajikistan","common":"Tagikistan"},"jpn":{"official":"タジキスタン共和国","common":"タジキスタン"},"kor":{"official":"타지키스탄 공화국","common":"타지키스탄"},"nld":{"official":"Tadzjikistan","common":"Tadzjikistan"},"per":{"official":"جمهوری تاجیکستان","common":"تاجیکِستان"},"pol":{"official":"Republika Tadżykistanu","common":"Tadżykistan"},"por":{"official":"República do Tajiquistão","common":"Tajiquistão"},"rus":{"official":"Республика Таджикистан","common":"Таджикистан"},"slk":{"official":"Tadžická republika","common":"Tadžikistan"},"spa":{"official":"República de Tayikistán","common":"Tayikistán"},"srp":{"official":"Republika Tadžikistan","common":"Tadžikistan"},"swe":{"official":"Republiken Tadzjikistan","common":"Tadzjikistan"},"tur":{"official":"Tacikistan Cumhuriyeti","common":"Tacikistan"},"urd":{"official":"جمہوریہ تاجکستان","common":"تاجکستان"},"zho":{"official":"塔吉克斯坦共和国","common":"塔吉克斯坦"}},"latlng":[39,71],"landlocked":true,"borders":["AFG","CHN","KGZ","UZB"],"area":143100,"flag":"🇹🇯","demonyms":{"eng":{"f":"Tadzhik","m":"Tadzhik"},"fra":{"f":"Tadjike","m":"Tadjike"}}},{"name":{"common":"Tokelau","official":"Tokelau","native":{"eng":{"official":"Tokelau","common":"Tokelau"},"smo":{"official":"Tokelau","common":"Tokelau"},"tkl":{"official":"Tokelau","common":"Tokelau"}}},"tld":[".tk"],"cca2":"TK","ccn3":"772","cca3":"TKL","cioc":"","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"NZD":{"name":"New Zealand dollar","symbol":"$"}},"idd":{"root":"+6","suffixes":["90"]},"capital":["Fakaofo"],"altSpellings":["TK"],"region":"Oceania","subregion":"Polynesia","languages":{"eng":"English","smo":"Samoan","tkl":"Tokelauan"},"translations":{"ara":{"official":"توكيلاو","common":"توكيلاو"},"ces":{"official":"Tokelau","common":"Tokelau"},"deu":{"official":"Tokelau","common":"Tokelau"},"est":{"official":"Tokelau","common":"Tokelau"},"fin":{"official":"Tokelau","common":"Tokelau"},"fra":{"official":"Îles Tokelau","common":"Tokelau"},"hrv":{"official":"Tokelau","common":"Tokelau"},"hun":{"official":"Tokelau-szigetek","common":"Tokelau-szigetek"},"ita":{"official":"Tokelau","common":"Isole Tokelau"},"jpn":{"official":"トケラウ諸島","common":"トケラウ"},"kor":{"official":"토켈라우","common":"토켈라우"},"nld":{"official":"Tokelau","common":"Tokelau"},"per":{"official":"توکلائو","common":"توکلائو"},"pol":{"official":"Tokelau","common":"Tokelau"},"por":{"official":"Tokelau","common":"Tokelau"},"rus":{"official":"Токелау","common":"Токелау"},"slk":{"official":"Tokelauské ostrovy","common":"Tokelau"},"spa":{"official":"Tokelau","common":"Islas Tokelau"},"srp":{"official":"Tokelau","common":"Tokelau"},"swe":{"official":"Tokelauöarna","common":"Tokelauöarna"},"tur":{"official":"Tokelau","common":"Tokelau"},"urd":{"official":"ٹوکیلاؤ","common":"ٹوکیلاؤ"},"zho":{"official":"托克劳","common":"托克劳"}},"latlng":[-9,-172],"landlocked":false,"borders":[],"area":12,"flag":"🇹🇰","demonyms":{"eng":{"f":"Tokelauan","m":"Tokelauan"},"fra":{"f":"","m":""}}},{"name":{"common":"Turkmenistan","official":"Turkmenistan","native":{"rus":{"official":"Туркменистан","common":"Туркмения"},"tuk":{"official":"Türkmenistan","common":"Türkmenistan"}}},"tld":[".tm"],"cca2":"TM","ccn3":"795","cca3":"TKM","cioc":"TKM","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"TMT":{"name":"Turkmenistan manat","symbol":"m"}},"idd":{"root":"+9","suffixes":["93"]},"capital":["Ashgabat"],"altSpellings":["TM"],"region":"Asia","subregion":"Central Asia","languages":{"rus":"Russian","tuk":"Turkmen"},"translations":{"ara":{"official":"تركمانستان","common":"تركمانستان"},"ces":{"official":"Turkmenistán","common":"Turkmenistán"},"deu":{"official":"Turkmenistan","common":"Turkmenistan"},"est":{"official":"Türkmenistan","common":"Türkmenistan"},"fin":{"official":"Turkmenistan","common":"Turkmenistan"},"fra":{"official":"Turkménistan","common":"Turkménistan"},"hrv":{"official":"Turkmenistan","common":"Turkmenistan"},"hun":{"official":"Türkmén Köztársaság","common":"Türkmenisztán"},"ita":{"official":"Turkmenistan","common":"Turkmenistan"},"jpn":{"official":"トルクメニスタン","common":"トルクメニスタン"},"kor":{"official":"투르크메니스탄","common":"투르크메니스탄"},"nld":{"official":"Turkmenistan","common":"Turkmenistan"},"per":{"official":"جمهوری خلق ترکمنستان","common":"ترکمنستان"},"pol":{"official":"Republika Turkmenistanu","common":"Turkmenistan"},"por":{"official":"Turcomenistão","common":"Turquemenistão"},"rus":{"official":"Туркменистан","common":"Туркмения"},"slk":{"official":"Turkménsko","common":"Turkménsko"},"spa":{"official":"Turkmenistán","common":"Turkmenistán"},"srp":{"official":"Turkmenistan","common":"Turkmenistan"},"swe":{"official":"Turkmenistan","common":"Turkmenistan"},"tur":{"official":"Türkmenistan","common":"Türkmenistan"},"urd":{"official":"ترکمانستان","common":"ترکمانستان"},"zho":{"official":"土库曼斯坦","common":"土库曼斯坦"}},"latlng":[40,60],"landlocked":true,"borders":["AFG","IRN","KAZ","UZB"],"area":488100,"flag":"🇹🇲","demonyms":{"eng":{"f":"Turkmen","m":"Turkmen"},"fra":{"f":"Turkmène","m":"Turkmène"}}},{"name":{"common":"Timor-Leste","official":"Democratic Republic of Timor-Leste","native":{"por":{"official":"República Democrática de Timor-Leste","common":"Timor-Leste"},"tet":{"official":"Repúblika Demokrátika Timór-Leste","common":"Timór-Leste"}}},"tld":[".tl"],"cca2":"TL","ccn3":"626","cca3":"TLS","cioc":"TLS","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"USD":{"name":"United States dollar","symbol":"$"}},"idd":{"root":"+6","suffixes":["70"]},"capital":["Dili"],"altSpellings":["TL","East Timor","Timor","Democratic Republic of Timor-Leste","República Democrática de Timor-Leste","Repúblika Demokrátika Timór-Leste","Timór Lorosa'e","Timor Lorosae"],"region":"Asia","subregion":"South-Eastern Asia","languages":{"por":"Portuguese","tet":"Tetum"},"translations":{"ara":{"official":"جمهورية تيمور الشرقية الديمقراطية","common":"تيمور الشرقية"},"ces":{"official":"Demokratická republika Východní Timor","common":"Východní Timor"},"deu":{"official":"Demokratische Republik Timor-Leste","common":"Osttimor"},"est":{"official":"Timor-Leste Demokraatlik Vabariik","common":"Ida-Timor"},"fin":{"official":"Itä-Timorin demokraattinen tasavalta","common":"Itä-Timor"},"fra":{"official":"République démocratique du Timor oriental","common":"Timor oriental"},"hrv":{"official":"Demokratska Republika Timor-Leste","common":"Istočni Timor"},"hun":{"official":"Kelet-timori Demokratikus Köztársaság","common":"Kelet-Timor"},"ita":{"official":"Repubblica Democratica di Timor Est","common":"Timor Est"},"jpn":{"official":"東ティモール民主共和国","common":"東ティモール"},"kor":{"official":"동티모르 민주 공화국","common":"동티모르"},"nld":{"official":"Democratische Republiek Oost-Timor","common":"Oost-Timor"},"per":{"official":"جمهوری دموکراتیک تیمور شرقی","common":"تیمور شرقی"},"pol":{"official":"Demokratyczna Republika Timoru Wschodniego","common":"Timor Wschodni"},"por":{"official":"República Democrática de Timor-Leste","common":"Timor-Leste"},"rus":{"official":"Демократическая Республика Тимор -Лешти","common":"Восточный Тимор"},"slk":{"official":"Východotimorská demokratická republika","common":"Východný Timor"},"spa":{"official":"República Democrática de Timor-Leste","common":"Timor Oriental"},"srp":{"official":"Demokratska Republika Istočni Timor","common":"Istočni Timor"},"swe":{"official":"Demokratiska republiken Östtimor","common":"Östtimor"},"tur":{"official":"Doğu Timor Demokratik Cumhuriyeti","common":"Doğu Timor"},"urd":{"official":"جمہوری جمہوریہ مشرقی تیمور","common":"مشرقی تیمور"},"zho":{"official":"东帝汶民主共和国","common":"东帝汶"}},"latlng":[-8.83333333,125.91666666],"landlocked":false,"borders":["IDN"],"area":14874,"flag":"🇹🇱","demonyms":{"eng":{"f":"East Timorese","m":"East Timorese"},"fra":{"f":"Est-timoraise","m":"Est-timorais"}}},{"name":{"common":"Tonga","official":"Kingdom of Tonga","native":{"eng":{"official":"Kingdom of Tonga","common":"Tonga"},"ton":{"official":"Kingdom of Tonga","common":"Tonga"}}},"tld":[".to"],"cca2":"TO","ccn3":"776","cca3":"TON","cioc":"TGA","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"TOP":{"name":"Tongan paʻanga","symbol":"T$"}},"idd":{"root":"+6","suffixes":["76"]},"capital":["Nuku'alofa"],"altSpellings":["TO"],"region":"Oceania","subregion":"Polynesia","languages":{"eng":"English","ton":"Tongan"},"translations":{"ara":{"official":"مملكة تونغا","common":"تونغا"},"ces":{"official":"Království Tonga","common":"Tonga"},"deu":{"official":"Königreich Tonga","common":"Tonga"},"est":{"official":"Tonga Kuningriik","common":"Tonga"},"fin":{"official":"Tongan kuningaskunta","common":"Tonga"},"fra":{"official":"Royaume des Tonga","common":"Tonga"},"hrv":{"official":"Kraljevina Tonga","common":"Tonga"},"hun":{"official":"Tongai Királyság","common":"Tonga"},"ita":{"official":"Regno di Tonga","common":"Tonga"},"jpn":{"official":"トンガ王国","common":"トンガ"},"kor":{"official":"통가 왕국","common":"통가"},"nld":{"official":"Koninkrijk Tonga","common":"Tonga"},"per":{"official":"پادشاهی تونگا","common":"تونگا"},"pol":{"official":"Królestwo Tonga","common":"Tonga"},"por":{"official":"Reino de Tonga","common":"Tonga"},"rus":{"official":"Королевство Тонга","common":"Тонга"},"slk":{"official":"Tongské kráľovstvo","common":"Tonga"},"spa":{"official":"Reino de Tonga","common":"Tonga"},"srp":{"official":"Kraljevina Tonga","common":"Tonga"},"swe":{"official":"Konungariket Tonga","common":"Tonga"},"tur":{"official":"Tonga Krallığı","common":"Tonga"},"urd":{"official":"مملکتِ ٹونگا","common":"ٹونگا"},"zho":{"official":"汤加王国","common":"汤加"}},"latlng":[-20,-175],"landlocked":false,"borders":[],"area":747,"flag":"🇹🇴","demonyms":{"eng":{"f":"Tongan","m":"Tongan"},"fra":{"f":"Tonguienne","m":"Tonguien"}}},{"name":{"common":"Trinidad and Tobago","official":"Republic of Trinidad and Tobago","native":{"eng":{"official":"Republic of Trinidad and Tobago","common":"Trinidad and Tobago"}}},"tld":[".tt"],"cca2":"TT","ccn3":"780","cca3":"TTO","cioc":"TTO","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Latin American and Caribbean Group","currencies":{"TTD":{"name":"Trinidad and Tobago dollar","symbol":"$"}},"idd":{"root":"+1","suffixes":["868"]},"capital":["Port of Spain"],"altSpellings":["TT","Republic of Trinidad and Tobago"],"region":"Americas","subregion":"Caribbean","languages":{"eng":"English"},"translations":{"ara":{"official":"جمهورية ترينيداد وتوباغو","common":"ترينيداد وتوباغو"},"ces":{"official":"Republika Trinidad a Tobago","common":"Trinidad a Tobago"},"deu":{"official":"Republik Trinidad und Tobago","common":"Trinidad und Tobago"},"est":{"official":"Trinidadi ja Tobago Vabariik","common":"Trinidad ja Tobago"},"fin":{"official":"Trinidadin ja Tobagon tasavalta","common":"Trinidad ja Tobago"},"fra":{"official":"République de Trinité-et-Tobago","common":"Trinité-et-Tobago"},"hrv":{"official":"Republika Trinidad i Tobago","common":"Trinidad i Tobago"},"hun":{"official":"Trinidad és Tobago Köztársaság","common":"Trinidad és Tobago"},"ita":{"official":"Repubblica di Trinidad e Tobago","common":"Trinidad e Tobago"},"jpn":{"official":"トリニダード・トバゴ共和国","common":"トリニダード・トバゴ"},"kor":{"official":"트리니다드 토바고 공화국","common":"트리니다드 토바고"},"nld":{"official":"Republiek Trinidad en Tobago","common":"Trinidad en Tobago"},"per":{"official":"جمهوری ترینیداد و توباگو","common":"ترینیداد و توباگو"},"pol":{"official":"Trynidad i Tobago","common":"Trynidad i Tobago"},"por":{"official":"República de Trinidad e Tobago","common":"Trinidade e Tobago"},"rus":{"official":"Республика Тринидад и Тобаго","common":"Тринидад и Тобаго"},"slk":{"official":"Republika Trinidad a Tobaga","common":"Trinidad a Tobago"},"spa":{"official":"República de Trinidad y Tobago","common":"Trinidad y Tobago"},"srp":{"official":"Republika Trinidad i Tobago","common":"Trinidad i Tobago"},"swe":{"official":"Republiken Trinidad och Tobago","common":"Trinidad och Tobago"},"tur":{"official":"Trinidad ve Tobago Cumhuriyeti","common":"Trinidad ve Tobago"},"urd":{"official":"جمہوریہ ٹرینیڈاڈ و ٹوباگو","common":"ٹرینیڈاڈ و ٹوباگو"},"zho":{"official":"特立尼达和多巴哥共和国","common":"特立尼达和多巴哥"}},"latlng":[11,-61],"landlocked":false,"borders":[],"area":5130,"flag":"🇹🇹","demonyms":{"eng":{"f":"Trinidadian","m":"Trinidadian"},"fra":{"f":"Trinidadienne","m":"Trinidadien"}}},{"name":{"common":"Tunisia","official":"Tunisian Republic","native":{"ara":{"official":"الجمهورية التونسية","common":"تونس"}}},"tld":[".tn"],"cca2":"TN","ccn3":"788","cca3":"TUN","cioc":"TUN","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"TND":{"name":"Tunisian dinar","symbol":"د.ت"}},"idd":{"root":"+2","suffixes":["16"]},"capital":["Tunis"],"altSpellings":["TN","Republic of Tunisia","al-Jumhūriyyah at-Tūnisiyyah"],"region":"Africa","subregion":"Northern Africa","languages":{"ara":"Arabic"},"translations":{"ara":{"official":"الجمهورية التونسية","common":"تونس"},"ces":{"official":"Tuniská republika","common":"Tunisko"},"deu":{"official":"Tunesische Republik","common":"Tunesien"},"est":{"official":"Tuneesia Vabariik","common":"Tuneesia"},"fin":{"official":"Tunisian tasavalta","common":"Tunisia"},"fra":{"official":"République tunisienne","common":"Tunisie"},"hrv":{"official":"Tuniski Republika","common":"Tunis"},"hun":{"official":"Tunéziai Köztársaság","common":"Tunézia"},"ita":{"official":"Repubblica tunisina","common":"Tunisia"},"jpn":{"official":"チュニジア共和国","common":"チュニジア"},"kor":{"official":"튀니지 공화국","common":"튀니지"},"nld":{"official":"Republiek Tunesië","common":"Tunesië"},"per":{"official":"جمهوری تونس","common":"تونس"},"pol":{"official":"Republika Tunezyjska","common":"Tunezja"},"por":{"official":"República da Tunísia","common":"Tunísia"},"rus":{"official":"Тунисской Республики","common":"Тунис"},"slk":{"official":"Tuniská republika","common":"Tunisko"},"spa":{"official":"República de Túnez","common":"Túnez"},"srp":{"official":"Republika Tunis","common":"Tunis"},"swe":{"official":"Republiken Tunisien","common":"Tunisien"},"tur":{"official":"Tunus Cumhuriyeti","common":"Tunus"},"urd":{"official":"جمہوریہ تونس","common":"تونس"},"zho":{"official":"突尼斯共和国","common":"突尼斯"}},"latlng":[34,9],"landlocked":false,"borders":["DZA","LBY"],"area":163610,"flag":"🇹🇳","demonyms":{"eng":{"f":"Tunisian","m":"Tunisian"},"fra":{"f":"Tunisienne","m":"Tunisien"}}},{"name":{"common":"Türkiye","official":"Republic of Türkiye","native":{"tur":{"official":"Türkiye Cumhuriyeti","common":"Türkiye"}}},"tld":[".tr"],"cca2":"TR","ccn3":"792","cca3":"TUR","cioc":"TUR","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Western European and Others Group","currencies":{"TRY":{"name":"Turkish lira","symbol":"₺"}},"idd":{"root":"+9","suffixes":["0"]},"capital":["Ankara"],"altSpellings":["TR","Turkiye","Republic of Turkey","Türkiye Cumhuriyeti"],"region":"Asia","subregion":"Western Asia","languages":{"tur":"Turkish"},"translations":{"ara":{"official":"الجمهورية التركية","common":"تركيا"},"ces":{"official":"Turecká republika","common":"Turecko"},"deu":{"official":"Republik Türkei","common":"Türkei"},"est":{"official":"Türgi Vabariik","common":"Türgi"},"fin":{"official":"Turkin tasavalta","common":"Turkki"},"fra":{"official":"République de Turquie","common":"Turquie"},"hrv":{"official":"Republika Turska","common":"Turska"},"hun":{"official":"Török Köztársaság","common":"Törökország"},"ita":{"official":"Repubblica di Turchia","common":"Turchia"},"jpn":{"official":"トルコ共和国","common":"トルコ"},"kor":{"official":"터키 공화국","common":"터키"},"nld":{"official":"Republiek Turkije","common":"Turkije"},"per":{"official":"جمهوری ترکیه","common":"ترکیه"},"pol":{"official":"Republika Turcji","common":"Turcja"},"por":{"official":"República da Turquia","common":"Turquia"},"rus":{"official":"Республика Турции","common":"Турция"},"slk":{"official":"Turecká republika","common":"Turecko"},"spa":{"official":"República de Turquía","common":"Turquía"},"srp":{"official":"Republika Turska","common":"Turska"},"swe":{"official":"Republiken Turkiet","common":"Turkiet"},"tur":{"official":"Türkiye Cumhuriyeti","common":"Türkiye"},"urd":{"official":"جمہوریہ ترکی","common":"ترکی"},"zho":{"official":"土耳其共和国","common":"土耳其"}},"latlng":[39,35],"landlocked":false,"borders":["ARM","AZE","BGR","GEO","GRC","IRN","IRQ","SYR"],"area":783562,"flag":"🇹🇷","demonyms":{"eng":{"f":"Turkish","m":"Turkish"},"fra":{"f":"Turque","m":"Turc"}}},{"name":{"common":"Tuvalu","official":"Tuvalu","native":{"eng":{"official":"Tuvalu","common":"Tuvalu"},"tvl":{"official":"Tuvalu","common":"Tuvalu"}}},"tld":[".tv"],"cca2":"TV","ccn3":"798","cca3":"TUV","cioc":"TUV","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"AUD":{"name":"Australian dollar","symbol":"$"},"TVD":{"name":"Tuvaluan dollar","symbol":"$"}},"idd":{"root":"+6","suffixes":["88"]},"capital":["Funafuti"],"altSpellings":["TV"],"region":"Oceania","subregion":"Polynesia","languages":{"eng":"English","tvl":"Tuvaluan"},"translations":{"ara":{"official":"توفالو","common":"توفالو"},"ces":{"official":"Tuvalu","common":"Tuvalu"},"deu":{"official":"Tuvalu","common":"Tuvalu"},"est":{"official":"Tuvalu","common":"Tuvalu"},"fin":{"official":"Tuvalu","common":"Tuvalu"},"fra":{"official":"Tuvalu","common":"Tuvalu"},"hrv":{"official":"Tuvalu","common":"Tuvalu"},"hun":{"official":"Tuvalu","common":"Tuvalu"},"ita":{"official":"Tuvalu","common":"Tuvalu"},"jpn":{"official":"ツバル","common":"ツバル"},"kor":{"official":"투발루","common":"투발루"},"nld":{"official":"Tuvalu","common":"Tuvalu"},"per":{"official":"تووالو","common":"تووالو"},"pol":{"official":"Tuvalu","common":"Tuvalu"},"por":{"official":"Tuvalu","common":"Tuvalu"},"rus":{"official":"Тувалу","common":"Тувалу"},"slk":{"official":"Tuvalu","common":"Tuvalu"},"spa":{"official":"Tuvalu","common":"Tuvalu"},"srp":{"official":"Tuvalu","common":"Tuvalu"},"swe":{"official":"Tuvalu","common":"Tuvalu"},"tur":{"official":"Tuvalu","common":"Tuvalu"},"urd":{"official":"تووالو","common":"تووالو"},"zho":{"official":"图瓦卢","common":"图瓦卢"}},"latlng":[-8,178],"landlocked":false,"borders":[],"area":26,"flag":"🇹🇻","demonyms":{"eng":{"f":"Tuvaluan","m":"Tuvaluan"},"fra":{"f":"Tuvaluane","m":"Tuvaluan"}}},{"name":{"common":"Taiwan","official":"Republic of China (Taiwan)","native":{"zho":{"official":"中華民國","common":"台灣"}}},"tld":[".tw",".台灣",".台湾"],"cca2":"TW","ccn3":"158","cca3":"TWN","cioc":"TPE","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"TWD":{"name":"New Taiwan dollar","symbol":"$"}},"idd":{"root":"+8","suffixes":["86"]},"capital":["Taipei"],"altSpellings":["TW","Táiwān","Republic of China","中華民國","Zhōnghuá Mínguó","Chinese Taipei"],"region":"Asia","subregion":"Eastern Asia","languages":{"zho":"Chinese"},"translations":{"ara":{"official":"جمهورية الصين (تايوان)","common":"تايوان"},"ces":{"official":"Čínská republika","common":"Tchaj-wan"},"deu":{"official":"Republik China (Taiwan)","common":"Taiwan"},"est":{"official":"Taiwani","common":"Taiwan"},"fin":{"official":"Kiinan tasavalta","common":"Taiwan"},"fra":{"official":"République de Chine (Taïwan)","common":"Taïwan"},"hrv":{"official":"Republika Kina","common":"Tajvan"},"hun":{"official":"Kínai Köztársaság","common":"Tajvan"},"ita":{"official":"Repubblica cinese (Taiwan)","common":"Taiwan"},"jpn":{"official":"台湾","common":"中華民国"},"kor":{"official":"중화민국","common":"대만"},"nld":{"official":"Republiek China (Taiwan)","common":"Taiwan"},"per":{"official":"جمهوری چین","common":"تایوان"},"pol":{"official":"Republika Chińska (Tajwan)","common":"Tajwan"},"por":{"official":"República da China","common":"Ilha Formosa"},"rus":{"official":"Китайская Республика","common":"Тайвань"},"slk":{"official":"Čínska republika","common":"Taiwan"},"spa":{"official":"República de China en Taiwán","common":"Taiwán"},"srp":{"official":"Republika Kina (Tajvan)","common":"Tajvan"},"swe":{"official":"Republiken Kina","common":"Taiwan"},"tur":{"official":"çin Cumhuriyeti (Tayvan)","common":"Tayvan"},"urd":{"official":"جمہوریہ چین (تائیوان)","common":"تائیوان"},"zho":{"official":"中華民國","common":"台灣"}},"latlng":[23.5,121],"landlocked":false,"borders":[],"area":36193,"flag":"🇹🇼","demonyms":{"eng":{"f":"Taiwanese","m":"Taiwanese"},"fra":{"f":"Taïwanaise","m":"Taïwanais"}}},{"name":{"common":"Tanzania","official":"United Republic of Tanzania","native":{"eng":{"official":"United Republic of Tanzania","common":"Tanzania"},"swa":{"official":"Jamhuri ya Muungano wa Tanzania","common":"Tanzania"}}},"tld":[".tz"],"cca2":"TZ","ccn3":"834","cca3":"TZA","cioc":"TAN","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"TZS":{"name":"Tanzanian shilling","symbol":"Sh"}},"idd":{"root":"+2","suffixes":["55"]},"capital":["Dodoma"],"altSpellings":["TZ","Tanzania, United Republic of","United Republic of Tanzania","Jamhuri ya Muungano wa Tanzania"],"region":"Africa","subregion":"Eastern Africa","languages":{"eng":"English","swa":"Swahili"},"translations":{"ara":{"official":"جمهورية تنزانيا الاتحادية","common":"تنزانيا"},"ces":{"official":"Sjednocená tanzanská republika","common":"Tanzanie"},"deu":{"official":"Vereinigte Republik Tansania","common":"Tansania"},"est":{"official":"Tansaania Ühendvabariik","common":"Tansaania"},"fin":{"official":"Tansanian yhdistynyt tasavalta","common":"Tansania"},"fra":{"official":"République -Unie de Tanzanie","common":"Tanzanie"},"hrv":{"official":"Ujedinjena Republika Tanzanija","common":"Tanzanija"},"hun":{"official":"Tádzsik Köztársaság","common":"Tádzsikisztán"},"ita":{"official":"Repubblica Unita di Tanzania","common":"Tanzania"},"jpn":{"official":"タンザニア連合共和国","common":"タンザニア"},"kor":{"official":"탄자니아 연합 공화국","common":"탄자니아"},"nld":{"official":"Verenigde Republiek Tanzania","common":"Tanzania"},"per":{"official":"جمهوری متحد تانزانیا","common":"تانزانیا"},"pol":{"official":"Zjednoczona Republika Tanzanii","common":"Tanzania"},"por":{"official":"República Unida da Tanzânia","common":"Tanzânia"},"rus":{"official":"Объединенная Республика Танзания","common":"Танзания"},"slk":{"official":"Tanzánijská zjednotená republika","common":"Tanzánia"},"spa":{"official":"República Unida de Tanzania","common":"Tanzania"},"srp":{"official":"Ujedinjena Republika Tanzanija","common":"Tanzanija"},"swe":{"official":"Förenade republiken Tanzania","common":"Tanzania"},"tur":{"official":"Tanzanya Birleşik Cumhuriyeti","common":"Tanzanya"},"urd":{"official":"متحدہ جمہوریہ تنزانیہ","common":"تنزانیہ"},"zho":{"official":"坦桑尼亚联合共和国","common":"坦桑尼亚"}},"latlng":[-6,35],"landlocked":false,"borders":["BDI","COD","KEN","MWI","MOZ","RWA","UGA","ZMB"],"area":945087,"flag":"🇹🇿","demonyms":{"eng":{"f":"Tanzanian","m":"Tanzanian"},"fra":{"f":"Tanzanienne","m":"Tanzanien"}}},{"name":{"common":"Uganda","official":"Republic of Uganda","native":{"eng":{"official":"Republic of Uganda","common":"Uganda"},"swa":{"official":"Republic of Uganda","common":"Uganda"}}},"tld":[".ug"],"cca2":"UG","ccn3":"800","cca3":"UGA","cioc":"UGA","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"UGX":{"name":"Ugandan shilling","symbol":"Sh"}},"idd":{"root":"+2","suffixes":["56"]},"capital":["Kampala"],"altSpellings":["UG","Republic of Uganda","Jamhuri ya Uganda"],"region":"Africa","subregion":"Eastern Africa","languages":{"eng":"English","swa":"Swahili"},"translations":{"ara":{"official":"جمهورية أوغندا","common":"أوغندا"},"ces":{"official":"Ugandská republika","common":"Uganda"},"deu":{"official":"Republik Uganda","common":"Uganda"},"est":{"official":"Uganda Vabariik","common":"Uganda"},"fin":{"official":"Ugandan tasavalta","common":"Uganda"},"fra":{"official":"République de l'Ouganda","common":"Ouganda"},"hrv":{"official":"Republika Uganda","common":"Uganda"},"hun":{"official":"Ugandai Köztársaság","common":"Uganda"},"ita":{"official":"Repubblica di Uganda","common":"Uganda"},"jpn":{"official":"ウガンダ共和国","common":"ウガンダ"},"kor":{"official":"우간다 공화국","common":"우간다"},"nld":{"official":"Republiek Uganda","common":"Oeganda"},"per":{"official":"جمهوری اوگاندا","common":"اوگاندا"},"pol":{"official":"Republika Ugandy","common":"Uganda"},"por":{"official":"República do Uganda","common":"Uganda"},"rus":{"official":"Республика Уганда","common":"Уганда"},"slk":{"official":"Ugandská republika","common":"Uganda"},"spa":{"official":"República de Uganda","common":"Uganda"},"srp":{"official":"Republika Uganda","common":"Uganda"},"swe":{"official":"Republiken Uganda","common":"Uganda"},"tur":{"official":"Uganda Cumhuriyeti","common":"Uganda"},"urd":{"official":"جمہوریہ یوگنڈا","common":"یوگنڈا"},"zho":{"official":"乌干达共和国","common":"乌干达"}},"latlng":[1,32],"landlocked":true,"borders":["COD","KEN","RWA","SSD","TZA"],"area":241550,"flag":"🇺🇬","demonyms":{"eng":{"f":"Ugandan","m":"Ugandan"},"fra":{"f":"Ougandaise","m":"Ougandais"}}},{"name":{"common":"Ukraine","official":"Ukraine","native":{"ukr":{"official":"Україна","common":"Україна"}}},"tld":[".ua",".укр"],"cca2":"UA","ccn3":"804","cca3":"UKR","cioc":"UKR","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Eastern European Group","currencies":{"UAH":{"name":"Ukrainian hryvnia","symbol":"₴"}},"idd":{"root":"+3","suffixes":["80"]},"capital":["Kyiv"],"altSpellings":["UA","Ukrayina"],"region":"Europe","subregion":"Eastern Europe","languages":{"ukr":"Ukrainian"},"translations":{"ara":{"official":"أوكرانيا","common":"أوكرانيا"},"ces":{"official":"Ukrajina","common":"Ukrajina"},"deu":{"official":"Ukraine","common":"Ukraine"},"est":{"official":"Ukraina","common":"Ukraina"},"fin":{"official":"Ukraina","common":"Ukraina"},"fra":{"official":"Ukraine","common":"Ukraine"},"hrv":{"official":"Ukrajina","common":"Ukrajina"},"hun":{"official":"Ukrajna","common":"Ukrajna"},"ita":{"official":"Ucraina","common":"Ucraina"},"jpn":{"official":"ウクライナ","common":"ウクライナ"},"kor":{"official":"우크라이나","common":"우크라이나"},"nld":{"official":"Oekraïne","common":"Oekraïne"},"per":{"official":"اوکراین","common":"اوکراین"},"pol":{"official":"Ukraina","common":"Ukraina"},"por":{"official":"Ucrânia","common":"Ucrânia"},"rus":{"official":"Украина","common":"Украина"},"slk":{"official":"Ukrajina","common":"Ukrajina"},"spa":{"official":"Ucrania","common":"Ucrania"},"srp":{"official":"Ukrajina","common":"Ukrajina"},"swe":{"official":"Ukraina","common":"Ukraina"},"tur":{"official":"Ukrayna","common":"Ukrayna"},"urd":{"official":"یوکرین","common":"یوکرین"},"zho":{"official":"乌克兰","common":"乌克兰"}},"latlng":[49,32],"landlocked":false,"borders":["BLR","HUN","MDA","POL","ROU","RUS","SVK"],"area":603500,"flag":"🇺🇦","demonyms":{"eng":{"f":"Ukrainian","m":"Ukrainian"},"fra":{"f":"Ukrainienne","m":"Ukrainien"}}},{"name":{"common":"United States Minor Outlying Islands","official":"United States Minor Outlying Islands","native":{"eng":{"official":"United States Minor Outlying Islands","common":"United States Minor Outlying Islands"}}},"tld":[".us"],"cca2":"UM","ccn3":"581","cca3":"UMI","cioc":"","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"USD":{"name":"United States dollar","symbol":"$"}},"idd":{"root":"+2","suffixes":["68"]},"capital":[],"altSpellings":["UM"],"region":"Americas","subregion":"North America","languages":{"eng":"English"},"translations":{"ara":{"official":"جزر الولايات المتحدة الصغيرة النائية","common":"جزر الولايات المتحدة الصغيرة النائية"},"ces":{"official":"Menší odlehlé ostrovy Spojených států amerických","common":"Menší odlehlé ostrovy USA"},"deu":{"official":"USA, kleinere ausgelagerte Inseln","common":"Kleinere Inselbesitzungen der Vereinigten Staaten"},"est":{"official":"Ühendriikide väikesed hajasaared","common":"Ühendriikide hajasaared"},"fin":{"official":"Yhdysvaltain asumattomat saaret","common":"Yhdysvaltain asumattomat saaret"},"fra":{"official":"Îles mineures éloignées des États-Unis","common":"Îles mineures éloignées des États-Unis"},"hrv":{"official":"Mali udaljeni otoci SAD-a","common":"Mali udaljeni otoci SAD-a"},"hun":{"official":"Az Amerikai Egyesült Államok lakatlan külbirtokai","common":"Az Amerikai Egyesült Államok lakatlan külbirtokai"},"ita":{"official":"Stati Uniti Isole Minori","common":"Isole minori esterne degli Stati Uniti d'America"},"jpn":{"official":"米領小離島","common":"合衆国領有小離島"},"kor":{"official":"미국령 군소 제도","common":"미국령 군소 제도"},"nld":{"official":"Kleine afgelegen eilanden van de Verenigde Staten","common":"Kleine afgelegen eilanden van de Verenigde Staten"},"per":{"official":"جزایر کوچک حاشیه‌ای ایالات متحده آمریکا","common":"جزایر کوچک حاشیه‌ای ایالات متحده آمریکا"},"pol":{"official":"Dalekie Wyspy Mniejsze Stanów Zjednoczonych","common":"Dalekie Wyspy Mniejsze Stanów Zjednoczonych"},"por":{"official":"Estados Unidos Ilhas Menores Distantes","common":"Ilhas Menores Distantes dos Estados Unidos"},"rus":{"official":"Внешние малые острова США","common":"Внешние малые острова США"},"slk":{"official":"Menšie odľahlé ostrovy Spjoených štátov","common":"Menšie odľahlé ostrovy USA"},"spa":{"official":"Estados Unidos Islas menores alejadas de","common":"Islas Ultramarinas Menores de Estados Unidos"},"srp":{"official":"Mala udaljena ostrva Sjedinjenih Američkih Država","common":"Mala udaljena ostrva SAD-a"},"swe":{"official":"Förenta staternas mindre öar i Oceanien och Västindien","common":"Förenta staternas mindre öar i Oceanien och Västindien"},"tur":{"official":"Amerika Birleşik Devletleri Küçük Dış Adaları","common":"Amerika Birleşik Devletleri Küçük Dış Adaları"},"urd":{"official":"امریکی چھوٹے بیرونی جزائر","common":"امریکی چھوٹے بیرونی جزائر"},"zho":{"official":"美国本土外小岛屿","common":"美国本土外小岛屿"}},"latlng":[19.3,166.633333],"landlocked":false,"borders":[],"area":34.2,"flag":"🇺🇲","demonyms":{"eng":{"f":"American Islander","m":"American Islander"},"fra":{"f":"","m":""}}},{"name":{"common":"Uruguay","official":"Oriental Republic of Uruguay","native":{"spa":{"official":"República Oriental del Uruguay","common":"Uruguay"}}},"tld":[".uy"],"cca2":"UY","ccn3":"858","cca3":"URY","cioc":"URU","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Latin American and Caribbean Group","currencies":{"UYU":{"name":"Uruguayan peso","symbol":"$"}},"idd":{"root":"+5","suffixes":["98"]},"capital":["Montevideo"],"altSpellings":["UY","Oriental Republic of Uruguay","República Oriental del Uruguay"],"region":"Americas","subregion":"South America","languages":{"spa":"Spanish"},"translations":{"ara":{"official":"جمهورية الأوروغواي الشرقية","common":"الأوروغواي"},"ces":{"official":"Uruguayská východní republika","common":"Uruguay"},"deu":{"official":"Republik Östlich des Uruguay","common":"Uruguay"},"est":{"official":"Uruguay Idavabariik","common":"Uruguay"},"fin":{"official":"Uruguayn itäinen tasavalta","common":"Uruguay"},"fra":{"official":"République orientale de l'Uruguay","common":"Uruguay"},"hrv":{"official":"Orijentalna Republika Urugvaj","common":"Urugvaj"},"hun":{"official":"Uruguayi Keleti Köztársaság","common":"Uruguay"},"ita":{"official":"Repubblica Orientale dell'Uruguay","common":"Uruguay"},"jpn":{"official":"ウルグアイ東方共和国","common":"ウルグアイ"},"kor":{"official":"우루과이 동방 공화국","common":"우루과이"},"nld":{"official":"Oosterse Republiek Uruguay","common":"Uruguay"},"per":{"official":"جمهوری اروگوئه","common":"اروگوئه"},"pol":{"official":"Wschodnia Republika Urugwaju","common":"Urugwaj"},"por":{"official":"República Oriental do Uruguai","common":"Uruguai"},"rus":{"official":"Восточной Республики Уругвай","common":"Уругвай"},"slk":{"official":"Uruguajská východná republika","common":"Uruguaj"},"spa":{"official":"República Oriental del Uruguay","common":"Uruguay"},"srp":{"official":"Istočna Republika Urugvaj","common":"Urugvaj"},"swe":{"official":"Republiken Uruguay","common":"Uruguay"},"tur":{"official":"Uruguay Doğu Cumhuriyeti","common":"Uruguay"},"urd":{"official":"جمہوریہ شرقیہ یوراگوئے","common":"یوراگوئے"},"zho":{"official":"乌拉圭东岸共和国","common":"乌拉圭"}},"latlng":[-33,-56],"landlocked":false,"borders":["ARG","BRA"],"area":181034,"flag":"🇺🇾","demonyms":{"eng":{"f":"Uruguayan","m":"Uruguayan"},"fra":{"f":"Uruguayenne","m":"Uruguayen"}}},{"name":{"common":"United States","official":"United States of America","native":{"eng":{"official":"United States of America","common":"United States"}}},"tld":[".us"],"cca2":"US","ccn3":"840","cca3":"USA","cioc":"USA","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Western European and Others Group","currencies":{"USD":{"name":"United States dollar","symbol":"$"}},"idd":{"root":"+1","suffixes":["201","202","203","205","206","207","208","209","210","212","213","214","215","216","217","218","219","220","223","224","225","227","228","229","231","234","239","240","248","251","252","253","254","256","260","262","267","269","270","272","274","276","279","281","283","301","302","303","304","305","307","308","309","310","312","313","314","315","316","317","318","319","320","321","323","325","326","327","330","331","332","334","336","337","339","341","346","347","351","352","360","361","364","380","385","386","401","402","404","405","406","407","408","409","410","412","413","414","415","417","419","423","424","425","430","432","434","435","440","442","443","445","447","448","458","463","464","469","470","475","478","479","480","484","500","501","502","503","504","505","507","508","509","510","512","513","515","516","517","518","520","521","522","523","524","525","526","527","528","529","530","531","532","533","534","535","538","539","540","541","542","543","544","545","546","547","549","550","551","552","553","554","556","557","558","559","561","562","563","564","566","567","569","570","571","572","573","574","575","577","578","580","582","585","586","588","589","601","602","603","605","606","607","608","609","610","612","614","615","616","617","618","619","620","623","626","628","629","630","631","636","640","641","646","650","651","656","657","659","660","661","662","667","669","678","679","680","681","682","689","700","701","702","703","704","706","707","708","710","712","713","714","715","716","717","718","719","720","724","725","726","727","730","731","732","734","737","740","743","747","754","757","760","762","763","765","769","770","771","772","773","774","775","779","781","785","786","801","802","803","804","805","806","808","810","812","813","814","815","816","817","818","820","826","828","830","831","832","838","839","840","843","845","847","848","850","854","856","857","858","859","860","862","863","864","865","870","872","878","901","903","904","906","907","908","909","910","912","913","914","915","916","917","918","919","920","925","928","929","930","931","934","936","937","938","940","941","943","945","947","948","949","951","952","954","956","959","970","971","972","973","975","978","979","980","983","984","985","986","989"]},"capital":["Washington D.C."],"altSpellings":["US","USA","United States of America"],"region":"Americas","subregion":"North America","languages":{"eng":"English"},"translations":{"ara":{"official":"الولايات المتحدة الامريكية","common":"الولايات المتحدة"},"ces":{"official":"Spojené státy americké","common":"Spojené státy"},"deu":{"official":"Vereinigte Staaten von Amerika","common":"Vereinigte Staaten"},"est":{"official":"Ameerika Ühendriigid","common":"Ameerika Ühendriigid"},"fin":{"official":"Amerikan yhdysvallat","common":"Yhdysvallat"},"fra":{"official":"Les états-unis d'Amérique","common":"États-Unis"},"hrv":{"official":"Sjedinjene Države Amerike","common":"Sjedinjene Američke Države"},"hun":{"official":"Amerikai Egyesült Államok","common":"Amerikai Egyesült Államok"},"ita":{"official":"Stati Uniti d'America","common":"Stati Uniti d'America"},"jpn":{"official":"アメリカ合衆国","common":"アメリカ"},"kor":{"official":"아메리카 합중국","common":"미국"},"nld":{"official":"Verenigde Staten van Amerika","common":"Verenigde Staten"},"per":{"official":"ایالات متحده آمریکا","common":"ایالات متحده آمریکا"},"pol":{"official":"Stany Zjednoczone Ameryki","common":"Stany Zjednoczone"},"por":{"official":"Estados Unidos da América","common":"Estados Unidos"},"rus":{"official":"Соединенные Штаты Америки","common":"Соединённые Штаты Америки"},"slk":{"official":"Spojené štáty Americké","common":"Spojené štáty americké"},"spa":{"official":"Estados Unidos de América","common":"Estados Unidos"},"srp":{"official":"Sjedinjene Američke Države","common":"SAD"},"swe":{"official":"Amerikas förenta stater","common":"USA"},"tur":{"official":"Amerika Birleşik Devletleri","common":"Amerika Birleşik Devletleri"},"urd":{"official":"ریاستہائے متحدہ امریکا","common":"ریاستہائے متحدہ"},"zho":{"official":"美利坚合众国","common":"美国"}},"latlng":[38,-97],"landlocked":false,"borders":["CAN","MEX"],"area":9372610,"flag":"🇺🇸","demonyms":{"eng":{"f":"American","m":"American"},"fra":{"f":"Américaine","m":"Américain"}}},{"name":{"common":"Uzbekistan","official":"Republic of Uzbekistan","native":{"rus":{"official":"Республика Узбекистан","common":"Узбекистан"},"uzb":{"official":"O'zbekiston Respublikasi","common":"O‘zbekiston"}}},"tld":[".uz"],"cca2":"UZ","ccn3":"860","cca3":"UZB","cioc":"UZB","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"UZS":{"name":"Uzbekistani soʻm","symbol":"so'm"}},"idd":{"root":"+9","suffixes":["98"]},"capital":["Tashkent"],"altSpellings":["UZ","Republic of Uzbekistan","O‘zbekiston Respublikasi","Ўзбекистон Республикаси"],"region":"Asia","subregion":"Central Asia","languages":{"rus":"Russian","uzb":"Uzbek"},"translations":{"ara":{"official":"جمهورية أوزباكستان","common":"أوزباكستان"},"ces":{"official":"Republika Uzbekistán","common":"Uzbekistán"},"deu":{"official":"Republik Usbekistan","common":"Usbekistan"},"est":{"official":"Usbekistani Vabariik","common":"Usbekistan"},"fin":{"official":"Uzbekistanin tasavalta","common":"Uzbekistan"},"fra":{"official":"République d'Ouzbékistan","common":"Ouzbékistan"},"hrv":{"official":"Republika Uzbekistan","common":"Uzbekistan"},"hun":{"official":"Üzbég Köztársaság","common":"Üzbegisztán"},"ita":{"official":"Repubblica di Uzbekistan","common":"Uzbekistan"},"jpn":{"official":"ウズベキスタン共和国","common":"ウズベキスタン"},"kor":{"official":"우즈베키스탄 공화국","common":"우즈베키스탄"},"nld":{"official":"Republiek Oezbekistan","common":"Oezbekistan"},"per":{"official":"جمهوری ازبکستان","common":"ازبکستان"},"pol":{"official":"Republika Uzbekistanu","common":"Uzbekistan"},"por":{"official":"República do Usbequistão","common":"Uzbequistão"},"rus":{"official":"Республика Узбекистан","common":"Узбекистан"},"slk":{"official":"Uzbecká republika","common":"Uzbekistan"},"spa":{"official":"República de Uzbekistán","common":"Uzbekistán"},"srp":{"official":"Republika Uzbekistan","common":"Uzbekistan"},"swe":{"official":"Republiken Uzbekistan","common":"Uzbekistan"},"tur":{"official":"özbekistan Cumhuriyeti","common":"özbekistan"},"urd":{"official":"جمہوریہ ازبکستان","common":"ازبکستان"},"zho":{"official":"乌兹别克斯坦共和国","common":"乌兹别克斯坦"}},"latlng":[41,64],"landlocked":true,"borders":["AFG","KAZ","KGZ","TJK","TKM"],"area":447400,"flag":"🇺🇿","demonyms":{"eng":{"f":"Uzbekistani","m":"Uzbekistani"},"fra":{"f":"Ouzbèke","m":"Ouzbèke"}}},{"name":{"common":"Vatican City","official":"Vatican City State","native":{"ita":{"official":"Stato della Città del Vaticano","common":"Vaticano"},"lat":{"official":"Status Civitatis Vaticanæ","common":"Vaticanæ"}}},"tld":[".va"],"cca2":"VA","ccn3":"336","cca3":"VAT","cioc":"","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"","currencies":{"EUR":{"name":"Euro","symbol":"€"}},"idd":{"root":"+3","suffixes":["906698","79"]},"capital":["Vatican City"],"altSpellings":["VA","Holy See (Vatican City State)","Vatican City State","Vatican","Stato della Città del Vaticano"],"region":"Europe","subregion":"Southern Europe","languages":{"ita":"Italian","lat":"Latin"},"translations":{"ara":{"official":"دولة مدينة الفاتيكان","common":"مدينة الفاتيكان"},"ces":{"official":"Městský stát Vatikán","common":"Vatikán"},"deu":{"official":"Staat Vatikanstadt","common":"Vatikanstadt"},"est":{"official":"Vatikani Linnriik","common":"Vatikan"},"fin":{"official":"Vatikaanin kaupunkivaltio","common":"Vatikaani"},"fra":{"official":"Cité du Vatican","common":"Cité du Vatican"},"hrv":{"official":"Vatikan","common":"Vatikan"},"hun":{"official":"Vatikán Állam","common":"Vatikán"},"ita":{"official":"Città del Vaticano","common":"Città del Vaticano"},"jpn":{"official":"バチカン市国","common":"バチカン"},"kor":{"official":"바티칸 시국","common":"바티칸"},"nld":{"official":"Vaticaanstad","common":"Vaticaanstad"},"per":{"official":"دولت‌شهر واتیکان","common":"واتیکان"},"pol":{"official":"Państwo Watykańskie","common":"Watykan"},"por":{"official":"Cidade do Vaticano","common":"Cidade do Vaticano"},"rus":{"official":"Город-государство Ватикан","common":"Ватикан"},"slk":{"official":"Svätá stolica (Vatikánsky mestský štát","common":"Vatikán"},"spa":{"official":"Ciudad del Vaticano","common":"Ciudad del Vaticano"},"srp":{"official":"Sveta Stolica","common":"Vatikan"},"swe":{"official":"Vatikanstaten","common":"Vatikanstaten"},"tur":{"official":"Vatikan şehir Devleti","common":"Vatikan"},"urd":{"official":"ویٹیکن سٹی","common":"ویٹیکن سٹی"},"zho":{"official":"梵蒂冈城国","common":"梵蒂冈"}},"latlng":[41.9,12.45],"landlocked":true,"borders":["ITA"],"area":0.44,"flag":"🇻🇦","demonyms":{"eng":{"f":"Vatican","m":"Vatican"},"fra":{"f":"Vaticane","m":"Vatican"}}},{"name":{"common":"Saint Vincent and the Grenadines","official":"Saint Vincent and the Grenadines","native":{"eng":{"official":"Saint Vincent and the Grenadines","common":"Saint Vincent and the Grenadines"}}},"tld":[".vc"],"cca2":"VC","ccn3":"670","cca3":"VCT","cioc":"VIN","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Latin American and Caribbean Group","currencies":{"XCD":{"name":"Eastern Caribbean dollar","symbol":"$"}},"idd":{"root":"+1","suffixes":["784"]},"capital":["Kingstown"],"altSpellings":["VC"],"region":"Americas","subregion":"Caribbean","languages":{"eng":"English"},"translations":{"ara":{"official":"سانت فينسنت والغرينادين","common":"سانت فينسنت والغرينادين"},"ces":{"official":"Svatý Vincenc a Grenadiny","common":"Svatý Vincenc a Grenadiny"},"deu":{"official":"St. Vincent und die Grenadinen","common":"St. Vincent und die Grenadinen"},"est":{"official":"Saint Vincent ja Grenadiinid","common":"Saint Vincent"},"fin":{"official":"Saint Vincent ja Grenadiinit","common":"Saint Vincent ja Grenadiinit"},"fra":{"official":"Saint-Vincent-et-les Grenadines","common":"Saint-Vincent-et-les-Grenadines"},"hrv":{"official":"Sveti Vincent i Grenadini","common":"Sveti Vincent i Grenadini"},"hun":{"official":"Saint Vincent és a Grenadine-szigetek","common":"Saint Vincent és a Grenadine-szigetek"},"ita":{"official":"Saint Vincent e Grenadine","common":"Saint Vincent e Grenadine"},"jpn":{"official":"セントビンセント・グレナディーン諸島","common":"セントビンセント・グレナディーン"},"kor":{"official":"세인트빈센트 그레나딘","common":"세인트빈센트 그레나딘"},"nld":{"official":"Saint Vincent en de Grenadines","common":"Saint Vincent en de Grenadines"},"per":{"official":"سنت وینسنت و گرنادین‌ها","common":"سنت وینسنت و گرنادین‌ها"},"pol":{"official":"Saint Vincent i Grenadyny","common":"Saint Vincent i Grenadyny"},"por":{"official":"São Vicente e Granadinas","common":"São Vincente e Granadinas"},"rus":{"official":"Сент-Винсент и Гренадины","common":"Сент-Винсент и Гренадины"},"slk":{"official":"Svätý Vincent a Grenadíny","common":"Svätý Vincent a Grenadíny"},"spa":{"official":"San Vicente y las Granadinas","common":"San Vicente y Granadinas"},"srp":{"official":"Sent Vinsent i Grenadini","common":"Sveti Vinsent i Grenadini"},"swe":{"official":"Saint Vincent och Grenadinerna","common":"Saint Vincent och Grenadinerna"},"tur":{"official":"Saint Vincent ve Grenadinler","common":"Saint Vincent ve Grenadinler"},"urd":{"official":"سینٹ وینسینٹ و گریناڈائنز","common":"سینٹ وینسینٹ و گریناڈائنز"},"zho":{"official":"圣文森特和格林纳丁斯","common":"圣文森特和格林纳丁斯"}},"latlng":[13.25,-61.2],"landlocked":false,"borders":[],"area":389,"flag":"🇻🇨","demonyms":{"eng":{"f":"Saint Vincentian","m":"Saint Vincentian"},"fra":{"f":"Vincentaise","m":"Vincentais"}}},{"name":{"common":"Venezuela","official":"Bolivarian Republic of Venezuela","native":{"spa":{"official":"República Bolivariana de Venezuela","common":"Venezuela"}}},"tld":[".ve"],"cca2":"VE","ccn3":"862","cca3":"VEN","cioc":"VEN","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Latin American and Caribbean Group","currencies":{"VES":{"name":"Venezuelan bolívar soberano","symbol":"Bs.S."}},"idd":{"root":"+5","suffixes":["8"]},"capital":["Caracas"],"altSpellings":["VE","Bolivarian Republic of Venezuela","Venezuela, Bolivarian Republic of","República Bolivariana de Venezuela"],"region":"Americas","subregion":"South America","languages":{"spa":"Spanish"},"translations":{"ara":{"official":"جمهورية فنزويلا البوليفارية","common":"فنزويلا"},"ces":{"official":"Bolívarská republika Venezuela","common":"Venezuela"},"deu":{"official":"Bolivarische Republik Venezuela","common":"Venezuela"},"est":{"official":"Venezuela Bolívari Vabariik","common":"Venezuela"},"fin":{"official":"Venezuelan bolivariaainen tasavalta","common":"Venezuela"},"fra":{"official":"République bolivarienne du Venezuela","common":"Venezuela"},"hrv":{"official":"BOLIVARIJANSKA Republika Venezuela","common":"Venezuela"},"hun":{"official":"Venezuelai Bolivári Köztársaság","common":"Venezuela"},"ita":{"official":"Repubblica Bolivariana del Venezuela","common":"Venezuela"},"jpn":{"official":"ベネズエラ・ボリバル共和国","common":"ベネズエラ"},"kor":{"official":"베네수엘라 볼리바르 공화국","common":"베네수엘라"},"nld":{"official":"Bolivariaanse Republiek Venezuela","common":"Venezuela"},"per":{"official":"جمهوری بولیواری ونزوئلا","common":"ونزوئلا"},"pol":{"official":"Boliwariańska Republika Wenezueli","common":"Wenezuela"},"por":{"official":"República Bolivariana da Venezuela","common":"Venezuela"},"rus":{"official":"Боливарианская Республика Венесуэла","common":"Венесуэла"},"slk":{"official":"Venezuelská bolívarovská republika","common":"Venezuela"},"spa":{"official":"República Bolivariana de Venezuela","common":"Venezuela"},"srp":{"official":"Bolivarska Republika Venecuela","common":"Venecuela"},"swe":{"official":"Bolivarianska republiken Venezuela","common":"Venezuela"},"tur":{"official":"Bolivarcı Venezuela Cumhuriyeti","common":"Venezuela"},"urd":{"official":"جمہوریہ وینیزویلا","common":"وینیزویلا"},"zho":{"official":"委内瑞拉玻利瓦尔共和国","common":"委内瑞拉"}},"latlng":[8,-66],"landlocked":false,"borders":["BRA","COL","GUY"],"area":916445,"flag":"🇻🇪","demonyms":{"eng":{"f":"Venezuelan","m":"Venezuelan"},"fra":{"f":"Vénézuélienne","m":"Vénézuélien"}}},{"name":{"common":"British Virgin Islands","official":"Virgin Islands","native":{"eng":{"official":"Virgin Islands","common":"British Virgin Islands"}}},"tld":[".vg"],"cca2":"VG","ccn3":"092","cca3":"VGB","cioc":"IVB","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"USD":{"name":"United States dollar","symbol":"$"}},"idd":{"root":"+1","suffixes":["284"]},"capital":["Road Town"],"altSpellings":["VG","Virgin Islands, British"],"region":"Americas","subregion":"Caribbean","languages":{"eng":"English"},"translations":{"ara":{"official":"جزر العذراء البريطانية","common":"جزر العذراء"},"ces":{"official":"Britské Panenské ostrovy","common":"Britské Panenské ostrovy"},"deu":{"official":"Jungferninseln","common":"Britische Jungferninseln"},"est":{"official":"Neitsisaared","common":"Briti Neitsisaared"},"fin":{"official":"Brittiläiset Neitsytsaaret","common":"Neitsytsaaret"},"fra":{"official":"îles Vierges","common":"Îles Vierges britanniques"},"hrv":{"official":"Djevičanski Otoci","common":"Britanski Djevičanski Otoci"},"hun":{"official":"Brit Virgin-szigetek","common":"Brit Virgin-szigetek"},"ita":{"official":"Isole Vergini","common":"Isole Vergini Britanniche"},"jpn":{"official":"英領ヴァージン諸島","common":"イギリス領ヴァージン諸島"},"kor":{"official":"영국령 버진아일랜드","common":"영국령 버진아일랜드"},"nld":{"official":"Maagdeneilanden","common":"Britse Maagdeneilanden"},"per":{"official":"جزایر ویرجین بریتانیا","common":"جزایر ویرجین بریتانیا"},"pol":{"official":"Brytyjskie Wyspy Dziewicze","common":"Brytyjskie Wyspy Dziewicze"},"por":{"official":"Ilhas Virgens","common":"Ilhas Virgens"},"rus":{"official":"Виргинские острова","common":"Британские Виргинские острова"},"slk":{"official":"Panenské ostrovy","common":"Panenské ostrovy"},"spa":{"official":"Islas Vírgenes","common":"Islas Vírgenes del Reino Unido"},"srp":{"official":"Devičanska Ostrva","common":"Britanska Devičanska Ostrva"},"swe":{"official":"Brittiska Jungfruöarna","common":"Brittiska Jungfruöarna"},"tur":{"official":"Virjin Adaları","common":"Virjin Adaları"},"urd":{"official":"برطانوی جزائر ورجن","common":"برطانوی جزائر ورجن"},"zho":{"official":"英属维尔京群岛","common":"英属维尔京群岛"}},"latlng":[18.431383,-64.62305],"landlocked":false,"borders":[],"area":151,"flag":"🇻🇬","demonyms":{"eng":{"f":"Virgin Islander","m":"Virgin Islander"},"fra":{"f":"","m":""}}},{"name":{"common":"United States Virgin Islands","official":"Virgin Islands of the United States","native":{"eng":{"official":"Virgin Islands of the United States","common":"United States Virgin Islands"}}},"tld":[".vi"],"cca2":"VI","ccn3":"850","cca3":"VIR","cioc":"ISV","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"USD":{"name":"United States dollar","symbol":"$"}},"idd":{"root":"+1","suffixes":["340"]},"capital":["Charlotte Amalie"],"altSpellings":["VI","Virgin Islands, U.S."],"region":"Americas","subregion":"Caribbean","languages":{"eng":"English"},"translations":{"ara":{"official":"جزر العذراء الامريكية","common":"جزر العذراء الامريكية"},"ces":{"official":"Americké Panenské ostrovy","common":"Americké Panenské ostrovy"},"deu":{"official":"Amerikanische Jungferninseln","common":"Amerikanische Jungferninseln"},"est":{"official":"Ühendriikide Neitsisaared","common":"Neitsisaared, USA"},"fin":{"official":"Yhdysvaltain Neitsytsaaret","common":"Neitsytsaaret"},"fra":{"official":"Îles Vierges des États-Unis","common":"Îles Vierges des États-Unis"},"hrv":{"official":"Djevičanski Otoci SAD","common":"Američki Djevičanski Otoci"},"hun":{"official":"Amerikai Virgin-szigetek","common":"Amerikai Virgin-szigetek"},"ita":{"official":"Isole Vergini degli Stati Uniti","common":"Isole Vergini americane"},"jpn":{"official":"米領ヴァージン諸島","common":"アメリカ領ヴァージン諸島"},"kor":{"official":"미국령 버진아일랜드","common":"미국령 버진아일랜드"},"nld":{"official":"Maagdeneilanden van de Verenigde Staten","common":"Amerikaanse Maagdeneilanden"},"per":{"official":"جزایر ویرجین ایالات متحده آمریکا","common":"جزایر ویرجین ایالات متحده آمریکا"},"pol":{"official":"Wyspy Dziewicze Stanów Zjednoczonych","common":"Wyspy Dziewicze Stanów Zjednoczonych"},"por":{"official":"Ilhas Virgens dos Estados Unidos","common":"Ilhas Virgens dos Estados Unidos"},"rus":{"official":"Виргинские острова Соединенных Штатов","common":"Виргинские Острова"},"slk":{"official":"Americké Panenské ostrovy","common":"Americké Panenské ostrovy"},"spa":{"official":"Islas Vírgenes de los Estados Unidos","common":"Islas Vírgenes de los Estados Unidos"},"srp":{"official":"Devičanska Ostrva Amerike","common":"Američka Devičanska Ostrva"},"swe":{"official":"Amerikanska Jungfruöarna","common":"Amerikanska Jungfruöarna"},"tur":{"official":"Amerika Birleşik Devletleri Virjin Adaları","common":"ABD Virjin Adaları"},"urd":{"official":"امریکی جزائر ورجن","common":"امریکی جزائر ورجن"},"zho":{"official":"美属维尔京群岛","common":"美属维尔京群岛"}},"latlng":[18.35,-64.933333],"landlocked":false,"borders":[],"area":347,"flag":"🇻🇮","demonyms":{"eng":{"f":"Virgin Islander","m":"Virgin Islander"},"fra":{"f":"","m":""}}},{"name":{"common":"Vietnam","official":"Socialist Republic of Vietnam","native":{"vie":{"official":"Cộng hòa xã hội chủ nghĩa Việt Nam","common":"Việt Nam"}}},"tld":[".vn"],"cca2":"VN","ccn3":"704","cca3":"VNM","cioc":"VIE","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"VND":{"name":"Vietnamese đồng","symbol":"₫"}},"idd":{"root":"+8","suffixes":["4"]},"capital":["Hanoi"],"altSpellings":["VN","Socialist Republic of Vietnam","Cộng hòa Xã hội chủ nghĩa Việt Nam","Viet Nam"],"region":"Asia","subregion":"South-Eastern Asia","languages":{"vie":"Vietnamese"},"translations":{"ara":{"official":"جمهورية فيتنام الاشتراكية","common":"فيتنام"},"ces":{"official":"Vietnamská socialistická republika","common":"Vietnam"},"deu":{"official":"Sozialistische Republik Vietnam","common":"Vietnam"},"est":{"official":"Vietnami Sotsialistlik Vabariik","common":"Vietnam"},"fin":{"official":"Vietnamin sosialistinen tasavalta","common":"Vietnam"},"fra":{"official":"République socialiste du Viêt Nam","common":"Viêt Nam"},"hrv":{"official":"Socijalistička Republika Vijetnam","common":"Vijetnam"},"hun":{"official":"Vietnámi Szocialista Köztársaság","common":"Vietnám"},"ita":{"official":"Repubblica socialista del Vietnam","common":"Vietnam"},"jpn":{"official":"ベトナム社会主義共和国","common":"ベトナム"},"kor":{"official":"베트남 사회주의 공화국","common":"베트남"},"nld":{"official":"Socialistische Republiek Vietnam","common":"Vietnam"},"per":{"official":"جمهوری سوسیالیستی ویتنام","common":"ویتنام"},"pol":{"official":"Socjalistyczna Republika Wietnamu","common":"Wietnam"},"por":{"official":"República Socialista do Vietname","common":"Vietname"},"rus":{"official":"Социалистическая Республика Вьетнам","common":"Вьетнам"},"slk":{"official":"Vietnamská socialistická republika","common":"Vietnam"},"spa":{"official":"República Socialista de Vietnam","common":"Vietnam"},"srp":{"official":"Socijalistička Republika Vijetnam","common":"Vijetnam"},"swe":{"official":"Socialistiska republiken Vietnam","common":"Vietnam"},"tur":{"official":"Vietnam Sosyalist Cumhuriyeti","common":"Vietnam"},"urd":{"official":"اشتراکی جمہوریہ ویتنام","common":"ویتنام"},"zho":{"official":"越南社会主义共和国","common":"越南"}},"latlng":[16.16666666,107.83333333],"landlocked":false,"borders":["KHM","CHN","LAO"],"area":331212,"flag":"🇻🇳","demonyms":{"eng":{"f":"Vietnamese","m":"Vietnamese"},"fra":{"f":"Vietnamienne","m":"Vietnamien"}}},{"name":{"common":"Vanuatu","official":"Republic of Vanuatu","native":{"bis":{"official":"Ripablik blong Vanuatu","common":"Vanuatu"},"eng":{"official":"Republic of Vanuatu","common":"Vanuatu"},"fra":{"official":"République de Vanuatu","common":"Vanuatu"}}},"tld":[".vu"],"cca2":"VU","ccn3":"548","cca3":"VUT","cioc":"VAN","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"VUV":{"name":"Vanuatu vatu","symbol":"Vt"}},"idd":{"root":"+6","suffixes":["78"]},"capital":["Port Vila"],"altSpellings":["VU","Republic of Vanuatu","Ripablik blong Vanuatu","République de Vanuatu"],"region":"Oceania","subregion":"Melanesia","languages":{"bis":"Bislama","eng":"English","fra":"French"},"translations":{"ara":{"official":"جمهورية فانواتو","common":"فانواتو"},"ces":{"official":"Republika Vanuatu","common":"Vanuatu"},"deu":{"official":"Vanuatu","common":"Vanuatu"},"est":{"official":"Vanuatu Vabariik","common":"Vanuatu"},"fin":{"official":"Vanuatun tasavalta","common":"Vanuatu"},"fra":{"official":"République de Vanuatu","common":"Vanuatu"},"hrv":{"official":"Republika Vanuatu","common":"Vanuatu"},"hun":{"official":"Vanuatui Köztársaság","common":"Vanuatu"},"ita":{"official":"Repubblica di Vanuatu","common":"Vanuatu"},"jpn":{"official":"バヌアツ共和国","common":"バヌアツ"},"kor":{"official":"바누아투 공화국","common":"바누아투"},"nld":{"official":"Republiek Vanuatu","common":"Vanuatu"},"per":{"official":"جمهوری وانواتو","common":"وانواتو"},"pol":{"official":"Republika Vanuatu","common":"Vanuatu"},"por":{"official":"República de Vanuatu","common":"Vanuatu"},"rus":{"official":"Республика Вануату","common":"Вануату"},"slk":{"official":"Vanuatská republika","common":"Vanuatu"},"spa":{"official":"República de Vanuatu","common":"Vanuatu"},"srp":{"official":"Republika Vanuatu","common":"Vanuatu"},"swe":{"official":"Republiken Vanuatu","common":"Vanuatu"},"tur":{"official":"Vanuatu Cumhuriyeti","common":"Vanuatu"},"urd":{"official":"جمہوریہ وانواتو","common":"وانواتو"},"zho":{"official":"瓦努阿图共和国","common":"瓦努阿图"}},"latlng":[-16,167],"landlocked":false,"borders":[],"area":12189,"flag":"🇻🇺","demonyms":{"eng":{"f":"Ni-Vanuatu","m":"Ni-Vanuatu"},"fra":{"f":"Vanuatuane","m":"Vanuatuan"}}},{"name":{"common":"Wallis and Futuna","official":"Territory of the Wallis and Futuna Islands","native":{"fra":{"official":"Territoire des îles Wallis et Futuna","common":"Wallis et Futuna"}}},"tld":[".wf"],"cca2":"WF","ccn3":"876","cca3":"WLF","cioc":"","independent":false,"status":"officially-assigned","unMember":false,"unRegionalGroup":"","currencies":{"XPF":{"name":"CFP franc","symbol":"₣"}},"idd":{"root":"+6","suffixes":["81"]},"capital":["Mata-Utu"],"altSpellings":["WF","Territory of the Wallis and Futuna Islands","Territoire des îles Wallis et Futuna"],"region":"Oceania","subregion":"Polynesia","languages":{"fra":"French"},"translations":{"ara":{"official":"إقليم جزر واليس وفوتونا","common":"واليس وفوتونا"},"ces":{"official":"Teritorium ostrovů Wallis a Futuna","common":"Wallis a Futuna"},"deu":{"official":"Gebiet der Wallis und Futuna","common":"Wallis und Futuna"},"est":{"official":"Wallise ja Futuna ala","common":"Wallis ja Futuna"},"fin":{"official":"Wallisin ja Futunan yhteisö","common":"Wallis ja Futuna"},"fra":{"official":"Territoire des îles Wallis et Futuna","common":"Wallis-et-Futuna"},"hrv":{"official":"Teritoriju Wallis i Futuna","common":"Wallis i Fortuna"},"hun":{"official":"Wallis és Futuna","common":"Wallis és Futuna"},"ita":{"official":"Territorio delle Isole Wallis e Futuna","common":"Wallis e Futuna"},"jpn":{"official":"ワリス・フテュナ諸島","common":"ウォリス・フツナ"},"kor":{"official":"왈리스 퓌튀나","common":"왈리스 퓌튀나"},"nld":{"official":"Grondgebied van de Wallis en Futuna","common":"Wallis en Futuna"},"per":{"official":"جزایر والیس و فوتونا","common":"والیس و فوتونا"},"pol":{"official":"Terytorium Wysp Wallis i Futuna","common":"Wallis i Futuna"},"por":{"official":"Território das Ilhas Wallis e Futuna","common":"Wallis e Futuna"},"rus":{"official":"Территория Уоллис и Футуна острова","common":"Уоллис и Футуна"},"slk":{"official":"Teritórium ostrovov Wallis a Futuna","common":"Wallis a Futuna"},"spa":{"official":"Territorio de las Islas Wallis y Futuna","common":"Wallis y Futuna"},"srp":{"official":"Teritorija ostrva Valis i Futuna","common":"Valis i Futuna ostrva"},"swe":{"official":"Territoriet Wallis- och Futunaöarna","common":"Wallis- och Futunaöarna"},"tur":{"official":"Wallis ve Futuna Adaları Bölgesi","common":"Wallis ve Futuna Adaları Bölgesi"},"urd":{"official":"سر زمینِ والس و فتونہ جزائر","common":"والس و فتونہ"},"zho":{"official":"瓦利斯和富图纳群岛","common":"瓦利斯和富图纳群岛"}},"latlng":[-13.3,-176.2],"landlocked":false,"borders":[],"area":142,"flag":"🇼🇫","demonyms":{"eng":{"f":"Wallis and Futuna Islander","m":"Wallis and Futuna Islander"},"fra":{"f":"","m":""}}},{"name":{"common":"Samoa","official":"Independent State of Samoa","native":{"eng":{"official":"Independent State of Samoa","common":"Samoa"},"smo":{"official":"Malo Saʻoloto Tutoʻatasi o Sāmoa","common":"Sāmoa"}}},"tld":[".ws"],"cca2":"WS","ccn3":"882","cca3":"WSM","cioc":"SAM","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"WST":{"name":"Samoan tālā","symbol":"T"}},"idd":{"root":"+6","suffixes":["85"]},"capital":["Apia"],"altSpellings":["WS","Independent State of Samoa","Malo Saʻoloto Tutoʻatasi o Sāmoa"],"region":"Oceania","subregion":"Polynesia","languages":{"eng":"English","smo":"Samoan"},"translations":{"ara":{"official":"دولة ساموا المستقلة","common":"ساموا"},"ces":{"official":"Nezávislý stát Samoa","common":"Samoa"},"deu":{"official":"Unabhängige Staat Samoa","common":"Samoa"},"est":{"official":"Samoa Iseseisvusriik","common":"Samoa"},"fin":{"official":"Samoan itsenäinen valtio","common":"Samoa"},"fra":{"official":"Samoa","common":"Samoa"},"hrv":{"official":"Nezavisna Država Samoa","common":"Samoa"},"hun":{"official":"Szamoai Független Állam","common":"Szamoa"},"ita":{"official":"Stato indipendente di Samoa","common":"Samoa"},"jpn":{"official":"サモア独立国","common":"サモア"},"kor":{"official":"사모아 독립국","common":"사모아"},"nld":{"official":"Onafhankelijke Staat Samoa","common":"Samoa"},"per":{"official":"ایالت مستقل ساموآ","common":"ساموآ"},"pol":{"official":"Niezależne Państwo Samoa","common":"Samoa"},"por":{"official":"Estado Independente de Samoa","common":"Samoa"},"rus":{"official":"Независимое Государство Самоа","common":"Самоа"},"slk":{"official":"Nezávislý štátSamoa","common":"Samoa"},"spa":{"official":"Estado Independiente de Samoa","common":"Samoa"},"srp":{"official":"Nezavisna Država Samoa","common":"Samoa"},"swe":{"official":"Självständiga staten Samoa","common":"Samoa"},"tur":{"official":"Bağımsız Samoa Devleti","common":"Bağımsız Samoa Devleti"},"urd":{"official":"آزاد سلطنتِ ساموا","common":"سامووا"},"zho":{"official":"萨摩亚独立国","common":"萨摩亚"}},"latlng":[-13.58333333,-172.33333333],"landlocked":false,"borders":[],"area":2842,"flag":"🇼🇸","demonyms":{"eng":{"f":"Samoan","m":"Samoan"},"fra":{"f":"Samoane","m":"Samoan"}}},{"name":{"common":"Yemen","official":"Republic of Yemen","native":{"ara":{"official":"الجمهورية اليمنية","common":"اليمن"}}},"tld":[".ye"],"cca2":"YE","ccn3":"887","cca3":"YEM","cioc":"YEM","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"Asia and the Pacific Group","currencies":{"YER":{"name":"Yemeni rial","symbol":"﷼"}},"idd":{"root":"+9","suffixes":["67"]},"capital":["Sana'a"],"altSpellings":["YE","Yemeni Republic","al-Jumhūriyyah al-Yamaniyyah"],"region":"Asia","subregion":"Western Asia","languages":{"ara":"Arabic"},"translations":{"ara":{"official":"الجمهورية اليمنية","common":"اليمن"},"ces":{"official":"Jemenská republika","common":"Jemen"},"deu":{"official":"Republik Jemen","common":"Jemen"},"est":{"official":"Jeemeni Vabariik","common":"Jeemen"},"fin":{"official":"Jemenin tasavalta","common":"Jemen"},"fra":{"official":"République du Yémen","common":"Yémen"},"hrv":{"official":"Republika Jemen","common":"Jemen"},"hun":{"official":"Jemeni Köztársaság","common":"Jemen"},"ita":{"official":"Repubblica dello Yemen","common":"Yemen"},"jpn":{"official":"イエメン共和国","common":"イエメン"},"kor":{"official":"예멘 공화국","common":"예멘"},"nld":{"official":"Republiek Jemen","common":"Jemen"},"per":{"official":"جمهوری یمن","common":"یمن"},"pol":{"official":"Republika Jemeńska","common":"Jemen"},"por":{"official":"República do Iêmen","common":"Iémen"},"rus":{"official":"Йеменская Республика","common":"Йемен"},"slk":{"official":"Jemenská republika","common":"Jemen"},"spa":{"official":"República de Yemen","common":"Yemen"},"srp":{"official":"Republika Jemen","common":"Jemen"},"swe":{"official":"Republiken Jemen","common":"Jemen"},"tur":{"official":"Yemen Cumhuriyeti","common":"Yemen"},"urd":{"official":"جمہوریہ یمن","common":"یمن"},"zho":{"official":"也门共和国","common":"也门"}},"latlng":[15,48],"landlocked":false,"borders":["OMN","SAU"],"area":527968,"flag":"🇾🇪","demonyms":{"eng":{"f":"Yemeni","m":"Yemeni"},"fra":{"f":"Yéménite","m":"Yéménite"}}},{"name":{"common":"South Africa","official":"Republic of South Africa","native":{"afr":{"official":"Republiek van Suid-Afrika","common":"South Africa"},"eng":{"official":"Republic of South Africa","common":"South Africa"},"nbl":{"official":"IRiphabliki yeSewula Afrika","common":"Sewula Afrika"},"nso":{"official":"Rephaboliki ya Afrika-Borwa ","common":"Afrika-Borwa"},"sot":{"official":"Rephaboliki ya Afrika Borwa","common":"Afrika Borwa"},"ssw":{"official":"IRiphabhulikhi yeNingizimu Afrika","common":"Ningizimu Afrika"},"tsn":{"official":"Rephaboliki ya Aforika Borwa","common":"Aforika Borwa"},"tso":{"official":"Riphabliki ra Afrika Dzonga","common":"Afrika Dzonga"},"ven":{"official":"Riphabuḽiki ya Afurika Tshipembe","common":"Afurika Tshipembe"},"xho":{"official":"IRiphabliki yaseMzantsi Afrika","common":"Mzantsi Afrika"},"zul":{"official":"IRiphabliki yaseNingizimu Afrika","common":"Ningizimu Afrika"}}},"tld":[".za"],"cca2":"ZA","ccn3":"710","cca3":"ZAF","cioc":"RSA","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"ZAR":{"name":"South African rand","symbol":"R"}},"idd":{"root":"+2","suffixes":["7"]},"capital":["Pretoria","Bloemfontein","Cape Town"],"altSpellings":["ZA","RSA","Suid-Afrika","Republic of South Africa"],"region":"Africa","subregion":"Southern Africa","languages":{"afr":"Afrikaans","eng":"English","nbl":"Southern Ndebele","nso":"Northern Sotho","sot":"Southern Sotho","ssw":"Swazi","tsn":"Tswana","tso":"Tsonga","ven":"Venda","xho":"Xhosa","zul":"Zulu"},"translations":{"ara":{"official":"جمهورية جنوب أفريقيا","common":"جنوب أفريقيا"},"ces":{"official":"Jihoafrická republika","common":"Jihoafrická republika"},"deu":{"official":"Republik Südafrika","common":"Südafrika"},"est":{"official":"Lõuna-Aafrika Vabariik","common":"Lõuna-Aafrika Vabariik"},"fin":{"official":"Etelä-Afrikan tasavalta","common":"Etelä-Afrikka"},"fra":{"official":"République d'Afrique du Sud","common":"Afrique du Sud"},"hrv":{"official":"Južnoafrička Republika","common":"Južnoafrička Republika"},"hun":{"official":"Dél-afrikai Köztársaság","common":"Dél-afrikai Köztársaság"},"ita":{"official":"Repubblica del Sud Africa","common":"Sud Africa"},"jpn":{"official":"南アフリカ共和国","common":"南アフリカ"},"kor":{"official":"남아프리카 공화국","common":"남아프리카"},"nld":{"official":"Republiek Zuid-Afrika","common":"Zuid-Afrika"},"per":{"official":"جمهوری آفریقای جنوبی","common":"آفریقای جنوبی"},"pol":{"official":"Republika Południowej Afryki","common":"Południowa Afryka"},"por":{"official":"República da África do Sul","common":"África do Sul"},"rus":{"official":"Южно-Африканская Республика","common":"Южно-Африканская Республика"},"slk":{"official":"Juhoafrická republika","common":"Juhoafrická republika"},"spa":{"official":"República de Sudáfrica","common":"Sudáfrica"},"srp":{"official":"Republika Južna Afrika","common":"Južnoafrička Republika"},"swe":{"official":"Republiken Sydafrika","common":"Sydafrika"},"tur":{"official":"Güney Afrika Cumhuriyeti","common":"Güney Afrika"},"urd":{"official":"جمہوریہ جنوبی افریقا","common":"جنوبی افریقا"},"zho":{"official":"南非共和国","common":"南非"}},"latlng":[-29,24],"landlocked":false,"borders":["BWA","LSO","MOZ","NAM","SWZ","ZWE"],"area":1221037,"flag":"🇿🇦","demonyms":{"eng":{"f":"South African","m":"South African"},"fra":{"f":"Sud-africaine","m":"Sud-africain"}}},{"name":{"common":"Zambia","official":"Republic of Zambia","native":{"eng":{"official":"Republic of Zambia","common":"Zambia"}}},"tld":[".zm"],"cca2":"ZM","ccn3":"894","cca3":"ZMB","cioc":"ZAM","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"ZMW":{"name":"Zambian kwacha","symbol":"ZK"}},"idd":{"root":"+2","suffixes":["60"]},"capital":["Lusaka"],"altSpellings":["ZM","Republic of Zambia"],"region":"Africa","subregion":"Eastern Africa","languages":{"eng":"English"},"translations":{"ara":{"official":"جمهورية زامبيا","common":"زامبيا"},"ces":{"official":"Zambijská republika","common":"Zambie"},"deu":{"official":"Republik Sambia","common":"Sambia"},"est":{"official":"Sambia Vabariik","common":"Sambia"},"fin":{"official":"Sambian tasavalta","common":"Sambia"},"fra":{"official":"République de Zambie","common":"Zambie"},"hrv":{"official":"Republika Zambija","common":"Zambija"},"hun":{"official":"Zambiai Köztársaság","common":"Zambia"},"ita":{"official":"Repubblica di Zambia","common":"Zambia"},"jpn":{"official":"ザンビア共和国","common":"ザンビア"},"kor":{"official":"잠비아 공화국","common":"잠비아"},"nld":{"official":"Republiek Zambia","common":"Zambia"},"per":{"official":"جمهوری زامبیا","common":"زامبیا"},"pol":{"official":"Republika Zambii","common":"Zambia"},"por":{"official":"República da Zâmbia","common":"Zâmbia"},"rus":{"official":"Республика Замбия","common":"Замбия"},"slk":{"official":"Zambijská republika","common":"Zambia"},"spa":{"official":"República de Zambia","common":"Zambia"},"srp":{"official":"Republika Zambija","common":"Zambija"},"swe":{"official":"Republiken Zambia","common":"Zambia"},"tur":{"official":"Zambiya Cumhuriyeti","common":"Zambiya"},"urd":{"official":"جمہوریہ زیمبیا","common":"زیمبیا"},"zho":{"official":"赞比亚共和国","common":"赞比亚"}},"latlng":[-15,30],"landlocked":true,"borders":["AGO","BWA","COD","MWI","MOZ","NAM","TZA","ZWE"],"area":752612,"flag":"🇿🇲","demonyms":{"eng":{"f":"Zambian","m":"Zambian"},"fra":{"f":"Zambienne","m":"Zambien"}}},{"name":{"common":"Zimbabwe","official":"Republic of Zimbabwe","native":{"bwg":{"official":"Republic of Zimbabwe","common":"Zimbabwe"},"eng":{"official":"Republic of Zimbabwe","common":"Zimbabwe"},"kck":{"official":"Republic of Zimbabwe","common":"Zimbabwe"},"khi":{"official":"Republic of Zimbabwe","common":"Zimbabwe"},"ndc":{"official":"Republic of Zimbabwe","common":"Zimbabwe"},"nde":{"official":"Republic of Zimbabwe","common":"Zimbabwe"},"nya":{"official":"Republic of Zimbabwe","common":"Zimbabwe"},"sna":{"official":"Republic of Zimbabwe","common":"Zimbabwe"},"sot":{"official":"Republic of Zimbabwe","common":"Zimbabwe"},"toi":{"official":"Republic of Zimbabwe","common":"Zimbabwe"},"tsn":{"official":"Republic of Zimbabwe","common":"Zimbabwe"},"tso":{"official":"Republic of Zimbabwe","common":"Zimbabwe"},"ven":{"official":"Republic of Zimbabwe","common":"Zimbabwe"},"xho":{"official":"Republic of Zimbabwe","common":"Zimbabwe"},"zib":{"official":"Republic of Zimbabwe","common":"Zimbabwe"}}},"tld":[".zw"],"cca2":"ZW","ccn3":"716","cca3":"ZWE","cioc":"ZIM","independent":true,"status":"officially-assigned","unMember":true,"unRegionalGroup":"African Group","currencies":{"BWP":{"name":"Botswana pula","symbol":"P"},"CNY":{"name":"Chinese yuan","symbol":"¥"},"EUR":{"name":"Euro","symbol":"€"},"GBP":{"name":"British pound","symbol":"£"},"INR":{"name":"Indian rupee","symbol":"₹"},"JPY":{"name":"Japanese yen","symbol":"¥"},"USD":{"name":"United States dollar","symbol":"$"},"ZAR":{"name":"South African rand","symbol":"Rs"},"ZWB":{"name":"Zimbabwean bonds","symbol":"$"}},"idd":{"root":"+2","suffixes":["63"]},"capital":["Harare"],"altSpellings":["ZW","Republic of Zimbabwe"],"region":"Africa","subregion":"Eastern Africa","languages":{"bwg":"Chibarwe","eng":"English","kck":"Kalanga","khi":"Khoisan","ndc":"Ndau","nde":"Northern Ndebele","nya":"Chewa","sna":"Shona","sot":"Sotho","toi":"Tonga","tsn":"Tswana","tso":"Tsonga","ven":"Venda","xho":"Xhosa","zib":"Zimbabwean Sign Language"},"translations":{"ara":{"official":"جمهورية زيمبابوي","common":"زيمبابوي"},"ces":{"official":"Zimbabwská republika","common":"Zimbabwe"},"deu":{"official":"Republik Simbabwe","common":"Simbabwe"},"est":{"official":"Zimbabwe Vabariik","common":"Zimbabwe"},"fin":{"official":"Zimbabwen tasavalta","common":"Zimbabwe"},"fra":{"official":"République du Zimbabwe","common":"Zimbabwe"},"hrv":{"official":"Republika Zimbabve","common":"Zimbabve"},"hun":{"official":"Zimbabwei Köztársaság","common":"Zimbabwe"},"ita":{"official":"Repubblica dello Zimbabwe","common":"Zimbabwe"},"jpn":{"official":"ジンバブエ共和国","common":"ジンバブエ"},"kor":{"official":"짐바브웨 공화국","common":"짐바브웨"},"nld":{"official":"Republiek Zimbabwe","common":"Zimbabwe"},"per":{"official":"جمهوری زیمبابوه","common":"زیمبابوه"},"pol":{"official":"Republika Zimbabwe","common":"Zimbabwe"},"por":{"official":"República do Zimbabwe","common":"Zimbabwe"},"rus":{"official":"Республика Зимбабве","common":"Зимбабве"},"slk":{"official":"Zimbabwianska republika","common":"Zimbabwe"},"spa":{"official":"República de Zimbabue","common":"Zimbabue"},"srp":{"official":"Republika Zimbabve","common":"Zimbabve"},"swe":{"official":"Republiken Zimbabwe","common":"Zimbabwe"},"tur":{"official":"Zimbabve Cumhuriyeti","common":"Zimbabve"},"urd":{"official":"جمہوریہ زمبابوے","common":"زمبابوے"},"zho":{"official":"津巴布韦共和国","common":"津巴布韦"}},"latlng":[-20,30],"landlocked":true,"borders":["BWA","MOZ","ZAF","ZMB"],"area":390757,"flag":"🇿🇼","demonyms":{"eng":{"f":"Zimbabwean","m":"Zimbabwean"},"fra":{"f":"Zimbabwéenne","m":"Zimbabwéen"}}}]`),e=l.filter(a=>{var i;return a.cca2&&a.cca2.length===2&&((i=a.name)==null?void 0:i.common)}).map(a=>{const i=a.cca2.toUpperCase(),o=a.name.common;return{code:i,name:o,searchKeys:[o,a.name.official,...a.altSpellings??[]].filter(Boolean).map(c=>c.toLowerCase())}}),f=e.map(({code:a,name:i})=>({code:a,name:i})).sort((a,i)=>a.name.localeCompare(i.name,void 0,{sensitivity:"base"})),m=new Map(e.map(({code:a,name:i})=>[a,i])),n=new Map;for(const{code:a,searchKeys:i}of e)for(const o of i)o&&!n.has(o)&&n.set(o,a);function r(a){if(a)return m.get(a.toUpperCase())}function s(a){if(a)return n.get(a.toLowerCase())}export{f as C,s as a,r as g}; diff --git a/apps/portal/public/storybook/assets/createLucideIcon-CctB0W3q.js b/apps/portal/public/storybook/assets/createLucideIcon-CctB0W3q.js new file mode 100644 index 00000000..c5adbb8d --- /dev/null +++ b/apps/portal/public/storybook/assets/createLucideIcon-CctB0W3q.js @@ -0,0 +1,41 @@ +import{r as s}from"./index-JhL3uwfD.js";/** + * @license lucide-react v0.563.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const l=(...t)=>t.filter((e,r,o)=>!!e&&e.trim()!==""&&o.indexOf(e)===r).join(" ").trim();/** + * @license lucide-react v0.563.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const C=t=>t.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();/** + * @license lucide-react v0.563.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const f=t=>t.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,r,o)=>o?o.toUpperCase():r.toLowerCase());/** + * @license lucide-react v0.563.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const i=t=>{const e=f(t);return e.charAt(0).toUpperCase()+e.slice(1)};/** + * @license lucide-react v0.563.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */var w={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};/** + * @license lucide-react v0.563.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const h=t=>{for(const e in t)if(e.startsWith("aria-")||e==="role"||e==="title")return!0;return!1};/** + * @license lucide-react v0.563.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const g=s.forwardRef(({color:t="currentColor",size:e=24,strokeWidth:r=2,absoluteStrokeWidth:o,className:n="",children:a,iconNode:u,...c},p)=>s.createElement("svg",{ref:p,...w,width:e,height:e,stroke:t,strokeWidth:o?Number(r)*24/Number(e):r,className:l("lucide",n),...!a&&!h(c)&&{"aria-hidden":"true"},...c},[...u.map(([m,d])=>s.createElement(m,d)),...Array.isArray(a)?a:[a]]));/** + * @license lucide-react v0.563.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const b=(t,e)=>{const r=s.forwardRef(({className:o,...n},a)=>s.createElement(g,{ref:a,iconNode:e,className:l(`lucide-${C(i(t))}`,`lucide-${t}`,o),...n}));return r.displayName=i(t),r};export{b as c}; diff --git a/apps/portal/public/storybook/assets/credit-card-AndvzjKW.js b/apps/portal/public/storybook/assets/credit-card-AndvzjKW.js new file mode 100644 index 00000000..bc0f75ca --- /dev/null +++ b/apps/portal/public/storybook/assets/credit-card-AndvzjKW.js @@ -0,0 +1,6 @@ +import{c as e}from"./createLucideIcon-CctB0W3q.js";/** + * @license lucide-react v0.563.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const c=[["rect",{width:"20",height:"14",x:"2",y:"5",rx:"2",key:"ynyp8z"}],["line",{x1:"2",x2:"22",y1:"10",y2:"10",key:"1b3vmo"}]],t=e("credit-card",c);export{t as C}; diff --git a/apps/portal/public/storybook/assets/currency-CYvr7ZUf.js b/apps/portal/public/storybook/assets/currency-CYvr7ZUf.js new file mode 100644 index 00000000..5d436ca7 --- /dev/null +++ b/apps/portal/public/storybook/assets/currency-CYvr7ZUf.js @@ -0,0 +1 @@ +const a="ja-JP",s=(c,t)=>{const o={currency:"JPY",symbol:"¥",locale:a,showSymbol:!0},l=e=>{e&&(e.locale&&(o.locale=e.locale),typeof e.showSymbol=="boolean"&&(o.showSymbol=e.showSymbol),e.currencySymbol&&(o.symbol=e.currencySymbol))};typeof c=="string"?o.currency=c:l(c),typeof t=="string"?o.symbol=t:l(t);const n=o.currency.toUpperCase()==="JPY"?0:2;return{...o,fractionDigits:n}};function m(c,t,o){const{locale:l,symbol:n,showSymbol:e,fractionDigits:i}=s(t,o),r=c.toLocaleString(l,{minimumFractionDigits:i,maximumFractionDigits:i});return e?`${n}${r}`:r}export{m as f}; diff --git a/apps/portal/public/storybook/assets/date-CJlSVdaN.js b/apps/portal/public/storybook/assets/date-CJlSVdaN.js new file mode 100644 index 00000000..9447f4ed --- /dev/null +++ b/apps/portal/public/storybook/assets/date-CJlSVdaN.js @@ -0,0 +1 @@ +function u(t,a={}){const{locale:f="en-US",dateStyle:s="medium",timeStyle:i="short",includeTime:m=!1,timezone:n}=a;try{const e=new Date(t);if(Number.isNaN(e.getTime()))return t;const o={dateStyle:s,...m&&{timeStyle:i},...n&&{timeZone:n}};return new Intl.DateTimeFormat(f,o).format(e)}catch{return t}}function l(t,a={}){const{locale:f="en-US"}=a;try{const s=new Date(t),i=new Date,m=s.getTime()-i.getTime(),n=Math.floor(m/1e3),e=Math.floor(n/60),o=Math.floor(e/60),c=Math.floor(o/24),r=new Intl.RelativeTimeFormat(f,{numeric:"auto"});return Math.abs(c)>0?r.format(c,"day"):Math.abs(o)>0?r.format(o,"hour"):Math.abs(e)>0?r.format(e,"minute"):r.format(n,"second")}catch{return t}}function d(t){const a=new Date(t);return!Number.isNaN(a.getTime())}export{l as a,u as f,d as i}; diff --git a/apps/portal/public/storybook/assets/date-Csq1SWDU.js b/apps/portal/public/storybook/assets/date-Csq1SWDU.js new file mode 100644 index 00000000..a606b3fa --- /dev/null +++ b/apps/portal/public/storybook/assets/date-Csq1SWDU.js @@ -0,0 +1 @@ +import{i as o,f as s,a as D}from"./date-CJlSVdaN.js";const r="Invalid date";function m(t,e={}){const{fallback:a="N/A",locale:n,dateStyle:l="medium",timeStyle:i="short",includeTime:f=!1,timezone:u}=e;return t?o(t)?s(t,{locale:n??void 0,dateStyle:l,timeStyle:i,includeTime:f,timezone:u}):r:a}function y(t,e={}){const{fallback:a="N/A",locale:n}=e;return t?o(t)?D(t,{locale:n??void 0}):r:a}function g(t,e={}){const{fallback:a="N/A",locale:n="en-US"}=e;if(!t)return a;if(!o(t))return r;try{return new Date(t).toLocaleDateString(n,{month:"short",day:"numeric"})}catch{return r}}function c(t,e){return t.getFullYear()===e.getFullYear()&&t.getMonth()===e.getMonth()&&t.getDate()===e.getDate()}function h(t,e=new Date){return c(t,e)}function I(t,e=new Date){const a=new Date(e);return a.setDate(e.getDate()-1),c(t,a)}export{m as a,y as b,h as c,I as d,g as f,c as i}; diff --git a/apps/portal/public/storybook/assets/eligibility-check.store-5rXvIK_a.js b/apps/portal/public/storybook/assets/eligibility-check.store-5rXvIK_a.js new file mode 100644 index 00000000..251c173e --- /dev/null +++ b/apps/portal/public/storybook/assets/eligibility-check.store-5rXvIK_a.js @@ -0,0 +1 @@ +import{a as p,b as f,l as m}from"./index-BKyvj4H5.js";import{g as u}from"./error-handling-CCxr4Gjn.js";import{e as S,n as d,p as A,g as E,a as C}from"./schema-B7GuHPAW.js";import{b as g}from"./schema-Cvvg7S_W.js";import{o as i,s,b as l,n as _,_ as k,l as N}from"./coerce-BirWdn0y.js";import{a as x}from"./schema-JsDJirqf.js";import{c as Y}from"./react-C6W-rNNW.js";const R=i({postcode:s().optional(),prefecture:s().optional(),city:s().optional(),town:s().optional(),prefectureJa:s().optional(),cityJa:s().optional(),townJa:s().optional(),streetAddress:s().optional(),buildingName:s().optional().nullable(),roomNumber:s().optional().nullable(),residenceType:k(["house","apartment"]).optional()}),w="Session token is required",I="You must accept the terms of service";i({email:S});const q=i({sent:l(),message:s(),retryAfter:s().datetime().optional()}),B=s().length(6,"Code must be 6 digits").regex(/^\d{6}$/,"Code must be 6 digits");i({email:S,code:B,handoffToken:s().optional()});const v=k(["portal_exists","whmcs_unmapped","sf_unmapped","new_customer"]),M=i({verified:l(),error:s().optional(),attemptsRemaining:_().optional(),sessionToken:s().optional(),accountStatus:v.optional(),prefill:i({firstName:s().optional(),lastName:s().optional(),email:s().optional(),phone:s().optional(),address:R.optional(),eligibilityStatus:s().optional()}).optional()}),D=s().regex(/^\d{4}-\d{2}-\d{2}$/,"Enter a valid date (YYYY-MM-DD)").refine(t=>!Number.isNaN(Date.parse(t)),"Enter a valid date (YYYY-MM-DD)");i({email:S,firstName:d,lastName:d,address:g,phone:A.optional(),continueToAccount:l().default(!1)});const $=i({submitted:l(),requestId:s().optional(),sfAccountId:s().optional(),message:s(),handoffToken:s().optional()});i({id:s(),type:N("guest_handoff"),email:s(),emailVerified:N(!1),firstName:s(),lastName:s(),address:g.partial().optional(),phone:s().optional(),sfAccountId:s(),createdAt:s().datetime()});i({sessionToken:s().min(1,w),firstName:d.optional(),lastName:d.optional(),address:g.optional(),password:C,phone:A,dateOfBirth:D,gender:E,acceptTerms:l().refine(t=>t===!0,{message:I}),marketingConsent:l().optional()});i({sessionToken:s().min(1,w),firstName:d,lastName:d,address:g,phone:A,password:C,dateOfBirth:D,gender:E,acceptTerms:l().refine(t=>t===!0,{message:I}),marketingConsent:l().optional()});const V=i({success:l(),message:s().optional(),eligibilityRequestId:s().optional()});i({sessionToken:s().min(1,w),password:C,dateOfBirth:D.optional(),gender:E.optional(),acceptTerms:l().refine(t=>t===!0,{message:I}),marketingConsent:l().optional()});i({email:s(),emailVerified:l(),firstName:s().optional(),lastName:s().optional(),address:R.optional(),phone:s().optional(),accountStatus:v.optional(),sfAccountId:s().optional(),whmcsClientId:_().optional(),eligibilityStatus:s().optional(),createdAt:s().datetime(),expiresAt:s().datetime()});const T="/api/auth/get-started";async function P(t){const a=await p.POST(`${T}/send-code`,{body:t}),e=f(a,"Failed to send verification code");return q.parse(e)}async function U(t){const a=await p.POST(`${T}/verify-code`,{body:t}),e=f(a,"Failed to verify code");return M.parse(e)}async function J(t){const a=await p.POST(`${T}/guest-eligibility`,{body:t}),e=f(a,"Failed to submit eligibility check");return $.parse(e)}async function Q(t){const a=await p.POST(`${T}/signup-with-eligibility`,{body:t}),e=f(a,"Failed to create account"),n=V.parse(e);if(n.success&&"user"in e&&"session"in e){const r=x.parse({user:e.user,session:e.session});return{...n,success:!0,user:r.user,session:r.session}}return n}const h="form",y="otp",b="complete-account",F="success",W={firstName:"",lastName:"",email:"",address:null},j={password:"",confirmPassword:"",phone:"",dateOfBirth:"",gender:"",acceptTerms:!1,marketingConsent:!1},O={step:h,formData:W,accountData:j,isAddressComplete:!1,sessionToken:null,requestId:null,hasAccount:!1,attemptsRemaining:null,resendDisabled:!1,resendCountdown:0,loading:!1,error:null,otpError:null,submitType:null,_resendTimerId:null};async function H(t,a){const{formData:e,isAddressComplete:n}=t();if(!n||!e.address)return a({error:"Please complete the address form"}),!1;a({loading:!0,error:null,submitType:"check"});try{const r=await J({email:e.email.trim(),firstName:e.firstName.trim(),lastName:e.lastName.trim(),address:e.address,continueToAccount:!1});return r.submitted?(a({loading:!1,submitType:null,requestId:r.requestId||null,hasAccount:!1,step:F}),!0):(a({loading:!1,submitType:null,error:r.message||"Failed to submit eligibility check"}),!1)}catch(r){const o=u(r);return m.error("Failed to submit eligibility check",{error:o,email:e.email}),a({loading:!1,submitType:null,error:o}),!1}}async function K(t,a){const{formData:e,isAddressComplete:n}=t();if(!n||!e.address)return a({error:"Please complete the address form"}),!1;a({loading:!0,error:null,submitType:"create"});try{const r=await P({email:e.email.trim()});return r.sent?(a({loading:!1,submitType:null,step:y}),t().startResendTimer(),!0):(a({loading:!1,submitType:null,error:r.message||"Failed to send verification code"}),!1)}catch(r){const o=u(r);return m.error("Failed to send OTP",{error:o,email:e.email}),a({loading:!1,submitType:null,error:o}),!1}}async function L(t,a,e){if(e.length!==6)return!1;const{formData:n}=t();a({loading:!0,otpError:null});try{const r=await U({email:n.email.trim(),code:e});return!r.verified||!r.sessionToken?(a({loading:!1,otpError:r.error||"Verification failed. Please try again.",attemptsRemaining:r.attemptsRemaining??null}),!1):(t().stopResendTimer(),r.accountStatus==="portal_exists"?(a({loading:!1,otpError:"An account already exists with this email. Please log in instead."}),!1):r.accountStatus==="whmcs_unmapped"?(a({loading:!1,otpError:"A billing account exists with this email. Please use account linking instead."}),!1):(a({loading:!1,sessionToken:r.sessionToken,step:b}),!0))}catch(r){const o=u(r);return m.error("Failed to verify OTP",{error:o,email:n.email}),a({loading:!1,otpError:o}),!1}}async function z(t,a){const{formData:e,resendDisabled:n,loading:r}=t();if(n||r)return!1;a({loading:!0,otpError:null});try{const o=await P({email:e.email.trim()});return o.sent?(a({loading:!1}),t().startResendTimer(),!0):(a({loading:!1,otpError:o.message||"Failed to resend code"}),!1)}catch(o){const c=u(o);return m.error("Failed to resend OTP",{error:c,email:e.email}),a({loading:!1,otpError:c}),!1}}async function G(t,a){const{sessionToken:e,formData:n,accountData:r}=t();if(!e)return a({error:"Session expired. Please start over."}),!1;if(!n.address)return a({error:"Address information is missing."}),!1;a({loading:!0,error:null});try{const o=await Q({sessionToken:e,firstName:n.firstName.trim(),lastName:n.lastName.trim(),address:n.address,phone:r.phone.trim(),password:r.password,dateOfBirth:r.dateOfBirth,gender:r.gender,acceptTerms:r.acceptTerms,marketingConsent:r.marketingConsent});return o.success?(a({loading:!1,requestId:o.eligibilityRequestId||null,hasAccount:!0,step:F}),!0):(a({loading:!1,error:o.message||"Failed to create account"}),!1)}catch(o){const c=u(o);return m.error("Failed to complete account",{error:c,email:n.email}),a({loading:!1,error:c}),!1}}const ne=Y()((t,a)=>({...O,submitOnly:()=>H(a,t),submitAndCreate:()=>K(a,t),verifyOtp:e=>L(a,t,e),resendOtp:()=>z(a,t),completeAccount:()=>G(a,t),goToStep:e=>{const n=a().step;t({step:e,error:null,otpError:null}),e===h?(a().stopResendTimer(),t({sessionToken:null,attemptsRemaining:null})):e===y&&n===b&&t({sessionToken:null,attemptsRemaining:null})},goBack:()=>{const{step:e}=a(),n=[h,y,b],r=n.indexOf(e);if(r>0){const o=n[r-1];o&&a().goToStep(o)}},updateFormData:e=>{t({formData:{...a().formData,...e}})},updateAccountData:e=>{t({accountData:{...a().accountData,...e}})},setAddressComplete:e=>{t({isAddressComplete:e})},clearError:()=>t({error:null}),clearOtpError:()=>t({otpError:null}),startResendTimer:()=>{const{_resendTimerId:e}=a();e&&clearInterval(e),t({resendDisabled:!0,resendCountdown:60});const n=setInterval(()=>{const{resendCountdown:r}=a();r<=1?(clearInterval(n),t({resendDisabled:!1,resendCountdown:0,_resendTimerId:null})):t({resendCountdown:r-1})},1e3);t({_resendTimerId:n})},stopResendTimer:()=>{const{_resendTimerId:e}=a();e&&(clearInterval(e),t({_resendTimerId:null,resendDisabled:!1,resendCountdown:0}))},cleanup:()=>{const{_resendTimerId:e}=a();e&&(clearInterval(e),t({_resendTimerId:null}))},reset:()=>{const{_resendTimerId:e}=a();e&&clearInterval(e),t({...O,_resendTimerId:null})}}));export{ne as u}; diff --git a/apps/portal/public/storybook/assets/empty-state-DRUGJ9ip.js b/apps/portal/public/storybook/assets/empty-state-DRUGJ9ip.js new file mode 100644 index 00000000..c7b05ad9 --- /dev/null +++ b/apps/portal/public/storybook/assets/empty-state-DRUGJ9ip.js @@ -0,0 +1,10 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{B as d}from"./button-C8_cybvS.js";import{c as i}from"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import{F as m}from"./PlusIcon-DGufmf06.js";function l({icon:a,title:r,description:s,action:n,className:o,variant:u="default"}){const t=u==="compact";return e.jsxs("div",{className:i("flex flex-col items-center justify-center text-center",t?"py-8":"py-12",o),children:[a&&e.jsx("div",{className:i("text-muted-foreground/70 mb-4",t?"mb-3":"mb-4"),children:a}),e.jsx("h3",{className:i("font-semibold text-foreground mb-2",t?"text-base":"text-lg"),children:r}),s&&e.jsx("p",{className:i("text-muted-foreground mb-6 max-w-md",t?"text-sm mb-4":"text-base mb-6"),children:s}),n&&(n.href?e.jsx(d,{as:"a",href:n.href,size:t?"sm":"default",leftIcon:e.jsx(m,{className:"h-4 w-4"}),children:n.label}):e.jsx(d,{onClick:n.onClick,size:t?"sm":"default",leftIcon:e.jsx(m,{className:"h-4 w-4"}),children:n.label}))]})}function c({searchTerm:a,onClearSearch:r}){return e.jsx(l,{title:"No results found",description:`No results match "${a}". Try adjusting your search criteria.`,action:r?{label:"Clear search",onClick:r}:void 0,variant:"compact"})}l.__docgenInfo={description:"",methods:[],displayName:"EmptyState",props:{icon:{required:!1,tsType:{name:"union",raw:"React.ReactNode | undefined",elements:[{name:"ReactReactNode",raw:"React.ReactNode"},{name:"undefined"}]},description:""},title:{required:!0,tsType:{name:"string"},description:""},description:{required:!1,tsType:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}]},description:""},action:{required:!1,tsType:{name:"union",raw:`| { + label: string; + href?: string | undefined; + onClick?: (() => void) | undefined; + } +| undefined`,elements:[{name:"signature",type:"object",raw:`{ + label: string; + href?: string | undefined; + onClick?: (() => void) | undefined; +}`,signature:{properties:[{key:"label",value:{name:"string",required:!0}},{key:"href",value:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}],required:!1}},{key:"onClick",value:{name:"union",raw:"(() => void) | undefined",elements:[{name:"unknown"},{name:"undefined"}],required:!1}}]}},{name:"undefined"}]},description:""},className:{required:!1,tsType:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}]},description:""},variant:{required:!1,tsType:{name:"union",raw:'"default" | "compact" | undefined',elements:[{name:"literal",value:'"default"'},{name:"literal",value:'"compact"'},{name:"undefined"}]},description:"",defaultValue:{value:'"default"',computed:!1}}}};c.__docgenInfo={description:"",methods:[],displayName:"SearchEmptyState",props:{searchTerm:{required:!0,tsType:{name:"string"},description:""},onClearSearch:{required:!1,tsType:{name:"signature",type:"function",raw:"() => void",signature:{arguments:[],return:{name:"void"}}},description:""}}};export{l as E,c as S}; diff --git a/apps/portal/public/storybook/assets/empty-state.stories-Bl3MzzdA.js b/apps/portal/public/storybook/assets/empty-state.stories-Bl3MzzdA.js new file mode 100644 index 00000000..5405dace --- /dev/null +++ b/apps/portal/public/storybook/assets/empty-state.stories-Bl3MzzdA.js @@ -0,0 +1,25 @@ +import{j as a}from"./jsx-runtime-D_zvdyIk.js";import{E as v,S as f}from"./empty-state-DRUGJ9ip.js";import{F as g}from"./InboxIcon-C_jmd85B.js";import"./button-C8_cybvS.js";import"./index-JhL3uwfD.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./spinner-mU4XywER.js";import"./PlusIcon-DGufmf06.js";const F={title:"Atoms/EmptyState",component:v,argTypes:{variant:{control:"select",options:["default","compact"]}}},e={args:{icon:a.jsx(g,{className:"h-12 w-12"}),title:"No invoices yet",description:"When you receive invoices, they will appear here."}},r={args:{icon:a.jsx(g,{className:"h-12 w-12"}),title:"No services",description:"Get started by adding your first service.",action:{label:"Add Service",onClick:()=>{}}}},t={args:{title:"No results",description:"Try adjusting your filters.",variant:"compact"}},o={render:()=>a.jsx(f,{searchTerm:"fiber internet",onClearSearch:()=>{}})};var s,i,c;e.parameters={...e.parameters,docs:{...(s=e.parameters)==null?void 0:s.docs,source:{originalSource:`{ + args: { + icon: , + title: "No invoices yet", + description: "When you receive invoices, they will appear here." + } +}`,...(c=(i=e.parameters)==null?void 0:i.docs)==null?void 0:c.source}}};var n,p,m;r.parameters={...r.parameters,docs:{...(n=r.parameters)==null?void 0:n.docs,source:{originalSource:`{ + args: { + icon: , + title: "No services", + description: "Get started by adding your first service.", + action: { + label: "Add Service", + onClick: () => {} + } + } +}`,...(m=(p=r.parameters)==null?void 0:p.docs)==null?void 0:m.source}}};var d,l,u;t.parameters={...t.parameters,docs:{...(d=t.parameters)==null?void 0:d.docs,source:{originalSource:`{ + args: { + title: "No results", + description: "Try adjusting your filters.", + variant: "compact" + } +}`,...(u=(l=t.parameters)==null?void 0:l.docs)==null?void 0:u.source}}};var y,h,S;o.parameters={...o.parameters,docs:{...(y=o.parameters)==null?void 0:y.docs,source:{originalSource:`{ + render: () => {}} /> +}`,...(S=(h=o.parameters)==null?void 0:h.docs)==null?void 0:S.source}}};const G=["Default","WithAction","Compact","SearchEmpty"];export{t as Compact,e as Default,o as SearchEmpty,r as WithAction,G as __namedExportsOrder,F as default}; diff --git a/apps/portal/public/storybook/assets/entry-preview-Ccf12ZN0.js b/apps/portal/public/storybook/assets/entry-preview-Ccf12ZN0.js new file mode 100644 index 00000000..0563dd91 --- /dev/null +++ b/apps/portal/public/storybook/assets/entry-preview-Ccf12ZN0.js @@ -0,0 +1,2 @@ +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./test-utils-Cye2pOmz.js","./index-JhL3uwfD.js","./react-18-BRu_gB4I.js","./client-B9ae35Ip.js"])))=>i.map(i=>d[i]); +import{_ as pe}from"./iframe-Ce-ZSiNJ.js";import{_ as Ae,a as O,b as ge}from"./chunk-XP5HYGXS-BHXC9YeQ.js";import{r as k,R as Y,o as we}from"./index-JhL3uwfD.js";var ne={};const{global:xe}=__STORYBOOK_MODULE_GLOBAL__;var Q=O({"../../node_modules/semver/internal/constants.js"(m,l){var r="2.0.0",i=Number.MAX_SAFE_INTEGER||9007199254740991,n=16,t=250,E=["major","premajor","minor","preminor","patch","prepatch","prerelease"];l.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:n,MAX_SAFE_BUILD_LENGTH:t,MAX_SAFE_INTEGER:i,RELEASE_TYPES:E,SEMVER_SPEC_VERSION:r,FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}}}),Z=O({"../../node_modules/semver/internal/debug.js"(m,l){var r=typeof process=="object"&&ne&&ne.NODE_DEBUG&&/\bsemver\b/i.test(ne.NODE_DEBUG)?(...i)=>console.error("SEMVER",...i):()=>{};l.exports=r}}),z=O({"../../node_modules/semver/internal/re.js"(m,l){var{MAX_SAFE_COMPONENT_LENGTH:r,MAX_SAFE_BUILD_LENGTH:i,MAX_LENGTH:n}=Q(),t=Z();m=l.exports={};var E=m.re=[],h=m.safeRe=[],e=m.src=[],f=m.safeSrc=[],a=m.t={},v=0,s="[a-zA-Z0-9-]",u=[["\\s",1],["\\d",n],[s,i]],p=I=>{for(let[T,A]of u)I=I.split(`${T}*`).join(`${T}{0,${A}}`).split(`${T}+`).join(`${T}{1,${A}}`);return I},o=(I,T,A)=>{let y=p(T),D=v++;t(I,D,T),a[I]=D,e[D]=T,f[D]=y,E[D]=new RegExp(T,A?"g":void 0),h[D]=new RegExp(y,A?"g":void 0)};o("NUMERICIDENTIFIER","0|[1-9]\\d*"),o("NUMERICIDENTIFIERLOOSE","\\d+"),o("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${s}*`),o("MAINVERSION",`(${e[a.NUMERICIDENTIFIER]})\\.(${e[a.NUMERICIDENTIFIER]})\\.(${e[a.NUMERICIDENTIFIER]})`),o("MAINVERSIONLOOSE",`(${e[a.NUMERICIDENTIFIERLOOSE]})\\.(${e[a.NUMERICIDENTIFIERLOOSE]})\\.(${e[a.NUMERICIDENTIFIERLOOSE]})`),o("PRERELEASEIDENTIFIER",`(?:${e[a.NUMERICIDENTIFIER]}|${e[a.NONNUMERICIDENTIFIER]})`),o("PRERELEASEIDENTIFIERLOOSE",`(?:${e[a.NUMERICIDENTIFIERLOOSE]}|${e[a.NONNUMERICIDENTIFIER]})`),o("PRERELEASE",`(?:-(${e[a.PRERELEASEIDENTIFIER]}(?:\\.${e[a.PRERELEASEIDENTIFIER]})*))`),o("PRERELEASELOOSE",`(?:-?(${e[a.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${e[a.PRERELEASEIDENTIFIERLOOSE]})*))`),o("BUILDIDENTIFIER",`${s}+`),o("BUILD",`(?:\\+(${e[a.BUILDIDENTIFIER]}(?:\\.${e[a.BUILDIDENTIFIER]})*))`),o("FULLPLAIN",`v?${e[a.MAINVERSION]}${e[a.PRERELEASE]}?${e[a.BUILD]}?`),o("FULL",`^${e[a.FULLPLAIN]}$`),o("LOOSEPLAIN",`[v=\\s]*${e[a.MAINVERSIONLOOSE]}${e[a.PRERELEASELOOSE]}?${e[a.BUILD]}?`),o("LOOSE",`^${e[a.LOOSEPLAIN]}$`),o("GTLT","((?:<|>)?=?)"),o("XRANGEIDENTIFIERLOOSE",`${e[a.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`),o("XRANGEIDENTIFIER",`${e[a.NUMERICIDENTIFIER]}|x|X|\\*`),o("XRANGEPLAIN",`[v=\\s]*(${e[a.XRANGEIDENTIFIER]})(?:\\.(${e[a.XRANGEIDENTIFIER]})(?:\\.(${e[a.XRANGEIDENTIFIER]})(?:${e[a.PRERELEASE]})?${e[a.BUILD]}?)?)?`),o("XRANGEPLAINLOOSE",`[v=\\s]*(${e[a.XRANGEIDENTIFIERLOOSE]})(?:\\.(${e[a.XRANGEIDENTIFIERLOOSE]})(?:\\.(${e[a.XRANGEIDENTIFIERLOOSE]})(?:${e[a.PRERELEASELOOSE]})?${e[a.BUILD]}?)?)?`),o("XRANGE",`^${e[a.GTLT]}\\s*${e[a.XRANGEPLAIN]}$`),o("XRANGELOOSE",`^${e[a.GTLT]}\\s*${e[a.XRANGEPLAINLOOSE]}$`),o("COERCEPLAIN",`(^|[^\\d])(\\d{1,${r}})(?:\\.(\\d{1,${r}}))?(?:\\.(\\d{1,${r}}))?`),o("COERCE",`${e[a.COERCEPLAIN]}(?:$|[^\\d])`),o("COERCEFULL",e[a.COERCEPLAIN]+`(?:${e[a.PRERELEASE]})?(?:${e[a.BUILD]})?(?:$|[^\\d])`),o("COERCERTL",e[a.COERCE],!0),o("COERCERTLFULL",e[a.COERCEFULL],!0),o("LONETILDE","(?:~>?)"),o("TILDETRIM",`(\\s*)${e[a.LONETILDE]}\\s+`,!0),m.tildeTrimReplace="$1~",o("TILDE",`^${e[a.LONETILDE]}${e[a.XRANGEPLAIN]}$`),o("TILDELOOSE",`^${e[a.LONETILDE]}${e[a.XRANGEPLAINLOOSE]}$`),o("LONECARET","(?:\\^)"),o("CARETTRIM",`(\\s*)${e[a.LONECARET]}\\s+`,!0),m.caretTrimReplace="$1^",o("CARET",`^${e[a.LONECARET]}${e[a.XRANGEPLAIN]}$`),o("CARETLOOSE",`^${e[a.LONECARET]}${e[a.XRANGEPLAINLOOSE]}$`),o("COMPARATORLOOSE",`^${e[a.GTLT]}\\s*(${e[a.LOOSEPLAIN]})$|^$`),o("COMPARATOR",`^${e[a.GTLT]}\\s*(${e[a.FULLPLAIN]})$|^$`),o("COMPARATORTRIM",`(\\s*)${e[a.GTLT]}\\s*(${e[a.LOOSEPLAIN]}|${e[a.XRANGEPLAIN]})`,!0),m.comparatorTrimReplace="$1$2$3",o("HYPHENRANGE",`^\\s*(${e[a.XRANGEPLAIN]})\\s+-\\s+(${e[a.XRANGEPLAIN]})\\s*$`),o("HYPHENRANGELOOSE",`^\\s*(${e[a.XRANGEPLAINLOOSE]})\\s+-\\s+(${e[a.XRANGEPLAINLOOSE]})\\s*$`),o("STAR","(<|>)?=?\\s*\\*"),o("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$"),o("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")}}),me=O({"../../node_modules/semver/internal/parse-options.js"(m,l){var r=Object.freeze({loose:!0}),i=Object.freeze({}),n=t=>t?typeof t!="object"?r:t:i;l.exports=n}}),Le=O({"../../node_modules/semver/internal/identifiers.js"(m,l){var r=/^[0-9]+$/,i=(t,E)=>{let h=r.test(t),e=r.test(E);return h&&e&&(t=+t,E=+E),t===E?0:h&&!e?-1:e&&!h?1:ti(E,t);l.exports={compareIdentifiers:i,rcompareIdentifiers:n}}}),q=O({"../../node_modules/semver/classes/semver.js"(m,l){var r=Z(),{MAX_LENGTH:i,MAX_SAFE_INTEGER:n}=Q(),{safeRe:t,safeSrc:E,t:h}=z(),e=me(),{compareIdentifiers:f}=Le(),a=class X{constructor(s,u){if(u=e(u),s instanceof X){if(s.loose===!!u.loose&&s.includePrerelease===!!u.includePrerelease)return s;s=s.version}else if(typeof s!="string")throw new TypeError(`Invalid version. Must be a string. Got type "${typeof s}".`);if(s.length>i)throw new TypeError(`version is longer than ${i} characters`);r("SemVer",s,u),this.options=u,this.loose=!!u.loose,this.includePrerelease=!!u.includePrerelease;let p=s.trim().match(u.loose?t[h.LOOSE]:t[h.FULL]);if(!p)throw new TypeError(`Invalid Version: ${s}`);if(this.raw=s,this.major=+p[1],this.minor=+p[2],this.patch=+p[3],this.major>n||this.major<0)throw new TypeError("Invalid major version");if(this.minor>n||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>n||this.patch<0)throw new TypeError("Invalid patch version");p[4]?this.prerelease=p[4].split(".").map(o=>{if(/^[0-9]+$/.test(o)){let I=+o;if(I>=0&&I=0;)typeof this.prerelease[I]=="number"&&(this.prerelease[I]++,I=-2);if(I===-1){if(u===this.prerelease.join(".")&&p===!1)throw new Error("invalid increment argument: identifier already exists");this.prerelease.push(o)}}if(u){let I=[u,o];p===!1&&(I=[u]),f(this.prerelease[0],u)===0?isNaN(this.prerelease[1])&&(this.prerelease=I):this.prerelease=I}break}default:throw new Error(`invalid increment argument: ${s}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(".")}`),this}};l.exports=a}}),H=O({"../../node_modules/semver/functions/parse.js"(m,l){var r=q(),i=(n,t,E=!1)=>{if(n instanceof r)return n;try{return new r(n,t)}catch(h){if(!E)return null;throw h}};l.exports=i}}),je=O({"../../node_modules/semver/functions/valid.js"(m,l){var r=H(),i=(n,t)=>{let E=r(n,t);return E?E.version:null};l.exports=i}}),Pe=O({"../../node_modules/semver/functions/clean.js"(m,l){var r=H(),i=(n,t)=>{let E=r(n.trim().replace(/^[=v]+/,""),t);return E?E.version:null};l.exports=i}}),Ce=O({"../../node_modules/semver/functions/inc.js"(m,l){var r=q(),i=(n,t,E,h,e)=>{typeof E=="string"&&(e=h,h=E,E=void 0);try{return new r(n instanceof r?n.version:n,E).inc(t,h,e).version}catch{return null}};l.exports=i}}),ye=O({"../../node_modules/semver/functions/diff.js"(m,l){var r=H(),i=(n,t)=>{let E=r(n,null,!0),h=r(t,null,!0),e=E.compare(h);if(e===0)return null;let f=e>0,a=f?E:h,v=f?h:E,s=!!a.prerelease.length;if(v.prerelease.length&&!s){if(!v.patch&&!v.minor)return"major";if(v.compareMain(a)===0)return v.minor&&!v.patch?"minor":"patch"}let u=s?"pre":"";return E.major!==h.major?u+"major":E.minor!==h.minor?u+"minor":E.patch!==h.patch?u+"patch":"prerelease"};l.exports=i}}),De=O({"../../node_modules/semver/functions/major.js"(m,l){var r=q(),i=(n,t)=>new r(n,t).major;l.exports=i}}),Ge=O({"../../node_modules/semver/functions/minor.js"(m,l){var r=q(),i=(n,t)=>new r(n,t).minor;l.exports=i}}),qe=O({"../../node_modules/semver/functions/patch.js"(m,l){var r=q(),i=(n,t)=>new r(n,t).patch;l.exports=i}}),Fe=O({"../../node_modules/semver/functions/prerelease.js"(m,l){var r=H(),i=(n,t)=>{let E=r(n,t);return E&&E.prerelease.length?E.prerelease:null};l.exports=i}}),V=O({"../../node_modules/semver/functions/compare.js"(m,l){var r=q(),i=(n,t,E)=>new r(n,E).compare(new r(t,E));l.exports=i}}),Ve=O({"../../node_modules/semver/functions/rcompare.js"(m,l){var r=V(),i=(n,t,E)=>r(t,n,E);l.exports=i}}),Ue=O({"../../node_modules/semver/functions/compare-loose.js"(m,l){var r=V(),i=(n,t)=>r(n,t,!0);l.exports=i}}),ce=O({"../../node_modules/semver/functions/compare-build.js"(m,l){var r=q(),i=(n,t,E)=>{let h=new r(n,E),e=new r(t,E);return h.compare(e)||h.compareBuild(e)};l.exports=i}}),Xe=O({"../../node_modules/semver/functions/sort.js"(m,l){var r=ce(),i=(n,t)=>n.sort((E,h)=>r(E,h,t));l.exports=i}}),be=O({"../../node_modules/semver/functions/rsort.js"(m,l){var r=ce(),i=(n,t)=>n.sort((E,h)=>r(h,E,t));l.exports=i}}),J=O({"../../node_modules/semver/functions/gt.js"(m,l){var r=V(),i=(n,t,E)=>r(n,t,E)>0;l.exports=i}}),he=O({"../../node_modules/semver/functions/lt.js"(m,l){var r=V(),i=(n,t,E)=>r(n,t,E)<0;l.exports=i}}),_e=O({"../../node_modules/semver/functions/eq.js"(m,l){var r=V(),i=(n,t,E)=>r(n,t,E)===0;l.exports=i}}),Ne=O({"../../node_modules/semver/functions/neq.js"(m,l){var r=V(),i=(n,t,E)=>r(n,t,E)!==0;l.exports=i}}),fe=O({"../../node_modules/semver/functions/gte.js"(m,l){var r=V(),i=(n,t,E)=>r(n,t,E)>=0;l.exports=i}}),ve=O({"../../node_modules/semver/functions/lte.js"(m,l){var r=V(),i=(n,t,E)=>r(n,t,E)<=0;l.exports=i}}),Oe=O({"../../node_modules/semver/functions/cmp.js"(m,l){var r=_e(),i=Ne(),n=J(),t=fe(),E=he(),h=ve(),e=(f,a,v,s)=>{switch(a){case"===":return typeof f=="object"&&(f=f.version),typeof v=="object"&&(v=v.version),f===v;case"!==":return typeof f=="object"&&(f=f.version),typeof v=="object"&&(v=v.version),f!==v;case"":case"=":case"==":return r(f,v,s);case"!=":return i(f,v,s);case">":return n(f,v,s);case">=":return t(f,v,s);case"<":return E(f,v,s);case"<=":return h(f,v,s);default:throw new TypeError(`Invalid operator: ${a}`)}};l.exports=e}}),ke=O({"../../node_modules/semver/functions/coerce.js"(m,l){var r=q(),i=H(),{safeRe:n,t}=z(),E=(h,e)=>{if(h instanceof r)return h;if(typeof h=="number"&&(h=String(h)),typeof h!="string")return null;e=e||{};let f=null;if(!e.rtl)f=h.match(e.includePrerelease?n[t.COERCEFULL]:n[t.COERCE]);else{let o=e.includePrerelease?n[t.COERCERTLFULL]:n[t.COERCERTL],I;for(;(I=o.exec(h))&&(!f||f.index+f[0].length!==h.length);)(!f||I.index+I[0].length!==f.index+f[0].length)&&(f=I),o.lastIndex=I.index+I[1].length+I[2].length;o.lastIndex=-1}if(f===null)return null;let a=f[2],v=f[3]||"0",s=f[4]||"0",u=e.includePrerelease&&f[5]?`-${f[5]}`:"",p=e.includePrerelease&&f[6]?`+${f[6]}`:"";return i(`${a}.${v}.${s}${u}${p}`,e)};l.exports=E}}),Me=O({"../../node_modules/semver/internal/lrucache.js"(m,l){var r=class{constructor(){this.max=1e3,this.map=new Map}get(i){let n=this.map.get(i);if(n!==void 0)return this.map.delete(i),this.map.set(i,n),n}delete(i){return this.map.delete(i)}set(i,n){if(!this.delete(i)&&n!==void 0){if(this.map.size>=this.max){let t=this.map.keys().next().value;this.delete(t)}this.map.set(i,n)}return this}};l.exports=r}}),U=O({"../../node_modules/semver/classes/range.js"(m,l){var r=/\s+/g,i=class K{constructor(c,L){if(L=E(L),c instanceof K)return c.loose===!!L.loose&&c.includePrerelease===!!L.includePrerelease?c:new K(c.raw,L);if(c instanceof h)return this.raw=c.value,this.set=[[c]],this.formatted=void 0,this;if(this.options=L,this.loose=!!L.loose,this.includePrerelease=!!L.includePrerelease,this.raw=c.trim().replace(r," "),this.set=this.raw.split("||").map(d=>this.parseRange(d.trim())).filter(d=>d.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let d=this.set[0];if(this.set=this.set.filter(_=>!T(_[0])),this.set.length===0)this.set=[d];else if(this.set.length>1){for(let _ of this.set)if(_.length===1&&A(_[0])){this.set=[_];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let c=0;c0&&(this.formatted+="||");let L=this.set[c];for(let d=0;d0&&(this.formatted+=" "),this.formatted+=L[d].toString().trim()}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(c){let L=((this.options.includePrerelease&&o)|(this.options.loose&&I))+":"+c,d=t.get(L);if(d)return d;let _=this.options.loose,R=_?a[v.HYPHENRANGELOOSE]:a[v.HYPHENRANGE];c=c.replace(R,ae(this.options.includePrerelease)),e("hyphen replace",c),c=c.replace(a[v.COMPARATORTRIM],s),e("comparator trim",c),c=c.replace(a[v.TILDETRIM],u),e("tilde trim",c),c=c.replace(a[v.CARETTRIM],p),e("caret trim",c);let N=c.split(" ").map(j=>D(j,this.options)).join(" ").split(/\s+/).map(j=>se(j,this.options));_&&(N=N.filter(j=>(e("loose invalid filter",j,this.options),!!j.match(a[v.COMPARATORLOOSE])))),e("range list",N);let w=new Map,g=N.map(j=>new h(j,this.options));for(let j of g){if(T(j))return[j];w.set(j.value,j)}w.size>1&&w.has("")&&w.delete("");let x=[...w.values()];return t.set(L,x),x}intersects(c,L){if(!(c instanceof K))throw new TypeError("a Range is required");return this.set.some(d=>y(d,L)&&c.set.some(_=>y(_,L)&&d.every(R=>_.every(N=>R.intersects(N,L)))))}test(c){if(!c)return!1;if(typeof c=="string")try{c=new f(c,this.options)}catch{return!1}for(let L=0;L$.value==="<0.0.0-0",A=$=>$.value==="",y=($,c)=>{let L=!0,d=$.slice(),_=d.pop();for(;L&&d.length;)L=d.every(R=>_.intersects(R,c)),_=d.pop();return L},D=($,c)=>(e("comp",$,c),$=C($,c),e("caret",$),$=b($,c),e("tildes",$),$=S($,c),e("xrange",$),$=te($,c),e("stars",$),$),P=$=>!$||$.toLowerCase()==="x"||$==="*",b=($,c)=>$.trim().split(/\s+/).map(L=>F(L,c)).join(" "),F=($,c)=>{let L=c.loose?a[v.TILDELOOSE]:a[v.TILDE];return $.replace(L,(d,_,R,N,w)=>{e("tilde",$,d,_,R,N,w);let g;return P(_)?g="":P(R)?g=`>=${_}.0.0 <${+_+1}.0.0-0`:P(N)?g=`>=${_}.${R}.0 <${_}.${+R+1}.0-0`:w?(e("replaceTilde pr",w),g=`>=${_}.${R}.${N}-${w} <${_}.${+R+1}.0-0`):g=`>=${_}.${R}.${N} <${_}.${+R+1}.0-0`,e("tilde return",g),g})},C=($,c)=>$.trim().split(/\s+/).map(L=>G(L,c)).join(" "),G=($,c)=>{e("caret",$,c);let L=c.loose?a[v.CARETLOOSE]:a[v.CARET],d=c.includePrerelease?"-0":"";return $.replace(L,(_,R,N,w,g)=>{e("caret",$,_,R,N,w,g);let x;return P(R)?x="":P(N)?x=`>=${R}.0.0${d} <${+R+1}.0.0-0`:P(w)?R==="0"?x=`>=${R}.${N}.0${d} <${R}.${+N+1}.0-0`:x=`>=${R}.${N}.0${d} <${+R+1}.0.0-0`:g?(e("replaceCaret pr",g),R==="0"?N==="0"?x=`>=${R}.${N}.${w}-${g} <${R}.${N}.${+w+1}-0`:x=`>=${R}.${N}.${w}-${g} <${R}.${+N+1}.0-0`:x=`>=${R}.${N}.${w}-${g} <${+R+1}.0.0-0`):(e("no pr"),R==="0"?N==="0"?x=`>=${R}.${N}.${w}${d} <${R}.${N}.${+w+1}-0`:x=`>=${R}.${N}.${w}${d} <${R}.${+N+1}.0-0`:x=`>=${R}.${N}.${w} <${+R+1}.0.0-0`),e("caret return",x),x})},S=($,c)=>(e("replaceXRanges",$,c),$.split(/\s+/).map(L=>B(L,c)).join(" ")),B=($,c)=>{$=$.trim();let L=c.loose?a[v.XRANGELOOSE]:a[v.XRANGE];return $.replace(L,(d,_,R,N,w,g)=>{e("xRange",$,d,_,R,N,w,g);let x=P(R),j=x||P(N),M=j||P(w),W=M;return _==="="&&W&&(_=""),g=c.includePrerelease?"-0":"",x?_===">"||_==="<"?d="<0.0.0-0":d="*":_&&W?(j&&(N=0),w=0,_===">"?(_=">=",j?(R=+R+1,N=0,w=0):(N=+N+1,w=0)):_==="<="&&(_="<",j?R=+R+1:N=+N+1),_==="<"&&(g="-0"),d=`${_+R}.${N}.${w}${g}`):j?d=`>=${R}.0.0${g} <${+R+1}.0.0-0`:M&&(d=`>=${R}.${N}.0${g} <${R}.${+N+1}.0-0`),e("xRange return",d),d})},te=($,c)=>(e("replaceStars",$,c),$.trim().replace(a[v.STAR],"")),se=($,c)=>(e("replaceGTE0",$,c),$.trim().replace(a[c.includePrerelease?v.GTE0PRE:v.GTE0],"")),ae=$=>(c,L,d,_,R,N,w,g,x,j,M,W)=>(P(d)?L="":P(_)?L=`>=${d}.0.0${$?"-0":""}`:P(R)?L=`>=${d}.${_}.0${$?"-0":""}`:N?L=`>=${L}`:L=`>=${L}${$?"-0":""}`,P(x)?g="":P(j)?g=`<${+x+1}.0.0-0`:P(M)?g=`<${x}.${+j+1}.0-0`:W?g=`<=${x}.${j}.${M}-${W}`:$?g=`<${x}.${j}.${+M+1}-0`:g=`<=${g}`,`${L} ${g}`.trim()),ie=($,c,L)=>{for(let d=0;d<$.length;d++)if(!$[d].test(c))return!1;if(c.prerelease.length&&!L.includePrerelease){for(let d=0;d<$.length;d++)if(e($[d].semver),$[d].semver!==h.ANY&&$[d].semver.prerelease.length>0){let _=$[d].semver;if(_.major===c.major&&_.minor===c.minor&&_.patch===c.patch)return!0}return!1}return!0}}}),ee=O({"../../node_modules/semver/classes/comparator.js"(m,l){var r=Symbol("SemVer ANY"),i=class ue{static get ANY(){return r}constructor(s,u){if(u=n(u),s instanceof ue){if(s.loose===!!u.loose)return s;s=s.value}s=s.trim().split(/\s+/).join(" "),e("comparator",s,u),this.options=u,this.loose=!!u.loose,this.parse(s),this.semver===r?this.value="":this.value=this.operator+this.semver.version,e("comp",this)}parse(s){let u=this.options.loose?t[E.COMPARATORLOOSE]:t[E.COMPARATOR],p=s.match(u);if(!p)throw new TypeError(`Invalid comparator: ${s}`);this.operator=p[1]!==void 0?p[1]:"",this.operator==="="&&(this.operator=""),p[2]?this.semver=new f(p[2],this.options.loose):this.semver=r}toString(){return this.value}test(s){if(e("Comparator.test",s,this.options.loose),this.semver===r||s===r)return!0;if(typeof s=="string")try{s=new f(s,this.options)}catch{return!1}return h(s,this.operator,this.semver,this.options)}intersects(s,u){if(!(s instanceof ue))throw new TypeError("a Comparator is required");return this.operator===""?this.value===""?!0:new a(s.value,u).test(this.value):s.operator===""?s.value===""?!0:new a(this.value,u).test(s.semver):(u=n(u),u.includePrerelease&&(this.value==="<0.0.0-0"||s.value==="<0.0.0-0")||!u.includePrerelease&&(this.value.startsWith("<0.0.0")||s.value.startsWith("<0.0.0"))?!1:!!(this.operator.startsWith(">")&&s.operator.startsWith(">")||this.operator.startsWith("<")&&s.operator.startsWith("<")||this.semver.version===s.semver.version&&this.operator.includes("=")&&s.operator.includes("=")||h(this.semver,"<",s.semver,u)&&this.operator.startsWith(">")&&s.operator.startsWith("<")||h(this.semver,">",s.semver,u)&&this.operator.startsWith("<")&&s.operator.startsWith(">")))}};l.exports=i;var n=me(),{safeRe:t,t:E}=z(),h=Oe(),e=Z(),f=q(),a=U()}}),re=O({"../../node_modules/semver/functions/satisfies.js"(m,l){var r=U(),i=(n,t,E)=>{try{t=new r(t,E)}catch{return!1}return t.test(n)};l.exports=i}}),He=O({"../../node_modules/semver/ranges/to-comparators.js"(m,l){var r=U(),i=(n,t)=>new r(n,t).set.map(E=>E.map(h=>h.value).join(" ").trim().split(" "));l.exports=i}}),Be=O({"../../node_modules/semver/ranges/max-satisfying.js"(m,l){var r=q(),i=U(),n=(t,E,h)=>{let e=null,f=null,a=null;try{a=new i(E,h)}catch{return null}return t.forEach(v=>{a.test(v)&&(!e||f.compare(v)===-1)&&(e=v,f=new r(e,h))}),e};l.exports=n}}),We=O({"../../node_modules/semver/ranges/min-satisfying.js"(m,l){var r=q(),i=U(),n=(t,E,h)=>{let e=null,f=null,a=null;try{a=new i(E,h)}catch{return null}return t.forEach(v=>{a.test(v)&&(!e||f.compare(v)===1)&&(e=v,f=new r(e,h))}),e};l.exports=n}}),Ye=O({"../../node_modules/semver/ranges/min-version.js"(m,l){var r=q(),i=U(),n=J(),t=(E,h)=>{E=new i(E,h);let e=new r("0.0.0");if(E.test(e)||(e=new r("0.0.0-0"),E.test(e)))return e;e=null;for(let f=0;f{let u=new r(s.semver.version);switch(s.operator){case">":u.prerelease.length===0?u.patch++:u.prerelease.push(0),u.raw=u.format();case"":case">=":(!v||n(u,v))&&(v=u);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${s.operator}`)}}),v&&(!e||n(e,v))&&(e=v)}return e&&E.test(e)?e:null};l.exports=t}}),ze=O({"../../node_modules/semver/ranges/valid.js"(m,l){var r=U(),i=(n,t)=>{try{return new r(n,t).range||"*"}catch{return null}};l.exports=i}}),$e=O({"../../node_modules/semver/ranges/outside.js"(m,l){var r=q(),i=ee(),{ANY:n}=i,t=U(),E=re(),h=J(),e=he(),f=ve(),a=fe(),v=(s,u,p,o)=>{s=new r(s,o),u=new t(u,o);let I,T,A,y,D;switch(p){case">":I=h,T=f,A=e,y=">",D=">=";break;case"<":I=e,T=a,A=h,y="<",D="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(E(s,u,o))return!1;for(let P=0;P{G.semver===n&&(G=new i(">=0.0.0")),F=F||G,C=C||G,I(G.semver,F.semver,o)?F=G:A(G.semver,C.semver,o)&&(C=G)}),F.operator===y||F.operator===D||(!C.operator||C.operator===y)&&T(s,C.semver)||C.operator===D&&A(s,C.semver))return!1}return!0};l.exports=v}}),Ke=O({"../../node_modules/semver/ranges/gtr.js"(m,l){var r=$e(),i=(n,t,E)=>r(n,t,">",E);l.exports=i}}),Qe=O({"../../node_modules/semver/ranges/ltr.js"(m,l){var r=$e(),i=(n,t,E)=>r(n,t,"<",E);l.exports=i}}),Ze=O({"../../node_modules/semver/ranges/intersects.js"(m,l){var r=U(),i=(n,t,E)=>(n=new r(n,E),t=new r(t,E),n.intersects(t,E));l.exports=i}}),Je=O({"../../node_modules/semver/ranges/simplify.js"(m,l){var r=re(),i=V();l.exports=(n,t,E)=>{let h=[],e=null,f=null,a=n.sort((p,o)=>i(p,o,E));for(let p of a)r(p,t,E)?(f=p,e||(e=p)):(f&&h.push([e,f]),f=null,e=null);e&&h.push([e,null]);let v=[];for(let[p,o]of h)p===o?v.push(p):!o&&p===a[0]?v.push("*"):o?p===a[0]?v.push(`<=${o}`):v.push(`${p} - ${o}`):v.push(`>=${p}`);let s=v.join(" || "),u=typeof t.raw=="string"?t.raw:String(t);return s.length{if(u===p)return!0;u=new r(u,o),p=new r(p,o);let I=!1;e:for(let T of u.set){for(let A of p.set){let y=a(T,A,o);if(I=I||y!==null,y)continue e}if(I)return!1}return!0},e=[new i(">=0.0.0-0")],f=[new i(">=0.0.0")],a=(u,p,o)=>{if(u===p)return!0;if(u.length===1&&u[0].semver===n){if(p.length===1&&p[0].semver===n)return!0;o.includePrerelease?u=e:u=f}if(p.length===1&&p[0].semver===n){if(o.includePrerelease)return!0;p=f}let I=new Set,T,A;for(let S of u)S.operator===">"||S.operator===">="?T=v(T,S,o):S.operator==="<"||S.operator==="<="?A=s(A,S,o):I.add(S.semver);if(I.size>1)return null;let y;if(T&&A&&(y=E(T.semver,A.semver,o),y>0||y===0&&(T.operator!==">="||A.operator!=="<=")))return null;for(let S of I){if(T&&!t(S,String(T),o)||A&&!t(S,String(A),o))return null;for(let B of p)if(!t(S,String(B),o))return!1;return!0}let D,P,b,F,C=A&&!o.includePrerelease&&A.semver.prerelease.length?A.semver:!1,G=T&&!o.includePrerelease&&T.semver.prerelease.length?T.semver:!1;C&&C.prerelease.length===1&&A.operator==="<"&&C.prerelease[0]===0&&(C=!1);for(let S of p){if(F=F||S.operator===">"||S.operator===">=",b=b||S.operator==="<"||S.operator==="<=",T){if(G&&S.semver.prerelease&&S.semver.prerelease.length&&S.semver.major===G.major&&S.semver.minor===G.minor&&S.semver.patch===G.patch&&(G=!1),S.operator===">"||S.operator===">="){if(D=v(T,S,o),D===S&&D!==T)return!1}else if(T.operator===">="&&!t(T.semver,String(S),o))return!1}if(A){if(C&&S.semver.prerelease&&S.semver.prerelease.length&&S.semver.major===C.major&&S.semver.minor===C.minor&&S.semver.patch===C.patch&&(C=!1),S.operator==="<"||S.operator==="<="){if(P=s(A,S,o),P===S&&P!==A)return!1}else if(A.operator==="<="&&!t(A.semver,String(S),o))return!1}if(!S.operator&&(A||T)&&y!==0)return!1}return!(T&&b&&!A&&y!==0||A&&F&&!T&&y!==0||G||C)},v=(u,p,o)=>{if(!u)return p;let I=E(u.semver,p.semver,o);return I>0?u:I<0||p.operator===">"&&u.operator===">="?p:u},s=(u,p,o)=>{if(!u)return p;let I=E(u.semver,p.semver,o);return I<0?u:I>0||p.operator==="<"&&u.operator==="<="?p:u};l.exports=h}}),rr=O({"../../node_modules/semver/index.js"(m,l){var r=z(),i=Q(),n=q(),t=Le(),E=H(),h=je(),e=Pe(),f=Ce(),a=ye(),v=De(),s=Ge(),u=qe(),p=Fe(),o=V(),I=Ve(),T=Ue(),A=ce(),y=Xe(),D=be(),P=J(),b=he(),F=_e(),C=Ne(),G=fe(),S=ve(),B=Oe(),te=ke(),se=ee(),ae=U(),ie=re(),$=He(),c=Be(),L=We(),d=Ye(),_=ze(),R=$e(),N=Ke(),w=Qe(),g=Ze(),x=Je(),j=er();l.exports={parse:E,valid:h,clean:e,inc:f,diff:a,major:v,minor:s,patch:u,prerelease:p,compare:o,rcompare:I,compareLoose:T,compareBuild:A,sort:y,rsort:D,gt:P,lt:b,eq:F,neq:C,gte:G,lte:S,cmp:B,coerce:te,Comparator:se,Range:ae,satisfies:ie,toComparators:$,maxSatisfying:c,minSatisfying:L,minVersion:d,validRange:_,outside:R,gtr:N,ltr:w,intersects:g,simplifyRange:x,subset:j,SemVer:n,re:r.re,src:r.src,tokens:r.t,SEMVER_SPEC_VERSION:i.SEMVER_SPEC_VERSION,RELEASE_TYPES:i.RELEASE_TYPES,compareIdentifiers:t.compareIdentifiers,rcompareIdentifiers:t.rcompareIdentifiers}}}),tr={};ge(tr,{beforeAll:()=>pr,decorators:()=>Er,mount:()=>or,parameters:()=>ur,render:()=>ir,renderToCanvas:()=>lr});var de=Ae(rr()),sr={...we};function Re(m){globalThis.IS_REACT_ACT_ENVIRONMENT=m}function ar(){return globalThis.IS_REACT_ACT_ENVIRONMENT}var Se=async()=>{var m;if(typeof sr.act!="function"){let l=await pe(()=>import("./test-utils-Cye2pOmz.js").then(r=>r.t),__vite__mapDeps([0,1]),import.meta.url);((m=l==null?void 0:l.default)==null?void 0:m.act)??l.act}return l=>l()},ir=(m,l)=>{let{id:r,component:i}=l;if(!i)throw new Error(`Unable to render story ${r} as the component annotation is missing from the default export`);return Y.createElement(i,{...m})},{FRAMEWORK_OPTIONS:le}=xe,nr=class extends k.Component{constructor(){super(...arguments),this.state={hasError:!1}}static getDerivedStateFromError(){return{hasError:!0}}componentDidMount(){let{hasError:m}=this.state,{showMain:l}=this.props;m||l()}componentDidCatch(m){let{showException:l}=this.props;l(m)}render(){let{hasError:m}=this.state,{children:l}=this.props;return m?null:l}},Ie=le!=null&&le.strictMode?k.StrictMode:k.Fragment,Ee=[],oe=!1,Te=async()=>{if(oe||Ee.length===0)return;oe=!0;let m=Ee.shift();m&&await m(),oe=!1,Te()};async function lr({storyContext:m,unboundStoryFn:l,showMain:r,showException:i,forceRemount:n},t){let{renderElement:E,unmountElement:h}=await pe(async()=>{const{renderElement:s,unmountElement:u}=await import("./react-18-BRu_gB4I.js");return{renderElement:s,unmountElement:u}},__vite__mapDeps([2,1,3]),import.meta.url),e=l,f=m.parameters.__isPortableStory?Y.createElement(e,{...m}):Y.createElement(nr,{showMain:r,showException:i},Y.createElement(e,{...m})),a=Ie?Y.createElement(Ie,null,f):f;n&&h(t);let v=await Se();return await new Promise(async(s,u)=>{Ee.push(async()=>{try{await v(async()=>{var p,o;await E(a,t,(o=(p=m==null?void 0:m.parameters)==null?void 0:p.react)==null?void 0:o.rootOptions)}),s()}catch(p){u(p)}}),Te()}),async()=>{await v(()=>{h(t)})}}var or=m=>async l=>(l!=null&&(m.originalStoryFn=()=>l),await m.renderToCanvas(),m.canvas),ur={renderer:"react"},Er=[(m,l)=>{var n,t;if(!((t=(n=l.parameters)==null?void 0:n.react)!=null&&t.rsc))return m();let r=de.default.major(k.version),i=de.default.minor(k.version);if(r<18||r===18&&i<3)throw new Error("React Server Components require React >= 18.3");return k.createElement(k.Suspense,null,m())}],pr=async()=>{try{let{configure:m}=await pe(async()=>{const{configure:r}=await import("./index-B9TJ7cVi.js");return{configure:r}},[],import.meta.url),l=await Se();m({unstable_advanceTimersWrapper:r=>l(r),asyncWrapper:async r=>{let i=ar();Re(!1);try{let n=await r();return await new Promise(t=>{setTimeout(()=>{t()},0),mr()&&jest.advanceTimersByTime(0)}),n}finally{Re(i)}},eventWrapper:r=>{let i;return l(()=>(i=r(),i)),i}})}catch{}};function mr(){return typeof jest<"u"&&jest!==null?setTimeout._isMockFunction===!0||Object.prototype.hasOwnProperty.call(setTimeout,"clock"):!1}export{pr as beforeAll,Er as decorators,or as mount,ur as parameters,ir as render,lr as renderToCanvas}; diff --git a/apps/portal/public/storybook/assets/entry-preview-docs-CAgjVEX9.js b/apps/portal/public/storybook/assets/entry-preview-docs-CAgjVEX9.js new file mode 100644 index 00000000..46986dd8 --- /dev/null +++ b/apps/portal/public/storybook/assets/entry-preview-docs-CAgjVEX9.js @@ -0,0 +1,46 @@ +import{_ as nt,a as Z,c as Mr,d as gi,b as yn}from"./chunk-XP5HYGXS-BHXC9YeQ.js";import{c as Di,n as Ai,y as Ci,g as Vr,z as Ei,o as yi,j as qr,l as ee,B as Fi,a as Dt,Y as Ur}from"./index-DgH-xKnr.js";import{r as Ge,R as ft}from"./index-JhL3uwfD.js";const{logger:vt}=__STORYBOOK_MODULE_CLIENT_LOGGER__,{defaultDecorateStory:xi,addons:vi,useEffect:_i}=__STORYBOOK_MODULE_PREVIEW_API__;var Si=Z({"../../node_modules/prop-types/lib/ReactPropTypesSecret.js"(e,t){var r="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";t.exports=r}}),bi=Z({"../../node_modules/prop-types/factoryWithThrowingShims.js"(e,t){var r=Si();function n(){}function s(){}s.resetWarningCache=n,t.exports=function(){function o(p,m,g,F,A,C){if(C!==r){var D=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw D.name="Invariant Violation",D}}o.isRequired=o;function u(){return o}var h={array:o,bigint:o,bool:o,func:o,number:o,object:o,string:o,symbol:o,any:o,arrayOf:u,element:o,elementType:o,instanceOf:u,node:o,objectOf:u,oneOf:u,oneOfType:u,shape:u,exact:u,checkPropTypes:s,resetWarningCache:n};return h.PropTypes=h,h}}}),Bi=Z({"../../node_modules/prop-types/index.js"(e,t){t.exports=bi()()}}),wi=Z({"../../node_modules/html-tags/html-tags.json"(e,t){t.exports=["a","abbr","address","area","article","aside","audio","b","base","bdi","bdo","blockquote","body","br","button","canvas","caption","cite","code","col","colgroup","data","datalist","dd","del","details","dfn","dialog","div","dl","dt","em","embed","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","iframe","img","input","ins","kbd","label","legend","li","link","main","map","mark","math","menu","menuitem","meta","meter","nav","noscript","object","ol","optgroup","option","output","p","param","picture","pre","progress","q","rb","rp","rt","rtc","ruby","s","samp","script","search","section","select","slot","small","source","span","strong","style","sub","summary","sup","svg","table","tbody","td","template","textarea","tfoot","th","thead","time","title","tr","track","u","ul","var","video","wbr"]}}),ki=Z({"../../node_modules/html-tags/index.js"(e,t){t.exports=wi()}}),Ii=Z({"../../node_modules/estraverse/estraverse.js"(e){(function t(r){var n,s,o,u,h,p;function m(x){var y={},v,B;for(v in x)x.hasOwnProperty(v)&&(B=x[v],typeof B=="object"&&B!==null?y[v]=m(B):y[v]=B);return y}function g(x,y){var v,B,P,j;for(B=x.length,P=0;B;)v=B>>>1,j=P+v,y(x[j])?B=v:(P=j+1,B-=v+1);return P}n={AssignmentExpression:"AssignmentExpression",AssignmentPattern:"AssignmentPattern",ArrayExpression:"ArrayExpression",ArrayPattern:"ArrayPattern",ArrowFunctionExpression:"ArrowFunctionExpression",AwaitExpression:"AwaitExpression",BlockStatement:"BlockStatement",BinaryExpression:"BinaryExpression",BreakStatement:"BreakStatement",CallExpression:"CallExpression",CatchClause:"CatchClause",ChainExpression:"ChainExpression",ClassBody:"ClassBody",ClassDeclaration:"ClassDeclaration",ClassExpression:"ClassExpression",ComprehensionBlock:"ComprehensionBlock",ComprehensionExpression:"ComprehensionExpression",ConditionalExpression:"ConditionalExpression",ContinueStatement:"ContinueStatement",DebuggerStatement:"DebuggerStatement",DirectiveStatement:"DirectiveStatement",DoWhileStatement:"DoWhileStatement",EmptyStatement:"EmptyStatement",ExportAllDeclaration:"ExportAllDeclaration",ExportDefaultDeclaration:"ExportDefaultDeclaration",ExportNamedDeclaration:"ExportNamedDeclaration",ExportSpecifier:"ExportSpecifier",ExpressionStatement:"ExpressionStatement",ForStatement:"ForStatement",ForInStatement:"ForInStatement",ForOfStatement:"ForOfStatement",FunctionDeclaration:"FunctionDeclaration",FunctionExpression:"FunctionExpression",GeneratorExpression:"GeneratorExpression",Identifier:"Identifier",IfStatement:"IfStatement",ImportExpression:"ImportExpression",ImportDeclaration:"ImportDeclaration",ImportDefaultSpecifier:"ImportDefaultSpecifier",ImportNamespaceSpecifier:"ImportNamespaceSpecifier",ImportSpecifier:"ImportSpecifier",Literal:"Literal",LabeledStatement:"LabeledStatement",LogicalExpression:"LogicalExpression",MemberExpression:"MemberExpression",MetaProperty:"MetaProperty",MethodDefinition:"MethodDefinition",ModuleSpecifier:"ModuleSpecifier",NewExpression:"NewExpression",ObjectExpression:"ObjectExpression",ObjectPattern:"ObjectPattern",PrivateIdentifier:"PrivateIdentifier",Program:"Program",Property:"Property",PropertyDefinition:"PropertyDefinition",RestElement:"RestElement",ReturnStatement:"ReturnStatement",SequenceExpression:"SequenceExpression",SpreadElement:"SpreadElement",Super:"Super",SwitchStatement:"SwitchStatement",SwitchCase:"SwitchCase",TaggedTemplateExpression:"TaggedTemplateExpression",TemplateElement:"TemplateElement",TemplateLiteral:"TemplateLiteral",ThisExpression:"ThisExpression",ThrowStatement:"ThrowStatement",TryStatement:"TryStatement",UnaryExpression:"UnaryExpression",UpdateExpression:"UpdateExpression",VariableDeclaration:"VariableDeclaration",VariableDeclarator:"VariableDeclarator",WhileStatement:"WhileStatement",WithStatement:"WithStatement",YieldExpression:"YieldExpression"},o={AssignmentExpression:["left","right"],AssignmentPattern:["left","right"],ArrayExpression:["elements"],ArrayPattern:["elements"],ArrowFunctionExpression:["params","body"],AwaitExpression:["argument"],BlockStatement:["body"],BinaryExpression:["left","right"],BreakStatement:["label"],CallExpression:["callee","arguments"],CatchClause:["param","body"],ChainExpression:["expression"],ClassBody:["body"],ClassDeclaration:["id","superClass","body"],ClassExpression:["id","superClass","body"],ComprehensionBlock:["left","right"],ComprehensionExpression:["blocks","filter","body"],ConditionalExpression:["test","consequent","alternate"],ContinueStatement:["label"],DebuggerStatement:[],DirectiveStatement:[],DoWhileStatement:["body","test"],EmptyStatement:[],ExportAllDeclaration:["source"],ExportDefaultDeclaration:["declaration"],ExportNamedDeclaration:["declaration","specifiers","source"],ExportSpecifier:["exported","local"],ExpressionStatement:["expression"],ForStatement:["init","test","update","body"],ForInStatement:["left","right","body"],ForOfStatement:["left","right","body"],FunctionDeclaration:["id","params","body"],FunctionExpression:["id","params","body"],GeneratorExpression:["blocks","filter","body"],Identifier:[],IfStatement:["test","consequent","alternate"],ImportExpression:["source"],ImportDeclaration:["specifiers","source"],ImportDefaultSpecifier:["local"],ImportNamespaceSpecifier:["local"],ImportSpecifier:["imported","local"],Literal:[],LabeledStatement:["label","body"],LogicalExpression:["left","right"],MemberExpression:["object","property"],MetaProperty:["meta","property"],MethodDefinition:["key","value"],ModuleSpecifier:[],NewExpression:["callee","arguments"],ObjectExpression:["properties"],ObjectPattern:["properties"],PrivateIdentifier:[],Program:["body"],Property:["key","value"],PropertyDefinition:["key","value"],RestElement:["argument"],ReturnStatement:["argument"],SequenceExpression:["expressions"],SpreadElement:["argument"],Super:[],SwitchStatement:["discriminant","cases"],SwitchCase:["test","consequent"],TaggedTemplateExpression:["tag","quasi"],TemplateElement:[],TemplateLiteral:["quasis","expressions"],ThisExpression:[],ThrowStatement:["argument"],TryStatement:["block","handler","finalizer"],UnaryExpression:["argument"],UpdateExpression:["argument"],VariableDeclaration:["declarations"],VariableDeclarator:["id","init"],WhileStatement:["test","body"],WithStatement:["object","body"],YieldExpression:["argument"]},u={},h={},p={},s={Break:u,Skip:h,Remove:p};function F(x,y){this.parent=x,this.key=y}F.prototype.replace=function(x){this.parent[this.key]=x},F.prototype.remove=function(){return Array.isArray(this.parent)?(this.parent.splice(this.key,1),!0):(this.replace(null),!1)};function A(x,y,v,B){this.node=x,this.path=y,this.wrap=v,this.ref=B}function C(){}C.prototype.path=function(){var x,y,v,B,P,j;function M(V,U){if(Array.isArray(U))for(v=0,B=U.length;v=0;--v)if(x[v].node===y)return!0;return!1}C.prototype.traverse=function(x,y){var v,B,P,j,M,V,U,Q,ne,se,ue,$;for(this.__initialize(x,y),$={},v=this.__worklist,B=this.__leavelist,v.push(new A(x,null,null,null)),B.push(new A(null,null,null,null));v.length;){if(P=v.pop(),P===$){if(P=B.pop(),V=this.__execute(y.leave,P),this.__state===u||V===u)return;continue}if(P.node){if(V=this.__execute(y.enter,P),this.__state===u||V===u)return;if(v.push($),B.push(P),this.__state===h||V===h)continue;if(j=P.node,M=j.type||P.wrap,se=this.__keys[M],!se)if(this.__fallback)se=this.__fallback(j);else throw new Error("Unknown node type "+M+".");for(Q=se.length;(Q-=1)>=0;)if(U=se[Q],ue=j[U],!!ue){if(Array.isArray(ue)){for(ne=ue.length;(ne-=1)>=0;)if(ue[ne]&&!w(B,ue[ne])){if(E(M,se[Q]))P=new A(ue[ne],[U,ne],"Property",null);else if(D(ue[ne]))P=new A(ue[ne],[U,ne],null,null);else continue;v.push(P)}}else if(D(ue)){if(w(B,ue))continue;v.push(new A(ue,U,null,null))}}}}},C.prototype.replace=function(x,y){var v,B,P,j,M,V,U,Q,ne,se,ue,$,we;function st(Re){var R,Xe,je,ut;if(Re.ref.remove()){for(Xe=Re.ref.key,ut=Re.ref.parent,R=v.length;R--;)if(je=v[R],je.ref&&je.ref.parent===ut){if(je.ref.key=0;)if(we=ne[U],se=P[we],!!se)if(Array.isArray(se)){for(Q=se.length;(Q-=1)>=0;)if(se[Q]){if(E(j,ne[U]))V=new A(se[Q],[we,Q],"Property",new F(se,Q));else if(D(se[Q]))V=new A(se[Q],[we,Q],null,new F(se,Q));else continue;v.push(V)}}else D(se)&&v.push(new A(se,we,null,new F(P,we)))}}return $.root};function b(x,y){var v=new C;return v.traverse(x,y)}function S(x,y){var v=new C;return v.replace(x,y)}function L(x,y){var v;return v=g(y,function(B){return B.range[0]>x.range[0]}),x.extendedRange=[x.range[0],x.range[1]],v!==y.length&&(x.extendedRange[1]=y[v].range[0]),v-=1,v>=0&&(x.extendedRange[0]=y[v].range[1]),x}function _(x,y,v){var B=[],P,j,M,V;if(!x.range)throw new Error("attachComments needs range information");if(!v.length){if(y.length){for(M=0,j=y.length;MU.range[0]));)Q.extendedRange[1]===U.range[0]?(U.leadingComments||(U.leadingComments=[]),U.leadingComments.push(Q),B.splice(V,1)):V+=1;if(V===B.length)return s.Break;if(B[V].extendedRange[0]>U.range[1])return s.Skip}}),V=0,b(x,{leave:function(U){for(var Q;VU.range[1])return s.Skip}}),x}return r.Syntax=n,r.traverse=b,r.replace=S,r.attachComments=_,r.VisitorKeys=o,r.VisitorOption=s,r.Controller=C,r.cloneEnvironment=function(){return t({})},r})(e)}}),Ti=Z({"../../node_modules/esutils/lib/ast.js"(e,t){(function(){function r(p){if(p==null)return!1;switch(p.type){case"ArrayExpression":case"AssignmentExpression":case"BinaryExpression":case"CallExpression":case"ConditionalExpression":case"FunctionExpression":case"Identifier":case"Literal":case"LogicalExpression":case"MemberExpression":case"NewExpression":case"ObjectExpression":case"SequenceExpression":case"ThisExpression":case"UnaryExpression":case"UpdateExpression":return!0}return!1}function n(p){if(p==null)return!1;switch(p.type){case"DoWhileStatement":case"ForInStatement":case"ForStatement":case"WhileStatement":return!0}return!1}function s(p){if(p==null)return!1;switch(p.type){case"BlockStatement":case"BreakStatement":case"ContinueStatement":case"DebuggerStatement":case"DoWhileStatement":case"EmptyStatement":case"ExpressionStatement":case"ForInStatement":case"ForStatement":case"IfStatement":case"LabeledStatement":case"ReturnStatement":case"SwitchStatement":case"ThrowStatement":case"TryStatement":case"VariableDeclaration":case"WhileStatement":case"WithStatement":return!0}return!1}function o(p){return s(p)||p!=null&&p.type==="FunctionDeclaration"}function u(p){switch(p.type){case"IfStatement":return p.alternate!=null?p.alternate:p.consequent;case"LabeledStatement":case"ForStatement":case"ForInStatement":case"WhileStatement":case"WithStatement":return p.body}return null}function h(p){var m;if(p.type!=="IfStatement"||p.alternate==null)return!1;m=p.consequent;do{if(m.type==="IfStatement"&&m.alternate==null)return!0;m=u(m)}while(m);return!1}t.exports={isExpression:r,isStatement:s,isIterationStatement:n,isSourceElement:o,isProblematicIfStatement:h,trailingStatement:u}})()}}),Fn=Z({"../../node_modules/esutils/lib/code.js"(e,t){(function(){var r,n,s,o,u,h;n={NonAsciiIdentifierStart:/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]/,NonAsciiIdentifierPart:/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u08A0-\u08B4\u08B6-\u08BD\u08D4-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D01-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19D9\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1CD0-\u1CD2\u1CD4-\u1CF6\u1CF8\u1CF9\u1D00-\u1DF5\u1DFB-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u200C\u200D\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u2E2F\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099\u309A\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]/},r={NonAsciiIdentifierStart:/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF30-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDF00-\uDF19]|\uD806[\uDCA0-\uDCDF\uDCFF\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50\uDF93-\uDF9F\uDFE0]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00\uDC01]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1]|\uD87E[\uDC00-\uDE1D]/,NonAsciiIdentifierPart:/[\xAA\xB5\xB7\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u08A0-\u08B4\u08B6-\u08BD\u08D4-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D01-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1369-\u1371\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19DA\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1CD0-\u1CD2\u1CD4-\u1CF6\u1CF8\u1CF9\u1D00-\u1DF5\u1DFB-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u200C\u200D\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDDFD\uDE80-\uDE9C\uDEA0-\uDED0\uDEE0\uDF00-\uDF1F\uDF30-\uDF4A\uDF50-\uDF7A\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00-\uDE03\uDE05\uDE06\uDE0C-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE38-\uDE3A\uDE3F\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE6\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC00-\uDC46\uDC66-\uDC6F\uDC7F-\uDCBA\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD00-\uDD34\uDD36-\uDD3F\uDD50-\uDD73\uDD76\uDD80-\uDDC4\uDDCA-\uDDCC\uDDD0-\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE37\uDE3E\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEEA\uDEF0-\uDEF9\uDF00-\uDF03\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3C-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF50\uDF57\uDF5D-\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC00-\uDC4A\uDC50-\uDC59\uDC80-\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDB5\uDDB8-\uDDC0\uDDD8-\uDDDD\uDE00-\uDE40\uDE44\uDE50-\uDE59\uDE80-\uDEB7\uDEC0-\uDEC9\uDF00-\uDF19\uDF1D-\uDF2B\uDF30-\uDF39]|\uD806[\uDCA0-\uDCE9\uDCFF\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC36\uDC38-\uDC40\uDC50-\uDC59\uDC72-\uDC8F\uDC92-\uDCA7\uDCA9-\uDCB6]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDEF0-\uDEF4\uDF00-\uDF36\uDF40-\uDF43\uDF50-\uDF59\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50-\uDF7E\uDF8F-\uDF9F\uDFE0]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00\uDC01]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD838[\uDC00-\uDC06\uDC08-\uDC18\uDC1B-\uDC21\uDC23\uDC24\uDC26-\uDC2A]|\uD83A[\uDC00-\uDCC4\uDCD0-\uDCD6\uDD00-\uDD4A\uDD50-\uDD59]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1]|\uD87E[\uDC00-\uDE1D]|\uDB40[\uDD00-\uDDEF]/};function p(S){return 48<=S&&S<=57}function m(S){return 48<=S&&S<=57||97<=S&&S<=102||65<=S&&S<=70}function g(S){return S>=48&&S<=55}s=[5760,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8239,8287,12288,65279];function F(S){return S===32||S===9||S===11||S===12||S===160||S>=5760&&s.indexOf(S)>=0}function A(S){return S===10||S===13||S===8232||S===8233}function C(S){if(S<=65535)return String.fromCharCode(S);var L=String.fromCharCode(Math.floor((S-65536)/1024)+55296),_=String.fromCharCode((S-65536)%1024+56320);return L+_}for(o=new Array(128),h=0;h<128;++h)o[h]=h>=97&&h<=122||h>=65&&h<=90||h===36||h===95;for(u=new Array(128),h=0;h<128;++h)u[h]=h>=97&&h<=122||h>=65&&h<=90||h>=48&&h<=57||h===36||h===95;function D(S){return S<128?o[S]:n.NonAsciiIdentifierStart.test(C(S))}function E(S){return S<128?u[S]:n.NonAsciiIdentifierPart.test(C(S))}function w(S){return S<128?o[S]:r.NonAsciiIdentifierStart.test(C(S))}function b(S){return S<128?u[S]:r.NonAsciiIdentifierPart.test(C(S))}t.exports={isDecimalDigit:p,isHexDigit:m,isOctalDigit:g,isWhiteSpace:F,isLineTerminator:A,isIdentifierStartES5:D,isIdentifierPartES5:E,isIdentifierStartES6:w,isIdentifierPartES6:b}})()}}),Pi=Z({"../../node_modules/esutils/lib/keyword.js"(e,t){(function(){var r=Fn();function n(D){switch(D){case"implements":case"interface":case"package":case"private":case"protected":case"public":case"static":case"let":return!0;default:return!1}}function s(D,E){return!E&&D==="yield"?!1:o(D,E)}function o(D,E){if(E&&n(D))return!0;switch(D.length){case 2:return D==="if"||D==="in"||D==="do";case 3:return D==="var"||D==="for"||D==="new"||D==="try";case 4:return D==="this"||D==="else"||D==="case"||D==="void"||D==="with"||D==="enum";case 5:return D==="while"||D==="break"||D==="catch"||D==="throw"||D==="const"||D==="yield"||D==="class"||D==="super";case 6:return D==="return"||D==="typeof"||D==="delete"||D==="switch"||D==="export"||D==="import";case 7:return D==="default"||D==="finally"||D==="extends";case 8:return D==="function"||D==="continue"||D==="debugger";case 10:return D==="instanceof";default:return!1}}function u(D,E){return D==="null"||D==="true"||D==="false"||s(D,E)}function h(D,E){return D==="null"||D==="true"||D==="false"||o(D,E)}function p(D){return D==="eval"||D==="arguments"}function m(D){var E,w,b;if(D.length===0||(b=D.charCodeAt(0),!r.isIdentifierStartES5(b)))return!1;for(E=1,w=D.length;E=w||(S=D.charCodeAt(E),!(56320<=S&&S<=57343)))return!1;b=g(b,S)}if(!L(b))return!1;L=r.isIdentifierPartES6}return!0}function A(D,E){return m(D)&&!u(D,E)}function C(D,E){return F(D)&&!h(D,E)}t.exports={isKeywordES5:s,isKeywordES6:o,isReservedWordES5:u,isReservedWordES6:h,isRestrictedWord:p,isIdentifierNameES5:m,isIdentifierNameES6:F,isIdentifierES5:A,isIdentifierES6:C}})()}}),Ni=Z({"../../node_modules/esutils/lib/utils.js"(e){(function(){e.ast=Ti(),e.code=Fn(),e.keyword=Pi()})()}}),Li=Z({"../../node_modules/escodegen/node_modules/source-map/lib/base64.js"(e){var t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");e.encode=function(r){if(0<=r&&r>1;return m?-g:g}e.encode=function(p){var m="",g,F=u(p);do g=F&s,F>>>=r,F>0&&(g|=o),m+=t.encode(g);while(F>0);return m},e.decode=function(p,m,g){var F=p.length,A=0,C=0,D,E;do{if(m>=F)throw new Error("Expected more digits in base 64 VLQ value.");if(E=t.decode(p.charCodeAt(m++)),E===-1)throw new Error("Invalid base64 digit: "+p.charAt(m-1));D=!!(E&o),E&=s,A=A+(E<=0;M--)P=B[M],P==="."?B.splice(M,1):P===".."?j++:j>0&&(P===""?(B.splice(M+1,j),j=0):(B.splice(M,2),j--));return x=B.join("/"),x===""&&(x=v?"/":"."),y?(y.path=x,o(y)):x}e.normalize=u;function h(_,x){_===""&&(_="."),x===""&&(x=".");var y=s(x),v=s(_);if(v&&(_=v.path||"/"),y&&!y.scheme)return v&&(y.scheme=v.scheme),o(y);if(y||x.match(n))return x;if(v&&!v.host&&!v.path)return v.host=x,o(v);var B=x.charAt(0)==="/"?x:u(_.replace(/\/+$/,"")+"/"+x);return v?(v.path=B,o(v)):B}e.join=h,e.isAbsolute=function(_){return _.charAt(0)==="/"||r.test(_)};function p(_,x){_===""&&(_="."),_=_.replace(/\/$/,"");for(var y=0;x.indexOf(_+"/")!==0;){var v=_.lastIndexOf("/");if(v<0||(_=_.slice(0,v),_.match(/^([^\/]+:\/)?\/*$/)))return x;++y}return Array(y+1).join("../")+x.substr(_.length+1)}e.relative=p;var m=(function(){var _=Object.create(null);return!("__proto__"in _)})();function g(_){return _}function F(_){return C(_)?"$"+_:_}e.toSetString=m?g:F;function A(_){return C(_)?_.slice(1):_}e.fromSetString=m?g:A;function C(_){if(!_)return!1;var x=_.length;if(x<9||_.charCodeAt(x-1)!==95||_.charCodeAt(x-2)!==95||_.charCodeAt(x-3)!==111||_.charCodeAt(x-4)!==116||_.charCodeAt(x-5)!==111||_.charCodeAt(x-6)!==114||_.charCodeAt(x-7)!==112||_.charCodeAt(x-8)!==95||_.charCodeAt(x-9)!==95)return!1;for(var y=x-10;y>=0;y--)if(_.charCodeAt(y)!==36)return!1;return!0}function D(_,x,y){var v=w(_.source,x.source);return v!==0||(v=_.originalLine-x.originalLine,v!==0)||(v=_.originalColumn-x.originalColumn,v!==0||y)||(v=_.generatedColumn-x.generatedColumn,v!==0)||(v=_.generatedLine-x.generatedLine,v!==0)?v:w(_.name,x.name)}e.compareByOriginalPositions=D;function E(_,x,y){var v=_.generatedLine-x.generatedLine;return v!==0||(v=_.generatedColumn-x.generatedColumn,v!==0||y)||(v=w(_.source,x.source),v!==0)||(v=_.originalLine-x.originalLine,v!==0)||(v=_.originalColumn-x.originalColumn,v!==0)?v:w(_.name,x.name)}e.compareByGeneratedPositionsDeflated=E;function w(_,x){return _===x?0:_===null?1:x===null?-1:_>x?1:-1}function b(_,x){var y=_.generatedLine-x.generatedLine;return y!==0||(y=_.generatedColumn-x.generatedColumn,y!==0)||(y=w(_.source,x.source),y!==0)||(y=_.originalLine-x.originalLine,y!==0)||(y=_.originalColumn-x.originalColumn,y!==0)?y:w(_.name,x.name)}e.compareByGeneratedPositionsInflated=b;function S(_){return JSON.parse(_.replace(/^\)]}'[^\n]*\n/,""))}e.parseSourceMapInput=S;function L(_,x,y){if(x=x||"",_&&(_[_.length-1]!=="/"&&x[0]!=="/"&&(_+="/"),x=_+x),y){var v=s(y);if(!v)throw new Error("sourceMapURL could not be parsed");if(v.path){var B=v.path.lastIndexOf("/");B>=0&&(v.path=v.path.substring(0,B+1))}x=h(o(v),x)}return u(x)}e.computeSourceURL=L}}),vn=Z({"../../node_modules/escodegen/node_modules/source-map/lib/array-set.js"(e){var t=At(),r=Object.prototype.hasOwnProperty,n=typeof Map<"u";function s(){this._array=[],this._set=n?new Map:Object.create(null)}s.fromArray=function(o,u){for(var h=new s,p=0,m=o.length;p=0)return u}else{var h=t.toSetString(o);if(r.call(this._set,h))return this._set[h]}throw new Error('"'+o+'" is not in the set.')},s.prototype.at=function(o){if(o>=0&&ou||h==u&&m>=p||t.compareByGeneratedPositionsInflated(s,o)<=0}function n(){this._array=[],this._sorted=!0,this._last={generatedLine:-1,generatedColumn:0}}n.prototype.unsortedForEach=function(s,o){this._array.forEach(s,o)},n.prototype.add=function(s){r(this._last,s)?(this._last=s,this._array.push(s)):(this._sorted=!1,this._array.push(s))},n.prototype.toArray=function(){return this._sorted||(this._array.sort(t.compareByGeneratedPositionsInflated),this._sorted=!0),this._array},e.MappingList=n}}),_n=Z({"../../node_modules/escodegen/node_modules/source-map/lib/source-map-generator.js"(e){var t=xn(),r=At(),n=vn().ArraySet,s=Oi().MappingList;function o(u){u||(u={}),this._file=r.getArg(u,"file",null),this._sourceRoot=r.getArg(u,"sourceRoot",null),this._skipValidation=r.getArg(u,"skipValidation",!1),this._sources=new n,this._names=new n,this._mappings=new s,this._sourcesContents=null}o.prototype._version=3,o.fromSourceMap=function(u){var h=u.sourceRoot,p=new o({file:u.file,sourceRoot:h});return u.eachMapping(function(m){var g={generated:{line:m.generatedLine,column:m.generatedColumn}};m.source!=null&&(g.source=m.source,h!=null&&(g.source=r.relative(h,g.source)),g.original={line:m.originalLine,column:m.originalColumn},m.name!=null&&(g.name=m.name)),p.addMapping(g)}),u.sources.forEach(function(m){var g=m;h!==null&&(g=r.relative(h,m)),p._sources.has(g)||p._sources.add(g);var F=u.sourceContentFor(m);F!=null&&p.setSourceContent(m,F)}),p},o.prototype.addMapping=function(u){var h=r.getArg(u,"generated"),p=r.getArg(u,"original",null),m=r.getArg(u,"source",null),g=r.getArg(u,"name",null);this._skipValidation||this._validateMapping(h,p,m,g),m!=null&&(m=String(m),this._sources.has(m)||this._sources.add(m)),g!=null&&(g=String(g),this._names.has(g)||this._names.add(g)),this._mappings.add({generatedLine:h.line,generatedColumn:h.column,originalLine:p!=null&&p.line,originalColumn:p!=null&&p.column,source:m,name:g})},o.prototype.setSourceContent=function(u,h){var p=u;this._sourceRoot!=null&&(p=r.relative(this._sourceRoot,p)),h!=null?(this._sourcesContents||(this._sourcesContents=Object.create(null)),this._sourcesContents[r.toSetString(p)]=h):this._sourcesContents&&(delete this._sourcesContents[r.toSetString(p)],Object.keys(this._sourcesContents).length===0&&(this._sourcesContents=null))},o.prototype.applySourceMap=function(u,h,p){var m=h;if(h==null){if(u.file==null)throw new Error(`SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map's "file" property. Both were omitted.`);m=u.file}var g=this._sourceRoot;g!=null&&(m=r.relative(g,m));var F=new n,A=new n;this._mappings.unsortedForEach(function(C){if(C.source===m&&C.originalLine!=null){var D=u.originalPositionFor({line:C.originalLine,column:C.originalColumn});D.source!=null&&(C.source=D.source,p!=null&&(C.source=r.join(p,C.source)),g!=null&&(C.source=r.relative(g,C.source)),C.originalLine=D.line,C.originalColumn=D.column,D.name!=null&&(C.name=D.name))}var E=C.source;E!=null&&!F.has(E)&&F.add(E);var w=C.name;w!=null&&!A.has(w)&&A.add(w)},this),this._sources=F,this._names=A,u.sources.forEach(function(C){var D=u.sourceContentFor(C);D!=null&&(p!=null&&(C=r.join(p,C)),g!=null&&(C=r.relative(g,C)),this.setSourceContent(C,D))},this)},o.prototype._validateMapping=function(u,h,p,m){if(h&&typeof h.line!="number"&&typeof h.column!="number")throw new Error("original.line and original.column are not numbers -- you probably meant to omit the original mapping entirely and only map the generated position. If so, pass null for the original mapping instead of an object with empty or null values.");if(!(u&&"line"in u&&"column"in u&&u.line>0&&u.column>=0&&!h&&!p&&!m)){if(u&&"line"in u&&"column"in u&&h&&"line"in h&&"column"in h&&u.line>0&&u.column>=0&&h.line>0&&h.column>=0&&p)return;throw new Error("Invalid mapping: "+JSON.stringify({generated:u,source:p,original:h,name:m}))}},o.prototype._serializeMappings=function(){for(var u=0,h=1,p=0,m=0,g=0,F=0,A="",C,D,E,w,b=this._mappings.toArray(),S=0,L=b.length;S0){if(!r.compareByGeneratedPositionsInflated(D,b[S-1]))continue;C+=","}C+=t.encode(D.generatedColumn-u),u=D.generatedColumn,D.source!=null&&(w=this._sources.indexOf(D.source),C+=t.encode(w-F),F=w,C+=t.encode(D.originalLine-1-m),m=D.originalLine-1,C+=t.encode(D.originalColumn-p),p=D.originalColumn,D.name!=null&&(E=this._names.indexOf(D.name),C+=t.encode(E-g),g=E)),A+=C}return A},o.prototype._generateSourcesContent=function(u,h){return u.map(function(p){if(!this._sourcesContents)return null;h!=null&&(p=r.relative(h,p));var m=r.toSetString(p);return Object.prototype.hasOwnProperty.call(this._sourcesContents,m)?this._sourcesContents[m]:null},this)},o.prototype.toJSON=function(){var u={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return this._file!=null&&(u.file=this._file),this._sourceRoot!=null&&(u.sourceRoot=this._sourceRoot),this._sourcesContents&&(u.sourcesContent=this._generateSourcesContent(u.sources,u.sourceRoot)),u},o.prototype.toString=function(){return JSON.stringify(this.toJSON())},e.SourceMapGenerator=o}}),Ri=Z({"../../node_modules/escodegen/node_modules/source-map/lib/binary-search.js"(e){e.GREATEST_LOWER_BOUND=1,e.LEAST_UPPER_BOUND=2;function t(r,n,s,o,u,h){var p=Math.floor((n-r)/2)+r,m=u(s,o[p],!0);return m===0?p:m>0?n-p>1?t(p,n,s,o,u,h):h==e.LEAST_UPPER_BOUND?n1?t(r,p,s,o,u,h):h==e.LEAST_UPPER_BOUND?p:r<0?-1:r}e.search=function(r,n,s,o){if(n.length===0)return-1;var u=t(-1,n.length,r,n,s,o||e.GREATEST_LOWER_BOUND);if(u<0)return-1;for(;u-1>=0&&s(n[u],n[u-1],!0)===0;)--u;return u}}}),ji=Z({"../../node_modules/escodegen/node_modules/source-map/lib/quick-sort.js"(e){function t(s,o,u){var h=s[o];s[o]=s[u],s[u]=h}function r(s,o){return Math.round(s+Math.random()*(o-s))}function n(s,o,u,h){if(u=0){var E=this._originalMappings[D];if(g.column===void 0)for(var w=E.originalLine;E&&E.originalLine===w;)C.push({line:t.getArg(E,"generatedLine",null),column:t.getArg(E,"generatedColumn",null),lastColumn:t.getArg(E,"lastGeneratedColumn",null)}),E=this._originalMappings[++D];else for(var b=E.originalColumn;E&&E.originalLine===F&&E.originalColumn==b;)C.push({line:t.getArg(E,"generatedLine",null),column:t.getArg(E,"generatedColumn",null),lastColumn:t.getArg(E,"lastGeneratedColumn",null)}),E=this._originalMappings[++D]}return C},e.SourceMapConsumer=u;function h(g,F){var A=g;typeof g=="string"&&(A=t.parseSourceMapInput(g));var C=t.getArg(A,"version"),D=t.getArg(A,"sources"),E=t.getArg(A,"names",[]),w=t.getArg(A,"sourceRoot",null),b=t.getArg(A,"sourcesContent",null),S=t.getArg(A,"mappings"),L=t.getArg(A,"file",null);if(C!=this._version)throw new Error("Unsupported version: "+C);w&&(w=t.normalize(w)),D=D.map(String).map(t.normalize).map(function(_){return w&&t.isAbsolute(w)&&t.isAbsolute(_)?t.relative(w,_):_}),this._names=n.fromArray(E.map(String),!0),this._sources=n.fromArray(D,!0),this._absoluteSources=this._sources.toArray().map(function(_){return t.computeSourceURL(w,_,F)}),this.sourceRoot=w,this.sourcesContent=b,this._mappings=S,this._sourceMapURL=F,this.file=L}h.prototype=Object.create(u.prototype),h.prototype.consumer=u,h.prototype._findSourceIndex=function(g){var F=g;if(this.sourceRoot!=null&&(F=t.relative(this.sourceRoot,F)),this._sources.has(F))return this._sources.indexOf(F);var A;for(A=0;A1&&(B.source=w+j[1],w+=j[1],B.originalLine=D+j[2],D=B.originalLine,B.originalLine+=1,B.originalColumn=E+j[3],E=B.originalColumn,j.length>4&&(B.name=b+j[4],b+=j[4])),v.push(B),typeof B.originalLine=="number"&&y.push(B)}o(v,t.compareByGeneratedPositionsDeflated),this.__generatedMappings=v,o(y,t.compareByOriginalPositions),this.__originalMappings=y},h.prototype._findMapping=function(g,F,A,C,D,E){if(g[A]<=0)throw new TypeError("Line must be greater than or equal to 1, got "+g[A]);if(g[C]<0)throw new TypeError("Column must be greater than or equal to 0, got "+g[C]);return r.search(g,F,D,E)},h.prototype.computeColumnSpans=function(){for(var g=0;g=0){var C=this._generatedMappings[A];if(C.generatedLine===F.generatedLine){var D=t.getArg(C,"source",null);D!==null&&(D=this._sources.at(D),D=t.computeSourceURL(this.sourceRoot,D,this._sourceMapURL));var E=t.getArg(C,"name",null);return E!==null&&(E=this._names.at(E)),{source:D,line:t.getArg(C,"originalLine",null),column:t.getArg(C,"originalColumn",null),name:E}}}return{source:null,line:null,column:null,name:null}},h.prototype.hasContentsOfAllSources=function(){return this.sourcesContent?this.sourcesContent.length>=this._sources.size()&&!this.sourcesContent.some(function(g){return g==null}):!1},h.prototype.sourceContentFor=function(g,F){if(!this.sourcesContent)return null;var A=this._findSourceIndex(g);if(A>=0)return this.sourcesContent[A];var C=g;this.sourceRoot!=null&&(C=t.relative(this.sourceRoot,C));var D;if(this.sourceRoot!=null&&(D=t.urlParse(this.sourceRoot))){var E=C.replace(/^file:\/\//,"");if(D.scheme=="file"&&this._sources.has(E))return this.sourcesContent[this._sources.indexOf(E)];if((!D.path||D.path=="/")&&this._sources.has("/"+C))return this.sourcesContent[this._sources.indexOf("/"+C)]}if(F)return null;throw new Error('"'+C+'" is not in the SourceMap.')},h.prototype.generatedPositionFor=function(g){var F=t.getArg(g,"source");if(F=this._findSourceIndex(F),F<0)return{line:null,column:null,lastColumn:null};var A={source:F,originalLine:t.getArg(g,"line"),originalColumn:t.getArg(g,"column")},C=this._findMapping(A,this._originalMappings,"originalLine","originalColumn",t.compareByOriginalPositions,t.getArg(g,"bias",u.GREATEST_LOWER_BOUND));if(C>=0){var D=this._originalMappings[C];if(D.source===A.source)return{line:t.getArg(D,"generatedLine",null),column:t.getArg(D,"generatedColumn",null),lastColumn:t.getArg(D,"lastGeneratedColumn",null)}}return{line:null,column:null,lastColumn:null}},e.BasicSourceMapConsumer=h;function m(g,F){var A=g;typeof g=="string"&&(A=t.parseSourceMapInput(g));var C=t.getArg(A,"version"),D=t.getArg(A,"sections");if(C!=this._version)throw new Error("Unsupported version: "+C);this._sources=new n,this._names=new n;var E={line:-1,column:0};this._sections=D.map(function(w){if(w.url)throw new Error("Support for url field in sections not implemented.");var b=t.getArg(w,"offset"),S=t.getArg(b,"line"),L=t.getArg(b,"column");if(S=0;p--)this.prepend(h[p]);else if(h[o]||typeof h=="string")this.children.unshift(h);else throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+h);return this},u.prototype.walk=function(h){for(var p,m=0,g=this.children.length;m0){for(p=[],m=0;m=6.0"},maintainers:[{name:"Yusuke Suzuki",email:"utatane.tea@gmail.com",web:"http://github.com/Constellation"}],repository:{type:"git",url:"http://github.com/estools/escodegen.git"},dependencies:{estraverse:"^5.2.0",esutils:"^2.0.2",esprima:"^4.0.1"},optionalDependencies:{"source-map":"~0.6.1"},devDependencies:{acorn:"^8.0.4",bluebird:"^3.4.7","bower-registry-client":"^1.0.0",chai:"^4.2.0","chai-exclude":"^2.0.2","commonjs-everywhere":"^0.9.7",gulp:"^4.0.2","gulp-eslint":"^6.0.0","gulp-mocha":"^7.0.2",minimist:"^1.2.5",optionator:"^0.9.1",semver:"^7.3.4"},license:"BSD-2-Clause",scripts:{test:"gulp travis","unit-test":"gulp test",lint:"gulp lint",release:"node tools/release.js","build-min":"./node_modules/.bin/cjsify -ma path: tools/entry-point.js > escodegen.browser.min.js",build:"./node_modules/.bin/cjsify -a path: tools/entry-point.js > escodegen.browser.js"}}}}),Wi=Z({"../../node_modules/escodegen/escodegen.js"(e){(function(){var t,r,n,s,o,u,h,p,m,g,F,A,C,D,E,w,b,S,L,_,x,y,v,B,P,j;o=Ii(),u=Ni(),t=o.Syntax;function M(i){return oe.Expression.hasOwnProperty(i.type)}function V(i){return oe.Statement.hasOwnProperty(i.type)}r={Sequence:0,Yield:1,Assignment:1,Conditional:2,ArrowFunction:2,Coalesce:3,LogicalOR:4,LogicalAND:5,BitwiseOR:6,BitwiseXOR:7,BitwiseAND:8,Equality:9,Relational:10,BitwiseSHIFT:11,Additive:12,Multiplicative:13,Exponentiation:14,Await:15,Unary:15,Postfix:16,OptionalChaining:17,Call:18,New:19,TaggedTemplate:20,Member:21,Primary:22},n={"??":r.Coalesce,"||":r.LogicalOR,"&&":r.LogicalAND,"|":r.BitwiseOR,"^":r.BitwiseXOR,"&":r.BitwiseAND,"==":r.Equality,"!=":r.Equality,"===":r.Equality,"!==":r.Equality,is:r.Equality,isnt:r.Equality,"<":r.Relational,">":r.Relational,"<=":r.Relational,">=":r.Relational,in:r.Relational,instanceof:r.Relational,"<<":r.BitwiseSHIFT,">>":r.BitwiseSHIFT,">>>":r.BitwiseSHIFT,"+":r.Additive,"-":r.Additive,"*":r.Multiplicative,"%":r.Multiplicative,"/":r.Multiplicative,"**":r.Exponentiation};var U=1,Q=2,ne=4,se=8,ue=16,$=32,we=64,st=Q|ne,Re=U|Q,R=U|Q|ne,Xe=U,je=ne,ut=U|ne,re=U,xe=U|$,yt=0,ri=U|ue,ni=U|se;function kr(){return{indent:null,base:null,parse:null,comment:!1,format:{indent:{style:" ",base:0,adjustMultilineComment:!1},newline:` +`,space:" ",json:!1,renumber:!1,hexadecimal:!1,quotes:"single",escapeless:!1,compact:!1,parentheses:!0,semicolons:!0,safeConcatenation:!1,preserveBlankLines:!1},moz:{comprehensionExpressionStartsWithAssignment:!1,starlessGenerator:!1},sourceMap:null,sourceMapRoot:null,sourceMapWithCode:!1,directive:!1,raw:!0,verbatim:null,sourceCode:null}}function Me(i,l){var a="";for(l|=0;l>0;l>>>=1,i+=i)l&1&&(a+=i);return a}function ii(i){return/[\r\n]/g.test(i)}function he(i){var l=i.length;return l&&u.code.isLineTerminator(i.charCodeAt(l-1))}function Ir(i,l){var a;for(a in l)l.hasOwnProperty(a)&&(i[a]=l[a]);return i}function Ft(i,l){var a,c;function d(k){return typeof k=="object"&&k instanceof Object&&!(k instanceof RegExp)}for(a in l)l.hasOwnProperty(a)&&(c=l[a],d(c)?d(i[a])?Ft(i[a],c):i[a]=Ft({},c):i[a]=c);return i}function si(i){var l,a,c,d,k;if(i!==i)throw new Error("Numeric literal whose value is NaN");if(i<0||i===0&&1/i<0)throw new Error("Numeric literal whose value is negative");if(i===1/0)return m?"null":g?"1e400":"1e+400";if(l=""+i,!g||l.length<3)return l;for(a=l.indexOf("."),!m&&l.charCodeAt(0)===48&&a===1&&(a=0,l=l.slice(1)),c=l,l=l.replace("e+","e"),d=0,(k=c.indexOf("e"))>0&&(d=+c.slice(k+1),c=c.slice(0,k)),a>=0&&(d-=c.length-a-1,c=+(c.slice(0,a)+c.slice(a+1))+""),k=0;c.charCodeAt(c.length+k-1)===48;)--k;return k!==0&&(d-=k,c=c.slice(0,k)),d!==0&&(c+="e"+d),(c.length1e12&&Math.floor(i)===i&&(c="0x"+i.toString(16)).length255?"\\u"+"0000".slice(a.length)+a:i===0&&!u.code.isDecimalDigit(l)?"\\0":i===11?"\\x0B":"\\x"+"00".slice(a.length)+a)}function oi(i){if(i===92)return"\\\\";if(i===10)return"\\n";if(i===13)return"\\r";if(i===8232)return"\\u2028";if(i===8233)return"\\u2029";throw new Error("Incorrectly classified character")}function li(i){var l,a,c,d;for(d=A==="double"?'"':"'",l=0,a=i.length;l126))){l+=ai(d,i.charCodeAt(a+1));continue}l+=String.fromCharCode(d)}if(T=!(A==="double"||A==="auto"&&I=0&&!u.code.isLineTerminator(i.charCodeAt(l));--l);return i.length-1-l}function pi(i,l){var a,c,d,k,I,T,O,X;for(a=i.split(/\r\n|[\r\n]/),T=Number.MAX_VALUE,c=1,d=a.length;cI&&(T=I)}for(typeof l<"u"?(O=h,a[1][T]==="*"&&(l+=" "),h=l):(T&1&&--T,O=h),c=1,d=a.length;c0){if(k=l,B){for(d=i.leadingComments[0],l=[],X=d.extendedRange,ce=d.range,Qe=v.substring(X[0],ce[0]),ve=(Qe.match(/\n/g)||[]).length,ve>0?(l.push(Me(` +`,ve)),l.push(fe(ke(d)))):(l.push(Qe),l.push(ke(d))),Ve=ce,a=1,c=i.leadingComments.length;a0?(l.push(Me(` +`,ve)),l.push(fe(ke(d)))):(l.push(Qe),l.push(ke(d)));else for(I=!he(K(l).toString()),T=Me(" ",hi(K([h,l,p]).toString())),a=0,c=i.trailingComments.length;a")),i.expression?(l.push(E),a=this.generateExpression(i.body,r.Assignment,R),a.toString().charAt(0)==="{"&&(a=["(",a,")"]),l.push(a)):l.push(this.maybeBlock(i.body,ni)),l},oe.prototype.generateIterationForStatement=function(i,l,a){var c=["for"+(l.await?pe()+"await":"")+E+"("],d=this;return ae(function(){l.left.type===t.VariableDeclaration?ae(function(){c.push(l.left.kind+pe()),c.push(d.generateStatement(l.left.declarations[0],yt))}):c.push(d.generateExpression(l.left,r.Call,R)),c=W(c,i),c=[W(c,d.generateExpression(l.right,r.Assignment,R)),")"]}),c.push(this.maybeBlock(l.body,a)),c},oe.prototype.generatePropertyKey=function(i,l){var a=[];return l&&a.push("["),a.push(this.generateExpression(i,r.Assignment,R)),l&&a.push("]"),a},oe.prototype.generateAssignment=function(i,l,a,c,d){return r.Assignment2&&(c=v.substring(a[0]+1,a[1]-1),c[0]===` +`&&(d=["{"]),d.push(c)));var I,T,O,X;for(X=re,l&se&&(X|=ue),I=0,T=i.body.length;I0&&!i.body[I-1].trailingComments&&!i.body[I].leadingComments&&He(i.body[I-1].range[1],i.body[I].range[0],d)),I===T-1&&(X|=$),i.body[I].leadingComments&&B?O=k.generateStatement(i.body[I],X):O=fe(k.generateStatement(i.body[I],X)),d.push(O),he(K(O).toString())||B&&I1?ae(O):O(),a.push(this.semicolon(l)),a},ThrowStatement:function(i,l){return[W("throw",this.generateExpression(i.argument,r.Sequence,R)),this.semicolon(l)]},TryStatement:function(i,l){var a,c,d,k;if(a=["try",this.maybeBlock(i.block,re)],a=this.maybeBlockSuffix(i.block,a),i.handlers)for(c=0,d=i.handlers.length;c0?` +`:""],I=ri,d=0;d0&&!i.body[d-1].trailingComments&&!i.body[d].leadingComments&&He(i.body[d-1].range[1],i.body[d].range[0],a)),c=fe(this.generateStatement(i.body[d],I)),a.push(c),d+10){for(c.push("("),k=0,I=d;k=2&&d.charCodeAt(0)===48)&&c.push(" ")),c.push(i.optional?"?.":"."),c.push(Ae(i.property))),le(c,r.Member,l)},MetaProperty:function(i,l,a){var c;return c=[],c.push(typeof i.meta=="string"?i.meta:Ae(i.meta)),c.push("."),c.push(typeof i.property=="string"?i.property:Ae(i.property)),le(c,r.Member,l)},UnaryExpression:function(i,l,a){var c,d,k,I,T;return d=this.generateExpression(i.argument,r.Unary,R),E===""?c=W(i.operator,d):(c=[i.operator],i.operator.length>2?c=W(c,d):(I=K(c).toString(),T=I.charCodeAt(I.length-1),k=d.toString().charCodeAt(0),((T===43||T===45)&&T===k||u.code.isIdentifierPartES5(T)&&u.code.isIdentifierPartES5(k))&&c.push(pe()),c.push(d))),le(c,r.Unary,l)},YieldExpression:function(i,l,a){var c;return i.delegate?c="yield*":c="yield",i.argument&&(c=W(c,this.generateExpression(i.argument,r.Yield,R))),le(c,r.Yield,l)},AwaitExpression:function(i,l,a){var c=W(i.all?"await*":"await",this.generateExpression(i.argument,r.Await,R));return le(c,r.Await,l)},UpdateExpression:function(i,l,a){return i.prefix?le([i.operator,this.generateExpression(i.argument,r.Unary,R)],r.Unary,l):le([this.generateExpression(i.argument,r.Postfix,R),i.operator],r.Postfix,l)},FunctionExpression:function(i,l,a){var c=[at(i,!0),"function"];return i.id?(c.push(xt(i)||pe()),c.push(Ae(i.id))):c.push(xt(i)||E),c.push(this.generateFunctionBody(i)),c},ArrayPattern:function(i,l,a){return this.ArrayExpression(i,l,a,!0)},ArrayExpression:function(i,l,a,c){var d,k,I=this;return i.elements.length?(k=c?!1:i.elements.length>1,d=["[",k?D:""],ae(function(T){var O,X;for(O=0,X=i.elements.length;O1,ae(function(){k=I.generateExpression(i.properties[0],r.Sequence,R)}),!c&&!ii(K(k).toString())?["{",E,k,E,"}"]:(ae(function(T){var O,X;if(d=["{",D,T,k],c)for(d.push(","+D),O=1,X=i.properties.length;O0||_.moz.comprehensionExpressionStartsWithAssignment?c=W(c,I):c.push(I)}),i.filter&&(c=W(c,"if"+E),I=this.generateExpression(i.filter,r.Sequence,R),c=W(c,["(",I,")"])),_.moz.comprehensionExpressionStartsWithAssignment||(I=this.generateExpression(i.body,r.Assignment,R),c=W(c,I)),c.push(i.type===t.GeneratorExpression?")":"]"),c},ComprehensionBlock:function(i,l,a){var c;return i.left.type===t.VariableDeclaration?c=[i.left.kind,pe(),this.generateStatement(i.left.declarations[0],yt)]:c=this.generateExpression(i.left,r.Call,R),c=W(c,i.of?"of":"in"),c=W(c,this.generateExpression(i.right,r.Sequence,R)),["for"+E+"(",c,")"]},SpreadElement:function(i,l,a){return["...",this.generateExpression(i.argument,r.Assignment,R)]},TaggedTemplateExpression:function(i,l,a){var c=Re;a&Q||(c=Xe);var d=[this.generateExpression(i.tag,r.Call,c),this.generateExpression(i.quasi,r.Primary,je)];return le(d,r.TaggedTemplate,l)},TemplateElement:function(i,l,a){return i.value.raw},TemplateLiteral:function(i,l,a){var c,d,k;for(c=["`"],d=0,k=i.quasis.length;dht,Parser:()=>te,Position:()=>Ue,SourceLocation:()=>et,TokContext:()=>ye,Token:()=>pt,TokenType:()=>Y,defaultOptions:()=>mt,getLineInfo:()=>lr,isIdentifierChar:()=>qe,isIdentifierStart:()=>Te,isNewLine:()=>Ze,keywordTypes:()=>dt,lineBreak:()=>De,lineBreakG:()=>ze,nonASCIIwhitespace:()=>Ot,parse:()=>Zi,parseExpressionAt:()=>$i,tokContexts:()=>ie,tokTypes:()=>f,tokenizer:()=>es,version:()=>mr});function or(e,t){for(var r=65536,n=0;ne)return!1;if(r+=t[n+1],r>=e)return!0}}function Te(e,t){return e<65?e===36:e<91?!0:e<97?e===95:e<123?!0:e<=65535?e>=170&&Bn.test(String.fromCharCode(e)):t===!1?!1:or(e,xr)}function qe(e,t){return e<48?e===36:e<58?!0:e<65?!1:e<91?!0:e<97?e===95:e<123?!0:e<=65535?e>=170&&wn.test(String.fromCharCode(e)):t===!1?!1:or(e,xr)||or(e,kn)}function Fe(e,t){return new Y(e,{beforeExpr:!0,binop:t})}function H(e,t){return t===void 0&&(t={}),t.keyword=e,dt[e]=new Y(e,t)}function Ze(e,t){return e===10||e===13||!t&&(e===8232||e===8233)}function Nt(e,t){return In.call(e,t)}function We(e){return new RegExp("^(?:"+e.replace(/ /g,"|")+")$")}function lr(e,t){for(var r=1,n=0;;){ze.lastIndex=n;var s=ze.exec(e);if(s&&s.index=2015&&(t.ecmaVersion-=2009),t.allowReserved==null&&(t.allowReserved=t.ecmaVersion<5),cr(t.onToken)){var n=t.onToken;t.onToken=function(s){return n.push(s)}}return cr(t.onComment)&&(t.onComment=Gi(t,t.onComment)),t}function Gi(e,t){return function(r,n,s,o,u,h){var p={type:r?"Block":"Line",value:n,start:s,end:o};e.locations&&(p.loc=new et(this,u,h)),e.ranges&&(p.range=[s,o]),t.push(p)}}function Vt(e,t){return $e|(e?hr:0)|(t?pr:0)}function _t(){this.shorthandAssign=this.trailingComma=this.parenthesizedAssign=this.parenthesizedBind=this.doubleProto=-1}function Wr(e,t,r,n){return e.type=t,e.end=r,this.options.locations&&(e.loc.end=n),this.options.ranges&&(e.range[1]=r),e}function qt(e){var t=dr[e]={binary:We(Tn[e]+" "+fr),nonBinary:{General_Category:We(fr),Script:We(Pn[e])}};t.nonBinary.Script_Extensions=t.nonBinary.Script,t.nonBinary.gc=t.nonBinary.General_Category,t.nonBinary.sc=t.nonBinary.Script,t.nonBinary.scx=t.nonBinary.Script_Extensions}function St(e){return e<=65535?String.fromCharCode(e):(e-=65536,String.fromCharCode((e>>10)+55296,(e&1023)+56320))}function zr(e){return e===36||e>=40&&e<=43||e===46||e===63||e>=91&&e<=94||e>=123&&e<=125}function Ji(e){return Te(e,!0)||e===36||e===95}function Xi(e){return qe(e,!0)||e===36||e===95||e===8204||e===8205}function Sn(e){return e>=65&&e<=90||e>=97&&e<=122}function Hi(e){return e>=0&&e<=1114111}function Qi(e){return e===100||e===68||e===115||e===83||e===119||e===87}function bn(e){return Sn(e)||e===95}function Yi(e){return bn(e)||Lt(e)}function Lt(e){return e>=48&&e<=57}function Gr(e){return e>=48&&e<=57||e>=65&&e<=70||e>=97&&e<=102}function Jr(e){return e>=65&&e<=70?10+(e-65):e>=97&&e<=102?10+(e-97):e-48}function Xr(e){return e>=48&&e<=55}function Ki(e,t){return t?parseInt(e,8):parseFloat(e.replace(/_/g,""))}function Hr(e){return typeof BigInt!="function"?null:BigInt(e.replace(/_/g,""))}function Ut(e){return e<=65535?String.fromCharCode(e):(e-=65536,String.fromCharCode((e>>10)+55296,(e&1023)+56320))}function Zi(e,t){return te.parse(e,t)}function $i(e,t,r){return te.parseExpressionAt(e,t,r)}function es(e,t){return te.tokenizer(e,t)}var bt,Bt,Qr,Yr,wt,Wt,Bn,wn,xr,kn,Y,Ce,ge,dt,f,De,ze,Ot,Ee,zt,In,Kr,cr,Ue,et,mt,Ye,$e,kt,hr,pr,Gt,Jt,Xt,Ht,Qt,It,_e,Yt,Kt,Zt,te,Ne,de,Zr,z,Tt,$r,en,Ke,Pt,$t,Se,G,tn,ot,Ie,rn,ht,lt,ye,ie,ct,er,tr,nn,Tn,fr,rr,nr,sn,Pn,dr,q,be,pt,J,ir,mr,gr=gi({"../../node_modules/acorn/dist/acorn.mjs"(){bt={3:"abstract boolean byte char class double enum export extends final float goto implements import int interface long native package private protected public short static super synchronized throws transient volatile",5:"class enum extends super const export import",6:"enum",strict:"implements interface let package private protected public static yield",strictBind:"eval arguments"},Bt="break case catch continue debugger default do else finally for function if return switch throw try var while with null true false instanceof typeof void delete new in this",Qr={5:Bt,"5module":Bt+" export import",6:Bt+" const class extends export import super"},Yr=/^in(stanceof)?$/,wt="ªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮͰ-ʹͶͷͺ-ͽͿΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁҊ-ԯԱ-Ֆՙՠ-ֈא-תׯ-ײؠ-يٮٯٱ-ۓەۥۦۮۯۺ-ۼۿܐܒ-ܯݍ-ޥޱߊ-ߪߴߵߺࠀ-ࠕࠚࠤࠨࡀ-ࡘࡠ-ࡪࢠ-ࢴࢶ-ࣇऄ-हऽॐक़-ॡॱ-ঀঅ-ঌএঐও-নপ-রলশ-হঽৎড়ঢ়য়-ৡৰৱৼਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਖ਼-ੜਫ਼ੲ-ੴઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽૐૠૡૹଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽଡ଼ଢ଼ୟ-ୡୱஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹௐఅ-ఌఎ-ఐఒ-నప-హఽౘ-ౚౠౡಀಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽೞೠೡೱೲഄ-ഌഎ-ഐഒ-ഺഽൎൔ-ൖൟ-ൡൺ-ൿඅ-ඖක-නඳ-රලව-ෆก-ะาำเ-ๆກຂຄຆ-ຊຌ-ຣລວ-ະາຳຽເ-ໄໆໜ-ໟༀཀ-ཇཉ-ཬྈ-ྌက-ဪဿၐ-ၕၚ-ၝၡၥၦၮ-ၰၵ-ႁႎႠ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚᎀ-ᎏᎠ-Ᏽᏸ-ᏽᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛮ-ᛸᜀ-ᜌᜎ-ᜑᜠ-ᜱᝀ-ᝑᝠ-ᝬᝮ-ᝰក-ឳៗៜᠠ-ᡸᢀ-ᢨᢪᢰ-ᣵᤀ-ᤞᥐ-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉᨀ-ᨖᨠ-ᩔᪧᬅ-ᬳᭅ-ᭋᮃ-ᮠᮮᮯᮺ-ᯥᰀ-ᰣᱍ-ᱏᱚ-ᱽᲀ-ᲈᲐ-ᲺᲽ-Ჿᳩ-ᳬᳮ-ᳳᳵᳶᳺᴀ-ᶿḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼⁱⁿₐ-ₜℂℇℊ-ℓℕ℘-ℝℤΩℨK-ℹℼ-ℿⅅ-ⅉⅎⅠ-ↈⰀ-Ⱞⰰ-ⱞⱠ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞ々-〇〡-〩〱-〵〸-〼ぁ-ゖ゛-ゟァ-ヺー-ヿㄅ-ㄯㄱ-ㆎㆠ-ㆿㇰ-ㇿ㐀-䶿一-鿼ꀀ-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘟꘪꘫꙀ-ꙮꙿ-ꚝꚠ-ꛯꜗ-ꜟꜢ-ꞈꞋ-ꞿꟂ-ꟊꟵ-ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠢꡀ-ꡳꢂ-ꢳꣲ-ꣷꣻꣽꣾꤊ-ꤥꤰ-ꥆꥠ-ꥼꦄ-ꦲꧏꧠ-ꧤꧦ-ꧯꧺ-ꧾꨀ-ꨨꩀ-ꩂꩄ-ꩋꩠ-ꩶꩺꩾ-ꪯꪱꪵꪶꪹ-ꪽꫀꫂꫛ-ꫝꫠ-ꫪꫲ-ꫴꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꬰ-ꭚꭜ-ꭩꭰ-ꯢ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִײַ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼA-Za-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ",Wt="‌‍·̀-ͯ·҃-֑҇-ׇֽֿׁׂׅׄؐ-ًؚ-٩ٰۖ-ۜ۟-۪ۤۧۨ-ۭ۰-۹ܑܰ-݊ަ-ް߀-߉߫-߽߳ࠖ-࠙ࠛ-ࠣࠥ-ࠧࠩ-࡙࠭-࡛࣓-ࣣ࣡-ःऺ-़ा-ॏ॑-ॗॢॣ०-९ঁ-ঃ়া-ৄেৈো-্ৗৢৣ০-৯৾ਁ-ਃ਼ਾ-ੂੇੈੋ-੍ੑ੦-ੱੵઁ-ઃ઼ા-ૅે-ૉો-્ૢૣ૦-૯ૺ-૿ଁ-ଃ଼ା-ୄେୈୋ-୍୕-ୗୢୣ୦-୯ஂா-ூெ-ைொ-்ௗ௦-௯ఀ-ఄా-ౄె-ైొ-్ౕౖౢౣ౦-౯ಁ-ಃ಼ಾ-ೄೆ-ೈೊ-್ೕೖೢೣ೦-೯ഀ-ഃ഻഼ാ-ൄെ-ൈൊ-്ൗൢൣ൦-൯ඁ-ඃ්ා-ුූෘ-ෟ෦-෯ෲෳัิ-ฺ็-๎๐-๙ັິ-ຼ່-ໍ໐-໙༘༙༠-༩༹༵༷༾༿ཱ-྄྆྇ྍ-ྗྙ-ྼ࿆ါ-ှ၀-၉ၖ-ၙၞ-ၠၢ-ၤၧ-ၭၱ-ၴႂ-ႍႏ-ႝ፝-፟፩-፱ᜒ-᜔ᜲ-᜴ᝒᝓᝲᝳ឴-៓៝០-៩᠋-᠍᠐-᠙ᢩᤠ-ᤫᤰ-᤻᥆-᥏᧐-᧚ᨗ-ᨛᩕ-ᩞ᩠-᩿᩼-᪉᪐-᪙᪰-᪽ᪿᫀᬀ-ᬄ᬴-᭄᭐-᭙᭫-᭳ᮀ-ᮂᮡ-ᮭ᮰-᮹᯦-᯳ᰤ-᰷᱀-᱉᱐-᱙᳐-᳔᳒-᳨᳭᳴᳷-᳹᷀-᷹᷻-᷿‿⁀⁔⃐-⃥⃜⃡-⃰⳯-⵿⳱ⷠ-〪ⷿ-゙゚〯꘠-꘩꙯ꙴ-꙽ꚞꚟ꛰꛱ꠂ꠆ꠋꠣ-ꠧ꠬ꢀꢁꢴ-ꣅ꣐-꣙꣠-꣱ꣿ-꤉ꤦ-꤭ꥇ-꥓ꦀ-ꦃ꦳-꧀꧐-꧙ꧥ꧰-꧹ꨩ-ꨶꩃꩌꩍ꩐-꩙ꩻ-ꩽꪰꪲ-ꪴꪷꪸꪾ꪿꫁ꫫ-ꫯꫵ꫶ꯣ-ꯪ꯬꯭꯰-꯹ﬞ︀-️︠-︯︳︴﹍-﹏0-9_",Bn=new RegExp("["+wt+"]"),wn=new RegExp("["+wt+Wt+"]"),wt=Wt=null,xr=[0,11,2,25,2,18,2,1,2,14,3,13,35,122,70,52,268,28,4,48,48,31,14,29,6,37,11,29,3,35,5,7,2,4,43,157,19,35,5,35,5,39,9,51,157,310,10,21,11,7,153,5,3,0,2,43,2,1,4,0,3,22,11,22,10,30,66,18,2,1,11,21,11,25,71,55,7,1,65,0,16,3,2,2,2,28,43,28,4,28,36,7,2,27,28,53,11,21,11,18,14,17,111,72,56,50,14,50,14,35,349,41,7,1,79,28,11,0,9,21,107,20,28,22,13,52,76,44,33,24,27,35,30,0,3,0,9,34,4,0,13,47,15,3,22,0,2,0,36,17,2,24,85,6,2,0,2,3,2,14,2,9,8,46,39,7,3,1,3,21,2,6,2,1,2,4,4,0,19,0,13,4,159,52,19,3,21,2,31,47,21,1,2,0,185,46,42,3,37,47,21,0,60,42,14,0,72,26,230,43,117,63,32,7,3,0,3,7,2,1,2,23,16,0,2,0,95,7,3,38,17,0,2,0,29,0,11,39,8,0,22,0,12,45,20,0,35,56,264,8,2,36,18,0,50,29,113,6,2,1,2,37,22,0,26,5,2,1,2,31,15,0,328,18,190,0,80,921,103,110,18,195,2749,1070,4050,582,8634,568,8,30,114,29,19,47,17,3,32,20,6,18,689,63,129,74,6,0,67,12,65,1,2,0,29,6135,9,1237,43,8,8952,286,50,2,18,3,9,395,2309,106,6,12,4,8,8,9,5991,84,2,70,2,1,3,0,3,1,3,3,2,11,2,0,2,6,2,64,2,3,3,7,2,6,2,27,2,3,2,4,2,0,4,6,2,339,3,24,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,7,2357,44,11,6,17,0,370,43,1301,196,60,67,8,0,1205,3,2,26,2,1,2,0,3,0,2,9,2,3,2,0,2,0,7,0,5,0,2,0,2,0,2,2,2,1,2,0,3,0,2,0,2,0,2,0,2,0,2,1,2,0,3,3,2,6,2,3,2,3,2,0,2,9,2,16,6,2,2,4,2,16,4421,42717,35,4148,12,221,3,5761,15,7472,3104,541,1507,4938],kn=[509,0,227,0,150,4,294,9,1368,2,2,1,6,3,41,2,5,0,166,1,574,3,9,9,370,1,154,10,176,2,54,14,32,9,16,3,46,10,54,9,7,2,37,13,2,9,6,1,45,0,13,2,49,13,9,3,2,11,83,11,7,0,161,11,6,9,7,3,56,1,2,6,3,1,3,2,10,0,11,1,3,6,4,4,193,17,10,9,5,0,82,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,84,14,5,9,243,14,166,9,71,5,2,1,3,3,2,0,2,1,13,9,120,6,3,6,4,0,29,9,41,6,2,3,9,0,10,10,47,15,406,7,2,7,17,9,57,21,2,13,123,5,4,0,2,1,2,6,2,0,9,9,49,4,2,1,2,4,9,9,330,3,19306,9,135,4,60,6,26,9,1014,0,2,54,8,3,82,0,12,1,19628,1,5319,4,4,5,9,7,3,6,31,3,149,2,1418,49,513,54,5,49,9,0,15,0,23,4,2,14,1361,6,2,16,3,6,2,1,2,4,262,6,10,9,419,13,1495,6,110,6,6,9,4759,9,787719,239],Y=function(e,t){t===void 0&&(t={}),this.label=e,this.keyword=t.keyword,this.beforeExpr=!!t.beforeExpr,this.startsExpr=!!t.startsExpr,this.isLoop=!!t.isLoop,this.isAssign=!!t.isAssign,this.prefix=!!t.prefix,this.postfix=!!t.postfix,this.binop=t.binop||null,this.updateContext=null},Ce={beforeExpr:!0},ge={startsExpr:!0},dt={},f={num:new Y("num",ge),regexp:new Y("regexp",ge),string:new Y("string",ge),name:new Y("name",ge),eof:new Y("eof"),bracketL:new Y("[",{beforeExpr:!0,startsExpr:!0}),bracketR:new Y("]"),braceL:new Y("{",{beforeExpr:!0,startsExpr:!0}),braceR:new Y("}"),parenL:new Y("(",{beforeExpr:!0,startsExpr:!0}),parenR:new Y(")"),comma:new Y(",",Ce),semi:new Y(";",Ce),colon:new Y(":",Ce),dot:new Y("."),question:new Y("?",Ce),questionDot:new Y("?."),arrow:new Y("=>",Ce),template:new Y("template"),invalidTemplate:new Y("invalidTemplate"),ellipsis:new Y("...",Ce),backQuote:new Y("`",ge),dollarBraceL:new Y("${",{beforeExpr:!0,startsExpr:!0}),eq:new Y("=",{beforeExpr:!0,isAssign:!0}),assign:new Y("_=",{beforeExpr:!0,isAssign:!0}),incDec:new Y("++/--",{prefix:!0,postfix:!0,startsExpr:!0}),prefix:new Y("!/~",{beforeExpr:!0,prefix:!0,startsExpr:!0}),logicalOR:Fe("||",1),logicalAND:Fe("&&",2),bitwiseOR:Fe("|",3),bitwiseXOR:Fe("^",4),bitwiseAND:Fe("&",5),equality:Fe("==/!=/===/!==",6),relational:Fe("/<=/>=",7),bitShift:Fe("<>/>>>",8),plusMin:new Y("+/-",{beforeExpr:!0,binop:9,prefix:!0,startsExpr:!0}),modulo:Fe("%",10),star:Fe("*",10),slash:Fe("/",10),starstar:new Y("**",{beforeExpr:!0}),coalesce:Fe("??",1),_break:H("break"),_case:H("case",Ce),_catch:H("catch"),_continue:H("continue"),_debugger:H("debugger"),_default:H("default",Ce),_do:H("do",{isLoop:!0,beforeExpr:!0}),_else:H("else",Ce),_finally:H("finally"),_for:H("for",{isLoop:!0}),_function:H("function",ge),_if:H("if"),_return:H("return",Ce),_switch:H("switch"),_throw:H("throw",Ce),_try:H("try"),_var:H("var"),_const:H("const"),_while:H("while",{isLoop:!0}),_with:H("with"),_new:H("new",{beforeExpr:!0,startsExpr:!0}),_this:H("this",ge),_super:H("super",ge),_class:H("class",ge),_extends:H("extends",Ce),_export:H("export"),_import:H("import",ge),_null:H("null",ge),_true:H("true",ge),_false:H("false",ge),_in:H("in",{beforeExpr:!0,binop:7}),_instanceof:H("instanceof",{beforeExpr:!0,binop:7}),_typeof:H("typeof",{beforeExpr:!0,prefix:!0,startsExpr:!0}),_void:H("void",{beforeExpr:!0,prefix:!0,startsExpr:!0}),_delete:H("delete",{beforeExpr:!0,prefix:!0,startsExpr:!0})},De=/\r\n?|\n|\u2028|\u2029/,ze=new RegExp(De.source,"g"),Ot=/[\u1680\u2000-\u200a\u202f\u205f\u3000\ufeff]/,Ee=/(?:\s|\/\/.*|\/\*[^]*?\*\/)*/g,zt=Object.prototype,In=zt.hasOwnProperty,Kr=zt.toString,cr=Array.isArray||function(e){return Kr.call(e)==="[object Array]"},Ue=function(e,t){this.line=e,this.column=t},Ue.prototype.offset=function(e){return new Ue(this.line,this.column+e)},et=function(e,t,r){this.start=t,this.end=r,e.sourceFile!==null&&(this.source=e.sourceFile)},mt={ecmaVersion:10,sourceType:"script",onInsertedSemicolon:null,onTrailingComma:null,allowReserved:null,allowReturnOutsideFunction:!1,allowImportExportEverywhere:!1,allowAwaitOutsideFunction:!1,allowHashBang:!1,locations:!1,onToken:null,onComment:null,ranges:!1,program:null,sourceFile:null,directSourceFile:null,preserveParens:!1},Ye=1,$e=2,kt=Ye|$e,hr=4,pr=8,Gt=16,Jt=32,Xt=64,Ht=128,Qt=0,It=1,_e=2,Yt=3,Kt=4,Zt=5,te=function(e,t,r){this.options=e=zi(e),this.sourceFile=e.sourceFile,this.keywords=We(Qr[e.ecmaVersion>=6?6:e.sourceType==="module"?"5module":5]);var n="";if(e.allowReserved!==!0){for(var s=e.ecmaVersion;!(n=bt[s]);s--);e.sourceType==="module"&&(n+=" await")}this.reservedWords=We(n);var o=(n?n+" ":"")+bt.strict;this.reservedWordsStrict=We(o),this.reservedWordsStrictBind=We(o+" "+bt.strictBind),this.input=String(t),this.containsEsc=!1,r?(this.pos=r,this.lineStart=this.input.lastIndexOf(` +`,r-1)+1,this.curLine=this.input.slice(0,this.lineStart).split(De).length):(this.pos=this.lineStart=0,this.curLine=1),this.type=f.eof,this.value=null,this.start=this.end=this.pos,this.startLoc=this.endLoc=this.curPosition(),this.lastTokEndLoc=this.lastTokStartLoc=null,this.lastTokStart=this.lastTokEnd=this.pos,this.context=this.initialContext(),this.exprAllowed=!0,this.inModule=e.sourceType==="module",this.strict=this.inModule||this.strictDirective(this.pos),this.potentialArrowAt=-1,this.yieldPos=this.awaitPos=this.awaitIdentPos=0,this.labels=[],this.undefinedExports={},this.pos===0&&e.allowHashBang&&this.input.slice(0,2)==="#!"&&this.skipLineComment(2),this.scopeStack=[],this.enterScope(Ye),this.regexpState=null},Ne={inFunction:{configurable:!0},inGenerator:{configurable:!0},inAsync:{configurable:!0},allowSuper:{configurable:!0},allowDirectSuper:{configurable:!0},treatFunctionsAsVar:{configurable:!0}},te.prototype.parse=function(){var e=this.options.program||this.startNode();return this.nextToken(),this.parseTopLevel(e)},Ne.inFunction.get=function(){return(this.currentVarScope().flags&$e)>0},Ne.inGenerator.get=function(){return(this.currentVarScope().flags&pr)>0},Ne.inAsync.get=function(){return(this.currentVarScope().flags&hr)>0},Ne.allowSuper.get=function(){return(this.currentThisScope().flags&Xt)>0},Ne.allowDirectSuper.get=function(){return(this.currentThisScope().flags&Ht)>0},Ne.treatFunctionsAsVar.get=function(){return this.treatFunctionsAsVarInScope(this.currentScope())},te.prototype.inNonArrowFunction=function(){return(this.currentThisScope().flags&$e)>0},te.extend=function(){for(var e=[],t=arguments.length;t--;)e[t]=arguments[t];for(var r=this,n=0;n=,?^&]/.test(s)||s==="!"&&this.input.charAt(n+1)==="=")}e+=t[0].length,Ee.lastIndex=e,e+=Ee.exec(this.input)[0].length,this.input[e]===";"&&e++}},de.eat=function(e){return this.type===e?(this.next(),!0):!1},de.isContextual=function(e){return this.type===f.name&&this.value===e&&!this.containsEsc},de.eatContextual=function(e){return this.isContextual(e)?(this.next(),!0):!1},de.expectContextual=function(e){this.eatContextual(e)||this.unexpected()},de.canInsertSemicolon=function(){return this.type===f.eof||this.type===f.braceR||De.test(this.input.slice(this.lastTokEnd,this.start))},de.insertSemicolon=function(){if(this.canInsertSemicolon())return this.options.onInsertedSemicolon&&this.options.onInsertedSemicolon(this.lastTokEnd,this.lastTokEndLoc),!0},de.semicolon=function(){!this.eat(f.semi)&&!this.insertSemicolon()&&this.unexpected()},de.afterTrailingComma=function(e,t){if(this.type===e)return this.options.onTrailingComma&&this.options.onTrailingComma(this.lastTokStart,this.lastTokStartLoc),t||this.next(),!0},de.expect=function(e){this.eat(e)||this.unexpected()},de.unexpected=function(e){this.raise(e??this.start,"Unexpected token")},de.checkPatternErrors=function(e,t){if(e){e.trailingComma>-1&&this.raiseRecoverable(e.trailingComma,"Comma is not permitted after the rest element");var r=t?e.parenthesizedAssign:e.parenthesizedBind;r>-1&&this.raiseRecoverable(r,"Parenthesized pattern")}},de.checkExpressionErrors=function(e,t){if(!e)return!1;var r=e.shorthandAssign,n=e.doubleProto;if(!t)return r>=0||n>=0;r>=0&&this.raise(r,"Shorthand property assignments are valid only in destructuring patterns"),n>=0&&this.raiseRecoverable(n,"Redefinition of __proto__ property")},de.checkYieldAwaitInDefaultParams=function(){this.yieldPos&&(!this.awaitPos||this.yieldPos=6&&this.unexpected(),this.parseFunctionStatement(s,!1,!e);case f._class:return e&&this.unexpected(),this.parseClass(s,!0);case f._if:return this.parseIfStatement(s);case f._return:return this.parseReturnStatement(s);case f._switch:return this.parseSwitchStatement(s);case f._throw:return this.parseThrowStatement(s);case f._try:return this.parseTryStatement(s);case f._const:case f._var:return o=o||this.value,e&&o!=="var"&&this.unexpected(),this.parseVarStatement(s,o);case f._while:return this.parseWhileStatement(s);case f._with:return this.parseWithStatement(s);case f.braceL:return this.parseBlock(!0,s);case f.semi:return this.parseEmptyStatement(s);case f._export:case f._import:if(this.options.ecmaVersion>10&&n===f._import){Ee.lastIndex=this.pos;var u=Ee.exec(this.input),h=this.pos+u[0].length,p=this.input.charCodeAt(h);if(p===40||p===46)return this.parseExpressionStatement(s,this.parseExpression())}return this.options.allowImportExportEverywhere||(t||this.raise(this.start,"'import' and 'export' may only appear at the top level"),this.inModule||this.raise(this.start,"'import' and 'export' may appear only with 'sourceType: module'")),n===f._import?this.parseImport(s):this.parseExport(s,r);default:if(this.isAsyncFunction())return e&&this.unexpected(),this.next(),this.parseFunctionStatement(s,!0,!e);var m=this.value,g=this.parseExpression();return n===f.name&&g.type==="Identifier"&&this.eat(f.colon)?this.parseLabeledStatement(s,m,g,e):this.parseExpressionStatement(s,g)}},z.parseBreakContinueStatement=function(e,t){var r=t==="break";this.next(),this.eat(f.semi)||this.insertSemicolon()?e.label=null:this.type!==f.name?this.unexpected():(e.label=this.parseIdent(),this.semicolon());for(var n=0;n=6?this.eat(f.semi):this.semicolon(),this.finishNode(e,"DoWhileStatement")},z.parseForStatement=function(e){this.next();var t=this.options.ecmaVersion>=9&&(this.inAsync||!this.inFunction&&this.options.allowAwaitOutsideFunction)&&this.eatContextual("await")?this.lastTokStart:-1;if(this.labels.push(Tt),this.enterScope(0),this.expect(f.parenL),this.type===f.semi)return t>-1&&this.unexpected(t),this.parseFor(e,null);var r=this.isLet();if(this.type===f._var||this.type===f._const||r){var n=this.startNode(),s=r?"let":this.value;return this.next(),this.parseVar(n,!0,s),this.finishNode(n,"VariableDeclaration"),(this.type===f._in||this.options.ecmaVersion>=6&&this.isContextual("of"))&&n.declarations.length===1?(this.options.ecmaVersion>=9&&(this.type===f._in?t>-1&&this.unexpected(t):e.await=t>-1),this.parseForIn(e,n)):(t>-1&&this.unexpected(t),this.parseFor(e,n))}var o=new _t,u=this.parseExpression(!0,o);return this.type===f._in||this.options.ecmaVersion>=6&&this.isContextual("of")?(this.options.ecmaVersion>=9&&(this.type===f._in?t>-1&&this.unexpected(t):e.await=t>-1),this.toAssignable(u,!1,o),this.checkLVal(u),this.parseForIn(e,u)):(this.checkExpressionErrors(o,!0),t>-1&&this.unexpected(t),this.parseFor(e,u))},z.parseFunctionStatement=function(e,t,r){return this.next(),this.parseFunction(e,Ke|(r?0:Pt),!1,t)},z.parseIfStatement=function(e){return this.next(),e.test=this.parseParenExpression(),e.consequent=this.parseStatement("if"),e.alternate=this.eat(f._else)?this.parseStatement("if"):null,this.finishNode(e,"IfStatement")},z.parseReturnStatement=function(e){return!this.inFunction&&!this.options.allowReturnOutsideFunction&&this.raise(this.start,"'return' outside of function"),this.next(),this.eat(f.semi)||this.insertSemicolon()?e.argument=null:(e.argument=this.parseExpression(),this.semicolon()),this.finishNode(e,"ReturnStatement")},z.parseSwitchStatement=function(e){this.next(),e.discriminant=this.parseParenExpression(),e.cases=[],this.expect(f.braceL),this.labels.push($r),this.enterScope(0);for(var t,r=!1;this.type!==f.braceR;)if(this.type===f._case||this.type===f._default){var n=this.type===f._case;t&&this.finishNode(t,"SwitchCase"),e.cases.push(t=this.startNode()),t.consequent=[],this.next(),n?t.test=this.parseExpression():(r&&this.raiseRecoverable(this.lastTokStart,"Multiple default clauses"),r=!0,t.test=null),this.expect(f.colon)}else t||this.unexpected(),t.consequent.push(this.parseStatement(null));return this.exitScope(),t&&this.finishNode(t,"SwitchCase"),this.next(),this.labels.pop(),this.finishNode(e,"SwitchStatement")},z.parseThrowStatement=function(e){return this.next(),De.test(this.input.slice(this.lastTokEnd,this.start))&&this.raise(this.lastTokEnd,"Illegal newline after throw"),e.argument=this.parseExpression(),this.semicolon(),this.finishNode(e,"ThrowStatement")},en=[],z.parseTryStatement=function(e){if(this.next(),e.block=this.parseBlock(),e.handler=null,this.type===f._catch){var t=this.startNode();if(this.next(),this.eat(f.parenL)){t.param=this.parseBindingAtom();var r=t.param.type==="Identifier";this.enterScope(r?Jt:0),this.checkLVal(t.param,r?Kt:_e),this.expect(f.parenR)}else this.options.ecmaVersion<10&&this.unexpected(),t.param=null,this.enterScope(0);t.body=this.parseBlock(!1),this.exitScope(),e.handler=this.finishNode(t,"CatchClause")}return e.finalizer=this.eat(f._finally)?this.parseBlock():null,!e.handler&&!e.finalizer&&this.raise(e.start,"Missing catch or finally clause"),this.finishNode(e,"TryStatement")},z.parseVarStatement=function(e,t){return this.next(),this.parseVar(e,!1,t),this.semicolon(),this.finishNode(e,"VariableDeclaration")},z.parseWhileStatement=function(e){return this.next(),e.test=this.parseParenExpression(),this.labels.push(Tt),e.body=this.parseStatement("while"),this.labels.pop(),this.finishNode(e,"WhileStatement")},z.parseWithStatement=function(e){return this.strict&&this.raise(this.start,"'with' in strict mode"),this.next(),e.object=this.parseParenExpression(),e.body=this.parseStatement("with"),this.finishNode(e,"WithStatement")},z.parseEmptyStatement=function(e){return this.next(),this.finishNode(e,"EmptyStatement")},z.parseLabeledStatement=function(e,t,r,n){for(var s=0,o=this.labels;s=0;p--){var m=this.labels[p];if(m.statementStart===e.start)m.statementStart=this.start,m.kind=h;else break}return this.labels.push({name:t,kind:h,statementStart:this.start}),e.body=this.parseStatement(n?n.indexOf("label")===-1?n+"label":n:"label"),this.labels.pop(),e.label=r,this.finishNode(e,"LabeledStatement")},z.parseExpressionStatement=function(e,t){return e.expression=t,this.semicolon(),this.finishNode(e,"ExpressionStatement")},z.parseBlock=function(e,t,r){for(e===void 0&&(e=!0),t===void 0&&(t=this.startNode()),t.body=[],this.expect(f.braceL),e&&this.enterScope(0);this.type!==f.braceR;){var n=this.parseStatement(null);t.body.push(n)}return r&&(this.strict=!1),this.next(),e&&this.exitScope(),this.finishNode(t,"BlockStatement")},z.parseFor=function(e,t){return e.init=t,this.expect(f.semi),e.test=this.type===f.semi?null:this.parseExpression(),this.expect(f.semi),e.update=this.type===f.parenR?null:this.parseExpression(),this.expect(f.parenR),e.body=this.parseStatement("for"),this.exitScope(),this.labels.pop(),this.finishNode(e,"ForStatement")},z.parseForIn=function(e,t){var r=this.type===f._in;return this.next(),t.type==="VariableDeclaration"&&t.declarations[0].init!=null&&(!r||this.options.ecmaVersion<8||this.strict||t.kind!=="var"||t.declarations[0].id.type!=="Identifier")?this.raise(t.start,(r?"for-in":"for-of")+" loop variable declaration may not have an initializer"):t.type==="AssignmentPattern"&&this.raise(t.start,"Invalid left-hand side in for-loop"),e.left=t,e.right=r?this.parseExpression():this.parseMaybeAssign(),this.expect(f.parenR),e.body=this.parseStatement("for"),this.exitScope(),this.labels.pop(),this.finishNode(e,r?"ForInStatement":"ForOfStatement")},z.parseVar=function(e,t,r){for(e.declarations=[],e.kind=r;;){var n=this.startNode();if(this.parseVarId(n,r),this.eat(f.eq)?n.init=this.parseMaybeAssign(t):r==="const"&&!(this.type===f._in||this.options.ecmaVersion>=6&&this.isContextual("of"))?this.unexpected():n.id.type!=="Identifier"&&!(t&&(this.type===f._in||this.isContextual("of")))?this.raise(this.lastTokEnd,"Complex binding patterns require an initialization value"):n.init=null,e.declarations.push(this.finishNode(n,"VariableDeclarator")),!this.eat(f.comma))break}return e},z.parseVarId=function(e,t){e.id=this.parseBindingAtom(),this.checkLVal(e.id,t==="var"?It:_e,!1)},Ke=1,Pt=2,$t=4,z.parseFunction=function(e,t,r,n){this.initFunction(e),(this.options.ecmaVersion>=9||this.options.ecmaVersion>=6&&!n)&&(this.type===f.star&&t&Pt&&this.unexpected(),e.generator=this.eat(f.star)),this.options.ecmaVersion>=8&&(e.async=!!n),t&Ke&&(e.id=t&$t&&this.type!==f.name?null:this.parseIdent(),e.id&&!(t&Pt)&&this.checkLVal(e.id,this.strict||e.generator||e.async?this.treatFunctionsAsVar?It:_e:Yt));var s=this.yieldPos,o=this.awaitPos,u=this.awaitIdentPos;return this.yieldPos=0,this.awaitPos=0,this.awaitIdentPos=0,this.enterScope(Vt(e.async,e.generator)),t&Ke||(e.id=this.type===f.name?this.parseIdent():null),this.parseFunctionParams(e),this.parseFunctionBody(e,r,!1),this.yieldPos=s,this.awaitPos=o,this.awaitIdentPos=u,this.finishNode(e,t&Ke?"FunctionDeclaration":"FunctionExpression")},z.parseFunctionParams=function(e){this.expect(f.parenL),e.params=this.parseBindingList(f.parenR,!1,this.options.ecmaVersion>=8),this.checkYieldAwaitInDefaultParams()},z.parseClass=function(e,t){this.next();var r=this.strict;this.strict=!0,this.parseClassId(e,t),this.parseClassSuper(e);var n=this.startNode(),s=!1;for(n.body=[],this.expect(f.braceL);this.type!==f.braceR;){var o=this.parseClassElement(e.superClass!==null);o&&(n.body.push(o),o.type==="MethodDefinition"&&o.kind==="constructor"&&(s&&this.raise(o.start,"Duplicate constructor in the same class"),s=!0))}return this.strict=r,this.next(),e.body=this.finishNode(n,"ClassBody"),this.finishNode(e,t?"ClassDeclaration":"ClassExpression")},z.parseClassElement=function(e){var t=this;if(this.eat(f.semi))return null;var r=this.startNode(),n=function(p,m){m===void 0&&(m=!1);var g=t.start,F=t.startLoc;return t.eatContextual(p)?t.type!==f.parenL&&(!m||!t.canInsertSemicolon())?!0:(r.key&&t.unexpected(),r.computed=!1,r.key=t.startNodeAt(g,F),r.key.name=p,t.finishNode(r.key,"Identifier"),!1):!1};r.kind="method",r.static=n("static");var s=this.eat(f.star),o=!1;s||(this.options.ecmaVersion>=8&&n("async",!0)?(o=!0,s=this.options.ecmaVersion>=9&&this.eat(f.star)):n("get")?r.kind="get":n("set")&&(r.kind="set")),r.key||this.parsePropertyName(r);var u=r.key,h=!1;return!r.computed&&!r.static&&(u.type==="Identifier"&&u.name==="constructor"||u.type==="Literal"&&u.value==="constructor")?(r.kind!=="method"&&this.raise(u.start,"Constructor can't have get/set modifier"),s&&this.raise(u.start,"Constructor can't be a generator"),o&&this.raise(u.start,"Constructor can't be an async method"),r.kind="constructor",h=e):r.static&&u.type==="Identifier"&&u.name==="prototype"&&this.raise(u.start,"Classes may not have a static property named prototype"),this.parseClassMethod(r,s,o,h),r.kind==="get"&&r.value.params.length!==0&&this.raiseRecoverable(r.value.start,"getter should have no params"),r.kind==="set"&&r.value.params.length!==1&&this.raiseRecoverable(r.value.start,"setter should have exactly one param"),r.kind==="set"&&r.value.params[0].type==="RestElement"&&this.raiseRecoverable(r.value.params[0].start,"Setter cannot use rest params"),r},z.parseClassMethod=function(e,t,r,n){return e.value=this.parseMethod(t,r,n),this.finishNode(e,"MethodDefinition")},z.parseClassId=function(e,t){this.type===f.name?(e.id=this.parseIdent(),t&&this.checkLVal(e.id,_e,!1)):(t===!0&&this.unexpected(),e.id=null)},z.parseClassSuper=function(e){e.superClass=this.eat(f._extends)?this.parseExprSubscripts():null},z.parseExport=function(e,t){if(this.next(),this.eat(f.star))return this.options.ecmaVersion>=11&&(this.eatContextual("as")?(e.exported=this.parseIdent(!0),this.checkExport(t,e.exported.name,this.lastTokStart)):e.exported=null),this.expectContextual("from"),this.type!==f.string&&this.unexpected(),e.source=this.parseExprAtom(),this.semicolon(),this.finishNode(e,"ExportAllDeclaration");if(this.eat(f._default)){this.checkExport(t,"default",this.lastTokStart);var r;if(this.type===f._function||(r=this.isAsyncFunction())){var n=this.startNode();this.next(),r&&this.next(),e.declaration=this.parseFunction(n,Ke|$t,!1,r)}else if(this.type===f._class){var s=this.startNode();e.declaration=this.parseClass(s,"nullableID")}else e.declaration=this.parseMaybeAssign(),this.semicolon();return this.finishNode(e,"ExportDefaultDeclaration")}if(this.shouldParseExportStatement())e.declaration=this.parseStatement(null),e.declaration.type==="VariableDeclaration"?this.checkVariableExport(t,e.declaration.declarations):this.checkExport(t,e.declaration.id.name,e.declaration.id.start),e.specifiers=[],e.source=null;else{if(e.declaration=null,e.specifiers=this.parseExportSpecifiers(t),this.eatContextual("from"))this.type!==f.string&&this.unexpected(),e.source=this.parseExprAtom();else{for(var o=0,u=e.specifiers;o=6&&e)switch(e.type){case"Identifier":this.inAsync&&e.name==="await"&&this.raise(e.start,"Cannot use 'await' as identifier inside an async function");break;case"ObjectPattern":case"ArrayPattern":case"RestElement":break;case"ObjectExpression":e.type="ObjectPattern",r&&this.checkPatternErrors(r,!0);for(var n=0,s=e.properties;n=8&&!o&&u.name==="async"&&!this.canInsertSemicolon()&&this.eat(f._function))return this.parseFunction(this.startNodeAt(n,s),0,!1,!0);if(r&&!this.canInsertSemicolon()){if(this.eat(f.arrow))return this.parseArrowExpression(this.startNodeAt(n,s),[u],!1);if(this.options.ecmaVersion>=8&&u.name==="async"&&this.type===f.name&&!o)return u=this.parseIdent(!1),(this.canInsertSemicolon()||!this.eat(f.arrow))&&this.unexpected(),this.parseArrowExpression(this.startNodeAt(n,s),[u],!0)}return u;case f.regexp:var h=this.value;return t=this.parseLiteral(h.value),t.regex={pattern:h.pattern,flags:h.flags},t;case f.num:case f.string:return this.parseLiteral(this.value);case f._null:case f._true:case f._false:return t=this.startNode(),t.value=this.type===f._null?null:this.type===f._true,t.raw=this.type.keyword,this.next(),this.finishNode(t,"Literal");case f.parenL:var p=this.start,m=this.parseParenAndDistinguishExpression(r);return e&&(e.parenthesizedAssign<0&&!this.isSimpleAssignTarget(m)&&(e.parenthesizedAssign=p),e.parenthesizedBind<0&&(e.parenthesizedBind=p)),m;case f.bracketL:return t=this.startNode(),this.next(),t.elements=this.parseExprList(f.bracketR,!0,!0,e),this.finishNode(t,"ArrayExpression");case f.braceL:return this.parseObj(!1,e);case f._function:return t=this.startNode(),this.next(),this.parseFunction(t,0);case f._class:return this.parseClass(this.startNode(),!1);case f._new:return this.parseNew();case f.backQuote:return this.parseTemplate();case f._import:return this.options.ecmaVersion>=11?this.parseExprImport():this.unexpected();default:this.unexpected()}},G.parseExprImport=function(){var e=this.startNode();this.containsEsc&&this.raiseRecoverable(this.start,"Escape sequence in keyword import");var t=this.parseIdent(!0);switch(this.type){case f.parenL:return this.parseDynamicImport(e);case f.dot:return e.meta=t,this.parseImportMeta(e);default:this.unexpected()}},G.parseDynamicImport=function(e){if(this.next(),e.source=this.parseMaybeAssign(),!this.eat(f.parenR)){var t=this.start;this.eat(f.comma)&&this.eat(f.parenR)?this.raiseRecoverable(t,"Trailing comma is not allowed in import()"):this.unexpected(t)}return this.finishNode(e,"ImportExpression")},G.parseImportMeta=function(e){this.next();var t=this.containsEsc;return e.property=this.parseIdent(!0),e.property.name!=="meta"&&this.raiseRecoverable(e.property.start,"The only valid meta property for import is 'import.meta'"),t&&this.raiseRecoverable(e.start,"'import.meta' must not contain escaped characters"),this.options.sourceType!=="module"&&this.raiseRecoverable(e.start,"Cannot use 'import.meta' outside a module"),this.finishNode(e,"MetaProperty")},G.parseLiteral=function(e){var t=this.startNode();return t.value=e,t.raw=this.input.slice(this.start,this.end),t.raw.charCodeAt(t.raw.length-1)===110&&(t.bigint=t.raw.slice(0,-1).replace(/_/g,"")),this.next(),this.finishNode(t,"Literal")},G.parseParenExpression=function(){this.expect(f.parenL);var e=this.parseExpression();return this.expect(f.parenR),e},G.parseParenAndDistinguishExpression=function(e){var t=this.start,r=this.startLoc,n,s=this.options.ecmaVersion>=8;if(this.options.ecmaVersion>=6){this.next();var o=this.start,u=this.startLoc,h=[],p=!0,m=!1,g=new _t,F=this.yieldPos,A=this.awaitPos,C;for(this.yieldPos=0,this.awaitPos=0;this.type!==f.parenR;)if(p?p=!1:this.expect(f.comma),s&&this.afterTrailingComma(f.parenR,!0)){m=!0;break}else if(this.type===f.ellipsis){C=this.start,h.push(this.parseParenItem(this.parseRestBinding())),this.type===f.comma&&this.raise(this.start,"Comma is not permitted after the rest element");break}else h.push(this.parseMaybeAssign(!1,g,this.parseParenItem));var D=this.start,E=this.startLoc;if(this.expect(f.parenR),e&&!this.canInsertSemicolon()&&this.eat(f.arrow))return this.checkPatternErrors(g,!1),this.checkYieldAwaitInDefaultParams(),this.yieldPos=F,this.awaitPos=A,this.parseParenArrowList(t,r,h);(!h.length||m)&&this.unexpected(this.lastTokStart),C&&this.unexpected(C),this.checkExpressionErrors(g,!0),this.yieldPos=F||this.yieldPos,this.awaitPos=A||this.awaitPos,h.length>1?(n=this.startNodeAt(o,u),n.expressions=h,this.finishNodeAt(n,"SequenceExpression",D,E)):n=h[0]}else n=this.parseParenExpression();if(this.options.preserveParens){var w=this.startNodeAt(t,r);return w.expression=n,this.finishNode(w,"ParenthesizedExpression")}else return n},G.parseParenItem=function(e){return e},G.parseParenArrowList=function(e,t,r){return this.parseArrowExpression(this.startNodeAt(e,t),r)},tn=[],G.parseNew=function(){this.containsEsc&&this.raiseRecoverable(this.start,"Escape sequence in keyword new");var e=this.startNode(),t=this.parseIdent(!0);if(this.options.ecmaVersion>=6&&this.eat(f.dot)){e.meta=t;var r=this.containsEsc;return e.property=this.parseIdent(!0),e.property.name!=="target"&&this.raiseRecoverable(e.property.start,"The only valid meta property for new is 'new.target'"),r&&this.raiseRecoverable(e.start,"'new.target' must not contain escaped characters"),this.inNonArrowFunction()||this.raiseRecoverable(e.start,"'new.target' can only be used in functions"),this.finishNode(e,"MetaProperty")}var n=this.start,s=this.startLoc,o=this.type===f._import;return e.callee=this.parseSubscripts(this.parseExprAtom(),n,s,!0),o&&e.callee.type==="ImportExpression"&&this.raise(n,"Cannot use new with import()"),this.eat(f.parenL)?e.arguments=this.parseExprList(f.parenR,this.options.ecmaVersion>=8,!1):e.arguments=tn,this.finishNode(e,"NewExpression")},G.parseTemplateElement=function(e){var t=e.isTagged,r=this.startNode();return this.type===f.invalidTemplate?(t||this.raiseRecoverable(this.start,"Bad escape sequence in untagged template literal"),r.value={raw:this.value,cooked:null}):r.value={raw:this.input.slice(this.start,this.end).replace(/\r\n?/g,` +`),cooked:this.value},this.next(),r.tail=this.type===f.backQuote,this.finishNode(r,"TemplateElement")},G.parseTemplate=function(e){e===void 0&&(e={});var t=e.isTagged;t===void 0&&(t=!1);var r=this.startNode();this.next(),r.expressions=[];var n=this.parseTemplateElement({isTagged:t});for(r.quasis=[n];!n.tail;)this.type===f.eof&&this.raise(this.pos,"Unterminated template literal"),this.expect(f.dollarBraceL),r.expressions.push(this.parseExpression()),this.expect(f.braceR),r.quasis.push(n=this.parseTemplateElement({isTagged:t}));return this.next(),this.finishNode(r,"TemplateLiteral")},G.isAsyncProp=function(e){return!e.computed&&e.key.type==="Identifier"&&e.key.name==="async"&&(this.type===f.name||this.type===f.num||this.type===f.string||this.type===f.bracketL||this.type.keyword||this.options.ecmaVersion>=9&&this.type===f.star)&&!De.test(this.input.slice(this.lastTokEnd,this.start))},G.parseObj=function(e,t){var r=this.startNode(),n=!0,s={};for(r.properties=[],this.next();!this.eat(f.braceR);){if(n)n=!1;else if(this.expect(f.comma),this.options.ecmaVersion>=5&&this.afterTrailingComma(f.braceR))break;var o=this.parseProperty(e,t);e||this.checkPropClash(o,s,t),r.properties.push(o)}return this.finishNode(r,e?"ObjectPattern":"ObjectExpression")},G.parseProperty=function(e,t){var r=this.startNode(),n,s,o,u;if(this.options.ecmaVersion>=9&&this.eat(f.ellipsis))return e?(r.argument=this.parseIdent(!1),this.type===f.comma&&this.raise(this.start,"Comma is not permitted after the rest element"),this.finishNode(r,"RestElement")):(this.type===f.parenL&&t&&(t.parenthesizedAssign<0&&(t.parenthesizedAssign=this.start),t.parenthesizedBind<0&&(t.parenthesizedBind=this.start)),r.argument=this.parseMaybeAssign(!1,t),this.type===f.comma&&t&&t.trailingComma<0&&(t.trailingComma=this.start),this.finishNode(r,"SpreadElement"));this.options.ecmaVersion>=6&&(r.method=!1,r.shorthand=!1,(e||t)&&(o=this.start,u=this.startLoc),e||(n=this.eat(f.star)));var h=this.containsEsc;return this.parsePropertyName(r),!e&&!h&&this.options.ecmaVersion>=8&&!n&&this.isAsyncProp(r)?(s=!0,n=this.options.ecmaVersion>=9&&this.eat(f.star),this.parsePropertyName(r,t)):s=!1,this.parsePropertyValue(r,e,n,s,o,u,t,h),this.finishNode(r,"Property")},G.parsePropertyValue=function(e,t,r,n,s,o,u,h){if((r||n)&&this.type===f.colon&&this.unexpected(),this.eat(f.colon))e.value=t?this.parseMaybeDefault(this.start,this.startLoc):this.parseMaybeAssign(!1,u),e.kind="init";else if(this.options.ecmaVersion>=6&&this.type===f.parenL)t&&this.unexpected(),e.kind="init",e.method=!0,e.value=this.parseMethod(r,n);else if(!t&&!h&&this.options.ecmaVersion>=5&&!e.computed&&e.key.type==="Identifier"&&(e.key.name==="get"||e.key.name==="set")&&this.type!==f.comma&&this.type!==f.braceR&&this.type!==f.eq){(r||n)&&this.unexpected(),e.kind=e.key.name,this.parsePropertyName(e),e.value=this.parseMethod(!1);var p=e.kind==="get"?0:1;if(e.value.params.length!==p){var m=e.value.start;e.kind==="get"?this.raiseRecoverable(m,"getter should have no params"):this.raiseRecoverable(m,"setter should have exactly one param")}else e.kind==="set"&&e.value.params[0].type==="RestElement"&&this.raiseRecoverable(e.value.params[0].start,"Setter cannot use rest params")}else this.options.ecmaVersion>=6&&!e.computed&&e.key.type==="Identifier"?((r||n)&&this.unexpected(),this.checkUnreserved(e.key),e.key.name==="await"&&!this.awaitIdentPos&&(this.awaitIdentPos=s),e.kind="init",t?e.value=this.parseMaybeDefault(s,o,e.key):this.type===f.eq&&u?(u.shorthandAssign<0&&(u.shorthandAssign=this.start),e.value=this.parseMaybeDefault(s,o,e.key)):e.value=e.key,e.shorthand=!0):this.unexpected()},G.parsePropertyName=function(e){if(this.options.ecmaVersion>=6){if(this.eat(f.bracketL))return e.computed=!0,e.key=this.parseMaybeAssign(),this.expect(f.bracketR),e.key;e.computed=!1}return e.key=this.type===f.num||this.type===f.string?this.parseExprAtom():this.parseIdent(this.options.allowReserved!=="never")},G.initFunction=function(e){e.id=null,this.options.ecmaVersion>=6&&(e.generator=e.expression=!1),this.options.ecmaVersion>=8&&(e.async=!1)},G.parseMethod=function(e,t,r){var n=this.startNode(),s=this.yieldPos,o=this.awaitPos,u=this.awaitIdentPos;return this.initFunction(n),this.options.ecmaVersion>=6&&(n.generator=e),this.options.ecmaVersion>=8&&(n.async=!!t),this.yieldPos=0,this.awaitPos=0,this.awaitIdentPos=0,this.enterScope(Vt(t,n.generator)|Xt|(r?Ht:0)),this.expect(f.parenL),n.params=this.parseBindingList(f.parenR,!1,this.options.ecmaVersion>=8),this.checkYieldAwaitInDefaultParams(),this.parseFunctionBody(n,!1,!0),this.yieldPos=s,this.awaitPos=o,this.awaitIdentPos=u,this.finishNode(n,"FunctionExpression")},G.parseArrowExpression=function(e,t,r){var n=this.yieldPos,s=this.awaitPos,o=this.awaitIdentPos;return this.enterScope(Vt(r,!1)|Gt),this.initFunction(e),this.options.ecmaVersion>=8&&(e.async=!!r),this.yieldPos=0,this.awaitPos=0,this.awaitIdentPos=0,e.params=this.toAssignableList(t,!0),this.parseFunctionBody(e,!0,!1),this.yieldPos=n,this.awaitPos=s,this.awaitIdentPos=o,this.finishNode(e,"ArrowFunctionExpression")},G.parseFunctionBody=function(e,t,r){var n=t&&this.type!==f.braceL,s=this.strict,o=!1;if(n)e.body=this.parseMaybeAssign(),e.expression=!0,this.checkParams(e,!1);else{var u=this.options.ecmaVersion>=7&&!this.isSimpleParamList(e.params);(!s||u)&&(o=this.strictDirective(this.end),o&&u&&this.raiseRecoverable(e.start,"Illegal 'use strict' directive in function with non-simple parameter list"));var h=this.labels;this.labels=[],o&&(this.strict=!0),this.checkParams(e,!s&&!o&&!t&&!r&&this.isSimpleParamList(e.params)),this.strict&&e.id&&this.checkLVal(e.id,Zt),e.body=this.parseBlock(!1,void 0,o&&!s),e.expression=!1,this.adaptDirectivePrologue(e.body.body),this.labels=h}this.exitScope()},G.isSimpleParamList=function(e){for(var t=0,r=e;t-1||s.functions.indexOf(e)>-1||s.var.indexOf(e)>-1,s.lexical.push(e),this.inModule&&s.flags&Ye&&delete this.undefinedExports[e]}else if(t===Kt){var o=this.currentScope();o.lexical.push(e)}else if(t===Yt){var u=this.currentScope();this.treatFunctionsAsVar?n=u.lexical.indexOf(e)>-1:n=u.lexical.indexOf(e)>-1||u.var.indexOf(e)>-1,u.functions.push(e)}else for(var h=this.scopeStack.length-1;h>=0;--h){var p=this.scopeStack[h];if(p.lexical.indexOf(e)>-1&&!(p.flags&Jt&&p.lexical[0]===e)||!this.treatFunctionsAsVarInScope(p)&&p.functions.indexOf(e)>-1){n=!0;break}if(p.var.push(e),this.inModule&&p.flags&Ye&&delete this.undefinedExports[e],p.flags&kt)break}n&&this.raiseRecoverable(r,"Identifier '"+e+"' has already been declared")},Ie.checkLocalExport=function(e){this.scopeStack[0].lexical.indexOf(e.name)===-1&&this.scopeStack[0].var.indexOf(e.name)===-1&&(this.undefinedExports[e.name]=e)},Ie.currentScope=function(){return this.scopeStack[this.scopeStack.length-1]},Ie.currentVarScope=function(){for(var e=this.scopeStack.length-1;;e--){var t=this.scopeStack[e];if(t.flags&kt)return t}},Ie.currentThisScope=function(){for(var e=this.scopeStack.length-1;;e--){var t=this.scopeStack[e];if(t.flags&kt&&!(t.flags&Gt))return t}},ht=function(e,t,r){this.type="",this.start=t,this.end=0,e.options.locations&&(this.loc=new et(e,r)),e.options.directSourceFile&&(this.sourceFile=e.options.directSourceFile),e.options.ranges&&(this.range=[t,0])},lt=te.prototype,lt.startNode=function(){return new ht(this,this.start,this.startLoc)},lt.startNodeAt=function(e,t){return new ht(this,e,t)},lt.finishNode=function(e,t){return Wr.call(this,e,t,this.lastTokEnd,this.lastTokEndLoc)},lt.finishNodeAt=function(e,t,r,n){return Wr.call(this,e,t,r,n)},ye=function(e,t,r,n,s){this.token=e,this.isExpr=!!t,this.preserveSpace=!!r,this.override=n,this.generator=!!s},ie={b_stat:new ye("{",!1),b_expr:new ye("{",!0),b_tmpl:new ye("${",!1),p_stat:new ye("(",!1),p_expr:new ye("(",!0),q_tmpl:new ye("`",!0,!0,function(e){return e.tryReadTemplateToken()}),f_stat:new ye("function",!1),f_expr:new ye("function",!0),f_expr_gen:new ye("function",!0,!1,null,!0),f_gen:new ye("function",!1,!1,null,!0)},ct=te.prototype,ct.initialContext=function(){return[ie.b_stat]},ct.braceIsBlock=function(e){var t=this.curContext();return t===ie.f_expr||t===ie.f_stat?!0:e===f.colon&&(t===ie.b_stat||t===ie.b_expr)?!t.isExpr:e===f._return||e===f.name&&this.exprAllowed?De.test(this.input.slice(this.lastTokEnd,this.start)):e===f._else||e===f.semi||e===f.eof||e===f.parenR||e===f.arrow?!0:e===f.braceL?t===ie.b_stat:e===f._var||e===f._const||e===f.name?!1:!this.exprAllowed},ct.inGeneratorContext=function(){for(var e=this.context.length-1;e>=1;e--){var t=this.context[e];if(t.token==="function")return t.generator}return!1},ct.updateContext=function(e){var t,r=this.type;r.keyword&&e===f.dot?this.exprAllowed=!1:(t=r.updateContext)?t.call(this,e):this.exprAllowed=r.beforeExpr},f.parenR.updateContext=f.braceR.updateContext=function(){if(this.context.length===1){this.exprAllowed=!0;return}var e=this.context.pop();e===ie.b_stat&&this.curContext().token==="function"&&(e=this.context.pop()),this.exprAllowed=!e.isExpr},f.braceL.updateContext=function(e){this.context.push(this.braceIsBlock(e)?ie.b_stat:ie.b_expr),this.exprAllowed=!0},f.dollarBraceL.updateContext=function(){this.context.push(ie.b_tmpl),this.exprAllowed=!0},f.parenL.updateContext=function(e){var t=e===f._if||e===f._for||e===f._with||e===f._while;this.context.push(t?ie.p_stat:ie.p_expr),this.exprAllowed=!0},f.incDec.updateContext=function(){},f._function.updateContext=f._class.updateContext=function(e){e.beforeExpr&&e!==f.semi&&e!==f._else&&!(e===f._return&&De.test(this.input.slice(this.lastTokEnd,this.start)))&&!((e===f.colon||e===f.braceL)&&this.curContext()===ie.b_stat)?this.context.push(ie.f_expr):this.context.push(ie.f_stat),this.exprAllowed=!1},f.backQuote.updateContext=function(){this.curContext()===ie.q_tmpl?this.context.pop():this.context.push(ie.q_tmpl),this.exprAllowed=!1},f.star.updateContext=function(e){if(e===f._function){var t=this.context.length-1;this.context[t]===ie.f_expr?this.context[t]=ie.f_expr_gen:this.context[t]=ie.f_gen}this.exprAllowed=!0},f.name.updateContext=function(e){var t=!1;this.options.ecmaVersion>=6&&e!==f.dot&&(this.value==="of"&&!this.exprAllowed||this.value==="yield"&&this.inGeneratorContext())&&(t=!0),this.exprAllowed=t},er="ASCII ASCII_Hex_Digit AHex Alphabetic Alpha Any Assigned Bidi_Control Bidi_C Bidi_Mirrored Bidi_M Case_Ignorable CI Cased Changes_When_Casefolded CWCF Changes_When_Casemapped CWCM Changes_When_Lowercased CWL Changes_When_NFKC_Casefolded CWKCF Changes_When_Titlecased CWT Changes_When_Uppercased CWU Dash Default_Ignorable_Code_Point DI Deprecated Dep Diacritic Dia Emoji Emoji_Component Emoji_Modifier Emoji_Modifier_Base Emoji_Presentation Extender Ext Grapheme_Base Gr_Base Grapheme_Extend Gr_Ext Hex_Digit Hex IDS_Binary_Operator IDSB IDS_Trinary_Operator IDST ID_Continue IDC ID_Start IDS Ideographic Ideo Join_Control Join_C Logical_Order_Exception LOE Lowercase Lower Math Noncharacter_Code_Point NChar Pattern_Syntax Pat_Syn Pattern_White_Space Pat_WS Quotation_Mark QMark Radical Regional_Indicator RI Sentence_Terminal STerm Soft_Dotted SD Terminal_Punctuation Term Unified_Ideograph UIdeo Uppercase Upper Variation_Selector VS White_Space space XID_Continue XIDC XID_Start XIDS",tr=er+" Extended_Pictographic",nn=tr,Tn={9:er,10:tr,11:nn},fr="Cased_Letter LC Close_Punctuation Pe Connector_Punctuation Pc Control Cc cntrl Currency_Symbol Sc Dash_Punctuation Pd Decimal_Number Nd digit Enclosing_Mark Me Final_Punctuation Pf Format Cf Initial_Punctuation Pi Letter L Letter_Number Nl Line_Separator Zl Lowercase_Letter Ll Mark M Combining_Mark Math_Symbol Sm Modifier_Letter Lm Modifier_Symbol Sk Nonspacing_Mark Mn Number N Open_Punctuation Ps Other C Other_Letter Lo Other_Number No Other_Punctuation Po Other_Symbol So Paragraph_Separator Zp Private_Use Co Punctuation P punct Separator Z Space_Separator Zs Spacing_Mark Mc Surrogate Cs Symbol S Titlecase_Letter Lt Unassigned Cn Uppercase_Letter Lu",rr="Adlam Adlm Ahom Ahom Anatolian_Hieroglyphs Hluw Arabic Arab Armenian Armn Avestan Avst Balinese Bali Bamum Bamu Bassa_Vah Bass Batak Batk Bengali Beng Bhaiksuki Bhks Bopomofo Bopo Brahmi Brah Braille Brai Buginese Bugi Buhid Buhd Canadian_Aboriginal Cans Carian Cari Caucasian_Albanian Aghb Chakma Cakm Cham Cham Cherokee Cher Common Zyyy Coptic Copt Qaac Cuneiform Xsux Cypriot Cprt Cyrillic Cyrl Deseret Dsrt Devanagari Deva Duployan Dupl Egyptian_Hieroglyphs Egyp Elbasan Elba Ethiopic Ethi Georgian Geor Glagolitic Glag Gothic Goth Grantha Gran Greek Grek Gujarati Gujr Gurmukhi Guru Han Hani Hangul Hang Hanunoo Hano Hatran Hatr Hebrew Hebr Hiragana Hira Imperial_Aramaic Armi Inherited Zinh Qaai Inscriptional_Pahlavi Phli Inscriptional_Parthian Prti Javanese Java Kaithi Kthi Kannada Knda Katakana Kana Kayah_Li Kali Kharoshthi Khar Khmer Khmr Khojki Khoj Khudawadi Sind Lao Laoo Latin Latn Lepcha Lepc Limbu Limb Linear_A Lina Linear_B Linb Lisu Lisu Lycian Lyci Lydian Lydi Mahajani Mahj Malayalam Mlym Mandaic Mand Manichaean Mani Marchen Marc Masaram_Gondi Gonm Meetei_Mayek Mtei Mende_Kikakui Mend Meroitic_Cursive Merc Meroitic_Hieroglyphs Mero Miao Plrd Modi Modi Mongolian Mong Mro Mroo Multani Mult Myanmar Mymr Nabataean Nbat New_Tai_Lue Talu Newa Newa Nko Nkoo Nushu Nshu Ogham Ogam Ol_Chiki Olck Old_Hungarian Hung Old_Italic Ital Old_North_Arabian Narb Old_Permic Perm Old_Persian Xpeo Old_South_Arabian Sarb Old_Turkic Orkh Oriya Orya Osage Osge Osmanya Osma Pahawh_Hmong Hmng Palmyrene Palm Pau_Cin_Hau Pauc Phags_Pa Phag Phoenician Phnx Psalter_Pahlavi Phlp Rejang Rjng Runic Runr Samaritan Samr Saurashtra Saur Sharada Shrd Shavian Shaw Siddham Sidd SignWriting Sgnw Sinhala Sinh Sora_Sompeng Sora Soyombo Soyo Sundanese Sund Syloti_Nagri Sylo Syriac Syrc Tagalog Tglg Tagbanwa Tagb Tai_Le Tale Tai_Tham Lana Tai_Viet Tavt Takri Takr Tamil Taml Tangut Tang Telugu Telu Thaana Thaa Thai Thai Tibetan Tibt Tifinagh Tfng Tirhuta Tirh Ugaritic Ugar Vai Vaii Warang_Citi Wara Yi Yiii Zanabazar_Square Zanb",nr=rr+" Dogra Dogr Gunjala_Gondi Gong Hanifi_Rohingya Rohg Makasar Maka Medefaidrin Medf Old_Sogdian Sogo Sogdian Sogd",sn=nr+" Elymaic Elym Nandinagari Nand Nyiakeng_Puachue_Hmong Hmnp Wancho Wcho",Pn={9:rr,10:nr,11:sn},dr={},qt(9),qt(10),qt(11),q=te.prototype,be=function(e){this.parser=e,this.validFlags="gim"+(e.options.ecmaVersion>=6?"uy":"")+(e.options.ecmaVersion>=9?"s":""),this.unicodeProperties=dr[e.options.ecmaVersion>=11?11:e.options.ecmaVersion],this.source="",this.flags="",this.start=0,this.switchU=!1,this.switchN=!1,this.pos=0,this.lastIntValue=0,this.lastStringValue="",this.lastAssertionIsQuantifiable=!1,this.numCapturingParens=0,this.maxBackReference=0,this.groupNames=[],this.backReferenceNames=[]},be.prototype.reset=function(e,t,r){var n=r.indexOf("u")!==-1;this.start=e|0,this.source=t+"",this.flags=r,this.switchU=n&&this.parser.options.ecmaVersion>=6,this.switchN=n&&this.parser.options.ecmaVersion>=9},be.prototype.raise=function(e){this.parser.raiseRecoverable(this.start,"Invalid regular expression: /"+this.source+"/: "+e)},be.prototype.at=function(e,t){t===void 0&&(t=!1);var r=this.source,n=r.length;if(e>=n)return-1;var s=r.charCodeAt(e);if(!(t||this.switchU)||s<=55295||s>=57344||e+1>=n)return s;var o=r.charCodeAt(e+1);return o>=56320&&o<=57343?(s<<10)+o-56613888:s},be.prototype.nextIndex=function(e,t){t===void 0&&(t=!1);var r=this.source,n=r.length;if(e>=n)return n;var s=r.charCodeAt(e),o;return!(t||this.switchU)||s<=55295||s>=57344||e+1>=n||(o=r.charCodeAt(e+1))<56320||o>57343?e+1:e+2},be.prototype.current=function(e){return e===void 0&&(e=!1),this.at(this.pos,e)},be.prototype.lookahead=function(e){return e===void 0&&(e=!1),this.at(this.nextIndex(this.pos,e),e)},be.prototype.advance=function(e){e===void 0&&(e=!1),this.pos=this.nextIndex(this.pos,e)},be.prototype.eat=function(e,t){return t===void 0&&(t=!1),this.current(t)===e?(this.advance(t),!0):!1},q.validateRegExpFlags=function(e){for(var t=e.validFlags,r=e.flags,n=0;n-1&&this.raise(e.start,"Duplicate regular expression flag")}},q.validateRegExpPattern=function(e){this.regexp_pattern(e),!e.switchN&&this.options.ecmaVersion>=9&&e.groupNames.length>0&&(e.switchN=!0,this.regexp_pattern(e))},q.regexp_pattern=function(e){e.pos=0,e.lastIntValue=0,e.lastStringValue="",e.lastAssertionIsQuantifiable=!1,e.numCapturingParens=0,e.maxBackReference=0,e.groupNames.length=0,e.backReferenceNames.length=0,this.regexp_disjunction(e),e.pos!==e.source.length&&(e.eat(41)&&e.raise("Unmatched ')'"),(e.eat(93)||e.eat(125))&&e.raise("Lone quantifier brackets")),e.maxBackReference>e.numCapturingParens&&e.raise("Invalid escape");for(var t=0,r=e.backReferenceNames;t=9&&(r=e.eat(60)),e.eat(61)||e.eat(33))return this.regexp_disjunction(e),e.eat(41)||e.raise("Unterminated group"),e.lastAssertionIsQuantifiable=!r,!0}return e.pos=t,!1},q.regexp_eatQuantifier=function(e,t){return t===void 0&&(t=!1),this.regexp_eatQuantifierPrefix(e,t)?(e.eat(63),!0):!1},q.regexp_eatQuantifierPrefix=function(e,t){return e.eat(42)||e.eat(43)||e.eat(63)||this.regexp_eatBracedQuantifier(e,t)},q.regexp_eatBracedQuantifier=function(e,t){var r=e.pos;if(e.eat(123)){var n=0,s=-1;if(this.regexp_eatDecimalDigits(e)&&(n=e.lastIntValue,e.eat(44)&&this.regexp_eatDecimalDigits(e)&&(s=e.lastIntValue),e.eat(125)))return s!==-1&&s=9?this.regexp_groupSpecifier(e):e.current()===63&&e.raise("Invalid group"),this.regexp_disjunction(e),e.eat(41))return e.numCapturingParens+=1,!0;e.raise("Unterminated group")}return!1},q.regexp_eatExtendedAtom=function(e){return e.eat(46)||this.regexp_eatReverseSolidusAtomEscape(e)||this.regexp_eatCharacterClass(e)||this.regexp_eatUncapturingGroup(e)||this.regexp_eatCapturingGroup(e)||this.regexp_eatInvalidBracedQuantifier(e)||this.regexp_eatExtendedPatternCharacter(e)},q.regexp_eatInvalidBracedQuantifier=function(e){return this.regexp_eatBracedQuantifier(e,!0)&&e.raise("Nothing to repeat"),!1},q.regexp_eatSyntaxCharacter=function(e){var t=e.current();return zr(t)?(e.lastIntValue=t,e.advance(),!0):!1},q.regexp_eatPatternCharacters=function(e){for(var t=e.pos,r=0;(r=e.current())!==-1&&!zr(r);)e.advance();return e.pos!==t},q.regexp_eatExtendedPatternCharacter=function(e){var t=e.current();return t!==-1&&t!==36&&!(t>=40&&t<=43)&&t!==46&&t!==63&&t!==91&&t!==94&&t!==124?(e.advance(),!0):!1},q.regexp_groupSpecifier=function(e){if(e.eat(63)){if(this.regexp_eatGroupName(e)){e.groupNames.indexOf(e.lastStringValue)!==-1&&e.raise("Duplicate capture group name"),e.groupNames.push(e.lastStringValue);return}e.raise("Invalid group")}},q.regexp_eatGroupName=function(e){if(e.lastStringValue="",e.eat(60)){if(this.regexp_eatRegExpIdentifierName(e)&&e.eat(62))return!0;e.raise("Invalid capture group name")}return!1},q.regexp_eatRegExpIdentifierName=function(e){if(e.lastStringValue="",this.regexp_eatRegExpIdentifierStart(e)){for(e.lastStringValue+=St(e.lastIntValue);this.regexp_eatRegExpIdentifierPart(e);)e.lastStringValue+=St(e.lastIntValue);return!0}return!1},q.regexp_eatRegExpIdentifierStart=function(e){var t=e.pos,r=this.options.ecmaVersion>=11,n=e.current(r);return e.advance(r),n===92&&this.regexp_eatRegExpUnicodeEscapeSequence(e,r)&&(n=e.lastIntValue),Ji(n)?(e.lastIntValue=n,!0):(e.pos=t,!1)},q.regexp_eatRegExpIdentifierPart=function(e){var t=e.pos,r=this.options.ecmaVersion>=11,n=e.current(r);return e.advance(r),n===92&&this.regexp_eatRegExpUnicodeEscapeSequence(e,r)&&(n=e.lastIntValue),Xi(n)?(e.lastIntValue=n,!0):(e.pos=t,!1)},q.regexp_eatAtomEscape=function(e){return this.regexp_eatBackReference(e)||this.regexp_eatCharacterClassEscape(e)||this.regexp_eatCharacterEscape(e)||e.switchN&&this.regexp_eatKGroupName(e)?!0:(e.switchU&&(e.current()===99&&e.raise("Invalid unicode escape"),e.raise("Invalid escape")),!1)},q.regexp_eatBackReference=function(e){var t=e.pos;if(this.regexp_eatDecimalEscape(e)){var r=e.lastIntValue;if(e.switchU)return r>e.maxBackReference&&(e.maxBackReference=r),!0;if(r<=e.numCapturingParens)return!0;e.pos=t}return!1},q.regexp_eatKGroupName=function(e){if(e.eat(107)){if(this.regexp_eatGroupName(e))return e.backReferenceNames.push(e.lastStringValue),!0;e.raise("Invalid named reference")}return!1},q.regexp_eatCharacterEscape=function(e){return this.regexp_eatControlEscape(e)||this.regexp_eatCControlLetter(e)||this.regexp_eatZero(e)||this.regexp_eatHexEscapeSequence(e)||this.regexp_eatRegExpUnicodeEscapeSequence(e,!1)||!e.switchU&&this.regexp_eatLegacyOctalEscapeSequence(e)||this.regexp_eatIdentityEscape(e)},q.regexp_eatCControlLetter=function(e){var t=e.pos;if(e.eat(99)){if(this.regexp_eatControlLetter(e))return!0;e.pos=t}return!1},q.regexp_eatZero=function(e){return e.current()===48&&!Lt(e.lookahead())?(e.lastIntValue=0,e.advance(),!0):!1},q.regexp_eatControlEscape=function(e){var t=e.current();return t===116?(e.lastIntValue=9,e.advance(),!0):t===110?(e.lastIntValue=10,e.advance(),!0):t===118?(e.lastIntValue=11,e.advance(),!0):t===102?(e.lastIntValue=12,e.advance(),!0):t===114?(e.lastIntValue=13,e.advance(),!0):!1},q.regexp_eatControlLetter=function(e){var t=e.current();return Sn(t)?(e.lastIntValue=t%32,e.advance(),!0):!1},q.regexp_eatRegExpUnicodeEscapeSequence=function(e,t){t===void 0&&(t=!1);var r=e.pos,n=t||e.switchU;if(e.eat(117)){if(this.regexp_eatFixedHexDigits(e,4)){var s=e.lastIntValue;if(n&&s>=55296&&s<=56319){var o=e.pos;if(e.eat(92)&&e.eat(117)&&this.regexp_eatFixedHexDigits(e,4)){var u=e.lastIntValue;if(u>=56320&&u<=57343)return e.lastIntValue=(s-55296)*1024+(u-56320)+65536,!0}e.pos=o,e.lastIntValue=s}return!0}if(n&&e.eat(123)&&this.regexp_eatHexDigits(e)&&e.eat(125)&&Hi(e.lastIntValue))return!0;n&&e.raise("Invalid unicode escape"),e.pos=r}return!1},q.regexp_eatIdentityEscape=function(e){if(e.switchU)return this.regexp_eatSyntaxCharacter(e)?!0:e.eat(47)?(e.lastIntValue=47,!0):!1;var t=e.current();return t!==99&&(!e.switchN||t!==107)?(e.lastIntValue=t,e.advance(),!0):!1},q.regexp_eatDecimalEscape=function(e){e.lastIntValue=0;var t=e.current();if(t>=49&&t<=57){do e.lastIntValue=10*e.lastIntValue+(t-48),e.advance();while((t=e.current())>=48&&t<=57);return!0}return!1},q.regexp_eatCharacterClassEscape=function(e){var t=e.current();if(Qi(t))return e.lastIntValue=-1,e.advance(),!0;if(e.switchU&&this.options.ecmaVersion>=9&&(t===80||t===112)){if(e.lastIntValue=-1,e.advance(),e.eat(123)&&this.regexp_eatUnicodePropertyValueExpression(e)&&e.eat(125))return!0;e.raise("Invalid property name")}return!1},q.regexp_eatUnicodePropertyValueExpression=function(e){var t=e.pos;if(this.regexp_eatUnicodePropertyName(e)&&e.eat(61)){var r=e.lastStringValue;if(this.regexp_eatUnicodePropertyValue(e)){var n=e.lastStringValue;return this.regexp_validateUnicodePropertyNameAndValue(e,r,n),!0}}if(e.pos=t,this.regexp_eatLoneUnicodePropertyNameOrValue(e)){var s=e.lastStringValue;return this.regexp_validateUnicodePropertyNameOrValue(e,s),!0}return!1},q.regexp_validateUnicodePropertyNameAndValue=function(e,t,r){Nt(e.unicodeProperties.nonBinary,t)||e.raise("Invalid property name"),e.unicodeProperties.nonBinary[t].test(r)||e.raise("Invalid property value")},q.regexp_validateUnicodePropertyNameOrValue=function(e,t){e.unicodeProperties.binary.test(t)||e.raise("Invalid property name")},q.regexp_eatUnicodePropertyName=function(e){var t=0;for(e.lastStringValue="";bn(t=e.current());)e.lastStringValue+=St(t),e.advance();return e.lastStringValue!==""},q.regexp_eatUnicodePropertyValue=function(e){var t=0;for(e.lastStringValue="";Yi(t=e.current());)e.lastStringValue+=St(t),e.advance();return e.lastStringValue!==""},q.regexp_eatLoneUnicodePropertyNameOrValue=function(e){return this.regexp_eatUnicodePropertyValue(e)},q.regexp_eatCharacterClass=function(e){if(e.eat(91)){if(e.eat(94),this.regexp_classRanges(e),e.eat(93))return!0;e.raise("Unterminated character class")}return!1},q.regexp_classRanges=function(e){for(;this.regexp_eatClassAtom(e);){var t=e.lastIntValue;if(e.eat(45)&&this.regexp_eatClassAtom(e)){var r=e.lastIntValue;e.switchU&&(t===-1||r===-1)&&e.raise("Invalid character class"),t!==-1&&r!==-1&&t>r&&e.raise("Range out of order in character class")}}},q.regexp_eatClassAtom=function(e){var t=e.pos;if(e.eat(92)){if(this.regexp_eatClassEscape(e))return!0;if(e.switchU){var r=e.current();(r===99||Xr(r))&&e.raise("Invalid class escape"),e.raise("Invalid escape")}e.pos=t}var n=e.current();return n!==93?(e.lastIntValue=n,e.advance(),!0):!1},q.regexp_eatClassEscape=function(e){var t=e.pos;if(e.eat(98))return e.lastIntValue=8,!0;if(e.switchU&&e.eat(45))return e.lastIntValue=45,!0;if(!e.switchU&&e.eat(99)){if(this.regexp_eatClassControlLetter(e))return!0;e.pos=t}return this.regexp_eatCharacterClassEscape(e)||this.regexp_eatCharacterEscape(e)},q.regexp_eatClassControlLetter=function(e){var t=e.current();return Lt(t)||t===95?(e.lastIntValue=t%32,e.advance(),!0):!1},q.regexp_eatHexEscapeSequence=function(e){var t=e.pos;if(e.eat(120)){if(this.regexp_eatFixedHexDigits(e,2))return!0;e.switchU&&e.raise("Invalid escape"),e.pos=t}return!1},q.regexp_eatDecimalDigits=function(e){var t=e.pos,r=0;for(e.lastIntValue=0;Lt(r=e.current());)e.lastIntValue=10*e.lastIntValue+(r-48),e.advance();return e.pos!==t},q.regexp_eatHexDigits=function(e){var t=e.pos,r=0;for(e.lastIntValue=0;Gr(r=e.current());)e.lastIntValue=16*e.lastIntValue+Jr(r),e.advance();return e.pos!==t},q.regexp_eatLegacyOctalEscapeSequence=function(e){if(this.regexp_eatOctalDigit(e)){var t=e.lastIntValue;if(this.regexp_eatOctalDigit(e)){var r=e.lastIntValue;t<=3&&this.regexp_eatOctalDigit(e)?e.lastIntValue=t*64+r*8+e.lastIntValue:e.lastIntValue=t*8+r}else e.lastIntValue=t;return!0}return!1},q.regexp_eatOctalDigit=function(e){var t=e.current();return Xr(t)?(e.lastIntValue=t-48,e.advance(),!0):(e.lastIntValue=0,!1)},q.regexp_eatFixedHexDigits=function(e,t){var r=e.pos;e.lastIntValue=0;for(var n=0;n=this.input.length)return this.finishToken(f.eof);if(e.override)return e.override(this);this.readToken(this.fullCharCodeAtPos())},J.readToken=function(e){return Te(e,this.options.ecmaVersion>=6)||e===92?this.readWord():this.getTokenFromCode(e)},J.fullCharCodeAtPos=function(){var e=this.input.charCodeAt(this.pos);if(e<=55295||e>=57344)return e;var t=this.input.charCodeAt(this.pos+1);return(e<<10)+t-56613888},J.skipBlockComment=function(){var e=this.options.onComment&&this.curPosition(),t=this.pos,r=this.input.indexOf("*/",this.pos+=2);if(r===-1&&this.raise(this.pos-2,"Unterminated comment"),this.pos=r+2,this.options.locations){ze.lastIndex=t;for(var n;(n=ze.exec(this.input))&&n.index8&&e<14||e>=5760&&Ot.test(String.fromCharCode(e)))++this.pos;else break e}}},J.finishToken=function(e,t){this.end=this.pos,this.options.locations&&(this.endLoc=this.curPosition());var r=this.type;this.type=e,this.value=t,this.updateContext(r)},J.readToken_dot=function(){var e=this.input.charCodeAt(this.pos+1);if(e>=48&&e<=57)return this.readNumber(!0);var t=this.input.charCodeAt(this.pos+2);return this.options.ecmaVersion>=6&&e===46&&t===46?(this.pos+=3,this.finishToken(f.ellipsis)):(++this.pos,this.finishToken(f.dot))},J.readToken_slash=function(){var e=this.input.charCodeAt(this.pos+1);return this.exprAllowed?(++this.pos,this.readRegexp()):e===61?this.finishOp(f.assign,2):this.finishOp(f.slash,1)},J.readToken_mult_modulo_exp=function(e){var t=this.input.charCodeAt(this.pos+1),r=1,n=e===42?f.star:f.modulo;return this.options.ecmaVersion>=7&&e===42&&t===42&&(++r,n=f.starstar,t=this.input.charCodeAt(this.pos+2)),t===61?this.finishOp(f.assign,r+1):this.finishOp(n,r)},J.readToken_pipe_amp=function(e){var t=this.input.charCodeAt(this.pos+1);if(t===e){if(this.options.ecmaVersion>=12){var r=this.input.charCodeAt(this.pos+2);if(r===61)return this.finishOp(f.assign,3)}return this.finishOp(e===124?f.logicalOR:f.logicalAND,2)}return t===61?this.finishOp(f.assign,2):this.finishOp(e===124?f.bitwiseOR:f.bitwiseAND,1)},J.readToken_caret=function(){var e=this.input.charCodeAt(this.pos+1);return e===61?this.finishOp(f.assign,2):this.finishOp(f.bitwiseXOR,1)},J.readToken_plus_min=function(e){var t=this.input.charCodeAt(this.pos+1);return t===e?t===45&&!this.inModule&&this.input.charCodeAt(this.pos+2)===62&&(this.lastTokEnd===0||De.test(this.input.slice(this.lastTokEnd,this.pos)))?(this.skipLineComment(3),this.skipSpace(),this.nextToken()):this.finishOp(f.incDec,2):t===61?this.finishOp(f.assign,2):this.finishOp(f.plusMin,1)},J.readToken_lt_gt=function(e){var t=this.input.charCodeAt(this.pos+1),r=1;return t===e?(r=e===62&&this.input.charCodeAt(this.pos+2)===62?3:2,this.input.charCodeAt(this.pos+r)===61?this.finishOp(f.assign,r+1):this.finishOp(f.bitShift,r)):t===33&&e===60&&!this.inModule&&this.input.charCodeAt(this.pos+2)===45&&this.input.charCodeAt(this.pos+3)===45?(this.skipLineComment(4),this.skipSpace(),this.nextToken()):(t===61&&(r=2),this.finishOp(f.relational,r))},J.readToken_eq_excl=function(e){var t=this.input.charCodeAt(this.pos+1);return t===61?this.finishOp(f.equality,this.input.charCodeAt(this.pos+2)===61?3:2):e===61&&t===62&&this.options.ecmaVersion>=6?(this.pos+=2,this.finishToken(f.arrow)):this.finishOp(e===61?f.eq:f.prefix,1)},J.readToken_question=function(){var e=this.options.ecmaVersion;if(e>=11){var t=this.input.charCodeAt(this.pos+1);if(t===46){var r=this.input.charCodeAt(this.pos+2);if(r<48||r>57)return this.finishOp(f.questionDot,2)}if(t===63){if(e>=12){var n=this.input.charCodeAt(this.pos+2);if(n===61)return this.finishOp(f.assign,3)}return this.finishOp(f.coalesce,2)}}return this.finishOp(f.question,1)},J.getTokenFromCode=function(e){switch(e){case 46:return this.readToken_dot();case 40:return++this.pos,this.finishToken(f.parenL);case 41:return++this.pos,this.finishToken(f.parenR);case 59:return++this.pos,this.finishToken(f.semi);case 44:return++this.pos,this.finishToken(f.comma);case 91:return++this.pos,this.finishToken(f.bracketL);case 93:return++this.pos,this.finishToken(f.bracketR);case 123:return++this.pos,this.finishToken(f.braceL);case 125:return++this.pos,this.finishToken(f.braceR);case 58:return++this.pos,this.finishToken(f.colon);case 96:if(this.options.ecmaVersion<6)break;return++this.pos,this.finishToken(f.backQuote);case 48:var t=this.input.charCodeAt(this.pos+1);if(t===120||t===88)return this.readRadixNumber(16);if(this.options.ecmaVersion>=6){if(t===111||t===79)return this.readRadixNumber(8);if(t===98||t===66)return this.readRadixNumber(2)}case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return this.readNumber(!1);case 34:case 39:return this.readString(e);case 47:return this.readToken_slash();case 37:case 42:return this.readToken_mult_modulo_exp(e);case 124:case 38:return this.readToken_pipe_amp(e);case 94:return this.readToken_caret();case 43:case 45:return this.readToken_plus_min(e);case 60:case 62:return this.readToken_lt_gt(e);case 61:case 33:return this.readToken_eq_excl(e);case 63:return this.readToken_question();case 126:return this.finishOp(f.prefix,1)}this.raise(this.pos,"Unexpected character '"+Ut(e)+"'")},J.finishOp=function(e,t){var r=this.input.slice(this.pos,this.pos+t);return this.pos+=t,this.finishToken(e,r)},J.readRegexp=function(){for(var e,t,r=this.pos;;){this.pos>=this.input.length&&this.raise(r,"Unterminated regular expression");var n=this.input.charAt(this.pos);if(De.test(n)&&this.raise(r,"Unterminated regular expression"),e)e=!1;else{if(n==="[")t=!0;else if(n==="]"&&t)t=!1;else if(n==="/"&&!t)break;e=n==="\\"}++this.pos}var s=this.input.slice(r,this.pos);++this.pos;var o=this.pos,u=this.readWord1();this.containsEsc&&this.unexpected(o);var h=this.regexpState||(this.regexpState=new be(this));h.reset(r,s,u),this.validateRegExpFlags(h),this.validateRegExpPattern(h);var p=null;try{p=new RegExp(s,u)}catch{}return this.finishToken(f.regexp,{pattern:s,flags:u,value:p})},J.readInt=function(e,t,r){for(var n=this.options.ecmaVersion>=12&&t===void 0,s=r&&this.input.charCodeAt(this.pos)===48,o=this.pos,u=0,h=0,p=0,m=t??1/0;p=97?F=g-97+10:g>=65?F=g-65+10:g>=48&&g<=57?F=g-48:F=1/0,F>=e)break;h=g,u=u*e+F}return n&&h===95&&this.raiseRecoverable(this.pos-1,"Numeric separator is not allowed at the last of digits"),this.pos===o||t!=null&&this.pos-o!==t?null:u},J.readRadixNumber=function(e){var t=this.pos;this.pos+=2;var r=this.readInt(e);return r==null&&this.raise(this.start+2,"Expected number in radix "+e),this.options.ecmaVersion>=11&&this.input.charCodeAt(this.pos)===110?(r=Hr(this.input.slice(t,this.pos)),++this.pos):Te(this.fullCharCodeAtPos())&&this.raise(this.pos,"Identifier directly after number"),this.finishToken(f.num,r)},J.readNumber=function(e){var t=this.pos;!e&&this.readInt(10,void 0,!0)===null&&this.raise(t,"Invalid number");var r=this.pos-t>=2&&this.input.charCodeAt(t)===48;r&&this.strict&&this.raise(t,"Invalid number");var n=this.input.charCodeAt(this.pos);if(!r&&!e&&this.options.ecmaVersion>=11&&n===110){var s=Hr(this.input.slice(t,this.pos));return++this.pos,Te(this.fullCharCodeAtPos())&&this.raise(this.pos,"Identifier directly after number"),this.finishToken(f.num,s)}r&&/[89]/.test(this.input.slice(t,this.pos))&&(r=!1),n===46&&!r&&(++this.pos,this.readInt(10),n=this.input.charCodeAt(this.pos)),(n===69||n===101)&&!r&&(n=this.input.charCodeAt(++this.pos),(n===43||n===45)&&++this.pos,this.readInt(10)===null&&this.raise(t,"Invalid number")),Te(this.fullCharCodeAtPos())&&this.raise(this.pos,"Identifier directly after number");var o=Ki(this.input.slice(t,this.pos),r);return this.finishToken(f.num,o)},J.readCodePoint=function(){var e=this.input.charCodeAt(this.pos),t;if(e===123){this.options.ecmaVersion<6&&this.unexpected();var r=++this.pos;t=this.readHexChar(this.input.indexOf("}",this.pos)-this.pos),++this.pos,t>1114111&&this.invalidStringToken(r,"Code point out of bounds")}else t=this.readHexChar(4);return t},J.readString=function(e){for(var t="",r=++this.pos;;){this.pos>=this.input.length&&this.raise(this.start,"Unterminated string constant");var n=this.input.charCodeAt(this.pos);if(n===e)break;n===92?(t+=this.input.slice(r,this.pos),t+=this.readEscapedChar(!1),r=this.pos):(Ze(n,this.options.ecmaVersion>=10)&&this.raise(this.start,"Unterminated string constant"),++this.pos)}return t+=this.input.slice(r,this.pos++),this.finishToken(f.string,t)},ir={},J.tryReadTemplateToken=function(){this.inTemplateElement=!0;try{this.readTmplToken()}catch(e){if(e===ir)this.readInvalidTemplateToken();else throw e}this.inTemplateElement=!1},J.invalidStringToken=function(e,t){if(this.inTemplateElement&&this.options.ecmaVersion>=9)throw ir;this.raise(e,t)},J.readTmplToken=function(){for(var e="",t=this.pos;;){this.pos>=this.input.length&&this.raise(this.start,"Unterminated template");var r=this.input.charCodeAt(this.pos);if(r===96||r===36&&this.input.charCodeAt(this.pos+1)===123)return this.pos===this.start&&(this.type===f.template||this.type===f.invalidTemplate)?r===36?(this.pos+=2,this.finishToken(f.dollarBraceL)):(++this.pos,this.finishToken(f.backQuote)):(e+=this.input.slice(t,this.pos),this.finishToken(f.template,e));if(r===92)e+=this.input.slice(t,this.pos),e+=this.readEscapedChar(!0),t=this.pos;else if(Ze(r)){switch(e+=this.input.slice(t,this.pos),++this.pos,r){case 13:this.input.charCodeAt(this.pos)===10&&++this.pos;case 10:e+=` +`;break;default:e+=String.fromCharCode(r);break}this.options.locations&&(++this.curLine,this.lineStart=this.pos),t=this.pos}else++this.pos}},J.readInvalidTemplateToken=function(){for(;this.pos=48&&t<=55){var n=this.input.substr(this.pos-1,3).match(/^[0-7]+/)[0],s=parseInt(n,8);return s>255&&(n=n.slice(0,-1),s=parseInt(n,8)),this.pos+=n.length-1,t=this.input.charCodeAt(this.pos),(n!=="0"||t===56||t===57)&&(this.strict||e)&&this.invalidStringToken(this.pos-1-n.length,e?"Octal literal in template string":"Octal literal in strict mode"),String.fromCharCode(s)}return Ze(t)?"":String.fromCharCode(t)}},J.readHexChar=function(e){var t=this.pos,r=this.readInt(16,e);return r===null&&this.invalidStringToken(t,"Bad character escape sequence"),r},J.readWord1=function(){this.containsEsc=!1;for(var e="",t=!0,r=this.pos,n=this.options.ecmaVersion>=6;this.pos",nbsp:" ",iexcl:"¡",cent:"¢",pound:"£",curren:"¤",yen:"¥",brvbar:"¦",sect:"§",uml:"¨",copy:"©",ordf:"ª",laquo:"«",not:"¬",shy:"­",reg:"®",macr:"¯",deg:"°",plusmn:"±",sup2:"²",sup3:"³",acute:"´",micro:"µ",para:"¶",middot:"·",cedil:"¸",sup1:"¹",ordm:"º",raquo:"»",frac14:"¼",frac12:"½",frac34:"¾",iquest:"¿",Agrave:"À",Aacute:"Á",Acirc:"Â",Atilde:"Ã",Auml:"Ä",Aring:"Å",AElig:"Æ",Ccedil:"Ç",Egrave:"È",Eacute:"É",Ecirc:"Ê",Euml:"Ë",Igrave:"Ì",Iacute:"Í",Icirc:"Î",Iuml:"Ï",ETH:"Ð",Ntilde:"Ñ",Ograve:"Ò",Oacute:"Ó",Ocirc:"Ô",Otilde:"Õ",Ouml:"Ö",times:"×",Oslash:"Ø",Ugrave:"Ù",Uacute:"Ú",Ucirc:"Û",Uuml:"Ü",Yacute:"Ý",THORN:"Þ",szlig:"ß",agrave:"à",aacute:"á",acirc:"â",atilde:"ã",auml:"ä",aring:"å",aelig:"æ",ccedil:"ç",egrave:"è",eacute:"é",ecirc:"ê",euml:"ë",igrave:"ì",iacute:"í",icirc:"î",iuml:"ï",eth:"ð",ntilde:"ñ",ograve:"ò",oacute:"ó",ocirc:"ô",otilde:"õ",ouml:"ö",divide:"÷",oslash:"ø",ugrave:"ù",uacute:"ú",ucirc:"û",uuml:"ü",yacute:"ý",thorn:"þ",yuml:"ÿ",OElig:"Œ",oelig:"œ",Scaron:"Š",scaron:"š",Yuml:"Ÿ",fnof:"ƒ",circ:"ˆ",tilde:"˜",Alpha:"Α",Beta:"Β",Gamma:"Γ",Delta:"Δ",Epsilon:"Ε",Zeta:"Ζ",Eta:"Η",Theta:"Θ",Iota:"Ι",Kappa:"Κ",Lambda:"Λ",Mu:"Μ",Nu:"Ν",Xi:"Ξ",Omicron:"Ο",Pi:"Π",Rho:"Ρ",Sigma:"Σ",Tau:"Τ",Upsilon:"Υ",Phi:"Φ",Chi:"Χ",Psi:"Ψ",Omega:"Ω",alpha:"α",beta:"β",gamma:"γ",delta:"δ",epsilon:"ε",zeta:"ζ",eta:"η",theta:"θ",iota:"ι",kappa:"κ",lambda:"λ",mu:"μ",nu:"ν",xi:"ξ",omicron:"ο",pi:"π",rho:"ρ",sigmaf:"ς",sigma:"σ",tau:"τ",upsilon:"υ",phi:"φ",chi:"χ",psi:"ψ",omega:"ω",thetasym:"ϑ",upsih:"ϒ",piv:"ϖ",ensp:" ",emsp:" ",thinsp:" ",zwnj:"‌",zwj:"‍",lrm:"‎",rlm:"‏",ndash:"–",mdash:"—",lsquo:"‘",rsquo:"’",sbquo:"‚",ldquo:"“",rdquo:"”",bdquo:"„",dagger:"†",Dagger:"‡",bull:"•",hellip:"…",permil:"‰",prime:"′",Prime:"″",lsaquo:"‹",rsaquo:"›",oline:"‾",frasl:"⁄",euro:"€",image:"ℑ",weierp:"℘",real:"ℜ",trade:"™",alefsym:"ℵ",larr:"←",uarr:"↑",rarr:"→",darr:"↓",harr:"↔",crarr:"↵",lArr:"⇐",uArr:"⇑",rArr:"⇒",dArr:"⇓",hArr:"⇔",forall:"∀",part:"∂",exist:"∃",empty:"∅",nabla:"∇",isin:"∈",notin:"∉",ni:"∋",prod:"∏",sum:"∑",minus:"−",lowast:"∗",radic:"√",prop:"∝",infin:"∞",ang:"∠",and:"∧",or:"∨",cap:"∩",cup:"∪",int:"∫",there4:"∴",sim:"∼",cong:"≅",asymp:"≈",ne:"≠",equiv:"≡",le:"≤",ge:"≥",sub:"⊂",sup:"⊃",nsub:"⊄",sube:"⊆",supe:"⊇",oplus:"⊕",otimes:"⊗",perp:"⊥",sdot:"⋅",lceil:"⌈",rceil:"⌉",lfloor:"⌊",rfloor:"⌋",lang:"〈",rang:"〉",loz:"◊",spades:"♠",clubs:"♣",hearts:"♥",diams:"♦"}}}),rs=Z({"../../node_modules/acorn-jsx/index.js"(e,t){var r=ts(),n=/^[\da-fA-F]+$/,s=/^\d+$/,o=new WeakMap;function u(m){m=m.Parser.acorn||m;let g=o.get(m);if(!g){let F=m.tokTypes,A=m.TokContext,C=m.TokenType,D=new A("...",!0,!0),b={tc_oTag:D,tc_cTag:E,tc_expr:w},S={jsxName:new C("jsxName"),jsxText:new C("jsxText",{beforeExpr:!0}),jsxTagStart:new C("jsxTagStart",{startsExpr:!0}),jsxTagEnd:new C("jsxTagEnd")};S.jsxTagStart.updateContext=function(){this.context.push(w),this.context.push(D),this.exprAllowed=!1},S.jsxTagEnd.updateContext=function(L){let _=this.context.pop();_===D&&L===F.slash||_===E?(this.context.pop(),this.exprAllowed=this.curContext()===w):this.exprAllowed=!0},g={tokContexts:b,tokTypes:S},o.set(m,g)}return g}function h(m){if(!m)return m;if(m.type==="JSXIdentifier")return m.name;if(m.type==="JSXNamespacedName")return m.namespace.name+":"+m.name.name;if(m.type==="JSXMemberExpression")return h(m.object)+"."+h(m.property)}t.exports=function(m){return m=m||{},function(g){return p({allowNamespaces:m.allowNamespaces!==!1,allowNamespacedObjects:!!m.allowNamespacedObjects},g)}},Object.defineProperty(t.exports,"tokTypes",{get:function(){return u((gr(),Mr(ar))).tokTypes},configurable:!0,enumerable:!0});function p(m,g){let F=g.acorn||(gr(),Mr(ar)),A=u(F),C=F.tokTypes,D=A.tokTypes,E=F.tokContexts,w=A.tokContexts.tc_oTag,b=A.tokContexts.tc_cTag,S=A.tokContexts.tc_expr,L=F.isNewLine,_=F.isIdentifierStart,x=F.isIdentifierChar;return class extends g{static get acornJsx(){return A}jsx_readToken(){let y="",v=this.pos;for(;;){this.pos>=this.input.length&&this.raise(this.start,"Unterminated JSX contents");let B=this.input.charCodeAt(this.pos);switch(B){case 60:case 123:return this.pos===this.start?B===60&&this.exprAllowed?(++this.pos,this.finishToken(D.jsxTagStart)):this.getTokenFromCode(B):(y+=this.input.slice(v,this.pos),this.finishToken(D.jsxText,y));case 38:y+=this.input.slice(v,this.pos),y+=this.jsx_readEntity(),v=this.pos;break;case 62:case 125:this.raise(this.pos,"Unexpected token `"+this.input[this.pos]+"`. Did you mean `"+(B===62?">":"}")+'` or `{"'+this.input[this.pos]+'"}`?');default:L(B)?(y+=this.input.slice(v,this.pos),y+=this.jsx_readNewLine(!0),v=this.pos):++this.pos}}}jsx_readNewLine(y){let v=this.input.charCodeAt(this.pos),B;return++this.pos,v===13&&this.input.charCodeAt(this.pos)===10?(++this.pos,B=y?` +`:`\r +`):B=String.fromCharCode(v),this.options.locations&&(++this.curLine,this.lineStart=this.pos),B}jsx_readString(y){let v="",B=++this.pos;for(;;){this.pos>=this.input.length&&this.raise(this.start,"Unterminated string constant");let P=this.input.charCodeAt(this.pos);if(P===y)break;P===38?(v+=this.input.slice(B,this.pos),v+=this.jsx_readEntity(),B=this.pos):L(P)?(v+=this.input.slice(B,this.pos),v+=this.jsx_readNewLine(!1),B=this.pos):++this.pos}return v+=this.input.slice(B,this.pos++),this.finishToken(C.string,v)}jsx_readEntity(){let y="",v=0,B,P=this.input[this.pos];P!=="&"&&this.raise(this.pos,"Entity must start with an ampersand");let j=++this.pos;for(;this.pos")}let V=j.name?"Element":"Fragment";return B["opening"+V]=j,B["closing"+V]=M,B.children=P,this.type===C.relational&&this.value==="<"&&this.raise(this.start,"Adjacent JSX elements must be wrapped in an enclosing tag"),this.finishNode(B,"JSX"+V)}jsx_parseText(){let y=this.parseLiteral(this.value);return y.type="JSXText",y}jsx_parseElement(){let y=this.start,v=this.startLoc;return this.next(),this.jsx_parseElementAt(y,v)}parseExprAtom(y){return this.type===D.jsxText?this.jsx_parseText():this.type===D.jsxTagStart?this.jsx_parseElement():super.parseExprAtom(y)}readToken(y){let v=this.curContext();if(v===S)return this.jsx_readToken();if(v===w||v===b){if(_(y))return this.jsx_readWord();if(y==62)return++this.pos,this.finishToken(D.jsxTagEnd);if((y===34||y===39)&&v==w)return this.jsx_readString(y)}return y===60&&this.exprAllowed&&this.input.charCodeAt(this.pos+1)!==33?(++this.pos,this.finishToken(D.jsxTagStart)):super.readToken(y)}updateContext(y){if(this.type==C.braceL){var v=this.curContext();v==w?this.context.push(E.b_expr):v==S?this.context.push(E.b_tmpl):super.updateContext(y),this.exprAllowed=!0}else if(this.type===C.slash&&y===D.jsxTagStart)this.context.length-=2,this.context.push(b),this.exprAllowed=!1;else return super.updateContext(y)}}}}}),ns=Z({"../../node_modules/@base2/pretty-print-object/dist/index.js"(e){var t=e&&e.__assign||function(){return t=Object.assign||function(p){for(var m,g=1,F=arguments.length;gta,argTypesEnhancers:()=>ia,decorators:()=>na,parameters:()=>ra});var un=nt(Bi()),Dr="custom",Ct="object",vr="array",as="class",tt="func",it="element",os=nt(ki());function _r(e){return os.default.includes(e.toLowerCase())}var ls=nt(Wi());function cs(e){for(var t=[],r=1;re.$$typeof===Symbol.for("react.memo"),gs=e=>e.$$typeof===Symbol.for("react.forward_ref");gr();var Ds=nt(rs());function On(e,t,r,n,s){r||(r=N),(function o(u,h,p){var m=p||u.type,g=t[m];r[m](u,h,o),g&&g(u,h)})(e,n,s)}function As(e,t,r,n,s){var o=[];r||(r=N),(function u(h,p,m){var g=m||h.type,F=t[g],A=h!==o[o.length-1];A&&o.push(h),r[g](h,p,u),F&&F(h,p||o,o),A&&o.pop()})(e,n,s)}function Sr(e,t,r){r(e,t)}function Je(e,t,r){}var N={};N.Program=N.BlockStatement=function(e,t,r){for(var n=0,s=e.body;n{}},Cs=te.extend((0,Ds.default)());function Et(e){return e!=null?e.name:null}function on(e){return e.filter(t=>t.type==="ObjectExpression"||t.type==="ArrayExpression")}function Rn(e){let t=[];return As(e,{ObjectExpression(r,n){t.push(on(n).length)},ArrayExpression(r,n){t.push(on(n).length)}},br),Math.max(...t)}function Es(e){return{inferredType:{type:"Identifier",identifier:Et(e)},ast:e}}function ys(e){return{inferredType:{type:"Literal"},ast:e}}function Fs(e){let t;On(e.body,{JSXElement(s){t=s}},br);let r={type:t!=null?"Element":"Function",params:e.params,hasParams:e.params.length!==0},n=Et(e.id);return n!=null&&(r.identifier=n),{inferredType:r,ast:e}}function xs(e){let t;return On(e.body,{JSXElement(r){t=r}},br),{inferredType:{type:t!=null?"Element":"Class",identifier:Et(e.id)},ast:e}}function vs(e){let t={type:"Element"},r=Et(e.openingElement.name);return r!=null&&(t.identifier=r),{inferredType:t,ast:e}}function _s(e){let t=e.callee.type==="MemberExpression"?e.callee.property:e.callee;return Et(t)==="shape"?jn(e.arguments[0]):null}function jn(e){return{inferredType:{type:"Object",depth:Rn(e)},ast:e}}function Ss(e){return{inferredType:{type:"Array",depth:Rn(e)},ast:e}}function bs(e){switch(e.type){case"Identifier":return Es(e);case"Literal":return ys(e);case"FunctionExpression":case"ArrowFunctionExpression":return Fs(e);case"ClassExpression":return xs(e);case"JSXElement":return vs(e);case"CallExpression":return _s(e);case"ObjectExpression":return jn(e);case"ArrayExpression":return Ss(e);default:return null}}function Bs(e){let t=Cs.parse(`(${e})`,{ecmaVersion:2020}),r={inferredType:{type:"Unknown"},ast:t};if(t.body[0]!=null){let n=t.body[0];switch(n.type){case"ExpressionStatement":{let s=bs(n.expression);s!=null&&(r=s);break}}}return r}function Oe(e){try{return{...Bs(e)}}catch{}return{inferredType:{type:"Unknown"}}}function Mn({inferredType:e,ast:t}){let{depth:r}=e;if(r<=2){let n=an(t,!0);if(!Dt(n))return ee(n)}return ee(vr,an(t))}function Vn({inferredType:e,ast:t}){let{depth:r}=e;if(r===1){let n=Ar(t,!0);if(!Dt(n))return ee(n)}return ee(Ct,Ar(t))}function Br(e,t){return t?`${e}( ... )`:`${e}()`}function jt(e){return`<${e} />`}function qn(e){let{type:t,identifier:r}=e;switch(t){case"Function":return Br(r,e.hasParams);case"Element":return jt(r);default:return r}}function ws({inferredType:e,ast:t}){let{identifier:r}=e;if(r!=null)return ee(qn(e),Le(t));let n=Le(t,!0);return Dt(n)?ee(tt,Le(t)):ee(n)}function ks(e,t){let{inferredType:r}=t,{identifier:n}=r;if(n!=null&&!_r(n)){let s=qn(r);return ee(s,e)}return Dt(e)?ee(it,e):ee(e)}function Un(e){try{let t=Oe(e);switch(t.inferredType.type){case"Object":return Vn(t);case"Function":return ws(t);case"Element":return ks(e,t);case"Array":return Mn(t);default:return null}}catch(t){console.error(t)}return null}function ln(e){return typeof e=="function"}function Is(e){return typeof e=="string"||e instanceof String}function Ts(e){var r;if(typeof e!="object"||e==null)return!1;if(Object.getPrototypeOf(e)===null)return!0;if(Object.prototype.toString.call(e)!=="[object Object]"){let n=e[Symbol.toStringTag];return n==null||!((r=Object.getOwnPropertyDescriptor(e,Symbol.toStringTag))!=null&&r.writable)?!1:e.toString()===`[object ${n}]`}let t=e;for(;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}function cn(e){return Object.prototype.toString.call(e)==="[object Object]"}function Ps(e){var t,r;return cn(e)===!1?!1:(t=e.constructor,t===void 0?!0:(r=t.prototype,!(cn(r)===!1||r.hasOwnProperty("isPrototypeOf")===!1)))}var Ns=nt(ns()),Be=nt(ss()),Pe=function(e,t){return e===0?"":new Array(e*t).fill(" ").join("")};function gt(e){"@babel/helpers - typeof";return gt=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},gt(e)}function Ls(e){return Os(e)||Rs(e)||js(e)||Ms()}function Os(e){if(Array.isArray(e))return Cr(e)}function Rs(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function js(e,t){if(e){if(typeof e=="string")return Cr(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return Cr(e,t)}}function Cr(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r0?e.length-1:0),n=e[e.length-1];return n&&(t.type==="string"||t.type==="number")&&(n.type==="string"||n.type==="number")?r.push(Wn(String(n.value)+String(t.value))):(n&&r.push(n),r.push(t)),r},tu=function(e){return["key","ref"].includes(e)},ru=function(e){return function(t){var r=t.includes("key"),n=t.includes("ref"),s=t.filter(function(u){return!tu(u)}),o=Ls(e?s.sort():s);return n&&o.unshift("ref"),r&&o.unshift("key"),o}};function nu(e,t){return Array.isArray(t)?function(r){return t.indexOf(r)===-1}:function(r){return t(e[r],r)}}var iu=function(e,t,r,n,s){var o=s.tabStop;return e.type==="string"?t.split(` +`).map(function(u,h){return h===0?u:"".concat(Pe(n,o)).concat(u)}).join(` +`):t},su=function(e,t,r){return function(n){return iu(n,Mt(n,e,t,r),e,t,r)}},uu=function(e,t){return function(r){var n=Object.keys(e).includes(r);return!n||n&&e[r]!==t[r]}},Jn=function(e,t,r,n,s){return s?Pe(r,n).length+t.length>s:e.length>1},au=function(e,t,r,n,s,o,u){return(Jn(e,t,s,o,u)||r)&&!n},Xn=function(e,t,r,n){var s=e.type,o=e.displayName,u=o===void 0?"":o,h=e.childrens,p=e.props,m=p===void 0?{}:p,g=e.defaultProps,F=g===void 0?{}:g;if(s!=="ReactElement")throw new Error('The "formatReactElementNode" function could only format node of type "ReactElement". Given: '.concat(s));var A=n.filterProps,C=n.maxInlineAttributesLineLength,D=n.showDefaultProps,E=n.sortProps,w=n.tabStop,b="<".concat(u),S=b,L=b,_=!1,x=[],y=nu(m,A);Object.keys(m).filter(y).filter(uu(F,m)).forEach(function(P){return x.push(P)}),Object.keys(F).filter(y).filter(function(){return D}).filter(function(P){return!x.includes(P)}).forEach(function(P){return x.push(P)});var v=ru(E)(x);if(v.forEach(function(P){var j=$s(P,Object.keys(m).includes(P),m[P],Object.keys(F).includes(P),F[P],t,r,n),M=j.attributeFormattedInline,V=j.attributeFormattedMultiline,U=j.isMultilineAttribute;U&&(_=!0),S+=M,L+=V}),L+=` +`.concat(Pe(r,w)),au(v,S,_,t,r,w,C)?b=L:b=S,h&&h.length>0){var B=r+1;b+=">",t||(b+=` +`,b+=Pe(B,w)),b+=h.reduce(eu,[]).map(su(t,B,n)).join(t?"":` +`.concat(Pe(B,w))),t||(b+=` +`,b+=Pe(B-1,w)),b+="")}else Jn(v,S,r,w,C)||(b+=" "),b+="/>";return b},ou="",dn="React.Fragment",lu=function(e,t,r){var n={};return t&&(n={key:t}),{type:"ReactElement",displayName:e,props:n,defaultProps:{},childrens:r}},cu=function(e){var t=e.key;return!!t},hu=function(e){var t=e.childrens;return t.length===0},pu=function(e,t,r,n){var s=e.type,o=e.key,u=e.childrens;if(s!=="ReactFragment")throw new Error('The "formatReactFragmentNode" function could only format node of type "ReactFragment". Given: '.concat(s));var h=n.useFragmentShortSyntax,p;return h?hu(e)||cu(e)?p=dn:p=ou:p=dn,Xn(lu(p,o,u),t,r,n)},fu=["<",">","{","}"],du=function(e){return fu.some(function(t){return e.includes(t)})},mu=function(e){return du(e)?"{`".concat(e,"`}"):e},gu=function(e){var t=e;return t.endsWith(" ")&&(t=t.replace(/^(.*?)(\s+)$/,"$1{'$2'}")),t.startsWith(" ")&&(t=t.replace(/^(\s+)(.*)$/,"{'$1'}$2")),t},Mt=function(e,t,r,n){if(e.type==="number")return String(e.value);if(e.type==="string")return e.value?"".concat(gu(mu(String(e.value)))):"";if(e.type==="ReactElement")return Xn(e,t,r,n);if(e.type==="ReactFragment")return pu(e,t,r,n);throw new TypeError('Unknow format type "'.concat(e.type,'"'))},Du=function(e,t){return Mt(e,!1,0,t)},Hn=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=t.filterProps,n=r===void 0?[]:r,s=t.showDefaultProps,o=s===void 0?!0:s,u=t.showFunctions,h=u===void 0?!1:u,p=t.functionValue,m=t.tabStop,g=m===void 0?2:m,F=t.useBooleanShorthandSyntax,A=F===void 0?!0:F,C=t.useFragmentShortSyntax,D=C===void 0?!0:C,E=t.sortProps,w=E===void 0?!0:E,b=t.maxInlineAttributesLineLength,S=t.displayName;if(!e)throw new Error("react-element-to-jsx-string: Expected a ReactElement");var L={filterProps:n,showDefaultProps:o,showFunctions:h,functionValue:p,tabStop:g,useBooleanShorthandSyntax:A,useFragmentShortSyntax:D,sortProps:w,maxInlineAttributesLineLength:b,displayName:S};return Du(wr(e,L),L)},mn=Hn;function Qn(e){return e.$$typeof!=null}function Yn(e,t){let{name:r}=e;return r!==""&&r!=="anonymous"&&r!==t?r:null}var Au=e=>ee(JSON.stringify(e));function Cu(e){let{type:t}=e,{displayName:r}=t,n=mn(e,{});if(r!=null){let s=jt(r);return ee(s,n)}if(Is(t)&&_r(t)){let s=mn(e,{tabStop:0}).replace(/\r?\n|\r/g,"");if(!Dt(s))return ee(s)}return ee(it,n)}var Eu=e=>{if(Qn(e)&&e.type!=null)return Cu(e);if(Ts(e)){let t=Oe(JSON.stringify(e));return Vn(t)}if(Array.isArray(e)){let t=Oe(JSON.stringify(e));return Mn(t)}return ee(Ct)},yu=(e,t)=>{let r=!1,n;if(ln(e.render))r=!0;else if(e.prototype!=null&&ln(e.prototype.render))r=!0;else{let o;try{n=Oe(e.toString());let{hasParams:u,params:h}=n.inferredType;u?h.length===1&&h[0].type==="ObjectPattern"&&(o=e({})):o=e(),o!=null&&Qn(o)&&(r=!0)}catch{}}let s=Yn(e,t.name);if(s!=null){if(r)return ee(jt(s));n!=null&&(n=Oe(e.toString()));let{hasParams:o}=n.inferredType;return ee(Br(s,o))}return ee(r?it:tt)},Fu=e=>ee(e.toString()),Kn={string:Au,object:Eu,function:yu,default:Fu};function xu(e={}){return{...Kn,...e}}function vu(e,t,r=Kn){try{switch(typeof e){case"string":return r.string(e,t);case"object":return r.object(e,t);case"function":return r.function(e,t);default:return r.default(e,t)}}catch(n){console.error(n)}return null}function _u(e,t){let r=e!=null,n=t!=null;if(!r&&!n)return"";let s=[];if(r){let o=e.map(u=>{let h=u.getPrettyName(),p=u.getTypeName();return p!=null?`${h}: ${p}`:h});s.push(`(${o.join(", ")})`)}else s.push("()");return n&&s.push(`=> ${t.getTypeName()}`),s.join(" ")}function Su(e,t){let r=e!=null,n=t!=null;if(!r&&!n)return"";let s=[];return r?s.push("( ... )"):s.push("()"),n&&s.push(`=> ${t.getTypeName()}`),s.join(" ")}function bu(e){return e.replace(/,/g,`,\r +`)}var Bu=150;function me({name:e,short:t,compact:r,full:n,inferredType:s}){return{name:e,short:t,compact:r,full:n??t,inferredType:s}}function Zn(e){return e.replace(/PropTypes./g,"").replace(/.isRequired/g,"")}function gn(e){return e.split(/\r?\n/)}function Rt(e,t=!1){return Zn(Ar(e,t))}function Dn(e,t=!1){return Zn(Le(e,t))}function wu(e){switch(e){case"Object":return Ct;case"Array":return vr;case"Class":return as;case"Function":return tt;case"Element":return it;default:return Dr}}function $n(e,t){let{inferredType:r,ast:n}=Oe(e),{type:s}=r,o,u,h;switch(s){case"Identifier":case"Literal":o=e,u=e;break;case"Object":{let{depth:p}=r;o=Ct,u=p===1?Rt(n,!0):null,h=Rt(n);break}case"Element":{let{identifier:p}=r;o=p!=null&&!_r(p)?p:it,u=gn(e).length===1?e:null,h=e;break}case"Array":{let{depth:p}=r;o=vr,u=p<=2?Dn(n,!0):null,h=Dn(n);break}default:o=wu(s),u=gn(e).length===1?e:null,h=e;break}return me({name:t,short:o,compact:u,full:h,inferredType:s})}function ku({raw:e}){return e!=null?$n(e,"custom"):me({name:"custom",short:Dr,compact:Dr})}function Iu(e){let{jsDocTags:t}=e;return t!=null&&(t.params!=null||t.returns!=null)?me({name:"func",short:Su(t.params,t.returns),compact:null,full:_u(t.params,t.returns)}):me({name:"func",short:tt,compact:tt})}function Tu(e,t){let r=Object.keys(e.value).map(u=>`${u}: ${rt(e.value[u],t).full}`).join(", "),{inferredType:n,ast:s}=Oe(`{ ${r} }`),{depth:o}=n;return me({name:"shape",short:Ct,compact:o===1&&s?Rt(s,!0):null,full:s?Rt(s):null})}function sr(e){return`objectOf(${e})`}function Pu(e,t){let{short:r,compact:n,full:s}=rt(e.value,t);return me({name:"objectOf",short:sr(r),compact:n!=null?sr(n):null,full:s&&sr(s)})}function Nu(e,t){if(Array.isArray(e.value)){let r=e.value.reduce((n,s)=>{let{short:o,compact:u,full:h}=rt(s,t);return n.short.push(o),n.compact.push(u),n.full.push(h),n},{short:[],compact:[],full:[]});return me({name:"union",short:r.short.join(" | "),compact:r.compact.every(n=>n!=null)?r.compact.join(" | "):null,full:r.full.join(" | ")})}return me({name:"union",short:e.value,compact:null})}function Lu({value:e,computed:t}){return t?$n(e,"enumvalue"):me({name:"enumvalue",short:e,compact:e})}function Ou(e){if(Array.isArray(e.value)){let t=e.value.reduce((r,n)=>{let{short:s,compact:o,full:u}=Lu(n);return r.short.push(s),r.compact.push(o),r.full.push(u),r},{short:[],compact:[],full:[]});return me({name:"enum",short:t.short.join(" | "),compact:t.compact.every(r=>r!=null)?t.compact.join(" | "):null,full:t.full.join(" | ")})}return me({name:"enum",short:e.value,compact:e.value})}function yr(e){return`${e}[]`}function An(e){return`[${e}]`}function Cn(e,t,r){return me({name:"arrayOf",short:yr(e),compact:t!=null?An(t):null,full:r&&An(r)})}function Ru(e,t){let{name:r,short:n,compact:s,full:o,inferredType:u}=rt(e.value,t);if(r==="custom"){if(u==="Object")return Cn(n,s,o)}else if(r==="shape")return Cn(n,s,o);return me({name:"arrayOf",short:yr(n),compact:yr(n)})}function rt(e,t){try{switch(e.name){case"custom":return ku(e);case"func":return Iu(t);case"shape":return Tu(e,t);case"instanceOf":return me({name:"instanceOf",short:e.value,compact:e.value});case"objectOf":return Pu(e,t);case"union":return Nu(e,t);case"enum":return Ou(e);case"arrayOf":return Ru(e,t);default:return me({name:e.name,short:e.name,compact:e.name})}}catch(r){console.error(r)}return me({name:"unknown",short:"unknown",compact:"unknown"})}function ju(e){let{type:t}=e.docgenInfo;if(t==null)return null;try{switch(t.name){case"custom":case"shape":case"instanceOf":case"objectOf":case"union":case"enum":case"arrayOf":{let{short:r,compact:n,full:s}=rt(t,e);return n!=null&&!Fi(n)?ee(n):s?ee(r,s):ee(r)}case"func":{let{short:r,full:n}=rt(t,e),s=r,o;return n&&n.length{let n=(r==null?void 0:r.summary)==="element"||(r==null?void 0:r.summary)==="elementType",s=Yn(e,t);if(s!=null){if(n)return ee(jt(s));let{hasParams:o}=Oe(e.toString()).inferredType;return ee(Br(s,o))}return ee(n?it:tt)},Vu=xu({function:Mu});function qu(e,t){let{propTypes:r}=t;return r!=null?Object.keys(r).map(n=>e.find(s=>s.name===n)).filter(Boolean):e}function Uu(e,t){let{propDef:r}=e,n=ju(e);n!=null&&(r.type=n);let{defaultValue:s}=e.docgenInfo;if(s!=null&&s.value!=null){let o=Un(s.value);o!=null&&(r.defaultValue=o)}else if(t!=null){let o=vu(t,r,Vu);o!=null&&(r.defaultValue=o)}return r}function Wu(e,t){let r=t.defaultProps!=null?t.defaultProps:{},n=e.map(s=>Uu(s,r[s.propDef.name]));return qu(n,t)}function zu(e,t){let{propDef:r}=e,{defaultValue:n}=e.docgenInfo;if(n!=null&&n.value!=null){let s=Un(n.value);s!=null&&(r.defaultValue=s)}return r}function Gu(e){return e.map(t=>zu(t))}var En=new Map;Object.keys(un.default).forEach(e=>{let t=un.default[e];En.set(t,e),En.set(t.isRequired,e)});function Ju(e,t){let r=e;!Ei(e)&&!e.propTypes&&Ln(e)&&(r=e.type);let n=yi(r,t);if(n.length===0)return[];switch(n[0].typeSystem){case qr.JAVASCRIPT:return Wu(n,e);case qr.TYPESCRIPT:return Gu(n);default:return n.map(s=>s.propDef)}}var Xu=e=>({rows:Ju(e,"props")}),Hu=e=>{if(e){let{rows:t}=Xu(e);if(t)return t.reduce((r,n)=>{let{name:s,description:o,type:u,sbType:h,defaultValue:p,jsDocTags:m,required:g}=n;return r[s]={name:s,description:o,type:{required:g,...h},table:{type:u??void 0,jsDocTags:m,defaultValue:p??void 0}},r},{})}return null},ur=Hn,Qu=e=>e.charAt(0).toUpperCase()+e.slice(1),Yu=e=>(e.$$typeof||e).toString().replace(/^Symbol\((.*)\)$/,"$1").split(".").map(t=>t.split("_").map(Qu).join("")).join(".");function Fr(e){if(Ge.isValidElement(e)){let t=Object.keys(e.props).reduce((r,n)=>(r[n]=Fr(e.props[n]),r),{});return{...e,props:t,_owner:null}}return Array.isArray(e)?e.map(Fr):e}var Ku=(e,t)=>{if(typeof e>"u")return vt.warn("Too many skip or undefined component"),null;let r=e,n=r.type;for(let u=0;u<(t==null?void 0:t.skip);u+=1){if(typeof r>"u")return vt.warn("Cannot skip undefined element"),null;if(ft.Children.count(r)>1)return vt.warn("Trying to skip an array of elements"),null;typeof r.props.children>"u"?(vt.warn("Not enough children to skip elements."),typeof r.type=="function"&&r.type.name===""&&(r=ft.createElement(n,{...r.props}))):typeof r.props.children=="function"?r=r.props.children():r=r.props.children}let s;typeof(t==null?void 0:t.displayName)=="string"?s={showFunctions:!0,displayName:()=>t.displayName}:s={displayName:u=>{var h;return u.type.displayName?u.type.displayName:Ur(u.type,"displayName")?Ur(u.type,"displayName"):(h=u.type.render)!=null&&h.displayName?u.type.render.displayName:typeof u.type=="symbol"||u.type.$$typeof&&typeof u.type.$$typeof=="symbol"?Yu(u.type):u.type.name&&u.type.name!=="_default"?u.type.name:typeof u.type=="function"?"No Display Name":gs(u.type)?u.type.render.name:Ln(u.type)?u.type.type.name:u.type}};let o={...s,filterProps:(u,h)=>u!==void 0,...t};return ft.Children.map(e,u=>{let h=typeof u=="number"?u.toString():u,p=(typeof ur=="function"?ur:ur.default)(Fr(h),o);if(p.indexOf(""")>-1){let m=p.match(/\S+=\\"([^"]*)\\"/g);m&&m.forEach(g=>{p=p.replace(g,g.replace(/"/g,"'"))})}return p}).join(` +`).replace(/function\s+noRefCheck\(\)\s*\{\}/g,"() => {}")},Zu={skip:0,showFunctions:!1,enableBeautify:!0,showDefaultProps:!1},$u=e=>{var n;let t=(n=e==null?void 0:e.parameters.docs)==null?void 0:n.source,r=e==null?void 0:e.parameters.__isArgsStory;return(t==null?void 0:t.type)===Vr.DYNAMIC?!1:!r||(t==null?void 0:t.code)||(t==null?void 0:t.type)===Vr.CODE},ea=e=>{var t,r;return((t=e.type)==null?void 0:t.displayName)==="MDXCreateElement"&&!!((r=e.props)!=null&&r.mdxType)},ei=e=>{if(!ea(e))return e;let{mdxType:t,originalType:r,children:n,...s}=e.props,o=[];return n&&(o=(Array.isArray(n)?n:[n]).map(ei)),Ge.createElement(r,s,...o)},ti=(e,t)=>{var g,F;let r=vi.getChannel(),n=$u(t),s="";_i(()=>{if(!n){let{id:A,unmappedArgs:C}=t;r.emit(Ci,{id:A,source:s,args:C})}});let o=e();if(n)return o;let u={...Zu,...(t==null?void 0:t.parameters.jsx)||{}},h=(F=(g=t==null?void 0:t.parameters.docs)==null?void 0:g.source)!=null&&F.excludeDecorators?t.originalStoryFn(t.args,t):o,p=ei(h),m=Ku(p,u);return m&&(s=m),o},ta=(e,t)=>{let r=t.findIndex(s=>s.originalFn===ti),n=r===-1?t:[...t.splice(r,1),...t];return xi(e,n)},ra={docs:{story:{inline:!0},extractArgTypes:Hu,extractComponentDescription:Ai}},na=[ti],ia=[Di];export{ta as applyDecorators,ia as argTypesEnhancers,na as decorators,ra as parameters}; diff --git a/apps/portal/public/storybook/assets/error-boundary-DIRO_cDI.js b/apps/portal/public/storybook/assets/error-boundary-DIRO_cDI.js new file mode 100644 index 00000000..aabdc1fe --- /dev/null +++ b/apps/portal/public/storybook/assets/error-boundary-DIRO_cDI.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{r as s}from"./index-JhL3uwfD.js";import{B as a}from"./button-C8_cybvS.js";class i extends s.Component{constructor(r){super(r),this.state={hasError:!1}}static getDerivedStateFromError(r){return{hasError:!0,error:r}}componentDidCatch(r,o){var n,t;(t=(n=this.props).onError)==null||t.call(n,r,o)}render(){return this.state.hasError?this.props.fallback?this.props.fallback:e.jsx("div",{className:"flex items-center justify-center h-64",children:e.jsxs("div",{className:"text-center space-y-4",children:[e.jsx("h2",{className:"text-lg font-semibold text-danger",children:"Something went wrong"}),e.jsx("p",{className:"text-muted-foreground",children:"An unexpected error occurred. Please try again."}),e.jsx(a,{onClick:()=>this.setState({hasError:!1,error:void 0}),children:"Try again"})]})}):this.props.children}}i.__docgenInfo={description:"Error boundary component for catching and handling React errors",methods:[],displayName:"ErrorBoundary",props:{children:{required:!0,tsType:{name:"ReactNode"},description:""},fallback:{required:!1,tsType:{name:"union",raw:"ReactNode | undefined",elements:[{name:"ReactNode"},{name:"undefined"}]},description:""},onError:{required:!1,tsType:{name:"union",raw:"((error: Error, errorInfo: ErrorInfo) => void) | undefined",elements:[{name:"unknown"},{name:"undefined"}]},description:""}}}; diff --git a/apps/portal/public/storybook/assets/error-fallbacks-kSPsNxmV.js b/apps/portal/public/storybook/assets/error-fallbacks-kSPsNxmV.js new file mode 100644 index 00000000..bb69e3ea --- /dev/null +++ b/apps/portal/public/storybook/assets/error-fallbacks-kSPsNxmV.js @@ -0,0 +1,3 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{B as r}from"./button-C8_cybvS.js";function n(){return e.jsx("div",{className:"min-h-screen flex items-center justify-center bg-background",children:e.jsxs("div",{className:"text-center space-y-4 p-8",children:[e.jsx("h1",{className:"text-2xl font-semibold",children:"Something went wrong"}),e.jsx("p",{className:"text-muted-foreground",children:"An unexpected error occurred. Please refresh the page."}),e.jsx(r,{onClick:()=>window.location.reload(),children:"Refresh Page"})]})})}function a(){return e.jsx("div",{className:"flex items-center justify-center h-64",children:e.jsxs("div",{className:"text-center space-y-4",children:[e.jsx("h2",{className:"text-lg font-semibold text-danger",children:"Something went wrong"}),e.jsx("p",{className:"text-muted-foreground",children:"This section encountered an error. Please try again."}),e.jsx(r,{onClick:()=>window.location.reload(),children:"Try again"})]})})}n.__docgenInfo={description:`Full-page fallback for root-level errors +Used when the entire application crashes`,methods:[],displayName:"GlobalErrorFallback"};a.__docgenInfo={description:`Content area fallback - keeps nav/sidebar functional +Used for errors within the main content area`,methods:[],displayName:"PageErrorFallback"};export{n as G,a as P}; diff --git a/apps/portal/public/storybook/assets/error-fallbacks.stories-BfOzoOVy.js b/apps/portal/public/storybook/assets/error-fallbacks.stories-BfOzoOVy.js new file mode 100644 index 00000000..554b616b --- /dev/null +++ b/apps/portal/public/storybook/assets/error-fallbacks.stories-BfOzoOVy.js @@ -0,0 +1,7 @@ +import{j as o}from"./jsx-runtime-D_zvdyIk.js";import{G as p,P as n}from"./error-fallbacks-kSPsNxmV.js";import"./button-C8_cybvS.js";import"./index-JhL3uwfD.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./spinner-mU4XywER.js";const P={title:"Molecules/ErrorFallbacks",parameters:{layout:"fullscreen"}},r={render:()=>o.jsx(p,{})},a={render:()=>o.jsx("div",{className:"bg-background p-8",children:o.jsx(n,{})})};var e,s,t;r.parameters={...r.parameters,docs:{...(e=r.parameters)==null?void 0:e.docs,source:{originalSource:`{ + render: () => +}`,...(t=(s=r.parameters)==null?void 0:s.docs)==null?void 0:t.source}}};var l,c,m;a.parameters={...a.parameters,docs:{...(l=a.parameters)==null?void 0:l.docs,source:{originalSource:`{ + render: () =>
+ +
+}`,...(m=(c=a.parameters)==null?void 0:c.docs)==null?void 0:m.source}}};const f=["GlobalError","PageError"];export{r as GlobalError,a as PageError,f as __namedExportsOrder,P as default}; diff --git a/apps/portal/public/storybook/assets/error-handling-CCxr4Gjn.js b/apps/portal/public/storybook/assets/error-handling-CCxr4Gjn.js new file mode 100644 index 00000000..1de35cd7 --- /dev/null +++ b/apps/portal/public/storybook/assets/error-handling-CCxr4Gjn.js @@ -0,0 +1 @@ +import{i as L,p as T}from"./index-BKyvj4H5.js";import{o as R,r as g,s as E,l as y,f as A}from"./coerce-BirWdn0y.js";const e={INVALID_CREDENTIALS:"AUTH_001",ACCOUNT_LOCKED:"AUTH_002",SESSION_EXPIRED:"AUTH_003",TOKEN_INVALID:"AUTH_004",TOKEN_REVOKED:"AUTH_005",REFRESH_TOKEN_INVALID:"AUTH_006",FORBIDDEN:"AUTHZ_001",ADMIN_REQUIRED:"AUTHZ_002",RESOURCE_ACCESS_DENIED:"AUTHZ_003",VALIDATION_FAILED:"VAL_001",REQUIRED_FIELD_MISSING:"VAL_002",INVALID_FORMAT:"VAL_003",NOT_FOUND:"VAL_004",ACCOUNT_EXISTS:"BIZ_001",ACCOUNT_ALREADY_LINKED:"BIZ_002",CUSTOMER_NOT_FOUND:"BIZ_003",ORDER_ALREADY_PROCESSED:"BIZ_004",INSUFFICIENT_BALANCE:"BIZ_005",SERVICE_UNAVAILABLE:"BIZ_006",LEGACY_ACCOUNT_EXISTS:"BIZ_007",ACCOUNT_MAPPING_MISSING:"BIZ_008",INTERNAL_ERROR:"SYS_001",EXTERNAL_SERVICE_ERROR:"SYS_002",DATABASE_ERROR:"SYS_003",CONFIGURATION_ERROR:"SYS_004",NETWORK_ERROR:"NET_001",TIMEOUT:"NET_002",RATE_LIMITED:"NET_003",SIM_ACTIVATION_FEE_REQUIRED:"SIM_001",SIM_NOT_FOUND:"SIM_002",SIM_PLAN_CHANGE_FAILED:"SIM_003",SIM_TOPUP_FAILED:"SIM_004",SIM_ACTIVATION_FAILED:"SIM_005",SIM_CANCELLATION_FAILED:"SIM_006",INTERNET_ELIGIBILITY_NOT_REQUESTED:"INT_001",INTERNET_ELIGIBILITY_PENDING:"INT_002",INTERNET_INELIGIBLE:"INT_003",INTERNET_SERVICE_EXISTS:"INT_004",INTERNET_CHECK_FAILED:"INT_005",USER_MAPPING_NOT_FOUND:"ORD_001",WHMCS_CLIENT_NOT_LINKED:"ORD_002",NO_PAYMENT_METHOD:"ORD_003",INVALID_SKU:"ORD_004",RESIDENCE_CARD_NOT_SUBMITTED:"ORD_005",RESIDENCE_CARD_REJECTED:"ORD_006",ORDER_VALIDATION_FAILED:"ORD_007",FULFILLMENT_FAILED:"ORD_008",SUBSCRIPTION_NOT_FOUND:"SUB_001",SUBSCRIPTION_CANCELLATION_FAILED:"SUB_002",SUBSCRIPTION_UPDATE_FAILED:"SUB_003",UNKNOWN:"GEN_001"},l={[e.INVALID_CREDENTIALS]:"Invalid email or password. Please try again.",[e.ACCOUNT_LOCKED]:"Your account has been temporarily locked due to multiple failed login attempts. Please try again later.",[e.SESSION_EXPIRED]:"Your session has expired. Please log in again.",[e.TOKEN_INVALID]:"Your session is invalid. Please log in again.",[e.TOKEN_REVOKED]:"Your session has been revoked. Please log in again.",[e.REFRESH_TOKEN_INVALID]:"Your session could not be refreshed. Please log in again.",[e.FORBIDDEN]:"You do not have permission to perform this action.",[e.ADMIN_REQUIRED]:"Administrator access is required for this action.",[e.RESOURCE_ACCESS_DENIED]:"You do not have access to this resource.",[e.VALIDATION_FAILED]:"The provided data is invalid. Please check your input.",[e.REQUIRED_FIELD_MISSING]:"Required information is missing.",[e.INVALID_FORMAT]:"The data format is invalid.",[e.NOT_FOUND]:"The requested resource was not found.",[e.ACCOUNT_EXISTS]:"We couldn't create a new account with these details. Please sign in or contact support.",[e.ACCOUNT_ALREADY_LINKED]:"This billing account is already linked to a portal account. Please sign in.",[e.LEGACY_ACCOUNT_EXISTS]:"We couldn't create a new account with these details. Please transfer your account or contact support.",[e.CUSTOMER_NOT_FOUND]:"Customer account not found. Please contact support.",[e.ORDER_ALREADY_PROCESSED]:"This order has already been processed.",[e.INSUFFICIENT_BALANCE]:"Insufficient account balance.",[e.SERVICE_UNAVAILABLE]:"This service is temporarily unavailable. Please try again later.",[e.ACCOUNT_MAPPING_MISSING]:"Your account isn’t fully set up yet. Please contact support or try again later.",[e.INTERNAL_ERROR]:"An unexpected error occurred. Please try again later.",[e.EXTERNAL_SERVICE_ERROR]:"An external service is temporarily unavailable. Please try again later.",[e.DATABASE_ERROR]:"A system error occurred. Please try again later.",[e.CONFIGURATION_ERROR]:"A system configuration error occurred. Please contact support.",[e.NETWORK_ERROR]:"Unable to connect to the server. Please check your internet connection.",[e.TIMEOUT]:"The request timed out. Please try again.",[e.RATE_LIMITED]:"Too many requests. Please wait a moment and try again.",[e.SIM_ACTIVATION_FEE_REQUIRED]:"SIM orders require an activation fee.",[e.SIM_NOT_FOUND]:"SIM subscription not found.",[e.SIM_PLAN_CHANGE_FAILED]:"Failed to change SIM plan. Please try again.",[e.SIM_TOPUP_FAILED]:"Failed to top up SIM data. Please try again.",[e.SIM_ACTIVATION_FAILED]:"SIM activation failed. Please contact support.",[e.SIM_CANCELLATION_FAILED]:"SIM cancellation failed. Please try again.",[e.INTERNET_ELIGIBILITY_NOT_REQUESTED]:"Internet eligibility review is required before ordering.",[e.INTERNET_ELIGIBILITY_PENDING]:"Internet eligibility review is still in progress. Please wait for review to complete.",[e.INTERNET_INELIGIBLE]:"Internet service is not available for your address. Please contact support.",[e.INTERNET_SERVICE_EXISTS]:"An active Internet service already exists for this account.",[e.INTERNET_CHECK_FAILED]:"Unable to verify Internet eligibility. Please try again.",[e.USER_MAPPING_NOT_FOUND]:"User account mapping is required before ordering.",[e.WHMCS_CLIENT_NOT_LINKED]:"Billing system integration is required before ordering.",[e.NO_PAYMENT_METHOD]:"A payment method is required before ordering.",[e.INVALID_SKU]:"One or more products in your order are invalid.",[e.RESIDENCE_CARD_NOT_SUBMITTED]:"Residence card submission is required for SIM orders.",[e.RESIDENCE_CARD_REJECTED]:"Your residence card was rejected. Please resubmit and try again.",[e.ORDER_VALIDATION_FAILED]:"Order validation failed. Please check your order details.",[e.FULFILLMENT_FAILED]:"Order fulfillment failed. Please contact support.",[e.SUBSCRIPTION_NOT_FOUND]:"Subscription not found.",[e.SUBSCRIPTION_CANCELLATION_FAILED]:"Subscription cancellation failed. Please try again.",[e.SUBSCRIPTION_UPDATE_FAILED]:"Subscription update failed. Please try again.",[e.UNKNOWN]:"An unexpected error occurred. Please try again."},i={[e.INVALID_CREDENTIALS]:{category:"authentication",severity:"medium",shouldLogout:!1,shouldRetry:!1,logLevel:"warn"},[e.ACCOUNT_LOCKED]:{category:"authentication",severity:"medium",shouldLogout:!1,shouldRetry:!1,logLevel:"warn"},[e.SESSION_EXPIRED]:{category:"authentication",severity:"low",shouldLogout:!0,shouldRetry:!1,logLevel:"debug"},[e.TOKEN_INVALID]:{category:"authentication",severity:"medium",shouldLogout:!0,shouldRetry:!1,logLevel:"warn"},[e.TOKEN_REVOKED]:{category:"authentication",severity:"medium",shouldLogout:!0,shouldRetry:!1,logLevel:"warn"},[e.REFRESH_TOKEN_INVALID]:{category:"authentication",severity:"medium",shouldLogout:!0,shouldRetry:!1,logLevel:"warn"},[e.FORBIDDEN]:{category:"authorization",severity:"medium",shouldLogout:!1,shouldRetry:!1,logLevel:"warn"},[e.ADMIN_REQUIRED]:{category:"authorization",severity:"medium",shouldLogout:!1,shouldRetry:!1,logLevel:"warn"},[e.RESOURCE_ACCESS_DENIED]:{category:"authorization",severity:"medium",shouldLogout:!1,shouldRetry:!1,logLevel:"warn"},[e.VALIDATION_FAILED]:{category:"validation",severity:"low",shouldLogout:!1,shouldRetry:!1,logLevel:"info"},[e.REQUIRED_FIELD_MISSING]:{category:"validation",severity:"low",shouldLogout:!1,shouldRetry:!1,logLevel:"info"},[e.INVALID_FORMAT]:{category:"validation",severity:"low",shouldLogout:!1,shouldRetry:!1,logLevel:"info"},[e.NOT_FOUND]:{category:"validation",severity:"low",shouldLogout:!1,shouldRetry:!1,logLevel:"info"},[e.ACCOUNT_EXISTS]:{category:"business",severity:"low",shouldLogout:!1,shouldRetry:!1,logLevel:"info"},[e.ACCOUNT_ALREADY_LINKED]:{category:"business",severity:"low",shouldLogout:!1,shouldRetry:!1,logLevel:"info"},[e.LEGACY_ACCOUNT_EXISTS]:{category:"business",severity:"low",shouldLogout:!1,shouldRetry:!1,logLevel:"info"},[e.CUSTOMER_NOT_FOUND]:{category:"business",severity:"medium",shouldLogout:!1,shouldRetry:!1,logLevel:"warn"},[e.ORDER_ALREADY_PROCESSED]:{category:"business",severity:"low",shouldLogout:!1,shouldRetry:!1,logLevel:"info"},[e.INSUFFICIENT_BALANCE]:{category:"business",severity:"low",shouldLogout:!1,shouldRetry:!1,logLevel:"info"},[e.SERVICE_UNAVAILABLE]:{category:"business",severity:"medium",shouldLogout:!1,shouldRetry:!0,logLevel:"warn"},[e.ACCOUNT_MAPPING_MISSING]:{category:"business",severity:"medium",shouldLogout:!1,shouldRetry:!1,logLevel:"warn"},[e.INTERNAL_ERROR]:{category:"system",severity:"high",shouldLogout:!1,shouldRetry:!0,logLevel:"error"},[e.EXTERNAL_SERVICE_ERROR]:{category:"system",severity:"medium",shouldLogout:!1,shouldRetry:!0,logLevel:"error"},[e.DATABASE_ERROR]:{category:"system",severity:"critical",shouldLogout:!1,shouldRetry:!0,logLevel:"error"},[e.CONFIGURATION_ERROR]:{category:"system",severity:"critical",shouldLogout:!1,shouldRetry:!1,logLevel:"error"},[e.NETWORK_ERROR]:{category:"network",severity:"medium",shouldLogout:!1,shouldRetry:!0,logLevel:"warn"},[e.TIMEOUT]:{category:"network",severity:"medium",shouldLogout:!1,shouldRetry:!0,logLevel:"warn"},[e.RATE_LIMITED]:{category:"network",severity:"low",shouldLogout:!1,shouldRetry:!0,logLevel:"warn"},[e.SIM_ACTIVATION_FEE_REQUIRED]:{category:"validation",severity:"low",shouldLogout:!1,shouldRetry:!1,logLevel:"info"},[e.SIM_NOT_FOUND]:{category:"validation",severity:"low",shouldLogout:!1,shouldRetry:!1,logLevel:"warn"},[e.SIM_PLAN_CHANGE_FAILED]:{category:"business",severity:"medium",shouldLogout:!1,shouldRetry:!0,logLevel:"error"},[e.SIM_TOPUP_FAILED]:{category:"business",severity:"medium",shouldLogout:!1,shouldRetry:!0,logLevel:"error"},[e.SIM_ACTIVATION_FAILED]:{category:"business",severity:"medium",shouldLogout:!1,shouldRetry:!0,logLevel:"error"},[e.SIM_CANCELLATION_FAILED]:{category:"business",severity:"medium",shouldLogout:!1,shouldRetry:!0,logLevel:"error"},[e.INTERNET_ELIGIBILITY_NOT_REQUESTED]:{category:"validation",severity:"low",shouldLogout:!1,shouldRetry:!1,logLevel:"info"},[e.INTERNET_ELIGIBILITY_PENDING]:{category:"validation",severity:"low",shouldLogout:!1,shouldRetry:!1,logLevel:"info"},[e.INTERNET_INELIGIBLE]:{category:"validation",severity:"low",shouldLogout:!1,shouldRetry:!1,logLevel:"info"},[e.INTERNET_SERVICE_EXISTS]:{category:"validation",severity:"low",shouldLogout:!1,shouldRetry:!1,logLevel:"warn"},[e.INTERNET_CHECK_FAILED]:{category:"system",severity:"medium",shouldLogout:!1,shouldRetry:!0,logLevel:"error"},[e.USER_MAPPING_NOT_FOUND]:{category:"validation",severity:"low",shouldLogout:!1,shouldRetry:!1,logLevel:"warn"},[e.WHMCS_CLIENT_NOT_LINKED]:{category:"validation",severity:"low",shouldLogout:!1,shouldRetry:!1,logLevel:"warn"},[e.NO_PAYMENT_METHOD]:{category:"validation",severity:"low",shouldLogout:!1,shouldRetry:!1,logLevel:"info"},[e.INVALID_SKU]:{category:"validation",severity:"low",shouldLogout:!1,shouldRetry:!1,logLevel:"warn"},[e.RESIDENCE_CARD_NOT_SUBMITTED]:{category:"validation",severity:"low",shouldLogout:!1,shouldRetry:!1,logLevel:"info"},[e.RESIDENCE_CARD_REJECTED]:{category:"validation",severity:"low",shouldLogout:!1,shouldRetry:!1,logLevel:"warn"},[e.ORDER_VALIDATION_FAILED]:{category:"validation",severity:"low",shouldLogout:!1,shouldRetry:!1,logLevel:"warn"},[e.FULFILLMENT_FAILED]:{category:"system",severity:"high",shouldLogout:!1,shouldRetry:!0,logLevel:"error"},[e.SUBSCRIPTION_NOT_FOUND]:{category:"validation",severity:"low",shouldLogout:!1,shouldRetry:!1,logLevel:"warn"},[e.SUBSCRIPTION_CANCELLATION_FAILED]:{category:"business",severity:"medium",shouldLogout:!1,shouldRetry:!0,logLevel:"error"},[e.SUBSCRIPTION_UPDATE_FAILED]:{category:"business",severity:"medium",shouldLogout:!1,shouldRetry:!0,logLevel:"error"},[e.UNKNOWN]:{category:"system",severity:"medium",shouldLogout:!1,shouldRetry:!0,logLevel:"error"}};function c(o){if(!o)return e.UNKNOWN;switch(o){case 401:return e.SESSION_EXPIRED;case 403:return e.FORBIDDEN;case 404:return e.NOT_FOUND;case 409:return e.ACCOUNT_EXISTS;case 400:return e.VALIDATION_FAILED;case 429:return e.RATE_LIMITED;case 503:return e.SERVICE_UNAVAILABLE;default:return o>=500?e.INTERNAL_ERROR:e.UNKNOWN}}R({success:y(!1),error:R({code:E(),message:E(),details:g(E(),A()).optional()})});function O(o){return L(o)?D(o):o instanceof Error?f(o):typeof o=="string"?{code:e.UNKNOWN,message:o,shouldLogout:!1,shouldRetry:!0}:{code:e.UNKNOWN,message:l[e.UNKNOWN],shouldLogout:!1,shouldRetry:!0}}function D(o){var I;const t=o.body,a=(I=o.response)==null?void 0:I.status,r=T(t);if(r){const n=r.error.code,_=Object.prototype.hasOwnProperty.call(i,n)?n:e.UNKNOWN,N=i[_]??i[e.UNKNOWN],d=S(r.error.details);return{code:_,message:r.error.message,shouldLogout:N.shouldLogout,shouldRetry:N.shouldRetry,...d&&{fieldErrors:d}}}const s=c(a),u=i[s];return{code:s,message:o.message||l[s],shouldLogout:u.shouldLogout,shouldRetry:u.shouldRetry}}function S(o){if(!o||typeof o!="object"||Array.isArray(o))return;const t=o.fieldErrors;if(!t||typeof t!="object"||Array.isArray(t))return;const a={};for(const[r,s]of Object.entries(t))typeof s=="string"&&(a[r]=s);return Object.keys(a).length>0?a:void 0}function f(o){return o.name==="TypeError"&&o.message.includes("fetch")?{code:e.NETWORK_ERROR,message:l[e.NETWORK_ERROR],shouldLogout:!1,shouldRetry:!0}:o.name==="AbortError"?{code:e.TIMEOUT,message:l[e.TIMEOUT],shouldLogout:!1,shouldRetry:!0}:{code:e.UNKNOWN,message:o.message||l[e.UNKNOWN],shouldLogout:!1,shouldRetry:!0}}function C(o){return O(o).message}export{C as g,O as p}; diff --git a/apps/portal/public/storybook/assets/error-message-DeFFz6H_.js b/apps/portal/public/storybook/assets/error-message-DeFFz6H_.js new file mode 100644 index 00000000..d0b87cea --- /dev/null +++ b/apps/portal/public/storybook/assets/error-message-DeFFz6H_.js @@ -0,0 +1 @@ +import{j as r}from"./jsx-runtime-D_zvdyIk.js";import{r as m}from"./index-JhL3uwfD.js";import{c as l}from"./index-DXhM58Yq.js";import{c as p}from"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import{F as f}from"./ExclamationCircleIcon-jFfW0Ax_.js";const d=l("flex items-center gap-1 text-sm",{variants:{variant:{default:"text-red-600",inline:"text-red-600",subtle:"text-red-500"}},defaultVariants:{variant:"default"}}),a=m.forwardRef(({className:s,variant:t,showIcon:o=!0,children:e,...i},n)=>e?r.jsxs("p",{ref:n,className:p(d({variant:t,className:s})),role:"alert",...i,children:[o&&r.jsx(f,{className:"h-4 w-4 flex-shrink-0"}),e]}):null);a.displayName="ErrorMessage";a.__docgenInfo={description:"",methods:[],displayName:"ErrorMessage",props:{showIcon:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"true",computed:!1}}},composes:["VariantProps"]};export{a as E}; diff --git a/apps/portal/public/storybook/assets/error-message.stories-Bk6NeitC.js b/apps/portal/public/storybook/assets/error-message.stories-Bk6NeitC.js new file mode 100644 index 00000000..14b286c1 --- /dev/null +++ b/apps/portal/public/storybook/assets/error-message.stories-Bk6NeitC.js @@ -0,0 +1,16 @@ +import{j as r}from"./jsx-runtime-D_zvdyIk.js";import{E as o}from"./error-message-DeFFz6H_.js";import"./index-JhL3uwfD.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./ExclamationCircleIcon-jFfW0Ax_.js";const j={title:"Atoms/ErrorMessage",component:o,argTypes:{variant:{control:"select",options:["default","inline","subtle"]},showIcon:{control:"boolean"}}},e={args:{children:"This field is required"}},s={render:()=>r.jsxs("div",{className:"flex flex-col gap-3",children:[r.jsx(o,{variant:"default",children:"Default error message"}),r.jsx(o,{variant:"inline",children:"Inline error message"}),r.jsx(o,{variant:"subtle",children:"Subtle error message"})]})},a={args:{children:"Error without icon",showIcon:!1}};var t,n,i;e.parameters={...e.parameters,docs:{...(t=e.parameters)==null?void 0:t.docs,source:{originalSource:`{ + args: { + children: "This field is required" + } +}`,...(i=(n=e.parameters)==null?void 0:n.docs)==null?void 0:i.source}}};var l,c,m;s.parameters={...s.parameters,docs:{...(l=s.parameters)==null?void 0:l.docs,source:{originalSource:`{ + render: () =>
+ Default error message + Inline error message + Subtle error message +
+}`,...(m=(c=s.parameters)==null?void 0:c.docs)==null?void 0:m.source}}};var d,p,u;a.parameters={...a.parameters,docs:{...(d=a.parameters)==null?void 0:d.docs,source:{originalSource:`{ + args: { + children: "Error without icon", + showIcon: false + } +}`,...(u=(p=a.parameters)==null?void 0:p.docs)==null?void 0:u.source}}};const w=["Default","AllVariants","WithoutIcon"];export{s as AllVariants,e as Default,a as WithoutIcon,w as __namedExportsOrder,j as default}; diff --git a/apps/portal/public/storybook/assets/error-state-BSicqqE6.js b/apps/portal/public/storybook/assets/error-state-BSicqqE6.js new file mode 100644 index 00000000..ecdf2cf4 --- /dev/null +++ b/apps/portal/public/storybook/assets/error-state-BSicqqE6.js @@ -0,0 +1 @@ +import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{B as p}from"./button-C8_cybvS.js";import{c as r}from"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import{F as f}from"./ExclamationTriangleIcon-Di4DJZFg.js";import{F as g}from"./ArrowPathIcon-CZjG6RfV.js";function x({title:s="Something went wrong",message:t="An unexpected error occurred. Please try again.",onRetry:a,retryLabel:i="Try again",className:d,variant:n="card"}){const o="flex flex-col items-center justify-center text-center",l={page:"min-h-[400px] py-12",card:"bg-card text-card-foreground border border-danger/25 rounded-2xl p-6 shadow-md",inline:"bg-danger-soft border border-danger/25 rounded-md p-4"},m={page:"h-16 w-16",card:"h-12 w-12",inline:"h-5 w-5"},u={page:"text-xl",card:"text-lg",inline:"text-sm"},c={page:"text-base",card:"text-sm",inline:"text-sm"};return e.jsxs("div",{className:r(o,l[n],d),suppressHydrationWarning:!0,children:[e.jsx("div",{className:r("text-danger mb-4",n==="inline"&&"flex-shrink-0"),suppressHydrationWarning:!0,children:e.jsx(f,{className:m[n]})}),e.jsxs("div",{className:n==="inline"?"ml-3 flex-1":"",suppressHydrationWarning:!0,children:[e.jsx("h3",{className:r("font-semibold text-foreground mb-2",u[n]),suppressHydrationWarning:!0,children:s}),e.jsx("p",{className:r("text-muted-foreground mb-4 max-w-md",c[n]),suppressHydrationWarning:!0,children:t}),a&&e.jsxs(p,{onClick:a,variant:"outline",size:n==="inline"?"sm":"default",className:"text-danger border-danger/30 hover:bg-danger-soft",children:[e.jsx(g,{className:"h-4 w-4 mr-2"}),i]})]})]})}x.__docgenInfo={description:"",methods:[],displayName:"ErrorState",props:{title:{required:!1,tsType:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}]},description:"",defaultValue:{value:'"Something went wrong"',computed:!1}},message:{required:!1,tsType:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}]},description:"",defaultValue:{value:'"An unexpected error occurred. Please try again."',computed:!1}},onRetry:{required:!1,tsType:{name:"union",raw:"(() => void) | undefined",elements:[{name:"unknown"},{name:"undefined"}]},description:""},retryLabel:{required:!1,tsType:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}]},description:"",defaultValue:{value:'"Try again"',computed:!1}},className:{required:!1,tsType:{name:"union",raw:"string | undefined",elements:[{name:"string"},{name:"undefined"}]},description:""},variant:{required:!1,tsType:{name:"union",raw:'"page" | "card" | "inline" | undefined',elements:[{name:"literal",value:'"page"'},{name:"literal",value:'"card"'},{name:"literal",value:'"inline"'},{name:"undefined"}]},description:"",defaultValue:{value:'"card"',computed:!1}}}};export{x as E}; diff --git a/apps/portal/public/storybook/assets/error-state.stories-DNZf_lpp.js b/apps/portal/public/storybook/assets/error-state.stories-DNZf_lpp.js new file mode 100644 index 00000000..0cce17e5 --- /dev/null +++ b/apps/portal/public/storybook/assets/error-state.stories-DNZf_lpp.js @@ -0,0 +1,25 @@ +import{j as o}from"./jsx-runtime-D_zvdyIk.js";import{E as n}from"./error-state-BSicqqE6.js";import"./button-C8_cybvS.js";import"./index-JhL3uwfD.js";import"./next-link-BmD4fPSy.js";import"./index-DXhM58Yq.js";import"./cn-CDN07tui.js";import"./index-BKyvj4H5.js";import"./schema-B7GuHPAW.js";import"./coerce-BirWdn0y.js";import"./spinner-mU4XywER.js";import"./ExclamationTriangleIcon-Di4DJZFg.js";import"./ArrowPathIcon-CZjG6RfV.js";const _={title:"Atoms/ErrorState",component:n,argTypes:{variant:{control:"select",options:["page","card","inline"]}}},r={args:{variant:"card"}},e={args:{variant:"page"}},a={args:{variant:"inline"}},t={args:{variant:"card",title:"Failed to load data",message:"Could not connect to the server. Please check your connection.",onRetry:()=>alert("Retrying...")}},s={render:()=>o.jsxs("div",{className:"flex flex-col gap-6 max-w-lg",children:[o.jsx(n,{variant:"card",title:"Card Error",message:"This is a card error state",onRetry:()=>{}}),o.jsx(n,{variant:"inline",title:"Inline Error",message:"This is an inline error"})]})};var i,c,l;r.parameters={...r.parameters,docs:{...(i=r.parameters)==null?void 0:i.docs,source:{originalSource:`{ + args: { + variant: "card" + } +}`,...(l=(c=r.parameters)==null?void 0:c.docs)==null?void 0:l.source}}};var m,d,p;e.parameters={...e.parameters,docs:{...(m=e.parameters)==null?void 0:m.docs,source:{originalSource:`{ + args: { + variant: "page" + } +}`,...(p=(d=e.parameters)==null?void 0:d.docs)==null?void 0:p.source}}};var g,u,v;a.parameters={...a.parameters,docs:{...(g=a.parameters)==null?void 0:g.docs,source:{originalSource:`{ + args: { + variant: "inline" + } +}`,...(v=(u=a.parameters)==null?void 0:u.docs)==null?void 0:v.source}}};var x,h,y;t.parameters={...t.parameters,docs:{...(x=t.parameters)==null?void 0:x.docs,source:{originalSource:`{ + args: { + variant: "card", + title: "Failed to load data", + message: "Could not connect to the server. Please check your connection.", + onRetry: () => alert("Retrying...") + } +}`,...(y=(h=t.parameters)==null?void 0:h.docs)==null?void 0:y.source}}};var E,R,S;s.parameters={...s.parameters,docs:{...(E=s.parameters)==null?void 0:E.docs,source:{originalSource:`{ + render: () =>
+ {}} /> + +
+}`,...(S=(R=s.parameters)==null?void 0:R.docs)==null?void 0:S.source}}};const O=["Card","Page","Inline","WithRetry","AllVariants"];export{s as AllVariants,r as Card,a as Inline,e as Page,t as WithRetry,O as __namedExportsOrder,_ as default}; diff --git a/apps/portal/public/storybook/assets/globe-Bhk-JDfS.js b/apps/portal/public/storybook/assets/globe-Bhk-JDfS.js new file mode 100644 index 00000000..7f87e681 --- /dev/null +++ b/apps/portal/public/storybook/assets/globe-Bhk-JDfS.js @@ -0,0 +1,6 @@ +import{c}from"./createLucideIcon-CctB0W3q.js";/** + * @license lucide-react v0.563.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const e=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20",key:"13o1zl"}],["path",{d:"M2 12h20",key:"9i4pu4"}]],a=c("globe",e);export{a as G}; diff --git a/apps/portal/public/storybook/assets/helpers-C5Jr5RNp.js b/apps/portal/public/storybook/assets/helpers-C5Jr5RNp.js new file mode 100644 index 00000000..e9232b6d --- /dev/null +++ b/apps/portal/public/storybook/assets/helpers-C5Jr5RNp.js @@ -0,0 +1 @@ +import{o as r,s as e,_ as u,b as y,n as c,c as m,d as N}from"./coerce-BirWdn0y.js";const b={INTERNET:"Internet",SIM:"SIM",VPN:"VPN"},A=["IPoE-BYOR","IPoE-HGW","PPPoE"],P=["Immediate","Scheduled"],k=["eSIM","Physical SIM"],x=["Male","Female","Corporate/Other"],E=r({productName:e().optional(),name:e().optional(),sku:e().optional(),productId:e().optional(),status:e().optional(),billingCycle:e().optional(),itemClass:e().optional(),quantity:c().int().min(0).optional(),unitPrice:c().optional(),totalPrice:c().optional(),isBundledAddon:y().optional(),bundledAddonId:e().optional()}),O=r({id:e(),orderId:e(),quantity:c().int().min(1),unitPrice:c().optional(),totalPrice:c().optional(),billingCycle:e().optional(),product:r({id:e().optional(),name:e().optional(),sku:e().optional(),itemClass:e().optional(),whmcsProductId:e().optional(),internetOfferingType:e().optional(),internetPlanTier:e().optional(),vpnRegion:e().optional(),isBundledAddon:y().optional(),bundledAddonId:e().optional()}).optional()}),w=r({id:e(),orderNumber:e(),status:e(),orderType:e().optional(),effectiveDate:e(),totalAmount:c().optional(),createdDate:e(),lastModifiedDate:e(),whmcsOrderId:e().optional(),activationStatus:e().optional(),itemsSummary:m(E)});w.extend({accountId:e().optional(),accountName:e().optional(),pricebook2Id:e().optional(),opportunityId:e().optional(),activationType:e().optional(),activationStatus:e().optional(),activationScheduledAt:e().optional(),activationErrorCode:e().optional(),activationErrorMessage:e().optional(),activatedDate:e().optional(),items:m(O)});r({page:N().int().positive().optional(),limit:N().int().positive().max(100).optional(),status:e().optional(),orderType:e().optional()});const _=r({street:e().nullable().optional(),streetLine2:e().nullable().optional(),city:e().nullable().optional(),state:e().nullable().optional(),postalCode:e().nullable().optional(),country:e().nullable().optional()}),f=r({activationType:u(P).optional(),scheduledAt:e().optional(),accessMode:u(A).optional(),simType:u(k).optional(),eid:e().regex(/^\d{32}$/,"EID must be exactly 32 digits").optional(),isMnp:e().optional(),mnpNumber:e().max(10,"MNP reservation number must be 10 digits or fewer").optional(),mnpExpiry:e().optional(),mnpPhone:e().max(11,"MNP phone number must be 11 digits or fewer").optional(),mvnoAccountNumber:e().max(255).optional(),portingLastName:e().max(255).optional(),portingFirstName:e().max(255).optional(),portingLastNameKatakana:e().max(255).optional(),portingFirstNameKatakana:e().max(255).optional(),portingGender:u(x).optional(),portingDateOfBirth:e().optional(),address:_.optional()}),B=r({plan:e().optional(),planId:e().optional(),planSku:e().optional(),planIdSku:e().optional(),installationSku:e().optional(),activationFeeSku:e().optional(),activationSku:e().optional(),addonSku:e().optional(),addons:e().optional(),accessMode:u(A).optional(),activationType:u(P).optional(),scheduledAt:e().optional(),simType:u(k).optional(),eid:e().regex(/^\d{32}$/,"EID must be exactly 32 digits").optional(),isMnp:e().optional(),mnpNumber:e().max(10,"MNP reservation number must be 10 digits or fewer").optional(),mnpExpiry:e().optional(),mnpPhone:e().max(11,"MNP phone number must be 11 digits or fewer").optional(),mvnoAccountNumber:e().max(255).optional(),portingLastName:e().max(255).optional(),portingFirstName:e().max(255).optional(),portingLastNameKatakana:e().max(255).optional(),portingFirstNameKatakana:e().max(255).optional(),portingGender:u(x).optional(),portingDateOfBirth:e().optional(),address:r({street:e().optional(),streetLine2:e().optional(),city:e().optional(),state:e().optional(),postalCode:e().optional(),country:e().optional()}).optional()}).strip(),q=r({orderType:u(["Internet","SIM","VPN","Other"]),skus:m(e()),configurations:f.optional()});q.extend({userId:e().uuid(),opportunityId:e().optional()}).refine(t=>t.orderType==="Internet"?t.skus.filter(i=>{const a=i.toUpperCase();return!a.includes("INSTALL")&&!a.includes("ADDON")&&!a.includes("ACTIVATION")&&!a.includes("FEE")}).length>=1:!0,{message:"Internet orders must have at least one main service SKU (non-installation, non-addon)",path:["skus"]}).refine(t=>t.orderType==="SIM"&&t.configurations?t.configurations.simType!==void 0:!0,{message:"SIM orders must specify SIM type",path:["configurations","simType"]}).refine(t=>{var n;return((n=t.configurations)==null?void 0:n.simType)==="eSIM"?t.configurations.eid!==void 0&&t.configurations.eid.length>0:!0},{message:"eSIM orders must provide EID",path:["configurations","eid"]}).refine(t=>{var n;return((n=t.configurations)==null?void 0:n.isMnp)==="true"?["mnpNumber","portingLastName","portingFirstName"].every(a=>{var o;return((o=t.configurations)==null?void 0:o[a])!==void 0}):!0},{message:"MNP orders must provide porting information",path:["configurations"]});r({sfOrderId:e().length(18,"Salesforce order ID must be 18 characters").regex(/^[A-Za-z0-9]+$/,"Salesforce order ID must be alphanumeric")});const M=r({id:e(),sku:e(),name:e(),description:e().optional(),monthlyPrice:c().optional(),oneTimePrice:c().optional(),quantity:c().positive(),itemType:u(["plan","installation","addon","activation","vpn"]),autoAdded:y().optional()}),D=r({monthlyTotal:c(),oneTimeTotal:c()});r({items:m(M),totals:D,configuration:f});r({orderType:u(["Internet","SIM","VPN","Other"]),selections:B,configuration:f.optional()});r({checkoutSessionId:e().uuid()});r({sessionId:e().uuid()});const R=r({items:m(M),totals:D});r({sessionId:e().uuid(),expiresAt:e(),orderType:u(["Internet","SIM","VPN","Other"]),cart:R});r({valid:y()});r({sfOrderId:e(),status:e(),message:e()});const C=u(["service","installation","addon","activation","other"]),V=u(["monthly","one-time","other"]),F=r({kind:V,amount:c(),label:e(),suffix:e().optional()});r({id:e(),name:e(),quantity:c().optional(),status:e().optional(),primaryCategory:C,categories:m(C),charges:m(F),included:y(),sourceItems:m(E),isBundle:y()});const d=t=>{if(typeof t!="string")return;const n=t.trim();return n.length>0?n:void 0},I=t=>{const n=d(t);if(n)return n.replace(/-/g,"")},K={monthly:"monthly",month:"monthly",onetime:"onetime",once:"onetime",singlepayment:"onetime",annual:"annually",annually:"annually",yearly:"annually",year:"annually",quarterly:"quarterly",quarter:"quarterly",qtr:"quarterly",semiannual:"semiannually",semiannually:"semiannually",semiannualy:"semiannually",semiannualpayment:"semiannually",semiannualbilling:"semiannually",biannual:"semiannually",biannually:"semiannually",biennial:"biennially",biennially:"biennially",triennial:"triennially",triennially:"triennially",free:"free"},G=t=>t.trim().toLowerCase().replace(/[\s_-]+/g,""),T="monthly";function L(t,n={}){if(typeof t!="string")return n.defaultValue??T;const i=G(t),a=K[i];return a||(n.defaultValue??T)}function W(t,n={}){var p;const i={simType:t.simType,activationType:t.activationType},a=d(t.eid);t.simType==="eSIM"&&a&&(i.eid=a);const o=I(t.scheduledActivationDate);t.activationType==="Scheduled"&&o&&(i.scheduledAt=o);const l=d((p=t.mnpData)==null?void 0:p.phoneNumber)??d(n.phoneNumber);if(l&&(i.mnpPhone=l),t.wantsMnp&&t.mnpData){const s=t.mnpData;i.isMnp="true",i.mnpNumber=d(s.reservationNumber),i.mnpExpiry=I(s.expiryDate),i.mvnoAccountNumber=d(s.mvnoAccountNumber),i.portingLastName=d(s.portingLastName),i.portingFirstName=d(s.portingFirstName),i.portingLastNameKatakana=d(s.portingLastNameKatakana),i.portingFirstNameKatakana=d(s.portingFirstNameKatakana),i.portingGender=d(s.portingGender),i.portingDateOfBirth=I(s.portingDateOfBirth)}else t.wantsMnp&&(i.isMnp="true");return f.parse(i)}function H({status:t,activationStatus:n,scheduledAt:i}){if(n==="Activated")return{label:"Service Active",state:"active",tone:"success",description:"Your service is active and ready to use",timeline:"Service activated successfully"};if(t==="Draft"||t==="Pending Review")return{label:"Under Review",state:"review",tone:"info",description:"Our team is reviewing your order details",nextAction:"We will contact you within 1 business day with next steps",timeline:"Review typically takes 1 business day"};if(n==="Scheduled"){const a=U(i);return{label:"Installation Scheduled",state:"scheduled",tone:"warning",description:"Your installation has been scheduled",nextAction:a?`Installation scheduled for ${a}`:"Installation will be scheduled shortly",timeline:"Please be available during the scheduled time",scheduledDate:a}}return n==="Activating"?{label:"Setting Up Service",state:"activating",tone:"info",description:"We're configuring your service",nextAction:"Installation team will contact you to schedule",timeline:"Setup typically takes 3-5 business days"}:{label:t||"Processing",state:"processing",tone:"neutral",description:"Your order is being processed",timeline:"We will update you as progress is made"}}function j(t){switch(t){case b.INTERNET:return"internet";case b.SIM:return"sim";case b.VPN:return"vpn";default:return"default"}}function Z(t,n){let i=0,a=0;if(Array.isArray(t)&&t.length>0)for(const o of t){const l=typeof(o==null?void 0:o.totalPrice)=="number"?o.totalPrice:0;switch(L(o==null?void 0:o.billingCycle)){case"monthly":i+=l;break;case"onetime":case"free":a+=l;break;default:i+=l}}else typeof n=="number"&&(i=n);return{monthlyTotal:i,oneTimeTotal:a}}function U(t){if(!t)return;const n=new Date(t);if(!Number.isNaN(n.getTime()))return n.toLocaleDateString("en-US",{weekday:"long",month:"long",day:"numeric"})}function Y(t){const n=(t??"").toLowerCase();return n.includes("service")?"service":n.includes("installation")?"installation":n.includes("activation")?"activation":n.includes("add-on")||n.includes("addon")?"addon":"other"}function J(t){return!Array.isArray(t)||t.length===0?[]:t.map((n,i)=>{const a=Y(n.itemClass),o=z([n]);return{id:n.productId||n.sku||`order-item-${i}`,name:n.productName||n.name||"Service item",quantity:n.quantity??void 0,status:n.status??void 0,primaryCategory:a,categories:[a],charges:o,included:o.every(l=>l.amount<=0),sourceItems:[n],isBundle:!!n.isBundledAddon}})}function z(t){var a;const n=new Map,i={monthly:0,"one-time":1,other:2};for(const o of t){const l=Number(o.totalPrice??o.unitPrice??0),p=L(o.billingCycle??void 0);let s="other",g="other",h=((a=o.billingCycle)==null?void 0:a.trim())||"Billing",S;p==="monthly"?(s="monthly",g="monthly",h="Monthly",S="/ month"):p==="onetime"||p==="free"?(s="one-time",g="one-time",h="One-time"):typeof o.billingCycle=="string"&&o.billingCycle.length>0&&(g=`other:${o.billingCycle.toLowerCase()}`);const v=n.get(g);v?v.amount+=l:n.set(g,{kind:s,amount:l,label:h,suffix:S})}return[...n.values()].map(({kind:o,amount:l,label:p,suffix:s})=>({kind:o,amount:l,label:p,suffix:s})).sort((o,l)=>{const p=i[o.kind]-i[l.kind];return p!==0?p:o.label.localeCompare(l.label)})}export{W as a,J as b,Z as c,H as d,j as g}; diff --git a/apps/portal/public/storybook/assets/house-pESumjO8.js b/apps/portal/public/storybook/assets/house-pESumjO8.js new file mode 100644 index 00000000..d8820c35 --- /dev/null +++ b/apps/portal/public/storybook/assets/house-pESumjO8.js @@ -0,0 +1,6 @@ +import{c as a}from"./createLucideIcon-CctB0W3q.js";/** + * @license lucide-react v0.563.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const o=[["path",{d:"M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8",key:"5wwlr5"}],["path",{d:"M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z",key:"r6nss1"}]],s=a("house",o);export{s as H}; diff --git a/apps/portal/public/storybook/assets/iframe-Ce-ZSiNJ.js b/apps/portal/public/storybook/assets/iframe-Ce-ZSiNJ.js new file mode 100644 index 00000000..ed8e5f09 --- /dev/null +++ b/apps/portal/public/storybook/assets/iframe-Ce-ZSiNJ.js @@ -0,0 +1,211 @@ +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./animated-container.stories-Bl35KCC2.js","./jsx-runtime-D_zvdyIk.js","./animated-container-DyAZ9gmw.js","./cn-CDN07tui.js","./index-BKyvj4H5.js","./schema-B7GuHPAW.js","./coerce-BirWdn0y.js","./proxy-ZkTvaR74.js","./index-JhL3uwfD.js","./badge.stories-CmRWDa_s.js","./badge-BdMsasyi.js","./index-DXhM58Yq.js","./button.stories-ChBuZSRT.js","./button-C8_cybvS.js","./next-link-BmD4fPSy.js","./spinner-mU4XywER.js","./PlusIcon-DGufmf06.js","./ArrowRightIcon--Vuz7Q7x.js","./checkbox.stories-eSDwLnhF.js","./checkbox-DahUyQbt.js","./empty-state.stories-Bl3MzzdA.js","./empty-state-DRUGJ9ip.js","./InboxIcon-C_jmd85B.js","./error-message.stories-Bk6NeitC.js","./error-message-DeFFz6H_.js","./ExclamationCircleIcon-jFfW0Ax_.js","./error-state.stories-DNZf_lpp.js","./error-state-BSicqqE6.js","./ExclamationTriangleIcon-Di4DJZFg.js","./ArrowPathIcon-CZjG6RfV.js","./inline-toast.stories-C7r26mb0.js","./inline-toast-DQJ-O9wc.js","./index-CNXKWNLp.js","./input.stories-DQJEJSpR.js","./input-BbGJiz0K.js","./label.stories-C7924pCJ.js","./label-C25VH7yk.js","./loading-overlay.stories-D9BE2_z8.js","./loading-overlay-DMJTiFny.js","./logo.stories-Bm5-ef62.js","./logo-f0fprTjz.js","./next-image-69WeRggt.js","./password-input.stories-Dzc6SamA.js","./password-input-D4khGh8v.js","./createLucideIcon-CctB0W3q.js","./skeleton.stories-BkI-NupL.js","./skeleton-ISCbfaf8.js","./spinner.stories-C7xyY-xZ.js","./status-indicator.stories-DpTAhFHz.js","./status-indicator-C7K_QPts.js","./status-pill.stories-DSoopyF4.js","./status-pill-wWp9xkwA.js","./CheckCircleIcon-Dva35lTP.js","./ClockIcon-BFX11zAZ.js","./step-header.stories-BOK8zhw2.js","./step-header-C0A-1Uoh.js","./view-toggle.stories-C5Y_8-2K.js","./view-toggle-ja_vihxz.js","./Squares2X2Icon-BMQM_Wy1.js","./AlertBanner.stories-BzkAEqJu.js","./AlertBanner-Bnlyj1xc.js","./XCircleIcon-CiVBnngB.js","./InformationCircleIcon-Clz7d-56.js","./AnimatedCard.stories-DN795hbd.js","./AnimatedCard-DFAiX4zP.js","./BackLink.stories-C6OUjTR3.js","./BackLink-C5IY6wzy.js","./ArrowLeftIcon-Cw1eswTb.js","./ClearFiltersButton.stories-DUreI73q.js","./ClearFiltersButton-CPCoyXk2.js","./XMarkIcon-Bsb1W5VN.js","./DataTable.stories-B-_ukgGA.js","./DataTable-COYdcx41.js","./ChevronRightIcon-CMQWsJeW.js","./DetailHeader.stories-DT70K3Kz.js","./DetailHeader-C0ZsoM39.js","./DocumentTextIcon-Dk_xQMYi.js","./WifiIcon-BRIpHl8i.js","./DetailStatsGrid.stories-D_oLpbK9.js","./DetailStatsGrid-CDkKTM-B.js","./CalendarIcon-DHpf4s_h.js","./CurrencyYenIcon-Bf5bmWZc.js","./FilterDropdown.stories-D8ZH63Jx.js","./FilterDropdown-CUU04WmN.js","./FunnelIcon-8nhbwqu0.js","./FormField.stories-BKWGauBj.js","./FormField-C0UylACv.js","./LoadingSkeletons.stories-CTSadyqV.js","./loading-card-BIOTKPal.js","./MetricCard.stories-CyBIfbtz.js","./MetricCard-BR1xVIXz.js","./UsersIcon-DB1YN4Bz.js","./OtpExpiryDisplay.stories-DQ6_GOyY.js","./OtpExpiryDisplay-BGgB7Tk6.js","./clock-C92s7kSC.js","./OtpInput.stories-BqMaWeSV.js","./OtpInput-6kd_2E0v.js","./input-otp-Cin9-T84.js","./PaginationBar.stories-Bs41ecrn.js","./PaginationBar-D_k7ztRb.js","./ProgressSteps.stories-B_lVP3rq.js","./ProgressSteps-weVdXcqu.js","./RouteLoading.stories-8Jpgwq8B.js","./SearchFilterBar.stories-DxwUci-Y.js","./SearchFilterBar-Ds19v0-P.js","./SectionCard.stories-BOS6yKH_.js","./SectionCard-BcUjc-7N.js","./CreditCardIcon-BBdrpHQs.js","./UserIcon-BGV2Aso_.js","./SectionHeader.stories-I03d34Dn.js","./SectionHeader-Bo81Whai.js","./ServiceCard.stories-7dEyf33R.js","./ServiceCard-BJEHFLba.js","./arrow-right-BNMAry-H.js","./DevicePhoneMobileIcon-SMwjWf6M.js","./ShieldCheckIcon-BBoI5cMX.js","./ServerIcon-Cf--50di.js","./StatusBadge.stories-DyHwG2dd.js","./status-badge-5pzxe45J.js","./SubCard.stories-FgNAFG2V.js","./SubCard-1OZIPgEM.js","./SummaryStats.stories-Bgs7dcLW.js","./SummaryStats-D6b7Am-p.js","./error-fallbacks.stories-BfOzoOVy.js","./error-fallbacks-kSPsNxmV.js","./SiteFooter.stories-Cz1zqKrh.js","./map-pin-Bm-ztWPO.js","./phone-BtPh0Z3S.js","./AuthLayout.stories-CPD8T6zA.js","./AuthLayout-DNr24V9g.js","./PageLayout.stories-CS-cxF-k.js","./PageLayout-CxVUl3Jy.js","./input-otp.stories-CY0B6CKX.js","./AddressCard.stories-ywY4b4nI.js","./ProductCard-BA9t2pcL.js","./error-boundary-DIRO_cDI.js","./next-navigation-FtRxULo3.js","./PricingDisplay-CBWoWrYN.js","./index-9c86oO0t.js","./currency-CYvr7ZUf.js","./date-CJlSVdaN.js","./text-CXa-DJQz.js","./ProductComparison-DYrBj0kv.js","./CheckIcon-BKJSKBEC.js","./ConfigurationStep-xBkwMSbV.js","./StepIndicator-chJR-dG8.js","./StepHeader-D_31J9G_.js","./ValidationStatus-Dsgne9Qr.js","./StepActions-x37eBfO8.js","./StepContent-D57mrCa_.js","./HelpPanel-rRaRP4jS.js","./InfoPanel-CAJ6XA4c.js","./AddressForm-CCWrICXS.js","./countries-CY6LSu2r.js","./useZodForm-ByUWfWhF.js","./error-handling-CCxr4Gjn.js","./schema-Dok_SHcO.js","./PaymentForm-CHFxVgF8.js","./OrderSummary-nn5Jq6Ex.js","./AddonGroup-BSDkN5FG.js","./CheckCircleIcon-DrKOIitY.js","./SimTypeSelector-m-grYnOJ.js","./SignalIcon-CUFdTwmf.js","./EnvelopeIcon-Bx94PDZ6.js","./TruckIcon-C8f1NFCW.js","./ActivationForm-B27tsgwI.js","./CardPricing-FcGNWupq.js","./InstallationOptions-CKiIJxBe.js","./MnpForm-j5Hck9cV.js","./JapanAddressForm-CUdYD2hV.js","./ZipCodeInput-C0pEKKnJ.js","./useQuery-tNNTAmfW.js","./QueryClientProvider-D7wSf7Op.js","./schema-Cvvg7S_W.js","./circle-check-big-Bab09Iah.js","./search-DSeV2urL.js","./AnimatedSection-CccjFZBU.js","./ProgressIndicator-zQZ52Xi8.js","./BilingualValue-B84DkgyY.js","./sparkles-q054t7ye.js","./chevron-right-C40ybnlz.js","./house-pESumjO8.js","./building-2-C7pcwIk2.js","./auth.store-CVqT-1lf.js","./react-C6W-rNNW.js","./schema-JsDJirqf.js","./FeatureCard-DMnf0Xpf.js","./ServiceHeroCard-C1DUlYtH.js","./check-DmNqM64J.js","./PencilIcon-XQqOFsKO.js","./PasswordChangeCard.stories-BtEtBsXQ.js","./SetPasswordForm-JAj2IB2C.js","./PasswordSection-DeRa0d5T.js","./PasswordRequirements-Iusuj6EU.js","./x-gzkF7O9v.js","./PasswordMatchIndicator-CoUjyU1r.js","./TermsCheckbox-CIu51LBN.js","./MarketingCheckbox-x7nAFt-_.js","./compat-BjFfok0x.js","./PersonalInfoCard.stories-C5Meizce.js","./VerificationCard.stories-B-cVK-j0.js","./date-Csq1SWDU.js","./ProfileLoadingSkeleton.stories-BU-PWcFX.js","./AddressStepJapan.stories-BKBuOfMf.js","./AnimatedSection.stories-BJ1_MTYj.js","./BilingualValue.stories-o20kAFvD.js","./JapanAddressForm.stories-CoHhyGL3.js","./ProgressIndicator.stories-Byfc_VnN.js","./ZipCodeInput.stories-BFozAGDn.js","./MarketingCheckbox.stories-CqDvHF_f.js","./PasswordMatchIndicator.stories-BPnGI6X8.js","./PasswordRequirements.stories-BuqA3NhU.js","./PasswordSection.stories-Dp7SWmeD.js","./SessionTimeoutWarning.stories-BmTm_C0V.js","./TermsCheckbox.stories-BKOMXPZQ.js","./BillingStatusBadge.stories-94yAz7EP.js","./BillingStatusBadge-CQ1ic61y.js","./BillingSummary.stories-CfjkLJys.js","./InvoiceItems.stories-DCnfx23q.js","./InvoiceSummaryBar.stories-B0IQCumt.js","./ArrowDownTrayIcon-B9boZoDw.js","./ArrowTopRightOnSquareIcon-CouP_SCN.js","./InvoiceTotals.stories-JIfDPO6U.js","./useFormatCurrency-COf74_bd.js","./constants-Cd_qStHG.js","./InvoiceItemRow.stories-BJs_DWl1.js","./InvoiceTable.stories-B6vMrZIR.js","./schema-DP3xEsUJ.js","./invoice-list-skeleton.stories-QDelhEm_.js","./CheckoutErrorFallback.stories-BQ4DRuiU.js","./CheckoutShell.stories-DuLNb4b_.js","./CheckoutStatusBanners.stories-ySBtOPrz.js","./index-B9TJ7cVi.js","./OrderConfirmation.stories-QSfVClKV.js","./IdentityVerificationSection.stories-CzqNiDfi.js","./ResidenceCardUploadInput-CGlBhrJf.js","./shield-check-CusqZMaY.js","./OrderSubmitSection.stories-DSyTqli0.js","./PaymentMethodSection.stories-CLy-Cpns.js","./credit-card-AndvzjKW.js","./ResidenceCardUploadInput.stories-lG6nqfJJ.js","./AccountStatusCard.stories-v6lNJy7d.js","./ActivityTimeline.stories-CXsaEik9.js","./DashboardActivityItem-bwWapT3F.js","./schema-B8i337wU.js","./ChatBubbleLeftRightIcon-DfYi9O0H.js","./DashboardActivityItem.stories-n2rSPi9U.js","./QuickAction.stories-CaLW2ODx.js","./StatCard.stories-ByQilz1z.js","./TaskCard.stories-DrZu2XPm.js","./TaskCard-BDKND5XO.js","./TaskList.stories-Cqc9zFS6.js","./NewCustomerFields.stories-COzH0N4T.js","./PasswordSection.stories-Dd7-O2Dr.js","./PersonalInfoFields.stories-C6TPxiFP.js","./CTABanner.stories-FtL8SvK-.js","./Chapter.stories-CzDKpNWz.js","./ContactSection.stories-D7pujQk4.js","./use-in-view-Du9cy_vv.js","./HeroSection.stories-C94ZiyDm.js","./ServicesCarousel.stories-Ba6UYuYL.js","./services-GtI5icT3.js","./wifi-Df9jtwRo.js","./smartphone-Dk2P1VMI.js","./wrench-BgTvXjQb.js","./SupportDownloadsSection.stories-CSqHhYLq.js","./TrustStrip.stories-DSpC9tt5.js","./globe-Bhk-JDfS.js","./users-BK0QOT9j.js","./WhyUsSection.stories-D1s7CEcr.js","./NotificationBell.stories-BrAAL4Pp.js","./NotificationDropdown.stories-DRbE5Maq.js","./NotificationItem-Bz_1TnoF.js","./NotificationItem.stories-feB8mKiH.js","./OrderCard.stories-D_TTGbJi.js","./OrderServiceIcon-B819JSbi.js","./helpers-C5Jr5RNp.js","./OrderCardSkeleton.stories-BWQRL5sV.js","./OrderDetailSkeleton.stories-CsIQ7N0Z.js","./OrderProgressTimeline.stories-BRHSqsEM.js","./OrderServiceIcon.stories-4p-nQPSW.js","./AddonGroup.stories-DTbPGvRs.js","./AddressConfirmation.stories-ouZdlC2E.js","./AddressForm.stories-kK1qsigB.js","./CardBadge.stories-NUWDfuqZ.js","./CardBadge-CfIpSSwP.js","./CardPricing.stories-U7XUVchG.js","./CollapsibleSection.stories-C3ZRYcvr.js","./CollapsibleSection-CChCyQrB.js","./chevron-down-CuGyZVZ6.js","./settings-BcEpseup.js","./info-Ck405yVi.js","./circle-question-mark-CauZ9VmE.js","./ConfigurationStep.stories-BT7t6srM.js","./HowItWorks.stories-Dtl3iW25.js","./HowItWorks-CdRnFIF-.js","./OrderSummary.stories-Cocc3tug.js","./PaymentForm.stories-BSI-pusn.js","./PricingDisplay.stories-Dag-riPk.js","./ProductCard.stories-BobRhhaF.js","./ProductComparison.stories-DP0gZ24B.js","./ServiceCTA.stories-B4ZpaOSF.js","./ServiceCTA-CNjQQIZn.js","./ServiceFAQ.stories-BmgNqC-B.js","./ServiceFAQ-DgotQw6I.js","./ServiceHighlights.stories-D4GoZ_5i.js","./ServiceHighlights-BOQJA3wz.js","./ServicesBackLink.stories-B5g0HtZH.js","./ServicesHero.stories-DhI0dPyd.js","./ServicesHero-BxvrExEF.js","./HelpPanel.stories-BZhqwEh1.js","./InfoPanel.stories-CV1LECBr.js","./StepActions.stories-Dsc7u9rl.js","./StepContent.stories-nOPQZWRB.js","./StepHeader.stories-BUAXqID2.js","./StepIndicator.stories-BdRLQJwc.js","./ValidationStatus.stories-B5CKE5IR.js","./FeatureCard.stories-Bvgh88lM.js","./ServiceHeroCard.stories-B78coRsl.js","./ServicesOverviewContent.stories-Dc0-GGC0.js","./CompleteAccountStep.stories-CCldt2ko.js","./eligibility-check.store-5rXvIK_a.js","./AccountInfoDisplay-DWJQCkvO.js","./PersonalInfoFields-bPb0yCUu.js","./arrow-left-DP07Iaeg.js","./FormStep.stories-Bg4DOFI9.js","./OtpStep.stories-D8ODNRr5.js","./SuccessStep.stories-GoxphLJW.js","./AccountInfoDisplay.stories-CUbdeL1Y.js","./PasswordSection.stories-CUGb6CmS.js","./PersonalInfoFields.stories-J4TMhu6x.js","./EligibilityStatusBadge.stories-D7BkuDHU.js","./triangle-alert-F5KF_Jv1.js","./HowItWorksSection.stories-DyIW3oxb.js","./calendar-6Kp0KrD6.js","./InstallationOptions.stories-BnnJh6fr.js","./InternetImportantNotes.stories-dl4oyU2O.js","./InternetIneligibleState.stories-B41A9tyD.js","./InternetModalShell.stories-C56JHx5y.js","./InternetModalShell-jIX05857.js","./InternetOfferingCard.stories-D5z-_Afl.js","./InternetPendingState.stories-DpnEkMP4.js","./InternetPlanCard.stories-CU2Janbw.js","./services.store-BMSUdGRF.js","./planName-hiGpUxZ-.js","./useServicesBasePath-Cd3sXgEE.js","./InternetTierPricingModal.stories-D3tV9nr6.js","./PlanComparisonGuide.stories-B4fWF-h8.js","./chevron-up-xeH5nNuh.js","./PlanHeader.stories-Bwxdrl89.js","./PublicOfferingCard.stories-_cAv-Hmi.js","./ConfigureLoadingSkeleton.stories-CLL7uosX.js","./AddonsStep.stories-BngBiy8z.js","./InstallationStep.stories-DyDnFBPU.js","./ReviewOrderStep.stories-CLtZmMgB.js","./ServiceConfigurationStep.stories-Kiqd8Qig.js","./ActivationForm.stories-Bofu_3Gr.js","./DeviceCompatibility.stories-ChiNwKar.js","./DeviceCompatibility-BmppB3yg.js","./MnpForm.stories-IRfEW44T.js","./SimCallingRates.stories-D_yJKnJY.js","./SimConfigureView.stories-e1VMTQiC.js","./LoadingSkeleton-D14suK9p.js","./PlanNotFound-C-GLleMO.js","./PlanCard-C4v7V-Z7.js","./PlatinumNotice-BGYq2W5f.js","./SimTypeStep-DDAAK-Br.js","./ActivationStep-DEd_rSq5.js","./AddonsStep-BL22SA_U.js","./NumberPortingStep-Bx0osMV8.js","./ReviewOrderStep-D8BlP-PO.js","./SimFees.stories-MB7Og5JI.js","./SimHowItWorksSection.stories-C1fM1NrP.js","./SimHowItWorksSection-g7Gvkwka.js","./SimOrderProcess.stories-BPKj4bvH.js","./SimPlanCard.stories-CNc_VaKU.js","./SimPlanCard-Ci7M9oOS.js","./SimPlanTypeSection.stories-DWYvRWOb.js","./SimPlansContent.stories-B1C5gMOH.js","./SimTypeComparison.stories-CnFVwS9R.js","./SimTypeSelector.stories-DpuYMLx1.js","./LoadingSkeleton.stories-pVMJG_-P.js","./PlanCard.stories-BU5JLd60.js","./PlanNotFound.stories-B9Ze1Ljr.js","./PlatinumNotice.stories-Bl7xABNE.js","./ActivationStep.stories-CpnVfT1w.js","./AddonsStep.stories-CkxWuUHZ.js","./NumberPortingStep.stories-BhRYYpZi.js","./ReviewOrderStep.stories-DQaT1PbR.js","./SimTypeStep.stories-B8JX6W0f.js","./VpnPlanCard.stories-CVRnm0HA.js","./VpnPlanCard-B5Xn3--e.js","./VpnPlansContent.stories-CAnr4IUa.js","./SubscriptionCard.stories-DOfk_HBP.js","./SubscriptionDetails.stories-BlMknBO7.js","./SubscriptionGridCard.stories-zp08ViBs.js","./contract-CH57by1Y.js","./SubscriptionStatusBadge.stories-DhvN9bQ1.js","./SubscriptionTable.stories-Crx6kQDq.js","./ChangePlanModal.stories-lCI6-fC1.js","./DataUsageChart.stories-Cl1vSSZO.js","./ReissueSimModal.stories-CiG8OrwL.js","./SimActions.stories-DbEDRfW_.js","./SimDetailsCard.stories-BduNzX1g.js","./SimFeatureToggles.stories-BKP0N4tw.js","./TopUpModal.stories-vBYsF3Fd.js","./subscription-detail-stats-skeleton.stories-tQl8sJZu.js","./subscription-stats-cards-skeleton.stories-BZw0VqVQ.js","./subscription-table-skeleton.stories-lLgx0vuW.js","./preview-C15U0Fuq.js","./preview-B-CtBlTG.css","./entry-preview-Ccf12ZN0.js","./chunk-XP5HYGXS-BHXC9YeQ.js","./entry-preview-docs-CAgjVEX9.js","./index-DgH-xKnr.js","./preview-B8lJiyuQ.js","./index-DrFu-skq.js","./preview-BWzBA1C2.js"])))=>i.map(i=>d[i]); +(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const i of document.querySelectorAll('link[rel="modulepreload"]'))o(i);new MutationObserver(i=>{for(const a of i)if(a.type==="childList")for(const u of a.addedNodes)u.tagName==="LINK"&&u.rel==="modulepreload"&&o(u)}).observe(document,{childList:!0,subtree:!0});function r(i){const a={};return i.integrity&&(a.integrity=i.integrity),i.referrerPolicy&&(a.referrerPolicy=i.referrerPolicy),i.crossOrigin==="use-credentials"?a.credentials="include":i.crossOrigin==="anonymous"?a.credentials="omit":a.credentials="same-origin",a}function o(i){if(i.ep)return;i.ep=!0;const a=r(i);fetch(i.href,a)}})();const scriptRel="modulepreload",assetsURL=function(t,e){return new URL(t,e).href},seen={},__vitePreload=function(e,r,o){let i=Promise.resolve();if(r&&r.length>0){let u=function(g){return Promise.all(g.map(h=>Promise.resolve(h).then(m=>({status:"fulfilled",value:m}),m=>({status:"rejected",reason:m}))))};const l=document.getElementsByTagName("link"),c=document.querySelector("meta[property=csp-nonce]"),p=(c==null?void 0:c.nonce)||(c==null?void 0:c.getAttribute("nonce"));i=u(r.map(g=>{if(g=assetsURL(g,o),g in seen)return;seen[g]=!0;const h=g.endsWith(".css"),m=h?'[rel="stylesheet"]':"";if(!!o)for(let le=l.length-1;le>=0;le--){const J=l[le];if(J.href===g&&(!h||J.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${g}"]${m}`))return;const ne=document.createElement("link");if(ne.rel=h?"stylesheet":scriptRel,h||(ne.as="script"),ne.crossOrigin="",ne.href=g,p&&ne.setAttribute("nonce",p),document.head.appendChild(ne),h)return new Promise((le,J)=>{ne.addEventListener("load",le),ne.addEventListener("error",()=>J(new Error(`Unable to preload CSS for ${g}`)))})}))}function a(u){const l=new Event("vite:preloadError",{cancelable:!0});if(l.payload=u,window.dispatchEvent(l),!l.defaultPrevented)throw u}return i.then(u=>{for(const l of u||[])l.status==="rejected"&&a(l.reason);return e().catch(a)})};var tl=Object.create,et=Object.defineProperty,ol=Object.getOwnPropertyDescriptor,nl=Object.getOwnPropertyNames,sl=Object.getPrototypeOf,il=Object.prototype.hasOwnProperty,n=(t,e)=>et(t,"name",{value:e,configurable:!0}),cr=(t=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(t,{get:(e,r)=>(typeof require<"u"?require:e)[r]}):t)(function(t){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+t+'" is not supported')}),q=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),_e=(t,e)=>{for(var r in e)et(t,r,{get:e[r],enumerable:!0})},al=(t,e,r,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of nl(e))!il.call(t,i)&&i!==r&&et(t,i,{get:()=>e[i],enumerable:!(o=ol(e,i))||o.enumerable});return t},ue=(t,e,r)=>(r=t!=null?tl(sl(t)):{},al(et(r,"default",{value:t,enumerable:!0}),t)),it=q((t,e)=>{(function(r){if(typeof t=="object"&&typeof e<"u")e.exports=r();else if(typeof define=="function"&&define.amd)define([],r);else{var o;typeof window<"u"?o=window:typeof global<"u"?o=global:typeof self<"u"?o=self:o=this,o.memoizerific=r()}})(function(){return n(function r(o,i,a){function u(p,g){if(!i[p]){if(!o[p]){var h=typeof cr=="function"&&cr;if(!g&&h)return h(p,!0);if(l)return l(p,!0);var m=new Error("Cannot find module '"+p+"'");throw m.code="MODULE_NOT_FOUND",m}var re=i[p]={exports:{}};o[p][0].call(re.exports,function(ne){var le=o[p][1][ne];return u(le||ne)},re,re.exports,r,o,i,a)}return i[p].exports}n(u,"s");for(var l=typeof cr=="function"&&cr,c=0;c=0)return this.lastItem=this.list[l],this.list[l].val},a.prototype.set=function(u,l){var c;return this.lastItem&&this.isEqual(this.lastItem.key,u)?(this.lastItem.val=l,this):(c=this.indexOf(u),c>=0?(this.lastItem=this.list[c],this.list[c].val=l,this):(this.lastItem={key:u,val:l},this.list.push(this.lastItem),this.size++,this))},a.prototype.delete=function(u){var l;if(this.lastItem&&this.isEqual(this.lastItem.key,u)&&(this.lastItem=void 0),l=this.indexOf(u),l>=0)return this.size--,this.list.splice(l,1)[0]},a.prototype.has=function(u){var l;return this.lastItem&&this.isEqual(this.lastItem.key,u)?!0:(l=this.indexOf(u),l>=0?(this.lastItem=this.list[l],!0):!1)},a.prototype.forEach=function(u,l){var c;for(c=0;c0&&(F[ce]={cacheItem:ne,arg:arguments[ce]},se?u(h,F):h.push(F),h.length>p&&l(h.shift())),re.wasMemoized=se,re.numArgs=ce+1,J},"memoizerific");return re.limit=p,re.wasMemoized=!1,re.cache=g,re.lru=h,re}};function u(p,g){var h=p.length,m=g.length,re,ne,le;for(ne=0;ne=0&&(h=p[re],m=h.cacheItem.get(h.arg),!m||!m.size);re--)h.cacheItem.delete(h.arg)}n(l,"removeCachedResult");function c(p,g){return p===g||p!==p&&g!==g}n(c,"isEqual")},{"map-or-similar":1}]},{},[3])(3)})}),wi=q(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.isEqual=(function(){var e=Object.prototype.toString,r=Object.getPrototypeOf,o=Object.getOwnPropertySymbols?function(i){return Object.keys(i).concat(Object.getOwnPropertySymbols(i))}:Object.keys;return function(i,a){return n(function u(l,c,p){var g,h,m,re=e.call(l),ne=e.call(c);if(l===c)return!0;if(l==null||c==null)return!1;if(p.indexOf(l)>-1&&p.indexOf(c)>-1)return!0;if(p.push(l,c),re!=ne||(g=o(l),h=o(c),g.length!=h.length||g.some(function(le){return!u(l[le],c[le],p)})))return!1;switch(re.slice(8,-1)){case"Symbol":return l.valueOf()==c.valueOf();case"Date":case"Number":return+l==+c||+l!=+l&&+c!=+c;case"RegExp":case"Function":case"String":case"Boolean":return""+l==""+c;case"Set":case"Map":g=l.entries(),h=c.entries();do if(!u((m=g.next()).value,h.next().value,p))return!1;while(!m.done);return!0;case"ArrayBuffer":l=new Uint8Array(l),c=new Uint8Array(c);case"DataView":l=new Uint8Array(l.buffer),c=new Uint8Array(c.buffer);case"Float32Array":case"Float64Array":case"Int8Array":case"Int16Array":case"Int32Array":case"Uint8Array":case"Uint16Array":case"Uint32Array":case"Uint8ClampedArray":case"Arguments":case"Array":if(l.length!=c.length)return!1;for(m=0;m{Object.defineProperty(t,"__esModule",{value:!0}),t.encodeString=o;var e=Array.from({length:256},(i,a)=>"%"+((a<16?"0":"")+a.toString(16)).toUpperCase()),r=new Int8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,1,1,1,1,0,0,1,1,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,1,0]);function o(i){let a=i.length;if(a===0)return"";let u="",l=0,c=0;e:for(;c>6]+e[128|p&63];continue}if(p<55296||p>=57344){l=c+1,u+=e[224|p>>12]+e[128|p>>6&63]+e[128|p&63];continue}if(++c,c>=a)throw new Error("URI malformed");let g=i.charCodeAt(c)&1023;l=c+1,p=65536+((p&1023)<<10|g),u+=e[240|p>>18]+e[128|p>>12&63]+e[128|p>>6&63]+e[128|p&63]}return l===0?i:l{Object.defineProperty(t,"__esModule",{value:!0}),t.defaultOptions=t.defaultShouldSerializeObject=t.defaultValueSerializer=void 0;var e=qn(),r=n(a=>{switch(typeof a){case"string":return(0,e.encodeString)(a);case"bigint":case"boolean":return""+a;case"number":if(Number.isFinite(a))return a<1e21?""+a:(0,e.encodeString)(""+a);break}return a instanceof Date?(0,e.encodeString)(a.toISOString()):""},"defaultValueSerializer");t.defaultValueSerializer=r;var o=n(a=>a instanceof Date,"defaultShouldSerializeObject");t.defaultShouldSerializeObject=o;var i=n(a=>a,"identityFunc");t.defaultOptions={nesting:!0,nestingSyntax:"dot",arrayRepeat:!1,arrayRepeatSyntax:"repeat",delimiter:38,valueDeserializer:i,valueSerializer:t.defaultValueSerializer,keyDeserializer:i,shouldSerializeObject:t.defaultShouldSerializeObject}}),Vn=q(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.getDeepObject=i,t.stringifyObject=g;var e=It(),r=qn();function o(h){return h==="__proto__"||h==="constructor"||h==="prototype"}n(o,"isPrototypeKey");function i(h,m,re,ne,le){if(o(m))return h;let J=h[m];return typeof J=="object"&&J!==null?J:!ne&&(le||typeof re=="number"||typeof re=="string"&&re*0===0&&re.indexOf(".")===-1)?h[m]=[]:h[m]={}}n(i,"getDeepObject");var a=20,u="[]",l="[",c="]",p=".";function g(h,m,re=0,ne,le){let{nestingSyntax:J=e.defaultOptions.nestingSyntax,arrayRepeat:ce=e.defaultOptions.arrayRepeat,arrayRepeatSyntax:F=e.defaultOptions.arrayRepeatSyntax,nesting:se=e.defaultOptions.nesting,delimiter:he=e.defaultOptions.delimiter,valueSerializer:qe=e.defaultOptions.valueSerializer,shouldSerializeObject:ve=e.defaultOptions.shouldSerializeObject}=m,we=typeof he=="number"?String.fromCharCode(he):he,Lt=le===!0&&ce,Nt=J==="dot"||J==="js"&&!le;if(re>a)return"";let Ft="",jt=!0,Ve=!1;for(let Dt in h){let d=h[Dt],A;ne?(A=ne,Lt?F==="bracket"&&(A+=u):Nt?(A+=p,A+=Dt):(A+=l,A+=Dt,A+=c)):A=Dt,jt||(Ft+=we),typeof d=="object"&&d!==null&&!ve(d)?(Ve=d.pop!==void 0,(se||ce&&Ve)&&(Ft+=g(d,m,re+1,A,Ve))):(Ft+=(0,r.encodeString)(A),Ft+="=",Ft+=qe(d,Dt)),jt&&(jt=!1)}return Ft}n(g,"stringifyObject")}),na=q((t,e)=>{var r=12,o=0,i=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,6,7,7,7,7,7,7,7,7,7,7,7,7,8,7,7,10,9,9,9,11,4,4,4,4,4,4,4,4,4,4,4,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,24,36,48,60,72,84,96,0,12,12,12,0,0,0,0,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,0,0,24,24,24,0,0,0,0,0,0,0,0,0,24,24,0,0,0,0,0,0,0,0,0,0,48,48,48,0,0,0,0,0,0,0,0,0,0,48,48,0,0,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,0,0,0,127,63,63,63,0,31,15,15,15,7,7,7];function a(c){var p=c.indexOf("%");if(p===-1)return c;for(var g=c.length,h="",m=0,re=0,ne=p,le=r;p>-1&&p>10),56320+(re&1023)),re=0,m=p+3,p=ne=c.indexOf("%",m);else{if(le===o)return null;if(p+=3,p{var e=t&&t.__importDefault||function(h){return h&&h.__esModule?h:{default:h}};Object.defineProperty(t,"__esModule",{value:!0}),t.numberValueDeserializer=t.numberKeyDeserializer=void 0,t.parse=g;var r=Vn(),o=It(),i=e(na()),a=n(h=>{let m=Number(h);return Number.isNaN(m)?h:m},"numberKeyDeserializer");t.numberKeyDeserializer=a;var u=n(h=>{let m=Number(h);return Number.isNaN(m)?h:m},"numberValueDeserializer");t.numberValueDeserializer=u;var l=/\+/g,c=n(function(){},"Empty");c.prototype=Object.create(null);function p(h,m,re,ne,le){let J=h.substring(m,re);return ne&&(J=J.replace(l," ")),le&&(J=(0,i.default)(J)||J),J}n(p,"computeKeySlice");function g(h,m){let{valueDeserializer:re=o.defaultOptions.valueDeserializer,keyDeserializer:ne=o.defaultOptions.keyDeserializer,arrayRepeatSyntax:le=o.defaultOptions.arrayRepeatSyntax,nesting:J=o.defaultOptions.nesting,arrayRepeat:ce=o.defaultOptions.arrayRepeat,nestingSyntax:F=o.defaultOptions.nestingSyntax,delimiter:se=o.defaultOptions.delimiter}=m??{},he=typeof se=="string"?se.charCodeAt(0):se,qe=F==="js",ve=new c;if(typeof h!="string")return ve;let we=h.length,Lt="",Nt=-1,Ft=-1,jt=-1,Ve=ve,Dt,d="",A="",B=!1,pe=!1,de=!1,Bt=!1,Ut=!1,Mt=!1,Vt=!1,Gt=0,lr=-1,zr=-1,Jr=-1;for(let qt=0;qtNt,Vt||(Ft=qt),jt!==Ft-1&&(A=p(h,jt+1,lr>-1?lr:Ft,de,B),d=ne(A),Dt!==void 0&&(Ve=(0,r.getDeepObject)(Ve,Dt,d,qe&&Ut,qe&&Mt))),Vt||d!==""){Vt&&(Lt=h.slice(Ft+1,qt),Bt&&(Lt=Lt.replace(l," ")),pe&&(Lt=(0,i.default)(Lt)||Lt));let Qr=re(Lt,d);if(ce){let Zr=Ve[d];Zr===void 0?lr>-1?Ve[d]=[Qr]:Ve[d]=Qr:Zr.pop?Zr.push(Qr):Ve[d]=[Zr,Qr]}else Ve[d]=Qr}Lt="",Nt=qt,Ft=qt,B=!1,pe=!1,de=!1,Bt=!1,Ut=!1,Mt=!1,lr=-1,jt=qt,Ve=ve,Dt=void 0,d=""}else Gt===93?(ce&&le==="bracket"&&Jr===91&&(lr=zr),J&&(F==="index"||qe)&&Ft<=Nt&&(jt!==zr&&(A=p(h,jt+1,qt,de,B),d=ne(A),Dt!==void 0&&(Ve=(0,r.getDeepObject)(Ve,Dt,d,void 0,qe)),Dt=d,de=!1,B=!1),jt=qt,Mt=!0,Ut=!1)):Gt===46?J&&(F==="dot"||qe)&&Ft<=Nt&&(jt!==zr&&(A=p(h,jt+1,qt,de,B),d=ne(A),Dt!==void 0&&(Ve=(0,r.getDeepObject)(Ve,Dt,d,qe)),Dt=d,de=!1,B=!1),Ut=!0,Mt=!1,jt=qt):Gt===91?J&&(F==="index"||qe)&&Ft<=Nt&&(jt!==zr&&(A=p(h,jt+1,qt,de,B),d=ne(A),qe&&Dt!==void 0&&(Ve=(0,r.getDeepObject)(Ve,Dt,d,qe)),Dt=d,de=!1,B=!1,Ut=!1,Mt=!0),jt=qt):Gt===61?Ft<=Nt?Ft=qt:pe=!0:Gt===43?Ft>Nt?Bt=!0:de=!0:Gt===37&&(Ft>Nt?pe=!0:B=!0);zr=qt,Jr=Gt}return ve}n(g,"parse")}),ca=q(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.stringify=r;var e=Vn();function r(o,i){if(o===null||typeof o!="object")return"";let a=i??{};return(0,e.stringifyObject)(o,a)}n(r,"stringify")}),kt=q(t=>{var e=t&&t.__createBinding||(Object.create?function(a,u,l,c){c===void 0&&(c=l);var p=Object.getOwnPropertyDescriptor(u,l);(!p||("get"in p?!u.__esModule:p.writable||p.configurable))&&(p={enumerable:!0,get:n(function(){return u[l]},"get")}),Object.defineProperty(a,c,p)}:function(a,u,l,c){c===void 0&&(c=l),a[c]=u[l]}),r=t&&t.__exportStar||function(a,u){for(var l in a)l!=="default"&&!Object.prototype.hasOwnProperty.call(u,l)&&e(u,a,l)};Object.defineProperty(t,"__esModule",{value:!0}),t.stringify=t.parse=void 0;var o=la();Object.defineProperty(t,"parse",{enumerable:!0,get:n(function(){return o.parse},"get")});var i=ca();Object.defineProperty(t,"stringify",{enumerable:!0,get:n(function(){return i.stringify},"get")}),r(It(),t)}),Kn=q((t,e)=>{e.exports={Aacute:"Á",aacute:"á",Abreve:"Ă",abreve:"ă",ac:"∾",acd:"∿",acE:"∾̳",Acirc:"Â",acirc:"â",acute:"´",Acy:"А",acy:"а",AElig:"Æ",aelig:"æ",af:"⁡",Afr:"𝔄",afr:"𝔞",Agrave:"À",agrave:"à",alefsym:"ℵ",aleph:"ℵ",Alpha:"Α",alpha:"α",Amacr:"Ā",amacr:"ā",amalg:"⨿",amp:"&",AMP:"&",andand:"⩕",And:"⩓",and:"∧",andd:"⩜",andslope:"⩘",andv:"⩚",ang:"∠",ange:"⦤",angle:"∠",angmsdaa:"⦨",angmsdab:"⦩",angmsdac:"⦪",angmsdad:"⦫",angmsdae:"⦬",angmsdaf:"⦭",angmsdag:"⦮",angmsdah:"⦯",angmsd:"∡",angrt:"∟",angrtvb:"⊾",angrtvbd:"⦝",angsph:"∢",angst:"Å",angzarr:"⍼",Aogon:"Ą",aogon:"ą",Aopf:"𝔸",aopf:"𝕒",apacir:"⩯",ap:"≈",apE:"⩰",ape:"≊",apid:"≋",apos:"'",ApplyFunction:"⁡",approx:"≈",approxeq:"≊",Aring:"Å",aring:"å",Ascr:"𝒜",ascr:"𝒶",Assign:"≔",ast:"*",asymp:"≈",asympeq:"≍",Atilde:"Ã",atilde:"ã",Auml:"Ä",auml:"ä",awconint:"∳",awint:"⨑",backcong:"≌",backepsilon:"϶",backprime:"‵",backsim:"∽",backsimeq:"⋍",Backslash:"∖",Barv:"⫧",barvee:"⊽",barwed:"⌅",Barwed:"⌆",barwedge:"⌅",bbrk:"⎵",bbrktbrk:"⎶",bcong:"≌",Bcy:"Б",bcy:"б",bdquo:"„",becaus:"∵",because:"∵",Because:"∵",bemptyv:"⦰",bepsi:"϶",bernou:"ℬ",Bernoullis:"ℬ",Beta:"Β",beta:"β",beth:"ℶ",between:"≬",Bfr:"𝔅",bfr:"𝔟",bigcap:"⋂",bigcirc:"◯",bigcup:"⋃",bigodot:"⨀",bigoplus:"⨁",bigotimes:"⨂",bigsqcup:"⨆",bigstar:"★",bigtriangledown:"▽",bigtriangleup:"△",biguplus:"⨄",bigvee:"⋁",bigwedge:"⋀",bkarow:"⤍",blacklozenge:"⧫",blacksquare:"▪",blacktriangle:"▴",blacktriangledown:"▾",blacktriangleleft:"◂",blacktriangleright:"▸",blank:"␣",blk12:"▒",blk14:"░",blk34:"▓",block:"█",bne:"=⃥",bnequiv:"≡⃥",bNot:"⫭",bnot:"⌐",Bopf:"𝔹",bopf:"𝕓",bot:"⊥",bottom:"⊥",bowtie:"⋈",boxbox:"⧉",boxdl:"┐",boxdL:"╕",boxDl:"╖",boxDL:"╗",boxdr:"┌",boxdR:"╒",boxDr:"╓",boxDR:"╔",boxh:"─",boxH:"═",boxhd:"┬",boxHd:"╤",boxhD:"╥",boxHD:"╦",boxhu:"┴",boxHu:"╧",boxhU:"╨",boxHU:"╩",boxminus:"⊟",boxplus:"⊞",boxtimes:"⊠",boxul:"┘",boxuL:"╛",boxUl:"╜",boxUL:"╝",boxur:"└",boxuR:"╘",boxUr:"╙",boxUR:"╚",boxv:"│",boxV:"║",boxvh:"┼",boxvH:"╪",boxVh:"╫",boxVH:"╬",boxvl:"┤",boxvL:"╡",boxVl:"╢",boxVL:"╣",boxvr:"├",boxvR:"╞",boxVr:"╟",boxVR:"╠",bprime:"‵",breve:"˘",Breve:"˘",brvbar:"¦",bscr:"𝒷",Bscr:"ℬ",bsemi:"⁏",bsim:"∽",bsime:"⋍",bsolb:"⧅",bsol:"\\",bsolhsub:"⟈",bull:"•",bullet:"•",bump:"≎",bumpE:"⪮",bumpe:"≏",Bumpeq:"≎",bumpeq:"≏",Cacute:"Ć",cacute:"ć",capand:"⩄",capbrcup:"⩉",capcap:"⩋",cap:"∩",Cap:"⋒",capcup:"⩇",capdot:"⩀",CapitalDifferentialD:"ⅅ",caps:"∩︀",caret:"⁁",caron:"ˇ",Cayleys:"ℭ",ccaps:"⩍",Ccaron:"Č",ccaron:"č",Ccedil:"Ç",ccedil:"ç",Ccirc:"Ĉ",ccirc:"ĉ",Cconint:"∰",ccups:"⩌",ccupssm:"⩐",Cdot:"Ċ",cdot:"ċ",cedil:"¸",Cedilla:"¸",cemptyv:"⦲",cent:"¢",centerdot:"·",CenterDot:"·",cfr:"𝔠",Cfr:"ℭ",CHcy:"Ч",chcy:"ч",check:"✓",checkmark:"✓",Chi:"Χ",chi:"χ",circ:"ˆ",circeq:"≗",circlearrowleft:"↺",circlearrowright:"↻",circledast:"⊛",circledcirc:"⊚",circleddash:"⊝",CircleDot:"⊙",circledR:"®",circledS:"Ⓢ",CircleMinus:"⊖",CirclePlus:"⊕",CircleTimes:"⊗",cir:"○",cirE:"⧃",cire:"≗",cirfnint:"⨐",cirmid:"⫯",cirscir:"⧂",ClockwiseContourIntegral:"∲",CloseCurlyDoubleQuote:"”",CloseCurlyQuote:"’",clubs:"♣",clubsuit:"♣",colon:":",Colon:"∷",Colone:"⩴",colone:"≔",coloneq:"≔",comma:",",commat:"@",comp:"∁",compfn:"∘",complement:"∁",complexes:"ℂ",cong:"≅",congdot:"⩭",Congruent:"≡",conint:"∮",Conint:"∯",ContourIntegral:"∮",copf:"𝕔",Copf:"ℂ",coprod:"∐",Coproduct:"∐",copy:"©",COPY:"©",copysr:"℗",CounterClockwiseContourIntegral:"∳",crarr:"↵",cross:"✗",Cross:"⨯",Cscr:"𝒞",cscr:"𝒸",csub:"⫏",csube:"⫑",csup:"⫐",csupe:"⫒",ctdot:"⋯",cudarrl:"⤸",cudarrr:"⤵",cuepr:"⋞",cuesc:"⋟",cularr:"↶",cularrp:"⤽",cupbrcap:"⩈",cupcap:"⩆",CupCap:"≍",cup:"∪",Cup:"⋓",cupcup:"⩊",cupdot:"⊍",cupor:"⩅",cups:"∪︀",curarr:"↷",curarrm:"⤼",curlyeqprec:"⋞",curlyeqsucc:"⋟",curlyvee:"⋎",curlywedge:"⋏",curren:"¤",curvearrowleft:"↶",curvearrowright:"↷",cuvee:"⋎",cuwed:"⋏",cwconint:"∲",cwint:"∱",cylcty:"⌭",dagger:"†",Dagger:"‡",daleth:"ℸ",darr:"↓",Darr:"↡",dArr:"⇓",dash:"‐",Dashv:"⫤",dashv:"⊣",dbkarow:"⤏",dblac:"˝",Dcaron:"Ď",dcaron:"ď",Dcy:"Д",dcy:"д",ddagger:"‡",ddarr:"⇊",DD:"ⅅ",dd:"ⅆ",DDotrahd:"⤑",ddotseq:"⩷",deg:"°",Del:"∇",Delta:"Δ",delta:"δ",demptyv:"⦱",dfisht:"⥿",Dfr:"𝔇",dfr:"𝔡",dHar:"⥥",dharl:"⇃",dharr:"⇂",DiacriticalAcute:"´",DiacriticalDot:"˙",DiacriticalDoubleAcute:"˝",DiacriticalGrave:"`",DiacriticalTilde:"˜",diam:"⋄",diamond:"⋄",Diamond:"⋄",diamondsuit:"♦",diams:"♦",die:"¨",DifferentialD:"ⅆ",digamma:"ϝ",disin:"⋲",div:"÷",divide:"÷",divideontimes:"⋇",divonx:"⋇",DJcy:"Ђ",djcy:"ђ",dlcorn:"⌞",dlcrop:"⌍",dollar:"$",Dopf:"𝔻",dopf:"𝕕",Dot:"¨",dot:"˙",DotDot:"⃜",doteq:"≐",doteqdot:"≑",DotEqual:"≐",dotminus:"∸",dotplus:"∔",dotsquare:"⊡",doublebarwedge:"⌆",DoubleContourIntegral:"∯",DoubleDot:"¨",DoubleDownArrow:"⇓",DoubleLeftArrow:"⇐",DoubleLeftRightArrow:"⇔",DoubleLeftTee:"⫤",DoubleLongLeftArrow:"⟸",DoubleLongLeftRightArrow:"⟺",DoubleLongRightArrow:"⟹",DoubleRightArrow:"⇒",DoubleRightTee:"⊨",DoubleUpArrow:"⇑",DoubleUpDownArrow:"⇕",DoubleVerticalBar:"∥",DownArrowBar:"⤓",downarrow:"↓",DownArrow:"↓",Downarrow:"⇓",DownArrowUpArrow:"⇵",DownBreve:"̑",downdownarrows:"⇊",downharpoonleft:"⇃",downharpoonright:"⇂",DownLeftRightVector:"⥐",DownLeftTeeVector:"⥞",DownLeftVectorBar:"⥖",DownLeftVector:"↽",DownRightTeeVector:"⥟",DownRightVectorBar:"⥗",DownRightVector:"⇁",DownTeeArrow:"↧",DownTee:"⊤",drbkarow:"⤐",drcorn:"⌟",drcrop:"⌌",Dscr:"𝒟",dscr:"𝒹",DScy:"Ѕ",dscy:"ѕ",dsol:"⧶",Dstrok:"Đ",dstrok:"đ",dtdot:"⋱",dtri:"▿",dtrif:"▾",duarr:"⇵",duhar:"⥯",dwangle:"⦦",DZcy:"Џ",dzcy:"џ",dzigrarr:"⟿",Eacute:"É",eacute:"é",easter:"⩮",Ecaron:"Ě",ecaron:"ě",Ecirc:"Ê",ecirc:"ê",ecir:"≖",ecolon:"≕",Ecy:"Э",ecy:"э",eDDot:"⩷",Edot:"Ė",edot:"ė",eDot:"≑",ee:"ⅇ",efDot:"≒",Efr:"𝔈",efr:"𝔢",eg:"⪚",Egrave:"È",egrave:"è",egs:"⪖",egsdot:"⪘",el:"⪙",Element:"∈",elinters:"⏧",ell:"ℓ",els:"⪕",elsdot:"⪗",Emacr:"Ē",emacr:"ē",empty:"∅",emptyset:"∅",EmptySmallSquare:"◻",emptyv:"∅",EmptyVerySmallSquare:"▫",emsp13:" ",emsp14:" ",emsp:" ",ENG:"Ŋ",eng:"ŋ",ensp:" ",Eogon:"Ę",eogon:"ę",Eopf:"𝔼",eopf:"𝕖",epar:"⋕",eparsl:"⧣",eplus:"⩱",epsi:"ε",Epsilon:"Ε",epsilon:"ε",epsiv:"ϵ",eqcirc:"≖",eqcolon:"≕",eqsim:"≂",eqslantgtr:"⪖",eqslantless:"⪕",Equal:"⩵",equals:"=",EqualTilde:"≂",equest:"≟",Equilibrium:"⇌",equiv:"≡",equivDD:"⩸",eqvparsl:"⧥",erarr:"⥱",erDot:"≓",escr:"ℯ",Escr:"ℰ",esdot:"≐",Esim:"⩳",esim:"≂",Eta:"Η",eta:"η",ETH:"Ð",eth:"ð",Euml:"Ë",euml:"ë",euro:"€",excl:"!",exist:"∃",Exists:"∃",expectation:"ℰ",exponentiale:"ⅇ",ExponentialE:"ⅇ",fallingdotseq:"≒",Fcy:"Ф",fcy:"ф",female:"♀",ffilig:"ffi",fflig:"ff",ffllig:"ffl",Ffr:"𝔉",ffr:"𝔣",filig:"fi",FilledSmallSquare:"◼",FilledVerySmallSquare:"▪",fjlig:"fj",flat:"♭",fllig:"fl",fltns:"▱",fnof:"ƒ",Fopf:"𝔽",fopf:"𝕗",forall:"∀",ForAll:"∀",fork:"⋔",forkv:"⫙",Fouriertrf:"ℱ",fpartint:"⨍",frac12:"½",frac13:"⅓",frac14:"¼",frac15:"⅕",frac16:"⅙",frac18:"⅛",frac23:"⅔",frac25:"⅖",frac34:"¾",frac35:"⅗",frac38:"⅜",frac45:"⅘",frac56:"⅚",frac58:"⅝",frac78:"⅞",frasl:"⁄",frown:"⌢",fscr:"𝒻",Fscr:"ℱ",gacute:"ǵ",Gamma:"Γ",gamma:"γ",Gammad:"Ϝ",gammad:"ϝ",gap:"⪆",Gbreve:"Ğ",gbreve:"ğ",Gcedil:"Ģ",Gcirc:"Ĝ",gcirc:"ĝ",Gcy:"Г",gcy:"г",Gdot:"Ġ",gdot:"ġ",ge:"≥",gE:"≧",gEl:"⪌",gel:"⋛",geq:"≥",geqq:"≧",geqslant:"⩾",gescc:"⪩",ges:"⩾",gesdot:"⪀",gesdoto:"⪂",gesdotol:"⪄",gesl:"⋛︀",gesles:"⪔",Gfr:"𝔊",gfr:"𝔤",gg:"≫",Gg:"⋙",ggg:"⋙",gimel:"ℷ",GJcy:"Ѓ",gjcy:"ѓ",gla:"⪥",gl:"≷",glE:"⪒",glj:"⪤",gnap:"⪊",gnapprox:"⪊",gne:"⪈",gnE:"≩",gneq:"⪈",gneqq:"≩",gnsim:"⋧",Gopf:"𝔾",gopf:"𝕘",grave:"`",GreaterEqual:"≥",GreaterEqualLess:"⋛",GreaterFullEqual:"≧",GreaterGreater:"⪢",GreaterLess:"≷",GreaterSlantEqual:"⩾",GreaterTilde:"≳",Gscr:"𝒢",gscr:"ℊ",gsim:"≳",gsime:"⪎",gsiml:"⪐",gtcc:"⪧",gtcir:"⩺",gt:">",GT:">",Gt:"≫",gtdot:"⋗",gtlPar:"⦕",gtquest:"⩼",gtrapprox:"⪆",gtrarr:"⥸",gtrdot:"⋗",gtreqless:"⋛",gtreqqless:"⪌",gtrless:"≷",gtrsim:"≳",gvertneqq:"≩︀",gvnE:"≩︀",Hacek:"ˇ",hairsp:" ",half:"½",hamilt:"ℋ",HARDcy:"Ъ",hardcy:"ъ",harrcir:"⥈",harr:"↔",hArr:"⇔",harrw:"↭",Hat:"^",hbar:"ℏ",Hcirc:"Ĥ",hcirc:"ĥ",hearts:"♥",heartsuit:"♥",hellip:"…",hercon:"⊹",hfr:"𝔥",Hfr:"ℌ",HilbertSpace:"ℋ",hksearow:"⤥",hkswarow:"⤦",hoarr:"⇿",homtht:"∻",hookleftarrow:"↩",hookrightarrow:"↪",hopf:"𝕙",Hopf:"ℍ",horbar:"―",HorizontalLine:"─",hscr:"𝒽",Hscr:"ℋ",hslash:"ℏ",Hstrok:"Ħ",hstrok:"ħ",HumpDownHump:"≎",HumpEqual:"≏",hybull:"⁃",hyphen:"‐",Iacute:"Í",iacute:"í",ic:"⁣",Icirc:"Î",icirc:"î",Icy:"И",icy:"и",Idot:"İ",IEcy:"Е",iecy:"е",iexcl:"¡",iff:"⇔",ifr:"𝔦",Ifr:"ℑ",Igrave:"Ì",igrave:"ì",ii:"ⅈ",iiiint:"⨌",iiint:"∭",iinfin:"⧜",iiota:"℩",IJlig:"IJ",ijlig:"ij",Imacr:"Ī",imacr:"ī",image:"ℑ",ImaginaryI:"ⅈ",imagline:"ℐ",imagpart:"ℑ",imath:"ı",Im:"ℑ",imof:"⊷",imped:"Ƶ",Implies:"⇒",incare:"℅",in:"∈",infin:"∞",infintie:"⧝",inodot:"ı",intcal:"⊺",int:"∫",Int:"∬",integers:"ℤ",Integral:"∫",intercal:"⊺",Intersection:"⋂",intlarhk:"⨗",intprod:"⨼",InvisibleComma:"⁣",InvisibleTimes:"⁢",IOcy:"Ё",iocy:"ё",Iogon:"Į",iogon:"į",Iopf:"𝕀",iopf:"𝕚",Iota:"Ι",iota:"ι",iprod:"⨼",iquest:"¿",iscr:"𝒾",Iscr:"ℐ",isin:"∈",isindot:"⋵",isinE:"⋹",isins:"⋴",isinsv:"⋳",isinv:"∈",it:"⁢",Itilde:"Ĩ",itilde:"ĩ",Iukcy:"І",iukcy:"і",Iuml:"Ï",iuml:"ï",Jcirc:"Ĵ",jcirc:"ĵ",Jcy:"Й",jcy:"й",Jfr:"𝔍",jfr:"𝔧",jmath:"ȷ",Jopf:"𝕁",jopf:"𝕛",Jscr:"𝒥",jscr:"𝒿",Jsercy:"Ј",jsercy:"ј",Jukcy:"Є",jukcy:"є",Kappa:"Κ",kappa:"κ",kappav:"ϰ",Kcedil:"Ķ",kcedil:"ķ",Kcy:"К",kcy:"к",Kfr:"𝔎",kfr:"𝔨",kgreen:"ĸ",KHcy:"Х",khcy:"х",KJcy:"Ќ",kjcy:"ќ",Kopf:"𝕂",kopf:"𝕜",Kscr:"𝒦",kscr:"𝓀",lAarr:"⇚",Lacute:"Ĺ",lacute:"ĺ",laemptyv:"⦴",lagran:"ℒ",Lambda:"Λ",lambda:"λ",lang:"⟨",Lang:"⟪",langd:"⦑",langle:"⟨",lap:"⪅",Laplacetrf:"ℒ",laquo:"«",larrb:"⇤",larrbfs:"⤟",larr:"←",Larr:"↞",lArr:"⇐",larrfs:"⤝",larrhk:"↩",larrlp:"↫",larrpl:"⤹",larrsim:"⥳",larrtl:"↢",latail:"⤙",lAtail:"⤛",lat:"⪫",late:"⪭",lates:"⪭︀",lbarr:"⤌",lBarr:"⤎",lbbrk:"❲",lbrace:"{",lbrack:"[",lbrke:"⦋",lbrksld:"⦏",lbrkslu:"⦍",Lcaron:"Ľ",lcaron:"ľ",Lcedil:"Ļ",lcedil:"ļ",lceil:"⌈",lcub:"{",Lcy:"Л",lcy:"л",ldca:"⤶",ldquo:"“",ldquor:"„",ldrdhar:"⥧",ldrushar:"⥋",ldsh:"↲",le:"≤",lE:"≦",LeftAngleBracket:"⟨",LeftArrowBar:"⇤",leftarrow:"←",LeftArrow:"←",Leftarrow:"⇐",LeftArrowRightArrow:"⇆",leftarrowtail:"↢",LeftCeiling:"⌈",LeftDoubleBracket:"⟦",LeftDownTeeVector:"⥡",LeftDownVectorBar:"⥙",LeftDownVector:"⇃",LeftFloor:"⌊",leftharpoondown:"↽",leftharpoonup:"↼",leftleftarrows:"⇇",leftrightarrow:"↔",LeftRightArrow:"↔",Leftrightarrow:"⇔",leftrightarrows:"⇆",leftrightharpoons:"⇋",leftrightsquigarrow:"↭",LeftRightVector:"⥎",LeftTeeArrow:"↤",LeftTee:"⊣",LeftTeeVector:"⥚",leftthreetimes:"⋋",LeftTriangleBar:"⧏",LeftTriangle:"⊲",LeftTriangleEqual:"⊴",LeftUpDownVector:"⥑",LeftUpTeeVector:"⥠",LeftUpVectorBar:"⥘",LeftUpVector:"↿",LeftVectorBar:"⥒",LeftVector:"↼",lEg:"⪋",leg:"⋚",leq:"≤",leqq:"≦",leqslant:"⩽",lescc:"⪨",les:"⩽",lesdot:"⩿",lesdoto:"⪁",lesdotor:"⪃",lesg:"⋚︀",lesges:"⪓",lessapprox:"⪅",lessdot:"⋖",lesseqgtr:"⋚",lesseqqgtr:"⪋",LessEqualGreater:"⋚",LessFullEqual:"≦",LessGreater:"≶",lessgtr:"≶",LessLess:"⪡",lesssim:"≲",LessSlantEqual:"⩽",LessTilde:"≲",lfisht:"⥼",lfloor:"⌊",Lfr:"𝔏",lfr:"𝔩",lg:"≶",lgE:"⪑",lHar:"⥢",lhard:"↽",lharu:"↼",lharul:"⥪",lhblk:"▄",LJcy:"Љ",ljcy:"љ",llarr:"⇇",ll:"≪",Ll:"⋘",llcorner:"⌞",Lleftarrow:"⇚",llhard:"⥫",lltri:"◺",Lmidot:"Ŀ",lmidot:"ŀ",lmoustache:"⎰",lmoust:"⎰",lnap:"⪉",lnapprox:"⪉",lne:"⪇",lnE:"≨",lneq:"⪇",lneqq:"≨",lnsim:"⋦",loang:"⟬",loarr:"⇽",lobrk:"⟦",longleftarrow:"⟵",LongLeftArrow:"⟵",Longleftarrow:"⟸",longleftrightarrow:"⟷",LongLeftRightArrow:"⟷",Longleftrightarrow:"⟺",longmapsto:"⟼",longrightarrow:"⟶",LongRightArrow:"⟶",Longrightarrow:"⟹",looparrowleft:"↫",looparrowright:"↬",lopar:"⦅",Lopf:"𝕃",lopf:"𝕝",loplus:"⨭",lotimes:"⨴",lowast:"∗",lowbar:"_",LowerLeftArrow:"↙",LowerRightArrow:"↘",loz:"◊",lozenge:"◊",lozf:"⧫",lpar:"(",lparlt:"⦓",lrarr:"⇆",lrcorner:"⌟",lrhar:"⇋",lrhard:"⥭",lrm:"‎",lrtri:"⊿",lsaquo:"‹",lscr:"𝓁",Lscr:"ℒ",lsh:"↰",Lsh:"↰",lsim:"≲",lsime:"⪍",lsimg:"⪏",lsqb:"[",lsquo:"‘",lsquor:"‚",Lstrok:"Ł",lstrok:"ł",ltcc:"⪦",ltcir:"⩹",lt:"<",LT:"<",Lt:"≪",ltdot:"⋖",lthree:"⋋",ltimes:"⋉",ltlarr:"⥶",ltquest:"⩻",ltri:"◃",ltrie:"⊴",ltrif:"◂",ltrPar:"⦖",lurdshar:"⥊",luruhar:"⥦",lvertneqq:"≨︀",lvnE:"≨︀",macr:"¯",male:"♂",malt:"✠",maltese:"✠",Map:"⤅",map:"↦",mapsto:"↦",mapstodown:"↧",mapstoleft:"↤",mapstoup:"↥",marker:"▮",mcomma:"⨩",Mcy:"М",mcy:"м",mdash:"—",mDDot:"∺",measuredangle:"∡",MediumSpace:" ",Mellintrf:"ℳ",Mfr:"𝔐",mfr:"𝔪",mho:"℧",micro:"µ",midast:"*",midcir:"⫰",mid:"∣",middot:"·",minusb:"⊟",minus:"−",minusd:"∸",minusdu:"⨪",MinusPlus:"∓",mlcp:"⫛",mldr:"…",mnplus:"∓",models:"⊧",Mopf:"𝕄",mopf:"𝕞",mp:"∓",mscr:"𝓂",Mscr:"ℳ",mstpos:"∾",Mu:"Μ",mu:"μ",multimap:"⊸",mumap:"⊸",nabla:"∇",Nacute:"Ń",nacute:"ń",nang:"∠⃒",nap:"≉",napE:"⩰̸",napid:"≋̸",napos:"ʼn",napprox:"≉",natural:"♮",naturals:"ℕ",natur:"♮",nbsp:" ",nbump:"≎̸",nbumpe:"≏̸",ncap:"⩃",Ncaron:"Ň",ncaron:"ň",Ncedil:"Ņ",ncedil:"ņ",ncong:"≇",ncongdot:"⩭̸",ncup:"⩂",Ncy:"Н",ncy:"н",ndash:"–",nearhk:"⤤",nearr:"↗",neArr:"⇗",nearrow:"↗",ne:"≠",nedot:"≐̸",NegativeMediumSpace:"​",NegativeThickSpace:"​",NegativeThinSpace:"​",NegativeVeryThinSpace:"​",nequiv:"≢",nesear:"⤨",nesim:"≂̸",NestedGreaterGreater:"≫",NestedLessLess:"≪",NewLine:` +`,nexist:"∄",nexists:"∄",Nfr:"𝔑",nfr:"𝔫",ngE:"≧̸",nge:"≱",ngeq:"≱",ngeqq:"≧̸",ngeqslant:"⩾̸",nges:"⩾̸",nGg:"⋙̸",ngsim:"≵",nGt:"≫⃒",ngt:"≯",ngtr:"≯",nGtv:"≫̸",nharr:"↮",nhArr:"⇎",nhpar:"⫲",ni:"∋",nis:"⋼",nisd:"⋺",niv:"∋",NJcy:"Њ",njcy:"њ",nlarr:"↚",nlArr:"⇍",nldr:"‥",nlE:"≦̸",nle:"≰",nleftarrow:"↚",nLeftarrow:"⇍",nleftrightarrow:"↮",nLeftrightarrow:"⇎",nleq:"≰",nleqq:"≦̸",nleqslant:"⩽̸",nles:"⩽̸",nless:"≮",nLl:"⋘̸",nlsim:"≴",nLt:"≪⃒",nlt:"≮",nltri:"⋪",nltrie:"⋬",nLtv:"≪̸",nmid:"∤",NoBreak:"⁠",NonBreakingSpace:" ",nopf:"𝕟",Nopf:"ℕ",Not:"⫬",not:"¬",NotCongruent:"≢",NotCupCap:"≭",NotDoubleVerticalBar:"∦",NotElement:"∉",NotEqual:"≠",NotEqualTilde:"≂̸",NotExists:"∄",NotGreater:"≯",NotGreaterEqual:"≱",NotGreaterFullEqual:"≧̸",NotGreaterGreater:"≫̸",NotGreaterLess:"≹",NotGreaterSlantEqual:"⩾̸",NotGreaterTilde:"≵",NotHumpDownHump:"≎̸",NotHumpEqual:"≏̸",notin:"∉",notindot:"⋵̸",notinE:"⋹̸",notinva:"∉",notinvb:"⋷",notinvc:"⋶",NotLeftTriangleBar:"⧏̸",NotLeftTriangle:"⋪",NotLeftTriangleEqual:"⋬",NotLess:"≮",NotLessEqual:"≰",NotLessGreater:"≸",NotLessLess:"≪̸",NotLessSlantEqual:"⩽̸",NotLessTilde:"≴",NotNestedGreaterGreater:"⪢̸",NotNestedLessLess:"⪡̸",notni:"∌",notniva:"∌",notnivb:"⋾",notnivc:"⋽",NotPrecedes:"⊀",NotPrecedesEqual:"⪯̸",NotPrecedesSlantEqual:"⋠",NotReverseElement:"∌",NotRightTriangleBar:"⧐̸",NotRightTriangle:"⋫",NotRightTriangleEqual:"⋭",NotSquareSubset:"⊏̸",NotSquareSubsetEqual:"⋢",NotSquareSuperset:"⊐̸",NotSquareSupersetEqual:"⋣",NotSubset:"⊂⃒",NotSubsetEqual:"⊈",NotSucceeds:"⊁",NotSucceedsEqual:"⪰̸",NotSucceedsSlantEqual:"⋡",NotSucceedsTilde:"≿̸",NotSuperset:"⊃⃒",NotSupersetEqual:"⊉",NotTilde:"≁",NotTildeEqual:"≄",NotTildeFullEqual:"≇",NotTildeTilde:"≉",NotVerticalBar:"∤",nparallel:"∦",npar:"∦",nparsl:"⫽⃥",npart:"∂̸",npolint:"⨔",npr:"⊀",nprcue:"⋠",nprec:"⊀",npreceq:"⪯̸",npre:"⪯̸",nrarrc:"⤳̸",nrarr:"↛",nrArr:"⇏",nrarrw:"↝̸",nrightarrow:"↛",nRightarrow:"⇏",nrtri:"⋫",nrtrie:"⋭",nsc:"⊁",nsccue:"⋡",nsce:"⪰̸",Nscr:"𝒩",nscr:"𝓃",nshortmid:"∤",nshortparallel:"∦",nsim:"≁",nsime:"≄",nsimeq:"≄",nsmid:"∤",nspar:"∦",nsqsube:"⋢",nsqsupe:"⋣",nsub:"⊄",nsubE:"⫅̸",nsube:"⊈",nsubset:"⊂⃒",nsubseteq:"⊈",nsubseteqq:"⫅̸",nsucc:"⊁",nsucceq:"⪰̸",nsup:"⊅",nsupE:"⫆̸",nsupe:"⊉",nsupset:"⊃⃒",nsupseteq:"⊉",nsupseteqq:"⫆̸",ntgl:"≹",Ntilde:"Ñ",ntilde:"ñ",ntlg:"≸",ntriangleleft:"⋪",ntrianglelefteq:"⋬",ntriangleright:"⋫",ntrianglerighteq:"⋭",Nu:"Ν",nu:"ν",num:"#",numero:"№",numsp:" ",nvap:"≍⃒",nvdash:"⊬",nvDash:"⊭",nVdash:"⊮",nVDash:"⊯",nvge:"≥⃒",nvgt:">⃒",nvHarr:"⤄",nvinfin:"⧞",nvlArr:"⤂",nvle:"≤⃒",nvlt:"<⃒",nvltrie:"⊴⃒",nvrArr:"⤃",nvrtrie:"⊵⃒",nvsim:"∼⃒",nwarhk:"⤣",nwarr:"↖",nwArr:"⇖",nwarrow:"↖",nwnear:"⤧",Oacute:"Ó",oacute:"ó",oast:"⊛",Ocirc:"Ô",ocirc:"ô",ocir:"⊚",Ocy:"О",ocy:"о",odash:"⊝",Odblac:"Ő",odblac:"ő",odiv:"⨸",odot:"⊙",odsold:"⦼",OElig:"Œ",oelig:"œ",ofcir:"⦿",Ofr:"𝔒",ofr:"𝔬",ogon:"˛",Ograve:"Ò",ograve:"ò",ogt:"⧁",ohbar:"⦵",ohm:"Ω",oint:"∮",olarr:"↺",olcir:"⦾",olcross:"⦻",oline:"‾",olt:"⧀",Omacr:"Ō",omacr:"ō",Omega:"Ω",omega:"ω",Omicron:"Ο",omicron:"ο",omid:"⦶",ominus:"⊖",Oopf:"𝕆",oopf:"𝕠",opar:"⦷",OpenCurlyDoubleQuote:"“",OpenCurlyQuote:"‘",operp:"⦹",oplus:"⊕",orarr:"↻",Or:"⩔",or:"∨",ord:"⩝",order:"ℴ",orderof:"ℴ",ordf:"ª",ordm:"º",origof:"⊶",oror:"⩖",orslope:"⩗",orv:"⩛",oS:"Ⓢ",Oscr:"𝒪",oscr:"ℴ",Oslash:"Ø",oslash:"ø",osol:"⊘",Otilde:"Õ",otilde:"õ",otimesas:"⨶",Otimes:"⨷",otimes:"⊗",Ouml:"Ö",ouml:"ö",ovbar:"⌽",OverBar:"‾",OverBrace:"⏞",OverBracket:"⎴",OverParenthesis:"⏜",para:"¶",parallel:"∥",par:"∥",parsim:"⫳",parsl:"⫽",part:"∂",PartialD:"∂",Pcy:"П",pcy:"п",percnt:"%",period:".",permil:"‰",perp:"⊥",pertenk:"‱",Pfr:"𝔓",pfr:"𝔭",Phi:"Φ",phi:"φ",phiv:"ϕ",phmmat:"ℳ",phone:"☎",Pi:"Π",pi:"π",pitchfork:"⋔",piv:"ϖ",planck:"ℏ",planckh:"ℎ",plankv:"ℏ",plusacir:"⨣",plusb:"⊞",pluscir:"⨢",plus:"+",plusdo:"∔",plusdu:"⨥",pluse:"⩲",PlusMinus:"±",plusmn:"±",plussim:"⨦",plustwo:"⨧",pm:"±",Poincareplane:"ℌ",pointint:"⨕",popf:"𝕡",Popf:"ℙ",pound:"£",prap:"⪷",Pr:"⪻",pr:"≺",prcue:"≼",precapprox:"⪷",prec:"≺",preccurlyeq:"≼",Precedes:"≺",PrecedesEqual:"⪯",PrecedesSlantEqual:"≼",PrecedesTilde:"≾",preceq:"⪯",precnapprox:"⪹",precneqq:"⪵",precnsim:"⋨",pre:"⪯",prE:"⪳",precsim:"≾",prime:"′",Prime:"″",primes:"ℙ",prnap:"⪹",prnE:"⪵",prnsim:"⋨",prod:"∏",Product:"∏",profalar:"⌮",profline:"⌒",profsurf:"⌓",prop:"∝",Proportional:"∝",Proportion:"∷",propto:"∝",prsim:"≾",prurel:"⊰",Pscr:"𝒫",pscr:"𝓅",Psi:"Ψ",psi:"ψ",puncsp:" ",Qfr:"𝔔",qfr:"𝔮",qint:"⨌",qopf:"𝕢",Qopf:"ℚ",qprime:"⁗",Qscr:"𝒬",qscr:"𝓆",quaternions:"ℍ",quatint:"⨖",quest:"?",questeq:"≟",quot:'"',QUOT:'"',rAarr:"⇛",race:"∽̱",Racute:"Ŕ",racute:"ŕ",radic:"√",raemptyv:"⦳",rang:"⟩",Rang:"⟫",rangd:"⦒",range:"⦥",rangle:"⟩",raquo:"»",rarrap:"⥵",rarrb:"⇥",rarrbfs:"⤠",rarrc:"⤳",rarr:"→",Rarr:"↠",rArr:"⇒",rarrfs:"⤞",rarrhk:"↪",rarrlp:"↬",rarrpl:"⥅",rarrsim:"⥴",Rarrtl:"⤖",rarrtl:"↣",rarrw:"↝",ratail:"⤚",rAtail:"⤜",ratio:"∶",rationals:"ℚ",rbarr:"⤍",rBarr:"⤏",RBarr:"⤐",rbbrk:"❳",rbrace:"}",rbrack:"]",rbrke:"⦌",rbrksld:"⦎",rbrkslu:"⦐",Rcaron:"Ř",rcaron:"ř",Rcedil:"Ŗ",rcedil:"ŗ",rceil:"⌉",rcub:"}",Rcy:"Р",rcy:"р",rdca:"⤷",rdldhar:"⥩",rdquo:"”",rdquor:"”",rdsh:"↳",real:"ℜ",realine:"ℛ",realpart:"ℜ",reals:"ℝ",Re:"ℜ",rect:"▭",reg:"®",REG:"®",ReverseElement:"∋",ReverseEquilibrium:"⇋",ReverseUpEquilibrium:"⥯",rfisht:"⥽",rfloor:"⌋",rfr:"𝔯",Rfr:"ℜ",rHar:"⥤",rhard:"⇁",rharu:"⇀",rharul:"⥬",Rho:"Ρ",rho:"ρ",rhov:"ϱ",RightAngleBracket:"⟩",RightArrowBar:"⇥",rightarrow:"→",RightArrow:"→",Rightarrow:"⇒",RightArrowLeftArrow:"⇄",rightarrowtail:"↣",RightCeiling:"⌉",RightDoubleBracket:"⟧",RightDownTeeVector:"⥝",RightDownVectorBar:"⥕",RightDownVector:"⇂",RightFloor:"⌋",rightharpoondown:"⇁",rightharpoonup:"⇀",rightleftarrows:"⇄",rightleftharpoons:"⇌",rightrightarrows:"⇉",rightsquigarrow:"↝",RightTeeArrow:"↦",RightTee:"⊢",RightTeeVector:"⥛",rightthreetimes:"⋌",RightTriangleBar:"⧐",RightTriangle:"⊳",RightTriangleEqual:"⊵",RightUpDownVector:"⥏",RightUpTeeVector:"⥜",RightUpVectorBar:"⥔",RightUpVector:"↾",RightVectorBar:"⥓",RightVector:"⇀",ring:"˚",risingdotseq:"≓",rlarr:"⇄",rlhar:"⇌",rlm:"‏",rmoustache:"⎱",rmoust:"⎱",rnmid:"⫮",roang:"⟭",roarr:"⇾",robrk:"⟧",ropar:"⦆",ropf:"𝕣",Ropf:"ℝ",roplus:"⨮",rotimes:"⨵",RoundImplies:"⥰",rpar:")",rpargt:"⦔",rppolint:"⨒",rrarr:"⇉",Rrightarrow:"⇛",rsaquo:"›",rscr:"𝓇",Rscr:"ℛ",rsh:"↱",Rsh:"↱",rsqb:"]",rsquo:"’",rsquor:"’",rthree:"⋌",rtimes:"⋊",rtri:"▹",rtrie:"⊵",rtrif:"▸",rtriltri:"⧎",RuleDelayed:"⧴",ruluhar:"⥨",rx:"℞",Sacute:"Ś",sacute:"ś",sbquo:"‚",scap:"⪸",Scaron:"Š",scaron:"š",Sc:"⪼",sc:"≻",sccue:"≽",sce:"⪰",scE:"⪴",Scedil:"Ş",scedil:"ş",Scirc:"Ŝ",scirc:"ŝ",scnap:"⪺",scnE:"⪶",scnsim:"⋩",scpolint:"⨓",scsim:"≿",Scy:"С",scy:"с",sdotb:"⊡",sdot:"⋅",sdote:"⩦",searhk:"⤥",searr:"↘",seArr:"⇘",searrow:"↘",sect:"§",semi:";",seswar:"⤩",setminus:"∖",setmn:"∖",sext:"✶",Sfr:"𝔖",sfr:"𝔰",sfrown:"⌢",sharp:"♯",SHCHcy:"Щ",shchcy:"щ",SHcy:"Ш",shcy:"ш",ShortDownArrow:"↓",ShortLeftArrow:"←",shortmid:"∣",shortparallel:"∥",ShortRightArrow:"→",ShortUpArrow:"↑",shy:"­",Sigma:"Σ",sigma:"σ",sigmaf:"ς",sigmav:"ς",sim:"∼",simdot:"⩪",sime:"≃",simeq:"≃",simg:"⪞",simgE:"⪠",siml:"⪝",simlE:"⪟",simne:"≆",simplus:"⨤",simrarr:"⥲",slarr:"←",SmallCircle:"∘",smallsetminus:"∖",smashp:"⨳",smeparsl:"⧤",smid:"∣",smile:"⌣",smt:"⪪",smte:"⪬",smtes:"⪬︀",SOFTcy:"Ь",softcy:"ь",solbar:"⌿",solb:"⧄",sol:"/",Sopf:"𝕊",sopf:"𝕤",spades:"♠",spadesuit:"♠",spar:"∥",sqcap:"⊓",sqcaps:"⊓︀",sqcup:"⊔",sqcups:"⊔︀",Sqrt:"√",sqsub:"⊏",sqsube:"⊑",sqsubset:"⊏",sqsubseteq:"⊑",sqsup:"⊐",sqsupe:"⊒",sqsupset:"⊐",sqsupseteq:"⊒",square:"□",Square:"□",SquareIntersection:"⊓",SquareSubset:"⊏",SquareSubsetEqual:"⊑",SquareSuperset:"⊐",SquareSupersetEqual:"⊒",SquareUnion:"⊔",squarf:"▪",squ:"□",squf:"▪",srarr:"→",Sscr:"𝒮",sscr:"𝓈",ssetmn:"∖",ssmile:"⌣",sstarf:"⋆",Star:"⋆",star:"☆",starf:"★",straightepsilon:"ϵ",straightphi:"ϕ",strns:"¯",sub:"⊂",Sub:"⋐",subdot:"⪽",subE:"⫅",sube:"⊆",subedot:"⫃",submult:"⫁",subnE:"⫋",subne:"⊊",subplus:"⪿",subrarr:"⥹",subset:"⊂",Subset:"⋐",subseteq:"⊆",subseteqq:"⫅",SubsetEqual:"⊆",subsetneq:"⊊",subsetneqq:"⫋",subsim:"⫇",subsub:"⫕",subsup:"⫓",succapprox:"⪸",succ:"≻",succcurlyeq:"≽",Succeeds:"≻",SucceedsEqual:"⪰",SucceedsSlantEqual:"≽",SucceedsTilde:"≿",succeq:"⪰",succnapprox:"⪺",succneqq:"⪶",succnsim:"⋩",succsim:"≿",SuchThat:"∋",sum:"∑",Sum:"∑",sung:"♪",sup1:"¹",sup2:"²",sup3:"³",sup:"⊃",Sup:"⋑",supdot:"⪾",supdsub:"⫘",supE:"⫆",supe:"⊇",supedot:"⫄",Superset:"⊃",SupersetEqual:"⊇",suphsol:"⟉",suphsub:"⫗",suplarr:"⥻",supmult:"⫂",supnE:"⫌",supne:"⊋",supplus:"⫀",supset:"⊃",Supset:"⋑",supseteq:"⊇",supseteqq:"⫆",supsetneq:"⊋",supsetneqq:"⫌",supsim:"⫈",supsub:"⫔",supsup:"⫖",swarhk:"⤦",swarr:"↙",swArr:"⇙",swarrow:"↙",swnwar:"⤪",szlig:"ß",Tab:" ",target:"⌖",Tau:"Τ",tau:"τ",tbrk:"⎴",Tcaron:"Ť",tcaron:"ť",Tcedil:"Ţ",tcedil:"ţ",Tcy:"Т",tcy:"т",tdot:"⃛",telrec:"⌕",Tfr:"𝔗",tfr:"𝔱",there4:"∴",therefore:"∴",Therefore:"∴",Theta:"Θ",theta:"θ",thetasym:"ϑ",thetav:"ϑ",thickapprox:"≈",thicksim:"∼",ThickSpace:"  ",ThinSpace:" ",thinsp:" ",thkap:"≈",thksim:"∼",THORN:"Þ",thorn:"þ",tilde:"˜",Tilde:"∼",TildeEqual:"≃",TildeFullEqual:"≅",TildeTilde:"≈",timesbar:"⨱",timesb:"⊠",times:"×",timesd:"⨰",tint:"∭",toea:"⤨",topbot:"⌶",topcir:"⫱",top:"⊤",Topf:"𝕋",topf:"𝕥",topfork:"⫚",tosa:"⤩",tprime:"‴",trade:"™",TRADE:"™",triangle:"▵",triangledown:"▿",triangleleft:"◃",trianglelefteq:"⊴",triangleq:"≜",triangleright:"▹",trianglerighteq:"⊵",tridot:"◬",trie:"≜",triminus:"⨺",TripleDot:"⃛",triplus:"⨹",trisb:"⧍",tritime:"⨻",trpezium:"⏢",Tscr:"𝒯",tscr:"𝓉",TScy:"Ц",tscy:"ц",TSHcy:"Ћ",tshcy:"ћ",Tstrok:"Ŧ",tstrok:"ŧ",twixt:"≬",twoheadleftarrow:"↞",twoheadrightarrow:"↠",Uacute:"Ú",uacute:"ú",uarr:"↑",Uarr:"↟",uArr:"⇑",Uarrocir:"⥉",Ubrcy:"Ў",ubrcy:"ў",Ubreve:"Ŭ",ubreve:"ŭ",Ucirc:"Û",ucirc:"û",Ucy:"У",ucy:"у",udarr:"⇅",Udblac:"Ű",udblac:"ű",udhar:"⥮",ufisht:"⥾",Ufr:"𝔘",ufr:"𝔲",Ugrave:"Ù",ugrave:"ù",uHar:"⥣",uharl:"↿",uharr:"↾",uhblk:"▀",ulcorn:"⌜",ulcorner:"⌜",ulcrop:"⌏",ultri:"◸",Umacr:"Ū",umacr:"ū",uml:"¨",UnderBar:"_",UnderBrace:"⏟",UnderBracket:"⎵",UnderParenthesis:"⏝",Union:"⋃",UnionPlus:"⊎",Uogon:"Ų",uogon:"ų",Uopf:"𝕌",uopf:"𝕦",UpArrowBar:"⤒",uparrow:"↑",UpArrow:"↑",Uparrow:"⇑",UpArrowDownArrow:"⇅",updownarrow:"↕",UpDownArrow:"↕",Updownarrow:"⇕",UpEquilibrium:"⥮",upharpoonleft:"↿",upharpoonright:"↾",uplus:"⊎",UpperLeftArrow:"↖",UpperRightArrow:"↗",upsi:"υ",Upsi:"ϒ",upsih:"ϒ",Upsilon:"Υ",upsilon:"υ",UpTeeArrow:"↥",UpTee:"⊥",upuparrows:"⇈",urcorn:"⌝",urcorner:"⌝",urcrop:"⌎",Uring:"Ů",uring:"ů",urtri:"◹",Uscr:"𝒰",uscr:"𝓊",utdot:"⋰",Utilde:"Ũ",utilde:"ũ",utri:"▵",utrif:"▴",uuarr:"⇈",Uuml:"Ü",uuml:"ü",uwangle:"⦧",vangrt:"⦜",varepsilon:"ϵ",varkappa:"ϰ",varnothing:"∅",varphi:"ϕ",varpi:"ϖ",varpropto:"∝",varr:"↕",vArr:"⇕",varrho:"ϱ",varsigma:"ς",varsubsetneq:"⊊︀",varsubsetneqq:"⫋︀",varsupsetneq:"⊋︀",varsupsetneqq:"⫌︀",vartheta:"ϑ",vartriangleleft:"⊲",vartriangleright:"⊳",vBar:"⫨",Vbar:"⫫",vBarv:"⫩",Vcy:"В",vcy:"в",vdash:"⊢",vDash:"⊨",Vdash:"⊩",VDash:"⊫",Vdashl:"⫦",veebar:"⊻",vee:"∨",Vee:"⋁",veeeq:"≚",vellip:"⋮",verbar:"|",Verbar:"‖",vert:"|",Vert:"‖",VerticalBar:"∣",VerticalLine:"|",VerticalSeparator:"❘",VerticalTilde:"≀",VeryThinSpace:" ",Vfr:"𝔙",vfr:"𝔳",vltri:"⊲",vnsub:"⊂⃒",vnsup:"⊃⃒",Vopf:"𝕍",vopf:"𝕧",vprop:"∝",vrtri:"⊳",Vscr:"𝒱",vscr:"𝓋",vsubnE:"⫋︀",vsubne:"⊊︀",vsupnE:"⫌︀",vsupne:"⊋︀",Vvdash:"⊪",vzigzag:"⦚",Wcirc:"Ŵ",wcirc:"ŵ",wedbar:"⩟",wedge:"∧",Wedge:"⋀",wedgeq:"≙",weierp:"℘",Wfr:"𝔚",wfr:"𝔴",Wopf:"𝕎",wopf:"𝕨",wp:"℘",wr:"≀",wreath:"≀",Wscr:"𝒲",wscr:"𝓌",xcap:"⋂",xcirc:"◯",xcup:"⋃",xdtri:"▽",Xfr:"𝔛",xfr:"𝔵",xharr:"⟷",xhArr:"⟺",Xi:"Ξ",xi:"ξ",xlarr:"⟵",xlArr:"⟸",xmap:"⟼",xnis:"⋻",xodot:"⨀",Xopf:"𝕏",xopf:"𝕩",xoplus:"⨁",xotime:"⨂",xrarr:"⟶",xrArr:"⟹",Xscr:"𝒳",xscr:"𝓍",xsqcup:"⨆",xuplus:"⨄",xutri:"△",xvee:"⋁",xwedge:"⋀",Yacute:"Ý",yacute:"ý",YAcy:"Я",yacy:"я",Ycirc:"Ŷ",ycirc:"ŷ",Ycy:"Ы",ycy:"ы",yen:"¥",Yfr:"𝔜",yfr:"𝔶",YIcy:"Ї",yicy:"ї",Yopf:"𝕐",yopf:"𝕪",Yscr:"𝒴",yscr:"𝓎",YUcy:"Ю",yucy:"ю",yuml:"ÿ",Yuml:"Ÿ",Zacute:"Ź",zacute:"ź",Zcaron:"Ž",zcaron:"ž",Zcy:"З",zcy:"з",Zdot:"Ż",zdot:"ż",zeetrf:"ℨ",ZeroWidthSpace:"​",Zeta:"Ζ",zeta:"ζ",zfr:"𝔷",Zfr:"ℨ",ZHcy:"Ж",zhcy:"ж",zigrarr:"⇝",zopf:"𝕫",Zopf:"ℤ",Zscr:"𝒵",zscr:"𝓏",zwj:"‍",zwnj:"‌"}}),ha=q((t,e)=>{e.exports={Aacute:"Á",aacute:"á",Acirc:"Â",acirc:"â",acute:"´",AElig:"Æ",aelig:"æ",Agrave:"À",agrave:"à",amp:"&",AMP:"&",Aring:"Å",aring:"å",Atilde:"Ã",atilde:"ã",Auml:"Ä",auml:"ä",brvbar:"¦",Ccedil:"Ç",ccedil:"ç",cedil:"¸",cent:"¢",copy:"©",COPY:"©",curren:"¤",deg:"°",divide:"÷",Eacute:"É",eacute:"é",Ecirc:"Ê",ecirc:"ê",Egrave:"È",egrave:"è",ETH:"Ð",eth:"ð",Euml:"Ë",euml:"ë",frac12:"½",frac14:"¼",frac34:"¾",gt:">",GT:">",Iacute:"Í",iacute:"í",Icirc:"Î",icirc:"î",iexcl:"¡",Igrave:"Ì",igrave:"ì",iquest:"¿",Iuml:"Ï",iuml:"ï",laquo:"«",lt:"<",LT:"<",macr:"¯",micro:"µ",middot:"·",nbsp:" ",not:"¬",Ntilde:"Ñ",ntilde:"ñ",Oacute:"Ó",oacute:"ó",Ocirc:"Ô",ocirc:"ô",Ograve:"Ò",ograve:"ò",ordf:"ª",ordm:"º",Oslash:"Ø",oslash:"ø",Otilde:"Õ",otilde:"õ",Ouml:"Ö",ouml:"ö",para:"¶",plusmn:"±",pound:"£",quot:'"',QUOT:'"',raquo:"»",reg:"®",REG:"®",sect:"§",shy:"­",sup1:"¹",sup2:"²",sup3:"³",szlig:"ß",THORN:"Þ",thorn:"þ",times:"×",Uacute:"Ú",uacute:"ú",Ucirc:"Û",ucirc:"û",Ugrave:"Ù",ugrave:"ù",uml:"¨",Uuml:"Ü",uuml:"ü",Yacute:"Ý",yacute:"ý",yen:"¥",yuml:"ÿ"}}),Xn=q((t,e)=>{e.exports={amp:"&",apos:"'",gt:">",lt:"<",quot:'"'}}),ga=q((t,e)=>{e.exports={0:65533,128:8364,130:8218,131:402,132:8222,133:8230,134:8224,135:8225,136:710,137:8240,138:352,139:8249,140:338,142:381,145:8216,146:8217,147:8220,148:8221,149:8226,150:8211,151:8212,152:732,153:8482,154:353,155:8250,156:339,158:382,159:376}}),ba=q(t=>{var e=t&&t.__importDefault||function(a){return a&&a.__esModule?a:{default:a}};Object.defineProperty(t,"__esModule",{value:!0});var r=e(ga()),o=String.fromCodePoint||function(a){var u="";return a>65535&&(a-=65536,u+=String.fromCharCode(a>>>10&1023|55296),a=56320|a&1023),u+=String.fromCharCode(a),u};function i(a){return a>=55296&&a<=57343||a>1114111?"�":(a in r.default&&(a=r.default[a]),o(a))}n(i,"decodeCodePoint"),t.default=i}),Qn=q(t=>{var e=t&&t.__importDefault||function(g){return g&&g.__esModule?g:{default:g}};Object.defineProperty(t,"__esModule",{value:!0}),t.decodeHTML=t.decodeHTMLStrict=t.decodeXML=void 0;var r=e(Kn()),o=e(ha()),i=e(Xn()),a=e(ba()),u=/&(?:[a-zA-Z0-9]+|#[xX][\da-fA-F]+|#\d+);/g;t.decodeXML=l(i.default),t.decodeHTMLStrict=l(r.default);function l(g){var h=p(g);return function(m){return String(m).replace(u,h)}}n(l,"getStrictDecoder");var c=n(function(g,h){return g{var e=t&&t.__importDefault||function(F){return F&&F.__esModule?F:{default:F}};Object.defineProperty(t,"__esModule",{value:!0}),t.escapeUTF8=t.escape=t.encodeNonAsciiHTML=t.encodeHTML=t.encodeXML=void 0;var r=e(Xn()),o=c(r.default),i=p(o);t.encodeXML=ce(o);var a=e(Kn()),u=c(a.default),l=p(u);t.encodeHTML=re(u,l),t.encodeNonAsciiHTML=ce(u);function c(F){return Object.keys(F).sort().reduce(function(se,he){return se[F[he]]="&"+he+";",se},{})}n(c,"getInverseObj");function p(F){for(var se=[],he=[],qe=0,ve=Object.keys(F);qe1?h(F):F.charCodeAt(0)).toString(16).toUpperCase()+";"}n(m,"singleCharReplacer");function re(F,se){return function(he){return he.replace(se,function(qe){return F[qe]}).replace(g,m)}}n(re,"getInverse");var ne=new RegExp(i.source+"|"+g.source,"g");function le(F){return F.replace(ne,m)}n(le,"escape"),t.escape=le;function J(F){return F.replace(i,m)}n(J,"escapeUTF8"),t.escapeUTF8=J;function ce(F){return function(se){return se.replace(ne,function(he){return F[he]||m(he)})}}n(ce,"getASCIIEncoder")}),Da=q(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.decodeXMLStrict=t.decodeHTML5Strict=t.decodeHTML4Strict=t.decodeHTML5=t.decodeHTML4=t.decodeHTMLStrict=t.decodeHTML=t.decodeXML=t.encodeHTML5=t.encodeHTML4=t.escapeUTF8=t.escape=t.encodeNonAsciiHTML=t.encodeHTML=t.encodeXML=t.encode=t.decodeStrict=t.decode=void 0;var e=Qn(),r=es();function o(c,p){return(!p||p<=0?e.decodeXML:e.decodeHTML)(c)}n(o,"decode"),t.decode=o;function i(c,p){return(!p||p<=0?e.decodeXML:e.decodeHTMLStrict)(c)}n(i,"decodeStrict"),t.decodeStrict=i;function a(c,p){return(!p||p<=0?r.encodeXML:r.encodeHTML)(c)}n(a,"encode"),t.encode=a;var u=es();Object.defineProperty(t,"encodeXML",{enumerable:!0,get:n(function(){return u.encodeXML},"get")}),Object.defineProperty(t,"encodeHTML",{enumerable:!0,get:n(function(){return u.encodeHTML},"get")}),Object.defineProperty(t,"encodeNonAsciiHTML",{enumerable:!0,get:n(function(){return u.encodeNonAsciiHTML},"get")}),Object.defineProperty(t,"escape",{enumerable:!0,get:n(function(){return u.escape},"get")}),Object.defineProperty(t,"escapeUTF8",{enumerable:!0,get:n(function(){return u.escapeUTF8},"get")}),Object.defineProperty(t,"encodeHTML4",{enumerable:!0,get:n(function(){return u.encodeHTML},"get")}),Object.defineProperty(t,"encodeHTML5",{enumerable:!0,get:n(function(){return u.encodeHTML},"get")});var l=Qn();Object.defineProperty(t,"decodeXML",{enumerable:!0,get:n(function(){return l.decodeXML},"get")}),Object.defineProperty(t,"decodeHTML",{enumerable:!0,get:n(function(){return l.decodeHTML},"get")}),Object.defineProperty(t,"decodeHTMLStrict",{enumerable:!0,get:n(function(){return l.decodeHTMLStrict},"get")}),Object.defineProperty(t,"decodeHTML4",{enumerable:!0,get:n(function(){return l.decodeHTML},"get")}),Object.defineProperty(t,"decodeHTML5",{enumerable:!0,get:n(function(){return l.decodeHTML},"get")}),Object.defineProperty(t,"decodeHTML4Strict",{enumerable:!0,get:n(function(){return l.decodeHTMLStrict},"get")}),Object.defineProperty(t,"decodeHTML5Strict",{enumerable:!0,get:n(function(){return l.decodeHTMLStrict},"get")}),Object.defineProperty(t,"decodeXMLStrict",{enumerable:!0,get:n(function(){return l.decodeXML},"get")})}),Ha=q((t,e)=>{function r(d,A){if(!(d instanceof A))throw new TypeError("Cannot call a class as a function")}n(r,"_classCallCheck");function o(d,A){for(var B=0;B=d.length?{done:!0}:{done:!1,value:d[pe++]}},"n"),e:n(function(Vt){throw Vt},"e"),f:de}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var Bt=!0,Ut=!1,Mt;return{s:n(function(){B=B.call(d)},"s"),n:n(function(){var Vt=B.next();return Bt=Vt.done,Vt},"n"),e:n(function(Vt){Ut=!0,Mt=Vt},"e"),f:n(function(){try{!Bt&&B.return!=null&&B.return()}finally{if(Ut)throw Mt}},"f")}}n(a,"_createForOfIteratorHelper");function u(d,A){if(d){if(typeof d=="string")return l(d,A);var B=Object.prototype.toString.call(d).slice(8,-1);if(B==="Object"&&d.constructor&&(B=d.constructor.name),B==="Map"||B==="Set")return Array.from(d);if(B==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(B))return l(d,A)}}n(u,"_unsupportedIterableToArray");function l(d,A){(A==null||A>d.length)&&(A=d.length);for(var B=0,pe=new Array(A);B0?d*40+55:0,Ut=A>0?A*40+55:0,Mt=B>0?B*40+55:0;pe[de]=re([Bt,Ut,Mt])}n(h,"setStyleColor");function m(d){for(var A=d.toString(16);A.length<2;)A="0"+A;return A}n(m,"toHexString");function re(d){var A=[],B=a(d),pe;try{for(B.s();!(pe=B.n()).done;){var de=pe.value;A.push(m(de))}}catch(Bt){B.e(Bt)}finally{B.f()}return"#"+A.join("")}n(re,"toColorHexString");function ne(d,A,B,pe){var de;return A==="text"?de=qe(B,pe):A==="display"?de=J(d,B,pe):A==="xterm256Foreground"?de=Lt(d,pe.colors[B]):A==="xterm256Background"?de=Nt(d,pe.colors[B]):A==="rgb"&&(de=le(d,B)),de}n(ne,"generateOutput");function le(d,A){A=A.substring(2).slice(0,-1);var B=+A.substr(0,2),pe=A.substring(5).split(";"),de=pe.map(function(Bt){return("0"+Number(Bt).toString(16)).substr(-2)}).join("");return we(d,(B===38?"color:#":"background-color:#")+de)}n(le,"handleRgb");function J(d,A,B){A=parseInt(A,10);var pe={"-1":n(function(){return"
"},"_"),0:n(function(){return d.length&&ce(d)},"_"),1:n(function(){return ve(d,"b")},"_"),3:n(function(){return ve(d,"i")},"_"),4:n(function(){return ve(d,"u")},"_"),8:n(function(){return we(d,"display:none")},"_"),9:n(function(){return ve(d,"strike")},"_"),22:n(function(){return we(d,"font-weight:normal;text-decoration:none;font-style:normal")},"_"),23:n(function(){return Ft(d,"i")},"_"),24:n(function(){return Ft(d,"u")},"_"),39:n(function(){return Lt(d,B.fg)},"_"),49:n(function(){return Nt(d,B.bg)},"_"),53:n(function(){return we(d,"text-decoration:overline")},"_")},de;return pe[A]?de=pe[A]():4"}).join("")}n(ce,"resetStyles");function F(d,A){for(var B=[],pe=d;pe<=A;pe++)B.push(pe);return B}n(F,"range");function se(d){return function(A){return(d===null||A.category!==d)&&d!=="all"}}n(se,"notCategory");function he(d){d=parseInt(d,10);var A=null;return d===0?A="all":d===1?A="bold":2")}n(ve,"pushTag");function we(d,A){return ve(d,"span",A)}n(we,"pushStyle");function Lt(d,A){return ve(d,"span","color:"+A)}n(Lt,"pushForegroundColor");function Nt(d,A){return ve(d,"span","background-color:"+A)}n(Nt,"pushBackgroundColor");function Ft(d,A){var B;if(d.slice(-1)[0]===A&&(B=d.pop()),B)return""}n(Ft,"closeTag");function jt(d,A,B){var pe=!1,de=3;function Bt(){return""}n(Bt,"remove");function Ut(Kr,Xr){return B("xterm256Foreground",Xr),""}n(Ut,"removeXterm256Foreground");function Mt(Kr,Xr){return B("xterm256Background",Xr),""}n(Mt,"removeXterm256Background");function Vt(Kr){return A.newline?B("display",-1):B("text",Kr),""}n(Vt,"newline");function Gt(Kr,Xr){pe=!0,Xr.trim().length===0&&(Xr="0"),Xr=Xr.trimRight(";").split(";");var Tn=a(Xr),Hn;try{for(Tn.s();!(Hn=Tn.n()).done;){var as=Hn.value;B("display",as)}}catch(ys){Tn.e(ys)}finally{Tn.f()}return""}n(Gt,"ansiMess");function lr(Kr){return B("text",Kr),""}n(lr,"realText");function zr(Kr){return B("rgb",Kr),""}n(zr,"rgb");var Jr=[{pattern:/^\x08+/,sub:Bt},{pattern:/^\x1b\[[012]?K/,sub:Bt},{pattern:/^\x1b\[\(B/,sub:Bt},{pattern:/^\x1b\[[34]8;2;\d+;\d+;\d+m/,sub:zr},{pattern:/^\x1b\[38;5;(\d+)m/,sub:Ut},{pattern:/^\x1b\[48;5;(\d+)m/,sub:Mt},{pattern:/^\n/,sub:Vt},{pattern:/^\r+\n/,sub:Vt},{pattern:/^\r/,sub:Vt},{pattern:/^\x1b\[((?:\d{1,3};?)+|)m/,sub:Gt},{pattern:/^\x1b\[\d?J/,sub:Bt},{pattern:/^\x1b\[\d{0,3};\d{0,3}f/,sub:Bt},{pattern:/^\x1b\[?[\d;]{0,3}/,sub:Bt},{pattern:/^(([^\x1b\x08\r\n])+)/,sub:lr}];function qt(Kr,Xr){Xr>de&&pe||(pe=!1,d=d.replace(Kr.pattern,Kr.sub))}n(qt,"process");var Qr=[],Zr=d,So=Zr.length;e:for(;So>0;){for(var Bn=0,Gn=0,Zn=Jr.length;Gn{(function(r,o){typeof t=="object"&&typeof e<"u"?e.exports=o():typeof define=="function"&&define.amd?define(o):(r=typeof globalThis<"u"?globalThis:r||self).BrowserDetector=o()})(t,function(){function r(c,p){for(var g=0;g1&&arguments[1]!==void 0?arguments[1]:-1,"})?")),g=Number(c).toString().match(p);return g?g[0]:null},"n"),u=n(function(){return typeof window<"u"?window.navigator:null},"i"),l=(function(){function c(m){var re;(function(ne,le){if(!(ne instanceof le))throw new TypeError("Cannot call a class as a function")})(this,c),this.userAgent=m||((re=u())===null||re===void 0?void 0:re.userAgent)||null}n(c,"t");var p,g,h;return p=c,g=[{key:"parseUserAgent",value:n(function(m){var re,ne,le,J={},ce=m||this.userAgent||"",F=ce.toLowerCase().replace(/\s\s+/g," "),se=/(edge)\/([\w.]+)/.exec(F)||/(edg)[/]([\w.]+)/.exec(F)||/(opr)[/]([\w.]+)/.exec(F)||/(opt)[/]([\w.]+)/.exec(F)||/(fxios)[/]([\w.]+)/.exec(F)||/(edgios)[/]([\w.]+)/.exec(F)||/(jsdom)[/]([\w.]+)/.exec(F)||/(samsungbrowser)[/]([\w.]+)/.exec(F)||/(electron)[/]([\w.]+)/.exec(F)||/(chrome)[/]([\w.]+)/.exec(F)||/(crios)[/]([\w.]+)/.exec(F)||/(opios)[/]([\w.]+)/.exec(F)||/(version)(applewebkit)[/]([\w.]+).*(safari)[/]([\w.]+)/.exec(F)||/(webkit)[/]([\w.]+).*(version)[/]([\w.]+).*(safari)[/]([\w.]+)/.exec(F)||/(applewebkit)[/]([\w.]+).*(safari)[/]([\w.]+)/.exec(F)||/(webkit)[/]([\w.]+)/.exec(F)||/(opera)(?:.*version|)[/]([\w.]+)/.exec(F)||/(msie) ([\w.]+)/.exec(F)||/(fennec)[/]([\w.]+)/.exec(F)||F.indexOf("trident")>=0&&/(rv)(?::| )([\w.]+)/.exec(F)||F.indexOf("compatible")<0&&/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(F)||[],he=/(ipad)/.exec(F)||/(ipod)/.exec(F)||/(iphone)/.exec(F)||/(jsdom)/.exec(F)||/(windows phone)/.exec(F)||/(xbox)/.exec(F)||/(win)/.exec(F)||/(tablet)/.exec(F)||/(android)/.test(F)&&/(mobile)/.test(F)===!1&&["androidTablet"]||/(android)/.exec(F)||/(mac)/.exec(F)||/(linux)/.exec(F)||/(cros)/.exec(F)||[],qe=se[5]||se[3]||se[1]||null,ve=he[0]||null,we=se[4]||se[2]||null,Lt=u();qe==="chrome"&&typeof(Lt==null||(re=Lt.brave)===null||re===void 0?void 0:re.isBrave)=="function"&&(qe="brave"),qe&&(J[qe]=!0),ve&&(J[ve]=!0);var Nt=!!(J.tablet||J.android||J.androidTablet),Ft=!!(J.ipad||J.tablet||J.androidTablet),jt=!!(J.android||J.androidTablet||J.tablet||J.ipad||J.ipod||J.iphone||J["windows phone"]),Ve=!!(J.cros||J.mac||J.linux||J.win),Dt=!!(J.brave||J.chrome||J.crios||J.opr||J.safari||J.edg||J.electron),d=!!(J.msie||J.rv);return{name:(ne=o[qe])!==null&&ne!==void 0?ne:null,platform:(le=i[ve])!==null&&le!==void 0?le:null,userAgent:ce,version:we,shortVersion:we?a(parseFloat(we),2):null,isAndroid:Nt,isTablet:Ft,isMobile:jt,isDesktop:Ve,isWebkit:Dt,isIE:d}},"value")},{key:"getBrowserInfo",value:n(function(){var m=this.parseUserAgent();return{name:m.name,platform:m.platform,userAgent:m.userAgent,version:m.version,shortVersion:m.shortVersion}},"value")}],h=[{key:"VERSION",get:n(function(){return"3.4.0"},"get")}],g&&r(p.prototype,g),h&&r(p,h),Object.defineProperty(p,"prototype",{writable:!1}),c})();return l})}),Ht={};_e(Ht,{global:()=>E$1});var E$1=(()=>{let t;return typeof window<"u"?t=window:typeof globalThis<"u"?t=globalThis:typeof global<"u"?t=global:typeof self<"u"?t=self:t={},t})(),ge={};_e(ge,{ARGTYPES_INFO_REQUEST:()=>fo,ARGTYPES_INFO_RESPONSE:()=>nt,CHANNEL_CREATED:()=>cl,CHANNEL_WS_DISCONNECT:()=>Wt,CONFIG_ERROR:()=>$t,CREATE_NEW_STORYFILE_REQUEST:()=>pl,CREATE_NEW_STORYFILE_RESPONSE:()=>dl,CURRENT_STORY_WAS_SET:()=>rt,DOCS_PREPARED:()=>Yt,DOCS_RENDERED:()=>pr,FILE_COMPONENT_SEARCH_REQUEST:()=>ul,FILE_COMPONENT_SEARCH_RESPONSE:()=>fl,FORCE_REMOUNT:()=>Kt,FORCE_RE_RENDER:()=>dr,GLOBALS_UPDATED:()=>Ce,NAVIGATE_URL:()=>yl,PLAY_FUNCTION_THREW_EXCEPTION:()=>Xt,PRELOAD_ENTRIES:()=>Qt,PREVIEW_BUILDER_PROGRESS:()=>ml,PREVIEW_KEYDOWN:()=>Zt,REGISTER_SUBSCRIPTION:()=>hl,REQUEST_WHATS_NEW_DATA:()=>wl,RESET_STORY_ARGS:()=>ur,RESULT_WHATS_NEW_DATA:()=>_l,SAVE_STORY_REQUEST:()=>Ol,SAVE_STORY_RESPONSE:()=>Il,SELECT_STORY:()=>gl,SET_CONFIG:()=>Sl,SET_CURRENT_STORY:()=>eo,SET_FILTER:()=>bl,SET_GLOBALS:()=>ro,SET_INDEX:()=>Tl,SET_STORIES:()=>El,SET_WHATS_NEW_CACHE:()=>Cl,SHARED_STATE_CHANGED:()=>Rl,SHARED_STATE_SET:()=>Al,STORIES_COLLAPSE_ALL:()=>xl,STORIES_EXPAND_ALL:()=>vl,STORY_ARGS_UPDATED:()=>to,STORY_CHANGED:()=>oo,STORY_ERRORED:()=>no,STORY_FINISHED:()=>ot,STORY_INDEX_INVALIDATED:()=>so,STORY_MISSING:()=>tt,STORY_PREPARED:()=>io,STORY_RENDERED:()=>We,STORY_RENDER_PHASE_CHANGED:()=>Pe,STORY_SPECIFIED:()=>ao,STORY_THREW_EXCEPTION:()=>lo,STORY_UNCHANGED:()=>co,TELEMETRY_ERROR:()=>uo,TESTING_MODULE_CANCEL_TEST_RUN_REQUEST:()=>Ll,TESTING_MODULE_CANCEL_TEST_RUN_RESPONSE:()=>jl,TESTING_MODULE_CRASH_REPORT:()=>Fl,TESTING_MODULE_PROGRESS_REPORT:()=>Dl,TESTING_MODULE_RUN_ALL_REQUEST:()=>kl,TESTING_MODULE_RUN_REQUEST:()=>Nl,TOGGLE_WHATS_NEW_NOTIFICATIONS:()=>Pl,UNHANDLED_ERRORS_WHILE_PLAYING:()=>Jt,UPDATE_GLOBALS:()=>fr,UPDATE_QUERY_PARAMS:()=>po,UPDATE_STORY_ARGS:()=>yr,default:()=>ll});var zt=(t=>(t.CHANNEL_WS_DISCONNECT="channelWSDisconnect",t.CHANNEL_CREATED="channelCreated",t.CONFIG_ERROR="configError",t.STORY_INDEX_INVALIDATED="storyIndexInvalidated",t.STORY_SPECIFIED="storySpecified",t.SET_CONFIG="setConfig",t.SET_STORIES="setStories",t.SET_INDEX="setIndex",t.SET_CURRENT_STORY="setCurrentStory",t.CURRENT_STORY_WAS_SET="currentStoryWasSet",t.FORCE_RE_RENDER="forceReRender",t.FORCE_REMOUNT="forceRemount",t.PRELOAD_ENTRIES="preloadStories",t.STORY_PREPARED="storyPrepared",t.DOCS_PREPARED="docsPrepared",t.STORY_CHANGED="storyChanged",t.STORY_UNCHANGED="storyUnchanged",t.STORY_RENDERED="storyRendered",t.STORY_FINISHED="storyFinished",t.STORY_MISSING="storyMissing",t.STORY_ERRORED="storyErrored",t.STORY_THREW_EXCEPTION="storyThrewException",t.STORY_RENDER_PHASE_CHANGED="storyRenderPhaseChanged",t.PLAY_FUNCTION_THREW_EXCEPTION="playFunctionThrewException",t.UNHANDLED_ERRORS_WHILE_PLAYING="unhandledErrorsWhilePlaying",t.UPDATE_STORY_ARGS="updateStoryArgs",t.STORY_ARGS_UPDATED="storyArgsUpdated",t.RESET_STORY_ARGS="resetStoryArgs",t.SET_FILTER="setFilter",t.SET_GLOBALS="setGlobals",t.UPDATE_GLOBALS="updateGlobals",t.GLOBALS_UPDATED="globalsUpdated",t.REGISTER_SUBSCRIPTION="registerSubscription",t.PREVIEW_KEYDOWN="previewKeydown",t.PREVIEW_BUILDER_PROGRESS="preview_builder_progress",t.SELECT_STORY="selectStory",t.STORIES_COLLAPSE_ALL="storiesCollapseAll",t.STORIES_EXPAND_ALL="storiesExpandAll",t.DOCS_RENDERED="docsRendered",t.SHARED_STATE_CHANGED="sharedStateChanged",t.SHARED_STATE_SET="sharedStateSet",t.NAVIGATE_URL="navigateUrl",t.UPDATE_QUERY_PARAMS="updateQueryParams",t.REQUEST_WHATS_NEW_DATA="requestWhatsNewData",t.RESULT_WHATS_NEW_DATA="resultWhatsNewData",t.SET_WHATS_NEW_CACHE="setWhatsNewCache",t.TOGGLE_WHATS_NEW_NOTIFICATIONS="toggleWhatsNewNotifications",t.TELEMETRY_ERROR="telemetryError",t.FILE_COMPONENT_SEARCH_REQUEST="fileComponentSearchRequest",t.FILE_COMPONENT_SEARCH_RESPONSE="fileComponentSearchResponse",t.SAVE_STORY_REQUEST="saveStoryRequest",t.SAVE_STORY_RESPONSE="saveStoryResponse",t.ARGTYPES_INFO_REQUEST="argtypesInfoRequest",t.ARGTYPES_INFO_RESPONSE="argtypesInfoResponse",t.CREATE_NEW_STORYFILE_REQUEST="createNewStoryfileRequest",t.CREATE_NEW_STORYFILE_RESPONSE="createNewStoryfileResponse",t.TESTING_MODULE_CRASH_REPORT="testingModuleCrashReport",t.TESTING_MODULE_PROGRESS_REPORT="testingModuleProgressReport",t.TESTING_MODULE_RUN_REQUEST="testingModuleRunRequest",t.TESTING_MODULE_RUN_ALL_REQUEST="testingModuleRunAllRequest",t.TESTING_MODULE_CANCEL_TEST_RUN_REQUEST="testingModuleCancelTestRunRequest",t.TESTING_MODULE_CANCEL_TEST_RUN_RESPONSE="testingModuleCancelTestRunResponse",t))(zt||{}),ll=zt,{CHANNEL_WS_DISCONNECT:Wt,CHANNEL_CREATED:cl,CONFIG_ERROR:$t,CREATE_NEW_STORYFILE_REQUEST:pl,CREATE_NEW_STORYFILE_RESPONSE:dl,CURRENT_STORY_WAS_SET:rt,DOCS_PREPARED:Yt,DOCS_RENDERED:pr,FILE_COMPONENT_SEARCH_REQUEST:ul,FILE_COMPONENT_SEARCH_RESPONSE:fl,FORCE_RE_RENDER:dr,FORCE_REMOUNT:Kt,GLOBALS_UPDATED:Ce,NAVIGATE_URL:yl,PLAY_FUNCTION_THREW_EXCEPTION:Xt,UNHANDLED_ERRORS_WHILE_PLAYING:Jt,PRELOAD_ENTRIES:Qt,PREVIEW_BUILDER_PROGRESS:ml,PREVIEW_KEYDOWN:Zt,REGISTER_SUBSCRIPTION:hl,RESET_STORY_ARGS:ur,SELECT_STORY:gl,SET_CONFIG:Sl,SET_CURRENT_STORY:eo,SET_FILTER:bl,SET_GLOBALS:ro,SET_INDEX:Tl,SET_STORIES:El,SHARED_STATE_CHANGED:Rl,SHARED_STATE_SET:Al,STORIES_COLLAPSE_ALL:xl,STORIES_EXPAND_ALL:vl,STORY_ARGS_UPDATED:to,STORY_CHANGED:oo,STORY_ERRORED:no,STORY_INDEX_INVALIDATED:so,STORY_MISSING:tt,STORY_PREPARED:io,STORY_RENDER_PHASE_CHANGED:Pe,STORY_RENDERED:We,STORY_FINISHED:ot,STORY_SPECIFIED:ao,STORY_THREW_EXCEPTION:lo,STORY_UNCHANGED:co,UPDATE_GLOBALS:fr,UPDATE_QUERY_PARAMS:po,UPDATE_STORY_ARGS:yr,REQUEST_WHATS_NEW_DATA:wl,RESULT_WHATS_NEW_DATA:_l,SET_WHATS_NEW_CACHE:Cl,TOGGLE_WHATS_NEW_NOTIFICATIONS:Pl,TELEMETRY_ERROR:uo,SAVE_STORY_REQUEST:Ol,SAVE_STORY_RESPONSE:Il,ARGTYPES_INFO_REQUEST:fo,ARGTYPES_INFO_RESPONSE:nt,TESTING_MODULE_CRASH_REPORT:Fl,TESTING_MODULE_PROGRESS_REPORT:Dl,TESTING_MODULE_RUN_REQUEST:Nl,TESTING_MODULE_RUN_ALL_REQUEST:kl,TESTING_MODULE_CANCEL_TEST_RUN_REQUEST:Ll,TESTING_MODULE_CANCEL_TEST_RUN_RESPONSE:jl}=zt,yo={"@storybook/global":"__STORYBOOK_MODULE_GLOBAL__","storybook/internal/channels":"__STORYBOOK_MODULE_CHANNELS__","@storybook/channels":"__STORYBOOK_MODULE_CHANNELS__","@storybook/core/channels":"__STORYBOOK_MODULE_CHANNELS__","storybook/internal/client-logger":"__STORYBOOK_MODULE_CLIENT_LOGGER__","@storybook/client-logger":"__STORYBOOK_MODULE_CLIENT_LOGGER__","@storybook/core/client-logger":"__STORYBOOK_MODULE_CLIENT_LOGGER__","storybook/internal/core-events":"__STORYBOOK_MODULE_CORE_EVENTS__","@storybook/core-events":"__STORYBOOK_MODULE_CORE_EVENTS__","@storybook/core/core-events":"__STORYBOOK_MODULE_CORE_EVENTS__","storybook/internal/preview-errors":"__STORYBOOK_MODULE_CORE_EVENTS_PREVIEW_ERRORS__","@storybook/core-events/preview-errors":"__STORYBOOK_MODULE_CORE_EVENTS_PREVIEW_ERRORS__","@storybook/core/preview-errors":"__STORYBOOK_MODULE_CORE_EVENTS_PREVIEW_ERRORS__","storybook/internal/preview-api":"__STORYBOOK_MODULE_PREVIEW_API__","@storybook/preview-api":"__STORYBOOK_MODULE_PREVIEW_API__","@storybook/core/preview-api":"__STORYBOOK_MODULE_PREVIEW_API__","storybook/internal/types":"__STORYBOOK_MODULE_TYPES__","@storybook/types":"__STORYBOOK_MODULE_TYPES__","@storybook/core/types":"__STORYBOOK_MODULE_TYPES__"},cs=Object.keys(yo),br={};_e(br,{Channel:()=>ie,HEARTBEAT_INTERVAL:()=>Po,HEARTBEAT_MAX_LATENCY:()=>Oo,PostMessageTransport:()=>Qe,WebsocketTransport:()=>Ze,createBrowserChannel:()=>Ld,default:()=>kd});function _$1(t){for(var e=[],r=1;r(this.debug("getState",{state:this.state}),this.state),"getState"),this.subscribe=n((o,i)=>{let a=typeof o=="function",u=a?"*":o,l=a?o:i;if(this.debug("subscribe",{eventType:u,listener:l}),!l)throw new TypeError(`Missing first subscribe argument, or second if first is the event type, when subscribing to a UniversalStore with id '${this.id}'`);return this.listeners.has(u)||this.listeners.set(u,new Set),this.listeners.get(u).add(l),()=>{var c;this.debug("unsubscribe",{eventType:u,listener:l}),this.listeners.has(u)&&(this.listeners.get(u).delete(l),((c=this.listeners.get(u))==null?void 0:c.size)===0&&this.listeners.delete(u))}},"subscribe"),this.send=n(o=>{if(this.debug("send",{event:o}),this.status!==Ge.Status.READY)throw new TypeError(_$1`Cannot send event before store is ready. You can get the current status with store.status, + or await store.readyPromise to wait for the store to be ready before sending events. + ${JSON.stringify({event:o,id:this.id,actor:this.actor,environment:this.environment},null,2)}`);this.emitToListeners(o,{actor:this.actor}),this.emitToChannel(o,{actor:this.actor})},"send"),this.debugging=e.debug??!1,!Ge.isInternalConstructing)throw new TypeError("UniversalStore is not constructable - use UniversalStore.create() instead");if(Ge.isInternalConstructing=!1,this.id=e.id,this.actorId=Date.now().toString(36)+Math.random().toString(36).substring(2),this.actorType=e.leader?Ge.ActorType.LEADER:Ge.ActorType.FOLLOWER,this.state=e.initialState,this.channelEventName=`${Ml}${this.id}`,this.debug("constructor",{options:e,environmentOverrides:r,channelEventName:this.channelEventName}),this.actor.type===Ge.ActorType.LEADER)this.syncing={state:ee.RESOLVED,promise:Promise.resolve()};else{let o,i,a=new Promise((u,l)=>{o=n(()=>{this.syncing.state===ee.PENDING&&(this.syncing.state=ee.RESOLVED,u())},"syncingResolve"),i=n(c=>{this.syncing.state===ee.PENDING&&(this.syncing.state=ee.REJECTED,l(c))},"syncingReject")});this.syncing={state:ee.PENDING,promise:a,resolve:o,reject:i}}this.getState=this.getState.bind(this),this.setState=this.setState.bind(this),this.subscribe=this.subscribe.bind(this),this.onStateChange=this.onStateChange.bind(this),this.send=this.send.bind(this),this.emitToChannel=this.emitToChannel.bind(this),this.prepareThis=this.prepareThis.bind(this),this.emitToListeners=this.emitToListeners.bind(this),this.handleChannelEvents=this.handleChannelEvents.bind(this),this.debug=this.debug.bind(this),this.channel=(r==null?void 0:r.channel)??Ge.preparation.channel,this.environment=(r==null?void 0:r.environment)??Ge.preparation.environment,this.channel&&this.environment?this.prepareThis({channel:this.channel,environment:this.environment}):Ge.preparation.promise.then(this.prepareThis)}static setupPreparationPromise(){let e,r,o=new Promise((i,a)=>{e=n(u=>{i(u)},"resolveRef"),r=n((...u)=>{a(u)},"rejectRef")});Ge.preparation={resolve:e,reject:r,promise:o}}get actor(){return Object.freeze({id:this.actorId,type:this.actorType,environment:this.environment??Ge.Environment.UNKNOWN})}get status(){var e;if(!this.channel||!this.environment)return Ge.Status.UNPREPARED;switch((e=this.syncing)==null?void 0:e.state){case ee.PENDING:case void 0:return Ge.Status.SYNCING;case ee.REJECTED:return Ge.Status.ERROR;case ee.RESOLVED:default:return Ge.Status.READY}}untilReady(){var e;return Promise.all([Ge.preparation.promise,(e=this.syncing)==null?void 0:e.promise])}static create(e){if(!e||typeof(e==null?void 0:e.id)!="string")throw new TypeError("id is required and must be a string, when creating a UniversalStore");e.debug&&console.debug(_$1`[UniversalStore] + create`,{options:e});let r=mo.get(e.id);if(r)return console.warn(_$1`UniversalStore with id "${e.id}" already exists in this environment, re-using existing. + You should reuse the existing instance instead of trying to create a new one.`),r;Ge.isInternalConstructing=!0;let o=new Ge(e);return mo.set(e.id,o),o}static __prepare(e,r){Ge.preparation.channel=e,Ge.preparation.environment=r,Ge.preparation.resolve({channel:e,environment:r})}setState(e){let r=this.state,o=typeof e=="function"?e(r):e;if(this.debug("setState",{newState:o,previousState:r,updater:e}),this.status!==Ge.Status.READY)throw new TypeError(_$1`Cannot set state before store is ready. You can get the current status with store.status, + or await store.readyPromise to wait for the store to be ready before sending events. + ${JSON.stringify({newState:o,id:this.id,actor:this.actor,environment:this.environment},null,2)}`);this.state=o;let i={type:Ge.InternalEventType.SET_STATE,payload:{state:o,previousState:r}};this.emitToChannel(i,{actor:this.actor}),this.emitToListeners(i,{actor:this.actor})}onStateChange(e){return this.debug("onStateChange",{listener:e}),this.subscribe(Ge.InternalEventType.SET_STATE,({payload:r},o)=>{e(r.state,r.previousState,o)})}emitToChannel(e,r){var o;this.debug("emitToChannel",{event:e,eventInfo:r,channel:this.channel}),(o=this.channel)==null||o.emit(this.channelEventName,{event:e,eventInfo:r})}prepareThis({channel:e,environment:r}){this.channel=e,this.environment=r,this.debug("prepared",{channel:e,environment:r}),this.channel.on(this.channelEventName,this.handleChannelEvents),this.actor.type===Ge.ActorType.LEADER?this.emitToChannel({type:Ge.InternalEventType.LEADER_CREATED},{actor:this.actor}):(this.emitToChannel({type:Ge.InternalEventType.FOLLOWER_CREATED},{actor:this.actor}),this.emitToChannel({type:Ge.InternalEventType.EXISTING_STATE_REQUEST},{actor:this.actor}),setTimeout(()=>{this.syncing.reject(new TypeError(`No existing state found for follower with id: '${this.id}'. Make sure a leader with the same id exists before creating a follower.`))},1e3))}emitToListeners(e,r){let o=this.listeners.get(e.type),i=this.listeners.get("*");this.debug("emitToListeners",{event:e,eventInfo:r,eventTypeListeners:o,everythingListeners:i}),[...o??[],...i??[]].forEach(a=>a(e,r))}handleChannelEvents(e){var i,a,u,l,c;let{event:r,eventInfo:o}=e;if([o.actor.id,(i=o.forwardingActor)==null?void 0:i.id].includes(this.actor.id)){this.debug("handleChannelEvents: Ignoring event from self",{channelEvent:e});return}else if(((a=this.syncing)==null?void 0:a.state)===ee.PENDING&&r.type!==Ge.InternalEventType.EXISTING_STATE_RESPONSE){this.debug("handleChannelEvents: Ignoring event while syncing",{channelEvent:e});return}if(this.debug("handleChannelEvents",{channelEvent:e}),this.actor.type===Ge.ActorType.LEADER){let p=!0;switch(r.type){case Ge.InternalEventType.EXISTING_STATE_REQUEST:p=!1;let g={type:Ge.InternalEventType.EXISTING_STATE_RESPONSE,payload:this.state};this.debug("handleChannelEvents: responding to existing state request",{responseEvent:g}),this.emitToChannel(g,{actor:this.actor});break;case Ge.InternalEventType.LEADER_CREATED:p=!1,this.syncing.state=ee.REJECTED,this.debug("handleChannelEvents: erroring due to second leader being created",{event:r}),console.error(_$1`Detected multiple UniversalStore leaders created with the same id "${this.id}". + Only one leader can exists at a time, your stores are now in an invalid state. + Leaders detected: + this: ${JSON.stringify(this.actor,null,2)} + other: ${JSON.stringify(o.actor,null,2)}`);break}p&&(this.debug("handleChannelEvents: forwarding event",{channelEvent:e}),this.emitToChannel(r,{actor:o.actor,forwardingActor:this.actor}))}if(this.actor.type===Ge.ActorType.FOLLOWER)switch(r.type){case Ge.InternalEventType.EXISTING_STATE_RESPONSE:if(this.debug("handleChannelEvents: Setting state from leader's existing state response",{event:r}),((u=this.syncing)==null?void 0:u.state)!==ee.PENDING)break;(c=(l=this.syncing).resolve)==null||c.call(l);let p={type:Ge.InternalEventType.SET_STATE,payload:{state:r.payload,previousState:this.state}};this.state=r.payload,this.emitToListeners(p,o);break}switch(r.type){case Ge.InternalEventType.SET_STATE:this.debug("handleChannelEvents: Setting state",{event:r}),this.state=r.payload.state;break}this.emitToListeners(r,{actor:o.actor})}debug(e,r){this.debugging&&console.debug(_$1`[UniversalStore::${this.id}::${this.environment??Ge.Environment.UNKNOWN}] + ${e}`,JSON.stringify({data:r,actor:this.actor,state:this.state,status:this.status},null,2))}static __reset(){Ge.preparation.reject(new Error("reset")),Ge.setupPreparationPromise(),Ge.isInternalConstructing=!1}};n(w,"UniversalStore"),w.ActorType={LEADER:"LEADER",FOLLOWER:"FOLLOWER"},w.Environment={SERVER:"SERVER",MANAGER:"MANAGER",PREVIEW:"PREVIEW",UNKNOWN:"UNKNOWN",MOCK:"MOCK"},w.InternalEventType={EXISTING_STATE_REQUEST:"__EXISTING_STATE_REQUEST",EXISTING_STATE_RESPONSE:"__EXISTING_STATE_RESPONSE",SET_STATE:"__SET_STATE",LEADER_CREATED:"__LEADER_CREATED",FOLLOWER_CREATED:"__FOLLOWER_CREATED"},w.Status={UNPREPARED:"UNPREPARED",SYNCING:"SYNCING",READY:"READY",ERROR:"ERROR"},w.isInternalConstructing=!1,w.setupPreparationPromise();var Q=w,Ul=n(t=>t.transports!==void 0,"isMulti"),Gl=n(()=>Math.random().toString(16).slice(2),"generateRandomId"),ho=class{constructor(e={}){this.sender=Gl(),this.events={},this.data={},this.transports=[],this.isAsync=e.async||!1,Ul(e)?(this.transports=e.transports||[],this.transports.forEach(r=>{r.setHandler(o=>this.handleEvent(o))})):this.transports=e.transport?[e.transport]:[],this.transports.forEach(r=>{r.setHandler(o=>this.handleEvent(o))})}get hasTransport(){return this.transports.length>0}addListener(e,r){this.events[e]=this.events[e]||[],this.events[e].push(r)}emit(e,...r){let o={type:e,args:r,from:this.sender},i={};r.length>=1&&r[0]&&r[0].options&&(i=r[0].options);let a=n(()=>{this.transports.forEach(u=>{u.send(o,i)}),this.handleEvent(o)},"handler");this.isAsync?setImmediate(a):a()}last(e){return this.data[e]}eventNames(){return Object.keys(this.events)}listenerCount(e){let r=this.listeners(e);return r?r.length:0}listeners(e){return this.events[e]||void 0}once(e,r){let o=this.onceListener(e,r);this.addListener(e,o)}removeAllListeners(e){e?this.events[e]&&delete this.events[e]:this.events={}}removeListener(e,r){let o=this.listeners(e);o&&(this.events[e]=o.filter(i=>i!==r))}on(e,r){this.addListener(e,r)}off(e,r){this.removeListener(e,r)}handleEvent(e){let r=this.listeners(e.type);r&&r.length&&r.forEach(o=>{o.apply(e,e.args)}),this.data[e.type]=e.args}onceListener(e,r){let o=n((...i)=>(this.removeListener(e,o),r(...i)),"onceListener");return o}};n(ho,"Channel");var ie=ho,mr={};_e(mr,{deprecate:()=>ae,logger:()=>I$1,once:()=>j$1,pretty:()=>X});var{LOGLEVEL:ql}=E$1,Se={trace:1,debug:2,info:3,warn:4,error:5,silent:10},Bl=ql,$e=Se[Bl]||Se.info,I$1={trace:n((t,...e)=>{$e<=Se.trace&&console.trace(t,...e)},"trace"),debug:n((t,...e)=>{$e<=Se.debug&&console.debug(t,...e)},"debug"),info:n((t,...e)=>{$e<=Se.info&&console.info(t,...e)},"info"),warn:n((t,...e)=>{$e<=Se.warn&&console.warn(t,...e)},"warn"),error:n((t,...e)=>{$e<=Se.error&&console.error(t,...e)},"error"),log:n((t,...e)=>{$e(e,...r)=>{if(!go.has(e))return go.add(e),I$1[t](e,...r)},"once");j$1.clear=()=>go.clear();j$1.trace=j$1("trace");j$1.debug=j$1("debug");j$1.info=j$1("info");j$1.warn=j$1("warn");j$1.error=j$1("error");j$1.log=j$1("log");var ae=j$1("warn"),X=n(t=>(...e)=>{let r=[];if(e.length){let o=//gi,i=/<\/span>/gi,a;for(r.push(e[0].replace(o,"%c").replace(i,"%c"));a=o.exec(e[0]);)r.push(a[2]),r.push("");for(let u=1;un(function(){return e||(0,t[us(t)[0]])((e={exports:{}}).exports,e),e.exports},"__require"),"__commonJS"),$l=n((t,e,r,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of us(e))!Wl.call(t,i)&&i!==r&&ds(t,i,{get:n(()=>e[i],"get"),enumerable:!(o=Hl(e,i))||o.enumerable});return t},"__copyProps"),st=n((t,e,r)=>(r=t!=null?Vl(zl(t)):{},$l(e||!t||!t.__esModule?ds(r,"default",{value:t,enumerable:!0}):r,t)),"__toESM"),Yl=["bubbles","cancelBubble","cancelable","composed","currentTarget","defaultPrevented","eventPhase","isTrusted","returnValue","srcElement","target","timeStamp","type"],Kl=["detail"];function fs(t){let e=Yl.filter(r=>t[r]!==void 0).reduce((r,o)=>({...r,[o]:t[o]}),{});return t instanceof CustomEvent&&Kl.filter(r=>t[r]!==void 0).forEach(r=>{e[r]=t[r]}),e}n(fs,"extractEventHiddenProperties");var Ps=ue(it()),Ts=Z({"node_modules/has-symbols/shams.js"(t,e){e.exports=n(function(){if(typeof Symbol!="function"||typeof Object.getOwnPropertySymbols!="function")return!1;if(typeof Symbol.iterator=="symbol")return!0;var r={},o=Symbol("test"),i=Object(o);if(typeof o=="string"||Object.prototype.toString.call(o)!=="[object Symbol]"||Object.prototype.toString.call(i)!=="[object Symbol]")return!1;var a=42;r[o]=a;for(o in r)return!1;if(typeof Object.keys=="function"&&Object.keys(r).length!==0||typeof Object.getOwnPropertyNames=="function"&&Object.getOwnPropertyNames(r).length!==0)return!1;var u=Object.getOwnPropertySymbols(r);if(u.length!==1||u[0]!==o||!Object.prototype.propertyIsEnumerable.call(r,o))return!1;if(typeof Object.getOwnPropertyDescriptor=="function"){var l=Object.getOwnPropertyDescriptor(r,o);if(l.value!==a||l.enumerable!==!0)return!1}return!0},"hasSymbols")}}),Es=Z({"node_modules/has-symbols/index.js"(t,e){var r=typeof Symbol<"u"&&Symbol,o=Ts();e.exports=n(function(){return typeof r!="function"||typeof Symbol!="function"||typeof r("foo")!="symbol"||typeof Symbol("bar")!="symbol"?!1:o()},"hasNativeSymbols")}}),Xl=Z({"node_modules/function-bind/implementation.js"(t,e){var r="Function.prototype.bind called on incompatible ",o=Array.prototype.slice,i=Object.prototype.toString,a="[object Function]";e.exports=n(function(u){var l=this;if(typeof l!="function"||i.call(l)!==a)throw new TypeError(r+l);for(var c=o.call(arguments,1),p,g=n(function(){if(this instanceof p){var le=l.apply(this,c.concat(o.call(arguments)));return Object(le)===le?le:this}else return l.apply(u,c.concat(o.call(arguments)))},"binder"),h=Math.max(0,l.length-c.length),m=[],re=0;re"u"?r:h(Uint8Array),ne={"%AggregateError%":typeof AggregateError>"u"?r:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer>"u"?r:ArrayBuffer,"%ArrayIteratorPrototype%":g?h([][Symbol.iterator]()):r,"%AsyncFromSyncIteratorPrototype%":r,"%AsyncFunction%":m,"%AsyncGenerator%":m,"%AsyncGeneratorFunction%":m,"%AsyncIteratorPrototype%":m,"%Atomics%":typeof Atomics>"u"?r:Atomics,"%BigInt%":typeof BigInt>"u"?r:BigInt,"%Boolean%":Boolean,"%DataView%":typeof DataView>"u"?r:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":Error,"%eval%":eval,"%EvalError%":EvalError,"%Float32Array%":typeof Float32Array>"u"?r:Float32Array,"%Float64Array%":typeof Float64Array>"u"?r:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry>"u"?r:FinalizationRegistry,"%Function%":i,"%GeneratorFunction%":m,"%Int8Array%":typeof Int8Array>"u"?r:Int8Array,"%Int16Array%":typeof Int16Array>"u"?r:Int16Array,"%Int32Array%":typeof Int32Array>"u"?r:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":g?h(h([][Symbol.iterator]())):r,"%JSON%":typeof JSON=="object"?JSON:r,"%Map%":typeof Map>"u"?r:Map,"%MapIteratorPrototype%":typeof Map>"u"||!g?r:h(new Map()[Symbol.iterator]()),"%Math%":Math,"%Number%":Number,"%Object%":Object,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise>"u"?r:Promise,"%Proxy%":typeof Proxy>"u"?r:Proxy,"%RangeError%":RangeError,"%ReferenceError%":ReferenceError,"%Reflect%":typeof Reflect>"u"?r:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set>"u"?r:Set,"%SetIteratorPrototype%":typeof Set>"u"||!g?r:h(new Set()[Symbol.iterator]()),"%SharedArrayBuffer%":typeof SharedArrayBuffer>"u"?r:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":g?h(""[Symbol.iterator]()):r,"%Symbol%":g?Symbol:r,"%SyntaxError%":o,"%ThrowTypeError%":p,"%TypedArray%":re,"%TypeError%":a,"%Uint8Array%":typeof Uint8Array>"u"?r:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray>"u"?r:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array>"u"?r:Uint16Array,"%Uint32Array%":typeof Uint32Array>"u"?r:Uint32Array,"%URIError%":URIError,"%WeakMap%":typeof WeakMap>"u"?r:WeakMap,"%WeakRef%":typeof WeakRef>"u"?r:WeakRef,"%WeakSet%":typeof WeakSet>"u"?r:WeakSet},le=n(function Ve(Dt){var d;if(Dt==="%AsyncFunction%")d=u("async function () {}");else if(Dt==="%GeneratorFunction%")d=u("function* () {}");else if(Dt==="%AsyncGeneratorFunction%")d=u("async function* () {}");else if(Dt==="%AsyncGenerator%"){var A=Ve("%AsyncGeneratorFunction%");A&&(d=A.prototype)}else if(Dt==="%AsyncIteratorPrototype%"){var B=Ve("%AsyncGenerator%");B&&(d=h(B.prototype))}return ne[Dt]=d,d},"doEval2"),J={"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},ce=To(),F=Jl(),se=ce.call(Function.call,Array.prototype.concat),he=ce.call(Function.apply,Array.prototype.splice),qe=ce.call(Function.call,String.prototype.replace),ve=ce.call(Function.call,String.prototype.slice),we=ce.call(Function.call,RegExp.prototype.exec),Lt=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,Nt=/\\(\\)?/g,Ft=n(function(Ve){var Dt=ve(Ve,0,1),d=ve(Ve,-1);if(Dt==="%"&&d!=="%")throw new o("invalid intrinsic syntax, expected closing `%`");if(d==="%"&&Dt!=="%")throw new o("invalid intrinsic syntax, expected opening `%`");var A=[];return qe(Ve,Lt,function(B,pe,de,Bt){A[A.length]=de?qe(Bt,Nt,"$1"):pe||B}),A},"stringToPath3"),jt=n(function(Ve,Dt){var d=Ve,A;if(F(J,d)&&(A=J[d],d="%"+A[0]+"%"),F(ne,d)){var B=ne[d];if(B===m&&(B=le(d)),typeof B>"u"&&!Dt)throw new a("intrinsic "+Ve+" exists, but is not available. Please file an issue!");return{alias:A,name:d,value:B}}throw new o("intrinsic "+Ve+" does not exist!")},"getBaseIntrinsic2");e.exports=n(function(Ve,Dt){if(typeof Ve!="string"||Ve.length===0)throw new a("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof Dt!="boolean")throw new a('"allowMissing" argument must be a boolean');if(we(/^%?[^%]*%?$/,Ve)===null)throw new o("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var d=Ft(Ve),A=d.length>0?d[0]:"",B=jt("%"+A+"%",Dt),pe=B.name,de=B.value,Bt=!1,Ut=B.alias;Ut&&(A=Ut[0],he(d,se([0,1],Ut)));for(var Mt=1,Vt=!0;Mt=d.length){var Jr=l(de,Gt);Vt=!!Jr,Vt&&"get"in Jr&&!("originalValue"in Jr.get)?de=Jr.get:de=de[Gt]}else Vt=F(de,Gt),de=de[Gt];Vt&&!Bt&&(ne[pe]=de)}}return de},"GetIntrinsic")}}),Ql=Z({"node_modules/call-bind/index.js"(t,e){var r=To(),o=Rs(),i=o("%Function.prototype.apply%"),a=o("%Function.prototype.call%"),u=o("%Reflect.apply%",!0)||r.call(a,i),l=o("%Object.getOwnPropertyDescriptor%",!0),c=o("%Object.defineProperty%",!0),p=o("%Math.max%");if(c)try{c({},"a",{value:1})}catch{c=null}e.exports=n(function(h){var m=u(r,a,arguments);if(l&&c){var re=l(m,"length");re.configurable&&c(m,"length",{value:1+p(0,h.length-(arguments.length-1))})}return m},"callBind");var g=n(function(){return u(r,i,arguments)},"applyBind2");c?c(e.exports,"apply",{value:g}):e.exports.apply=g}}),Zl=Z({"node_modules/call-bind/callBound.js"(t,e){var r=Rs(),o=Ql(),i=o(r("String.prototype.indexOf"));e.exports=n(function(a,u){var l=r(a,!!u);return typeof l=="function"&&i(a,".prototype.")>-1?o(l):l},"callBoundIntrinsic")}}),ec=Z({"node_modules/has-tostringtag/shams.js"(t,e){var r=Ts();e.exports=n(function(){return r()&&!!Symbol.toStringTag},"hasToStringTagShams")}}),rc=Z({"node_modules/is-regex/index.js"(t,e){var r=Zl(),o=ec()(),i,a,u,l;o&&(i=r("Object.prototype.hasOwnProperty"),a=r("RegExp.prototype.exec"),u={},c=n(function(){throw u},"throwRegexMarker"),l={toString:c,valueOf:c},typeof Symbol.toPrimitive=="symbol"&&(l[Symbol.toPrimitive]=c));var c,p=r("Object.prototype.toString"),g=Object.getOwnPropertyDescriptor,h="[object RegExp]";e.exports=n(o?function(m){if(!m||typeof m!="object")return!1;var re=g(m,"lastIndex"),ne=re&&i(re,"value");if(!ne)return!1;try{a(m,l)}catch(le){return le===u}}:function(m){return!m||typeof m!="object"&&typeof m!="function"?!1:p(m)===h},"isRegex")}}),tc=Z({"node_modules/is-function/index.js"(t,e){e.exports=o;var r=Object.prototype.toString;function o(i){if(!i)return!1;var a=r.call(i);return a==="[object Function]"||typeof i=="function"&&a!=="[object RegExp]"||typeof window<"u"&&(i===window.setTimeout||i===window.alert||i===window.confirm||i===window.prompt)}n(o,"isFunction3")}}),oc=Z({"node_modules/is-symbol/index.js"(t,e){var r=Object.prototype.toString,o=Es()();o?(i=Symbol.prototype.toString,a=/^Symbol\(.*\)$/,u=n(function(l){return typeof l.valueOf()!="symbol"?!1:a.test(i.call(l))},"isRealSymbolObject"),e.exports=n(function(l){if(typeof l=="symbol")return!0;if(r.call(l)!=="[object Symbol]")return!1;try{return u(l)}catch{return!1}},"isSymbol3")):e.exports=n(function(l){return!1},"isSymbol3");var i,a,u}}),nc=st(rc()),sc=st(tc()),ic=st(oc());function ac(t){return t!=null&&typeof t=="object"&&Array.isArray(t)===!1}n(ac,"isObject");var lc=typeof global=="object"&&global&&global.Object===Object&&global,cc=lc,pc=typeof self=="object"&&self&&self.Object===Object&&self,dc=cc||pc||Function("return this")(),Eo=dc,uc=Eo.Symbol,Ye=uc,As=Object.prototype,fc=As.hasOwnProperty,yc=As.toString,hr=Ye?Ye.toStringTag:void 0;function mc(t){var e=fc.call(t,hr),r=t[hr];try{t[hr]=void 0;var o=!0}catch{}var i=yc.call(t);return o&&(e?t[hr]=r:delete t[hr]),i}n(mc,"getRawTag");var hc=mc,gc=Object.prototype,Sc=gc.toString;function bc(t){return Sc.call(t)}n(bc,"objectToString");var Tc=bc,Ec="[object Null]",Rc="[object Undefined]",ms=Ye?Ye.toStringTag:void 0;function Ac(t){return t==null?t===void 0?Rc:Ec:ms&&ms in Object(t)?hc(t):Tc(t)}n(Ac,"baseGetTag");var xs=Ac;function xc(t){return t!=null&&typeof t=="object"}n(xc,"isObjectLike");var vc=xc,wc="[object Symbol]";function _c(t){return typeof t=="symbol"||vc(t)&&xs(t)==wc}n(_c,"isSymbol");var Ro=_c;function Cc(t,e){for(var r=-1,o=t==null?0:t.length,i=Array(o);++r-1}n(jp,"listCacheHas");var Mp=jp;function Up(t,e){var r=this.__data__,o=lt(r,t);return o<0?(++this.size,r.push([t,e])):r[o][1]=e,this}n(Up,"listCacheSet");var Gp=Up;function Xe(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e{let e=null,r=!1,o=!1,i=!1,a="";if(t.indexOf("//")>=0||t.indexOf("/*")>=0)for(let u=0;uAd(t).replace(/\n\s*/g,"").trim()),vd=n(function(t,e){let r=e.slice(0,e.indexOf("{")),o=e.slice(e.indexOf("{"));if(r.includes("=>")||r.includes("function"))return e;let i=r;return i=i.replace(t,"function"),i+o},"convertShorthandMethods2"),wd=/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d{3})?Z$/,Sr=n(t=>t.match(/^[\[\{\"\}].*[\]\}\"]$/),"isJSON");function Os(t){if(!at(t))return t;let e=t,r=!1;return typeof Event<"u"&&t instanceof Event&&(e=fs(e),r=!0),e=Object.keys(e).reduce((o,i)=>{try{e[i]&&e[i].toJSON,o[i]=e[i]}catch{r=!0}return o},{}),r?e:t}n(Os,"convertUnconventionalData");var _d=n(function(t){let e,r,o,i;return n(function(a,u){try{if(a==="")return i=[],e=new Map([[u,"[]"]]),r=new Map,o=[],u;let l=r.get(this)||this;for(;o.length&&l!==o[0];)o.shift(),i.pop();if(typeof u=="boolean")return u;if(u===void 0)return t.allowUndefined?"_undefined_":void 0;if(u===null)return null;if(typeof u=="number")return u===-1/0?"_-Infinity_":u===1/0?"_Infinity_":Number.isNaN(u)?"_NaN_":u;if(typeof u=="bigint")return`_bigint_${u.toString()}`;if(typeof u=="string")return wd.test(u)?t.allowDate?`_date_${u}`:void 0:u;if((0,nc.default)(u))return t.allowRegExp?`_regexp_${u.flags}|${u.source}`:void 0;if((0,sc.default)(u)){if(!t.allowFunction)return;let{name:p}=u,g=u.toString();return g.match(/(\[native code\]|WEBPACK_IMPORTED_MODULE|__webpack_exports__|__webpack_require__)/)?`_function_${p}|${(()=>{}).toString()}`:`_function_${p}|${xd(vd(a,g))}`}if((0,ic.default)(u)){if(!t.allowSymbol)return;let p=Symbol.keyFor(u);return p!==void 0?`_gsymbol_${p}`:`_symbol_${u.toString().slice(7,-1)}`}if(o.length>=t.maxDepth)return Array.isArray(u)?`[Array(${u.length})]`:"[Object]";if(u===this)return`_duplicate_${JSON.stringify(i)}`;if(u instanceof Error&&t.allowError)return{__isConvertedError__:!0,errorProperties:{...u.cause?{cause:u.cause}:{},...u,name:u.name,message:u.message,stack:u.stack,"_constructor-name_":u.constructor.name}};if(u.constructor&&u.constructor.name&&u.constructor.name!=="Object"&&!Array.isArray(u)&&!t.allowClass)return;let c=e.get(u);if(!c){let p=Array.isArray(u)?u:Os(u);if(u.constructor&&u.constructor.name&&u.constructor.name!=="Object"&&!Array.isArray(u)&&t.allowClass)try{Object.assign(p,{"_constructor-name_":u.constructor.name})}catch{}return i.push(a),o.unshift(p),e.set(u,JSON.stringify(i)),u!==p&&r.set(u,p),p}return`_duplicate_${c}`}catch{return}},"replace")},"replacer2"),Cd=n(function reviver(options){let refs=[],root;return n(function revive(key,value){if(key===""&&(root=value,refs.forEach(({target:t,container:e,replacement:r})=>{let o=Sr(r)?JSON.parse(r):r.split(".");o.length===0?e[t]=root:e[t]=Rd(root,o)})),key==="_constructor-name_")return value;if(at(value)&&value.__isConvertedError__){let{message:t,...e}=value.errorProperties,r=new Error(t);return Object.assign(r,e),r}if(at(value)&&value["_constructor-name_"]&&options.allowFunction){let t=value["_constructor-name_"];if(t!=="Object"){let e=new Function(`return function ${t.replace(/[^a-zA-Z0-9$_]+/g,"")}(){}`)();Object.setPrototypeOf(value,new e)}return delete value["_constructor-name_"],value}if(typeof value=="string"&&value.startsWith("_function_")&&options.allowFunction){let[,name,source]=value.match(/_function_([^|]*)\|(.*)/)||[],sourceSanitized=source.replace(/[(\(\))|\\| |\]|`]*$/,"");if(!options.lazyEval)return eval(`(${sourceSanitized})`);let result=n((...args)=>{let f=eval(`(${sourceSanitized})`);return f(...args)},"result");return Object.defineProperty(result,"toString",{value:n(()=>sourceSanitized,"value")}),Object.defineProperty(result,"name",{value:name}),result}if(typeof value=="string"&&value.startsWith("_regexp_")&&options.allowRegExp){let[,t,e]=value.match(/_regexp_([^|]*)\|(.*)/)||[];return new RegExp(e,t)}return typeof value=="string"&&value.startsWith("_date_")&&options.allowDate?new Date(value.replace("_date_","")):typeof value=="string"&&value.startsWith("_duplicate_")?(refs.push({target:key,container:this,replacement:value.replace(/^_duplicate_/,"")}),null):typeof value=="string"&&value.startsWith("_symbol_")&&options.allowSymbol?Symbol(value.replace("_symbol_","")):typeof value=="string"&&value.startsWith("_gsymbol_")&&options.allowSymbol?Symbol.for(value.replace("_gsymbol_","")):typeof value=="string"&&value==="_-Infinity_"?-1/0:typeof value=="string"&&value==="_Infinity_"?1/0:typeof value=="string"&&value==="_NaN_"?NaN:typeof value=="string"&&value.startsWith("_bigint_")&&typeof BigInt=="function"?BigInt(value.replace("_bigint_","")):value},"revive")},"reviver"),Is={maxDepth:10,space:void 0,allowFunction:!0,allowRegExp:!0,allowDate:!0,allowClass:!0,allowError:!0,allowUndefined:!0,allowSymbol:!0,lazyEval:!0},pt=n((t,e={})=>{let r={...Is,...e};return JSON.stringify(Os(t),_d(r),e.space)},"stringify"),Pd=n(()=>{let t=new Map;return n(function e(r){at(r)&&Object.entries(r).forEach(([o,i])=>{i==="_undefined_"?r[o]=void 0:t.get(i)||(t.set(i,!0),e(i))}),Array.isArray(r)&&r.forEach((o,i)=>{o==="_undefined_"?(t.set(o,!0),r[i]=void 0):t.get(o)||(t.set(o,!0),e(o))})},"mutateUndefined")},"mutator"),dt=n((t,e={})=>{let r={...Is,...e},o=JSON.parse(t,Cd(r));return Pd()(o),o},"parse"),vo="Invariant failed";function fe(t,e){if(!t)throw new Error(vo)}n(fe,"invariant");var Fs=n(t=>{let e=Array.from(document.querySelectorAll("iframe[data-is-storybook]")),[r,...o]=e.filter(a=>{var c,p;try{return((c=a.contentWindow)==null?void 0:c.location.origin)===t.source.location.origin&&((p=a.contentWindow)==null?void 0:p.location.pathname)===t.source.location.pathname}catch{}try{return a.contentWindow===t.source}catch{}let u=a.getAttribute("src"),l;try{if(!u)return!1;({origin:l}=new URL(u,document.location.toString()))}catch{return!1}return l===t.origin}),i=r==null?void 0:r.getAttribute("src");if(i&&o.length===0){let{protocol:a,host:u,pathname:l}=new URL(i,document.location.toString());return`${a}//${u}${l}`}return o.length>0&&I$1.error("found multiple candidates for event source"),null},"getEventSourceUrl"),{document:wo,location:_o}=E$1,Ds="storybook-channel",Id={allowFunction:!1,maxDepth:25},Co=class{constructor(e){if(this.config=e,this.connected=!1,this.buffer=[],typeof(E$1==null?void 0:E$1.addEventListener)=="function"&&E$1.addEventListener("message",this.handleEvent.bind(this),!1),e.page!=="manager"&&e.page!=="preview")throw new Error(`postmsg-channel: "config.page" cannot be "${e.page}"`)}setHandler(e){this.handler=(...r)=>{e.apply(this,r),!this.connected&&this.getLocalFrame().length&&(this.flush(),this.connected=!0)}}send(e,r){let{target:o,allowRegExp:i,allowFunction:a,allowSymbol:u,allowDate:l,allowError:c,allowUndefined:p,allowClass:g,maxDepth:h,space:m,lazyEval:re}=r||{},ne=Object.fromEntries(Object.entries({allowRegExp:i,allowFunction:a,allowSymbol:u,allowDate:l,allowError:c,allowUndefined:p,allowClass:g,maxDepth:h,space:m,lazyEval:re}).filter(([se,he])=>typeof he<"u")),le={...Id,...E$1.CHANNEL_OPTIONS||{},...ne},J=this.getFrames(o),ce=new URLSearchParams((_o==null?void 0:_o.search)||""),F=pt({key:Ds,event:e,refId:ce.get("refId")},le);return J.length?(this.buffer.length&&this.flush(),J.forEach(se=>{try{se.postMessage(F,"*")}catch{I$1.error("sending over postmessage fail")}}),Promise.resolve(null)):new Promise((se,he)=>{this.buffer.push({event:e,resolve:se,reject:he})})}flush(){let{buffer:e}=this;this.buffer=[],e.forEach(r=>{this.send(r.event).then(r.resolve).catch(r.reject)})}getFrames(e){if(this.config.page==="manager"){let r=Array.from(wo.querySelectorAll("iframe[data-is-storybook][data-is-loaded]")).flatMap(o=>{try{return o.contentWindow&&o.dataset.isStorybook!==void 0&&o.id===e?[o.contentWindow]:[]}catch{return[]}});return r!=null&&r.length?r:this.getCurrentFrames()}return E$1&&E$1.parent&&E$1.parent!==E$1.self?[E$1.parent]:[]}getCurrentFrames(){return this.config.page==="manager"?Array.from(wo.querySelectorAll('[data-is-storybook="true"]')).flatMap(e=>e.contentWindow?[e.contentWindow]:[]):E$1&&E$1.parent?[E$1.parent]:[]}getLocalFrame(){return this.config.page==="manager"?Array.from(wo.querySelectorAll("#storybook-preview-iframe")).flatMap(e=>e.contentWindow?[e.contentWindow]:[]):E$1&&E$1.parent?[E$1.parent]:[]}handleEvent(e){try{let{data:r}=e,{key:o,event:i,refId:a}=typeof r=="string"&&Sr(r)?dt(r,E$1.CHANNEL_OPTIONS||{}):r;if(o===Ds){let u=this.config.page==="manager"?' manager ':' preview ',l=Object.values(ge).includes(i.type)?`${i.type}`:`${i.type}`;if(a&&(i.refId=a),i.source=this.config.page==="preview"?e.origin:Fs(e),!i.source){X.error(`${u} received ${l} but was unable to determine the source of the event`);return}let c=`${u} received ${l} (${r.length})`;X.debug(_o.origin!==i.source?c:`${c} (on ${_o.origin} from ${i.source})`,...i.args),fe(this.handler,"ChannelHandler should be set"),this.handler(i)}}catch(r){I$1.error(r)}}};n(Co,"PostMessageTransport");var Qe=Co,{WebSocket:Fd}=E$1,Po=15e3,Oo=5e3,Io=class{constructor({url:e,onError:r,page:o}){this.buffer=[],this.isReady=!1,this.isClosed=!1,this.pingTimeout=0,this.socket=new Fd(e),this.socket.onopen=()=>{this.isReady=!0,this.heartbeat(),this.flush()},this.socket.onmessage=({data:i})=>{let a=typeof i=="string"&&Sr(i)?dt(i):i;fe(this.handler),this.handler(a),a.type==="ping"&&(this.heartbeat(),this.send({type:"pong"}))},this.socket.onerror=i=>{r&&r(i)},this.socket.onclose=i=>{fe(this.handler),this.handler({type:Wt,args:[{reason:i.reason,code:i.code}],from:o||"preview"}),this.isClosed=!0,clearTimeout(this.pingTimeout)}}heartbeat(){clearTimeout(this.pingTimeout),this.pingTimeout=setTimeout(()=>{this.socket.close(3008,"timeout")},Po+Oo)}setHandler(e){this.handler=e}send(e){this.isClosed||(this.isReady?this.sendNow(e):this.sendLater(e))}sendLater(e){this.buffer.push(e)}sendNow(e){let r=pt(e,{maxDepth:15,allowFunction:!1,...E$1.CHANNEL_OPTIONS});this.socket.send(r)}flush(){let{buffer:e}=this;this.buffer=[],e.forEach(r=>this.send(r))}};n(Io,"WebsocketTransport");var Ze=Io,{CHANNEL_OPTIONS:Dd,CONFIG_TYPE:Nd}=E$1,kd=ie;function Ld({page:t,extraTransports:e=[]}){let r=[new Qe({page:t}),...e];if(Nd==="DEVELOPMENT"){let i=window.location.protocol==="http:"?"ws":"wss",{hostname:a,port:u}=window.location,{wsToken:l}=Dd||{},c=`${i}://${a}:${u}/storybook-server-channel?token=${l}`;r.push(new Ze({url:c,onError:n(()=>{},"onError"),page:t}))}let o=new ie({transports:r});return Q.__prepare(o,t==="manager"?Q.Environment.MANAGER:Q.Environment.PREVIEW),o}n(Ld,"createBrowserChannel");var Tr={};_e(Tr,{Addon_TypesEnum:()=>Ns});var Ns=(t=>(t.TAB="tab",t.PANEL="panel",t.TOOL="tool",t.TOOLEXTRA="toolextra",t.PREVIEW="preview",t.experimental_PAGE="page",t.experimental_SIDEBAR_BOTTOM="sidebar-bottom",t.experimental_SIDEBAR_TOP="sidebar-top",t.experimental_TEST_PROVIDER="test-provider",t))(Ns||{}),Yr={};_e(Yr,{DocsContext:()=>me,HooksContext:()=>be,Preview:()=>Me,PreviewWeb:()=>Wr,PreviewWithSelection:()=>Ue,ReporterAPI:()=>Ee,StoryStore:()=>Le,UrlStore:()=>Be,WebView:()=>He,addons:()=>te$1,applyHooks:()=>ft,combineArgs:()=>tr,combineParameters:()=>Y,composeConfigs:()=>ke,composeStepRunners:()=>Ct,composeStories:()=>qi,composeStory:()=>Pn,createPlaywrightTest:()=>Bi,decorateStory:()=>xn,defaultDecorateStory:()=>vt,definePreview:()=>ks,experimental_MockUniversalStore:()=>gt,experimental_UniversalStore:()=>Q,experimental_useUniversalStore:()=>Si,filterArgTypes:()=>Mr,getCsfFactoryAnnotations:()=>Pt,inferControls:()=>ir,makeDecorator:()=>$s,mockChannel:()=>ut,normalizeProjectAnnotations:()=>Ne,normalizeStory:()=>De,prepareMeta:()=>wt,prepareStory:()=>sr,sanitizeStoryContextUpdate:()=>vn,setDefaultProjectAnnotations:()=>Ui,setProjectAnnotations:()=>Gi,simulateDOMContentLoaded:()=>$r,simulatePageLoad:()=>ss,sortStoriesV7:()=>Ki,useArgs:()=>zs,useCallback:()=>er,useChannel:()=>Vs,useEffect:()=>Er,useGlobals:()=>Ws,useMemo:()=>Ms,useParameter:()=>Hs,useReducer:()=>Bs,useRef:()=>Gs,useState:()=>mt,useStoryContext:()=>Rr,userOrAutoTitle:()=>Wi,userOrAutoTitleFromSpecifier:()=>Fn});function ut(){let t={setHandler:n(()=>{},"setHandler"),send:n(()=>{},"send")};return new ie({transport:t})}n(ut,"mockChannel");var No=class{constructor(){this.getChannel=n(()=>{if(!this.channel){let e=ut();return this.setChannel(e),e}return this.channel},"getChannel"),this.ready=n(()=>this.promise,"ready"),this.hasChannel=n(()=>!!this.channel,"hasChannel"),this.setChannel=n(e=>{this.channel=e,this.resolve()},"setChannel"),this.promise=new Promise(e=>{this.resolve=()=>e(this.getChannel())})}};n(No,"AddonStore");var Do=No,Fo="__STORYBOOK_ADDONS_PREVIEW";function jd(){return E$1[Fo]||(E$1[Fo]=new Do),E$1[Fo]}n(jd,"getAddonsStore");var te$1=jd();function ks(t){return t}n(ks,"definePreview");var Mo=class{constructor(){this.hookListsMap=void 0,this.mountedDecorators=void 0,this.prevMountedDecorators=void 0,this.currentHooks=void 0,this.nextHookIndex=void 0,this.currentPhase=void 0,this.currentEffects=void 0,this.prevEffects=void 0,this.currentDecoratorName=void 0,this.hasUpdates=void 0,this.currentContext=void 0,this.renderListener=n(e=>{var r;e===((r=this.currentContext)==null?void 0:r.id)&&(this.triggerEffects(),this.currentContext=null,this.removeRenderListeners())},"renderListener"),this.init()}init(){this.hookListsMap=new WeakMap,this.mountedDecorators=new Set,this.prevMountedDecorators=new Set,this.currentHooks=[],this.nextHookIndex=0,this.currentPhase="NONE",this.currentEffects=[],this.prevEffects=[],this.currentDecoratorName=null,this.hasUpdates=!1,this.currentContext=null}clean(){this.prevEffects.forEach(e=>{e.destroy&&e.destroy()}),this.init(),this.removeRenderListeners()}getNextHook(){let e=this.currentHooks[this.nextHookIndex];return this.nextHookIndex+=1,e}triggerEffects(){this.prevEffects.forEach(e=>{!this.currentEffects.includes(e)&&e.destroy&&e.destroy()}),this.currentEffects.forEach(e=>{this.prevEffects.includes(e)||(e.destroy=e.create())}),this.prevEffects=this.currentEffects,this.currentEffects=[]}addRenderListeners(){this.removeRenderListeners(),te$1.getChannel().on(We,this.renderListener)}removeRenderListeners(){te$1.getChannel().removeListener(We,this.renderListener)}};n(Mo,"HooksContext");var be=Mo;function Ls(t){let e=n((...r)=>{let{hooks:o}=typeof r[0]=="function"?r[1]:r[0],i=o.currentPhase,a=o.currentHooks,u=o.nextHookIndex,l=o.currentDecoratorName;o.currentDecoratorName=t.name,o.prevMountedDecorators.has(t)?(o.currentPhase="UPDATE",o.currentHooks=o.hookListsMap.get(t)||[]):(o.currentPhase="MOUNT",o.currentHooks=[],o.hookListsMap.set(t,o.currentHooks),o.prevMountedDecorators.add(t)),o.nextHookIndex=0;let c=E$1.STORYBOOK_HOOKS_CONTEXT;E$1.STORYBOOK_HOOKS_CONTEXT=o;let p=t(...r);if(E$1.STORYBOOK_HOOKS_CONTEXT=c,o.currentPhase==="UPDATE"&&o.getNextHook()!=null)throw new Error("Rendered fewer hooks than expected. This may be caused by an accidental early return statement.");return o.currentPhase=i,o.currentHooks=a,o.nextHookIndex=u,o.currentDecoratorName=l,p},"hookified");return e.originalFn=t,e}n(Ls,"hookify");var ko=0,Md=25,ft=n(t=>(e,r)=>{let o=t(Ls(e),r.map(i=>Ls(i)));return i=>{let{hooks:a}=i;a.prevMountedDecorators??(a.prevMountedDecorators=new Set),a.mountedDecorators=new Set([e,...r]),a.currentContext=i,a.hasUpdates=!1;let u=o(i);for(ko=1;a.hasUpdates;)if(a.hasUpdates=!1,a.currentEffects=[],u=o(i),ko+=1,ko>Md)throw new Error("Too many re-renders. Storybook limits the number of renders to prevent an infinite loop.");return a.addRenderListeners(),u}},"applyHooks"),Ud=n((t,e)=>t.length===e.length&&t.every((r,o)=>r===e[o]),"areDepsEqual"),Lo=n(()=>new Error("Storybook preview hooks can only be called inside decorators and story functions."),"invalidHooksError");function js(){return E$1.STORYBOOK_HOOKS_CONTEXT||null}n(js,"getHooksContextOrNull");function jo(){let t=js();if(t==null)throw Lo();return t}n(jo,"getHooksContextOrThrow");function Gd(t,e,r){let o=jo();if(o.currentPhase==="MOUNT"){r!=null&&!Array.isArray(r)&&I$1.warn(`${t} received a final argument that is not an array (instead, received ${r}). When specified, the final argument must be an array.`);let i={name:t,deps:r};return o.currentHooks.push(i),e(i),i}if(o.currentPhase==="UPDATE"){let i=o.getNextHook();if(i==null)throw new Error("Rendered more hooks than during the previous render.");return i.name!==t&&I$1.warn(`Storybook has detected a change in the order of Hooks${o.currentDecoratorName?` called by ${o.currentDecoratorName}`:""}. This will lead to bugs and errors if not fixed.`),r!=null&&i.deps==null&&I$1.warn(`${t} received a final argument during this render, but not during the previous render. Even though the final argument is optional, its type cannot change between renders.`),r!=null&&i.deps!=null&&r.length!==i.deps.length&&I$1.warn(`The final argument passed to ${t} changed size between renders. The order and size of this array must remain constant. +Previous: ${i.deps} +Incoming: ${r}`),(r==null||i.deps==null||!Ud(r,i.deps))&&(e(i),i.deps=r),i}throw Lo()}n(Gd,"useHook");function yt(t,e,r){let{memoizedState:o}=Gd(t,i=>{i.memoizedState=e()},r);return o}n(yt,"useMemoLike");function Ms(t,e){return yt("useMemo",t,e)}n(Ms,"useMemo");function er(t,e){return yt("useCallback",()=>t,e)}n(er,"useCallback");function Us(t,e){return yt(t,()=>({current:e}),[])}n(Us,"useRefLike");function Gs(t){return Us("useRef",t)}n(Gs,"useRef");function qd(){let t=js();if(t!=null&&t.currentPhase!=="NONE")t.hasUpdates=!0;else try{te$1.getChannel().emit(dr)}catch{I$1.warn("State updates of Storybook preview hooks work only in browser")}}n(qd,"triggerUpdate");function qs(t,e){let r=Us(t,typeof e=="function"?e():e),o=n(i=>{r.current=typeof i=="function"?i(r.current):i,qd()},"setState");return[r.current,o]}n(qs,"useStateLike");function mt(t){return qs("useState",t)}n(mt,"useState");function Bs(t,e,r){let o=r!=null?()=>r(e):e,[i,a]=qs("useReducer",o);return[i,n(u=>a(l=>t(l,u)),"dispatch")]}n(Bs,"useReducer");function Er(t,e){let r=jo(),o=yt("useEffect",()=>({create:t}),e);r.currentEffects.includes(o)||r.currentEffects.push(o)}n(Er,"useEffect");function Vs(t,e=[]){let r=te$1.getChannel();return Er(()=>(Object.entries(t).forEach(([o,i])=>r.on(o,i)),()=>{Object.entries(t).forEach(([o,i])=>r.removeListener(o,i))}),[...Object.keys(t),...e]),er(r.emit.bind(r),[r])}n(Vs,"useChannel");function Rr(){let{currentContext:t}=jo();if(t==null)throw Lo();return t}n(Rr,"useStoryContext");function Hs(t,e){let{parameters:r}=Rr();if(t)return r[t]??e}n(Hs,"useParameter");function zs(){let t=te$1.getChannel(),{id:e,args:r}=Rr(),o=er(a=>t.emit(yr,{storyId:e,updatedArgs:a}),[t,e]),i=er(a=>t.emit(ur,{storyId:e,argNames:a}),[t,e]);return[r,o,i]}n(zs,"useArgs");function Ws(){let t=te$1.getChannel(),{globals:e}=Rr(),r=er(o=>t.emit(fr,{globals:o}),[t]);return[e,r]}n(Ws,"useGlobals");var $s=n(({name:t,parameterName:e,wrapper:r,skipIfNoParametersOrOptions:o=!1})=>{let i=n(a=>(u,l)=>{let c=l.parameters&&l.parameters[e];return c&&c.disable||o&&!a&&!c?u(l):r(u,l,{options:a,parameters:c})},"decorator");return(...a)=>typeof a[0]=="function"?i()(...a):(...u)=>{if(u.length>1)return a.length>1?i(a)(...u):i(...a)(...u);throw new Error(`Passing stories directly into ${t}() is not allowed, + instead use addDecorator(${t}) and pass options with the '${e}' parameter`)}},"makeDecorator");function Uo(t,e){let r={},o=Object.entries(t);for(let i=0;iObject.prototype.propertyIsEnumerable.call(t,e))}n(Vo,"getSymbols");function Ho(t){return t==null?t===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(t)}n(Ho,"getTag");function Ar(t,e){if(typeof t==typeof e)switch(typeof t){case"bigint":case"string":case"boolean":case"symbol":case"undefined":return t===e;case"number":return t===e||Object.is(t,e);case"function":return t===e;case"object":return ye(t,e)}return ye(t,e)}n(Ar,"isEqual");function ye(t,e,r){if(Object.is(t,e))return!0;let o=Ho(t),i=Ho(e);if(o===Bo&&(o=ht),i===Bo&&(i=ht),o!==i)return!1;switch(o){case Ks:return t.toString()===e.toString();case Xs:{let l=t.valueOf(),c=e.valueOf();return l===c||Number.isNaN(l)&&Number.isNaN(c)}case Js:case Zs:case Qs:return Object.is(t.valueOf(),e.valueOf());case Ys:return t.source===e.source&&t.flags===e.flags;case oi:return t===e}r=r??new Map;let a=r.get(t),u=r.get(e);if(a!=null&&u!=null)return a===e;r.set(t,e),r.set(e,t);try{switch(o){case ei:{if(t.size!==e.size)return!1;for(let[l,c]of t.entries())if(!e.has(l)||!ye(c,e.get(l),r))return!1;return!0}case ri:{if(t.size!==e.size)return!1;let l=Array.from(t.values()),c=Array.from(e.values());for(let p=0;pye(g,m,r));if(h===-1)return!1;c.splice(h,1)}return!0}case ti:case ai:case li:case ci:case pi:case di:case ui:case fi:case yi:case mi:case hi:case gi:{if(typeof Buffer<"u"&&Buffer.isBuffer(t)!==Buffer.isBuffer(e)||t.length!==e.length)return!1;for(let l=0;l{let[r,o]=mt(e?e(t.getState()):t.getState());return Er(()=>t.onStateChange((i,a)=>{if(!e){o(i);return}let u=e(i),l=e(a);!Ar(u,l)&&o(u)}),[t,o,e]),[r,t.setState]},"useUniversalStore"),St=class zn extends Q{constructor(e,r){Q.isInternalConstructing=!0,super({...e,leader:!0},{channel:new ie({}),environment:Q.Environment.MOCK}),Q.isInternalConstructing=!1,typeof(r==null?void 0:r.fn)=="function"&&(this.testUtils=r,this.getState=r.fn(this.getState),this.setState=r.fn(this.setState),this.subscribe=r.fn(this.subscribe),this.onStateChange=r.fn(this.onStateChange),this.send=r.fn(this.send))}static create(e,r){return new zn(e,r)}unsubscribeAll(){var r,o;if(!this.testUtils)throw new Error(ps`Cannot call unsubscribeAll on a store that does not have testUtils. + Please provide testUtils as the second argument when creating the store.`);let e=n(i=>{try{i.value()}catch{}},"callReturnedUnsubscribeFn");(r=this.subscribe.mock)==null||r.results.forEach(e),(o=this.onStateChange.mock)==null||o.results.forEach(e)}};n(St,"MockUniversalStore");var gt=St,kr={};_e(kr,{CalledExtractOnStoreError:()=>vr,CalledPreviewMethodBeforeInitializationError:()=>V,Category:()=>Ti,EmptyIndexError:()=>Pr,ImplicitActionsDuringRendering:()=>zo,MdxFileWithNoCsfReferencesError:()=>Cr,MissingRenderToCanvasError:()=>wr,MissingStoryAfterHmrError:()=>xr,MissingStoryFromCsfFileError:()=>Ir,MountMustBeDestructuredError:()=>Oe,NextJsSharpError:()=>Wo,NextjsRouterMocksNotAvailable:()=>$o,NoRenderFunctionError:()=>Dr,NoStoryMatchError:()=>Or,NoStoryMountedError:()=>Nr,StoryIndexFetchError:()=>_r,StoryStoreAccessedBeforeInitializationError:()=>Fr,UnknownArgTypesError:()=>Yo,UnsupportedViewportDimensionError:()=>Ko});function bi({code:t,category:e}){let r=String(t).padStart(4,"0");return`SB_${e}_${r}`}n(bi,"parseErrorCode");var bt=class Jn extends Error{constructor(e){super(Jn.getFullMessage(e)),this.data={},this.fromStorybook=!0,this.category=e.category,this.documentation=e.documentation??!1,this.code=e.code}get fullErrorCode(){return bi({code:this.code,category:this.category})}get name(){let e=this.constructor.name;return`${this.fullErrorCode} (${e})`}static getFullMessage({documentation:e,code:r,category:o,message:i}){let a;return e===!0?a=`https://storybook.js.org/error/${bi({code:r,category:o})}`:typeof e=="string"?a=e:Array.isArray(e)&&(a=` +${e.map(u=>` - ${u}`).join(` +`)}`),`${i}${a!=null?` + +More info: ${a} +`:""}`}};n(bt,"StorybookError");var G=bt,Ti=(t=>(t.BLOCKS="BLOCKS",t.DOCS_TOOLS="DOCS-TOOLS",t.PREVIEW_CLIENT_LOGGER="PREVIEW_CLIENT-LOGGER",t.PREVIEW_CHANNELS="PREVIEW_CHANNELS",t.PREVIEW_CORE_EVENTS="PREVIEW_CORE-EVENTS",t.PREVIEW_INSTRUMENTER="PREVIEW_INSTRUMENTER",t.PREVIEW_API="PREVIEW_API",t.PREVIEW_REACT_DOM_SHIM="PREVIEW_REACT-DOM-SHIM",t.PREVIEW_ROUTER="PREVIEW_ROUTER",t.PREVIEW_THEMING="PREVIEW_THEMING",t.RENDERER_HTML="RENDERER_HTML",t.RENDERER_PREACT="RENDERER_PREACT",t.RENDERER_REACT="RENDERER_REACT",t.RENDERER_SERVER="RENDERER_SERVER",t.RENDERER_SVELTE="RENDERER_SVELTE",t.RENDERER_VUE="RENDERER_VUE",t.RENDERER_VUE3="RENDERER_VUE3",t.RENDERER_WEB_COMPONENTS="RENDERER_WEB-COMPONENTS",t.FRAMEWORK_NEXTJS="FRAMEWORK_NEXTJS",t.ADDON_VITEST="ADDON_VITEST",t))(Ti||{}),Xo=class extends G{constructor(e){super({category:"PREVIEW_API",code:1,message:_$1` + Couldn't find story matching id '${e.storyId}' after HMR. + - Did you just rename a story? + - Did you remove it from your CSF file? + - Are you sure a story with the id '${e.storyId}' exists? + - Please check the values in the stories field of your main.js config and see if they would match your CSF File. + - Also check the browser console and terminal for potential error messages.`}),this.data=e}};n(Xo,"MissingStoryAfterHmrError");var xr=Xo,Jo=class extends G{constructor(e){super({category:"PREVIEW_API",code:2,documentation:"https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#using-implicit-actions-during-rendering-is-deprecated-for-example-in-the-play-function",message:_$1` + We detected that you use an implicit action arg while ${e.phase} of your story. + ${e.deprecated?` +This is deprecated and won't work in Storybook 8 anymore. +`:""} + Please provide an explicit spy to your args like this: + import { fn } from '@storybook/test'; + ... + args: { + ${e.name}: fn() + }`}),this.data=e}};n(Jo,"ImplicitActionsDuringRendering");var zo=Jo,Qo=class extends G{constructor(){super({category:"PREVIEW_API",code:3,message:_$1` + Cannot call \`storyStore.extract()\` without calling \`storyStore.cacheAllCsfFiles()\` first. + + You probably meant to call \`await preview.extract()\` which does the above for you.`})}};n(Qo,"CalledExtractOnStoreError");var vr=Qo,Zo=class extends G{constructor(){super({category:"PREVIEW_API",code:4,message:_$1` + Expected your framework's preset to export a \`renderToCanvas\` field. + + Perhaps it needs to be upgraded for Storybook 7.0?`,documentation:"https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#mainjs-framework-field"})}};n(Zo,"MissingRenderToCanvasError");var wr=Zo,en=class extends G{constructor(e){super({category:"PREVIEW_API",code:5,message:_$1` + Called \`Preview.${e.methodName}()\` before initialization. + + The preview needs to load the story index before most methods can be called. If you want + to call \`${e.methodName}\`, try \`await preview.initializationPromise;\` first. + + If you didn't call the above code, then likely it was called by an addon that needs to + do the above.`}),this.data=e}};n(en,"CalledPreviewMethodBeforeInitializationError");var V=en,rn=class extends G{constructor(e){super({category:"PREVIEW_API",code:6,message:_$1` + Error fetching \`/index.json\`: + + ${e.text} + + If you are in development, this likely indicates a problem with your Storybook process, + check the terminal for errors. + + If you are in a deployed Storybook, there may have been an issue deploying the full Storybook + build.`}),this.data=e}};n(rn,"StoryIndexFetchError");var _r=rn,tn=class extends G{constructor(e){super({category:"PREVIEW_API",code:7,message:_$1` + Tried to render docs entry ${e.storyId} but it is a MDX file that has no CSF + references, or autodocs for a CSF file that some doesn't refer to itself. + + This likely is an internal error in Storybook's indexing, or you've attached the + \`attached-mdx\` tag to an MDX file that is not attached.`}),this.data=e}};n(tn,"MdxFileWithNoCsfReferencesError");var Cr=tn,on=class extends G{constructor(){super({category:"PREVIEW_API",code:8,message:_$1` + Couldn't find any stories in your Storybook. + + - Please check your stories field of your main.js config: does it match correctly? + - Also check the browser console and terminal for error messages.`})}};n(on,"EmptyIndexError");var Pr=on,nn=class extends G{constructor(e){super({category:"PREVIEW_API",code:9,message:_$1` + Couldn't find story matching '${e.storySpecifier}'. + + - Are you sure a story with that id exists? + - Please check your stories field of your main.js config. + - Also check the browser console and terminal for error messages.`}),this.data=e}};n(nn,"NoStoryMatchError");var Or=nn,sn=class extends G{constructor(e){super({category:"PREVIEW_API",code:10,message:_$1` + Couldn't find story matching id '${e.storyId}' after importing a CSF file. + + The file was indexed as if the story was there, but then after importing the file in the browser + we didn't find the story. Possible reasons: + - You are using a custom story indexer that is misbehaving. + - You have a custom file loader that is removing or renaming exports. + + Please check your browser console and terminal for errors that may explain the issue.`}),this.data=e}};n(sn,"MissingStoryFromCsfFileError");var Ir=sn,an=class extends G{constructor(){super({category:"PREVIEW_API",code:11,message:_$1` + Cannot access the Story Store until the index is ready. + + It is not recommended to use methods directly on the Story Store anyway, in Storybook 9 we will + remove access to the store entirely`})}};n(an,"StoryStoreAccessedBeforeInitializationError");var Fr=an,ln=class extends G{constructor(e){super({category:"PREVIEW_API",code:12,message:_$1` + Incorrect use of mount in the play function. + + To use mount in the play function, you must satisfy the following two requirements: + + 1. You *must* destructure the mount property from the \`context\` (the argument passed to your play function). + This makes sure that Storybook does not start rendering the story before the play function begins. + + 2. Your Storybook framework or builder must be configured to transpile to ES2017 or newer. + This is because destructuring statements and async/await usages are otherwise transpiled away, + which prevents Storybook from recognizing your usage of \`mount\`. + + Note that Angular is not supported. As async/await is transpiled to support the zone.js polyfill. + + More info: https://storybook.js.org/docs/writing-tests/interaction-testing#run-code-before-the-component-gets-rendered + + Received the following play function: + ${e.playFunction}`}),this.data=e}};n(ln,"MountMustBeDestructuredError");var Oe=ln,cn=class extends G{constructor(e){super({category:"PREVIEW_API",code:14,message:_$1` + No render function available for storyId '${e.id}' + `}),this.data=e}};n(cn,"NoRenderFunctionError");var Dr=cn,pn=class extends G{constructor(){super({category:"PREVIEW_API",code:15,message:_$1` + No component is mounted in your story. + + This usually occurs when you destructure mount in the play function, but forget to call it. + + For example: + + async play({ mount, canvasElement }) { + // 👈 mount should be called: await mount(); + const canvas = within(canvasElement); + const button = await canvas.findByRole('button'); + await userEvent.click(button); + }; + + Make sure to either remove it or call mount in your play function. + `})}};n(pn,"NoStoryMountedError");var Nr=pn,dn=class extends G{constructor(){super({category:"FRAMEWORK_NEXTJS",code:1,documentation:"https://storybook.js.org/docs/get-started/nextjs#faq",message:_$1` + You are importing avif images, but you don't have sharp installed. + + You have to install sharp in order to use image optimization features in Next.js. + `})}};n(dn,"NextJsSharpError");var Wo=dn,un=class extends G{constructor(e){super({category:"FRAMEWORK_NEXTJS",code:2,message:_$1` + Tried to access router mocks from "${e.importType}" but they were not created yet. You might be running code in an unsupported environment. + `}),this.data=e}};n(un,"NextjsRouterMocksNotAvailable");var $o=un,fn=class extends G{constructor(e){super({category:"DOCS-TOOLS",code:1,documentation:"https://github.com/storybookjs/storybook/issues/26606",message:_$1` + There was a failure when generating detailed ArgTypes in ${e.language} for: + ${JSON.stringify(e.type,null,2)} + + Storybook will fall back to use a generic type description instead. + + This type is either not supported or it is a bug in the docgen generation in Storybook. + If you think this is a bug, please detail it as much as possible in the Github issue. + `}),this.data=e}};n(fn,"UnknownArgTypesError");var Yo=fn,yn=class extends G{constructor(e){super({category:"ADDON_VITEST",code:1,message:_$1` + Encountered an unsupported value "${e.value}" when setting the viewport ${e.dimension} dimension. + + The Storybook plugin only supports values in the following units: + - px, vh, vw, em, rem and %. + + You can either change the viewport for this story to use one of the supported units or skip the test by adding '!test' to the story's tags per https://storybook.js.org/docs/writing-stories/tags + `}),this.data=e}};n(yn,"UnsupportedViewportDimensionError");var Ko=yn,Ot=ue(it()),rr=Symbol("incompatible"),mn=n((t,e)=>{let r=e.type;if(t==null||!r||e.mapping)return t;switch(r.name){case"string":return String(t);case"enum":return t;case"number":return Number(t);case"boolean":return String(t)==="true";case"array":return!r.value||!Array.isArray(t)?rr:t.reduce((o,i,a)=>{let u=mn(i,{type:r.value});return u!==rr&&(o[a]=u),o},new Array(t.length));case"object":return typeof t=="string"||typeof t=="number"?t:!r.value||typeof t!="object"?rr:Object.entries(t).reduce((o,[i,a])=>{let u=mn(a,{type:r.value[i]});return u===rr?o:Object.assign(o,{[i]:u})},{});default:return rr}},"map"),Ei=n((t,e)=>Object.entries(t).reduce((r,[o,i])=>{if(!e[o])return r;let a=mn(i,e[o]);return a===rr?r:Object.assign(r,{[o]:a})},{}),"mapArgsToTypes"),tr=n((t,e)=>Array.isArray(t)&&Array.isArray(e)?e.reduce((r,o,i)=>(r[i]=tr(t[i],e[i]),r),[...t]).filter(r=>r!==void 0):!$$1(t)||!$$1(e)?e:Object.keys({...t,...e}).reduce((r,o)=>{if(o in e){let i=tr(t[o],e[o]);i!==void 0&&(r[o]=i)}else r[o]=t[o];return r},{}),"combineArgs"),Ri=n((t,e)=>Object.entries(e).reduce((r,[o,{options:i}])=>{function a(){return o in t&&(r[o]=t[o]),r}if(n(a,"allowArg"),!i)return a();if(!Array.isArray(i))return j$1.error(_$1` + Invalid argType: '${o}.options' should be an array. + + More info: https://storybook.js.org/docs/api/arg-types + `),a();if(i.some(h=>h&&["object","function"].includes(typeof h)))return j$1.error(_$1` + Invalid argType: '${o}.options' should only contain primitives. Use a 'mapping' for complex values. + + More info: https://storybook.js.org/docs/writing-stories/args#mapping-to-complex-arg-values + `),a();let u=Array.isArray(t[o]),l=u&&t[o].findIndex(h=>!i.includes(h)),c=u&&l===-1;if(t[o]===void 0||i.includes(t[o])||c)return a();let p=u?`${o}[${l}]`:o,g=i.map(h=>typeof h=="string"?`'${h}'`:String(h)).join(", ");return j$1.warn(`Received illegal value for '${p}'. Supported options: ${g}`),r},{}),"validateOptions"),Ie=Symbol("Deeply equal"),or=n((t,e)=>{if(typeof t!=typeof e)return e;if(Ar(t,e))return Ie;if(Array.isArray(t)&&Array.isArray(e)){let r=e.reduce((o,i,a)=>{let u=or(t[a],i);return u!==Ie&&(o[a]=u),o},new Array(e.length));return e.length>=t.length?r:r.concat(new Array(t.length-e.length).fill(void 0))}return $$1(t)&&$$1(e)?Object.keys({...t,...e}).reduce((r,o)=>{let i=or(t==null?void 0:t[o],e==null?void 0:e[o]);return i===Ie?r:Object.assign(r,{[o]:i})},{}):e},"deepDiff"),hn="UNTARGETED";function Ai({args:t,argTypes:e}){let r={};return Object.entries(t).forEach(([o,i])=>{let{target:a=hn}=e[o]||{};r[a]=r[a]||{},r[a][o]=i}),r}n(Ai,"groupArgsByTarget");function Bd(t){return Object.keys(t).forEach(e=>t[e]===void 0&&delete t[e]),t}n(Bd,"deleteUndefined");var gn=class{constructor(){this.initialArgsByStoryId={},this.argsByStoryId={}}get(e){if(!(e in this.argsByStoryId))throw new Error(`No args known for ${e} -- has it been rendered yet?`);return this.argsByStoryId[e]}setInitial(e){if(!this.initialArgsByStoryId[e.id])this.initialArgsByStoryId[e.id]=e.initialArgs,this.argsByStoryId[e.id]=e.initialArgs;else if(this.initialArgsByStoryId[e.id]!==e.initialArgs){let r=or(this.initialArgsByStoryId[e.id],this.argsByStoryId[e.id]);this.initialArgsByStoryId[e.id]=e.initialArgs,this.argsByStoryId[e.id]=e.initialArgs,r!==Ie&&this.updateFromDelta(e,r)}}updateFromDelta(e,r){let o=Ri(r,e.argTypes);this.argsByStoryId[e.id]=tr(this.argsByStoryId[e.id],o)}updateFromPersisted(e,r){let o=Ei(r,e.argTypes);return this.updateFromDelta(e,o)}update(e,r){if(!(e in this.argsByStoryId))throw new Error(`No args known for ${e} -- has it been rendered yet?`);this.argsByStoryId[e]=Bd({...this.argsByStoryId[e],...r})}};n(gn,"ArgsStore");var Tt=gn,Et=n((t={})=>Object.entries(t).reduce((e,[r,{defaultValue:o}])=>(typeof o<"u"&&(e[r]=o),e),{}),"getValuesFromArgTypes"),Sn=class{constructor({globals:e={},globalTypes:r={}}){this.set({globals:e,globalTypes:r})}set({globals:e={},globalTypes:r={}}){let o=this.initialGlobals&&or(this.initialGlobals,this.globals);this.allowedGlobalNames=new Set([...Object.keys(e),...Object.keys(r)]);let i=Et(r);this.initialGlobals={...i,...e},this.globals=this.initialGlobals,o&&o!==Ie&&this.updateFromPersisted(o)}filterAllowedGlobals(e){return Object.entries(e).reduce((r,[o,i])=>(this.allowedGlobalNames.has(o)?r[o]=i:I$1.warn(`Attempted to set a global (${o}) that is not defined in initial globals or globalTypes`),r),{})}updateFromPersisted(e){let r=this.filterAllowedGlobals(e);this.globals={...this.globals,...r}}get(){return this.globals}update(e){this.globals={...this.globals,...this.filterAllowedGlobals(e)}}};n(Sn,"GlobalsStore");var Rt=Sn,xi=ue(it()),Vd=(0,xi.default)(1)(t=>Object.values(t).reduce((e,r)=>(e[r.importPath]=e[r.importPath]||r,e),{})),bn=class{constructor({entries:e}={v:5,entries:{}}){this.entries=e}entryFromSpecifier(e){let r=Object.values(this.entries);if(e==="*")return r[0];if(typeof e=="string")return this.entries[e]?this.entries[e]:r.find(a=>a.id.startsWith(e));let{name:o,title:i}=e;return r.find(a=>a.name===o&&a.title===i)}storyIdToEntry(e){let r=this.entries[e];if(!r)throw new xr({storyId:e});return r}importPathToEntry(e){return Vd(this.entries)[e]}};n(bn,"StoryIndexStore");var At=bn,Hd=n(t=>typeof t=="string"?{name:t}:t,"normalizeType"),zd=n(t=>typeof t=="string"?{type:t}:t,"normalizeControl"),Wd=n((t,e)=>{let{type:r,control:o,...i}=t,a={name:e,...i};return r&&(a.type=Hd(r)),o?a.control=zd(o):o===!1&&(a.control={disable:!0}),a},"normalizeInputType"),Fe=n(t=>oe(t,Wd),"normalizeInputTypes");function vi(t){return t.replace(/_/g," ").replace(/-/g," ").replace(/\./g," ").replace(/([^\n])([A-Z])([a-z])/g,(e,r,o,i)=>`${r} ${o}${i}`).replace(/([a-z])([A-Z])/g,(e,r,o)=>`${r} ${o}`).replace(/([a-z])([0-9])/gi,(e,r,o)=>`${r} ${o}`).replace(/([0-9])([a-z])/gi,(e,r,o)=>`${r} ${o}`).replace(/(\s|^)(\w)/g,(e,r,o)=>`${r}${o.toUpperCase()}`).replace(/ +/g," ").trim()}n(vi,"toStartCaseStr");var En=ue(wi()),_i=n(t=>t.map(e=>typeof e<"u").filter(Boolean).length,"count"),$d=n((t,e)=>{let{exists:r,eq:o,neq:i,truthy:a}=t;if(_i([r,o,i,a])>1)throw new Error(`Invalid conditional test ${JSON.stringify({exists:r,eq:o,neq:i})}`);if(typeof o<"u")return(0,En.isEqual)(e,o);if(typeof i<"u")return!(0,En.isEqual)(e,i);if(typeof r<"u"){let u=typeof e<"u";return r?u:!u}return typeof a>"u"||a?!!e:!e},"testValue"),Rn=n((t,e,r)=>{if(!t.if)return!0;let{arg:o,global:i}=t.if;if(_i([o,i])!==1)throw new Error(`Invalid conditional value ${JSON.stringify({arg:o,global:i})}`);let a=o?e[o]:r[i];return $d(t.if,a)},"includeConditionalArg");function nr(t){return t!=null&&typeof t=="object"&&"_tag"in t&&(t==null?void 0:t._tag)==="Story"}n(nr,"isStory");var An=n(t=>t.toLowerCase().replace(/[ ’–—―′¿'`~!@#$%^&*()_|+\-=?;:'",.<>\{\}\[\]\\\/]/gi,"-").replace(/-+/g,"-").replace(/^-+/,"").replace(/-+$/,""),"sanitize"),Ci=n((t,e)=>{let r=An(t);if(r==="")throw new Error(`Invalid ${e} '${t}', must include alphanumeric characters`);return r},"sanitizeSafe"),Oi=n((t,e)=>`${Ci(t,"kind")}${e?`--${Ci(e,"name")}`:""}`,"toId"),Ii=n(t=>vi(t),"storyNameFromExport");function Pi(t,e){return Array.isArray(e)?e.includes(t):t.match(e)}n(Pi,"matches");function Lr(t,{includeStories:e,excludeStories:r}){return t!=="__esModule"&&(!e||Pi(t,e))&&(!r||!Pi(t,r))}n(Lr,"isExportStory");var Fi=n((...t)=>{let e=t.reduce((r,o)=>(o.startsWith("!")?r.delete(o.slice(1)):r.add(o),r),new Set);return Array.from(e)},"combineTags"),k=n(t=>Array.isArray(t)?t:t?[t]:[],"normalizeArrays"),Yd=_$1` +CSF .story annotations deprecated; annotate story functions directly: +- StoryFn.story.name => StoryFn.storyName +- StoryFn.story.(parameters|decorators) => StoryFn.(parameters|decorators) +See https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#hoisted-csf-annotations for details and codemod. +`;function De(t,e,r){let o=e,i=typeof e=="function"?e:null,{story:a}=o;a&&(I$1.debug("deprecated story",a),ae(Yd));let u=Ii(t),l=typeof o!="function"&&o.name||o.storyName||(a==null?void 0:a.name)||u,c=[...k(o.decorators),...k(a==null?void 0:a.decorators)],p={...a==null?void 0:a.parameters,...o.parameters},g={...a==null?void 0:a.args,...o.args},h={...a==null?void 0:a.argTypes,...o.argTypes},m=[...k(o.loaders),...k(a==null?void 0:a.loaders)],re=[...k(o.beforeEach),...k(a==null?void 0:a.beforeEach)],ne=[...k(o.experimental_afterEach),...k(a==null?void 0:a.experimental_afterEach)],{render:le,play:J,tags:ce=[],globals:F={}}=o,se=p.__id||Oi(r.id,u);return{moduleExport:e,id:se,name:l,tags:ce,decorators:c,parameters:p,args:g,argTypes:Fe(h),loaders:m,beforeEach:re,experimental_afterEach:ne,globals:F,...le&&{render:le},...i&&{userStoryFn:i},...J&&{play:J}}}n(De,"normalizeStory");function jr(t,e=t.title,r){let{id:o,argTypes:i}=t;return{id:An(o||e),...t,title:e,...i&&{argTypes:Fe(i)},parameters:{fileName:r,...t.parameters}}}n(jr,"normalizeComponentAnnotations");var Kd=n(t=>{let{globals:e,globalTypes:r}=t;(e||r)&&I$1.error("Global args/argTypes can only be set globally",JSON.stringify({globals:e,globalTypes:r}))},"checkGlobals"),Xd=n(t=>{let{options:e}=t;e!=null&&e.storySort&&I$1.error("The storySort option parameter can only be set globally")},"checkStorySort"),xt=n(t=>{t&&(Kd(t),Xd(t))},"checkDisallowedParameters");function Di(t,e,r){let{default:o,__namedExportsOrder:i,...a}=t,u=Object.values(a)[0];if(nr(u)){let p=jr(u.meta.input,r,e);xt(p.parameters);let g={meta:p,stories:{},moduleExports:t};return Object.keys(a).forEach(h=>{if(Lr(h,p)){let m=De(h,a[h].input,p);xt(m.parameters),g.stories[m.id]=m}}),g.projectAnnotations=u.meta.preview.composed,g}let l=jr(o,r,e);xt(l.parameters);let c={meta:l,stories:{},moduleExports:t};return Object.keys(a).forEach(p=>{if(Lr(p,l)){let g=De(p,a[p],l);xt(g.parameters),c.stories[g.id]=g}}),c}n(Di,"processCSFFile");function ki(t){return t!=null&&Jd(t).includes("mount")}n(ki,"mountDestructured");function Jd(t){let e=t.toString().match(/[^(]*\(([^)]*)/);if(!e)return[];let r=Ni(e[1]);if(!r.length)return[];let o=r[0];return o.startsWith("{")&&o.endsWith("}")?Ni(o.slice(1,-1).replace(/\s/g,"")).map(i=>i.replace(/:.*|=.*/g,"")):[]}n(Jd,"getUsedProps");function Ni(t){let e=[],r=[],o=0;for(let a=0;ae(o,i)}n(xn,"decorateStory");function vn({componentId:t,title:e,kind:r,id:o,name:i,story:a,parameters:u,initialArgs:l,argTypes:c,...p}={}){return p}n(vn,"sanitizeStoryContextUpdate");function vt(t,e){let r={},o=n(a=>u=>{if(!r.value)throw new Error("Decorated function called without init");return r.value={...r.value,...vn(u)},a(r.value)},"bindWithContext"),i=e.reduce((a,u)=>xn(a,u,o),t);return a=>(r.value=a,i(a))}n(vt,"defaultDecorateStory");var Y=n((...t)=>{let e={},r=t.filter(Boolean),o=r.reduce((i,a)=>(Object.entries(a).forEach(([u,l])=>{let c=i[u];Array.isArray(l)||typeof c>"u"?i[u]=l:$$1(l)&&$$1(c)?e[u]=!0:typeof l<"u"&&(i[u]=l)}),i),{});return Object.keys(e).forEach(i=>{let a=r.filter(Boolean).map(u=>u[i]).filter(u=>typeof u<"u");a.every(u=>$$1(u))?o[i]=Y(...a):o[i]=a[a.length-1]}),o},"combineParameters");function sr(t,e,r){let{moduleExport:o,id:i,name:a}=t||{},u=Li(t,e,r),l=n(async ve=>{let we={};for(let Lt of[..."__STORYBOOK_TEST_LOADERS__"in E$1&&Array.isArray(E$1.__STORYBOOK_TEST_LOADERS__)?[E$1.__STORYBOOK_TEST_LOADERS__]:[],k(r.loaders),k(e.loaders),k(t.loaders)]){if(ve.abortSignal.aborted)return we;let Nt=await Promise.all(Lt.map(Ft=>Ft(ve)));Object.assign(we,...Nt)}return we},"applyLoaders"),c=n(async ve=>{let we=new Array;for(let Lt of[...k(r.beforeEach),...k(e.beforeEach),...k(t.beforeEach)]){if(ve.abortSignal.aborted)return we;let Nt=await Lt(ve);Nt&&we.push(Nt)}return we},"applyBeforeEach"),p=n(async ve=>{let we=[...k(r.experimental_afterEach),...k(e.experimental_afterEach),...k(t.experimental_afterEach)].reverse();for(let Lt of we){if(ve.abortSignal.aborted)return;await Lt(ve)}},"applyAfterEach"),g=n(ve=>ve.originalStoryFn(ve.args,ve),"undecoratedStoryFn"),{applyDecorators:h=vt,runStep:m}=r,re=[...k(t==null?void 0:t.decorators),...k(e==null?void 0:e.decorators),...k(r==null?void 0:r.decorators)],ne=(t==null?void 0:t.userStoryFn)||(t==null?void 0:t.render)||e.render||r.render,le=ft(h)(g,re),J=n(ve=>le(ve),"unboundStoryFn"),ce=(t==null?void 0:t.play)??(e==null?void 0:e.play),F=ki(ce);if(!ne&&!F)throw new Dr({id:i});let se=n(ve=>async()=>(await ve.renderToCanvas(),ve.canvas),"defaultMount"),he=t.mount??e.mount??r.mount??se,qe=r.testingLibraryRender;return{storyGlobals:{},...u,moduleExport:o,id:i,name:a,story:a,originalStoryFn:ne,undecoratedStoryFn:g,unboundStoryFn:J,applyLoaders:l,applyBeforeEach:c,applyAfterEach:p,playFunction:ce,runStep:m,mount:he,testingLibraryRender:qe,renderToCanvas:r.renderToCanvas,usesMount:F}}n(sr,"prepareStory");function wt(t,e,r){return{...Li(void 0,t,e),moduleExport:r}}n(wt,"prepareMeta");function Li(t,e,r){var ce;let o=["dev","test"],i=((ce=E$1.DOCS_OPTIONS)==null?void 0:ce.autodocs)===!0?["autodocs"]:[],a=Fi(...o,...i,...r.tags??[],...e.tags??[],...(t==null?void 0:t.tags)??[]),u=Y(r.parameters,e.parameters,t==null?void 0:t.parameters),{argTypesEnhancers:l=[],argsEnhancers:c=[]}=r,p=Y(r.argTypes,e.argTypes,t==null?void 0:t.argTypes);if(t){let F=(t==null?void 0:t.userStoryFn)||(t==null?void 0:t.render)||e.render||r.render;u.__isArgsStory=F&&F.length>0}let g={...r.args,...e.args,...t==null?void 0:t.args},h={...e.globals,...t==null?void 0:t.globals},m={componentId:e.id,title:e.title,kind:e.title,id:(t==null?void 0:t.id)||e.id,name:(t==null?void 0:t.name)||"__meta",story:(t==null?void 0:t.name)||"__meta",component:e.component,subcomponents:e.subcomponents,tags:a,parameters:u,initialArgs:g,argTypes:p,storyGlobals:h};m.argTypes=l.reduce((F,se)=>se({...m,argTypes:F}),m.argTypes);let re={...g};m.initialArgs=c.reduce((F,se)=>({...F,...se({...m,initialArgs:F})}),re);let{name:ne,story:le,...J}=m;return J}n(Li,"preparePartialAnnotations");function _t(t){var a;let{args:e}=t,r={...t,allArgs:void 0,argsByTarget:void 0};if((a=E$1.FEATURES)!=null&&a.argTypeTargetsV7){let u=Ai(t);r={...t,allArgs:t.args,argsByTarget:u,args:u[hn]||{}}}let o=Object.entries(r.args).reduce((u,[l,c])=>{var g;if(!((g=r.argTypes[l])!=null&&g.mapping))return u[l]=c,u;let p=n(h=>{let m=r.argTypes[l].mapping;return m&&h in m?m[h]:h},"mappingFn");return u[l]=Array.isArray(c)?c.map(p):p(c),u},{}),i=Object.entries(o).reduce((u,[l,c])=>{let p=r.argTypes[l]||{};return Rn(p,o,r.globals)&&(u[l]=c),u},{});return{...r,unmappedArgs:e,args:i}}n(_t,"prepareContext");var wn=n((t,e,r)=>{let o=typeof t;switch(o){case"boolean":case"string":case"number":case"function":case"symbol":return{name:o}}return t?r.has(t)?(I$1.warn(_$1` + We've detected a cycle in arg '${e}'. Args should be JSON-serializable. + + Consider using the mapping feature or fully custom args: + - Mapping: https://storybook.js.org/docs/writing-stories/args#mapping-to-complex-arg-values + - Custom args: https://storybook.js.org/docs/essentials/controls#fully-custom-args + `),{name:"other",value:"cyclic object"}):(r.add(t),Array.isArray(t)?{name:"array",value:t.length>0?wn(t[0],e,new Set(r)):{name:"other",value:"unknown"}}:{name:"object",value:oe(t,i=>wn(i,e,new Set(r)))}):{name:"object",value:{}}},"inferType"),_n=n(t=>{let{id:e,argTypes:r={},initialArgs:o={}}=t,i=oe(o,(u,l)=>({name:l,type:wn(u,`${e}.${l}`,new Set)})),a=oe(r,(u,l)=>({name:l}));return Y(i,a,r)},"inferArgTypes");_n.secondPass=!0;var ji=n((t,e)=>Array.isArray(e)?e.includes(t):t.match(e),"matches"),Mr=n((t,e,r)=>!e&&!r?t:t&&qo(t,(o,i)=>{let a=o.name||i.toString();return!!(!e||ji(a,e))&&(!r||!ji(a,r))}),"filterArgTypes"),Qd=n((t,e,r)=>{let{type:o,options:i}=t;if(o){if(r.color&&r.color.test(e)){let a=o.name;if(a==="string")return{control:{type:"color"}};a!=="enum"&&I$1.warn(`Addon controls: Control of type color only supports string, received "${a}" instead`)}if(r.date&&r.date.test(e))return{control:{type:"date"}};switch(o.name){case"array":return{control:{type:"object"}};case"boolean":return{control:{type:"boolean"}};case"string":return{control:{type:"text"}};case"number":return{control:{type:"number"}};case"enum":{let{value:a}=o;return{control:{type:(a==null?void 0:a.length)<=5?"radio":"select"},options:a}}case"function":case"symbol":return null;default:return{control:{type:i?"select":"object"}}}}},"inferControl"),ir=n(t=>{let{argTypes:e,parameters:{__isArgsStory:r,controls:{include:o=null,exclude:i=null,matchers:a={}}={}}}=t;if(!r)return e;let u=Mr(e,o,i),l=oe(u,(c,p)=>(c==null?void 0:c.type)&&Qd(c,p.toString(),a));return Y(l,u)},"inferControls");ir.secondPass=!0;function Ne({argTypes:t,globalTypes:e,argTypesEnhancers:r,decorators:o,loaders:i,beforeEach:a,experimental_afterEach:u,globals:l,initialGlobals:c,...p}){return l&&Object.keys(l).length>0&&ae(_$1` + The preview.js 'globals' field is deprecated and will be removed in Storybook 9.0. + Please use 'initialGlobals' instead. Learn more: + + https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#previewjs-globals-renamed-to-initialglobals + `),{...t&&{argTypes:Fe(t)},...e&&{globalTypes:Fe(e)},decorators:k(o),loaders:k(i),beforeEach:k(a),experimental_afterEach:k(u),argTypesEnhancers:[...r||[],_n,ir],initialGlobals:Y(c,l),...p}}n(Ne,"normalizeProjectAnnotations");var Mi=n(t=>async()=>{let e=[];for(let r of t){let o=await r();o&&e.unshift(o)}return async()=>{for(let r of e)await r()}},"composeBeforeAllHooks");function Ct(t){return async(e,r,o)=>{await t.reduceRight((i,a)=>async()=>a(e,i,o),async()=>r(o))()}}n(Ct,"composeStepRunners");function Gr(t,e){return t.map(r=>{var o;return((o=r.default)==null?void 0:o[e])??r[e]}).filter(Boolean)}n(Gr,"getField");function Te(t,e,r={}){return Gr(t,e).reduce((o,i)=>{let a=k(i);return r.reverseFileOrder?[...a,...o]:[...o,...a]},[])}n(Te,"getArrayField");function Ur(t,e){return Object.assign({},...Gr(t,e))}n(Ur,"getObjectField");function ar(t,e){return Gr(t,e).pop()}n(ar,"getSingletonField");function ke(t){var i;let e=Te(t,"argTypesEnhancers"),r=Gr(t,"runStep"),o=Te(t,"beforeAll");return{parameters:Y(...Gr(t,"parameters")),decorators:Te(t,"decorators",{reverseFileOrder:!(((i=E$1.FEATURES)==null?void 0:i.legacyDecoratorFileOrder)??!1)}),args:Ur(t,"args"),argsEnhancers:Te(t,"argsEnhancers"),argTypes:Ur(t,"argTypes"),argTypesEnhancers:[...e.filter(a=>!a.secondPass),...e.filter(a=>a.secondPass)],globals:Ur(t,"globals"),initialGlobals:Ur(t,"initialGlobals"),globalTypes:Ur(t,"globalTypes"),loaders:Te(t,"loaders"),beforeAll:Mi(o),beforeEach:Te(t,"beforeEach"),experimental_afterEach:Te(t,"experimental_afterEach"),render:ar(t,"render"),renderToCanvas:ar(t,"renderToCanvas"),renderToDOM:ar(t,"renderToDOM"),applyDecorators:ar(t,"applyDecorators"),runStep:Ct(r),tags:Te(t,"tags"),mount:ar(t,"mount"),testingLibraryRender:ar(t,"testingLibraryRender")}}n(ke,"composeConfigs");var Cn=class{constructor(){this.reports=[]}async addReport(e){this.reports.push(e)}};n(Cn,"ReporterAPI");var Ee=Cn;function Pt(t,e,r){return nr(t)?{story:t.input,meta:t.meta.input,preview:t.meta.preview.composed}:{story:t,meta:e,preview:r}}n(Pt,"getCsfFactoryAnnotations");function Ui(t){globalThis.defaultProjectAnnotations=t}n(Ui,"setDefaultProjectAnnotations");var Zd="ComposedStory",eu="Unnamed Story";function ru(t){return t?ke([t]):{}}n(ru,"extractAnnotation");function Gi(t){let e=Array.isArray(t)?t:[t];return globalThis.globalProjectAnnotations=ke([globalThis.defaultProjectAnnotations??{},ke(e.map(ru))]),globalThis.globalProjectAnnotations??{}}n(Gi,"setProjectAnnotations");var Re=[];function Pn(t,e,r,o,i){var ce;if(t===void 0)throw new Error("Expected a story but received undefined.");e.title=e.title??Zd;let a=jr(e),u=i||t.storyName||((ce=t.story)==null?void 0:ce.name)||t.name||eu,l=De(u,t,a),c=Ne(ke([o??globalThis.globalProjectAnnotations??{},r??{}])),p=sr(l,a,c),g={...Et(c.globalTypes),...c.initialGlobals,...p.storyGlobals},h=new Ee,m=n(()=>{let F=_t({hooks:new be,globals:g,args:{...p.initialArgs},viewMode:"story",reporting:h,loaded:{},abortSignal:new AbortController().signal,step:n((se,he)=>p.runStep(se,he,F),"step"),canvasElement:null,canvas:{},globalTypes:c.globalTypes,...p,context:null,mount:null});return F.parameters.__isPortableStory=!0,F.context=F,p.renderToCanvas&&(F.renderToCanvas=async()=>{var he;let se=await((he=p.renderToCanvas)==null?void 0:he.call(p,{componentId:p.componentId,title:p.title,id:p.id,name:p.name,tags:p.tags,showMain:n(()=>{},"showMain"),showError:n(qe=>{throw new Error(`${qe.title} +${qe.description}`)},"showError"),showException:n(qe=>{throw qe},"showException"),forceRemount:!0,storyContext:F,storyFn:n(()=>p.unboundStoryFn(F),"storyFn"),unboundStoryFn:p.unboundStoryFn},F.canvasElement));se&&Re.push(se)}),F.mount=p.mount(F),F},"initializeContext"),re,ne=n(async F=>{var he;let se=m();return se.canvasElement??(se.canvasElement=(he=globalThis==null?void 0:globalThis.document)==null?void 0:he.body),re&&(se.loaded=re.loaded),Object.assign(se,F),p.playFunction(se)},"play"),le=n(F=>{let se=m();return Object.assign(se,F),ou(p,se)},"run"),J=p.playFunction?ne:void 0;return Object.assign(n(function(F){let se=m();return re&&(se.loaded=re.loaded),se.args={...se.initialArgs,...F},p.unboundStoryFn(se)},"storyFn"),{id:p.id,storyName:u,load:n(async()=>{for(let se of[...Re].reverse())await se();Re.length=0;let F=m();F.loaded=await p.applyLoaders(F),Re.push(...(await p.applyBeforeEach(F)).filter(Boolean)),re=F},"load"),globals:g,args:p.initialArgs,parameters:p.parameters,argTypes:p.argTypes,play:J,run:le,reporting:h,tags:p.tags})}n(Pn,"composeStory");var tu=n((t,e,r,o)=>Pn(t,e,r,{},o),"defaultComposeStory");function qi(t,e,r=tu){let{default:o,__esModule:i,__namedExportsOrder:a,...u}=t,l=o;return Object.entries(u).reduce((c,[p,g])=>{let{story:h,meta:m}=Pt(g);return!l&&m&&(l=m),Lr(p,l)?Object.assign(c,{[p]:r(h,l,e,p)}):c},{})}n(qi,"composeStories");function Bi(t){return t.extend({mount:n(async({mount:e,page:r},o)=>{await o(async(i,...a)=>{if(!("__pw_type"in i)||"__pw_type"in i&&i.__pw_type!=="jsx")throw new Error(_$1` + Portable stories in Playwright CT only work when referencing JSX elements. + Please use JSX format for your components such as: + + instead of: + await mount(MyComponent, { props: { foo: 'bar' } }) + + do: + await mount() + + More info: https://storybook.js.org/docs/api/portable-stories-playwright + `);await r.evaluate(async l=>{var p,g,h;let c=await((p=globalThis.__pwUnwrapObject)==null?void 0:p.call(globalThis,l));return(h=(g="__pw_type"in c?c.type:c)==null?void 0:g.load)==null?void 0:h.call(g)},i);let u=await e(i,...a);return await r.evaluate(async l=>{var h,m;let c=await((h=globalThis.__pwUnwrapObject)==null?void 0:h.call(globalThis,l)),p="__pw_type"in c?c.type:c,g=document.querySelector("#root");return(m=p==null?void 0:p.play)==null?void 0:m.call(p,{canvasElement:g})},i),u})},"mount")})}n(Bi,"createPlaywrightTest");async function ou(t,e){var i,a;for(let u of[...Re].reverse())await u();if(Re.length=0,!e.canvasElement){let u=document.createElement("div");(a=(i=globalThis==null?void 0:globalThis.document)==null?void 0:i.body)==null||a.appendChild(u),e.canvasElement=u,Re.push(()=>{var l,c,p,g;(c=(l=globalThis==null?void 0:globalThis.document)==null?void 0:l.body)!=null&&c.contains(u)&&((g=(p=globalThis==null?void 0:globalThis.document)==null?void 0:p.body)==null||g.removeChild(u))})}if(e.loaded=await t.applyLoaders(e),e.abortSignal.aborted)return;Re.push(...(await t.applyBeforeEach(e)).filter(Boolean));let r=t.playFunction,o=t.usesMount;o||await e.mount(),!e.abortSignal.aborted&&(r&&(o||(e.mount=async()=>{throw new Oe({playFunction:r.toString()})}),await r(e)),await t.applyAfterEach(e))}n(ou,"runStory");function Vi(t,e){return Uo(Go(t,e),r=>r===void 0)}n(Vi,"picky");var Hi=1e3,nu=1e4,On=class{constructor(e,r,o){this.importFn=r,this.getStoriesJsonData=n(()=>{let u=this.getSetStoriesPayload(),l=["fileName","docsOnly","framework","__id","__isArgsStory"];return{v:3,stories:oe(u.stories,c=>{let{importPath:p}=this.storyIndex.entries[c.id];return{...Vi(c,["id","name","title"]),importPath:p,kind:c.title,story:c.name,parameters:{...Vi(c.parameters,l),fileName:p}}})}},"getStoriesJsonData"),this.storyIndex=new At(e),this.projectAnnotations=Ne(o);let{initialGlobals:i,globalTypes:a}=this.projectAnnotations;this.args=new Tt,this.userGlobals=new Rt({globals:i,globalTypes:a}),this.hooks={},this.cleanupCallbacks={},this.processCSFFileWithCache=(0,Ot.default)(Hi)(Di),this.prepareMetaWithCache=(0,Ot.default)(Hi)(wt),this.prepareStoryWithCache=(0,Ot.default)(nu)(sr)}setProjectAnnotations(e){this.projectAnnotations=Ne(e);let{initialGlobals:r,globalTypes:o}=e;this.userGlobals.set({globals:r,globalTypes:o})}async onStoriesChanged({importFn:e,storyIndex:r}){e&&(this.importFn=e),r&&(this.storyIndex.entries=r.entries),this.cachedCSFFiles&&await this.cacheAllCSFFiles()}async storyIdToEntry(e){return this.storyIndex.storyIdToEntry(e)}async loadCSFFileByStoryId(e){let{importPath:r,title:o}=this.storyIndex.storyIdToEntry(e),i=await this.importFn(r);return this.processCSFFileWithCache(i,r,o)}async loadAllCSFFiles(){let e={};return Object.entries(this.storyIndex.entries).forEach(([r,{importPath:o}])=>{e[o]=r}),(await Promise.all(Object.entries(e).map(async([r,o])=>({importPath:r,csfFile:await this.loadCSFFileByStoryId(o)})))).reduce((r,{importPath:o,csfFile:i})=>(r[o]=i,r),{})}async cacheAllCSFFiles(){this.cachedCSFFiles=await this.loadAllCSFFiles()}preparedMetaFromCSFFile({csfFile:e}){let r=e.meta;return this.prepareMetaWithCache(r,this.projectAnnotations,e.moduleExports.default)}async loadStory({storyId:e}){let r=await this.loadCSFFileByStoryId(e);return this.storyFromCSFFile({storyId:e,csfFile:r})}storyFromCSFFile({storyId:e,csfFile:r}){let o=r.stories[e];if(!o)throw new Ir({storyId:e});let i=r.meta,a=this.prepareStoryWithCache(o,i,r.projectAnnotations??this.projectAnnotations);return this.args.setInitial(a),this.hooks[a.id]=this.hooks[a.id]||new be,a}componentStoriesFromCSFFile({csfFile:e}){return Object.keys(this.storyIndex.entries).filter(r=>!!e.stories[r]).map(r=>this.storyFromCSFFile({storyId:r,csfFile:e}))}async loadEntry(e){let r=await this.storyIdToEntry(e),o=r.type==="docs"?r.storiesImports:[],[i,...a]=await Promise.all([this.importFn(r.importPath),...o.map(u=>{let l=this.storyIndex.importPathToEntry(u);return this.loadCSFFileByStoryId(l.id)})]);return{entryExports:i,csfFiles:a}}getStoryContext(e,{forceInitialArgs:r=!1}={}){let o=this.userGlobals.get(),{initialGlobals:i}=this.userGlobals,a=new Ee;return _t({...e,args:r?e.initialArgs:this.args.get(e.id),initialGlobals:i,globalTypes:this.projectAnnotations.globalTypes,userGlobals:o,reporting:a,globals:{...o,...e.storyGlobals},hooks:this.hooks[e.id]})}addCleanupCallbacks(e,r){this.cleanupCallbacks[e.id]=r}async cleanupStory(e){this.hooks[e.id].clean();let r=this.cleanupCallbacks[e.id];if(r)for(let o of[...r].reverse())await o();delete this.cleanupCallbacks[e.id]}extract(e={includeDocsOnly:!1}){let{cachedCSFFiles:r}=this;if(!r)throw new vr;return Object.entries(this.storyIndex.entries).reduce((o,[i,{type:a,importPath:u}])=>{if(a==="docs")return o;let l=r[u],c=this.storyFromCSFFile({storyId:i,csfFile:l});return!e.includeDocsOnly&&c.parameters.docsOnly||(o[i]=Object.entries(c).reduce((p,[g,h])=>g==="moduleExport"||typeof h=="function"?p:Array.isArray(h)?Object.assign(p,{[g]:h.slice().sort()}):Object.assign(p,{[g]:h}),{args:c.initialArgs,globals:{...this.userGlobals.initialGlobals,...this.userGlobals.globals,...c.storyGlobals}})),o},{})}getSetStoriesPayload(){let e=this.extract({includeDocsOnly:!0}),r=Object.values(e).reduce((o,{title:i})=>(o[i]={},o),{});return{v:2,globals:this.userGlobals.get(),globalParameters:{},kindParameters:r,stories:e}}raw(){return ae("StoryStore.raw() is deprecated and will be removed in 9.0, please use extract() instead"),Object.values(this.extract()).map(({id:e})=>this.fromId(e)).filter(Boolean)}fromId(e){if(ae("StoryStore.fromId() is deprecated and will be removed in 9.0, please use loadStory() instead"),!this.cachedCSFFiles)throw new Error("Cannot call fromId/raw() unless you call cacheAllCSFFiles() first.");let r;try{({importPath:r}=this.storyIndex.storyIdToEntry(e))}catch{return null}let o=this.cachedCSFFiles[r],i=this.storyFromCSFFile({storyId:e,csfFile:o});return{...i,storyFn:n(a=>{let u={...this.getStoryContext(i),abortSignal:new AbortController().signal,canvasElement:null,loaded:{},step:n((l,c)=>i.runStep(l,c,u),"step"),context:null,mount:null,canvas:{},viewMode:"story"};return i.unboundStoryFn({...u,...a})},"storyFn")}}};n(On,"StoryStore");var Le=On;function In(t){return t.startsWith("\\\\?\\")?t:t.replace(/\\/g,"/")}n(In,"slash");var su=n(t=>{if(t.length===0)return t;let e=t[t.length-1],r=e==null?void 0:e.replace(/(?:[.](?:story|stories))?([.][^.]+)$/i,"");if(t.length===1)return[r];let o=t[t.length-2];return r&&o&&r.toLowerCase()===o.toLowerCase()?[...t.slice(0,-2),r]:r&&(/^(story|stories)([.][^.]+)$/i.test(e)||/^index$/i.test(r))?t.slice(0,-1):[...t.slice(0,-1),r]},"sanitize");function zi(t){return t.flatMap(e=>e.split("/")).filter(Boolean).join("/")}n(zi,"pathJoin");var Fn=n((t,e,r)=>{let{directory:o,importPathMatcher:i,titlePrefix:a=""}=e||{};typeof t=="number"&&j$1.warn(_$1` + CSF Auto-title received a numeric fileName. This typically happens when + webpack is mis-configured in production mode. To force webpack to produce + filenames, set optimization.moduleIds = "named" in your webpack config. + `);let u=In(String(t));if(i.exec(u)){if(!r){let l=u.replace(o,""),c=zi([a,l]).split("/");return c=su(c),c.join("/")}return a?zi([a,r]):r}},"userOrAutoTitleFromSpecifier"),Wi=n((t,e,r)=>{for(let o=0;o(e,r)=>{if(e.title===r.title&&!t.includeNames)return 0;let o=t.method||"configure",i=t.order||[],a=e.title.trim().split($i),u=r.title.trim().split($i);t.includeNames&&(a.push(e.name),u.push(r.name));let l=0;for(;a[l]||u[l];){if(!a[l])return-1;if(!u[l])return 1;let c=a[l],p=u[l];if(c!==p){let h=i.indexOf(c),m=i.indexOf(p),re=i.indexOf("*");return h!==-1||m!==-1?(h===-1&&(re!==-1?h=re:h=i.length),m===-1&&(re!==-1?m=re:m=i.length),h-m):o==="configure"?0:c.localeCompare(p,t.locales?t.locales:void 0,{numeric:!0,sensitivity:"accent"})}let g=i.indexOf(c);g===-1&&(g=i.indexOf("*")),i=g!==-1&&Array.isArray(i[g+1])?i[g+1]:[],l+=1}return 0},"storySort"),iu=n((t,e,r)=>{if(e){let o;typeof e=="function"?o=e:o=Yi(e),t.sort(o)}else t.sort((o,i)=>r.indexOf(o.importPath)-r.indexOf(i.importPath));return t},"sortStoriesCommon"),Ki=n((t,e,r)=>{try{return iu(t,e,r)}catch(o){throw new Error(_$1` + Error sorting stories with sort parameter ${e}: + + > ${o.message} + + Are you using a V6-style sort function in V7 mode? + + More info: https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#v7-style-story-sort + `)}},"sortStoriesV7"),Ae=new Error("prepareAborted"),{AbortController:Xi}=globalThis;function Ji(t){try{let{name:e="Error",message:r=String(t),stack:o}=t;return{name:e,message:r,stack:o}}catch{return{name:"Error",message:String(t)}}}n(Ji,"serializeError");var Dn=class{constructor(e,r,o,i,a,u,l={autoplay:!0,forceInitialArgs:!1},c){this.channel=e,this.store=r,this.renderToScreen=o,this.callbacks=i,this.id=a,this.viewMode=u,this.renderOptions=l,this.type="story",this.notYetRendered=!0,this.rerenderEnqueued=!1,this.disableKeyListeners=!1,this.teardownRender=n(()=>{},"teardownRender"),this.torndown=!1,this.abortController=new Xi,c&&(this.story=c,this.phase="preparing")}async runPhase(e,r,o){this.phase=r,this.channel.emit(Pe,{newPhase:this.phase,storyId:this.id}),o&&(await o(),this.checkIfAborted(e))}checkIfAborted(e){return e.aborted?(this.phase="aborted",this.channel.emit(Pe,{newPhase:this.phase,storyId:this.id}),!0):!1}async prepare(){if(await this.runPhase(this.abortController.signal,"preparing",async()=>{this.story=await this.store.loadStory({storyId:this.id})}),this.abortController.signal.aborted)throw await this.store.cleanupStory(this.story),Ae}isEqual(e){return!!(this.id===e.id&&this.story&&this.story===e.story)}isPreparing(){return["preparing"].includes(this.phase)}isPending(){return["loading","beforeEach","rendering","playing","afterEach"].includes(this.phase)}async renderToElement(e){return this.canvasElement=e,this.render({initial:!0,forceRemount:!0})}storyContext(){if(!this.story)throw new Error("Cannot call storyContext before preparing");let{forceInitialArgs:e}=this.renderOptions;return this.store.getStoryContext(this.story,{forceInitialArgs:e})}async render({initial:e=!1,forceRemount:r=!1}={}){var se,he,qe,ve;let{canvasElement:o}=this;if(!this.story)throw new Error("cannot render when not prepared");let i=this.story;if(!o)throw new Error("cannot render when canvasElement is unset");let{id:a,componentId:u,title:l,name:c,tags:p,applyLoaders:g,applyBeforeEach:h,applyAfterEach:m,unboundStoryFn:re,playFunction:ne,runStep:le}=i;r&&!e&&(this.cancelRender(),this.abortController=new Xi);let J=this.abortController.signal,ce=!1,F=i.usesMount;try{let we={...this.storyContext(),viewMode:this.viewMode,abortSignal:J,canvasElement:o,loaded:{},step:n((B,pe)=>le(B,pe,we),"step"),context:null,canvas:{},renderToCanvas:n(async()=>{let B=await this.renderToScreen(Lt,o);this.teardownRender=B||(()=>{}),ce=!0},"renderToCanvas"),mount:n(async(...B)=>{var de,Bt;(Bt=(de=this.callbacks).showStoryDuringRender)==null||Bt.call(de);let pe=null;return await this.runPhase(J,"rendering",async()=>{pe=await i.mount(we)(...B)}),F&&await this.runPhase(J,"playing"),pe},"mount")};we.context=we;let Lt={componentId:u,title:l,kind:l,id:a,name:c,story:c,tags:p,...this.callbacks,showError:n(B=>(this.phase="errored",this.callbacks.showError(B)),"showError"),showException:n(B=>(this.phase="errored",this.callbacks.showException(B)),"showException"),forceRemount:r||this.notYetRendered,storyContext:we,storyFn:n(()=>re(we),"storyFn"),unboundStoryFn:re};if(await this.runPhase(J,"loading",async()=>{we.loaded=await g(we)}),J.aborted)return;let Nt=await h(we);if(this.store.addCleanupCallbacks(i,Nt),this.checkIfAborted(J)||(!ce&&!F&&await we.mount(),this.notYetRendered=!1,J.aborted))return;let Ft=((he=(se=this.story.parameters)==null?void 0:se.test)==null?void 0:he.dangerouslyIgnoreUnhandledErrors)===!0,jt=new Set,Ve=n(B=>jt.add("error"in B?B.error:B.reason),"onError");if(this.renderOptions.autoplay&&r&&ne&&this.phase!=="errored"){window.addEventListener("error",Ve),window.addEventListener("unhandledrejection",Ve),this.disableKeyListeners=!0;try{if(F?await ne(we):(we.mount=async()=>{throw new Oe({playFunction:ne.toString()})},await this.runPhase(J,"playing",async()=>ne(we))),!ce)throw new Nr;this.checkIfAborted(J),!Ft&&jt.size>0?await this.runPhase(J,"errored"):await this.runPhase(J,"played")}catch(B){if((ve=(qe=this.callbacks).showStoryDuringRender)==null||ve.call(qe),await this.runPhase(J,"errored",async()=>{this.channel.emit(Xt,Ji(B))}),this.story.parameters.throwPlayFunctionExceptions!==!1)throw B;console.error(B)}if(!Ft&&jt.size>0&&this.channel.emit(Jt,Array.from(jt).map(Ji)),this.disableKeyListeners=!1,window.removeEventListener("unhandledrejection",Ve),window.removeEventListener("error",Ve),J.aborted)return}await this.runPhase(J,"completed",async()=>this.channel.emit(We,a)),this.phase!=="errored"&&await this.runPhase(J,"afterEach",async()=>{await m(we)});let Dt=!Ft&&jt.size>0,d=we.reporting.reports.some(B=>B.status==="failed"),A=Dt||d;await this.runPhase(J,"finished",async()=>this.channel.emit(ot,{storyId:a,status:A?"error":"success",reporters:we.reporting.reports}))}catch(we){this.phase="errored",this.callbacks.showException(we),await this.runPhase(J,"finished",async()=>this.channel.emit(ot,{storyId:a,status:"error",reporters:[]}))}this.rerenderEnqueued&&(this.rerenderEnqueued=!1,this.render())}async rerender(){if(this.isPending()&&this.phase!=="playing")this.rerenderEnqueued=!0;else return this.render()}async remount(){return await this.teardown(),this.render({forceRemount:!0})}cancelRender(){var e;(e=this.abortController)==null||e.abort()}async teardown(){this.torndown=!0,this.cancelRender(),this.story&&await this.store.cleanupStory(this.story);for(let e=0;e<3;e+=1){if(!this.isPending()){await this.teardownRender();return}await new Promise(r=>setTimeout(r,0))}window.location.reload(),await new Promise(()=>{})}};n(Dn,"StoryRender");var je=Dn,{fetch:au}=E$1,lu="./index.json",Nn=class{constructor(e,r,o=te$1.getChannel(),i=!0){this.importFn=e,this.getProjectAnnotations=r,this.channel=o,this.storyRenders=[],this.storeInitializationPromise=new Promise((a,u)=>{this.resolveStoreInitializationPromise=a,this.rejectStoreInitializationPromise=u}),i&&this.initialize()}get storyStore(){return new Proxy({},{get:n((e,r)=>{if(this.storyStoreValue)return ae("Accessing the Story Store is deprecated and will be removed in 9.0"),this.storyStoreValue[r];throw new Fr},"get")})}async initialize(){this.setupListeners();try{let e=await this.getProjectAnnotationsOrRenderError();await this.runBeforeAllHook(e),await this.initializeWithProjectAnnotations(e)}catch(e){this.rejectStoreInitializationPromise(e)}}ready(){return this.storeInitializationPromise}setupListeners(){this.channel.on(so,this.onStoryIndexChanged.bind(this)),this.channel.on(fr,this.onUpdateGlobals.bind(this)),this.channel.on(yr,this.onUpdateArgs.bind(this)),this.channel.on(fo,this.onRequestArgTypesInfo.bind(this)),this.channel.on(ur,this.onResetArgs.bind(this)),this.channel.on(dr,this.onForceReRender.bind(this)),this.channel.on(Kt,this.onForceRemount.bind(this))}async getProjectAnnotationsOrRenderError(){try{let e=await this.getProjectAnnotations();if(this.renderToCanvas=e.renderToCanvas,!this.renderToCanvas)throw new wr;return e}catch(e){throw this.renderPreviewEntryError("Error reading preview.js:",e),e}}async initializeWithProjectAnnotations(e){this.projectAnnotationsBeforeInitialization=e;try{let r=await this.getStoryIndexFromServer();return this.initializeWithStoryIndex(r)}catch(r){throw this.renderPreviewEntryError("Error loading story index:",r),r}}async runBeforeAllHook(e){var r,o;try{await((r=this.beforeAllCleanup)==null?void 0:r.call(this)),this.beforeAllCleanup=await((o=e.beforeAll)==null?void 0:o.call(e))}catch(i){throw this.renderPreviewEntryError("Error in beforeAll hook:",i),i}}async getStoryIndexFromServer(){let e=await au(lu);if(e.status===200)return e.json();throw new _r({text:await e.text()})}initializeWithStoryIndex(e){if(!this.projectAnnotationsBeforeInitialization)throw new Error("Cannot call initializeWithStoryIndex until project annotations resolve");this.storyStoreValue=new Le(e,this.importFn,this.projectAnnotationsBeforeInitialization),delete this.projectAnnotationsBeforeInitialization,this.setInitialGlobals(),this.resolveStoreInitializationPromise()}async setInitialGlobals(){this.emitGlobals()}emitGlobals(){if(!this.storyStoreValue)throw new V({methodName:"emitGlobals"});let e={globals:this.storyStoreValue.userGlobals.get()||{},globalTypes:this.storyStoreValue.projectAnnotations.globalTypes||{}};this.channel.emit(ro,e)}async onGetProjectAnnotationsChanged({getProjectAnnotations:e}){delete this.previewEntryError,this.getProjectAnnotations=e;let r=await this.getProjectAnnotationsOrRenderError();if(await this.runBeforeAllHook(r),!this.storyStoreValue){await this.initializeWithProjectAnnotations(r);return}this.storyStoreValue.setProjectAnnotations(r),this.emitGlobals()}async onStoryIndexChanged(){if(delete this.previewEntryError,!(!this.storyStoreValue&&!this.projectAnnotationsBeforeInitialization))try{let e=await this.getStoryIndexFromServer();if(this.projectAnnotationsBeforeInitialization){this.initializeWithStoryIndex(e);return}await this.onStoriesChanged({storyIndex:e})}catch(e){throw this.renderPreviewEntryError("Error loading story index:",e),e}}async onStoriesChanged({importFn:e,storyIndex:r}){if(!this.storyStoreValue)throw new V({methodName:"onStoriesChanged"});await this.storyStoreValue.onStoriesChanged({importFn:e,storyIndex:r})}async onUpdateGlobals({globals:e,currentStory:r}){if(this.storyStoreValue||await this.storeInitializationPromise,!this.storyStoreValue)throw new V({methodName:"onUpdateGlobals"});if(this.storyStoreValue.userGlobals.update(e),r){let{initialGlobals:o,storyGlobals:i,userGlobals:a,globals:u}=this.storyStoreValue.getStoryContext(r);this.channel.emit(Ce,{initialGlobals:o,userGlobals:a,storyGlobals:i,globals:u})}else{let{initialGlobals:o,globals:i}=this.storyStoreValue.userGlobals;this.channel.emit(Ce,{initialGlobals:o,userGlobals:i,storyGlobals:{},globals:i})}await Promise.all(this.storyRenders.map(o=>o.rerender()))}async onUpdateArgs({storyId:e,updatedArgs:r}){if(!this.storyStoreValue)throw new V({methodName:"onUpdateArgs"});this.storyStoreValue.args.update(e,r),await Promise.all(this.storyRenders.filter(o=>o.id===e&&!o.renderOptions.forceInitialArgs).map(o=>o.story&&o.story.usesMount?o.remount():o.rerender())),this.channel.emit(to,{storyId:e,args:this.storyStoreValue.args.get(e)})}async onRequestArgTypesInfo({id:e,payload:r}){var o;try{await this.storeInitializationPromise;let i=await((o=this.storyStoreValue)==null?void 0:o.loadStory(r));this.channel.emit(nt,{id:e,success:!0,payload:{argTypes:(i==null?void 0:i.argTypes)||{}},error:null})}catch(i){this.channel.emit(nt,{id:e,success:!1,error:i==null?void 0:i.message})}}async onResetArgs({storyId:e,argNames:r}){var a;if(!this.storyStoreValue)throw new V({methodName:"onResetArgs"});let o=((a=this.storyRenders.find(u=>u.id===e))==null?void 0:a.story)||await this.storyStoreValue.loadStory({storyId:e}),i=(r||[...new Set([...Object.keys(o.initialArgs),...Object.keys(this.storyStoreValue.args.get(e))])]).reduce((u,l)=>(u[l]=o.initialArgs[l],u),{});await this.onUpdateArgs({storyId:e,updatedArgs:i})}async onForceReRender(){await Promise.all(this.storyRenders.map(e=>e.rerender()))}async onForceRemount({storyId:e}){await Promise.all(this.storyRenders.filter(r=>r.id===e).map(r=>r.remount()))}renderStoryToElement(e,r,o,i){if(!this.renderToCanvas||!this.storyStoreValue)throw new V({methodName:"renderStoryToElement"});let a=new je(this.channel,this.storyStoreValue,this.renderToCanvas,o,e.id,"docs",i,e);return a.renderToElement(r),this.storyRenders.push(a),async()=>{await this.teardownRender(a)}}async teardownRender(e,{viewModeChanged:r}={}){var o;this.storyRenders=this.storyRenders.filter(i=>i!==e),await((o=e==null?void 0:e.teardown)==null?void 0:o.call(e,{viewModeChanged:r}))}async loadStory({storyId:e}){if(!this.storyStoreValue)throw new V({methodName:"loadStory"});return this.storyStoreValue.loadStory({storyId:e})}getStoryContext(e,{forceInitialArgs:r=!1}={}){if(!this.storyStoreValue)throw new V({methodName:"getStoryContext"});return this.storyStoreValue.getStoryContext(e,{forceInitialArgs:r})}async extract(e){if(!this.storyStoreValue)throw new V({methodName:"extract"});if(this.previewEntryError)throw this.previewEntryError;return await this.storyStoreValue.cacheAllCSFFiles(),this.storyStoreValue.extract(e)}renderPreviewEntryError(e,r){this.previewEntryError=r,I$1.error(e),I$1.error(r),this.channel.emit($t,r)}};n(Nn,"Preview");var Me=Nn,kn=class{constructor(e,r,o,i){this.channel=e,this.store=r,this.renderStoryToElement=o,this.storyIdByName=n(a=>{let u=this.nameToStoryId.get(a);if(u)return u;throw new Error(`No story found with that name: ${a}`)},"storyIdByName"),this.componentStories=n(()=>this.componentStoriesValue,"componentStories"),this.componentStoriesFromCSFFile=n(a=>this.store.componentStoriesFromCSFFile({csfFile:a}),"componentStoriesFromCSFFile"),this.storyById=n(a=>{if(!a){if(!this.primaryStory)throw new Error("No primary story defined for docs entry. Did you forget to use ``?");return this.primaryStory}let u=this.storyIdToCSFFile.get(a);if(!u)throw new Error(`Called \`storyById\` for story that was never loaded: ${a}`);return this.store.storyFromCSFFile({storyId:a,csfFile:u})},"storyById"),this.getStoryContext=n(a=>({...this.store.getStoryContext(a),loaded:{},viewMode:"docs"}),"getStoryContext"),this.loadStory=n(a=>this.store.loadStory({storyId:a}),"loadStory"),this.componentStoriesValue=[],this.storyIdToCSFFile=new Map,this.exportToStory=new Map,this.exportsToCSFFile=new Map,this.nameToStoryId=new Map,this.attachedCSFFiles=new Set,i.forEach((a,u)=>{this.referenceCSFFile(a)})}referenceCSFFile(e){this.exportsToCSFFile.set(e.moduleExports,e),this.exportsToCSFFile.set(e.moduleExports.default,e),this.store.componentStoriesFromCSFFile({csfFile:e}).forEach(r=>{let o=e.stories[r.id];this.storyIdToCSFFile.set(o.id,e),this.exportToStory.set(o.moduleExport,r)})}attachCSFFile(e){if(!this.exportsToCSFFile.has(e.moduleExports))throw new Error("Cannot attach a CSF file that has not been referenced");this.attachedCSFFiles.has(e)||(this.attachedCSFFiles.add(e),this.store.componentStoriesFromCSFFile({csfFile:e}).forEach(r=>{this.nameToStoryId.set(r.name,r.id),this.componentStoriesValue.push(r),this.primaryStory||(this.primaryStory=r)}))}referenceMeta(e,r){let o=this.resolveModuleExport(e);if(o.type!=="meta")throw new Error(" must reference a CSF file module export or meta export. Did you mistakenly reference your component instead of your CSF file?");r&&this.attachCSFFile(o.csfFile)}get projectAnnotations(){let{projectAnnotations:e}=this.store;if(!e)throw new Error("Can't get projectAnnotations from DocsContext before they are initialized");return e}resolveAttachedModuleExportType(e){if(e==="story"){if(!this.primaryStory)throw new Error("No primary story attached to this docs file, did you forget to use ?");return{type:"story",story:this.primaryStory}}if(this.attachedCSFFiles.size===0)throw new Error("No CSF file attached to this docs file, did you forget to use ?");let r=Array.from(this.attachedCSFFiles)[0];if(e==="meta")return{type:"meta",csfFile:r};let{component:o}=r.meta;if(!o)throw new Error("Attached CSF file does not defined a component, did you forget to export one?");return{type:"component",component:o}}resolveModuleExport(e){let r=this.exportsToCSFFile.get(e);if(r)return{type:"meta",csfFile:r};let o=this.exportToStory.get(nr(e)?e.input:e);return o?{type:"story",story:o}:{type:"component",component:e}}resolveOf(e,r=[]){let o;if(["component","meta","story"].includes(e)){let i=e;o=this.resolveAttachedModuleExportType(i)}else o=this.resolveModuleExport(e);if(r.length&&!r.includes(o.type)){let i=o.type==="component"?"component or unknown":o.type;throw new Error(_$1`Invalid value passed to the 'of' prop. The value was resolved to a '${i}' type but the only types for this block are: ${r.join(", ")}. + - Did you pass a component to the 'of' prop when the block only supports a story or a meta? + - ... or vice versa? + - Did you pass a story, CSF file or meta to the 'of' prop that is not indexed, ie. is not targeted by the 'stories' globs in the main configuration?`)}switch(o.type){case"component":return{...o,projectAnnotations:this.projectAnnotations};case"meta":return{...o,preparedMeta:this.store.preparedMetaFromCSFFile({csfFile:o.csfFile})};case"story":default:return o}}};n(kn,"DocsContext");var me=kn,Ln=class{constructor(e,r,o,i){this.channel=e,this.store=r,this.entry=o,this.callbacks=i,this.type="docs",this.subtype="csf",this.torndown=!1,this.disableKeyListeners=!1,this.preparing=!1,this.id=o.id}isPreparing(){return this.preparing}async prepare(){this.preparing=!0;let{entryExports:e,csfFiles:r=[]}=await this.store.loadEntry(this.id);if(this.torndown)throw Ae;let{importPath:o,title:i}=this.entry,a=this.store.processCSFFileWithCache(e,o,i),u=Object.keys(a.stories)[0];this.story=this.store.storyFromCSFFile({storyId:u,csfFile:a}),this.csfFiles=[a,...r],this.preparing=!1}isEqual(e){return!!(this.id===e.id&&this.story&&this.story===e.story)}docsContext(e){if(!this.csfFiles)throw new Error("Cannot render docs before preparing");let r=new me(this.channel,this.store,e,this.csfFiles);return this.csfFiles.forEach(o=>r.attachCSFFile(o)),r}async renderToElement(e,r){if(!this.story||!this.csfFiles)throw new Error("Cannot render docs before preparing");let o=this.docsContext(r),{docs:i}=this.story.parameters||{};if(!i)throw new Error("Cannot render a story in viewMode=docs if `@storybook/addon-docs` is not installed");let a=await i.renderer(),{render:u}=a,l=n(async()=>{try{await u(o,i,e),this.channel.emit(pr,this.id)}catch(c){this.callbacks.showException(c)}},"renderDocs");return this.rerender=async()=>l(),this.teardownRender=async({viewModeChanged:c})=>{!c||!e||a.unmount(e)},l()}async teardown({viewModeChanged:e}={}){var r;(r=this.teardownRender)==null||r.call(this,{viewModeChanged:e}),this.torndown=!0}};n(Ln,"CsfDocsRender");var qr=Ln,jn=class{constructor(e,r,o,i){this.channel=e,this.store=r,this.entry=o,this.callbacks=i,this.type="docs",this.subtype="mdx",this.torndown=!1,this.disableKeyListeners=!1,this.preparing=!1,this.id=o.id}isPreparing(){return this.preparing}async prepare(){this.preparing=!0;let{entryExports:e,csfFiles:r=[]}=await this.store.loadEntry(this.id);if(this.torndown)throw Ae;this.csfFiles=r,this.exports=e,this.preparing=!1}isEqual(e){return!!(this.id===e.id&&this.exports&&this.exports===e.exports)}docsContext(e){if(!this.csfFiles)throw new Error("Cannot render docs before preparing");return new me(this.channel,this.store,e,this.csfFiles)}async renderToElement(e,r){if(!this.exports||!this.csfFiles||!this.store.projectAnnotations)throw new Error("Cannot render docs before preparing");let o=this.docsContext(r),{docs:i}=this.store.projectAnnotations.parameters||{};if(!i)throw new Error("Cannot render a story in viewMode=docs if `@storybook/addon-docs` is not installed");let a={...i,page:this.exports.default},u=await i.renderer(),{render:l}=u,c=n(async()=>{try{await l(o,a,e),this.channel.emit(pr,this.id)}catch(p){this.callbacks.showException(p)}},"renderDocs");return this.rerender=async()=>c(),this.teardownRender=async({viewModeChanged:p}={})=>{!p||!e||(u.unmount(e),this.torndown=!0)},c()}async teardown({viewModeChanged:e}={}){var r;(r=this.teardownRender)==null||r.call(this,{viewModeChanged:e}),this.torndown=!0}};n(jn,"MdxDocsRender");var Br=jn,cu=globalThis;function pu(t){let e=t.composedPath&&t.composedPath()[0]||t.target;return/input|textarea/i.test(e.tagName)||e.getAttribute("contenteditable")!==null}n(pu,"focusInInput");var Qi="attached-mdx",du="unattached-mdx";function uu({tags:t}){return(t==null?void 0:t.includes(du))||(t==null?void 0:t.includes(Qi))}n(uu,"isMdxEntry");function Mn(t){return t.type==="story"}n(Mn,"isStoryRender");function fu(t){return t.type==="docs"}n(fu,"isDocsRender");function yu(t){return fu(t)&&t.subtype==="csf"}n(yu,"isCsfDocsRender");var Un=class extends Me{constructor(e,r,o,i){super(e,r,void 0,!1),this.importFn=e,this.getProjectAnnotations=r,this.selectionStore=o,this.view=i,this.initialize()}setupListeners(){super.setupListeners(),cu.onkeydown=this.onKeydown.bind(this),this.channel.on(eo,this.onSetCurrentStory.bind(this)),this.channel.on(po,this.onUpdateQueryParams.bind(this)),this.channel.on(Qt,this.onPreloadStories.bind(this))}async setInitialGlobals(){if(!this.storyStoreValue)throw new V({methodName:"setInitialGlobals"});let{globals:e}=this.selectionStore.selectionSpecifier||{};e&&this.storyStoreValue.userGlobals.updateFromPersisted(e),this.emitGlobals()}async initializeWithStoryIndex(e){return await super.initializeWithStoryIndex(e),this.selectSpecifiedStory()}async selectSpecifiedStory(){if(!this.storyStoreValue)throw new V({methodName:"selectSpecifiedStory"});if(this.selectionStore.selection){await this.renderSelection();return}if(!this.selectionStore.selectionSpecifier){this.renderMissingStory();return}let{storySpecifier:e,args:r}=this.selectionStore.selectionSpecifier,o=this.storyStoreValue.storyIndex.entryFromSpecifier(e);if(!o){e==="*"?this.renderStoryLoadingException(e,new Pr):this.renderStoryLoadingException(e,new Or({storySpecifier:e.toString()}));return}let{id:i,type:a}=o;this.selectionStore.setSelection({storyId:i,viewMode:a}),this.channel.emit(ao,this.selectionStore.selection),this.channel.emit(rt,this.selectionStore.selection),await this.renderSelection({persistedArgs:r})}async onGetProjectAnnotationsChanged({getProjectAnnotations:e}){await super.onGetProjectAnnotationsChanged({getProjectAnnotations:e}),this.selectionStore.selection&&this.renderSelection()}async onStoriesChanged({importFn:e,storyIndex:r}){await super.onStoriesChanged({importFn:e,storyIndex:r}),this.selectionStore.selection?await this.renderSelection():await this.selectSpecifiedStory()}onKeydown(e){if(!this.storyRenders.find(r=>r.disableKeyListeners)&&!pu(e)){let{altKey:r,ctrlKey:o,metaKey:i,shiftKey:a,key:u,code:l,keyCode:c}=e;this.channel.emit(Zt,{event:{altKey:r,ctrlKey:o,metaKey:i,shiftKey:a,key:u,code:l,keyCode:c}})}}async onSetCurrentStory(e){this.selectionStore.setSelection({viewMode:"story",...e}),await this.storeInitializationPromise,this.channel.emit(rt,this.selectionStore.selection),this.renderSelection()}onUpdateQueryParams(e){this.selectionStore.setQueryParams(e)}async onUpdateGlobals({globals:e}){var o,i;let r=this.currentRender instanceof je&&this.currentRender.story||void 0;super.onUpdateGlobals({globals:e,currentStory:r}),(this.currentRender instanceof Br||this.currentRender instanceof qr)&&await((i=(o=this.currentRender).rerender)==null?void 0:i.call(o))}async onUpdateArgs({storyId:e,updatedArgs:r}){super.onUpdateArgs({storyId:e,updatedArgs:r})}async onPreloadStories({ids:e}){await this.storeInitializationPromise,this.storyStoreValue&&await Promise.allSettled(e.map(r=>{var o;return(o=this.storyStoreValue)==null?void 0:o.loadEntry(r)}))}async renderSelection({persistedArgs:e}={}){var m,re,ne,le;let{renderToCanvas:r}=this;if(!this.storyStoreValue||!r)throw new V({methodName:"renderSelection"});let{selection:o}=this.selectionStore;if(!o)throw new Error("Cannot call renderSelection as no selection was made");let{storyId:i}=o,a;try{a=await this.storyStoreValue.storyIdToEntry(i)}catch(J){this.currentRender&&await this.teardownRender(this.currentRender),this.renderStoryLoadingException(i,J);return}let u=((m=this.currentSelection)==null?void 0:m.storyId)!==i,l=((re=this.currentRender)==null?void 0:re.type)!==a.type;a.type==="story"?this.view.showPreparingStory({immediate:l}):this.view.showPreparingDocs({immediate:l}),(ne=this.currentRender)!=null&&ne.isPreparing()&&await this.teardownRender(this.currentRender);let c;a.type==="story"?c=new je(this.channel,this.storyStoreValue,r,this.mainStoryCallbacks(i),i,"story"):uu(a)?c=new Br(this.channel,this.storyStoreValue,a,this.mainStoryCallbacks(i)):c=new qr(this.channel,this.storyStoreValue,a,this.mainStoryCallbacks(i));let p=this.currentSelection;this.currentSelection=o;let g=this.currentRender;this.currentRender=c;try{await c.prepare()}catch(J){g&&await this.teardownRender(g),J!==Ae&&this.renderStoryLoadingException(i,J);return}let h=!u&&g&&!c.isEqual(g);if(e&&Mn(c)&&(fe(!!c.story),this.storyStoreValue.args.updateFromPersisted(c.story,e)),g&&!g.torndown&&!u&&!h&&!l){this.currentRender=g,this.channel.emit(co,i),this.view.showMain();return}if(g&&await this.teardownRender(g,{viewModeChanged:l}),p&&(u||l)&&this.channel.emit(oo,i),Mn(c)){fe(!!c.story);let{parameters:J,initialArgs:ce,argTypes:F,unmappedArgs:se,initialGlobals:he,userGlobals:qe,storyGlobals:ve,globals:we}=this.storyStoreValue.getStoryContext(c.story);this.channel.emit(io,{id:i,parameters:J,initialArgs:ce,argTypes:F,args:se}),this.channel.emit(Ce,{userGlobals:qe,storyGlobals:ve,globals:we,initialGlobals:he})}else{let{parameters:J}=this.storyStoreValue.projectAnnotations,{initialGlobals:ce,globals:F}=this.storyStoreValue.userGlobals;if(this.channel.emit(Ce,{globals:F,initialGlobals:ce,storyGlobals:{},userGlobals:F}),yu(c)||((le=c.entry.tags)==null?void 0:le.includes(Qi))){if(!c.csfFiles)throw new Cr({storyId:i});({parameters:J}=this.storyStoreValue.preparedMetaFromCSFFile({csfFile:c.csfFiles[0]}))}this.channel.emit(Yt,{id:i,parameters:J})}Mn(c)?(fe(!!c.story),this.storyRenders.push(c),this.currentRender.renderToElement(this.view.prepareForStory(c.story))):this.currentRender.renderToElement(this.view.prepareForDocs(),this.renderStoryToElement.bind(this))}async teardownRender(e,{viewModeChanged:r=!1}={}){var o;this.storyRenders=this.storyRenders.filter(i=>i!==e),await((o=e==null?void 0:e.teardown)==null?void 0:o.call(e,{viewModeChanged:r}))}mainStoryCallbacks(e){return{showStoryDuringRender:n(()=>this.view.showStoryDuringRender(),"showStoryDuringRender"),showMain:n(()=>this.view.showMain(),"showMain"),showError:n(r=>this.renderError(e,r),"showError"),showException:n(r=>this.renderException(e,r),"showException")}}renderPreviewEntryError(e,r){super.renderPreviewEntryError(e,r),this.view.showErrorDisplay(r)}renderMissingStory(){this.view.showNoPreview(),this.channel.emit(tt)}renderStoryLoadingException(e,r){I$1.error(r),this.view.showErrorDisplay(r),this.channel.emit(tt,e)}renderException(e,r){let{name:o="Error",message:i=String(r),stack:a}=r;this.channel.emit(lo,{name:o,message:i,stack:a}),this.channel.emit(Pe,{newPhase:"errored",storyId:e}),this.view.showErrorDisplay(r),I$1.error(`Error rendering story '${e}':`),I$1.error(r)}renderError(e,{title:r,description:o}){I$1.error(`Error rendering story ${r}: ${o}`),this.channel.emit(no,{title:r,description:o}),this.channel.emit(Pe,{newPhase:"errored",storyId:e}),this.view.showErrorDisplay({message:r,stack:o})}};n(Un,"PreviewWithSelection");var Ue=Un,Hr=ue(kt()),da=ue(kt()),pa=/^[a-zA-Z0-9 _-]*$/,ua=/^-?[0-9]+(\.[0-9]+)?$/,Gu=/^#([a-f0-9]{3,4}|[a-f0-9]{6}|[a-f0-9]{8})$/i,fa=/^(rgba?|hsla?)\(([0-9]{1,3}),\s?([0-9]{1,3})%?,\s?([0-9]{1,3})%?,?\s?([0-9](\.[0-9]{1,2})?)?\)$/i,Wn=n((t="",e)=>t===null||t===""||!pa.test(t)?!1:e==null||e instanceof Date||typeof e=="number"||typeof e=="boolean"?!0:typeof e=="string"?pa.test(e)||ua.test(e)||Gu.test(e)||fa.test(e):Array.isArray(e)?e.every(r=>Wn(t,r)):$$1(e)?Object.entries(e).every(([r,o])=>Wn(r,o)):!1,"validateArgs"),qu={delimiter:";",nesting:!0,arrayRepeat:!0,arrayRepeatSyntax:"bracket",nestingSyntax:"js",valueDeserializer(t){if(t.startsWith("!")){if(t==="!undefined")return;if(t==="!null")return null;if(t==="!true")return!0;if(t==="!false")return!1;if(t.startsWith("!date(")&&t.endsWith(")"))return new Date(t.replaceAll(" ","+").slice(6,-1));if(t.startsWith("!hex(")&&t.endsWith(")"))return`#${t.slice(5,-1)}`;let e=t.slice(1).match(fa);if(e)return t.startsWith("!rgba")||t.startsWith("!RGBA")?`${e[1]}(${e[2]}, ${e[3]}, ${e[4]}, ${e[5]})`:t.startsWith("!hsla")||t.startsWith("!HSLA")?`${e[1]}(${e[2]}, ${e[3]}%, ${e[4]}%, ${e[5]})`:t.startsWith("!rgb")||t.startsWith("!RGB")?`${e[1]}(${e[2]}, ${e[3]}, ${e[4]})`:`${e[1]}(${e[2]}, ${e[3]}%, ${e[4]}%)`}return ua.test(t)?Number(t):t}},$n=n(t=>{let e=t.split(";").map(r=>r.replace("=","~").replace(":","="));return Object.entries((0,da.parse)(e.join(";"),qu)).reduce((r,[o,i])=>Wn(o,i)?Object.assign(r,{[o]:i}):(j$1.warn(_$1` + Omitted potentially unsafe URL args. + + More info: https://storybook.js.org/docs/writing-stories/args#setting-args-through-the-url + `),r),{})},"parseArgsParam"),{history:ya,document:xe}=E$1;function Bu(t){let e=(t||"").match(/^\/story\/(.+)/);if(!e)throw new Error(`Invalid path '${t}', must start with '/story/'`);return e[1]}n(Bu,"pathToId");var ma=n(({selection:t,extraParams:e})=>{let r=xe==null?void 0:xe.location.search.slice(1),{path:o,selectedKind:i,selectedStory:a,...u}=(0,Hr.parse)(r);return`?${(0,Hr.stringify)({...u,...e,...t&&{id:t.storyId,viewMode:t.viewMode}})}`},"getQueryString"),Vu=n(t=>{if(!t)return;let e=ma({selection:t}),{hash:r=""}=xe.location;xe.title=t.storyId,ya.replaceState({},"",`${xe.location.pathname}${e}${r}`)},"setPath"),Hu=n(t=>t!=null&&typeof t=="object"&&Array.isArray(t)===!1,"isObject"),Vr=n(t=>{if(t!==void 0){if(typeof t=="string")return t;if(Array.isArray(t))return Vr(t[0]);if(Hu(t))return Vr(Object.values(t).filter(Boolean))}},"getFirstString"),zu=n(()=>{if(typeof xe<"u"){let t=xe.location.search.slice(1),e=(0,Hr.parse)(t),r=typeof e.args=="string"?$n(e.args):void 0,o=typeof e.globals=="string"?$n(e.globals):void 0,i=Vr(e.viewMode);(typeof i!="string"||!i.match(/docs|story/))&&(i="story");let a=Vr(e.path),u=a?Bu(a):Vr(e.id);if(u)return{storySpecifier:u,args:r,globals:o,viewMode:i}}return null},"getSelectionSpecifierFromPath"),Yn=class{constructor(){this.selectionSpecifier=zu()}setSelection(e){this.selection=e,Vu(this.selection)}setQueryParams(e){let r=ma({extraParams:e}),{hash:o=""}=xe.location;ya.replaceState({},"",`${xe.location.pathname}${r}${o}`)}};n(Yn,"UrlStore");var Be=Yn,$a=ue(Ha()),Ya=ue(kt()),{document:z$1}=E$1,za=100,Ka=(t=>(t.MAIN="MAIN",t.NOPREVIEW="NOPREVIEW",t.PREPARING_STORY="PREPARING_STORY",t.PREPARING_DOCS="PREPARING_DOCS",t.ERROR="ERROR",t))(Ka||{}),rs={PREPARING_STORY:"sb-show-preparing-story",PREPARING_DOCS:"sb-show-preparing-docs",MAIN:"sb-show-main",NOPREVIEW:"sb-show-nopreview",ERROR:"sb-show-errordisplay"},ts={centered:"sb-main-centered",fullscreen:"sb-main-fullscreen",padded:"sb-main-padded"},Wa=new $a.default({escapeXML:!0}),os=class{constructor(){if(this.testing=!1,typeof z$1<"u"){let{__SPECIAL_TEST_PARAMETER__:e}=(0,Ya.parse)(z$1.location.search.slice(1));switch(e){case"preparing-story":{this.showPreparingStory(),this.testing=!0;break}case"preparing-docs":{this.showPreparingDocs(),this.testing=!0;break}}}}prepareForStory(e){return this.showStory(),this.applyLayout(e.parameters.layout),z$1.documentElement.scrollTop=0,z$1.documentElement.scrollLeft=0,this.storyRoot()}storyRoot(){return z$1.getElementById("storybook-root")}prepareForDocs(){return this.showMain(),this.showDocs(),this.applyLayout("fullscreen"),z$1.documentElement.scrollTop=0,z$1.documentElement.scrollLeft=0,this.docsRoot()}docsRoot(){return z$1.getElementById("storybook-docs")}applyLayout(e="padded"){if(e==="none"){z$1.body.classList.remove(this.currentLayoutClass),this.currentLayoutClass=null;return}this.checkIfLayoutExists(e);let r=ts[e];z$1.body.classList.remove(this.currentLayoutClass),z$1.body.classList.add(r),this.currentLayoutClass=r}checkIfLayoutExists(e){ts[e]||I$1.warn(_$1` + The desired layout: ${e} is not a valid option. + The possible options are: ${Object.keys(ts).join(", ")}, none. + `)}showMode(e){clearTimeout(this.preparingTimeout),Object.keys(Ka).forEach(r=>{r===e?z$1.body.classList.add(rs[r]):z$1.body.classList.remove(rs[r])})}showErrorDisplay({message:e="",stack:r=""}){let o=e,i=r,a=e.split(` +`);a.length>1&&([o]=a,i=a.slice(1).join(` +`).replace(/^\n/,"")),z$1.getElementById("error-message").innerHTML=Wa.toHtml(o),z$1.getElementById("error-stack").innerHTML=Wa.toHtml(i),this.showMode("ERROR")}showNoPreview(){var e,r;this.testing||(this.showMode("NOPREVIEW"),(e=this.storyRoot())==null||e.setAttribute("hidden","true"),(r=this.docsRoot())==null||r.setAttribute("hidden","true"))}showPreparingStory({immediate:e=!1}={}){clearTimeout(this.preparingTimeout),e?this.showMode("PREPARING_STORY"):this.preparingTimeout=setTimeout(()=>this.showMode("PREPARING_STORY"),za)}showPreparingDocs({immediate:e=!1}={}){clearTimeout(this.preparingTimeout),e?this.showMode("PREPARING_DOCS"):this.preparingTimeout=setTimeout(()=>this.showMode("PREPARING_DOCS"),za)}showMain(){this.showMode("MAIN")}showDocs(){this.storyRoot().setAttribute("hidden","true"),this.docsRoot().removeAttribute("hidden")}showStory(){this.docsRoot().setAttribute("hidden","true"),this.storyRoot().removeAttribute("hidden")}showStoryDuringRender(){z$1.body.classList.add(rs.MAIN)}};n(os,"WebView");var He=os,ns=class extends Ue{constructor(e,r){super(e,r,new Be,new He),this.importFn=e,this.getProjectAnnotations=r,E$1.__STORYBOOK_PREVIEW__=this}};n(ns,"PreviewWeb");var Wr=ns,{document:ze}=E$1,_f=["application/javascript","application/ecmascript","application/x-ecmascript","application/x-javascript","text/ecmascript","text/javascript","text/javascript1.0","text/javascript1.1","text/javascript1.2","text/javascript1.3","text/javascript1.4","text/javascript1.5","text/jscript","text/livescript","text/x-ecmascript","text/x-javascript","module"],Cf="script",Xa="scripts-root";function $r(){let t=ze.createEvent("Event");t.initEvent("DOMContentLoaded",!0,!0),ze.dispatchEvent(t)}n($r,"simulateDOMContentLoaded");function Pf(t,e,r){let o=ze.createElement("script");o.type=t.type==="module"?"module":"text/javascript",t.src?(o.onload=e,o.onerror=e,o.src=t.src):o.textContent=t.innerText,r?r.appendChild(o):ze.head.appendChild(o),t.parentNode.removeChild(t),t.src||e()}n(Pf,"insertScript");function Ja(t,e,r=0){t[r](()=>{r++,r===t.length?e():Ja(t,e,r)})}n(Ja,"insertScriptsSequentially");function ss(t){let e=ze.getElementById(Xa);e?e.innerHTML="":(e=ze.createElement("div"),e.id=Xa,ze.body.appendChild(e));let r=Array.from(t.querySelectorAll(Cf));if(r.length){let o=[];r.forEach(i=>{let a=i.getAttribute("type");(!a||_f.includes(a))&&o.push(u=>Pf(i,u,e))}),o.length&&Ja(o,$r,void 0)}else $r()}n(ss,"simulatePageLoad");var Qa={"@storybook/global":Ht,"storybook/internal/channels":br,"@storybook/channels":br,"@storybook/core/channels":br,"storybook/internal/client-logger":mr,"@storybook/client-logger":mr,"@storybook/core/client-logger":mr,"storybook/internal/core-events":ge,"@storybook/core-events":ge,"@storybook/core/core-events":ge,"storybook/internal/preview-errors":kr,"@storybook/core-events/preview-errors":kr,"@storybook/core/preview-errors":kr,"storybook/internal/preview-api":Yr,"@storybook/preview-api":Yr,"@storybook/core/preview-api":Yr,"storybook/internal/types":Tr,"@storybook/types":Tr,"@storybook/core/types":Tr},el=ue(Za()),ls;function Of(){var t;return ls||(ls=new el.default((t=E$1.navigator)==null?void 0:t.userAgent).getBrowserInfo()),ls}n(Of,"getBrowserInfo");function rl(t){return t.browserInfo=Of(),t}n(rl,"prepareForTelemetry");function If(t){let e=t.error||t;e.fromStorybook&&E$1.sendTelemetryError(e)}n(If,"errorListener");function Ff({reason:t}){t.fromStorybook&&E$1.sendTelemetryError(t)}n(Ff,"unhandledRejectionListener");function Df(){cs.forEach(t=>{E$1[yo[t]]=Qa[t]}),E$1.sendTelemetryError=t=>{E$1.__STORYBOOK_ADDONS_CHANNEL__.emit(uo,rl(t))},E$1.addEventListener("error",If),E$1.addEventListener("unhandledrejection",Ff)}n(Df,"setup");Df();const{createBrowserChannel}=__STORYBOOK_MODULE_CHANNELS__,{addons}=__STORYBOOK_MODULE_PREVIEW_API__,channel=createBrowserChannel({page:"preview"});addons.setChannel(channel);window.__STORYBOOK_ADDONS_CHANNEL__=channel;window.CONFIG_TYPE==="DEVELOPMENT"&&(window.__STORYBOOK_SERVER_CHANNEL__=channel);var b=Object.create,f=Object.defineProperty,v=Object.getOwnPropertyDescriptor,P=Object.getOwnPropertyNames,O=Object.getPrototypeOf,_=Object.prototype.hasOwnProperty,s=(t,e)=>f(t,"name",{value:e,configurable:!0}),$=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),j=(t,e,r,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of P(e))!_.call(t,i)&&i!==r&&f(t,i,{get:()=>e[i],enumerable:!(o=v(e,i))||o.enumerable});return t},C=(t,e,r)=>(r=t!=null?b(O(t)):{},j(f(r,"default",{value:t,enumerable:!0}),t)),T=$(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.isEqual=(function(){var e=Object.prototype.toString,r=Object.getPrototypeOf,o=Object.getOwnPropertySymbols?function(i){return Object.keys(i).concat(Object.getOwnPropertySymbols(i))}:Object.keys;return function(i,a){return s(function u(l,c,p){var g,h,m,re=e.call(l),ne=e.call(c);if(l===c)return!0;if(l==null||c==null)return!1;if(p.indexOf(l)>-1&&p.indexOf(c)>-1)return!0;if(p.push(l,c),re!=ne||(g=o(l),h=o(c),g.length!=h.length||g.some(function(le){return!u(l[le],c[le],p)})))return!1;switch(re.slice(8,-1)){case"Symbol":return l.valueOf()==c.valueOf();case"Date":case"Number":return+l==+c||+l!=+l&&+c!=+c;case"RegExp":case"Function":case"String":case"Boolean":return""+l==""+c;case"Set":case"Map":g=l.entries(),h=c.entries();do if(!u((m=g.next()).value,h.next().value,p))return!1;while(!m.done);return!0;case"ArrayBuffer":l=new Uint8Array(l),c=new Uint8Array(c);case"DataView":l=new Uint8Array(l.buffer),c=new Uint8Array(c.buffer);case"Float32Array":case"Float64Array":case"Int8Array":case"Int16Array":case"Int32Array":case"Uint8Array":case"Uint16Array":case"Uint32Array":case"Uint8ClampedArray":case"Arguments":case"Array":if(l.length!=c.length)return!1;for(m=0;m`${r} ${o}${i}`).replace(/([a-z])([A-Z])/g,(e,r,o)=>`${r} ${o}`).replace(/([a-z])([0-9])/gi,(e,r,o)=>`${r} ${o}`).replace(/([0-9])([a-z])/gi,(e,r,o)=>`${r} ${o}`).replace(/(\s|^)(\w)/g,(e,r,o)=>`${r}${o.toUpperCase()}`).replace(/ +/g," ").trim()}s(R,"toStartCaseStr");var y=C(T()),x=s(t=>t.map(e=>typeof e<"u").filter(Boolean).length,"count"),E=s((t,e)=>{let{exists:r,eq:o,neq:i,truthy:a}=t;if(x([r,o,i,a])>1)throw new Error(`Invalid conditional test ${JSON.stringify({exists:r,eq:o,neq:i})}`);if(typeof o<"u")return(0,y.isEqual)(e,o);if(typeof i<"u")return!(0,y.isEqual)(e,i);if(typeof r<"u"){let u=typeof e<"u";return r?u:!u}return typeof a>"u"||a?!!e:!e},"testValue"),z=s((t,e,r)=>{if(!t.if)return!0;let{arg:o,global:i}=t.if;if(x([o,i])!==1)throw new Error(`Invalid conditional value ${JSON.stringify({arg:o,global:i})}`);let a=o?e[o]:r[i];return E(t.if,a)},"includeConditionalArg");const{composeConfigs:M,normalizeProjectAnnotations:N}=__STORYBOOK_MODULE_PREVIEW_API__;function L(t){let e,r={_tag:"Preview",input:t,get composed(){if(e)return e;let{addons:o,...i}=t;return e=N(M([...o??[],i])),e},meta(o){return I(o,this)}};return globalThis.globalProjectAnnotations=r.composed,r}s(L,"__definePreview");function W(t){return t!=null&&typeof t=="object"&&"_tag"in t&&(t==null?void 0:t._tag)==="Preview"}s(W,"isPreview");function H(t){return t!=null&&typeof t=="object"&&"_tag"in t&&(t==null?void 0:t._tag)==="Meta"}s(H,"isMeta");function I(t,e){return{_tag:"Meta",input:t,preview:e,get composed(){throw new Error("Not implemented")},story(r){return U(r,this)}}}s(I,"defineMeta");function U(t,e){return{_tag:"Story",input:t,meta:e,get composed(){throw new Error("Not implemented")}}}s(U,"defineStory");function K(t){return t!=null&&typeof t=="object"&&"_tag"in t&&(t==null?void 0:t._tag)==="Story"}s(K,"isStory");var D=s(t=>t.toLowerCase().replace(/[ ’–—―′¿'`~!@#$%^&*()_|+\-=?;:'",.<>\{\}\[\]\\\/]/gi,"-").replace(/-+/g,"-").replace(/^-+/,"").replace(/-+$/,""),"sanitize");function S(t,e){return Array.isArray(e)?e.includes(t):t.match(e)}s(S,"matches");function te(t,{includeStories:e,excludeStories:r}){return t!=="__esModule"&&(!e||S(t,e))&&(!r||!S(t,r))}s(te,"isExportStory");const importers={"./src/components/atoms/animated-container.stories.tsx":()=>__vitePreload(()=>import("./animated-container.stories-Bl35KCC2.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8]),import.meta.url),"./src/components/atoms/badge.stories.tsx":()=>__vitePreload(()=>import("./badge.stories-CmRWDa_s.js"),__vite__mapDeps([9,1,10,8,11,3,4,5,6]),import.meta.url),"./src/components/atoms/button.stories.tsx":()=>__vitePreload(()=>import("./button.stories-ChBuZSRT.js"),__vite__mapDeps([12,1,13,8,14,11,3,4,5,6,15,16,17]),import.meta.url),"./src/components/atoms/checkbox.stories.tsx":()=>__vitePreload(()=>import("./checkbox.stories-eSDwLnhF.js"),__vite__mapDeps([18,1,19,8,3,4,5,6]),import.meta.url),"./src/components/atoms/empty-state.stories.tsx":()=>__vitePreload(()=>import("./empty-state.stories-Bl3MzzdA.js"),__vite__mapDeps([20,1,21,13,8,14,11,3,4,5,6,15,16,22]),import.meta.url),"./src/components/atoms/error-message.stories.tsx":()=>__vitePreload(()=>import("./error-message.stories-Bk6NeitC.js"),__vite__mapDeps([23,1,24,8,11,3,4,5,6,25]),import.meta.url),"./src/components/atoms/error-state.stories.tsx":()=>__vitePreload(()=>import("./error-state.stories-DNZf_lpp.js"),__vite__mapDeps([26,1,27,13,8,14,11,3,4,5,6,15,28,29]),import.meta.url),"./src/components/atoms/inline-toast.stories.tsx":()=>__vitePreload(()=>import("./inline-toast.stories-C7r26mb0.js"),__vite__mapDeps([30,1,31,3,4,5,6,32,8,7]),import.meta.url),"./src/components/atoms/input.stories.tsx":()=>__vitePreload(()=>import("./input.stories-DQJEJSpR.js"),__vite__mapDeps([33,1,34,8,3,4,5,6]),import.meta.url),"./src/components/atoms/label.stories.tsx":()=>__vitePreload(()=>import("./label.stories-C7924pCJ.js"),__vite__mapDeps([35,1,36,8,3,4,5,6]),import.meta.url),"./src/components/atoms/loading-overlay.stories.tsx":()=>__vitePreload(()=>import("./loading-overlay.stories-D9BE2_z8.js"),__vite__mapDeps([37,38,1,15,3,4,5,6]),import.meta.url),"./src/components/atoms/logo.stories.tsx":()=>__vitePreload(()=>import("./logo.stories-Bm5-ef62.js"),__vite__mapDeps([39,1,40,8,41]),import.meta.url),"./src/components/atoms/password-input.stories.tsx":()=>__vitePreload(()=>import("./password-input.stories-Dzc6SamA.js"),__vite__mapDeps([42,43,1,8,3,4,5,6,34,44]),import.meta.url),"./src/components/atoms/skeleton.stories.tsx":()=>__vitePreload(()=>import("./skeleton.stories-BkI-NupL.js"),__vite__mapDeps([45,1,46,3,4,5,6]),import.meta.url),"./src/components/atoms/spinner.stories.tsx":()=>__vitePreload(()=>import("./spinner.stories-C7xyY-xZ.js"),__vite__mapDeps([47,1,15,3,4,5,6]),import.meta.url),"./src/components/atoms/status-indicator.stories.tsx":()=>__vitePreload(()=>import("./status-indicator.stories-DpTAhFHz.js"),__vite__mapDeps([48,1,49,11,3,4,5,6]),import.meta.url),"./src/components/atoms/status-pill.stories.tsx":()=>__vitePreload(()=>import("./status-pill.stories-DSoopyF4.js"),__vite__mapDeps([50,1,51,8,3,4,5,6,52,53,28]),import.meta.url),"./src/components/atoms/step-header.stories.tsx":()=>__vitePreload(()=>import("./step-header.stories-BOK8zhw2.js"),__vite__mapDeps([54,1,55]),import.meta.url),"./src/components/atoms/view-toggle.stories.tsx":()=>__vitePreload(()=>import("./view-toggle.stories-C5Y_8-2K.js"),__vite__mapDeps([56,1,8,57,3,4,5,6,58]),import.meta.url),"./src/components/molecules/AlertBanner/AlertBanner.stories.tsx":()=>__vitePreload(()=>import("./AlertBanner.stories-BzkAEqJu.js"),__vite__mapDeps([59,1,60,61,8,28,62,52]),import.meta.url),"./src/components/molecules/AnimatedCard/AnimatedCard.stories.tsx":()=>__vitePreload(()=>import("./AnimatedCard.stories-DN795hbd.js"),__vite__mapDeps([63,1,64,7,8]),import.meta.url),"./src/components/molecules/BackLink/BackLink.stories.tsx":()=>__vitePreload(()=>import("./BackLink.stories-C6OUjTR3.js"),__vite__mapDeps([65,1,66,13,8,14,11,3,4,5,6,15,67]),import.meta.url),"./src/components/molecules/ClearFiltersButton/ClearFiltersButton.stories.tsx":()=>__vitePreload(()=>import("./ClearFiltersButton.stories-DUreI73q.js"),__vite__mapDeps([68,69,1,3,4,5,6,70,8]),import.meta.url),"./src/components/molecules/DataTable/DataTable.stories.tsx":()=>__vitePreload(()=>import("./DataTable.stories-B-_ukgGA.js"),__vite__mapDeps([71,1,72,21,13,8,14,11,3,4,5,6,15,16,73,22]),import.meta.url),"./src/components/molecules/DetailHeader/DetailHeader.stories.tsx":()=>__vitePreload(()=>import("./DetailHeader.stories-DT70K3Kz.js"),__vite__mapDeps([74,1,75,51,8,3,4,5,6,13,14,11,15,76,77]),import.meta.url),"./src/components/molecules/DetailStatsGrid/DetailStatsGrid.stories.tsx":()=>__vitePreload(()=>import("./DetailStatsGrid.stories-D_oLpbK9.js"),__vite__mapDeps([78,1,79,3,4,5,6,80,8,81,76,53]),import.meta.url),"./src/components/molecules/FilterDropdown/FilterDropdown.stories.tsx":()=>__vitePreload(()=>import("./FilterDropdown.stories-D8ZH63Jx.js"),__vite__mapDeps([82,1,8,83,3,4,5,6,84]),import.meta.url),"./src/components/molecules/FormField/FormField.stories.tsx":()=>__vitePreload(()=>import("./FormField.stories-BKWGauBj.js"),__vite__mapDeps([85,1,86,8,3,4,5,6,36,34,24,11,25]),import.meta.url),"./src/components/molecules/LoadingSkeletons/LoadingSkeletons.stories.tsx":()=>__vitePreload(()=>import("./LoadingSkeletons.stories-CTSadyqV.js"),__vite__mapDeps([87,1,88,3,4,5,6,13,8,14,11,15,34,43,44,19,36,24,25,51,10,38,27,28,29,21,16,31,32,7,46,40,41,55,49,57,58,2]),import.meta.url),"./src/components/molecules/MetricCard/MetricCard.stories.tsx":()=>__vitePreload(()=>import("./MetricCard.stories-CyBIfbtz.js"),__vite__mapDeps([89,1,90,3,4,5,6,81,8,91,76,77]),import.meta.url),"./src/components/molecules/OtpInput/OtpExpiryDisplay.stories.tsx":()=>__vitePreload(()=>import("./OtpExpiryDisplay.stories-DQ6_GOyY.js"),__vite__mapDeps([92,93,1,94,44,8]),import.meta.url),"./src/components/molecules/OtpInput/OtpInput.stories.tsx":()=>__vitePreload(()=>import("./OtpInput.stories-BqMaWeSV.js"),__vite__mapDeps([95,1,8,96,97,3,4,5,6,44]),import.meta.url),"./src/components/molecules/PaginationBar/PaginationBar.stories.tsx":()=>__vitePreload(()=>import("./PaginationBar.stories-Bs41ecrn.js"),__vite__mapDeps([98,1,8,99]),import.meta.url),"./src/components/molecules/ProgressSteps/ProgressSteps.stories.tsx":()=>__vitePreload(()=>import("./ProgressSteps.stories-B_lVP3rq.js"),__vite__mapDeps([100,101,1,52,8]),import.meta.url),"./src/components/molecules/RouteLoading.stories.tsx":()=>__vitePreload(()=>import("./RouteLoading.stories-8Jpgwq8B.js"),__vite__mapDeps([102,1]),import.meta.url),"./src/components/molecules/SearchFilterBar/SearchFilterBar.stories.tsx":()=>__vitePreload(()=>import("./SearchFilterBar.stories-DxwUci-Y.js"),__vite__mapDeps([103,1,8,104,84,70]),import.meta.url),"./src/components/molecules/SectionCard/SectionCard.stories.tsx":()=>__vitePreload(()=>import("./SectionCard.stories-BOS6yKH_.js"),__vite__mapDeps([105,1,106,3,4,5,6,13,8,14,11,15,107,108]),import.meta.url),"./src/components/molecules/SectionHeader/SectionHeader.stories.tsx":()=>__vitePreload(()=>import("./SectionHeader.stories-I03d34Dn.js"),__vite__mapDeps([109,1,110,13,8,14,11,3,4,5,6,15]),import.meta.url),"./src/components/molecules/ServiceCard/ServiceCard.stories.tsx":()=>__vitePreload(()=>import("./ServiceCard.stories-7dEyf33R.js"),__vite__mapDeps([111,1,112,14,8,3,4,5,6,113,44,77,114,115,116]),import.meta.url),"./src/components/molecules/StatusBadge/StatusBadge.stories.tsx":()=>__vitePreload(()=>import("./StatusBadge.stories-DyHwG2dd.js"),__vite__mapDeps([117,1,118,8,51,3,4,5,6,28,61,53,52]),import.meta.url),"./src/components/molecules/SubCard/SubCard.stories.tsx":()=>__vitePreload(()=>import("./SubCard.stories-FgNAFG2V.js"),__vite__mapDeps([119,1,120,8,3,4,5,6,13,14,11,15,107]),import.meta.url),"./src/components/molecules/SummaryStats/SummaryStats.stories.tsx":()=>__vitePreload(()=>import("./SummaryStats.stories-Bgs7dcLW.js"),__vite__mapDeps([121,1,122,3,76,8,81,53,52]),import.meta.url),"./src/components/molecules/error-fallbacks.stories.tsx":()=>__vitePreload(()=>import("./error-fallbacks.stories-BfOzoOVy.js"),__vite__mapDeps([123,1,124,13,8,14,11,3,4,5,6,15]),import.meta.url),"./src/components/organisms/SiteFooter/SiteFooter.stories.tsx":()=>__vitePreload(()=>import("./SiteFooter.stories-Cz1zqKrh.js"),__vite__mapDeps([125,1,14,8,40,41,126,44,127]),import.meta.url),"./src/components/templates/AuthLayout/AuthLayout.stories.tsx":()=>__vitePreload(()=>import("./AuthLayout.stories-CPD8T6zA.js"),__vite__mapDeps([128,1,129,14,8,67]),import.meta.url),"./src/components/templates/PageLayout/PageLayout.stories.tsx":()=>__vitePreload(()=>import("./PageLayout.stories-CS-cxF-k.js"),__vite__mapDeps([130,1,131,14,8,46,3,4,5,6,88,13,11,15,34,43,44,19,36,24,25,51,10,38,27,28,29,21,16,31,32,7,40,41,55,49,57,58,2,67]),import.meta.url),"./src/components/ui/input-otp.stories.tsx":()=>__vitePreload(()=>import("./input-otp.stories-CY0B6CKX.js"),__vite__mapDeps([132,1,8,97,3,4,5,6,44]),import.meta.url),"./src/features/account/components/AddressCard.stories.tsx":()=>__vitePreload(()=>import("./AddressCard.stories-ywY4b4nI.js"),__vite__mapDeps([133,1,134,72,21,13,8,14,11,3,4,5,6,15,16,73,86,36,34,24,25,96,97,44,93,94,104,84,70,99,75,51,60,61,28,62,52,46,88,43,19,10,38,27,29,31,32,7,40,41,55,49,57,58,2,110,101,120,64,112,113,122,83,69,79,106,90,66,67,118,135,124,136,81,17,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,107,158,159,160,161,162,163,114,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,126,180,181,182,183,184,185,186,187,188,189]),import.meta.url),"./src/features/account/components/PasswordChangeCard.stories.tsx":()=>__vitePreload(()=>import("./PasswordChangeCard.stories-BtEtBsXQ.js"),__vite__mapDeps([190,1,13,8,14,11,3,4,5,6,15,34,43,44,19,36,24,25,51,10,38,27,28,29,21,16,31,32,7,46,88,40,41,55,49,57,58,2,120,191,86,72,73,96,97,93,94,104,84,70,99,75,60,61,62,52,110,101,64,112,113,122,83,69,79,106,90,66,67,118,135,124,183,155,184,185,156,129,192,193,188,194,195,196,197,198]),import.meta.url),"./src/features/account/components/PersonalInfoCard.stories.tsx":()=>__vitePreload(()=>import("./PersonalInfoCard.stories-C5Meizce.js"),__vite__mapDeps([199,1,13,8,14,11,3,4,5,6,15,34,108,189,70,143]),import.meta.url),"./src/features/account/components/VerificationCard.stories.tsx":()=>__vitePreload(()=>import("./VerificationCard.stories-B-cVK-j0.js"),__vite__mapDeps([200,8,1,46,3,4,5,6,88,13,14,11,15,34,43,44,19,36,24,25,51,10,38,27,28,29,21,16,31,32,7,40,41,55,49,57,58,2,60,61,62,52,201,140,115]),import.meta.url),"./src/features/account/components/skeletons/ProfileLoadingSkeleton.stories.tsx":()=>__vitePreload(()=>import("./ProfileLoadingSkeleton.stories-BU-PWcFX.js"),__vite__mapDeps([202,1,46,3,4,5,6,88,13,8,14,11,15,34,43,44,19,36,24,25,51,10,38,27,28,29,21,16,31,32,7,40,41,55,49,57,58,2]),import.meta.url),"./src/features/address/components/AddressStepJapan.stories.tsx":()=>__vitePreload(()=>import("./AddressStepJapan.stories-BKBuOfMf.js"),__vite__mapDeps([203,1,8,169,13,14,11,3,4,5,6,15,34,43,44,19,36,24,25,51,10,38,27,28,29,21,16,31,32,7,46,88,40,41,55,49,57,58,2,86,170,153,171,172,173,141,174,175,176,177,178,179,126,180,181,182]),import.meta.url),"./src/features/address/components/AnimatedSection.stories.tsx":()=>__vitePreload(()=>import("./AnimatedSection.stories-BJ1_MTYj.js"),__vite__mapDeps([204,1,176,32,8,7]),import.meta.url),"./src/features/address/components/BilingualValue.stories.tsx":()=>__vitePreload(()=>import("./BilingualValue.stories-o20kAFvD.js"),__vite__mapDeps([205,178,1]),import.meta.url),"./src/features/address/components/JapanAddressForm.stories.tsx":()=>__vitePreload(()=>import("./JapanAddressForm.stories-CoHhyGL3.js"),__vite__mapDeps([206,1,169,13,8,14,11,3,4,5,6,15,34,43,44,19,36,24,25,51,10,38,27,28,29,21,16,31,32,7,46,88,40,41,55,49,57,58,2,86,170,153,171,172,173,141,174,175,176,177,178,179,126,180,181,182]),import.meta.url),"./src/features/address/components/ProgressIndicator.stories.tsx":()=>__vitePreload(()=>import("./ProgressIndicator.stories-Byfc_VnN.js"),__vite__mapDeps([207,177,1,3,4,5,6]),import.meta.url),"./src/features/address/components/ZipCodeInput.stories.tsx":()=>__vitePreload(()=>import("./ZipCodeInput.stories-BFozAGDn.js"),__vite__mapDeps([208,170,1,8,13,14,11,3,4,5,6,15,34,43,44,19,36,24,25,51,10,38,27,28,29,21,16,31,32,7,46,88,40,41,55,49,57,58,2,86,153,171,172,173,141,174,175]),import.meta.url),"./src/features/auth/components/MarketingCheckbox.stories.tsx":()=>__vitePreload(()=>import("./MarketingCheckbox.stories-CqDvHF_f.js"),__vite__mapDeps([209,197,1,19,8,3,4,5,6,13,14,11,15,34,43,44,36,24,25,51,10,38,27,28,29,21,16,31,32,7,46,88,40,41,55,49,57,58,2]),import.meta.url),"./src/features/auth/components/PasswordMatchIndicator.stories.tsx":()=>__vitePreload(()=>import("./PasswordMatchIndicator.stories-BPnGI6X8.js"),__vite__mapDeps([210,195,1,188,44,8,194]),import.meta.url),"./src/features/auth/components/PasswordRequirements.stories.tsx":()=>__vitePreload(()=>import("./PasswordRequirements.stories-BuqA3NhU.js"),__vite__mapDeps([211,193,1,188,44,8,194]),import.meta.url),"./src/features/auth/components/PasswordSection.stories.tsx":()=>__vitePreload(()=>import("./PasswordSection.stories-Dp7SWmeD.js"),__vite__mapDeps([212,1,192,13,8,14,11,3,4,5,6,15,34,43,44,19,36,24,25,51,10,38,27,28,29,21,16,31,32,7,46,88,40,41,55,49,57,58,2,193,188,194,195]),import.meta.url),"./src/features/auth/components/SessionTimeoutWarning.stories.tsx":()=>__vitePreload(()=>import("./SessionTimeoutWarning.stories-BmTm_C0V.js"),__vite__mapDeps([213,1,13,8,14,11,3,4,5,6,15]),import.meta.url),"./src/features/auth/components/TermsCheckbox.stories.tsx":()=>__vitePreload(()=>import("./TermsCheckbox.stories-BKOMXPZQ.js"),__vite__mapDeps([214,196,1,19,8,3,4,5,6,13,14,11,15,34,43,44,36,24,25,51,10,38,27,28,29,21,16,31,32,7,46,88,40,41,55,49,57,58,2]),import.meta.url),"./src/features/billing/components/BillingStatusBadge/BillingStatusBadge.stories.tsx":()=>__vitePreload(()=>import("./BillingStatusBadge.stories-94yAz7EP.js"),__vite__mapDeps([215,216,1,8,51,3,4,5,6,76,53,28,52,61]),import.meta.url),"./src/features/billing/components/BillingSummary/BillingSummary.stories.tsx":()=>__vitePreload(()=>import("./BillingSummary.stories-CfjkLJys.js"),__vite__mapDeps([217,1,8,14,3,4,5,6,107,17,53,52,28,138,139,140,141]),import.meta.url),"./src/features/billing/components/InvoiceDetail/InvoiceItems.stories.tsx":()=>__vitePreload(()=>import("./InvoiceItems.stories-DCnfx23q.js"),__vite__mapDeps([218,1,14,8,138,139,140,141]),import.meta.url),"./src/features/billing/components/InvoiceDetail/InvoiceSummaryBar.stories.tsx":()=>__vitePreload(()=>import("./InvoiceSummaryBar.stories-B0IQCumt.js"),__vite__mapDeps([219,1,8,13,14,11,3,4,5,6,15,51,201,140,220,221,138,139,141]),import.meta.url),"./src/features/billing/components/InvoiceDetail/InvoiceTotals.stories.tsx":()=>__vitePreload(()=>import("./InvoiceTotals.stories-JIfDPO6U.js"),__vite__mapDeps([222,1,8,4,5,6,223,171,172,224,139]),import.meta.url),"./src/features/billing/components/InvoiceItemRow.stories.tsx":()=>__vitePreload(()=>import("./InvoiceItemRow.stories-BJs_DWl1.js"),__vite__mapDeps([225,1,8,4,5,6,223,171,172,224,139,136]),import.meta.url),"./src/features/billing/components/InvoiceTable/InvoiceTable.stories.tsx":()=>__vitePreload(()=>import("./InvoiceTable.stories-B6vMrZIR.js"),__vite__mapDeps([226,1,8,136,72,21,13,14,11,3,4,5,6,15,16,73,216,51,76,53,28,52,61,201,140,172,183,155,184,185,156,227,224,220,138,139,141]),import.meta.url),"./src/features/billing/components/skeletons/invoice-list-skeleton.stories.tsx":()=>__vitePreload(()=>import("./invoice-list-skeleton.stories-QDelhEm_.js"),__vite__mapDeps([228,1,88,3,4,5,6,13,8,14,11,15,34,43,44,19,36,24,25,51,10,38,27,28,29,21,16,31,32,7,46,40,41,55,49,57,58,2]),import.meta.url),"./src/features/checkout/components/CheckoutErrorFallback.stories.tsx":()=>__vitePreload(()=>import("./CheckoutErrorFallback.stories-BQ4DRuiU.js"),__vite__mapDeps([229,1,60,61,8,28,62,52,13,14,11,3,4,5,6,15]),import.meta.url),"./src/features/checkout/components/CheckoutShell.stories.tsx":()=>__vitePreload(()=>import("./CheckoutShell.stories-DuLNb4b_.js"),__vite__mapDeps([230,1,8,14,40,41,183,4,5,6,155,184,185,156,115]),import.meta.url),"./src/features/checkout/components/CheckoutStatusBanners.stories.tsx":()=>__vitePreload(()=>import("./CheckoutStatusBanners.stories-ySBtOPrz.js"),__vite__mapDeps([231,1,13,8,14,11,3,4,5,6,15,60,61,28,62,52,232]),import.meta.url),"./src/features/checkout/components/OrderConfirmation.stories.tsx":()=>__vitePreload(()=>import("./OrderConfirmation.stories-QSfVClKV.js"),__vite__mapDeps([233,1,136,14,8,13,11,3,4,5,6,15,52,163,76]),import.meta.url),"./src/features/checkout/components/checkout-sections/IdentityVerificationSection.stories.tsx":()=>__vitePreload(()=>import("./IdentityVerificationSection.stories-CzqNiDfi.js"),__vite__mapDeps([234,1,120,8,3,4,5,6,13,14,11,15,60,61,28,62,52,51,235,236,44,232]),import.meta.url),"./src/features/checkout/components/checkout-sections/OrderSubmitSection.stories.tsx":()=>__vitePreload(()=>import("./OrderSubmitSection.stories-DSyTqli0.js"),__vite__mapDeps([237,1,13,8,14,11,3,4,5,6,15,60,61,28,62,52,236,44,232]),import.meta.url),"./src/features/checkout/components/checkout-sections/PaymentMethodSection.stories.tsx":()=>__vitePreload(()=>import("./PaymentMethodSection.stories-CLy-Cpns.js"),__vite__mapDeps([238,1,120,8,3,4,5,6,13,14,11,15,60,61,28,62,52,51,239,44,232]),import.meta.url),"./src/features/checkout/components/checkout-sections/ResidenceCardUploadInput.stories.tsx":()=>__vitePreload(()=>import("./ResidenceCardUploadInput.stories-lG6nqfJJ.js"),__vite__mapDeps([240,1,235,8,13,14,11,3,4,5,6,15,232]),import.meta.url),"./src/features/dashboard/components/AccountStatusCard.stories.tsx":()=>__vitePreload(()=>import("./AccountStatusCard.stories-v6lNJy7d.js"),__vite__mapDeps([241,1,52,8]),import.meta.url),"./src/features/dashboard/components/ActivityTimeline.stories.tsx":()=>__vitePreload(()=>import("./ActivityTimeline.stories-CXsaEik9.js"),__vite__mapDeps([242,1,8,243,227,224,6,244,156,5,139,52,245,116,76,28,201,140,4,232]),import.meta.url),"./src/features/dashboard/components/DashboardActivityItem.stories.tsx":()=>__vitePreload(()=>import("./DashboardActivityItem.stories-n2rSPi9U.js"),__vite__mapDeps([246,1,243,227,224,6,244,156,5,139,52,8,245,116,76,28,232]),import.meta.url),"./src/features/dashboard/components/QuickAction.stories.tsx":()=>__vitePreload(()=>import("./QuickAction.stories-CaLW2ODx.js"),__vite__mapDeps([247,1,14,8,17,107,58,245]),import.meta.url),"./src/features/dashboard/components/StatCard.stories.tsx":()=>__vitePreload(()=>import("./StatCard.stories-ByQilz1z.js"),__vite__mapDeps([248,1,14,8,17,58,76,245,81]),import.meta.url),"./src/features/dashboard/components/TaskCard.stories.tsx":()=>__vitePreload(()=>import("./TaskCard.stories-DrZu2XPm.js"),__vite__mapDeps([249,1,250,8,14,3,4,5,6,13,11,15,73,232,25,53,107]),import.meta.url),"./src/features/dashboard/components/TaskList.stories.tsx":()=>__vitePreload(()=>import("./TaskList.stories-Cqc9zFS6.js"),__vite__mapDeps([251,1,250,8,14,3,4,5,6,13,11,15,73,25,107,53]),import.meta.url),"./src/features/get-started/components/GetStartedForm/steps/complete-account/NewCustomerFields.stories.tsx":()=>__vitePreload(()=>import("./NewCustomerFields.stories-COzH0N4T.js"),__vite__mapDeps([252,1,232,13,8,14,11,3,4,5,6,15,34,43,44,19,36,24,25,51,10,38,27,28,29,21,16,31,32,7,46,88,40,41,55,49,57,58,2]),import.meta.url),"./src/features/get-started/components/GetStartedForm/steps/complete-account/PasswordSection.stories.tsx":()=>__vitePreload(()=>import("./PasswordSection.stories-Dd7-O2Dr.js"),__vite__mapDeps([253,1,232,13,8,14,11,3,4,5,6,15,34,43,44,19,36,24,25,51,10,38,27,28,29,21,16,31,32,7,46,88,40,41,55,49,57,58,2,188,194]),import.meta.url),"./src/features/get-started/components/GetStartedForm/steps/complete-account/PersonalInfoFields.stories.tsx":()=>__vitePreload(()=>import("./PersonalInfoFields.stories-C6TPxiFP.js"),__vite__mapDeps([254,1,13,8,14,11,3,4,5,6,15,34,43,44,19,36,24,25,51,10,38,27,28,29,21,16,31,32,7,46,88,40,41,55,49,57,58,2]),import.meta.url),"./src/features/landing-page/components/CTABanner.stories.tsx":()=>__vitePreload(()=>import("./CTABanner.stories-FtL8SvK-.js"),__vite__mapDeps([255,1,13,8,14,11,3,4,5,6,15,113,44]),import.meta.url),"./src/features/landing-page/components/Chapter.stories.tsx":()=>__vitePreload(()=>import("./Chapter.stories-CzDKpNWz.js"),__vite__mapDeps([256,1,3,4,5,6]),import.meta.url),"./src/features/landing-page/components/ContactSection.stories.tsx":()=>__vitePreload(()=>import("./ContactSection.stories-D7pujQk4.js"),__vite__mapDeps([257,1,8,13,14,11,3,4,5,6,15,34,43,44,19,36,24,25,51,10,38,27,28,29,21,16,31,32,7,46,88,40,41,55,49,57,58,2,86,60,61,62,52,154,155,94,174,258,126]),import.meta.url),"./src/features/landing-page/components/HeroSection.stories.tsx":()=>__vitePreload(()=>import("./HeroSection.stories-C94ZiyDm.js"),__vite__mapDeps([259,1,8,13,14,11,3,4,5,6,15,258,7,113,44]),import.meta.url),"./src/features/landing-page/components/ServicesCarousel.stories.tsx":()=>__vitePreload(()=>import("./ServicesCarousel.stories-Ba6UYuYL.js"),__vite__mapDeps([260,1,8,14,3,4,5,6,258,7,261,262,44,263,264,182,32,113,180]),import.meta.url),"./src/features/landing-page/components/SupportDownloadsSection.stories.tsx":()=>__vitePreload(()=>import("./SupportDownloadsSection.stories-CSqHhYLq.js"),__vite__mapDeps([265,1,8,41,261,262,44,263,264,182,258,7]),import.meta.url),"./src/features/landing-page/components/TrustStrip.stories.tsx":()=>__vitePreload(()=>import("./TrustStrip.stories-DSpC9tt5.js"),__vite__mapDeps([266,1,8,3,4,5,6,7,258,94,44,267,268,239]),import.meta.url),"./src/features/landing-page/components/WhyUsSection.stories.tsx":()=>__vitePreload(()=>import("./WhyUsSection.stories-D1s7CEcr.js"),__vite__mapDeps([269,1,8,41,14,258,7,44,113]),import.meta.url),"./src/features/notifications/components/NotificationBell.stories.tsx":()=>__vitePreload(()=>import("./NotificationBell.stories-BrAAL4Pp.js"),__vite__mapDeps([270,1]),import.meta.url),"./src/features/notifications/components/NotificationDropdown.stories.tsx":()=>__vitePreload(()=>import("./NotificationDropdown.stories-DRbE5Maq.js"),__vite__mapDeps([271,1,272,8,14,3,201,140,4,5,6,70,160]),import.meta.url),"./src/features/notifications/components/NotificationItem.stories.tsx":()=>__vitePreload(()=>import("./NotificationItem.stories-feB8mKiH.js"),__vite__mapDeps([273,1,272,8,14,3,201,140,4,5,6,70,160]),import.meta.url),"./src/features/orders/components/OrderCard.stories.tsx":()=>__vitePreload(()=>import("./OrderCard.stories-D_TTGbJi.js"),__vite__mapDeps([274,1,8,51,3,4,5,6,275,114,77,276]),import.meta.url),"./src/features/orders/components/OrderCardSkeleton.stories.tsx":()=>__vitePreload(()=>import("./OrderCardSkeleton.stories-BWQRL5sV.js"),__vite__mapDeps([277,1]),import.meta.url),"./src/features/orders/components/OrderDetailSkeleton.stories.tsx":()=>__vitePreload(()=>import("./OrderDetailSkeleton.stories-CsIQ7N0Z.js"),__vite__mapDeps([278,1,3,4,5,6]),import.meta.url),"./src/features/orders/components/OrderProgressTimeline.stories.tsx":()=>__vitePreload(()=>import("./OrderProgressTimeline.stories-BRHSqsEM.js"),__vite__mapDeps([279,1,3,4,5,6,8]),import.meta.url),"./src/features/orders/components/OrderServiceIcon.stories.tsx":()=>__vitePreload(()=>import("./OrderServiceIcon.stories-4p-nQPSW.js"),__vite__mapDeps([280,275,1,8,114,77,276,6]),import.meta.url),"./src/features/services/components/base/AddonGroup.stories.tsx":()=>__vitePreload(()=>import("./AddonGroup.stories-DTbPGvRs.js"),__vite__mapDeps([281,159,1,160,8]),import.meta.url),"./src/features/services/components/base/AddressConfirmation.stories.tsx":()=>__vitePreload(()=>import("./AddressConfirmation.stories-ouZdlC2E.js"),__vite__mapDeps([282,1]),import.meta.url),"./src/features/services/components/base/AddressForm.stories.tsx":()=>__vitePreload(()=>import("./AddressForm.stories-kK1qsigB.js"),__vite__mapDeps([283,1,152,8,153,154,155,4,5,6,156,28]),import.meta.url),"./src/features/services/components/base/CardBadge.stories.tsx":()=>__vitePreload(()=>import("./CardBadge.stories-NUWDfuqZ.js"),__vite__mapDeps([284,1,285]),import.meta.url),"./src/features/services/components/base/CardPricing.stories.tsx":()=>__vitePreload(()=>import("./CardPricing.stories-U7XUVchG.js"),__vite__mapDeps([286,166,1,81,8]),import.meta.url),"./src/features/services/components/base/CollapsibleSection.stories.tsx":()=>__vitePreload(()=>import("./CollapsibleSection.stories-C3ZRYcvr.js"),__vite__mapDeps([287,1,288,8,7,289,44,32,290,291,292]),import.meta.url),"./src/features/services/components/base/ConfigurationStep.stories.tsx":()=>__vitePreload(()=>import("./ConfigurationStep.stories-BT7t6srM.js"),__vite__mapDeps([293,1,144,64,7,8,145,52,146,147,28,148,13,14,11,3,4,5,6,15,149,150,62,151]),import.meta.url),"./src/features/services/components/base/HowItWorks.stories.tsx":()=>__vitePreload(()=>import("./HowItWorks.stories-Dtl3iW25.js"),__vite__mapDeps([294,1,295,3]),import.meta.url),"./src/features/services/components/base/OrderSummary.stories.tsx":()=>__vitePreload(()=>import("./OrderSummary.stories-Cocc3tug.js"),__vite__mapDeps([296,1,158,136,13,8,14,11,3,4,5,6,15,67,17]),import.meta.url),"./src/features/services/components/base/PaymentForm.stories.tsx":()=>__vitePreload(()=>import("./PaymentForm.stories-BSI-pusn.js"),__vite__mapDeps([297,1,157,8,46,3,4,5,6,88,13,14,11,15,34,43,44,19,36,24,25,51,10,38,27,28,29,21,16,31,32,7,40,41,55,49,57,58,2,60,61,62,52,107]),import.meta.url),"./src/features/services/components/base/PricingDisplay.stories.tsx":()=>__vitePreload(()=>import("./PricingDisplay.stories-Dag-riPk.js"),__vite__mapDeps([298,137,1,62,8,81,138,139,140,141]),import.meta.url),"./src/features/services/components/base/ProductCard.stories.tsx":()=>__vitePreload(()=>import("./ProductCard.stories-BobRhhaF.js"),__vite__mapDeps([299,1,134,72,21,13,8,14,11,3,4,5,6,15,16,73,86,36,34,24,25,96,97,44,93,94,104,84,70,99,75,51,60,61,28,62,52,46,88,43,19,10,38,27,29,31,32,7,40,41,55,49,57,58,2,110,101,120,64,112,113,122,83,69,79,106,90,66,67,118,135,124,136,81,17]),import.meta.url),"./src/features/services/components/base/ProductComparison.stories.tsx":()=>__vitePreload(()=>import("./ProductComparison.stories-DP0gZ24B.js"),__vite__mapDeps([300,142,1,64,7,8,13,14,11,3,4,5,6,15,81,143,70]),import.meta.url),"./src/features/services/components/base/ServiceCTA.stories.tsx":()=>__vitePreload(()=>import("./ServiceCTA.stories-B4ZpaOSF.js"),__vite__mapDeps([301,1,302,13,8,14,11,3,4,5,6,15,113,44,179]),import.meta.url),"./src/features/services/components/base/ServiceFAQ.stories.tsx":()=>__vitePreload(()=>import("./ServiceFAQ.stories-BmgNqC-B.js"),__vite__mapDeps([303,1,304,8,3,289,44]),import.meta.url),"./src/features/services/components/base/ServiceHighlights.stories.tsx":()=>__vitePreload(()=>import("./ServiceHighlights.stories-D4GoZ_5i.js"),__vite__mapDeps([305,1,306,8,3,4,5,6]),import.meta.url),"./src/features/services/components/base/ServicesBackLink.stories.tsx":()=>__vitePreload(()=>import("./ServicesBackLink.stories-B5g0HtZH.js"),__vite__mapDeps([307,66,1,13,8,14,11,3,4,5,6,15,67]),import.meta.url),"./src/features/services/components/base/ServicesHero.stories.tsx":()=>__vitePreload(()=>import("./ServicesHero.stories-DhI0dPyd.js"),__vite__mapDeps([308,1,309,3,4,5,6]),import.meta.url),"./src/features/services/components/base/configuration-step/HelpPanel.stories.tsx":()=>__vitePreload(()=>import("./HelpPanel.stories-BZhqwEh1.js"),__vite__mapDeps([310,1,150,62,8]),import.meta.url),"./src/features/services/components/base/configuration-step/InfoPanel.stories.tsx":()=>__vitePreload(()=>import("./InfoPanel.stories-CV1LECBr.js"),__vite__mapDeps([311,1,151]),import.meta.url),"./src/features/services/components/base/configuration-step/StepActions.stories.tsx":()=>__vitePreload(()=>import("./StepActions.stories-Dsc7u9rl.js"),__vite__mapDeps([312,1,148,13,8,14,11,3,4,5,6,15]),import.meta.url),"./src/features/services/components/base/configuration-step/StepContent.stories.tsx":()=>__vitePreload(()=>import("./StepContent.stories-nOPQZWRB.js"),__vite__mapDeps([313,1,149,150,62,8,151]),import.meta.url),"./src/features/services/components/base/configuration-step/StepHeader.stories.tsx":()=>__vitePreload(()=>import("./StepHeader.stories-BUAXqID2.js"),__vite__mapDeps([314,1,146,145,52,8,147,28]),import.meta.url),"./src/features/services/components/base/configuration-step/StepIndicator.stories.tsx":()=>__vitePreload(()=>import("./StepIndicator.stories-BdRLQJwc.js"),__vite__mapDeps([315,1,145,52,8]),import.meta.url),"./src/features/services/components/base/configuration-step/ValidationStatus.stories.tsx":()=>__vitePreload(()=>import("./ValidationStatus.stories-B5CKE5IR.js"),__vite__mapDeps([316,147,1,28,8,52]),import.meta.url),"./src/features/services/components/common/FeatureCard.stories.tsx":()=>__vitePreload(()=>import("./FeatureCard.stories-Bvgh88lM.js"),__vite__mapDeps([317,1,186]),import.meta.url),"./src/features/services/components/common/ServiceHeroCard.stories.tsx":()=>__vitePreload(()=>import("./ServiceHeroCard.stories-B78coRsl.js"),__vite__mapDeps([318,1,187,64,7,8,13,14,11,3,4,5,6,15,188,44,113]),import.meta.url),"./src/features/services/components/common/ServicesOverviewContent.stories.tsx":()=>__vitePreload(()=>import("./ServicesOverviewContent.stories-Dc0-GGC0.js"),__vite__mapDeps([319,1,14,8,262,44,263,236,182,264,188,113,127]),import.meta.url),"./src/features/services/components/eligibility-check/steps/CompleteAccountStep.stories.tsx":()=>__vitePreload(()=>import("./CompleteAccountStep.stories-CCldt2ko.js"),__vite__mapDeps([320,1,8,13,14,11,3,4,5,6,15,34,43,44,19,36,24,25,51,10,38,27,28,29,21,16,31,32,7,46,88,40,41,55,49,57,58,2,191,86,72,73,96,97,93,94,104,84,70,99,75,60,61,62,52,110,101,120,64,112,113,122,83,69,79,106,90,66,67,118,135,124,183,155,184,185,156,129,192,193,188,194,195,196,197,198,321,173,141,322,323,324]),import.meta.url),"./src/features/services/components/eligibility-check/steps/FormStep.stories.tsx":()=>__vitePreload(()=>import("./FormStep.stories-Bg4DOFI9.js"),__vite__mapDeps([325,1,8,13,14,11,3,4,5,6,15,34,43,44,19,36,24,25,51,10,38,27,28,29,21,16,31,32,7,46,88,40,41,55,49,57,58,2,169,86,170,153,171,172,173,141,174,175,176,177,178,179,126,180,181,182,321,155,185,156,184,113]),import.meta.url),"./src/features/services/components/eligibility-check/steps/OtpStep.stories.tsx":()=>__vitePreload(()=>import("./OtpStep.stories-D8ODNRr5.js"),__vite__mapDeps([326,1,8,13,14,11,3,4,5,6,15,34,43,44,19,36,24,25,51,10,38,27,28,29,21,16,31,32,7,46,88,40,41,55,49,57,58,2,72,73,86,96,97,93,94,104,84,70,99,75,60,61,62,52,110,101,120,64,112,113,122,83,69,79,106,90,66,67,118,135,124,321,155,173,141,185,156,184]),import.meta.url),"./src/features/services/components/eligibility-check/steps/SuccessStep.stories.tsx":()=>__vitePreload(()=>import("./SuccessStep.stories-GoxphLJW.js"),__vite__mapDeps([327,1,8,136,13,14,11,3,4,5,6,15,34,43,44,19,36,24,25,51,10,38,27,28,29,21,16,31,32,7,46,88,40,41,55,49,57,58,2,321,155,173,141,185,156,184,113,181]),import.meta.url),"./src/features/services/components/eligibility-check/steps/complete-account/AccountInfoDisplay.stories.tsx":()=>__vitePreload(()=>import("./AccountInfoDisplay.stories-CUbdeL1Y.js"),__vite__mapDeps([328,322,1]),import.meta.url),"./src/features/services/components/eligibility-check/steps/complete-account/PasswordSection.stories.tsx":()=>__vitePreload(()=>import("./PasswordSection.stories-CUGb6CmS.js"),__vite__mapDeps([329,191,1,8,14,13,11,3,4,5,6,15,34,43,44,19,36,24,25,51,10,38,27,28,29,21,16,31,32,7,46,88,40,41,55,49,57,58,2,86,72,73,96,97,93,94,104,84,70,99,75,60,61,62,52,110,101,120,64,112,113,122,83,69,79,106,90,66,67,118,135,124,183,155,184,185,156,129,192,193,188,194,195,196,197,198]),import.meta.url),"./src/features/services/components/eligibility-check/steps/complete-account/PersonalInfoFields.stories.tsx":()=>__vitePreload(()=>import("./PersonalInfoFields.stories-J4TMhu6x.js"),__vite__mapDeps([330,323,1,13,8,14,11,3,4,5,6,15,34,43,44,19,36,24,25,51,10,38,27,28,29,21,16,31,32,7,46,88,40,41,55,49,57,58,2]),import.meta.url),"./src/features/services/components/internet/EligibilityStatusBadge.stories.tsx":()=>__vitePreload(()=>import("./EligibilityStatusBadge.stories-D7BkuDHU.js"),__vite__mapDeps([331,1,3,4,5,6,332,44,8,126,94,174]),import.meta.url),"./src/features/services/components/internet/HowItWorksSection.stories.tsx":()=>__vitePreload(()=>import("./HowItWorksSection.stories-DyIW3oxb.js"),__vite__mapDeps([333,1,126,44,8,290,334,262]),import.meta.url),"./src/features/services/components/internet/InstallationOptions.stories.tsx":()=>__vitePreload(()=>import("./InstallationOptions.stories-BnnJh6fr.js"),__vite__mapDeps([335,167,1,166,81,8]),import.meta.url),"./src/features/services/components/internet/InternetImportantNotes.stories.tsx":()=>__vitePreload(()=>import("./InternetImportantNotes.stories-dl4oyU2O.js"),__vite__mapDeps([336,1,62,8]),import.meta.url),"./src/features/services/components/internet/InternetIneligibleState.stories.tsx":()=>__vitePreload(()=>import("./InternetIneligibleState.stories-B41A9tyD.js"),__vite__mapDeps([337,1,13,8,14,11,3,4,5,6,15,332,44]),import.meta.url),"./src/features/services/components/internet/InternetModalShell.stories.tsx":()=>__vitePreload(()=>import("./InternetModalShell.stories-C56JHx5y.js"),__vite__mapDeps([338,1,339,8,3,4,5,6,70]),import.meta.url),"./src/features/services/components/internet/InternetOfferingCard.stories.tsx":()=>__vitePreload(()=>import("./InternetOfferingCard.stories-D5z-_Afl.js"),__vite__mapDeps([340,1,13,8,14,11,3,4,5,6,15,285,181,44,182,188]),import.meta.url),"./src/features/services/components/internet/InternetPendingState.stories.tsx":()=>__vitePreload(()=>import("./InternetPendingState.stories-DpnEkMP4.js"),__vite__mapDeps([341,1,13,8,14,11,3,4,5,6,15,201,140,94,44]),import.meta.url),"./src/features/services/components/internet/InternetPlanCard.stories.tsx":()=>__vitePreload(()=>import("./InternetPlanCard.stories-CU2Janbw.js"),__vite__mapDeps([342,1,72,21,13,8,14,11,3,4,5,6,15,16,73,86,36,34,24,25,96,97,44,93,94,104,84,70,99,75,51,60,61,28,62,52,46,88,43,19,10,38,27,29,31,32,7,40,41,55,49,57,58,2,110,101,120,64,112,113,122,83,69,79,106,90,66,67,118,135,124,136,166,81,285,343,244,156,198,276,184,344,345,17,143]),import.meta.url),"./src/features/services/components/internet/InternetTierPricingModal.stories.tsx":()=>__vitePreload(()=>import("./InternetTierPricingModal.stories-D3tV9nr6.js"),__vite__mapDeps([346,1,13,8,14,11,3,4,5,6,15,285,339,70]),import.meta.url),"./src/features/services/components/internet/PlanComparisonGuide.stories.tsx":()=>__vitePreload(()=>import("./PlanComparisonGuide.stories-B4fWF-h8.js"),__vite__mapDeps([347,1,8,3,4,5,6,292,44,348,289,264,179]),import.meta.url),"./src/features/services/components/internet/PlanHeader.stories.tsx":()=>__vitePreload(()=>import("./PlanHeader.stories-Bwxdrl89.js"),__vite__mapDeps([349,1,13,8,14,11,3,4,5,6,15,285,344,67]),import.meta.url),"./src/features/services/components/internet/PublicOfferingCard.stories.tsx":()=>__vitePreload(()=>import("./PublicOfferingCard.stories-_cAv-Hmi.js"),__vite__mapDeps([350,1,8,13,14,11,3,4,5,6,15,285,181,44,182,348,289,291,194,179,188]),import.meta.url),"./src/features/services/components/internet/configure/components/ConfigureLoadingSkeleton.stories.tsx":()=>__vitePreload(()=>import("./ConfigureLoadingSkeleton.stories-CLL7uosX.js"),__vite__mapDeps([351,1,131,14,8,46,3,4,5,6,88,13,11,15,34,43,44,19,36,24,25,51,10,38,27,28,29,21,16,31,32,7,40,41,55,49,57,58,2,67,116]),import.meta.url),"./src/features/services/components/internet/configure/steps/AddonsStep.stories.tsx":()=>__vitePreload(()=>import("./AddonsStep.stories-BngBiy8z.js"),__vite__mapDeps([352,1,13,8,14,11,3,4,5,6,15,34,43,44,19,36,24,25,51,10,38,27,28,29,21,16,31,32,7,46,88,40,41,55,49,57,58,2,159,160,67,17]),import.meta.url),"./src/features/services/components/internet/configure/steps/InstallationStep.stories.tsx":()=>__vitePreload(()=>import("./InstallationStep.stories-DyDnFBPU.js"),__vite__mapDeps([353,1,13,8,14,11,3,4,5,6,15,34,43,44,19,36,24,25,51,10,38,27,28,29,21,16,31,32,7,46,88,40,41,55,49,57,58,2,167,166,81,67,17]),import.meta.url),"./src/features/services/components/internet/configure/steps/ReviewOrderStep.stories.tsx":()=>__vitePreload(()=>import("./ReviewOrderStep.stories-CLtZmMgB.js"),__vite__mapDeps([354,1,72,21,13,8,14,11,3,4,5,6,15,16,73,86,36,34,24,25,96,97,44,93,94,104,84,70,99,75,51,60,61,28,62,52,46,88,43,19,10,38,27,29,31,32,7,40,41,55,49,57,58,2,110,101,120,64,112,113,122,83,69,79,106,90,66,67,118,135,124,17]),import.meta.url),"./src/features/services/components/internet/configure/steps/ServiceConfigurationStep.stories.tsx":()=>__vitePreload(()=>import("./ServiceConfigurationStep.stories-Kiqd8Qig.js"),__vite__mapDeps([355,1,13,8,14,11,3,4,5,6,15,34,43,44,19,36,24,25,51,10,38,27,28,29,21,16,31,32,7,46,88,40,41,55,49,57,58,2,17]),import.meta.url),"./src/features/services/components/sim/ActivationForm.stories.tsx":()=>__vitePreload(()=>import("./ActivationForm.stories-Bofu_3Gr.js"),__vite__mapDeps([356,165,1,166,81,8]),import.meta.url),"./src/features/services/components/sim/DeviceCompatibility.stories.tsx":()=>__vitePreload(()=>import("./DeviceCompatibility.stories-ChiNwKar.js"),__vite__mapDeps([357,358,1,8,3,4,5,6,175,44,263,188,194]),import.meta.url),"./src/features/services/components/sim/MnpForm.stories.tsx":()=>__vitePreload(()=>import("./MnpForm.stories-IRfEW44T.js"),__vite__mapDeps([359,168,1]),import.meta.url),"./src/features/services/components/sim/SimCallingRates.stories.tsx":()=>__vitePreload(()=>import("./SimCallingRates.stories-D_yJKnJY.js"),__vite__mapDeps([360,1,8]),import.meta.url),"./src/features/services/components/sim/SimConfigureView.stories.tsx":()=>__vitePreload(()=>import("./SimConfigureView.stories-e1VMTQiC.js"),__vite__mapDeps([361,1,131,14,8,46,3,4,5,6,88,13,11,15,34,43,44,19,36,24,25,51,10,38,27,28,29,21,16,31,32,7,40,41,55,49,57,58,2,67,72,73,86,96,97,93,94,104,84,70,99,75,60,61,62,52,110,101,120,64,112,113,122,83,69,79,106,90,66,118,135,124,345,136,362,114,363,364,91,365,366,161,143,162,163,164,17,367,165,166,81,368,159,160,369,168,370,201,140]),import.meta.url),"./src/features/services/components/sim/SimFees.stories.tsx":()=>__vitePreload(()=>import("./SimFees.stories-MB7Og5JI.js"),__vite__mapDeps([371,1,8,29,91]),import.meta.url),"./src/features/services/components/sim/SimHowItWorksSection.stories.tsx":()=>__vitePreload(()=>import("./SimHowItWorksSection.stories-C1fM1NrP.js"),__vite__mapDeps([372,373,1,295,3,44,8,174]),import.meta.url),"./src/features/services/components/sim/SimOrderProcess.stories.tsx":()=>__vitePreload(()=>import("./SimOrderProcess.stories-BPKj4bvH.js"),__vite__mapDeps([374,1,8,107,115,114]),import.meta.url),"./src/features/services/components/sim/SimPlanCard.stories.tsx":()=>__vitePreload(()=>import("./SimPlanCard.stories-CNc_VaKU.js"),__vite__mapDeps([375,376,1,64,7,8,13,14,11,3,4,5,6,15,166,81,285,136,343,244,156,198,276,184,345,114,17]),import.meta.url),"./src/features/services/components/sim/SimPlanTypeSection.stories.tsx":()=>__vitePreload(()=>import("./SimPlanTypeSection.stories-DWYvRWOb.js"),__vite__mapDeps([377,1,376,64,7,8,13,14,11,3,4,5,6,15,166,81,285,136,343,244,156,198,276,184,345,114,17,91]),import.meta.url),"./src/features/services/components/sim/SimPlansContent.stories.tsx":()=>__vitePreload(()=>import("./SimPlansContent.stories-B1C5gMOH.js"),__vite__mapDeps([378,1,8,46,3,4,5,6,88,13,14,11,15,34,43,44,19,36,24,25,51,10,38,27,28,29,21,16,31,32,7,40,41,55,49,57,58,2,60,61,62,52,66,67,309,345,136,288,289,304,358,175,263,188,194,306,373,295,174,127,267,179,324,239,334,268,291,113,332]),import.meta.url),"./src/features/services/components/sim/SimTypeComparison.stories.tsx":()=>__vitePreload(()=>import("./SimTypeComparison.stories-CnFVwS9R.js"),__vite__mapDeps([379,1,8,62,162,143,163,114,164]),import.meta.url),"./src/features/services/components/sim/SimTypeSelector.stories.tsx":()=>__vitePreload(()=>import("./SimTypeSelector.stories-DpuYMLx1.js"),__vite__mapDeps([380,161,1,8,62,143,162,163,114,164]),import.meta.url),"./src/features/services/components/sim/configure/LoadingSkeleton.stories.tsx":()=>__vitePreload(()=>import("./LoadingSkeleton.stories-pVMJG_-P.js"),__vite__mapDeps([381,362,1,131,14,8,46,3,4,5,6,88,13,11,15,34,43,44,19,36,24,25,51,10,38,27,28,29,21,16,31,32,7,40,41,55,49,57,58,2,67,114]),import.meta.url),"./src/features/services/components/sim/configure/PlanCard.stories.tsx":()=>__vitePreload(()=>import("./PlanCard.stories-BU5JLd60.js"),__vite__mapDeps([382,364,1,72,21,13,8,14,11,3,4,5,6,15,16,73,86,36,34,24,25,96,97,44,93,94,104,84,70,99,75,51,60,61,28,62,52,46,88,43,19,10,38,27,29,31,32,7,40,41,55,49,57,58,2,110,101,120,64,112,113,122,83,69,79,106,90,66,67,118,135,124,114,91]),import.meta.url),"./src/features/services/components/sim/configure/PlanNotFound.stories.tsx":()=>__vitePreload(()=>import("./PlanNotFound.stories-B9Ze1Ljr.js"),__vite__mapDeps([383,363,1,131,14,8,46,3,4,5,6,88,13,11,15,34,43,44,19,36,24,25,51,10,38,27,28,29,21,16,31,32,7,40,41,55,49,57,58,2,67,345,136]),import.meta.url),"./src/features/services/components/sim/configure/PlatinumNotice.stories.tsx":()=>__vitePreload(()=>import("./PlatinumNotice.stories-Bl7xABNE.js"),__vite__mapDeps([384,365,1,28,8]),import.meta.url),"./src/features/services/components/sim/configure/steps/ActivationStep.stories.tsx":()=>__vitePreload(()=>import("./ActivationStep.stories-CpnVfT1w.js"),__vite__mapDeps([385,367,1,72,21,13,8,14,11,3,4,5,6,15,16,73,86,36,34,24,25,96,97,44,93,94,104,84,70,99,75,51,60,61,28,62,52,46,88,43,19,10,38,27,29,31,32,7,40,41,55,49,57,58,2,110,101,120,64,112,113,122,83,69,79,106,90,66,67,118,135,124,165,166,81,17]),import.meta.url),"./src/features/services/components/sim/configure/steps/AddonsStep.stories.tsx":()=>__vitePreload(()=>import("./AddonsStep.stories-CkxWuUHZ.js"),__vite__mapDeps([386,368,1,72,21,13,8,14,11,3,4,5,6,15,16,73,86,36,34,24,25,96,97,44,93,94,104,84,70,99,75,51,60,61,28,62,52,46,88,43,19,10,38,27,29,31,32,7,40,41,55,49,57,58,2,110,101,120,64,112,113,122,83,69,79,106,90,66,67,118,135,124,159,160,17]),import.meta.url),"./src/features/services/components/sim/configure/steps/NumberPortingStep.stories.tsx":()=>__vitePreload(()=>import("./NumberPortingStep.stories-BhRYYpZi.js"),__vite__mapDeps([387,369,1,72,21,13,8,14,11,3,4,5,6,15,16,73,86,36,34,24,25,96,97,44,93,94,104,84,70,99,75,51,60,61,28,62,52,46,88,43,19,10,38,27,29,31,32,7,40,41,55,49,57,58,2,110,101,120,64,112,113,122,83,69,79,106,90,66,67,118,135,124,168,17]),import.meta.url),"./src/features/services/components/sim/configure/steps/ReviewOrderStep.stories.tsx":()=>__vitePreload(()=>import("./ReviewOrderStep.stories-DQaT1PbR.js"),__vite__mapDeps([388,370,1,72,21,13,8,14,11,3,4,5,6,15,16,73,86,36,34,24,25,96,97,44,93,94,104,84,70,99,75,51,60,61,28,62,52,46,88,43,19,10,38,27,29,31,32,7,40,41,55,49,57,58,2,201,140,110,101,120,64,112,113,122,83,69,79,106,90,66,67,118,135,124,17]),import.meta.url),"./src/features/services/components/sim/configure/steps/SimTypeStep.stories.tsx":()=>__vitePreload(()=>import("./SimTypeStep.stories-B8JX6W0f.js"),__vite__mapDeps([389,366,1,72,21,13,8,14,11,3,4,5,6,15,16,73,86,36,34,24,25,96,97,44,93,94,104,84,70,99,75,51,60,61,28,62,52,46,88,43,19,10,38,27,29,31,32,7,40,41,55,49,57,58,2,110,101,120,64,112,113,122,83,69,79,106,90,66,67,118,135,124,161,143,162,163,114,164,17]),import.meta.url),"./src/features/services/components/vpn/VpnPlanCard.stories.tsx":()=>__vitePreload(()=>import("./VpnPlanCard.stories-CVRnm0HA.js"),__vite__mapDeps([390,391,1,72,21,13,8,14,11,3,4,5,6,15,16,73,86,36,34,24,25,96,97,44,93,94,104,84,70,99,75,51,60,61,28,62,52,46,88,43,19,10,38,27,29,31,32,7,40,41,55,49,57,58,2,110,101,120,64,112,113,122,83,69,79,106,90,66,67,118,135,124,267,188]),import.meta.url),"./src/features/services/components/vpn/VpnPlansContent.stories.tsx":()=>__vitePreload(()=>import("./VpnPlansContent.stories-CAnr4IUa.js"),__vite__mapDeps([392,1,309,3,4,5,6,46,88,13,8,14,11,15,34,43,44,19,36,24,25,51,10,38,27,28,29,21,16,31,32,7,40,41,55,49,57,58,2,60,61,62,52,66,67,345,136,306,295,302,113,179,304,289,391,72,73,86,96,97,93,94,104,84,70,99,75,110,101,120,64,112,122,83,69,79,106,90,118,135,124,267,188,262,324,236,239]),import.meta.url),"./src/features/subscriptions/components/SubscriptionCard.stories.tsx":()=>__vitePreload(()=>import("./SubscriptionCard.stories-DOfk_HBP.js"),__vite__mapDeps([393,1,232,51,8,3,4,5,6,13,14,11,15,120,201,140,80,221,139]),import.meta.url),"./src/features/subscriptions/components/SubscriptionDetails.stories.tsx":()=>__vitePreload(()=>import("./SubscriptionDetails.stories-BlMknBO7.js"),__vite__mapDeps([394,1,51,8,3,4,5,6,120,201,140,81,80,116,139]),import.meta.url),"./src/features/subscriptions/components/SubscriptionGridCard.stories.tsx":()=>__vitePreload(()=>import("./SubscriptionGridCard.stories-zp08ViBs.js"),__vite__mapDeps([395,1,13,8,14,11,3,4,5,6,15,34,43,44,19,36,24,25,51,10,38,27,28,29,21,16,31,32,7,46,88,40,41,55,49,57,58,2,396,17,139]),import.meta.url),"./src/features/subscriptions/components/SubscriptionStatusBadge.stories.tsx":()=>__vitePreload(()=>import("./SubscriptionStatusBadge.stories-DhvN9bQ1.js"),__vite__mapDeps([397,1,72,21,13,8,14,11,3,4,5,6,15,16,73,86,36,34,24,25,96,97,44,93,94,104,84,70,99,75,51,60,61,28,62,52,46,88,43,19,10,38,27,29,31,32,7,40,41,55,49,57,58,2,110,101,120,64,112,113,122,83,69,79,106,90,66,67,118,135,124,396]),import.meta.url),"./src/features/subscriptions/components/SubscriptionTable/SubscriptionTable.stories.tsx":()=>__vitePreload(()=>import("./SubscriptionTable.stories-Crx6kQDq.js"),__vite__mapDeps([398,232,1,8,136,72,21,13,14,11,3,4,5,6,15,16,73,51,201,140,116,396,52,61,28,53,80,138,139,141]),import.meta.url),"./src/features/subscriptions/components/sim/ChangePlanModal.stories.tsx":()=>__vitePreload(()=>import("./ChangePlanModal.stories-lCI6-fC1.js"),__vite__mapDeps([399,1,232,8,7,70]),import.meta.url),"./src/features/subscriptions/components/sim/DataUsageChart.stories.tsx":()=>__vitePreload(()=>import("./DataUsageChart.stories-Cl1vSSZO.js"),__vite__mapDeps([400,1,201,140,4,5,6,28,8]),import.meta.url),"./src/features/subscriptions/components/sim/ReissueSimModal.stories.tsx":()=>__vitePreload(()=>import("./ReissueSimModal.stories-CiG8OrwL.js"),__vite__mapDeps([401,1,232,8,60,61,28,62,52,13,14,11,3,4,5,6,15,29,70]),import.meta.url),"./src/features/subscriptions/components/sim/SimActions.stories.tsx":()=>__vitePreload(()=>import("./SimActions.stories-DbEDRfW_.js"),__vite__mapDeps([402,1,232,60,61,8,28,62,52,16,29,70]),import.meta.url),"./src/features/subscriptions/components/sim/SimDetailsCard.stories.tsx":()=>__vitePreload(()=>import("./SimDetailsCard.stories-BduNzX1g.js"),__vite__mapDeps([403,1,201,140,4,5,6,28,8,114,53,162,77,61,52,141]),import.meta.url),"./src/features/subscriptions/components/sim/SimFeatureToggles.stories.tsx":()=>__vitePreload(()=>import("./SimFeatureToggles.stories-BKP0N4tw.js"),__vite__mapDeps([404,1,232,8,60,61,28,62,52,13,14,11,3,4,5,6,15,7]),import.meta.url),"./src/features/subscriptions/components/sim/TopUpModal.stories.tsx":()=>__vitePreload(()=>import("./TopUpModal.stories-vBYsF3Fd.js"),__vite__mapDeps([405,1,232,8,16,70,28]),import.meta.url),"./src/features/subscriptions/components/skeletons/subscription-detail-stats-skeleton.stories.tsx":()=>__vitePreload(()=>import("./subscription-detail-stats-skeleton.stories-tQl8sJZu.js"),__vite__mapDeps([406,88,1,3,4,5,6,13,8,14,11,15,34,43,44,19,36,24,25,51,10,38,27,28,29,21,16,31,32,7,46,40,41,55,49,57,58,2]),import.meta.url),"./src/features/subscriptions/components/skeletons/subscription-stats-cards-skeleton.stories.tsx":()=>__vitePreload(()=>import("./subscription-stats-cards-skeleton.stories-BZw0VqVQ.js"),__vite__mapDeps([407,88,1,3,4,5,6,13,8,14,11,15,34,43,44,19,36,24,25,51,10,38,27,28,29,21,16,31,32,7,46,40,41,55,49,57,58,2]),import.meta.url),"./src/features/subscriptions/components/skeletons/subscription-table-skeleton.stories.tsx":()=>__vitePreload(()=>import("./subscription-table-skeleton.stories-lLgx0vuW.js"),__vite__mapDeps([408,88,1,3,4,5,6,13,8,14,11,15,34,43,44,19,36,24,25,51,10,38,27,28,29,21,16,31,32,7,46,40,41,55,49,57,58,2]),import.meta.url)};async function importFn(t){return await importers[t]()}Df();const{composeConfigs,PreviewWeb}=__STORYBOOK_MODULE_PREVIEW_API__,getProjectAnnotations=async(t=[])=>{const e=await __vitePreload(()=>import("./preview-C15U0Fuq.js"),__vite__mapDeps([409,410]),import.meta.url);if(W(e.default))return e.default.composed;const r=await Promise.all([t[0]??__vitePreload(()=>import("./entry-preview-Ccf12ZN0.js"),__vite__mapDeps([411,412,8]),import.meta.url),t[1]??__vitePreload(()=>import("./entry-preview-docs-CAgjVEX9.js"),__vite__mapDeps([413,412,414,8]),import.meta.url),t[2]??__vitePreload(()=>import("./preview-DD_OYowb.js"),[],import.meta.url),t[3]??__vitePreload(()=>import("./preview-B5ll_rq1.js"),[],import.meta.url),t[4]??__vitePreload(()=>import("./preview-B8lJiyuQ.js"),__vite__mapDeps([415,416]),import.meta.url),t[5]??__vitePreload(()=>import("./preview-CvbIS5ZJ.js"),[],import.meta.url),t[6]??__vitePreload(()=>import("./preview-BBWR9nbA.js"),[],import.meta.url),t[7]??__vitePreload(()=>import("./preview-BWzBA1C2.js"),__vite__mapDeps([417,416]),import.meta.url),t[8]??__vitePreload(()=>import("./preview-DGUiP6tS.js"),[],import.meta.url)]);return composeConfigs([...r,e])};window.__STORYBOOK_PREVIEW__=window.__STORYBOOK_PREVIEW__||new PreviewWeb(importFn,getProjectAnnotations);window.__STORYBOOK_STORY_STORE__=window.__STORYBOOK_STORY_STORE__||window.__STORYBOOK_PREVIEW__.storyStore;export{D,__vitePreload as _,z}; diff --git a/apps/portal/public/storybook/assets/images/Hero Image.png b/apps/portal/public/storybook/assets/images/Hero Image.png new file mode 100644 index 0000000000000000000000000000000000000000..ae98954d9822069cb7a4830801fe17dd9d77797f GIT binary patch literal 318012 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 z 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

OjauBXsQo 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%0A&3?^6~1|h>kQXEu-TDV|Z91=sKSu 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 z
    CX<9z7C*r?cd; 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