ghost 6.11.0 → 6.12.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/tryghost-i18n-6.12.0.tgz +0 -0
- package/core/boot.js +4 -2
- package/core/built/admin/assets/{_baseAssignValue-BX8EallQ.js → _baseAssignValue-hsL6ItjC.js} +1 -1
- package/core/built/admin/assets/{a-large-small-CKZJgscl.js → a-large-small-BPPu_Iy7.js} +1 -1
- package/core/built/admin/assets/admin-x-settings/admin-x-settings.js +1 -1
- package/core/built/admin/assets/admin-x-settings/{code-editor-view-n8DFeXbv.mjs → code-editor-view-Bq6l5arq.mjs} +2 -2
- package/core/built/admin/assets/admin-x-settings/{index-v6qQgUXt.mjs → index-CKaxer_o.mjs} +2 -2
- package/core/built/admin/assets/admin-x-settings/{index-CXL12uvO.mjs → index-CtYEAgeN.mjs} +2 -2
- package/core/built/admin/assets/admin-x-settings/{index-D4ye6uvI.mjs → index-D4NstoNQ.mjs} +11 -6
- package/core/built/admin/assets/admin-x-settings/{modals-CdsPaTfy.mjs → modals-BzljHVa7.mjs} +2 -2
- package/core/built/admin/assets/{at-sign-CqQzllfI.js → at-sign-CYnGzOFc.js} +1 -1
- package/core/built/admin/assets/{audience-select-DQD7iDOb.js → audience-select-DYoxiiwy.js} +1 -1
- package/core/built/admin/assets/{avatar-flipboard-uq7ptTxT.js → avatar-flipboard-C9-npfmZ.js} +1 -1
- package/core/built/admin/assets/{bluesky-sharing-qyIGv6Ny.js → bluesky-sharing-BGcmGcee.js} +1 -1
- package/core/built/admin/assets/{chart-DGA1MaFs.js → chart-CqJxisVP.js} +1 -1
- package/core/built/admin/assets/{chunk.524.1289543297329587cf8a.js → chunk.524.74a9629dd2ba0d21bbef.js} +7 -7
- package/core/built/admin/assets/{chunk.582.344ea0d0a16d671345cd.js → chunk.582.3846471396b3a7c46e66.js} +8 -8
- package/core/built/admin/assets/{code-editor-view-Bz6kXDiv.js → code-editor-view-C8l3gNnO.js} +1 -1
- package/core/built/admin/assets/{comments-C-lkEDkz.js → comments-CpHDoxov.js} +1 -1
- package/core/built/admin/assets/{copy-BFuV16bY.js → copy-DWiB-781.js} +1 -1
- package/core/built/admin/assets/{data-list-Bw1CQEZ9.js → data-list-yngXNZDF.js} +1 -1
- package/core/built/admin/assets/{deleted-feed-item-CmNbSYiO.js → deleted-feed-item-C0FcyLMN.js} +1 -1
- package/core/built/admin/assets/{edit-profile-DlIPB2km.js → edit-profile-BjtDkDAq.js} +1 -1
- package/core/built/admin/assets/{empty-indicator-DBrIZcFq.js → empty-indicator-BXWniwsl.js} +1 -1
- package/core/built/admin/assets/{en-BBc7b85q.js → en-B8qaJx-T.js} +1 -1
- package/core/built/admin/assets/{feed-B3XQzKZl.js → feed-DsCVb1SA.js} +1 -1
- package/core/built/admin/assets/{filters-DUFXZZnu.js → filters-jAXQSPq6.js} +1 -1
- package/core/built/admin/assets/{gh-chart-BV97-O7c.js → gh-chart-DwTCK8z_.js} +1 -1
- package/core/built/admin/assets/{ghost-9aa1e7c5992f122dba6932af78bf8e56.js → ghost-6367d022df9db9dacbcb9bfa30232ec7.js} +2 -2
- package/core/built/admin/assets/{growth-njR0GqK2.js → growth-DshcRqda.js} +1 -1
- package/core/built/admin/assets/{hash-CdH0ikFp.js → hash-p9dv0yuc.js} +1 -1
- package/core/built/admin/assets/{inbox-Bd0uf1Ez.js → inbox-CRoP9sy5.js} +1 -1
- package/core/built/admin/assets/{index-Kji6JKl7.js → index-6syrC9X1.js} +1 -1
- package/core/built/admin/assets/{index-C7M19LpB.js → index-BKtz3UH0.js} +1 -1
- package/core/built/admin/assets/{index-DWk7hKRR.js → index-BwY94Fb4.js} +1 -1
- package/core/built/admin/assets/{index-BFhECYgc.js → index-C3DF6aFe.js} +1 -1
- package/core/built/admin/assets/index-C6NCNp1B.js +1 -0
- package/core/built/admin/assets/{index-BYawr8p9.js → index-CJU9a2PB.js} +3 -3
- package/core/built/admin/assets/{index-CIE2_z5J.js → index-CUWE7aD1.js} +1 -1
- package/core/built/admin/assets/{index-DgRIbSpg.js → index-CuQ_II0e.js} +1 -1
- package/core/built/admin/assets/{index-Birw80cQ.js → index-DG8f-HuU.js} +1 -1
- package/core/built/admin/assets/{index-DziHC2du.js → index-DItZTRQ4.js} +1 -1
- package/core/built/admin/assets/{index-DG53N3Xt.js → index-eLx96SEn.js} +1 -1
- package/core/built/admin/assets/{index-DCw6JaEl.js → index-j2_Q-_8H.js} +1 -1
- package/core/built/admin/assets/{index-BZ21H0xH.js → index-qWpHJAMP.js} +1 -1
- package/core/built/admin/assets/{index-DXCu9e7c.js → index-sy6xRtoO.js} +1 -1
- package/core/built/admin/assets/{koenig-lexical-BDJVCHtm.js → koenig-lexical-DgAlBHHS.js} +1 -1
- package/core/built/admin/assets/{kpi-card-cv8roErt.js → kpi-card-CHZSLw4p.js} +1 -1
- package/core/built/admin/assets/{kpis-Dt4OFY3L.js → kpis-DzbAHfKK.js} +1 -1
- package/core/built/admin/assets/{links-08beB3Ij.js → links-BQHRbn46.js} +1 -1
- package/core/built/admin/assets/{lucide-react-DKlmxVQI.js → lucide-react-B7UnD_Dp.js} +1 -1
- package/core/built/admin/assets/{main-layout-Cl09wG7F.js → main-layout-9nmU5WlG.js} +1 -1
- package/core/built/admin/assets/{message-square-text-CaMVBVPr.js → message-square-text-CS3iRuPc.js} +1 -1
- package/core/built/admin/assets/{minus-2XwCoFJV.js → minus-emzwh6hq.js} +1 -1
- package/core/built/admin/assets/{modals-CIgzYQgv.js → modals-CumFuZ2d.js} +1 -1
- package/core/built/admin/assets/{moderation-FjlsSym6.js → moderation-DyfFc9m4.js} +1 -1
- package/core/built/admin/assets/{newsletter-BNOwZNlE.js → newsletter-BWul5IFc.js} +1 -1
- package/core/built/admin/assets/{newsletters-DUusEYSg.js → newsletters-N6bwI1OF.js} +1 -1
- package/core/built/admin/assets/{note-BpYwIDK6.js → note-CiBzkHzz.js} +1 -1
- package/core/built/admin/assets/{overview-Y5QYPClr.js → overview-D9gRvn7X.js} +1 -1
- package/core/built/admin/assets/{pagemenu-BMXHDXYy.js → pagemenu-aHubMPwB.js} +1 -1
- package/core/built/admin/assets/{post-analytics-UerFnJse.js → post-analytics-Bm9xH8nA.js} +1 -1
- package/core/built/admin/assets/{post-analytics-context-geHk7rOj.js → post-analytics-context-C7oW3aBz.js} +1 -1
- package/core/built/admin/assets/{post-analytics-header-DXfc4KeX.js → post-analytics-header-BjGFgN6A.js} +1 -1
- package/core/built/admin/assets/{post-share-modal-Dql4fYjR.js → post-share-modal-Su923uIc.js} +1 -1
- package/core/built/admin/assets/{posts-Bsvw11Zo.js → posts-BwP7BNcB.js} +1 -1
- package/core/built/admin/assets/{referrers-B8xJpCcR.js → referrers-n_ln9DqI.js} +1 -1
- package/core/built/admin/assets/{repeat-COP-3g8d.js → repeat-ms5ocvE0.js} +1 -1
- package/core/built/admin/assets/{reply-JE8tmvOn.js → reply-BvO85IDn.js} +1 -1
- package/core/built/admin/assets/{select-BhvNY3I-.js → select-B4QhMW5f.js} +1 -1
- package/core/built/admin/assets/{settings-BJwVfuWG.js → settings-D5rGcWJ7.js} +4 -4
- package/core/built/admin/assets/{settings-C6ZUZQe4.js → settings-QtZ6a2TL.js} +1 -1
- package/core/built/admin/assets/{sort-button-iOtR-vQ1.js → sort-button-84sYUZMN.js} +1 -1
- package/core/built/admin/assets/{source-icon-C2iFWMlV.js → source-icon-Bzw-AU8p.js} +1 -1
- package/core/built/admin/assets/{sprout-BW9HFVU8.js → sprout-C2R5CbXV.js} +1 -1
- package/core/built/admin/assets/{square-BCNGSZhW.js → square-DT1uWkxs.js} +1 -1
- package/core/built/admin/assets/stats/{audience-select-DNAWmT7R.mjs → audience-select-fTCiZ9MT.mjs} +3 -3
- package/core/built/admin/assets/stats/{index-DbGvSTMe.mjs → index-BKgioyC7.mjs} +5 -5
- package/core/built/admin/assets/stats/{index-s19ZmxbX.mjs → index-CR2t5Xd-.mjs} +5 -5
- package/core/built/admin/assets/stats/index-DEkYwR7C.mjs +739 -0
- package/core/built/admin/assets/stats/{index-BS3KMSy9.mjs → index-Djwey97a.mjs} +5 -5
- package/core/built/admin/assets/stats/{index-MOQSSYwT.mjs → index-FiU_XgEe.mjs} +6 -6
- package/core/built/admin/assets/stats/{sort-button-D76rcldr.mjs → sort-button-Bvi1wfa7.mjs} +3 -3
- package/core/built/admin/assets/stats/{stats-CJ7fhUyT.mjs → stats-Bbm6yWZq.mjs} +2 -2
- package/core/built/admin/assets/stats/stats.js +1 -1
- package/core/built/admin/assets/stats/{tabs-CkbxYgOE.mjs → tabs-BKwH5k-q.mjs} +3 -3
- package/core/built/admin/assets/stats/{url-helpers-DICtqCrE.mjs → url-helpers-DmHnUIGc.mjs} +9 -9
- package/core/built/admin/assets/stats/{use-growth-stats-DzO7zEy4.mjs → use-growth-stats-BVj3j1hb.mjs} +3 -3
- package/core/built/admin/assets/{stats-r0Bphuvi.js → stats-B1mhlQSp.js} +1 -1
- package/core/built/admin/assets/{stats-view-DzZxrBDz.js → stats-view-C6MTCwRW.js} +1 -1
- package/core/built/admin/assets/{step-1-CUoUOyMm.js → step-1-CzQmZJ93.js} +1 -1
- package/core/built/admin/assets/{step-2-CpAkPD8D.js → step-2-DXGDWSQo.js} +1 -1
- package/core/built/admin/assets/{step-3-Ci6oJDmK.js → step-3-CYuxXKac.js} +1 -1
- package/core/built/admin/assets/{table-DeBuf80X.js → table-mjAkKNdb.js} +1 -1
- package/core/built/admin/assets/{tabs-C2sFfNcp.js → tabs-BwQ-i6MY.js} +1 -1
- package/core/built/admin/assets/{tags-Bl6G5rvf.js → tags-BkUqCuvX.js} +1 -1
- package/core/built/admin/assets/{tags-BL_N4nn2.js → tags-DXDZbfxp.js} +1 -1
- package/core/built/admin/assets/{toggle-group-B2X-8giI.js → toggle-group-CqDO3Kkx.js} +1 -1
- package/core/built/admin/assets/{topic-filter-DeqMID_s.js → topic-filter-DnuJJBAE.js} +1 -1
- package/core/built/admin/assets/{trash-BglGemAb.js → trash-CZ3EXwTL.js} +1 -1
- package/core/built/admin/assets/{url-helpers-84icqAuE.js → url-helpers-BE3VXr__.js} +1 -1
- package/core/built/admin/assets/{use-growth-stats-DF-7tL8g.js → use-growth-stats-CiuWWM6O.js} +1 -1
- package/core/built/admin/assets/{use-infinite-virtual-scroll-BHH7oscK.js → use-infinite-virtual-scroll-BjATkxBj.js} +1 -1
- package/core/built/admin/assets/{use-simple-pagination-BsvYfixw.js → use-simple-pagination-C9cb7dDz.js} +1 -1
- package/core/built/admin/assets/{user-round-check-BjHbfXKY.js → user-round-check-D3ihrrKL.js} +1 -1
- package/core/built/admin/assets/{wallet-cards-KaTkgqvi.js → wallet-cards-Do7nPf3f.js} +1 -1
- package/core/built/admin/assets/{web-CUWbpFil.js → web-BEwI2Gfy.js} +1 -1
- package/core/built/admin/index-forward.html +4 -4
- package/core/built/admin/index.html +3 -3
- package/core/frontend/web/middleware/index.js +1 -0
- package/core/frontend/web/middleware/serve-indexnow-key.js +66 -0
- package/core/frontend/web/site.js +3 -0
- package/core/server/api/endpoints/authentication.js +1 -1
- package/core/server/api/endpoints/pages.js +1 -1
- package/core/server/api/endpoints/posts-public.js +1 -1
- package/core/server/api/endpoints/posts.js +1 -1
- package/core/server/api/endpoints/search-index-public.js +1 -1
- package/core/server/api/endpoints/search-index.js +1 -1
- package/core/server/api/endpoints/users.js +1 -1
- package/core/server/api/endpoints/utils/serializers/input/settings.js +2 -1
- package/core/server/api/endpoints/utils/serializers/output/mappers/posts.js +1 -1
- package/core/server/api/endpoints/utils/validators/input/settings.js +1 -1
- package/core/server/data/exporter/table-lists.js +2 -1
- package/core/server/data/migrations/versions/6.12/2026-01-08-11-48-16-add-indexnow-api-key-setting.js +9 -0
- package/core/server/data/schema/default-settings/default-settings.json +6 -0
- package/core/server/lib/lexical.js +1 -1
- package/core/server/models/settings.js +2 -1
- package/core/server/services/activitypub/{ActivityPubServiceWrapper.js → activity-pub-service-wrapper.js} +1 -1
- package/core/server/services/activitypub/{ActivityPubService.ts → activity-pub-service.ts} +1 -1
- package/core/server/services/activitypub/index.js +1 -1
- package/core/server/services/adapter-manager/index.js +1 -1
- package/core/server/services/announcement-bar-service/{AnnouncementBarSettings.js → announcement-bar-settings.js} +1 -1
- package/core/server/services/announcement-bar-service/index.js +1 -1
- package/core/server/services/audience-feedback/{AudienceFeedbackController.js → audience-feedback-controller.js} +3 -3
- package/core/server/services/audience-feedback/index.js +4 -4
- package/core/server/services/auth/session/express-session.js +1 -1
- package/core/server/services/comments/{CommentsController.js → comments-controller.js} +2 -2
- package/core/server/services/comments/{CommentsServiceEmails.js → comments-service-emails.js} +1 -1
- package/core/server/services/comments/{CommentsService.js → comments-service.js} +1 -1
- package/core/server/services/comments/index.js +3 -3
- package/core/server/services/custom-redirects/index.js +2 -2
- package/core/server/services/donations/{DonationBookshelfRepository.ts → donation-bookshelf-repository.ts} +1 -1
- package/core/server/services/donations/{DonationServiceWrapper.js → donation-service-wrapper.js} +1 -1
- package/core/server/services/donations/index.js +1 -1
- package/core/server/services/email-address/{EmailAddressServiceWrapper.js → email-address-service-wrapper.js} +2 -2
- package/core/server/services/email-address/{EmailAddressService.js → email-address-service.js} +4 -4
- package/core/server/services/email-address/{EmailAddressService.ts → email-address-service.ts} +1 -1
- package/core/server/services/email-address/index.js +1 -1
- package/core/server/services/email-analytics/{EmailAnalyticsProviderMailgun.js → email-analytics-provider-mailgun.js} +1 -1
- package/core/server/services/email-analytics/{EmailAnalyticsServiceWrapper.js → email-analytics-service-wrapper.js} +5 -5
- package/core/server/services/email-analytics/{EmailAnalyticsService.js → email-analytics-service.js} +2 -2
- package/core/server/services/email-analytics/index.js +1 -1
- package/core/server/services/email-analytics/jobs/fetch-latest/index.js +1 -1
- package/core/server/services/email-service/{BatchSendingService.js → batch-sending-service.js} +8 -8
- package/core/server/services/email-service/{EmailEventProcessor.js → email-event-processor.js} +6 -6
- package/core/server/services/email-service/{EmailEventStorage.js → email-event-storage.js} +1 -1
- package/core/server/services/email-service/{EmailRenderer.js → email-renderer.js} +1 -1
- package/core/server/services/email-service/{EmailServiceWrapper.js → email-service-wrapper.js} +9 -9
- package/core/server/services/email-service/{EmailService.js → email-service.js} +13 -13
- package/core/server/services/email-service/index.js +1 -1
- package/core/server/services/email-service/{MailgunEmailProvider.js → mailgun-email-provider.js} +1 -1
- package/core/server/services/email-service/{SendingService.js → sending-service.js} +6 -6
- package/core/server/services/email-suppression-list/{InMemoryEmailSuppressionList.js → in-memory-email-suppression-list.js} +1 -1
- package/core/server/services/email-suppression-list/{MailgunEmailSuppressionList.js → mailgun-email-suppression-list.js} +3 -3
- package/core/server/services/email-suppression-list/service.js +2 -2
- package/core/server/services/explore/index.js +2 -2
- package/core/server/services/explore-ping/index.js +2 -2
- package/core/server/services/frontend-data-service/index.js +1 -1
- package/core/server/services/identity-tokens/{IdentityTokenServiceWrapper.js → identity-token-service-wrapper.js} +1 -1
- package/core/server/services/identity-tokens/index.js +1 -1
- package/core/server/services/indexnow.js +212 -0
- package/core/server/services/invites/index.js +1 -1
- package/core/server/services/link-redirection/index.js +2 -2
- package/core/server/services/link-redirection/{LinkRedirectRepository.js → link-redirect-repository.js} +1 -1
- package/core/server/services/link-redirection/{LinkRedirectsService.js → link-redirects-service.js} +2 -2
- package/core/server/services/link-redirection/{RedirectEvent.js → redirect-event.js} +1 -1
- package/core/server/services/link-tracking/index.js +3 -3
- package/core/server/services/link-tracking/{LinkClickRepository.js → link-click-repository.js} +1 -1
- package/core/server/services/link-tracking/{LinkClickTrackingService.js → link-click-tracking-service.js} +4 -4
- package/core/server/services/link-tracking/{PostLinkRepository.js → post-link-repository.js} +7 -7
- package/core/server/services/mail/{GhostMailer.js → ghost-mailer.js} +1 -1
- package/core/server/services/mail/index.js +2 -2
- package/core/server/services/media-inliner/service.js +1 -1
- package/core/server/services/member-attribution/README.md +6 -6
- package/core/server/services/member-attribution/{AttributionBuilder.js → attribution-builder.js} +4 -4
- package/core/server/services/member-attribution/index.js +5 -5
- package/core/server/services/member-attribution/{MemberAttributionService.js → member-attribution-service.js} +9 -9
- package/core/server/services/member-attribution/{ReferrerTranslator.js → referrer-translator.js} +1 -1
- package/core/server/services/member-attribution/{UrlTranslator.js → url-translator.js} +1 -1
- package/core/server/services/member-welcome-emails/constants.js +22 -1
- package/core/server/services/member-welcome-emails/service.js +23 -5
- package/core/server/services/members/api.js +1 -1
- package/core/server/services/members/importer/index.js +3 -3
- package/core/server/services/members/importer/{MembersCSVImporter.js → members-csv-importer.js} +2 -2
- package/core/server/services/members/members-api/members-api.js +14 -14
- package/core/server/services/members/members-api/repositories/{MemberRepository.js → member-repository.js} +17 -8
- package/core/server/services/members/members-api/services/{MemberBREADService.js → member-bread-service.js} +1 -1
- package/core/server/services/members/members-api/services/{PaymentsService.js → payments-service.js} +12 -12
- package/core/server/services/members/service.js +4 -4
- package/core/server/services/members-events/index.js +3 -3
- package/core/server/services/members-events/{LastSeenAtUpdater.js → last-seen-at-updater.js} +2 -2
- package/core/server/services/mentions/{BookshelfMentionRepository.js → bookshelf-mention-repository.js} +9 -9
- package/core/server/services/mentions/{InMemoryMentionRepository.js → in-memory-mention-repository.js} +4 -4
- package/core/server/services/mentions/{MentionController.js → mention-controller.js} +5 -5
- package/core/server/services/mentions/{MentionCreatedEvent.js → mention-created-event.js} +1 -1
- package/core/server/services/mentions/{Mention.js → mention.js} +1 -1
- package/core/server/services/mentions/{MentionsAPI.js → mentions-api.js} +1 -1
- package/core/server/services/mentions/{ResourceService.js → resource-service.js} +2 -2
- package/core/server/services/mentions/{RoutingService.js → routing-service.js} +2 -2
- package/core/server/services/mentions/service.js +11 -11
- package/core/server/services/mentions/{WebmentionMetadata.js → webmention-metadata.js} +1 -1
- package/core/server/services/mentions-email-report/job.js +1 -1
- package/core/server/services/mentions-email-report/{MentionEmailReportJob.js → mention-email-report-job.js} +1 -1
- package/core/server/services/mentions-email-report/service.js +2 -2
- package/core/server/services/milestones/{BookshelfMilestoneRepository.js → bookshelf-milestone-repository.js} +2 -2
- package/core/server/services/milestones/{InMemoryMilestoneRepository.js → in-memory-milestone-repository.js} +2 -2
- package/core/server/services/milestones/{Milestone.js → milestone.js} +1 -1
- package/core/server/services/milestones/{MilestonesService.js → milestones-service.js} +1 -1
- package/core/server/services/milestones/service.js +4 -4
- package/core/server/services/newsletters/index.js +2 -2
- package/core/server/services/newsletters/{NewslettersService.js → newsletters-service.js} +1 -1
- package/core/server/services/notifications/index.js +1 -1
- package/core/server/services/oembed/service.js +3 -3
- package/core/server/services/offers/application/{OfferMapper.js → offer-mapper.js} +1 -1
- package/core/server/services/offers/application/{OffersAPI.js → offers-api.js} +9 -9
- package/core/server/services/offers/application/{UniqueChecker.js → unique-checker.js} +2 -2
- package/core/server/services/offers/domain/events/{OfferCodeChangeEvent.js → offer-code-change-event.js} +1 -1
- package/core/server/services/offers/domain/events/{OfferCreatedEvent.js → offer-created-event.js} +1 -1
- package/core/server/services/offers/domain/models/{OfferAmount.js → offer-amount.js} +1 -1
- package/core/server/services/offers/domain/models/{OfferCadence.js → offer-cadence.js} +1 -1
- package/core/server/services/offers/domain/models/{OfferCode.js → offer-code.js} +1 -1
- package/core/server/services/offers/domain/models/{OfferCreatedAt.js → offer-created-at.js} +1 -1
- package/core/server/services/offers/domain/models/{OfferCurrency.js → offer-currency.js} +1 -1
- package/core/server/services/offers/domain/models/{OfferDescription.js → offer-description.js} +1 -1
- package/core/server/services/offers/domain/models/{OfferDuration.js → offer-duration.js} +1 -1
- package/core/server/services/offers/domain/models/{OfferName.js → offer-name.js} +1 -1
- package/core/server/services/offers/domain/models/{OfferStatus.js → offer-status.js} +1 -1
- package/core/server/services/offers/domain/models/{OfferTitle.js → offer-title.js} +1 -1
- package/core/server/services/offers/domain/models/{OfferType.js → offer-type.js} +1 -1
- package/core/server/services/offers/domain/models/{Offer.js → offer.js} +14 -14
- package/core/server/services/offers/domain/models/{StripeCoupon.js → stripe-coupon.js} +1 -1
- package/core/server/services/offers/{OfferBookshelfRepository.js → offer-bookshelf-repository.js} +6 -6
- package/core/server/services/offers/{OffersModule.js → offers-module.js} +4 -4
- package/core/server/services/offers/service.js +3 -3
- package/core/server/services/outbox/index.js +2 -2
- package/core/server/services/outbox/jobs/outbox-job.js +2 -2
- package/core/server/services/posts/posts-service-instance.js +47 -0
- package/core/server/services/posts/posts-service.js +572 -45
- package/core/server/services/recommendations/index.js +1 -1
- package/core/server/services/recommendations/{RecommendationEnablerService.js → recommendation-enabler-service.js} +2 -2
- package/core/server/services/recommendations/{RecommendationServiceWrapper.js → recommendation-service-wrapper.js} +2 -2
- package/core/server/services/recommendations/service/{BookshelfClickEventRepository.js → bookshelf-click-event-repository.js} +4 -4
- package/core/server/services/recommendations/service/{BookshelfClickEventRepository.ts → bookshelf-click-event-repository.ts} +2 -2
- package/core/server/services/recommendations/service/{BookshelfRecommendationRepository.js → bookshelf-recommendation-repository.js} +4 -4
- package/core/server/services/recommendations/service/{BookshelfRecommendationRepository.ts → bookshelf-recommendation-repository.ts} +3 -3
- package/core/server/services/recommendations/service/{BookshelfSubscribeEventRepository.js → bookshelf-subscribe-event-repository.js} +4 -4
- package/core/server/services/recommendations/service/{BookshelfSubscribeEventRepository.ts → bookshelf-subscribe-event-repository.ts} +2 -2
- package/core/server/services/recommendations/service/{InMemoryRecommendationRepository.js → in-memory-recommendation-repository.js} +2 -2
- package/core/server/services/recommendations/service/{InMemoryRecommendationRepository.ts → in-memory-recommendation-repository.ts} +3 -3
- package/core/server/services/recommendations/service/{IncomingRecommendationController.js → incoming-recommendation-controller.js} +2 -2
- package/core/server/services/recommendations/service/{IncomingRecommendationController.ts → incoming-recommendation-controller.ts} +3 -3
- package/core/server/services/recommendations/service/{IncomingRecommendationEmailRenderer.ts → incoming-recommendation-email-renderer.ts} +2 -2
- package/core/server/services/recommendations/service/{IncomingRecommendationService.ts → incoming-recommendation-service.ts} +2 -2
- package/core/server/services/recommendations/service/index.js +15 -15
- package/core/server/services/recommendations/service/index.ts +15 -15
- package/core/server/services/recommendations/service/{RecommendationController.js → recommendation-controller.js} +13 -13
- package/core/server/services/recommendations/service/{RecommendationController.ts → recommendation-controller.ts} +4 -4
- package/core/server/services/recommendations/service/{RecommendationRepository.ts → recommendation-repository.ts} +3 -3
- package/core/server/services/recommendations/service/{RecommendationService.js → recommendation-service.js} +6 -6
- package/core/server/services/recommendations/service/{RecommendationService.ts → recommendation-service.ts} +8 -8
- package/core/server/services/recommendations/service/{Recommendation.js → recommendation.js} +4 -4
- package/core/server/services/recommendations/service/{Recommendation.ts → recommendation.ts} +1 -1
- package/core/server/services/recommendations/service/{WellknownService.ts → well-known-service.ts} +1 -1
- package/core/server/services/route-settings/index.js +4 -4
- package/core/server/services/settings/{SettingsBREADService.js → settings-bread-service.js} +1 -1
- package/core/server/services/settings/settings-service.js +2 -2
- package/core/server/services/settings-helpers/index.js +1 -1
- package/core/server/services/settings-helpers/{SettingsHelpers.js → settings-helpers.js} +5 -5
- package/core/server/services/slack-notifications/service.js +4 -4
- package/core/server/services/slack-notifications/{SlackNotificationsService.js → slack-notifications-service.js} +2 -2
- package/core/server/services/slack-notifications/{SlackNotifications.js → slack-notifications.js} +2 -2
- package/core/server/services/staff/index.js +1 -1
- package/core/server/services/staff/{StaffServiceEmails.js → staff-service-emails.js} +2 -2
- package/core/server/services/staff/{StaffService.js → staff-service.js} +2 -2
- package/core/server/services/stats/{PostsStatsService.js → posts-stats-service.js} +25 -25
- package/core/server/services/stats/{ReferrersStatsService.js → referrers-stats-service.js} +3 -3
- package/core/server/services/stats/service.js +1 -1
- package/core/server/services/stats/{StatsService.js → stats-service.js} +23 -23
- package/core/server/services/stripe/events/index.js +2 -2
- package/core/server/services/stripe/service.js +1 -1
- package/core/server/services/stripe/services/webhook/{CheckoutSessionEventService.js → checkout-session-event-service.js} +2 -2
- package/core/server/services/stripe/{StripeMigrations.js → stripe-migrations.js} +1 -1
- package/core/server/services/stripe/{StripeService.js → stripe-service.js} +8 -8
- package/core/server/services/stripe/{WebhookController.js → webhook-controller.js} +4 -4
- package/core/server/services/stripe/{WebhookManager.js → webhook-manager.js} +5 -5
- package/core/server/services/themes/storage.js +1 -1
- package/core/server/services/tiers/{InMemoryTierRepository.js → in-memory-tier-repository.js} +1 -1
- package/core/server/services/tiers/service.js +2 -2
- package/core/server/services/tiers/{TierActivatedEvent.js → tier-activated-event.js} +1 -1
- package/core/server/services/tiers/{TierArchivedEvent.js → tier-archived-event.js} +1 -1
- package/core/server/services/tiers/{TierCreatedEvent.js → tier-created-event.js} +1 -1
- package/core/server/services/tiers/{TierNameChangeEvent.js → tier-name-change-event.js} +1 -1
- package/core/server/services/tiers/{TierPriceChangeEvent.js → tier-price-change-event.js} +1 -1
- package/core/server/services/tiers/{TierRepository.js → tier-repository.js} +7 -7
- package/core/server/services/tiers/{Tier.js → tier.js} +5 -5
- package/core/server/services/tiers/{TiersAPI.js → tiers-api.js} +1 -1
- package/core/server/services/tinybird/index.js +1 -1
- package/core/server/services/tinybird/{TinybirdServiceWrapper.js → tinybird-service-wrapper.js} +2 -2
- package/core/server/services/update-check/index.js +1 -1
- package/core/server/services/url/index.js +2 -2
- package/core/server/services/url/{Resources.js → resources.js} +1 -1
- package/core/server/services/url/{UrlGenerator.js → url-generator.js} +1 -1
- package/core/server/services/url/{UrlService.js → url-service.js} +4 -4
- package/core/server/services/url/{Urls.js → urls.js} +1 -1
- package/core/server/services/webhooks/listen.js +1 -1
- package/core/shared/labs.js +2 -1
- package/package.json +3 -3
- package/tsconfig.tsbuildinfo +1 -1
- package/components/tryghost-i18n-6.11.0.tgz +0 -0
- package/core/built/admin/assets/index-Cr_YX9yU.js +0 -1
- package/core/built/admin/assets/stats/index-BBCJ2EZo.mjs +0 -733
- package/core/server/services/posts/PostsService.js +0 -574
- /package/core/server/{GhostServer.js → ghost-server.js} +0 -0
- /package/core/server/services/activitypub/{ActivityPubService.js → activity-pub-service.js} +0 -0
- /package/core/server/services/adapter-manager/{AdapterManager.js → adapter-manager.js} +0 -0
- /package/core/server/services/announcement-bar-service/{AnnouncementVisibilityValues.js → announcement-visibility-values.js} +0 -0
- /package/core/server/services/audience-feedback/{AudienceFeedbackService.js → audience-feedback-service.js} +0 -0
- /package/core/server/services/audience-feedback/{FeedbackRepository.js → feedback-repository.js} +0 -0
- /package/core/server/services/audience-feedback/{Feedback.js → feedback.js} +0 -0
- /package/core/server/services/auth/session/{SessionStore.js → session-store.js} +0 -0
- /package/core/server/services/comments/{CommentsServiceEmailRenderer.js → comments-service-email-renderer.js} +0 -0
- /package/core/server/services/comments/{CommentsStatsService.js → comments-stats-service.js} +0 -0
- /package/core/server/services/custom-redirects/{CustomRedirectsAPI.js → custom-redirects-api.js} +0 -0
- /package/core/server/services/donations/{DonationBookshelfRepository.js → donation-bookshelf-repository.js} +0 -0
- /package/core/server/services/donations/{DonationPaymentEvent.js → donation-payment-event.js} +0 -0
- /package/core/server/services/donations/{DonationPaymentEvent.ts → donation-payment-event.ts} +0 -0
- /package/core/server/services/email-address/{EmailAddressParser.js → email-address-parser.js} +0 -0
- /package/core/server/services/email-address/{EmailAddressParser.js.d.ts → email-address-parser.js.d.ts} +0 -0
- /package/core/server/services/email-analytics/{EventProcessingResult.js → event-processing-result.js} +0 -0
- /package/core/server/services/email-analytics/events/{StartEmailAnalyticsJobEvent.js → start-email-analytics-job-event.js} +0 -0
- /package/core/server/services/email-service/{DomainWarmingService.js → domain-warming-service.js} +0 -0
- /package/core/server/services/email-service/{DomainWarmingService.ts → domain-warming-service.ts} +0 -0
- /package/core/server/services/email-service/{EmailBodyCache.js → email-body-cache.js} +0 -0
- /package/core/server/services/email-service/{EmailController.js → email-controller.js} +0 -0
- /package/core/server/services/email-service/{EmailSegmenter.js → email-segmenter.js} +0 -0
- /package/core/server/services/email-service/events/{EmailBouncedEvent.js → email-bounced-event.js} +0 -0
- /package/core/server/services/email-service/events/{EmailDeliveredEvent.js → email-delivered-event.js} +0 -0
- /package/core/server/services/email-service/events/{EmailOpenedEvent.js → email-opened-event.js} +0 -0
- /package/core/server/services/email-service/events/{EmailTemporaryBouncedEvent.js → email-temporary-bounced-event.js} +0 -0
- /package/core/server/services/email-service/events/{EmailUnsubscribedEvent.js → email-unsubscribed-event.js} +0 -0
- /package/core/server/services/email-service/events/{SpamComplaintEvent.js → spam-complaint-event.js} +0 -0
- /package/core/server/services/email-suppression-list/{EmailSuppressionList.js → email-suppression-list.js} +0 -0
- /package/core/server/services/explore/{ExploreService.js → explore-service.js} +0 -0
- /package/core/server/services/explore-ping/{ExplorePingService.js → explore-ping-service.js} +0 -0
- /package/core/server/services/frontend-data-service/{FrontendDataService.js → front-end-data-service.js} +0 -0
- /package/core/server/services/identity-tokens/{IdentityTokenService.js → identity-token-service.js} +0 -0
- /package/core/server/services/identity-tokens/{IdentityTokenService.ts → identity-token-service.ts} +0 -0
- /package/core/server/services/invites/{Invites.js → invites.js} +0 -0
- /package/core/server/services/lib/{DynamicRedirectManager.js → dynamic-redirect-manager.js} +0 -0
- /package/core/server/services/lib/{EmailContentGenerator.js → email-content-generator.js} +0 -0
- /package/core/server/services/lib/{InMemoryRepository.js → in-memory-repository.js} +0 -0
- /package/core/server/services/lib/{InMemoryRepository.ts → in-memory-repository.ts} +0 -0
- /package/core/server/services/lib/magic-link/{MagicLink.js → magic-link.js} +0 -0
- /package/core/server/services/lib/{MailgunClient.js → mailgun-client.js} +0 -0
- /package/core/server/services/link-redirection/{LinkRedirect.js → link-redirect.js} +0 -0
- /package/core/server/services/link-tracking/{ClickEvent.js → click-event.js} +0 -0
- /package/core/server/services/link-tracking/{FullPostLink.js → full-post-link.js} +0 -0
- /package/core/server/services/link-tracking/{PostLink.js → post-link.js} +0 -0
- /package/core/server/services/media-inliner/{ExternalMediaInliner.js → external-media-inliner.js} +0 -0
- /package/core/server/services/member-attribution/{OutboundLinkTagger.js → outbound-link-tagger.js} +0 -0
- /package/core/server/services/member-attribution/{UrlHistory.js → url-history.js} +0 -0
- /package/core/server/services/member-welcome-emails/{MemberWelcomeEmailRenderer.js → member-welcome-email-renderer.js} +0 -0
- /package/core/server/services/members/importer/{MembersCSVImporterStripeUtils.js → members-csv-importer-stripe-utils.js} +0 -0
- /package/core/server/services/members/members-api/controllers/{MemberController.js → member-controller.js} +0 -0
- /package/core/server/services/members/members-api/controllers/{RouterController.js → router-controller.js} +0 -0
- /package/core/server/services/members/members-api/controllers/{WellKnownController.js → well-known-controller.js} +0 -0
- /package/core/server/services/members/members-api/repositories/{EventRepository.js → event-repository.js} +0 -0
- /package/core/server/services/members/members-api/repositories/{ProductRepository.js → product-repository.js} +0 -0
- /package/core/server/services/members/members-api/services/{GeolocationService.js → geolocation-service.js} +0 -0
- /package/core/server/services/members/members-api/services/{TokenService.js → token-service.js} +0 -0
- /package/core/server/services/members/{MembersConfigProvider.js → members-config-provider.js} +0 -0
- /package/core/server/services/members/{RequestIntegrityTokenProvider.js → request-integrity-token-provider.js} +0 -0
- /package/core/server/services/members/{SingleUseTokenProvider.js → single-use-token-provider.js} +0 -0
- /package/core/server/services/members/stats/{MembersStats.js → members-stats.js} +0 -0
- /package/core/server/services/members-events/{EventStorage.js → event-storage.js} +0 -0
- /package/core/server/services/members-events/{LastSeenAtCache.js → last-seen-at-cache.js} +0 -0
- /package/core/server/services/mentions/{MentionDiscoveryService.js → mention-discovery-service.js} +0 -0
- /package/core/server/services/mentions/{MentionSendingService.js → mention-sending-service.js} +0 -0
- /package/core/server/services/mentions-email-report/{StartMentionEmailReportJob.js → start-mention-email-report-job.js} +0 -0
- /package/core/server/services/milestones/{MilestoneCreatedEvent.js → milestone-created-event.js} +0 -0
- /package/core/server/services/milestones/{MilestoneQueries.js → milestone-queries.js} +0 -0
- /package/core/server/services/notifications/{Notifications.js → notifications.js} +0 -0
- /package/core/server/services/oembed/{NFTOEmbedProvider.js → nft-oembed-provider.js} +0 -0
- /package/core/server/services/oembed/{OEmbedService.js → oembed-service.js} +0 -0
- /package/core/server/services/oembed/{TwitterOEmbedProvider.js → twitter-oembed-provider.js} +0 -0
- /package/core/server/services/offers/domain/models/shared/{ValueObject.js → value-object.js} +0 -0
- /package/core/server/services/outbox/events/{StartOutboxProcessingEvent.js → start-outbox-processing-event.js} +0 -0
- /package/core/server/services/posts/{PostsExporter.js → posts-exporter.js} +0 -0
- /package/core/server/services/posts/stats/{PostStats.js → post-stats.js} +0 -0
- /package/core/server/services/recommendations/service/{BookshelfRepository.js → bookshelf-repository.js} +0 -0
- /package/core/server/services/recommendations/service/{BookshelfRepository.ts → bookshelf-repository.ts} +0 -0
- /package/core/server/services/recommendations/service/{ClickEvent.js → click-event.js} +0 -0
- /package/core/server/services/recommendations/service/{ClickEvent.ts → click-event.ts} +0 -0
- /package/core/server/services/recommendations/service/{IncomingRecommendationEmailRenderer.js → incoming-recommendation-email-renderer.js} +0 -0
- /package/core/server/services/recommendations/service/{IncomingRecommendationService.js → incoming-recommendation-service.js} +0 -0
- /package/core/server/services/recommendations/service/{RecommendationMetadataService.js → recommendation-metadata-service.js} +0 -0
- /package/core/server/services/recommendations/service/{RecommendationMetadataService.ts → recommendation-metadata-service.ts} +0 -0
- /package/core/server/services/recommendations/service/{RecommendationRepository.js → recommendation-repository.js} +0 -0
- /package/core/server/services/recommendations/service/{SubscribeEvent.js → subscribe-event.js} +0 -0
- /package/core/server/services/recommendations/service/{SubscribeEvent.ts → subscribe-event.ts} +0 -0
- /package/core/server/services/recommendations/service/{UnsafeData.js → unsafe-data.js} +0 -0
- /package/core/server/services/recommendations/service/{UnsafeData.ts → unsafe-data.ts} +0 -0
- /package/core/server/services/recommendations/service/{WellknownService.js → well-known-service.js} +0 -0
- /package/core/server/services/route-settings/{DefaultSettingsManager.js → default-settings-manager.js} +0 -0
- /package/core/server/services/route-settings/{RouteSettings.js → route-settings.js} +0 -0
- /package/core/server/services/route-settings/{SettingsLoader.js → settings-loader.js} +0 -0
- /package/core/server/services/route-settings/{SettingsPathManager.js → settings-path-manager.js} +0 -0
- /package/core/server/services/stats/{ContentStatsService.js → content-stats-service.js} +0 -0
- /package/core/server/services/stats/{MembersStatsService.js → members-stats-service.js} +0 -0
- /package/core/server/services/stats/{MrrStatsService.js → mrr-stats-service.js} +0 -0
- /package/core/server/services/stats/{SubscriptionStatsService.js → subscription-stats-service.js} +0 -0
- /package/core/server/services/stripe/events/{StripeLiveDisabledEvent.js → stripe-live-disabled-event.js} +0 -0
- /package/core/server/services/stripe/events/{StripeLiveEnabledEvent.js → stripe-live-enabled-event.js} +0 -0
- /package/core/server/services/stripe/services/webhook/{InvoiceEventService.js → invoice-event-service.js} +0 -0
- /package/core/server/services/stripe/services/webhook/{SubscriptionEventService.js → subscription-event-service.js} +0 -0
- /package/core/server/services/stripe/{StripeAPI.js → stripe-api.js} +0 -0
- /package/core/server/services/themes/{ThemeStorage.js → theme-storage.js} +0 -0
- /package/core/server/services/tinybird/{TinybirdService.js → tinybird-service.js} +0 -0
- /package/core/server/services/update-check/{UpdateCheckService.js → update-check-service.js} +0 -0
- /package/core/server/services/url/{LocalFileCache.js → local-file-cache.js} +0 -0
- /package/core/server/services/url/{Queue.js → queue.js} +0 -0
- /package/core/server/services/url/{Resource.js → resource.js} +0 -0
- /package/core/server/services/{Users.js → users.js} +0 -0
- /package/core/server/services/{VerificationTrigger.js → verification-trigger.js} +0 -0
- /package/core/server/services/webhooks/{WebhookTrigger.js → webhook-trigger.js} +0 -0
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/code-editor-view-
|
|
2
|
-
import{j as f,dH as o2,aE as _,e as Y,r as x,aC as no,d5 as ve,dI as a2,dJ as Id,dK as cb,dL as ub,dM as l2,dc as Ss,c3 as Jh,dN as c2,aB as Vr,ba as Vc,ar as db,as as fb,au as $f,ay as $r,bc as u2,d3 as d2,b7 as hb,at as f2,b8 as h2,be as p2,az as m2,bm as g2,bn as v2,dO as b2,dP as x2,bo as y2,dQ as w2,dR as S2,dS as C2,dT as k2,dU as A2,dV as M2,dW as I2,dX as E2,dY as D2,dZ as Xh,aH as R2,aG as O2,aF as T2,d_ as pb,d7 as Xr,aV as vt,d8 as Te,dg as N2,ac as Qr,ad as He,d$ as Ff,e0 as Hf,d9 as tr,d6 as Ed,e1 as P2,dm as mb,e2 as L2,ak as Uc,al as Vf,e3 as _2,aK as j2,cV as gb,ae as B2,am as Uf,di as $2,e4 as F2,cT as H2,dv as Cs,dE as vb,e5 as V2,cE as U2,dd as z2,dr as Xn,da as W2,df as q2,du as G2,dD as K2}from"./index-BYawr8p9.js";import{R as Z2,C as Y2,L as J2,T as X2}from"./index-Kji6JKl7.js";import{u as bb,b as Q2,c as eC,n as tC}from"./newsletters-DUusEYSg.js";import{b as nC}from"./posts-Bsvw11Zo.js";import{a as rC}from"./referrers-B8xJpCcR.js";const gt=({className:n})=>(n||(n="border-grey-200 dark:border-grey-800"),f.jsx(o2,{asChild:!0,decorative:!0,children:f.jsx("hr",{className:n})})),xb=_("text-sm font-medium tracking-normal"),yb=_(xb,"text-grey-900 dark:text-grey-500"),ft=({level:n=1,children:e,styles:t="",grey:r=!0,separator:i,useLabelTag:s,className:o="",...a})=>{const l=`${s?"label":`h${n}`}`;if(t+=n===6||s?` block ${r?yb:xb}`:" ",!s)switch(n){case 1:t+=" md:text-4xl leading-tighter";break;case 2:t+=" md:text-3xl";break;case 3:t+=" md:text-2xl";break;case 4:t+=" md:text-xl";break;case 5:t+=" md:text-lg";break}o=_(t,!r&&"dark:text-white",o);const c=Y.createElement(l,{className:o,key:"heading-elem",...a},e);if(i){const u=!n||n===1?2:1,d=n===6?2:3;return f.jsxs("div",{className:`gap-${u} mb-${d} flex flex-col`,children:[c,f.jsx(gt,{})]})}else return c},An=({children:n,color:e,className:t,...r})=>{if(!n)return null;let i="text-grey-700 dark:text-grey-600";switch(e){case"red":i="text-red dark:text-red-500";break;case"green":i="text-green dark:text-green-500";break}return t=_("mt-1 inline-block text-xs leading-snug",i,t),f.jsx("span",{className:t,...r,children:n})},iC=Y.lazy(()=>no(()=>import("./code-editor-view-Bz6kXDiv.js"),__vite__mapDeps([0,1,2,3,4,5,6]))),Qh=x.forwardRef(function(e,t){return f.jsx(x.Suspense,{fallback:null,children:f.jsx(iC,{...e,ref:t})})}),wb=({size:n,color:e,delay:t,style:r})=>{const[i,s]=Y.useState(!t);Y.useEffect(()=>{if(t){const a=setTimeout(()=>{s(!0)},t);return()=>{clearTimeout(a)}}},[t]);let o="relative mx-0 my-[-0.5] box-border inline-block animate-spin rounded-full before:z-10 before:block before:rounded-full before:content-[''] ";switch(n){case"sm":o+=" h-[16px] w-[16px] border-2 before:mt-[10px] before:h-[3px] before:w-[3px] ";break;case"md":o+=" h-[20px] w-[20px] border-2 before:mt-[13px] before:h-[3px] before:w-[3px] ";break;case"lg":default:o+=" h-[50px] w-[50px] border before:mt-[7px] before:h-[7px] before:w-[7px] ";break}switch(e){case"light":o+=" border-white/20 before:bg-white dark:border-black/10 dark:before:bg-black ";break;case"dark":default:o+=" border-black/10 before:bg-black dark:border-white/20 dark:before:bg-white ";break}return n==="lg"?f.jsx("div",{className:`flex h-64 items-center justify-center transition-opacity ${i?"opacity-100":"opacity-0"}`,style:r,children:f.jsx("div",{className:o})}):f.jsx("div",{className:o})},ne=Y.forwardRef(({testId:n,size:e="md",label:t="",hideLabel:r=!1,icon:i="",iconSize:s,iconColorClass:o,color:a="clear",fullWidth:l,link:c,linkWithPadding:u=!1,disabled:d,unstyled:h=!1,className:p="",tag:g="button",loading:m=!1,loadingIndicatorColor:v,outlineOnMobile:b=!1,onClick:y,...S},w)=>{if(a||(a="clear"),!h){switch(p=_("inline-flex items-center justify-center whitespace-nowrap rounded text-sm transition",c&&a!=="clear"&&a!=="black"||!c&&a!=="clear"?"font-bold":"font-semibold",c?"":`${e==="sm"?"h-7":"h-[34px]"}`,c?"":`${e==="sm"||t&&i?"px-3":"px-4"}`,c&&u&&"-m-1 p-1",p),a){case"black":p=_(c?"text-black hover:text-grey-800 dark:text-white":`bg-black text-white dark:bg-white dark:text-black ${!d&&"hover:bg-grey-900"}`,p),v="light",o=o||"text-white";break;case"light-grey":p=_(c?"text-grey-800 hover:text-green-400 dark:text-white":`bg-grey-200 text-black dark:bg-grey-900 dark:text-white ${!d&&"hover:!bg-grey-300 dark:hover:!bg-grey-800"}`,p),v="dark";break;case"grey":p=_(c?"text-black hover:text-grey-800 dark:text-white":`bg-grey-100 text-black dark:bg-grey-900 dark:text-white ${!d&&"hover:!bg-grey-300 dark:hover:!bg-grey-800"}`,p),v="dark";break;case"green":p=_(c?" text-green hover:text-green-400":` bg-green text-white ${!d&&"hover:bg-green-400"}`,p),v="light",o=o||"text-white";break;case"red":p=_(c?"text-red hover:text-red-400":`bg-red text-white ${!d&&"hover:bg-red-400"}`,p),v="light",o=o||"text-white";break;case"white":p=_(c?"text-white hover:text-white dark:text-black dark:hover:text-grey-800":"bg-white text-black dark:bg-black dark:text-white",p),v="dark";break;case"outline":p=_(c?"text-black hover:text-grey-800 dark:text-white":`border border-grey-300 bg-transparent text-black dark:border-grey-800 dark:text-white ${!d&&"hover:!border-black dark:hover:!border-white"}`,p),v="dark";break;default:p=_(c?" text-black hover:text-grey-800 dark:text-white":`text-grey-900 dark:text-white dark:hover:bg-grey-900 ${!d&&"hover:bg-grey-200 hover:text-black"}`,b&&!c&&"border border-grey-300 hover:border-transparent md:border-transparent",p),v="dark";break}p=_(l&&!c&&" w-full",d?"opacity-40":"cursor-pointer",p)}const C=t&&i&&!r?"mr-1.5":"";let k="";k+=t&&r?"sr-only":"",k+=m?"invisible":"",s=s||(e==="sm"||t&&i?"sm":"md");const A=f.jsxs(f.Fragment,{children:[i&&f.jsx(ve,{className:C,colorClass:o,name:i,size:s}),f.jsx("span",{className:k,children:t}),m&&f.jsxs("div",{className:"absolute flex",children:[f.jsx(wb,{color:v,size:e}),f.jsx("span",{className:"sr-only",children:"Loading..."})]})]});return Y.createElement(g,{className:p,"data-testid":n,disabled:d,type:"button",onClick:y,ref:w,...S},A)});ne.displayName="Button";function sC(n,e,t=!1){let r;return function(...i){const s=()=>{r=null,t||n.apply(this,i)},o=t&&!r;r&&clearTimeout(r),r=setTimeout(s,e),o&&n.apply(this,i)}}var ot=function(){return ot=Object.assign||function(n){for(var e,t=1,r=arguments.length;t<r;t++){e=arguments[t];for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(n[i]=e[i])}return n},ot.apply(this,arguments)},Sb=function(n,e){var t={};for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&e.indexOf(r)<0&&(t[r]=n[r]);if(n!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,r=Object.getOwnPropertySymbols(n);i<r.length;i++)e.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(n,r[i])&&(t[r[i]]=n[r[i]]);return t},Nu=Symbol("NiceModalId"),zf={},Gi=Y.createContext(zf),Cb=Y.createContext(null),wn={},Os={},oC=0,Ki=function(){throw new Error("No dispatch method detected, did you embed your app with NiceModal.Provider?")},kb=function(){return"_nice_modal_"+oC++},Ab=function(n,e){var t,r,i;switch(n===void 0&&(n=zf),e.type){case"nice-modal/show":{var s=e.payload,o=s.modalId,a=s.args;return ot(ot({},n),(t={},t[o]=ot(ot({},n[o]),{id:o,args:a,visible:!!Os[o],delayVisible:!Os[o]}),t))}case"nice-modal/hide":{var o=e.payload.modalId;return n[o]?ot(ot({},n),(r={},r[o]=ot(ot({},n[o]),{visible:!1}),r)):n}case"nice-modal/remove":{var o=e.payload.modalId,l=ot({},n);return delete l[o],l}case"nice-modal/set-flags":{var c=e.payload,o=c.modalId,u=c.flags;return ot(ot({},n),(i={},i[o]=ot(ot({},n[o]),u),i))}default:return n}};function aC(n){var e;return(e=wn[n])===null||e===void 0?void 0:e.comp}function lC(n,e){return{type:"nice-modal/show",payload:{modalId:n,args:e}}}function cC(n,e){return{type:"nice-modal/set-flags",payload:{modalId:n,flags:e}}}function uC(n){return{type:"nice-modal/hide",payload:{modalId:n}}}function dC(n){return{type:"nice-modal/remove",payload:{modalId:n}}}var Qn={},Di={},zc=function(n){return typeof n=="string"?n:(n[Nu]||(n[Nu]=kb()),n[Nu])};function Wf(n,e){var t=zc(n);if(typeof n!="string"&&!wn[t]&&Wc(t,n),Ki(lC(t,e)),!Qn[t]){var r,i,s=new Promise(function(o,a){r=o,i=a});Qn[t]={resolve:r,reject:i,promise:s}}return Qn[t].promise}function qf(n){var e=zc(n);if(Ki(uC(e)),delete Qn[e],!Di[e]){var t,r,i=new Promise(function(s,o){t=s,r=o});Di[e]={resolve:t,reject:r,promise:i}}return Di[e].promise}var Mb=function(n){var e=zc(n);Ki(dC(e)),delete Qn[e],delete Di[e]},fC=function(n,e){Ki(cC(n,e))};function ir(n,e){var t=x.useContext(Gi),r=x.useContext(Cb),i=null,s=n&&typeof n!="string";if(n?i=zc(n):i=r,!i)throw new Error("No modal id found in NiceModal.useModal.");var o=i;x.useEffect(function(){s&&!wn[o]&&Wc(o,n,e)},[s,o,n,e]);var a=t[o],l=x.useCallback(function(g){return Wf(o,g)},[o]),c=x.useCallback(function(){return qf(o)},[o]),u=x.useCallback(function(){return Mb(o)},[o]),d=x.useCallback(function(g){var m;(m=Qn[o])===null||m===void 0||m.resolve(g),delete Qn[o]},[o]),h=x.useCallback(function(g){var m;(m=Qn[o])===null||m===void 0||m.reject(g),delete Qn[o]},[o]),p=x.useCallback(function(g){var m;(m=Di[o])===null||m===void 0||m.resolve(g),delete Di[o]},[o]);return x.useMemo(function(){return{id:o,args:a?.args,visible:!!a?.visible,keepMounted:!!a?.keepMounted,show:l,hide:c,remove:u,resolve:d,reject:h,resolveHide:p}},[o,a?.args,a?.visible,a?.keepMounted,l,c,u,d,h,p])}var hC=function(n){return function(e){var t,r=e.defaultVisible,i=e.keepMounted,s=e.id,o=Sb(e,["defaultVisible","keepMounted","id"]),a=ir(s),l=a.args,c=a.show,u=x.useContext(Gi),d=!!u[s];x.useEffect(function(){return r&&c(),Os[s]=!0,function(){delete Os[s]}},[s,c,r]),x.useEffect(function(){i&&fC(s,{keepMounted:!0})},[s,i]);var h=(t=u[s])===null||t===void 0?void 0:t.delayVisible;return x.useEffect(function(){h&&c(l)},[h,l,c]),d?Y.createElement(Cb.Provider,{value:s},Y.createElement(n,ot({},o,l))):null}},Wc=function(n,e,t){wn[n]?wn[n].props=t:wn[n]={comp:e,props:t}},pC=function(n){delete wn[n]},Ib=function(){var n=x.useContext(Gi),e=Object.keys(n).filter(function(r){return!!n[r]});e.forEach(function(r){if(!wn[r]&&!Os[r]){console.warn("No modal found for id: "+r+". Please check the id or if it is registered or declared via JSX.");return}});var t=e.filter(function(r){return wn[r]}).map(function(r){return ot({id:r},wn[r])});return Y.createElement(Y.Fragment,null,t.map(function(r){return Y.createElement(r.comp,ot({key:r.id,id:r.id},r.props))}))},mC=function(n){var e=n.children,t=x.useReducer(Ab,zf),r=t[0];return Ki=t[1],Y.createElement(Gi.Provider,{value:r},e,Y.createElement(Ib,null))},gC=function(n){var e=n.children,t=n.dispatch,r=n.modals;return!t||!r?Y.createElement(mC,null,e):(Ki=t,Y.createElement(Gi.Provider,{value:r},e,Y.createElement(Ib,null)))},vC=function(n){var e=n.id,t=n.component;return x.useEffect(function(){return Wc(e,t),function(){pC(e)}},[e,t]),null},bC=function(n){var e,t=n.modal,r=n.handler,i=r===void 0?{}:r,s=Sb(n,["modal","handler"]),o=x.useMemo(function(){return kb()},[]),a=typeof t=="string"?(e=wn[t])===null||e===void 0?void 0:e.comp:t;if(!i)throw new Error("No handler found in NiceModal.ModalHolder.");if(!a)throw new Error("No modal found for id: "+t+" in NiceModal.ModalHolder.");return i.show=x.useCallback(function(l){return Wf(o,l)},[o]),i.hide=x.useCallback(function(){return qf(o)},[o]),Y.createElement(a,ot({id:o},s))},xC=function(n){return{visible:n.visible,onOk:function(){return n.hide()},onCancel:function(){return n.hide()},afterClose:function(){n.resolveHide(),n.keepMounted||n.remove()}}},yC=function(n){return{visible:n.visible,onClose:function(){return n.hide()},afterVisibleChange:function(e){e||n.resolveHide(),!e&&!n.keepMounted&&n.remove()}}},wC=function(n){return{open:n.visible,onClose:function(){return n.hide()},onExited:function(){n.resolveHide(),!n.keepMounted&&n.remove()}}},SC=function(n){return{show:n.visible,onHide:function(){return n.hide()},onExited:function(){n.resolveHide(),!n.keepMounted&&n.remove()}}},Ye={Provider:gC,ModalDef:vC,ModalHolder:bC,NiceModalContext:Gi,create:hC,register:Wc,getModal:aC,show:Wf,hide:qf,remove:Mb,useModal:ir,reducer:Ab,antdModal:xC,antdDrawer:yC,muiDialog:wC,bootstrapDialog:SC};const Eb=Y.createContext({isDirty:!1,setGlobalDirtyState:()=>{}}),CC=({children:n})=>{const[e,t]=x.useState([]),r=x.useCallback((i,s)=>{t(o=>s&&!o.includes(i)?[...o,i]:!s&&o.includes(i)?o.filter(a=>a!==i):o)},[]);return f.jsx(Eb.Provider,{value:{isDirty:e.length>0,setGlobalDirtyState:r},children:n})},qc=()=>{const n=x.useId(),{isDirty:e,setGlobalDirtyState:t}=x.useContext(Eb);x.useEffect(()=>()=>t(n,!1),[n,t]);const r=x.useCallback(i=>t(n,i),[n,t]);return{isDirty:e,setGlobalDirtyState:r}},Db=x.createContext({isAnyTextFieldFocused:!1,setFocusState:()=>{},fetchKoenigLexical:async()=>{},darkMode:!1}),Rb=()=>x.useContext(Db),Zi=()=>{const n=Rb();if(!n)throw new Error("useFocusContext must be used within a FocusProvider");return n},kC=({fetchKoenigLexical:n,darkMode:e,children:t})=>{const[r,i]=x.useState(!1),s=o=>{i(o)};return f.jsx(Db.Provider,{value:{isAnyTextFieldFocused:r,setFocusState:s,fetchKoenigLexical:n,darkMode:e},children:f.jsxs(CC,{children:[f.jsx(a2,{}),f.jsx(Ye.Provider,{children:t})]})})},tt=({type:n="text",inputRef:e,title:t,hideTitle:r,value:i,error:s,placeholder:o,rightPlaceholder:a,hint:l,onChange:c,onFocus:u,onBlur:d,clearBg:h=!1,className:p="",maxLength:g,containerClassName:m="",hintClassName:v="",unstyled:b=!1,disabled:y,...S})=>{const w=x.useId(),{setFocusState:C}=Zi(),k=L=>{u?.(L),C(!0)},A=L=>{d?.(L),C(!1)},I=_("relative order-2 flex w-full items-center",t&&!r&&"mt-1.5"),D=!b&&_("dark:peer-hover:bg-grey-925 dark:peer-focus:bg-grey-950 absolute inset-0 rounded-lg border text-grey-300 transition-colors peer-hover:bg-grey-100 peer-focus:border-green peer-focus:bg-white peer-focus:shadow-[0_0_0_2px_rgba(48,207,67,.25)]",s?"border-red bg-white dark:bg-grey-925":"border-transparent bg-grey-150 dark:bg-grey-900",y&&"dark:peer-hover:bg-grey-950 bg-grey-50 peer-hover:bg-grey-50 dark:bg-grey-950"),R=!b&&_("peer z-[1] order-2 h-9 w-full bg-transparent px-3 py-1.5 text-sm placeholder:text-grey-500 md:h-[38px] md:py-2 md:text-md dark:placeholder:text-grey-700",y?"cursor-not-allowed text-grey-600 opacity-60 dark:text-grey-800":"dark:text-white",a?"w-0 grow rounded-l-lg":"rounded-lg",p),T=!b&&_("z-[1] order-3 rounded-r-lg",a?typeof a=="string"?"flex h-8 items-center py-1 pr-3 text-right text-sm text-grey-500 md:h-9 md:text-base":"h-9 pr-1":"pr-2");let N=f.jsx(f.Fragment,{});const P=f.jsx("input",{ref:e,className:R||p,disabled:y,id:w,maxLength:g,placeholder:o,type:n,value:i,onBlur:A,onChange:c,onFocus:k,...S});return N=f.jsx(cb,{name:w,asChild:!0,children:f.jsxs("div",{className:I,children:[f.jsx(ub,{asChild:!0,children:P}),!b&&!h&&f.jsx("div",{className:D||""}),a&&f.jsx("span",{className:T||"",children:a})]})}),v=_("order-3",v),m=_("flex flex-col",m),t||l?f.jsx(Id,{asChild:!0,children:f.jsxs("div",{className:m,children:[N,t&&f.jsx(ft,{className:r?"sr-only":"order-1",htmlFor:w,useLabelTag:!0,children:t}),l&&f.jsx(An,{className:v,color:s?"red":"default",children:l})]})}):f.jsx(Id,{asChild:!0,children:N})},AC=({valueInCents:n,onChange:e,...t})=>{const[r,i]=x.useState(n===""?"":((n||0)/100).toString()),s=a=>a.replace(/[^\d.]+/g,""),o=a=>{var l;return Math.round(parseFloat(((l=a.match(/[\d]+\.?[\d]{0,2}/))==null?void 0:l[0])||"0")*100)};return f.jsx(tt,{...t,value:r,onBlur:a=>{var l;i((o(a.target.value)/100).toString()),(l=t.onBlur)==null||l.call(t,a)},onChange:a=>{i(s(a.target.value)),e?.(o(a.target.value))}})},rc=({id:n,onUpload:e,children:t,style:r,unstyled:i=!1,inputRef:s,className:o,dragIndicatorClassName:a,accept:l,...c})=>{const[u,d]=x.useState(Date.now()),[h,p]=x.useState(!1),g=y=>{var S;const w=(S=y.target.files)==null?void 0:S[0];w&&e?.(w),d(Date.now())},m=y=>{var S;b(y);const w=(S=y.dataTransfer.files)==null?void 0:S[0];w&&e?.(w),d(Date.now())},v=y=>{y.preventDefault(),p(!0)},b=y=>{y.preventDefault(),p(!1)};return f.jsxs("label",{className:_("relative",o),htmlFor:n,style:r,onDragEnter:v,onDragLeave:b,onDragOver:v,onDrop:m,...c,children:[f.jsx("div",{className:_({"absolute inset-1 rounded":!0,"border-2 border-dashed border-grey-400/25":h},h&&[a])}),f.jsx("input",{ref:s||null,accept:l,id:n,type:"file",hidden:!0,onChange:g},u),typeof t=="string"?f.jsx("div",{className:i?"":"inline-flex h-[34px] cursor-pointer items-center justify-center rounded px-4 text-sm font-semibold hover:bg-grey-100 dark:text-white dark:hover:bg-grey-900",children:t}):t]})},MC=({title:n,grouped:e=!1,gap:t="md",margins:r="md",marginTop:i=!1,marginBottom:s=!0,className:o="",children:a})=>{let l=_("flex flex-col",t==="xs"&&"gap-4",t==="sm"&&"gap-6",t==="md"&&"gap-8",t==="lg"&&"gap-11");r||(r=t),s&&(l=_(l,r==="sm"&&"mb-7",r==="md"&&"mb-10",r==="lg"&&"mb-12")),i&&(l=_(l,r==="sm"&&"mt-7",r==="md"&&"mt-10",r==="lg"&&"mt-12")),e&&(l=_(l,"rounded-sm border border-grey-200 p-4 md:p-7 dark:border-grey-900"));const c=_(e?"mb-3":"mb-4");return e||n?f.jsxs("div",{className:o,children:[n&&f.jsx(ft,{className:c,level:5,children:n}),f.jsx("div",{className:l,children:a})]}):f.jsx("div",{className:_(l,o),children:a})},Ob=({color:n="grey",children:e,className:t})=>{const r=_("relative overflow-hidden rounded-sm p-2",n==="grey"&&"text-black",n==="blue"&&"text-blue",n==="green"&&"text-green",n==="yellow"&&"text-yellow-600",n==="red"&&"text-red","after:pointer-events-none after:absolute after:inset-0 after:block after:opacity-10 after:content-['']",n==="grey"&&"after:bg-grey-500",n==="blue"&&"after:bg-blue",n==="green"&&"after:bg-green",n==="yellow"&&"after:bg-yellow",n==="red"&&"after:bg-red",t);return f.jsx("div",{className:r,children:e})};var IC=Object.defineProperty,EC=(n,e,t)=>e in n?IC(n,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):n[e]=t,DC=(n,e,t)=>EC(n,e+"",t);class Tb extends Y.Component{constructor(e){super(e),DC(this,"state",{hasError:!1})}static getDerivedStateFromError(){return{hasError:!0}}componentDidCatch(e,t){l2(r=>{r.setTag("adminx_settings_component",t.componentStack),Ss(e)}),console.error(e),console.error("In component:",t.componentStack)}render(){return this.state.hasError?f.jsxs(Ob,{color:"red",children:["An error occurred loading ",this.props.name,". Please refresh and try again."]}):this.props.children}}const ke=(n,e)=>function(r){return f.jsx(Tb,{name:e,children:f.jsx(n,{...r})})},RC=function(n){let e="pending",t;const r=n().then(s=>{e="success",t=s},s=>{e="error",t=s});return{read:()=>{switch(e){case"pending":throw r;case"error":throw t;default:return t}}}},OC=({editor:n,onBlur:e,placeholder:t,nodes:r,emojiPicker:i=!0,darkMode:s=!1,singleParagraph:o=!1,children:a,initialEditorState:l,onChange:c})=>{const u=x.useCallback(b=>{var y;try{Ss({error:b,tags:{lexical:!0},contexts:{koenig:{version:(y=window["@tryghost/koenig-lexical"])==null?void 0:y.version}}})}catch(S){console.error(S)}console.error(b)},[]),{setFocusState:d}=Zi(),h=()=>{e&&e(),d(!1)},p=()=>{d(!0)},g=x.useMemo(()=>new Proxy({},{get:(b,y)=>n.read()[y]}),[n]),m={DEFAULT_NODES:g.DEFAULT_TRANSFORMERS,BASIC_NODES:g.BASIC_TRANSFORMERS,MINIMAL_NODES:g.MINIMAL_TRANSFORMERS},v=r||"DEFAULT_NODES";return f.jsx(g.KoenigComposer,{darkMode:s,initialEditorState:l,nodes:g[v],onError:u,children:f.jsxs(g.KoenigComposableEditor,{className:"koenig-lexical koenig-lexical-editor-input",isSnippetsEnabled:!1,markdownTransformers:m[v],placeholderClassName:"koenig-lexical-editor-input-placeholder line-clamp-1",placeholderText:t,singleParagraph:o,onBlur:h,onChange:c,onFocus:p,children:[a(g),i?f.jsx(g.EmojiPickerPlugin,{}):null]})})},TC=({className:n,children:e,initialEditorState:t,onChange:r,...i})=>{const{fetchKoenigLexical:s,darkMode:o}=Rb(),a=x.useMemo(()=>RC(s),[s]);return f.jsx("div",{className:n||"w-full",children:f.jsx("div",{className:"koenig-react-editor w-full [&_*]:!font-inherit [&_*]:!text-inherit",children:f.jsx(Tb,{name:"editor",children:f.jsx(x.Suspense,{fallback:f.jsx("p",{className:"koenig-react-editor-loading",children:"Loading editor..."}),children:f.jsx(OC,{...i,darkMode:o,editor:a,initialEditorState:t,onChange:r,children:e})})})})})},ep=({id:n,children:e,width:t="100%",height:r="120px",imageURL:i,imageFit:s="cover",imageContainerClassName:o,imageClassName:a,fileUploadClassName:l,fileUploadProps:c,deleteButtonClassName:u,deleteButtonContent:d,deleteButtonUnstyled:h=!1,imageBWCheckedBg:p=!1,unstyled:g=!1,onUpload:m,onDelete:v,onImageClick:b,pintura:y,editButtonClassName:S,editButtonContent:w,editButtonUnstyled:C=!1,buttonContainerClassName:k,unsplashButtonClassName:A,unsplashButtonUnstyled:I=!1,unsplashButtonContent:D,unsplashEnabled:R,openUnsplash:T})=>{if(g||(o=_("group relative flex justify-center",o),a=_(s==="cover"&&"object-cover",s==="contain"&&"object-contain",s==="fill"&&"object-fill",s==="scale-down"&&"object-scale-down",s==="none"&&"object-scale-down",a),l=_("flex cursor-pointer items-center justify-center rounded border border-grey-100 bg-grey-75 p-3 text-sm font-semibold text-grey-800 hover:text-black dark:border-grey-900 dark:bg-grey-900 dark:text-grey-400",l),h||(u=_("absolute right-4 top-4 flex h-8 w-8 cursor-pointer items-center justify-center rounded bg-[rgba(0,0,0,0.75)] text-white hover:bg-black group-hover:!visible md:invisible",u)),C||(S=_("absolute right-16 top-4 flex h-8 w-8 cursor-pointer items-center justify-center rounded bg-[rgba(0,0,0,0.75)] text-white hover:bg-black group-hover:!visible md:invisible",S)),I||(A=_("absolute right-16 top-4 flex h-8 w-8 cursor-pointer items-center justify-center rounded bg-[rgba(255,255,255)] text-white",A))),d=d||f.jsx(ve,{colorClass:"text-white",name:"trash",size:"sm"}),w=w||f.jsx(ve,{colorClass:"text-white",name:"pen",size:"sm"}),D=D||f.jsx(ve,{colorClass:"text-black",name:"unsplash-logo",size:"sm"}),i){let N=f.jsxs("div",{className:o,style:{width:g?"":t,height:g?"":r},children:[f.jsx("img",{alt:"",className:a,id:n,src:i,style:{width:g?"":t||"100%",height:g?"":r||"auto"},onClick:b}),f.jsxs("div",{className:k,children:[y?.isEnabled&&y?.openEditor&&f.jsx("button",{className:S,type:"button",onClick:y.openEditor,children:w}),f.jsx("button",{className:u,type:"button",onClick:v,children:d})]})]});if(p){const P="#d9d9d9";N=f.jsx("div",{style:{backgroundImage:`
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/code-editor-view-C8l3gNnO.js","assets/index-CJU9a2PB.js","assets/index-Ip63LVtf.css","assets/index-6syrC9X1.js","assets/newsletters-N6bwI1OF.js","assets/posts-BwP7BNcB.js","assets/referrers-n_ln9DqI.js","assets/index-j2_Q-_8H.js","assets/index-eLx96SEn.js","assets/_baseAssignValue-hsL6ItjC.js","assets/modals-CumFuZ2d.js","assets/modals-BKa6wJ_I.css","assets/koenig-lexical-DgAlBHHS.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{j as f,dH as o2,aE as _,e as Y,r as x,aC as no,d5 as ve,dI as a2,dJ as Id,dK as cb,dL as ub,dM as l2,dc as Ss,c3 as Jh,dN as c2,aB as Vr,ba as Vc,ar as db,as as fb,au as $f,ay as $r,bc as u2,d3 as d2,b7 as hb,at as f2,b8 as h2,be as p2,az as m2,bm as g2,bn as v2,dO as b2,dP as x2,bo as y2,dQ as w2,dR as S2,dS as C2,dT as k2,dU as A2,dV as M2,dW as I2,dX as E2,dY as D2,dZ as Xh,aH as R2,aG as O2,aF as T2,d_ as pb,d7 as Xr,aV as vt,d8 as Te,dg as N2,ac as Qr,ad as He,d$ as Ff,e0 as Hf,d9 as tr,d6 as Ed,e1 as P2,dm as mb,e2 as L2,ak as Uc,al as Vf,e3 as _2,aK as j2,cV as gb,ae as B2,am as Uf,di as $2,e4 as F2,cT as H2,dv as Cs,dE as vb,e5 as V2,cE as U2,dd as z2,dr as Xn,da as W2,df as q2,du as G2,dD as K2}from"./index-CJU9a2PB.js";import{R as Z2,C as Y2,L as J2,T as X2}from"./index-6syrC9X1.js";import{u as bb,b as Q2,c as eC,n as tC}from"./newsletters-N6bwI1OF.js";import{b as nC}from"./posts-BwP7BNcB.js";import{a as rC}from"./referrers-n_ln9DqI.js";const gt=({className:n})=>(n||(n="border-grey-200 dark:border-grey-800"),f.jsx(o2,{asChild:!0,decorative:!0,children:f.jsx("hr",{className:n})})),xb=_("text-sm font-medium tracking-normal"),yb=_(xb,"text-grey-900 dark:text-grey-500"),ft=({level:n=1,children:e,styles:t="",grey:r=!0,separator:i,useLabelTag:s,className:o="",...a})=>{const l=`${s?"label":`h${n}`}`;if(t+=n===6||s?` block ${r?yb:xb}`:" ",!s)switch(n){case 1:t+=" md:text-4xl leading-tighter";break;case 2:t+=" md:text-3xl";break;case 3:t+=" md:text-2xl";break;case 4:t+=" md:text-xl";break;case 5:t+=" md:text-lg";break}o=_(t,!r&&"dark:text-white",o);const c=Y.createElement(l,{className:o,key:"heading-elem",...a},e);if(i){const u=!n||n===1?2:1,d=n===6?2:3;return f.jsxs("div",{className:`gap-${u} mb-${d} flex flex-col`,children:[c,f.jsx(gt,{})]})}else return c},An=({children:n,color:e,className:t,...r})=>{if(!n)return null;let i="text-grey-700 dark:text-grey-600";switch(e){case"red":i="text-red dark:text-red-500";break;case"green":i="text-green dark:text-green-500";break}return t=_("mt-1 inline-block text-xs leading-snug",i,t),f.jsx("span",{className:t,...r,children:n})},iC=Y.lazy(()=>no(()=>import("./code-editor-view-C8l3gNnO.js"),__vite__mapDeps([0,1,2,3,4,5,6]))),Qh=x.forwardRef(function(e,t){return f.jsx(x.Suspense,{fallback:null,children:f.jsx(iC,{...e,ref:t})})}),wb=({size:n,color:e,delay:t,style:r})=>{const[i,s]=Y.useState(!t);Y.useEffect(()=>{if(t){const a=setTimeout(()=>{s(!0)},t);return()=>{clearTimeout(a)}}},[t]);let o="relative mx-0 my-[-0.5] box-border inline-block animate-spin rounded-full before:z-10 before:block before:rounded-full before:content-[''] ";switch(n){case"sm":o+=" h-[16px] w-[16px] border-2 before:mt-[10px] before:h-[3px] before:w-[3px] ";break;case"md":o+=" h-[20px] w-[20px] border-2 before:mt-[13px] before:h-[3px] before:w-[3px] ";break;case"lg":default:o+=" h-[50px] w-[50px] border before:mt-[7px] before:h-[7px] before:w-[7px] ";break}switch(e){case"light":o+=" border-white/20 before:bg-white dark:border-black/10 dark:before:bg-black ";break;case"dark":default:o+=" border-black/10 before:bg-black dark:border-white/20 dark:before:bg-white ";break}return n==="lg"?f.jsx("div",{className:`flex h-64 items-center justify-center transition-opacity ${i?"opacity-100":"opacity-0"}`,style:r,children:f.jsx("div",{className:o})}):f.jsx("div",{className:o})},ne=Y.forwardRef(({testId:n,size:e="md",label:t="",hideLabel:r=!1,icon:i="",iconSize:s,iconColorClass:o,color:a="clear",fullWidth:l,link:c,linkWithPadding:u=!1,disabled:d,unstyled:h=!1,className:p="",tag:g="button",loading:m=!1,loadingIndicatorColor:v,outlineOnMobile:b=!1,onClick:y,...S},w)=>{if(a||(a="clear"),!h){switch(p=_("inline-flex items-center justify-center whitespace-nowrap rounded text-sm transition",c&&a!=="clear"&&a!=="black"||!c&&a!=="clear"?"font-bold":"font-semibold",c?"":`${e==="sm"?"h-7":"h-[34px]"}`,c?"":`${e==="sm"||t&&i?"px-3":"px-4"}`,c&&u&&"-m-1 p-1",p),a){case"black":p=_(c?"text-black hover:text-grey-800 dark:text-white":`bg-black text-white dark:bg-white dark:text-black ${!d&&"hover:bg-grey-900"}`,p),v="light",o=o||"text-white";break;case"light-grey":p=_(c?"text-grey-800 hover:text-green-400 dark:text-white":`bg-grey-200 text-black dark:bg-grey-900 dark:text-white ${!d&&"hover:!bg-grey-300 dark:hover:!bg-grey-800"}`,p),v="dark";break;case"grey":p=_(c?"text-black hover:text-grey-800 dark:text-white":`bg-grey-100 text-black dark:bg-grey-900 dark:text-white ${!d&&"hover:!bg-grey-300 dark:hover:!bg-grey-800"}`,p),v="dark";break;case"green":p=_(c?" text-green hover:text-green-400":` bg-green text-white ${!d&&"hover:bg-green-400"}`,p),v="light",o=o||"text-white";break;case"red":p=_(c?"text-red hover:text-red-400":`bg-red text-white ${!d&&"hover:bg-red-400"}`,p),v="light",o=o||"text-white";break;case"white":p=_(c?"text-white hover:text-white dark:text-black dark:hover:text-grey-800":"bg-white text-black dark:bg-black dark:text-white",p),v="dark";break;case"outline":p=_(c?"text-black hover:text-grey-800 dark:text-white":`border border-grey-300 bg-transparent text-black dark:border-grey-800 dark:text-white ${!d&&"hover:!border-black dark:hover:!border-white"}`,p),v="dark";break;default:p=_(c?" text-black hover:text-grey-800 dark:text-white":`text-grey-900 dark:text-white dark:hover:bg-grey-900 ${!d&&"hover:bg-grey-200 hover:text-black"}`,b&&!c&&"border border-grey-300 hover:border-transparent md:border-transparent",p),v="dark";break}p=_(l&&!c&&" w-full",d?"opacity-40":"cursor-pointer",p)}const C=t&&i&&!r?"mr-1.5":"";let k="";k+=t&&r?"sr-only":"",k+=m?"invisible":"",s=s||(e==="sm"||t&&i?"sm":"md");const A=f.jsxs(f.Fragment,{children:[i&&f.jsx(ve,{className:C,colorClass:o,name:i,size:s}),f.jsx("span",{className:k,children:t}),m&&f.jsxs("div",{className:"absolute flex",children:[f.jsx(wb,{color:v,size:e}),f.jsx("span",{className:"sr-only",children:"Loading..."})]})]});return Y.createElement(g,{className:p,"data-testid":n,disabled:d,type:"button",onClick:y,ref:w,...S},A)});ne.displayName="Button";function sC(n,e,t=!1){let r;return function(...i){const s=()=>{r=null,t||n.apply(this,i)},o=t&&!r;r&&clearTimeout(r),r=setTimeout(s,e),o&&n.apply(this,i)}}var ot=function(){return ot=Object.assign||function(n){for(var e,t=1,r=arguments.length;t<r;t++){e=arguments[t];for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(n[i]=e[i])}return n},ot.apply(this,arguments)},Sb=function(n,e){var t={};for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&e.indexOf(r)<0&&(t[r]=n[r]);if(n!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,r=Object.getOwnPropertySymbols(n);i<r.length;i++)e.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(n,r[i])&&(t[r[i]]=n[r[i]]);return t},Nu=Symbol("NiceModalId"),zf={},Gi=Y.createContext(zf),Cb=Y.createContext(null),wn={},Os={},oC=0,Ki=function(){throw new Error("No dispatch method detected, did you embed your app with NiceModal.Provider?")},kb=function(){return"_nice_modal_"+oC++},Ab=function(n,e){var t,r,i;switch(n===void 0&&(n=zf),e.type){case"nice-modal/show":{var s=e.payload,o=s.modalId,a=s.args;return ot(ot({},n),(t={},t[o]=ot(ot({},n[o]),{id:o,args:a,visible:!!Os[o],delayVisible:!Os[o]}),t))}case"nice-modal/hide":{var o=e.payload.modalId;return n[o]?ot(ot({},n),(r={},r[o]=ot(ot({},n[o]),{visible:!1}),r)):n}case"nice-modal/remove":{var o=e.payload.modalId,l=ot({},n);return delete l[o],l}case"nice-modal/set-flags":{var c=e.payload,o=c.modalId,u=c.flags;return ot(ot({},n),(i={},i[o]=ot(ot({},n[o]),u),i))}default:return n}};function aC(n){var e;return(e=wn[n])===null||e===void 0?void 0:e.comp}function lC(n,e){return{type:"nice-modal/show",payload:{modalId:n,args:e}}}function cC(n,e){return{type:"nice-modal/set-flags",payload:{modalId:n,flags:e}}}function uC(n){return{type:"nice-modal/hide",payload:{modalId:n}}}function dC(n){return{type:"nice-modal/remove",payload:{modalId:n}}}var Qn={},Di={},zc=function(n){return typeof n=="string"?n:(n[Nu]||(n[Nu]=kb()),n[Nu])};function Wf(n,e){var t=zc(n);if(typeof n!="string"&&!wn[t]&&Wc(t,n),Ki(lC(t,e)),!Qn[t]){var r,i,s=new Promise(function(o,a){r=o,i=a});Qn[t]={resolve:r,reject:i,promise:s}}return Qn[t].promise}function qf(n){var e=zc(n);if(Ki(uC(e)),delete Qn[e],!Di[e]){var t,r,i=new Promise(function(s,o){t=s,r=o});Di[e]={resolve:t,reject:r,promise:i}}return Di[e].promise}var Mb=function(n){var e=zc(n);Ki(dC(e)),delete Qn[e],delete Di[e]},fC=function(n,e){Ki(cC(n,e))};function ir(n,e){var t=x.useContext(Gi),r=x.useContext(Cb),i=null,s=n&&typeof n!="string";if(n?i=zc(n):i=r,!i)throw new Error("No modal id found in NiceModal.useModal.");var o=i;x.useEffect(function(){s&&!wn[o]&&Wc(o,n,e)},[s,o,n,e]);var a=t[o],l=x.useCallback(function(g){return Wf(o,g)},[o]),c=x.useCallback(function(){return qf(o)},[o]),u=x.useCallback(function(){return Mb(o)},[o]),d=x.useCallback(function(g){var m;(m=Qn[o])===null||m===void 0||m.resolve(g),delete Qn[o]},[o]),h=x.useCallback(function(g){var m;(m=Qn[o])===null||m===void 0||m.reject(g),delete Qn[o]},[o]),p=x.useCallback(function(g){var m;(m=Di[o])===null||m===void 0||m.resolve(g),delete Di[o]},[o]);return x.useMemo(function(){return{id:o,args:a?.args,visible:!!a?.visible,keepMounted:!!a?.keepMounted,show:l,hide:c,remove:u,resolve:d,reject:h,resolveHide:p}},[o,a?.args,a?.visible,a?.keepMounted,l,c,u,d,h,p])}var hC=function(n){return function(e){var t,r=e.defaultVisible,i=e.keepMounted,s=e.id,o=Sb(e,["defaultVisible","keepMounted","id"]),a=ir(s),l=a.args,c=a.show,u=x.useContext(Gi),d=!!u[s];x.useEffect(function(){return r&&c(),Os[s]=!0,function(){delete Os[s]}},[s,c,r]),x.useEffect(function(){i&&fC(s,{keepMounted:!0})},[s,i]);var h=(t=u[s])===null||t===void 0?void 0:t.delayVisible;return x.useEffect(function(){h&&c(l)},[h,l,c]),d?Y.createElement(Cb.Provider,{value:s},Y.createElement(n,ot({},o,l))):null}},Wc=function(n,e,t){wn[n]?wn[n].props=t:wn[n]={comp:e,props:t}},pC=function(n){delete wn[n]},Ib=function(){var n=x.useContext(Gi),e=Object.keys(n).filter(function(r){return!!n[r]});e.forEach(function(r){if(!wn[r]&&!Os[r]){console.warn("No modal found for id: "+r+". Please check the id or if it is registered or declared via JSX.");return}});var t=e.filter(function(r){return wn[r]}).map(function(r){return ot({id:r},wn[r])});return Y.createElement(Y.Fragment,null,t.map(function(r){return Y.createElement(r.comp,ot({key:r.id,id:r.id},r.props))}))},mC=function(n){var e=n.children,t=x.useReducer(Ab,zf),r=t[0];return Ki=t[1],Y.createElement(Gi.Provider,{value:r},e,Y.createElement(Ib,null))},gC=function(n){var e=n.children,t=n.dispatch,r=n.modals;return!t||!r?Y.createElement(mC,null,e):(Ki=t,Y.createElement(Gi.Provider,{value:r},e,Y.createElement(Ib,null)))},vC=function(n){var e=n.id,t=n.component;return x.useEffect(function(){return Wc(e,t),function(){pC(e)}},[e,t]),null},bC=function(n){var e,t=n.modal,r=n.handler,i=r===void 0?{}:r,s=Sb(n,["modal","handler"]),o=x.useMemo(function(){return kb()},[]),a=typeof t=="string"?(e=wn[t])===null||e===void 0?void 0:e.comp:t;if(!i)throw new Error("No handler found in NiceModal.ModalHolder.");if(!a)throw new Error("No modal found for id: "+t+" in NiceModal.ModalHolder.");return i.show=x.useCallback(function(l){return Wf(o,l)},[o]),i.hide=x.useCallback(function(){return qf(o)},[o]),Y.createElement(a,ot({id:o},s))},xC=function(n){return{visible:n.visible,onOk:function(){return n.hide()},onCancel:function(){return n.hide()},afterClose:function(){n.resolveHide(),n.keepMounted||n.remove()}}},yC=function(n){return{visible:n.visible,onClose:function(){return n.hide()},afterVisibleChange:function(e){e||n.resolveHide(),!e&&!n.keepMounted&&n.remove()}}},wC=function(n){return{open:n.visible,onClose:function(){return n.hide()},onExited:function(){n.resolveHide(),!n.keepMounted&&n.remove()}}},SC=function(n){return{show:n.visible,onHide:function(){return n.hide()},onExited:function(){n.resolveHide(),!n.keepMounted&&n.remove()}}},Ye={Provider:gC,ModalDef:vC,ModalHolder:bC,NiceModalContext:Gi,create:hC,register:Wc,getModal:aC,show:Wf,hide:qf,remove:Mb,useModal:ir,reducer:Ab,antdModal:xC,antdDrawer:yC,muiDialog:wC,bootstrapDialog:SC};const Eb=Y.createContext({isDirty:!1,setGlobalDirtyState:()=>{}}),CC=({children:n})=>{const[e,t]=x.useState([]),r=x.useCallback((i,s)=>{t(o=>s&&!o.includes(i)?[...o,i]:!s&&o.includes(i)?o.filter(a=>a!==i):o)},[]);return f.jsx(Eb.Provider,{value:{isDirty:e.length>0,setGlobalDirtyState:r},children:n})},qc=()=>{const n=x.useId(),{isDirty:e,setGlobalDirtyState:t}=x.useContext(Eb);x.useEffect(()=>()=>t(n,!1),[n,t]);const r=x.useCallback(i=>t(n,i),[n,t]);return{isDirty:e,setGlobalDirtyState:r}},Db=x.createContext({isAnyTextFieldFocused:!1,setFocusState:()=>{},fetchKoenigLexical:async()=>{},darkMode:!1}),Rb=()=>x.useContext(Db),Zi=()=>{const n=Rb();if(!n)throw new Error("useFocusContext must be used within a FocusProvider");return n},kC=({fetchKoenigLexical:n,darkMode:e,children:t})=>{const[r,i]=x.useState(!1),s=o=>{i(o)};return f.jsx(Db.Provider,{value:{isAnyTextFieldFocused:r,setFocusState:s,fetchKoenigLexical:n,darkMode:e},children:f.jsxs(CC,{children:[f.jsx(a2,{}),f.jsx(Ye.Provider,{children:t})]})})},tt=({type:n="text",inputRef:e,title:t,hideTitle:r,value:i,error:s,placeholder:o,rightPlaceholder:a,hint:l,onChange:c,onFocus:u,onBlur:d,clearBg:h=!1,className:p="",maxLength:g,containerClassName:m="",hintClassName:v="",unstyled:b=!1,disabled:y,...S})=>{const w=x.useId(),{setFocusState:C}=Zi(),k=L=>{u?.(L),C(!0)},A=L=>{d?.(L),C(!1)},I=_("relative order-2 flex w-full items-center",t&&!r&&"mt-1.5"),D=!b&&_("dark:peer-hover:bg-grey-925 dark:peer-focus:bg-grey-950 absolute inset-0 rounded-lg border text-grey-300 transition-colors peer-hover:bg-grey-100 peer-focus:border-green peer-focus:bg-white peer-focus:shadow-[0_0_0_2px_rgba(48,207,67,.25)]",s?"border-red bg-white dark:bg-grey-925":"border-transparent bg-grey-150 dark:bg-grey-900",y&&"dark:peer-hover:bg-grey-950 bg-grey-50 peer-hover:bg-grey-50 dark:bg-grey-950"),R=!b&&_("peer z-[1] order-2 h-9 w-full bg-transparent px-3 py-1.5 text-sm placeholder:text-grey-500 md:h-[38px] md:py-2 md:text-md dark:placeholder:text-grey-700",y?"cursor-not-allowed text-grey-600 opacity-60 dark:text-grey-800":"dark:text-white",a?"w-0 grow rounded-l-lg":"rounded-lg",p),T=!b&&_("z-[1] order-3 rounded-r-lg",a?typeof a=="string"?"flex h-8 items-center py-1 pr-3 text-right text-sm text-grey-500 md:h-9 md:text-base":"h-9 pr-1":"pr-2");let N=f.jsx(f.Fragment,{});const P=f.jsx("input",{ref:e,className:R||p,disabled:y,id:w,maxLength:g,placeholder:o,type:n,value:i,onBlur:A,onChange:c,onFocus:k,...S});return N=f.jsx(cb,{name:w,asChild:!0,children:f.jsxs("div",{className:I,children:[f.jsx(ub,{asChild:!0,children:P}),!b&&!h&&f.jsx("div",{className:D||""}),a&&f.jsx("span",{className:T||"",children:a})]})}),v=_("order-3",v),m=_("flex flex-col",m),t||l?f.jsx(Id,{asChild:!0,children:f.jsxs("div",{className:m,children:[N,t&&f.jsx(ft,{className:r?"sr-only":"order-1",htmlFor:w,useLabelTag:!0,children:t}),l&&f.jsx(An,{className:v,color:s?"red":"default",children:l})]})}):f.jsx(Id,{asChild:!0,children:N})},AC=({valueInCents:n,onChange:e,...t})=>{const[r,i]=x.useState(n===""?"":((n||0)/100).toString()),s=a=>a.replace(/[^\d.]+/g,""),o=a=>{var l;return Math.round(parseFloat(((l=a.match(/[\d]+\.?[\d]{0,2}/))==null?void 0:l[0])||"0")*100)};return f.jsx(tt,{...t,value:r,onBlur:a=>{var l;i((o(a.target.value)/100).toString()),(l=t.onBlur)==null||l.call(t,a)},onChange:a=>{i(s(a.target.value)),e?.(o(a.target.value))}})},rc=({id:n,onUpload:e,children:t,style:r,unstyled:i=!1,inputRef:s,className:o,dragIndicatorClassName:a,accept:l,...c})=>{const[u,d]=x.useState(Date.now()),[h,p]=x.useState(!1),g=y=>{var S;const w=(S=y.target.files)==null?void 0:S[0];w&&e?.(w),d(Date.now())},m=y=>{var S;b(y);const w=(S=y.dataTransfer.files)==null?void 0:S[0];w&&e?.(w),d(Date.now())},v=y=>{y.preventDefault(),p(!0)},b=y=>{y.preventDefault(),p(!1)};return f.jsxs("label",{className:_("relative",o),htmlFor:n,style:r,onDragEnter:v,onDragLeave:b,onDragOver:v,onDrop:m,...c,children:[f.jsx("div",{className:_({"absolute inset-1 rounded":!0,"border-2 border-dashed border-grey-400/25":h},h&&[a])}),f.jsx("input",{ref:s||null,accept:l,id:n,type:"file",hidden:!0,onChange:g},u),typeof t=="string"?f.jsx("div",{className:i?"":"inline-flex h-[34px] cursor-pointer items-center justify-center rounded px-4 text-sm font-semibold hover:bg-grey-100 dark:text-white dark:hover:bg-grey-900",children:t}):t]})},MC=({title:n,grouped:e=!1,gap:t="md",margins:r="md",marginTop:i=!1,marginBottom:s=!0,className:o="",children:a})=>{let l=_("flex flex-col",t==="xs"&&"gap-4",t==="sm"&&"gap-6",t==="md"&&"gap-8",t==="lg"&&"gap-11");r||(r=t),s&&(l=_(l,r==="sm"&&"mb-7",r==="md"&&"mb-10",r==="lg"&&"mb-12")),i&&(l=_(l,r==="sm"&&"mt-7",r==="md"&&"mt-10",r==="lg"&&"mt-12")),e&&(l=_(l,"rounded-sm border border-grey-200 p-4 md:p-7 dark:border-grey-900"));const c=_(e?"mb-3":"mb-4");return e||n?f.jsxs("div",{className:o,children:[n&&f.jsx(ft,{className:c,level:5,children:n}),f.jsx("div",{className:l,children:a})]}):f.jsx("div",{className:_(l,o),children:a})},Ob=({color:n="grey",children:e,className:t})=>{const r=_("relative overflow-hidden rounded-sm p-2",n==="grey"&&"text-black",n==="blue"&&"text-blue",n==="green"&&"text-green",n==="yellow"&&"text-yellow-600",n==="red"&&"text-red","after:pointer-events-none after:absolute after:inset-0 after:block after:opacity-10 after:content-['']",n==="grey"&&"after:bg-grey-500",n==="blue"&&"after:bg-blue",n==="green"&&"after:bg-green",n==="yellow"&&"after:bg-yellow",n==="red"&&"after:bg-red",t);return f.jsx("div",{className:r,children:e})};var IC=Object.defineProperty,EC=(n,e,t)=>e in n?IC(n,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):n[e]=t,DC=(n,e,t)=>EC(n,e+"",t);class Tb extends Y.Component{constructor(e){super(e),DC(this,"state",{hasError:!1})}static getDerivedStateFromError(){return{hasError:!0}}componentDidCatch(e,t){l2(r=>{r.setTag("adminx_settings_component",t.componentStack),Ss(e)}),console.error(e),console.error("In component:",t.componentStack)}render(){return this.state.hasError?f.jsxs(Ob,{color:"red",children:["An error occurred loading ",this.props.name,". Please refresh and try again."]}):this.props.children}}const ke=(n,e)=>function(r){return f.jsx(Tb,{name:e,children:f.jsx(n,{...r})})},RC=function(n){let e="pending",t;const r=n().then(s=>{e="success",t=s},s=>{e="error",t=s});return{read:()=>{switch(e){case"pending":throw r;case"error":throw t;default:return t}}}},OC=({editor:n,onBlur:e,placeholder:t,nodes:r,emojiPicker:i=!0,darkMode:s=!1,singleParagraph:o=!1,children:a,initialEditorState:l,onChange:c})=>{const u=x.useCallback(b=>{var y;try{Ss({error:b,tags:{lexical:!0},contexts:{koenig:{version:(y=window["@tryghost/koenig-lexical"])==null?void 0:y.version}}})}catch(S){console.error(S)}console.error(b)},[]),{setFocusState:d}=Zi(),h=()=>{e&&e(),d(!1)},p=()=>{d(!0)},g=x.useMemo(()=>new Proxy({},{get:(b,y)=>n.read()[y]}),[n]),m={DEFAULT_NODES:g.DEFAULT_TRANSFORMERS,BASIC_NODES:g.BASIC_TRANSFORMERS,MINIMAL_NODES:g.MINIMAL_TRANSFORMERS},v=r||"DEFAULT_NODES";return f.jsx(g.KoenigComposer,{darkMode:s,initialEditorState:l,nodes:g[v],onError:u,children:f.jsxs(g.KoenigComposableEditor,{className:"koenig-lexical koenig-lexical-editor-input",isSnippetsEnabled:!1,markdownTransformers:m[v],placeholderClassName:"koenig-lexical-editor-input-placeholder line-clamp-1",placeholderText:t,singleParagraph:o,onBlur:h,onChange:c,onFocus:p,children:[a(g),i?f.jsx(g.EmojiPickerPlugin,{}):null]})})},TC=({className:n,children:e,initialEditorState:t,onChange:r,...i})=>{const{fetchKoenigLexical:s,darkMode:o}=Rb(),a=x.useMemo(()=>RC(s),[s]);return f.jsx("div",{className:n||"w-full",children:f.jsx("div",{className:"koenig-react-editor w-full [&_*]:!font-inherit [&_*]:!text-inherit",children:f.jsx(Tb,{name:"editor",children:f.jsx(x.Suspense,{fallback:f.jsx("p",{className:"koenig-react-editor-loading",children:"Loading editor..."}),children:f.jsx(OC,{...i,darkMode:o,editor:a,initialEditorState:t,onChange:r,children:e})})})})})},ep=({id:n,children:e,width:t="100%",height:r="120px",imageURL:i,imageFit:s="cover",imageContainerClassName:o,imageClassName:a,fileUploadClassName:l,fileUploadProps:c,deleteButtonClassName:u,deleteButtonContent:d,deleteButtonUnstyled:h=!1,imageBWCheckedBg:p=!1,unstyled:g=!1,onUpload:m,onDelete:v,onImageClick:b,pintura:y,editButtonClassName:S,editButtonContent:w,editButtonUnstyled:C=!1,buttonContainerClassName:k,unsplashButtonClassName:A,unsplashButtonUnstyled:I=!1,unsplashButtonContent:D,unsplashEnabled:R,openUnsplash:T})=>{if(g||(o=_("group relative flex justify-center",o),a=_(s==="cover"&&"object-cover",s==="contain"&&"object-contain",s==="fill"&&"object-fill",s==="scale-down"&&"object-scale-down",s==="none"&&"object-scale-down",a),l=_("flex cursor-pointer items-center justify-center rounded border border-grey-100 bg-grey-75 p-3 text-sm font-semibold text-grey-800 hover:text-black dark:border-grey-900 dark:bg-grey-900 dark:text-grey-400",l),h||(u=_("absolute right-4 top-4 flex h-8 w-8 cursor-pointer items-center justify-center rounded bg-[rgba(0,0,0,0.75)] text-white hover:bg-black group-hover:!visible md:invisible",u)),C||(S=_("absolute right-16 top-4 flex h-8 w-8 cursor-pointer items-center justify-center rounded bg-[rgba(0,0,0,0.75)] text-white hover:bg-black group-hover:!visible md:invisible",S)),I||(A=_("absolute right-16 top-4 flex h-8 w-8 cursor-pointer items-center justify-center rounded bg-[rgba(255,255,255)] text-white",A))),d=d||f.jsx(ve,{colorClass:"text-white",name:"trash",size:"sm"}),w=w||f.jsx(ve,{colorClass:"text-white",name:"pen",size:"sm"}),D=D||f.jsx(ve,{colorClass:"text-black",name:"unsplash-logo",size:"sm"}),i){let N=f.jsxs("div",{className:o,style:{width:g?"":t,height:g?"":r},children:[f.jsx("img",{alt:"",className:a,id:n,src:i,style:{width:g?"":t||"100%",height:g?"":r||"auto"},onClick:b}),f.jsxs("div",{className:k,children:[y?.isEnabled&&y?.openEditor&&f.jsx("button",{className:S,type:"button",onClick:y.openEditor,children:w}),f.jsx("button",{className:u,type:"button",onClick:v,children:d})]})]});if(p){const P="#d9d9d9";N=f.jsx("div",{style:{backgroundImage:`
|
|
3
3
|
linear-gradient(45deg, ${P} 25%, transparent 25%),
|
|
4
4
|
linear-gradient(45deg, transparent 75%, ${P} 75%),
|
|
5
5
|
linear-gradient(45deg, transparent 75%, ${P} 75%),
|
|
@@ -23,7 +23,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
23
23
|
`,i=n.state.doc.line(i.number+(t?1:-1)),s=n.bidiSpans(i),c=B.cursor(t?i.from:i.to)}if(l){if(!l(u))return a}else{if(!r)return c;l=r(u)}a=c}}function kO(n,e,t){let r=n.state.charCategorizer(e),i=r(t);return s=>{let o=r(s);return i==ze.Space&&(i=o),i==o}}function AO(n,e,t,r){let i=e.head,s=t?1:-1;if(i==(t?n.state.doc.length:0))return B.cursor(i,e.assoc);let o=e.goalColumn,a,l=n.contentDOM.getBoundingClientRect(),c=n.coordsAtPos(i),u=n.documentTop;if(c)o==null&&(o=c.left-l.left),a=s<0?c.top:c.bottom;else{let p=n.viewState.lineBlockAt(i);o==null&&(o=Math.min(l.right-l.left,n.defaultCharacterWidth*(i-p.from))),a=(s<0?p.top:p.bottom)+u}let d=l.left+o,h=r??n.viewState.heightOracle.textHeight>>1;for(let p=0;;p+=10){let g=a+(h+p)*s,m=ay(n,{x:d,y:g},!1,s);if(g<l.top||g>l.bottom||(s<0?m<i:m>i))return B.cursor(m,e.assoc,void 0,o)}}function Kl(n,e,t){for(;;){let r=0;for(let i of n)i.between(e-1,e+1,(s,o,a)=>{if(e>s&&e<o){let l=r||t||(e-s<o-e?-1:1);e=l<0?s:o,r=l}});if(!r)return e}}function ed(n,e,t){let r=Kl(n.state.facet(bh).map(i=>i(n)),t.from,e.head>t.from?-1:1);return r==t.from?t:B.cursor(r,r<t.from?1:-1)}class MO{setSelectionOrigin(e){this.lastSelectionOrigin=e,this.lastSelectionTime=Date.now()}constructor(e){this.lastKeyCode=0,this.lastKeyTime=0,this.lastTouchTime=0,this.lastFocusTime=0,this.lastScrollTop=0,this.lastScrollLeft=0,this.chromeScrollHack=-1,this.pendingIOSKey=void 0,this.lastSelectionOrigin=null,this.lastSelectionTime=0,this.lastEscPress=0,this.lastContextMenu=0,this.scrollHandlers=[],this.registeredEvents=[],this.customHandlers=[],this.composing=-1,this.compositionFirstChange=null,this.compositionEndedAt=0,this.compositionPendingKey=!1,this.compositionPendingChange=!1,this.mouseSelection=null;let t=(r,i)=>{this.ignoreDuringComposition(i)||i.type=="keydown"&&this.keydown(e,i)||(this.mustFlushObserver(i)&&e.observer.forceFlush(),this.runCustomHandlers(i.type,e,i)?i.preventDefault():r(e,i))};for(let r in rt){let i=rt[r];e.contentDOM.addEventListener(r,s=>{gm(e,s)&&t(i,s)},gf[r]),this.registeredEvents.push(r)}e.scrollDOM.addEventListener("mousedown",r=>{if(r.target==e.scrollDOM&&r.clientY>e.contentDOM.getBoundingClientRect().bottom&&(t(rt.mousedown,r),!r.defaultPrevented&&r.button==2)){let i=e.contentDOM.style.minHeight;e.contentDOM.style.minHeight="100%",setTimeout(()=>e.contentDOM.style.minHeight=i,200)}}),e.scrollDOM.addEventListener("drop",r=>{r.target==e.scrollDOM&&r.clientY>e.contentDOM.getBoundingClientRect().bottom&&t(rt.drop,r)}),X.chrome&&X.chrome_version==102&&e.scrollDOM.addEventListener("wheel",()=>{this.chromeScrollHack<0?e.contentDOM.style.pointerEvents="none":window.clearTimeout(this.chromeScrollHack),this.chromeScrollHack=setTimeout(()=>{this.chromeScrollHack=-1,e.contentDOM.style.pointerEvents=""},100)},{passive:!0}),this.notifiedFocused=e.hasFocus,X.safari&&e.contentDOM.addEventListener("input",()=>null)}ensureHandlers(e,t){var r;let i;this.customHandlers=[];for(let s of t)if(i=(r=s.update(e).spec)===null||r===void 0?void 0:r.domEventHandlers){this.customHandlers.push({plugin:s.value,handlers:i});for(let o in i)this.registeredEvents.indexOf(o)<0&&o!="scroll"&&(this.registeredEvents.push(o),e.contentDOM.addEventListener(o,a=>{gm(e,a)&&this.runCustomHandlers(o,e,a)&&a.preventDefault()}))}}runCustomHandlers(e,t,r){for(let i of this.customHandlers){let s=i.handlers[e];if(s)try{if(s.call(i.plugin,r,t)||r.defaultPrevented)return!0}catch(o){pn(t.state,o)}}return!1}runScrollHandlers(e,t){this.lastScrollTop=e.scrollDOM.scrollTop,this.lastScrollLeft=e.scrollDOM.scrollLeft;for(let r of this.customHandlers){let i=r.handlers.scroll;if(i)try{i.call(r.plugin,t,e)}catch(s){pn(e.state,s)}}}keydown(e,t){if(this.lastKeyCode=t.keyCode,this.lastKeyTime=Date.now(),t.keyCode==9&&Date.now()<this.lastEscPress+2e3)return!0;if(t.keyCode!=27&&cy.indexOf(t.keyCode)<0&&(e.inputState.lastEscPress=0),X.android&&X.chrome&&!t.synthetic&&(t.keyCode==13||t.keyCode==8))return e.observer.delayAndroidKey(t.key,t.keyCode),!0;let r;return X.ios&&!t.synthetic&&!t.altKey&&!t.metaKey&&((r=ly.find(i=>i.keyCode==t.keyCode))&&!t.ctrlKey||IO.indexOf(t.key)>-1&&t.ctrlKey&&!t.shiftKey)?(this.pendingIOSKey=r||t,setTimeout(()=>this.flushIOSKey(e),250),!0):!1}flushIOSKey(e){let t=this.pendingIOSKey;return t?(this.pendingIOSKey=void 0,_i(e.contentDOM,t.key,t.keyCode)):!1}ignoreDuringComposition(e){return/^key/.test(e.type)?this.composing>0?!0:X.safari&&!X.ios&&this.compositionPendingKey&&Date.now()-this.compositionEndedAt<100?(this.compositionPendingKey=!1,!0):!1:!1}mustFlushObserver(e){return e.type=="keydown"&&e.keyCode!=229}startMouseSelection(e){this.mouseSelection&&this.mouseSelection.destroy(),this.mouseSelection=e}update(e){this.mouseSelection&&this.mouseSelection.update(e),e.transactions.length&&(this.lastKeyCode=this.lastSelectionTime=0)}destroy(){this.mouseSelection&&this.mouseSelection.destroy()}}const ly=[{key:"Backspace",keyCode:8,inputType:"deleteContentBackward"},{key:"Enter",keyCode:13,inputType:"insertParagraph"},{key:"Enter",keyCode:13,inputType:"insertLineBreak"},{key:"Delete",keyCode:46,inputType:"deleteContentForward"}],IO="dthko",cy=[16,17,18,20,91,92,224,225],_o=6;function jo(n){return Math.max(0,n)*.7+8}function EO(n,e){return Math.max(Math.abs(n.clientX-e.clientX),Math.abs(n.clientY-e.clientY))}class DO{constructor(e,t,r,i){this.view=e,this.startEvent=t,this.style=r,this.mustSelect=i,this.scrollSpeed={x:0,y:0},this.scrolling=-1,this.lastEvent=t,this.scrollParent=qR(e.contentDOM),this.atoms=e.state.facet(bh).map(o=>o(e));let s=e.contentDOM.ownerDocument;s.addEventListener("mousemove",this.move=this.move.bind(this)),s.addEventListener("mouseup",this.up=this.up.bind(this)),this.extend=t.shiftKey,this.multiple=e.state.facet(ye.allowMultipleSelections)&&RO(e,t),this.dragging=TO(e,t)&&hy(t)==1?null:!1}start(e){this.dragging===!1&&(e.preventDefault(),this.select(e))}move(e){var t;if(e.buttons==0)return this.destroy();if(this.dragging||this.dragging==null&&EO(this.startEvent,e)<10)return;this.select(this.lastEvent=e);let r=0,i=0,s=((t=this.scrollParent)===null||t===void 0?void 0:t.getBoundingClientRect())||{left:0,top:0,right:this.view.win.innerWidth,bottom:this.view.win.innerHeight},o=Q1(this.view);e.clientX-o.left<=s.left+_o?r=-jo(s.left-e.clientX):e.clientX+o.right>=s.right-_o&&(r=jo(e.clientX-s.right)),e.clientY-o.top<=s.top+_o?i=-jo(s.top-e.clientY):e.clientY+o.bottom>=s.bottom-_o&&(i=jo(e.clientY-s.bottom)),this.setScrollSpeed(r,i)}up(e){this.dragging==null&&this.select(this.lastEvent),this.dragging||e.preventDefault(),this.destroy()}destroy(){this.setScrollSpeed(0,0);let e=this.view.contentDOM.ownerDocument;e.removeEventListener("mousemove",this.move),e.removeEventListener("mouseup",this.up),this.view.inputState.mouseSelection=null}setScrollSpeed(e,t){this.scrollSpeed={x:e,y:t},e||t?this.scrolling<0&&(this.scrolling=setInterval(()=>this.scroll(),50)):this.scrolling>-1&&(clearInterval(this.scrolling),this.scrolling=-1)}scroll(){this.scrollParent?(this.scrollParent.scrollLeft+=this.scrollSpeed.x,this.scrollParent.scrollTop+=this.scrollSpeed.y):this.view.win.scrollBy(this.scrollSpeed.x,this.scrollSpeed.y),this.dragging===!1&&this.select(this.lastEvent)}skipAtoms(e){let t=null;for(let r=0;r<e.ranges.length;r++){let i=e.ranges[r],s=null;if(i.empty){let o=Kl(this.atoms,i.from,0);o!=i.from&&(s=B.cursor(o,-1))}else{let o=Kl(this.atoms,i.from,-1),a=Kl(this.atoms,i.to,1);(o!=i.from||a!=i.to)&&(s=B.range(i.from==i.anchor?o:a,i.from==i.head?o:a))}s&&(t||(t=e.ranges.slice()),t[r]=s)}return t?B.create(t,e.mainIndex):e}select(e){let{view:t}=this,r=this.skipAtoms(this.style.get(e,this.extend,this.multiple));(this.mustSelect||!r.eq(t.state.selection)||r.main.assoc!=t.state.selection.main.assoc&&this.dragging===!1)&&this.view.dispatch({selection:r,userEvent:"select.pointer"}),this.mustSelect=!1}update(e){e.docChanged&&this.dragging&&(this.dragging=this.dragging.map(e.changes)),this.style.update(e)&&setTimeout(()=>this.select(this.lastEvent),20)}}function RO(n,e){let t=n.state.facet(V1);return t.length?t[0](e):X.mac?e.metaKey:e.ctrlKey}function OO(n,e){let t=n.state.facet(U1);return t.length?t[0](e):X.mac?!e.altKey:!e.ctrlKey}function TO(n,e){let{main:t}=n.state.selection;if(t.empty)return!1;let r=yc(n.root);if(!r||r.rangeCount==0)return!0;let i=r.getRangeAt(0).getClientRects();for(let s=0;s<i.length;s++){let o=i[s];if(o.left<=e.clientX&&o.right>=e.clientX&&o.top<=e.clientY&&o.bottom>=e.clientY)return!0}return!1}function gm(n,e){if(!e.bubbles)return!0;if(e.defaultPrevented)return!1;for(let t=e.target,r;t!=n.contentDOM;t=t.parentNode)if(!t||t.nodeType==11||(r=Fe.get(t))&&r.ignoreEvent(e))return!1;return!0}const rt=Object.create(null),gf=Object.create(null),uy=X.ie&&X.ie_version<15||X.ios&&X.webkit_version<604;function NO(n){let e=n.dom.parentNode;if(!e)return;let t=e.appendChild(document.createElement("textarea"));t.style.cssText="position: fixed; left: -10000px; top: 10px",t.focus(),setTimeout(()=>{n.focus(),t.remove(),dy(n,t.value)},50)}function dy(n,e){let{state:t}=n,r,i=1,s=t.toText(e),o=s.lines==t.selection.ranges.length;if(vf!=null&&t.selection.ranges.every(l=>l.empty)&&vf==s.toString()){let l=-1;r=t.changeByRange(c=>{let u=t.doc.lineAt(c.from);if(u.from==l)return{range:c};l=u.from;let d=t.toText((o?s.line(i++).text:e)+t.lineBreak);return{changes:{from:u.from,insert:d},range:B.cursor(c.from+d.length)}})}else o?r=t.changeByRange(l=>{let c=s.line(i++);return{changes:{from:l.from,to:l.to,insert:c.text},range:B.cursor(l.from+c.length)}}):r=t.replaceSelection(s);n.dispatch(r,{userEvent:"input.paste",scrollIntoView:!0})}rt.keydown=(n,e)=>{n.inputState.setSelectionOrigin("select"),e.keyCode==27&&(n.inputState.lastEscPress=Date.now())};rt.touchstart=(n,e)=>{n.inputState.lastTouchTime=Date.now(),n.inputState.setSelectionOrigin("select.pointer")};rt.touchmove=n=>{n.inputState.setSelectionOrigin("select.pointer")};gf.touchstart=gf.touchmove={passive:!0};rt.mousedown=(n,e)=>{if(n.observer.flush(),n.inputState.lastTouchTime>Date.now()-2e3)return;let t=null;for(let r of n.state.facet(z1))if(t=r(n,e),t)break;if(!t&&e.button==0&&(t=_O(n,e)),t){let r=!n.hasFocus;n.inputState.startMouseSelection(new DO(n,e,t,r)),r&&n.observer.ignore(()=>D1(n.contentDOM)),n.inputState.mouseSelection&&n.inputState.mouseSelection.start(e)}};function vm(n,e,t,r){if(r==1)return B.cursor(e,t);if(r==2)return bO(n.state,e,t);{let i=jt.find(n.docView,e),s=n.state.doc.lineAt(i?i.posAtEnd:e),o=i?i.posAtStart:s.from,a=i?i.posAtEnd:s.to;return a<n.state.doc.length&&a==s.to&&a++,B.range(o,a)}}let fy=(n,e)=>n>=e.top&&n<=e.bottom,bm=(n,e,t)=>fy(e,t)&&n>=t.left&&n<=t.right;function PO(n,e,t,r){let i=jt.find(n.docView,e);if(!i)return 1;let s=e-i.posAtStart;if(s==0)return 1;if(s==i.length)return-1;let o=i.coordsAt(s,-1);if(o&&bm(t,r,o))return-1;let a=i.coordsAt(s,1);return a&&bm(t,r,a)?1:o&&fy(r,o)?-1:1}function xm(n,e){let t=n.posAtCoords({x:e.clientX,y:e.clientY},!1);return{pos:t,bias:PO(n,t,e.clientX,e.clientY)}}const LO=X.ie&&X.ie_version<=11;let ym=null,wm=0,Sm=0;function hy(n){if(!LO)return n.detail;let e=ym,t=Sm;return ym=n,Sm=Date.now(),wm=!e||t>Date.now()-400&&Math.abs(e.clientX-n.clientX)<2&&Math.abs(e.clientY-n.clientY)<2?(wm+1)%3:1}function _O(n,e){let t=xm(n,e),r=hy(e),i=n.state.selection;return{update(s){s.docChanged&&(t.pos=s.changes.mapPos(t.pos),i=i.map(s.changes))},get(s,o,a){let l=xm(n,s),c,u=vm(n,l.pos,l.bias,r);if(t.pos!=l.pos&&!o){let d=vm(n,t.pos,t.bias,r),h=Math.min(d.from,u.from),p=Math.max(d.to,u.to);u=h<u.from?B.range(h,p):B.range(p,h)}return o?i.replaceRange(i.main.extend(u.from,u.to)):a&&r==1&&i.ranges.length>1&&(c=jO(i,l.pos))?c:a?i.addRange(u):B.create([u])}}}function jO(n,e){for(let t=0;t<n.ranges.length;t++){let{from:r,to:i}=n.ranges[t];if(r<=e&&i>=e)return B.create(n.ranges.slice(0,t).concat(n.ranges.slice(t+1)),n.mainIndex==t?0:n.mainIndex-(n.mainIndex>t?1:0))}return null}rt.dragstart=(n,e)=>{let{selection:{main:t}}=n.state,{mouseSelection:r}=n.inputState;r&&(r.dragging=t),e.dataTransfer&&(e.dataTransfer.setData("Text",n.state.sliceDoc(t.from,t.to)),e.dataTransfer.effectAllowed="copyMove")};function Cm(n,e,t,r){if(!t)return;let i=n.posAtCoords({x:e.clientX,y:e.clientY},!1);e.preventDefault();let{mouseSelection:s}=n.inputState,o=r&&s&&s.dragging&&OO(n,e)?{from:s.dragging.from,to:s.dragging.to}:null,a={from:i,insert:t},l=n.state.changes(o?[o,a]:a);n.focus(),n.dispatch({changes:l,selection:{anchor:l.mapPos(i,-1),head:l.mapPos(i,1)},userEvent:o?"move.drop":"input.drop"})}rt.drop=(n,e)=>{if(!e.dataTransfer)return;if(n.state.readOnly)return e.preventDefault();let t=e.dataTransfer.files;if(t&&t.length){e.preventDefault();let r=Array(t.length),i=0,s=()=>{++i==t.length&&Cm(n,e,r.filter(o=>o!=null).join(n.state.lineBreak),!1)};for(let o=0;o<t.length;o++){let a=new FileReader;a.onerror=s,a.onload=()=>{/[\x00-\x08\x0e-\x1f]{2}/.test(a.result)||(r[o]=a.result),s()},a.readAsText(t[o])}}else Cm(n,e,e.dataTransfer.getData("Text"),!0)};rt.paste=(n,e)=>{if(n.state.readOnly)return e.preventDefault();n.observer.flush();let t=uy?null:e.clipboardData;t?(dy(n,t.getData("text/plain")||t.getData("text/uri-text")),e.preventDefault()):NO(n)};function BO(n,e){let t=n.dom.parentNode;if(!t)return;let r=t.appendChild(document.createElement("textarea"));r.style.cssText="position: fixed; left: -10000px; top: 10px",r.value=e,r.focus(),r.selectionEnd=e.length,r.selectionStart=0,setTimeout(()=>{r.remove(),n.focus()},50)}function $O(n){let e=[],t=[],r=!1;for(let i of n.selection.ranges)i.empty||(e.push(n.sliceDoc(i.from,i.to)),t.push(i));if(!e.length){let i=-1;for(let{from:s}of n.selection.ranges){let o=n.doc.lineAt(s);o.number>i&&(e.push(o.text),t.push({from:o.from,to:Math.min(n.doc.length,o.to+1)})),i=o.number}r=!0}return{text:e.join(n.lineBreak),ranges:t,linewise:r}}let vf=null;rt.copy=rt.cut=(n,e)=>{let{text:t,ranges:r,linewise:i}=$O(n.state);if(!t&&!i)return;vf=i?t:null;let s=uy?null:e.clipboardData;s?(e.preventDefault(),s.clearData(),s.setData("text/plain",t)):BO(n,t),e.type=="cut"&&!n.state.readOnly&&n.dispatch({changes:r,scrollIntoView:!0,userEvent:"delete.cut"})};const py=Kn.define();function my(n,e){let t=[];for(let r of n.facet(G1)){let i=r(n,e);i&&t.push(i)}return t?n.update({effects:t,annotations:py.of(!0)}):null}function gy(n){setTimeout(()=>{let e=n.hasFocus;if(e!=n.inputState.notifiedFocused){let t=my(n.state,e);t?n.dispatch(t):n.update([])}},10)}rt.focus=n=>{n.inputState.lastFocusTime=Date.now(),!n.scrollDOM.scrollTop&&(n.inputState.lastScrollTop||n.inputState.lastScrollLeft)&&(n.scrollDOM.scrollTop=n.inputState.lastScrollTop,n.scrollDOM.scrollLeft=n.inputState.lastScrollLeft),gy(n)};rt.blur=n=>{n.observer.clearSelectionRange(),gy(n)};rt.compositionstart=rt.compositionupdate=n=>{n.inputState.compositionFirstChange==null&&(n.inputState.compositionFirstChange=!0),n.inputState.composing<0&&(n.inputState.composing=0)};rt.compositionend=n=>{n.inputState.composing=-1,n.inputState.compositionEndedAt=Date.now(),n.inputState.compositionPendingKey=!0,n.inputState.compositionPendingChange=n.observer.pendingRecords().length>0,n.inputState.compositionFirstChange=null,X.chrome&&X.android?n.observer.flushSoon():n.inputState.compositionPendingChange?Promise.resolve().then(()=>n.observer.flush()):setTimeout(()=>{n.inputState.composing<0&&n.docView.hasComposition&&n.update([])},50)};rt.contextmenu=n=>{n.inputState.lastContextMenu=Date.now()};rt.beforeinput=(n,e)=>{var t;let r;if(X.chrome&&X.android&&(r=ly.find(i=>i.inputType==e.inputType))&&(n.observer.delayAndroidKey(r.key,r.keyCode),r.key=="Backspace"||r.key=="Delete")){let i=((t=window.visualViewport)===null||t===void 0?void 0:t.height)||0;setTimeout(()=>{var s;(((s=window.visualViewport)===null||s===void 0?void 0:s.height)||0)>i+10&&n.hasFocus&&(n.contentDOM.blur(),n.focus())},100)}};const km=["pre-wrap","normal","pre-line","break-spaces"];class FO{constructor(e){this.lineWrapping=e,this.doc=Ce.empty,this.heightSamples={},this.lineHeight=14,this.charWidth=7,this.textHeight=14,this.lineLength=30,this.heightChanged=!1}heightForGap(e,t){let r=this.doc.lineAt(t).number-this.doc.lineAt(e).number+1;return this.lineWrapping&&(r+=Math.max(0,Math.ceil((t-e-r*this.lineLength*.5)/this.lineLength))),this.lineHeight*r}heightForLine(e){return this.lineWrapping?(1+Math.max(0,Math.ceil((e-this.lineLength)/(this.lineLength-5))))*this.lineHeight:this.lineHeight}setDoc(e){return this.doc=e,this}mustRefreshForWrapping(e){return km.indexOf(e)>-1!=this.lineWrapping}mustRefreshForHeights(e){let t=!1;for(let r=0;r<e.length;r++){let i=e[r];i<0?r++:this.heightSamples[Math.floor(i*10)]||(t=!0,this.heightSamples[Math.floor(i*10)]=!0)}return t}refresh(e,t,r,i,s,o){let a=km.indexOf(e)>-1,l=Math.round(t)!=Math.round(this.lineHeight)||this.lineWrapping!=a;if(this.lineWrapping=a,this.lineHeight=t,this.charWidth=r,this.textHeight=i,this.lineLength=s,l){this.heightSamples={};for(let c=0;c<o.length;c++){let u=o[c];u<0?c++:this.heightSamples[Math.floor(u*10)]=!0}}return l}}class HO{constructor(e,t){this.from=e,this.heights=t,this.index=0}get more(){return this.index<this.heights.length}}class $n{constructor(e,t,r,i,s){this.from=e,this.length=t,this.top=r,this.height=i,this._content=s}get type(){return typeof this._content=="number"?Ge.Text:Array.isArray(this._content)?this._content:this._content.type}get to(){return this.from+this.length}get bottom(){return this.top+this.height}get widget(){return this._content instanceof Er?this._content.widget:null}get widgetLineBreaks(){return typeof this._content=="number"?this._content:0}join(e){let t=(Array.isArray(this._content)?this._content:[this]).concat(Array.isArray(e._content)?e._content:[e]);return new $n(this.from,this.length+e.length,this.top,this.height+e.height,t)}}var Ve=(function(n){return n[n.ByPos=0]="ByPos",n[n.ByHeight=1]="ByHeight",n[n.ByPosNoHeight=2]="ByPosNoHeight",n})(Ve||(Ve={}));const Zl=.001;class $t{constructor(e,t,r=2){this.length=e,this.height=t,this.flags=r}get outdated(){return(this.flags&2)>0}set outdated(e){this.flags=(e?2:0)|this.flags&-3}setHeight(e,t){this.height!=t&&(Math.abs(this.height-t)>Zl&&(e.heightChanged=!0),this.height=t)}replace(e,t,r){return $t.of(r)}decomposeLeft(e,t){t.push(this)}decomposeRight(e,t){t.push(this)}applyChanges(e,t,r,i){let s=this,o=r.doc;for(let a=i.length-1;a>=0;a--){let{fromA:l,toA:c,fromB:u,toB:d}=i[a],h=s.lineAt(l,Ve.ByPosNoHeight,r.setDoc(t),0,0),p=h.to>=c?h:s.lineAt(c,Ve.ByPosNoHeight,r,0,0);for(d+=p.to-c,c=p.to;a>0&&h.from<=i[a-1].toA;)l=i[a-1].fromA,u=i[a-1].fromB,a--,l<h.from&&(h=s.lineAt(l,Ve.ByPosNoHeight,r,0,0));u+=h.from-l,l=h.from;let g=xh.build(r.setDoc(o),e,u,d);s=s.replace(l,c,g)}return s.updateHeight(r,0)}static empty(){return new tn(0,0)}static of(e){if(e.length==1)return e[0];let t=0,r=e.length,i=0,s=0;for(;;)if(t==r)if(i>s*2){let a=e[t-1];a.break?e.splice(--t,1,a.left,null,a.right):e.splice(--t,1,a.left,a.right),r+=1+a.break,i-=a.size}else if(s>i*2){let a=e[r];a.break?e.splice(r,1,a.left,null,a.right):e.splice(r,1,a.left,a.right),r+=2+a.break,s-=a.size}else break;else if(i<s){let a=e[t++];a&&(i+=a.size)}else{let a=e[--r];a&&(s+=a.size)}let o=0;return e[t-1]==null?(o=1,t--):e[t]==null&&(o=1,r++),new VO($t.of(e.slice(0,t)),o,$t.of(e.slice(r)))}}$t.prototype.size=1;class vy extends $t{constructor(e,t,r){super(e,t),this.deco=r}blockAt(e,t,r,i){return new $n(i,this.length,r,this.height,this.deco||0)}lineAt(e,t,r,i,s){return this.blockAt(0,r,i,s)}forEachLine(e,t,r,i,s,o){e<=s+this.length&&t>=s&&o(this.blockAt(0,r,i,s))}updateHeight(e,t=0,r=!1,i){return i&&i.from<=t&&i.more&&this.setHeight(e,i.heights[i.index++]),this.outdated=!1,this}toString(){return`block(${this.length})`}}class tn extends vy{constructor(e,t){super(e,t,null),this.collapsed=0,this.widgetHeight=0,this.breaks=0}blockAt(e,t,r,i){return new $n(i,this.length,r,this.height,this.breaks)}replace(e,t,r){let i=r[0];return r.length==1&&(i instanceof tn||i instanceof yt&&i.flags&4)&&Math.abs(this.length-i.length)<10?(i instanceof yt?i=new tn(i.length,this.height):i.height=this.height,this.outdated||(i.outdated=!1),i):$t.of(r)}updateHeight(e,t=0,r=!1,i){return i&&i.from<=t&&i.more?this.setHeight(e,i.heights[i.index++]):(r||this.outdated)&&this.setHeight(e,Math.max(this.widgetHeight,e.heightForLine(this.length-this.collapsed))+this.breaks*e.lineHeight),this.outdated=!1,this}toString(){return`line(${this.length}${this.collapsed?-this.collapsed:""}${this.widgetHeight?":"+this.widgetHeight:""})`}}class yt extends $t{constructor(e){super(e,0)}heightMetrics(e,t){let r=e.doc.lineAt(t).number,i=e.doc.lineAt(t+this.length).number,s=i-r+1,o,a=0;if(e.lineWrapping){let l=Math.min(this.height,e.lineHeight*s);o=l/s,this.length>s+1&&(a=(this.height-l)/(this.length-s-1))}else o=this.height/s;return{firstLine:r,lastLine:i,perLine:o,perChar:a}}blockAt(e,t,r,i){let{firstLine:s,lastLine:o,perLine:a,perChar:l}=this.heightMetrics(t,i);if(t.lineWrapping){let c=i+Math.round(Math.max(0,Math.min(1,(e-r)/this.height))*this.length),u=t.doc.lineAt(c),d=a+u.length*l,h=Math.max(r,e-d/2);return new $n(u.from,u.length,h,d,0)}else{let c=Math.max(0,Math.min(o-s,Math.floor((e-r)/a))),{from:u,length:d}=t.doc.line(s+c);return new $n(u,d,r+a*c,a,0)}}lineAt(e,t,r,i,s){if(t==Ve.ByHeight)return this.blockAt(e,r,i,s);if(t==Ve.ByPosNoHeight){let{from:p,to:g}=r.doc.lineAt(e);return new $n(p,g-p,0,0,0)}let{firstLine:o,perLine:a,perChar:l}=this.heightMetrics(r,s),c=r.doc.lineAt(e),u=a+c.length*l,d=c.number-o,h=i+a*d+l*(c.from-s-d);return new $n(c.from,c.length,Math.max(i,Math.min(h,i+this.height-u)),u,0)}forEachLine(e,t,r,i,s,o){e=Math.max(e,s),t=Math.min(t,s+this.length);let{firstLine:a,perLine:l,perChar:c}=this.heightMetrics(r,s);for(let u=e,d=i;u<=t;){let h=r.doc.lineAt(u);if(u==e){let g=h.number-a;d+=l*g+c*(e-s-g)}let p=l+c*h.length;o(new $n(h.from,h.length,d,p,0)),d+=p,u=h.to+1}}replace(e,t,r){let i=this.length-t;if(i>0){let s=r[r.length-1];s instanceof yt?r[r.length-1]=new yt(s.length+i):r.push(null,new yt(i-1))}if(e>0){let s=r[0];s instanceof yt?r[0]=new yt(e+s.length):r.unshift(new yt(e-1),null)}return $t.of(r)}decomposeLeft(e,t){t.push(new yt(e-1),null)}decomposeRight(e,t){t.push(null,new yt(this.length-e-1))}updateHeight(e,t=0,r=!1,i){let s=t+this.length;if(i&&i.from<=t+this.length&&i.more){let o=[],a=Math.max(t,i.from),l=-1;for(i.from>t&&o.push(new yt(i.from-t-1).updateHeight(e,t));a<=s&&i.more;){let u=e.doc.lineAt(a).length;o.length&&o.push(null);let d=i.heights[i.index++];l==-1?l=d:Math.abs(d-l)>=Zl&&(l=-2);let h=new tn(u,d);h.outdated=!1,o.push(h),a+=u+1}a<=s&&o.push(null,new yt(s-a).updateHeight(e,a));let c=$t.of(o);return(l<0||Math.abs(c.height-this.height)>=Zl||Math.abs(l-this.heightMetrics(e,t).perLine)>=Zl)&&(e.heightChanged=!0),c}else(r||this.outdated)&&(this.setHeight(e,e.heightForGap(t,t+this.length)),this.outdated=!1);return this}toString(){return`gap(${this.length})`}}class VO extends $t{constructor(e,t,r){super(e.length+t+r.length,e.height+r.height,t|(e.outdated||r.outdated?2:0)),this.left=e,this.right=r,this.size=e.size+r.size}get break(){return this.flags&1}blockAt(e,t,r,i){let s=r+this.left.height;return e<s?this.left.blockAt(e,t,r,i):this.right.blockAt(e,t,s,i+this.left.length+this.break)}lineAt(e,t,r,i,s){let o=i+this.left.height,a=s+this.left.length+this.break,l=t==Ve.ByHeight?e<o:e<a,c=l?this.left.lineAt(e,t,r,i,s):this.right.lineAt(e,t,r,o,a);if(this.break||(l?c.to<a:c.from>a))return c;let u=t==Ve.ByPosNoHeight?Ve.ByPosNoHeight:Ve.ByPos;return l?c.join(this.right.lineAt(a,u,r,o,a)):this.left.lineAt(a,u,r,i,s).join(c)}forEachLine(e,t,r,i,s,o){let a=i+this.left.height,l=s+this.left.length+this.break;if(this.break)e<l&&this.left.forEachLine(e,t,r,i,s,o),t>=l&&this.right.forEachLine(e,t,r,a,l,o);else{let c=this.lineAt(l,Ve.ByPos,r,i,s);e<c.from&&this.left.forEachLine(e,c.from-1,r,i,s,o),c.to>=e&&c.from<=t&&o(c),t>c.to&&this.right.forEachLine(c.to+1,t,r,a,l,o)}}replace(e,t,r){let i=this.left.length+this.break;if(t<i)return this.balanced(this.left.replace(e,t,r),this.right);if(e>this.left.length)return this.balanced(this.left,this.right.replace(e-i,t-i,r));let s=[];e>0&&this.decomposeLeft(e,s);let o=s.length;for(let a of r)s.push(a);if(e>0&&Am(s,o-1),t<this.length){let a=s.length;this.decomposeRight(t,s),Am(s,a)}return $t.of(s)}decomposeLeft(e,t){let r=this.left.length;if(e<=r)return this.left.decomposeLeft(e,t);t.push(this.left),this.break&&(r++,e>=r&&t.push(null)),e>r&&this.right.decomposeLeft(e-r,t)}decomposeRight(e,t){let r=this.left.length,i=r+this.break;if(e>=i)return this.right.decomposeRight(e-i,t);e<r&&this.left.decomposeRight(e,t),this.break&&e<i&&t.push(null),t.push(this.right)}balanced(e,t){return e.size>2*t.size||t.size>2*e.size?$t.of(this.break?[e,null,t]:[e,t]):(this.left=e,this.right=t,this.height=e.height+t.height,this.outdated=e.outdated||t.outdated,this.size=e.size+t.size,this.length=e.length+this.break+t.length,this)}updateHeight(e,t=0,r=!1,i){let{left:s,right:o}=this,a=t+s.length+this.break,l=null;return i&&i.from<=t+s.length&&i.more?l=s=s.updateHeight(e,t,r,i):s.updateHeight(e,t,r),i&&i.from<=a+o.length&&i.more?l=o=o.updateHeight(e,a,r,i):o.updateHeight(e,a,r),l?this.balanced(s,o):(this.height=this.left.height+this.right.height,this.outdated=!1,this)}toString(){return this.left+(this.break?" ":"-")+this.right}}function Am(n,e){let t,r;n[e]==null&&(t=n[e-1])instanceof yt&&(r=n[e+1])instanceof yt&&n.splice(e-1,3,new yt(t.length+1+r.length))}const UO=5;class xh{constructor(e,t){this.pos=e,this.oracle=t,this.nodes=[],this.lineStart=-1,this.lineEnd=-1,this.covering=null,this.writtenTo=e}get isCovered(){return this.covering&&this.nodes[this.nodes.length-1]==this.covering}span(e,t){if(this.lineStart>-1){let r=Math.min(t,this.lineEnd),i=this.nodes[this.nodes.length-1];i instanceof tn?i.length+=r-this.pos:(r>this.pos||!this.isCovered)&&this.nodes.push(new tn(r-this.pos,-1)),this.writtenTo=r,t>r&&(this.nodes.push(null),this.writtenTo++,this.lineStart=-1)}this.pos=t}point(e,t,r){if(e<t||r.heightRelevant){let i=r.widget?r.widget.estimatedHeight:0,s=r.widget?r.widget.lineBreaks:0;i<0&&(i=this.oracle.lineHeight);let o=t-e;r.block?this.addBlock(new vy(o,i,r)):(o||s||i>=UO)&&this.addLineDeco(i,s,o)}else t>e&&this.span(e,t);this.lineEnd>-1&&this.lineEnd<this.pos&&(this.lineEnd=this.oracle.doc.lineAt(this.pos).to)}enterLine(){if(this.lineStart>-1)return;let{from:e,to:t}=this.oracle.doc.lineAt(this.pos);this.lineStart=e,this.lineEnd=t,this.writtenTo<e&&((this.writtenTo<e-1||this.nodes[this.nodes.length-1]==null)&&this.nodes.push(this.blankContent(this.writtenTo,e-1)),this.nodes.push(null)),this.pos>e&&this.nodes.push(new tn(this.pos-e,-1)),this.writtenTo=this.pos}blankContent(e,t){let r=new yt(t-e);return this.oracle.doc.lineAt(e).to==t&&(r.flags|=4),r}ensureLine(){this.enterLine();let e=this.nodes.length?this.nodes[this.nodes.length-1]:null;if(e instanceof tn)return e;let t=new tn(0,-1);return this.nodes.push(t),t}addBlock(e){var t;this.enterLine();let r=(t=e.deco)===null||t===void 0?void 0:t.type;r==Ge.WidgetAfter&&!this.isCovered&&this.ensureLine(),this.nodes.push(e),this.writtenTo=this.pos=this.pos+e.length,r!=Ge.WidgetBefore&&(this.covering=e)}addLineDeco(e,t,r){let i=this.ensureLine();i.length+=r,i.collapsed+=r,i.widgetHeight=Math.max(i.widgetHeight,e),i.breaks+=t,this.writtenTo=this.pos=this.pos+r}finish(e){let t=this.nodes.length==0?null:this.nodes[this.nodes.length-1];this.lineStart>-1&&!(t instanceof tn)&&!this.isCovered?this.nodes.push(new tn(0,-1)):(this.writtenTo<this.pos||t==null)&&this.nodes.push(this.blankContent(this.writtenTo,this.pos));let r=e;for(let i of this.nodes)i instanceof tn&&i.updateHeight(this.oracle,r),r+=i?i.length:1;return this.nodes}static build(e,t,r,i){let s=new xh(r,e);return Ne.spans(t,r,i,s,0),s.finish(r)}}function zO(n,e,t){let r=new WO;return Ne.compare(n,e,t,r,0),r.changes}class WO{constructor(){this.changes=[]}compareRange(){}comparePoint(e,t,r,i){(e<t||r&&r.heightRelevant||i&&i.heightRelevant)&&cf(e,t,this.changes,5)}}function qO(n,e){let t=n.getBoundingClientRect(),r=n.ownerDocument,i=r.defaultView||window,s=Math.max(0,t.left),o=Math.min(i.innerWidth,t.right),a=Math.max(0,t.top),l=Math.min(i.innerHeight,t.bottom);for(let c=n.parentNode;c&&c!=r.body;)if(c.nodeType==1){let u=c,d=window.getComputedStyle(u);if((u.scrollHeight>u.clientHeight||u.scrollWidth>u.clientWidth)&&d.overflow!="visible"){let h=u.getBoundingClientRect();s=Math.max(s,h.left),o=Math.min(o,h.right),a=Math.max(a,h.top),l=c==n.parentNode?h.bottom:Math.min(l,h.bottom)}c=d.position=="absolute"||d.position=="fixed"?u.offsetParent:u.parentNode}else if(c.nodeType==11)c=c.host;else break;return{left:s-t.left,right:Math.max(s,o)-t.left,top:a-(t.top+e),bottom:Math.max(a,l)-(t.top+e)}}function GO(n,e){let t=n.getBoundingClientRect();return{left:0,right:t.right-t.left,top:e,bottom:t.bottom-(t.top+e)}}class td{constructor(e,t,r){this.from=e,this.to=t,this.size=r}static same(e,t){if(e.length!=t.length)return!1;for(let r=0;r<e.length;r++){let i=e[r],s=t[r];if(i.from!=s.from||i.to!=s.to||i.size!=s.size)return!1}return!0}draw(e){return le.replace({widget:new KO(this.size,e)}).range(this.from,this.to)}}class KO extends sr{constructor(e,t){super(),this.size=e,this.vertical=t}eq(e){return e.size==this.size&&e.vertical==this.vertical}toDOM(){let e=document.createElement("div");return this.vertical?e.style.height=this.size+"px":(e.style.width=this.size+"px",e.style.height="2px",e.style.display="inline-block"),e}get estimatedHeight(){return this.vertical?this.size:-1}}class Mm{constructor(e){this.state=e,this.pixelViewport={left:0,right:window.innerWidth,top:0,bottom:0},this.inView=!0,this.paddingTop=0,this.paddingBottom=0,this.contentDOMWidth=0,this.contentDOMHeight=0,this.editorHeight=0,this.editorWidth=0,this.scrollTop=0,this.scrolledToBottom=!0,this.scrollAnchorPos=0,this.scrollAnchorHeight=-1,this.scaler=Im,this.scrollTarget=null,this.printing=!1,this.mustMeasureContent=!0,this.defaultTextDirection=qe.LTR,this.visibleRanges=[],this.mustEnforceCursorAssoc=!1;let t=e.facet(vh).some(r=>typeof r!="function"&&r.class=="cm-lineWrapping");this.heightOracle=new FO(t),this.stateDeco=e.facet(Us).filter(r=>typeof r!="function"),this.heightMap=$t.empty().applyChanges(this.stateDeco,Ce.empty,this.heightOracle.setDoc(e.doc),[new mn(0,0,0,e.doc.length)]),this.viewport=this.getViewport(0,null),this.updateViewportLines(),this.updateForViewport(),this.lineGaps=this.ensureLineGaps([]),this.lineGapDeco=le.set(this.lineGaps.map(r=>r.draw(!1))),this.computeVisibleRanges()}updateForViewport(){let e=[this.viewport],{main:t}=this.state.selection;for(let r=0;r<=1;r++){let i=r?t.head:t.anchor;if(!e.some(({from:s,to:o})=>i>=s&&i<=o)){let{from:s,to:o}=this.lineBlockAt(i);e.push(new Bo(s,o))}}this.viewports=e.sort((r,i)=>r.from-i.from),this.scaler=this.heightMap.height<=7e6?Im:new JO(this.heightOracle,this.heightMap,this.viewports)}updateViewportLines(){this.viewportLines=[],this.heightMap.forEachLine(this.viewport.from,this.viewport.to,this.heightOracle.setDoc(this.state.doc),0,0,e=>{this.viewportLines.push(this.scaler.scale==1?e:ys(e,this.scaler))})}update(e,t=null){this.state=e.state;let r=this.stateDeco;this.stateDeco=this.state.facet(Us).filter(u=>typeof u!="function");let i=e.changedRanges,s=mn.extendWithRanges(i,zO(r,this.stateDeco,e?e.changes:ct.empty(this.state.doc.length))),o=this.heightMap.height,a=this.scrolledToBottom?null:this.scrollAnchorAt(this.scrollTop);this.heightMap=this.heightMap.applyChanges(this.stateDeco,e.startState.doc,this.heightOracle.setDoc(this.state.doc),s),this.heightMap.height!=o&&(e.flags|=2),a?(this.scrollAnchorPos=e.changes.mapPos(a.from,-1),this.scrollAnchorHeight=a.top):(this.scrollAnchorPos=-1,this.scrollAnchorHeight=this.heightMap.height);let l=s.length?this.mapViewport(this.viewport,e.changes):this.viewport;(t&&(t.range.head<l.from||t.range.head>l.to)||!this.viewportIsAppropriate(l))&&(l=this.getViewport(0,t));let c=!e.changes.empty||e.flags&2||l.from!=this.viewport.from||l.to!=this.viewport.to;this.viewport=l,this.updateForViewport(),c&&this.updateViewportLines(),(this.lineGaps.length||this.viewport.to-this.viewport.from>4e3)&&this.updateLineGaps(this.ensureLineGaps(this.mapLineGaps(this.lineGaps,e.changes))),e.flags|=this.computeVisibleRanges(),t&&(this.scrollTarget=t),!this.mustEnforceCursorAssoc&&e.selectionSet&&e.view.lineWrapping&&e.state.selection.main.empty&&e.state.selection.main.assoc&&!e.state.facet(Z1)&&(this.mustEnforceCursorAssoc=!0)}measure(e){let t=e.contentDOM,r=window.getComputedStyle(t),i=this.heightOracle,s=r.whiteSpace;this.defaultTextDirection=r.direction=="rtl"?qe.RTL:qe.LTR;let o=this.heightOracle.mustRefreshForWrapping(s),a=t.getBoundingClientRect(),l=o||this.mustMeasureContent||this.contentDOMHeight!=a.height;this.contentDOMHeight=a.height,this.mustMeasureContent=!1;let c=0,u=0,d=parseInt(r.paddingTop)||0,h=parseInt(r.paddingBottom)||0;(this.paddingTop!=d||this.paddingBottom!=h)&&(this.paddingTop=d,this.paddingBottom=h,c|=10),this.editorWidth!=e.scrollDOM.clientWidth&&(i.lineWrapping&&(l=!0),this.editorWidth=e.scrollDOM.clientWidth,c|=8),this.scrollTop!=e.scrollDOM.scrollTop&&(this.scrollAnchorHeight=-1,this.scrollTop=e.scrollDOM.scrollTop),this.scrolledToBottom=O1(e.scrollDOM);let p=(this.printing?GO:qO)(t,this.paddingTop),g=p.top-this.pixelViewport.top,m=p.bottom-this.pixelViewport.bottom;this.pixelViewport=p;let v=this.pixelViewport.bottom>this.pixelViewport.top&&this.pixelViewport.right>this.pixelViewport.left;if(v!=this.inView&&(this.inView=v,v&&(l=!0)),!this.inView&&!this.scrollTarget)return 0;let b=a.width;if((this.contentDOMWidth!=b||this.editorHeight!=e.scrollDOM.clientHeight)&&(this.contentDOMWidth=a.width,this.editorHeight=e.scrollDOM.clientHeight,c|=8),l){let S=e.docView.measureVisibleLineHeights(this.viewport);if(i.mustRefreshForHeights(S)&&(o=!0),o||i.lineWrapping&&Math.abs(b-this.contentDOMWidth)>i.charWidth){let{lineHeight:w,charWidth:C,textHeight:k}=e.docView.measureTextSize();o=w>0&&i.refresh(s,w,C,k,b/C,S),o&&(e.docView.minWidth=0,c|=8)}g>0&&m>0?u=Math.max(g,m):g<0&&m<0&&(u=Math.min(g,m)),i.heightChanged=!1;for(let w of this.viewports){let C=w.from==this.viewport.from?S:e.docView.measureVisibleLineHeights(w);this.heightMap=(o?$t.empty().applyChanges(this.stateDeco,Ce.empty,this.heightOracle,[new mn(0,0,0,e.state.doc.length)]):this.heightMap).updateHeight(i,0,o,new HO(w.from,C))}i.heightChanged&&(c|=2)}let y=!this.viewportIsAppropriate(this.viewport,u)||this.scrollTarget&&(this.scrollTarget.range.head<this.viewport.from||this.scrollTarget.range.head>this.viewport.to);return y&&(this.viewport=this.getViewport(u,this.scrollTarget)),this.updateForViewport(),(c&2||y)&&this.updateViewportLines(),(this.lineGaps.length||this.viewport.to-this.viewport.from>4e3)&&this.updateLineGaps(this.ensureLineGaps(o?[]:this.lineGaps,e)),c|=this.computeVisibleRanges(),this.mustEnforceCursorAssoc&&(this.mustEnforceCursorAssoc=!1,e.docView.enforceCursorAssoc()),c}get visibleTop(){return this.scaler.fromDOM(this.pixelViewport.top)}get visibleBottom(){return this.scaler.fromDOM(this.pixelViewport.bottom)}getViewport(e,t){let r=.5-Math.max(-.5,Math.min(.5,e/1e3/2)),i=this.heightMap,s=this.heightOracle,{visibleTop:o,visibleBottom:a}=this,l=new Bo(i.lineAt(o-r*1e3,Ve.ByHeight,s,0,0).from,i.lineAt(a+(1-r)*1e3,Ve.ByHeight,s,0,0).to);if(t){let{head:c}=t.range;if(c<l.from||c>l.to){let u=Math.min(this.editorHeight,this.pixelViewport.bottom-this.pixelViewport.top),d=i.lineAt(c,Ve.ByPos,s,0,0),h;t.y=="center"?h=(d.top+d.bottom)/2-u/2:t.y=="start"||t.y=="nearest"&&c<l.from?h=d.top:h=d.bottom-u,l=new Bo(i.lineAt(h-1e3/2,Ve.ByHeight,s,0,0).from,i.lineAt(h+u+1e3/2,Ve.ByHeight,s,0,0).to)}}return l}mapViewport(e,t){let r=t.mapPos(e.from,-1),i=t.mapPos(e.to,1);return new Bo(this.heightMap.lineAt(r,Ve.ByPos,this.heightOracle,0,0).from,this.heightMap.lineAt(i,Ve.ByPos,this.heightOracle,0,0).to)}viewportIsAppropriate({from:e,to:t},r=0){if(!this.inView)return!0;let{top:i}=this.heightMap.lineAt(e,Ve.ByPos,this.heightOracle,0,0),{bottom:s}=this.heightMap.lineAt(t,Ve.ByPos,this.heightOracle,0,0),{visibleTop:o,visibleBottom:a}=this;return(e==0||i<=o-Math.max(10,Math.min(-r,250)))&&(t==this.state.doc.length||s>=a+Math.max(10,Math.min(r,250)))&&i>o-2*1e3&&s<a+2*1e3}mapLineGaps(e,t){if(!e.length||t.empty)return e;let r=[];for(let i of e)t.touchesRange(i.from,i.to)||r.push(new td(t.mapPos(i.from),t.mapPos(i.to),i.size));return r}ensureLineGaps(e,t){let r=this.heightOracle.lineWrapping,i=r?1e4:2e3,s=i>>1,o=i<<1;if(this.defaultTextDirection!=qe.LTR&&!r)return[];let a=[],l=(c,u,d,h)=>{if(u-c<s)return;let p=this.state.selection.main,g=[p.from];p.empty||g.push(p.to);for(let v of g)if(v>c&&v<u){l(c,v-10,d,h),l(v+10,u,d,h);return}let m=YO(e,v=>v.from>=d.from&&v.to<=d.to&&Math.abs(v.from-c)<s&&Math.abs(v.to-u)<s&&!g.some(b=>v.from<b&&v.to>b));if(!m){if(u<d.to&&t&&r&&t.visibleRanges.some(v=>v.from<=u&&v.to>=u)){let v=t.moveToLineBoundary(B.cursor(u),!1,!0).head;v>c&&(u=v)}m=new td(c,u,this.gapSize(d,c,u,h))}a.push(m)};for(let c of this.viewportLines){if(c.length<o)continue;let u=ZO(c.from,c.to,this.stateDeco);if(u.total<o)continue;let d=this.scrollTarget?this.scrollTarget.range.head:null,h,p;if(r){let g=i/this.heightOracle.lineLength*this.heightOracle.lineHeight,m,v;if(d!=null){let b=Fo(u,d),y=((this.visibleBottom-this.visibleTop)/2+g)/c.height;m=b-y,v=b+y}else m=(this.visibleTop-c.top-g)/c.height,v=(this.visibleBottom-c.top+g)/c.height;h=$o(u,m),p=$o(u,v)}else{let g=u.total*this.heightOracle.charWidth,m=i*this.heightOracle.charWidth,v,b;if(d!=null){let y=Fo(u,d),S=((this.pixelViewport.right-this.pixelViewport.left)/2+m)/g;v=y-S,b=y+S}else v=(this.pixelViewport.left-m)/g,b=(this.pixelViewport.right+m)/g;h=$o(u,v),p=$o(u,b)}h>c.from&&l(c.from,h,c,u),p<c.to&&l(p,c.to,c,u)}return a}gapSize(e,t,r,i){let s=Fo(i,r)-Fo(i,t);return this.heightOracle.lineWrapping?e.height*s:i.total*this.heightOracle.charWidth*s}updateLineGaps(e){td.same(e,this.lineGaps)||(this.lineGaps=e,this.lineGapDeco=le.set(e.map(t=>t.draw(this.heightOracle.lineWrapping))))}computeVisibleRanges(){let e=this.stateDeco;this.lineGaps.length&&(e=e.concat(this.lineGapDeco));let t=[];Ne.spans(e,this.viewport.from,this.viewport.to,{span(i,s){t.push({from:i,to:s})},point(){}},20);let r=t.length!=this.visibleRanges.length||this.visibleRanges.some((i,s)=>i.from!=t[s].from||i.to!=t[s].to);return this.visibleRanges=t,r?4:0}lineBlockAt(e){return e>=this.viewport.from&&e<=this.viewport.to&&this.viewportLines.find(t=>t.from<=e&&t.to>=e)||ys(this.heightMap.lineAt(e,Ve.ByPos,this.heightOracle,0,0),this.scaler)}lineBlockAtHeight(e){return ys(this.heightMap.lineAt(this.scaler.fromDOM(e),Ve.ByHeight,this.heightOracle,0,0),this.scaler)}scrollAnchorAt(e){let t=this.lineBlockAtHeight(e+8);return t.from>=this.viewport.from||this.viewportLines[0].top-e>200?t:this.viewportLines[0]}elementAtHeight(e){return ys(this.heightMap.blockAt(this.scaler.fromDOM(e),this.heightOracle,0,0),this.scaler)}get docHeight(){return this.scaler.toDOM(this.heightMap.height)}get contentHeight(){return this.docHeight+this.paddingTop+this.paddingBottom}}class Bo{constructor(e,t){this.from=e,this.to=t}}function ZO(n,e,t){let r=[],i=n,s=0;return Ne.spans(t,n,e,{span(){},point(o,a){o>i&&(r.push({from:i,to:o}),s+=o-i),i=a}},20),i<e&&(r.push({from:i,to:e}),s+=e-i),{total:s,ranges:r}}function $o({total:n,ranges:e},t){if(t<=0)return e[0].from;if(t>=1)return e[e.length-1].to;let r=Math.floor(n*t);for(let i=0;;i++){let{from:s,to:o}=e[i],a=o-s;if(r<=a)return s+r;r-=a}}function Fo(n,e){let t=0;for(let{from:r,to:i}of n.ranges){if(e<=i){t+=e-r;break}t+=i-r}return t/n.total}function YO(n,e){for(let t of n)if(e(t))return t}const Im={toDOM(n){return n},fromDOM(n){return n},scale:1};class JO{constructor(e,t,r){let i=0,s=0,o=0;this.viewports=r.map(({from:a,to:l})=>{let c=t.lineAt(a,Ve.ByPos,e,0,0).top,u=t.lineAt(l,Ve.ByPos,e,0,0).bottom;return i+=u-c,{from:a,to:l,top:c,bottom:u,domTop:0,domBottom:0}}),this.scale=(7e6-i)/(t.height-i);for(let a of this.viewports)a.domTop=o+(a.top-s)*this.scale,o=a.domBottom=a.domTop+(a.bottom-a.top),s=a.bottom}toDOM(e){for(let t=0,r=0,i=0;;t++){let s=t<this.viewports.length?this.viewports[t]:null;if(!s||e<s.top)return i+(e-r)*this.scale;if(e<=s.bottom)return s.domTop+(e-s.top);r=s.bottom,i=s.domBottom}}fromDOM(e){for(let t=0,r=0,i=0;;t++){let s=t<this.viewports.length?this.viewports[t]:null;if(!s||e<s.domTop)return r+(e-i)/this.scale;if(e<=s.domBottom)return s.top+(e-s.domTop);r=s.bottom,i=s.domBottom}}}function ys(n,e){if(e.scale==1)return n;let t=e.toDOM(n.top),r=e.toDOM(n.bottom);return new $n(n.from,n.length,t,r-t,Array.isArray(n._content)?n._content.map(i=>ys(i,e)):n._content)}const Ho=J.define({combine:n=>n.join(" ")}),bf=J.define({combine:n=>n.indexOf(!0)>-1}),xf=Ar.newName(),by=Ar.newName(),xy=Ar.newName(),yy={"&light":"."+by,"&dark":"."+xy};function yf(n,e,t){return new Ar(e,{finish(r){return/&/.test(r)?r.replace(/&\w*/,i=>{if(i=="&")return n;if(!t||!t[i])throw new RangeError(`Unsupported selector: ${i}`);return t[i]}):n+" "+r}})}const XO=yf("."+xf,{"&":{position:"relative !important",boxSizing:"border-box","&.cm-focused":{outline:"1px dotted #212121"},display:"flex !important",flexDirection:"column"},".cm-scroller":{display:"flex !important",alignItems:"flex-start !important",fontFamily:"monospace",lineHeight:1.4,height:"100%",overflowX:"auto",position:"relative",zIndex:0},".cm-content":{margin:0,flexGrow:2,flexShrink:0,display:"block",whiteSpace:"pre",wordWrap:"normal",boxSizing:"border-box",padding:"4px 0",outline:"none","&[contenteditable=true]":{WebkitUserModify:"read-write-plaintext-only"}},".cm-lineWrapping":{whiteSpace_fallback:"pre-wrap",whiteSpace:"break-spaces",wordBreak:"break-word",overflowWrap:"anywhere",flexShrink:1},"&light .cm-content":{caretColor:"black"},"&dark .cm-content":{caretColor:"white"},".cm-line":{display:"block",padding:"0 2px 0 6px"},".cm-layer":{position:"absolute",left:0,top:0,contain:"size style","& > *":{position:"absolute"}},"&light .cm-selectionBackground":{background:"#d9d9d9"},"&dark .cm-selectionBackground":{background:"#222"},"&light.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground":{background:"#d7d4f0"},"&dark.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground":{background:"#233"},".cm-cursorLayer":{pointerEvents:"none"},"&.cm-focused > .cm-scroller > .cm-cursorLayer":{animation:"steps(1) cm-blink 1.2s infinite"},"@keyframes cm-blink":{"0%":{},"50%":{opacity:0},"100%":{}},"@keyframes cm-blink2":{"0%":{},"50%":{opacity:0},"100%":{}},".cm-cursor, .cm-dropCursor":{borderLeft:"1.2px solid black",marginLeft:"-0.6px",pointerEvents:"none"},".cm-cursor":{display:"none"},"&dark .cm-cursor":{borderLeftColor:"#444"},".cm-dropCursor":{position:"absolute"},"&.cm-focused > .cm-scroller > .cm-cursorLayer .cm-cursor":{display:"block"},"&light .cm-activeLine":{backgroundColor:"#cceeff44"},"&dark .cm-activeLine":{backgroundColor:"#99eeff33"},"&light .cm-specialChar":{color:"red"},"&dark .cm-specialChar":{color:"#f78"},".cm-gutters":{flexShrink:0,display:"flex",height:"100%",boxSizing:"border-box",insetInlineStart:0,zIndex:200},"&light .cm-gutters":{backgroundColor:"#f5f5f5",color:"#6c6c6c",borderRight:"1px solid #ddd"},"&dark .cm-gutters":{backgroundColor:"#333338",color:"#ccc"},".cm-gutter":{display:"flex !important",flexDirection:"column",flexShrink:0,boxSizing:"border-box",minHeight:"100%",overflow:"hidden"},".cm-gutterElement":{boxSizing:"border-box"},".cm-lineNumbers .cm-gutterElement":{padding:"0 3px 0 5px",minWidth:"20px",textAlign:"right",whiteSpace:"nowrap"},"&light .cm-activeLineGutter":{backgroundColor:"#e2f2ff"},"&dark .cm-activeLineGutter":{backgroundColor:"#222227"},".cm-panels":{boxSizing:"border-box",position:"sticky",left:0,right:0},"&light .cm-panels":{backgroundColor:"#f5f5f5",color:"black"},"&light .cm-panels-top":{borderBottom:"1px solid #ddd"},"&light .cm-panels-bottom":{borderTop:"1px solid #ddd"},"&dark .cm-panels":{backgroundColor:"#333338",color:"white"},".cm-tab":{display:"inline-block",overflow:"hidden",verticalAlign:"bottom"},".cm-widgetBuffer":{verticalAlign:"text-top",height:"1em",width:0,display:"inline"},".cm-placeholder":{color:"#888",display:"inline-block",verticalAlign:"top"},".cm-highlightSpace:before":{content:"attr(data-display)",position:"absolute",pointerEvents:"none",color:"#888"},".cm-highlightTab":{backgroundImage:`url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="200" height="20"><path stroke="%23888" stroke-width="1" fill="none" d="M1 10H196L190 5M190 15L196 10M197 4L197 16"/></svg>')`,backgroundSize:"auto 100%",backgroundPosition:"right 90%",backgroundRepeat:"no-repeat"},".cm-trailingSpace":{backgroundColor:"#ff332255"},".cm-button":{verticalAlign:"middle",color:"inherit",fontSize:"70%",padding:".2em 1em",borderRadius:"1px"},"&light .cm-button":{backgroundImage:"linear-gradient(#eff1f5, #d9d9df)",border:"1px solid #888","&:active":{backgroundImage:"linear-gradient(#b4b4b4, #d0d3d6)"}},"&dark .cm-button":{backgroundImage:"linear-gradient(#393939, #111)",border:"1px solid #888","&:active":{backgroundImage:"linear-gradient(#111, #333)"}},".cm-textfield":{verticalAlign:"middle",color:"inherit",fontSize:"70%",border:"1px solid silver",padding:".2em .5em"},"&light .cm-textfield":{backgroundColor:"white"},"&dark .cm-textfield":{border:"1px solid #555",backgroundColor:"inherit"}},yy);class QO{constructor(e,t,r,i){this.typeOver=i,this.bounds=null,this.text="";let{impreciseHead:s,impreciseAnchor:o}=e.docView;if(e.state.readOnly&&t>-1)this.newSel=null;else if(t>-1&&(this.bounds=e.docView.domBoundsAround(t,r,0))){let a=s||o?[]:nT(e),l=new L1(a,e.state);l.readRange(this.bounds.startDOM,this.bounds.endDOM),this.text=l.text,this.newSel=rT(a,this.bounds.from)}else{let a=e.observer.selectionRange,l=s&&s.node==a.focusNode&&s.offset==a.focusOffset||!nf(e.contentDOM,a.focusNode)?e.state.selection.main.head:e.docView.posFromDOM(a.focusNode,a.focusOffset),c=o&&o.node==a.anchorNode&&o.offset==a.anchorOffset||!nf(e.contentDOM,a.anchorNode)?e.state.selection.main.anchor:e.docView.posFromDOM(a.anchorNode,a.anchorOffset);this.newSel=B.single(c,l)}}}function wy(n,e){let t,{newSel:r}=e,i=n.state.selection.main,s=n.inputState.lastKeyTime>Date.now()-100?n.inputState.lastKeyCode:-1;if(e.bounds){let{from:o,to:a}=e.bounds,l=i.from,c=null;(s===8||X.android&&e.text.length<a-o)&&(l=i.to,c="end");let u=tT(n.state.doc.sliceString(o,a,Ai),e.text,l-o,c);u&&(X.chrome&&s==13&&u.toB==u.from+2&&e.text.slice(u.from,u.toB)==Ai+Ai&&u.toB--,t={from:o+u.from,to:o+u.toA,insert:Ce.of(e.text.slice(u.from,u.toB).split(Ai))})}else r&&(!n.hasFocus&&n.state.facet(hu)||r.main.eq(i))&&(r=null);if(!t&&!r)return!1;if(!t&&e.typeOver&&!i.empty&&r&&r.main.empty?t={from:i.from,to:i.to,insert:n.state.doc.slice(i.from,i.to)}:t&&t.from>=i.from&&t.to<=i.to&&(t.from!=i.from||t.to!=i.to)&&i.to-i.from-(t.to-t.from)<=4?t={from:i.from,to:i.to,insert:n.state.doc.slice(i.from,t.from).append(t.insert).append(n.state.doc.slice(t.to,i.to))}:(X.mac||X.android)&&t&&t.from==t.to&&t.from==i.head-1&&/^\. ?$/.test(t.insert.toString())&&n.contentDOM.getAttribute("autocorrect")=="off"?(r&&t.insert.length==2&&(r=B.single(r.main.anchor-1,r.main.head-1)),t={from:i.from,to:i.to,insert:Ce.of([" "])}):X.chrome&&t&&t.from==t.to&&t.from==i.head&&t.insert.toString()==`
|
|
24
24
|
`&&n.lineWrapping&&(r&&(r=B.single(r.main.anchor-1,r.main.head-1)),t={from:i.from,to:i.to,insert:Ce.of([" "])}),t){if(X.ios&&n.inputState.flushIOSKey(n)||X.android&&(t.from==i.from&&t.to==i.to&&t.insert.length==1&&t.insert.lines==2&&_i(n.contentDOM,"Enter",13)||(t.from==i.from-1&&t.to==i.to&&t.insert.length==0||s==8&&t.insert.length<t.to-t.from)&&_i(n.contentDOM,"Backspace",8)||t.from==i.from&&t.to==i.to+1&&t.insert.length==0&&_i(n.contentDOM,"Delete",46)))return!0;let o=t.insert.toString();n.inputState.composing>=0&&n.inputState.composing++;let a,l=()=>a||(a=eT(n,t,r));return n.state.facet(q1).some(c=>c(n,t.from,t.to,o,l))||n.dispatch(l()),!0}else if(r&&!r.main.eq(i)){let o=!1,a="select";return n.inputState.lastSelectionTime>Date.now()-50&&(n.inputState.lastSelectionOrigin=="select"&&(o=!0),a=n.inputState.lastSelectionOrigin),n.dispatch({selection:r,scrollIntoView:o,userEvent:a}),!0}else return!1}function eT(n,e,t){let r,i=n.state,s=i.selection.main;if(e.from>=s.from&&e.to<=s.to&&e.to-e.from>=(s.to-s.from)/3&&(!t||t.main.empty&&t.main.from==e.from+e.insert.length)&&n.inputState.composing<0){let a=s.from<e.from?i.sliceDoc(s.from,e.from):"",l=s.to>e.to?i.sliceDoc(e.to,s.to):"";r=i.replaceSelection(n.state.toText(a+e.insert.sliceString(0,void 0,n.state.lineBreak)+l))}else{let a=i.changes(e),l=t&&t.main.to<=a.newLength?t.main:void 0;if(i.selection.ranges.length>1&&n.inputState.composing>=0&&e.to<=s.to&&e.to>=s.to-10){let c=n.state.sliceDoc(e.from,e.to),u=sy(n)||n.state.doc.lineAt(s.head),d=s.to-e.to,h=s.to-s.from;r=i.changeByRange(p=>{if(p.from==s.from&&p.to==s.to)return{changes:a,range:l||p.map(a)};let g=p.to-d,m=g-c.length;if(p.to-p.from!=h||n.state.sliceDoc(m,g)!=c||u&&p.to>=u.from&&p.from<=u.to)return{range:p};let v=i.changes({from:m,to:g,insert:e.insert}),b=p.to-s.to;return{changes:v,range:l?B.range(Math.max(0,l.anchor+b),Math.max(0,l.head+b)):p.map(v)}})}else r={changes:a,selection:l&&i.selection.replaceRange(l)}}let o="input.type";return(n.composing||n.inputState.compositionPendingChange&&n.inputState.compositionEndedAt>Date.now()-50)&&(n.inputState.compositionPendingChange=!1,o+=".compose",n.inputState.compositionFirstChange&&(o+=".start",n.inputState.compositionFirstChange=!1)),i.update(r,{userEvent:o,scrollIntoView:!0})}function tT(n,e,t,r){let i=Math.min(n.length,e.length),s=0;for(;s<i&&n.charCodeAt(s)==e.charCodeAt(s);)s++;if(s==i&&n.length==e.length)return null;let o=n.length,a=e.length;for(;o>0&&a>0&&n.charCodeAt(o-1)==e.charCodeAt(a-1);)o--,a--;if(r=="end"){let l=Math.max(0,s-Math.min(o,a));t-=o+l-s}if(o<s&&n.length<e.length){let l=t<=s&&t>=o?s-t:0;s-=l,a=s+(a-o),o=s}else if(a<s){let l=t<=s&&t>=a?s-t:0;s-=l,o=s+(o-a),a=s}return{from:s,toA:o,toB:a}}function nT(n){let e=[];if(n.root.activeElement!=n.contentDOM)return e;let{anchorNode:t,anchorOffset:r,focusNode:i,focusOffset:s}=n.observer.selectionRange;return t&&(e.push(new nm(t,r)),(i!=t||s!=r)&&e.push(new nm(i,s))),e}function rT(n,e){if(n.length==0)return null;let t=n[0].pos,r=n.length==2?n[1].pos:t;return t>-1&&r>-1?B.single(t+e,r+e):null}const iT={childList:!0,characterData:!0,subtree:!0,attributes:!0,characterDataOldValue:!0},nd=X.ie&&X.ie_version<=11;class sT{constructor(e){this.view=e,this.active=!1,this.selectionRange=new GR,this.selectionChanged=!1,this.delayedFlush=-1,this.resizeTimeout=-1,this.queue=[],this.delayedAndroidKey=null,this.flushingAndroidKey=-1,this.lastChange=0,this.scrollTargets=[],this.intersection=null,this.resizeScroll=null,this.resizeContent=null,this.intersecting=!1,this.gapIntersection=null,this.gaps=[],this.parentCheck=-1,this.dom=e.contentDOM,this.observer=new MutationObserver(t=>{for(let r of t)this.queue.push(r);(X.ie&&X.ie_version<=11||X.ios&&e.composing)&&t.some(r=>r.type=="childList"&&r.removedNodes.length||r.type=="characterData"&&r.oldValue.length>r.target.nodeValue.length)?this.flushSoon():this.flush()}),nd&&(this.onCharData=t=>{this.queue.push({target:t.target,type:"characterData",oldValue:t.prevValue}),this.flushSoon()}),this.onSelectionChange=this.onSelectionChange.bind(this),this.onResize=this.onResize.bind(this),this.onPrint=this.onPrint.bind(this),this.onScroll=this.onScroll.bind(this),typeof ResizeObserver=="function"&&(this.resizeScroll=new ResizeObserver(()=>{var t;((t=this.view.docView)===null||t===void 0?void 0:t.lastUpdate)<Date.now()-75&&this.onResize()}),this.resizeScroll.observe(e.scrollDOM),this.resizeContent=new ResizeObserver(()=>this.view.requestMeasure()),this.resizeContent.observe(e.contentDOM)),this.addWindowListeners(this.win=e.win),this.start(),typeof IntersectionObserver=="function"&&(this.intersection=new IntersectionObserver(t=>{this.parentCheck<0&&(this.parentCheck=setTimeout(this.listenForScroll.bind(this),1e3)),t.length>0&&t[t.length-1].intersectionRatio>0!=this.intersecting&&(this.intersecting=!this.intersecting,this.intersecting!=this.view.inView&&this.onScrollChanged(document.createEvent("Event")))},{threshold:[0,.001]}),this.intersection.observe(this.dom),this.gapIntersection=new IntersectionObserver(t=>{t.length>0&&t[t.length-1].intersectionRatio>0&&this.onScrollChanged(document.createEvent("Event"))},{})),this.listenForScroll(),this.readSelectionRange()}onScrollChanged(e){this.view.inputState.runScrollHandlers(this.view,e),this.intersecting&&this.view.measure()}onScroll(e){this.intersecting&&this.flush(!1),this.onScrollChanged(e)}onResize(){this.resizeTimeout<0&&(this.resizeTimeout=setTimeout(()=>{this.resizeTimeout=-1,this.view.requestMeasure()},50))}onPrint(){this.view.viewState.printing=!0,this.view.measure(),setTimeout(()=>{this.view.viewState.printing=!1,this.view.requestMeasure()},500)}updateGaps(e){if(this.gapIntersection&&(e.length!=this.gaps.length||this.gaps.some((t,r)=>t!=e[r]))){this.gapIntersection.disconnect();for(let t of e)this.gapIntersection.observe(t);this.gaps=e}}onSelectionChange(e){let t=this.selectionChanged;if(!this.readSelectionRange()||this.delayedAndroidKey)return;let{view:r}=this,i=this.selectionRange;if(r.state.facet(hu)?r.root.activeElement!=this.dom:!Gl(r.dom,i))return;let s=i.anchorNode&&r.docView.nearest(i.anchorNode);if(s&&s.ignoreEvent(e)){t||(this.selectionChanged=!1);return}(X.ie&&X.ie_version<=11||X.android&&X.chrome)&&!r.state.selection.main.empty&&i.focusNode&&wc(i.focusNode,i.focusOffset,i.anchorNode,i.anchorOffset)?this.flushSoon():this.flush(!1)}readSelectionRange(){let{view:e}=this,t=X.safari&&e.root.nodeType==11&&UR(this.dom.ownerDocument)==this.dom&&oT(this.view)||yc(e.root);if(!t||this.selectionRange.eq(t))return!1;let r=Gl(this.dom,t);return r&&!this.selectionChanged&&e.inputState.lastFocusTime>Date.now()-200&&e.inputState.lastTouchTime<Date.now()-300&&ZR(this.dom,t)?(this.view.inputState.lastFocusTime=0,e.docView.updateSelection(),!1):(this.selectionRange.setRange(t),r&&(this.selectionChanged=!0),!0)}setSelectionRange(e,t){this.selectionRange.set(e.node,e.offset,t.node,t.offset),this.selectionChanged=!1}clearSelectionRange(){this.selectionRange.set(null,0,null,0)}listenForScroll(){this.parentCheck=-1;let e=0,t=null;for(let r=this.dom;r;)if(r.nodeType==1)!t&&e<this.scrollTargets.length&&this.scrollTargets[e]==r?e++:t||(t=this.scrollTargets.slice(0,e)),t&&t.push(r),r=r.assignedSlot||r.parentNode;else if(r.nodeType==11)r=r.host;else break;if(e<this.scrollTargets.length&&!t&&(t=this.scrollTargets.slice(0,e)),t){for(let r of this.scrollTargets)r.removeEventListener("scroll",this.onScroll);for(let r of this.scrollTargets=t)r.addEventListener("scroll",this.onScroll)}}ignore(e){if(!this.active)return e();try{return this.stop(),e()}finally{this.start(),this.clear()}}start(){this.active||(this.observer.observe(this.dom,iT),nd&&this.dom.addEventListener("DOMCharacterDataModified",this.onCharData),this.active=!0)}stop(){this.active&&(this.active=!1,this.observer.disconnect(),nd&&this.dom.removeEventListener("DOMCharacterDataModified",this.onCharData))}clear(){this.processRecords(),this.queue.length=0,this.selectionChanged=!1}delayAndroidKey(e,t){var r;if(!this.delayedAndroidKey){let i=()=>{let s=this.delayedAndroidKey;s&&(this.clearDelayedAndroidKey(),this.view.inputState.lastKeyCode=s.keyCode,this.view.inputState.lastKeyTime=Date.now(),!this.flush()&&s.force&&_i(this.dom,s.key,s.keyCode))};this.flushingAndroidKey=this.view.win.requestAnimationFrame(i)}(!this.delayedAndroidKey||e=="Enter")&&(this.delayedAndroidKey={key:e,keyCode:t,force:this.lastChange<Date.now()-50||!!(!((r=this.delayedAndroidKey)===null||r===void 0)&&r.force)})}clearDelayedAndroidKey(){this.win.cancelAnimationFrame(this.flushingAndroidKey),this.delayedAndroidKey=null,this.flushingAndroidKey=-1}flushSoon(){this.delayedFlush<0&&(this.delayedFlush=this.view.win.requestAnimationFrame(()=>{this.delayedFlush=-1,this.flush()}))}forceFlush(){this.delayedFlush>=0&&(this.view.win.cancelAnimationFrame(this.delayedFlush),this.delayedFlush=-1),this.flush()}pendingRecords(){for(let e of this.observer.takeRecords())this.queue.push(e);return this.queue}processRecords(){let e=this.pendingRecords();e.length&&(this.queue=[]);let t=-1,r=-1,i=!1;for(let s of e){let o=this.readMutation(s);o&&(o.typeOver&&(i=!0),t==-1?{from:t,to:r}=o:(t=Math.min(o.from,t),r=Math.max(o.to,r)))}return{from:t,to:r,typeOver:i}}readChange(){let{from:e,to:t,typeOver:r}=this.processRecords(),i=this.selectionChanged&&Gl(this.dom,this.selectionRange);return e<0&&!i?null:(e>-1&&(this.lastChange=Date.now()),this.view.inputState.lastFocusTime=0,this.selectionChanged=!1,new QO(this.view,e,t,r))}flush(e=!0){if(this.delayedFlush>=0||this.delayedAndroidKey)return!1;e&&this.readSelectionRange();let t=this.readChange();if(!t)return!1;let r=this.view.state,i=wy(this.view,t);return this.view.state==r&&this.view.update([]),i}readMutation(e){let t=this.view.docView.nearest(e.target);if(!t||t.ignoreMutation(e))return null;if(t.markDirty(e.type=="attributes"),e.type=="attributes"&&(t.flags|=4),e.type=="childList"){let r=Em(t,e.previousSibling||e.target.previousSibling,-1),i=Em(t,e.nextSibling||e.target.nextSibling,1);return{from:r?t.posAfter(r):t.posAtStart,to:i?t.posBefore(i):t.posAtEnd,typeOver:!1}}else return e.type=="characterData"?{from:t.posAtStart,to:t.posAtEnd,typeOver:e.target.nodeValue==e.oldValue}:null}setWindow(e){e!=this.win&&(this.removeWindowListeners(this.win),this.win=e,this.addWindowListeners(this.win))}addWindowListeners(e){e.addEventListener("resize",this.onResize),e.addEventListener("beforeprint",this.onPrint),e.addEventListener("scroll",this.onScroll),e.document.addEventListener("selectionchange",this.onSelectionChange)}removeWindowListeners(e){e.removeEventListener("scroll",this.onScroll),e.removeEventListener("resize",this.onResize),e.removeEventListener("beforeprint",this.onPrint),e.document.removeEventListener("selectionchange",this.onSelectionChange)}destroy(){var e,t,r,i;this.stop(),(e=this.intersection)===null||e===void 0||e.disconnect(),(t=this.gapIntersection)===null||t===void 0||t.disconnect(),(r=this.resizeScroll)===null||r===void 0||r.disconnect(),(i=this.resizeContent)===null||i===void 0||i.disconnect();for(let s of this.scrollTargets)s.removeEventListener("scroll",this.onScroll);this.removeWindowListeners(this.win),clearTimeout(this.parentCheck),clearTimeout(this.resizeTimeout),this.win.cancelAnimationFrame(this.delayedFlush),this.win.cancelAnimationFrame(this.flushingAndroidKey)}}function Em(n,e,t){for(;e;){let r=Fe.get(e);if(r&&r.parent==n)return r;let i=e.parentNode;e=i!=n.dom?i:t>0?e.nextSibling:e.previousSibling}return null}function oT(n){let e=null;function t(l){l.preventDefault(),l.stopImmediatePropagation(),e=l.getTargetRanges()[0]}if(n.contentDOM.addEventListener("beforeinput",t,!0),n.dom.ownerDocument.execCommand("indent"),n.contentDOM.removeEventListener("beforeinput",t,!0),!e)return null;let r=e.startContainer,i=e.startOffset,s=e.endContainer,o=e.endOffset,a=n.docView.domAtPos(n.state.selection.main.anchor);return wc(a.node,a.offset,s,o)&&([r,i,s,o]=[s,o,r,i]),{anchorNode:r,anchorOffset:i,focusNode:s,focusOffset:o}}class G{get state(){return this.viewState.state}get viewport(){return this.viewState.viewport}get visibleRanges(){return this.viewState.visibleRanges}get inView(){return this.viewState.inView}get composing(){return this.inputState.composing>0}get compositionStarted(){return this.inputState.composing>=0}get root(){return this._root}get win(){return this.dom.ownerDocument.defaultView||window}constructor(e={}){this.plugins=[],this.pluginMap=new Map,this.editorAttrs={},this.contentAttrs={},this.bidiCache=[],this.destroyed=!1,this.updateState=2,this.measureScheduled=-1,this.measureRequests=[],this.contentDOM=document.createElement("div"),this.scrollDOM=document.createElement("div"),this.scrollDOM.tabIndex=-1,this.scrollDOM.className="cm-scroller",this.scrollDOM.appendChild(this.contentDOM),this.announceDOM=document.createElement("div"),this.announceDOM.style.cssText="position: fixed; top: -10000px",this.announceDOM.setAttribute("aria-live","polite"),this.dom=document.createElement("div"),this.dom.appendChild(this.announceDOM),this.dom.appendChild(this.scrollDOM);let{dispatch:t}=e;this.dispatchTransactions=e.dispatchTransactions||t&&(r=>r.forEach(i=>t(i,this)))||(r=>this.update(r)),this.dispatch=this.dispatch.bind(this),this._root=e.root||KR(e.parent)||document,this.viewState=new Mm(e.state||ye.create(e)),this.plugins=this.state.facet(bs).map(r=>new Xu(r));for(let r of this.plugins)r.update(this);this.observer=new sT(this),this.inputState=new MO(this),this.inputState.ensureHandlers(this,this.plugins),this.docView=new cm(this),this.mountStyles(),this.updateAttrs(),this.updateState=0,this.requestMeasure(),e.parent&&e.parent.appendChild(this.dom)}dispatch(...e){let t=e.length==1&&e[0]instanceof ut?e:e.length==1&&Array.isArray(e[0])?e[0]:[this.state.update(...e)];this.dispatchTransactions(t,this)}update(e){if(this.updateState!=0)throw new Error("Calls to EditorView.update are not allowed while an update is in progress");let t=!1,r=!1,i,s=this.state;for(let h of e){if(h.startState!=s)throw new RangeError("Trying to update state with a transaction that doesn't start from the previous state.");s=h.state}if(this.destroyed){this.viewState.state=s;return}let o=this.hasFocus,a=0,l=null;e.some(h=>h.annotation(py))?(this.inputState.notifiedFocused=o,a=1):o!=this.inputState.notifiedFocused&&(this.inputState.notifiedFocused=o,l=my(s,o),l||(a=1));let c=this.observer.delayedAndroidKey,u=null;if(c?(this.observer.clearDelayedAndroidKey(),u=this.observer.readChange(),(u&&!this.state.doc.eq(s.doc)||!this.state.selection.eq(s.selection))&&(u=null)):this.observer.clear(),s.facet(ye.phrases)!=this.state.facet(ye.phrases))return this.setState(s);i=kc.create(this,s,e),i.flags|=a;let d=this.viewState.scrollTarget;try{this.updateState=2;for(let h of e){if(d&&(d=d.map(h.changes)),h.scrollIntoView){let{main:p}=h.state.selection;d=new Cc(p.empty?p:B.cursor(p.head,p.head>p.anchor?-1:1))}for(let p of h.effects)p.is(am)&&(d=p.value)}this.viewState.update(i,d),this.bidiCache=Ac.update(this.bidiCache,i.changes),i.empty||(this.updatePlugins(i),this.inputState.update(i)),t=this.docView.update(i),this.state.facet(xs)!=this.styleModules&&this.mountStyles(),r=this.updateAttrs(),this.showAnnouncements(e),this.docView.updateSelection(t,e.some(h=>h.isUserEvent("select.pointer")))}finally{this.updateState=0}if(i.startState.facet(Ho)!=i.state.facet(Ho)&&(this.viewState.mustMeasureContent=!0),(t||r||d||this.viewState.mustEnforceCursorAssoc||this.viewState.mustMeasureContent)&&this.requestMeasure(),!i.empty)for(let h of this.state.facet(uf))h(i);(l||u)&&Promise.resolve().then(()=>{l&&this.state==l.startState&&this.dispatch(l),u&&!wy(this,u)&&c.force&&_i(this.contentDOM,c.key,c.keyCode)})}setState(e){if(this.updateState!=0)throw new Error("Calls to EditorView.setState are not allowed while an update is in progress");if(this.destroyed){this.viewState.state=e;return}this.updateState=2;let t=this.hasFocus;try{for(let r of this.plugins)r.destroy(this);this.viewState=new Mm(e),this.plugins=e.facet(bs).map(r=>new Xu(r)),this.pluginMap.clear();for(let r of this.plugins)r.update(this);this.docView=new cm(this),this.inputState.ensureHandlers(this,this.plugins),this.mountStyles(),this.updateAttrs(),this.bidiCache=[]}finally{this.updateState=0}t&&this.focus(),this.requestMeasure()}updatePlugins(e){let t=e.startState.facet(bs),r=e.state.facet(bs);if(t!=r){let i=[];for(let s of r){let o=t.indexOf(s);if(o<0)i.push(new Xu(s));else{let a=this.plugins[o];a.mustUpdate=e,i.push(a)}}for(let s of this.plugins)s.mustUpdate!=e&&s.destroy(this);this.plugins=i,this.pluginMap.clear(),this.inputState.ensureHandlers(this,this.plugins)}else for(let i of this.plugins)i.mustUpdate=e;for(let i=0;i<this.plugins.length;i++)this.plugins[i].update(this)}measure(e=!0){if(this.destroyed)return;this.measureScheduled>-1&&this.win.cancelAnimationFrame(this.measureScheduled),this.measureScheduled=0,e&&this.observer.forceFlush();let t=null,r=this.scrollDOM,{scrollTop:i}=r,{scrollAnchorPos:s,scrollAnchorHeight:o}=this.viewState;i!=this.viewState.scrollTop&&(o=-1),this.viewState.scrollAnchorHeight=-1;try{for(let a=0;;a++){if(o<0)if(O1(r))s=-1,o=this.viewState.heightMap.height;else{let p=this.viewState.scrollAnchorAt(i);s=p.from,o=p.top}this.updateState=1;let l=this.viewState.measure(this);if(!l&&!this.measureRequests.length&&this.viewState.scrollTarget==null)break;if(a>5){console.warn(this.measureRequests.length?"Measure loop restarted more than 5 times":"Viewport failed to stabilize");break}let c=[];l&4||([this.measureRequests,c]=[c,this.measureRequests]);let u=c.map(p=>{try{return p.read(this)}catch(g){return pn(this.state,g),Dm}}),d=kc.create(this,this.state,[]),h=!1;d.flags|=l,t?t.flags|=l:t=d,this.updateState=2,d.empty||(this.updatePlugins(d),this.inputState.update(d),this.updateAttrs(),h=this.docView.update(d));for(let p=0;p<c.length;p++)if(u[p]!=Dm)try{let g=c[p];g.write&&g.write(u[p],this)}catch(g){pn(this.state,g)}if(h&&this.docView.updateSelection(!0),!d.viewportChanged&&this.measureRequests.length==0){if(this.viewState.editorHeight)if(this.viewState.scrollTarget){this.docView.scrollIntoView(this.viewState.scrollTarget),this.viewState.scrollTarget=null;continue}else{let g=(s<0?this.viewState.heightMap.height:this.viewState.lineBlockAt(s).top)-o;if(g>1||g<-1){i=r.scrollTop=i+g,o=-1;continue}}break}}}finally{this.updateState=0,this.measureScheduled=-1}if(t&&!t.empty)for(let a of this.state.facet(uf))a(t)}get themeClasses(){return xf+" "+(this.state.facet(bf)?xy:by)+" "+this.state.facet(Ho)}updateAttrs(){let e=Rm(this,Y1,{class:"cm-editor"+(this.hasFocus?" cm-focused ":" ")+this.themeClasses}),t={spellcheck:"false",autocorrect:"off",autocapitalize:"off",translate:"no",contenteditable:this.state.facet(hu)?"true":"false",class:"cm-content",style:`${X.tabSize}: ${this.state.tabSize}`,role:"textbox","aria-multiline":"true"};this.state.readOnly&&(t["aria-readonly"]="true"),Rm(this,vh,t);let r=this.observer.ignore(()=>{let i=lf(this.contentDOM,this.contentAttrs,t),s=lf(this.dom,this.editorAttrs,e);return i||s});return this.editorAttrs=e,this.contentAttrs=t,r}showAnnouncements(e){let t=!0;for(let r of e)for(let i of r.effects)if(i.is(G.announce)){t&&(this.announceDOM.textContent=""),t=!1;let s=this.announceDOM.appendChild(document.createElement("div"));s.textContent=i.value}}mountStyles(){this.styleModules=this.state.facet(xs);let e=this.state.facet(G.cspNonce);Ar.mount(this.root,this.styleModules.concat(XO).reverse(),e?{nonce:e}:void 0)}readMeasured(){if(this.updateState==2)throw new Error("Reading the editor layout isn't allowed during an update");this.updateState==0&&this.measureScheduled>-1&&this.measure(!1)}requestMeasure(e){if(this.measureScheduled<0&&(this.measureScheduled=this.win.requestAnimationFrame(()=>this.measure())),e){if(this.measureRequests.indexOf(e)>-1)return;if(e.key!=null){for(let t=0;t<this.measureRequests.length;t++)if(this.measureRequests[t].key===e.key){this.measureRequests[t]=e;return}}this.measureRequests.push(e)}}plugin(e){let t=this.pluginMap.get(e);return(t===void 0||t&&t.spec!=e)&&this.pluginMap.set(e,t=this.plugins.find(r=>r.spec==e)||null),t&&t.update(this).value}get documentTop(){return this.contentDOM.getBoundingClientRect().top+this.viewState.paddingTop}get documentPadding(){return{top:this.viewState.paddingTop,bottom:this.viewState.paddingBottom}}elementAtHeight(e){return this.readMeasured(),this.viewState.elementAtHeight(e)}lineBlockAtHeight(e){return this.readMeasured(),this.viewState.lineBlockAtHeight(e)}get viewportLineBlocks(){return this.viewState.viewportLines}lineBlockAt(e){return this.viewState.lineBlockAt(e)}get contentHeight(){return this.viewState.contentHeight}moveByChar(e,t,r){return ed(this,e,mm(this,e,t,r))}moveByGroup(e,t){return ed(this,e,mm(this,e,t,r=>kO(this,e.head,r)))}moveToLineBoundary(e,t,r=!0){return CO(this,e,t,r)}moveVertically(e,t,r){return ed(this,e,AO(this,e,t,r))}domAtPos(e){return this.docView.domAtPos(e)}posAtDOM(e,t=0){return this.docView.posFromDOM(e,t)}posAtCoords(e,t=!0){return this.readMeasured(),ay(this,e,t)}coordsAtPos(e,t=1){this.readMeasured();let r=this.docView.coordsAt(e,t);if(!r||r.left==r.right)return r;let i=this.state.doc.lineAt(e),s=this.bidiSpans(i),o=s[xr.find(s,e-i.from,-1,t)];return du(r,o.dir==qe.LTR==t>0)}coordsForChar(e){return this.readMeasured(),this.docView.coordsForChar(e)}get defaultCharacterWidth(){return this.viewState.heightOracle.charWidth}get defaultLineHeight(){return this.viewState.heightOracle.lineHeight}get textDirection(){return this.viewState.defaultTextDirection}textDirectionAt(e){return!this.state.facet(K1)||e<this.viewport.from||e>this.viewport.to?this.textDirection:(this.readMeasured(),this.docView.textDirectionAt(e))}get lineWrapping(){return this.viewState.heightOracle.lineWrapping}bidiSpans(e){if(e.length>aT)return ry(e.length);let t=this.textDirectionAt(e.from),r;for(let s of this.bidiCache)if(s.from==e.from&&s.dir==t&&(s.fresh||ny(s.isolates,r=lm(this,e.from,e.to))))return s.order;r||(r=lm(this,e.from,e.to));let i=uO(e.text,t,r);return this.bidiCache.push(new Ac(e.from,e.to,t,r,!0,i)),i}get hasFocus(){var e;return(this.dom.ownerDocument.hasFocus()||X.safari&&((e=this.inputState)===null||e===void 0?void 0:e.lastContextMenu)>Date.now()-3e4)&&this.root.activeElement==this.contentDOM}focus(){this.observer.ignore(()=>{D1(this.contentDOM),this.docView.updateSelection()})}setRoot(e){this._root!=e&&(this._root=e,this.observer.setWindow((e.nodeType==9?e:e.ownerDocument).defaultView||window),this.mountStyles())}destroy(){for(let e of this.plugins)e.destroy(this);this.plugins=[],this.inputState.destroy(),this.dom.remove(),this.observer.destroy(),this.measureScheduled>-1&&this.win.cancelAnimationFrame(this.measureScheduled),this.destroyed=!0}static scrollIntoView(e,t={}){return am.of(new Cc(typeof e=="number"?B.cursor(e):e,t.y,t.x,t.yMargin,t.xMargin))}static domEventHandlers(e){return it.define(()=>({}),{eventHandlers:e})}static theme(e,t){let r=Ar.newName(),i=[Ho.of(r),xs.of(yf(`.${r}`,e))];return t&&t.dark&&i.push(bf.of(!0)),i}static baseTheme(e){return ti.lowest(xs.of(yf("."+xf,e,yy)))}static findFromDOM(e){var t;let r=e.querySelector(".cm-content"),i=r&&Fe.get(r)||Fe.get(e);return((t=i?.rootView)===null||t===void 0?void 0:t.view)||null}}G.styleModule=xs;G.inputHandler=q1;G.focusChangeEffect=G1;G.perLineTextDirection=K1;G.exceptionSink=W1;G.updateListener=uf;G.editable=hu;G.mouseSelectionStyle=z1;G.dragMovesSelection=U1;G.clickAddsSelectionRange=V1;G.decorations=Us;G.atomicRanges=bh;G.bidiIsolatedRanges=J1;G.scrollMargins=X1;G.darkTheme=bf;G.cspNonce=J.define({combine:n=>n.length?n[0]:""});G.contentAttributes=vh;G.editorAttributes=Y1;G.lineWrapping=G.contentAttributes.of({class:"cm-lineWrapping"});G.announce=pe.define();const aT=4096,Dm={};class Ac{constructor(e,t,r,i,s,o){this.from=e,this.to=t,this.dir=r,this.isolates=i,this.fresh=s,this.order=o}static update(e,t){if(t.empty&&!e.some(s=>s.fresh))return e;let r=[],i=e.length?e[e.length-1].dir:qe.LTR;for(let s=Math.max(0,e.length-10);s<e.length;s++){let o=e[s];o.dir==i&&!t.touchesRange(o.from,o.to)&&r.push(new Ac(t.mapPos(o.from,1),t.mapPos(o.to,-1),o.dir,o.isolates,!1,o.order))}return r}}function Rm(n,e,t){for(let r=n.state.facet(e),i=r.length-1;i>=0;i--){let s=r[i],o=typeof s=="function"?s(n):s;o&&af(o,t)}return t}const lT=X.mac?"mac":X.windows?"win":X.linux?"linux":"key";function cT(n,e){const t=n.split(/-(?!$)/);let r=t[t.length-1];r=="Space"&&(r=" ");let i,s,o,a;for(let l=0;l<t.length-1;++l){const c=t[l];if(/^(cmd|meta|m)$/i.test(c))a=!0;else if(/^a(lt)?$/i.test(c))i=!0;else if(/^(c|ctrl|control)$/i.test(c))s=!0;else if(/^s(hift)?$/i.test(c))o=!0;else if(/^mod$/i.test(c))e=="mac"?a=!0:s=!0;else throw new Error("Unrecognized modifier name: "+c)}return i&&(r="Alt-"+r),s&&(r="Ctrl-"+r),a&&(r="Meta-"+r),o&&(r="Shift-"+r),r}function Vo(n,e,t){return e.altKey&&(n="Alt-"+n),e.ctrlKey&&(n="Ctrl-"+n),e.metaKey&&(n="Meta-"+n),t!==!1&&e.shiftKey&&(n="Shift-"+n),n}const uT=ti.default(G.domEventHandlers({keydown(n,e){return Cy(Sy(e.state),n,e,"editor")}})),ho=J.define({enables:uT}),Om=new WeakMap;function Sy(n){let e=n.facet(ho),t=Om.get(e);return t||Om.set(e,t=hT(e.reduce((r,i)=>r.concat(i),[]))),t}function dT(n,e,t){return Cy(Sy(n.state),e,n,t)}let mr=null;const fT=4e3;function hT(n,e=lT){let t=Object.create(null),r=Object.create(null),i=(o,a)=>{let l=r[o];if(l==null)r[o]=a;else if(l!=a)throw new Error("Key binding "+o+" is used both as a regular binding and as a multi-stroke prefix")},s=(o,a,l,c,u)=>{var d,h;let p=t[o]||(t[o]=Object.create(null)),g=a.split(/ (?!$)/).map(b=>cT(b,e));for(let b=1;b<g.length;b++){let y=g.slice(0,b).join(" ");i(y,!0),p[y]||(p[y]={preventDefault:!0,stopPropagation:!1,run:[S=>{let w=mr={view:S,prefix:y,scope:o};return setTimeout(()=>{mr==w&&(mr=null)},fT),!0}]})}let m=g.join(" ");i(m,!1);let v=p[m]||(p[m]={preventDefault:!1,stopPropagation:!1,run:((h=(d=p._any)===null||d===void 0?void 0:d.run)===null||h===void 0?void 0:h.slice())||[]});l&&v.run.push(l),c&&(v.preventDefault=!0),u&&(v.stopPropagation=!0)};for(let o of n){let a=o.scope?o.scope.split(" "):["editor"];if(o.any)for(let c of a){let u=t[c]||(t[c]=Object.create(null));u._any||(u._any={preventDefault:!1,stopPropagation:!1,run:[]});for(let d in u)u[d].run.push(o.any)}let l=o[e]||o.key;if(l)for(let c of a)s(c,l,o.run,o.preventDefault,o.stopPropagation),o.shift&&s(c,"Shift-"+l,o.shift,o.preventDefault,o.stopPropagation)}return t}function Cy(n,e,t,r){let i=VR(e),s=St(i,0),o=dn(s)==i.length&&i!=" ",a="",l=!1,c=!1,u=!1;mr&&mr.view==t&&mr.scope==r&&(a=mr.prefix+" ",cy.indexOf(e.keyCode)<0&&(c=!0,mr=null));let d=new Set,h=v=>{if(v){for(let b of v.run)if(!d.has(b)&&(d.add(b),b(t,e)))return v.stopPropagation&&(u=!0),!0;v.preventDefault&&(v.stopPropagation&&(u=!0),c=!0)}return!1},p=n[r],g,m;return p&&(h(p[a+Vo(i,e,!o)])?l=!0:o&&(e.altKey||e.metaKey||e.ctrlKey)&&!(X.windows&&e.ctrlKey&&e.altKey)&&(g=Mr[e.keyCode])&&g!=i?(h(p[a+Vo(g,e,!0)])||e.shiftKey&&(m=Vs[e.keyCode])!=i&&m!=g&&h(p[a+Vo(m,e,!1)]))&&(l=!0):o&&e.shiftKey&&h(p[a+Vo(i,e,!0)])&&(l=!0),!l&&h(p._any)&&(l=!0)),c&&(l=!0),l&&u&&e.stopPropagation(),l}class po{constructor(e,t,r,i,s){this.className=e,this.left=t,this.top=r,this.width=i,this.height=s}draw(){let e=document.createElement("div");return e.className=this.className,this.adjust(e),e}update(e,t){return t.className!=this.className?!1:(this.adjust(e),!0)}adjust(e){e.style.left=this.left+"px",e.style.top=this.top+"px",this.width!=null&&(e.style.width=this.width+"px"),e.style.height=this.height+"px"}eq(e){return this.left==e.left&&this.top==e.top&&this.width==e.width&&this.height==e.height&&this.className==e.className}static forRange(e,t,r){if(r.empty){let i=e.coordsAtPos(r.head,r.assoc||1);if(!i)return[];let s=ky(e);return[new po(t,i.left-s.left,i.top-s.top,null,i.bottom-i.top)]}else return pT(e,t,r)}}function ky(n){let e=n.scrollDOM.getBoundingClientRect();return{left:(n.textDirection==qe.LTR?e.left:e.right-n.scrollDOM.clientWidth)-n.scrollDOM.scrollLeft,top:e.top-n.scrollDOM.scrollTop}}function Tm(n,e,t){let r=B.cursor(e);return{from:Math.max(t.from,n.moveToLineBoundary(r,!1,!0).from),to:Math.min(t.to,n.moveToLineBoundary(r,!0,!0).from),type:Ge.Text}}function pT(n,e,t){if(t.to<=n.viewport.from||t.from>=n.viewport.to)return[];let r=Math.max(t.from,n.viewport.from),i=Math.min(t.to,n.viewport.to),s=n.textDirection==qe.LTR,o=n.contentDOM,a=o.getBoundingClientRect(),l=ky(n),c=o.querySelector(".cm-line"),u=c&&window.getComputedStyle(c),d=a.left+(u?parseInt(u.paddingLeft)+Math.min(0,parseInt(u.textIndent)):0),h=a.right-(u?parseInt(u.paddingRight):0),p=mf(n,r),g=mf(n,i),m=p.type==Ge.Text?p:null,v=g.type==Ge.Text?g:null;if(m&&(n.lineWrapping||p.widgetLineBreaks)&&(m=Tm(n,r,m)),v&&(n.lineWrapping||g.widgetLineBreaks)&&(v=Tm(n,i,v)),m&&v&&m.from==v.from)return y(S(t.from,t.to,m));{let C=m?S(t.from,null,m):w(p,!1),k=v?S(null,t.to,v):w(g,!0),A=[];return(m||p).to<(v||g).from-(m&&v?1:0)||p.widgetLineBreaks>1&&C.bottom+n.defaultLineHeight/2<k.top?A.push(b(d,C.bottom,h,k.top)):C.bottom<k.top&&n.elementAtHeight((C.bottom+k.top)/2).type==Ge.Text&&(C.bottom=k.top=(C.bottom+k.top)/2),y(C).concat(A).concat(y(k))}function b(C,k,A,I){return new po(e,C-l.left,k-l.top-.01,A-C,I-k+.01)}function y({top:C,bottom:k,horizontal:A}){let I=[];for(let D=0;D<A.length;D+=2)I.push(b(A[D],C,A[D+1],k));return I}function S(C,k,A){let I=1e9,D=-1e9,R=[];function T(L,$,q,Z,ae){let ee=n.coordsAtPos(L,L==A.to?-2:2),de=n.coordsAtPos(q,q==A.from?2:-2);!ee||!de||(I=Math.min(ee.top,de.top,I),D=Math.max(ee.bottom,de.bottom,D),ae==qe.LTR?R.push(s&&$?d:ee.left,s&&Z?h:de.right):R.push(!s&&Z?d:de.left,!s&&$?h:ee.right))}let N=C??A.from,P=k??A.to;for(let L of n.visibleRanges)if(L.to>N&&L.from<P)for(let $=Math.max(L.from,N),q=Math.min(L.to,P);;){let Z=n.state.doc.lineAt($);for(let ae of n.bidiSpans(Z)){let ee=ae.from+Z.from,de=ae.to+Z.from;if(ee>=q)break;de>$&&T(Math.max(ee,$),C==null&&ee<=N,Math.min(de,q),k==null&&de>=P,ae.dir)}if($=Z.to+1,$>=q)break}return R.length==0&&T(N,C==null,P,k==null,n.textDirection),{top:I,bottom:D,horizontal:R}}function w(C,k){let A=a.top+(k?C.top:C.bottom);return{top:A,bottom:A,horizontal:[]}}}function mT(n,e){return n.constructor==e.constructor&&n.eq(e)}class gT{constructor(e,t){this.view=e,this.layer=t,this.drawn=[],this.measureReq={read:this.measure.bind(this),write:this.draw.bind(this)},this.dom=e.scrollDOM.appendChild(document.createElement("div")),this.dom.classList.add("cm-layer"),t.above&&this.dom.classList.add("cm-layer-above"),t.class&&this.dom.classList.add(t.class),this.dom.setAttribute("aria-hidden","true"),this.setOrder(e.state),e.requestMeasure(this.measureReq),t.mount&&t.mount(this.dom,e)}update(e){e.startState.facet(Yl)!=e.state.facet(Yl)&&this.setOrder(e.state),(this.layer.update(e,this.dom)||e.geometryChanged)&&e.view.requestMeasure(this.measureReq)}setOrder(e){let t=0,r=e.facet(Yl);for(;t<r.length&&r[t]!=this.layer;)t++;this.dom.style.zIndex=String((this.layer.above?150:-1)-t)}measure(){return this.layer.markers(this.view)}draw(e){if(e.length!=this.drawn.length||e.some((t,r)=>!mT(t,this.drawn[r]))){let t=this.dom.firstChild,r=0;for(let i of e)i.update&&t&&i.constructor&&this.drawn[r].constructor&&i.update(t,this.drawn[r])?(t=t.nextSibling,r++):this.dom.insertBefore(i.draw(),t);for(;t;){let i=t.nextSibling;t.remove(),t=i}this.drawn=e}}destroy(){this.layer.destroy&&this.layer.destroy(this.dom,this.view),this.dom.remove()}}const Yl=J.define();function Ay(n){return[it.define(e=>new gT(e,n)),Yl.of(n)]}const My=!X.ios,Ws=J.define({combine(n){return Zn(n,{cursorBlinkRate:1200,drawRangeCursor:!0},{cursorBlinkRate:(e,t)=>Math.min(e,t),drawRangeCursor:(e,t)=>e||t})}});function vT(n={}){return[Ws.of(n),bT,xT,yT,Z1.of(!0)]}function Iy(n){return n.startState.facet(Ws)!=n.state.facet(Ws)}const bT=Ay({above:!0,markers(n){let{state:e}=n,t=e.facet(Ws),r=[];for(let i of e.selection.ranges){let s=i==e.selection.main;if(i.empty?!s||My:t.drawRangeCursor){let o=s?"cm-cursor cm-cursor-primary":"cm-cursor cm-cursor-secondary",a=i.empty?i:B.cursor(i.head,i.head>i.anchor?-1:1);for(let l of po.forRange(n,o,a))r.push(l)}}return r},update(n,e){n.transactions.some(r=>r.selection)&&(e.style.animationName=e.style.animationName=="cm-blink"?"cm-blink2":"cm-blink");let t=Iy(n);return t&&Nm(n.state,e),n.docChanged||n.selectionSet||t},mount(n,e){Nm(e.state,n)},class:"cm-cursorLayer"});function Nm(n,e){e.style.animationDuration=n.facet(Ws).cursorBlinkRate+"ms"}const xT=Ay({above:!1,markers(n){return n.state.selection.ranges.map(e=>e.empty?[]:po.forRange(n,"cm-selectionBackground",e)).reduce((e,t)=>e.concat(t))},update(n,e){return n.docChanged||n.selectionSet||n.viewportChanged||Iy(n)},class:"cm-selectionLayer"}),Ey={".cm-line":{"& ::selection":{backgroundColor:"transparent !important"},"&::selection":{backgroundColor:"transparent !important"}}};My&&(Ey[".cm-line"].caretColor="transparent !important");const yT=ti.highest(G.theme(Ey)),Dy=pe.define({map(n,e){return n==null?null:e.mapPos(n)}}),ws=bt.define({create(){return null},update(n,e){return n!=null&&(n=e.changes.mapPos(n)),e.effects.reduce((t,r)=>r.is(Dy)?r.value:t,n)}}),wT=it.fromClass(class{constructor(n){this.view=n,this.cursor=null,this.measureReq={read:this.readPos.bind(this),write:this.drawCursor.bind(this)}}update(n){var e;let t=n.state.field(ws);t==null?this.cursor!=null&&((e=this.cursor)===null||e===void 0||e.remove(),this.cursor=null):(this.cursor||(this.cursor=this.view.scrollDOM.appendChild(document.createElement("div")),this.cursor.className="cm-dropCursor"),(n.startState.field(ws)!=t||n.docChanged||n.geometryChanged)&&this.view.requestMeasure(this.measureReq))}readPos(){let n=this.view.state.field(ws),e=n!=null&&this.view.coordsAtPos(n);if(!e)return null;let t=this.view.scrollDOM.getBoundingClientRect();return{left:e.left-t.left+this.view.scrollDOM.scrollLeft,top:e.top-t.top+this.view.scrollDOM.scrollTop,height:e.bottom-e.top}}drawCursor(n){this.cursor&&(n?(this.cursor.style.left=n.left+"px",this.cursor.style.top=n.top+"px",this.cursor.style.height=n.height+"px"):this.cursor.style.left="-100000px")}destroy(){this.cursor&&this.cursor.remove()}setDropPos(n){this.view.state.field(ws)!=n&&this.view.dispatch({effects:Dy.of(n)})}},{eventHandlers:{dragover(n){this.setDropPos(this.view.posAtCoords({x:n.clientX,y:n.clientY}))},dragleave(n){(n.target==this.view.contentDOM||!this.view.contentDOM.contains(n.relatedTarget))&&this.setDropPos(null)},dragend(){this.setDropPos(null)},drop(){this.setDropPos(null)}}});function ST(){return[ws,wT]}function Pm(n,e,t,r,i){e.lastIndex=0;for(let s=n.iterRange(t,r),o=t,a;!s.next().done;o+=s.value.length)if(!s.lineBreak)for(;a=e.exec(s.value);)i(o+a.index,a)}function CT(n,e){let t=n.visibleRanges;if(t.length==1&&t[0].from==n.viewport.from&&t[0].to==n.viewport.to)return t;let r=[];for(let{from:i,to:s}of t)i=Math.max(n.state.doc.lineAt(i).from,i-e),s=Math.min(n.state.doc.lineAt(s).to,s+e),r.length&&r[r.length-1].to>=i?r[r.length-1].to=s:r.push({from:i,to:s});return r}class kT{constructor(e){const{regexp:t,decoration:r,decorate:i,boundary:s,maxLength:o=1e3}=e;if(!t.global)throw new RangeError("The regular expression given to MatchDecorator should have its 'g' flag set");if(this.regexp=t,i)this.addMatch=(a,l,c,u)=>i(u,c,c+a[0].length,a,l);else if(typeof r=="function")this.addMatch=(a,l,c,u)=>{let d=r(a,l,c);d&&u(c,c+a[0].length,d)};else if(r)this.addMatch=(a,l,c,u)=>u(c,c+a[0].length,r);else throw new RangeError("Either 'decorate' or 'decoration' should be provided to MatchDecorator");this.boundary=s,this.maxLength=o}createDeco(e){let t=new kr,r=t.add.bind(t);for(let{from:i,to:s}of CT(e,this.maxLength))Pm(e.state.doc,this.regexp,i,s,(o,a)=>this.addMatch(a,e,o,r));return t.finish()}updateDeco(e,t){let r=1e9,i=-1;return e.docChanged&&e.changes.iterChanges((s,o,a,l)=>{l>e.view.viewport.from&&a<e.view.viewport.to&&(r=Math.min(a,r),i=Math.max(l,i))}),e.viewportChanged||i-r>1e3?this.createDeco(e.view):i>-1?this.updateRange(e.view,t.map(e.changes),r,i):t}updateRange(e,t,r,i){for(let s of e.visibleRanges){let o=Math.max(s.from,r),a=Math.min(s.to,i);if(a>o){let l=e.state.doc.lineAt(o),c=l.to<a?e.state.doc.lineAt(a):l,u=Math.max(s.from,l.from),d=Math.min(s.to,c.to);if(this.boundary){for(;o>l.from;o--)if(this.boundary.test(l.text[o-1-l.from])){u=o;break}for(;a<c.to;a++)if(this.boundary.test(c.text[a-c.from])){d=a;break}}let h=[],p,g=(m,v,b)=>h.push(b.range(m,v));if(l==c)for(this.regexp.lastIndex=u-l.from;(p=this.regexp.exec(l.text))&&p.index<d-l.from;)this.addMatch(p,e,p.index+l.from,g);else Pm(e.state.doc,this.regexp,u,d,(m,v)=>this.addMatch(v,e,m,g));t=t.update({filterFrom:u,filterTo:d,filter:(m,v)=>m<u||v>d,add:h})}}return t}}const wf=/x/.unicode!=null?"gu":"g",AT=new RegExp(`[\0-\b
|
|
25
25
|
--\u2028\u2029\uFEFF-]`,wf),MT={0:"null",7:"bell",8:"backspace",10:"newline",11:"vertical tab",13:"carriage return",27:"escape",8203:"zero width space",8204:"zero width non-joiner",8205:"zero width joiner",8206:"left-to-right mark",8207:"right-to-left mark",8232:"line separator",8237:"left-to-right override",8238:"right-to-left override",8294:"left-to-right isolate",8295:"right-to-left isolate",8297:"pop directional isolate",8233:"paragraph separator",65279:"zero width no-break space",65532:"object replacement"};let rd=null;function IT(){var n;if(rd==null&&typeof document<"u"&&document.body){let e=document.body.style;rd=((n=e.tabSize)!==null&&n!==void 0?n:e.MozTabSize)!=null}return rd||!1}const Jl=J.define({combine(n){let e=Zn(n,{render:null,specialChars:AT,addSpecialChars:null});return(e.replaceTabs=!IT())&&(e.specialChars=new RegExp(" |"+e.specialChars.source,wf)),e.addSpecialChars&&(e.specialChars=new RegExp(e.specialChars.source+"|"+e.addSpecialChars.source,wf)),e}});function ET(n={}){return[Jl.of(n),DT()]}let Lm=null;function DT(){return Lm||(Lm=it.fromClass(class{constructor(n){this.view=n,this.decorations=le.none,this.decorationCache=Object.create(null),this.decorator=this.makeDecorator(n.state.facet(Jl)),this.decorations=this.decorator.createDeco(n)}makeDecorator(n){return new kT({regexp:n.specialChars,decoration:(e,t,r)=>{let{doc:i}=t.state,s=St(e[0],0);if(s==9){let o=i.lineAt(r),a=t.state.tabSize,l=co(o.text,a,r-o.from);return le.replace({widget:new NT((a-l%a)*this.view.defaultCharacterWidth)})}return this.decorationCache[s]||(this.decorationCache[s]=le.replace({widget:new TT(n,s)}))},boundary:n.replaceTabs?void 0:/[^]/})}update(n){let e=n.state.facet(Jl);n.startState.facet(Jl)!=e?(this.decorator=this.makeDecorator(e),this.decorations=this.decorator.createDeco(n.view)):this.decorations=this.decorator.updateDeco(n,this.decorations)}},{decorations:n=>n.decorations}))}const RT="•";function OT(n){return n>=32?RT:n==10?"":String.fromCharCode(9216+n)}class TT extends sr{constructor(e,t){super(),this.options=e,this.code=t}eq(e){return e.code==this.code}toDOM(e){let t=OT(this.code),r=e.state.phrase("Control character")+" "+(MT[this.code]||"0x"+this.code.toString(16)),i=this.options.render&&this.options.render(this.code,r,t);if(i)return i;let s=document.createElement("span");return s.textContent=t,s.title=r,s.setAttribute("aria-label",r),s.className="cm-specialChar",s}ignoreEvent(){return!1}}class NT extends sr{constructor(e){super(),this.width=e}eq(e){return e.width==this.width}toDOM(){let e=document.createElement("span");return e.textContent=" ",e.className="cm-tab",e.style.width=this.width+"px",e}ignoreEvent(){return!1}}function PT(){return _T}const LT=le.line({class:"cm-activeLine"}),_T=it.fromClass(class{constructor(n){this.decorations=this.getDeco(n)}update(n){(n.docChanged||n.selectionSet)&&(this.decorations=this.getDeco(n.view))}getDeco(n){let e=-1,t=[];for(let r of n.state.selection.ranges){let i=n.lineBlockAt(r.head);i.from>e&&(t.push(LT.range(i.from)),e=i.from)}return le.set(t)}},{decorations:n=>n.decorations});class jT extends sr{constructor(e){super(),this.content=e}toDOM(){let e=document.createElement("span");return e.className="cm-placeholder",e.style.pointerEvents="none",e.appendChild(typeof this.content=="string"?document.createTextNode(this.content):this.content),typeof this.content=="string"?e.setAttribute("aria-label","placeholder "+this.content):e.setAttribute("aria-hidden","true"),e}coordsAt(e){let t=e.firstChild?Vi(e.firstChild):[];if(!t.length)return null;let r=window.getComputedStyle(e.parentNode),i=du(t[0],r.direction!="rtl"),s=parseInt(r.lineHeight);return i.bottom-i.top>s*1.5?{left:i.left,right:i.right,top:i.top,bottom:i.top+s}:i}ignoreEvent(){return!1}}function BT(n){return it.fromClass(class{constructor(e){this.view=e,this.placeholder=n?le.set([le.widget({widget:new jT(n),side:1}).range(0)]):le.none}get decorations(){return this.view.state.doc.length?le.none:this.placeholder}},{decorations:e=>e.decorations})}const Sf=2e3;function $T(n,e,t){let r=Math.min(e.line,t.line),i=Math.max(e.line,t.line),s=[];if(e.off>Sf||t.off>Sf||e.col<0||t.col<0){let o=Math.min(e.off,t.off),a=Math.max(e.off,t.off);for(let l=r;l<=i;l++){let c=n.doc.line(l);c.length<=a&&s.push(B.range(c.from+o,c.to+a))}}else{let o=Math.min(e.col,t.col),a=Math.max(e.col,t.col);for(let l=r;l<=i;l++){let c=n.doc.line(l),u=Qd(c.text,o,n.tabSize,!0);if(u<0)s.push(B.cursor(c.to));else{let d=Qd(c.text,a,n.tabSize);s.push(B.range(c.from+u,c.from+d))}}}return s}function FT(n,e){let t=n.coordsAtPos(n.viewport.from);return t?Math.round(Math.abs((t.left-e)/n.defaultCharacterWidth)):-1}function _m(n,e){let t=n.posAtCoords({x:e.clientX,y:e.clientY},!1),r=n.state.doc.lineAt(t),i=t-r.from,s=i>Sf?-1:i==r.length?FT(n,e.clientX):co(r.text,n.state.tabSize,t-r.from);return{line:r.number,col:s,off:i}}function HT(n,e){let t=_m(n,e),r=n.state.selection;return t?{update(i){if(i.docChanged){let s=i.changes.mapPos(i.startState.doc.line(t.line).from),o=i.state.doc.lineAt(s);t={line:o.number,col:t.col,off:Math.min(t.off,o.length)},r=r.map(i.changes)}},get(i,s,o){let a=_m(n,i);if(!a)return r;let l=$T(n.state,t,a);return l.length?o?B.create(l.concat(r.ranges)):B.create(l):r}}:null}function VT(n){let e=(t=>t.altKey&&t.button==0);return G.mouseSelectionStyle.of((t,r)=>e(r)?HT(t,r):null)}const UT={Alt:[18,n=>!!n.altKey],Control:[17,n=>!!n.ctrlKey],Shift:[16,n=>!!n.shiftKey],Meta:[91,n=>!!n.metaKey]},zT={style:"cursor: crosshair"};function WT(n={}){let[e,t]=UT[n.key||"Alt"],r=it.fromClass(class{constructor(i){this.view=i,this.isDown=!1}set(i){this.isDown!=i&&(this.isDown=i,this.view.update([]))}},{eventHandlers:{keydown(i){this.set(i.keyCode==e||t(i))},keyup(i){(i.keyCode==e||!t(i))&&this.set(!1)},mousemove(i){this.set(t(i))}}});return[r,G.contentAttributes.of(i=>{var s;return!((s=i.plugin(r))===null||s===void 0)&&s.isDown?zT:null})]}const Uo="-10000px";class Ry{constructor(e,t,r){this.facet=t,this.createTooltipView=r,this.input=e.state.facet(t),this.tooltips=this.input.filter(i=>i),this.tooltipViews=this.tooltips.map(r)}update(e){var t;let r=e.state.facet(this.facet),i=r.filter(o=>o);if(r===this.input){for(let o of this.tooltipViews)o.update&&o.update(e);return!1}let s=[];for(let o=0;o<i.length;o++){let a=i[o],l=-1;if(a){for(let c=0;c<this.tooltips.length;c++){let u=this.tooltips[c];u&&u.create==a.create&&(l=c)}if(l<0)s[o]=this.createTooltipView(a);else{let c=s[o]=this.tooltipViews[l];c.update&&c.update(e)}}}for(let o of this.tooltipViews)s.indexOf(o)<0&&(o.dom.remove(),(t=o.destroy)===null||t===void 0||t.call(o));return this.input=r,this.tooltips=i,this.tooltipViews=s,!0}}function qT(n){let{win:e}=n;return{top:0,left:0,bottom:e.innerHeight,right:e.innerWidth}}const id=J.define({combine:n=>{var e,t,r;return{position:X.ios?"absolute":((e=n.find(i=>i.position))===null||e===void 0?void 0:e.position)||"fixed",parent:((t=n.find(i=>i.parent))===null||t===void 0?void 0:t.parent)||null,tooltipSpace:((r=n.find(i=>i.tooltipSpace))===null||r===void 0?void 0:r.tooltipSpace)||qT}}}),jm=new WeakMap,Oy=it.fromClass(class{constructor(n){this.view=n,this.inView=!0,this.lastTransaction=0,this.measureTimeout=-1;let e=n.state.facet(id);this.position=e.position,this.parent=e.parent,this.classes=n.themeClasses,this.createContainer(),this.measureReq={read:this.readMeasure.bind(this),write:this.writeMeasure.bind(this),key:this},this.manager=new Ry(n,yh,t=>this.createTooltip(t)),this.intersectionObserver=typeof IntersectionObserver=="function"?new IntersectionObserver(t=>{Date.now()>this.lastTransaction-50&&t.length>0&&t[t.length-1].intersectionRatio<1&&this.measureSoon()},{threshold:[1]}):null,this.observeIntersection(),n.win.addEventListener("resize",this.measureSoon=this.measureSoon.bind(this)),this.maybeMeasure()}createContainer(){this.parent?(this.container=document.createElement("div"),this.container.style.position="relative",this.container.className=this.view.themeClasses,this.parent.appendChild(this.container)):this.container=this.view.dom}observeIntersection(){if(this.intersectionObserver){this.intersectionObserver.disconnect();for(let n of this.manager.tooltipViews)this.intersectionObserver.observe(n.dom)}}measureSoon(){this.measureTimeout<0&&(this.measureTimeout=setTimeout(()=>{this.measureTimeout=-1,this.maybeMeasure()},50))}update(n){n.transactions.length&&(this.lastTransaction=Date.now());let e=this.manager.update(n);e&&this.observeIntersection();let t=e||n.geometryChanged,r=n.state.facet(id);if(r.position!=this.position){this.position=r.position;for(let i of this.manager.tooltipViews)i.dom.style.position=this.position;t=!0}if(r.parent!=this.parent){this.parent&&this.container.remove(),this.parent=r.parent,this.createContainer();for(let i of this.manager.tooltipViews)this.container.appendChild(i.dom);t=!0}else this.parent&&this.view.themeClasses!=this.classes&&(this.classes=this.container.className=this.view.themeClasses);t&&this.maybeMeasure()}createTooltip(n){let e=n.create(this.view);if(e.dom.classList.add("cm-tooltip"),n.arrow&&!e.dom.querySelector(".cm-tooltip > .cm-tooltip-arrow")){let t=document.createElement("div");t.className="cm-tooltip-arrow",e.dom.appendChild(t)}return e.dom.style.position=this.position,e.dom.style.top=Uo,this.container.appendChild(e.dom),e.mount&&e.mount(this.view),e}destroy(){var n,e;this.view.win.removeEventListener("resize",this.measureSoon);for(let t of this.manager.tooltipViews)t.dom.remove(),(n=t.destroy)===null||n===void 0||n.call(t);(e=this.intersectionObserver)===null||e===void 0||e.disconnect(),clearTimeout(this.measureTimeout)}readMeasure(){let n=this.view.dom.getBoundingClientRect();return{editor:n,parent:this.parent?this.container.getBoundingClientRect():n,pos:this.manager.tooltips.map((e,t)=>{let r=this.manager.tooltipViews[t];return r.getCoords?r.getCoords(e.pos):this.view.coordsAtPos(e.pos)}),size:this.manager.tooltipViews.map(({dom:e})=>e.getBoundingClientRect()),space:this.view.state.facet(id).tooltipSpace(this.view)}}writeMeasure(n){var e;let{editor:t,space:r}=n,i=[];for(let s=0;s<this.manager.tooltips.length;s++){let o=this.manager.tooltips[s],a=this.manager.tooltipViews[s],{dom:l}=a,c=n.pos[s],u=n.size[s];if(!c||c.bottom<=Math.max(t.top,r.top)||c.top>=Math.min(t.bottom,r.bottom)||c.right<Math.max(t.left,r.left)-.1||c.left>Math.min(t.right,r.right)+.1){l.style.top=Uo;continue}let d=o.arrow?a.dom.querySelector(".cm-tooltip-arrow"):null,h=d?7:0,p=u.right-u.left,g=(e=jm.get(a))!==null&&e!==void 0?e:u.bottom-u.top,m=a.offset||KT,v=this.view.textDirection==qe.LTR,b=u.width>r.right-r.left?v?r.left:r.right-u.width:v?Math.min(c.left-(d?14:0)+m.x,r.right-p):Math.max(r.left,c.left-p+(d?14:0)-m.x),y=!!o.above;!o.strictSide&&(y?c.top-(u.bottom-u.top)-m.y<r.top:c.bottom+(u.bottom-u.top)+m.y>r.bottom)&&y==r.bottom-c.bottom>c.top-r.top&&(y=!y);let S=(y?c.top-r.top:r.bottom-c.bottom)-h;if(S<g&&a.resize!==!1){if(S<this.view.defaultLineHeight){l.style.top=Uo;continue}jm.set(a,g),l.style.height=(g=S)+"px"}else l.style.height&&(l.style.height="");let w=y?c.top-g-h-m.y:c.bottom+h+m.y,C=b+p;if(a.overlap!==!0)for(let k of i)k.left<C&&k.right>b&&k.top<w+g&&k.bottom>w&&(w=y?k.top-g-2-h:k.bottom+h+2);this.position=="absolute"?(l.style.top=w-n.parent.top+"px",l.style.left=b-n.parent.left+"px"):(l.style.top=w+"px",l.style.left=b+"px"),d&&(d.style.left=`${c.left+(v?m.x:-m.x)-(b+14-7)}px`),a.overlap!==!0&&i.push({left:b,top:w,right:C,bottom:w+g}),l.classList.toggle("cm-tooltip-above",y),l.classList.toggle("cm-tooltip-below",!y),a.positioned&&a.positioned(n.space)}}maybeMeasure(){if(this.manager.tooltips.length&&(this.view.inView&&this.view.requestMeasure(this.measureReq),this.inView!=this.view.inView&&(this.inView=this.view.inView,!this.inView)))for(let n of this.manager.tooltipViews)n.dom.style.top=Uo}},{eventHandlers:{scroll(){this.maybeMeasure()}}}),GT=G.baseTheme({".cm-tooltip":{zIndex:100,boxSizing:"border-box"},"&light .cm-tooltip":{border:"1px solid #bbb",backgroundColor:"#f5f5f5"},"&light .cm-tooltip-section:not(:first-child)":{borderTop:"1px solid #bbb"},"&dark .cm-tooltip":{backgroundColor:"#333338",color:"white"},".cm-tooltip-arrow":{height:"7px",width:"14px",position:"absolute",zIndex:-1,overflow:"hidden","&:before, &:after":{content:"''",position:"absolute",width:0,height:0,borderLeft:"7px solid transparent",borderRight:"7px solid transparent"},".cm-tooltip-above &":{bottom:"-7px","&:before":{borderTop:"7px solid #bbb"},"&:after":{borderTop:"7px solid #f5f5f5",bottom:"1px"}},".cm-tooltip-below &":{top:"-7px","&:before":{borderBottom:"7px solid #bbb"},"&:after":{borderBottom:"7px solid #f5f5f5",top:"1px"}}},"&dark .cm-tooltip .cm-tooltip-arrow":{"&:before":{borderTopColor:"#333338",borderBottomColor:"#333338"},"&:after":{borderTopColor:"transparent",borderBottomColor:"transparent"}}}),KT={x:0,y:0},yh=J.define({enables:[Oy,GT]}),Mc=J.define();class wh{static create(e){return new wh(e)}constructor(e){this.view=e,this.mounted=!1,this.dom=document.createElement("div"),this.dom.classList.add("cm-tooltip-hover"),this.manager=new Ry(e,Mc,t=>this.createHostedView(t))}createHostedView(e){let t=e.create(this.view);return t.dom.classList.add("cm-tooltip-section"),this.dom.appendChild(t.dom),this.mounted&&t.mount&&t.mount(this.view),t}mount(e){for(let t of this.manager.tooltipViews)t.mount&&t.mount(e);this.mounted=!0}positioned(e){for(let t of this.manager.tooltipViews)t.positioned&&t.positioned(e)}update(e){this.manager.update(e)}destroy(){var e;for(let t of this.manager.tooltipViews)(e=t.destroy)===null||e===void 0||e.call(t)}}const ZT=yh.compute([Mc],n=>{let e=n.facet(Mc).filter(t=>t);return e.length===0?null:{pos:Math.min(...e.map(t=>t.pos)),end:Math.max(...e.filter(t=>t.end!=null).map(t=>t.end)),create:wh.create,above:e[0].above,arrow:e.some(t=>t.arrow)}});class YT{constructor(e,t,r,i,s){this.view=e,this.source=t,this.field=r,this.setHover=i,this.hoverTime=s,this.hoverTimeout=-1,this.restartTimeout=-1,this.pending=null,this.lastMove={x:0,y:0,target:e.dom,time:0},this.checkHover=this.checkHover.bind(this),e.dom.addEventListener("mouseleave",this.mouseleave=this.mouseleave.bind(this)),e.dom.addEventListener("mousemove",this.mousemove=this.mousemove.bind(this))}update(){this.pending&&(this.pending=null,clearTimeout(this.restartTimeout),this.restartTimeout=setTimeout(()=>this.startHover(),20))}get active(){return this.view.state.field(this.field)}checkHover(){if(this.hoverTimeout=-1,this.active)return;let e=Date.now()-this.lastMove.time;e<this.hoverTime?this.hoverTimeout=setTimeout(this.checkHover,this.hoverTime-e):this.startHover()}startHover(){clearTimeout(this.restartTimeout);let{view:e,lastMove:t}=this,r=e.docView.nearest(t.target);if(!r)return;let i,s=1;if(r instanceof br)i=r.posAtStart;else{if(i=e.posAtCoords(t),i==null)return;let a=e.coordsAtPos(i);if(!a||t.y<a.top||t.y>a.bottom||t.x<a.left-e.defaultCharacterWidth||t.x>a.right+e.defaultCharacterWidth)return;let l=e.bidiSpans(e.state.doc.lineAt(i)).find(u=>u.from<=i&&u.to>=i),c=l&&l.dir==qe.RTL?-1:1;s=t.x<a.left?-c:c}let o=this.source(e,i,s);if(o?.then){let a=this.pending={pos:i};o.then(l=>{this.pending==a&&(this.pending=null,l&&e.dispatch({effects:this.setHover.of(l)}))},l=>pn(e.state,l,"hover tooltip"))}else o&&e.dispatch({effects:this.setHover.of(o)})}mousemove(e){var t;this.lastMove={x:e.clientX,y:e.clientY,target:e.target,time:Date.now()},this.hoverTimeout<0&&(this.hoverTimeout=setTimeout(this.checkHover,this.hoverTime));let r=this.active;if(r&&!Bm(this.lastMove.target)||this.pending){let{pos:i}=r||this.pending,s=(t=r?.end)!==null&&t!==void 0?t:i;(i==s?this.view.posAtCoords(this.lastMove)!=i:!JT(this.view,i,s,e.clientX,e.clientY,6))&&(this.view.dispatch({effects:this.setHover.of(null)}),this.pending=null)}}mouseleave(e){clearTimeout(this.hoverTimeout),this.hoverTimeout=-1,this.active&&!Bm(e.relatedTarget)&&this.view.dispatch({effects:this.setHover.of(null)})}destroy(){clearTimeout(this.hoverTimeout),this.view.dom.removeEventListener("mouseleave",this.mouseleave),this.view.dom.removeEventListener("mousemove",this.mousemove)}}function Bm(n){for(let e=n;e;e=e.parentNode)if(e.nodeType==1&&e.classList.contains("cm-tooltip"))return!0;return!1}function JT(n,e,t,r,i,s){let o=document.createRange(),a=n.domAtPos(e),l=n.domAtPos(t);o.setEnd(l.node,l.offset),o.setStart(a.node,a.offset);let c=o.getClientRects();o.detach();for(let u=0;u<c.length;u++){let d=c[u];if(Math.max(d.top-i,i-d.bottom,d.left-r,r-d.right)<=s)return!0}return!1}function XT(n,e={}){let t=pe.define(),r=bt.define({create(){return null},update(i,s){if(i&&(e.hideOnChange&&(s.docChanged||s.selection)||e.hideOn&&e.hideOn(s,i)))return null;if(i&&s.docChanged){let o=s.changes.mapPos(i.pos,-1,kt.TrackDel);if(o==null)return null;let a=Object.assign(Object.create(null),i);a.pos=o,i.end!=null&&(a.end=s.changes.mapPos(i.end)),i=a}for(let o of s.effects)o.is(t)&&(i=o.value),o.is(QT)&&(i=null);return i},provide:i=>Mc.from(i)});return[r,it.define(i=>new YT(i,n,r,t,e.hoverTime||300)),ZT]}function Ty(n,e){let t=n.plugin(Oy);if(!t)return null;let r=t.manager.tooltips.indexOf(e);return r<0?null:t.manager.tooltipViews[r]}const QT=pe.define(),$m=J.define({combine(n){let e,t;for(let r of n)e=e||r.topContainer,t=t||r.bottomContainer;return{topContainer:e,bottomContainer:t}}});function qs(n,e){let t=n.plugin(Ny),r=t?t.specs.indexOf(e):-1;return r>-1?t.panels[r]:null}const Ny=it.fromClass(class{constructor(n){this.input=n.state.facet(Gs),this.specs=this.input.filter(t=>t),this.panels=this.specs.map(t=>t(n));let e=n.state.facet($m);this.top=new zo(n,!0,e.topContainer),this.bottom=new zo(n,!1,e.bottomContainer),this.top.sync(this.panels.filter(t=>t.top)),this.bottom.sync(this.panels.filter(t=>!t.top));for(let t of this.panels)t.dom.classList.add("cm-panel"),t.mount&&t.mount()}update(n){let e=n.state.facet($m);this.top.container!=e.topContainer&&(this.top.sync([]),this.top=new zo(n.view,!0,e.topContainer)),this.bottom.container!=e.bottomContainer&&(this.bottom.sync([]),this.bottom=new zo(n.view,!1,e.bottomContainer)),this.top.syncClasses(),this.bottom.syncClasses();let t=n.state.facet(Gs);if(t!=this.input){let r=t.filter(l=>l),i=[],s=[],o=[],a=[];for(let l of r){let c=this.specs.indexOf(l),u;c<0?(u=l(n.view),a.push(u)):(u=this.panels[c],u.update&&u.update(n)),i.push(u),(u.top?s:o).push(u)}this.specs=r,this.panels=i,this.top.sync(s),this.bottom.sync(o);for(let l of a)l.dom.classList.add("cm-panel"),l.mount&&l.mount()}else for(let r of this.panels)r.update&&r.update(n)}destroy(){this.top.sync([]),this.bottom.sync([])}},{provide:n=>G.scrollMargins.of(e=>{let t=e.plugin(n);return t&&{top:t.top.scrollMargin(),bottom:t.bottom.scrollMargin()}})});class zo{constructor(e,t,r){this.view=e,this.top=t,this.container=r,this.dom=void 0,this.classes="",this.panels=[],this.syncClasses()}sync(e){for(let t of this.panels)t.destroy&&e.indexOf(t)<0&&t.destroy();this.panels=e,this.syncDOM()}syncDOM(){if(this.panels.length==0){this.dom&&(this.dom.remove(),this.dom=void 0);return}if(!this.dom){this.dom=document.createElement("div"),this.dom.className=this.top?"cm-panels cm-panels-top":"cm-panels cm-panels-bottom",this.dom.style[this.top?"top":"bottom"]="0";let t=this.container||this.view.dom;t.insertBefore(this.dom,this.top?t.firstChild:null)}let e=this.dom.firstChild;for(let t of this.panels)if(t.dom.parentNode==this.dom){for(;e!=t.dom;)e=Fm(e);e=e.nextSibling}else this.dom.insertBefore(t.dom,e);for(;e;)e=Fm(e)}scrollMargin(){return!this.dom||this.container?0:Math.max(0,this.top?this.dom.getBoundingClientRect().bottom-Math.max(0,this.view.scrollDOM.getBoundingClientRect().top):Math.min(innerHeight,this.view.scrollDOM.getBoundingClientRect().bottom)-this.dom.getBoundingClientRect().top)}syncClasses(){if(!(!this.container||this.classes==this.view.themeClasses)){for(let e of this.classes.split(" "))e&&this.container.classList.remove(e);for(let e of(this.classes=this.view.themeClasses).split(" "))e&&this.container.classList.add(e)}}}function Fm(n){let e=n.nextSibling;return n.remove(),e}const Gs=J.define({enables:Ny});class rr extends Zr{compare(e){return this==e||this.constructor==e.constructor&&this.eq(e)}eq(e){return!1}destroy(e){}}rr.prototype.elementClass="";rr.prototype.toDOM=void 0;rr.prototype.mapMode=kt.TrackBefore;rr.prototype.startSide=rr.prototype.endSide=-1;rr.prototype.point=!0;const Xl=J.define(),eN={class:"",renderEmptyElements:!1,elementStyle:"",markers:()=>Ne.empty,lineMarker:()=>null,widgetMarker:()=>null,lineMarkerChange:null,initialSpacer:null,updateSpacer:null,domEventHandlers:{}},Rs=J.define();function tN(n){return[Py(),Rs.of(Object.assign(Object.assign({},eN),n))]}const Hm=J.define({combine:n=>n.some(e=>e)});function Py(n){return[nN]}const nN=it.fromClass(class{constructor(n){this.view=n,this.prevViewport=n.viewport,this.dom=document.createElement("div"),this.dom.className="cm-gutters",this.dom.setAttribute("aria-hidden","true"),this.dom.style.minHeight=this.view.contentHeight+"px",this.gutters=n.state.facet(Rs).map(e=>new Um(n,e));for(let e of this.gutters)this.dom.appendChild(e.dom);this.fixed=!n.state.facet(Hm),this.fixed&&(this.dom.style.position="sticky"),this.syncGutters(!1),n.scrollDOM.insertBefore(this.dom,n.contentDOM)}update(n){if(this.updateGutters(n)){let e=this.prevViewport,t=n.view.viewport,r=Math.min(e.to,t.to)-Math.max(e.from,t.from);this.syncGutters(r<(t.to-t.from)*.8)}n.geometryChanged&&(this.dom.style.minHeight=this.view.contentHeight+"px"),this.view.state.facet(Hm)!=!this.fixed&&(this.fixed=!this.fixed,this.dom.style.position=this.fixed?"sticky":""),this.prevViewport=n.view.viewport}syncGutters(n){let e=this.dom.nextSibling;n&&this.dom.remove();let t=Ne.iter(this.view.state.facet(Xl),this.view.viewport.from),r=[],i=this.gutters.map(s=>new rN(s,this.view.viewport,-this.view.documentPadding.top));for(let s of this.view.viewportLineBlocks)if(r.length&&(r=[]),Array.isArray(s.type)){let o=!0;for(let a of s.type)if(a.type==Ge.Text&&o){Cf(t,r,a.from);for(let l of i)l.line(this.view,a,r);o=!1}else if(a.widget)for(let l of i)l.widget(this.view,a)}else if(s.type==Ge.Text){Cf(t,r,s.from);for(let o of i)o.line(this.view,s,r)}for(let s of i)s.finish();n&&this.view.scrollDOM.insertBefore(this.dom,e)}updateGutters(n){let e=n.startState.facet(Rs),t=n.state.facet(Rs),r=n.docChanged||n.heightChanged||n.viewportChanged||!Ne.eq(n.startState.facet(Xl),n.state.facet(Xl),n.view.viewport.from,n.view.viewport.to);if(e==t)for(let i of this.gutters)i.update(n)&&(r=!0);else{r=!0;let i=[];for(let s of t){let o=e.indexOf(s);o<0?i.push(new Um(this.view,s)):(this.gutters[o].update(n),i.push(this.gutters[o]))}for(let s of this.gutters)s.dom.remove(),i.indexOf(s)<0&&s.destroy();for(let s of i)this.dom.appendChild(s.dom);this.gutters=i}return r}destroy(){for(let n of this.gutters)n.destroy();this.dom.remove()}},{provide:n=>G.scrollMargins.of(e=>{let t=e.plugin(n);return!t||t.gutters.length==0||!t.fixed?null:e.textDirection==qe.LTR?{left:t.dom.offsetWidth}:{right:t.dom.offsetWidth}})});function Vm(n){return Array.isArray(n)?n:[n]}function Cf(n,e,t){for(;n.value&&n.from<=t;)n.from==t&&e.push(n.value),n.next()}class rN{constructor(e,t,r){this.gutter=e,this.height=r,this.i=0,this.cursor=Ne.iter(e.markers,t.from)}addElement(e,t,r){let{gutter:i}=this,s=t.top-this.height;if(this.i==i.elements.length){let o=new Ly(e,t.height,s,r);i.elements.push(o),i.dom.appendChild(o.dom)}else i.elements[this.i].update(e,t.height,s,r);this.height=t.bottom,this.i++}line(e,t,r){let i=[];Cf(this.cursor,i,t.from),r.length&&(i=i.concat(r));let s=this.gutter.config.lineMarker(e,t,i);s&&i.unshift(s);let o=this.gutter;i.length==0&&!o.config.renderEmptyElements||this.addElement(e,t,i)}widget(e,t){let r=this.gutter.config.widgetMarker(e,t.widget,t);r&&this.addElement(e,t,[r])}finish(){let e=this.gutter;for(;e.elements.length>this.i;){let t=e.elements.pop();e.dom.removeChild(t.dom),t.destroy()}}}class Um{constructor(e,t){this.view=e,this.config=t,this.elements=[],this.spacer=null,this.dom=document.createElement("div"),this.dom.className="cm-gutter"+(this.config.class?" "+this.config.class:"");for(let r in t.domEventHandlers)this.dom.addEventListener(r,i=>{let s=i.target,o;if(s!=this.dom&&this.dom.contains(s)){for(;s.parentNode!=this.dom;)s=s.parentNode;let l=s.getBoundingClientRect();o=(l.top+l.bottom)/2}else o=i.clientY;let a=e.lineBlockAtHeight(o-e.documentTop);t.domEventHandlers[r](e,a,i)&&i.preventDefault()});this.markers=Vm(t.markers(e)),t.initialSpacer&&(this.spacer=new Ly(e,0,0,[t.initialSpacer(e)]),this.dom.appendChild(this.spacer.dom),this.spacer.dom.style.cssText+="visibility: hidden; pointer-events: none")}update(e){let t=this.markers;if(this.markers=Vm(this.config.markers(e.view)),this.spacer&&this.config.updateSpacer){let i=this.config.updateSpacer(this.spacer.markers[0],e);i!=this.spacer.markers[0]&&this.spacer.update(e.view,0,0,[i])}let r=e.view.viewport;return!Ne.eq(this.markers,t,r.from,r.to)||(this.config.lineMarkerChange?this.config.lineMarkerChange(e):!1)}destroy(){for(let e of this.elements)e.destroy()}}class Ly{constructor(e,t,r,i){this.height=-1,this.above=0,this.markers=[],this.dom=document.createElement("div"),this.dom.className="cm-gutterElement",this.update(e,t,r,i)}update(e,t,r,i){this.height!=t&&(this.dom.style.height=(this.height=t)+"px"),this.above!=r&&(this.dom.style.marginTop=(this.above=r)?r+"px":""),iN(this.markers,i)||this.setMarkers(e,i)}setMarkers(e,t){let r="cm-gutterElement",i=this.dom.firstChild;for(let s=0,o=0;;){let a=o,l=s<t.length?t[s++]:null,c=!1;if(l){let u=l.elementClass;u&&(r+=" "+u);for(let d=o;d<this.markers.length;d++)if(this.markers[d].compare(l)){a=d,c=!0;break}}else a=this.markers.length;for(;o<a;){let u=this.markers[o++];if(u.toDOM){u.destroy(i);let d=i.nextSibling;i.remove(),i=d}}if(!l)break;l.toDOM&&(c?i=i.nextSibling:this.dom.insertBefore(l.toDOM(e),i)),c&&o++}this.dom.className=r,this.markers=t}destroy(){this.setMarkers(null,[])}}function iN(n,e){if(n.length!=e.length)return!1;for(let t=0;t<n.length;t++)if(!n[t].compare(e[t]))return!1;return!0}const sN=J.define(),Mi=J.define({combine(n){return Zn(n,{formatNumber:String,domEventHandlers:{}},{domEventHandlers(e,t){let r=Object.assign({},e);for(let i in t){let s=r[i],o=t[i];r[i]=s?(a,l,c)=>s(a,l,c)||o(a,l,c):o}return r}})}});class sd extends rr{constructor(e){super(),this.number=e}eq(e){return this.number==e.number}toDOM(){return document.createTextNode(this.number)}}function od(n,e){return n.state.facet(Mi).formatNumber(e,n.state)}const oN=Rs.compute([Mi],n=>({class:"cm-lineNumbers",renderEmptyElements:!1,markers(e){return e.state.facet(sN)},lineMarker(e,t,r){return r.some(i=>i.toDOM)?null:new sd(od(e,e.state.doc.lineAt(t.from).number))},widgetMarker:()=>null,lineMarkerChange:e=>e.startState.facet(Mi)!=e.state.facet(Mi),initialSpacer(e){return new sd(od(e,zm(e.state.doc.lines)))},updateSpacer(e,t){let r=od(t.view,zm(t.view.state.doc.lines));return r==e.number?e:new sd(r)},domEventHandlers:n.facet(Mi).domEventHandlers}));function aN(n={}){return[Mi.of(n),Py(),oN]}function zm(n){let e=9;for(;e<n;)e=e*10+9;return e}const lN=new class extends rr{constructor(){super(...arguments),this.elementClass="cm-activeLineGutter"}},cN=Xl.compute(["selection"],n=>{let e=[],t=-1;for(let r of n.selection.ranges){let i=n.doc.lineAt(r.head).from;i>t&&(t=i,e.push(lN.range(i)))}return Ne.of(e)});function uN(){return cN}const dN=1024;let fN=0;class fn{constructor(e,t){this.from=e,this.to=t}}class xe{constructor(e={}){this.id=fN++,this.perNode=!!e.perNode,this.deserialize=e.deserialize||(()=>{throw new Error("This node type doesn't define a deserialize function")})}add(e){if(this.perNode)throw new RangeError("Can't add per-node props to node types");return typeof e!="function"&&(e=Xt.match(e)),t=>{let r=e(t);return r===void 0?null:[this,r]}}}xe.closedBy=new xe({deserialize:n=>n.split(" ")});xe.openedBy=new xe({deserialize:n=>n.split(" ")});xe.group=new xe({deserialize:n=>n.split(" ")});xe.isolate=new xe({deserialize:n=>{if(n&&n!="rtl"&&n!="ltr"&&n!="auto")throw new RangeError("Invalid value for isolate: "+n);return n||"auto"}});xe.contextHash=new xe({perNode:!0});xe.lookAhead=new xe({perNode:!0});xe.mounted=new xe({perNode:!0});class Ks{constructor(e,t,r){this.tree=e,this.overlay=t,this.parser=r}static get(e){return e&&e.props&&e.props[xe.mounted.id]}}const hN=Object.create(null);class Xt{constructor(e,t,r,i=0){this.name=e,this.props=t,this.id=r,this.flags=i}static define(e){let t=e.props&&e.props.length?Object.create(null):hN,r=(e.top?1:0)|(e.skipped?2:0)|(e.error?4:0)|(e.name==null?8:0),i=new Xt(e.name||"",t,e.id,r);if(e.props){for(let s of e.props)if(Array.isArray(s)||(s=s(i)),s){if(s[0].perNode)throw new RangeError("Can't store a per-node prop on a node type");t[s[0].id]=s[1]}}return i}prop(e){return this.props[e.id]}get isTop(){return(this.flags&1)>0}get isSkipped(){return(this.flags&2)>0}get isError(){return(this.flags&4)>0}get isAnonymous(){return(this.flags&8)>0}is(e){if(typeof e=="string"){if(this.name==e)return!0;let t=this.prop(xe.group);return t?t.indexOf(e)>-1:!1}return this.id==e}static match(e){let t=Object.create(null);for(let r in e)for(let i of r.split(" "))t[i]=e[r];return r=>{for(let i=r.prop(xe.group),s=-1;s<(i?i.length:0);s++){let o=t[s<0?r.name:i[s]];if(o)return o}}}}Xt.none=new Xt("",Object.create(null),0,8);class _y{constructor(e){this.types=e;for(let t=0;t<e.length;t++)if(e[t].id!=t)throw new RangeError("Node type ids should correspond to array positions when creating a node set")}extend(...e){let t=[];for(let r of this.types){let i=null;for(let s of e){let o=s(r);o&&(i||(i=Object.assign({},r.props)),i[o[0].id]=o[1])}t.push(i?new Xt(r.name,i,r.id,r.flags):r)}return new _y(t)}}const Wo=new WeakMap,Wm=new WeakMap;var We;(function(n){n[n.ExcludeBuffers=1]="ExcludeBuffers",n[n.IncludeAnonymous=2]="IncludeAnonymous",n[n.IgnoreMounts=4]="IgnoreMounts",n[n.IgnoreOverlays=8]="IgnoreOverlays"})(We||(We={}));class dt{constructor(e,t,r,i,s){if(this.type=e,this.children=t,this.positions=r,this.length=i,this.props=null,s&&s.length){this.props=Object.create(null);for(let[o,a]of s)this.props[typeof o=="number"?o:o.id]=a}}toString(){let e=Ks.get(this);if(e&&!e.overlay)return e.tree.toString();let t="";for(let r of this.children){let i=r.toString();i&&(t&&(t+=","),t+=i)}return this.type.name?(/\W/.test(this.type.name)&&!this.type.isError?JSON.stringify(this.type.name):this.type.name)+(t.length?"("+t+")":""):t}cursor(e=0){return new Ic(this.topNode,e)}cursorAt(e,t=0,r=0){let i=Wo.get(this)||this.topNode,s=new Ic(i);return s.moveTo(e,t),Wo.set(this,s._tree),s}get topNode(){return new Dt(this,0,0,null)}resolve(e,t=0){let r=Zs(Wo.get(this)||this.topNode,e,t,!1);return Wo.set(this,r),r}resolveInner(e,t=0){let r=Zs(Wm.get(this)||this.topNode,e,t,!0);return Wm.set(this,r),r}resolveStack(e,t=0){return gN(this,e,t)}iterate(e){let{enter:t,leave:r,from:i=0,to:s=this.length}=e,o=e.mode||0,a=(o&We.IncludeAnonymous)>0;for(let l=this.cursor(o|We.IncludeAnonymous);;){let c=!1;if(l.from<=s&&l.to>=i&&(!a&&l.type.isAnonymous||t(l)!==!1)){if(l.firstChild())continue;c=!0}for(;c&&r&&(a||!l.type.isAnonymous)&&r(l),!l.nextSibling();){if(!l.parent())return;c=!0}}}prop(e){return e.perNode?this.props?this.props[e.id]:void 0:this.type.prop(e)}get propValues(){let e=[];if(this.props)for(let t in this.props)e.push([+t,this.props[t]]);return e}balance(e={}){return this.children.length<=8?this:kh(Xt.none,this.children,this.positions,0,this.children.length,0,this.length,(t,r,i)=>new dt(this.type,t,r,i,this.propValues),e.makeTree||((t,r,i)=>new dt(Xt.none,t,r,i)))}static build(e){return vN(e)}}dt.empty=new dt(Xt.none,[],[],0);class Sh{constructor(e,t){this.buffer=e,this.index=t}get id(){return this.buffer[this.index-4]}get start(){return this.buffer[this.index-3]}get end(){return this.buffer[this.index-2]}get size(){return this.buffer[this.index-1]}get pos(){return this.index}next(){this.index-=4}fork(){return new Sh(this.buffer,this.index)}}class Dr{constructor(e,t,r){this.buffer=e,this.length=t,this.set=r}get type(){return Xt.none}toString(){let e=[];for(let t=0;t<this.buffer.length;)e.push(this.childString(t)),t=this.buffer[t+3];return e.join(",")}childString(e){let t=this.buffer[e],r=this.buffer[e+3],i=this.set.types[t],s=i.name;if(/\W/.test(s)&&!i.isError&&(s=JSON.stringify(s)),e+=4,r==e)return s;let o=[];for(;e<r;)o.push(this.childString(e)),e=this.buffer[e+3];return s+"("+o.join(",")+")"}findChild(e,t,r,i,s){let{buffer:o}=this,a=-1;for(let l=e;l!=t&&!(jy(s,i,o[l+1],o[l+2])&&(a=l,r>0));l=o[l+3]);return a}slice(e,t,r){let i=this.buffer,s=new Uint16Array(t-e),o=0;for(let a=e,l=0;a<t;){s[l++]=i[a++],s[l++]=i[a++]-r;let c=s[l++]=i[a++]-r;s[l++]=i[a++]-e,o=Math.max(o,c)}return new Dr(s,o,this.set)}}function jy(n,e,t,r){switch(n){case-2:return t<e;case-1:return r>=e&&t<e;case 0:return t<e&&r>e;case 1:return t<=e&&r>e;case 2:return r>e;case 4:return!0}}function Zs(n,e,t,r){for(var i;n.from==n.to||(t<1?n.from>=e:n.from>e)||(t>-1?n.to<=e:n.to<e);){let o=!r&&n instanceof Dt&&n.index<0?null:n.parent;if(!o)return n;n=o}let s=r?0:We.IgnoreOverlays;if(r)for(let o=n,a=o.parent;a;o=a,a=o.parent)o instanceof Dt&&o.index<0&&((i=a.enter(e,t,s))===null||i===void 0?void 0:i.from)!=o.from&&(n=a);for(;;){let o=n.enter(e,t,s);if(!o)return n;n=o}}class By{cursor(e=0){return new Ic(this,e)}getChild(e,t=null,r=null){let i=qm(this,e,t,r);return i.length?i[0]:null}getChildren(e,t=null,r=null){return qm(this,e,t,r)}resolve(e,t=0){return Zs(this,e,t,!1)}resolveInner(e,t=0){return Zs(this,e,t,!0)}matchContext(e){return kf(this.parent,e)}enterUnfinishedNodesBefore(e){let t=this.childBefore(e),r=this;for(;t;){let i=t.lastChild;if(!i||i.to!=t.to)break;i.type.isError&&i.from==i.to?(r=t,t=i.prevSibling):t=i}return r}get node(){return this}get next(){return this.parent}}class Dt extends By{constructor(e,t,r,i){super(),this._tree=e,this.from=t,this.index=r,this._parent=i}get type(){return this._tree.type}get name(){return this._tree.type.name}get to(){return this.from+this._tree.length}nextChild(e,t,r,i,s=0){for(let o=this;;){for(let{children:a,positions:l}=o._tree,c=t>0?a.length:-1;e!=c;e+=t){let u=a[e],d=l[e]+o.from;if(jy(i,r,d,d+u.length)){if(u instanceof Dr){if(s&We.ExcludeBuffers)continue;let h=u.findChild(0,u.buffer.length,t,r-d,i);if(h>-1)return new Hn(new pN(o,u,e,d),null,h)}else if(s&We.IncludeAnonymous||!u.type.isAnonymous||Ch(u)){let h;if(!(s&We.IgnoreMounts)&&(h=Ks.get(u))&&!h.overlay)return new Dt(h.tree,d,e,o);let p=new Dt(u,d,e,o);return s&We.IncludeAnonymous||!p.type.isAnonymous?p:p.nextChild(t<0?u.children.length-1:0,t,r,i)}}}if(s&We.IncludeAnonymous||!o.type.isAnonymous||(o.index>=0?e=o.index+t:e=t<0?-1:o._parent._tree.children.length,o=o._parent,!o))return null}}get firstChild(){return this.nextChild(0,1,0,4)}get lastChild(){return this.nextChild(this._tree.children.length-1,-1,0,4)}childAfter(e){return this.nextChild(0,1,e,2)}childBefore(e){return this.nextChild(this._tree.children.length-1,-1,e,-2)}enter(e,t,r=0){let i;if(!(r&We.IgnoreOverlays)&&(i=Ks.get(this._tree))&&i.overlay){let s=e-this.from;for(let{from:o,to:a}of i.overlay)if((t>0?o<=s:o<s)&&(t<0?a>=s:a>s))return new Dt(i.tree,i.overlay[0].from+this.from,-1,this)}return this.nextChild(0,1,e,t,r)}nextSignificantParent(){let e=this;for(;e.type.isAnonymous&&e._parent;)e=e._parent;return e}get parent(){return this._parent?this._parent.nextSignificantParent():null}get nextSibling(){return this._parent&&this.index>=0?this._parent.nextChild(this.index+1,1,0,4):null}get prevSibling(){return this._parent&&this.index>=0?this._parent.nextChild(this.index-1,-1,0,4):null}get tree(){return this._tree}toTree(){return this._tree}toString(){return this._tree.toString()}}function qm(n,e,t,r){let i=n.cursor(),s=[];if(!i.firstChild())return s;if(t!=null){for(let o=!1;!o;)if(o=i.type.is(t),!i.nextSibling())return s}for(;;){if(r!=null&&i.type.is(r))return s;if(i.type.is(e)&&s.push(i.node),!i.nextSibling())return r==null?s:[]}}function kf(n,e,t=e.length-1){for(let r=n;t>=0;r=r.parent){if(!r)return!1;if(!r.type.isAnonymous){if(e[t]&&e[t]!=r.name)return!1;t--}}return!0}class pN{constructor(e,t,r,i){this.parent=e,this.buffer=t,this.index=r,this.start=i}}class Hn extends By{get name(){return this.type.name}get from(){return this.context.start+this.context.buffer.buffer[this.index+1]}get to(){return this.context.start+this.context.buffer.buffer[this.index+2]}constructor(e,t,r){super(),this.context=e,this._parent=t,this.index=r,this.type=e.buffer.set.types[e.buffer.buffer[r]]}child(e,t,r){let{buffer:i}=this.context,s=i.findChild(this.index+4,i.buffer[this.index+3],e,t-this.context.start,r);return s<0?null:new Hn(this.context,this,s)}get firstChild(){return this.child(1,0,4)}get lastChild(){return this.child(-1,0,4)}childAfter(e){return this.child(1,e,2)}childBefore(e){return this.child(-1,e,-2)}enter(e,t,r=0){if(r&We.ExcludeBuffers)return null;let{buffer:i}=this.context,s=i.findChild(this.index+4,i.buffer[this.index+3],t>0?1:-1,e-this.context.start,t);return s<0?null:new Hn(this.context,this,s)}get parent(){return this._parent||this.context.parent.nextSignificantParent()}externalSibling(e){return this._parent?null:this.context.parent.nextChild(this.context.index+e,e,0,4)}get nextSibling(){let{buffer:e}=this.context,t=e.buffer[this.index+3];return t<(this._parent?e.buffer[this._parent.index+3]:e.buffer.length)?new Hn(this.context,this._parent,t):this.externalSibling(1)}get prevSibling(){let{buffer:e}=this.context,t=this._parent?this._parent.index+4:0;return this.index==t?this.externalSibling(-1):new Hn(this.context,this._parent,e.findChild(t,this.index,-1,0,4))}get tree(){return null}toTree(){let e=[],t=[],{buffer:r}=this.context,i=this.index+4,s=r.buffer[this.index+3];if(s>i){let o=r.buffer[this.index+1];e.push(r.slice(i,s,o)),t.push(0)}return new dt(this.type,e,t,this.to-this.from)}toString(){return this.context.buffer.childString(this.index)}}function $y(n){if(!n.length)return null;let e=0,t=n[0];for(let s=1;s<n.length;s++){let o=n[s];(o.from>t.from||o.to<t.to)&&(t=o,e=s)}let r=t instanceof Dt&&t.index<0?null:t.parent,i=n.slice();return r?i[e]=r:i.splice(e,1),new mN(i,t)}class mN{constructor(e,t){this.heads=e,this.node=t}get next(){return $y(this.heads)}}function gN(n,e,t){let r=n.resolveInner(e,t),i=null;for(let s=r instanceof Dt?r:r.context.parent;s;s=s.parent)if(s.index<0){let o=s.parent;(i||(i=[r])).push(o.resolve(e,t)),s=o}else{let o=Ks.get(s.tree);if(o&&o.overlay&&o.overlay[0].from<=e&&o.overlay[o.overlay.length-1].to>=e){let a=new Dt(o.tree,o.overlay[0].from+s.from,-1,s);(i||(i=[r])).push(Zs(a,e,t,!1))}}return i?$y(i):r}class Ic{get name(){return this.type.name}constructor(e,t=0){if(this.mode=t,this.buffer=null,this.stack=[],this.index=0,this.bufferNode=null,e instanceof Dt)this.yieldNode(e);else{this._tree=e.context.parent,this.buffer=e.context;for(let r=e._parent;r;r=r._parent)this.stack.unshift(r.index);this.bufferNode=e,this.yieldBuf(e.index)}}yieldNode(e){return e?(this._tree=e,this.type=e.type,this.from=e.from,this.to=e.to,!0):!1}yieldBuf(e,t){this.index=e;let{start:r,buffer:i}=this.buffer;return this.type=t||i.set.types[i.buffer[e]],this.from=r+i.buffer[e+1],this.to=r+i.buffer[e+2],!0}yield(e){return e?e instanceof Dt?(this.buffer=null,this.yieldNode(e)):(this.buffer=e.context,this.yieldBuf(e.index,e.type)):!1}toString(){return this.buffer?this.buffer.buffer.childString(this.index):this._tree.toString()}enterChild(e,t,r){if(!this.buffer)return this.yield(this._tree.nextChild(e<0?this._tree._tree.children.length-1:0,e,t,r,this.mode));let{buffer:i}=this.buffer,s=i.findChild(this.index+4,i.buffer[this.index+3],e,t-this.buffer.start,r);return s<0?!1:(this.stack.push(this.index),this.yieldBuf(s))}firstChild(){return this.enterChild(1,0,4)}lastChild(){return this.enterChild(-1,0,4)}childAfter(e){return this.enterChild(1,e,2)}childBefore(e){return this.enterChild(-1,e,-2)}enter(e,t,r=this.mode){return this.buffer?r&We.ExcludeBuffers?!1:this.enterChild(1,e,t):this.yield(this._tree.enter(e,t,r))}parent(){if(!this.buffer)return this.yieldNode(this.mode&We.IncludeAnonymous?this._tree._parent:this._tree.parent);if(this.stack.length)return this.yieldBuf(this.stack.pop());let e=this.mode&We.IncludeAnonymous?this.buffer.parent:this.buffer.parent.nextSignificantParent();return this.buffer=null,this.yieldNode(e)}sibling(e){if(!this.buffer)return this._tree._parent?this.yield(this._tree.index<0?null:this._tree._parent.nextChild(this._tree.index+e,e,0,4,this.mode)):!1;let{buffer:t}=this.buffer,r=this.stack.length-1;if(e<0){let i=r<0?0:this.stack[r]+4;if(this.index!=i)return this.yieldBuf(t.findChild(i,this.index,-1,0,4))}else{let i=t.buffer[this.index+3];if(i<(r<0?t.buffer.length:t.buffer[this.stack[r]+3]))return this.yieldBuf(i)}return r<0?this.yield(this.buffer.parent.nextChild(this.buffer.index+e,e,0,4,this.mode)):!1}nextSibling(){return this.sibling(1)}prevSibling(){return this.sibling(-1)}atLastNode(e){let t,r,{buffer:i}=this;if(i){if(e>0){if(this.index<i.buffer.buffer.length)return!1}else for(let s=0;s<this.index;s++)if(i.buffer.buffer[s+3]<this.index)return!1;({index:t,parent:r}=i)}else({index:t,_parent:r}=this._tree);for(;r;{index:t,_parent:r}=r)if(t>-1)for(let s=t+e,o=e<0?-1:r._tree.children.length;s!=o;s+=e){let a=r._tree.children[s];if(this.mode&We.IncludeAnonymous||a instanceof Dr||!a.type.isAnonymous||Ch(a))return!1}return!0}move(e,t){if(t&&this.enterChild(e,0,4))return!0;for(;;){if(this.sibling(e))return!0;if(this.atLastNode(e)||!this.parent())return!1}}next(e=!0){return this.move(1,e)}prev(e=!0){return this.move(-1,e)}moveTo(e,t=0){for(;(this.from==this.to||(t<1?this.from>=e:this.from>e)||(t>-1?this.to<=e:this.to<e))&&this.parent(););for(;this.enterChild(1,e,t););return this}get node(){if(!this.buffer)return this._tree;let e=this.bufferNode,t=null,r=0;if(e&&e.context==this.buffer)e:for(let i=this.index,s=this.stack.length;s>=0;){for(let o=e;o;o=o._parent)if(o.index==i){if(i==this.index)return o;t=o,r=s+1;break e}i=this.stack[--s]}for(let i=r;i<this.stack.length;i++)t=new Hn(this.buffer,t,this.stack[i]);return this.bufferNode=new Hn(this.buffer,t,this.index)}get tree(){return this.buffer?null:this._tree._tree}iterate(e,t){for(let r=0;;){let i=!1;if(this.type.isAnonymous||e(this)!==!1){if(this.firstChild()){r++;continue}this.type.isAnonymous||(i=!0)}for(;;){if(i&&t&&t(this),i=this.type.isAnonymous,!r)return;if(this.nextSibling())break;this.parent(),r--,i=!0}}}matchContext(e){if(!this.buffer)return kf(this.node.parent,e);let{buffer:t}=this.buffer,{types:r}=t.set;for(let i=e.length-1,s=this.stack.length-1;i>=0;s--){if(s<0)return kf(this._tree,e,i);let o=r[t.buffer[this.stack[s]]];if(!o.isAnonymous){if(e[i]&&e[i]!=o.name)return!1;i--}}return!0}}function Ch(n){return n.children.some(e=>e instanceof Dr||!e.type.isAnonymous||Ch(e))}function vN(n){var e;let{buffer:t,nodeSet:r,maxBufferLength:i=dN,reused:s=[],minRepeatType:o=r.types.length}=n,a=Array.isArray(t)?new Sh(t,t.length):t,l=r.types,c=0,u=0;function d(C,k,A,I,D,R){let{id:T,start:N,end:P,size:L}=a,$=u,q=c;for(;L<0;)if(a.next(),L==-1){let ge=s[T];A.push(ge),I.push(N-C);return}else if(L==-3){c=T;return}else if(L==-4){u=T;return}else throw new RangeError(`Unrecognized record size: ${L}`);let Z=l[T],ae,ee,de=N-C;if(P-N<=i&&(ee=v(a.pos-k,D))){let ge=new Uint16Array(ee.size-ee.skip),K=a.pos-ee.size,fe=ge.length;for(;a.pos>K;)fe=b(ee.start,ge,fe);ae=new Dr(ge,P-ee.start,r),de=ee.start-C}else{let ge=a.pos-L;a.next();let K=[],fe=[],re=T>=o?T:-1,ue=0,Q=P;for(;a.pos>ge;)re>=0&&a.id==re&&a.size>=0?(a.end<=Q-i&&(g(K,fe,N,ue,a.end,Q,re,$,q),ue=K.length,Q=a.end),a.next()):R>2500?h(N,ge,K,fe):d(N,ge,K,fe,re,R+1);if(re>=0&&ue>0&&ue<K.length&&g(K,fe,N,ue,N,Q,re,$,q),K.reverse(),fe.reverse(),re>-1&&ue>0){let ce=p(Z,q);ae=kh(Z,K,fe,0,K.length,0,P-N,ce,ce)}else ae=m(Z,K,fe,P-N,$-P,q)}A.push(ae),I.push(de)}function h(C,k,A,I){let D=[],R=0,T=-1;for(;a.pos>k;){let{id:N,start:P,end:L,size:$}=a;if($>4)a.next();else{if(T>-1&&P<T)break;T<0&&(T=L-i),D.push(N,P,L),R++,a.next()}}if(R){let N=new Uint16Array(R*4),P=D[D.length-2];for(let L=D.length-3,$=0;L>=0;L-=3)N[$++]=D[L],N[$++]=D[L+1]-P,N[$++]=D[L+2]-P,N[$++]=$;A.push(new Dr(N,D[2]-P,r)),I.push(P-C)}}function p(C,k){return(A,I,D)=>{let R=0,T=A.length-1,N,P;if(T>=0&&(N=A[T])instanceof dt){if(!T&&N.type==C&&N.length==D)return N;(P=N.prop(xe.lookAhead))&&(R=I[T]+N.length+P)}return m(C,A,I,D,R,k)}}function g(C,k,A,I,D,R,T,N,P){let L=[],$=[];for(;C.length>I;)L.push(C.pop()),$.push(k.pop()+A-D);C.push(m(r.types[T],L,$,R-D,N-R,P)),k.push(D-A)}function m(C,k,A,I,D,R,T){if(R){let N=[xe.contextHash,R];T=T?[N].concat(T):[N]}if(D>25){let N=[xe.lookAhead,D];T=T?[N].concat(T):[N]}return new dt(C,k,A,I,T)}function v(C,k){let A=a.fork(),I=0,D=0,R=0,T=A.end-i,N={size:0,start:0,skip:0};e:for(let P=A.pos-C;A.pos>P;){let L=A.size;if(A.id==k&&L>=0){N.size=I,N.start=D,N.skip=R,R+=4,I+=4,A.next();continue}let $=A.pos-L;if(L<0||$<P||A.start<T)break;let q=A.id>=o?4:0,Z=A.start;for(A.next();A.pos>$;){if(A.size<0)if(A.size==-3)q+=4;else break e;else A.id>=o&&(q+=4);A.next()}D=Z,I+=L,R+=q}return(k<0||I==C)&&(N.size=I,N.start=D,N.skip=R),N.size>4?N:void 0}function b(C,k,A){let{id:I,start:D,end:R,size:T}=a;if(a.next(),T>=0&&I<o){let N=A;if(T>4){let P=a.pos-(T-4);for(;a.pos>P;)A=b(C,k,A)}k[--A]=N,k[--A]=R-C,k[--A]=D-C,k[--A]=I}else T==-3?c=I:T==-4&&(u=I);return A}let y=[],S=[];for(;a.pos>0;)d(n.start||0,n.bufferStart||0,y,S,-1,0);let w=(e=n.length)!==null&&e!==void 0?e:y.length?S[0]+y[0].length:0;return new dt(l[n.topID],y.reverse(),S.reverse(),w)}const Gm=new WeakMap;function Ql(n,e){if(!n.isAnonymous||e instanceof Dr||e.type!=n)return 1;let t=Gm.get(e);if(t==null){t=1;for(let r of e.children){if(r.type!=n||!(r instanceof dt)){t=1;break}t+=Ql(n,r)}Gm.set(e,t)}return t}function kh(n,e,t,r,i,s,o,a,l){let c=0;for(let g=r;g<i;g++)c+=Ql(n,e[g]);let u=Math.ceil(c*1.5/8),d=[],h=[];function p(g,m,v,b,y){for(let S=v;S<b;){let w=S,C=m[S],k=Ql(n,g[S]);for(S++;S<b;S++){let A=Ql(n,g[S]);if(k+A>=u)break;k+=A}if(S==w+1){if(k>u){let A=g[w];p(A.children,A.positions,0,A.children.length,m[w]+y);continue}d.push(g[w])}else{let A=m[S-1]+g[S-1].length-C;d.push(kh(n,g,m,w,S,C,A,null,l))}h.push(C+y-s)}}return p(e,t,r,i,0),(a||l)(d,h,o)}class y6{constructor(){this.map=new WeakMap}setBuffer(e,t,r){let i=this.map.get(e);i||this.map.set(e,i=new Map),i.set(t,r)}getBuffer(e,t){let r=this.map.get(e);return r&&r.get(t)}set(e,t){e instanceof Hn?this.setBuffer(e.context.buffer,e.index,t):e instanceof Dt&&this.map.set(e.tree,t)}get(e){return e instanceof Hn?this.getBuffer(e.context.buffer,e.index):e instanceof Dt?this.map.get(e.tree):void 0}cursorSet(e,t){e.buffer?this.setBuffer(e.buffer.buffer,e.index,t):this.map.set(e.tree,t)}cursorGet(e){return e.buffer?this.getBuffer(e.buffer.buffer,e.index):this.map.get(e.tree)}}class er{constructor(e,t,r,i,s=!1,o=!1){this.from=e,this.to=t,this.tree=r,this.offset=i,this.open=(s?1:0)|(o?2:0)}get openStart(){return(this.open&1)>0}get openEnd(){return(this.open&2)>0}static addTree(e,t=[],r=!1){let i=[new er(0,e.length,e,0,!1,r)];for(let s of t)s.to>e.length&&i.push(s);return i}static applyChanges(e,t,r=128){if(!t.length)return e;let i=[],s=1,o=e.length?e[0]:null;for(let a=0,l=0,c=0;;a++){let u=a<t.length?t[a]:null,d=u?u.fromA:1e9;if(d-l>=r)for(;o&&o.from<d;){let h=o;if(l>=h.from||d<=h.to||c){let p=Math.max(h.from,l)-c,g=Math.min(h.to,d)-c;h=p>=g?null:new er(p,g,h.tree,h.offset+c,a>0,!!u)}if(h&&i.push(h),o.to>d)break;o=s<e.length?e[s++]:null}if(!u)break;l=u.toA,c=u.toA-u.toB}return i}}class bN{startParse(e,t,r){return typeof e=="string"&&(e=new xN(e)),r=r?r.length?r.map(i=>new fn(i.from,i.to)):[new fn(0,0)]:[new fn(0,e.length)],this.createParse(e,t||[],r)}parse(e,t,r){let i=this.startParse(e,t,r);for(;;){let s=i.advance();if(s)return s}}}class xN{constructor(e){this.string=e}get length(){return this.string.length}chunk(e){return this.string.slice(e)}get lineChunks(){return!1}read(e,t){return this.string.slice(e,t)}}function w6(n){return(e,t,r,i)=>new wN(e,n,t,r,i)}class Km{constructor(e,t,r,i,s){this.parser=e,this.parse=t,this.overlay=r,this.target=i,this.from=s}}function Zm(n){if(!n.length||n.some(e=>e.from>=e.to))throw new RangeError("Invalid inner parse ranges given: "+JSON.stringify(n))}class yN{constructor(e,t,r,i,s,o,a){this.parser=e,this.predicate=t,this.mounts=r,this.index=i,this.start=s,this.target=o,this.prev=a,this.depth=0,this.ranges=[]}}const Af=new xe({perNode:!0});class wN{constructor(e,t,r,i,s){this.nest=t,this.input=r,this.fragments=i,this.ranges=s,this.inner=[],this.innerDone=0,this.baseTree=null,this.stoppedAt=null,this.baseParse=e}advance(){if(this.baseParse){let r=this.baseParse.advance();if(!r)return null;if(this.baseParse=null,this.baseTree=r,this.startInner(),this.stoppedAt!=null)for(let i of this.inner)i.parse.stopAt(this.stoppedAt)}if(this.innerDone==this.inner.length){let r=this.baseTree;return this.stoppedAt!=null&&(r=new dt(r.type,r.children,r.positions,r.length,r.propValues.concat([[Af,this.stoppedAt]]))),r}let e=this.inner[this.innerDone],t=e.parse.advance();if(t){this.innerDone++;let r=Object.assign(Object.create(null),e.target.props);r[xe.mounted.id]=new Ks(t,e.overlay,e.parser),e.target.props=r}return null}get parsedPos(){if(this.baseParse)return 0;let e=this.input.length;for(let t=this.innerDone;t<this.inner.length;t++)this.inner[t].from<e&&(e=Math.min(e,this.inner[t].parse.parsedPos));return e}stopAt(e){if(this.stoppedAt=e,this.baseParse)this.baseParse.stopAt(e);else for(let t=this.innerDone;t<this.inner.length;t++)this.inner[t].parse.stopAt(e)}startInner(){let e=new kN(this.fragments),t=null,r=null,i=new Ic(new Dt(this.baseTree,this.ranges[0].from,0,null),We.IncludeAnonymous|We.IgnoreMounts);e:for(let s,o;;){let a=!0,l;if(this.stoppedAt!=null&&i.from>=this.stoppedAt)a=!1;else if(e.hasNode(i)){if(t){let c=t.mounts.find(u=>u.frag.from<=i.from&&u.frag.to>=i.to&&u.mount.overlay);if(c)for(let u of c.mount.overlay){let d=u.from+c.pos,h=u.to+c.pos;d>=i.from&&h<=i.to&&!t.ranges.some(p=>p.from<h&&p.to>d)&&t.ranges.push({from:d,to:h})}}a=!1}else if(r&&(o=SN(r.ranges,i.from,i.to)))a=o!=2;else if(!i.type.isAnonymous&&(s=this.nest(i,this.input))&&(i.from<i.to||!s.overlay)){i.tree||CN(i);let c=e.findMounts(i.from,s.parser);if(typeof s.overlay=="function")t=new yN(s.parser,s.overlay,c,this.inner.length,i.from,i.tree,t);else{let u=Xm(this.ranges,s.overlay||(i.from<i.to?[new fn(i.from,i.to)]:[]));u.length&&Zm(u),(u.length||!s.overlay)&&this.inner.push(new Km(s.parser,u.length?s.parser.startParse(this.input,Qm(c,u),u):s.parser.startParse(""),s.overlay?s.overlay.map(d=>new fn(d.from-i.from,d.to-i.from)):null,i.tree,u.length?u[0].from:i.from)),s.overlay?u.length&&(r={ranges:u,depth:0,prev:r}):a=!1}}else if(t&&(l=t.predicate(i))&&(l===!0&&(l=new fn(i.from,i.to)),l.from<l.to)){let c=t.ranges.length-1;c>=0&&t.ranges[c].to==l.from?t.ranges[c]={from:t.ranges[c].from,to:l.to}:t.ranges.push(l)}if(a&&i.firstChild())t&&t.depth++,r&&r.depth++;else for(;!i.nextSibling();){if(!i.parent())break e;if(t&&!--t.depth){let c=Xm(this.ranges,t.ranges);c.length&&(Zm(c),this.inner.splice(t.index,0,new Km(t.parser,t.parser.startParse(this.input,Qm(t.mounts,c),c),t.ranges.map(u=>new fn(u.from-t.start,u.to-t.start)),t.target,c[0].from))),t=t.prev}r&&!--r.depth&&(r=r.prev)}}}}function SN(n,e,t){for(let r of n){if(r.from>=t)break;if(r.to>e)return r.from<=e&&r.to>=t?2:1}return 0}function Ym(n,e,t,r,i,s){if(e<t){let o=n.buffer[e+1];r.push(n.slice(e,t,o)),i.push(o-s)}}function CN(n){let{node:e}=n,t=[],r=e.context.buffer;do t.push(n.index),n.parent();while(!n.tree);let i=n.tree,s=i.children.indexOf(r),o=i.children[s],a=o.buffer,l=[s];function c(u,d,h,p,g,m){let v=t[m],b=[],y=[];Ym(o,u,v,b,y,p);let S=a[v+1],w=a[v+2];l.push(b.length);let C=m?c(v+4,a[v+3],o.set.types[a[v]],S,w-S,m-1):e.toTree();return b.push(C),y.push(S-p),Ym(o,a[v+3],d,b,y,p),new dt(h,b,y,g)}i.children[s]=c(0,a.length,Xt.none,0,o.length,t.length-1);for(let u of l){let d=n.tree.children[u],h=n.tree.positions[u];n.yield(new Dt(d,h+n.from,u,n._tree))}}class Jm{constructor(e,t){this.offset=t,this.done=!1,this.cursor=e.cursor(We.IncludeAnonymous|We.IgnoreMounts)}moveTo(e){let{cursor:t}=this,r=e-this.offset;for(;!this.done&&t.from<r;)t.to>=e&&t.enter(r,1,We.IgnoreOverlays|We.ExcludeBuffers)||t.next(!1)||(this.done=!0)}hasNode(e){if(this.moveTo(e.from),!this.done&&this.cursor.from+this.offset==e.from&&this.cursor.tree)for(let t=this.cursor.tree;;){if(t==e.tree)return!0;if(t.children.length&&t.positions[0]==0&&t.children[0]instanceof dt)t=t.children[0];else break}return!1}}class kN{constructor(e){var t;if(this.fragments=e,this.curTo=0,this.fragI=0,e.length){let r=this.curFrag=e[0];this.curTo=(t=r.tree.prop(Af))!==null&&t!==void 0?t:r.to,this.inner=new Jm(r.tree,-r.offset)}else this.curFrag=this.inner=null}hasNode(e){for(;this.curFrag&&e.from>=this.curTo;)this.nextFrag();return this.curFrag&&this.curFrag.from<=e.from&&this.curTo>=e.to&&this.inner.hasNode(e)}nextFrag(){var e;if(this.fragI++,this.fragI==this.fragments.length)this.curFrag=this.inner=null;else{let t=this.curFrag=this.fragments[this.fragI];this.curTo=(e=t.tree.prop(Af))!==null&&e!==void 0?e:t.to,this.inner=new Jm(t.tree,-t.offset)}}findMounts(e,t){var r;let i=[];if(this.inner){this.inner.cursor.moveTo(e,1);for(let s=this.inner.cursor.node;s;s=s.parent){let o=(r=s.tree)===null||r===void 0?void 0:r.prop(xe.mounted);if(o&&o.parser==t)for(let a=this.fragI;a<this.fragments.length;a++){let l=this.fragments[a];if(l.from>=s.to)break;l.tree==this.curFrag.tree&&i.push({frag:l,pos:s.from-l.offset,mount:o})}}}return i}}function Xm(n,e){let t=null,r=e;for(let i=1,s=0;i<n.length;i++){let o=n[i-1].to,a=n[i].from;for(;s<r.length;s++){let l=r[s];if(l.from>=a)break;l.to<=o||(t||(r=t=e.slice()),l.from<o?(t[s]=new fn(l.from,o),l.to>a&&t.splice(s+1,0,new fn(a,l.to))):l.to>a?t[s--]=new fn(a,l.to):t.splice(s--,1))}}return r}function AN(n,e,t,r){let i=0,s=0,o=!1,a=!1,l=-1e9,c=[];for(;;){let u=i==n.length?1e9:o?n[i].to:n[i].from,d=s==e.length?1e9:a?e[s].to:e[s].from;if(o!=a){let h=Math.max(l,t),p=Math.min(u,d,r);h<p&&c.push(new fn(h,p))}if(l=Math.min(u,d),l==1e9)break;u==l&&(o?(o=!1,i++):o=!0),d==l&&(a?(a=!1,s++):a=!0)}return c}function Qm(n,e){let t=[];for(let{pos:r,mount:i,frag:s}of n){let o=r+(i.overlay?i.overlay[0].from:0),a=o+i.tree.length,l=Math.max(s.from,o),c=Math.min(s.to,a);if(i.overlay){let u=i.overlay.map(h=>new fn(h.from+r,h.to+r)),d=AN(e,u,l,c);for(let h=0,p=l;;h++){let g=h==d.length,m=g?c:d[h].from;if(m>p&&t.push(new er(p,m,i.tree,-o,s.from>=p||s.openStart,s.to<=m||s.openEnd)),g)break;p=d[h].to}}else t.push(new er(l,c,i.tree,-o,s.from>=o||s.openStart,s.to<=a||s.openEnd))}return t}let MN=0;class jn{constructor(e,t,r){this.set=e,this.base=t,this.modified=r,this.id=MN++}static define(e){if(e?.base)throw new Error("Can not derive from a modified tag");let t=new jn([],null,[]);if(t.set.push(t),e)for(let r of e.set)t.set.push(r);return t}static defineModifier(){let e=new Ec;return t=>t.modified.indexOf(e)>-1?t:Ec.get(t.base||t,t.modified.concat(e).sort((r,i)=>r.id-i.id))}}let IN=0;class Ec{constructor(){this.instances=[],this.id=IN++}static get(e,t){if(!t.length)return e;let r=t[0].instances.find(a=>a.base==e&&EN(t,a.modified));if(r)return r;let i=[],s=new jn(i,e,t);for(let a of t)a.instances.push(s);let o=DN(t);for(let a of e.set)if(!a.modified.length)for(let l of o)i.push(Ec.get(a,l));return s}}function EN(n,e){return n.length==e.length&&n.every((t,r)=>t==e[r])}function DN(n){let e=[[]];for(let t=0;t<n.length;t++)for(let r=0,i=e.length;r<i;r++)e.push(e[r].concat(n[t]));return e.sort((t,r)=>r.length-t.length)}function RN(n){let e=Object.create(null);for(let t in n){let r=n[t];Array.isArray(r)||(r=[r]);for(let i of t.split(" "))if(i){let s=[],o=2,a=i;for(let d=0;;){if(a=="..."&&d>0&&d+3==i.length){o=1;break}let h=/^"(?:[^"\\]|\\.)*?"|[^\/!]+/.exec(a);if(!h)throw new RangeError("Invalid path: "+i);if(s.push(h[0]=="*"?"":h[0][0]=='"'?JSON.parse(h[0]):h[0]),d+=h[0].length,d==i.length)break;let p=i[d++];if(d==i.length&&p=="!"){o=0;break}if(p!="/")throw new RangeError("Invalid path: "+i);a=i.slice(d)}let l=s.length-1,c=s[l];if(!c)throw new RangeError("Invalid path: "+i);let u=new Dc(r,o,l>0?s.slice(0,l):null);e[c]=u.sort(e[c])}}return Fy.add(e)}const Fy=new xe;class Dc{constructor(e,t,r,i){this.tags=e,this.mode=t,this.context=r,this.next=i}get opaque(){return this.mode==0}get inherit(){return this.mode==1}sort(e){return!e||e.depth<this.depth?(this.next=e,this):(e.next=this.sort(e.next),e)}get depth(){return this.context?this.context.length:0}}Dc.empty=new Dc([],2,null);function Hy(n,e){let t=Object.create(null);for(let s of n)if(!Array.isArray(s.tag))t[s.tag.id]=s.class;else for(let o of s.tag)t[o.id]=s.class;let{scope:r,all:i=null}=e||{};return{style:s=>{let o=i;for(let a of s)for(let l of a.set){let c=t[l.id];if(c){o=o?o+" "+c:c;break}}return o},scope:r}}function ON(n,e){let t=null;for(let r of n){let i=r.style(e);i&&(t=t?t+" "+i:i)}return t}function TN(n,e,t,r=0,i=n.length){let s=new NN(r,Array.isArray(e)?e:[e],t);s.highlightRange(n.cursor(),r,i,"",s.highlighters),s.flush(i)}class NN{constructor(e,t,r){this.at=e,this.highlighters=t,this.span=r,this.class=""}startSpan(e,t){t!=this.class&&(this.flush(e),e>this.at&&(this.at=e),this.class=t)}flush(e){e>this.at&&this.class&&this.span(this.at,e,this.class)}highlightRange(e,t,r,i,s){let{type:o,from:a,to:l}=e;if(a>=r||l<=t)return;o.isTop&&(s=this.highlighters.filter(p=>!p.scope||p.scope(o)));let c=i,u=PN(e)||Dc.empty,d=ON(s,u.tags);if(d&&(c&&(c+=" "),c+=d,u.mode==1&&(i+=(i?" ":"")+d)),this.startSpan(Math.max(t,a),c),u.opaque)return;let h=e.tree&&e.tree.prop(xe.mounted);if(h&&h.overlay){let p=e.node.enter(h.overlay[0].from+a,1),g=this.highlighters.filter(v=>!v.scope||v.scope(h.tree.type)),m=e.firstChild();for(let v=0,b=a;;v++){let y=v<h.overlay.length?h.overlay[v]:null,S=y?y.from+a:l,w=Math.max(t,b),C=Math.min(r,S);if(w<C&&m)for(;e.from<C&&(this.highlightRange(e,w,C,i,s),this.startSpan(Math.min(C,e.to),c),!(e.to>=S||!e.nextSibling())););if(!y||S>r)break;b=y.to+a,b>t&&(this.highlightRange(p.cursor(),Math.max(t,y.from+a),Math.min(r,b),"",g),this.startSpan(Math.min(r,b),c))}m&&e.parent()}else if(e.firstChild()){h&&(i="");do if(!(e.to<=t)){if(e.from>=r)break;this.highlightRange(e,t,r,i,s),this.startSpan(Math.min(r,e.to),c)}while(e.nextSibling());e.parent()}}}function PN(n){let e=n.type.prop(Fy);for(;e&&e.context&&!n.matchContext(e.context);)e=e.next;return e||null}const W=jn.define,qo=W(),hr=W(),eg=W(hr),tg=W(hr),pr=W(),Go=W(pr),ad=W(pr),Pn=W(),jr=W(Pn),Tn=W(),Nn=W(),Mf=W(),ps=W(Mf),Ko=W(),j={comment:qo,lineComment:W(qo),blockComment:W(qo),docComment:W(qo),name:hr,variableName:W(hr),typeName:eg,tagName:W(eg),propertyName:tg,attributeName:W(tg),className:W(hr),labelName:W(hr),namespace:W(hr),macroName:W(hr),literal:pr,string:Go,docString:W(Go),character:W(Go),attributeValue:W(Go),number:ad,integer:W(ad),float:W(ad),bool:W(pr),regexp:W(pr),escape:W(pr),color:W(pr),url:W(pr),keyword:Tn,self:W(Tn),null:W(Tn),atom:W(Tn),unit:W(Tn),modifier:W(Tn),operatorKeyword:W(Tn),controlKeyword:W(Tn),definitionKeyword:W(Tn),moduleKeyword:W(Tn),operator:Nn,derefOperator:W(Nn),arithmeticOperator:W(Nn),logicOperator:W(Nn),bitwiseOperator:W(Nn),compareOperator:W(Nn),updateOperator:W(Nn),definitionOperator:W(Nn),typeOperator:W(Nn),controlOperator:W(Nn),punctuation:Mf,separator:W(Mf),bracket:ps,angleBracket:W(ps),squareBracket:W(ps),paren:W(ps),brace:W(ps),content:Pn,heading:jr,heading1:W(jr),heading2:W(jr),heading3:W(jr),heading4:W(jr),heading5:W(jr),heading6:W(jr),contentSeparator:W(Pn),list:W(Pn),quote:W(Pn),emphasis:W(Pn),strong:W(Pn),link:W(Pn),monospace:W(Pn),strikethrough:W(Pn),inserted:W(),deleted:W(),changed:W(),invalid:W(),meta:Ko,documentMeta:W(Ko),annotation:W(Ko),processingInstruction:W(Ko),definition:jn.defineModifier(),constant:jn.defineModifier(),function:jn.defineModifier(),standard:jn.defineModifier(),local:jn.defineModifier(),special:jn.defineModifier()};Hy([{tag:j.link,class:"tok-link"},{tag:j.heading,class:"tok-heading"},{tag:j.emphasis,class:"tok-emphasis"},{tag:j.strong,class:"tok-strong"},{tag:j.keyword,class:"tok-keyword"},{tag:j.atom,class:"tok-atom"},{tag:j.bool,class:"tok-bool"},{tag:j.url,class:"tok-url"},{tag:j.labelName,class:"tok-labelName"},{tag:j.inserted,class:"tok-inserted"},{tag:j.deleted,class:"tok-deleted"},{tag:j.literal,class:"tok-literal"},{tag:j.string,class:"tok-string"},{tag:j.number,class:"tok-number"},{tag:[j.regexp,j.escape,j.special(j.string)],class:"tok-string2"},{tag:j.variableName,class:"tok-variableName"},{tag:j.local(j.variableName),class:"tok-variableName tok-local"},{tag:j.definition(j.variableName),class:"tok-variableName tok-definition"},{tag:j.special(j.variableName),class:"tok-variableName2"},{tag:j.definition(j.propertyName),class:"tok-propertyName tok-definition"},{tag:j.typeName,class:"tok-typeName"},{tag:j.namespace,class:"tok-namespace"},{tag:j.className,class:"tok-className"},{tag:j.macroName,class:"tok-macroName"},{tag:j.propertyName,class:"tok-propertyName"},{tag:j.operator,class:"tok-operator"},{tag:j.comment,class:"tok-comment"},{tag:j.meta,class:"tok-meta"},{tag:j.invalid,class:"tok-invalid"},{tag:j.punctuation,class:"tok-punctuation"}]);var ld;const Ii=new xe;function LN(n){return J.define({combine:n?e=>e.concat(n):void 0})}const _N=new xe;class yn{constructor(e,t,r=[],i=""){this.data=e,this.name=i,ye.prototype.hasOwnProperty("tree")||Object.defineProperty(ye.prototype,"tree",{get(){return At(this)}}),this.parser=t,this.extension=[Rr.of(this),ye.languageData.of((s,o,a)=>{let l=ng(s,o,a),c=l.type.prop(Ii);if(!c)return[];let u=s.facet(c),d=l.type.prop(_N);if(d){let h=l.resolve(o-l.from,a);for(let p of d)if(p.test(h,s)){let g=s.facet(p.facet);return p.type=="replace"?g:g.concat(u)}}return u})].concat(r)}isActiveAt(e,t,r=-1){return ng(e,t,r).type.prop(Ii)==this.data}findRegions(e){let t=e.facet(Rr);if(t?.data==this.data)return[{from:0,to:e.doc.length}];if(!t||!t.allowsNesting)return[];let r=[],i=(s,o)=>{if(s.prop(Ii)==this.data){r.push({from:o,to:o+s.length});return}let a=s.prop(xe.mounted);if(a){if(a.tree.prop(Ii)==this.data){if(a.overlay)for(let l of a.overlay)r.push({from:l.from+o,to:l.to+o});else r.push({from:o,to:o+s.length});return}else if(a.overlay){let l=r.length;if(i(a.tree,a.overlay[0].from+o),r.length>l)return}}for(let l=0;l<s.children.length;l++){let c=s.children[l];c instanceof dt&&i(c,s.positions[l]+o)}};return i(At(e),0),r}get allowsNesting(){return!0}}yn.setState=pe.define();function ng(n,e,t){let r=n.facet(Rr),i=At(n).topNode;if(!r||r.allowsNesting)for(let s=i;s;s=s.enter(e,t,We.ExcludeBuffers))s.type.isTop&&(i=s);return i}class If extends yn{constructor(e,t,r){super(e,t,[],r),this.parser=t}static define(e){let t=LN(e.languageData);return new If(t,e.parser.configure({props:[Ii.add(r=>r.isTop?t:void 0)]}),e.name)}configure(e,t){return new If(this.data,this.parser.configure(e),t||this.name)}get allowsNesting(){return this.parser.hasWrappers()}}function At(n){let e=n.field(yn.state,!1);return e?e.tree:dt.empty}class jN{constructor(e){this.doc=e,this.cursorPos=0,this.string="",this.cursor=e.iter()}get length(){return this.doc.length}syncTo(e){return this.string=this.cursor.next(e-this.cursorPos).value,this.cursorPos=e+this.string.length,this.cursorPos-this.string.length}chunk(e){return this.syncTo(e),this.string}get lineChunks(){return!0}read(e,t){let r=this.cursorPos-this.string.length;return e<r||t>=this.cursorPos?this.doc.sliceString(e,t):this.string.slice(e-r,t-r)}}let ms=null;class Rc{constructor(e,t,r=[],i,s,o,a,l){this.parser=e,this.state=t,this.fragments=r,this.tree=i,this.treeLen=s,this.viewport=o,this.skipped=a,this.scheduleOn=l,this.parse=null,this.tempSkipped=[]}static create(e,t,r){return new Rc(e,t,[],dt.empty,0,r,[],null)}startParse(){return this.parser.startParse(new jN(this.state.doc),this.fragments)}work(e,t){return t!=null&&t>=this.state.doc.length&&(t=void 0),this.tree!=dt.empty&&this.isDone(t??this.state.doc.length)?(this.takeTree(),!0):this.withContext(()=>{var r;if(typeof e=="number"){let i=Date.now()+e;e=()=>Date.now()>i}for(this.parse||(this.parse=this.startParse()),t!=null&&(this.parse.stoppedAt==null||this.parse.stoppedAt>t)&&t<this.state.doc.length&&this.parse.stopAt(t);;){let i=this.parse.advance();if(i)if(this.fragments=this.withoutTempSkipped(er.addTree(i,this.fragments,this.parse.stoppedAt!=null)),this.treeLen=(r=this.parse.stoppedAt)!==null&&r!==void 0?r:this.state.doc.length,this.tree=i,this.parse=null,this.treeLen<(t??this.state.doc.length))this.parse=this.startParse();else return!0;if(e())return!1}})}takeTree(){let e,t;this.parse&&(e=this.parse.parsedPos)>=this.treeLen&&((this.parse.stoppedAt==null||this.parse.stoppedAt>e)&&this.parse.stopAt(e),this.withContext(()=>{for(;!(t=this.parse.advance()););}),this.treeLen=e,this.tree=t,this.fragments=this.withoutTempSkipped(er.addTree(this.tree,this.fragments,!0)),this.parse=null)}withContext(e){let t=ms;ms=this;try{return e()}finally{ms=t}}withoutTempSkipped(e){for(let t;t=this.tempSkipped.pop();)e=rg(e,t.from,t.to);return e}changes(e,t){let{fragments:r,tree:i,treeLen:s,viewport:o,skipped:a}=this;if(this.takeTree(),!e.empty){let l=[];if(e.iterChangedRanges((c,u,d,h)=>l.push({fromA:c,toA:u,fromB:d,toB:h})),r=er.applyChanges(r,l),i=dt.empty,s=0,o={from:e.mapPos(o.from,-1),to:e.mapPos(o.to,1)},this.skipped.length){a=[];for(let c of this.skipped){let u=e.mapPos(c.from,1),d=e.mapPos(c.to,-1);u<d&&a.push({from:u,to:d})}}}return new Rc(this.parser,t,r,i,s,o,a,this.scheduleOn)}updateViewport(e){if(this.viewport.from==e.from&&this.viewport.to==e.to)return!1;this.viewport=e;let t=this.skipped.length;for(let r=0;r<this.skipped.length;r++){let{from:i,to:s}=this.skipped[r];i<e.to&&s>e.from&&(this.fragments=rg(this.fragments,i,s),this.skipped.splice(r--,1))}return this.skipped.length>=t?!1:(this.reset(),!0)}reset(){this.parse&&(this.takeTree(),this.parse=null)}skipUntilInView(e,t){this.skipped.push({from:e,to:t})}static getSkippingParser(e){return new class extends bN{createParse(t,r,i){let s=i[0].from,o=i[i.length-1].to;return{parsedPos:s,advance(){let l=ms;if(l){for(let c of i)l.tempSkipped.push(c);e&&(l.scheduleOn=l.scheduleOn?Promise.all([l.scheduleOn,e]):e)}return this.parsedPos=o,new dt(Xt.none,[],[],o-s)},stoppedAt:null,stopAt(){}}}}}isDone(e){e=Math.min(e,this.state.doc.length);let t=this.fragments;return this.treeLen>=e&&t.length&&t[0].from==0&&t[0].to>=e}static get(){return ms}}function rg(n,e,t){return er.applyChanges(n,[{fromA:e,toA:t,fromB:e,toB:t}])}class zi{constructor(e){this.context=e,this.tree=e.tree}apply(e){if(!e.docChanged&&this.tree==this.context.tree)return this;let t=this.context.changes(e.changes,e.state),r=this.context.treeLen==e.startState.doc.length?void 0:Math.max(e.changes.mapPos(this.context.treeLen),t.viewport.to);return t.work(20,r)||t.takeTree(),new zi(t)}static init(e){let t=Math.min(3e3,e.doc.length),r=Rc.create(e.facet(Rr).parser,e,{from:0,to:t});return r.work(20,t)||r.takeTree(),new zi(r)}}yn.state=bt.define({create:zi.init,update(n,e){for(let t of e.effects)if(t.is(yn.setState))return t.value;return e.startState.facet(Rr)!=e.state.facet(Rr)?zi.init(e.state):n.apply(e)}});let Vy=n=>{let e=setTimeout(()=>n(),500);return()=>clearTimeout(e)};typeof requestIdleCallback<"u"&&(Vy=n=>{let e=-1,t=setTimeout(()=>{e=requestIdleCallback(n,{timeout:400})},100);return()=>e<0?clearTimeout(t):cancelIdleCallback(e)});const cd=typeof navigator<"u"&&(!((ld=navigator.scheduling)===null||ld===void 0)&&ld.isInputPending)?()=>navigator.scheduling.isInputPending():null,BN=it.fromClass(class{constructor(e){this.view=e,this.working=null,this.workScheduled=0,this.chunkEnd=-1,this.chunkBudget=-1,this.work=this.work.bind(this),this.scheduleWork()}update(e){let t=this.view.state.field(yn.state).context;(t.updateViewport(e.view.viewport)||this.view.viewport.to>t.treeLen)&&this.scheduleWork(),e.docChanged&&(this.view.hasFocus&&(this.chunkBudget+=50),this.scheduleWork()),this.checkAsyncSchedule(t)}scheduleWork(){if(this.working)return;let{state:e}=this.view,t=e.field(yn.state);(t.tree!=t.context.tree||!t.context.isDone(e.doc.length))&&(this.working=Vy(this.work))}work(e){this.working=null;let t=Date.now();if(this.chunkEnd<t&&(this.chunkEnd<0||this.view.hasFocus)&&(this.chunkEnd=t+3e4,this.chunkBudget=3e3),this.chunkBudget<=0)return;let{state:r,viewport:{to:i}}=this.view,s=r.field(yn.state);if(s.tree==s.context.tree&&s.context.isDone(i+1e5))return;let o=Date.now()+Math.min(this.chunkBudget,100,e&&!cd?Math.max(25,e.timeRemaining()-5):1e9),a=s.context.treeLen<i&&r.doc.length>i+1e3,l=s.context.work(()=>cd&&cd()||Date.now()>o,i+(a?0:1e5));this.chunkBudget-=Date.now()-t,(l||this.chunkBudget<=0)&&(s.context.takeTree(),this.view.dispatch({effects:yn.setState.of(new zi(s.context))})),this.chunkBudget>0&&!(l&&!a)&&this.scheduleWork(),this.checkAsyncSchedule(s.context)}checkAsyncSchedule(e){e.scheduleOn&&(this.workScheduled++,e.scheduleOn.then(()=>this.scheduleWork()).catch(t=>pn(this.view.state,t)).then(()=>this.workScheduled--),e.scheduleOn=null)}destroy(){this.working&&this.working()}isWorking(){return!!(this.working||this.workScheduled>0)}},{eventHandlers:{focus(){this.scheduleWork()}}}),Rr=J.define({combine(n){return n.length?n[0]:null},enables:n=>[yn.state,BN,G.contentAttributes.compute([n],e=>{let t=e.facet(n);return t&&t.name?{"data-language":t.name}:{}})]});class C6{constructor(e,t=[]){this.language=e,this.support=t,this.extension=[e,t]}}const $N=J.define(),mo=J.define({combine:n=>{if(!n.length)return" ";let e=n[0];if(!e||/\S/.test(e)||Array.from(e).some(t=>t!=e[0]))throw new Error("Invalid indent unit: "+JSON.stringify(n[0]));return e}});function Oc(n){let e=n.facet(mo);return e.charCodeAt(0)==9?n.tabSize*e.length:e.length}function Ys(n,e){let t="",r=n.tabSize,i=n.facet(mo)[0];if(i==" "){for(;e>=r;)t+=" ",e-=r;i=" "}for(let s=0;s<e;s++)t+=i;return t}function Ah(n,e){n instanceof ye&&(n=new pu(n));for(let r of n.state.facet($N)){let i=r(n,e);if(i!==void 0)return i}let t=At(n.state);return t?HN(n,t,e):null}class pu{constructor(e,t={}){this.state=e,this.options=t,this.unit=Oc(e)}lineAt(e,t=1){let r=this.state.doc.lineAt(e),{simulateBreak:i,simulateDoubleBreak:s}=this.options;return i!=null&&i>=r.from&&i<=r.to?s&&i==e?{text:"",from:e}:(t<0?i<e:i<=e)?{text:r.text.slice(i-r.from),from:i}:{text:r.text.slice(0,i-r.from),from:r.from}:r}textAfterPos(e,t=1){if(this.options.simulateDoubleBreak&&e==this.options.simulateBreak)return"";let{text:r,from:i}=this.lineAt(e,t);return r.slice(e-i,Math.min(r.length,e+100-i))}column(e,t=1){let{text:r,from:i}=this.lineAt(e,t),s=this.countColumn(r,e-i),o=this.options.overrideIndentation?this.options.overrideIndentation(i):-1;return o>-1&&(s+=o-this.countColumn(r,r.search(/\S|$/))),s}countColumn(e,t=e.length){return co(e,this.state.tabSize,t)}lineIndent(e,t=1){let{text:r,from:i}=this.lineAt(e,t),s=this.options.overrideIndentation;if(s){let o=s(i);if(o>-1)return o}return this.countColumn(r,r.search(/\S|$/))}get simulatedBreak(){return this.options.simulateBreak||null}}const FN=new xe;function HN(n,e,t){return Uy(e.resolveInner(t).enterUnfinishedNodesBefore(t),t,n)}function VN(n){return n.pos==n.options.simulateBreak&&n.options.simulateDoubleBreak}function UN(n){let e=n.type.prop(FN);if(e)return e;let t=n.firstChild,r;if(t&&(r=t.type.prop(xe.closedBy))){let i=n.lastChild,s=i&&r.indexOf(i.name)>-1;return o=>zy(o,!0,1,void 0,s&&!VN(o)?i.from:void 0)}return n.parent==null?zN:null}function Uy(n,e,t){for(;n;n=n.parent){let r=UN(n);if(r)return r(Mh.create(t,e,n))}return null}function zN(){return 0}class Mh extends pu{constructor(e,t,r){super(e.state,e.options),this.base=e,this.pos=t,this.node=r}static create(e,t,r){return new Mh(e,t,r)}get textAfter(){return this.textAfterPos(this.pos)}get baseIndent(){return this.baseIndentFor(this.node)}baseIndentFor(e){let t=this.state.doc.lineAt(e.from);for(;;){let r=e.resolve(t.from);for(;r.parent&&r.parent.from==r.from;)r=r.parent;if(WN(r,e))break;t=this.state.doc.lineAt(r.from)}return this.lineIndent(t.from)}continue(){let e=this.node.parent;return e?Uy(e,this.pos,this.base):0}}function WN(n,e){for(let t=e;t;t=t.parent)if(n==t)return!0;return!1}function qN(n){let e=n.node,t=e.childAfter(e.from),r=e.lastChild;if(!t)return null;let i=n.options.simulateBreak,s=n.state.doc.lineAt(t.from),o=i==null||i<=s.from?s.to:Math.min(s.to,i);for(let a=t.to;;){let l=e.childAfter(a);if(!l||l==r)return null;if(!l.type.isSkipped)return l.from<o?t:null;a=l.to}}function k6({closing:n,align:e=!0,units:t=1}){return r=>zy(r,e,t,n)}function zy(n,e,t,r,i){let s=n.textAfter,o=s.match(/^\s*/)[0].length,a=r&&s.slice(o,o+r.length)==r||i==n.pos+o,l=e?qN(n):null;return l?a?n.column(l.from):n.column(l.to):n.baseIndent+(a?0:n.unit*t)}const A6=n=>n.baseIndent;function M6({except:n,units:e=1}={}){return t=>{let r=n&&n.test(t.textAfter);return t.baseIndent+(r?0:e*t.unit)}}const GN=200;function KN(){return ye.transactionFilter.of(n=>{if(!n.docChanged||!n.isUserEvent("input.type")&&!n.isUserEvent("input.complete"))return n;let e=n.startState.languageDataAt("indentOnInput",n.startState.selection.main.head);if(!e.length)return n;let t=n.newDoc,{head:r}=n.newSelection.main,i=t.lineAt(r);if(r>i.from+GN)return n;let s=t.sliceString(i.from,r);if(!e.some(c=>c.test(s)))return n;let{state:o}=n,a=-1,l=[];for(let{head:c}of o.selection.ranges){let u=o.doc.lineAt(c);if(u.from==a)continue;a=u.from;let d=Ah(o,u.from);if(d==null)continue;let h=/^\s*/.exec(u.text)[0],p=Ys(o,d);h!=p&&l.push({from:u.from,to:u.from+h.length,insert:p})}return l.length?[n,{changes:l,sequential:!0}]:n})}const ZN=J.define(),YN=new xe;function I6(n){let e=n.firstChild,t=n.lastChild;return e&&e.to<t.from?{from:e.to,to:t.type.isError?n.to:t.from}:null}function JN(n,e,t){let r=At(n);if(r.length<t)return null;let i=r.resolveInner(t,1),s=null;for(let o=i;o;o=o.parent){if(o.to<=t||o.from>t)continue;if(s&&o.from<e)break;let a=o.type.prop(YN);if(a&&(o.to<r.length-50||r.length==n.doc.length||!XN(o))){let l=a(o,n);l&&l.from<=t&&l.from>=e&&l.to>t&&(s=l)}}return s}function XN(n){let e=n.lastChild;return e&&e.to==n.to&&e.type.isError}function Tc(n,e,t){for(let r of n.facet(ZN)){let i=r(n,e,t);if(i)return i}return JN(n,e,t)}function Wy(n,e){let t=e.mapPos(n.from,1),r=e.mapPos(n.to,-1);return t>=r?void 0:{from:t,to:r}}const mu=pe.define({map:Wy}),go=pe.define({map:Wy});function qy(n){let e=[];for(let{head:t}of n.state.selection.ranges)e.some(r=>r.from<=t&&r.to>=t)||e.push(n.lineBlockAt(t));return e}const Jr=bt.define({create(){return le.none},update(n,e){n=n.map(e.changes);for(let t of e.effects)t.is(mu)&&!QN(n,t.value.from,t.value.to)?n=n.update({add:[ig.range(t.value.from,t.value.to)]}):t.is(go)&&(n=n.update({filter:(r,i)=>t.value.from!=r||t.value.to!=i,filterFrom:t.value.from,filterTo:t.value.to}));if(e.selection){let t=!1,{head:r}=e.selection.main;n.between(r,r,(i,s)=>{i<r&&s>r&&(t=!0)}),t&&(n=n.update({filterFrom:r,filterTo:r,filter:(i,s)=>s<=r||i>=r}))}return n},provide:n=>G.decorations.from(n),toJSON(n,e){let t=[];return n.between(0,e.doc.length,(r,i)=>{t.push(r,i)}),t},fromJSON(n){if(!Array.isArray(n)||n.length%2)throw new RangeError("Invalid JSON for fold state");let e=[];for(let t=0;t<n.length;){let r=n[t++],i=n[t++];if(typeof r!="number"||typeof i!="number")throw new RangeError("Invalid JSON for fold state");e.push(ig.range(r,i))}return le.set(e,!0)}});function Nc(n,e,t){var r;let i=null;return(r=n.field(Jr,!1))===null||r===void 0||r.between(e,t,(s,o)=>{(!i||i.from>s)&&(i={from:s,to:o})}),i}function QN(n,e,t){let r=!1;return n.between(e,e,(i,s)=>{i==e&&s==t&&(r=!0)}),r}function Gy(n,e){return n.field(Jr,!1)?e:e.concat(pe.appendConfig.of(Zy()))}const eP=n=>{for(let e of qy(n)){let t=Tc(n.state,e.from,e.to);if(t)return n.dispatch({effects:Gy(n.state,[mu.of(t),Ky(n,t)])}),!0}return!1},tP=n=>{if(!n.state.field(Jr,!1))return!1;let e=[];for(let t of qy(n)){let r=Nc(n.state,t.from,t.to);r&&e.push(go.of(r),Ky(n,r,!1))}return e.length&&n.dispatch({effects:e}),e.length>0};function Ky(n,e,t=!0){let r=n.state.doc.lineAt(e.from).number,i=n.state.doc.lineAt(e.to).number;return G.announce.of(`${n.state.phrase(t?"Folded lines":"Unfolded lines")} ${r} ${n.state.phrase("to")} ${i}.`)}const nP=n=>{let{state:e}=n,t=[];for(let r=0;r<e.doc.length;){let i=n.lineBlockAt(r),s=Tc(e,i.from,i.to);s&&t.push(mu.of(s)),r=(s?n.lineBlockAt(s.to):i).to+1}return t.length&&n.dispatch({effects:Gy(n.state,t)}),!!t.length},rP=n=>{let e=n.state.field(Jr,!1);if(!e||!e.size)return!1;let t=[];return e.between(0,n.state.doc.length,(r,i)=>{t.push(go.of({from:r,to:i}))}),n.dispatch({effects:t}),!0},iP=[{key:"Ctrl-Shift-[",mac:"Cmd-Alt-[",run:eP},{key:"Ctrl-Shift-]",mac:"Cmd-Alt-]",run:tP},{key:"Ctrl-Alt-[",run:nP},{key:"Ctrl-Alt-]",run:rP}],sP={placeholderDOM:null,placeholderText:"…"},oP=J.define({combine(n){return Zn(n,sP)}});function Zy(n){return[Jr,cP]}const ig=le.replace({widget:new class extends sr{toDOM(n){let{state:e}=n,t=e.facet(oP),r=s=>{let o=n.lineBlockAt(n.posAtDOM(s.target)),a=Nc(n.state,o.from,o.to);a&&n.dispatch({effects:go.of(a)}),s.preventDefault()};if(t.placeholderDOM)return t.placeholderDOM(n,r);let i=document.createElement("span");return i.textContent=t.placeholderText,i.setAttribute("aria-label",e.phrase("folded code")),i.title=e.phrase("unfold"),i.className="cm-foldPlaceholder",i.onclick=r,i}}}),aP={openText:"⌄",closedText:"›",markerDOM:null,domEventHandlers:{},foldingChanged:()=>!1};class ud extends rr{constructor(e,t){super(),this.config=e,this.open=t}eq(e){return this.config==e.config&&this.open==e.open}toDOM(e){if(this.config.markerDOM)return this.config.markerDOM(this.open);let t=document.createElement("span");return t.textContent=this.open?this.config.openText:this.config.closedText,t.title=e.state.phrase(this.open?"Fold line":"Unfold line"),t}}function lP(n={}){let e=Object.assign(Object.assign({},aP),n),t=new ud(e,!0),r=new ud(e,!1),i=it.fromClass(class{constructor(o){this.from=o.viewport.from,this.markers=this.buildMarkers(o)}update(o){(o.docChanged||o.viewportChanged||o.startState.facet(Rr)!=o.state.facet(Rr)||o.startState.field(Jr,!1)!=o.state.field(Jr,!1)||At(o.startState)!=At(o.state)||e.foldingChanged(o))&&(this.markers=this.buildMarkers(o.view))}buildMarkers(o){let a=new kr;for(let l of o.viewportLineBlocks){let c=Nc(o.state,l.from,l.to)?r:Tc(o.state,l.from,l.to)?t:null;c&&a.add(l.from,l.from,c)}return a.finish()}}),{domEventHandlers:s}=e;return[i,tN({class:"cm-foldGutter",markers(o){var a;return((a=o.plugin(i))===null||a===void 0?void 0:a.markers)||Ne.empty},initialSpacer(){return new ud(e,!1)},domEventHandlers:Object.assign(Object.assign({},s),{click:(o,a,l)=>{if(s.click&&s.click(o,a,l))return!0;let c=Nc(o.state,a.from,a.to);if(c)return o.dispatch({effects:go.of(c)}),!0;let u=Tc(o.state,a.from,a.to);return u?(o.dispatch({effects:mu.of(u)}),!0):!1}})}),Zy()]}const cP=G.baseTheme({".cm-foldPlaceholder":{backgroundColor:"#eee",border:"1px solid #ddd",color:"#888",borderRadius:".2em",margin:"0 1px",padding:"0 1px",cursor:"pointer"},".cm-foldGutter span":{padding:"0 1px",cursor:"pointer"}});class vo{constructor(e,t){this.specs=e;let r;function i(a){let l=Ar.newName();return(r||(r=Object.create(null)))["."+l]=a,l}const s=typeof t.all=="string"?t.all:t.all?i(t.all):void 0,o=t.scope;this.scope=o instanceof yn?a=>a.prop(Ii)==o.data:o?a=>a==o:void 0,this.style=Hy(e.map(a=>({tag:a.tag,class:a.class||i(Object.assign({},a,{tag:null}))})),{all:s}).style,this.module=r?new Ar(r):null,this.themeType=t.themeType}static define(e,t){return new vo(e,t||{})}}const Ef=J.define(),Yy=J.define({combine(n){return n.length?[n[0]]:null}});function dd(n){let e=n.facet(Ef);return e.length?e:n.facet(Yy)}function Jy(n,e){let t=[dP],r;return n instanceof vo&&(n.module&&t.push(G.styleModule.of(n.module)),r=n.themeType),e?.fallback?t.push(Yy.of(n)):r?t.push(Ef.computeN([G.darkTheme],i=>i.facet(G.darkTheme)==(r=="dark")?[n]:[])):t.push(Ef.of(n)),t}class uP{constructor(e){this.markCache=Object.create(null),this.tree=At(e.state),this.decorations=this.buildDeco(e,dd(e.state))}update(e){let t=At(e.state),r=dd(e.state),i=r!=dd(e.startState);t.length<e.view.viewport.to&&!i&&t.type==this.tree.type?this.decorations=this.decorations.map(e.changes):(t!=this.tree||e.viewportChanged||i)&&(this.tree=t,this.decorations=this.buildDeco(e.view,r))}buildDeco(e,t){if(!t||!this.tree.length)return le.none;let r=new kr;for(let{from:i,to:s}of e.visibleRanges)TN(this.tree,t,(o,a,l)=>{r.add(o,a,this.markCache[l]||(this.markCache[l]=le.mark({class:l})))},i,s);return r.finish()}}const dP=ti.high(it.fromClass(uP,{decorations:n=>n.decorations})),fP=vo.define([{tag:j.meta,color:"#404740"},{tag:j.link,textDecoration:"underline"},{tag:j.heading,textDecoration:"underline",fontWeight:"bold"},{tag:j.emphasis,fontStyle:"italic"},{tag:j.strong,fontWeight:"bold"},{tag:j.strikethrough,textDecoration:"line-through"},{tag:j.keyword,color:"#708"},{tag:[j.atom,j.bool,j.url,j.contentSeparator,j.labelName],color:"#219"},{tag:[j.literal,j.inserted],color:"#164"},{tag:[j.string,j.deleted],color:"#a11"},{tag:[j.regexp,j.escape,j.special(j.string)],color:"#e40"},{tag:j.definition(j.variableName),color:"#00f"},{tag:j.local(j.variableName),color:"#30a"},{tag:[j.typeName,j.namespace],color:"#085"},{tag:j.className,color:"#167"},{tag:[j.special(j.variableName),j.macroName],color:"#256"},{tag:j.definition(j.propertyName),color:"#00c"},{tag:j.comment,color:"#940"},{tag:j.invalid,color:"#f00"}]),hP=G.baseTheme({"&.cm-focused .cm-matchingBracket":{backgroundColor:"#328c8252"},"&.cm-focused .cm-nonmatchingBracket":{backgroundColor:"#bb555544"}}),Xy=1e4,Qy="()[]{}",ew=J.define({combine(n){return Zn(n,{afterCursor:!0,brackets:Qy,maxScanDistance:Xy,renderMatch:gP})}}),pP=le.mark({class:"cm-matchingBracket"}),mP=le.mark({class:"cm-nonmatchingBracket"});function gP(n){let e=[],t=n.matched?pP:mP;return e.push(t.range(n.start.from,n.start.to)),n.end&&e.push(t.range(n.end.from,n.end.to)),e}const vP=bt.define({create(){return le.none},update(n,e){if(!e.docChanged&&!e.selection)return n;let t=[],r=e.state.facet(ew);for(let i of e.state.selection.ranges){if(!i.empty)continue;let s=Vn(e.state,i.head,-1,r)||i.head>0&&Vn(e.state,i.head-1,1,r)||r.afterCursor&&(Vn(e.state,i.head,1,r)||i.head<e.state.doc.length&&Vn(e.state,i.head+1,-1,r));s&&(t=t.concat(r.renderMatch(s,e.state)))}return le.set(t,!0)},provide:n=>G.decorations.from(n)}),bP=[vP,hP];function xP(n={}){return[ew.of(n),bP]}const yP=new xe;function Df(n,e,t){let r=n.prop(e<0?xe.openedBy:xe.closedBy);if(r)return r;if(n.name.length==1){let i=t.indexOf(n.name);if(i>-1&&i%2==(e<0?1:0))return[t[i+e]]}return null}function Rf(n){let e=n.type.prop(yP);return e?e(n.node):n}function Vn(n,e,t,r={}){let i=r.maxScanDistance||Xy,s=r.brackets||Qy,o=At(n),a=o.resolveInner(e,t);for(let l=a;l;l=l.parent){let c=Df(l.type,t,s);if(c&&l.from<l.to){let u=Rf(l);if(u&&(t>0?e>=u.from&&e<u.to:e>u.from&&e<=u.to))return wP(n,e,t,l,u,c,s)}}return SP(n,e,t,o,a.type,i,s)}function wP(n,e,t,r,i,s,o){let a=r.parent,l={from:i.from,to:i.to},c=0,u=a?.cursor();if(u&&(t<0?u.childBefore(r.from):u.childAfter(r.to)))do if(t<0?u.to<=r.from:u.from>=r.to){if(c==0&&s.indexOf(u.type.name)>-1&&u.from<u.to){let d=Rf(u);return{start:l,end:d?{from:d.from,to:d.to}:void 0,matched:!0}}else if(Df(u.type,t,o))c++;else if(Df(u.type,-t,o)){if(c==0){let d=Rf(u);return{start:l,end:d&&d.from<d.to?{from:d.from,to:d.to}:void 0,matched:!1}}c--}}while(t<0?u.prevSibling():u.nextSibling());return{start:l,matched:!1}}function SP(n,e,t,r,i,s,o){let a=t<0?n.sliceDoc(e-1,e):n.sliceDoc(e,e+1),l=o.indexOf(a);if(l<0||l%2==0!=t>0)return null;let c={from:t<0?e-1:e,to:t>0?e+1:e},u=n.doc.iterRange(e,t>0?n.doc.length:0),d=0;for(let h=0;!u.next().done&&h<=s;){let p=u.value;t<0&&(h+=p.length);let g=e+h*t;for(let m=t>0?0:p.length-1,v=t>0?p.length:-1;m!=v;m+=t){let b=o.indexOf(p[m]);if(!(b<0||r.resolveInner(g+m,1).type!=i))if(b%2==0==t>0)d++;else{if(d==1)return{start:c,end:{from:g+m,to:g+m+1},matched:b>>1==l>>1};d--}}t>0&&(h+=p.length)}return u.done?{start:c,matched:!1}:null}const CP=Object.create(null),sg=[Xt.none],og=[],kP=Object.create(null);for(let[n,e]of[["variable","variableName"],["variable-2","variableName.special"],["string-2","string.special"],["def","variableName.definition"],["tag","tagName"],["attribute","attributeName"],["type","typeName"],["builtin","variableName.standard"],["qualifier","modifier"],["error","invalid"],["header","heading"],["property","propertyName"]])kP[n]=AP(CP,e);function fd(n,e){og.indexOf(n)>-1||(og.push(n),console.warn(e))}function AP(n,e){let t=null;for(let s of e.split(".")){let o=n[s]||j[s];o?typeof o=="function"?t?t=o(t):fd(s,`Modifier ${s} used at start of tag`):t?fd(s,`Tag ${s} used as modifier`):t=o:fd(s,`Unknown highlighting tag ${s}`)}if(!t)return 0;let r=e.replace(/ /g,"_"),i=Xt.define({id:sg.length,name:r,props:[RN({[r]:t})]});return sg.push(i),i.id}const MP=n=>{let{state:e}=n,t=e.doc.lineAt(e.selection.main.from),r=Eh(n.state,t.from);return r.line?IP(n):r.block?DP(n):!1};function Ih(n,e){return({state:t,dispatch:r})=>{if(t.readOnly)return!1;let i=n(e,t);return i?(r(t.update(i)),!0):!1}}const IP=Ih(TP,0),EP=Ih(tw,0),DP=Ih((n,e)=>tw(n,e,OP(e)),0);function Eh(n,e){let t=n.languageDataAt("commentTokens",e);return t.length?t[0]:{}}const gs=50;function RP(n,{open:e,close:t},r,i){let s=n.sliceDoc(r-gs,r),o=n.sliceDoc(i,i+gs),a=/\s*$/.exec(s)[0].length,l=/^\s*/.exec(o)[0].length,c=s.length-a;if(s.slice(c-e.length,c)==e&&o.slice(l,l+t.length)==t)return{open:{pos:r-a,margin:a&&1},close:{pos:i+l,margin:l&&1}};let u,d;i-r<=2*gs?u=d=n.sliceDoc(r,i):(u=n.sliceDoc(r,r+gs),d=n.sliceDoc(i-gs,i));let h=/^\s*/.exec(u)[0].length,p=/\s*$/.exec(d)[0].length,g=d.length-p-t.length;return u.slice(h,h+e.length)==e&&d.slice(g,g+t.length)==t?{open:{pos:r+h+e.length,margin:/\s/.test(u.charAt(h+e.length))?1:0},close:{pos:i-p-t.length,margin:/\s/.test(d.charAt(g-1))?1:0}}:null}function OP(n){let e=[];for(let t of n.selection.ranges){let r=n.doc.lineAt(t.from),i=t.to<=r.to?r:n.doc.lineAt(t.to),s=e.length-1;s>=0&&e[s].to>r.from?e[s].to=i.to:e.push({from:r.from+/^\s*/.exec(r.text)[0].length,to:i.to})}return e}function tw(n,e,t=e.selection.ranges){let r=t.map(s=>Eh(e,s.from).block);if(!r.every(s=>s))return null;let i=t.map((s,o)=>RP(e,r[o],s.from,s.to));if(n!=2&&!i.every(s=>s))return{changes:e.changes(t.map((s,o)=>i[o]?[]:[{from:s.from,insert:r[o].open+" "},{from:s.to,insert:" "+r[o].close}]))};if(n!=1&&i.some(s=>s)){let s=[];for(let o=0,a;o<i.length;o++)if(a=i[o]){let l=r[o],{open:c,close:u}=a;s.push({from:c.pos-l.open.length,to:c.pos+c.margin},{from:u.pos-u.margin,to:u.pos+l.close.length})}return{changes:s}}return null}function TP(n,e,t=e.selection.ranges){let r=[],i=-1;for(let{from:s,to:o}of t){let a=r.length,l=1e9,c=Eh(e,s).line;if(c){for(let u=s;u<=o;){let d=e.doc.lineAt(u);if(d.from>i&&(s==o||o>d.from)){i=d.from;let h=/^\s*/.exec(d.text)[0].length,p=h==d.length,g=d.text.slice(h,h+c.length)==c?h:-1;h<d.text.length&&h<l&&(l=h),r.push({line:d,comment:g,token:c,indent:h,empty:p,single:!1})}u=d.to+1}if(l<1e9)for(let u=a;u<r.length;u++)r[u].indent<r[u].line.text.length&&(r[u].indent=l);r.length==a+1&&(r[a].single=!0)}}if(n!=2&&r.some(s=>s.comment<0&&(!s.empty||s.single))){let s=[];for(let{line:a,token:l,indent:c,empty:u,single:d}of r)(d||!u)&&s.push({from:a.from+c,insert:l+" "});let o=e.changes(s);return{changes:o,selection:e.selection.map(o,1)}}else if(n!=1&&r.some(s=>s.comment>=0)){let s=[];for(let{line:o,comment:a,token:l}of r)if(a>=0){let c=o.from+a,u=c+l.length;o.text[u-o.from]==" "&&u++,s.push({from:c,to:u})}return{changes:s}}return null}const Of=Kn.define(),NP=Kn.define(),PP=J.define(),nw=J.define({combine(n){return Zn(n,{minDepth:100,newGroupDelay:500,joinToEvent:(e,t)=>t},{minDepth:Math.max,newGroupDelay:Math.min,joinToEvent:(e,t)=>(r,i)=>e(r,i)||t(r,i)})}});function LP(n){let e=0;return n.iterChangedRanges((t,r)=>e=r),e}const rw=bt.define({create(){return Un.empty},update(n,e){let t=e.state.facet(nw),r=e.annotation(Of);if(r){let l=e.docChanged?B.single(LP(e.changes)):void 0,c=Zt.fromTransaction(e,l),u=r.side,d=u==0?n.undone:n.done;return c?d=Pc(d,d.length,t.minDepth,c):d=ow(d,e.startState.selection),new Un(u==0?r.rest:d,u==0?d:r.rest)}let i=e.annotation(NP);if((i=="full"||i=="before")&&(n=n.isolate()),e.annotation(ut.addToHistory)===!1)return e.changes.empty?n:n.addMapping(e.changes.desc);let s=Zt.fromTransaction(e),o=e.annotation(ut.time),a=e.annotation(ut.userEvent);return s?n=n.addChanges(s,o,a,t,e):e.selection&&(n=n.addSelection(e.startState.selection,o,a,t.newGroupDelay)),(i=="full"||i=="after")&&(n=n.isolate()),n},toJSON(n){return{done:n.done.map(e=>e.toJSON()),undone:n.undone.map(e=>e.toJSON())}},fromJSON(n){return new Un(n.done.map(Zt.fromJSON),n.undone.map(Zt.fromJSON))}});function _P(n={}){return[rw,nw.of(n),G.domEventHandlers({beforeinput(e,t){let r=e.inputType=="historyUndo"?iw:e.inputType=="historyRedo"?Tf:null;return r?(e.preventDefault(),r(t)):!1}})]}function gu(n,e){return function({state:t,dispatch:r}){if(!e&&t.readOnly)return!1;let i=t.field(rw,!1);if(!i)return!1;let s=i.pop(n,t,e);return s?(r(s),!0):!1}}const iw=gu(0,!1),Tf=gu(1,!1),jP=gu(0,!0),BP=gu(1,!0);class Zt{constructor(e,t,r,i,s){this.changes=e,this.effects=t,this.mapped=r,this.startSelection=i,this.selectionsAfter=s}setSelAfter(e){return new Zt(this.changes,this.effects,this.mapped,this.startSelection,e)}toJSON(){var e,t,r;return{changes:(e=this.changes)===null||e===void 0?void 0:e.toJSON(),mapped:(t=this.mapped)===null||t===void 0?void 0:t.toJSON(),startSelection:(r=this.startSelection)===null||r===void 0?void 0:r.toJSON(),selectionsAfter:this.selectionsAfter.map(i=>i.toJSON())}}static fromJSON(e){return new Zt(e.changes&&ct.fromJSON(e.changes),[],e.mapped&&Wn.fromJSON(e.mapped),e.startSelection&&B.fromJSON(e.startSelection),e.selectionsAfter.map(B.fromJSON))}static fromTransaction(e,t){let r=hn;for(let i of e.startState.facet(PP)){let s=i(e);s.length&&(r=r.concat(s))}return!r.length&&e.changes.empty?null:new Zt(e.changes.invert(e.startState.doc),r,void 0,t||e.startState.selection,hn)}static selection(e){return new Zt(void 0,hn,void 0,void 0,e)}}function Pc(n,e,t,r){let i=e+1>t+20?e-t-1:0,s=n.slice(i,e);return s.push(r),s}function $P(n,e){let t=[],r=!1;return n.iterChangedRanges((i,s)=>t.push(i,s)),e.iterChangedRanges((i,s,o,a)=>{for(let l=0;l<t.length;){let c=t[l++],u=t[l++];a>=c&&o<=u&&(r=!0)}}),r}function FP(n,e){return n.ranges.length==e.ranges.length&&n.ranges.filter((t,r)=>t.empty!=e.ranges[r].empty).length===0}function sw(n,e){return n.length?e.length?n.concat(e):n:e}const hn=[],HP=200;function ow(n,e){if(n.length){let t=n[n.length-1],r=t.selectionsAfter.slice(Math.max(0,t.selectionsAfter.length-HP));return r.length&&r[r.length-1].eq(e)?n:(r.push(e),Pc(n,n.length-1,1e9,t.setSelAfter(r)))}else return[Zt.selection([e])]}function VP(n){let e=n[n.length-1],t=n.slice();return t[n.length-1]=e.setSelAfter(e.selectionsAfter.slice(0,e.selectionsAfter.length-1)),t}function hd(n,e){if(!n.length)return n;let t=n.length,r=hn;for(;t;){let i=UP(n[t-1],e,r);if(i.changes&&!i.changes.empty||i.effects.length){let s=n.slice(0,t);return s[t-1]=i,s}else e=i.mapped,t--,r=i.selectionsAfter}return r.length?[Zt.selection(r)]:hn}function UP(n,e,t){let r=sw(n.selectionsAfter.length?n.selectionsAfter.map(a=>a.map(e)):hn,t);if(!n.changes)return Zt.selection(r);let i=n.changes.map(e),s=e.mapDesc(n.changes,!0),o=n.mapped?n.mapped.composeDesc(s):s;return new Zt(i,pe.mapEffects(n.effects,e),o,n.startSelection.map(s),r)}const zP=/^(input\.type|delete)($|\.)/;class Un{constructor(e,t,r=0,i=void 0){this.done=e,this.undone=t,this.prevTime=r,this.prevUserEvent=i}isolate(){return this.prevTime?new Un(this.done,this.undone):this}addChanges(e,t,r,i,s){let o=this.done,a=o[o.length-1];return a&&a.changes&&!a.changes.empty&&e.changes&&(!r||zP.test(r))&&(!a.selectionsAfter.length&&t-this.prevTime<i.newGroupDelay&&i.joinToEvent(s,$P(a.changes,e.changes))||r=="input.type.compose")?o=Pc(o,o.length-1,i.minDepth,new Zt(e.changes.compose(a.changes),sw(e.effects,a.effects),a.mapped,a.startSelection,hn)):o=Pc(o,o.length,i.minDepth,e),new Un(o,hn,t,r)}addSelection(e,t,r,i){let s=this.done.length?this.done[this.done.length-1].selectionsAfter:hn;return s.length>0&&t-this.prevTime<i&&r==this.prevUserEvent&&r&&/^select($|\.)/.test(r)&&FP(s[s.length-1],e)?this:new Un(ow(this.done,e),this.undone,t,r)}addMapping(e){return new Un(hd(this.done,e),hd(this.undone,e),this.prevTime,this.prevUserEvent)}pop(e,t,r){let i=e==0?this.done:this.undone;if(i.length==0)return null;let s=i[i.length-1];if(r&&s.selectionsAfter.length)return t.update({selection:s.selectionsAfter[s.selectionsAfter.length-1],annotations:Of.of({side:e,rest:VP(i)}),userEvent:e==0?"select.undo":"select.redo",scrollIntoView:!0});if(s.changes){let o=i.length==1?hn:i.slice(0,i.length-1);return s.mapped&&(o=hd(o,s.mapped)),t.update({changes:s.changes,selection:s.startSelection,effects:s.effects,annotations:Of.of({side:e,rest:o}),filter:!1,userEvent:e==0?"undo":"redo",scrollIntoView:!0})}else return null}}Un.empty=new Un(hn,hn);const WP=[{key:"Mod-z",run:iw,preventDefault:!0},{key:"Mod-y",mac:"Mod-Shift-z",run:Tf,preventDefault:!0},{linux:"Ctrl-Shift-z",run:Tf,preventDefault:!0},{key:"Mod-u",run:jP,preventDefault:!0},{key:"Alt-u",mac:"Mod-Shift-u",run:BP,preventDefault:!0}];function ns(n,e){return B.create(n.ranges.map(e),n.mainIndex)}function Yn(n,e){return n.update({selection:e,scrollIntoView:!0,userEvent:"select"})}function In({state:n,dispatch:e},t){let r=ns(n.selection,t);return r.eq(n.selection)?!1:(e(Yn(n,r)),!0)}function vu(n,e){return B.cursor(e?n.to:n.from)}function aw(n,e){return In(n,t=>t.empty?n.moveByChar(t,e):vu(t,e))}function Rt(n){return n.textDirectionAt(n.state.selection.main.head)==qe.LTR}const lw=n=>aw(n,!Rt(n)),cw=n=>aw(n,Rt(n));function uw(n,e){return In(n,t=>t.empty?n.moveByGroup(t,e):vu(t,e))}const qP=n=>uw(n,!Rt(n)),GP=n=>uw(n,Rt(n));function KP(n,e,t){if(e.type.prop(t))return!0;let r=e.to-e.from;return r&&(r>2||/[^\s,.;:]/.test(n.sliceDoc(e.from,e.to)))||e.firstChild}function bu(n,e,t){let r=At(n).resolveInner(e.head),i=t?xe.closedBy:xe.openedBy;for(let l=e.head;;){let c=t?r.childAfter(l):r.childBefore(l);if(!c)break;KP(n,c,i)?r=c:l=t?c.to:c.from}let s=r.type.prop(i),o,a;return s&&(o=t?Vn(n,r.from,1):Vn(n,r.to,-1))&&o.matched?a=t?o.end.to:o.end.from:a=t?r.to:r.from,B.cursor(a,t?-1:1)}const ZP=n=>In(n,e=>bu(n.state,e,!Rt(n))),YP=n=>In(n,e=>bu(n.state,e,Rt(n)));function dw(n,e){return In(n,t=>{if(!t.empty)return vu(t,e);let r=n.moveVertically(t,e);return r.head!=t.head?r:n.moveToLineBoundary(t,e)})}const fw=n=>dw(n,!1),hw=n=>dw(n,!0);function pw(n){let e=n.scrollDOM.clientHeight<n.scrollDOM.scrollHeight-2,t=0,r=0,i;if(e){for(let s of n.state.facet(G.scrollMargins)){let o=s(n);o?.top&&(t=Math.max(o?.top,t)),o?.bottom&&(r=Math.max(o?.bottom,r))}i=n.scrollDOM.clientHeight-t-r}else i=(n.dom.ownerDocument.defaultView||window).innerHeight;return{marginTop:t,marginBottom:r,selfScroll:e,height:Math.max(n.defaultLineHeight,i-5)}}function mw(n,e){let t=pw(n),{state:r}=n,i=ns(r.selection,o=>o.empty?n.moveVertically(o,e,t.height):vu(o,e));if(i.eq(r.selection))return!1;let s;if(t.selfScroll){let o=n.coordsAtPos(r.selection.main.head),a=n.scrollDOM.getBoundingClientRect(),l=a.top+t.marginTop,c=a.bottom-t.marginBottom;o&&o.top>l&&o.bottom<c&&(s=G.scrollIntoView(i.main.head,{y:"start",yMargin:o.top-l}))}return n.dispatch(Yn(r,i),{effects:s}),!0}const ag=n=>mw(n,!1),Nf=n=>mw(n,!0);function Tr(n,e,t){let r=n.lineBlockAt(e.head),i=n.moveToLineBoundary(e,t);if(i.head==e.head&&i.head!=(t?r.to:r.from)&&(i=n.moveToLineBoundary(e,t,!1)),!t&&i.head==r.from&&r.length){let s=/^\s*/.exec(n.state.sliceDoc(r.from,Math.min(r.from+100,r.to)))[0].length;s&&e.head!=r.from+s&&(i=B.cursor(r.from+s))}return i}const JP=n=>In(n,e=>Tr(n,e,!0)),XP=n=>In(n,e=>Tr(n,e,!1)),QP=n=>In(n,e=>Tr(n,e,!Rt(n))),e9=n=>In(n,e=>Tr(n,e,Rt(n))),t9=n=>In(n,e=>B.cursor(n.lineBlockAt(e.head).from,1)),n9=n=>In(n,e=>B.cursor(n.lineBlockAt(e.head).to,-1));function r9(n,e,t){let r=!1,i=ns(n.selection,s=>{let o=Vn(n,s.head,-1)||Vn(n,s.head,1)||s.head>0&&Vn(n,s.head-1,1)||s.head<n.doc.length&&Vn(n,s.head+1,-1);if(!o||!o.end)return s;r=!0;let a=o.start.from==s.head?o.end.to:o.end.from;return B.cursor(a)});return r?(e(Yn(n,i)),!0):!1}const i9=({state:n,dispatch:e})=>r9(n,e);function gn(n,e){let t=ns(n.state.selection,r=>{let i=e(r);return B.range(r.anchor,i.head,i.goalColumn,i.bidiLevel||void 0)});return t.eq(n.state.selection)?!1:(n.dispatch(Yn(n.state,t)),!0)}function gw(n,e){return gn(n,t=>n.moveByChar(t,e))}const vw=n=>gw(n,!Rt(n)),bw=n=>gw(n,Rt(n));function xw(n,e){return gn(n,t=>n.moveByGroup(t,e))}const s9=n=>xw(n,!Rt(n)),o9=n=>xw(n,Rt(n)),a9=n=>gn(n,e=>bu(n.state,e,!Rt(n))),l9=n=>gn(n,e=>bu(n.state,e,Rt(n)));function yw(n,e){return gn(n,t=>n.moveVertically(t,e))}const ww=n=>yw(n,!1),Sw=n=>yw(n,!0);function Cw(n,e){return gn(n,t=>n.moveVertically(t,e,pw(n).height))}const lg=n=>Cw(n,!1),cg=n=>Cw(n,!0),c9=n=>gn(n,e=>Tr(n,e,!0)),u9=n=>gn(n,e=>Tr(n,e,!1)),d9=n=>gn(n,e=>Tr(n,e,!Rt(n))),f9=n=>gn(n,e=>Tr(n,e,Rt(n))),h9=n=>gn(n,e=>B.cursor(n.lineBlockAt(e.head).from)),p9=n=>gn(n,e=>B.cursor(n.lineBlockAt(e.head).to)),ug=({state:n,dispatch:e})=>(e(Yn(n,{anchor:0})),!0),dg=({state:n,dispatch:e})=>(e(Yn(n,{anchor:n.doc.length})),!0),fg=({state:n,dispatch:e})=>(e(Yn(n,{anchor:n.selection.main.anchor,head:0})),!0),hg=({state:n,dispatch:e})=>(e(Yn(n,{anchor:n.selection.main.anchor,head:n.doc.length})),!0),m9=({state:n,dispatch:e})=>(e(n.update({selection:{anchor:0,head:n.doc.length},userEvent:"select"})),!0),g9=({state:n,dispatch:e})=>{let t=yu(n).map(({from:r,to:i})=>B.range(r,Math.min(i+1,n.doc.length)));return e(n.update({selection:B.create(t),userEvent:"select"})),!0},v9=({state:n,dispatch:e})=>{let t=ns(n.selection,r=>{var i;let s=At(n).resolveInner(r.head,1);for(;!(s.from<r.from&&s.to>=r.to||s.to>r.to&&s.from<=r.from||!(!((i=s.parent)===null||i===void 0)&&i.parent));)s=s.parent;return B.range(s.to,s.from)});return e(Yn(n,t)),!0},b9=({state:n,dispatch:e})=>{let t=n.selection,r=null;return t.ranges.length>1?r=B.create([t.main]):t.main.empty||(r=B.create([B.cursor(t.main.head)])),r?(e(Yn(n,r)),!0):!1};function xu(n,e){if(n.state.readOnly)return!1;let t="delete.selection",{state:r}=n,i=r.changeByRange(s=>{let{from:o,to:a}=s;if(o==a){let l=e(o);l<o?(t="delete.backward",l=Zo(n,l,!1)):l>o&&(t="delete.forward",l=Zo(n,l,!0)),o=Math.min(o,l),a=Math.max(a,l)}else o=Zo(n,o,!1),a=Zo(n,a,!0);return o==a?{range:s}:{changes:{from:o,to:a},range:B.cursor(o)}});return i.changes.empty?!1:(n.dispatch(r.update(i,{scrollIntoView:!0,userEvent:t,effects:t=="delete.selection"?G.announce.of(r.phrase("Selection deleted")):void 0})),!0)}function Zo(n,e,t){if(n instanceof G)for(let r of n.state.facet(G.atomicRanges).map(i=>i(n)))r.between(e,e,(i,s)=>{i<e&&s>e&&(e=t?s:i)});return e}const kw=(n,e)=>xu(n,t=>{let{state:r}=n,i=r.doc.lineAt(t),s,o;if(!e&&t>i.from&&t<i.from+200&&!/[^ \t]/.test(s=i.text.slice(0,t-i.from))){if(s[s.length-1]==" ")return t-1;let a=co(s,r.tabSize),l=a%Oc(r)||Oc(r);for(let c=0;c<l&&s[s.length-1-c]==" ";c++)t--;o=t}else o=Et(i.text,t-i.from,e,e)+i.from,o==t&&i.number!=(e?r.doc.lines:1)&&(o+=e?1:-1);return o}),Pf=n=>kw(n,!1),Aw=n=>kw(n,!0),Mw=(n,e)=>xu(n,t=>{let r=t,{state:i}=n,s=i.doc.lineAt(r),o=i.charCategorizer(r);for(let a=null;;){if(r==(e?s.to:s.from)){r==t&&s.number!=(e?i.doc.lines:1)&&(r+=e?1:-1);break}let l=Et(s.text,r-s.from,e)+s.from,c=s.text.slice(Math.min(r,l)-s.from,Math.max(r,l)-s.from),u=o(c);if(a!=null&&u!=a)break;(c!=" "||r!=t)&&(a=u),r=l}return r}),Iw=n=>Mw(n,!1),x9=n=>Mw(n,!0),Ew=n=>xu(n,e=>{let t=n.lineBlockAt(e).to;return e<t?t:Math.min(n.state.doc.length,e+1)}),y9=n=>xu(n,e=>{let t=n.lineBlockAt(e).from;return e>t?t:Math.max(0,e-1)}),w9=({state:n,dispatch:e})=>{if(n.readOnly)return!1;let t=n.changeByRange(r=>({changes:{from:r.from,to:r.to,insert:Ce.of(["",""])},range:B.cursor(r.from)}));return e(n.update(t,{scrollIntoView:!0,userEvent:"input"})),!0},S9=({state:n,dispatch:e})=>{if(n.readOnly)return!1;let t=n.changeByRange(r=>{if(!r.empty||r.from==0||r.from==n.doc.length)return{range:r};let i=r.from,s=n.doc.lineAt(i),o=i==s.from?i-1:Et(s.text,i-s.from,!1)+s.from,a=i==s.to?i+1:Et(s.text,i-s.from,!0)+s.from;return{changes:{from:o,to:a,insert:n.doc.slice(i,a).append(n.doc.slice(o,i))},range:B.cursor(a)}});return t.changes.empty?!1:(e(n.update(t,{scrollIntoView:!0,userEvent:"move.character"})),!0)};function yu(n){let e=[],t=-1;for(let r of n.selection.ranges){let i=n.doc.lineAt(r.from),s=n.doc.lineAt(r.to);if(!r.empty&&r.to==s.from&&(s=n.doc.lineAt(r.to-1)),t>=i.number){let o=e[e.length-1];o.to=s.to,o.ranges.push(r)}else e.push({from:i.from,to:s.to,ranges:[r]});t=s.number+1}return e}function Dw(n,e,t){if(n.readOnly)return!1;let r=[],i=[];for(let s of yu(n)){if(t?s.to==n.doc.length:s.from==0)continue;let o=n.doc.lineAt(t?s.to+1:s.from-1),a=o.length+1;if(t){r.push({from:s.to,to:o.to},{from:s.from,insert:o.text+n.lineBreak});for(let l of s.ranges)i.push(B.range(Math.min(n.doc.length,l.anchor+a),Math.min(n.doc.length,l.head+a)))}else{r.push({from:o.from,to:s.from},{from:s.to,insert:n.lineBreak+o.text});for(let l of s.ranges)i.push(B.range(l.anchor-a,l.head-a))}}return r.length?(e(n.update({changes:r,scrollIntoView:!0,selection:B.create(i,n.selection.mainIndex),userEvent:"move.line"})),!0):!1}const C9=({state:n,dispatch:e})=>Dw(n,e,!1),k9=({state:n,dispatch:e})=>Dw(n,e,!0);function Rw(n,e,t){if(n.readOnly)return!1;let r=[];for(let i of yu(n))t?r.push({from:i.from,insert:n.doc.slice(i.from,i.to)+n.lineBreak}):r.push({from:i.to,insert:n.lineBreak+n.doc.slice(i.from,i.to)});return e(n.update({changes:r,scrollIntoView:!0,userEvent:"input.copyline"})),!0}const A9=({state:n,dispatch:e})=>Rw(n,e,!1),M9=({state:n,dispatch:e})=>Rw(n,e,!0),I9=n=>{if(n.state.readOnly)return!1;let{state:e}=n,t=e.changes(yu(e).map(({from:i,to:s})=>(i>0?i--:s<e.doc.length&&s++,{from:i,to:s}))),r=ns(e.selection,i=>n.moveVertically(i,!0)).map(t);return n.dispatch({changes:t,selection:r,scrollIntoView:!0,userEvent:"delete.line"}),!0};function E9(n,e){if(/\(\)|\[\]|\{\}/.test(n.sliceDoc(e-1,e+1)))return{from:e,to:e};let t=At(n).resolveInner(e),r=t.childBefore(e),i=t.childAfter(e),s;return r&&i&&r.to<=e&&i.from>=e&&(s=r.type.prop(xe.closedBy))&&s.indexOf(i.name)>-1&&n.doc.lineAt(r.to).from==n.doc.lineAt(i.from).from?{from:r.to,to:i.from}:null}const D9=Ow(!1),R9=Ow(!0);function Ow(n){return({state:e,dispatch:t})=>{if(e.readOnly)return!1;let r=e.changeByRange(i=>{let{from:s,to:o}=i,a=e.doc.lineAt(s),l=!n&&s==o&&E9(e,s);n&&(s=o=(o<=a.to?a:e.doc.lineAt(o)).to);let c=new pu(e,{simulateBreak:s,simulateDoubleBreak:!!l}),u=Ah(c,s);for(u==null&&(u=/^\s*/.exec(e.doc.lineAt(s).text)[0].length);o<a.to&&/\s/.test(a.text[o-a.from]);)o++;l?{from:s,to:o}=l:s>a.from&&s<a.from+100&&!/\S/.test(a.text.slice(0,s))&&(s=a.from);let d=["",Ys(e,u)];return l&&d.push(Ys(e,c.lineIndent(a.from,-1))),{changes:{from:s,to:o,insert:Ce.of(d)},range:B.cursor(s+1+d[1].length)}});return t(e.update(r,{scrollIntoView:!0,userEvent:"input"})),!0}}function Dh(n,e){let t=-1;return n.changeByRange(r=>{let i=[];for(let o=r.from;o<=r.to;){let a=n.doc.lineAt(o);a.number>t&&(r.empty||r.to>a.from)&&(e(a,i,r),t=a.number),o=a.to+1}let s=n.changes(i);return{changes:i,range:B.range(s.mapPos(r.anchor,1),s.mapPos(r.head,1))}})}const O9=({state:n,dispatch:e})=>{if(n.readOnly)return!1;let t=Object.create(null),r=new pu(n,{overrideIndentation:s=>{let o=t[s];return o??-1}}),i=Dh(n,(s,o,a)=>{let l=Ah(r,s.from);if(l==null)return;/\S/.test(s.text)||(l=0);let c=/^\s*/.exec(s.text)[0],u=Ys(n,l);(c!=u||a.from<s.from+c.length)&&(t[s.from]=l,o.push({from:s.from,to:s.from+c.length,insert:u}))});return i.changes.empty||e(n.update(i,{userEvent:"indent"})),!0},Tw=({state:n,dispatch:e})=>n.readOnly?!1:(e(n.update(Dh(n,(t,r)=>{r.push({from:t.from,insert:n.facet(mo)})}),{userEvent:"input.indent"})),!0),Nw=({state:n,dispatch:e})=>n.readOnly?!1:(e(n.update(Dh(n,(t,r)=>{let i=/^\s*/.exec(t.text)[0];if(!i)return;let s=co(i,n.tabSize),o=0,a=Ys(n,Math.max(0,s-Oc(n)));for(;o<i.length&&o<a.length&&i.charCodeAt(o)==a.charCodeAt(o);)o++;r.push({from:t.from+o,to:t.from+i.length,insert:a.slice(o)})}),{userEvent:"delete.dedent"})),!0),T9=[{key:"Ctrl-b",run:lw,shift:vw,preventDefault:!0},{key:"Ctrl-f",run:cw,shift:bw},{key:"Ctrl-p",run:fw,shift:ww},{key:"Ctrl-n",run:hw,shift:Sw},{key:"Ctrl-a",run:t9,shift:h9},{key:"Ctrl-e",run:n9,shift:p9},{key:"Ctrl-d",run:Aw},{key:"Ctrl-h",run:Pf},{key:"Ctrl-k",run:Ew},{key:"Ctrl-Alt-h",run:Iw},{key:"Ctrl-o",run:w9},{key:"Ctrl-t",run:S9},{key:"Ctrl-v",run:Nf}],N9=[{key:"ArrowLeft",run:lw,shift:vw,preventDefault:!0},{key:"Mod-ArrowLeft",mac:"Alt-ArrowLeft",run:qP,shift:s9,preventDefault:!0},{mac:"Cmd-ArrowLeft",run:QP,shift:d9,preventDefault:!0},{key:"ArrowRight",run:cw,shift:bw,preventDefault:!0},{key:"Mod-ArrowRight",mac:"Alt-ArrowRight",run:GP,shift:o9,preventDefault:!0},{mac:"Cmd-ArrowRight",run:e9,shift:f9,preventDefault:!0},{key:"ArrowUp",run:fw,shift:ww,preventDefault:!0},{mac:"Cmd-ArrowUp",run:ug,shift:fg},{mac:"Ctrl-ArrowUp",run:ag,shift:lg},{key:"ArrowDown",run:hw,shift:Sw,preventDefault:!0},{mac:"Cmd-ArrowDown",run:dg,shift:hg},{mac:"Ctrl-ArrowDown",run:Nf,shift:cg},{key:"PageUp",run:ag,shift:lg},{key:"PageDown",run:Nf,shift:cg},{key:"Home",run:XP,shift:u9,preventDefault:!0},{key:"Mod-Home",run:ug,shift:fg},{key:"End",run:JP,shift:c9,preventDefault:!0},{key:"Mod-End",run:dg,shift:hg},{key:"Enter",run:D9},{key:"Mod-a",run:m9},{key:"Backspace",run:Pf,shift:Pf},{key:"Delete",run:Aw},{key:"Mod-Backspace",mac:"Alt-Backspace",run:Iw},{key:"Mod-Delete",mac:"Alt-Delete",run:x9},{mac:"Mod-Backspace",run:y9},{mac:"Mod-Delete",run:Ew}].concat(T9.map(n=>({mac:n.key,run:n.run,shift:n.shift}))),P9=[{key:"Alt-ArrowLeft",mac:"Ctrl-ArrowLeft",run:ZP,shift:a9},{key:"Alt-ArrowRight",mac:"Ctrl-ArrowRight",run:YP,shift:l9},{key:"Alt-ArrowUp",run:C9},{key:"Shift-Alt-ArrowUp",run:A9},{key:"Alt-ArrowDown",run:k9},{key:"Shift-Alt-ArrowDown",run:M9},{key:"Escape",run:b9},{key:"Mod-Enter",run:R9},{key:"Alt-l",mac:"Ctrl-l",run:g9},{key:"Mod-i",run:v9,preventDefault:!0},{key:"Mod-[",run:Nw},{key:"Mod-]",run:Tw},{key:"Mod-Alt-\\",run:O9},{key:"Shift-Mod-k",run:I9},{key:"Shift-Mod-\\",run:i9},{key:"Mod-/",run:MP},{key:"Alt-A",run:EP}].concat(N9),L9={key:"Tab",run:Tw,shift:Nw};function $e(){var n=arguments[0];typeof n=="string"&&(n=document.createElement(n));var e=1,t=arguments[1];if(t&&typeof t=="object"&&t.nodeType==null&&!Array.isArray(t)){for(var r in t)if(Object.prototype.hasOwnProperty.call(t,r)){var i=t[r];typeof i=="string"?n.setAttribute(r,i):i!=null&&(n[r]=i)}e++}for(;e<arguments.length;e++)Pw(n,arguments[e]);return n}function Pw(n,e){if(typeof e=="string")n.appendChild(document.createTextNode(e));else if(e!=null)if(e.nodeType!=null)n.appendChild(e);else if(Array.isArray(e))for(var t=0;t<e.length;t++)Pw(n,e[t]);else throw new RangeError("Unsupported child node: "+e)}const pg=typeof String.prototype.normalize=="function"?n=>n.normalize("NFKD"):n=>n;class Wi{constructor(e,t,r=0,i=e.length,s,o){this.test=o,this.value={from:0,to:0},this.done=!1,this.matches=[],this.buffer="",this.bufferPos=0,this.iter=e.iterRange(r,i),this.bufferStart=r,this.normalize=s?a=>s(pg(a)):pg,this.query=this.normalize(t)}peek(){if(this.bufferPos==this.buffer.length){if(this.bufferStart+=this.buffer.length,this.iter.next(),this.iter.done)return-1;this.bufferPos=0,this.buffer=this.iter.value}return St(this.buffer,this.bufferPos)}next(){for(;this.matches.length;)this.matches.pop();return this.nextOverlapping()}nextOverlapping(){for(;;){let e=this.peek();if(e<0)return this.done=!0,this;let t=dh(e),r=this.bufferStart+this.bufferPos;this.bufferPos+=dn(e);let i=this.normalize(t);for(let s=0,o=r;;s++){let a=i.charCodeAt(s),l=this.match(a,o);if(s==i.length-1){if(l)return this.value=l,this;break}o==r&&s<t.length&&t.charCodeAt(s)==a&&o++}}}match(e,t){let r=null;for(let i=0;i<this.matches.length;i+=2){let s=this.matches[i],o=!1;this.query.charCodeAt(s)==e&&(s==this.query.length-1?r={from:this.matches[i+1],to:t+1}:(this.matches[i]++,o=!0)),o||(this.matches.splice(i,2),i-=2)}return this.query.charCodeAt(0)==e&&(this.query.length==1?r={from:t,to:t+1}:this.matches.push(1,t)),r&&this.test&&!this.test(r.from,r.to,this.buffer,this.bufferPos)&&(r=null),r}}typeof Symbol<"u"&&(Wi.prototype[Symbol.iterator]=function(){return this});const Lw={from:-1,to:-1,match:/.*/.exec("")},Rh="gm"+(/x/.unicode==null?"":"u");class _w{constructor(e,t,r,i=0,s=e.length){if(this.text=e,this.to=s,this.curLine="",this.done=!1,this.value=Lw,/\\[sWDnr]|\n|\r|\[\^/.test(t))return new jw(e,t,r,i,s);this.re=new RegExp(t,Rh+(r?.ignoreCase?"i":"")),this.test=r?.test,this.iter=e.iter();let o=e.lineAt(i);this.curLineStart=o.from,this.matchPos=Lc(e,i),this.getLine(this.curLineStart)}getLine(e){this.iter.next(e),this.iter.lineBreak?this.curLine="":(this.curLine=this.iter.value,this.curLineStart+this.curLine.length>this.to&&(this.curLine=this.curLine.slice(0,this.to-this.curLineStart)),this.iter.next())}nextLine(){this.curLineStart=this.curLineStart+this.curLine.length+1,this.curLineStart>this.to?this.curLine="":this.getLine(0)}next(){for(let e=this.matchPos-this.curLineStart;;){this.re.lastIndex=e;let t=this.matchPos<=this.to&&this.re.exec(this.curLine);if(t){let r=this.curLineStart+t.index,i=r+t[0].length;if(this.matchPos=Lc(this.text,i+(r==i?1:0)),r==this.curLineStart+this.curLine.length&&this.nextLine(),(r<i||r>this.value.to)&&(!this.test||this.test(r,i,t)))return this.value={from:r,to:i,match:t},this;e=this.matchPos-this.curLineStart}else if(this.curLineStart+this.curLine.length<this.to)this.nextLine(),e=0;else return this.done=!0,this}}}const pd=new WeakMap;class ji{constructor(e,t){this.from=e,this.text=t}get to(){return this.from+this.text.length}static get(e,t,r){let i=pd.get(e);if(!i||i.from>=r||i.to<=t){let a=new ji(t,e.sliceString(t,r));return pd.set(e,a),a}if(i.from==t&&i.to==r)return i;let{text:s,from:o}=i;return o>t&&(s=e.sliceString(t,o)+s,o=t),i.to<r&&(s+=e.sliceString(i.to,r)),pd.set(e,new ji(o,s)),new ji(t,s.slice(t-o,r-o))}}class jw{constructor(e,t,r,i,s){this.text=e,this.to=s,this.done=!1,this.value=Lw,this.matchPos=Lc(e,i),this.re=new RegExp(t,Rh+(r?.ignoreCase?"i":"")),this.test=r?.test,this.flat=ji.get(e,i,this.chunkEnd(i+5e3))}chunkEnd(e){return e>=this.to?this.to:this.text.lineAt(e).to}next(){for(;;){let e=this.re.lastIndex=this.matchPos-this.flat.from,t=this.re.exec(this.flat.text);if(t&&!t[0]&&t.index==e&&(this.re.lastIndex=e+1,t=this.re.exec(this.flat.text)),t){let r=this.flat.from+t.index,i=r+t[0].length;if((this.flat.to>=this.to||t.index+t[0].length<=this.flat.text.length-10)&&(!this.test||this.test(r,i,t)))return this.value={from:r,to:i,match:t},this.matchPos=Lc(this.text,i+(r==i?1:0)),this}if(this.flat.to==this.to)return this.done=!0,this;this.flat=ji.get(this.text,this.flat.from,this.chunkEnd(this.flat.from+this.flat.text.length*2))}}}typeof Symbol<"u"&&(_w.prototype[Symbol.iterator]=jw.prototype[Symbol.iterator]=function(){return this});function _9(n){try{return new RegExp(n,Rh),!0}catch{return!1}}function Lc(n,e){if(e>=n.length)return e;let t=n.lineAt(e),r;for(;e<t.to&&(r=t.text.charCodeAt(e-t.from))>=56320&&r<57344;)e++;return e}function Lf(n){let e=$e("input",{class:"cm-textfield",name:"line"}),t=$e("form",{class:"cm-gotoLine",onkeydown:i=>{i.keyCode==27?(i.preventDefault(),n.dispatch({effects:_c.of(!1)}),n.focus()):i.keyCode==13&&(i.preventDefault(),r())},onsubmit:i=>{i.preventDefault(),r()}},$e("label",n.state.phrase("Go to line"),": ",e)," ",$e("button",{class:"cm-button",type:"submit"},n.state.phrase("go")));function r(){let i=/^([+-])?(\d+)?(:\d+)?(%)?$/.exec(e.value);if(!i)return;let{state:s}=n,o=s.doc.lineAt(s.selection.main.head),[,a,l,c,u]=i,d=c?+c.slice(1):0,h=l?+l:o.number;if(l&&u){let m=h/100;a&&(m=m*(a=="-"?-1:1)+o.number/s.doc.lines),h=Math.round(s.doc.lines*m)}else l&&a&&(h=h*(a=="-"?-1:1)+o.number);let p=s.doc.line(Math.max(1,Math.min(s.doc.lines,h))),g=B.cursor(p.from+Math.max(0,Math.min(d,p.length)));n.dispatch({effects:[_c.of(!1),G.scrollIntoView(g.from,{y:"center"})],selection:g}),n.focus()}return{dom:t}}const _c=pe.define(),mg=bt.define({create(){return!0},update(n,e){for(let t of e.effects)t.is(_c)&&(n=t.value);return n},provide:n=>Gs.from(n,e=>e?Lf:null)}),j9=n=>{let e=qs(n,Lf);if(!e){let t=[_c.of(!0)];n.state.field(mg,!1)==null&&t.push(pe.appendConfig.of([mg,B9])),n.dispatch({effects:t}),e=qs(n,Lf)}return e&&e.dom.querySelector("input").focus(),!0},B9=G.baseTheme({".cm-panel.cm-gotoLine":{padding:"2px 6px 4px","& label":{fontSize:"80%"}}}),$9={highlightWordAroundCursor:!1,minSelectionLength:1,maxMatches:100,wholeWords:!1},F9=J.define({combine(n){return Zn(n,$9,{highlightWordAroundCursor:(e,t)=>e||t,minSelectionLength:Math.min,maxMatches:Math.min})}});function H9(n){return[q9,W9]}const V9=le.mark({class:"cm-selectionMatch"}),U9=le.mark({class:"cm-selectionMatch cm-selectionMatch-main"});function gg(n,e,t,r){return(t==0||n(e.sliceDoc(t-1,t))!=ze.Word)&&(r==e.doc.length||n(e.sliceDoc(r,r+1))!=ze.Word)}function z9(n,e,t,r){return n(e.sliceDoc(t,t+1))==ze.Word&&n(e.sliceDoc(r-1,r))==ze.Word}const W9=it.fromClass(class{constructor(n){this.decorations=this.getDeco(n)}update(n){(n.selectionSet||n.docChanged||n.viewportChanged)&&(this.decorations=this.getDeco(n.view))}getDeco(n){let e=n.state.facet(F9),{state:t}=n,r=t.selection;if(r.ranges.length>1)return le.none;let i=r.main,s,o=null;if(i.empty){if(!e.highlightWordAroundCursor)return le.none;let l=t.wordAt(i.head);if(!l)return le.none;o=t.charCategorizer(i.head),s=t.sliceDoc(l.from,l.to)}else{let l=i.to-i.from;if(l<e.minSelectionLength||l>200)return le.none;if(e.wholeWords){if(s=t.sliceDoc(i.from,i.to),o=t.charCategorizer(i.head),!(gg(o,t,i.from,i.to)&&z9(o,t,i.from,i.to)))return le.none}else if(s=t.sliceDoc(i.from,i.to).trim(),!s)return le.none}let a=[];for(let l of n.visibleRanges){let c=new Wi(t.doc,s,l.from,l.to);for(;!c.next().done;){let{from:u,to:d}=c.value;if((!o||gg(o,t,u,d))&&(i.empty&&u<=i.from&&d>=i.to?a.push(U9.range(u,d)):(u>=i.to||d<=i.from)&&a.push(V9.range(u,d)),a.length>e.maxMatches))return le.none}}return le.set(a)}},{decorations:n=>n.decorations}),q9=G.baseTheme({".cm-selectionMatch":{backgroundColor:"#99ff7780"},".cm-searchMatch .cm-selectionMatch":{backgroundColor:"transparent"}}),G9=({state:n,dispatch:e})=>{let{selection:t}=n,r=B.create(t.ranges.map(i=>n.wordAt(i.head)||B.cursor(i.head)),t.mainIndex);return r.eq(t)?!1:(e(n.update({selection:r})),!0)};function K9(n,e){let{main:t,ranges:r}=n.selection,i=n.wordAt(t.head),s=i&&i.from==t.from&&i.to==t.to;for(let o=!1,a=new Wi(n.doc,e,r[r.length-1].to);;)if(a.next(),a.done){if(o)return null;a=new Wi(n.doc,e,0,Math.max(0,r[r.length-1].from-1)),o=!0}else{if(o&&r.some(l=>l.from==a.value.from))continue;if(s){let l=n.wordAt(a.value.from);if(!l||l.from!=a.value.from||l.to!=a.value.to)continue}return a.value}}const Z9=({state:n,dispatch:e})=>{let{ranges:t}=n.selection;if(t.some(s=>s.from===s.to))return G9({state:n,dispatch:e});let r=n.sliceDoc(t[0].from,t[0].to);if(n.selection.ranges.some(s=>n.sliceDoc(s.from,s.to)!=r))return!1;let i=K9(n,r);return i?(e(n.update({selection:n.selection.addRange(B.range(i.from,i.to),!1),effects:G.scrollIntoView(i.to)})),!0):!1},rs=J.define({combine(n){return Zn(n,{top:!1,caseSensitive:!1,literal:!1,regexp:!1,wholeWord:!1,createPanel:e=>new a3(e),scrollToMatch:e=>G.scrollIntoView(e)})}});class Bw{constructor(e){this.search=e.search,this.caseSensitive=!!e.caseSensitive,this.literal=!!e.literal,this.regexp=!!e.regexp,this.replace=e.replace||"",this.valid=!!this.search&&(!this.regexp||_9(this.search)),this.unquoted=this.unquote(this.search),this.wholeWord=!!e.wholeWord}unquote(e){return this.literal?e:e.replace(/\\([nrt\\])/g,(t,r)=>r=="n"?`
|
|
26
|
-
`:r=="r"?"\r":r=="t"?" ":"\\")}eq(e){return this.search==e.search&&this.replace==e.replace&&this.caseSensitive==e.caseSensitive&&this.regexp==e.regexp&&this.wholeWord==e.wholeWord}create(){return this.regexp?new Q9(this):new J9(this)}getCursor(e,t=0,r){let i=e.doc?e:ye.create({doc:e});return r==null&&(r=i.doc.length),this.regexp?wi(this,i,t,r):yi(this,i,t,r)}}class $w{constructor(e){this.spec=e}}function yi(n,e,t,r){return new Wi(e.doc,n.unquoted,t,r,n.caseSensitive?void 0:i=>i.toLowerCase(),n.wholeWord?Y9(e.doc,e.charCategorizer(e.selection.main.head)):void 0)}function Y9(n,e){return(t,r,i,s)=>((s>t||s+i.length<r)&&(s=Math.max(0,t-2),i=n.sliceString(s,Math.min(n.length,r+2))),(e(jc(i,t-s))!=ze.Word||e(Bc(i,t-s))!=ze.Word)&&(e(Bc(i,r-s))!=ze.Word||e(jc(i,r-s))!=ze.Word))}class J9 extends $w{constructor(e){super(e)}nextMatch(e,t,r){let i=yi(this.spec,e,r,e.doc.length).nextOverlapping();return i.done&&(i=yi(this.spec,e,0,t).nextOverlapping()),i.done?null:i.value}prevMatchInRange(e,t,r){for(let i=r;;){let s=Math.max(t,i-1e4-this.spec.unquoted.length),o=yi(this.spec,e,s,i),a=null;for(;!o.nextOverlapping().done;)a=o.value;if(a)return a;if(s==t)return null;i-=1e4}}prevMatch(e,t,r){return this.prevMatchInRange(e,0,t)||this.prevMatchInRange(e,r,e.doc.length)}getReplacement(e){return this.spec.unquote(this.spec.replace)}matchAll(e,t){let r=yi(this.spec,e,0,e.doc.length),i=[];for(;!r.next().done;){if(i.length>=t)return null;i.push(r.value)}return i}highlight(e,t,r,i){let s=yi(this.spec,e,Math.max(0,t-this.spec.unquoted.length),Math.min(r+this.spec.unquoted.length,e.doc.length));for(;!s.next().done;)i(s.value.from,s.value.to)}}function wi(n,e,t,r){return new _w(e.doc,n.search,{ignoreCase:!n.caseSensitive,test:n.wholeWord?X9(e.charCategorizer(e.selection.main.head)):void 0},t,r)}function jc(n,e){return n.slice(Et(n,e,!1),e)}function Bc(n,e){return n.slice(e,Et(n,e))}function X9(n){return(e,t,r)=>!r[0].length||(n(jc(r.input,r.index))!=ze.Word||n(Bc(r.input,r.index))!=ze.Word)&&(n(Bc(r.input,r.index+r[0].length))!=ze.Word||n(jc(r.input,r.index+r[0].length))!=ze.Word)}class Q9 extends $w{nextMatch(e,t,r){let i=wi(this.spec,e,r,e.doc.length).next();return i.done&&(i=wi(this.spec,e,0,t).next()),i.done?null:i.value}prevMatchInRange(e,t,r){for(let i=1;;i++){let s=Math.max(t,r-i*1e4),o=wi(this.spec,e,s,r),a=null;for(;!o.next().done;)a=o.value;if(a&&(s==t||a.from>s+10))return a;if(s==t)return null}}prevMatch(e,t,r){return this.prevMatchInRange(e,0,t)||this.prevMatchInRange(e,r,e.doc.length)}getReplacement(e){return this.spec.unquote(this.spec.replace.replace(/\$([$&\d+])/g,(t,r)=>r=="$"?"$":r=="&"?e.match[0]:r!="0"&&+r<e.match.length?e.match[r]:t))}matchAll(e,t){let r=wi(this.spec,e,0,e.doc.length),i=[];for(;!r.next().done;){if(i.length>=t)return null;i.push(r.value)}return i}highlight(e,t,r,i){let s=wi(this.spec,e,Math.max(0,t-250),Math.min(r+250,e.doc.length));for(;!s.next().done;)i(s.value.from,s.value.to)}}const Js=pe.define(),Oh=pe.define(),wr=bt.define({create(n){return new md(_f(n).create(),null)},update(n,e){for(let t of e.effects)t.is(Js)?n=new md(t.value.create(),n.panel):t.is(Oh)&&(n=new md(n.query,t.value?Th:null));return n},provide:n=>Gs.from(n,e=>e.panel)});class md{constructor(e,t){this.query=e,this.panel=t}}const e3=le.mark({class:"cm-searchMatch"}),t3=le.mark({class:"cm-searchMatch cm-searchMatch-selected"}),n3=it.fromClass(class{constructor(n){this.view=n,this.decorations=this.highlight(n.state.field(wr))}update(n){let e=n.state.field(wr);(e!=n.startState.field(wr)||n.docChanged||n.selectionSet||n.viewportChanged)&&(this.decorations=this.highlight(e))}highlight({query:n,panel:e}){if(!e||!n.spec.valid)return le.none;let{view:t}=this,r=new kr;for(let i=0,s=t.visibleRanges,o=s.length;i<o;i++){let{from:a,to:l}=s[i];for(;i<o-1&&l>s[i+1].from-500;)l=s[++i].to;n.highlight(t.state,a,l,(c,u)=>{let d=t.state.selection.ranges.some(h=>h.from==c&&h.to==u);r.add(c,u,d?t3:e3)})}return r.finish()}},{decorations:n=>n.decorations});function bo(n){return e=>{let t=e.state.field(wr,!1);return t&&t.query.spec.valid?n(e,t):Vw(e)}}const $c=bo((n,{query:e})=>{let{to:t}=n.state.selection.main,r=e.nextMatch(n.state,t,t);if(!r)return!1;let i=B.single(r.from,r.to),s=n.state.facet(rs);return n.dispatch({selection:i,effects:[Nh(n,r),s.scrollToMatch(i.main,n)],userEvent:"select.search"}),Hw(n),!0}),Fc=bo((n,{query:e})=>{let{state:t}=n,{from:r}=t.selection.main,i=e.prevMatch(t,r,r);if(!i)return!1;let s=B.single(i.from,i.to),o=n.state.facet(rs);return n.dispatch({selection:s,effects:[Nh(n,i),o.scrollToMatch(s.main,n)],userEvent:"select.search"}),Hw(n),!0}),r3=bo((n,{query:e})=>{let t=e.matchAll(n.state,1e3);return!t||!t.length?!1:(n.dispatch({selection:B.create(t.map(r=>B.range(r.from,r.to))),userEvent:"select.search.matches"}),!0)}),i3=({state:n,dispatch:e})=>{let t=n.selection;if(t.ranges.length>1||t.main.empty)return!1;let{from:r,to:i}=t.main,s=[],o=0;for(let a=new Wi(n.doc,n.sliceDoc(r,i));!a.next().done;){if(s.length>1e3)return!1;a.value.from==r&&(o=s.length),s.push(B.range(a.value.from,a.value.to))}return e(n.update({selection:B.create(s,o),userEvent:"select.search.matches"})),!0},vg=bo((n,{query:e})=>{let{state:t}=n,{from:r,to:i}=t.selection.main;if(t.readOnly)return!1;let s=e.nextMatch(t,r,r);if(!s)return!1;let o=[],a,l,c=[];if(s.from==r&&s.to==i&&(l=t.toText(e.getReplacement(s)),o.push({from:s.from,to:s.to,insert:l}),s=e.nextMatch(t,s.from,s.to),c.push(G.announce.of(t.phrase("replaced match on line $",t.doc.lineAt(r).number)+"."))),s){let u=o.length==0||o[0].from>=s.to?0:s.to-s.from-l.length;a=B.single(s.from-u,s.to-u),c.push(Nh(n,s)),c.push(t.facet(rs).scrollToMatch(a.main,n))}return n.dispatch({changes:o,selection:a,effects:c,userEvent:"input.replace"}),!0}),s3=bo((n,{query:e})=>{if(n.state.readOnly)return!1;let t=e.matchAll(n.state,1e9).map(i=>{let{from:s,to:o}=i;return{from:s,to:o,insert:e.getReplacement(i)}});if(!t.length)return!1;let r=n.state.phrase("replaced $ matches",t.length)+".";return n.dispatch({changes:t,effects:G.announce.of(r),userEvent:"input.replace.all"}),!0});function Th(n){return n.state.facet(rs).createPanel(n)}function _f(n,e){var t,r,i,s,o;let a=n.selection.main,l=a.empty||a.to>a.from+100?"":n.sliceDoc(a.from,a.to);if(e&&!l)return e;let c=n.facet(rs);return new Bw({search:((t=e?.literal)!==null&&t!==void 0?t:c.literal)?l:l.replace(/\n/g,"\\n"),caseSensitive:(r=e?.caseSensitive)!==null&&r!==void 0?r:c.caseSensitive,literal:(i=e?.literal)!==null&&i!==void 0?i:c.literal,regexp:(s=e?.regexp)!==null&&s!==void 0?s:c.regexp,wholeWord:(o=e?.wholeWord)!==null&&o!==void 0?o:c.wholeWord})}function Fw(n){let e=qs(n,Th);return e&&e.dom.querySelector("[main-field]")}function Hw(n){let e=Fw(n);e&&e==n.root.activeElement&&e.select()}const Vw=n=>{let e=n.state.field(wr,!1);if(e&&e.panel){let t=Fw(n);if(t&&t!=n.root.activeElement){let r=_f(n.state,e.query.spec);r.valid&&n.dispatch({effects:Js.of(r)}),t.focus(),t.select()}}else n.dispatch({effects:[Oh.of(!0),e?Js.of(_f(n.state,e.query.spec)):pe.appendConfig.of(c3)]});return!0},Uw=n=>{let e=n.state.field(wr,!1);if(!e||!e.panel)return!1;let t=qs(n,Th);return t&&t.dom.contains(n.root.activeElement)&&n.focus(),n.dispatch({effects:Oh.of(!1)}),!0},o3=[{key:"Mod-f",run:Vw,scope:"editor search-panel"},{key:"F3",run:$c,shift:Fc,scope:"editor search-panel",preventDefault:!0},{key:"Mod-g",run:$c,shift:Fc,scope:"editor search-panel",preventDefault:!0},{key:"Escape",run:Uw,scope:"editor search-panel"},{key:"Mod-Shift-l",run:i3},{key:"Alt-g",run:j9},{key:"Mod-d",run:Z9,preventDefault:!0}];class a3{constructor(e){this.view=e;let t=this.query=e.state.field(wr).query.spec;this.commit=this.commit.bind(this),this.searchField=$e("input",{value:t.search,placeholder:en(e,"Find"),"aria-label":en(e,"Find"),class:"cm-textfield",name:"search",form:"","main-field":"true",onchange:this.commit,onkeyup:this.commit}),this.replaceField=$e("input",{value:t.replace,placeholder:en(e,"Replace"),"aria-label":en(e,"Replace"),class:"cm-textfield",name:"replace",form:"",onchange:this.commit,onkeyup:this.commit}),this.caseField=$e("input",{type:"checkbox",name:"case",form:"",checked:t.caseSensitive,onchange:this.commit}),this.reField=$e("input",{type:"checkbox",name:"re",form:"",checked:t.regexp,onchange:this.commit}),this.wordField=$e("input",{type:"checkbox",name:"word",form:"",checked:t.wholeWord,onchange:this.commit});function r(i,s,o){return $e("button",{class:"cm-button",name:i,onclick:s,type:"button"},o)}this.dom=$e("div",{onkeydown:i=>this.keydown(i),class:"cm-search"},[this.searchField,r("next",()=>$c(e),[en(e,"next")]),r("prev",()=>Fc(e),[en(e,"previous")]),r("select",()=>r3(e),[en(e,"all")]),$e("label",null,[this.caseField,en(e,"match case")]),$e("label",null,[this.reField,en(e,"regexp")]),$e("label",null,[this.wordField,en(e,"by word")]),...e.state.readOnly?[]:[$e("br"),this.replaceField,r("replace",()=>vg(e),[en(e,"replace")]),r("replaceAll",()=>s3(e),[en(e,"replace all")])],$e("button",{name:"close",onclick:()=>Uw(e),"aria-label":en(e,"close"),type:"button"},["×"])])}commit(){let e=new Bw({search:this.searchField.value,caseSensitive:this.caseField.checked,regexp:this.reField.checked,wholeWord:this.wordField.checked,replace:this.replaceField.value});e.eq(this.query)||(this.query=e,this.view.dispatch({effects:Js.of(e)}))}keydown(e){dT(this.view,e,"search-panel")?e.preventDefault():e.keyCode==13&&e.target==this.searchField?(e.preventDefault(),(e.shiftKey?Fc:$c)(this.view)):e.keyCode==13&&e.target==this.replaceField&&(e.preventDefault(),vg(this.view))}update(e){for(let t of e.transactions)for(let r of t.effects)r.is(Js)&&!r.value.eq(this.query)&&this.setQuery(r.value)}setQuery(e){this.query=e,this.searchField.value=e.search,this.replaceField.value=e.replace,this.caseField.checked=e.caseSensitive,this.reField.checked=e.regexp,this.wordField.checked=e.wholeWord}mount(){this.searchField.select()}get pos(){return 80}get top(){return this.view.state.facet(rs).top}}function en(n,e){return n.state.phrase(e)}const Yo=30,Jo=/[\s\.,:;?!]/;function Nh(n,{from:e,to:t}){let r=n.state.doc.lineAt(e),i=n.state.doc.lineAt(t).to,s=Math.max(r.from,e-Yo),o=Math.min(i,t+Yo),a=n.state.sliceDoc(s,o);if(s!=r.from){for(let l=0;l<Yo;l++)if(!Jo.test(a[l+1])&&Jo.test(a[l])){a=a.slice(l);break}}if(o!=i){for(let l=a.length-1;l>a.length-Yo;l--)if(!Jo.test(a[l-1])&&Jo.test(a[l])){a=a.slice(0,l);break}}return G.announce.of(`${n.state.phrase("current match")}. ${a} ${n.state.phrase("on line")} ${r.number}.`)}const l3=G.baseTheme({".cm-panel.cm-search":{padding:"2px 6px 4px",position:"relative","& [name=close]":{position:"absolute",top:"0",right:"4px",backgroundColor:"inherit",border:"none",font:"inherit",padding:0,margin:0},"& input, & button, & label":{margin:".2em .6em .2em 0"},"& input[type=checkbox]":{marginRight:".2em"},"& label":{fontSize:"80%",whiteSpace:"pre"}},"&light .cm-searchMatch":{backgroundColor:"#ffff0054"},"&dark .cm-searchMatch":{backgroundColor:"#00ffff8a"},"&light .cm-searchMatch-selected":{backgroundColor:"#ff6a0054"},"&dark .cm-searchMatch-selected":{backgroundColor:"#ff00ff8a"}}),c3=[wr,ti.lowest(n3),l3];class zw{constructor(e,t,r){this.state=e,this.pos=t,this.explicit=r,this.abortListeners=[]}tokenBefore(e){let t=At(this.state).resolveInner(this.pos,-1);for(;t&&e.indexOf(t.name)<0;)t=t.parent;return t?{from:t.from,to:this.pos,text:this.state.sliceDoc(t.from,this.pos),type:t.type}:null}matchBefore(e){let t=this.state.doc.lineAt(this.pos),r=Math.max(t.from,this.pos-250),i=t.text.slice(r-t.from,this.pos-t.from),s=i.search(Ww(e,!1));return s<0?null:{from:r+s,to:this.pos,text:i.slice(s)}}get aborted(){return this.abortListeners==null}addEventListener(e,t){e=="abort"&&this.abortListeners&&this.abortListeners.push(t)}}function bg(n){let e=Object.keys(n).join(""),t=/\w/.test(e);return t&&(e=e.replace(/\w/g,"")),`[${t?"\\w":""}${e.replace(/[^\w\s]/g,"\\$&")}]`}function u3(n){let e=Object.create(null),t=Object.create(null);for(let{label:i}of n){e[i[0]]=!0;for(let s=1;s<i.length;s++)t[i[s]]=!0}let r=bg(e)+bg(t)+"*$";return[new RegExp("^"+r),new RegExp(r)]}function d3(n){let e=n.map(i=>typeof i=="string"?{label:i}:i),[t,r]=e.every(i=>/^\w+$/.test(i.label))?[/\w*$/,/\w+$/]:u3(e);return i=>{let s=i.matchBefore(r);return s||i.explicit?{from:s?s.from:i.pos,options:e,validFor:t}:null}}function E6(n,e){return t=>{for(let r=At(t.state).resolveInner(t.pos,-1);r;r=r.parent){if(n.indexOf(r.name)>-1)return null;if(r.type.isTop)break}return e(t)}}class xg{constructor(e,t,r,i){this.completion=e,this.source=t,this.match=r,this.score=i}}function Sr(n){return n.selection.main.from}function Ww(n,e){var t;let{source:r}=n,i=e&&r[0]!="^",s=r[r.length-1]!="$";return!i&&!s?n:new RegExp(`${i?"^":""}(?:${r})${s?"$":""}`,(t=n.flags)!==null&&t!==void 0?t:n.ignoreCase?"i":"")}const qw=Kn.define();function f3(n,e,t,r){let{main:i}=n.selection,s=t-i.from,o=r-i.from;return Object.assign(Object.assign({},n.changeByRange(a=>a!=i&&t!=r&&n.sliceDoc(a.from+s,a.from+o)!=n.sliceDoc(t,r)?{range:a}:{changes:{from:a.from+s,to:r==i.from?a.to:a.from+o,insert:e},range:B.cursor(a.from+s+e.length)})),{userEvent:"input.complete"})}const yg=new WeakMap;function h3(n){if(!Array.isArray(n))return n;let e=yg.get(n);return e||yg.set(n,e=d3(n)),e}const Ph=pe.define(),Xs=pe.define();class p3{constructor(e){this.pattern=e,this.chars=[],this.folded=[],this.any=[],this.precise=[],this.byWord=[],this.score=0,this.matched=[];for(let t=0;t<e.length;){let r=St(e,t),i=dn(r);this.chars.push(r);let s=e.slice(t,t+i),o=s.toUpperCase();this.folded.push(St(o==s?s.toLowerCase():o,0)),t+=i}this.astral=e.length!=this.chars.length}ret(e,t){return this.score=e,this.matched=t,!0}match(e){if(this.pattern.length==0)return this.ret(-100,[]);if(e.length<this.pattern.length)return!1;let{chars:t,folded:r,any:i,precise:s,byWord:o}=this;if(t.length==1){let y=St(e,0),S=dn(y),w=S==e.length?0:-100;if(y!=t[0])if(y==r[0])w+=-200;else return!1;return this.ret(w,[0,S])}let a=e.indexOf(this.pattern);if(a==0)return this.ret(e.length==this.pattern.length?0:-100,[0,this.pattern.length]);let l=t.length,c=0;if(a<0){for(let y=0,S=Math.min(e.length,200);y<S&&c<l;){let w=St(e,y);(w==t[c]||w==r[c])&&(i[c++]=y),y+=dn(w)}if(c<l)return!1}let u=0,d=0,h=!1,p=0,g=-1,m=-1,v=/[a-z]/.test(e),b=!0;for(let y=0,S=Math.min(e.length,200),w=0;y<S&&d<l;){let C=St(e,y);a<0&&(u<l&&C==t[u]&&(s[u++]=y),p<l&&(C==t[p]||C==r[p]?(p==0&&(g=y),m=y+1,p++):p=0));let k,A=C<255?C>=48&&C<=57||C>=97&&C<=122?2:C>=65&&C<=90?1:0:(k=dh(C))!=k.toLowerCase()?1:k!=k.toUpperCase()?2:0;(!y||A==1&&v||w==0&&A!=0)&&(t[d]==C||r[d]==C&&(h=!0)?o[d++]=y:o.length&&(b=!1)),w=A,y+=dn(C)}return d==l&&o[0]==0&&b?this.result(-100+(h?-200:0),o,e):p==l&&g==0?this.ret(-200-e.length+(m==e.length?0:-100),[0,m]):a>-1?this.ret(-700-e.length,[a,a+this.pattern.length]):p==l?this.ret(-900-e.length,[g,m]):d==l?this.result(-100+(h?-200:0)+-700+(b?0:-1100),o,e):t.length==2?!1:this.result((i[0]?-700:0)+-200+-1100,i,e)}result(e,t,r){let i=[],s=0;for(let o of t){let a=o+(this.astral?dn(St(r,o)):1);s&&i[s-1]==o?i[s-1]=a:(i[s++]=o,i[s++]=a)}return this.ret(e-r.length,i)}}const Yt=J.define({combine(n){return Zn(n,{activateOnTyping:!0,selectOnOpen:!0,override:null,closeOnBlur:!0,maxRenderedOptions:100,defaultKeymap:!0,tooltipClass:()=>"",optionClass:()=>"",aboveCursor:!1,icons:!0,addToOptions:[],positionInfo:m3,compareCompletions:(e,t)=>e.label.localeCompare(t.label),interactionDelay:75},{defaultKeymap:(e,t)=>e&&t,closeOnBlur:(e,t)=>e&&t,icons:(e,t)=>e&&t,tooltipClass:(e,t)=>r=>wg(e(r),t(r)),optionClass:(e,t)=>r=>wg(e(r),t(r)),addToOptions:(e,t)=>e.concat(t)})}});function wg(n,e){return n?e?n+" "+e:n:e}function m3(n,e,t,r,i){let s=n.textDirection==qe.RTL,o=s,a=!1,l="top",c,u,d=e.left-i.left,h=i.right-e.right,p=r.right-r.left,g=r.bottom-r.top;if(o&&d<Math.min(p,h)?o=!1:!o&&h<Math.min(p,d)&&(o=!0),p<=(o?d:h))c=Math.max(i.top,Math.min(t.top,i.bottom-g))-e.top,u=Math.min(400,o?d:h);else{a=!0,u=Math.min(400,(s?e.right:i.right-e.left)-30);let m=i.bottom-e.bottom;m>=g||m>e.top?c=t.bottom-e.top:(l="bottom",c=e.bottom-t.top)}return{style:`${l}: ${c}px; max-width: ${u}px`,class:"cm-completionInfo-"+(a?s?"left-narrow":"right-narrow":o?"left":"right")}}function g3(n){let e=n.addToOptions.slice();return n.icons&&e.push({render(t){let r=document.createElement("div");return r.classList.add("cm-completionIcon"),t.type&&r.classList.add(...t.type.split(/\s+/g).map(i=>"cm-completionIcon-"+i)),r.setAttribute("aria-hidden","true"),r},position:20}),e.push({render(t,r,i){let s=document.createElement("span");s.className="cm-completionLabel";let o=t.displayLabel||t.label,a=0;for(let l=0;l<i.length;){let c=i[l++],u=i[l++];c>a&&s.appendChild(document.createTextNode(o.slice(a,c)));let d=s.appendChild(document.createElement("span"));d.appendChild(document.createTextNode(o.slice(c,u))),d.className="cm-completionMatchedText",a=u}return a<o.length&&s.appendChild(document.createTextNode(o.slice(a))),s},position:50},{render(t){if(!t.detail)return null;let r=document.createElement("span");return r.className="cm-completionDetail",r.textContent=t.detail,r},position:80}),e.sort((t,r)=>t.position-r.position).map(t=>t.render)}function Sg(n,e,t){if(n<=t)return{from:0,to:n};if(e<0&&(e=0),e<=n>>1){let i=Math.floor(e/t);return{from:i*t,to:(i+1)*t}}let r=Math.floor((n-e)/t);return{from:n-(r+1)*t,to:n-r*t}}class v3{constructor(e,t,r){this.view=e,this.stateField=t,this.applyCompletion=r,this.info=null,this.infoDestroy=null,this.placeInfoReq={read:()=>this.measureInfo(),write:l=>this.placeInfo(l),key:this},this.space=null,this.currentClass="";let i=e.state.field(t),{options:s,selected:o}=i.open,a=e.state.facet(Yt);this.optionContent=g3(a),this.optionClass=a.optionClass,this.tooltipClass=a.tooltipClass,this.range=Sg(s.length,o,a.maxRenderedOptions),this.dom=document.createElement("div"),this.dom.className="cm-tooltip-autocomplete",this.updateTooltipClass(e.state),this.dom.addEventListener("mousedown",l=>{for(let c=l.target,u;c&&c!=this.dom;c=c.parentNode)if(c.nodeName=="LI"&&(u=/-(\d+)$/.exec(c.id))&&+u[1]<s.length){this.applyCompletion(e,s[+u[1]]),l.preventDefault();return}}),this.dom.addEventListener("focusout",l=>{let c=e.state.field(this.stateField,!1);c&&c.tooltip&&e.state.facet(Yt).closeOnBlur&&l.relatedTarget!=e.contentDOM&&e.dispatch({effects:Xs.of(null)})}),this.list=this.dom.appendChild(this.createListBox(s,i.id,this.range)),this.list.addEventListener("scroll",()=>{this.info&&this.view.requestMeasure(this.placeInfoReq)})}mount(){this.updateSel()}update(e){var t,r,i;let s=e.state.field(this.stateField),o=e.startState.field(this.stateField);this.updateTooltipClass(e.state),s!=o&&(this.updateSel(),((t=s.open)===null||t===void 0?void 0:t.disabled)!=((r=o.open)===null||r===void 0?void 0:r.disabled)&&this.dom.classList.toggle("cm-tooltip-autocomplete-disabled",!!(!((i=s.open)===null||i===void 0)&&i.disabled)))}updateTooltipClass(e){let t=this.tooltipClass(e);if(t!=this.currentClass){for(let r of this.currentClass.split(" "))r&&this.dom.classList.remove(r);for(let r of t.split(" "))r&&this.dom.classList.add(r);this.currentClass=t}}positioned(e){this.space=e,this.info&&this.view.requestMeasure(this.placeInfoReq)}updateSel(){let e=this.view.state.field(this.stateField),t=e.open;if((t.selected>-1&&t.selected<this.range.from||t.selected>=this.range.to)&&(this.range=Sg(t.options.length,t.selected,this.view.state.facet(Yt).maxRenderedOptions),this.list.remove(),this.list=this.dom.appendChild(this.createListBox(t.options,e.id,this.range)),this.list.addEventListener("scroll",()=>{this.info&&this.view.requestMeasure(this.placeInfoReq)})),this.updateSelectedOption(t.selected)){this.destroyInfo();let{completion:r}=t.options[t.selected],{info:i}=r;if(!i)return;let s=typeof i=="string"?document.createTextNode(i):i(r);if(!s)return;"then"in s?s.then(o=>{o&&this.view.state.field(this.stateField,!1)==e&&this.addInfoPane(o,r)}).catch(o=>pn(this.view.state,o,"completion info")):this.addInfoPane(s,r)}}addInfoPane(e,t){this.destroyInfo();let r=this.info=document.createElement("div");if(r.className="cm-tooltip cm-completionInfo",e.nodeType!=null)r.appendChild(e),this.infoDestroy=null;else{let{dom:i,destroy:s}=e;r.appendChild(i),this.infoDestroy=s||null}this.dom.appendChild(r),this.view.requestMeasure(this.placeInfoReq)}updateSelectedOption(e){let t=null;for(let r=this.list.firstChild,i=this.range.from;r;r=r.nextSibling,i++)r.nodeName!="LI"||!r.id?i--:i==e?r.hasAttribute("aria-selected")||(r.setAttribute("aria-selected","true"),t=r):r.hasAttribute("aria-selected")&&r.removeAttribute("aria-selected");return t&&x3(this.list,t),t}measureInfo(){let e=this.dom.querySelector("[aria-selected]");if(!e||!this.info)return null;let t=this.dom.getBoundingClientRect(),r=this.info.getBoundingClientRect(),i=e.getBoundingClientRect(),s=this.space;if(!s){let o=this.dom.ownerDocument.defaultView||window;s={left:0,top:0,right:o.innerWidth,bottom:o.innerHeight}}return i.top>Math.min(s.bottom,t.bottom)-10||i.bottom<Math.max(s.top,t.top)+10?null:this.view.state.facet(Yt).positionInfo(this.view,t,i,r,s)}placeInfo(e){this.info&&(e?(e.style&&(this.info.style.cssText=e.style),this.info.className="cm-tooltip cm-completionInfo "+(e.class||"")):this.info.style.cssText="top: -1e6px")}createListBox(e,t,r){const i=document.createElement("ul");i.id=t,i.setAttribute("role","listbox"),i.setAttribute("aria-expanded","true"),i.setAttribute("aria-label",this.view.state.phrase("Completions"));let s=null;for(let o=r.from;o<r.to;o++){let{completion:a,match:l}=e[o],{section:c}=a;if(c){let h=typeof c=="string"?c:c.name;if(h!=s&&(o>r.from||r.from==0))if(s=h,typeof c!="string"&&c.header)i.appendChild(c.header(c));else{let p=i.appendChild(document.createElement("completion-section"));p.textContent=h}}const u=i.appendChild(document.createElement("li"));u.id=t+"-"+o,u.setAttribute("role","option");let d=this.optionClass(a);d&&(u.className=d);for(let h of this.optionContent){let p=h(a,this.view.state,l);p&&u.appendChild(p)}}return r.from&&i.classList.add("cm-completionListIncompleteTop"),r.to<e.length&&i.classList.add("cm-completionListIncompleteBottom"),i}destroyInfo(){this.info&&(this.infoDestroy&&this.infoDestroy(),this.info.remove(),this.info=null)}destroy(){this.destroyInfo()}}function b3(n,e){return t=>new v3(t,n,e)}function x3(n,e){let t=n.getBoundingClientRect(),r=e.getBoundingClientRect();r.top<t.top?n.scrollTop-=t.top-r.top:r.bottom>t.bottom&&(n.scrollTop+=r.bottom-t.bottom)}function Cg(n){return(n.boost||0)*100+(n.apply?10:0)+(n.info?5:0)+(n.type?1:0)}function y3(n,e){let t=[],r=null,i=l=>{t.push(l);let{section:c}=l.completion;if(c){r||(r=[]);let u=typeof c=="string"?c:c.name;r.some(d=>d.name==u)||r.push(typeof c=="string"?{name:u}:c)}};for(let l of n)if(l.hasResult()){let c=l.result.getMatch;if(l.result.filter===!1)for(let u of l.result.options)i(new xg(u,l.source,c?c(u):[],1e9-t.length));else{let u=new p3(e.sliceDoc(l.from,l.to));for(let d of l.result.options)if(u.match(d.label)){let h=d.displayLabel?c?c(d,u.matched):[]:u.matched;i(new xg(d,l.source,h,u.score+(d.boost||0)))}}}if(r){let l=Object.create(null),c=0,u=(d,h)=>{var p,g;return((p=d.rank)!==null&&p!==void 0?p:1e9)-((g=h.rank)!==null&&g!==void 0?g:1e9)||(d.name<h.name?-1:1)};for(let d of r.sort(u))c-=1e5,l[d.name]=c;for(let d of t){let{section:h}=d.completion;h&&(d.score+=l[typeof h=="string"?h:h.name])}}let s=[],o=null,a=e.facet(Yt).compareCompletions;for(let l of t.sort((c,u)=>u.score-c.score||a(c.completion,u.completion))){let c=l.completion;!o||o.label!=c.label||o.detail!=c.detail||o.type!=null&&c.type!=null&&o.type!=c.type||o.apply!=c.apply||o.boost!=c.boost?s.push(l):Cg(l.completion)>Cg(o)&&(s[s.length-1]=l),o=l.completion}return s}class Ei{constructor(e,t,r,i,s,o){this.options=e,this.attrs=t,this.tooltip=r,this.timestamp=i,this.selected=s,this.disabled=o}setSelected(e,t){return e==this.selected||e>=this.options.length?this:new Ei(this.options,kg(t,e),this.tooltip,this.timestamp,e,this.disabled)}static build(e,t,r,i,s){let o=y3(e,t);if(!o.length)return i&&e.some(l=>l.state==1)?new Ei(i.options,i.attrs,i.tooltip,i.timestamp,i.selected,!0):null;let a=t.facet(Yt).selectOnOpen?0:-1;if(i&&i.selected!=a&&i.selected!=-1){let l=i.options[i.selected].completion;for(let c=0;c<o.length;c++)if(o[c].completion==l){a=c;break}}return new Ei(o,kg(r,a),{pos:e.reduce((l,c)=>c.hasResult()?Math.min(l,c.from):l,1e8),create:b3(rn,Zw),above:s.aboveCursor},i?i.timestamp:Date.now(),a,!1)}map(e){return new Ei(this.options,this.attrs,Object.assign(Object.assign({},this.tooltip),{pos:e.mapPos(this.tooltip.pos)}),this.timestamp,this.selected,this.disabled)}}class Hc{constructor(e,t,r){this.active=e,this.id=t,this.open=r}static start(){return new Hc(C3,"cm-ac-"+Math.floor(Math.random()*2e6).toString(36),null)}update(e){let{state:t}=e,r=t.facet(Yt),s=(r.override||t.languageDataAt("autocomplete",Sr(t)).map(h3)).map(a=>(this.active.find(c=>c.source==a)||new Gt(a,this.active.some(c=>c.state!=0)?1:0)).update(e,r));s.length==this.active.length&&s.every((a,l)=>a==this.active[l])&&(s=this.active);let o=this.open;o&&e.docChanged&&(o=o.map(e.changes)),e.selection||s.some(a=>a.hasResult()&&e.changes.touchesRange(a.from,a.to))||!w3(s,this.active)?o=Ei.build(s,t,this.id,o,r):o&&o.disabled&&!s.some(a=>a.state==1)&&(o=null),!o&&s.every(a=>a.state!=1)&&s.some(a=>a.hasResult())&&(s=s.map(a=>a.hasResult()?new Gt(a.source,0):a));for(let a of e.effects)a.is(Kw)&&(o=o&&o.setSelected(a.value,this.id));return s==this.active&&o==this.open?this:new Hc(s,this.id,o)}get tooltip(){return this.open?this.open.tooltip:null}get attrs(){return this.open?this.open.attrs:S3}}function w3(n,e){if(n==e)return!0;for(let t=0,r=0;;){for(;t<n.length&&!n[t].hasResult;)t++;for(;r<e.length&&!e[r].hasResult;)r++;let i=t==n.length,s=r==e.length;if(i||s)return i==s;if(n[t++].result!=e[r++].result)return!1}}const S3={"aria-autocomplete":"list"};function kg(n,e){let t={"aria-autocomplete":"list","aria-haspopup":"listbox","aria-controls":n};return e>-1&&(t["aria-activedescendant"]=n+"-"+e),t}const C3=[];function jf(n){return n.isUserEvent("input.type")?"input":n.isUserEvent("delete.backward")?"delete":null}class Gt{constructor(e,t,r=-1){this.source=e,this.state=t,this.explicitPos=r}hasResult(){return!1}update(e,t){let r=jf(e),i=this;r?i=i.handleUserEvent(e,r,t):e.docChanged?i=i.handleChange(e):e.selection&&i.state!=0&&(i=new Gt(i.source,0));for(let s of e.effects)if(s.is(Ph))i=new Gt(i.source,1,s.value?Sr(e.state):-1);else if(s.is(Xs))i=new Gt(i.source,0);else if(s.is(Gw))for(let o of s.value)o.source==i.source&&(i=o);return i}handleUserEvent(e,t,r){return t=="delete"||!r.activateOnTyping?this.map(e.changes):new Gt(this.source,1)}handleChange(e){return e.changes.touchesRange(Sr(e.startState))?new Gt(this.source,0):this.map(e.changes)}map(e){return e.empty||this.explicitPos<0?this:new Gt(this.source,this.state,e.mapPos(this.explicitPos))}}class Bi extends Gt{constructor(e,t,r,i,s){super(e,2,t),this.result=r,this.from=i,this.to=s}hasResult(){return!0}handleUserEvent(e,t,r){var i;let s=e.changes.mapPos(this.from),o=e.changes.mapPos(this.to,1),a=Sr(e.state);if((this.explicitPos<0?a<=s:a<this.from)||a>o||t=="delete"&&Sr(e.startState)==this.from)return new Gt(this.source,t=="input"&&r.activateOnTyping?1:0);let l=this.explicitPos<0?-1:e.changes.mapPos(this.explicitPos),c;return k3(this.result.validFor,e.state,s,o)?new Bi(this.source,l,this.result,s,o):this.result.update&&(c=this.result.update(this.result,s,o,new zw(e.state,a,l>=0)))?new Bi(this.source,l,c,c.from,(i=c.to)!==null&&i!==void 0?i:Sr(e.state)):new Gt(this.source,1,l)}handleChange(e){return e.changes.touchesRange(this.from,this.to)?new Gt(this.source,0):this.map(e.changes)}map(e){return e.empty?this:new Bi(this.source,this.explicitPos<0?-1:e.mapPos(this.explicitPos),this.result,e.mapPos(this.from),e.mapPos(this.to,1))}}function k3(n,e,t,r){if(!n)return!1;let i=e.sliceDoc(t,r);return typeof n=="function"?n(i,t,r,e):Ww(n,!0).test(i)}const Gw=pe.define({map(n,e){return n.map(t=>t.map(e))}}),Kw=pe.define(),rn=bt.define({create(){return Hc.start()},update(n,e){return n.update(e)},provide:n=>[yh.from(n,e=>e.tooltip),G.contentAttributes.from(n,e=>e.attrs)]});function Zw(n,e){const t=e.completion.apply||e.completion.label;let r=n.state.field(rn).active.find(i=>i.source==e.source);return r instanceof Bi?(typeof t=="string"?n.dispatch(Object.assign(Object.assign({},f3(n.state,t,r.from,r.to)),{annotations:qw.of(e.completion)})):t(n,e.completion,r.from,r.to),!0):!1}function Xo(n,e="option"){return t=>{let r=t.state.field(rn,!1);if(!r||!r.open||r.open.disabled||Date.now()-r.open.timestamp<t.state.facet(Yt).interactionDelay)return!1;let i=1,s;e=="page"&&(s=Ty(t,r.open.tooltip))&&(i=Math.max(2,Math.floor(s.dom.offsetHeight/s.dom.querySelector("li").offsetHeight)-1));let{length:o}=r.open.options,a=r.open.selected>-1?r.open.selected+i*(n?1:-1):n?0:o-1;return a<0?a=e=="page"?0:o-1:a>=o&&(a=e=="page"?o-1:0),t.dispatch({effects:Kw.of(a)}),!0}}const A3=n=>{let e=n.state.field(rn,!1);return n.state.readOnly||!e||!e.open||e.open.selected<0||e.open.disabled||Date.now()-e.open.timestamp<n.state.facet(Yt).interactionDelay?!1:Zw(n,e.open.options[e.open.selected])},M3=n=>n.state.field(rn,!1)?(n.dispatch({effects:Ph.of(!0)}),!0):!1,I3=n=>{let e=n.state.field(rn,!1);return!e||!e.active.some(t=>t.state!=0)?!1:(n.dispatch({effects:Xs.of(null)}),!0)};class E3{constructor(e,t){this.active=e,this.context=t,this.time=Date.now(),this.updates=[],this.done=void 0}}const Ag=50,D3=50,R3=1e3,O3=it.fromClass(class{constructor(n){this.view=n,this.debounceUpdate=-1,this.running=[],this.debounceAccept=-1,this.composing=0;for(let e of n.state.field(rn).active)e.state==1&&this.startQuery(e)}update(n){let e=n.state.field(rn);if(!n.selectionSet&&!n.docChanged&&n.startState.field(rn)==e)return;let t=n.transactions.some(r=>(r.selection||r.docChanged)&&!jf(r));for(let r=0;r<this.running.length;r++){let i=this.running[r];if(t||i.updates.length+n.transactions.length>D3&&Date.now()-i.time>R3){for(let s of i.context.abortListeners)try{s()}catch(o){pn(this.view.state,o)}i.context.abortListeners=null,this.running.splice(r--,1)}else i.updates.push(...n.transactions)}if(this.debounceUpdate>-1&&clearTimeout(this.debounceUpdate),this.debounceUpdate=e.active.some(r=>r.state==1&&!this.running.some(i=>i.active.source==r.source))?setTimeout(()=>this.startUpdate(),Ag):-1,this.composing!=0)for(let r of n.transactions)jf(r)=="input"?this.composing=2:this.composing==2&&r.selection&&(this.composing=3)}startUpdate(){this.debounceUpdate=-1;let{state:n}=this.view,e=n.field(rn);for(let t of e.active)t.state==1&&!this.running.some(r=>r.active.source==t.source)&&this.startQuery(t)}startQuery(n){let{state:e}=this.view,t=Sr(e),r=new zw(e,t,n.explicitPos==t),i=new E3(n,r);this.running.push(i),Promise.resolve(n.source(r)).then(s=>{i.context.aborted||(i.done=s||null,this.scheduleAccept())},s=>{this.view.dispatch({effects:Xs.of(null)}),pn(this.view.state,s)})}scheduleAccept(){this.running.every(n=>n.done!==void 0)?this.accept():this.debounceAccept<0&&(this.debounceAccept=setTimeout(()=>this.accept(),Ag))}accept(){var n;this.debounceAccept>-1&&clearTimeout(this.debounceAccept),this.debounceAccept=-1;let e=[],t=this.view.state.facet(Yt);for(let r=0;r<this.running.length;r++){let i=this.running[r];if(i.done===void 0)continue;if(this.running.splice(r--,1),i.done){let o=new Bi(i.active.source,i.active.explicitPos,i.done,i.done.from,(n=i.done.to)!==null&&n!==void 0?n:Sr(i.updates.length?i.updates[0].startState:this.view.state));for(let a of i.updates)o=o.update(a,t);if(o.hasResult()){e.push(o);continue}}let s=this.view.state.field(rn).active.find(o=>o.source==i.active.source);if(s&&s.state==1)if(i.done==null){let o=new Gt(i.active.source,0);for(let a of i.updates)o=o.update(a,t);o.state!=1&&e.push(o)}else this.startQuery(s)}e.length&&this.view.dispatch({effects:Gw.of(e)})}},{eventHandlers:{blur(n){let e=this.view.state.field(rn,!1);if(e&&e.tooltip&&this.view.state.facet(Yt).closeOnBlur){let t=e.open&&Ty(this.view,e.open.tooltip);(!t||!t.dom.contains(n.relatedTarget))&&this.view.dispatch({effects:Xs.of(null)})}},compositionstart(){this.composing=1},compositionend(){this.composing==3&&setTimeout(()=>this.view.dispatch({effects:Ph.of(!1)}),20),this.composing=0}}}),Yw=G.baseTheme({".cm-tooltip.cm-tooltip-autocomplete":{"& > ul":{fontFamily:"monospace",whiteSpace:"nowrap",overflow:"hidden auto",maxWidth_fallback:"700px",maxWidth:"min(700px, 95vw)",minWidth:"250px",maxHeight:"10em",height:"100%",listStyle:"none",margin:0,padding:0,"& > li, & > completion-section":{padding:"1px 3px",lineHeight:1.2},"& > li":{overflowX:"hidden",textOverflow:"ellipsis",cursor:"pointer"},"& > completion-section":{display:"list-item",borderBottom:"1px solid silver",paddingLeft:"0.5em",opacity:.7}}},"&light .cm-tooltip-autocomplete ul li[aria-selected]":{background:"#17c",color:"white"},"&light .cm-tooltip-autocomplete-disabled ul li[aria-selected]":{background:"#777"},"&dark .cm-tooltip-autocomplete ul li[aria-selected]":{background:"#347",color:"white"},"&dark .cm-tooltip-autocomplete-disabled ul li[aria-selected]":{background:"#444"},".cm-completionListIncompleteTop:before, .cm-completionListIncompleteBottom:after":{content:'"···"',opacity:.5,display:"block",textAlign:"center"},".cm-tooltip.cm-completionInfo":{position:"absolute",padding:"3px 9px",width:"max-content",maxWidth:"400px",boxSizing:"border-box"},".cm-completionInfo.cm-completionInfo-left":{right:"100%"},".cm-completionInfo.cm-completionInfo-right":{left:"100%"},".cm-completionInfo.cm-completionInfo-left-narrow":{right:"30px"},".cm-completionInfo.cm-completionInfo-right-narrow":{left:"30px"},"&light .cm-snippetField":{backgroundColor:"#00000022"},"&dark .cm-snippetField":{backgroundColor:"#ffffff22"},".cm-snippetFieldPosition":{verticalAlign:"text-top",width:0,height:"1.15em",display:"inline-block",margin:"0 -0.7px -.7em",borderLeft:"1.4px dotted #888"},".cm-completionMatchedText":{textDecoration:"underline"},".cm-completionDetail":{marginLeft:"0.5em",fontStyle:"italic"},".cm-completionIcon":{fontSize:"90%",width:".8em",display:"inline-block",textAlign:"center",paddingRight:".6em",opacity:"0.6",boxSizing:"content-box"},".cm-completionIcon-function, .cm-completionIcon-method":{"&:after":{content:"'ƒ'"}},".cm-completionIcon-class":{"&:after":{content:"'○'"}},".cm-completionIcon-interface":{"&:after":{content:"'◌'"}},".cm-completionIcon-variable":{"&:after":{content:"'𝑥'"}},".cm-completionIcon-constant":{"&:after":{content:"'𝐶'"}},".cm-completionIcon-type":{"&:after":{content:"'𝑡'"}},".cm-completionIcon-enum":{"&:after":{content:"'∪'"}},".cm-completionIcon-property":{"&:after":{content:"'□'"}},".cm-completionIcon-keyword":{"&:after":{content:"'🔑︎'"}},".cm-completionIcon-namespace":{"&:after":{content:"'▢'"}},".cm-completionIcon-text":{"&:after":{content:"'abc'",fontSize:"50%",verticalAlign:"middle"}}});class T3{constructor(e,t,r,i){this.field=e,this.line=t,this.from=r,this.to=i}}class Lh{constructor(e,t,r){this.field=e,this.from=t,this.to=r}map(e){let t=e.mapPos(this.from,-1,kt.TrackDel),r=e.mapPos(this.to,1,kt.TrackDel);return t==null||r==null?null:new Lh(this.field,t,r)}}class _h{constructor(e,t){this.lines=e,this.fieldPositions=t}instantiate(e,t){let r=[],i=[t],s=e.doc.lineAt(t),o=/^\s*/.exec(s.text)[0];for(let l of this.lines){if(r.length){let c=o,u=/^\t*/.exec(l)[0].length;for(let d=0;d<u;d++)c+=e.facet(mo);i.push(t+c.length-u),l=c+l.slice(u)}r.push(l),t+=l.length+1}let a=this.fieldPositions.map(l=>new Lh(l.field,i[l.line]+l.from,i[l.line]+l.to));return{text:r,ranges:a}}static parse(e){let t=[],r=[],i=[],s;for(let o of e.split(/\r\n?|\n/)){for(;s=/[#$]\{(?:(\d+)(?::([^}]*))?|([^}]*))\}/.exec(o);){let a=s[1]?+s[1]:null,l=s[2]||s[3]||"",c=-1;for(let u=0;u<t.length;u++)(a!=null?t[u].seq==a:l&&t[u].name==l)&&(c=u);if(c<0){let u=0;for(;u<t.length&&(a==null||t[u].seq!=null&&t[u].seq<a);)u++;t.splice(u,0,{seq:a,name:l}),c=u;for(let d of i)d.field>=c&&d.field++}i.push(new T3(c,r.length,s.index,s.index+l.length)),o=o.slice(0,s.index)+l+o.slice(s.index+s[0].length)}for(let a;a=/\\([{}])/.exec(o);){o=o.slice(0,a.index)+a[1]+o.slice(a.index+a[0].length);for(let l of i)l.line==r.length&&l.from>a.index&&(l.from--,l.to--)}r.push(o)}return new _h(r,i)}}let N3=le.widget({widget:new class extends sr{toDOM(){let n=document.createElement("span");return n.className="cm-snippetFieldPosition",n}ignoreEvent(){return!1}}}),P3=le.mark({class:"cm-snippetField"});class is{constructor(e,t){this.ranges=e,this.active=t,this.deco=le.set(e.map(r=>(r.from==r.to?N3:P3).range(r.from,r.to)))}map(e){let t=[];for(let r of this.ranges){let i=r.map(e);if(!i)return null;t.push(i)}return new is(t,this.active)}selectionInsideField(e){return e.ranges.every(t=>this.ranges.some(r=>r.field==this.active&&r.from<=t.from&&r.to>=t.to))}}const xo=pe.define({map(n,e){return n&&n.map(e)}}),L3=pe.define(),Qs=bt.define({create(){return null},update(n,e){for(let t of e.effects){if(t.is(xo))return t.value;if(t.is(L3)&&n)return new is(n.ranges,t.value)}return n&&e.docChanged&&(n=n.map(e.changes)),n&&e.selection&&!n.selectionInsideField(e.selection)&&(n=null),n},provide:n=>G.decorations.from(n,e=>e?e.deco:le.none)});function jh(n,e){return B.create(n.filter(t=>t.field==e).map(t=>B.range(t.from,t.to)))}function _3(n){let e=_h.parse(n);return(t,r,i,s)=>{let{text:o,ranges:a}=e.instantiate(t.state,i),l={changes:{from:i,to:s,insert:Ce.of(o)},scrollIntoView:!0,annotations:r?qw.of(r):void 0};if(a.length&&(l.selection=jh(a,0)),a.length>1){let c=new is(a,0),u=l.effects=[xo.of(c)];t.state.field(Qs,!1)===void 0&&u.push(pe.appendConfig.of([Qs,H3,V3,Yw]))}t.dispatch(t.state.update(l))}}function Jw(n){return({state:e,dispatch:t})=>{let r=e.field(Qs,!1);if(!r||n<0&&r.active==0)return!1;let i=r.active+n,s=n>0&&!r.ranges.some(o=>o.field==i+n);return t(e.update({selection:jh(r.ranges,i),effects:xo.of(s?null:new is(r.ranges,i))})),!0}}const j3=({state:n,dispatch:e})=>n.field(Qs,!1)?(e(n.update({effects:xo.of(null)})),!0):!1,B3=Jw(1),$3=Jw(-1),F3=[{key:"Tab",run:B3,shift:$3},{key:"Escape",run:j3}],Mg=J.define({combine(n){return n.length?n[0]:F3}}),H3=ti.highest(ho.compute([Mg],n=>n.facet(Mg)));function D6(n,e){return Object.assign(Object.assign({},e),{apply:_3(n)})}const V3=G.domEventHandlers({mousedown(n,e){let t=e.state.field(Qs,!1),r;if(!t||(r=e.posAtCoords({x:n.clientX,y:n.clientY}))==null)return!1;let i=t.ranges.find(s=>s.from<=r&&s.to>=r);return!i||i.field==t.active?!1:(e.dispatch({selection:jh(t.ranges,i.field),effects:xo.of(t.ranges.some(s=>s.field>i.field)?new is(t.ranges,i.field):null)}),!0)}}),eo={brackets:["(","[","{","'",'"'],before:")]}:;>",stringPrefixes:[]},zr=pe.define({map(n,e){let t=e.mapPos(n,-1,kt.TrackAfter);return t??void 0}}),Bh=new class extends Zr{};Bh.startSide=1;Bh.endSide=-1;const Xw=bt.define({create(){return Ne.empty},update(n,e){if(e.selection){let t=e.state.doc.lineAt(e.selection.main.head).from,r=e.startState.doc.lineAt(e.startState.selection.main.head).from;t!=e.changes.mapPos(r,-1)&&(n=Ne.empty)}n=n.map(e.changes);for(let t of e.effects)t.is(zr)&&(n=n.update({add:[Bh.range(t.value,t.value+1)]}));return n}});function U3(){return[W3,Xw]}const gd="()[]{}<>";function Qw(n){for(let e=0;e<gd.length;e+=2)if(gd.charCodeAt(e)==n)return gd.charAt(e+1);return dh(n<128?n:n+1)}function eS(n,e){return n.languageDataAt("closeBrackets",e)[0]||eo}const z3=typeof navigator=="object"&&/Android\b/.test(navigator.userAgent),W3=G.inputHandler.of((n,e,t,r)=>{if((z3?n.composing:n.compositionStarted)||n.state.readOnly)return!1;let i=n.state.selection.main;if(r.length>2||r.length==2&&dn(St(r,0))==1||e!=i.from||t!=i.to)return!1;let s=K3(n.state,r);return s?(n.dispatch(s),!0):!1}),q3=({state:n,dispatch:e})=>{if(n.readOnly)return!1;let r=eS(n,n.selection.main.head).brackets||eo.brackets,i=null,s=n.changeByRange(o=>{if(o.empty){let a=Z3(n.doc,o.head);for(let l of r)if(l==a&&wu(n.doc,o.head)==Qw(St(l,0)))return{changes:{from:o.head-l.length,to:o.head+l.length},range:B.cursor(o.head-l.length)}}return{range:i=o}});return i||e(n.update(s,{scrollIntoView:!0,userEvent:"delete.backward"})),!i},G3=[{key:"Backspace",run:q3}];function K3(n,e){let t=eS(n,n.selection.main.head),r=t.brackets||eo.brackets;for(let i of r){let s=Qw(St(i,0));if(e==i)return s==i?X3(n,i,r.indexOf(i+i+i)>-1,t):Y3(n,i,s,t.before||eo.before);if(e==s&&tS(n,n.selection.main.from))return J3(n,i,s)}return null}function tS(n,e){let t=!1;return n.field(Xw).between(0,n.doc.length,r=>{r==e&&(t=!0)}),t}function wu(n,e){let t=n.sliceString(e,e+2);return t.slice(0,dn(St(t,0)))}function Z3(n,e){let t=n.sliceString(e-2,e);return dn(St(t,0))==t.length?t:t.slice(1)}function Y3(n,e,t,r){let i=null,s=n.changeByRange(o=>{if(!o.empty)return{changes:[{insert:e,from:o.from},{insert:t,from:o.to}],effects:zr.of(o.to+e.length),range:B.range(o.anchor+e.length,o.head+e.length)};let a=wu(n.doc,o.head);return!a||/\s/.test(a)||r.indexOf(a)>-1?{changes:{insert:e+t,from:o.head},effects:zr.of(o.head+e.length),range:B.cursor(o.head+e.length)}:{range:i=o}});return i?null:n.update(s,{scrollIntoView:!0,userEvent:"input.type"})}function J3(n,e,t){let r=null,i=n.changeByRange(s=>s.empty&&wu(n.doc,s.head)==t?{changes:{from:s.head,to:s.head+t.length,insert:t},range:B.cursor(s.head+t.length)}:r={range:s});return r?null:n.update(i,{scrollIntoView:!0,userEvent:"input.type"})}function X3(n,e,t,r){let i=r.stringPrefixes||eo.stringPrefixes,s=null,o=n.changeByRange(a=>{if(!a.empty)return{changes:[{insert:e,from:a.from},{insert:e,from:a.to}],effects:zr.of(a.to+e.length),range:B.range(a.anchor+e.length,a.head+e.length)};let l=a.head,c=wu(n.doc,l),u;if(c==e){if(Ig(n,l))return{changes:{insert:e+e,from:l},effects:zr.of(l+e.length),range:B.cursor(l+e.length)};if(tS(n,l)){let h=t&&n.sliceDoc(l,l+e.length*3)==e+e+e?e+e+e:e;return{changes:{from:l,to:l+h.length,insert:h},range:B.cursor(l+h.length)}}}else{if(t&&n.sliceDoc(l-2*e.length,l)==e+e&&(u=Eg(n,l-2*e.length,i))>-1&&Ig(n,u))return{changes:{insert:e+e+e+e,from:l},effects:zr.of(l+e.length),range:B.cursor(l+e.length)};if(n.charCategorizer(l)(c)!=ze.Word&&Eg(n,l,i)>-1&&!Q3(n,l,e,i))return{changes:{insert:e+e,from:l},effects:zr.of(l+e.length),range:B.cursor(l+e.length)}}return{range:s=a}});return s?null:n.update(o,{scrollIntoView:!0,userEvent:"input.type"})}function Ig(n,e){let t=At(n).resolveInner(e+1);return t.parent&&t.from==e}function Q3(n,e,t,r){let i=At(n).resolveInner(e,-1),s=r.reduce((o,a)=>Math.max(o,a.length),0);for(let o=0;o<5;o++){let a=n.sliceDoc(i.from,Math.min(i.to,i.from+t.length+s)),l=a.indexOf(t);if(!l||l>-1&&r.indexOf(a.slice(0,l))>-1){let u=i.firstChild;for(;u&&u.from==i.from&&u.to-u.from>t.length+l;){if(n.sliceDoc(u.to-t.length,u.to)==t)return!1;u=u.firstChild}return!0}let c=i.to==e&&i.parent;if(!c)break;i=c}return!1}function Eg(n,e,t){let r=n.charCategorizer(e);if(r(n.sliceDoc(e-1,e))!=ze.Word)return e;for(let i of t){let s=e-i.length;if(n.sliceDoc(s,e)==i&&r(n.sliceDoc(s-1,s))!=ze.Word)return s}return-1}function eL(n={}){return[rn,Yt.of(n),O3,tL,Yw]}const nS=[{key:"Ctrl-Space",run:M3},{key:"Escape",run:I3},{key:"ArrowDown",run:Xo(!0)},{key:"ArrowUp",run:Xo(!1)},{key:"PageDown",run:Xo(!0,"page")},{key:"PageUp",run:Xo(!1,"page")},{key:"Enter",run:A3}],tL=ti.highest(ho.computeN([Yt],n=>n.facet(Yt).defaultKeymap?[nS]:[]));class nL{constructor(e,t,r){this.from=e,this.to=t,this.diagnostic=r}}class Hr{constructor(e,t,r){this.diagnostics=e,this.panel=t,this.selected=r}static init(e,t,r){let i=e,s=r.facet(sS).markerFilter;s&&(i=s(i));let o=le.set(i.map(a=>a.from==a.to||a.from==a.to-1&&r.doc.lineAt(a.from).to==a.from?le.widget({widget:new dL(a),diagnostic:a}).range(a.from):le.mark({attributes:{class:"cm-lintRange cm-lintRange-"+a.severity+(a.markClass?" "+a.markClass:"")},diagnostic:a}).range(a.from,a.to)),!0);return new Hr(o,t,qi(o))}}function qi(n,e=null,t=0){let r=null;return n.between(t,1e9,(i,s,{spec:o})=>{if(!(e&&o.diagnostic!=e))return r=new nL(i,s,o.diagnostic),!1}),r}function rL(n,e){let t=n.startState.doc.lineAt(e.pos);return!!(n.effects.some(r=>r.is(rS))||n.changes.touchesRange(t.from,t.to))}function iL(n,e){return n.field(on,!1)?e:e.concat(pe.appendConfig.of(pL))}const rS=pe.define(),$h=pe.define(),iS=pe.define(),on=bt.define({create(){return new Hr(le.none,null,null)},update(n,e){if(e.docChanged){let t=n.diagnostics.map(e.changes),r=null;if(n.selected){let i=e.changes.mapPos(n.selected.from,1);r=qi(t,n.selected.diagnostic,i)||qi(t,null,i)}n=new Hr(t,n.panel,r)}for(let t of e.effects)t.is(rS)?n=Hr.init(t.value,n.panel,e.state):t.is($h)?n=new Hr(n.diagnostics,t.value?Su.open:null,n.selected):t.is(iS)&&(n=new Hr(n.diagnostics,n.panel,t.value));return n},provide:n=>[Gs.from(n,e=>e.panel),G.decorations.from(n,e=>e.diagnostics)]}),sL=le.mark({class:"cm-lintRange cm-lintRange-active"});function oL(n,e,t){let{diagnostics:r}=n.state.field(on),i=[],s=2e8,o=0;r.between(e-(t<0?1:0),e+(t>0?1:0),(l,c,{spec:u})=>{e>=l&&e<=c&&(l==c||(e>l||t>0)&&(e<c||t<0))&&(i.push(u.diagnostic),s=Math.min(l,s),o=Math.max(c,o))});let a=n.state.facet(sS).tooltipFilter;return a&&(i=a(i)),i.length?{pos:s,end:o,above:n.state.doc.lineAt(s).to<o,create(){return{dom:aL(n,i)}}}:null}function aL(n,e){return $e("ul",{class:"cm-tooltip-lint"},e.map(t=>aS(n,t,!1)))}const lL=n=>{let e=n.state.field(on,!1);(!e||!e.panel)&&n.dispatch({effects:iL(n.state,[$h.of(!0)])});let t=qs(n,Su.open);return t&&t.dom.querySelector(".cm-panel-lint ul").focus(),!0},Dg=n=>{let e=n.state.field(on,!1);return!e||!e.panel?!1:(n.dispatch({effects:$h.of(!1)}),!0)},cL=n=>{let e=n.state.field(on,!1);if(!e)return!1;let t=n.state.selection.main,r=e.diagnostics.iter(t.to+1);return!r.value&&(r=e.diagnostics.iter(0),!r.value||r.from==t.from&&r.to==t.to)?!1:(n.dispatch({selection:{anchor:r.from,head:r.to},scrollIntoView:!0}),!0)},uL=[{key:"Mod-Shift-m",run:lL,preventDefault:!0},{key:"F8",run:cL}],sS=J.define({combine(n){return Object.assign({sources:n.map(e=>e.source)},Zn(n.map(e=>e.config),{delay:750,markerFilter:null,tooltipFilter:null,needsRefresh:null},{needsRefresh:(e,t)=>e?t?r=>e(r)||t(r):e:t}))}});function oS(n){let e=[];if(n)e:for(let{name:t}of n){for(let r=0;r<t.length;r++){let i=t[r];if(/[a-zA-Z]/.test(i)&&!e.some(s=>s.toLowerCase()==i.toLowerCase())){e.push(i);continue e}}e.push("")}return e}function aS(n,e,t){var r;let i=t?oS(e.actions):[];return $e("li",{class:"cm-diagnostic cm-diagnostic-"+e.severity},$e("span",{class:"cm-diagnosticText"},e.renderMessage?e.renderMessage():e.message),(r=e.actions)===null||r===void 0?void 0:r.map((s,o)=>{let a=!1,l=h=>{if(h.preventDefault(),a)return;a=!0;let p=qi(n.state.field(on).diagnostics,e);p&&s.apply(n,p.from,p.to)},{name:c}=s,u=i[o]?c.indexOf(i[o]):-1,d=u<0?c:[c.slice(0,u),$e("u",c.slice(u,u+1)),c.slice(u+1)];return $e("button",{type:"button",class:"cm-diagnosticAction",onclick:l,onmousedown:l,"aria-label":` Action: ${c}${u<0?"":` (access key "${i[o]})"`}.`},d)}),e.source&&$e("div",{class:"cm-diagnosticSource"},e.source))}class dL extends sr{constructor(e){super(),this.diagnostic=e}eq(e){return e.diagnostic==this.diagnostic}toDOM(){return $e("span",{class:"cm-lintPoint cm-lintPoint-"+this.diagnostic.severity})}}class Rg{constructor(e,t){this.diagnostic=t,this.id="item_"+Math.floor(Math.random()*4294967295).toString(16),this.dom=aS(e,t,!0),this.dom.id=this.id,this.dom.setAttribute("role","option")}}class Su{constructor(e){this.view=e,this.items=[];let t=i=>{if(i.keyCode==27)Dg(this.view),this.view.focus();else if(i.keyCode==38||i.keyCode==33)this.moveSelection((this.selectedIndex-1+this.items.length)%this.items.length);else if(i.keyCode==40||i.keyCode==34)this.moveSelection((this.selectedIndex+1)%this.items.length);else if(i.keyCode==36)this.moveSelection(0);else if(i.keyCode==35)this.moveSelection(this.items.length-1);else if(i.keyCode==13)this.view.focus();else if(i.keyCode>=65&&i.keyCode<=90&&this.selectedIndex>=0){let{diagnostic:s}=this.items[this.selectedIndex],o=oS(s.actions);for(let a=0;a<o.length;a++)if(o[a].toUpperCase().charCodeAt(0)==i.keyCode){let l=qi(this.view.state.field(on).diagnostics,s);l&&s.actions[a].apply(e,l.from,l.to)}}else return;i.preventDefault()},r=i=>{for(let s=0;s<this.items.length;s++)this.items[s].dom.contains(i.target)&&this.moveSelection(s)};this.list=$e("ul",{tabIndex:0,role:"listbox","aria-label":this.view.state.phrase("Diagnostics"),onkeydown:t,onclick:r}),this.dom=$e("div",{class:"cm-panel-lint"},this.list,$e("button",{type:"button",name:"close","aria-label":this.view.state.phrase("close"),onclick:()=>Dg(this.view)},"×")),this.update()}get selectedIndex(){let e=this.view.state.field(on).selected;if(!e)return-1;for(let t=0;t<this.items.length;t++)if(this.items[t].diagnostic==e.diagnostic)return t;return-1}update(){let{diagnostics:e,selected:t}=this.view.state.field(on),r=0,i=!1,s=null;for(e.between(0,this.view.state.doc.length,(o,a,{spec:l})=>{let c=-1,u;for(let d=r;d<this.items.length;d++)if(this.items[d].diagnostic==l.diagnostic){c=d;break}c<0?(u=new Rg(this.view,l.diagnostic),this.items.splice(r,0,u),i=!0):(u=this.items[c],c>r&&(this.items.splice(r,c-r),i=!0)),t&&u.diagnostic==t.diagnostic?u.dom.hasAttribute("aria-selected")||(u.dom.setAttribute("aria-selected","true"),s=u):u.dom.hasAttribute("aria-selected")&&u.dom.removeAttribute("aria-selected"),r++});r<this.items.length&&!(this.items.length==1&&this.items[0].diagnostic.from<0);)i=!0,this.items.pop();this.items.length==0&&(this.items.push(new Rg(this.view,{from:-1,to:-1,severity:"info",message:this.view.state.phrase("No diagnostics")})),i=!0),s?(this.list.setAttribute("aria-activedescendant",s.id),this.view.requestMeasure({key:this,read:()=>({sel:s.dom.getBoundingClientRect(),panel:this.list.getBoundingClientRect()}),write:({sel:o,panel:a})=>{o.top<a.top?this.list.scrollTop-=a.top-o.top:o.bottom>a.bottom&&(this.list.scrollTop+=o.bottom-a.bottom)}})):this.selectedIndex<0&&this.list.removeAttribute("aria-activedescendant"),i&&this.sync()}sync(){let e=this.list.firstChild;function t(){let r=e;e=r.nextSibling,r.remove()}for(let r of this.items)if(r.dom.parentNode==this.list){for(;e!=r.dom;)t();e=r.dom.nextSibling}else this.list.insertBefore(r.dom,e);for(;e;)t()}moveSelection(e){if(this.selectedIndex<0)return;let t=this.view.state.field(on),r=qi(t.diagnostics,this.items[e].diagnostic);r&&this.view.dispatch({selection:{anchor:r.from,head:r.to},scrollIntoView:!0,effects:iS.of(r)})}static open(e){return new Su(e)}}function fL(n,e='viewBox="0 0 40 40"'){return`url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" ${e}>${encodeURIComponent(n)}</svg>')`}function Qo(n){return fL(`<path d="m0 2.5 l2 -1.5 l1 0 l2 1.5 l1 0" stroke="${n}" fill="none" stroke-width=".7"/>`,'width="6" height="3"')}const hL=G.baseTheme({".cm-diagnostic":{padding:"3px 6px 3px 8px",marginLeft:"-1px",display:"block",whiteSpace:"pre-wrap"},".cm-diagnostic-error":{borderLeft:"5px solid #d11"},".cm-diagnostic-warning":{borderLeft:"5px solid orange"},".cm-diagnostic-info":{borderLeft:"5px solid #999"},".cm-diagnostic-hint":{borderLeft:"5px solid #66d"},".cm-diagnosticAction":{font:"inherit",border:"none",padding:"2px 4px",backgroundColor:"#444",color:"white",borderRadius:"3px",marginLeft:"8px",cursor:"pointer"},".cm-diagnosticSource":{fontSize:"70%",opacity:.7},".cm-lintRange":{backgroundPosition:"left bottom",backgroundRepeat:"repeat-x",paddingBottom:"0.7px"},".cm-lintRange-error":{backgroundImage:Qo("#d11")},".cm-lintRange-warning":{backgroundImage:Qo("orange")},".cm-lintRange-info":{backgroundImage:Qo("#999")},".cm-lintRange-hint":{backgroundImage:Qo("#66d")},".cm-lintRange-active":{backgroundColor:"#ffdd9980"},".cm-tooltip-lint":{padding:0,margin:0},".cm-lintPoint":{position:"relative","&:after":{content:'""',position:"absolute",bottom:0,left:"-2px",borderLeft:"3px solid transparent",borderRight:"3px solid transparent",borderBottom:"4px solid #d11"}},".cm-lintPoint-warning":{"&:after":{borderBottomColor:"orange"}},".cm-lintPoint-info":{"&:after":{borderBottomColor:"#999"}},".cm-lintPoint-hint":{"&:after":{borderBottomColor:"#66d"}},".cm-panel.cm-panel-lint":{position:"relative","& ul":{maxHeight:"100px",overflowY:"auto","& [aria-selected]":{backgroundColor:"#ddd","& u":{textDecoration:"underline"}},"&:focus [aria-selected]":{background_fallback:"#bdf",backgroundColor:"Highlight",color_fallback:"white",color:"HighlightText"},"& u":{textDecoration:"none"},padding:0,margin:0},"& [name=close]":{position:"absolute",top:"0",right:"2px",background:"inherit",border:"none",font:"inherit",padding:0,margin:0}}}),pL=[on,G.decorations.compute([on],n=>{let{selected:e,panel:t}=n.field(on);return!e||!t||e.from==e.to?le.none:le.set([sL.range(e.from,e.to)])}),XT(oL,{hideOn:rL}),hL];var Og=function(e){e===void 0&&(e={});var{crosshairCursor:t=!1}=e,r=[];e.closeBracketsKeymap!==!1&&(r=r.concat(G3)),e.defaultKeymap!==!1&&(r=r.concat(P9)),e.searchKeymap!==!1&&(r=r.concat(o3)),e.historyKeymap!==!1&&(r=r.concat(WP)),e.foldKeymap!==!1&&(r=r.concat(iP)),e.completionKeymap!==!1&&(r=r.concat(nS)),e.lintKeymap!==!1&&(r=r.concat(uL));var i=[];return e.lineNumbers!==!1&&i.push(aN()),e.highlightActiveLineGutter!==!1&&i.push(uN()),e.highlightSpecialChars!==!1&&i.push(ET()),e.history!==!1&&i.push(_P()),e.foldGutter!==!1&&i.push(lP()),e.drawSelection!==!1&&i.push(vT()),e.dropCursor!==!1&&i.push(ST()),e.allowMultipleSelections!==!1&&i.push(ye.allowMultipleSelections.of(!0)),e.indentOnInput!==!1&&i.push(KN()),e.syntaxHighlighting!==!1&&i.push(Jy(fP,{fallback:!0})),e.bracketMatching!==!1&&i.push(xP()),e.closeBrackets!==!1&&i.push(U3()),e.autocompletion!==!1&&i.push(eL()),e.rectangularSelection!==!1&&i.push(VT()),t!==!1&&i.push(WT()),e.highlightActiveLine!==!1&&i.push(PT()),e.highlightSelectionMatches!==!1&&i.push(H9()),e.tabSize&&typeof e.tabSize=="number"&&i.push(mo.of(" ".repeat(e.tabSize))),i.concat([ho.of(r.flat())]).filter(Boolean)};const mL="#e5c07b",Tg="#e06c75",gL="#56b6c2",vL="#ffffff",ec="#abb2bf",Bf="#7d8799",bL="#61afef",xL="#98c379",Ng="#d19a66",yL="#c678dd",wL="#21252b",Pg="#2c313a",Lg="#282c34",vd="#353a42",SL="#3E4451",_g="#528bff",CL=G.theme({"&":{color:ec,backgroundColor:Lg},".cm-content":{caretColor:_g},".cm-cursor, .cm-dropCursor":{borderLeftColor:_g},"&.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground, .cm-selectionBackground, .cm-content ::selection":{backgroundColor:SL},".cm-panels":{backgroundColor:wL,color:ec},".cm-panels.cm-panels-top":{borderBottom:"2px solid black"},".cm-panels.cm-panels-bottom":{borderTop:"2px solid black"},".cm-searchMatch":{backgroundColor:"#72a1ff59",outline:"1px solid #457dff"},".cm-searchMatch.cm-searchMatch-selected":{backgroundColor:"#6199ff2f"},".cm-activeLine":{backgroundColor:"#6699ff0b"},".cm-selectionMatch":{backgroundColor:"#aafe661a"},"&.cm-focused .cm-matchingBracket, &.cm-focused .cm-nonmatchingBracket":{backgroundColor:"#bad0f847"},".cm-gutters":{backgroundColor:Lg,color:Bf,border:"none"},".cm-activeLineGutter":{backgroundColor:Pg},".cm-foldPlaceholder":{backgroundColor:"transparent",border:"none",color:"#ddd"},".cm-tooltip":{border:"none",backgroundColor:vd},".cm-tooltip .cm-tooltip-arrow:before":{borderTopColor:"transparent",borderBottomColor:"transparent"},".cm-tooltip .cm-tooltip-arrow:after":{borderTopColor:vd,borderBottomColor:vd},".cm-tooltip-autocomplete":{"& > ul > li[aria-selected]":{backgroundColor:Pg,color:ec}}},{dark:!0}),kL=vo.define([{tag:j.keyword,color:yL},{tag:[j.name,j.deleted,j.character,j.propertyName,j.macroName],color:Tg},{tag:[j.function(j.variableName),j.labelName],color:bL},{tag:[j.color,j.constant(j.name),j.standard(j.name)],color:Ng},{tag:[j.definition(j.name),j.separator],color:ec},{tag:[j.typeName,j.className,j.number,j.changed,j.annotation,j.modifier,j.self,j.namespace],color:mL},{tag:[j.operator,j.operatorKeyword,j.url,j.escape,j.regexp,j.link,j.special(j.string)],color:gL},{tag:[j.meta,j.comment],color:Bf},{tag:j.strong,fontWeight:"bold"},{tag:j.emphasis,fontStyle:"italic"},{tag:j.strikethrough,textDecoration:"line-through"},{tag:j.link,color:Bf,textDecoration:"underline"},{tag:j.heading,fontWeight:"bold",color:Tg},{tag:[j.atom,j.bool,j.special(j.variableName)],color:Ng},{tag:[j.processingInstruction,j.string,j.inserted],color:xL},{tag:j.invalid,color:vL}]),AL=[CL,Jy(kL)];var ML=G.theme({"&":{backgroundColor:"#fff"}},{dark:!1}),IL=function(e){e===void 0&&(e={});var{indentWithTab:t=!0,editable:r=!0,readOnly:i=!1,theme:s="light",placeholder:o="",basicSetup:a=!0}=e,l=[];switch(t&&l.unshift(ho.of([L9])),a&&(typeof a=="boolean"?l.unshift(Og()):l.unshift(Og(a))),o&&l.unshift(BT(o)),s){case"light":l.push(ML);break;case"dark":l.push(AL);break;case"none":break;default:l.push(s);break}return r===!1&&l.push(G.editable.of(!1)),i&&l.push(ye.readOnly.of(!0)),[...l]},EL=n=>({line:n.state.doc.lineAt(n.state.selection.main.from),lineCount:n.state.doc.lines,lineBreak:n.state.lineBreak,length:n.state.doc.length,readOnly:n.state.readOnly,tabSize:n.state.tabSize,selection:n.state.selection,selectionAsSingle:n.state.selection.asSingle().main,ranges:n.state.selection.ranges,selectionCode:n.state.sliceDoc(n.state.selection.main.from,n.state.selection.main.to),selections:n.state.selection.ranges.map(e=>n.state.sliceDoc(e.from,e.to)),selectedText:n.state.selection.ranges.some(e=>!e.empty)});class DL{constructor(e,t){this.timeLeftMS=void 0,this.timeoutMS=void 0,this.isCancelled=!1,this.isTimeExhausted=!1,this.callbacks=[],this.timeLeftMS=t,this.timeoutMS=t,this.callbacks.push(e)}tick(){if(!this.isCancelled&&!this.isTimeExhausted&&(this.timeLeftMS--,this.timeLeftMS<=0)){this.isTimeExhausted=!0;var e=this.callbacks.slice();this.callbacks.length=0,e.forEach(t=>{try{t()}catch(r){console.error("TimeoutLatch callback error:",r)}})}}cancel(){this.isCancelled=!0,this.callbacks.length=0}reset(){this.timeLeftMS=this.timeoutMS,this.isCancelled=!1,this.isTimeExhausted=!1}get isDone(){return this.isCancelled||this.isTimeExhausted}}class jg{constructor(){this.interval=null,this.latches=new Set}add(e){this.latches.add(e),this.start()}remove(e){this.latches.delete(e),this.latches.size===0&&this.stop()}start(){this.interval===null&&(this.interval=setInterval(()=>{this.latches.forEach(e=>{e.tick(),e.isDone&&this.remove(e)})},1))}stop(){this.interval!==null&&(clearInterval(this.interval),this.interval=null)}}var bd=null,RL=()=>typeof window>"u"?new jg:(bd||(bd=new jg),bd),Bg=Kn.define(),OL=200,TL=[];function NL(n){var{value:e,selection:t,onChange:r,onStatistics:i,onCreateEditor:s,onUpdate:o,extensions:a=TL,autoFocus:l,theme:c="light",height:u=null,minHeight:d=null,maxHeight:h=null,width:p=null,minWidth:g=null,maxWidth:m=null,placeholder:v="",editable:b=!0,readOnly:y=!1,indentWithTab:S=!0,basicSetup:w=!0,root:C,initialState:k}=n,[A,I]=x.useState(),[D,R]=x.useState(),[T,N]=x.useState(),P=x.useState(()=>({current:null}))[0],L=x.useState(()=>({current:null}))[0],$=G.theme({"&":{height:u,minHeight:d,maxHeight:h,width:p,minWidth:g,maxWidth:m},"& .cm-scroller":{height:"100% !important"}}),q=G.updateListener.of(ee=>{if(ee.docChanged&&typeof r=="function"&&!ee.transactions.some(K=>K.annotation(Bg))){P.current?P.current.reset():(P.current=new DL(()=>{if(L.current){var K=L.current;L.current=null,K()}P.current=null},OL),RL().add(P.current));var de=ee.state.doc,ge=de.toString();r(ge,ee)}i&&i(EL(ee))}),Z=IL({theme:c,editable:b,readOnly:y,placeholder:v,indentWithTab:S,basicSetup:w}),ae=[q,$,...Z];return o&&typeof o=="function"&&ae.push(G.updateListener.of(o)),ae=ae.concat(a),x.useLayoutEffect(()=>{if(A&&!T){var ee={doc:e,selection:t,extensions:ae},de=k?ye.fromJSON(k.json,ee,k.fields):ye.create(ee);if(N(de),!D){var ge=new G({state:de,parent:A,root:C});R(ge),s&&s(ge,de)}}return()=>{D&&(N(void 0),R(void 0))}},[A,T]),x.useEffect(()=>{n.container&&I(n.container)},[n.container]),x.useEffect(()=>()=>{D&&(D.destroy(),R(void 0)),P.current&&(P.current.cancel(),P.current=null)},[D]),x.useEffect(()=>{l&&D&&D.focus()},[l,D]),x.useEffect(()=>{D&&D.dispatch({effects:pe.reconfigure.of(ae)})},[c,a,u,d,h,p,g,m,v,b,y,S,w,r,o]),x.useEffect(()=>{if(e!==void 0){var ee=D?D.state.doc.toString():"";if(D&&e!==ee){var de=P.current&&!P.current.isDone,ge=()=>{D&&e!==D.state.doc.toString()&&D.dispatch({changes:{from:0,to:D.state.doc.toString().length,insert:e||""},annotations:[Bg.of(!0)]})};de?L.current=ge:ge()}}},[e,D]),{state:T,setState:N,view:D,setView:R,container:A,setContainer:I}}var PL=["className","value","selection","extensions","onChange","onStatistics","onCreateEditor","onUpdate","autoFocus","theme","height","minHeight","maxHeight","width","minWidth","maxWidth","basicSetup","placeholder","indentWithTab","editable","readOnly","root","initialState"],LL=x.forwardRef((n,e)=>{var{className:t,value:r="",selection:i,extensions:s=[],onChange:o,onStatistics:a,onCreateEditor:l,onUpdate:c,autoFocus:u,theme:d="light",height:h,minHeight:p,maxHeight:g,width:m,minWidth:v,maxWidth:b,basicSetup:y,placeholder:S,indentWithTab:w,editable:C,readOnly:k,root:A,initialState:I}=n,D=Lb(n,PL),R=x.useRef(null),{state:T,view:N,container:P,setContainer:L}=NL({root:A,value:r,autoFocus:u,theme:d,height:h,minHeight:p,maxHeight:g,width:m,minWidth:v,maxWidth:b,basicSetup:y,placeholder:S,indentWithTab:w,editable:C,readOnly:k,selection:i,onChange:o,onStatistics:a,onCreateEditor:l,onUpdate:c,extensions:s,initialState:I});x.useImperativeHandle(e,()=>({editor:R.current,state:T,view:N}),[R,P,T,N]);var $=x.useCallback(Z=>{R.current=Z,L(Z)},[L]);if(typeof r!="string")throw new Error("value must be typeof string but got "+typeof r);var q=typeof d=="string"?"cm-theme-"+d:"cm-theme";return f.jsx("div",se({ref:$,className:""+q+(t?" "+t:"")},D))});LL.displayName="CodeMirror";const _L=()=>{const{isDirty:n}=qc(),e=()=>{window.location.hash="/"};return f.jsx(ne,{className:"text-grey-700 hover:!text-grey-900","data-testid":"exit-settings",icon:"close",id:"done-button",label:"",link:!0,title:"Close (ESC)",onClick:()=>js(n,e)})},jL="/ghost/assets/logo-loader-88VPEpXE.mp4",BL="/ghost/assets/logo-loader-dark-CuSPz-zc.mp4",lS=x.createContext(void 0),$L=({children:n})=>{const e=R2(),t=O2(),r=T2(),i=pb(),[s,o]=x.useState(!1);x.useEffect(()=>{o(document.documentElement.classList.contains("dark"))},[]);const a=[e,t,r,i],l=a.map(c=>c.error).find(Boolean);if(l)throw l;return a.some(c=>c.isLoading)?f.jsx("div",{className:"gh-loading-orb-container",style:{width:"100vw",height:"100vh",display:"flex",alignItems:"center",justifyContent:"center",paddingBottom:"8vh"},children:f.jsx("video",{autoPlay:!0,className:"gh-loading-orb",height:"100",preload:"metadata",style:{width:"100px",height:"100px"},width:"100",loop:!0,muted:!0,playsInline:!0,children:f.jsx("source",{src:s?BL:jL,type:"video/mp4"})})}):f.jsx(lS.Provider,{value:{settings:e.data.settings,siteData:t.data.site,config:r.data.config,currentUser:i.data},children:n})},Pe=()=>x.useContext(lS),Ot=({savingDelay:n,onValidate:e}={})=>{const t=x.useRef(null),{siteData:r,settings:i}=Pe(),{mutateAsync:s}=Xr(),o=vt(),[a,l]=x.useState(!1),{formState:c,saveState:u,handleSave:d,updateForm:h,setFormState:p,reset:g,validate:m,errors:v,clearError:b,okProps:y}=uh({initialState:i||[],savingDelay:n,onSave:async()=>{await s?.(w())},onSaveError:o,onValidate:e}),{setGlobalDirtyState:S}=qc();x.useEffect(()=>{S(c.some(I=>I.dirty))},[c,S]),x.useEffect(()=>{a&&t.current&&t.current.focus()},[a]),x.useEffect(()=>{(!a||u==="saving")&&p(()=>i)},[i]);const w=()=>c?.filter(I=>I.dirty)?.map(I=>({key:I.key,value:I.value}));return{localSettings:c,isEditing:a,saveState:u,focusRef:t,siteData:r,handleSave:async()=>{const I=await d();return I&&l(!1),I},handleCancel:()=>{g(),l(!1)},updateSetting:(I,D)=>{h(R=>R.some(T=>T.key===I)?R.map(T=>T.key===I?{...T,value:D,dirty:!0}:T):[...R,{key:I,value:D,dirty:!0}])},handleEditingChange:I=>{l(I)},validate:m,errors:v,clearError:b,okProps:y}},FL=(n,e)=>{const[t,r]=x.useState("Save"),[i,s]=x.useState(!1);return{savingTitle:t,isSaving:i,onSaveClick:async()=>{s(!0),r("Saving"),await n({fakeWhenUnchanged:e}),setTimeout(()=>{r("Saved"),setTimeout(()=>{r("Save"),s(!1)},1e3)},1e3)}}},HL=({afterClose:n})=>{const{localSettings:e,handleSave:t,updateSetting:r}=Ot(),i=ir(),[s,o]=Te(e,["codeinjection_head","codeinjection_foot"]),[a,l]=x.useState("header"),c=x.useRef(null),u=x.useRef(null),d=x.useMemo(()=>no(()=>import("./index-DCw6JaEl.js"),__vite__mapDeps([7,1,2,3,4,5,6])).then(y=>y.html()),[]),h={extensions:[d],hint:"Code here will be injected into the {{ghost_head}} tag on every page of the site",value:s||"",onChange:y=>r("codeinjection_head",y)},p={extensions:[d],hint:"Code here will be injected into the {{ghost_foot}} tag on every page of the site",value:o||"",onChange:y=>r("codeinjection_foot",y)},g=[{id:"header",title:"Site header",contents:f.jsx(Qh,{height:"full",...h,ref:c,className:"mt-2","data-testid":"header-code",autoFocus:!0}),tabWrapperClassName:"flex-auto",containerClassName:"h-full"},{id:"footer",title:"Site footer",contents:f.jsx(Qh,{height:"full",...p,ref:u,className:"mt-2","data-testid":"footer-code"}),tabWrapperClassName:"flex-auto",containerClassName:"h-full"}],{savingTitle:m,isSaving:v,onSaveClick:b}=FL(t,!0);return x.useEffect(()=>{const y=S=>{(S.metaKey||S.ctrlKey)&&S.key==="s"&&(S.preventDefault(),b())};return window.addEventListener("keydown",y),()=>{window.removeEventListener("keydown",y)}}),f.jsx(Or,{afterClose:n,backDropClick:!1,cancelLabel:"Close",footer:f.jsx(f.Fragment,{}),height:"full",size:"full",testId:"modal-code-injection",children:f.jsxs("div",{className:"flex h-full flex-col",children:[f.jsxs("div",{className:"mb-4 flex items-center justify-between",children:[f.jsx(ft,{level:2,children:"Code injection"}),f.jsx(_s,{buttons:[{label:"Close",color:"outline",onClick:()=>{i.remove(),n?.()}},{disabled:v,label:m,color:m==="Saved"?"green":"black",onClick:b}]})]}),f.jsx(Gn,{containerClassName:"flex-auto flex flex-col mb-16",selectedTab:a,tabs:g,onTabChange:l})]})})},VL=Ye.create(HL),UL=(n,e)=>`${n}-${e}`,zL=()=>{const[n,e]=x.useState(""),[t,r]=x.useState(!1),i=x.useRef(new Map),[s,o]=x.useState(new Set),a=p=>p.length?p.some(g=>g.toLowerCase().includes(n.toLowerCase())):!0,l=x.useCallback((p,g)=>{i.current.set(p,g),(!n||g.some(v=>v.toLowerCase().includes(n.toLowerCase())))&&o(v=>new Set(v).add(p))},[n]),c=x.useCallback(p=>{i.current.delete(p),o(g=>{const m=new Set(g);return m.delete(p),m})},[]);x.useEffect(()=>{const p=new Set;i.current.forEach((g,m)=>{(!n||g.some(b=>b.toLowerCase().includes(n.toLowerCase())))&&p.add(m)}),o(p)},[n]);const u=x.useCallback(p=>s.size===1&&s.has(p),[s]),d=x.useCallback(()=>s,[s]),h=p=>{if(!n)return p;if(typeof p=="string"){const g=n.split(/\s+/).map(b=>b.toLowerCase()),m=g.map(b=>b.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")).join("|");return p.split(new RegExp(`(${m})`,"gi")).map(b=>g.includes(b.toLowerCase())?f.jsx("span",{className:"bg-yellow-500/40",children:b}):b)}else return Array.isArray(p)?p.map(g=>h(g)):p&&typeof p=="object"&&p?Y.Children.map(p,g=>g&&typeof g=="object"&&"props"in g?h(g.props.children):g):p};return{filter:n,setFilter:e,checkVisible:a,highlightKeywords:h,noResult:t,setNoResult:r,registerComponent:l,unregisterComponent:c,getVisibleComponents:d,isOnlyVisibleComponent:u}},cS=x.createContext({route:"",updateRoute:()=>{},loadingModal:!1,eventTarget:new EventTarget});function WL(n,e){if(!e)return null;const t=new RegExp(`/${n}/(.*)`),r=e?.match(t);return r?r[1]:null}const qL=(n,e,t,r)=>{let i=window.location.hash;i=i.substring(1);const s=`${window.location.protocol}//${window.location.hostname}`,o=new URL(i,s),a=WL(n,o.pathname);if(!r||!t)return{pathName:a||""};const l=o.searchParams;if(a&&r&&t){const[,c]=Object.entries(r).find(([h])=>xd(e||"",h))||[],[u,d]=Object.entries(r).find(([h])=>xd(a,h))||[];return{pathName:a,changingModal:d&&d!==c,modal:u&&d?t().then(({default:h})=>{Ye.show(h[d],{pathName:a,params:xd(a,u),searchParams:l})}):void 0}}return{pathName:""}},xd=(n,e)=>{const t=new RegExp("^"+e.replace(/:(\w+)/g,"(?<$1>[^/]+)")+"/?$"),r=n.match(t);if(r)return r.groups||{}},GL=({basePath:n,modals:e,children:t})=>{const{externalNavigate:r}=N2(),[i,s]=x.useState(void 0),[o,a]=x.useState(!1),[l]=x.useState(new EventTarget),c=x.useCallback(u=>{const d=typeof u=="string"?{route:u}:u;if(d.isExternal){r(d);return}const h=d.route.replace(/^\//,"");h===i||(h?window.location.hash=`/${n}/${h}`:window.location.hash=`/${n}`),l.dispatchEvent(new CustomEvent("routeChange",{detail:{newPath:h,oldPath:i}}))},[n,l,r,i]);return x.useEffect(()=>{setTimeout(()=>{e?.load()},1e3)},[]),x.useEffect(()=>{const u=()=>{s(d=>{const{pathName:h,modal:p,changingModal:g}=qL(n,d,e?.load,e?.paths);return p&&g&&(a(!0),p.then(()=>a(!1))),h})};return u(),window.addEventListener("hashchange",u),()=>{window.removeEventListener("hashchange",u)}},[]),i===void 0?null:f.jsx(cS.Provider,{value:{route:i,updateRoute:c,loadingModal:o,eventTarget:l},children:t})};function be(){return x.useContext(cS)}function KL(n,e){const{eventTarget:t}=be(),r=x.useCallback(n,e);x.useEffect(()=>{const i=s=>{const o=s;r(o.detail.newPath,o.detail.oldPath)};return t.addEventListener("routeChange",i),()=>t.removeEventListener("routeChange",i)},[t,r])}const uS=x.createContext({updateSection:()=>{},updateNav:()=>{},currentSection:null,updateNavigatedSection:()=>{},scrollToSection:()=>{}}),Cu=()=>x.useContext(uS),dS=193,yd=(n,e)=>{const t=document.getElementById("admin-x-settings-scroller"),r=n.getBoundingClientRect().top+t.scrollTop;t.scrollTo({behavior:e?"smooth":"instant",top:r-dS})},ZL=(n,e)=>{const t=document.getElementById("admin-x-settings-sidebar-scroller"),r=n.getBoundingClientRect(),i=t.getBoundingClientRect(),s=i.top+40;if(r.top>=s&&r.left>=i.left&&r.right<=i.right&&r.bottom<=i.bottom||!["auto","scroll"].includes(getComputedStyle(t).overflowY))return;const o=e?"smooth":"instant";t.querySelector("[data-setting-nav-item]")===n?t.scrollTo({top:0,behavior:o}):r.top<s?t.scrollTo({top:t.scrollTop+r.top-s,behavior:o}):t.scrollTo({top:t.scrollTop+r.top-i.top-i.height+r.height+4,behavior:o})},YL=(n,e,t)=>{const r=e.map(({isIntersecting:a,target:l})=>({isIntersecting:a,id:Object.entries(t).find(([,c])=>c===l)?.[0]})).filter(a=>a.id),i=r.filter(a=>!n.includes(a.id)&&a.isIntersecting).map(a=>a.id),s=r.filter(a=>!a.isIntersecting).map(a=>a.id),o=n.filter(a=>!s.includes(a)).concat(i);return o.sort((a,l)=>{const c=t[a],u=t[l];return!c||!u?0:c.getBoundingClientRect().top-u.getBoundingClientRect().top}),o},JL=({children:n})=>{const[e,t]=x.useState(null),r=x.useRef({}),i=x.useRef(null),[s,o]=x.useState([]),[a,l]=x.useState(null),[c,u]=x.useState(!1),[d,h]=x.useState(!1),[,p]=x.useState(!1),g=x.useCallback(C=>{t(C),u(!0)},[]),m=x.useRef({}),v=x.useCallback(()=>{const C=new IntersectionObserver(k=>{o(A=>{const I=YL(A,k,r.current);return I.length&&l(I[0]),I})},{rootMargin:`-${dS-50}px 0px -40% 0px`});return Object.values(r.current).forEach(k=>C.observe(k)),C},[]),b=x.useCallback((C,k)=>{r.current[C]!==k&&(r.current[C]&&i.current?.unobserve(r.current[C]),r.current[C]=k,i.current?.observe(k),!d&&C===e&&(yd(k,!1),h(!0)))},[i,e,d]),y=x.useCallback((C,k)=>{m.current[C]=k},[]),S=x.useCallback(C=>{r.current[C]&&yd(r.current[C],!0)},[]),w=x.useMemo(()=>e&&s.includes(e)?e:s.length?s[0]:a,[s,a,e]);return x.useEffect(()=>{c&&(e&&r.current[e]?h(C=>(yd(r.current[e],C),!0)):h(!0),setTimeout(()=>v()))},[c,e,v]),x.useEffect(()=>{c&&w&&m.current[w]&&p(C=>(ZL(m.current[w],C),!0))},[c,w]),f.jsx(uS.Provider,{value:{updateSection:b,updateNav:y,currentSection:w,updateNavigatedSection:g,scrollToSection:S},children:n})},XL=n=>{const{updateSection:e}=Cu(),t=x.useRef(null);return x.useEffect(()=>{n&&t.current&&e(n,t.current)},[n,e]),{ref:t}},QL=n=>{const{updateNav:e}=Cu(),t=x.useRef(null);return x.useEffect(()=>{n&&t.current&&(Array.isArray(n)?n:[n]).forEach(i=>{e(i,t.current)})},[n,e]),{ref:t,props:{"data-setting-nav-item":!0}}},yo="IntegrationsResponseType",R6=yo,e_=Qr({dataType:yo,path:"/integrations/",defaultSearchParams:{include:"api_keys,webhooks",limit:"50"}}),O6=He({method:"POST",path:()=>"/integrations/",body:n=>({integrations:[n]}),searchParams:()=>({include:"api_keys,webhooks"}),updateQueries:{dataType:yo,emberUpdateType:"createOrUpdate",update:(n,e)=>e&&{...e,integrations:e.integrations.concat(n.integrations)}}}),T6=He({method:"PUT",path:n=>`/integrations/${n.id}/`,body:n=>({integrations:[n]}),searchParams:()=>({include:"api_keys,webhooks"}),updateQueries:{dataType:yo,emberUpdateType:"createOrUpdate",update:(n,e)=>e&&{...e,integrations:e.integrations.map(t=>n.integrations.find(({id:i})=>i===t.id)||t)}}}),t_=He({method:"DELETE",path:n=>`/integrations/${n}/`,updateQueries:{dataType:yo,emberUpdateType:"delete",update:(n,e,t)=>({...e,integrations:e.integrations.filter(r=>r.id!==t)})}}),n_="/ghost/assets/Alto-DUBY3bpV.png",r_="/ghost/assets/Bulletin-Dk9xtKp1.png",i_="/ghost/assets/Casper-DD4Wf4m4.png",s_="/ghost/assets/Dawn-LGQGnvjr.png",o_="/ghost/assets/Digest-BLKH5JOV.png",a_="/ghost/assets/Dope-CSZZPvqs.png",l_="/ghost/assets/Ease-DYfAZLvD.png",c_="/ghost/assets/Edge-_GS6qiG-.png",u_="/ghost/assets/Edition-BvM1Yi9K.png",d_="/ghost/assets/Episode-Cwq-Mrvr.png",f_="/ghost/assets/Headline-DcIZ47eY.png",h_="/ghost/assets/Journal-BLX3grkP.png",p_="/ghost/assets/London-D_cZW51W.png",m_="/ghost/assets/Ruby-rSwalIMT.png",g_="/ghost/assets/Solo-D2tiac6Z.png",v_="/ghost/assets/Source-B2xHWmHB.png",b_="/ghost/assets/Source-Magazine-DpXmb6XM.png",x_="/ghost/assets/Source-Newsletter-DPpaH3AQ.png",y_="/ghost/assets/Taste-DFhBlbR7.png",w_="/ghost/assets/Wave-DajHSkAT.png",fS=[{name:"Source",category:"News",previewUrl:"https://source.ghost.io/",ref:"default",image:v_,variants:[{category:"Magazine",previewUrl:"https://source-magazine.ghost.io/",image:b_},{category:"Newsletter",previewUrl:"https://source-newsletter.ghost.io/",image:x_}]},{name:"Casper",category:"Blog",previewUrl:"https://demo.ghost.io/",ref:"TryGhost/Casper",image:i_},{name:"Edition",category:"Newsletter",url:"https://github.com/TryGhost/Edition",previewUrl:"https://edition.ghost.io/",ref:"TryGhost/Edition",image:u_},{name:"Solo",category:"Blog",url:"https://github.com/TryGhost/Solo",previewUrl:"https://solo.ghost.io",ref:"TryGhost/Solo",image:g_},{name:"Taste",category:"Blog",url:"https://github.com/TryGhost/Taste",previewUrl:"https://taste.ghost.io",ref:"TryGhost/Taste",image:y_},{name:"Episode",category:"Podcast",url:"https://github.com/TryGhost/Episode",previewUrl:"https://episode.ghost.io",ref:"TryGhost/Episode",image:d_},{name:"Digest",category:"Newsletter",url:"https://github.com/TryGhost/Digest",previewUrl:"https://digest.ghost.io/",ref:"TryGhost/Digest",image:o_},{name:"Bulletin",category:"Newsletter",url:"https://github.com/TryGhost/Bulletin",previewUrl:"https://bulletin.ghost.io/",ref:"TryGhost/Bulletin",image:r_},{name:"Alto",category:"Blog",url:"https://github.com/TryGhost/Alto",previewUrl:"https://alto.ghost.io",ref:"TryGhost/Alto",image:n_},{name:"Dope",category:"Magazine",url:"https://github.com/TryGhost/Dope",previewUrl:"https://dope.ghost.io",ref:"TryGhost/Dope",image:a_},{name:"Wave",category:"Podcast",url:"https://github.com/TryGhost/Wave",previewUrl:"https://wave.ghost.io",ref:"TryGhost/Wave",image:w_},{name:"Edge",category:"Photography",url:"https://github.com/TryGhost/Edge",previewUrl:"https://edge.ghost.io",ref:"TryGhost/Edge",image:c_},{name:"Dawn",category:"Newsletter",url:"https://github.com/TryGhost/Dawn",previewUrl:"https://dawn.ghost.io/",ref:"TryGhost/Dawn",image:s_},{name:"Ease",category:"Documentation",url:"https://github.com/TryGhost/Ease",previewUrl:"https://ease.ghost.io",ref:"TryGhost/Ease",image:l_},{name:"Headline",category:"News",url:"https://github.com/TryGhost/Headline",previewUrl:"https://headline.ghost.io",ref:"TryGhost/Headline",image:f_},{name:"Ruby",category:"Magazine",url:"https://github.com/TryGhost/Ruby",previewUrl:"https://ruby.ghost.io",ref:"TryGhost/Ruby",image:m_},{name:"London",category:"Photography",url:"https://github.com/TryGhost/London",previewUrl:"https://london.ghost.io",ref:"TryGhost/London",image:p_},{name:"Journal",category:"Newsletter",url:"https://github.com/TryGhost/Journal",previewUrl:"https://journal.ghost.io/",ref:"TryGhost/Journal",image:h_}],$g="/ghost/assets/orb-black-1-44nQS0Zf.png",S_="/ghost/assets/orb-black-2-ua9uyJck.png",Fg="/ghost/assets/orb-black-3-4B29Ahnj.png",Hg="/ghost/assets/orb-black-4-BoaEuayq.png",C_="/ghost/assets/orb-black-5-CC4bN-9P.png",k_="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%201818.2%202500'%20style='enable-background:new%200%200%201818.2%202500'%20xml:space='preserve'%3e%3ctitle%3egoogle-docs%3c/title%3e%3cpath%20d='M1136.4%200h-966C79.6%200%200%2079.5%200%20170.5v2159.1c0%2090.9%2079.5%20170.5%20170.5%20170.5h1477.3c90.9%200%20170.5-79.5%20170.5-170.5V681.8l-397.7-284.1L1136.4%200z'%20style='fill:%234285f4'/%3e%3cpath%20d='M454.5%201818.2h909.1v-113.6h-909l-.1%20113.6zm0%20227.3h681.8v-113.6H454.5v113.6zm0-795.5v113.6h909.1V1250H454.5zm0%20340.9h909.1v-113.6h-909l-.1%20113.6z'%20style='fill:%23f1f1f1'/%3e%3cpath%20d='M1136.4%200v511.4c0%2090.9%2079.5%20170.4%20170.4%20170.4h511.4L1136.4%200z'%20style='fill:%23a1c2fa'/%3e%3c/svg%3e",A_="/ghost/assets/mailchimp-DwTEN-tS.svg",M_="data:image/svg+xml,%3csvg%20height='546'%20viewBox='0%200%20569%20546'%20width='569'%20xmlns='http://www.w3.org/2000/svg'%3e%3ctitle%3epatreon%3c/title%3e%3cg%20fill='%23FF424D'%3e%3ccircle%20cx='362.59'%20cy='204.59'%20data-fill='1'%20r='204.59'/%3e%3cpath%20data-fill='1'%20d='M0%200h100v545.8H0z'/%3e%3c/g%3e%3c/svg%3e",Vg="data:image/svg+xml,%3csvg%20width='152'%20height='179'%20viewBox='0%200%20152%20179'%20xmlns='http://www.w3.org/2000/svg'%3e%3ctitle%3epaypal%3c/title%3e%3cg%20fill='none'%20fill-rule='evenodd'%3e%3cpath%20d='M136.492%2045.453c2.179-13.894-.015-23.348-7.53-31.911C120.688%204.114%20105.741.075%2086.617.075H31.105a7.943%207.943%200%200%200-7.846%206.705L.144%20153.36a4.765%204.765%200%200%200%204.707%205.507h34.27l-2.365%2015a4.168%204.168%200%200%200%204.118%204.818H69.76a6.948%206.948%200%200%200%206.863-5.865l.283-1.468%205.442-34.507.351-1.907a6.947%206.947%200%200%201%206.862-5.865h4.322c27.984%200%2049.896-11.37%2056.299-44.25%202.675-13.74%201.292-25.208-5.783-33.27-2.14-2.439-4.802-4.455-7.907-6.1'%20fill='%23238EC2'/%3e%3cpath%20d='M136.492%2045.453c2.179-13.894-.015-23.348-7.53-31.911C120.688%204.114%20105.741.075%2086.617.075H31.105a7.943%207.943%200%200%200-7.846%206.705L.144%20153.36a4.765%204.765%200%200%200%204.707%205.507h34.27l8.609-54.588-.267%201.711c.609-3.86%203.909-6.704%207.817-6.704h16.288c31.989%200%2057.037-12.996%2064.356-50.582.217-1.113.402-2.191.568-3.251'%20fill='%2320274F'/%3e%3cpath%20d='M56.978%2045.638a6.945%206.945%200%200%201%206.863-5.866h43.514c5.155%200%209.961.337%2014.356%201.045%201.256.202%202.478.435%203.665.698a53.92%2053.92%200%200%201%203.455.885c.558.162%201.106.333%201.646.512%202.157.717%204.166%201.562%206.015%202.541%202.179-13.894-.015-23.348-7.53-31.911C120.688%204.114%20105.741.075%2086.617.075H31.105a7.943%207.943%200%200%200-7.846%206.705L.144%20153.36a4.765%204.765%200%200%200%204.707%205.507h34.27L56.978%2045.638'%20fill='%23253667'/%3e%3c/g%3e%3c/svg%3e",I_="/ghost/assets/slackicon-CBMgLWU6.png",E_="data:image/svg+xml,%3csvg%20width='86'%20height='89'%20xmlns='http://www.w3.org/2000/svg'%3e%3ctitle%3etypeform%3c/title%3e%3cg%20fill='none'%20fill-rule='evenodd'%3e%3cpath%20d='M40.28%2087.561c12.464.154%2021.16-3.994%2030.135-12.175%208.975-8.18%2014.306-16.867%2014.741-28.73.436-11.862-3.412-21.43-12.564-30.581C63.441%206.923%2051.64.9%2039.4.899%2027.158.898%2018.967%206.252%2011.385%2016.07c-7.581%209.818-9.237%2022.212-9.894%2033.921-.657%2011.71-1.15%2017.111%206.608%2024.625%207.758%207.514%2019.718%2012.791%2032.182%2012.945z'%20stroke='%23262627'/%3e%3cpath%20d='M29.136%2037.976v-4.885h25.918v4.885H44.679v27.998H39.51V37.976z'%20fill='%23262627'%20fill-rule='nonzero'/%3e%3c/g%3e%3c/svg%3e",D_="/ghost/assets/zero-bounce-ChbZnu35.png",hS=[{ghostImage:S_,appImage:I_,title:"Share scheduled posts with your team in Slack",url:"https://zapier.com/webintent/create-zap?template=359499"},{ghostImage:Fg,appImage:M_,title:"Connect Patreon to your Ghost membership site",url:"https://zapier.com/webintent/create-zap?template=75801"},{ghostImage:Hg,appImage:D_,title:"Protect email delivery with email verification",url:"https://zapier.com/webintent/create-zap?template=359415"},{ghostImage:C_,appImage:Vg,title:"Add members for successful sales in PayPal",url:"https://zapier.com/webintent/create-zap?template=184423"},{ghostImage:Fg,appImage:Vg,title:"Unsubscribe members who cancel a subscription in PayPal",url:"https://zapier.com/webintent/create-zap?template=359348"},{ghostImage:$g,appImage:k_,title:"Send new post drafts from Google Docs to Ghost",url:"https://zapier.com/webintent/create-zap?template=50924"},{ghostImage:Hg,appImage:E_,title:"Survey new members using Typeform",url:"https://zapier.com/webintent/create-zap?template=359407"},{ghostImage:$g,appImage:A_,title:"Sync email subscribers in Ghost + Mailchimp",url:"https://zapier.com/webintent/create-zap?template=359342"}],pS=x.createContext({officialThemes:fS,zapierTemplates:hS,search:{filter:"",setFilter:()=>{},checkVisible:()=>!0,highlightKeywords:()=>"",noResult:!1,setNoResult:()=>{},registerComponent:()=>{},unregisterComponent:()=>{},getVisibleComponents:()=>new Set,isOnlyVisibleComponent:()=>!1},sortingState:[]}),R_=({children:n,...e})=>{const t=zL(),[r,i]=x.useState([{type:"offers",option:"date-added",direction:"desc"}]);return f.jsx(pS.Provider,{value:{officialThemes:fS,zapierTemplates:hS,...e,search:t,sortingState:r,setSortingState:i},children:f.jsx($L,{children:f.jsx(JL,{children:n})})})},ku=()=>x.useContext(pS),N6=()=>ku().officialThemes,wo=()=>ku().search,P6=()=>ku().upgradeStatus,O_=()=>{const{sortingState:n,setSortingState:e}=ku();return{sortingState:n,setSortingState:e}},Se=({keywords:n,navid:e,children:t,...r})=>{const{checkVisible:i,noResult:s,registerComponent:o,unregisterComponent:a}=wo(),{route:l}=be(),[c,u]=x.useState(!1),{ref:d}=XL(e),h=x.useId(),p=UL(e||"component",h);x.useEffect(()=>(o(p,n),()=>{a(p)}),[p,n,o,a]),x.useEffect(()=>{if(u(l===e),l===e){const v=setTimeout(()=>u(!1),2e3);return()=>clearTimeout(v)}},[l,e]);const m=Y.Children.toArray(t).some(v=>Y.isValidElement(v)&&v.type==="img")?f.jsx("div",{className:"-mx-5 -mb-5 overflow-hidden rounded-b-xl bg-grey-50 md:-mx-7 md:-mb-7",children:Y.Children.map(t,v=>Y.isValidElement(v)&&v.type==="img"?Y.cloneElement(v,{className:`${v.props.className||""} h-full w-full rounded-b-xl`.trim()}):v)}):t;return f.jsx(uR,{ref:d,highlight:c,isVisible:i(n)||s,navid:e,...r,children:m})},T_=({keywords:n})=>f.jsx(Se,{customHeader:f.jsxs("div",{className:"z-10 flex items-start justify-between",children:[f.jsx(Kr,{description:"Add custom code to your publication.",title:"Code injection"}),f.jsx(ne,{className:"mt-[-5px]",color:"clear",label:"Open",size:"sm",onClick:()=>{Ye.show(VL)}})]}),description:"Add custom code to your publication",keywords:n,navid:"code-injection",testId:"code-injection",title:"Code injection"}),N_=ke(T_,"Code injection"),P_=He({method:"POST",path:()=>"/db/",body:n=>{const e=new FormData;return e.append("importfile",n),e}}),L_=He({method:"DELETE",path:()=>"/db/"}),__=()=>Ff("/db/"),j_=({keywords:n})=>{const{mutateAsync:e}=L_(),t=Hf(),r=vt(),i=()=>{Ye.show(Gr,{title:"Would you really like to delete all content from your blog?",prompt:"This is permanent! No backups, no restores, no magic undo button. We warned you, k?",okColor:"red",okLabel:"Delete",onOk:async s=>{try{await e(null),tr({title:"All content deleted from database.",type:"success"}),s?.remove(),await t.refetchQueries()}catch(o){r(o)}}})};return f.jsx(Se,{customHeader:f.jsx(Kr,{description:"Permanently delete all posts and tags from the database, a hard reset",title:"Danger zone"}),keywords:n,navid:"dangerzone",testId:"dangerzone",children:f.jsx("div",{children:f.jsx(ne,{color:"red",label:"Delete all content",onClick:i})})})},B_=ke(j_,"Danger zone"),$_=({keywords:n})=>{const{updateRoute:e}=be(),t=()=>{e("history/view")};return f.jsx(Se,{customButtons:f.jsx(ne,{className:"mt-[-5px]",color:"clear",label:"View history",size:"sm",onClick:t}),description:"View system event log",keywords:n,navid:"history",testId:"history",title:"History"})},F_=ke($_,"History"),H_="/ghost/assets/integrations-settings-B7r1LnOP.png";function mS(){const{config:n,settings:e}=Pe(),[t]=Te(e,["pintura"]),[r,i]=x.useState(!1),[s,o]=x.useState(!1),[a,l]=x.useState(!1),c=x.useRef(!1),[u]=Te(e,["pintura_js_url"]),[d]=Te(e,["pintura_css_url"]);let h=t&&r&&s||!1;const p=n?.pintura;x.useEffect(()=>{let v=p?.js?p?.js:u||null;if(v){if(v.startsWith("/")){const{adminRoot:b}=Ed();v=window.location.origin+b.replace(/\/$/,"")+v}if(window.pintura){i(!0);return}try{const b=new URL(v);import(`${b.protocol}//${b.host}${b.pathname}`).then(()=>{i(!0)}).catch(w=>{Ss(w)})}catch(b){Ss(b)}}},[u,p?.js]),x.useEffect(()=>{let v=p?.css?p?.css:d||null;if(v){if(v.startsWith("/")){const{adminRoot:b}=Ed();v=window.location.origin+b.replace(/\/$/,"")+v}try{if(document.querySelector(`link[href="${v}"]`))o(!0);else{let y=document.createElement("link");y.rel="stylesheet",y.type="text/css",y.href=v,y.onload=()=>{o(!0)},document.head.appendChild(y)}}catch(b){Ss(b)}}},[d,p?.css]);const g=x.useCallback(({image:m,handleSave:v})=>{if(m&&h){const b=new URL(m);b.searchParams.has("v")||b.searchParams.set("v",Date.now().toString());const y=b.href,S=window.pintura.openDefaultEditor({src:y,enableTransparencyGrid:!0,util:"crop",utils:["crop","filter","finetune","redact","annotate","trim","frame","resize"],frameOptions:[[void 0,w=>w.labelNone],["solidSharp",w=>w.frameLabelMatSharp],["solidRound",w=>w.frameLabelMatRound],["lineSingle",w=>w.frameLabelLineSingle],["hook",w=>w.frameLabelCornerHooks],["polaroid",w=>w.frameLabelPolaroid]],cropSelectPresetFilter:"landscape",cropSelectPresetOptions:[[void 0,"Custom"],[1,"Square"],[2/1,"2:1"],[3/2,"3:2"],[4/3,"4:3"],[16/10,"16:10"],[16/9,"16:9"],[1/2,"1:2"],[2/3,"2:3"],[3/4,"3:4"],[10/16,"10:16"],[9/16,"9:16"]],locale:{labelButtonExport:"Save and close"},previewPad:!0,willClose:()=>c.current?(l(!1),!0):!1});S.on("loaderror",()=>{P2("Pintura editor failed to load")}),S.on("process",w=>{v(w.dest)}),l(!0)}},[h]);return x.useEffect(()=>{const m=b=>{b.key==="Escape"&&b.stopPropagation()};if(!a)return;const v=b=>{b.target instanceof Element&&b.target.closest('.PinturaModal button[title="Close"]')&&(c.current=!0)};return window.addEventListener("click",v,{capture:!0}),window.addEventListener("keydown",m,{capture:!0}),()=>{window.removeEventListener("click",v,{capture:!0}),window.removeEventListener("keydown",m,{capture:!0})}},[a]),{isEnabled:h,openEditor:g}}const Si=({icon:n,title:e,detail:t,action:r,onDelete:i,active:s,disabled:o,testId:a,custom:l=!1})=>{const{updateRoute:c}=be(),u=p=>{p?.stopPropagation(),o?c({route:"pro",isExternal:!0}):r()},d=p=>{p?.stopPropagation(),i?.()},h=l?f.jsx(ne,{color:"red",label:"Delete",link:!0,onClick:d}):o?f.jsx(ne,{icon:"lock-locked",label:"Upgrade",link:!0,onClick:u}):f.jsx(ne,{color:"green",label:"Configure",link:!0,onClick:u});return f.jsx(ru,{action:h,avatar:n,className:o?"opacity-50 saturate-0":"",detail:t,hideActions:!o,testId:a,title:s?f.jsxs("span",{className:"inline-flex items-center gap-1",children:[e," ",f.jsx("span",{className:"inline-flex items-center rounded-full bg-[rgba(48,207,67,0.15)] px-1.5 py-0.5 text-2xs font-semibold uppercase tracking-wide text-green",children:"Active"})]}):e,onClick:u})},V_=()=>{const{config:n}=Pe(),{updateRoute:e}=be(),t=u=>{e(u)},r=n.hostSettings?.limits?.customIntegrations?.disabled,i=mS(),{settings:s}=Pe(),[o,a,l,c]=Te(s,["unsplash","firstpromoter","slack_url","slack_username"]);return f.jsxs(Xi,{titleSeparator:!1,children:[f.jsx(Si,{action:()=>{t("integrations/zapier")},detail:"Automation for your apps",disabled:r,icon:f.jsx(ve,{name:"zapier",size:32}),testId:"zapier-integration",title:"Zapier"}),f.jsx(Si,{action:()=>{t("integrations/slack")},active:l&&c,detail:"A messaging app for teams",icon:f.jsx(ve,{name:"slack",size:32}),testId:"slack-integration",title:"Slack"}),f.jsx(Si,{action:()=>{t("integrations/unsplash")},active:o,detail:"Beautiful, free photos",icon:f.jsx(ve,{name:"unsplash",size:32}),testId:"unsplash-integration",title:"Unsplash"}),f.jsx(Si,{action:()=>{t("integrations/firstpromoter")},active:a,detail:"Launch your member referral program",icon:f.jsx(ve,{name:"firstpromoter",size:32}),testId:"firstpromoter-integration",title:"FirstPromoter"}),f.jsx(Si,{action:()=>{t("integrations/pintura")},active:i.isEnabled,detail:"Advanced image editing",icon:f.jsx(ve,{name:"pintura",size:32}),testId:"pintura-integration",title:"Pintura"})]})},U_=({integrations:n})=>{const{updateRoute:e}=be(),{mutateAsync:t}=t_(),r=vt();return n.length?f.jsx(Xi,{borderTop:!1,children:n.map(i=>f.jsx(Si,{action:()=>e({route:`integrations/${i.id}`}),detail:f.jsx("div",{className:"line-clamp-2 break-words",children:f.jsx("span",{title:`${i.name}: ${i.description||"No description"}`,children:i.description||"No description"})}),icon:i.icon_image?f.jsx("img",{className:"size-8 shrink-0 object-cover",role:"presentation",src:i.icon_image}):f.jsx(ve,{className:"w-8 shrink-0",name:"integration"}),title:i.name,custom:!0,onDelete:()=>{Ye.show(Gr,{title:"Are you sure?",prompt:"Deleting this integration will remove all webhooks and api keys associated with it.",okColor:"red",okLabel:"Delete Integration",onOk:async s=>{try{await t(i.id),s?.remove(),tr({title:"Integration deleted",type:"info",options:{position:"bottom-left"}})}catch(o){r(o)}}})}}))}):f.jsx(ei,{icon:"integration",children:"No custom integration."})},z_=({keywords:n})=>{const[e,t]=x.useState("built-in"),{data:{integrations:r}={integrations:[]}}=e_(),{updateRoute:i}=be(),s=[{id:"built-in",title:"Built-in",contents:f.jsx(V_,{})},{id:"custom",title:"Custom",contents:f.jsx(U_,{integrations:r.filter(a=>a.type==="custom")})}],o=f.jsx(ne,{className:"mt-[-5px] inline-flex h-7 cursor-pointer items-center justify-center whitespace-nowrap rounded px-3 text-sm font-semibold text-grey-900 transition hover:bg-grey-200 dark:text-white dark:hover:bg-grey-900 [&:hover]:text-black",color:"clear",label:"Add custom integration",link:!0,onClick:()=>{i("integrations/new"),t("custom")}});return f.jsx(Se,{customButtons:o,customHeader:f.jsxs("div",{className:"sm:-mt-5 md:-mt-7",children:[f.jsx("div",{className:"-mx-5 overflow-hidden rounded-t-xl border-b border-grey-200 md:-mx-7 dark:border-grey-800",children:f.jsx("img",{className:"size-full",src:H_})}),f.jsxs("div",{className:" z-10 mt-6 flex items-start justify-between",children:[f.jsx(Kr,{description:"Make Ghost work with apps and tools.",title:"Integrations"}),f.jsx(ne,{className:"mt-[-5px] inline-flex h-7 cursor-pointer items-center justify-center whitespace-nowrap rounded px-3 text-sm font-semibold text-grey-900 transition hover:bg-grey-200 dark:text-white dark:hover:bg-grey-900 [&:hover]:text-black",color:"clear",label:"Add custom integration",link:!0,onClick:()=>{i("integrations/new"),t("custom")}})]})]}),keywords:n,navid:"integrations",testId:"integrations",children:f.jsx(Gn,{selectedTab:e,tabs:s,onTabChange:t})})},W_=ke(z_,"Integrations");function q_(n,e={}){window.plausible=window.plausible||function(){(window.plausible.q=window.plausible.q||[]).push(arguments)},window.plausible(n,{props:e})}const tc=({label:n,flag:e,disabled:t})=>{const{settings:r}=Pe(),i=JSON.parse(mb(r,"labs")||"{}"),{mutateAsync:s}=Xr(),o=Hf(),a=vt();return f.jsx(Kt,{checked:i[e],disabled:t,label:n,labelClasses:"sr-only",name:`feature-${e}`,onChange:async()=>{const l=!i[e];try{await s([{key:"labs",value:JSON.stringify({...i,[e]:l})}]),q_("Feature Toggled",{state:l?"on":"off",feature:e}),o.setQueriesData([L2],c=>({config:{...c.config,labs:{...c.config.labs,[e]:l}}}))}catch(c){a(c)}}})},Ci=({title:n,detail:e,action:t})=>f.jsx(ru,{action:t,bgOnHover:!1,detail:e,paddingRight:!1,title:n}),G_=He({method:"POST",path:()=>"/redirects/upload/",body:n=>{const e=new FormData;return e.append("redirects",n),e}}),K_=()=>Ff("/redirects/download/"),Z_=He({method:"POST",path:()=>"/settings/routes/yaml/",body:n=>{const e=new FormData;return e.append("routes",n),e}}),Y_=()=>Ff("/settings/routes/yaml/"),J_=()=>{const{mutateAsync:n}=G_(),{mutateAsync:e}=Z_(),t=vt(),[r,i]=x.useState(!1),[s,o]=x.useState(!1);return f.jsxs(Xi,{titleSeparator:!1,children:[f.jsx(Ci,{action:f.jsx(tc,{flag:"superEditors"}),detail:f.jsx(f.Fragment,{children:"Allows newly-assigned editors to manage members and comments in addition to regular roles."}),title:"Enhanced Editor role (beta)"}),f.jsx(Ci,{action:f.jsx(tc,{flag:"editorExcerpt"}),detail:f.jsx(f.Fragment,{children:"Adds the excerpt input below the post title in the editor"}),title:"Show post excerpt inline"}),f.jsx(Ci,{action:f.jsx(tc,{flag:"additionalPaymentMethods"}),detail:f.jsxs(f.Fragment,{children:["Enable support for CashApp, iDEAL, Bancontact, and others. ",f.jsx("a",{className:"text-green",href:"https://ghost.org/help/payment-methods",rel:"noopener noreferrer",target:"_blank",children:"Learn more →"})]}),title:"Additional payment methods"}),f.jsx(Ci,{action:f.jsxs("div",{className:"flex flex-col items-end gap-1",children:[f.jsx(rc,{id:"upload-redirects",onUpload:async a=>{try{i(!0),await n(a),tr({title:"Redirects uploaded",type:"success"})}catch(l){t(l)}finally{i(!1)}},children:f.jsx(ne,{color:"grey",label:r?"Uploading ...":"Upload redirects file",size:"sm",tag:"div"})}),f.jsx(ne,{color:"green",label:"Download current redirects",link:!0,onClick:()=>K_()})]}),detail:f.jsxs(f.Fragment,{children:["Configure redirects for old or moved content, ",f.jsx("br",{})," more info in the ",f.jsx("a",{className:"text-green",href:"https://ghost.org/tutorials/implementing-redirects/",rel:"noopener noreferrer",target:"_blank",children:"docs"})]}),title:"Redirects"}),f.jsx(Ci,{action:f.jsxs("div",{className:"flex flex-col items-end gap-1",children:[f.jsx(rc,{id:"upload-routes",onUpload:async a=>{try{o(!0),await e(a),tr({type:"success",title:"Routes uploaded"})}catch(l){t(l)}finally{o(!1)}},children:f.jsx(ne,{color:"grey",label:s?"Uploading ...":"Upload routes file",size:"sm",tag:"div"})}),f.jsx(ne,{color:"green",label:"Download current routes",link:!0,onClick:()=>Y_()})]}),detail:"Configure dynamic routing by modifying the routes.yaml file",title:"Routes"})]})},X_="data:image/svg+xml,%3csvg%20width='267'%20height='285'%20viewBox='0%200%20267%20285'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3ccircle%20cx='165'%20cy='183'%20r='102'%20fill='%23F1F3F4'/%3e%3ccircle%20cx='68'%20cy='71'%20r='31'%20fill='%23F1F3F4'/%3e%3ccircle%20cx='99'%20cy='17'%20r='17'%20fill='%23F1F3F4'/%3e%3ccircle%20cx='118'%20cy='70'%20r='7'%20fill='%23F1F3F4'/%3e%3ccircle%20cx='45'%20cy='32'%20r='3'%20fill='%23F1F3F4'/%3e%3ccircle%20cx='12.5'%20cy='83.5'%20r='12.5'%20fill='%23F1F3F4'/%3e%3c/svg%3e",Fh="InvitesResponseType",Q_=Uc({dataType:Fh,path:"/invites/",permissions:["Owner","Administrator"],defaultSearchParams:{limit:"100",include:"roles"},defaultNextPageParams:(n,e)=>{var t;return{...e,page:(((t=n.meta)==null?void 0:t.pagination.next)||1).toString()}},returnData:n=>{const{pages:e}=n,t=e.flatMap(i=>i.invites),r=e[e.length-1].meta;return{invites:t,meta:r,isEnd:r?r.pagination.pages===r.pagination.page:!0}}}),e5=He({method:"POST",path:()=>"/invites/",body:({email:n,roleId:e})=>({invites:[{email:n,role_id:e,expires:null,status:null,token:null}]}),updateQueries:{dataType:Fh,emberUpdateType:"createOrUpdate",update:Vf("invites")}}),t5=He({path:n=>`/invites/${n}/`,method:"DELETE",updateQueries:{dataType:Fh,emberUpdateType:"delete",update:_2("invites")}}),n5="RolesResponseType",r5=Qr({dataType:n5,path:"/roles/",defaultSearchParams:{limit:"100"}});function nc(n,e){return n.filter(t=>t.roles.find(r=>r.name===e))}function i5(n,e){return n.filter(t=>t.roles.find(r=>e.includes(r.name)))}function s5(n){return nc(n,"Owner")[0]}const gS=()=>{const{currentUser:n}=Pe(),{data:{users:e,meta:t,isEnd:r}={users:[]},isLoading:i,fetchNextPage:s}=j2(),{data:{invites:o,meta:a,isEnd:l}={invites:[]},isLoading:c,fetchNextPage:u}=Q_(),{data:{roles:d}={},isLoading:h}=r5(),p=x.useMemo(()=>s5(e),[e]),g=x.useMemo(()=>nc(e,"Administrator"),[e]),m=x.useMemo(()=>i5(e,["Editor","Super Editor"]),[e]),v=x.useMemo(()=>nc(e,"Author"),[e]),b=x.useMemo(()=>nc(e,"Contributor"),[e]),y=x.useMemo(()=>o.map(S=>{let w=d?.find(C=>S.role_id===C.id);return{...S,role:w?.name}}),[o,d]);return{totalUsers:t?.pagination.total||0,totalInvites:a?.pagination.total||0,users:e,ownerUser:p,adminUsers:g,editorUsers:m,authorUsers:v,contributorUsers:b,currentUser:n,invites:y,isLoading:i||c||h,hasNextPage:r===!1,invitesHasNextPage:l===!1,fetchNextPage:s,fetchNextInvitePage:u}},o5=no(()=>import("./index-DG53N3Xt.js").then(n=>n.i),__vite__mapDeps([8,1,2,9]));class vS extends Error{errorType;errorDetails;constructor({errorType:e,errorDetails:t,message:r}){super(r),this.errorType=e,this.errorDetails=t}}class a5 extends vS{constructor(e){super(Object.assign({errorType:"IncorrectUsageError"},e))}}class So extends vS{constructor(e){super(Object.assign({errorType:"HostLimitError"},e))}}const Co=()=>{const{config:n}=Pe(),[e,t]=x.useState(null);x.useEffect(()=>{o5.then(u=>t(()=>u.default))},[]);const{users:r,contributorUsers:i,invites:s,isLoading:o}=gS(),{refetch:a}=gb({searchParams:{limit:"1"},enabled:!1}),{refetch:l}=bb({searchParams:{filter:"status:active",limit:"1"},enabled:!1}),c=x.useMemo(()=>n.hostSettings?.billing?.enabled===!0&&n.hostSettings?.billing?.url?n.hostSettings.billing.url:"https://ghost.org/help/",[n.hostSettings?.billing]);return x.useMemo(()=>{const u={isLimited:()=>!1,isDisabled:()=>!1,checkWouldGoOverLimit:()=>Promise.resolve(!1),errorIfWouldGoOverLimit:()=>Promise.resolve(),errorIfIsOverLimit:()=>Promise.resolve()};if(!e||!n.hostSettings?.limits||o)return u;const d={...n.hostSettings.limits},h=new e;return d.staff&&(d.staff.currentCountQuery=async()=>{const p=r.filter(m=>m.status!=="inactive"&&!i.includes(m)),g=s.filter(m=>m.role!=="Contributor");return p.length+g.length}),d.members&&(d.members.currentCountQuery=async()=>{const{data:p}=await a();return p?.meta?.pagination?.total||0}),d.newsletters&&(d.newsletters.currentCountQuery=async()=>{const{data:{pages:p}={pages:[]}}=await l();return p[0].meta?.pagination.total||0}),h.loadLimits({limits:d,helpLink:c,errors:{HostLimitError:So,IncorrectUsageError:a5}}),{isLimited:p=>h.isLimited(p),isDisabled:p=>h.isDisabled(p),checkWouldGoOverLimit:p=>h.checkWouldGoOverLimit(p),errorIfWouldGoOverLimit:(p,g={})=>h.errorIfWouldGoOverLimit(p,g),errorIfIsOverLimit:p=>h.errorIfIsOverLimit(p)}},[e,n,i,a,l,c,s,o,r])},l5=[{title:"Stripe Automatic Tax (private beta)",description:"Use Stripe Automatic Tax at Stripe Checkout. Needs to be enabled in Stripe",flag:"stripeAutomaticTax"},{title:"Email customization (internal beta)",description:"Newsletter customization settings that have been released to Ghost's own production sites",flag:"emailCustomization"},{title:"Import Member Tier",description:"Enables tier to be specified when importing members",flag:"importMemberTier"},{title:"Explore",description:"Enables keeping in touch with the new Explore API",flag:"explore"},{title:"Tags X",description:"Enables the new Tags UI",flag:"tagsX"},{title:"UTM tracking",description:"Enables UTM tracking for web traffic and member attribution",flag:"utmTracking"},{title:"Email Unique ID",description:"Enables {uniqueid} variable in emails for unique image URLs to bypass ESP image caching",flag:"emailUniqueid"},{title:"Welcome Emails",description:"Enables features related to sending welcome emails to new members",flag:"welcomeEmails"},{title:"New Admin Experience",description:"Preview the next version of the admin interface",flag:"adminForward"},{title:"Domain Warmup",description:"Enable custom sending domain warmup for gradual email volume increases",flag:"domainWarmup"},{title:"Updated theme translation (beta)",description:"Enable theme translation using i18next instead of the old translation package.",flag:"themeTranslation"},{title:"Comment Moderation",description:"Enhanced comment moderation interface with advanced filtering and management. Requires the new admin experience.",flag:"commentModeration"},{title:"Comment Permalinks",description:"Enable direct links to individual comments with automatic scrolling and highlighting",flag:"commentPermalinks"}],c5=()=>{const n=Co(),[e,t]=x.useState([]);return x.useEffect(()=>{(async()=>{const i=[];for(const s of l5)if(s.limitName&&n?.isLimited(s.limitName))try{await n.errorIfWouldGoOverLimit(s.limitName),i.push(s)}catch(o){o instanceof So||i.push(s)}else i.push(s);t(i)})()},[n]),f.jsx(Xi,{titleSeparator:!1,children:e.map(r=>f.jsx(Ci,{action:f.jsx(tc,{flag:r.flag,label:r.title}),detail:r.description,title:r.title}))})};function u5(n){const[e,t]=x.useState(!1),r=x.useRef(!1),{filter:i,getVisibleComponents:s,checkVisible:o}=wo();return x.useEffect(()=>{i||(r.current=!1)},[i]),x.useEffect(()=>{if(r.current)return;const c=o(n),u=s(),d=!!i&&c&&u.size===1;t(d)},[i,n,o,s]),{isOpen:e,openManually:()=>{r.current=!0,t(!0)},closeManually:()=>{r.current=!0,t(!1)}}}const d5=({keywords:n})=>{const[e,t]=x.useState("labs-beta-features"),{config:r}=Pe(),{isOpen:i,openManually:s,closeManually:o}=u5(n),a=[{id:"labs-beta-features",title:"Beta features",contents:f.jsx(J_,{})},r.enableDeveloperExperiments&&{id:"labs-private-features",title:"Private features",contents:f.jsx(c5,{})}].filter(Boolean);return f.jsx(Se,{customHeader:f.jsxs("div",{className:"z-10 flex items-start justify-between",children:[f.jsx(Kr,{description:"This is a testing ground for new or experimental features. They may change, break or inexplicably disappear at any time.",title:"Labs"}),f.jsx(ne,{className:"mt-[-5px]",color:i?"grey":"clear",label:i?"Close":"Open",size:"sm",onClick:i?o:s})]}),isEditing:i,keywords:n,navid:"labs",testId:"labs",children:i?f.jsx(Gn,{selectedTab:e,tabs:a,onTabChange:t}):f.jsx("div",{className:"absolute inset-0 z-0 overflow-hidden opacity-70",children:f.jsx("img",{className:"absolute -right-6 -top-6 dark:opacity-10",src:X_})})})},f5=ke(d5,"Labs"),h5=()=>{const{refetch:n}=nC({searchParams:{limit:"1000"},enabled:!1}),e=vt(),t=async()=>{try{const{data:r}=await n();if(r){const i=new Blob([r],{type:"text/csv"}),s=window.URL.createObjectURL(i),o=document.createElement("a");o.setAttribute("hidden",""),o.setAttribute("href",s),o.setAttribute("download",`post-analytics.${new Date().toISOString().split("T")[0]}.csv`),document.body.appendChild(o),o.click(),document.body.removeChild(o),window.URL.revokeObjectURL(s)}}catch(r){e(r)}};return f.jsxs("div",{className:"grid grid-cols-1 gap-4 pt-4 md:grid-cols-2 lg:grid-cols-3",children:[f.jsx(ne,{className:"!h-9 !font-semibold",color:"grey",icon:"export",iconColorClass:"!h-4 !w-auto",label:"Content & settings",onClick:()=>__()}),f.jsx(ne,{className:"!h-9 !font-semibold",color:"grey",icon:"baseline-chart",iconColorClass:"!h-4 !w-auto",label:"Post analytics",onClick:t})]})},p5=()=>{const n=ir(),{mutateAsync:e}=P_(),[t,r]=x.useState(!1),i=vt();return f.jsx(Or,{backDropClick:!1,okLabel:"",size:"sm",testId:"universal-import-modal",title:"Universal import",children:f.jsx("div",{className:"py-4 leading-9",children:f.jsx(rc,{accept:"application/json, application/zip",id:"import-file",onUpload:async s=>{r(!0);try{await e(s),n.remove(),Ye.show(Gr,{title:"Import in progress",prompt:"Your import is being processed, and you'll receive a confirmation email as soon as it’s complete. Usually this only takes a few minutes, but larger imports may take longer.",cancelLabel:"",okLabel:"Got it",onOk:o=>o?.remove(),formSheet:!1})}catch(o){i(o)}finally{r(!1)}},children:f.jsx("div",{className:"-mb-4 cursor-pointer bg-grey-75 p-10 text-center dark:bg-grey-950",children:t?"Uploading...":f.jsxs(f.Fragment,{children:["Select any JSON or zip file that contains ",f.jsx("br",{}),"posts and settings"]})})})})})},m5=Ye.create(p5),ai=({icon:n,title:e,onClick:t})=>{const r=_("flex h-9 cursor-pointer items-center justify-center gap-2 rounded-md bg-grey-100 px-2 text-sm font-semibold transition-all hover:bg-grey-200 dark:bg-grey-900");return t?f.jsxs("button",{className:r,type:"button",onClick:t,children:[n,e]}):f.jsx(f.Fragment,{})},g5=()=>{const{updateRoute:n}=be(),e=()=>{Ye.show(m5)};return f.jsxs("div",{className:"grid grid-cols-1 gap-4 pt-4 md:grid-cols-2 lg:grid-cols-3",children:[f.jsx(ai,{icon:f.jsx(ve,{className:"w-auto",name:"substack",size:18}),title:"Substack",onClick:()=>n({isExternal:!0,route:"/migrate/substack"})}),f.jsx(ai,{icon:f.jsx(ve,{className:"w-auto",name:"wordpress",size:18}),title:"WordPress",onClick:()=>n({isExternal:!0,route:"/migrate/wordpress"})}),f.jsx(ai,{icon:f.jsx(ve,{className:"w-auto",name:"squarespace",size:18}),title:"Squarespace",onClick:()=>n({isExternal:!0,route:"/migrate/squarespace"})}),f.jsx(ai,{icon:f.jsx(ve,{className:"w-auto dark:invert",name:"medium",size:18}),title:"Medium",onClick:()=>n({isExternal:!0,route:"/migrate/medium"})}),f.jsx(ai,{icon:f.jsx(ve,{className:"w-auto",name:"mailchimp",size:20}),title:"Mailchimp",onClick:()=>n({isExternal:!0,route:"/migrate/mailchimp"})}),f.jsx(ai,{icon:f.jsx(ve,{className:"w-auto",name:"import",size:16}),title:"Universal import",onClick:e})]})},v5=({keywords:n})=>{const[e,t]=x.useState("import"),r=[{id:"import",title:"Import",contents:f.jsx(g5,{})},{id:"export",title:"Export",contents:f.jsx(h5,{})}].filter(Boolean);return f.jsx(Se,{customHeader:f.jsx(Kr,{description:"Import content, members and subscriptions from other platforms or export your Ghost data.",title:"Migration tools"}),keywords:n,navid:"migration",testId:"migrationtools",children:f.jsx(Gn,{selectedTab:e,tabs:r,onTabChange:t})})},b5=ke(v5,"Migration tools"),ss=({keywords:n,...e})=>{const{checkVisible:t,noResult:r}=wo();return f.jsx(vR,{isVisible:t(n)||r,...e})},Wt={integrations:["advanced","integrations","zapier","slack","unsplash","first promoter","firstpromoter","pintura","disqus","analytics","ulysses","typeform","buffer","plausible","github","webhooks"],migrationtools:["import","export","migrate","substack","substack","migration","medium","wordpress","wp","squarespace"],codeInjection:["advanced","code injection","head","footer"],labs:["advanced","labs","alpha","private","beta","flag","routes","redirect","translation","editor","portal"],history:["advanced","history","log","events","user events","staff","audit","action"],dangerzone:["danger","danger zone","delete","content","delete all content","delete site"]},x5=()=>f.jsxs(ss,{keywords:Object.values(Wt).flat(),title:"Advanced",children:[f.jsx(W_,{keywords:Wt.integrations}),f.jsx(b5,{keywords:Wt.migrationtools}),f.jsx(N_,{keywords:Wt.codeInjection}),f.jsx(f5,{keywords:Wt.labs}),f.jsx(F_,{keywords:Wt.history}),f.jsx(B_,{keywords:Wt.dangerzone})]}),Au="OffersResponseType",bS=Qr({dataType:Au,path:"/offers/",defaultSearchParams:{}}),L6=B2({dataType:Au,path:n=>`/offers/${n}/`}),_6=He({method:"PUT",path:n=>`/offers/${n.id}/`,body:n=>({offers:[n]}),updateQueries:{dataType:Au,emberUpdateType:"createOrUpdate",update:Uf("offers")}}),j6=He({method:"POST",path:()=>"/offers/",body:n=>({offers:[n]}),updateQueries:{dataType:Au,emberUpdateType:"createOrUpdate",update:Vf("offers")}}),Hh="TiersResponseType",Mu=Uc({dataType:Hh,path:"/tiers/",defaultNextPageParams:(n,e)=>{var t;return{...e,page:(((t=n.meta)==null?void 0:t.pagination.next)||1).toString()}},returnData:n=>{const{pages:e}=n,t=e.flatMap(i=>i.tiers),r=e[e.length-1].meta;return{tiers:t,meta:r,isEnd:r?r.pagination.pages===r.pagination.page:!0}}}),B6=He({method:"POST",path:()=>"/tiers/",body:n=>({tiers:[n]}),invalidateQueries:{dataType:Hh}}),$6=He({method:"PUT",path:n=>`/tiers/${n.id}/`,body:n=>({tiers:[n]}),updateQueries:{dataType:Hh,emberUpdateType:"createOrUpdate",update:Uf("tiers")}});function xS(n){return n.filter(e=>e.type==="paid"&&e.active)}function y5(n){return n.filter(e=>e.active)}function w5(n){return n.filter(e=>!e.active)}function Ug(n){const e=new Date,t={timeZone:n},r=navigator.language.startsWith("en")?navigator.language:"en-US";return e.toLocaleString(r,t)}function yS(n=""){let e=new RegExp(/([A-Za-z\u00C0-\u017F]{1})[A-Za-z\u00C0-\u017F]+/,"g"),t=[...n.matchAll(e)];return((t.shift()?.[1]||"")+(t.pop()?.[1]||"")).toUpperCase()}function Vh(n){let r=0;for(let s=0;s<n.length;s++)r=n.charCodeAt(s)+((r<<5)-r);return"hsl("+r%360+", 70%, 40%)"}function Sn(n){return n.toString().replace(/\B(?=(\d{3})+(?!\d))/g,",")}function S5(n){return/^[a-z0-9]{24}$/.test(n)}const C5=[{label:"Free members",value:"status:free",color:"green"},{label:"Paid members",value:"status:-free",color:"pink"}],k5=(n,e)=>{const t=Ku({path:"/tiers/",filterKey:"name",responseKey:"tiers"}),r=Ku({path:"/labels/",filterKey:"name",responseKey:"labels"}),i=Ku({path:"/offers/",filterKey:"name",responseKey:"offers"}),[s,o]=x.useState(null),a=h=>({value:h.id,label:h.name,color:"black"}),l=h=>({value:`label:${h.slug}`,label:h.name,color:"grey"}),c=h=>({value:`offer_redemptions:${h.id}`,label:h.name,color:"black"}),u=async(h,p)=>{const[g,m,v]=await Promise.all([t.loadData(h),r.loadData(h),i.loadData(h)]),b=[{options:C5.filter(({label:y})=>y.toLowerCase().includes(h.toLowerCase()))},{label:"Active Tiers",options:g.filter(({active:y,type:S})=>y&&S!=="free").map(a)||[]},{label:"Archived Tiers",options:g.filter(({active:y})=>!y).map(a)||[]},{label:"Labels",options:m.map(l)||[]},{label:"Offers",options:v.map(c)||[]}];s===null&&d(),p(b.filter(y=>y.options.length>0))},d=async()=>{const h=e?.split(",")||[],p=[],g=[],m=[];for(const b of h)b.startsWith("label:")?g.push(b.replace("label:","")):b.startsWith("offer_redemptions:")?m.push(b.replace("offer_redemptions:","")):S5(b)&&p.push(b);const v=await Promise.all([t.loadInitialValues(p,"id").then(b=>b.map(a)),r.loadInitialValues(g,"slug").then(b=>b.map(l)),i.loadInitialValues(m,"id").then(b=>b.map(c))]).then(b=>b.flat());o(h.map(b=>v.find(y=>y.value===b)))};return x.useEffect(()=>{n==="segment"&&u("",()=>{})},[n]),{loadOptions:sC(u,500),selectedSegments:s,setSelectedSegments:o}},zg=[{label:"Whoever has access to the post",hint:"Free posts to everyone, premium posts sent to paid members",value:"visibility"},{label:"All members",hint:"Everyone who is subscribed to newsletter updates, whether free or paid members",value:"all-members"},{label:"Paid-members only",hint:"People who have a premium subscription",value:"paid-only"},{label:"Specific people",hint:"Only people with any of the selected tiers or labels",value:"segment"},{label:"Usually nobody",hint:"Newsletters are off for new posts, but can be enabled when needed",value:"none"}];function Wg({defaultEmailRecipients:n,defaultEmailRecipientsFilter:e}){return n==="filter"?e==="status:free,status:-free"?"all-members":e==="status:-free"?"paid-only":e===null?"none":"segment":n}const A5=({keywords:n})=>{const{localSettings:e,isEditing:t,saveState:r,handleSave:i,handleCancel:s,updateSetting:o,handleEditingChange:a}=Ot(),[l,c]=Te(e,["editor_default_email_recipients","editor_default_email_recipients_filter"]),[u,d]=x.useState(Wg({defaultEmailRecipients:l,defaultEmailRecipientsFilter:c})),{loadOptions:h,selectedSegments:p,setSelectedSegments:g}=k5(u,c);x.useEffect(()=>{const b=Wg({defaultEmailRecipients:l,defaultEmailRecipientsFilter:c});d(b)},[l,c]);const m=b=>{["visibility","disabled"].includes(b)?(o("editor_default_email_recipients",b),o("editor_default_email_recipients_filter",null)):o("editor_default_email_recipients","filter"),b==="all-members"&&o("editor_default_email_recipients_filter","status:free,status:-free"),b==="paid-only"&&o("editor_default_email_recipients_filter","status:-free"),b==="none"&&o("editor_default_email_recipients_filter",null),d(b),t||a(!0)},v=b=>{if(g(b),b.length){const y=b?.map(({value:S})=>S).join(",");o("editor_default_email_recipients_filter",y)}else o("editor_default_email_recipients_filter",null),d("none");t||a(!0)};return f.jsx(Se,{description:"When you publish new content, who do you usually want to send it to?",isEditing:t,keywords:n,navid:"default-recipients",saveState:r,testId:"default-recipients",title:"Default recipients",hideEditButton:!0,onCancel:s,onEditingChange:a,onSave:i,children:f.jsxs(Ze,{columns:1,children:[f.jsx(yr,{hint:"Who should receive your posts by default?",options:zg,selectedOption:zg.find(b=>b.value===u),testId:"default-recipients-select",title:"Default Newsletter recipients",onSelect:b=>{b&&m(b.value)}}),u==="segment"&&p&&f.jsx(wx,{loadOptions:h,title:"Filter",values:p,async:!0,defaultOptions:!0,onChange:v})]})})},M5=ke(A5,"Default recipients"),I5=({keywords:n})=>{const{settings:e}=Pe(),{mutateAsync:t}=Xr(),{updateRoute:r}=be(),i=vt(),[s,o]=Te(e,["editor_default_email_recipients","members_signup_access"]),a=o==="none",l=async u=>{const d=[{key:"editor_default_email_recipients",value:u.target.checked?"visibility":"disabled"}];u.target.checked||d.push({key:"editor_default_email_recipients_filter",value:null});try{await t(d)}catch(h){i(h)}},c=f.jsx(f.Fragment,{children:f.jsx(Kt,{checked:s!=="disabled",direction:"rtl",onChange:l})});return f.jsx(Se,{customButtons:c,description:"Newsletter features are active, posts can be sent by email",keywords:n,navid:"enable-newsletters",testId:"enable-newsletters",title:"Newsletter sending",children:f.jsx(Ze,{columns:1,values:[{key:"private",value:s!=="disabled"?f.jsxs("div",{className:"w-full",children:[f.jsxs("div",{className:"flex items-center gap-2",children:[f.jsx(ve,{colorClass:"text-green",name:"check",size:"sm"}),f.jsx("span",{children:"Enabled"})]}),a&&f.jsxs(Ob,{className:"mt-6 text-sm",color:"grey",children:["Your ",f.jsx("button",{className:"!underline",type:"button",onClick:()=>{r("members")},children:"Subscription access"})," is set to ‘Nobody’, only existing members will receive newsletters."]})]}):f.jsxs("div",{className:"flex items-center gap-2 text-grey-900",children:[f.jsx(ve,{colorClass:"text-grey-600",name:"mail-block",size:"sm"}),f.jsx("span",{children:"Disabled"})]})}]})})},E5=ke(I5,"Newsletter sending"),wd=[{label:"🇺🇸 US",value:"https://api.mailgun.net/v3"},{label:"🇪🇺 EU",value:"https://api.eu.mailgun.net/v3"}],D5=({keywords:n})=>{const{localSettings:e,isEditing:t,saveState:r,handleSave:i,handleCancel:s,updateSetting:o,handleEditingChange:a}=Ot(),{mutateAsync:l}=Xr(),c=vt(),[u,d,h]=Te(e,["mailgun_base_url","mailgun_domain","mailgun_api_key"]),g=d&&h?[{key:"status",value:f.jsx(cE,{icon:"check-circle",iconColorClass:"text-green",children:"Mailgun is set up"})}]:[{heading:"Status",key:"status",value:"Mailgun is not set up"}],m=f.jsx(Ze,{columns:1,values:g}),v=f.jsxs(f.Fragment,{children:["Find your Mailgun API keys ",f.jsx(dc,{href:"https://app.mailgun.com/settings/api_security",rel:"noopener noreferrer",target:"_blank",children:"here"})]}),b=f.jsx(Ze,{children:f.jsxs("div",{className:"grid grid-cols-[120px_auto] gap-x-3 gap-y-6",children:[f.jsx(yr,{options:wd,selectedOption:wd.find(S=>S.value===u),title:"Mailgun region",onSelect:S=>{o("mailgun_base_url",S?.value||null)}}),f.jsx(tt,{title:"Mailgun domain",value:d,onChange:S=>{o("mailgun_domain",S.target.value)}}),f.jsx("div",{className:"col-span-2",children:f.jsx(tt,{hint:v,title:"Mailgun private API key",type:"password",value:h,onChange:S=>{o("mailgun_api_key",S.target.value)}})})]})}),y=f.jsxs(f.Fragment,{children:["The Mailgun API is used for bulk email newsletter delivery. ",f.jsx(dc,{href:"https://ghost.org/docs/faq/mailgun-newsletters/",target:"_blank",children:"Why is this required?"})]});return f.jsx(Se,{description:y,isEditing:t,keywords:n,navid:"mailgun",saveState:r,testId:"mailgun",title:"Mailgun",onCancel:s,onEditingChange:a,onSave:async()=>{if(!u)try{await l([{key:"mailgun_base_url",value:wd[0].value}])}catch(S){c(S);return}i()},children:t?b:m})},R5=ke(D5,"Mailgun"),qg=({id:n,setRef:e,isDragging:t,style:r,children:i,...s})=>{const{updateRoute:o}=be(),a=()=>{o({route:`newsletters/${n}`})},l=f.jsxs(cu,{ref:e,action:f.jsx(ne,{color:"green","data-testid":"edit-newsletter-button",label:"Edit",link:!0,onClick:a}),className:t?"opacity-75":"",hideActions:!1,style:r,onClick:a,children:[(s.dragHandleAttributes||t)&&f.jsx(Fn,{className:"w-10 !align-middle",children:f.jsx(c1,{className:"h-10",isDragging:t||!1,...s})}),i]});return t?f.jsx(Ni,{children:l}):l},Gg=({newsletter:n})=>{const{updateRoute:e}=be(),t=()=>{e({route:`newsletters/${n.id}`})};return f.jsxs(f.Fragment,{children:[f.jsx(Fn,{className:"w-full",onClick:t,children:f.jsxs("div",{className:"flex grow flex-col",children:[f.jsx("span",{className:"font-medium",children:n.name}),f.jsx("span",{className:"mt-0.5 text-xs leading-tight text-grey-700",children:n.description||"No description"})]})}),f.jsx(Fn,{className:"hidden md:!visible md:!table-cell md:min-w-[11rem]",onClick:t,children:f.jsxs("div",{className:"flex grow flex-col",children:[f.jsx("span",{children:Sn(n.count?.active_members||0)}),f.jsx("span",{className:"mt-0.5 whitespace-nowrap text-xs leading-tight text-grey-700",children:"Subscribers"})]})}),f.jsx(Fn,{className:"hidden md:!visible md:!table-cell md:min-w-[11rem]",onClick:t,children:f.jsxs("div",{className:"flex grow flex-col",children:[f.jsx("span",{children:Sn(n.count?.posts||0)}),f.jsx("span",{className:"mt-0.5 whitespace-nowrap text-xs leading-tight text-grey-700",children:"Delivered"})]})})]})},Kg=({newsletters:n,isLoading:e,isSortable:t,onSort:r})=>e?f.jsx(Ni,{isLoading:!0}):n.length&&t?f.jsx(lR,{container:i=>f.jsx(qg,{...i}),items:n,renderItem:i=>f.jsx(Gg,{newsletter:i}),wrapper:Ni,onMove:(i,s)=>r?.(i,s)}):n.length?f.jsx(Ni,{children:n.map(i=>f.jsx(qg,{id:i.id,children:f.jsx(Gg,{newsletter:i})}))}):f.jsx(ei,{icon:"mail-block",children:"No newsletters found."}),wS=()=>{const[n,e]=x.useState(new URLSearchParams);return x.useEffect(()=>{const r=()=>{const s=window.location.hash.split("?")[1];e(s?new URLSearchParams(s):new URLSearchParams)};return r(),window.addEventListener("hashchange",r),()=>{window.removeEventListener("hashchange",r)}},[]),{getParam:r=>n.get(r)}},Sd=({id:n,children:e})=>{const t=ir(),{updateRoute:r}=be();return f.jsx("button",{className:"text-green",type:"button",onClick:()=>{r(`newsletters/${n}`),t.remove()},children:e})},O5=({keywords:n})=>{const{updateRoute:e}=be(),t=()=>{e("newsletters/new")},[r,i]=x.useState("active-newsletters"),{data:{newsletters:s,meta:o,isEnd:a}={},isLoading:l,fetchNextPage:c}=bb(),{mutateAsync:u}=Q2(),d=Hf(),h=wS().getParam("verifyEmail"),{mutateAsync:p}=eC(),g=vt(),[m,v]=x.useState(s||[]);x.useEffect(()=>{v(s||[])},[s]),x.useEffect(()=>{if(!h||!window.location.href.includes("newsletters"))return;(async()=>{try{const{newsletters:[A],meta:{email_verified:I}={}}=await p({token:h});let D,R;I&&I==="sender_email"?(D="Newsletter email verified",R=f.jsxs(f.Fragment,{children:["Newsletter ",f.jsx(Sd,{id:A.id,children:A.name})," will now be sent from ",f.jsx("strong",{children:A.sender_email}),"."]})):I&&I==="sender_reply_to"?(D="Reply-to address verified",R=f.jsxs(f.Fragment,{children:["Newsletter ",f.jsx(Sd,{id:A.id,children:A.name})," will now use ",f.jsx("strong",{children:A.sender_reply_to})," as the reply-to address."]})):(D="Email address verified",R=f.jsxs(f.Fragment,{children:["Email address for newsletter ",f.jsx(Sd,{id:A.id,children:A.name})," has been changed."]})),Ye.show(Gr,{title:D,prompt:R,okLabel:"Close",cancelLabel:"",onOk:T=>T?.remove()})}catch(A){let I="There was an error verifying your email address. Try again later.";A instanceof $2&&A.message==="Token expired"&&(I="Verification link has expired."),Ye.show(Gr,{title:"Error verifying email address",prompt:I,okLabel:"Close",cancelLabel:"",onOk:D=>D?.remove()}),g(A,{withToast:!1})}})()},[h,g,p]);const b=f.jsx(ne,{className:"mt-[-5px]",color:"clear",label:"Add newsletter",size:"sm",onClick:()=>{t()}}),y=m.filter(k=>k.status==="active").sort((k,A)=>k.sort_order-A.sort_order)||[],S=m.filter(k=>k.status!=="active"),w=async(k,A)=>{const I=y.findIndex(L=>L.id===k),D=y.findIndex(L=>L.id===A)||0,T=ch(y,I,D).map((L,$)=>L.sort_order===$?null:{...L,sort_order:$}).filter(L=>!!L),N=S.map((L,$)=>L.sort_order===$+y.length?null:{...L,sort_order:$}).filter(L=>!!L),P=[...T,...N].sort((L,$)=>L.sort_order-$.sort_order);v(m.map(L=>P.find($=>$.id===L.id)||L)),d.setQueriesData([tC],L=>{if(L)return{...L,pages:L.pages.map($=>({...$,newsletters:$.newsletters.map(q=>P.find(Z=>Z.id===q.id)||q)}))}});for(const L of P)await u(L)},C=[{id:"active-newsletters",title:"Active",contents:f.jsx(Kg,{isLoading:l,newsletters:y,isSortable:!0,onSort:w})},{id:"archived-newsletters",title:"Archived",contents:f.jsx(Kg,{isLoading:l,newsletters:S})}];return f.jsxs(Se,{customButtons:b,description:"Edit details and customize your design",keywords:n,navid:"newsletters",testId:"newsletters",title:"Newsletters",children:[f.jsx(Gn,{selectedTab:r,tabs:C,onTabChange:i}),a===!1&&f.jsx(ne,{label:`Load more (showing ${m?.length||0}/${o?.pagination.total||0} newsletters)`,link:!0,onClick:()=>c()})]})},T5=ke(O5,"Newsletters"),gr={enableNewsletters:["emails","newsletters","newsletter sending","enable","disable","turn on","turn off"],newsletters:["newsletters","emails","design","customization"],defaultRecipients:["newsletters","default recipients","emails"],mailgun:["mailgun","emails","newsletters"],newslettersNavMenu:["emails","newsletters","newsletter sending","enable","disable","turn on","turn off","design","customization","default recipients","emails","mailgun","tips","donations","one time","payment"]},N5=()=>{const{settings:n,config:e}=Pe(),[t]=Te(n,["editor_default_email_recipients"]);return f.jsxs(ss,{keywords:Object.values(gr).flat(),title:"Email newsletter",children:[f.jsx(E5,{keywords:gr.enableNewsletters}),t!=="disabled"&&f.jsxs(f.Fragment,{children:[f.jsx(M5,{keywords:gr.defaultRecipients}),f.jsx(T5,{keywords:gr.newsletters}),!e.mailgunIsConfigured&&f.jsx(R5,{keywords:gr.mailgun})]})]})},P5=({keywords:n})=>{const{localSettings:e,isEditing:t,saveState:r,handleSave:i,handleCancel:s,updateSetting:o,handleEditingChange:a}=Ot(),[l,c,u,d,h,p]=Te(e,["email_track_opens","email_track_clicks","members_track_sources","outbound_link_tagging","web_analytics_configured","web_analytics_enabled"]),g=F2(e,"email_track_clicks"),[m,v]=x.useState(!1),b=Co(),{updateRoute:y}=be();x.useEffect(()=>{b?.isLimited("limitAnalytics")?b.errorIfWouldGoOverLimit("limitAnalytics").catch(C=>{C instanceof So&&v(!0)}):v(!1)},[b]);const S=(C,k)=>{o(C,k.target.checked),a(!0)},w=f.jsxs(Ze,{className:"analytics-settings !gap-y-0",columns:1,children:[f.jsx(Kt,{checked:p,direction:"rtl",disabled:!h||m,gap:"gap-0",hint:h?f.jsxs(f.Fragment,{children:["Cookie-free, first party traffic analytics for your site, powered by ",f.jsx("a",{className:"text-green",href:"https://ghost.org/integrations/tinybird",rel:"noopener noreferrer",target:"_blank",children:"Tinybird"})]}):f.jsx(f.Fragment,{children:"Cookie-free, first party traffic analytics for your site"}),label:"Web analytics",labelClasses:"py-4 w-full",onChange:C=>{S("web_analytics",C)}}),m?f.jsx("div",{className:"mb-5 rounded-md border border-grey-200 bg-grey-50 px-4 py-2.5 text-sm dark:border-grey-900 dark:bg-grey-925",children:f.jsx("span",{className:"flex items-start gap-2",children:f.jsxs("span",{children:["Web analytics is available on the Publisher plan and above. ",f.jsx("span",{className:"cursor-pointer text-green",onClick:()=>y({route:"/pro",isExternal:!0}),children:"Upgrade now →"})]})})}):h?f.jsx(gt,{className:"border-grey-200 dark:border-grey-900"}):f.jsx("div",{className:"mb-5 rounded-md border border-grey-200 bg-grey-50 px-4 py-2.5 text-sm dark:border-grey-900 dark:bg-grey-925",children:f.jsx("span",{className:"flex items-start gap-2",children:f.jsxs("span",{children:["Web analytics in Ghost is powered by ",f.jsx("a",{className:"text-green",href:"https://tbrd.co/ghost",rel:"noopener noreferrer",target:"_blank",children:"Tinybird"})," and requires configuration to start collecting data. ",f.jsx("a",{className:"text-green",href:"https://docs.ghost.org/install/docker#tinybird-integration",rel:"noopener noreferrer",target:"_blank",children:"Get started →"})]})})}),f.jsx(Kt,{checked:l,direction:"rtl",gap:"gap-0",hint:"Record when a member opens an email",label:"Newsletter opens",labelClasses:"py-4 w-full",onChange:C=>{S("email_track_opens",C)}}),f.jsx(gt,{className:"border-grey-200 dark:border-grey-900"}),f.jsx(Kt,{checked:c,direction:"rtl",disabled:g,gap:"gap-0",hint:"Record when a member clicks on any link in an email",label:"Newsletter clicks",labelClasses:"py-4 w-full",onChange:C=>{S("email_track_clicks",C)}}),f.jsx(gt,{className:"border-grey-200 dark:border-grey-900"}),f.jsx(Kt,{checked:u,direction:"rtl",gap:"gap-0",hint:"Track the traffic sources and posts that drive the most member growth",label:"Member sources",labelClasses:"py-4 w-full",onChange:C=>{S("members_track_sources",C)}}),f.jsx(gt,{className:"border-grey-200 dark:border-grey-900"}),f.jsx(Kt,{checked:d,direction:"rtl",gap:"gap-0",hint:"Make it easier for other sites to track the traffic you send them in their analytics",label:"Outbound link tagging",labelClasses:"py-4 w-full",onChange:C=>{S("outbound_link_tagging",C)}})]});return f.jsxs(Se,{description:"Decide what data you collect across your publication",isEditing:t,keywords:n,navid:"analytics",saveState:r,testId:"analytics",title:"Analytics",hideEditButton:!0,onCancel:s,onEditingChange:a,onSave:i,children:[w,f.jsx("div",{className:"items-center-mt-1 flex justify-between",children:f.jsx("a",{className:"text-sm text-green",href:"https://ghost.org/help/post-analytics/",rel:"noopener noreferrer",target:"_blank",children:"Learn about analytics"})})]})},L5=ke(P5,"Analytics"),_5=({keywords:n})=>{const{siteData:e}=Pe(),{localSettings:t,isEditing:r,saveState:i,handleSave:s,handleCancel:o,updateSetting:a,handleEditingChange:l,errors:c,clearError:u}=Ot({onValidate:()=>d&&!h?{password:"Enter a password"}:{}}),[d,h,p]=Te(t,["is_private","password","public_hash"]),g=w=>{a("is_private",w.target.checked)},m=w=>{a("password",w.target.value)},v=`${e.url.replace(/\/$/,"")}/${p}/rss`,b=f.jsxs(f.Fragment,{children:["A private RSS feed is available at ",f.jsx("a",{className:"break-all text-green",href:v,rel:"noopener noreferrer",target:"_blank",children:v})]}),y=f.jsx(Ze,{values:[{key:"private",value:d?f.jsxs("div",{className:"w-full",children:[f.jsxs("div",{className:"flex items-center gap-1",children:[f.jsx(ve,{colorClass:"text-yellow",name:"lock-locked",size:"sm"}),f.jsx("div",{className:"leading-supertight",children:"Your site is password protected"})]}),b&&f.jsxs("div",{className:"mt-7 w-full",children:[f.jsx(gt,{}),f.jsx(An,{children:b})]})]}):f.jsxs("div",{className:"flex items-center gap-1 text-grey-900 dark:text-grey-400",children:[f.jsx(ve,{colorClass:"text-black dark:text-white",name:"lock-unlocked",size:"sm"}),f.jsx("span",{children:"Your site is not password protected"})]})}]}),S=f.jsxs(Ze,{children:[f.jsx(Kt,{checked:d,direction:"rtl",hint:"All search engine optimization and social features will be disabled.",label:"Enable password protection",onChange:g}),d&&f.jsx(tt,{error:!!c.password,hint:c.password,placeholder:"Enter password",title:"Site password",value:h,hideTitle:!0,onChange:m,onKeyDown:()=>u("password")})]});return f.jsx(Se,{description:"Enable protection with a simple shared password.",isEditing:r,keywords:n,navid:"locksite",saveState:i,testId:"locksite",title:"Make site private",onCancel:o,onEditingChange:l,onSave:s,children:r?S:y})},j5=ke(_5,"Make site private"),B5=[{code:"af",label:"Afrikaans"},{code:"ar",label:"Arabic"},{code:"bg",label:"Bulgarian"},{code:"bn",label:"Bengali"},{code:"bs",label:"Bosnian"},{code:"ca",label:"Catalan"},{code:"cs",label:"Czech"},{code:"da",label:"Danish"},{code:"de",label:"German"},{code:"de-CH",label:"Swiss German"},{code:"el",label:"Greek"},{code:"en",label:"English"},{code:"eo",label:"Esperanto"},{code:"es",label:"Spanish"},{code:"et",label:"Estonian"},{code:"eu",label:"Basque"},{code:"fa",label:"Persian/Farsi"},{code:"fi",label:"Finnish"},{code:"fr",label:"French"},{code:"gd",label:"Gaelic (Scottish)"},{code:"he",label:"Hebrew"},{code:"hi",label:"Hindi"},{code:"hr",label:"Croatian"},{code:"hu",label:"Hungarian"},{code:"id",label:"Indonesian"},{code:"is",label:"Icelandic"},{code:"it",label:"Italian"},{code:"ja",label:"Japanese"},{code:"ko",label:"Korean"},{code:"kz",label:"Kazakh"},{code:"lt",label:"Lithuanian"},{code:"lv",label:"Latvian"},{code:"mk",label:"Macedonian"},{code:"mn",label:"Mongolian"},{code:"ms",label:"Malay"},{code:"nb",label:"Norwegian Bokmål"},{code:"ne",label:"Nepali"},{code:"nl",label:"Dutch"},{code:"nn",label:"Norwegian Nynorsk"},{code:"pa",label:"Punjabi"},{code:"pl",label:"Polish"},{code:"pt",label:"Portuguese"},{code:"pt-BR",label:"Portuguese (Brazil)"},{code:"ro",label:"Romanian"},{code:"ru",label:"Russian"},{code:"si",label:"Sinhala"},{code:"sk",label:"Slovak"},{code:"sl",label:"Slovenian"},{code:"sq",label:"Albanian"},{code:"sr",label:"Serbian"},{code:"sr-Cyrl",label:"Serbian (Cyrillic)"},{code:"sv",label:"Swedish"},{code:"sw",label:"Swahili"},{code:"ta",label:"Tamil"},{code:"th",label:"Thai"},{code:"tr",label:"Turkish"},{code:"uk",label:"Ukrainian"},{code:"ur",label:"Urdu"},{code:"uz",label:"Uzbek"},{code:"vi",label:"Vietnamese"},{code:"zh",label:"Chinese"},{code:"zh-Hant",label:"Traditional Chinese"}],$5=new Set(["en-gb-oed","i-ami","i-bnn","i-default","i-enochian","i-hak","i-klingon","i-lux","i-mingo","i-navajo","i-pwn","i-tao","i-tay","i-tsu","sgn-be-fr","sgn-be-nl","sgn-ch-de","art-lojban","cel-gaulish","no-bok","no-nyn","zh-guoyu","zh-hakka","zh-min","zh-min-nan","zh-xiang"]),Zg=n=>{const e="Invalid locale format. Examples: en, pt-BR, zh-Hant, sr-Cyrl, x-private";if(!n)return"Enter a value";const t=n.trim();if(!t)return e;if($5.has(t.toLowerCase()))return null;if(!/^[a-z0-9]+(-[a-z0-9]+)*$/i.test(t))return e;const r=t.split("-");if(r[0].toLowerCase()==="x"){if(r.length<2)return e;for(let l=1;l<r.length;l++)if(r[l].length<1||r[l].length>8)return e;return null}let i=0;const s=r[i];if(!/^[a-z]{2,3}$/i.test(s))return e;for(i+=1,i<r.length&&/^[a-z]{4}$/i.test(r[i])&&(i+=1),i<r.length&&/^([a-z]{2}|[0-9]{3})$/i.test(r[i])&&(i+=1);i<r.length&&/^([a-z0-9]{5,8}|[0-9][a-z0-9]{3})$/i.test(r[i]);)i+=1;for(;i<r.length&&/^[0-9a-wy-z]$/i.test(r[i]);){if(i+=1,i>=r.length||!/^[a-z0-9]{2,8}$/i.test(r[i]))return e;for(i+=1;i<r.length&&/^[a-z0-9]{2,8}$/i.test(r[i]);)i+=1}if(i<r.length&&r[i].toLowerCase()==="x"){if(i+=1,i>=r.length)return e;for(;i<r.length;){if(!/^[a-z0-9]+$/i.test(r[i]))return e;i+=1}}if(i!==r.length)return e;const o=r.findIndex(l=>l.toLowerCase()==="x"),a=["english","french","spanish","german","italian","chinese","japanese","korean","russian","arabic","united","states","kingdom","traditional","simplified"];for(let l=0;l<r.length;l++){const c=r[l];if(!["i","x","sgn","art","cel","no","zh"].includes(c.toLowerCase())&&!(o!==-1&&l>o)&&(c.length>16||a.includes(c.toLowerCase())))return e}return null},F5=({keywords:n})=>{const{localSettings:e,isEditing:t,saveState:r,handleSave:i,handleCancel:s,updateSetting:o,errors:a,handleEditingChange:l}=Ot({onValidate:()=>{const p=Zg(c);return p?{publicationLanguage:p}:{}}}),[c]=Te(e,["locale"]),u=Y.useMemo(()=>B5.map(g=>({value:g.code,label:`${g.label} (${g.code})`})),[]),d=p=>{o("locale",p),t||l(!0)},h=f.jsxs(f.Fragment,{children:["Default: English (",f.jsx("strong",{children:"en"}),"); find out more about",f.jsx("a",{className:"text-green-400",href:"https://ghost.org/docs/faq/translation/",rel:"noopener noreferrer",target:"_blank",children:" using Ghost in other languages"})]});return f.jsx(Se,{description:"Set the language/locale which is used on your site",isEditing:t,keywords:n,navid:"publication-language",saveState:r,testId:"publication-language",title:"Publication Language",hideEditButton:!0,onCancel:s,onEditingChange:l,onSave:i,children:f.jsx(Ze,{columns:1,children:f.jsx(mI,{defaultListValue:"en",error:!!a.publicationLanguage,hint:a.publicationLanguage||h,options:u,otherHint:"Enter a custom locale code.",otherPlaceholder:"e.g. pt-BR, sr-Cyrl, en",selectedValue:c,testId:"locale-select",title:"Site language",validate:Zg,isSearchable:!0,onSelect:d})})})},H5=ke(F5,"Publication language"),V5=He({method:"POST",path:()=>"/images/upload/",body:({file:n})=>{const e=new FormData;return e.append("file",n),e.append("purpose","image"),e}}),Cd=n=>n.images[0].url,U5=({title:n,description:e,icon:t,url:r})=>{const i=r?.replace(/\/$/,""),s=i?.replace(/^https?:\/\//,"").replace(/\/?$/,"");return f.jsx("div",{children:f.jsxs("div",{className:"-mx-5 -mb-5 overflow-hidden rounded-b-xl bg-grey-50 px-5 pt-2 md:-mx-7 md:-mb-7 md:px-7 md:pt-7 dark:bg-grey-950",children:[f.jsx("div",{className:"-mt-4 mb-2 text-xs uppercase text-grey-500 dark:text-grey-800",children:"Preview"}),f.jsxs("div",{className:"rounded-t-sm bg-white px-5 py-3 shadow-lg dark:bg-grey-975",children:[f.jsxs("div",{className:"mt-3 flex items-center",children:[f.jsx("div",{children:f.jsx(yR,{className:"mr-7 h-7"})}),f.jsx("div",{className:"grow",children:f.jsx("div",{className:"flex w-full items-center justify-end rounded-full bg-white p-3 px-4 shadow dark:bg-grey-900",children:f.jsx(ve,{className:"stroke-[2px] text-blue-600",name:"magnifying-glass",size:"sm"})})})]}),f.jsxs("div",{className:"mt-4 flex items-center gap-2 border-t border-grey-200 pt-4 dark:border-grey-900",children:[f.jsx("div",{className:"flex size-7 items-center justify-center rounded-full bg-grey-200 dark:bg-grey-700",style:{backgroundImage:t?`url(${t})`:"none",backgroundSize:"contain"}}),f.jsxs("div",{className:"flex flex-col text-sm",children:[f.jsx("span",{children:s}),f.jsx("span",{className:"-mt-0.5 inline-block text-xs text-grey-600",children:i})]})]}),f.jsxs("div",{className:"mt-1 flex flex-col",children:[f.jsx("span",{className:"text-lg text-[#1a0dab] dark:text-blue",children:n}),f.jsx("span",{className:"text-sm text-grey-900 dark:text-grey-700",children:e})]})]})]})})},z5=({keywords:n})=>{const{localSettings:e,saveState:t,siteData:r,focusRef:i,isEditing:s,handleSave:o,handleCancel:a,handleEditingChange:l,updateSetting:c}=Ot(),u=vt(),{mutateAsync:d}=V5(),h=mS(),[p,g,m,v,b,y,S,w,C,k]=Te(e,["meta_title","meta_description","title","description","og_title","og_description","og_image","twitter_title","twitter_description","twitter_image"]).map(Q=>Q||""),[A,I]=x.useState("metadata"),D=Q=>ce=>{c(Q,ce.target.value),s||l(!0)},R=Q=>async ce=>{try{const Ae=Cd(await d({file:ce}));c(Q,Ae),s||l(!0)}catch(Ae){const Be=Ae;Be.response.status===415&&(Be.message="Unsupported file type"),u(Be)}},T=Q=>()=>{c(Q,""),s||l(!0)},N=D("meta_title"),P=D("meta_description"),L=D("og_title"),$=D("og_description"),q=R("og_image"),Z=T("og_image"),ae=D("twitter_title"),ee=D("twitter_description"),de=R("twitter_image"),ge=T("twitter_image"),K=f.jsxs(f.Fragment,{children:[f.jsxs(Ze,{className:"my-6 gap-3",children:[f.jsx(tt,{hint:"Recommended: 70 characters",inputRef:i,maxLength:300,placeholder:m,title:"Meta title",value:p,onChange:N}),f.jsx(tt,{hint:"Recommended: 156 characters",maxLength:500,placeholder:v,title:"Meta description",value:g,onChange:P})]}),f.jsx(U5,{description:g||v,icon:r?.icon,title:p||m,url:r?.url})]}),fe=f.jsxs("div",{className:"mt-6 md:mx-[52px]",children:[f.jsxs("div",{className:"mb-4 flex items-center gap-2",children:[f.jsx("div",{children:f.jsx(xR,{className:"size-10"})}),f.jsxs("div",{children:[f.jsx("div",{className:"mb-1 font-semibold leading-none text-grey-900 dark:text-grey-300",children:m}),f.jsx("div",{className:"leading-none text-grey-700",children:"2h"})]})]}),f.jsxs("div",{children:[f.jsx("div",{className:"mb-2 h-3 w-full rounded bg-grey-200 dark:bg-grey-900"}),f.jsx("div",{className:"mb-4 h-3 w-3/5 rounded bg-grey-200 dark:bg-grey-900"}),f.jsxs(Ze,{className:"overflow-hidden rounded-md border border-grey-300 dark:border-grey-900",children:[f.jsx(ep,{fileUploadClassName:"flex cursor-pointer items-center justify-center rounded rounded-b-none border border-grey-100 border-b-0 bg-grey-75 p-3 text-sm font-semibold text-grey-800 hover:text-black dark:border-grey-900",height:"300px",id:"facebook-image",imageURL:S,pintura:{isEnabled:h.isEnabled,openEditor:async()=>h.openEditor({image:S||"",handleSave:async Q=>{const ce=Cd(await d({file:Q}));c("og_image",ce)}})},onDelete:Z,onUpload:q,children:"Upload Facebook image"}),f.jsxs("div",{className:"mt-5 flex flex-col gap-x-6 gap-y-7 px-4 pb-7",children:[f.jsx(tt,{maxLength:300,placeholder:m,title:"Facebook title",value:b,onChange:L}),f.jsx(tt,{maxLength:300,placeholder:v,title:"Facebook description",value:y,onChange:$})]})]})]})]}),re=f.jsxs("div",{className:"mt-6 flex flex-col gap-3 md:flex-row",children:[f.jsx("div",{className:"pt-1",children:f.jsx(wR,{className:"-mb-1 size-10"})}),f.jsxs("div",{className:"w-full md:mr-[52px]",children:[f.jsxs("div",{className:"mb-2",children:[f.jsx("span",{className:"mr-1 font-semibold text-grey-900 dark:text-grey-300",children:m}),f.jsx("span",{className:"text-grey-700",children:"· 2h"})]}),f.jsx("div",{className:"mb-2 h-3 w-full rounded bg-grey-200 dark:bg-grey-900"}),f.jsx("div",{className:"mb-4 h-3 w-3/5 rounded bg-grey-200 dark:bg-grey-900"}),f.jsxs(Ze,{className:"overflow-hidden rounded-md border border-grey-300 dark:border-grey-900",children:[f.jsx(ep,{fileUploadClassName:"flex cursor-pointer items-center justify-center rounded rounded-b-none border border-grey-100 border-b-0 bg-grey-75 p-3 text-sm font-semibold text-grey-800 hover:text-black dark:border-grey-900",height:"300px",id:"twitter-image",imageURL:k,pintura:{isEnabled:h.isEnabled,openEditor:async()=>h.openEditor({image:k||"",handleSave:async Q=>{const ce=Cd(await d({file:Q}));c("twitter_image",ce)}})},onDelete:ge,onUpload:de,children:"Upload X image"}),f.jsxs("div",{className:"mt-6 flex flex-col gap-x-6 gap-y-7 px-4 pb-7",children:[f.jsx(tt,{maxLength:300,placeholder:m,title:"X title",value:w,onChange:ae}),f.jsx(tt,{maxLength:300,placeholder:v,title:"X description",value:C,onChange:ee})]})]})]})]}),ue=[{id:"metadata",title:"Search",contents:K},{id:"twitter",title:"X card",contents:re},{id:"facebook",title:"Facebook card",contents:fe}];return f.jsx(Se,{description:"Extra content for search engines and social accounts",isEditing:s,keywords:n,navid:"metadata",saveState:t,testId:"seometa",title:"Meta data",hideEditButton:!0,onCancel:a,onEditingChange:l,onSave:o,children:f.jsx(Gn,{selectedTab:A,tabs:ue,testId:"seo-tabview",onTabChange:I})})},W5=ke(z5,"SEO meta");var ea={exports:{}},ta={exports:{}},na={exports:{}},Yg;function U(){return Yg||(Yg=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=r;function t(i){"@babel/helpers - typeof";return t=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(s){return typeof s}:function(s){return s&&typeof Symbol=="function"&&s.constructor===Symbol&&s!==Symbol.prototype?"symbol":typeof s},t(i)}function r(i){var s=typeof i=="string"||i instanceof String;if(!s){var o=t(i);throw i===null?o="null":o==="object"&&(o=i.constructor.name),new TypeError("Expected a string but received a ".concat(o))}}n.exports=e.default,n.exports.default=e.default})(na,na.exports)),na.exports}var Jg;function Uh(){return Jg||(Jg=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=r(U());function r(s){return s&&s.__esModule?s:{default:s}}function i(s){return(0,t.default)(s),s=Date.parse(s),isNaN(s)?null:new Date(s)}n.exports=e.default,n.exports.default=e.default})(ta,ta.exports)),ta.exports}var ra={exports:{}},li={},Xe={},Xg;function ko(){if(Xg)return Xe;Xg=1,Object.defineProperty(Xe,"__esModule",{value:!0}),Xe.farsiLocales=Xe.englishLocales=Xe.dotDecimal=Xe.decimal=Xe.commaDecimal=Xe.bengaliLocales=Xe.arabicLocales=Xe.alphanumeric=Xe.alpha=void 0;for(var n=Xe.alpha={"en-US":/^[A-Z]+$/i,"az-AZ":/^[A-VXYZÇƏĞİıÖŞÜ]+$/i,"bg-BG":/^[А-Я]+$/i,"cs-CZ":/^[A-ZÁČĎÉĚÍŇÓŘŠŤÚŮÝŽ]+$/i,"da-DK":/^[A-ZÆØÅ]+$/i,"de-DE":/^[A-ZÄÖÜß]+$/i,"el-GR":/^[Α-ώ]+$/i,"es-ES":/^[A-ZÁÉÍÑÓÚÜ]+$/i,"fa-IR":/^[ابپتثجچحخدذرزژسشصضطظعغفقکگلمنوهی]+$/i,"fi-FI":/^[A-ZÅÄÖ]+$/i,"fr-FR":/^[A-ZÀÂÆÇÉÈÊËÏÎÔŒÙÛÜŸ]+$/i,"it-IT":/^[A-ZÀÉÈÌÎÓÒÙ]+$/i,"ja-JP":/^[ぁ-んァ-ヶヲ-゚一-龠ー・。、]+$/i,"nb-NO":/^[A-ZÆØÅ]+$/i,"nl-NL":/^[A-ZÁÉËÏÓÖÜÚ]+$/i,"nn-NO":/^[A-ZÆØÅ]+$/i,"hu-HU":/^[A-ZÁÉÍÓÖŐÚÜŰ]+$/i,"pl-PL":/^[A-ZĄĆĘŚŁŃÓŻŹ]+$/i,"pt-PT":/^[A-ZÃÁÀÂÄÇÉÊËÍÏÕÓÔÖÚÜ]+$/i,"ru-RU":/^[А-ЯЁ]+$/i,"kk-KZ":/^[А-ЯЁ\u04D8\u04B0\u0406\u04A2\u0492\u04AE\u049A\u04E8\u04BA]+$/i,"sl-SI":/^[A-ZČĆĐŠŽ]+$/i,"sk-SK":/^[A-ZÁČĎÉÍŇÓŠŤÚÝŽĹŔĽÄÔ]+$/i,"sr-RS@latin":/^[A-ZČĆŽŠĐ]+$/i,"sr-RS":/^[А-ЯЂЈЉЊЋЏ]+$/i,"sv-SE":/^[A-ZÅÄÖ]+$/i,"th-TH":/^[ก-๐\s]+$/i,"tr-TR":/^[A-ZÇĞİıÖŞÜ]+$/i,"uk-UA":/^[А-ЩЬЮЯЄIЇҐі]+$/i,"vi-VN":/^[A-ZÀÁẠẢÃÂẦẤẬẨẪĂẰẮẶẲẴĐÈÉẸẺẼÊỀẾỆỂỄÌÍỊỈĨÒÓỌỎÕÔỒỐỘỔỖƠỜỚỢỞỠÙÚỤỦŨƯỪỨỰỬỮỲÝỴỶỸ]+$/i,"ko-KR":/^[ㄱ-ㅎㅏ-ㅣ가-힣]*$/,"ku-IQ":/^[ئابپتجچحخدرڕزژسشعغفڤقکگلڵمنوۆھەیێيطؤثآإأكضصةظذ]+$/i,ar:/^[ءآأؤإئابةتثجحخدذرزسشصضطظعغفقكلمنهوىيًٌٍَُِّْٰ]+$/,he:/^[א-ת]+$/,fa:/^['آاءأؤئبپتثجچحخدذرزژسشصضطظعغفقکگلمنوهةی']+$/i,bn:/^['ঀঁংঃঅআইঈউঊঋঌএঐওঔকখগঘঙচছজঝঞটঠডঢণতথদধনপফবভমযরলশষসহ়ঽািীুূৃৄেৈোৌ্ৎৗড়ঢ়য়ৠৡৢৣৰৱ৲৳৴৵৶৷৸৹৺৻']+$/,eo:/^[ABCĈD-GĜHĤIJĴK-PRSŜTUŬVZ]+$/i,"hi-IN":/^[\u0900-\u0961]+[\u0972-\u097F]*$/i,"si-LK":/^[\u0D80-\u0DFF]+$/},e=Xe.alphanumeric={"en-US":/^[0-9A-Z]+$/i,"az-AZ":/^[0-9A-VXYZÇƏĞİıÖŞÜ]+$/i,"bg-BG":/^[0-9А-Я]+$/i,"cs-CZ":/^[0-9A-ZÁČĎÉĚÍŇÓŘŠŤÚŮÝŽ]+$/i,"da-DK":/^[0-9A-ZÆØÅ]+$/i,"de-DE":/^[0-9A-ZÄÖÜß]+$/i,"el-GR":/^[0-9Α-ω]+$/i,"es-ES":/^[0-9A-ZÁÉÍÑÓÚÜ]+$/i,"fi-FI":/^[0-9A-ZÅÄÖ]+$/i,"fr-FR":/^[0-9A-ZÀÂÆÇÉÈÊËÏÎÔŒÙÛÜŸ]+$/i,"it-IT":/^[0-9A-ZÀÉÈÌÎÓÒÙ]+$/i,"ja-JP":/^[0-90-9ぁ-んァ-ヶヲ-゚一-龠ー・。、]+$/i,"hu-HU":/^[0-9A-ZÁÉÍÓÖŐÚÜŰ]+$/i,"nb-NO":/^[0-9A-ZÆØÅ]+$/i,"nl-NL":/^[0-9A-ZÁÉËÏÓÖÜÚ]+$/i,"nn-NO":/^[0-9A-ZÆØÅ]+$/i,"pl-PL":/^[0-9A-ZĄĆĘŚŁŃÓŻŹ]+$/i,"pt-PT":/^[0-9A-ZÃÁÀÂÄÇÉÊËÍÏÕÓÔÖÚÜ]+$/i,"ru-RU":/^[0-9А-ЯЁ]+$/i,"kk-KZ":/^[0-9А-ЯЁ\u04D8\u04B0\u0406\u04A2\u0492\u04AE\u049A\u04E8\u04BA]+$/i,"sl-SI":/^[0-9A-ZČĆĐŠŽ]+$/i,"sk-SK":/^[0-9A-ZÁČĎÉÍŇÓŠŤÚÝŽĹŔĽÄÔ]+$/i,"sr-RS@latin":/^[0-9A-ZČĆŽŠĐ]+$/i,"sr-RS":/^[0-9А-ЯЂЈЉЊЋЏ]+$/i,"sv-SE":/^[0-9A-ZÅÄÖ]+$/i,"th-TH":/^[ก-๙\s]+$/i,"tr-TR":/^[0-9A-ZÇĞİıÖŞÜ]+$/i,"uk-UA":/^[0-9А-ЩЬЮЯЄIЇҐі]+$/i,"ko-KR":/^[0-9ㄱ-ㅎㅏ-ㅣ가-힣]*$/,"ku-IQ":/^[٠١٢٣٤٥٦٧٨٩0-9ئابپتجچحخدرڕزژسشعغفڤقکگلڵمنوۆھەیێيطؤثآإأكضصةظذ]+$/i,"vi-VN":/^[0-9A-ZÀÁẠẢÃÂẦẤẬẨẪĂẰẮẶẲẴĐÈÉẸẺẼÊỀẾỆỂỄÌÍỊỈĨÒÓỌỎÕÔỒỐỘỔỖƠỜỚỢỞỠÙÚỤỦŨƯỪỨỰỬỮỲÝỴỶỸ]+$/i,ar:/^[٠١٢٣٤٥٦٧٨٩0-9ءآأؤإئابةتثجحخدذرزسشصضطظعغفقكلمنهوىيًٌٍَُِّْٰ]+$/,he:/^[0-9א-ת]+$/,fa:/^['0-9آاءأؤئبپتثجچحخدذرزژسشصضطظعغفقکگلمنوهةی۱۲۳۴۵۶۷۸۹۰']+$/i,bn:/^['ঀঁংঃঅআইঈউঊঋঌএঐওঔকখগঘঙচছজঝঞটঠডঢণতথদধনপফবভমযরলশষসহ়ঽািীুূৃৄেৈোৌ্ৎৗড়ঢ়য়ৠৡৢৣ০১২৩৪৫৬৭৮৯ৰৱ৲৳৴৵৶৷৸৹৺৻']+$/,eo:/^[0-9ABCĈD-GĜHĤIJĴK-PRSŜTUŬVZ]+$/i,"hi-IN":/^[\u0900-\u0963]+[\u0966-\u097F]*$/i,"si-LK":/^[0-9\u0D80-\u0DFF]+$/},t=Xe.decimal={"en-US":".",ar:"٫"},r=Xe.englishLocales=["AU","GB","HK","IN","NZ","ZA","ZM"],i,s=0;s<r.length;s++)i="en-".concat(r[s]),n[i]=n["en-US"],e[i]=e["en-US"],t[i]=t["en-US"];for(var o=Xe.arabicLocales=["AE","BH","DZ","EG","IQ","JO","KW","LB","LY","MA","QM","QA","SA","SD","SY","TN","YE"],a,l=0;l<o.length;l++)a="ar-".concat(o[l]),n[a]=n.ar,e[a]=e.ar,t[a]=t.ar;for(var c=Xe.farsiLocales=["IR","AF"],u,d=0;d<c.length;d++)u="fa-".concat(c[d]),e[u]=e.fa,t[u]=t.ar;for(var h=Xe.bengaliLocales=["BD","IN"],p,g=0;g<h.length;g++)p="bn-".concat(h[g]),n[p]=n.bn,e[p]=e.bn,t[p]=t["en-US"];for(var m=Xe.dotDecimal=["ar-EG","ar-LB","ar-LY"],v=Xe.commaDecimal=["bg-BG","cs-CZ","da-DK","de-DE","el-GR","en-ZM","eo","es-ES","fr-CA","fr-FR","id-ID","it-IT","ku-IQ","hi-IN","hu-HU","nb-NO","nn-NO","nl-NL","pl-PL","pt-PT","ru-RU","kk-KZ","si-LK","sl-SI","sr-RS@latin","sr-RS","sv-SE","tr-TR","uk-UA","vi-VN"],b=0;b<m.length;b++)t[m[b]]=t["en-US"];for(var y=0;y<v.length;y++)t[v[y]]=",";return n["fr-CA"]=n["fr-FR"],e["fr-CA"]=e["fr-FR"],n["pt-BR"]=n["pt-PT"],e["pt-BR"]=e["pt-PT"],t["pt-BR"]=t["pt-PT"],n["pl-Pl"]=n["pl-PL"],e["pl-Pl"]=e["pl-PL"],t["pl-Pl"]=t["pl-PL"],n["fa-AF"]=n.fa,Xe}var Qg;function SS(){if(Qg)return li;Qg=1,Object.defineProperty(li,"__esModule",{value:!0}),li.default=r,li.locales=void 0;var n=t(U()),e=ko();function t(i){return i&&i.__esModule?i:{default:i}}function r(i,s){(0,n.default)(i),s=s||{};var o=new RegExp("^(?:[-+])?(?:[0-9]+)?(?:\\".concat(s.locale?e.decimal[s.locale]:".","[0-9]*)?(?:[eE][\\+\\-]?(?:[0-9]+))?$"));if(i===""||i==="."||i===","||i==="-"||i==="+")return!1;var a=parseFloat(i.replace(",","."));return o.test(i)&&(!s.hasOwnProperty("min")||a>=s.min)&&(!s.hasOwnProperty("max")||a<=s.max)&&(!s.hasOwnProperty("lt")||a<s.lt)&&(!s.hasOwnProperty("gt")||a>s.gt)}return li.locales=Object.keys(e.decimal),li}var e0;function CS(){return e0||(e0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=r(SS());function r(s){return s&&s.__esModule?s:{default:s}}function i(s){return(0,t.default)(s)?parseFloat(s):NaN}n.exports=e.default,n.exports.default=e.default})(ra,ra.exports)),ra.exports}var ia={exports:{}},t0;function q5(){return t0||(t0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=r(U());function r(s){return s&&s.__esModule?s:{default:s}}function i(s,o){return(0,t.default)(s),parseInt(s,o||10)}n.exports=e.default,n.exports.default=e.default})(ia,ia.exports)),ia.exports}var sa={exports:{}},n0;function G5(){return n0||(n0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=r(U());function r(s){return s&&s.__esModule?s:{default:s}}function i(s,o){return(0,t.default)(s),o?s==="1"||/^true$/i.test(s):s!=="0"&&!/^false$/i.test(s)&&s!==""}n.exports=e.default,n.exports.default=e.default})(sa,sa.exports)),sa.exports}var oa={exports:{}},r0;function K5(){return r0||(r0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=r(U());function r(s){return s&&s.__esModule?s:{default:s}}function i(s,o){return(0,t.default)(s),s===o}n.exports=e.default,n.exports.default=e.default})(oa,oa.exports)),oa.exports}var aa={exports:{}},la={exports:{}},i0;function kS(){return i0||(i0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=r;function t(i){"@babel/helpers - typeof";return t=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(s){return typeof s}:function(s){return s&&typeof Symbol=="function"&&s.constructor===Symbol&&s!==Symbol.prototype?"symbol":typeof s},t(i)}function r(i){return t(i)==="object"&&i!==null?typeof i.toString=="function"?i=i.toString():i="[object Object]":(i===null||typeof i>"u"||isNaN(i)&&!i.length)&&(i=""),String(i)}n.exports=e.default,n.exports.default=e.default})(la,la.exports)),la.exports}var ca={exports:{}},s0;function Ht(){return s0||(s0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=t;function t(){var r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},i=arguments.length>1?arguments[1]:void 0;for(var s in i)typeof r[s]>"u"&&(r[s]=i[s]);return r}n.exports=e.default,n.exports.default=e.default})(ca,ca.exports)),ca.exports}var o0;function Z5(){return o0||(o0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=a;var t=s(U()),r=s(kS()),i=s(Ht());function s(l){return l&&l.__esModule?l:{default:l}}var o={ignoreCase:!1,minOccurrences:1};function a(l,c,u){return(0,t.default)(l),u=(0,i.default)(u,o),u.ignoreCase?l.toLowerCase().split((0,r.default)(c).toLowerCase()).length>u.minOccurrences:l.split((0,r.default)(c)).length>u.minOccurrences}n.exports=e.default,n.exports.default=e.default})(aa,aa.exports)),aa.exports}var ua={exports:{}},a0;function Y5(){return a0||(a0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=r(U());function r(s){return s&&s.__esModule?s:{default:s}}function i(s,o,a){return(0,t.default)(s),Object.prototype.toString.call(o)!=="[object RegExp]"&&(o=new RegExp(o,a)),!!s.match(o)}n.exports=e.default,n.exports.default=e.default})(ua,ua.exports)),ua.exports}var da={exports:{}},fa={exports:{}},l0;function AS(){return l0||(l0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=s;var t=r(U());function r(o){return o&&o.__esModule?o:{default:o}}function i(o){"@babel/helpers - typeof";return i=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(a){return typeof a}:function(a){return a&&typeof Symbol=="function"&&a.constructor===Symbol&&a!==Symbol.prototype?"symbol":typeof a},i(o)}function s(o,a){(0,t.default)(o);var l,c;i(a)==="object"?(l=a.min||0,c=a.max):(l=arguments[1],c=arguments[2]);var u=encodeURI(o).split(/%..|./).length-1;return u>=l&&(typeof c>"u"||u<=c)}n.exports=e.default,n.exports.default=e.default})(fa,fa.exports)),fa.exports}var ha={exports:{}},c0;function zh(){return c0||(c0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=o;var t=i(U()),r=i(Ht());function i(a){return a&&a.__esModule?a:{default:a}}var s={require_tld:!0,allow_underscores:!1,allow_trailing_dot:!1,allow_numeric_tld:!1,allow_wildcard:!1,ignore_max_length:!1};function o(a,l){(0,t.default)(a),l=(0,r.default)(l,s),l.allow_trailing_dot&&a[a.length-1]==="."&&(a=a.substring(0,a.length-1)),l.allow_wildcard===!0&&a.indexOf("*.")===0&&(a=a.substring(2));var c=a.split("."),u=c[c.length-1];return l.require_tld&&(c.length<2||!l.allow_numeric_tld&&!/^([a-z\u00A1-\u00A8\u00AA-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]{2,}|xn[a-z0-9-]{2,})$/i.test(u)||/\s/.test(u))||!l.allow_numeric_tld&&/^\d+$/.test(u)?!1:c.every(function(d){return!(d.length>63&&!l.ignore_max_length||!/^[a-z_\u00a1-\uffff0-9-]+$/i.test(d)||/[\uff01-\uff5e]/.test(d)||/^-|-$/.test(d)||!l.allow_underscores&&/_/.test(d))})}n.exports=e.default,n.exports.default=e.default})(ha,ha.exports)),ha.exports}var pa={exports:{}},u0;function Iu(){return u0||(u0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=c;var t=r(U());function r(u){return u&&u.__esModule?u:{default:u}}var i="(?:[0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])",s="(".concat(i,"[.]){3}").concat(i),o=new RegExp("^".concat(s,"$")),a="(?:[0-9a-fA-F]{1,4})",l=new RegExp("^("+"(?:".concat(a,":){7}(?:").concat(a,"|:)|")+"(?:".concat(a,":){6}(?:").concat(s,"|:").concat(a,"|:)|")+"(?:".concat(a,":){5}(?::").concat(s,"|(:").concat(a,"){1,2}|:)|")+"(?:".concat(a,":){4}(?:(:").concat(a,"){0,1}:").concat(s,"|(:").concat(a,"){1,3}|:)|")+"(?:".concat(a,":){3}(?:(:").concat(a,"){0,2}:").concat(s,"|(:").concat(a,"){1,4}|:)|")+"(?:".concat(a,":){2}(?:(:").concat(a,"){0,3}:").concat(s,"|(:").concat(a,"){1,5}|:)|")+"(?:".concat(a,":){1}(?:(:").concat(a,"){0,4}:").concat(s,"|(:").concat(a,"){1,6}|:)|")+"(?::((?::".concat(a,"){0,5}:").concat(s,"|(?::").concat(a,"){1,7}|:))")+")(%[0-9a-zA-Z-.:]{1,})?$");function c(u){var d=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"";return(0,t.default)(u),d=String(d),d?d==="4"?o.test(u):d==="6"?l.test(u):!1:c(u,4)||c(u,6)}n.exports=e.default,n.exports.default=e.default})(pa,pa.exports)),pa.exports}var d0;function MS(){return d0||(d0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=b;var t=a(U()),r=a(AS()),i=a(zh()),s=a(Iu()),o=a(Ht());function a(y){return y&&y.__esModule?y:{default:y}}var l={allow_display_name:!1,allow_underscores:!1,require_display_name:!1,allow_utf8_local_part:!0,require_tld:!0,blacklisted_chars:"",ignore_max_length:!1,host_blacklist:[],host_whitelist:[]},c=/^([^\x00-\x1F\x7F-\x9F\cX]+)</i,u=/^[a-z\d!#\$%&'\*\+\-\/=\?\^_`{\|}~]+$/i,d=/^[a-z\d]+$/,h=/^([\s\x01-\x08\x0b\x0c\x0e-\x1f\x7f\x21\x23-\x5b\x5d-\x7e]|(\\[\x01-\x09\x0b\x0c\x0d-\x7f]))*$/i,p=/^[a-z\d!#\$%&'\*\+\-\/=\?\^_`{\|}~\u00A1-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+$/i,g=/^([\s\x01-\x08\x0b\x0c\x0e-\x1f\x7f\x21\x23-\x5b\x5d-\x7e\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]|(\\[\x01-\x09\x0b\x0c\x0d-\x7f\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))*$/i,m=254;function v(y){var S=y.replace(/^"(.+)"$/,"$1");if(!S.trim())return!1;var w=/[\.";<>]/.test(S);if(w){if(S===y)return!1;var C=S.split('"').length===S.split('\\"').length;if(!C)return!1}return!0}function b(y,S){if((0,t.default)(y),S=(0,o.default)(S,l),S.require_display_name||S.allow_display_name){var w=y.match(c);if(w){var C=w[1];if(y=y.replace(C,"").replace(/(^<|>$)/g,""),C.endsWith(" ")&&(C=C.slice(0,-1)),!v(C))return!1}else if(S.require_display_name)return!1}if(!S.ignore_max_length&&y.length>m)return!1;var k=y.split("@"),A=k.pop(),I=A.toLowerCase();if(S.host_blacklist.includes(I)||S.host_whitelist.length>0&&!S.host_whitelist.includes(I))return!1;var D=k.join("@");if(S.domain_specific_validation&&(I==="gmail.com"||I==="googlemail.com")){D=D.toLowerCase();var R=D.split("+")[0];if(!(0,r.default)(R.replace(/\./g,""),{min:6,max:30}))return!1;for(var T=R.split("."),N=0;N<T.length;N++)if(!d.test(T[N]))return!1}if(S.ignore_max_length===!1&&(!(0,r.default)(D,{max:64})||!(0,r.default)(A,{max:254})))return!1;if(!(0,i.default)(A,{require_tld:S.require_tld,ignore_max_length:S.ignore_max_length,allow_underscores:S.allow_underscores})){if(!S.allow_ip_domain)return!1;if(!(0,s.default)(A)){if(!A.startsWith("[")||!A.endsWith("]"))return!1;var P=A.slice(1,-1);if(P.length===0||!(0,s.default)(P))return!1}}if(D[0]==='"')return D=D.slice(1,D.length-1),S.allow_utf8_local_part?g.test(D):h.test(D);for(var L=S.allow_utf8_local_part?p:u,$=D.split("."),q=0;q<$.length;q++)if(!L.test($[q]))return!1;return!(S.blacklisted_chars&&D.search(new RegExp("[".concat(S.blacklisted_chars,"]+"),"g"))!==-1)}n.exports=e.default,n.exports.default=e.default})(da,da.exports)),da.exports}var ma={exports:{}},f0;function J5(){return f0||(f0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=b;var t=o(U()),r=o(zh()),i=o(Iu()),s=o(Ht());function o(y){return y&&y.__esModule?y:{default:y}}function a(y,S){return h(y)||d(y,S)||c(y,S)||l()}function l(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
26
|
+
`:r=="r"?"\r":r=="t"?" ":"\\")}eq(e){return this.search==e.search&&this.replace==e.replace&&this.caseSensitive==e.caseSensitive&&this.regexp==e.regexp&&this.wholeWord==e.wholeWord}create(){return this.regexp?new Q9(this):new J9(this)}getCursor(e,t=0,r){let i=e.doc?e:ye.create({doc:e});return r==null&&(r=i.doc.length),this.regexp?wi(this,i,t,r):yi(this,i,t,r)}}class $w{constructor(e){this.spec=e}}function yi(n,e,t,r){return new Wi(e.doc,n.unquoted,t,r,n.caseSensitive?void 0:i=>i.toLowerCase(),n.wholeWord?Y9(e.doc,e.charCategorizer(e.selection.main.head)):void 0)}function Y9(n,e){return(t,r,i,s)=>((s>t||s+i.length<r)&&(s=Math.max(0,t-2),i=n.sliceString(s,Math.min(n.length,r+2))),(e(jc(i,t-s))!=ze.Word||e(Bc(i,t-s))!=ze.Word)&&(e(Bc(i,r-s))!=ze.Word||e(jc(i,r-s))!=ze.Word))}class J9 extends $w{constructor(e){super(e)}nextMatch(e,t,r){let i=yi(this.spec,e,r,e.doc.length).nextOverlapping();return i.done&&(i=yi(this.spec,e,0,t).nextOverlapping()),i.done?null:i.value}prevMatchInRange(e,t,r){for(let i=r;;){let s=Math.max(t,i-1e4-this.spec.unquoted.length),o=yi(this.spec,e,s,i),a=null;for(;!o.nextOverlapping().done;)a=o.value;if(a)return a;if(s==t)return null;i-=1e4}}prevMatch(e,t,r){return this.prevMatchInRange(e,0,t)||this.prevMatchInRange(e,r,e.doc.length)}getReplacement(e){return this.spec.unquote(this.spec.replace)}matchAll(e,t){let r=yi(this.spec,e,0,e.doc.length),i=[];for(;!r.next().done;){if(i.length>=t)return null;i.push(r.value)}return i}highlight(e,t,r,i){let s=yi(this.spec,e,Math.max(0,t-this.spec.unquoted.length),Math.min(r+this.spec.unquoted.length,e.doc.length));for(;!s.next().done;)i(s.value.from,s.value.to)}}function wi(n,e,t,r){return new _w(e.doc,n.search,{ignoreCase:!n.caseSensitive,test:n.wholeWord?X9(e.charCategorizer(e.selection.main.head)):void 0},t,r)}function jc(n,e){return n.slice(Et(n,e,!1),e)}function Bc(n,e){return n.slice(e,Et(n,e))}function X9(n){return(e,t,r)=>!r[0].length||(n(jc(r.input,r.index))!=ze.Word||n(Bc(r.input,r.index))!=ze.Word)&&(n(Bc(r.input,r.index+r[0].length))!=ze.Word||n(jc(r.input,r.index+r[0].length))!=ze.Word)}class Q9 extends $w{nextMatch(e,t,r){let i=wi(this.spec,e,r,e.doc.length).next();return i.done&&(i=wi(this.spec,e,0,t).next()),i.done?null:i.value}prevMatchInRange(e,t,r){for(let i=1;;i++){let s=Math.max(t,r-i*1e4),o=wi(this.spec,e,s,r),a=null;for(;!o.next().done;)a=o.value;if(a&&(s==t||a.from>s+10))return a;if(s==t)return null}}prevMatch(e,t,r){return this.prevMatchInRange(e,0,t)||this.prevMatchInRange(e,r,e.doc.length)}getReplacement(e){return this.spec.unquote(this.spec.replace.replace(/\$([$&\d+])/g,(t,r)=>r=="$"?"$":r=="&"?e.match[0]:r!="0"&&+r<e.match.length?e.match[r]:t))}matchAll(e,t){let r=wi(this.spec,e,0,e.doc.length),i=[];for(;!r.next().done;){if(i.length>=t)return null;i.push(r.value)}return i}highlight(e,t,r,i){let s=wi(this.spec,e,Math.max(0,t-250),Math.min(r+250,e.doc.length));for(;!s.next().done;)i(s.value.from,s.value.to)}}const Js=pe.define(),Oh=pe.define(),wr=bt.define({create(n){return new md(_f(n).create(),null)},update(n,e){for(let t of e.effects)t.is(Js)?n=new md(t.value.create(),n.panel):t.is(Oh)&&(n=new md(n.query,t.value?Th:null));return n},provide:n=>Gs.from(n,e=>e.panel)});class md{constructor(e,t){this.query=e,this.panel=t}}const e3=le.mark({class:"cm-searchMatch"}),t3=le.mark({class:"cm-searchMatch cm-searchMatch-selected"}),n3=it.fromClass(class{constructor(n){this.view=n,this.decorations=this.highlight(n.state.field(wr))}update(n){let e=n.state.field(wr);(e!=n.startState.field(wr)||n.docChanged||n.selectionSet||n.viewportChanged)&&(this.decorations=this.highlight(e))}highlight({query:n,panel:e}){if(!e||!n.spec.valid)return le.none;let{view:t}=this,r=new kr;for(let i=0,s=t.visibleRanges,o=s.length;i<o;i++){let{from:a,to:l}=s[i];for(;i<o-1&&l>s[i+1].from-500;)l=s[++i].to;n.highlight(t.state,a,l,(c,u)=>{let d=t.state.selection.ranges.some(h=>h.from==c&&h.to==u);r.add(c,u,d?t3:e3)})}return r.finish()}},{decorations:n=>n.decorations});function bo(n){return e=>{let t=e.state.field(wr,!1);return t&&t.query.spec.valid?n(e,t):Vw(e)}}const $c=bo((n,{query:e})=>{let{to:t}=n.state.selection.main,r=e.nextMatch(n.state,t,t);if(!r)return!1;let i=B.single(r.from,r.to),s=n.state.facet(rs);return n.dispatch({selection:i,effects:[Nh(n,r),s.scrollToMatch(i.main,n)],userEvent:"select.search"}),Hw(n),!0}),Fc=bo((n,{query:e})=>{let{state:t}=n,{from:r}=t.selection.main,i=e.prevMatch(t,r,r);if(!i)return!1;let s=B.single(i.from,i.to),o=n.state.facet(rs);return n.dispatch({selection:s,effects:[Nh(n,i),o.scrollToMatch(s.main,n)],userEvent:"select.search"}),Hw(n),!0}),r3=bo((n,{query:e})=>{let t=e.matchAll(n.state,1e3);return!t||!t.length?!1:(n.dispatch({selection:B.create(t.map(r=>B.range(r.from,r.to))),userEvent:"select.search.matches"}),!0)}),i3=({state:n,dispatch:e})=>{let t=n.selection;if(t.ranges.length>1||t.main.empty)return!1;let{from:r,to:i}=t.main,s=[],o=0;for(let a=new Wi(n.doc,n.sliceDoc(r,i));!a.next().done;){if(s.length>1e3)return!1;a.value.from==r&&(o=s.length),s.push(B.range(a.value.from,a.value.to))}return e(n.update({selection:B.create(s,o),userEvent:"select.search.matches"})),!0},vg=bo((n,{query:e})=>{let{state:t}=n,{from:r,to:i}=t.selection.main;if(t.readOnly)return!1;let s=e.nextMatch(t,r,r);if(!s)return!1;let o=[],a,l,c=[];if(s.from==r&&s.to==i&&(l=t.toText(e.getReplacement(s)),o.push({from:s.from,to:s.to,insert:l}),s=e.nextMatch(t,s.from,s.to),c.push(G.announce.of(t.phrase("replaced match on line $",t.doc.lineAt(r).number)+"."))),s){let u=o.length==0||o[0].from>=s.to?0:s.to-s.from-l.length;a=B.single(s.from-u,s.to-u),c.push(Nh(n,s)),c.push(t.facet(rs).scrollToMatch(a.main,n))}return n.dispatch({changes:o,selection:a,effects:c,userEvent:"input.replace"}),!0}),s3=bo((n,{query:e})=>{if(n.state.readOnly)return!1;let t=e.matchAll(n.state,1e9).map(i=>{let{from:s,to:o}=i;return{from:s,to:o,insert:e.getReplacement(i)}});if(!t.length)return!1;let r=n.state.phrase("replaced $ matches",t.length)+".";return n.dispatch({changes:t,effects:G.announce.of(r),userEvent:"input.replace.all"}),!0});function Th(n){return n.state.facet(rs).createPanel(n)}function _f(n,e){var t,r,i,s,o;let a=n.selection.main,l=a.empty||a.to>a.from+100?"":n.sliceDoc(a.from,a.to);if(e&&!l)return e;let c=n.facet(rs);return new Bw({search:((t=e?.literal)!==null&&t!==void 0?t:c.literal)?l:l.replace(/\n/g,"\\n"),caseSensitive:(r=e?.caseSensitive)!==null&&r!==void 0?r:c.caseSensitive,literal:(i=e?.literal)!==null&&i!==void 0?i:c.literal,regexp:(s=e?.regexp)!==null&&s!==void 0?s:c.regexp,wholeWord:(o=e?.wholeWord)!==null&&o!==void 0?o:c.wholeWord})}function Fw(n){let e=qs(n,Th);return e&&e.dom.querySelector("[main-field]")}function Hw(n){let e=Fw(n);e&&e==n.root.activeElement&&e.select()}const Vw=n=>{let e=n.state.field(wr,!1);if(e&&e.panel){let t=Fw(n);if(t&&t!=n.root.activeElement){let r=_f(n.state,e.query.spec);r.valid&&n.dispatch({effects:Js.of(r)}),t.focus(),t.select()}}else n.dispatch({effects:[Oh.of(!0),e?Js.of(_f(n.state,e.query.spec)):pe.appendConfig.of(c3)]});return!0},Uw=n=>{let e=n.state.field(wr,!1);if(!e||!e.panel)return!1;let t=qs(n,Th);return t&&t.dom.contains(n.root.activeElement)&&n.focus(),n.dispatch({effects:Oh.of(!1)}),!0},o3=[{key:"Mod-f",run:Vw,scope:"editor search-panel"},{key:"F3",run:$c,shift:Fc,scope:"editor search-panel",preventDefault:!0},{key:"Mod-g",run:$c,shift:Fc,scope:"editor search-panel",preventDefault:!0},{key:"Escape",run:Uw,scope:"editor search-panel"},{key:"Mod-Shift-l",run:i3},{key:"Alt-g",run:j9},{key:"Mod-d",run:Z9,preventDefault:!0}];class a3{constructor(e){this.view=e;let t=this.query=e.state.field(wr).query.spec;this.commit=this.commit.bind(this),this.searchField=$e("input",{value:t.search,placeholder:en(e,"Find"),"aria-label":en(e,"Find"),class:"cm-textfield",name:"search",form:"","main-field":"true",onchange:this.commit,onkeyup:this.commit}),this.replaceField=$e("input",{value:t.replace,placeholder:en(e,"Replace"),"aria-label":en(e,"Replace"),class:"cm-textfield",name:"replace",form:"",onchange:this.commit,onkeyup:this.commit}),this.caseField=$e("input",{type:"checkbox",name:"case",form:"",checked:t.caseSensitive,onchange:this.commit}),this.reField=$e("input",{type:"checkbox",name:"re",form:"",checked:t.regexp,onchange:this.commit}),this.wordField=$e("input",{type:"checkbox",name:"word",form:"",checked:t.wholeWord,onchange:this.commit});function r(i,s,o){return $e("button",{class:"cm-button",name:i,onclick:s,type:"button"},o)}this.dom=$e("div",{onkeydown:i=>this.keydown(i),class:"cm-search"},[this.searchField,r("next",()=>$c(e),[en(e,"next")]),r("prev",()=>Fc(e),[en(e,"previous")]),r("select",()=>r3(e),[en(e,"all")]),$e("label",null,[this.caseField,en(e,"match case")]),$e("label",null,[this.reField,en(e,"regexp")]),$e("label",null,[this.wordField,en(e,"by word")]),...e.state.readOnly?[]:[$e("br"),this.replaceField,r("replace",()=>vg(e),[en(e,"replace")]),r("replaceAll",()=>s3(e),[en(e,"replace all")])],$e("button",{name:"close",onclick:()=>Uw(e),"aria-label":en(e,"close"),type:"button"},["×"])])}commit(){let e=new Bw({search:this.searchField.value,caseSensitive:this.caseField.checked,regexp:this.reField.checked,wholeWord:this.wordField.checked,replace:this.replaceField.value});e.eq(this.query)||(this.query=e,this.view.dispatch({effects:Js.of(e)}))}keydown(e){dT(this.view,e,"search-panel")?e.preventDefault():e.keyCode==13&&e.target==this.searchField?(e.preventDefault(),(e.shiftKey?Fc:$c)(this.view)):e.keyCode==13&&e.target==this.replaceField&&(e.preventDefault(),vg(this.view))}update(e){for(let t of e.transactions)for(let r of t.effects)r.is(Js)&&!r.value.eq(this.query)&&this.setQuery(r.value)}setQuery(e){this.query=e,this.searchField.value=e.search,this.replaceField.value=e.replace,this.caseField.checked=e.caseSensitive,this.reField.checked=e.regexp,this.wordField.checked=e.wholeWord}mount(){this.searchField.select()}get pos(){return 80}get top(){return this.view.state.facet(rs).top}}function en(n,e){return n.state.phrase(e)}const Yo=30,Jo=/[\s\.,:;?!]/;function Nh(n,{from:e,to:t}){let r=n.state.doc.lineAt(e),i=n.state.doc.lineAt(t).to,s=Math.max(r.from,e-Yo),o=Math.min(i,t+Yo),a=n.state.sliceDoc(s,o);if(s!=r.from){for(let l=0;l<Yo;l++)if(!Jo.test(a[l+1])&&Jo.test(a[l])){a=a.slice(l);break}}if(o!=i){for(let l=a.length-1;l>a.length-Yo;l--)if(!Jo.test(a[l-1])&&Jo.test(a[l])){a=a.slice(0,l);break}}return G.announce.of(`${n.state.phrase("current match")}. ${a} ${n.state.phrase("on line")} ${r.number}.`)}const l3=G.baseTheme({".cm-panel.cm-search":{padding:"2px 6px 4px",position:"relative","& [name=close]":{position:"absolute",top:"0",right:"4px",backgroundColor:"inherit",border:"none",font:"inherit",padding:0,margin:0},"& input, & button, & label":{margin:".2em .6em .2em 0"},"& input[type=checkbox]":{marginRight:".2em"},"& label":{fontSize:"80%",whiteSpace:"pre"}},"&light .cm-searchMatch":{backgroundColor:"#ffff0054"},"&dark .cm-searchMatch":{backgroundColor:"#00ffff8a"},"&light .cm-searchMatch-selected":{backgroundColor:"#ff6a0054"},"&dark .cm-searchMatch-selected":{backgroundColor:"#ff00ff8a"}}),c3=[wr,ti.lowest(n3),l3];class zw{constructor(e,t,r){this.state=e,this.pos=t,this.explicit=r,this.abortListeners=[]}tokenBefore(e){let t=At(this.state).resolveInner(this.pos,-1);for(;t&&e.indexOf(t.name)<0;)t=t.parent;return t?{from:t.from,to:this.pos,text:this.state.sliceDoc(t.from,this.pos),type:t.type}:null}matchBefore(e){let t=this.state.doc.lineAt(this.pos),r=Math.max(t.from,this.pos-250),i=t.text.slice(r-t.from,this.pos-t.from),s=i.search(Ww(e,!1));return s<0?null:{from:r+s,to:this.pos,text:i.slice(s)}}get aborted(){return this.abortListeners==null}addEventListener(e,t){e=="abort"&&this.abortListeners&&this.abortListeners.push(t)}}function bg(n){let e=Object.keys(n).join(""),t=/\w/.test(e);return t&&(e=e.replace(/\w/g,"")),`[${t?"\\w":""}${e.replace(/[^\w\s]/g,"\\$&")}]`}function u3(n){let e=Object.create(null),t=Object.create(null);for(let{label:i}of n){e[i[0]]=!0;for(let s=1;s<i.length;s++)t[i[s]]=!0}let r=bg(e)+bg(t)+"*$";return[new RegExp("^"+r),new RegExp(r)]}function d3(n){let e=n.map(i=>typeof i=="string"?{label:i}:i),[t,r]=e.every(i=>/^\w+$/.test(i.label))?[/\w*$/,/\w+$/]:u3(e);return i=>{let s=i.matchBefore(r);return s||i.explicit?{from:s?s.from:i.pos,options:e,validFor:t}:null}}function E6(n,e){return t=>{for(let r=At(t.state).resolveInner(t.pos,-1);r;r=r.parent){if(n.indexOf(r.name)>-1)return null;if(r.type.isTop)break}return e(t)}}class xg{constructor(e,t,r,i){this.completion=e,this.source=t,this.match=r,this.score=i}}function Sr(n){return n.selection.main.from}function Ww(n,e){var t;let{source:r}=n,i=e&&r[0]!="^",s=r[r.length-1]!="$";return!i&&!s?n:new RegExp(`${i?"^":""}(?:${r})${s?"$":""}`,(t=n.flags)!==null&&t!==void 0?t:n.ignoreCase?"i":"")}const qw=Kn.define();function f3(n,e,t,r){let{main:i}=n.selection,s=t-i.from,o=r-i.from;return Object.assign(Object.assign({},n.changeByRange(a=>a!=i&&t!=r&&n.sliceDoc(a.from+s,a.from+o)!=n.sliceDoc(t,r)?{range:a}:{changes:{from:a.from+s,to:r==i.from?a.to:a.from+o,insert:e},range:B.cursor(a.from+s+e.length)})),{userEvent:"input.complete"})}const yg=new WeakMap;function h3(n){if(!Array.isArray(n))return n;let e=yg.get(n);return e||yg.set(n,e=d3(n)),e}const Ph=pe.define(),Xs=pe.define();class p3{constructor(e){this.pattern=e,this.chars=[],this.folded=[],this.any=[],this.precise=[],this.byWord=[],this.score=0,this.matched=[];for(let t=0;t<e.length;){let r=St(e,t),i=dn(r);this.chars.push(r);let s=e.slice(t,t+i),o=s.toUpperCase();this.folded.push(St(o==s?s.toLowerCase():o,0)),t+=i}this.astral=e.length!=this.chars.length}ret(e,t){return this.score=e,this.matched=t,!0}match(e){if(this.pattern.length==0)return this.ret(-100,[]);if(e.length<this.pattern.length)return!1;let{chars:t,folded:r,any:i,precise:s,byWord:o}=this;if(t.length==1){let y=St(e,0),S=dn(y),w=S==e.length?0:-100;if(y!=t[0])if(y==r[0])w+=-200;else return!1;return this.ret(w,[0,S])}let a=e.indexOf(this.pattern);if(a==0)return this.ret(e.length==this.pattern.length?0:-100,[0,this.pattern.length]);let l=t.length,c=0;if(a<0){for(let y=0,S=Math.min(e.length,200);y<S&&c<l;){let w=St(e,y);(w==t[c]||w==r[c])&&(i[c++]=y),y+=dn(w)}if(c<l)return!1}let u=0,d=0,h=!1,p=0,g=-1,m=-1,v=/[a-z]/.test(e),b=!0;for(let y=0,S=Math.min(e.length,200),w=0;y<S&&d<l;){let C=St(e,y);a<0&&(u<l&&C==t[u]&&(s[u++]=y),p<l&&(C==t[p]||C==r[p]?(p==0&&(g=y),m=y+1,p++):p=0));let k,A=C<255?C>=48&&C<=57||C>=97&&C<=122?2:C>=65&&C<=90?1:0:(k=dh(C))!=k.toLowerCase()?1:k!=k.toUpperCase()?2:0;(!y||A==1&&v||w==0&&A!=0)&&(t[d]==C||r[d]==C&&(h=!0)?o[d++]=y:o.length&&(b=!1)),w=A,y+=dn(C)}return d==l&&o[0]==0&&b?this.result(-100+(h?-200:0),o,e):p==l&&g==0?this.ret(-200-e.length+(m==e.length?0:-100),[0,m]):a>-1?this.ret(-700-e.length,[a,a+this.pattern.length]):p==l?this.ret(-900-e.length,[g,m]):d==l?this.result(-100+(h?-200:0)+-700+(b?0:-1100),o,e):t.length==2?!1:this.result((i[0]?-700:0)+-200+-1100,i,e)}result(e,t,r){let i=[],s=0;for(let o of t){let a=o+(this.astral?dn(St(r,o)):1);s&&i[s-1]==o?i[s-1]=a:(i[s++]=o,i[s++]=a)}return this.ret(e-r.length,i)}}const Yt=J.define({combine(n){return Zn(n,{activateOnTyping:!0,selectOnOpen:!0,override:null,closeOnBlur:!0,maxRenderedOptions:100,defaultKeymap:!0,tooltipClass:()=>"",optionClass:()=>"",aboveCursor:!1,icons:!0,addToOptions:[],positionInfo:m3,compareCompletions:(e,t)=>e.label.localeCompare(t.label),interactionDelay:75},{defaultKeymap:(e,t)=>e&&t,closeOnBlur:(e,t)=>e&&t,icons:(e,t)=>e&&t,tooltipClass:(e,t)=>r=>wg(e(r),t(r)),optionClass:(e,t)=>r=>wg(e(r),t(r)),addToOptions:(e,t)=>e.concat(t)})}});function wg(n,e){return n?e?n+" "+e:n:e}function m3(n,e,t,r,i){let s=n.textDirection==qe.RTL,o=s,a=!1,l="top",c,u,d=e.left-i.left,h=i.right-e.right,p=r.right-r.left,g=r.bottom-r.top;if(o&&d<Math.min(p,h)?o=!1:!o&&h<Math.min(p,d)&&(o=!0),p<=(o?d:h))c=Math.max(i.top,Math.min(t.top,i.bottom-g))-e.top,u=Math.min(400,o?d:h);else{a=!0,u=Math.min(400,(s?e.right:i.right-e.left)-30);let m=i.bottom-e.bottom;m>=g||m>e.top?c=t.bottom-e.top:(l="bottom",c=e.bottom-t.top)}return{style:`${l}: ${c}px; max-width: ${u}px`,class:"cm-completionInfo-"+(a?s?"left-narrow":"right-narrow":o?"left":"right")}}function g3(n){let e=n.addToOptions.slice();return n.icons&&e.push({render(t){let r=document.createElement("div");return r.classList.add("cm-completionIcon"),t.type&&r.classList.add(...t.type.split(/\s+/g).map(i=>"cm-completionIcon-"+i)),r.setAttribute("aria-hidden","true"),r},position:20}),e.push({render(t,r,i){let s=document.createElement("span");s.className="cm-completionLabel";let o=t.displayLabel||t.label,a=0;for(let l=0;l<i.length;){let c=i[l++],u=i[l++];c>a&&s.appendChild(document.createTextNode(o.slice(a,c)));let d=s.appendChild(document.createElement("span"));d.appendChild(document.createTextNode(o.slice(c,u))),d.className="cm-completionMatchedText",a=u}return a<o.length&&s.appendChild(document.createTextNode(o.slice(a))),s},position:50},{render(t){if(!t.detail)return null;let r=document.createElement("span");return r.className="cm-completionDetail",r.textContent=t.detail,r},position:80}),e.sort((t,r)=>t.position-r.position).map(t=>t.render)}function Sg(n,e,t){if(n<=t)return{from:0,to:n};if(e<0&&(e=0),e<=n>>1){let i=Math.floor(e/t);return{from:i*t,to:(i+1)*t}}let r=Math.floor((n-e)/t);return{from:n-(r+1)*t,to:n-r*t}}class v3{constructor(e,t,r){this.view=e,this.stateField=t,this.applyCompletion=r,this.info=null,this.infoDestroy=null,this.placeInfoReq={read:()=>this.measureInfo(),write:l=>this.placeInfo(l),key:this},this.space=null,this.currentClass="";let i=e.state.field(t),{options:s,selected:o}=i.open,a=e.state.facet(Yt);this.optionContent=g3(a),this.optionClass=a.optionClass,this.tooltipClass=a.tooltipClass,this.range=Sg(s.length,o,a.maxRenderedOptions),this.dom=document.createElement("div"),this.dom.className="cm-tooltip-autocomplete",this.updateTooltipClass(e.state),this.dom.addEventListener("mousedown",l=>{for(let c=l.target,u;c&&c!=this.dom;c=c.parentNode)if(c.nodeName=="LI"&&(u=/-(\d+)$/.exec(c.id))&&+u[1]<s.length){this.applyCompletion(e,s[+u[1]]),l.preventDefault();return}}),this.dom.addEventListener("focusout",l=>{let c=e.state.field(this.stateField,!1);c&&c.tooltip&&e.state.facet(Yt).closeOnBlur&&l.relatedTarget!=e.contentDOM&&e.dispatch({effects:Xs.of(null)})}),this.list=this.dom.appendChild(this.createListBox(s,i.id,this.range)),this.list.addEventListener("scroll",()=>{this.info&&this.view.requestMeasure(this.placeInfoReq)})}mount(){this.updateSel()}update(e){var t,r,i;let s=e.state.field(this.stateField),o=e.startState.field(this.stateField);this.updateTooltipClass(e.state),s!=o&&(this.updateSel(),((t=s.open)===null||t===void 0?void 0:t.disabled)!=((r=o.open)===null||r===void 0?void 0:r.disabled)&&this.dom.classList.toggle("cm-tooltip-autocomplete-disabled",!!(!((i=s.open)===null||i===void 0)&&i.disabled)))}updateTooltipClass(e){let t=this.tooltipClass(e);if(t!=this.currentClass){for(let r of this.currentClass.split(" "))r&&this.dom.classList.remove(r);for(let r of t.split(" "))r&&this.dom.classList.add(r);this.currentClass=t}}positioned(e){this.space=e,this.info&&this.view.requestMeasure(this.placeInfoReq)}updateSel(){let e=this.view.state.field(this.stateField),t=e.open;if((t.selected>-1&&t.selected<this.range.from||t.selected>=this.range.to)&&(this.range=Sg(t.options.length,t.selected,this.view.state.facet(Yt).maxRenderedOptions),this.list.remove(),this.list=this.dom.appendChild(this.createListBox(t.options,e.id,this.range)),this.list.addEventListener("scroll",()=>{this.info&&this.view.requestMeasure(this.placeInfoReq)})),this.updateSelectedOption(t.selected)){this.destroyInfo();let{completion:r}=t.options[t.selected],{info:i}=r;if(!i)return;let s=typeof i=="string"?document.createTextNode(i):i(r);if(!s)return;"then"in s?s.then(o=>{o&&this.view.state.field(this.stateField,!1)==e&&this.addInfoPane(o,r)}).catch(o=>pn(this.view.state,o,"completion info")):this.addInfoPane(s,r)}}addInfoPane(e,t){this.destroyInfo();let r=this.info=document.createElement("div");if(r.className="cm-tooltip cm-completionInfo",e.nodeType!=null)r.appendChild(e),this.infoDestroy=null;else{let{dom:i,destroy:s}=e;r.appendChild(i),this.infoDestroy=s||null}this.dom.appendChild(r),this.view.requestMeasure(this.placeInfoReq)}updateSelectedOption(e){let t=null;for(let r=this.list.firstChild,i=this.range.from;r;r=r.nextSibling,i++)r.nodeName!="LI"||!r.id?i--:i==e?r.hasAttribute("aria-selected")||(r.setAttribute("aria-selected","true"),t=r):r.hasAttribute("aria-selected")&&r.removeAttribute("aria-selected");return t&&x3(this.list,t),t}measureInfo(){let e=this.dom.querySelector("[aria-selected]");if(!e||!this.info)return null;let t=this.dom.getBoundingClientRect(),r=this.info.getBoundingClientRect(),i=e.getBoundingClientRect(),s=this.space;if(!s){let o=this.dom.ownerDocument.defaultView||window;s={left:0,top:0,right:o.innerWidth,bottom:o.innerHeight}}return i.top>Math.min(s.bottom,t.bottom)-10||i.bottom<Math.max(s.top,t.top)+10?null:this.view.state.facet(Yt).positionInfo(this.view,t,i,r,s)}placeInfo(e){this.info&&(e?(e.style&&(this.info.style.cssText=e.style),this.info.className="cm-tooltip cm-completionInfo "+(e.class||"")):this.info.style.cssText="top: -1e6px")}createListBox(e,t,r){const i=document.createElement("ul");i.id=t,i.setAttribute("role","listbox"),i.setAttribute("aria-expanded","true"),i.setAttribute("aria-label",this.view.state.phrase("Completions"));let s=null;for(let o=r.from;o<r.to;o++){let{completion:a,match:l}=e[o],{section:c}=a;if(c){let h=typeof c=="string"?c:c.name;if(h!=s&&(o>r.from||r.from==0))if(s=h,typeof c!="string"&&c.header)i.appendChild(c.header(c));else{let p=i.appendChild(document.createElement("completion-section"));p.textContent=h}}const u=i.appendChild(document.createElement("li"));u.id=t+"-"+o,u.setAttribute("role","option");let d=this.optionClass(a);d&&(u.className=d);for(let h of this.optionContent){let p=h(a,this.view.state,l);p&&u.appendChild(p)}}return r.from&&i.classList.add("cm-completionListIncompleteTop"),r.to<e.length&&i.classList.add("cm-completionListIncompleteBottom"),i}destroyInfo(){this.info&&(this.infoDestroy&&this.infoDestroy(),this.info.remove(),this.info=null)}destroy(){this.destroyInfo()}}function b3(n,e){return t=>new v3(t,n,e)}function x3(n,e){let t=n.getBoundingClientRect(),r=e.getBoundingClientRect();r.top<t.top?n.scrollTop-=t.top-r.top:r.bottom>t.bottom&&(n.scrollTop+=r.bottom-t.bottom)}function Cg(n){return(n.boost||0)*100+(n.apply?10:0)+(n.info?5:0)+(n.type?1:0)}function y3(n,e){let t=[],r=null,i=l=>{t.push(l);let{section:c}=l.completion;if(c){r||(r=[]);let u=typeof c=="string"?c:c.name;r.some(d=>d.name==u)||r.push(typeof c=="string"?{name:u}:c)}};for(let l of n)if(l.hasResult()){let c=l.result.getMatch;if(l.result.filter===!1)for(let u of l.result.options)i(new xg(u,l.source,c?c(u):[],1e9-t.length));else{let u=new p3(e.sliceDoc(l.from,l.to));for(let d of l.result.options)if(u.match(d.label)){let h=d.displayLabel?c?c(d,u.matched):[]:u.matched;i(new xg(d,l.source,h,u.score+(d.boost||0)))}}}if(r){let l=Object.create(null),c=0,u=(d,h)=>{var p,g;return((p=d.rank)!==null&&p!==void 0?p:1e9)-((g=h.rank)!==null&&g!==void 0?g:1e9)||(d.name<h.name?-1:1)};for(let d of r.sort(u))c-=1e5,l[d.name]=c;for(let d of t){let{section:h}=d.completion;h&&(d.score+=l[typeof h=="string"?h:h.name])}}let s=[],o=null,a=e.facet(Yt).compareCompletions;for(let l of t.sort((c,u)=>u.score-c.score||a(c.completion,u.completion))){let c=l.completion;!o||o.label!=c.label||o.detail!=c.detail||o.type!=null&&c.type!=null&&o.type!=c.type||o.apply!=c.apply||o.boost!=c.boost?s.push(l):Cg(l.completion)>Cg(o)&&(s[s.length-1]=l),o=l.completion}return s}class Ei{constructor(e,t,r,i,s,o){this.options=e,this.attrs=t,this.tooltip=r,this.timestamp=i,this.selected=s,this.disabled=o}setSelected(e,t){return e==this.selected||e>=this.options.length?this:new Ei(this.options,kg(t,e),this.tooltip,this.timestamp,e,this.disabled)}static build(e,t,r,i,s){let o=y3(e,t);if(!o.length)return i&&e.some(l=>l.state==1)?new Ei(i.options,i.attrs,i.tooltip,i.timestamp,i.selected,!0):null;let a=t.facet(Yt).selectOnOpen?0:-1;if(i&&i.selected!=a&&i.selected!=-1){let l=i.options[i.selected].completion;for(let c=0;c<o.length;c++)if(o[c].completion==l){a=c;break}}return new Ei(o,kg(r,a),{pos:e.reduce((l,c)=>c.hasResult()?Math.min(l,c.from):l,1e8),create:b3(rn,Zw),above:s.aboveCursor},i?i.timestamp:Date.now(),a,!1)}map(e){return new Ei(this.options,this.attrs,Object.assign(Object.assign({},this.tooltip),{pos:e.mapPos(this.tooltip.pos)}),this.timestamp,this.selected,this.disabled)}}class Hc{constructor(e,t,r){this.active=e,this.id=t,this.open=r}static start(){return new Hc(C3,"cm-ac-"+Math.floor(Math.random()*2e6).toString(36),null)}update(e){let{state:t}=e,r=t.facet(Yt),s=(r.override||t.languageDataAt("autocomplete",Sr(t)).map(h3)).map(a=>(this.active.find(c=>c.source==a)||new Gt(a,this.active.some(c=>c.state!=0)?1:0)).update(e,r));s.length==this.active.length&&s.every((a,l)=>a==this.active[l])&&(s=this.active);let o=this.open;o&&e.docChanged&&(o=o.map(e.changes)),e.selection||s.some(a=>a.hasResult()&&e.changes.touchesRange(a.from,a.to))||!w3(s,this.active)?o=Ei.build(s,t,this.id,o,r):o&&o.disabled&&!s.some(a=>a.state==1)&&(o=null),!o&&s.every(a=>a.state!=1)&&s.some(a=>a.hasResult())&&(s=s.map(a=>a.hasResult()?new Gt(a.source,0):a));for(let a of e.effects)a.is(Kw)&&(o=o&&o.setSelected(a.value,this.id));return s==this.active&&o==this.open?this:new Hc(s,this.id,o)}get tooltip(){return this.open?this.open.tooltip:null}get attrs(){return this.open?this.open.attrs:S3}}function w3(n,e){if(n==e)return!0;for(let t=0,r=0;;){for(;t<n.length&&!n[t].hasResult;)t++;for(;r<e.length&&!e[r].hasResult;)r++;let i=t==n.length,s=r==e.length;if(i||s)return i==s;if(n[t++].result!=e[r++].result)return!1}}const S3={"aria-autocomplete":"list"};function kg(n,e){let t={"aria-autocomplete":"list","aria-haspopup":"listbox","aria-controls":n};return e>-1&&(t["aria-activedescendant"]=n+"-"+e),t}const C3=[];function jf(n){return n.isUserEvent("input.type")?"input":n.isUserEvent("delete.backward")?"delete":null}class Gt{constructor(e,t,r=-1){this.source=e,this.state=t,this.explicitPos=r}hasResult(){return!1}update(e,t){let r=jf(e),i=this;r?i=i.handleUserEvent(e,r,t):e.docChanged?i=i.handleChange(e):e.selection&&i.state!=0&&(i=new Gt(i.source,0));for(let s of e.effects)if(s.is(Ph))i=new Gt(i.source,1,s.value?Sr(e.state):-1);else if(s.is(Xs))i=new Gt(i.source,0);else if(s.is(Gw))for(let o of s.value)o.source==i.source&&(i=o);return i}handleUserEvent(e,t,r){return t=="delete"||!r.activateOnTyping?this.map(e.changes):new Gt(this.source,1)}handleChange(e){return e.changes.touchesRange(Sr(e.startState))?new Gt(this.source,0):this.map(e.changes)}map(e){return e.empty||this.explicitPos<0?this:new Gt(this.source,this.state,e.mapPos(this.explicitPos))}}class Bi extends Gt{constructor(e,t,r,i,s){super(e,2,t),this.result=r,this.from=i,this.to=s}hasResult(){return!0}handleUserEvent(e,t,r){var i;let s=e.changes.mapPos(this.from),o=e.changes.mapPos(this.to,1),a=Sr(e.state);if((this.explicitPos<0?a<=s:a<this.from)||a>o||t=="delete"&&Sr(e.startState)==this.from)return new Gt(this.source,t=="input"&&r.activateOnTyping?1:0);let l=this.explicitPos<0?-1:e.changes.mapPos(this.explicitPos),c;return k3(this.result.validFor,e.state,s,o)?new Bi(this.source,l,this.result,s,o):this.result.update&&(c=this.result.update(this.result,s,o,new zw(e.state,a,l>=0)))?new Bi(this.source,l,c,c.from,(i=c.to)!==null&&i!==void 0?i:Sr(e.state)):new Gt(this.source,1,l)}handleChange(e){return e.changes.touchesRange(this.from,this.to)?new Gt(this.source,0):this.map(e.changes)}map(e){return e.empty?this:new Bi(this.source,this.explicitPos<0?-1:e.mapPos(this.explicitPos),this.result,e.mapPos(this.from),e.mapPos(this.to,1))}}function k3(n,e,t,r){if(!n)return!1;let i=e.sliceDoc(t,r);return typeof n=="function"?n(i,t,r,e):Ww(n,!0).test(i)}const Gw=pe.define({map(n,e){return n.map(t=>t.map(e))}}),Kw=pe.define(),rn=bt.define({create(){return Hc.start()},update(n,e){return n.update(e)},provide:n=>[yh.from(n,e=>e.tooltip),G.contentAttributes.from(n,e=>e.attrs)]});function Zw(n,e){const t=e.completion.apply||e.completion.label;let r=n.state.field(rn).active.find(i=>i.source==e.source);return r instanceof Bi?(typeof t=="string"?n.dispatch(Object.assign(Object.assign({},f3(n.state,t,r.from,r.to)),{annotations:qw.of(e.completion)})):t(n,e.completion,r.from,r.to),!0):!1}function Xo(n,e="option"){return t=>{let r=t.state.field(rn,!1);if(!r||!r.open||r.open.disabled||Date.now()-r.open.timestamp<t.state.facet(Yt).interactionDelay)return!1;let i=1,s;e=="page"&&(s=Ty(t,r.open.tooltip))&&(i=Math.max(2,Math.floor(s.dom.offsetHeight/s.dom.querySelector("li").offsetHeight)-1));let{length:o}=r.open.options,a=r.open.selected>-1?r.open.selected+i*(n?1:-1):n?0:o-1;return a<0?a=e=="page"?0:o-1:a>=o&&(a=e=="page"?o-1:0),t.dispatch({effects:Kw.of(a)}),!0}}const A3=n=>{let e=n.state.field(rn,!1);return n.state.readOnly||!e||!e.open||e.open.selected<0||e.open.disabled||Date.now()-e.open.timestamp<n.state.facet(Yt).interactionDelay?!1:Zw(n,e.open.options[e.open.selected])},M3=n=>n.state.field(rn,!1)?(n.dispatch({effects:Ph.of(!0)}),!0):!1,I3=n=>{let e=n.state.field(rn,!1);return!e||!e.active.some(t=>t.state!=0)?!1:(n.dispatch({effects:Xs.of(null)}),!0)};class E3{constructor(e,t){this.active=e,this.context=t,this.time=Date.now(),this.updates=[],this.done=void 0}}const Ag=50,D3=50,R3=1e3,O3=it.fromClass(class{constructor(n){this.view=n,this.debounceUpdate=-1,this.running=[],this.debounceAccept=-1,this.composing=0;for(let e of n.state.field(rn).active)e.state==1&&this.startQuery(e)}update(n){let e=n.state.field(rn);if(!n.selectionSet&&!n.docChanged&&n.startState.field(rn)==e)return;let t=n.transactions.some(r=>(r.selection||r.docChanged)&&!jf(r));for(let r=0;r<this.running.length;r++){let i=this.running[r];if(t||i.updates.length+n.transactions.length>D3&&Date.now()-i.time>R3){for(let s of i.context.abortListeners)try{s()}catch(o){pn(this.view.state,o)}i.context.abortListeners=null,this.running.splice(r--,1)}else i.updates.push(...n.transactions)}if(this.debounceUpdate>-1&&clearTimeout(this.debounceUpdate),this.debounceUpdate=e.active.some(r=>r.state==1&&!this.running.some(i=>i.active.source==r.source))?setTimeout(()=>this.startUpdate(),Ag):-1,this.composing!=0)for(let r of n.transactions)jf(r)=="input"?this.composing=2:this.composing==2&&r.selection&&(this.composing=3)}startUpdate(){this.debounceUpdate=-1;let{state:n}=this.view,e=n.field(rn);for(let t of e.active)t.state==1&&!this.running.some(r=>r.active.source==t.source)&&this.startQuery(t)}startQuery(n){let{state:e}=this.view,t=Sr(e),r=new zw(e,t,n.explicitPos==t),i=new E3(n,r);this.running.push(i),Promise.resolve(n.source(r)).then(s=>{i.context.aborted||(i.done=s||null,this.scheduleAccept())},s=>{this.view.dispatch({effects:Xs.of(null)}),pn(this.view.state,s)})}scheduleAccept(){this.running.every(n=>n.done!==void 0)?this.accept():this.debounceAccept<0&&(this.debounceAccept=setTimeout(()=>this.accept(),Ag))}accept(){var n;this.debounceAccept>-1&&clearTimeout(this.debounceAccept),this.debounceAccept=-1;let e=[],t=this.view.state.facet(Yt);for(let r=0;r<this.running.length;r++){let i=this.running[r];if(i.done===void 0)continue;if(this.running.splice(r--,1),i.done){let o=new Bi(i.active.source,i.active.explicitPos,i.done,i.done.from,(n=i.done.to)!==null&&n!==void 0?n:Sr(i.updates.length?i.updates[0].startState:this.view.state));for(let a of i.updates)o=o.update(a,t);if(o.hasResult()){e.push(o);continue}}let s=this.view.state.field(rn).active.find(o=>o.source==i.active.source);if(s&&s.state==1)if(i.done==null){let o=new Gt(i.active.source,0);for(let a of i.updates)o=o.update(a,t);o.state!=1&&e.push(o)}else this.startQuery(s)}e.length&&this.view.dispatch({effects:Gw.of(e)})}},{eventHandlers:{blur(n){let e=this.view.state.field(rn,!1);if(e&&e.tooltip&&this.view.state.facet(Yt).closeOnBlur){let t=e.open&&Ty(this.view,e.open.tooltip);(!t||!t.dom.contains(n.relatedTarget))&&this.view.dispatch({effects:Xs.of(null)})}},compositionstart(){this.composing=1},compositionend(){this.composing==3&&setTimeout(()=>this.view.dispatch({effects:Ph.of(!1)}),20),this.composing=0}}}),Yw=G.baseTheme({".cm-tooltip.cm-tooltip-autocomplete":{"& > ul":{fontFamily:"monospace",whiteSpace:"nowrap",overflow:"hidden auto",maxWidth_fallback:"700px",maxWidth:"min(700px, 95vw)",minWidth:"250px",maxHeight:"10em",height:"100%",listStyle:"none",margin:0,padding:0,"& > li, & > completion-section":{padding:"1px 3px",lineHeight:1.2},"& > li":{overflowX:"hidden",textOverflow:"ellipsis",cursor:"pointer"},"& > completion-section":{display:"list-item",borderBottom:"1px solid silver",paddingLeft:"0.5em",opacity:.7}}},"&light .cm-tooltip-autocomplete ul li[aria-selected]":{background:"#17c",color:"white"},"&light .cm-tooltip-autocomplete-disabled ul li[aria-selected]":{background:"#777"},"&dark .cm-tooltip-autocomplete ul li[aria-selected]":{background:"#347",color:"white"},"&dark .cm-tooltip-autocomplete-disabled ul li[aria-selected]":{background:"#444"},".cm-completionListIncompleteTop:before, .cm-completionListIncompleteBottom:after":{content:'"···"',opacity:.5,display:"block",textAlign:"center"},".cm-tooltip.cm-completionInfo":{position:"absolute",padding:"3px 9px",width:"max-content",maxWidth:"400px",boxSizing:"border-box"},".cm-completionInfo.cm-completionInfo-left":{right:"100%"},".cm-completionInfo.cm-completionInfo-right":{left:"100%"},".cm-completionInfo.cm-completionInfo-left-narrow":{right:"30px"},".cm-completionInfo.cm-completionInfo-right-narrow":{left:"30px"},"&light .cm-snippetField":{backgroundColor:"#00000022"},"&dark .cm-snippetField":{backgroundColor:"#ffffff22"},".cm-snippetFieldPosition":{verticalAlign:"text-top",width:0,height:"1.15em",display:"inline-block",margin:"0 -0.7px -.7em",borderLeft:"1.4px dotted #888"},".cm-completionMatchedText":{textDecoration:"underline"},".cm-completionDetail":{marginLeft:"0.5em",fontStyle:"italic"},".cm-completionIcon":{fontSize:"90%",width:".8em",display:"inline-block",textAlign:"center",paddingRight:".6em",opacity:"0.6",boxSizing:"content-box"},".cm-completionIcon-function, .cm-completionIcon-method":{"&:after":{content:"'ƒ'"}},".cm-completionIcon-class":{"&:after":{content:"'○'"}},".cm-completionIcon-interface":{"&:after":{content:"'◌'"}},".cm-completionIcon-variable":{"&:after":{content:"'𝑥'"}},".cm-completionIcon-constant":{"&:after":{content:"'𝐶'"}},".cm-completionIcon-type":{"&:after":{content:"'𝑡'"}},".cm-completionIcon-enum":{"&:after":{content:"'∪'"}},".cm-completionIcon-property":{"&:after":{content:"'□'"}},".cm-completionIcon-keyword":{"&:after":{content:"'🔑︎'"}},".cm-completionIcon-namespace":{"&:after":{content:"'▢'"}},".cm-completionIcon-text":{"&:after":{content:"'abc'",fontSize:"50%",verticalAlign:"middle"}}});class T3{constructor(e,t,r,i){this.field=e,this.line=t,this.from=r,this.to=i}}class Lh{constructor(e,t,r){this.field=e,this.from=t,this.to=r}map(e){let t=e.mapPos(this.from,-1,kt.TrackDel),r=e.mapPos(this.to,1,kt.TrackDel);return t==null||r==null?null:new Lh(this.field,t,r)}}class _h{constructor(e,t){this.lines=e,this.fieldPositions=t}instantiate(e,t){let r=[],i=[t],s=e.doc.lineAt(t),o=/^\s*/.exec(s.text)[0];for(let l of this.lines){if(r.length){let c=o,u=/^\t*/.exec(l)[0].length;for(let d=0;d<u;d++)c+=e.facet(mo);i.push(t+c.length-u),l=c+l.slice(u)}r.push(l),t+=l.length+1}let a=this.fieldPositions.map(l=>new Lh(l.field,i[l.line]+l.from,i[l.line]+l.to));return{text:r,ranges:a}}static parse(e){let t=[],r=[],i=[],s;for(let o of e.split(/\r\n?|\n/)){for(;s=/[#$]\{(?:(\d+)(?::([^}]*))?|([^}]*))\}/.exec(o);){let a=s[1]?+s[1]:null,l=s[2]||s[3]||"",c=-1;for(let u=0;u<t.length;u++)(a!=null?t[u].seq==a:l&&t[u].name==l)&&(c=u);if(c<0){let u=0;for(;u<t.length&&(a==null||t[u].seq!=null&&t[u].seq<a);)u++;t.splice(u,0,{seq:a,name:l}),c=u;for(let d of i)d.field>=c&&d.field++}i.push(new T3(c,r.length,s.index,s.index+l.length)),o=o.slice(0,s.index)+l+o.slice(s.index+s[0].length)}for(let a;a=/\\([{}])/.exec(o);){o=o.slice(0,a.index)+a[1]+o.slice(a.index+a[0].length);for(let l of i)l.line==r.length&&l.from>a.index&&(l.from--,l.to--)}r.push(o)}return new _h(r,i)}}let N3=le.widget({widget:new class extends sr{toDOM(){let n=document.createElement("span");return n.className="cm-snippetFieldPosition",n}ignoreEvent(){return!1}}}),P3=le.mark({class:"cm-snippetField"});class is{constructor(e,t){this.ranges=e,this.active=t,this.deco=le.set(e.map(r=>(r.from==r.to?N3:P3).range(r.from,r.to)))}map(e){let t=[];for(let r of this.ranges){let i=r.map(e);if(!i)return null;t.push(i)}return new is(t,this.active)}selectionInsideField(e){return e.ranges.every(t=>this.ranges.some(r=>r.field==this.active&&r.from<=t.from&&r.to>=t.to))}}const xo=pe.define({map(n,e){return n&&n.map(e)}}),L3=pe.define(),Qs=bt.define({create(){return null},update(n,e){for(let t of e.effects){if(t.is(xo))return t.value;if(t.is(L3)&&n)return new is(n.ranges,t.value)}return n&&e.docChanged&&(n=n.map(e.changes)),n&&e.selection&&!n.selectionInsideField(e.selection)&&(n=null),n},provide:n=>G.decorations.from(n,e=>e?e.deco:le.none)});function jh(n,e){return B.create(n.filter(t=>t.field==e).map(t=>B.range(t.from,t.to)))}function _3(n){let e=_h.parse(n);return(t,r,i,s)=>{let{text:o,ranges:a}=e.instantiate(t.state,i),l={changes:{from:i,to:s,insert:Ce.of(o)},scrollIntoView:!0,annotations:r?qw.of(r):void 0};if(a.length&&(l.selection=jh(a,0)),a.length>1){let c=new is(a,0),u=l.effects=[xo.of(c)];t.state.field(Qs,!1)===void 0&&u.push(pe.appendConfig.of([Qs,H3,V3,Yw]))}t.dispatch(t.state.update(l))}}function Jw(n){return({state:e,dispatch:t})=>{let r=e.field(Qs,!1);if(!r||n<0&&r.active==0)return!1;let i=r.active+n,s=n>0&&!r.ranges.some(o=>o.field==i+n);return t(e.update({selection:jh(r.ranges,i),effects:xo.of(s?null:new is(r.ranges,i))})),!0}}const j3=({state:n,dispatch:e})=>n.field(Qs,!1)?(e(n.update({effects:xo.of(null)})),!0):!1,B3=Jw(1),$3=Jw(-1),F3=[{key:"Tab",run:B3,shift:$3},{key:"Escape",run:j3}],Mg=J.define({combine(n){return n.length?n[0]:F3}}),H3=ti.highest(ho.compute([Mg],n=>n.facet(Mg)));function D6(n,e){return Object.assign(Object.assign({},e),{apply:_3(n)})}const V3=G.domEventHandlers({mousedown(n,e){let t=e.state.field(Qs,!1),r;if(!t||(r=e.posAtCoords({x:n.clientX,y:n.clientY}))==null)return!1;let i=t.ranges.find(s=>s.from<=r&&s.to>=r);return!i||i.field==t.active?!1:(e.dispatch({selection:jh(t.ranges,i.field),effects:xo.of(t.ranges.some(s=>s.field>i.field)?new is(t.ranges,i.field):null)}),!0)}}),eo={brackets:["(","[","{","'",'"'],before:")]}:;>",stringPrefixes:[]},zr=pe.define({map(n,e){let t=e.mapPos(n,-1,kt.TrackAfter);return t??void 0}}),Bh=new class extends Zr{};Bh.startSide=1;Bh.endSide=-1;const Xw=bt.define({create(){return Ne.empty},update(n,e){if(e.selection){let t=e.state.doc.lineAt(e.selection.main.head).from,r=e.startState.doc.lineAt(e.startState.selection.main.head).from;t!=e.changes.mapPos(r,-1)&&(n=Ne.empty)}n=n.map(e.changes);for(let t of e.effects)t.is(zr)&&(n=n.update({add:[Bh.range(t.value,t.value+1)]}));return n}});function U3(){return[W3,Xw]}const gd="()[]{}<>";function Qw(n){for(let e=0;e<gd.length;e+=2)if(gd.charCodeAt(e)==n)return gd.charAt(e+1);return dh(n<128?n:n+1)}function eS(n,e){return n.languageDataAt("closeBrackets",e)[0]||eo}const z3=typeof navigator=="object"&&/Android\b/.test(navigator.userAgent),W3=G.inputHandler.of((n,e,t,r)=>{if((z3?n.composing:n.compositionStarted)||n.state.readOnly)return!1;let i=n.state.selection.main;if(r.length>2||r.length==2&&dn(St(r,0))==1||e!=i.from||t!=i.to)return!1;let s=K3(n.state,r);return s?(n.dispatch(s),!0):!1}),q3=({state:n,dispatch:e})=>{if(n.readOnly)return!1;let r=eS(n,n.selection.main.head).brackets||eo.brackets,i=null,s=n.changeByRange(o=>{if(o.empty){let a=Z3(n.doc,o.head);for(let l of r)if(l==a&&wu(n.doc,o.head)==Qw(St(l,0)))return{changes:{from:o.head-l.length,to:o.head+l.length},range:B.cursor(o.head-l.length)}}return{range:i=o}});return i||e(n.update(s,{scrollIntoView:!0,userEvent:"delete.backward"})),!i},G3=[{key:"Backspace",run:q3}];function K3(n,e){let t=eS(n,n.selection.main.head),r=t.brackets||eo.brackets;for(let i of r){let s=Qw(St(i,0));if(e==i)return s==i?X3(n,i,r.indexOf(i+i+i)>-1,t):Y3(n,i,s,t.before||eo.before);if(e==s&&tS(n,n.selection.main.from))return J3(n,i,s)}return null}function tS(n,e){let t=!1;return n.field(Xw).between(0,n.doc.length,r=>{r==e&&(t=!0)}),t}function wu(n,e){let t=n.sliceString(e,e+2);return t.slice(0,dn(St(t,0)))}function Z3(n,e){let t=n.sliceString(e-2,e);return dn(St(t,0))==t.length?t:t.slice(1)}function Y3(n,e,t,r){let i=null,s=n.changeByRange(o=>{if(!o.empty)return{changes:[{insert:e,from:o.from},{insert:t,from:o.to}],effects:zr.of(o.to+e.length),range:B.range(o.anchor+e.length,o.head+e.length)};let a=wu(n.doc,o.head);return!a||/\s/.test(a)||r.indexOf(a)>-1?{changes:{insert:e+t,from:o.head},effects:zr.of(o.head+e.length),range:B.cursor(o.head+e.length)}:{range:i=o}});return i?null:n.update(s,{scrollIntoView:!0,userEvent:"input.type"})}function J3(n,e,t){let r=null,i=n.changeByRange(s=>s.empty&&wu(n.doc,s.head)==t?{changes:{from:s.head,to:s.head+t.length,insert:t},range:B.cursor(s.head+t.length)}:r={range:s});return r?null:n.update(i,{scrollIntoView:!0,userEvent:"input.type"})}function X3(n,e,t,r){let i=r.stringPrefixes||eo.stringPrefixes,s=null,o=n.changeByRange(a=>{if(!a.empty)return{changes:[{insert:e,from:a.from},{insert:e,from:a.to}],effects:zr.of(a.to+e.length),range:B.range(a.anchor+e.length,a.head+e.length)};let l=a.head,c=wu(n.doc,l),u;if(c==e){if(Ig(n,l))return{changes:{insert:e+e,from:l},effects:zr.of(l+e.length),range:B.cursor(l+e.length)};if(tS(n,l)){let h=t&&n.sliceDoc(l,l+e.length*3)==e+e+e?e+e+e:e;return{changes:{from:l,to:l+h.length,insert:h},range:B.cursor(l+h.length)}}}else{if(t&&n.sliceDoc(l-2*e.length,l)==e+e&&(u=Eg(n,l-2*e.length,i))>-1&&Ig(n,u))return{changes:{insert:e+e+e+e,from:l},effects:zr.of(l+e.length),range:B.cursor(l+e.length)};if(n.charCategorizer(l)(c)!=ze.Word&&Eg(n,l,i)>-1&&!Q3(n,l,e,i))return{changes:{insert:e+e,from:l},effects:zr.of(l+e.length),range:B.cursor(l+e.length)}}return{range:s=a}});return s?null:n.update(o,{scrollIntoView:!0,userEvent:"input.type"})}function Ig(n,e){let t=At(n).resolveInner(e+1);return t.parent&&t.from==e}function Q3(n,e,t,r){let i=At(n).resolveInner(e,-1),s=r.reduce((o,a)=>Math.max(o,a.length),0);for(let o=0;o<5;o++){let a=n.sliceDoc(i.from,Math.min(i.to,i.from+t.length+s)),l=a.indexOf(t);if(!l||l>-1&&r.indexOf(a.slice(0,l))>-1){let u=i.firstChild;for(;u&&u.from==i.from&&u.to-u.from>t.length+l;){if(n.sliceDoc(u.to-t.length,u.to)==t)return!1;u=u.firstChild}return!0}let c=i.to==e&&i.parent;if(!c)break;i=c}return!1}function Eg(n,e,t){let r=n.charCategorizer(e);if(r(n.sliceDoc(e-1,e))!=ze.Word)return e;for(let i of t){let s=e-i.length;if(n.sliceDoc(s,e)==i&&r(n.sliceDoc(s-1,s))!=ze.Word)return s}return-1}function eL(n={}){return[rn,Yt.of(n),O3,tL,Yw]}const nS=[{key:"Ctrl-Space",run:M3},{key:"Escape",run:I3},{key:"ArrowDown",run:Xo(!0)},{key:"ArrowUp",run:Xo(!1)},{key:"PageDown",run:Xo(!0,"page")},{key:"PageUp",run:Xo(!1,"page")},{key:"Enter",run:A3}],tL=ti.highest(ho.computeN([Yt],n=>n.facet(Yt).defaultKeymap?[nS]:[]));class nL{constructor(e,t,r){this.from=e,this.to=t,this.diagnostic=r}}class Hr{constructor(e,t,r){this.diagnostics=e,this.panel=t,this.selected=r}static init(e,t,r){let i=e,s=r.facet(sS).markerFilter;s&&(i=s(i));let o=le.set(i.map(a=>a.from==a.to||a.from==a.to-1&&r.doc.lineAt(a.from).to==a.from?le.widget({widget:new dL(a),diagnostic:a}).range(a.from):le.mark({attributes:{class:"cm-lintRange cm-lintRange-"+a.severity+(a.markClass?" "+a.markClass:"")},diagnostic:a}).range(a.from,a.to)),!0);return new Hr(o,t,qi(o))}}function qi(n,e=null,t=0){let r=null;return n.between(t,1e9,(i,s,{spec:o})=>{if(!(e&&o.diagnostic!=e))return r=new nL(i,s,o.diagnostic),!1}),r}function rL(n,e){let t=n.startState.doc.lineAt(e.pos);return!!(n.effects.some(r=>r.is(rS))||n.changes.touchesRange(t.from,t.to))}function iL(n,e){return n.field(on,!1)?e:e.concat(pe.appendConfig.of(pL))}const rS=pe.define(),$h=pe.define(),iS=pe.define(),on=bt.define({create(){return new Hr(le.none,null,null)},update(n,e){if(e.docChanged){let t=n.diagnostics.map(e.changes),r=null;if(n.selected){let i=e.changes.mapPos(n.selected.from,1);r=qi(t,n.selected.diagnostic,i)||qi(t,null,i)}n=new Hr(t,n.panel,r)}for(let t of e.effects)t.is(rS)?n=Hr.init(t.value,n.panel,e.state):t.is($h)?n=new Hr(n.diagnostics,t.value?Su.open:null,n.selected):t.is(iS)&&(n=new Hr(n.diagnostics,n.panel,t.value));return n},provide:n=>[Gs.from(n,e=>e.panel),G.decorations.from(n,e=>e.diagnostics)]}),sL=le.mark({class:"cm-lintRange cm-lintRange-active"});function oL(n,e,t){let{diagnostics:r}=n.state.field(on),i=[],s=2e8,o=0;r.between(e-(t<0?1:0),e+(t>0?1:0),(l,c,{spec:u})=>{e>=l&&e<=c&&(l==c||(e>l||t>0)&&(e<c||t<0))&&(i.push(u.diagnostic),s=Math.min(l,s),o=Math.max(c,o))});let a=n.state.facet(sS).tooltipFilter;return a&&(i=a(i)),i.length?{pos:s,end:o,above:n.state.doc.lineAt(s).to<o,create(){return{dom:aL(n,i)}}}:null}function aL(n,e){return $e("ul",{class:"cm-tooltip-lint"},e.map(t=>aS(n,t,!1)))}const lL=n=>{let e=n.state.field(on,!1);(!e||!e.panel)&&n.dispatch({effects:iL(n.state,[$h.of(!0)])});let t=qs(n,Su.open);return t&&t.dom.querySelector(".cm-panel-lint ul").focus(),!0},Dg=n=>{let e=n.state.field(on,!1);return!e||!e.panel?!1:(n.dispatch({effects:$h.of(!1)}),!0)},cL=n=>{let e=n.state.field(on,!1);if(!e)return!1;let t=n.state.selection.main,r=e.diagnostics.iter(t.to+1);return!r.value&&(r=e.diagnostics.iter(0),!r.value||r.from==t.from&&r.to==t.to)?!1:(n.dispatch({selection:{anchor:r.from,head:r.to},scrollIntoView:!0}),!0)},uL=[{key:"Mod-Shift-m",run:lL,preventDefault:!0},{key:"F8",run:cL}],sS=J.define({combine(n){return Object.assign({sources:n.map(e=>e.source)},Zn(n.map(e=>e.config),{delay:750,markerFilter:null,tooltipFilter:null,needsRefresh:null},{needsRefresh:(e,t)=>e?t?r=>e(r)||t(r):e:t}))}});function oS(n){let e=[];if(n)e:for(let{name:t}of n){for(let r=0;r<t.length;r++){let i=t[r];if(/[a-zA-Z]/.test(i)&&!e.some(s=>s.toLowerCase()==i.toLowerCase())){e.push(i);continue e}}e.push("")}return e}function aS(n,e,t){var r;let i=t?oS(e.actions):[];return $e("li",{class:"cm-diagnostic cm-diagnostic-"+e.severity},$e("span",{class:"cm-diagnosticText"},e.renderMessage?e.renderMessage():e.message),(r=e.actions)===null||r===void 0?void 0:r.map((s,o)=>{let a=!1,l=h=>{if(h.preventDefault(),a)return;a=!0;let p=qi(n.state.field(on).diagnostics,e);p&&s.apply(n,p.from,p.to)},{name:c}=s,u=i[o]?c.indexOf(i[o]):-1,d=u<0?c:[c.slice(0,u),$e("u",c.slice(u,u+1)),c.slice(u+1)];return $e("button",{type:"button",class:"cm-diagnosticAction",onclick:l,onmousedown:l,"aria-label":` Action: ${c}${u<0?"":` (access key "${i[o]})"`}.`},d)}),e.source&&$e("div",{class:"cm-diagnosticSource"},e.source))}class dL extends sr{constructor(e){super(),this.diagnostic=e}eq(e){return e.diagnostic==this.diagnostic}toDOM(){return $e("span",{class:"cm-lintPoint cm-lintPoint-"+this.diagnostic.severity})}}class Rg{constructor(e,t){this.diagnostic=t,this.id="item_"+Math.floor(Math.random()*4294967295).toString(16),this.dom=aS(e,t,!0),this.dom.id=this.id,this.dom.setAttribute("role","option")}}class Su{constructor(e){this.view=e,this.items=[];let t=i=>{if(i.keyCode==27)Dg(this.view),this.view.focus();else if(i.keyCode==38||i.keyCode==33)this.moveSelection((this.selectedIndex-1+this.items.length)%this.items.length);else if(i.keyCode==40||i.keyCode==34)this.moveSelection((this.selectedIndex+1)%this.items.length);else if(i.keyCode==36)this.moveSelection(0);else if(i.keyCode==35)this.moveSelection(this.items.length-1);else if(i.keyCode==13)this.view.focus();else if(i.keyCode>=65&&i.keyCode<=90&&this.selectedIndex>=0){let{diagnostic:s}=this.items[this.selectedIndex],o=oS(s.actions);for(let a=0;a<o.length;a++)if(o[a].toUpperCase().charCodeAt(0)==i.keyCode){let l=qi(this.view.state.field(on).diagnostics,s);l&&s.actions[a].apply(e,l.from,l.to)}}else return;i.preventDefault()},r=i=>{for(let s=0;s<this.items.length;s++)this.items[s].dom.contains(i.target)&&this.moveSelection(s)};this.list=$e("ul",{tabIndex:0,role:"listbox","aria-label":this.view.state.phrase("Diagnostics"),onkeydown:t,onclick:r}),this.dom=$e("div",{class:"cm-panel-lint"},this.list,$e("button",{type:"button",name:"close","aria-label":this.view.state.phrase("close"),onclick:()=>Dg(this.view)},"×")),this.update()}get selectedIndex(){let e=this.view.state.field(on).selected;if(!e)return-1;for(let t=0;t<this.items.length;t++)if(this.items[t].diagnostic==e.diagnostic)return t;return-1}update(){let{diagnostics:e,selected:t}=this.view.state.field(on),r=0,i=!1,s=null;for(e.between(0,this.view.state.doc.length,(o,a,{spec:l})=>{let c=-1,u;for(let d=r;d<this.items.length;d++)if(this.items[d].diagnostic==l.diagnostic){c=d;break}c<0?(u=new Rg(this.view,l.diagnostic),this.items.splice(r,0,u),i=!0):(u=this.items[c],c>r&&(this.items.splice(r,c-r),i=!0)),t&&u.diagnostic==t.diagnostic?u.dom.hasAttribute("aria-selected")||(u.dom.setAttribute("aria-selected","true"),s=u):u.dom.hasAttribute("aria-selected")&&u.dom.removeAttribute("aria-selected"),r++});r<this.items.length&&!(this.items.length==1&&this.items[0].diagnostic.from<0);)i=!0,this.items.pop();this.items.length==0&&(this.items.push(new Rg(this.view,{from:-1,to:-1,severity:"info",message:this.view.state.phrase("No diagnostics")})),i=!0),s?(this.list.setAttribute("aria-activedescendant",s.id),this.view.requestMeasure({key:this,read:()=>({sel:s.dom.getBoundingClientRect(),panel:this.list.getBoundingClientRect()}),write:({sel:o,panel:a})=>{o.top<a.top?this.list.scrollTop-=a.top-o.top:o.bottom>a.bottom&&(this.list.scrollTop+=o.bottom-a.bottom)}})):this.selectedIndex<0&&this.list.removeAttribute("aria-activedescendant"),i&&this.sync()}sync(){let e=this.list.firstChild;function t(){let r=e;e=r.nextSibling,r.remove()}for(let r of this.items)if(r.dom.parentNode==this.list){for(;e!=r.dom;)t();e=r.dom.nextSibling}else this.list.insertBefore(r.dom,e);for(;e;)t()}moveSelection(e){if(this.selectedIndex<0)return;let t=this.view.state.field(on),r=qi(t.diagnostics,this.items[e].diagnostic);r&&this.view.dispatch({selection:{anchor:r.from,head:r.to},scrollIntoView:!0,effects:iS.of(r)})}static open(e){return new Su(e)}}function fL(n,e='viewBox="0 0 40 40"'){return`url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" ${e}>${encodeURIComponent(n)}</svg>')`}function Qo(n){return fL(`<path d="m0 2.5 l2 -1.5 l1 0 l2 1.5 l1 0" stroke="${n}" fill="none" stroke-width=".7"/>`,'width="6" height="3"')}const hL=G.baseTheme({".cm-diagnostic":{padding:"3px 6px 3px 8px",marginLeft:"-1px",display:"block",whiteSpace:"pre-wrap"},".cm-diagnostic-error":{borderLeft:"5px solid #d11"},".cm-diagnostic-warning":{borderLeft:"5px solid orange"},".cm-diagnostic-info":{borderLeft:"5px solid #999"},".cm-diagnostic-hint":{borderLeft:"5px solid #66d"},".cm-diagnosticAction":{font:"inherit",border:"none",padding:"2px 4px",backgroundColor:"#444",color:"white",borderRadius:"3px",marginLeft:"8px",cursor:"pointer"},".cm-diagnosticSource":{fontSize:"70%",opacity:.7},".cm-lintRange":{backgroundPosition:"left bottom",backgroundRepeat:"repeat-x",paddingBottom:"0.7px"},".cm-lintRange-error":{backgroundImage:Qo("#d11")},".cm-lintRange-warning":{backgroundImage:Qo("orange")},".cm-lintRange-info":{backgroundImage:Qo("#999")},".cm-lintRange-hint":{backgroundImage:Qo("#66d")},".cm-lintRange-active":{backgroundColor:"#ffdd9980"},".cm-tooltip-lint":{padding:0,margin:0},".cm-lintPoint":{position:"relative","&:after":{content:'""',position:"absolute",bottom:0,left:"-2px",borderLeft:"3px solid transparent",borderRight:"3px solid transparent",borderBottom:"4px solid #d11"}},".cm-lintPoint-warning":{"&:after":{borderBottomColor:"orange"}},".cm-lintPoint-info":{"&:after":{borderBottomColor:"#999"}},".cm-lintPoint-hint":{"&:after":{borderBottomColor:"#66d"}},".cm-panel.cm-panel-lint":{position:"relative","& ul":{maxHeight:"100px",overflowY:"auto","& [aria-selected]":{backgroundColor:"#ddd","& u":{textDecoration:"underline"}},"&:focus [aria-selected]":{background_fallback:"#bdf",backgroundColor:"Highlight",color_fallback:"white",color:"HighlightText"},"& u":{textDecoration:"none"},padding:0,margin:0},"& [name=close]":{position:"absolute",top:"0",right:"2px",background:"inherit",border:"none",font:"inherit",padding:0,margin:0}}}),pL=[on,G.decorations.compute([on],n=>{let{selected:e,panel:t}=n.field(on);return!e||!t||e.from==e.to?le.none:le.set([sL.range(e.from,e.to)])}),XT(oL,{hideOn:rL}),hL];var Og=function(e){e===void 0&&(e={});var{crosshairCursor:t=!1}=e,r=[];e.closeBracketsKeymap!==!1&&(r=r.concat(G3)),e.defaultKeymap!==!1&&(r=r.concat(P9)),e.searchKeymap!==!1&&(r=r.concat(o3)),e.historyKeymap!==!1&&(r=r.concat(WP)),e.foldKeymap!==!1&&(r=r.concat(iP)),e.completionKeymap!==!1&&(r=r.concat(nS)),e.lintKeymap!==!1&&(r=r.concat(uL));var i=[];return e.lineNumbers!==!1&&i.push(aN()),e.highlightActiveLineGutter!==!1&&i.push(uN()),e.highlightSpecialChars!==!1&&i.push(ET()),e.history!==!1&&i.push(_P()),e.foldGutter!==!1&&i.push(lP()),e.drawSelection!==!1&&i.push(vT()),e.dropCursor!==!1&&i.push(ST()),e.allowMultipleSelections!==!1&&i.push(ye.allowMultipleSelections.of(!0)),e.indentOnInput!==!1&&i.push(KN()),e.syntaxHighlighting!==!1&&i.push(Jy(fP,{fallback:!0})),e.bracketMatching!==!1&&i.push(xP()),e.closeBrackets!==!1&&i.push(U3()),e.autocompletion!==!1&&i.push(eL()),e.rectangularSelection!==!1&&i.push(VT()),t!==!1&&i.push(WT()),e.highlightActiveLine!==!1&&i.push(PT()),e.highlightSelectionMatches!==!1&&i.push(H9()),e.tabSize&&typeof e.tabSize=="number"&&i.push(mo.of(" ".repeat(e.tabSize))),i.concat([ho.of(r.flat())]).filter(Boolean)};const mL="#e5c07b",Tg="#e06c75",gL="#56b6c2",vL="#ffffff",ec="#abb2bf",Bf="#7d8799",bL="#61afef",xL="#98c379",Ng="#d19a66",yL="#c678dd",wL="#21252b",Pg="#2c313a",Lg="#282c34",vd="#353a42",SL="#3E4451",_g="#528bff",CL=G.theme({"&":{color:ec,backgroundColor:Lg},".cm-content":{caretColor:_g},".cm-cursor, .cm-dropCursor":{borderLeftColor:_g},"&.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground, .cm-selectionBackground, .cm-content ::selection":{backgroundColor:SL},".cm-panels":{backgroundColor:wL,color:ec},".cm-panels.cm-panels-top":{borderBottom:"2px solid black"},".cm-panels.cm-panels-bottom":{borderTop:"2px solid black"},".cm-searchMatch":{backgroundColor:"#72a1ff59",outline:"1px solid #457dff"},".cm-searchMatch.cm-searchMatch-selected":{backgroundColor:"#6199ff2f"},".cm-activeLine":{backgroundColor:"#6699ff0b"},".cm-selectionMatch":{backgroundColor:"#aafe661a"},"&.cm-focused .cm-matchingBracket, &.cm-focused .cm-nonmatchingBracket":{backgroundColor:"#bad0f847"},".cm-gutters":{backgroundColor:Lg,color:Bf,border:"none"},".cm-activeLineGutter":{backgroundColor:Pg},".cm-foldPlaceholder":{backgroundColor:"transparent",border:"none",color:"#ddd"},".cm-tooltip":{border:"none",backgroundColor:vd},".cm-tooltip .cm-tooltip-arrow:before":{borderTopColor:"transparent",borderBottomColor:"transparent"},".cm-tooltip .cm-tooltip-arrow:after":{borderTopColor:vd,borderBottomColor:vd},".cm-tooltip-autocomplete":{"& > ul > li[aria-selected]":{backgroundColor:Pg,color:ec}}},{dark:!0}),kL=vo.define([{tag:j.keyword,color:yL},{tag:[j.name,j.deleted,j.character,j.propertyName,j.macroName],color:Tg},{tag:[j.function(j.variableName),j.labelName],color:bL},{tag:[j.color,j.constant(j.name),j.standard(j.name)],color:Ng},{tag:[j.definition(j.name),j.separator],color:ec},{tag:[j.typeName,j.className,j.number,j.changed,j.annotation,j.modifier,j.self,j.namespace],color:mL},{tag:[j.operator,j.operatorKeyword,j.url,j.escape,j.regexp,j.link,j.special(j.string)],color:gL},{tag:[j.meta,j.comment],color:Bf},{tag:j.strong,fontWeight:"bold"},{tag:j.emphasis,fontStyle:"italic"},{tag:j.strikethrough,textDecoration:"line-through"},{tag:j.link,color:Bf,textDecoration:"underline"},{tag:j.heading,fontWeight:"bold",color:Tg},{tag:[j.atom,j.bool,j.special(j.variableName)],color:Ng},{tag:[j.processingInstruction,j.string,j.inserted],color:xL},{tag:j.invalid,color:vL}]),AL=[CL,Jy(kL)];var ML=G.theme({"&":{backgroundColor:"#fff"}},{dark:!1}),IL=function(e){e===void 0&&(e={});var{indentWithTab:t=!0,editable:r=!0,readOnly:i=!1,theme:s="light",placeholder:o="",basicSetup:a=!0}=e,l=[];switch(t&&l.unshift(ho.of([L9])),a&&(typeof a=="boolean"?l.unshift(Og()):l.unshift(Og(a))),o&&l.unshift(BT(o)),s){case"light":l.push(ML);break;case"dark":l.push(AL);break;case"none":break;default:l.push(s);break}return r===!1&&l.push(G.editable.of(!1)),i&&l.push(ye.readOnly.of(!0)),[...l]},EL=n=>({line:n.state.doc.lineAt(n.state.selection.main.from),lineCount:n.state.doc.lines,lineBreak:n.state.lineBreak,length:n.state.doc.length,readOnly:n.state.readOnly,tabSize:n.state.tabSize,selection:n.state.selection,selectionAsSingle:n.state.selection.asSingle().main,ranges:n.state.selection.ranges,selectionCode:n.state.sliceDoc(n.state.selection.main.from,n.state.selection.main.to),selections:n.state.selection.ranges.map(e=>n.state.sliceDoc(e.from,e.to)),selectedText:n.state.selection.ranges.some(e=>!e.empty)});class DL{constructor(e,t){this.timeLeftMS=void 0,this.timeoutMS=void 0,this.isCancelled=!1,this.isTimeExhausted=!1,this.callbacks=[],this.timeLeftMS=t,this.timeoutMS=t,this.callbacks.push(e)}tick(){if(!this.isCancelled&&!this.isTimeExhausted&&(this.timeLeftMS--,this.timeLeftMS<=0)){this.isTimeExhausted=!0;var e=this.callbacks.slice();this.callbacks.length=0,e.forEach(t=>{try{t()}catch(r){console.error("TimeoutLatch callback error:",r)}})}}cancel(){this.isCancelled=!0,this.callbacks.length=0}reset(){this.timeLeftMS=this.timeoutMS,this.isCancelled=!1,this.isTimeExhausted=!1}get isDone(){return this.isCancelled||this.isTimeExhausted}}class jg{constructor(){this.interval=null,this.latches=new Set}add(e){this.latches.add(e),this.start()}remove(e){this.latches.delete(e),this.latches.size===0&&this.stop()}start(){this.interval===null&&(this.interval=setInterval(()=>{this.latches.forEach(e=>{e.tick(),e.isDone&&this.remove(e)})},1))}stop(){this.interval!==null&&(clearInterval(this.interval),this.interval=null)}}var bd=null,RL=()=>typeof window>"u"?new jg:(bd||(bd=new jg),bd),Bg=Kn.define(),OL=200,TL=[];function NL(n){var{value:e,selection:t,onChange:r,onStatistics:i,onCreateEditor:s,onUpdate:o,extensions:a=TL,autoFocus:l,theme:c="light",height:u=null,minHeight:d=null,maxHeight:h=null,width:p=null,minWidth:g=null,maxWidth:m=null,placeholder:v="",editable:b=!0,readOnly:y=!1,indentWithTab:S=!0,basicSetup:w=!0,root:C,initialState:k}=n,[A,I]=x.useState(),[D,R]=x.useState(),[T,N]=x.useState(),P=x.useState(()=>({current:null}))[0],L=x.useState(()=>({current:null}))[0],$=G.theme({"&":{height:u,minHeight:d,maxHeight:h,width:p,minWidth:g,maxWidth:m},"& .cm-scroller":{height:"100% !important"}}),q=G.updateListener.of(ee=>{if(ee.docChanged&&typeof r=="function"&&!ee.transactions.some(K=>K.annotation(Bg))){P.current?P.current.reset():(P.current=new DL(()=>{if(L.current){var K=L.current;L.current=null,K()}P.current=null},OL),RL().add(P.current));var de=ee.state.doc,ge=de.toString();r(ge,ee)}i&&i(EL(ee))}),Z=IL({theme:c,editable:b,readOnly:y,placeholder:v,indentWithTab:S,basicSetup:w}),ae=[q,$,...Z];return o&&typeof o=="function"&&ae.push(G.updateListener.of(o)),ae=ae.concat(a),x.useLayoutEffect(()=>{if(A&&!T){var ee={doc:e,selection:t,extensions:ae},de=k?ye.fromJSON(k.json,ee,k.fields):ye.create(ee);if(N(de),!D){var ge=new G({state:de,parent:A,root:C});R(ge),s&&s(ge,de)}}return()=>{D&&(N(void 0),R(void 0))}},[A,T]),x.useEffect(()=>{n.container&&I(n.container)},[n.container]),x.useEffect(()=>()=>{D&&(D.destroy(),R(void 0)),P.current&&(P.current.cancel(),P.current=null)},[D]),x.useEffect(()=>{l&&D&&D.focus()},[l,D]),x.useEffect(()=>{D&&D.dispatch({effects:pe.reconfigure.of(ae)})},[c,a,u,d,h,p,g,m,v,b,y,S,w,r,o]),x.useEffect(()=>{if(e!==void 0){var ee=D?D.state.doc.toString():"";if(D&&e!==ee){var de=P.current&&!P.current.isDone,ge=()=>{D&&e!==D.state.doc.toString()&&D.dispatch({changes:{from:0,to:D.state.doc.toString().length,insert:e||""},annotations:[Bg.of(!0)]})};de?L.current=ge:ge()}}},[e,D]),{state:T,setState:N,view:D,setView:R,container:A,setContainer:I}}var PL=["className","value","selection","extensions","onChange","onStatistics","onCreateEditor","onUpdate","autoFocus","theme","height","minHeight","maxHeight","width","minWidth","maxWidth","basicSetup","placeholder","indentWithTab","editable","readOnly","root","initialState"],LL=x.forwardRef((n,e)=>{var{className:t,value:r="",selection:i,extensions:s=[],onChange:o,onStatistics:a,onCreateEditor:l,onUpdate:c,autoFocus:u,theme:d="light",height:h,minHeight:p,maxHeight:g,width:m,minWidth:v,maxWidth:b,basicSetup:y,placeholder:S,indentWithTab:w,editable:C,readOnly:k,root:A,initialState:I}=n,D=Lb(n,PL),R=x.useRef(null),{state:T,view:N,container:P,setContainer:L}=NL({root:A,value:r,autoFocus:u,theme:d,height:h,minHeight:p,maxHeight:g,width:m,minWidth:v,maxWidth:b,basicSetup:y,placeholder:S,indentWithTab:w,editable:C,readOnly:k,selection:i,onChange:o,onStatistics:a,onCreateEditor:l,onUpdate:c,extensions:s,initialState:I});x.useImperativeHandle(e,()=>({editor:R.current,state:T,view:N}),[R,P,T,N]);var $=x.useCallback(Z=>{R.current=Z,L(Z)},[L]);if(typeof r!="string")throw new Error("value must be typeof string but got "+typeof r);var q=typeof d=="string"?"cm-theme-"+d:"cm-theme";return f.jsx("div",se({ref:$,className:""+q+(t?" "+t:"")},D))});LL.displayName="CodeMirror";const _L=()=>{const{isDirty:n}=qc(),e=()=>{window.location.hash="/"};return f.jsx(ne,{className:"text-grey-700 hover:!text-grey-900","data-testid":"exit-settings",icon:"close",id:"done-button",label:"",link:!0,title:"Close (ESC)",onClick:()=>js(n,e)})},jL="/ghost/assets/logo-loader-88VPEpXE.mp4",BL="/ghost/assets/logo-loader-dark-CuSPz-zc.mp4",lS=x.createContext(void 0),$L=({children:n})=>{const e=R2(),t=O2(),r=T2(),i=pb(),[s,o]=x.useState(!1);x.useEffect(()=>{o(document.documentElement.classList.contains("dark"))},[]);const a=[e,t,r,i],l=a.map(c=>c.error).find(Boolean);if(l)throw l;return a.some(c=>c.isLoading)?f.jsx("div",{className:"gh-loading-orb-container",style:{width:"100vw",height:"100vh",display:"flex",alignItems:"center",justifyContent:"center",paddingBottom:"8vh"},children:f.jsx("video",{autoPlay:!0,className:"gh-loading-orb",height:"100",preload:"metadata",style:{width:"100px",height:"100px"},width:"100",loop:!0,muted:!0,playsInline:!0,children:f.jsx("source",{src:s?BL:jL,type:"video/mp4"})})}):f.jsx(lS.Provider,{value:{settings:e.data.settings,siteData:t.data.site,config:r.data.config,currentUser:i.data},children:n})},Pe=()=>x.useContext(lS),Ot=({savingDelay:n,onValidate:e}={})=>{const t=x.useRef(null),{siteData:r,settings:i}=Pe(),{mutateAsync:s}=Xr(),o=vt(),[a,l]=x.useState(!1),{formState:c,saveState:u,handleSave:d,updateForm:h,setFormState:p,reset:g,validate:m,errors:v,clearError:b,okProps:y}=uh({initialState:i||[],savingDelay:n,onSave:async()=>{await s?.(w())},onSaveError:o,onValidate:e}),{setGlobalDirtyState:S}=qc();x.useEffect(()=>{S(c.some(I=>I.dirty))},[c,S]),x.useEffect(()=>{a&&t.current&&t.current.focus()},[a]),x.useEffect(()=>{(!a||u==="saving")&&p(()=>i)},[i]);const w=()=>c?.filter(I=>I.dirty)?.map(I=>({key:I.key,value:I.value}));return{localSettings:c,isEditing:a,saveState:u,focusRef:t,siteData:r,handleSave:async()=>{const I=await d();return I&&l(!1),I},handleCancel:()=>{g(),l(!1)},updateSetting:(I,D)=>{h(R=>R.some(T=>T.key===I)?R.map(T=>T.key===I?{...T,value:D,dirty:!0}:T):[...R,{key:I,value:D,dirty:!0}])},handleEditingChange:I=>{l(I)},validate:m,errors:v,clearError:b,okProps:y}},FL=(n,e)=>{const[t,r]=x.useState("Save"),[i,s]=x.useState(!1);return{savingTitle:t,isSaving:i,onSaveClick:async()=>{s(!0),r("Saving"),await n({fakeWhenUnchanged:e}),setTimeout(()=>{r("Saved"),setTimeout(()=>{r("Save"),s(!1)},1e3)},1e3)}}},HL=({afterClose:n})=>{const{localSettings:e,handleSave:t,updateSetting:r}=Ot(),i=ir(),[s,o]=Te(e,["codeinjection_head","codeinjection_foot"]),[a,l]=x.useState("header"),c=x.useRef(null),u=x.useRef(null),d=x.useMemo(()=>no(()=>import("./index-j2_Q-_8H.js"),__vite__mapDeps([7,1,2,3,4,5,6])).then(y=>y.html()),[]),h={extensions:[d],hint:"Code here will be injected into the {{ghost_head}} tag on every page of the site",value:s||"",onChange:y=>r("codeinjection_head",y)},p={extensions:[d],hint:"Code here will be injected into the {{ghost_foot}} tag on every page of the site",value:o||"",onChange:y=>r("codeinjection_foot",y)},g=[{id:"header",title:"Site header",contents:f.jsx(Qh,{height:"full",...h,ref:c,className:"mt-2","data-testid":"header-code",autoFocus:!0}),tabWrapperClassName:"flex-auto",containerClassName:"h-full"},{id:"footer",title:"Site footer",contents:f.jsx(Qh,{height:"full",...p,ref:u,className:"mt-2","data-testid":"footer-code"}),tabWrapperClassName:"flex-auto",containerClassName:"h-full"}],{savingTitle:m,isSaving:v,onSaveClick:b}=FL(t,!0);return x.useEffect(()=>{const y=S=>{(S.metaKey||S.ctrlKey)&&S.key==="s"&&(S.preventDefault(),b())};return window.addEventListener("keydown",y),()=>{window.removeEventListener("keydown",y)}}),f.jsx(Or,{afterClose:n,backDropClick:!1,cancelLabel:"Close",footer:f.jsx(f.Fragment,{}),height:"full",size:"full",testId:"modal-code-injection",children:f.jsxs("div",{className:"flex h-full flex-col",children:[f.jsxs("div",{className:"mb-4 flex items-center justify-between",children:[f.jsx(ft,{level:2,children:"Code injection"}),f.jsx(_s,{buttons:[{label:"Close",color:"outline",onClick:()=>{i.remove(),n?.()}},{disabled:v,label:m,color:m==="Saved"?"green":"black",onClick:b}]})]}),f.jsx(Gn,{containerClassName:"flex-auto flex flex-col mb-16",selectedTab:a,tabs:g,onTabChange:l})]})})},VL=Ye.create(HL),UL=(n,e)=>`${n}-${e}`,zL=()=>{const[n,e]=x.useState(""),[t,r]=x.useState(!1),i=x.useRef(new Map),[s,o]=x.useState(new Set),a=p=>p.length?p.some(g=>g.toLowerCase().includes(n.toLowerCase())):!0,l=x.useCallback((p,g)=>{i.current.set(p,g),(!n||g.some(v=>v.toLowerCase().includes(n.toLowerCase())))&&o(v=>new Set(v).add(p))},[n]),c=x.useCallback(p=>{i.current.delete(p),o(g=>{const m=new Set(g);return m.delete(p),m})},[]);x.useEffect(()=>{const p=new Set;i.current.forEach((g,m)=>{(!n||g.some(b=>b.toLowerCase().includes(n.toLowerCase())))&&p.add(m)}),o(p)},[n]);const u=x.useCallback(p=>s.size===1&&s.has(p),[s]),d=x.useCallback(()=>s,[s]),h=p=>{if(!n)return p;if(typeof p=="string"){const g=n.split(/\s+/).map(b=>b.toLowerCase()),m=g.map(b=>b.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")).join("|");return p.split(new RegExp(`(${m})`,"gi")).map(b=>g.includes(b.toLowerCase())?f.jsx("span",{className:"bg-yellow-500/40",children:b}):b)}else return Array.isArray(p)?p.map(g=>h(g)):p&&typeof p=="object"&&p?Y.Children.map(p,g=>g&&typeof g=="object"&&"props"in g?h(g.props.children):g):p};return{filter:n,setFilter:e,checkVisible:a,highlightKeywords:h,noResult:t,setNoResult:r,registerComponent:l,unregisterComponent:c,getVisibleComponents:d,isOnlyVisibleComponent:u}},cS=x.createContext({route:"",updateRoute:()=>{},loadingModal:!1,eventTarget:new EventTarget});function WL(n,e){if(!e)return null;const t=new RegExp(`/${n}/(.*)`),r=e?.match(t);return r?r[1]:null}const qL=(n,e,t,r)=>{let i=window.location.hash;i=i.substring(1);const s=`${window.location.protocol}//${window.location.hostname}`,o=new URL(i,s),a=WL(n,o.pathname);if(!r||!t)return{pathName:a||""};const l=o.searchParams;if(a&&r&&t){const[,c]=Object.entries(r).find(([h])=>xd(e||"",h))||[],[u,d]=Object.entries(r).find(([h])=>xd(a,h))||[];return{pathName:a,changingModal:d&&d!==c,modal:u&&d?t().then(({default:h})=>{Ye.show(h[d],{pathName:a,params:xd(a,u),searchParams:l})}):void 0}}return{pathName:""}},xd=(n,e)=>{const t=new RegExp("^"+e.replace(/:(\w+)/g,"(?<$1>[^/]+)")+"/?$"),r=n.match(t);if(r)return r.groups||{}},GL=({basePath:n,modals:e,children:t})=>{const{externalNavigate:r}=N2(),[i,s]=x.useState(void 0),[o,a]=x.useState(!1),[l]=x.useState(new EventTarget),c=x.useCallback(u=>{const d=typeof u=="string"?{route:u}:u;if(d.isExternal){r(d);return}const h=d.route.replace(/^\//,"");h===i||(h?window.location.hash=`/${n}/${h}`:window.location.hash=`/${n}`),l.dispatchEvent(new CustomEvent("routeChange",{detail:{newPath:h,oldPath:i}}))},[n,l,r,i]);return x.useEffect(()=>{setTimeout(()=>{e?.load()},1e3)},[]),x.useEffect(()=>{const u=()=>{s(d=>{const{pathName:h,modal:p,changingModal:g}=qL(n,d,e?.load,e?.paths);return p&&g&&(a(!0),p.then(()=>a(!1))),h})};return u(),window.addEventListener("hashchange",u),()=>{window.removeEventListener("hashchange",u)}},[]),i===void 0?null:f.jsx(cS.Provider,{value:{route:i,updateRoute:c,loadingModal:o,eventTarget:l},children:t})};function be(){return x.useContext(cS)}function KL(n,e){const{eventTarget:t}=be(),r=x.useCallback(n,e);x.useEffect(()=>{const i=s=>{const o=s;r(o.detail.newPath,o.detail.oldPath)};return t.addEventListener("routeChange",i),()=>t.removeEventListener("routeChange",i)},[t,r])}const uS=x.createContext({updateSection:()=>{},updateNav:()=>{},currentSection:null,updateNavigatedSection:()=>{},scrollToSection:()=>{}}),Cu=()=>x.useContext(uS),dS=193,yd=(n,e)=>{const t=document.getElementById("admin-x-settings-scroller"),r=n.getBoundingClientRect().top+t.scrollTop;t.scrollTo({behavior:e?"smooth":"instant",top:r-dS})},ZL=(n,e)=>{const t=document.getElementById("admin-x-settings-sidebar-scroller"),r=n.getBoundingClientRect(),i=t.getBoundingClientRect(),s=i.top+40;if(r.top>=s&&r.left>=i.left&&r.right<=i.right&&r.bottom<=i.bottom||!["auto","scroll"].includes(getComputedStyle(t).overflowY))return;const o=e?"smooth":"instant";t.querySelector("[data-setting-nav-item]")===n?t.scrollTo({top:0,behavior:o}):r.top<s?t.scrollTo({top:t.scrollTop+r.top-s,behavior:o}):t.scrollTo({top:t.scrollTop+r.top-i.top-i.height+r.height+4,behavior:o})},YL=(n,e,t)=>{const r=e.map(({isIntersecting:a,target:l})=>({isIntersecting:a,id:Object.entries(t).find(([,c])=>c===l)?.[0]})).filter(a=>a.id),i=r.filter(a=>!n.includes(a.id)&&a.isIntersecting).map(a=>a.id),s=r.filter(a=>!a.isIntersecting).map(a=>a.id),o=n.filter(a=>!s.includes(a)).concat(i);return o.sort((a,l)=>{const c=t[a],u=t[l];return!c||!u?0:c.getBoundingClientRect().top-u.getBoundingClientRect().top}),o},JL=({children:n})=>{const[e,t]=x.useState(null),r=x.useRef({}),i=x.useRef(null),[s,o]=x.useState([]),[a,l]=x.useState(null),[c,u]=x.useState(!1),[d,h]=x.useState(!1),[,p]=x.useState(!1),g=x.useCallback(C=>{t(C),u(!0)},[]),m=x.useRef({}),v=x.useCallback(()=>{const C=new IntersectionObserver(k=>{o(A=>{const I=YL(A,k,r.current);return I.length&&l(I[0]),I})},{rootMargin:`-${dS-50}px 0px -40% 0px`});return Object.values(r.current).forEach(k=>C.observe(k)),C},[]),b=x.useCallback((C,k)=>{r.current[C]!==k&&(r.current[C]&&i.current?.unobserve(r.current[C]),r.current[C]=k,i.current?.observe(k),!d&&C===e&&(yd(k,!1),h(!0)))},[i,e,d]),y=x.useCallback((C,k)=>{m.current[C]=k},[]),S=x.useCallback(C=>{r.current[C]&&yd(r.current[C],!0)},[]),w=x.useMemo(()=>e&&s.includes(e)?e:s.length?s[0]:a,[s,a,e]);return x.useEffect(()=>{c&&(e&&r.current[e]?h(C=>(yd(r.current[e],C),!0)):h(!0),setTimeout(()=>v()))},[c,e,v]),x.useEffect(()=>{c&&w&&m.current[w]&&p(C=>(ZL(m.current[w],C),!0))},[c,w]),f.jsx(uS.Provider,{value:{updateSection:b,updateNav:y,currentSection:w,updateNavigatedSection:g,scrollToSection:S},children:n})},XL=n=>{const{updateSection:e}=Cu(),t=x.useRef(null);return x.useEffect(()=>{n&&t.current&&e(n,t.current)},[n,e]),{ref:t}},QL=n=>{const{updateNav:e}=Cu(),t=x.useRef(null);return x.useEffect(()=>{n&&t.current&&(Array.isArray(n)?n:[n]).forEach(i=>{e(i,t.current)})},[n,e]),{ref:t,props:{"data-setting-nav-item":!0}}},yo="IntegrationsResponseType",R6=yo,e_=Qr({dataType:yo,path:"/integrations/",defaultSearchParams:{include:"api_keys,webhooks",limit:"50"}}),O6=He({method:"POST",path:()=>"/integrations/",body:n=>({integrations:[n]}),searchParams:()=>({include:"api_keys,webhooks"}),updateQueries:{dataType:yo,emberUpdateType:"createOrUpdate",update:(n,e)=>e&&{...e,integrations:e.integrations.concat(n.integrations)}}}),T6=He({method:"PUT",path:n=>`/integrations/${n.id}/`,body:n=>({integrations:[n]}),searchParams:()=>({include:"api_keys,webhooks"}),updateQueries:{dataType:yo,emberUpdateType:"createOrUpdate",update:(n,e)=>e&&{...e,integrations:e.integrations.map(t=>n.integrations.find(({id:i})=>i===t.id)||t)}}}),t_=He({method:"DELETE",path:n=>`/integrations/${n}/`,updateQueries:{dataType:yo,emberUpdateType:"delete",update:(n,e,t)=>({...e,integrations:e.integrations.filter(r=>r.id!==t)})}}),n_="/ghost/assets/Alto-DUBY3bpV.png",r_="/ghost/assets/Bulletin-Dk9xtKp1.png",i_="/ghost/assets/Casper-DD4Wf4m4.png",s_="/ghost/assets/Dawn-LGQGnvjr.png",o_="/ghost/assets/Digest-BLKH5JOV.png",a_="/ghost/assets/Dope-CSZZPvqs.png",l_="/ghost/assets/Ease-DYfAZLvD.png",c_="/ghost/assets/Edge-_GS6qiG-.png",u_="/ghost/assets/Edition-BvM1Yi9K.png",d_="/ghost/assets/Episode-Cwq-Mrvr.png",f_="/ghost/assets/Headline-DcIZ47eY.png",h_="/ghost/assets/Journal-BLX3grkP.png",p_="/ghost/assets/London-D_cZW51W.png",m_="/ghost/assets/Ruby-rSwalIMT.png",g_="/ghost/assets/Solo-D2tiac6Z.png",v_="/ghost/assets/Source-B2xHWmHB.png",b_="/ghost/assets/Source-Magazine-DpXmb6XM.png",x_="/ghost/assets/Source-Newsletter-DPpaH3AQ.png",y_="/ghost/assets/Taste-DFhBlbR7.png",w_="/ghost/assets/Wave-DajHSkAT.png",fS=[{name:"Source",category:"News",previewUrl:"https://source.ghost.io/",ref:"default",image:v_,variants:[{category:"Magazine",previewUrl:"https://source-magazine.ghost.io/",image:b_},{category:"Newsletter",previewUrl:"https://source-newsletter.ghost.io/",image:x_}]},{name:"Casper",category:"Blog",previewUrl:"https://demo.ghost.io/",ref:"TryGhost/Casper",image:i_},{name:"Edition",category:"Newsletter",url:"https://github.com/TryGhost/Edition",previewUrl:"https://edition.ghost.io/",ref:"TryGhost/Edition",image:u_},{name:"Solo",category:"Blog",url:"https://github.com/TryGhost/Solo",previewUrl:"https://solo.ghost.io",ref:"TryGhost/Solo",image:g_},{name:"Taste",category:"Blog",url:"https://github.com/TryGhost/Taste",previewUrl:"https://taste.ghost.io",ref:"TryGhost/Taste",image:y_},{name:"Episode",category:"Podcast",url:"https://github.com/TryGhost/Episode",previewUrl:"https://episode.ghost.io",ref:"TryGhost/Episode",image:d_},{name:"Digest",category:"Newsletter",url:"https://github.com/TryGhost/Digest",previewUrl:"https://digest.ghost.io/",ref:"TryGhost/Digest",image:o_},{name:"Bulletin",category:"Newsletter",url:"https://github.com/TryGhost/Bulletin",previewUrl:"https://bulletin.ghost.io/",ref:"TryGhost/Bulletin",image:r_},{name:"Alto",category:"Blog",url:"https://github.com/TryGhost/Alto",previewUrl:"https://alto.ghost.io",ref:"TryGhost/Alto",image:n_},{name:"Dope",category:"Magazine",url:"https://github.com/TryGhost/Dope",previewUrl:"https://dope.ghost.io",ref:"TryGhost/Dope",image:a_},{name:"Wave",category:"Podcast",url:"https://github.com/TryGhost/Wave",previewUrl:"https://wave.ghost.io",ref:"TryGhost/Wave",image:w_},{name:"Edge",category:"Photography",url:"https://github.com/TryGhost/Edge",previewUrl:"https://edge.ghost.io",ref:"TryGhost/Edge",image:c_},{name:"Dawn",category:"Newsletter",url:"https://github.com/TryGhost/Dawn",previewUrl:"https://dawn.ghost.io/",ref:"TryGhost/Dawn",image:s_},{name:"Ease",category:"Documentation",url:"https://github.com/TryGhost/Ease",previewUrl:"https://ease.ghost.io",ref:"TryGhost/Ease",image:l_},{name:"Headline",category:"News",url:"https://github.com/TryGhost/Headline",previewUrl:"https://headline.ghost.io",ref:"TryGhost/Headline",image:f_},{name:"Ruby",category:"Magazine",url:"https://github.com/TryGhost/Ruby",previewUrl:"https://ruby.ghost.io",ref:"TryGhost/Ruby",image:m_},{name:"London",category:"Photography",url:"https://github.com/TryGhost/London",previewUrl:"https://london.ghost.io",ref:"TryGhost/London",image:p_},{name:"Journal",category:"Newsletter",url:"https://github.com/TryGhost/Journal",previewUrl:"https://journal.ghost.io/",ref:"TryGhost/Journal",image:h_}],$g="/ghost/assets/orb-black-1-44nQS0Zf.png",S_="/ghost/assets/orb-black-2-ua9uyJck.png",Fg="/ghost/assets/orb-black-3-4B29Ahnj.png",Hg="/ghost/assets/orb-black-4-BoaEuayq.png",C_="/ghost/assets/orb-black-5-CC4bN-9P.png",k_="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%201818.2%202500'%20style='enable-background:new%200%200%201818.2%202500'%20xml:space='preserve'%3e%3ctitle%3egoogle-docs%3c/title%3e%3cpath%20d='M1136.4%200h-966C79.6%200%200%2079.5%200%20170.5v2159.1c0%2090.9%2079.5%20170.5%20170.5%20170.5h1477.3c90.9%200%20170.5-79.5%20170.5-170.5V681.8l-397.7-284.1L1136.4%200z'%20style='fill:%234285f4'/%3e%3cpath%20d='M454.5%201818.2h909.1v-113.6h-909l-.1%20113.6zm0%20227.3h681.8v-113.6H454.5v113.6zm0-795.5v113.6h909.1V1250H454.5zm0%20340.9h909.1v-113.6h-909l-.1%20113.6z'%20style='fill:%23f1f1f1'/%3e%3cpath%20d='M1136.4%200v511.4c0%2090.9%2079.5%20170.4%20170.4%20170.4h511.4L1136.4%200z'%20style='fill:%23a1c2fa'/%3e%3c/svg%3e",A_="/ghost/assets/mailchimp-DwTEN-tS.svg",M_="data:image/svg+xml,%3csvg%20height='546'%20viewBox='0%200%20569%20546'%20width='569'%20xmlns='http://www.w3.org/2000/svg'%3e%3ctitle%3epatreon%3c/title%3e%3cg%20fill='%23FF424D'%3e%3ccircle%20cx='362.59'%20cy='204.59'%20data-fill='1'%20r='204.59'/%3e%3cpath%20data-fill='1'%20d='M0%200h100v545.8H0z'/%3e%3c/g%3e%3c/svg%3e",Vg="data:image/svg+xml,%3csvg%20width='152'%20height='179'%20viewBox='0%200%20152%20179'%20xmlns='http://www.w3.org/2000/svg'%3e%3ctitle%3epaypal%3c/title%3e%3cg%20fill='none'%20fill-rule='evenodd'%3e%3cpath%20d='M136.492%2045.453c2.179-13.894-.015-23.348-7.53-31.911C120.688%204.114%20105.741.075%2086.617.075H31.105a7.943%207.943%200%200%200-7.846%206.705L.144%20153.36a4.765%204.765%200%200%200%204.707%205.507h34.27l-2.365%2015a4.168%204.168%200%200%200%204.118%204.818H69.76a6.948%206.948%200%200%200%206.863-5.865l.283-1.468%205.442-34.507.351-1.907a6.947%206.947%200%200%201%206.862-5.865h4.322c27.984%200%2049.896-11.37%2056.299-44.25%202.675-13.74%201.292-25.208-5.783-33.27-2.14-2.439-4.802-4.455-7.907-6.1'%20fill='%23238EC2'/%3e%3cpath%20d='M136.492%2045.453c2.179-13.894-.015-23.348-7.53-31.911C120.688%204.114%20105.741.075%2086.617.075H31.105a7.943%207.943%200%200%200-7.846%206.705L.144%20153.36a4.765%204.765%200%200%200%204.707%205.507h34.27l8.609-54.588-.267%201.711c.609-3.86%203.909-6.704%207.817-6.704h16.288c31.989%200%2057.037-12.996%2064.356-50.582.217-1.113.402-2.191.568-3.251'%20fill='%2320274F'/%3e%3cpath%20d='M56.978%2045.638a6.945%206.945%200%200%201%206.863-5.866h43.514c5.155%200%209.961.337%2014.356%201.045%201.256.202%202.478.435%203.665.698a53.92%2053.92%200%200%201%203.455.885c.558.162%201.106.333%201.646.512%202.157.717%204.166%201.562%206.015%202.541%202.179-13.894-.015-23.348-7.53-31.911C120.688%204.114%20105.741.075%2086.617.075H31.105a7.943%207.943%200%200%200-7.846%206.705L.144%20153.36a4.765%204.765%200%200%200%204.707%205.507h34.27L56.978%2045.638'%20fill='%23253667'/%3e%3c/g%3e%3c/svg%3e",I_="/ghost/assets/slackicon-CBMgLWU6.png",E_="data:image/svg+xml,%3csvg%20width='86'%20height='89'%20xmlns='http://www.w3.org/2000/svg'%3e%3ctitle%3etypeform%3c/title%3e%3cg%20fill='none'%20fill-rule='evenodd'%3e%3cpath%20d='M40.28%2087.561c12.464.154%2021.16-3.994%2030.135-12.175%208.975-8.18%2014.306-16.867%2014.741-28.73.436-11.862-3.412-21.43-12.564-30.581C63.441%206.923%2051.64.9%2039.4.899%2027.158.898%2018.967%206.252%2011.385%2016.07c-7.581%209.818-9.237%2022.212-9.894%2033.921-.657%2011.71-1.15%2017.111%206.608%2024.625%207.758%207.514%2019.718%2012.791%2032.182%2012.945z'%20stroke='%23262627'/%3e%3cpath%20d='M29.136%2037.976v-4.885h25.918v4.885H44.679v27.998H39.51V37.976z'%20fill='%23262627'%20fill-rule='nonzero'/%3e%3c/g%3e%3c/svg%3e",D_="/ghost/assets/zero-bounce-ChbZnu35.png",hS=[{ghostImage:S_,appImage:I_,title:"Share scheduled posts with your team in Slack",url:"https://zapier.com/webintent/create-zap?template=359499"},{ghostImage:Fg,appImage:M_,title:"Connect Patreon to your Ghost membership site",url:"https://zapier.com/webintent/create-zap?template=75801"},{ghostImage:Hg,appImage:D_,title:"Protect email delivery with email verification",url:"https://zapier.com/webintent/create-zap?template=359415"},{ghostImage:C_,appImage:Vg,title:"Add members for successful sales in PayPal",url:"https://zapier.com/webintent/create-zap?template=184423"},{ghostImage:Fg,appImage:Vg,title:"Unsubscribe members who cancel a subscription in PayPal",url:"https://zapier.com/webintent/create-zap?template=359348"},{ghostImage:$g,appImage:k_,title:"Send new post drafts from Google Docs to Ghost",url:"https://zapier.com/webintent/create-zap?template=50924"},{ghostImage:Hg,appImage:E_,title:"Survey new members using Typeform",url:"https://zapier.com/webintent/create-zap?template=359407"},{ghostImage:$g,appImage:A_,title:"Sync email subscribers in Ghost + Mailchimp",url:"https://zapier.com/webintent/create-zap?template=359342"}],pS=x.createContext({officialThemes:fS,zapierTemplates:hS,search:{filter:"",setFilter:()=>{},checkVisible:()=>!0,highlightKeywords:()=>"",noResult:!1,setNoResult:()=>{},registerComponent:()=>{},unregisterComponent:()=>{},getVisibleComponents:()=>new Set,isOnlyVisibleComponent:()=>!1},sortingState:[]}),R_=({children:n,...e})=>{const t=zL(),[r,i]=x.useState([{type:"offers",option:"date-added",direction:"desc"}]);return f.jsx(pS.Provider,{value:{officialThemes:fS,zapierTemplates:hS,...e,search:t,sortingState:r,setSortingState:i},children:f.jsx($L,{children:f.jsx(JL,{children:n})})})},ku=()=>x.useContext(pS),N6=()=>ku().officialThemes,wo=()=>ku().search,P6=()=>ku().upgradeStatus,O_=()=>{const{sortingState:n,setSortingState:e}=ku();return{sortingState:n,setSortingState:e}},Se=({keywords:n,navid:e,children:t,...r})=>{const{checkVisible:i,noResult:s,registerComponent:o,unregisterComponent:a}=wo(),{route:l}=be(),[c,u]=x.useState(!1),{ref:d}=XL(e),h=x.useId(),p=UL(e||"component",h);x.useEffect(()=>(o(p,n),()=>{a(p)}),[p,n,o,a]),x.useEffect(()=>{if(u(l===e),l===e){const v=setTimeout(()=>u(!1),2e3);return()=>clearTimeout(v)}},[l,e]);const m=Y.Children.toArray(t).some(v=>Y.isValidElement(v)&&v.type==="img")?f.jsx("div",{className:"-mx-5 -mb-5 overflow-hidden rounded-b-xl bg-grey-50 md:-mx-7 md:-mb-7",children:Y.Children.map(t,v=>Y.isValidElement(v)&&v.type==="img"?Y.cloneElement(v,{className:`${v.props.className||""} h-full w-full rounded-b-xl`.trim()}):v)}):t;return f.jsx(uR,{ref:d,highlight:c,isVisible:i(n)||s,navid:e,...r,children:m})},T_=({keywords:n})=>f.jsx(Se,{customHeader:f.jsxs("div",{className:"z-10 flex items-start justify-between",children:[f.jsx(Kr,{description:"Add custom code to your publication.",title:"Code injection"}),f.jsx(ne,{className:"mt-[-5px]",color:"clear",label:"Open",size:"sm",onClick:()=>{Ye.show(VL)}})]}),description:"Add custom code to your publication",keywords:n,navid:"code-injection",testId:"code-injection",title:"Code injection"}),N_=ke(T_,"Code injection"),P_=He({method:"POST",path:()=>"/db/",body:n=>{const e=new FormData;return e.append("importfile",n),e}}),L_=He({method:"DELETE",path:()=>"/db/"}),__=()=>Ff("/db/"),j_=({keywords:n})=>{const{mutateAsync:e}=L_(),t=Hf(),r=vt(),i=()=>{Ye.show(Gr,{title:"Would you really like to delete all content from your blog?",prompt:"This is permanent! No backups, no restores, no magic undo button. We warned you, k?",okColor:"red",okLabel:"Delete",onOk:async s=>{try{await e(null),tr({title:"All content deleted from database.",type:"success"}),s?.remove(),await t.refetchQueries()}catch(o){r(o)}}})};return f.jsx(Se,{customHeader:f.jsx(Kr,{description:"Permanently delete all posts and tags from the database, a hard reset",title:"Danger zone"}),keywords:n,navid:"dangerzone",testId:"dangerzone",children:f.jsx("div",{children:f.jsx(ne,{color:"red",label:"Delete all content",onClick:i})})})},B_=ke(j_,"Danger zone"),$_=({keywords:n})=>{const{updateRoute:e}=be(),t=()=>{e("history/view")};return f.jsx(Se,{customButtons:f.jsx(ne,{className:"mt-[-5px]",color:"clear",label:"View history",size:"sm",onClick:t}),description:"View system event log",keywords:n,navid:"history",testId:"history",title:"History"})},F_=ke($_,"History"),H_="/ghost/assets/integrations-settings-B7r1LnOP.png";function mS(){const{config:n,settings:e}=Pe(),[t]=Te(e,["pintura"]),[r,i]=x.useState(!1),[s,o]=x.useState(!1),[a,l]=x.useState(!1),c=x.useRef(!1),[u]=Te(e,["pintura_js_url"]),[d]=Te(e,["pintura_css_url"]);let h=t&&r&&s||!1;const p=n?.pintura;x.useEffect(()=>{let v=p?.js?p?.js:u||null;if(v){if(v.startsWith("/")){const{adminRoot:b}=Ed();v=window.location.origin+b.replace(/\/$/,"")+v}if(window.pintura){i(!0);return}try{const b=new URL(v);import(`${b.protocol}//${b.host}${b.pathname}`).then(()=>{i(!0)}).catch(w=>{Ss(w)})}catch(b){Ss(b)}}},[u,p?.js]),x.useEffect(()=>{let v=p?.css?p?.css:d||null;if(v){if(v.startsWith("/")){const{adminRoot:b}=Ed();v=window.location.origin+b.replace(/\/$/,"")+v}try{if(document.querySelector(`link[href="${v}"]`))o(!0);else{let y=document.createElement("link");y.rel="stylesheet",y.type="text/css",y.href=v,y.onload=()=>{o(!0)},document.head.appendChild(y)}}catch(b){Ss(b)}}},[d,p?.css]);const g=x.useCallback(({image:m,handleSave:v})=>{if(m&&h){const b=new URL(m);b.searchParams.has("v")||b.searchParams.set("v",Date.now().toString());const y=b.href,S=window.pintura.openDefaultEditor({src:y,enableTransparencyGrid:!0,util:"crop",utils:["crop","filter","finetune","redact","annotate","trim","frame","resize"],frameOptions:[[void 0,w=>w.labelNone],["solidSharp",w=>w.frameLabelMatSharp],["solidRound",w=>w.frameLabelMatRound],["lineSingle",w=>w.frameLabelLineSingle],["hook",w=>w.frameLabelCornerHooks],["polaroid",w=>w.frameLabelPolaroid]],cropSelectPresetFilter:"landscape",cropSelectPresetOptions:[[void 0,"Custom"],[1,"Square"],[2/1,"2:1"],[3/2,"3:2"],[4/3,"4:3"],[16/10,"16:10"],[16/9,"16:9"],[1/2,"1:2"],[2/3,"2:3"],[3/4,"3:4"],[10/16,"10:16"],[9/16,"9:16"]],locale:{labelButtonExport:"Save and close"},previewPad:!0,willClose:()=>c.current?(l(!1),!0):!1});S.on("loaderror",()=>{P2("Pintura editor failed to load")}),S.on("process",w=>{v(w.dest)}),l(!0)}},[h]);return x.useEffect(()=>{const m=b=>{b.key==="Escape"&&b.stopPropagation()};if(!a)return;const v=b=>{b.target instanceof Element&&b.target.closest('.PinturaModal button[title="Close"]')&&(c.current=!0)};return window.addEventListener("click",v,{capture:!0}),window.addEventListener("keydown",m,{capture:!0}),()=>{window.removeEventListener("click",v,{capture:!0}),window.removeEventListener("keydown",m,{capture:!0})}},[a]),{isEnabled:h,openEditor:g}}const Si=({icon:n,title:e,detail:t,action:r,onDelete:i,active:s,disabled:o,testId:a,custom:l=!1})=>{const{updateRoute:c}=be(),u=p=>{p?.stopPropagation(),o?c({route:"pro",isExternal:!0}):r()},d=p=>{p?.stopPropagation(),i?.()},h=l?f.jsx(ne,{color:"red",label:"Delete",link:!0,onClick:d}):o?f.jsx(ne,{icon:"lock-locked",label:"Upgrade",link:!0,onClick:u}):f.jsx(ne,{color:"green",label:"Configure",link:!0,onClick:u});return f.jsx(ru,{action:h,avatar:n,className:o?"opacity-50 saturate-0":"",detail:t,hideActions:!o,testId:a,title:s?f.jsxs("span",{className:"inline-flex items-center gap-1",children:[e," ",f.jsx("span",{className:"inline-flex items-center rounded-full bg-[rgba(48,207,67,0.15)] px-1.5 py-0.5 text-2xs font-semibold uppercase tracking-wide text-green",children:"Active"})]}):e,onClick:u})},V_=()=>{const{config:n}=Pe(),{updateRoute:e}=be(),t=u=>{e(u)},r=n.hostSettings?.limits?.customIntegrations?.disabled,i=mS(),{settings:s}=Pe(),[o,a,l,c]=Te(s,["unsplash","firstpromoter","slack_url","slack_username"]);return f.jsxs(Xi,{titleSeparator:!1,children:[f.jsx(Si,{action:()=>{t("integrations/zapier")},detail:"Automation for your apps",disabled:r,icon:f.jsx(ve,{name:"zapier",size:32}),testId:"zapier-integration",title:"Zapier"}),f.jsx(Si,{action:()=>{t("integrations/slack")},active:l&&c,detail:"A messaging app for teams",icon:f.jsx(ve,{name:"slack",size:32}),testId:"slack-integration",title:"Slack"}),f.jsx(Si,{action:()=>{t("integrations/unsplash")},active:o,detail:"Beautiful, free photos",icon:f.jsx(ve,{name:"unsplash",size:32}),testId:"unsplash-integration",title:"Unsplash"}),f.jsx(Si,{action:()=>{t("integrations/firstpromoter")},active:a,detail:"Launch your member referral program",icon:f.jsx(ve,{name:"firstpromoter",size:32}),testId:"firstpromoter-integration",title:"FirstPromoter"}),f.jsx(Si,{action:()=>{t("integrations/pintura")},active:i.isEnabled,detail:"Advanced image editing",icon:f.jsx(ve,{name:"pintura",size:32}),testId:"pintura-integration",title:"Pintura"})]})},U_=({integrations:n})=>{const{updateRoute:e}=be(),{mutateAsync:t}=t_(),r=vt();return n.length?f.jsx(Xi,{borderTop:!1,children:n.map(i=>f.jsx(Si,{action:()=>e({route:`integrations/${i.id}`}),detail:f.jsx("div",{className:"line-clamp-2 break-words",children:f.jsx("span",{title:`${i.name}: ${i.description||"No description"}`,children:i.description||"No description"})}),icon:i.icon_image?f.jsx("img",{className:"size-8 shrink-0 object-cover",role:"presentation",src:i.icon_image}):f.jsx(ve,{className:"w-8 shrink-0",name:"integration"}),title:i.name,custom:!0,onDelete:()=>{Ye.show(Gr,{title:"Are you sure?",prompt:"Deleting this integration will remove all webhooks and api keys associated with it.",okColor:"red",okLabel:"Delete Integration",onOk:async s=>{try{await t(i.id),s?.remove(),tr({title:"Integration deleted",type:"info",options:{position:"bottom-left"}})}catch(o){r(o)}}})}}))}):f.jsx(ei,{icon:"integration",children:"No custom integration."})},z_=({keywords:n})=>{const[e,t]=x.useState("built-in"),{data:{integrations:r}={integrations:[]}}=e_(),{updateRoute:i}=be(),s=[{id:"built-in",title:"Built-in",contents:f.jsx(V_,{})},{id:"custom",title:"Custom",contents:f.jsx(U_,{integrations:r.filter(a=>a.type==="custom")})}],o=f.jsx(ne,{className:"mt-[-5px] inline-flex h-7 cursor-pointer items-center justify-center whitespace-nowrap rounded px-3 text-sm font-semibold text-grey-900 transition hover:bg-grey-200 dark:text-white dark:hover:bg-grey-900 [&:hover]:text-black",color:"clear",label:"Add custom integration",link:!0,onClick:()=>{i("integrations/new"),t("custom")}});return f.jsx(Se,{customButtons:o,customHeader:f.jsxs("div",{className:"sm:-mt-5 md:-mt-7",children:[f.jsx("div",{className:"-mx-5 overflow-hidden rounded-t-xl border-b border-grey-200 md:-mx-7 dark:border-grey-800",children:f.jsx("img",{className:"size-full",src:H_})}),f.jsxs("div",{className:" z-10 mt-6 flex items-start justify-between",children:[f.jsx(Kr,{description:"Make Ghost work with apps and tools.",title:"Integrations"}),f.jsx(ne,{className:"mt-[-5px] inline-flex h-7 cursor-pointer items-center justify-center whitespace-nowrap rounded px-3 text-sm font-semibold text-grey-900 transition hover:bg-grey-200 dark:text-white dark:hover:bg-grey-900 [&:hover]:text-black",color:"clear",label:"Add custom integration",link:!0,onClick:()=>{i("integrations/new"),t("custom")}})]})]}),keywords:n,navid:"integrations",testId:"integrations",children:f.jsx(Gn,{selectedTab:e,tabs:s,onTabChange:t})})},W_=ke(z_,"Integrations");function q_(n,e={}){window.plausible=window.plausible||function(){(window.plausible.q=window.plausible.q||[]).push(arguments)},window.plausible(n,{props:e})}const tc=({label:n,flag:e,disabled:t})=>{const{settings:r}=Pe(),i=JSON.parse(mb(r,"labs")||"{}"),{mutateAsync:s}=Xr(),o=Hf(),a=vt();return f.jsx(Kt,{checked:i[e],disabled:t,label:n,labelClasses:"sr-only",name:`feature-${e}`,onChange:async()=>{const l=!i[e];try{await s([{key:"labs",value:JSON.stringify({...i,[e]:l})}]),q_("Feature Toggled",{state:l?"on":"off",feature:e}),o.setQueriesData([L2],c=>({config:{...c.config,labs:{...c.config.labs,[e]:l}}}))}catch(c){a(c)}}})},Ci=({title:n,detail:e,action:t})=>f.jsx(ru,{action:t,bgOnHover:!1,detail:e,paddingRight:!1,title:n}),G_=He({method:"POST",path:()=>"/redirects/upload/",body:n=>{const e=new FormData;return e.append("redirects",n),e}}),K_=()=>Ff("/redirects/download/"),Z_=He({method:"POST",path:()=>"/settings/routes/yaml/",body:n=>{const e=new FormData;return e.append("routes",n),e}}),Y_=()=>Ff("/settings/routes/yaml/"),J_=()=>{const{mutateAsync:n}=G_(),{mutateAsync:e}=Z_(),t=vt(),[r,i]=x.useState(!1),[s,o]=x.useState(!1);return f.jsxs(Xi,{titleSeparator:!1,children:[f.jsx(Ci,{action:f.jsx(tc,{flag:"superEditors"}),detail:f.jsx(f.Fragment,{children:"Allows newly-assigned editors to manage members and comments in addition to regular roles."}),title:"Enhanced Editor role (beta)"}),f.jsx(Ci,{action:f.jsx(tc,{flag:"editorExcerpt"}),detail:f.jsx(f.Fragment,{children:"Adds the excerpt input below the post title in the editor"}),title:"Show post excerpt inline"}),f.jsx(Ci,{action:f.jsx(tc,{flag:"additionalPaymentMethods"}),detail:f.jsxs(f.Fragment,{children:["Enable support for CashApp, iDEAL, Bancontact, and others. ",f.jsx("a",{className:"text-green",href:"https://ghost.org/help/payment-methods",rel:"noopener noreferrer",target:"_blank",children:"Learn more →"})]}),title:"Additional payment methods"}),f.jsx(Ci,{action:f.jsxs("div",{className:"flex flex-col items-end gap-1",children:[f.jsx(rc,{id:"upload-redirects",onUpload:async a=>{try{i(!0),await n(a),tr({title:"Redirects uploaded",type:"success"})}catch(l){t(l)}finally{i(!1)}},children:f.jsx(ne,{color:"grey",label:r?"Uploading ...":"Upload redirects file",size:"sm",tag:"div"})}),f.jsx(ne,{color:"green",label:"Download current redirects",link:!0,onClick:()=>K_()})]}),detail:f.jsxs(f.Fragment,{children:["Configure redirects for old or moved content, ",f.jsx("br",{})," more info in the ",f.jsx("a",{className:"text-green",href:"https://ghost.org/tutorials/implementing-redirects/",rel:"noopener noreferrer",target:"_blank",children:"docs"})]}),title:"Redirects"}),f.jsx(Ci,{action:f.jsxs("div",{className:"flex flex-col items-end gap-1",children:[f.jsx(rc,{id:"upload-routes",onUpload:async a=>{try{o(!0),await e(a),tr({type:"success",title:"Routes uploaded"})}catch(l){t(l)}finally{o(!1)}},children:f.jsx(ne,{color:"grey",label:s?"Uploading ...":"Upload routes file",size:"sm",tag:"div"})}),f.jsx(ne,{color:"green",label:"Download current routes",link:!0,onClick:()=>Y_()})]}),detail:"Configure dynamic routing by modifying the routes.yaml file",title:"Routes"})]})},X_="data:image/svg+xml,%3csvg%20width='267'%20height='285'%20viewBox='0%200%20267%20285'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3ccircle%20cx='165'%20cy='183'%20r='102'%20fill='%23F1F3F4'/%3e%3ccircle%20cx='68'%20cy='71'%20r='31'%20fill='%23F1F3F4'/%3e%3ccircle%20cx='99'%20cy='17'%20r='17'%20fill='%23F1F3F4'/%3e%3ccircle%20cx='118'%20cy='70'%20r='7'%20fill='%23F1F3F4'/%3e%3ccircle%20cx='45'%20cy='32'%20r='3'%20fill='%23F1F3F4'/%3e%3ccircle%20cx='12.5'%20cy='83.5'%20r='12.5'%20fill='%23F1F3F4'/%3e%3c/svg%3e",Fh="InvitesResponseType",Q_=Uc({dataType:Fh,path:"/invites/",permissions:["Owner","Administrator"],defaultSearchParams:{limit:"100",include:"roles"},defaultNextPageParams:(n,e)=>{var t;return{...e,page:(((t=n.meta)==null?void 0:t.pagination.next)||1).toString()}},returnData:n=>{const{pages:e}=n,t=e.flatMap(i=>i.invites),r=e[e.length-1].meta;return{invites:t,meta:r,isEnd:r?r.pagination.pages===r.pagination.page:!0}}}),e5=He({method:"POST",path:()=>"/invites/",body:({email:n,roleId:e})=>({invites:[{email:n,role_id:e,expires:null,status:null,token:null}]}),updateQueries:{dataType:Fh,emberUpdateType:"createOrUpdate",update:Vf("invites")}}),t5=He({path:n=>`/invites/${n}/`,method:"DELETE",updateQueries:{dataType:Fh,emberUpdateType:"delete",update:_2("invites")}}),n5="RolesResponseType",r5=Qr({dataType:n5,path:"/roles/",defaultSearchParams:{limit:"100"}});function nc(n,e){return n.filter(t=>t.roles.find(r=>r.name===e))}function i5(n,e){return n.filter(t=>t.roles.find(r=>e.includes(r.name)))}function s5(n){return nc(n,"Owner")[0]}const gS=()=>{const{currentUser:n}=Pe(),{data:{users:e,meta:t,isEnd:r}={users:[]},isLoading:i,fetchNextPage:s}=j2(),{data:{invites:o,meta:a,isEnd:l}={invites:[]},isLoading:c,fetchNextPage:u}=Q_(),{data:{roles:d}={},isLoading:h}=r5(),p=x.useMemo(()=>s5(e),[e]),g=x.useMemo(()=>nc(e,"Administrator"),[e]),m=x.useMemo(()=>i5(e,["Editor","Super Editor"]),[e]),v=x.useMemo(()=>nc(e,"Author"),[e]),b=x.useMemo(()=>nc(e,"Contributor"),[e]),y=x.useMemo(()=>o.map(S=>{let w=d?.find(C=>S.role_id===C.id);return{...S,role:w?.name}}),[o,d]);return{totalUsers:t?.pagination.total||0,totalInvites:a?.pagination.total||0,users:e,ownerUser:p,adminUsers:g,editorUsers:m,authorUsers:v,contributorUsers:b,currentUser:n,invites:y,isLoading:i||c||h,hasNextPage:r===!1,invitesHasNextPage:l===!1,fetchNextPage:s,fetchNextInvitePage:u}},o5=no(()=>import("./index-eLx96SEn.js").then(n=>n.i),__vite__mapDeps([8,1,2,9]));class vS extends Error{errorType;errorDetails;constructor({errorType:e,errorDetails:t,message:r}){super(r),this.errorType=e,this.errorDetails=t}}class a5 extends vS{constructor(e){super(Object.assign({errorType:"IncorrectUsageError"},e))}}class So extends vS{constructor(e){super(Object.assign({errorType:"HostLimitError"},e))}}const Co=()=>{const{config:n}=Pe(),[e,t]=x.useState(null);x.useEffect(()=>{o5.then(u=>t(()=>u.default))},[]);const{users:r,contributorUsers:i,invites:s,isLoading:o}=gS(),{refetch:a}=gb({searchParams:{limit:"1"},enabled:!1}),{refetch:l}=bb({searchParams:{filter:"status:active",limit:"1"},enabled:!1}),c=x.useMemo(()=>n.hostSettings?.billing?.enabled===!0&&n.hostSettings?.billing?.url?n.hostSettings.billing.url:"https://ghost.org/help/",[n.hostSettings?.billing]);return x.useMemo(()=>{const u={isLimited:()=>!1,isDisabled:()=>!1,checkWouldGoOverLimit:()=>Promise.resolve(!1),errorIfWouldGoOverLimit:()=>Promise.resolve(),errorIfIsOverLimit:()=>Promise.resolve()};if(!e||!n.hostSettings?.limits||o)return u;const d={...n.hostSettings.limits},h=new e;return d.staff&&(d.staff.currentCountQuery=async()=>{const p=r.filter(m=>m.status!=="inactive"&&!i.includes(m)),g=s.filter(m=>m.role!=="Contributor");return p.length+g.length}),d.members&&(d.members.currentCountQuery=async()=>{const{data:p}=await a();return p?.meta?.pagination?.total||0}),d.newsletters&&(d.newsletters.currentCountQuery=async()=>{const{data:{pages:p}={pages:[]}}=await l();return p[0].meta?.pagination.total||0}),h.loadLimits({limits:d,helpLink:c,errors:{HostLimitError:So,IncorrectUsageError:a5}}),{isLimited:p=>h.isLimited(p),isDisabled:p=>h.isDisabled(p),checkWouldGoOverLimit:p=>h.checkWouldGoOverLimit(p),errorIfWouldGoOverLimit:(p,g={})=>h.errorIfWouldGoOverLimit(p,g),errorIfIsOverLimit:p=>h.errorIfIsOverLimit(p)}},[e,n,i,a,l,c,s,o,r])},l5=[{title:"Stripe Automatic Tax (private beta)",description:"Use Stripe Automatic Tax at Stripe Checkout. Needs to be enabled in Stripe",flag:"stripeAutomaticTax"},{title:"Email customization (internal beta)",description:"Newsletter customization settings that have been released to Ghost's own production sites",flag:"emailCustomization"},{title:"Import Member Tier",description:"Enables tier to be specified when importing members",flag:"importMemberTier"},{title:"Explore",description:"Enables keeping in touch with the new Explore API",flag:"explore"},{title:"Tags X",description:"Enables the new Tags UI",flag:"tagsX"},{title:"UTM tracking",description:"Enables UTM tracking for web traffic and member attribution",flag:"utmTracking"},{title:"Email Unique ID",description:"Enables {uniqueid} variable in emails for unique image URLs to bypass ESP image caching",flag:"emailUniqueid"},{title:"Welcome Emails",description:"Enables features related to sending welcome emails to new members",flag:"welcomeEmails"},{title:"New Admin Experience",description:"Preview the next version of the admin interface",flag:"adminForward"},{title:"Domain Warmup",description:"Enable custom sending domain warmup for gradual email volume increases",flag:"domainWarmup"},{title:"Updated theme translation (beta)",description:"Enable theme translation using i18next instead of the old translation package.",flag:"themeTranslation"},{title:"Comment Moderation",description:"Enhanced comment moderation interface with advanced filtering and management. Requires the new admin experience.",flag:"commentModeration"},{title:"Comment Permalinks",description:"Enable direct links to individual comments with automatic scrolling and highlighting",flag:"commentPermalinks"},{title:"IndexNow",description:"Automatically notify search engines when content is published or updated for faster indexing.",flag:"indexnow"}],c5=()=>{const n=Co(),[e,t]=x.useState([]);return x.useEffect(()=>{(async()=>{const i=[];for(const s of l5)if(s.limitName&&n?.isLimited(s.limitName))try{await n.errorIfWouldGoOverLimit(s.limitName),i.push(s)}catch(o){o instanceof So||i.push(s)}else i.push(s);t(i)})()},[n]),f.jsx(Xi,{titleSeparator:!1,children:e.map(r=>f.jsx(Ci,{action:f.jsx(tc,{flag:r.flag,label:r.title}),detail:r.description,title:r.title},r.flag))})};function u5(n){const[e,t]=x.useState(!1),r=x.useRef(!1),{filter:i,getVisibleComponents:s,checkVisible:o}=wo();return x.useEffect(()=>{i||(r.current=!1)},[i]),x.useEffect(()=>{if(r.current)return;const c=o(n),u=s(),d=!!i&&c&&u.size===1;t(d)},[i,n,o,s]),{isOpen:e,openManually:()=>{r.current=!0,t(!0)},closeManually:()=>{r.current=!0,t(!1)}}}const d5=({keywords:n})=>{const[e,t]=x.useState("labs-beta-features"),{config:r}=Pe(),{isOpen:i,openManually:s,closeManually:o}=u5(n),a=[{id:"labs-beta-features",title:"Beta features",contents:f.jsx(J_,{})},r.enableDeveloperExperiments&&{id:"labs-private-features",title:"Private features",contents:f.jsx(c5,{})}].filter(Boolean);return f.jsx(Se,{customHeader:f.jsxs("div",{className:"z-10 flex items-start justify-between",children:[f.jsx(Kr,{description:"This is a testing ground for new or experimental features. They may change, break or inexplicably disappear at any time.",title:"Labs"}),f.jsx(ne,{className:"mt-[-5px]",color:i?"grey":"clear",label:i?"Close":"Open",size:"sm",onClick:i?o:s})]}),isEditing:i,keywords:n,navid:"labs",testId:"labs",children:i?f.jsx(Gn,{selectedTab:e,tabs:a,onTabChange:t}):f.jsx("div",{className:"absolute inset-0 z-0 overflow-hidden opacity-70",children:f.jsx("img",{className:"absolute -right-6 -top-6 dark:opacity-10",src:X_})})})},f5=ke(d5,"Labs"),h5=()=>{const{refetch:n}=nC({searchParams:{limit:"1000"},enabled:!1}),e=vt(),t=async()=>{try{const{data:r}=await n();if(r){const i=new Blob([r],{type:"text/csv"}),s=window.URL.createObjectURL(i),o=document.createElement("a");o.setAttribute("hidden",""),o.setAttribute("href",s),o.setAttribute("download",`post-analytics.${new Date().toISOString().split("T")[0]}.csv`),document.body.appendChild(o),o.click(),document.body.removeChild(o),window.URL.revokeObjectURL(s)}}catch(r){e(r)}};return f.jsxs("div",{className:"grid grid-cols-1 gap-4 pt-4 md:grid-cols-2 lg:grid-cols-3",children:[f.jsx(ne,{className:"!h-9 !font-semibold",color:"grey",icon:"export",iconColorClass:"!h-4 !w-auto",label:"Content & settings",onClick:()=>__()}),f.jsx(ne,{className:"!h-9 !font-semibold",color:"grey",icon:"baseline-chart",iconColorClass:"!h-4 !w-auto",label:"Post analytics",onClick:t})]})},p5=()=>{const n=ir(),{mutateAsync:e}=P_(),[t,r]=x.useState(!1),i=vt();return f.jsx(Or,{backDropClick:!1,okLabel:"",size:"sm",testId:"universal-import-modal",title:"Universal import",children:f.jsx("div",{className:"py-4 leading-9",children:f.jsx(rc,{accept:"application/json, application/zip",id:"import-file",onUpload:async s=>{r(!0);try{await e(s),n.remove(),Ye.show(Gr,{title:"Import in progress",prompt:"Your import is being processed, and you'll receive a confirmation email as soon as it’s complete. Usually this only takes a few minutes, but larger imports may take longer.",cancelLabel:"",okLabel:"Got it",onOk:o=>o?.remove(),formSheet:!1})}catch(o){i(o)}finally{r(!1)}},children:f.jsx("div",{className:"-mb-4 cursor-pointer bg-grey-75 p-10 text-center dark:bg-grey-950",children:t?"Uploading...":f.jsxs(f.Fragment,{children:["Select any JSON or zip file that contains ",f.jsx("br",{}),"posts and settings"]})})})})})},m5=Ye.create(p5),ai=({icon:n,title:e,onClick:t})=>{const r=_("flex h-9 cursor-pointer items-center justify-center gap-2 rounded-md bg-grey-100 px-2 text-sm font-semibold transition-all hover:bg-grey-200 dark:bg-grey-900");return t?f.jsxs("button",{className:r,type:"button",onClick:t,children:[n,e]}):f.jsx(f.Fragment,{})},g5=()=>{const{updateRoute:n}=be(),e=()=>{Ye.show(m5)};return f.jsxs("div",{className:"grid grid-cols-1 gap-4 pt-4 md:grid-cols-2 lg:grid-cols-3",children:[f.jsx(ai,{icon:f.jsx(ve,{className:"w-auto",name:"substack",size:18}),title:"Substack",onClick:()=>n({isExternal:!0,route:"/migrate/substack"})}),f.jsx(ai,{icon:f.jsx(ve,{className:"w-auto",name:"wordpress",size:18}),title:"WordPress",onClick:()=>n({isExternal:!0,route:"/migrate/wordpress"})}),f.jsx(ai,{icon:f.jsx(ve,{className:"w-auto",name:"squarespace",size:18}),title:"Squarespace",onClick:()=>n({isExternal:!0,route:"/migrate/squarespace"})}),f.jsx(ai,{icon:f.jsx(ve,{className:"w-auto dark:invert",name:"medium",size:18}),title:"Medium",onClick:()=>n({isExternal:!0,route:"/migrate/medium"})}),f.jsx(ai,{icon:f.jsx(ve,{className:"w-auto",name:"mailchimp",size:20}),title:"Mailchimp",onClick:()=>n({isExternal:!0,route:"/migrate/mailchimp"})}),f.jsx(ai,{icon:f.jsx(ve,{className:"w-auto",name:"import",size:16}),title:"Universal import",onClick:e})]})},v5=({keywords:n})=>{const[e,t]=x.useState("import"),r=[{id:"import",title:"Import",contents:f.jsx(g5,{})},{id:"export",title:"Export",contents:f.jsx(h5,{})}].filter(Boolean);return f.jsx(Se,{customHeader:f.jsx(Kr,{description:"Import content, members and subscriptions from other platforms or export your Ghost data.",title:"Migration tools"}),keywords:n,navid:"migration",testId:"migrationtools",children:f.jsx(Gn,{selectedTab:e,tabs:r,onTabChange:t})})},b5=ke(v5,"Migration tools"),ss=({keywords:n,...e})=>{const{checkVisible:t,noResult:r}=wo();return f.jsx(vR,{isVisible:t(n)||r,...e})},Wt={integrations:["advanced","integrations","zapier","slack","unsplash","first promoter","firstpromoter","pintura","disqus","analytics","ulysses","typeform","buffer","plausible","github","webhooks"],migrationtools:["import","export","migrate","substack","substack","migration","medium","wordpress","wp","squarespace"],codeInjection:["advanced","code injection","head","footer"],labs:["advanced","labs","alpha","private","beta","flag","routes","redirect","translation","editor","portal"],history:["advanced","history","log","events","user events","staff","audit","action"],dangerzone:["danger","danger zone","delete","content","delete all content","delete site"]},x5=()=>f.jsxs(ss,{keywords:Object.values(Wt).flat(),title:"Advanced",children:[f.jsx(W_,{keywords:Wt.integrations}),f.jsx(b5,{keywords:Wt.migrationtools}),f.jsx(N_,{keywords:Wt.codeInjection}),f.jsx(f5,{keywords:Wt.labs}),f.jsx(F_,{keywords:Wt.history}),f.jsx(B_,{keywords:Wt.dangerzone})]}),Au="OffersResponseType",bS=Qr({dataType:Au,path:"/offers/",defaultSearchParams:{}}),L6=B2({dataType:Au,path:n=>`/offers/${n}/`}),_6=He({method:"PUT",path:n=>`/offers/${n.id}/`,body:n=>({offers:[n]}),updateQueries:{dataType:Au,emberUpdateType:"createOrUpdate",update:Uf("offers")}}),j6=He({method:"POST",path:()=>"/offers/",body:n=>({offers:[n]}),updateQueries:{dataType:Au,emberUpdateType:"createOrUpdate",update:Vf("offers")}}),Hh="TiersResponseType",Mu=Uc({dataType:Hh,path:"/tiers/",defaultNextPageParams:(n,e)=>{var t;return{...e,page:(((t=n.meta)==null?void 0:t.pagination.next)||1).toString()}},returnData:n=>{const{pages:e}=n,t=e.flatMap(i=>i.tiers),r=e[e.length-1].meta;return{tiers:t,meta:r,isEnd:r?r.pagination.pages===r.pagination.page:!0}}}),B6=He({method:"POST",path:()=>"/tiers/",body:n=>({tiers:[n]}),invalidateQueries:{dataType:Hh}}),$6=He({method:"PUT",path:n=>`/tiers/${n.id}/`,body:n=>({tiers:[n]}),updateQueries:{dataType:Hh,emberUpdateType:"createOrUpdate",update:Uf("tiers")}});function xS(n){return n.filter(e=>e.type==="paid"&&e.active)}function y5(n){return n.filter(e=>e.active)}function w5(n){return n.filter(e=>!e.active)}function Ug(n){const e=new Date,t={timeZone:n},r=navigator.language.startsWith("en")?navigator.language:"en-US";return e.toLocaleString(r,t)}function yS(n=""){let e=new RegExp(/([A-Za-z\u00C0-\u017F]{1})[A-Za-z\u00C0-\u017F]+/,"g"),t=[...n.matchAll(e)];return((t.shift()?.[1]||"")+(t.pop()?.[1]||"")).toUpperCase()}function Vh(n){let r=0;for(let s=0;s<n.length;s++)r=n.charCodeAt(s)+((r<<5)-r);return"hsl("+r%360+", 70%, 40%)"}function Sn(n){return n.toString().replace(/\B(?=(\d{3})+(?!\d))/g,",")}function S5(n){return/^[a-z0-9]{24}$/.test(n)}const C5=[{label:"Free members",value:"status:free",color:"green"},{label:"Paid members",value:"status:-free",color:"pink"}],k5=(n,e)=>{const t=Ku({path:"/tiers/",filterKey:"name",responseKey:"tiers"}),r=Ku({path:"/labels/",filterKey:"name",responseKey:"labels"}),i=Ku({path:"/offers/",filterKey:"name",responseKey:"offers"}),[s,o]=x.useState(null),a=h=>({value:h.id,label:h.name,color:"black"}),l=h=>({value:`label:${h.slug}`,label:h.name,color:"grey"}),c=h=>({value:`offer_redemptions:${h.id}`,label:h.name,color:"black"}),u=async(h,p)=>{const[g,m,v]=await Promise.all([t.loadData(h),r.loadData(h),i.loadData(h)]),b=[{options:C5.filter(({label:y})=>y.toLowerCase().includes(h.toLowerCase()))},{label:"Active Tiers",options:g.filter(({active:y,type:S})=>y&&S!=="free").map(a)||[]},{label:"Archived Tiers",options:g.filter(({active:y})=>!y).map(a)||[]},{label:"Labels",options:m.map(l)||[]},{label:"Offers",options:v.map(c)||[]}];s===null&&d(),p(b.filter(y=>y.options.length>0))},d=async()=>{const h=e?.split(",")||[],p=[],g=[],m=[];for(const b of h)b.startsWith("label:")?g.push(b.replace("label:","")):b.startsWith("offer_redemptions:")?m.push(b.replace("offer_redemptions:","")):S5(b)&&p.push(b);const v=await Promise.all([t.loadInitialValues(p,"id").then(b=>b.map(a)),r.loadInitialValues(g,"slug").then(b=>b.map(l)),i.loadInitialValues(m,"id").then(b=>b.map(c))]).then(b=>b.flat());o(h.map(b=>v.find(y=>y.value===b)))};return x.useEffect(()=>{n==="segment"&&u("",()=>{})},[n]),{loadOptions:sC(u,500),selectedSegments:s,setSelectedSegments:o}},zg=[{label:"Whoever has access to the post",hint:"Free posts to everyone, premium posts sent to paid members",value:"visibility"},{label:"All members",hint:"Everyone who is subscribed to newsletter updates, whether free or paid members",value:"all-members"},{label:"Paid-members only",hint:"People who have a premium subscription",value:"paid-only"},{label:"Specific people",hint:"Only people with any of the selected tiers or labels",value:"segment"},{label:"Usually nobody",hint:"Newsletters are off for new posts, but can be enabled when needed",value:"none"}];function Wg({defaultEmailRecipients:n,defaultEmailRecipientsFilter:e}){return n==="filter"?e==="status:free,status:-free"?"all-members":e==="status:-free"?"paid-only":e===null?"none":"segment":n}const A5=({keywords:n})=>{const{localSettings:e,isEditing:t,saveState:r,handleSave:i,handleCancel:s,updateSetting:o,handleEditingChange:a}=Ot(),[l,c]=Te(e,["editor_default_email_recipients","editor_default_email_recipients_filter"]),[u,d]=x.useState(Wg({defaultEmailRecipients:l,defaultEmailRecipientsFilter:c})),{loadOptions:h,selectedSegments:p,setSelectedSegments:g}=k5(u,c);x.useEffect(()=>{const b=Wg({defaultEmailRecipients:l,defaultEmailRecipientsFilter:c});d(b)},[l,c]);const m=b=>{["visibility","disabled"].includes(b)?(o("editor_default_email_recipients",b),o("editor_default_email_recipients_filter",null)):o("editor_default_email_recipients","filter"),b==="all-members"&&o("editor_default_email_recipients_filter","status:free,status:-free"),b==="paid-only"&&o("editor_default_email_recipients_filter","status:-free"),b==="none"&&o("editor_default_email_recipients_filter",null),d(b),t||a(!0)},v=b=>{if(g(b),b.length){const y=b?.map(({value:S})=>S).join(",");o("editor_default_email_recipients_filter",y)}else o("editor_default_email_recipients_filter",null),d("none");t||a(!0)};return f.jsx(Se,{description:"When you publish new content, who do you usually want to send it to?",isEditing:t,keywords:n,navid:"default-recipients",saveState:r,testId:"default-recipients",title:"Default recipients",hideEditButton:!0,onCancel:s,onEditingChange:a,onSave:i,children:f.jsxs(Ze,{columns:1,children:[f.jsx(yr,{hint:"Who should receive your posts by default?",options:zg,selectedOption:zg.find(b=>b.value===u),testId:"default-recipients-select",title:"Default Newsletter recipients",onSelect:b=>{b&&m(b.value)}}),u==="segment"&&p&&f.jsx(wx,{loadOptions:h,title:"Filter",values:p,async:!0,defaultOptions:!0,onChange:v})]})})},M5=ke(A5,"Default recipients"),I5=({keywords:n})=>{const{settings:e}=Pe(),{mutateAsync:t}=Xr(),{updateRoute:r}=be(),i=vt(),[s,o]=Te(e,["editor_default_email_recipients","members_signup_access"]),a=o==="none",l=async u=>{const d=[{key:"editor_default_email_recipients",value:u.target.checked?"visibility":"disabled"}];u.target.checked||d.push({key:"editor_default_email_recipients_filter",value:null});try{await t(d)}catch(h){i(h)}},c=f.jsx(f.Fragment,{children:f.jsx(Kt,{checked:s!=="disabled",direction:"rtl",onChange:l})});return f.jsx(Se,{customButtons:c,description:"Newsletter features are active, posts can be sent by email",keywords:n,navid:"enable-newsletters",testId:"enable-newsletters",title:"Newsletter sending",children:f.jsx(Ze,{columns:1,values:[{key:"private",value:s!=="disabled"?f.jsxs("div",{className:"w-full",children:[f.jsxs("div",{className:"flex items-center gap-2",children:[f.jsx(ve,{colorClass:"text-green",name:"check",size:"sm"}),f.jsx("span",{children:"Enabled"})]}),a&&f.jsxs(Ob,{className:"mt-6 text-sm",color:"grey",children:["Your ",f.jsx("button",{className:"!underline",type:"button",onClick:()=>{r("members")},children:"Subscription access"})," is set to ‘Nobody’, only existing members will receive newsletters."]})]}):f.jsxs("div",{className:"flex items-center gap-2 text-grey-900",children:[f.jsx(ve,{colorClass:"text-grey-600",name:"mail-block",size:"sm"}),f.jsx("span",{children:"Disabled"})]})}]})})},E5=ke(I5,"Newsletter sending"),wd=[{label:"🇺🇸 US",value:"https://api.mailgun.net/v3"},{label:"🇪🇺 EU",value:"https://api.eu.mailgun.net/v3"}],D5=({keywords:n})=>{const{localSettings:e,isEditing:t,saveState:r,handleSave:i,handleCancel:s,updateSetting:o,handleEditingChange:a}=Ot(),{mutateAsync:l}=Xr(),c=vt(),[u,d,h]=Te(e,["mailgun_base_url","mailgun_domain","mailgun_api_key"]),g=d&&h?[{key:"status",value:f.jsx(cE,{icon:"check-circle",iconColorClass:"text-green",children:"Mailgun is set up"})}]:[{heading:"Status",key:"status",value:"Mailgun is not set up"}],m=f.jsx(Ze,{columns:1,values:g}),v=f.jsxs(f.Fragment,{children:["Find your Mailgun API keys ",f.jsx(dc,{href:"https://app.mailgun.com/settings/api_security",rel:"noopener noreferrer",target:"_blank",children:"here"})]}),b=f.jsx(Ze,{children:f.jsxs("div",{className:"grid grid-cols-[120px_auto] gap-x-3 gap-y-6",children:[f.jsx(yr,{options:wd,selectedOption:wd.find(S=>S.value===u),title:"Mailgun region",onSelect:S=>{o("mailgun_base_url",S?.value||null)}}),f.jsx(tt,{title:"Mailgun domain",value:d,onChange:S=>{o("mailgun_domain",S.target.value)}}),f.jsx("div",{className:"col-span-2",children:f.jsx(tt,{hint:v,title:"Mailgun private API key",type:"password",value:h,onChange:S=>{o("mailgun_api_key",S.target.value)}})})]})}),y=f.jsxs(f.Fragment,{children:["The Mailgun API is used for bulk email newsletter delivery. ",f.jsx(dc,{href:"https://ghost.org/docs/faq/mailgun-newsletters/",target:"_blank",children:"Why is this required?"})]});return f.jsx(Se,{description:y,isEditing:t,keywords:n,navid:"mailgun",saveState:r,testId:"mailgun",title:"Mailgun",onCancel:s,onEditingChange:a,onSave:async()=>{if(!u)try{await l([{key:"mailgun_base_url",value:wd[0].value}])}catch(S){c(S);return}i()},children:t?b:m})},R5=ke(D5,"Mailgun"),qg=({id:n,setRef:e,isDragging:t,style:r,children:i,...s})=>{const{updateRoute:o}=be(),a=()=>{o({route:`newsletters/${n}`})},l=f.jsxs(cu,{ref:e,action:f.jsx(ne,{color:"green","data-testid":"edit-newsletter-button",label:"Edit",link:!0,onClick:a}),className:t?"opacity-75":"",hideActions:!1,style:r,onClick:a,children:[(s.dragHandleAttributes||t)&&f.jsx(Fn,{className:"w-10 !align-middle",children:f.jsx(c1,{className:"h-10",isDragging:t||!1,...s})}),i]});return t?f.jsx(Ni,{children:l}):l},Gg=({newsletter:n})=>{const{updateRoute:e}=be(),t=()=>{e({route:`newsletters/${n.id}`})};return f.jsxs(f.Fragment,{children:[f.jsx(Fn,{className:"w-full",onClick:t,children:f.jsxs("div",{className:"flex grow flex-col",children:[f.jsx("span",{className:"font-medium",children:n.name}),f.jsx("span",{className:"mt-0.5 text-xs leading-tight text-grey-700",children:n.description||"No description"})]})}),f.jsx(Fn,{className:"hidden md:!visible md:!table-cell md:min-w-[11rem]",onClick:t,children:f.jsxs("div",{className:"flex grow flex-col",children:[f.jsx("span",{children:Sn(n.count?.active_members||0)}),f.jsx("span",{className:"mt-0.5 whitespace-nowrap text-xs leading-tight text-grey-700",children:"Subscribers"})]})}),f.jsx(Fn,{className:"hidden md:!visible md:!table-cell md:min-w-[11rem]",onClick:t,children:f.jsxs("div",{className:"flex grow flex-col",children:[f.jsx("span",{children:Sn(n.count?.posts||0)}),f.jsx("span",{className:"mt-0.5 whitespace-nowrap text-xs leading-tight text-grey-700",children:"Delivered"})]})})]})},Kg=({newsletters:n,isLoading:e,isSortable:t,onSort:r})=>e?f.jsx(Ni,{isLoading:!0}):n.length&&t?f.jsx(lR,{container:i=>f.jsx(qg,{...i}),items:n,renderItem:i=>f.jsx(Gg,{newsletter:i}),wrapper:Ni,onMove:(i,s)=>r?.(i,s)}):n.length?f.jsx(Ni,{children:n.map(i=>f.jsx(qg,{id:i.id,children:f.jsx(Gg,{newsletter:i})}))}):f.jsx(ei,{icon:"mail-block",children:"No newsletters found."}),wS=()=>{const[n,e]=x.useState(new URLSearchParams);return x.useEffect(()=>{const r=()=>{const s=window.location.hash.split("?")[1];e(s?new URLSearchParams(s):new URLSearchParams)};return r(),window.addEventListener("hashchange",r),()=>{window.removeEventListener("hashchange",r)}},[]),{getParam:r=>n.get(r)}},Sd=({id:n,children:e})=>{const t=ir(),{updateRoute:r}=be();return f.jsx("button",{className:"text-green",type:"button",onClick:()=>{r(`newsletters/${n}`),t.remove()},children:e})},O5=({keywords:n})=>{const{updateRoute:e}=be(),t=()=>{e("newsletters/new")},[r,i]=x.useState("active-newsletters"),{data:{newsletters:s,meta:o,isEnd:a}={},isLoading:l,fetchNextPage:c}=bb(),{mutateAsync:u}=Q2(),d=Hf(),h=wS().getParam("verifyEmail"),{mutateAsync:p}=eC(),g=vt(),[m,v]=x.useState(s||[]);x.useEffect(()=>{v(s||[])},[s]),x.useEffect(()=>{if(!h||!window.location.href.includes("newsletters"))return;(async()=>{try{const{newsletters:[A],meta:{email_verified:I}={}}=await p({token:h});let D,R;I&&I==="sender_email"?(D="Newsletter email verified",R=f.jsxs(f.Fragment,{children:["Newsletter ",f.jsx(Sd,{id:A.id,children:A.name})," will now be sent from ",f.jsx("strong",{children:A.sender_email}),"."]})):I&&I==="sender_reply_to"?(D="Reply-to address verified",R=f.jsxs(f.Fragment,{children:["Newsletter ",f.jsx(Sd,{id:A.id,children:A.name})," will now use ",f.jsx("strong",{children:A.sender_reply_to})," as the reply-to address."]})):(D="Email address verified",R=f.jsxs(f.Fragment,{children:["Email address for newsletter ",f.jsx(Sd,{id:A.id,children:A.name})," has been changed."]})),Ye.show(Gr,{title:D,prompt:R,okLabel:"Close",cancelLabel:"",onOk:T=>T?.remove()})}catch(A){let I="There was an error verifying your email address. Try again later.";A instanceof $2&&A.message==="Token expired"&&(I="Verification link has expired."),Ye.show(Gr,{title:"Error verifying email address",prompt:I,okLabel:"Close",cancelLabel:"",onOk:D=>D?.remove()}),g(A,{withToast:!1})}})()},[h,g,p]);const b=f.jsx(ne,{className:"mt-[-5px]",color:"clear",label:"Add newsletter",size:"sm",onClick:()=>{t()}}),y=m.filter(k=>k.status==="active").sort((k,A)=>k.sort_order-A.sort_order)||[],S=m.filter(k=>k.status!=="active"),w=async(k,A)=>{const I=y.findIndex(L=>L.id===k),D=y.findIndex(L=>L.id===A)||0,T=ch(y,I,D).map((L,$)=>L.sort_order===$?null:{...L,sort_order:$}).filter(L=>!!L),N=S.map((L,$)=>L.sort_order===$+y.length?null:{...L,sort_order:$}).filter(L=>!!L),P=[...T,...N].sort((L,$)=>L.sort_order-$.sort_order);v(m.map(L=>P.find($=>$.id===L.id)||L)),d.setQueriesData([tC],L=>{if(L)return{...L,pages:L.pages.map($=>({...$,newsletters:$.newsletters.map(q=>P.find(Z=>Z.id===q.id)||q)}))}});for(const L of P)await u(L)},C=[{id:"active-newsletters",title:"Active",contents:f.jsx(Kg,{isLoading:l,newsletters:y,isSortable:!0,onSort:w})},{id:"archived-newsletters",title:"Archived",contents:f.jsx(Kg,{isLoading:l,newsletters:S})}];return f.jsxs(Se,{customButtons:b,description:"Edit details and customize your design",keywords:n,navid:"newsletters",testId:"newsletters",title:"Newsletters",children:[f.jsx(Gn,{selectedTab:r,tabs:C,onTabChange:i}),a===!1&&f.jsx(ne,{label:`Load more (showing ${m?.length||0}/${o?.pagination.total||0} newsletters)`,link:!0,onClick:()=>c()})]})},T5=ke(O5,"Newsletters"),gr={enableNewsletters:["emails","newsletters","newsletter sending","enable","disable","turn on","turn off"],newsletters:["newsletters","emails","design","customization"],defaultRecipients:["newsletters","default recipients","emails"],mailgun:["mailgun","emails","newsletters"],newslettersNavMenu:["emails","newsletters","newsletter sending","enable","disable","turn on","turn off","design","customization","default recipients","emails","mailgun","tips","donations","one time","payment"]},N5=()=>{const{settings:n,config:e}=Pe(),[t]=Te(n,["editor_default_email_recipients"]);return f.jsxs(ss,{keywords:Object.values(gr).flat(),title:"Email newsletter",children:[f.jsx(E5,{keywords:gr.enableNewsletters}),t!=="disabled"&&f.jsxs(f.Fragment,{children:[f.jsx(M5,{keywords:gr.defaultRecipients}),f.jsx(T5,{keywords:gr.newsletters}),!e.mailgunIsConfigured&&f.jsx(R5,{keywords:gr.mailgun})]})]})},P5=({keywords:n})=>{const{localSettings:e,isEditing:t,saveState:r,handleSave:i,handleCancel:s,updateSetting:o,handleEditingChange:a}=Ot(),[l,c,u,d,h,p]=Te(e,["email_track_opens","email_track_clicks","members_track_sources","outbound_link_tagging","web_analytics_configured","web_analytics_enabled"]),g=F2(e,"email_track_clicks"),[m,v]=x.useState(!1),b=Co(),{updateRoute:y}=be();x.useEffect(()=>{b?.isLimited("limitAnalytics")?b.errorIfWouldGoOverLimit("limitAnalytics").catch(C=>{C instanceof So&&v(!0)}):v(!1)},[b]);const S=(C,k)=>{o(C,k.target.checked),a(!0)},w=f.jsxs(Ze,{className:"analytics-settings !gap-y-0",columns:1,children:[f.jsx(Kt,{checked:p,direction:"rtl",disabled:!h||m,gap:"gap-0",hint:h?f.jsxs(f.Fragment,{children:["Cookie-free, first party traffic analytics for your site, powered by ",f.jsx("a",{className:"text-green",href:"https://ghost.org/integrations/tinybird",rel:"noopener noreferrer",target:"_blank",children:"Tinybird"})]}):f.jsx(f.Fragment,{children:"Cookie-free, first party traffic analytics for your site"}),label:"Web analytics",labelClasses:"py-4 w-full",onChange:C=>{S("web_analytics",C)}}),m?f.jsx("div",{className:"mb-5 rounded-md border border-grey-200 bg-grey-50 px-4 py-2.5 text-sm dark:border-grey-900 dark:bg-grey-925",children:f.jsx("span",{className:"flex items-start gap-2",children:f.jsxs("span",{children:["Web analytics is available on the Publisher plan and above. ",f.jsx("span",{className:"cursor-pointer text-green",onClick:()=>y({route:"/pro",isExternal:!0}),children:"Upgrade now →"})]})})}):h?f.jsx(gt,{className:"border-grey-200 dark:border-grey-900"}):f.jsx("div",{className:"mb-5 rounded-md border border-grey-200 bg-grey-50 px-4 py-2.5 text-sm dark:border-grey-900 dark:bg-grey-925",children:f.jsx("span",{className:"flex items-start gap-2",children:f.jsxs("span",{children:["Web analytics in Ghost is powered by ",f.jsx("a",{className:"text-green",href:"https://tbrd.co/ghost",rel:"noopener noreferrer",target:"_blank",children:"Tinybird"})," and requires configuration to start collecting data. ",f.jsx("a",{className:"text-green",href:"https://docs.ghost.org/install/docker#tinybird-integration",rel:"noopener noreferrer",target:"_blank",children:"Get started →"})]})})}),f.jsx(Kt,{checked:l,direction:"rtl",gap:"gap-0",hint:"Record when a member opens an email",label:"Newsletter opens",labelClasses:"py-4 w-full",onChange:C=>{S("email_track_opens",C)}}),f.jsx(gt,{className:"border-grey-200 dark:border-grey-900"}),f.jsx(Kt,{checked:c,direction:"rtl",disabled:g,gap:"gap-0",hint:"Record when a member clicks on any link in an email",label:"Newsletter clicks",labelClasses:"py-4 w-full",onChange:C=>{S("email_track_clicks",C)}}),f.jsx(gt,{className:"border-grey-200 dark:border-grey-900"}),f.jsx(Kt,{checked:u,direction:"rtl",gap:"gap-0",hint:"Track the traffic sources and posts that drive the most member growth",label:"Member sources",labelClasses:"py-4 w-full",onChange:C=>{S("members_track_sources",C)}}),f.jsx(gt,{className:"border-grey-200 dark:border-grey-900"}),f.jsx(Kt,{checked:d,direction:"rtl",gap:"gap-0",hint:"Make it easier for other sites to track the traffic you send them in their analytics",label:"Outbound link tagging",labelClasses:"py-4 w-full",onChange:C=>{S("outbound_link_tagging",C)}})]});return f.jsxs(Se,{description:"Decide what data you collect across your publication",isEditing:t,keywords:n,navid:"analytics",saveState:r,testId:"analytics",title:"Analytics",hideEditButton:!0,onCancel:s,onEditingChange:a,onSave:i,children:[w,f.jsx("div",{className:"items-center-mt-1 flex justify-between",children:f.jsx("a",{className:"text-sm text-green",href:"https://ghost.org/help/post-analytics/",rel:"noopener noreferrer",target:"_blank",children:"Learn about analytics"})})]})},L5=ke(P5,"Analytics"),_5=({keywords:n})=>{const{siteData:e}=Pe(),{localSettings:t,isEditing:r,saveState:i,handleSave:s,handleCancel:o,updateSetting:a,handleEditingChange:l,errors:c,clearError:u}=Ot({onValidate:()=>d&&!h?{password:"Enter a password"}:{}}),[d,h,p]=Te(t,["is_private","password","public_hash"]),g=w=>{a("is_private",w.target.checked)},m=w=>{a("password",w.target.value)},v=`${e.url.replace(/\/$/,"")}/${p}/rss`,b=f.jsxs(f.Fragment,{children:["A private RSS feed is available at ",f.jsx("a",{className:"break-all text-green",href:v,rel:"noopener noreferrer",target:"_blank",children:v})]}),y=f.jsx(Ze,{values:[{key:"private",value:d?f.jsxs("div",{className:"w-full",children:[f.jsxs("div",{className:"flex items-center gap-1",children:[f.jsx(ve,{colorClass:"text-yellow",name:"lock-locked",size:"sm"}),f.jsx("div",{className:"leading-supertight",children:"Your site is password protected"})]}),b&&f.jsxs("div",{className:"mt-7 w-full",children:[f.jsx(gt,{}),f.jsx(An,{children:b})]})]}):f.jsxs("div",{className:"flex items-center gap-1 text-grey-900 dark:text-grey-400",children:[f.jsx(ve,{colorClass:"text-black dark:text-white",name:"lock-unlocked",size:"sm"}),f.jsx("span",{children:"Your site is not password protected"})]})}]}),S=f.jsxs(Ze,{children:[f.jsx(Kt,{checked:d,direction:"rtl",hint:"All search engine optimization and social features will be disabled.",label:"Enable password protection",onChange:g}),d&&f.jsx(tt,{error:!!c.password,hint:c.password,placeholder:"Enter password",title:"Site password",value:h,hideTitle:!0,onChange:m,onKeyDown:()=>u("password")})]});return f.jsx(Se,{description:"Enable protection with a simple shared password.",isEditing:r,keywords:n,navid:"locksite",saveState:i,testId:"locksite",title:"Make site private",onCancel:o,onEditingChange:l,onSave:s,children:r?S:y})},j5=ke(_5,"Make site private"),B5=[{code:"af",label:"Afrikaans"},{code:"ar",label:"Arabic"},{code:"bg",label:"Bulgarian"},{code:"bn",label:"Bengali"},{code:"bs",label:"Bosnian"},{code:"ca",label:"Catalan"},{code:"cs",label:"Czech"},{code:"da",label:"Danish"},{code:"de",label:"German"},{code:"de-CH",label:"Swiss German"},{code:"el",label:"Greek"},{code:"en",label:"English"},{code:"eo",label:"Esperanto"},{code:"es",label:"Spanish"},{code:"et",label:"Estonian"},{code:"eu",label:"Basque"},{code:"fa",label:"Persian/Farsi"},{code:"fi",label:"Finnish"},{code:"fr",label:"French"},{code:"gd",label:"Gaelic (Scottish)"},{code:"he",label:"Hebrew"},{code:"hi",label:"Hindi"},{code:"hr",label:"Croatian"},{code:"hu",label:"Hungarian"},{code:"id",label:"Indonesian"},{code:"is",label:"Icelandic"},{code:"it",label:"Italian"},{code:"ja",label:"Japanese"},{code:"ko",label:"Korean"},{code:"kz",label:"Kazakh"},{code:"lt",label:"Lithuanian"},{code:"lv",label:"Latvian"},{code:"mk",label:"Macedonian"},{code:"mn",label:"Mongolian"},{code:"ms",label:"Malay"},{code:"nb",label:"Norwegian Bokmål"},{code:"ne",label:"Nepali"},{code:"nl",label:"Dutch"},{code:"nn",label:"Norwegian Nynorsk"},{code:"pa",label:"Punjabi"},{code:"pl",label:"Polish"},{code:"pt",label:"Portuguese"},{code:"pt-BR",label:"Portuguese (Brazil)"},{code:"ro",label:"Romanian"},{code:"ru",label:"Russian"},{code:"si",label:"Sinhala"},{code:"sk",label:"Slovak"},{code:"sl",label:"Slovenian"},{code:"sq",label:"Albanian"},{code:"sr",label:"Serbian"},{code:"sr-Cyrl",label:"Serbian (Cyrillic)"},{code:"sv",label:"Swedish"},{code:"sw",label:"Swahili"},{code:"ta",label:"Tamil"},{code:"th",label:"Thai"},{code:"tr",label:"Turkish"},{code:"uk",label:"Ukrainian"},{code:"ur",label:"Urdu"},{code:"uz",label:"Uzbek"},{code:"vi",label:"Vietnamese"},{code:"zh",label:"Chinese"},{code:"zh-Hant",label:"Traditional Chinese"}],$5=new Set(["en-gb-oed","i-ami","i-bnn","i-default","i-enochian","i-hak","i-klingon","i-lux","i-mingo","i-navajo","i-pwn","i-tao","i-tay","i-tsu","sgn-be-fr","sgn-be-nl","sgn-ch-de","art-lojban","cel-gaulish","no-bok","no-nyn","zh-guoyu","zh-hakka","zh-min","zh-min-nan","zh-xiang"]),Zg=n=>{const e="Invalid locale format. Examples: en, pt-BR, zh-Hant, sr-Cyrl, x-private";if(!n)return"Enter a value";const t=n.trim();if(!t)return e;if($5.has(t.toLowerCase()))return null;if(!/^[a-z0-9]+(-[a-z0-9]+)*$/i.test(t))return e;const r=t.split("-");if(r[0].toLowerCase()==="x"){if(r.length<2)return e;for(let l=1;l<r.length;l++)if(r[l].length<1||r[l].length>8)return e;return null}let i=0;const s=r[i];if(!/^[a-z]{2,3}$/i.test(s))return e;for(i+=1,i<r.length&&/^[a-z]{4}$/i.test(r[i])&&(i+=1),i<r.length&&/^([a-z]{2}|[0-9]{3})$/i.test(r[i])&&(i+=1);i<r.length&&/^([a-z0-9]{5,8}|[0-9][a-z0-9]{3})$/i.test(r[i]);)i+=1;for(;i<r.length&&/^[0-9a-wy-z]$/i.test(r[i]);){if(i+=1,i>=r.length||!/^[a-z0-9]{2,8}$/i.test(r[i]))return e;for(i+=1;i<r.length&&/^[a-z0-9]{2,8}$/i.test(r[i]);)i+=1}if(i<r.length&&r[i].toLowerCase()==="x"){if(i+=1,i>=r.length)return e;for(;i<r.length;){if(!/^[a-z0-9]+$/i.test(r[i]))return e;i+=1}}if(i!==r.length)return e;const o=r.findIndex(l=>l.toLowerCase()==="x"),a=["english","french","spanish","german","italian","chinese","japanese","korean","russian","arabic","united","states","kingdom","traditional","simplified"];for(let l=0;l<r.length;l++){const c=r[l];if(!["i","x","sgn","art","cel","no","zh"].includes(c.toLowerCase())&&!(o!==-1&&l>o)&&(c.length>16||a.includes(c.toLowerCase())))return e}return null},F5=({keywords:n})=>{const{localSettings:e,isEditing:t,saveState:r,handleSave:i,handleCancel:s,updateSetting:o,errors:a,handleEditingChange:l}=Ot({onValidate:()=>{const p=Zg(c);return p?{publicationLanguage:p}:{}}}),[c]=Te(e,["locale"]),u=Y.useMemo(()=>B5.map(g=>({value:g.code,label:`${g.label} (${g.code})`})),[]),d=p=>{o("locale",p),t||l(!0)},h=f.jsxs(f.Fragment,{children:["Default: English (",f.jsx("strong",{children:"en"}),"); find out more about",f.jsx("a",{className:"text-green-400",href:"https://ghost.org/docs/faq/translation/",rel:"noopener noreferrer",target:"_blank",children:" using Ghost in other languages"})]});return f.jsx(Se,{description:"Set the language/locale which is used on your site",isEditing:t,keywords:n,navid:"publication-language",saveState:r,testId:"publication-language",title:"Publication Language",hideEditButton:!0,onCancel:s,onEditingChange:l,onSave:i,children:f.jsx(Ze,{columns:1,children:f.jsx(mI,{defaultListValue:"en",error:!!a.publicationLanguage,hint:a.publicationLanguage||h,options:u,otherHint:"Enter a custom locale code.",otherPlaceholder:"e.g. pt-BR, sr-Cyrl, en",selectedValue:c,testId:"locale-select",title:"Site language",validate:Zg,isSearchable:!0,onSelect:d})})})},H5=ke(F5,"Publication language"),V5=He({method:"POST",path:()=>"/images/upload/",body:({file:n})=>{const e=new FormData;return e.append("file",n),e.append("purpose","image"),e}}),Cd=n=>n.images[0].url,U5=({title:n,description:e,icon:t,url:r})=>{const i=r?.replace(/\/$/,""),s=i?.replace(/^https?:\/\//,"").replace(/\/?$/,"");return f.jsx("div",{children:f.jsxs("div",{className:"-mx-5 -mb-5 overflow-hidden rounded-b-xl bg-grey-50 px-5 pt-2 md:-mx-7 md:-mb-7 md:px-7 md:pt-7 dark:bg-grey-950",children:[f.jsx("div",{className:"-mt-4 mb-2 text-xs uppercase text-grey-500 dark:text-grey-800",children:"Preview"}),f.jsxs("div",{className:"rounded-t-sm bg-white px-5 py-3 shadow-lg dark:bg-grey-975",children:[f.jsxs("div",{className:"mt-3 flex items-center",children:[f.jsx("div",{children:f.jsx(yR,{className:"mr-7 h-7"})}),f.jsx("div",{className:"grow",children:f.jsx("div",{className:"flex w-full items-center justify-end rounded-full bg-white p-3 px-4 shadow dark:bg-grey-900",children:f.jsx(ve,{className:"stroke-[2px] text-blue-600",name:"magnifying-glass",size:"sm"})})})]}),f.jsxs("div",{className:"mt-4 flex items-center gap-2 border-t border-grey-200 pt-4 dark:border-grey-900",children:[f.jsx("div",{className:"flex size-7 items-center justify-center rounded-full bg-grey-200 dark:bg-grey-700",style:{backgroundImage:t?`url(${t})`:"none",backgroundSize:"contain"}}),f.jsxs("div",{className:"flex flex-col text-sm",children:[f.jsx("span",{children:s}),f.jsx("span",{className:"-mt-0.5 inline-block text-xs text-grey-600",children:i})]})]}),f.jsxs("div",{className:"mt-1 flex flex-col",children:[f.jsx("span",{className:"text-lg text-[#1a0dab] dark:text-blue",children:n}),f.jsx("span",{className:"text-sm text-grey-900 dark:text-grey-700",children:e})]})]})]})})},z5=({keywords:n})=>{const{localSettings:e,saveState:t,siteData:r,focusRef:i,isEditing:s,handleSave:o,handleCancel:a,handleEditingChange:l,updateSetting:c}=Ot(),u=vt(),{mutateAsync:d}=V5(),h=mS(),[p,g,m,v,b,y,S,w,C,k]=Te(e,["meta_title","meta_description","title","description","og_title","og_description","og_image","twitter_title","twitter_description","twitter_image"]).map(Q=>Q||""),[A,I]=x.useState("metadata"),D=Q=>ce=>{c(Q,ce.target.value),s||l(!0)},R=Q=>async ce=>{try{const Ae=Cd(await d({file:ce}));c(Q,Ae),s||l(!0)}catch(Ae){const Be=Ae;Be.response.status===415&&(Be.message="Unsupported file type"),u(Be)}},T=Q=>()=>{c(Q,""),s||l(!0)},N=D("meta_title"),P=D("meta_description"),L=D("og_title"),$=D("og_description"),q=R("og_image"),Z=T("og_image"),ae=D("twitter_title"),ee=D("twitter_description"),de=R("twitter_image"),ge=T("twitter_image"),K=f.jsxs(f.Fragment,{children:[f.jsxs(Ze,{className:"my-6 gap-3",children:[f.jsx(tt,{hint:"Recommended: 70 characters",inputRef:i,maxLength:300,placeholder:m,title:"Meta title",value:p,onChange:N}),f.jsx(tt,{hint:"Recommended: 156 characters",maxLength:500,placeholder:v,title:"Meta description",value:g,onChange:P})]}),f.jsx(U5,{description:g||v,icon:r?.icon,title:p||m,url:r?.url})]}),fe=f.jsxs("div",{className:"mt-6 md:mx-[52px]",children:[f.jsxs("div",{className:"mb-4 flex items-center gap-2",children:[f.jsx("div",{children:f.jsx(xR,{className:"size-10"})}),f.jsxs("div",{children:[f.jsx("div",{className:"mb-1 font-semibold leading-none text-grey-900 dark:text-grey-300",children:m}),f.jsx("div",{className:"leading-none text-grey-700",children:"2h"})]})]}),f.jsxs("div",{children:[f.jsx("div",{className:"mb-2 h-3 w-full rounded bg-grey-200 dark:bg-grey-900"}),f.jsx("div",{className:"mb-4 h-3 w-3/5 rounded bg-grey-200 dark:bg-grey-900"}),f.jsxs(Ze,{className:"overflow-hidden rounded-md border border-grey-300 dark:border-grey-900",children:[f.jsx(ep,{fileUploadClassName:"flex cursor-pointer items-center justify-center rounded rounded-b-none border border-grey-100 border-b-0 bg-grey-75 p-3 text-sm font-semibold text-grey-800 hover:text-black dark:border-grey-900",height:"300px",id:"facebook-image",imageURL:S,pintura:{isEnabled:h.isEnabled,openEditor:async()=>h.openEditor({image:S||"",handleSave:async Q=>{const ce=Cd(await d({file:Q}));c("og_image",ce)}})},onDelete:Z,onUpload:q,children:"Upload Facebook image"}),f.jsxs("div",{className:"mt-5 flex flex-col gap-x-6 gap-y-7 px-4 pb-7",children:[f.jsx(tt,{maxLength:300,placeholder:m,title:"Facebook title",value:b,onChange:L}),f.jsx(tt,{maxLength:300,placeholder:v,title:"Facebook description",value:y,onChange:$})]})]})]})]}),re=f.jsxs("div",{className:"mt-6 flex flex-col gap-3 md:flex-row",children:[f.jsx("div",{className:"pt-1",children:f.jsx(wR,{className:"-mb-1 size-10"})}),f.jsxs("div",{className:"w-full md:mr-[52px]",children:[f.jsxs("div",{className:"mb-2",children:[f.jsx("span",{className:"mr-1 font-semibold text-grey-900 dark:text-grey-300",children:m}),f.jsx("span",{className:"text-grey-700",children:"· 2h"})]}),f.jsx("div",{className:"mb-2 h-3 w-full rounded bg-grey-200 dark:bg-grey-900"}),f.jsx("div",{className:"mb-4 h-3 w-3/5 rounded bg-grey-200 dark:bg-grey-900"}),f.jsxs(Ze,{className:"overflow-hidden rounded-md border border-grey-300 dark:border-grey-900",children:[f.jsx(ep,{fileUploadClassName:"flex cursor-pointer items-center justify-center rounded rounded-b-none border border-grey-100 border-b-0 bg-grey-75 p-3 text-sm font-semibold text-grey-800 hover:text-black dark:border-grey-900",height:"300px",id:"twitter-image",imageURL:k,pintura:{isEnabled:h.isEnabled,openEditor:async()=>h.openEditor({image:k||"",handleSave:async Q=>{const ce=Cd(await d({file:Q}));c("twitter_image",ce)}})},onDelete:ge,onUpload:de,children:"Upload X image"}),f.jsxs("div",{className:"mt-6 flex flex-col gap-x-6 gap-y-7 px-4 pb-7",children:[f.jsx(tt,{maxLength:300,placeholder:m,title:"X title",value:w,onChange:ae}),f.jsx(tt,{maxLength:300,placeholder:v,title:"X description",value:C,onChange:ee})]})]})]})]}),ue=[{id:"metadata",title:"Search",contents:K},{id:"twitter",title:"X card",contents:re},{id:"facebook",title:"Facebook card",contents:fe}];return f.jsx(Se,{description:"Extra content for search engines and social accounts",isEditing:s,keywords:n,navid:"metadata",saveState:t,testId:"seometa",title:"Meta data",hideEditButton:!0,onCancel:a,onEditingChange:l,onSave:o,children:f.jsx(Gn,{selectedTab:A,tabs:ue,testId:"seo-tabview",onTabChange:I})})},W5=ke(z5,"SEO meta");var ea={exports:{}},ta={exports:{}},na={exports:{}},Yg;function U(){return Yg||(Yg=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=r;function t(i){"@babel/helpers - typeof";return t=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(s){return typeof s}:function(s){return s&&typeof Symbol=="function"&&s.constructor===Symbol&&s!==Symbol.prototype?"symbol":typeof s},t(i)}function r(i){var s=typeof i=="string"||i instanceof String;if(!s){var o=t(i);throw i===null?o="null":o==="object"&&(o=i.constructor.name),new TypeError("Expected a string but received a ".concat(o))}}n.exports=e.default,n.exports.default=e.default})(na,na.exports)),na.exports}var Jg;function Uh(){return Jg||(Jg=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=r(U());function r(s){return s&&s.__esModule?s:{default:s}}function i(s){return(0,t.default)(s),s=Date.parse(s),isNaN(s)?null:new Date(s)}n.exports=e.default,n.exports.default=e.default})(ta,ta.exports)),ta.exports}var ra={exports:{}},li={},Xe={},Xg;function ko(){if(Xg)return Xe;Xg=1,Object.defineProperty(Xe,"__esModule",{value:!0}),Xe.farsiLocales=Xe.englishLocales=Xe.dotDecimal=Xe.decimal=Xe.commaDecimal=Xe.bengaliLocales=Xe.arabicLocales=Xe.alphanumeric=Xe.alpha=void 0;for(var n=Xe.alpha={"en-US":/^[A-Z]+$/i,"az-AZ":/^[A-VXYZÇƏĞİıÖŞÜ]+$/i,"bg-BG":/^[А-Я]+$/i,"cs-CZ":/^[A-ZÁČĎÉĚÍŇÓŘŠŤÚŮÝŽ]+$/i,"da-DK":/^[A-ZÆØÅ]+$/i,"de-DE":/^[A-ZÄÖÜß]+$/i,"el-GR":/^[Α-ώ]+$/i,"es-ES":/^[A-ZÁÉÍÑÓÚÜ]+$/i,"fa-IR":/^[ابپتثجچحخدذرزژسشصضطظعغفقکگلمنوهی]+$/i,"fi-FI":/^[A-ZÅÄÖ]+$/i,"fr-FR":/^[A-ZÀÂÆÇÉÈÊËÏÎÔŒÙÛÜŸ]+$/i,"it-IT":/^[A-ZÀÉÈÌÎÓÒÙ]+$/i,"ja-JP":/^[ぁ-んァ-ヶヲ-゚一-龠ー・。、]+$/i,"nb-NO":/^[A-ZÆØÅ]+$/i,"nl-NL":/^[A-ZÁÉËÏÓÖÜÚ]+$/i,"nn-NO":/^[A-ZÆØÅ]+$/i,"hu-HU":/^[A-ZÁÉÍÓÖŐÚÜŰ]+$/i,"pl-PL":/^[A-ZĄĆĘŚŁŃÓŻŹ]+$/i,"pt-PT":/^[A-ZÃÁÀÂÄÇÉÊËÍÏÕÓÔÖÚÜ]+$/i,"ru-RU":/^[А-ЯЁ]+$/i,"kk-KZ":/^[А-ЯЁ\u04D8\u04B0\u0406\u04A2\u0492\u04AE\u049A\u04E8\u04BA]+$/i,"sl-SI":/^[A-ZČĆĐŠŽ]+$/i,"sk-SK":/^[A-ZÁČĎÉÍŇÓŠŤÚÝŽĹŔĽÄÔ]+$/i,"sr-RS@latin":/^[A-ZČĆŽŠĐ]+$/i,"sr-RS":/^[А-ЯЂЈЉЊЋЏ]+$/i,"sv-SE":/^[A-ZÅÄÖ]+$/i,"th-TH":/^[ก-๐\s]+$/i,"tr-TR":/^[A-ZÇĞİıÖŞÜ]+$/i,"uk-UA":/^[А-ЩЬЮЯЄIЇҐі]+$/i,"vi-VN":/^[A-ZÀÁẠẢÃÂẦẤẬẨẪĂẰẮẶẲẴĐÈÉẸẺẼÊỀẾỆỂỄÌÍỊỈĨÒÓỌỎÕÔỒỐỘỔỖƠỜỚỢỞỠÙÚỤỦŨƯỪỨỰỬỮỲÝỴỶỸ]+$/i,"ko-KR":/^[ㄱ-ㅎㅏ-ㅣ가-힣]*$/,"ku-IQ":/^[ئابپتجچحخدرڕزژسشعغفڤقکگلڵمنوۆھەیێيطؤثآإأكضصةظذ]+$/i,ar:/^[ءآأؤإئابةتثجحخدذرزسشصضطظعغفقكلمنهوىيًٌٍَُِّْٰ]+$/,he:/^[א-ת]+$/,fa:/^['آاءأؤئبپتثجچحخدذرزژسشصضطظعغفقکگلمنوهةی']+$/i,bn:/^['ঀঁংঃঅআইঈউঊঋঌএঐওঔকখগঘঙচছজঝঞটঠডঢণতথদধনপফবভমযরলশষসহ়ঽািীুূৃৄেৈোৌ্ৎৗড়ঢ়য়ৠৡৢৣৰৱ৲৳৴৵৶৷৸৹৺৻']+$/,eo:/^[ABCĈD-GĜHĤIJĴK-PRSŜTUŬVZ]+$/i,"hi-IN":/^[\u0900-\u0961]+[\u0972-\u097F]*$/i,"si-LK":/^[\u0D80-\u0DFF]+$/},e=Xe.alphanumeric={"en-US":/^[0-9A-Z]+$/i,"az-AZ":/^[0-9A-VXYZÇƏĞİıÖŞÜ]+$/i,"bg-BG":/^[0-9А-Я]+$/i,"cs-CZ":/^[0-9A-ZÁČĎÉĚÍŇÓŘŠŤÚŮÝŽ]+$/i,"da-DK":/^[0-9A-ZÆØÅ]+$/i,"de-DE":/^[0-9A-ZÄÖÜß]+$/i,"el-GR":/^[0-9Α-ω]+$/i,"es-ES":/^[0-9A-ZÁÉÍÑÓÚÜ]+$/i,"fi-FI":/^[0-9A-ZÅÄÖ]+$/i,"fr-FR":/^[0-9A-ZÀÂÆÇÉÈÊËÏÎÔŒÙÛÜŸ]+$/i,"it-IT":/^[0-9A-ZÀÉÈÌÎÓÒÙ]+$/i,"ja-JP":/^[0-90-9ぁ-んァ-ヶヲ-゚一-龠ー・。、]+$/i,"hu-HU":/^[0-9A-ZÁÉÍÓÖŐÚÜŰ]+$/i,"nb-NO":/^[0-9A-ZÆØÅ]+$/i,"nl-NL":/^[0-9A-ZÁÉËÏÓÖÜÚ]+$/i,"nn-NO":/^[0-9A-ZÆØÅ]+$/i,"pl-PL":/^[0-9A-ZĄĆĘŚŁŃÓŻŹ]+$/i,"pt-PT":/^[0-9A-ZÃÁÀÂÄÇÉÊËÍÏÕÓÔÖÚÜ]+$/i,"ru-RU":/^[0-9А-ЯЁ]+$/i,"kk-KZ":/^[0-9А-ЯЁ\u04D8\u04B0\u0406\u04A2\u0492\u04AE\u049A\u04E8\u04BA]+$/i,"sl-SI":/^[0-9A-ZČĆĐŠŽ]+$/i,"sk-SK":/^[0-9A-ZÁČĎÉÍŇÓŠŤÚÝŽĹŔĽÄÔ]+$/i,"sr-RS@latin":/^[0-9A-ZČĆŽŠĐ]+$/i,"sr-RS":/^[0-9А-ЯЂЈЉЊЋЏ]+$/i,"sv-SE":/^[0-9A-ZÅÄÖ]+$/i,"th-TH":/^[ก-๙\s]+$/i,"tr-TR":/^[0-9A-ZÇĞİıÖŞÜ]+$/i,"uk-UA":/^[0-9А-ЩЬЮЯЄIЇҐі]+$/i,"ko-KR":/^[0-9ㄱ-ㅎㅏ-ㅣ가-힣]*$/,"ku-IQ":/^[٠١٢٣٤٥٦٧٨٩0-9ئابپتجچحخدرڕزژسشعغفڤقکگلڵمنوۆھەیێيطؤثآإأكضصةظذ]+$/i,"vi-VN":/^[0-9A-ZÀÁẠẢÃÂẦẤẬẨẪĂẰẮẶẲẴĐÈÉẸẺẼÊỀẾỆỂỄÌÍỊỈĨÒÓỌỎÕÔỒỐỘỔỖƠỜỚỢỞỠÙÚỤỦŨƯỪỨỰỬỮỲÝỴỶỸ]+$/i,ar:/^[٠١٢٣٤٥٦٧٨٩0-9ءآأؤإئابةتثجحخدذرزسشصضطظعغفقكلمنهوىيًٌٍَُِّْٰ]+$/,he:/^[0-9א-ת]+$/,fa:/^['0-9آاءأؤئبپتثجچحخدذرزژسشصضطظعغفقکگلمنوهةی۱۲۳۴۵۶۷۸۹۰']+$/i,bn:/^['ঀঁংঃঅআইঈউঊঋঌএঐওঔকখগঘঙচছজঝঞটঠডঢণতথদধনপফবভমযরলশষসহ়ঽািীুূৃৄেৈোৌ্ৎৗড়ঢ়য়ৠৡৢৣ০১২৩৪৫৬৭৮৯ৰৱ৲৳৴৵৶৷৸৹৺৻']+$/,eo:/^[0-9ABCĈD-GĜHĤIJĴK-PRSŜTUŬVZ]+$/i,"hi-IN":/^[\u0900-\u0963]+[\u0966-\u097F]*$/i,"si-LK":/^[0-9\u0D80-\u0DFF]+$/},t=Xe.decimal={"en-US":".",ar:"٫"},r=Xe.englishLocales=["AU","GB","HK","IN","NZ","ZA","ZM"],i,s=0;s<r.length;s++)i="en-".concat(r[s]),n[i]=n["en-US"],e[i]=e["en-US"],t[i]=t["en-US"];for(var o=Xe.arabicLocales=["AE","BH","DZ","EG","IQ","JO","KW","LB","LY","MA","QM","QA","SA","SD","SY","TN","YE"],a,l=0;l<o.length;l++)a="ar-".concat(o[l]),n[a]=n.ar,e[a]=e.ar,t[a]=t.ar;for(var c=Xe.farsiLocales=["IR","AF"],u,d=0;d<c.length;d++)u="fa-".concat(c[d]),e[u]=e.fa,t[u]=t.ar;for(var h=Xe.bengaliLocales=["BD","IN"],p,g=0;g<h.length;g++)p="bn-".concat(h[g]),n[p]=n.bn,e[p]=e.bn,t[p]=t["en-US"];for(var m=Xe.dotDecimal=["ar-EG","ar-LB","ar-LY"],v=Xe.commaDecimal=["bg-BG","cs-CZ","da-DK","de-DE","el-GR","en-ZM","eo","es-ES","fr-CA","fr-FR","id-ID","it-IT","ku-IQ","hi-IN","hu-HU","nb-NO","nn-NO","nl-NL","pl-PL","pt-PT","ru-RU","kk-KZ","si-LK","sl-SI","sr-RS@latin","sr-RS","sv-SE","tr-TR","uk-UA","vi-VN"],b=0;b<m.length;b++)t[m[b]]=t["en-US"];for(var y=0;y<v.length;y++)t[v[y]]=",";return n["fr-CA"]=n["fr-FR"],e["fr-CA"]=e["fr-FR"],n["pt-BR"]=n["pt-PT"],e["pt-BR"]=e["pt-PT"],t["pt-BR"]=t["pt-PT"],n["pl-Pl"]=n["pl-PL"],e["pl-Pl"]=e["pl-PL"],t["pl-Pl"]=t["pl-PL"],n["fa-AF"]=n.fa,Xe}var Qg;function SS(){if(Qg)return li;Qg=1,Object.defineProperty(li,"__esModule",{value:!0}),li.default=r,li.locales=void 0;var n=t(U()),e=ko();function t(i){return i&&i.__esModule?i:{default:i}}function r(i,s){(0,n.default)(i),s=s||{};var o=new RegExp("^(?:[-+])?(?:[0-9]+)?(?:\\".concat(s.locale?e.decimal[s.locale]:".","[0-9]*)?(?:[eE][\\+\\-]?(?:[0-9]+))?$"));if(i===""||i==="."||i===","||i==="-"||i==="+")return!1;var a=parseFloat(i.replace(",","."));return o.test(i)&&(!s.hasOwnProperty("min")||a>=s.min)&&(!s.hasOwnProperty("max")||a<=s.max)&&(!s.hasOwnProperty("lt")||a<s.lt)&&(!s.hasOwnProperty("gt")||a>s.gt)}return li.locales=Object.keys(e.decimal),li}var e0;function CS(){return e0||(e0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=r(SS());function r(s){return s&&s.__esModule?s:{default:s}}function i(s){return(0,t.default)(s)?parseFloat(s):NaN}n.exports=e.default,n.exports.default=e.default})(ra,ra.exports)),ra.exports}var ia={exports:{}},t0;function q5(){return t0||(t0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=r(U());function r(s){return s&&s.__esModule?s:{default:s}}function i(s,o){return(0,t.default)(s),parseInt(s,o||10)}n.exports=e.default,n.exports.default=e.default})(ia,ia.exports)),ia.exports}var sa={exports:{}},n0;function G5(){return n0||(n0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=r(U());function r(s){return s&&s.__esModule?s:{default:s}}function i(s,o){return(0,t.default)(s),o?s==="1"||/^true$/i.test(s):s!=="0"&&!/^false$/i.test(s)&&s!==""}n.exports=e.default,n.exports.default=e.default})(sa,sa.exports)),sa.exports}var oa={exports:{}},r0;function K5(){return r0||(r0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=r(U());function r(s){return s&&s.__esModule?s:{default:s}}function i(s,o){return(0,t.default)(s),s===o}n.exports=e.default,n.exports.default=e.default})(oa,oa.exports)),oa.exports}var aa={exports:{}},la={exports:{}},i0;function kS(){return i0||(i0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=r;function t(i){"@babel/helpers - typeof";return t=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(s){return typeof s}:function(s){return s&&typeof Symbol=="function"&&s.constructor===Symbol&&s!==Symbol.prototype?"symbol":typeof s},t(i)}function r(i){return t(i)==="object"&&i!==null?typeof i.toString=="function"?i=i.toString():i="[object Object]":(i===null||typeof i>"u"||isNaN(i)&&!i.length)&&(i=""),String(i)}n.exports=e.default,n.exports.default=e.default})(la,la.exports)),la.exports}var ca={exports:{}},s0;function Ht(){return s0||(s0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=t;function t(){var r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},i=arguments.length>1?arguments[1]:void 0;for(var s in i)typeof r[s]>"u"&&(r[s]=i[s]);return r}n.exports=e.default,n.exports.default=e.default})(ca,ca.exports)),ca.exports}var o0;function Z5(){return o0||(o0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=a;var t=s(U()),r=s(kS()),i=s(Ht());function s(l){return l&&l.__esModule?l:{default:l}}var o={ignoreCase:!1,minOccurrences:1};function a(l,c,u){return(0,t.default)(l),u=(0,i.default)(u,o),u.ignoreCase?l.toLowerCase().split((0,r.default)(c).toLowerCase()).length>u.minOccurrences:l.split((0,r.default)(c)).length>u.minOccurrences}n.exports=e.default,n.exports.default=e.default})(aa,aa.exports)),aa.exports}var ua={exports:{}},a0;function Y5(){return a0||(a0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=r(U());function r(s){return s&&s.__esModule?s:{default:s}}function i(s,o,a){return(0,t.default)(s),Object.prototype.toString.call(o)!=="[object RegExp]"&&(o=new RegExp(o,a)),!!s.match(o)}n.exports=e.default,n.exports.default=e.default})(ua,ua.exports)),ua.exports}var da={exports:{}},fa={exports:{}},l0;function AS(){return l0||(l0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=s;var t=r(U());function r(o){return o&&o.__esModule?o:{default:o}}function i(o){"@babel/helpers - typeof";return i=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(a){return typeof a}:function(a){return a&&typeof Symbol=="function"&&a.constructor===Symbol&&a!==Symbol.prototype?"symbol":typeof a},i(o)}function s(o,a){(0,t.default)(o);var l,c;i(a)==="object"?(l=a.min||0,c=a.max):(l=arguments[1],c=arguments[2]);var u=encodeURI(o).split(/%..|./).length-1;return u>=l&&(typeof c>"u"||u<=c)}n.exports=e.default,n.exports.default=e.default})(fa,fa.exports)),fa.exports}var ha={exports:{}},c0;function zh(){return c0||(c0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=o;var t=i(U()),r=i(Ht());function i(a){return a&&a.__esModule?a:{default:a}}var s={require_tld:!0,allow_underscores:!1,allow_trailing_dot:!1,allow_numeric_tld:!1,allow_wildcard:!1,ignore_max_length:!1};function o(a,l){(0,t.default)(a),l=(0,r.default)(l,s),l.allow_trailing_dot&&a[a.length-1]==="."&&(a=a.substring(0,a.length-1)),l.allow_wildcard===!0&&a.indexOf("*.")===0&&(a=a.substring(2));var c=a.split("."),u=c[c.length-1];return l.require_tld&&(c.length<2||!l.allow_numeric_tld&&!/^([a-z\u00A1-\u00A8\u00AA-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]{2,}|xn[a-z0-9-]{2,})$/i.test(u)||/\s/.test(u))||!l.allow_numeric_tld&&/^\d+$/.test(u)?!1:c.every(function(d){return!(d.length>63&&!l.ignore_max_length||!/^[a-z_\u00a1-\uffff0-9-]+$/i.test(d)||/[\uff01-\uff5e]/.test(d)||/^-|-$/.test(d)||!l.allow_underscores&&/_/.test(d))})}n.exports=e.default,n.exports.default=e.default})(ha,ha.exports)),ha.exports}var pa={exports:{}},u0;function Iu(){return u0||(u0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=c;var t=r(U());function r(u){return u&&u.__esModule?u:{default:u}}var i="(?:[0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])",s="(".concat(i,"[.]){3}").concat(i),o=new RegExp("^".concat(s,"$")),a="(?:[0-9a-fA-F]{1,4})",l=new RegExp("^("+"(?:".concat(a,":){7}(?:").concat(a,"|:)|")+"(?:".concat(a,":){6}(?:").concat(s,"|:").concat(a,"|:)|")+"(?:".concat(a,":){5}(?::").concat(s,"|(:").concat(a,"){1,2}|:)|")+"(?:".concat(a,":){4}(?:(:").concat(a,"){0,1}:").concat(s,"|(:").concat(a,"){1,3}|:)|")+"(?:".concat(a,":){3}(?:(:").concat(a,"){0,2}:").concat(s,"|(:").concat(a,"){1,4}|:)|")+"(?:".concat(a,":){2}(?:(:").concat(a,"){0,3}:").concat(s,"|(:").concat(a,"){1,5}|:)|")+"(?:".concat(a,":){1}(?:(:").concat(a,"){0,4}:").concat(s,"|(:").concat(a,"){1,6}|:)|")+"(?::((?::".concat(a,"){0,5}:").concat(s,"|(?::").concat(a,"){1,7}|:))")+")(%[0-9a-zA-Z-.:]{1,})?$");function c(u){var d=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"";return(0,t.default)(u),d=String(d),d?d==="4"?o.test(u):d==="6"?l.test(u):!1:c(u,4)||c(u,6)}n.exports=e.default,n.exports.default=e.default})(pa,pa.exports)),pa.exports}var d0;function MS(){return d0||(d0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=b;var t=a(U()),r=a(AS()),i=a(zh()),s=a(Iu()),o=a(Ht());function a(y){return y&&y.__esModule?y:{default:y}}var l={allow_display_name:!1,allow_underscores:!1,require_display_name:!1,allow_utf8_local_part:!0,require_tld:!0,blacklisted_chars:"",ignore_max_length:!1,host_blacklist:[],host_whitelist:[]},c=/^([^\x00-\x1F\x7F-\x9F\cX]+)</i,u=/^[a-z\d!#\$%&'\*\+\-\/=\?\^_`{\|}~]+$/i,d=/^[a-z\d]+$/,h=/^([\s\x01-\x08\x0b\x0c\x0e-\x1f\x7f\x21\x23-\x5b\x5d-\x7e]|(\\[\x01-\x09\x0b\x0c\x0d-\x7f]))*$/i,p=/^[a-z\d!#\$%&'\*\+\-\/=\?\^_`{\|}~\u00A1-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+$/i,g=/^([\s\x01-\x08\x0b\x0c\x0e-\x1f\x7f\x21\x23-\x5b\x5d-\x7e\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]|(\\[\x01-\x09\x0b\x0c\x0d-\x7f\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))*$/i,m=254;function v(y){var S=y.replace(/^"(.+)"$/,"$1");if(!S.trim())return!1;var w=/[\.";<>]/.test(S);if(w){if(S===y)return!1;var C=S.split('"').length===S.split('\\"').length;if(!C)return!1}return!0}function b(y,S){if((0,t.default)(y),S=(0,o.default)(S,l),S.require_display_name||S.allow_display_name){var w=y.match(c);if(w){var C=w[1];if(y=y.replace(C,"").replace(/(^<|>$)/g,""),C.endsWith(" ")&&(C=C.slice(0,-1)),!v(C))return!1}else if(S.require_display_name)return!1}if(!S.ignore_max_length&&y.length>m)return!1;var k=y.split("@"),A=k.pop(),I=A.toLowerCase();if(S.host_blacklist.includes(I)||S.host_whitelist.length>0&&!S.host_whitelist.includes(I))return!1;var D=k.join("@");if(S.domain_specific_validation&&(I==="gmail.com"||I==="googlemail.com")){D=D.toLowerCase();var R=D.split("+")[0];if(!(0,r.default)(R.replace(/\./g,""),{min:6,max:30}))return!1;for(var T=R.split("."),N=0;N<T.length;N++)if(!d.test(T[N]))return!1}if(S.ignore_max_length===!1&&(!(0,r.default)(D,{max:64})||!(0,r.default)(A,{max:254})))return!1;if(!(0,i.default)(A,{require_tld:S.require_tld,ignore_max_length:S.ignore_max_length,allow_underscores:S.allow_underscores})){if(!S.allow_ip_domain)return!1;if(!(0,s.default)(A)){if(!A.startsWith("[")||!A.endsWith("]"))return!1;var P=A.slice(1,-1);if(P.length===0||!(0,s.default)(P))return!1}}if(D[0]==='"')return D=D.slice(1,D.length-1),S.allow_utf8_local_part?g.test(D):h.test(D);for(var L=S.allow_utf8_local_part?p:u,$=D.split("."),q=0;q<$.length;q++)if(!L.test($[q]))return!1;return!(S.blacklisted_chars&&D.search(new RegExp("[".concat(S.blacklisted_chars,"]+"),"g"))!==-1)}n.exports=e.default,n.exports.default=e.default})(da,da.exports)),da.exports}var ma={exports:{}},f0;function J5(){return f0||(f0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=b;var t=o(U()),r=o(zh()),i=o(Iu()),s=o(Ht());function o(y){return y&&y.__esModule?y:{default:y}}function a(y,S){return h(y)||d(y,S)||c(y,S)||l()}function l(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
27
27
|
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function c(y,S){if(y){if(typeof y=="string")return u(y,S);var w=Object.prototype.toString.call(y).slice(8,-1);if(w==="Object"&&y.constructor&&(w=y.constructor.name),w==="Map"||w==="Set")return Array.from(y);if(w==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(w))return u(y,S)}}function u(y,S){(S==null||S>y.length)&&(S=y.length);for(var w=0,C=new Array(S);w<S;w++)C[w]=y[w];return C}function d(y,S){var w=y==null?null:typeof Symbol<"u"&&y[Symbol.iterator]||y["@@iterator"];if(w!=null){var C,k,A,I,D=[],R=!0,T=!1;try{if(A=(w=w.call(y)).next,S!==0)for(;!(R=(C=A.call(w)).done)&&(D.push(C.value),D.length!==S);R=!0);}catch(N){T=!0,k=N}finally{try{if(!R&&w.return!=null&&(I=w.return(),Object(I)!==I))return}finally{if(T)throw k}}return D}}function h(y){if(Array.isArray(y))return y}var p={protocols:["http","https","ftp"],require_tld:!0,require_protocol:!1,require_host:!0,require_port:!1,require_valid_protocol:!0,allow_underscores:!1,allow_trailing_dot:!1,allow_protocol_relative_urls:!1,allow_fragments:!0,allow_query_components:!0,validate_length:!0},g=/^\[([^\]]+)\](?::([0-9]+))?$/;function m(y){return Object.prototype.toString.call(y)==="[object RegExp]"}function v(y,S){for(var w=0;w<S.length;w++){var C=S[w];if(y===C||m(C)&&C.test(y))return!0}return!1}function b(y,S){if((0,t.default)(y),!y||/[\s<>]/.test(y)||y.indexOf("mailto:")===0||(S=(0,s.default)(S,p),S.validate_length&&y.length>=2083)||!S.allow_fragments&&y.includes("#")||!S.allow_query_components&&(y.includes("?")||y.includes("&")))return!1;var w,C,k,A,I,D,R,T;if(R=y.split("#"),y=R.shift(),R=y.split("?"),y=R.shift(),R=y.split("://"),R.length>1){if(w=R.shift().toLowerCase(),S.require_valid_protocol&&S.protocols.indexOf(w)===-1)return!1}else{if(S.require_protocol)return!1;if(y.slice(0,2)==="//"){if(!S.allow_protocol_relative_urls)return!1;R[0]=y.slice(2)}}if(y=R.join("://"),y==="")return!1;if(R=y.split("/"),y=R.shift(),y===""&&!S.require_host)return!0;if(R=y.split("@"),R.length>1){if(S.disallow_auth||R[0]===""||(C=R.shift(),C.indexOf(":")>=0&&C.split(":").length>2))return!1;var N=C.split(":"),P=a(N,2),L=P[0],$=P[1];if(L===""&&$==="")return!1}A=R.join("@"),D=null,T=null;var q=A.match(g);if(q?(k="",T=q[1],D=q[2]||null):(R=A.split(":"),k=R.shift(),R.length&&(D=R.join(":"))),D!==null&&D.length>0){if(I=parseInt(D,10),!/^[0-9]+$/.test(D)||I<=0||I>65535)return!1}else if(S.require_port)return!1;return S.host_whitelist?v(k,S.host_whitelist):k===""&&!S.require_host?!0:!(!(0,i.default)(k)&&!(0,r.default)(k,S)&&(!T||!(0,i.default)(T,6))||(k=k||T,S.host_blacklist&&v(k,S.host_blacklist)))}n.exports=e.default,n.exports.default=e.default})(ma,ma.exports)),ma.exports}var ga={exports:{}},h0;function X5(){return h0||(h0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=u;var t=r(U());function r(d){return d&&d.__esModule?d:{default:d}}var i=/^(?:[0-9a-fA-F]{2}([-:\s]))([0-9a-fA-F]{2}\1){4}([0-9a-fA-F]{2})$/,s=/^([0-9a-fA-F]){12}$/,o=/^([0-9a-fA-F]{4}\.){2}([0-9a-fA-F]{4})$/,a=/^(?:[0-9a-fA-F]{2}([-:\s]))([0-9a-fA-F]{2}\1){6}([0-9a-fA-F]{2})$/,l=/^([0-9a-fA-F]){16}$/,c=/^([0-9a-fA-F]{4}\.){3}([0-9a-fA-F]{4})$/;function u(d,h){return(0,t.default)(d),h!=null&&h.eui&&(h.eui=String(h.eui)),h!=null&&h.no_colons||h!=null&&h.no_separators?h.eui==="48"?s.test(d):h.eui==="64"?l.test(d):s.test(d)||l.test(d):h?.eui==="48"?i.test(d)||o.test(d):h?.eui==="64"?a.test(d)||c.test(d):u(d,{eui:"48"})||u(d,{eui:"64"})}n.exports=e.default,n.exports.default=e.default})(ga,ga.exports)),ga.exports}var va={exports:{}},p0;function Q5(){return p0||(p0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=l;var t=i(U()),r=i(Iu());function i(c){return c&&c.__esModule?c:{default:c}}var s=/^\d{1,3}$/,o=32,a=128;function l(c){var u=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"";(0,t.default)(c);var d=c.split("/");if(d.length!==2||!s.test(d[1])||d[1].length>1&&d[1].startsWith("0"))return!1;var h=(0,r.default)(d[0],u);if(!h)return!1;var p=null;switch(String(u)){case"4":p=o;break;case"6":p=a;break;default:p=(0,r.default)(d[0],"6")?a:o}return d[1]<=p&&d[1]>=0}n.exports=e.default,n.exports.default=e.default})(va,va.exports)),va.exports}var ba={exports:{}},m0;function IS(){return m0||(m0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=g;var t=r(Ht());function r(m){return m&&m.__esModule?m:{default:m}}function i(m,v){return a(m)||o(m,v)||c(m,v)||s()}function s(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
28
28
|
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function o(m,v){var b=m==null?null:typeof Symbol<"u"&&m[Symbol.iterator]||m["@@iterator"];if(b!=null){var y,S,w,C,k=[],A=!0,I=!1;try{if(w=(b=b.call(m)).next,v!==0)for(;!(A=(y=w.call(b)).done)&&(k.push(y.value),k.length!==v);A=!0);}catch(D){I=!0,S=D}finally{try{if(!A&&b.return!=null&&(C=b.return(),Object(C)!==C))return}finally{if(I)throw S}}return k}}function a(m){if(Array.isArray(m))return m}function l(m,v){var b=typeof Symbol<"u"&&m[Symbol.iterator]||m["@@iterator"];if(!b){if(Array.isArray(m)||(b=c(m))||v){b&&(m=b);var y=0,S=function(){};return{s:S,n:function(){return y>=m.length?{done:!0}:{done:!1,value:m[y++]}},e:function(I){throw I},f:S}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
|
|
29
29
|
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var w=!0,C=!1,k;return{s:function(){b=b.call(m)},n:function(){var I=b.next();return w=I.done,I},e:function(I){C=!0,k=I},f:function(){try{!w&&b.return!=null&&b.return()}finally{if(C)throw k}}}}function c(m,v){if(m){if(typeof m=="string")return u(m,v);var b=Object.prototype.toString.call(m).slice(8,-1);if(b==="Object"&&m.constructor&&(b=m.constructor.name),b==="Map"||b==="Set")return Array.from(m);if(b==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(b))return u(m,v)}}function u(m,v){(v==null||v>m.length)&&(v=m.length);for(var b=0,y=new Array(v);b<v;b++)y[b]=m[b];return y}var d={format:"YYYY/MM/DD",delimiters:["/","-"],strictMode:!1};function h(m){return/(^(y{4}|y{2})[.\/-](m{1,2})[.\/-](d{1,2})$)|(^(m{1,2})[.\/-](d{1,2})[.\/-]((y{4}|y{2})$))|(^(d{1,2})[.\/-](m{1,2})[.\/-]((y{4}|y{2})$))/gi.test(m)}function p(m,v){for(var b=[],y=Math.min(m.length,v.length),S=0;S<y;S++)b.push([m[S],v[S]]);return b}function g(m,v){if(typeof v=="string"?v=(0,t.default)({format:v},d):v=(0,t.default)(v,d),typeof m=="string"&&h(v.format)){var b=v.delimiters.find(function($){return v.format.indexOf($)!==-1}),y=v.strictMode?b:v.delimiters.find(function($){return m.indexOf($)!==-1}),S=p(m.split(y),v.format.toLowerCase().split(b)),w={},C=l(S),k;try{for(C.s();!(k=C.n()).done;){var A=i(k.value,2),I=A[0],D=A[1];if(I.length!==D.length)return!1;w[D.charAt(0)]=I}}catch($){C.e($)}finally{C.f()}var R=w.y;if(R.startsWith("-"))return!1;if(w.y.length===2){var T=parseInt(w.y,10);if(isNaN(T))return!1;var N=new Date().getFullYear()%100;T<N?R="20".concat(w.y):R="19".concat(w.y)}var P=w.m;w.m.length===1&&(P="0".concat(w.m));var L=w.d;return w.d.length===1&&(L="0".concat(w.d)),new Date("".concat(R,"-").concat(P,"-").concat(L,"T00:00:00.000Z")).getUTCDate()===+w.d}return v.strictMode?!1:Object.prototype.toString.call(m)==="[object Date]"&&isFinite(m)}n.exports=e.default,n.exports.default=e.default})(ba,ba.exports)),ba.exports}var xa={exports:{}},g0;function e4(){return g0||(g0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=o;var t=r(Ht());function r(a){return a&&a.__esModule?a:{default:a}}var i={hourFormat:"hour24",mode:"default"},s={hour24:{default:/^([01]?[0-9]|2[0-3]):([0-5][0-9])$/,withSeconds:/^([01]?[0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9])$/},hour12:{default:/^(0?[1-9]|1[0-2]):([0-5][0-9]) (A|P)M$/,withSeconds:/^(0?[1-9]|1[0-2]):([0-5][0-9]):([0-5][0-9]) (A|P)M$/}};function o(a,l){return l=(0,t.default)(l,i),typeof a!="string"?!1:s[l.hourFormat][l.mode].test(a)}n.exports=e.default,n.exports.default=e.default})(xa,xa.exports)),xa.exports}var ya={exports:{}},v0;function t4(){return v0||(v0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=a;var t=r(U());function r(l){return l&&l.__esModule?l:{default:l}}var i={loose:!1},s=["true","false","1","0"],o=[].concat(s,["yes","no"]);function a(l){var c=arguments.length>1&&arguments[1]!==void 0?arguments[1]:i;return(0,t.default)(l),c.loose?o.includes(l.toLowerCase()):s.includes(l)}n.exports=e.default,n.exports.default=e.default})(ya,ya.exports)),ya.exports}var wa={exports:{}},b0;function n4(){return b0||(b0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=y;var t=r(U());function r(S){return S&&S.__esModule?S:{default:S}}var i="([A-Za-z]{3}(-[A-Za-z]{3}){0,2})",s="(([a-zA-Z]{2,3}(-".concat(i,")?)|([a-zA-Z]{5,8}))"),o="([A-Za-z]{4})",a="([A-Za-z]{2}|\\d{3})",l="([A-Za-z0-9]{5,8}|(\\d[A-Z-a-z0-9]{3}))",c="(\\d|[A-W]|[Y-Z]|[a-w]|[y-z])",u="(".concat(c,"(-[A-Za-z0-9]{2,8})+)"),d="(x(-[A-Za-z0-9]{1,8})+)",h="((en-GB-oed)|(i-ami)|(i-bnn)|(i-default)|(i-enochian)|(i-hak)|(i-klingon)|(i-lux)|(i-mingo)|(i-navajo)|(i-pwn)|(i-tao)|(i-tay)|(i-tsu)|(sgn-BE-FR)|(sgn-BE-NL)|(sgn-CH-DE))",p="((art-lojban)|(cel-gaulish)|(no-bok)|(no-nyn)|(zh-guoyu)|(zh-hakka)|(zh-min)|(zh-min-nan)|(zh-xiang))",g="(".concat(h,"|").concat(p,")"),m="(-|_)",v="".concat(s,"(").concat(m).concat(o,")?(").concat(m).concat(a,")?(").concat(m).concat(l,")*(").concat(m).concat(u,")*(").concat(m).concat(d,")?"),b=new RegExp("(^".concat(d,"$)|(^").concat(g,"$)|(^").concat(v,"$)"));function y(S){return(0,t.default)(S),b.test(S)}n.exports=e.default,n.exports.default=e.default})(wa,wa.exports)),wa.exports}var Sa={exports:{}},x0;function r4(){return x0||(x0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=s;var t=r(U());function r(o){return o&&o.__esModule?o:{default:o}}var i=/^(?!(1[3-9])|(20)|(3[3-9])|(4[0-9])|(5[0-9])|(60)|(7[3-9])|(8[1-9])|(9[0-2])|(9[3-9]))[0-9]{9}$/;function s(o){if((0,t.default)(o),!i.test(o))return!1;for(var a=0,l=0;l<o.length;l++)l%3===0?a+=o[l]*3:l%3===1?a+=o[l]*7:a+=o[l]*1;return a%10===0}n.exports=e.default,n.exports.default=e.default})(Sa,Sa.exports)),Sa.exports}var ci={},y0;function i4(){if(y0)return ci;y0=1,Object.defineProperty(ci,"__esModule",{value:!0}),ci.default=r,ci.locales=void 0;var n=t(U()),e=ko();function t(i){return i&&i.__esModule?i:{default:i}}function r(i){var s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"en-US",o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};(0,n.default)(i);var a=i,l=o.ignore;if(l)if(l instanceof RegExp)a=a.replace(l,"");else if(typeof l=="string")a=a.replace(new RegExp("[".concat(l.replace(/[-[\]{}()*+?.,\\^$|#\\s]/g,"\\$&"),"]"),"g"),"");else throw new Error("ignore should be instance of a String or RegExp");if(s in e.alpha)return e.alpha[s].test(a);throw new Error("Invalid locale '".concat(s,"'"))}return ci.locales=Object.keys(e.alpha),ci}var ui={},w0;function s4(){if(w0)return ui;w0=1,Object.defineProperty(ui,"__esModule",{value:!0}),ui.default=r,ui.locales=void 0;var n=t(U()),e=ko();function t(i){return i&&i.__esModule?i:{default:i}}function r(i){var s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"en-US",o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};(0,n.default)(i);var a=i,l=o.ignore;if(l)if(l instanceof RegExp)a=a.replace(l,"");else if(typeof l=="string")a=a.replace(new RegExp("[".concat(l.replace(/[-[\]{}()*+?.,\\^$|#\\s]/g,"\\$&"),"]"),"g"),"");else throw new Error("ignore should be instance of a String or RegExp");if(s in e.alphanumeric)return e.alphanumeric[s].test(a);throw new Error("Invalid locale '".concat(s,"'"))}return ui.locales=Object.keys(e.alphanumeric),ui}var Ca={exports:{}},S0;function o4(){return S0||(S0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=o;var t=i(U()),r=ko();function i(a){return a&&a.__esModule?a:{default:a}}var s=/^[0-9]+$/;function o(a,l){return(0,t.default)(a),l&&l.no_symbols?s.test(a):new RegExp("^[+-]?([0-9]*[".concat((l||{}).locale?r.decimal[l.locale]:".","])?[0-9]+$")).test(a)}n.exports=e.default,n.exports.default=e.default})(Ca,Ca.exports)),Ca.exports}var ka={exports:{}},C0;function a4(){return C0||(C0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=s;var t=r(U());function r(o){return o&&o.__esModule?o:{default:o}}var i={AM:/^[A-Z]{2}\d{7}$/,AR:/^[A-Z]{3}\d{6}$/,AT:/^[A-Z]\d{7}$/,AU:/^[A-Z]\d{7}$/,AZ:/^[A-Z]{1}\d{8}$/,BE:/^[A-Z]{2}\d{6}$/,BG:/^\d{9}$/,BR:/^[A-Z]{2}\d{6}$/,BY:/^[A-Z]{2}\d{7}$/,CA:/^[A-Z]{2}\d{6}$/,CH:/^[A-Z]\d{7}$/,CN:/^G\d{8}$|^E(?![IO])[A-Z0-9]\d{7}$/,CY:/^[A-Z](\d{6}|\d{8})$/,CZ:/^\d{8}$/,DE:/^[CFGHJKLMNPRTVWXYZ0-9]{9}$/,DK:/^\d{9}$/,DZ:/^\d{9}$/,EE:/^([A-Z]\d{7}|[A-Z]{2}\d{7})$/,ES:/^[A-Z0-9]{2}([A-Z0-9]?)\d{6}$/,FI:/^[A-Z]{2}\d{7}$/,FR:/^\d{2}[A-Z]{2}\d{5}$/,GB:/^\d{9}$/,GR:/^[A-Z]{2}\d{7}$/,HR:/^\d{9}$/,HU:/^[A-Z]{2}(\d{6}|\d{7})$/,IE:/^[A-Z0-9]{2}\d{7}$/,IN:/^[A-Z]{1}-?\d{7}$/,ID:/^[A-C]\d{7}$/,IR:/^[A-Z]\d{8}$/,IS:/^(A)\d{7}$/,IT:/^[A-Z0-9]{2}\d{7}$/,JM:/^[Aa]\d{7}$/,JP:/^[A-Z]{2}\d{7}$/,KR:/^[MS]\d{8}$/,KZ:/^[a-zA-Z]\d{7}$/,LI:/^[a-zA-Z]\d{5}$/,LT:/^[A-Z0-9]{8}$/,LU:/^[A-Z0-9]{8}$/,LV:/^[A-Z0-9]{2}\d{7}$/,LY:/^[A-Z0-9]{8}$/,MT:/^\d{7}$/,MZ:/^([A-Z]{2}\d{7})|(\d{2}[A-Z]{2}\d{5})$/,MY:/^[AHK]\d{8}$/,MX:/^\d{10,11}$/,NL:/^[A-Z]{2}[A-Z0-9]{6}\d$/,NZ:/^([Ll]([Aa]|[Dd]|[Ff]|[Hh])|[Ee]([Aa]|[Pp])|[Nn])\d{6}$/,PH:/^([A-Z](\d{6}|\d{7}[A-Z]))|([A-Z]{2}(\d{6}|\d{7}))$/,PK:/^[A-Z]{2}\d{7}$/,PL:/^[A-Z]{2}\d{7}$/,PT:/^[A-Z]\d{6}$/,RO:/^\d{8,9}$/,RU:/^\d{9}$/,SE:/^\d{8}$/,SL:/^(P)[A-Z]\d{7}$/,SK:/^[0-9A-Z]\d{7}$/,TH:/^[A-Z]{1,2}\d{6,7}$/,TR:/^[A-Z]\d{8}$/,UA:/^[A-Z]{2}\d{6}$/,US:/^\d{9}$/,ZA:/^[TAMD]\d{8}$/};function s(o,a){(0,t.default)(o);var l=o.replace(/\s/g,"").toUpperCase();return a.toUpperCase()in i&&i[a].test(l)}n.exports=e.default,n.exports.default=e.default})(ka,ka.exports)),ka.exports}var Aa={exports:{}},Ma={exports:{}},k0;function Wh(){return k0||(k0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=o;var t=r(U());function r(a){return a&&a.__esModule?a:{default:a}}var i=/^(?:[-+]?(?:0|[1-9][0-9]*))$/,s=/^[-+]?[0-9]+$/;function o(a,l){(0,t.default)(a),l=l||{};var c=l.allow_leading_zeroes===!1?i:s,u=!l.hasOwnProperty("min")||a>=l.min,d=!l.hasOwnProperty("max")||a<=l.max,h=!l.hasOwnProperty("lt")||a<l.lt,p=!l.hasOwnProperty("gt")||a>l.gt;return c.test(a)&&u&&d&&h&&p}n.exports=e.default,n.exports.default=e.default})(Ma,Ma.exports)),Ma.exports}var A0;function l4(){return A0||(A0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=r(Wh());function r(s){return s&&s.__esModule?s:{default:s}}function i(s){return(0,t.default)(s,{allow_leading_zeroes:!1,min:0,max:65535})}n.exports=e.default,n.exports.default=e.default})(Aa,Aa.exports)),Aa.exports}var Ia={exports:{}},M0;function c4(){return M0||(M0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=r(U());function r(s){return s&&s.__esModule?s:{default:s}}function i(s){return(0,t.default)(s),s===s.toLowerCase()}n.exports=e.default,n.exports.default=e.default})(Ia,Ia.exports)),Ia.exports}var Ea={exports:{}},I0;function u4(){return I0||(I0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=r(U());function r(s){return s&&s.__esModule?s:{default:s}}function i(s){return(0,t.default)(s),s===s.toUpperCase()}n.exports=e.default,n.exports.default=e.default})(Ea,Ea.exports)),Ea.exports}var Da={exports:{}},E0;function d4(){return E0||(E0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=o;var t=r(U());function r(a){return a&&a.__esModule?a:{default:a}}var i=/^[0-9]{15}$/,s=/^\d{2}-\d{6}-\d{6}-\d{1}$/;function o(a,l){(0,t.default)(a),l=l||{};var c=i;if(l.allow_hyphens&&(c=s),!c.test(a))return!1;a=a.replace(/-/g,"");for(var u=0,d=2,h=14,p=0;p<h;p++){var g=a.substring(h-p-1,h-p),m=parseInt(g,10)*d;m>=10?u+=m%10+1:u+=m,d===1?d+=1:d-=1}var v=(10-u%10)%10;return v===parseInt(a.substring(14,15),10)}n.exports=e.default,n.exports.default=e.default})(Da,Da.exports)),Da.exports}var Ra={exports:{}},D0;function f4(){return D0||(D0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=s;var t=r(U());function r(o){return o&&o.__esModule?o:{default:o}}var i=/^[\x00-\x7F]+$/;function s(o){return(0,t.default)(o),i.test(o)}n.exports=e.default,n.exports.default=e.default})(Ra,Ra.exports)),Ra.exports}var di={},R0;function ES(){if(R0)return di;R0=1,Object.defineProperty(di,"__esModule",{value:!0}),di.default=r,di.fullWidth=void 0;var n=e(U());function e(i){return i&&i.__esModule?i:{default:i}}var t=di.fullWidth=/[^\u0020-\u007E\uFF61-\uFF9F\uFFA0-\uFFDC\uFFE8-\uFFEE0-9a-zA-Z]/;function r(i){return(0,n.default)(i),t.test(i)}return di}var fi={},O0;function DS(){if(O0)return fi;O0=1,Object.defineProperty(fi,"__esModule",{value:!0}),fi.default=r,fi.halfWidth=void 0;var n=e(U());function e(i){return i&&i.__esModule?i:{default:i}}var t=fi.halfWidth=/[\u0020-\u007E\uFF61-\uFF9F\uFFA0-\uFFDC\uFFE8-\uFFEE0-9a-zA-Z]/;function r(i){return(0,n.default)(i),t.test(i)}return fi}var Oa={exports:{}},T0;function h4(){return T0||(T0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=o;var t=s(U()),r=ES(),i=DS();function s(a){return a&&a.__esModule?a:{default:a}}function o(a){return(0,t.default)(a),r.fullWidth.test(a)&&i.halfWidth.test(a)}n.exports=e.default,n.exports.default=e.default})(Oa,Oa.exports)),Oa.exports}var Ta={exports:{}},N0;function p4(){return N0||(N0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=s;var t=r(U());function r(o){return o&&o.__esModule?o:{default:o}}var i=/[^\x00-\x7F]/;function s(o){return(0,t.default)(o),i.test(o)}n.exports=e.default,n.exports.default=e.default})(Ta,Ta.exports)),Ta.exports}var Na={exports:{}},Pa={exports:{}},P0;function m4(){return P0||(P0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=t;function t(r,i){var s=r.join("");return new RegExp(s,i)}n.exports=e.default,n.exports.default=e.default})(Pa,Pa.exports)),Pa.exports}var L0;function g4(){return L0||(L0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=o;var t=i(U()),r=i(m4());function i(a){return a&&a.__esModule?a:{default:a}}var s=(0,r.default)(["^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)","(?:-((?:0|[1-9]\\d*|\\d*[a-z-][0-9a-z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-z-][0-9a-z-]*))*))","?(?:\\+([0-9a-z-]+(?:\\.[0-9a-z-]+)*))?$"],"i");function o(a){return(0,t.default)(a),s.test(a)}n.exports=e.default,n.exports.default=e.default})(Na,Na.exports)),Na.exports}var La={exports:{}},_0;function v4(){return _0||(_0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=s;var t=r(U());function r(o){return o&&o.__esModule?o:{default:o}}var i=/[\uD800-\uDBFF][\uDC00-\uDFFF]/;function s(o){return(0,t.default)(o),i.test(o)}n.exports=e.default,n.exports.default=e.default})(La,La.exports)),La.exports}var _a={exports:{}},ja={exports:{}},j0;function b4(){return j0||(j0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0;var t=function(i,s){return i.some(function(o){return s===o})};e.default=t,n.exports=e.default,n.exports.default=e.default})(ja,ja.exports)),ja.exports}var B0;function x4(){return B0||(B0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=u;var t=o(Ht()),r=o(U()),i=o(b4()),s=ko();function o(d){return d&&d.__esModule?d:{default:d}}function a(d){var h=new RegExp("^[-+]?([0-9]+)?(\\".concat(s.decimal[d.locale],"[0-9]{").concat(d.decimal_digits,"})").concat(d.force_decimal?"":"?","$"));return h}var l={force_decimal:!1,decimal_digits:"1,",locale:"en-US"},c=["","-","+"];function u(d,h){if((0,r.default)(d),h=(0,t.default)(h,l),h.locale in s.decimal)return!(0,i.default)(c,d.replace(/ /g,""))&&a(h).test(d);throw new Error("Invalid locale '".concat(h.locale,"'"))}n.exports=e.default,n.exports.default=e.default})(_a,_a.exports)),_a.exports}var Ba={exports:{}},$0;function RS(){return $0||($0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=s;var t=r(U());function r(o){return o&&o.__esModule?o:{default:o}}var i=/^(0x|0h)?[0-9A-F]+$/i;function s(o){return(0,t.default)(o),i.test(o)}n.exports=e.default,n.exports.default=e.default})(Ba,Ba.exports)),Ba.exports}var $a={exports:{}},F0;function y4(){return F0||(F0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=s;var t=r(U());function r(o){return o&&o.__esModule?o:{default:o}}var i=/^(0o)?[0-7]+$/i;function s(o){return(0,t.default)(o),i.test(o)}n.exports=e.default,n.exports.default=e.default})($a,$a.exports)),$a.exports}var Fa={exports:{}},H0;function w4(){return H0||(H0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=s;var t=i(U()),r=i(CS());function i(o){return o&&o.__esModule?o:{default:o}}function s(o,a){return(0,t.default)(o),(0,r.default)(o)%parseInt(a,10)===0}n.exports=e.default,n.exports.default=e.default})(Fa,Fa.exports)),Fa.exports}var Ha={exports:{}},V0;function S4(){return V0||(V0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=s;var t=r(U());function r(o){return o&&o.__esModule?o:{default:o}}var i=/^#?([0-9A-F]{3}|[0-9A-F]{4}|[0-9A-F]{6}|[0-9A-F]{8})$/i;function s(o){return(0,t.default)(o),i.test(o)}n.exports=e.default,n.exports.default=e.default})(Ha,Ha.exports)),Ha.exports}var Va={exports:{}},U0;function C4(){return U0||(U0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=l;var t=r(U());function r(c){return c&&c.__esModule?c:{default:c}}var i=/^rgb\((([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5]),){2}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\)$/,s=/^rgba\((([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5]),){3}(0?\.\d|1(\.0)?|0(\.0)?)\)$/,o=/^rgb\((([0-9]%|[1-9][0-9]%|100%),){2}([0-9]%|[1-9][0-9]%|100%)\)$/,a=/^rgba\((([0-9]%|[1-9][0-9]%|100%),){3}(0?\.\d|1(\.0)?|0(\.0)?)\)$/;function l(c){var u=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return(0,t.default)(c),u?i.test(c)||s.test(c)||o.test(c)||a.test(c):i.test(c)||s.test(c)}n.exports=e.default,n.exports.default=e.default})(Va,Va.exports)),Va.exports}var Ua={exports:{}},z0;function k4(){return z0||(z0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=o;var t=r(U());function r(a){return a&&a.__esModule?a:{default:a}}var i=/^hsla?\(((\+|\-)?([0-9]+(\.[0-9]+)?(e(\+|\-)?[0-9]+)?|\.[0-9]+(e(\+|\-)?[0-9]+)?))(deg|grad|rad|turn)?(,(\+|\-)?([0-9]+(\.[0-9]+)?(e(\+|\-)?[0-9]+)?|\.[0-9]+(e(\+|\-)?[0-9]+)?)%){2}(,((\+|\-)?([0-9]+(\.[0-9]+)?(e(\+|\-)?[0-9]+)?|\.[0-9]+(e(\+|\-)?[0-9]+)?)%?))?\)$/i,s=/^hsla?\(((\+|\-)?([0-9]+(\.[0-9]+)?(e(\+|\-)?[0-9]+)?|\.[0-9]+(e(\+|\-)?[0-9]+)?))(deg|grad|rad|turn)?(\s(\+|\-)?([0-9]+(\.[0-9]+)?(e(\+|\-)?[0-9]+)?|\.[0-9]+(e(\+|\-)?[0-9]+)?)%){2}\s?(\/\s((\+|\-)?([0-9]+(\.[0-9]+)?(e(\+|\-)?[0-9]+)?|\.[0-9]+(e(\+|\-)?[0-9]+)?)%?)\s?)?\)$/i;function o(a){(0,t.default)(a);var l=a.replace(/\s+/g," ").replace(/\s?(hsla?\(|\)|,)\s?/ig,"$1");return l.indexOf(",")!==-1?i.test(l):s.test(l)}n.exports=e.default,n.exports.default=e.default})(Ua,Ua.exports)),Ua.exports}var za={exports:{}},W0;function A4(){return W0||(W0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=s;var t=r(U());function r(o){return o&&o.__esModule?o:{default:o}}var i=/^[A-Z]{2}[0-9A-Z]{3}\d{2}\d{5}$/;function s(o){return(0,t.default)(o),i.test(o)}n.exports=e.default,n.exports.default=e.default})(za,za.exports)),za.exports}var hi={},q0;function M4(){if(q0)return hi;q0=1,Object.defineProperty(hi,"__esModule",{value:!0}),hi.default=o,hi.locales=void 0;var n=e(U());function e(a){return a&&a.__esModule?a:{default:a}}var t={AD:/^(AD[0-9]{2})\d{8}[A-Z0-9]{12}$/,AE:/^(AE[0-9]{2})\d{3}\d{16}$/,AL:/^(AL[0-9]{2})\d{8}[A-Z0-9]{16}$/,AT:/^(AT[0-9]{2})\d{16}$/,AZ:/^(AZ[0-9]{2})[A-Z0-9]{4}\d{20}$/,BA:/^(BA[0-9]{2})\d{16}$/,BE:/^(BE[0-9]{2})\d{12}$/,BG:/^(BG[0-9]{2})[A-Z]{4}\d{6}[A-Z0-9]{8}$/,BH:/^(BH[0-9]{2})[A-Z]{4}[A-Z0-9]{14}$/,BR:/^(BR[0-9]{2})\d{23}[A-Z]{1}[A-Z0-9]{1}$/,BY:/^(BY[0-9]{2})[A-Z0-9]{4}\d{20}$/,CH:/^(CH[0-9]{2})\d{5}[A-Z0-9]{12}$/,CR:/^(CR[0-9]{2})\d{18}$/,CY:/^(CY[0-9]{2})\d{8}[A-Z0-9]{16}$/,CZ:/^(CZ[0-9]{2})\d{20}$/,DE:/^(DE[0-9]{2})\d{18}$/,DK:/^(DK[0-9]{2})\d{14}$/,DO:/^(DO[0-9]{2})[A-Z]{4}\d{20}$/,DZ:/^(DZ\d{24})$/,EE:/^(EE[0-9]{2})\d{16}$/,EG:/^(EG[0-9]{2})\d{25}$/,ES:/^(ES[0-9]{2})\d{20}$/,FI:/^(FI[0-9]{2})\d{14}$/,FO:/^(FO[0-9]{2})\d{14}$/,FR:/^(FR[0-9]{2})\d{10}[A-Z0-9]{11}\d{2}$/,GB:/^(GB[0-9]{2})[A-Z]{4}\d{14}$/,GE:/^(GE[0-9]{2})[A-Z0-9]{2}\d{16}$/,GI:/^(GI[0-9]{2})[A-Z]{4}[A-Z0-9]{15}$/,GL:/^(GL[0-9]{2})\d{14}$/,GR:/^(GR[0-9]{2})\d{7}[A-Z0-9]{16}$/,GT:/^(GT[0-9]{2})[A-Z0-9]{4}[A-Z0-9]{20}$/,HR:/^(HR[0-9]{2})\d{17}$/,HU:/^(HU[0-9]{2})\d{24}$/,IE:/^(IE[0-9]{2})[A-Z0-9]{4}\d{14}$/,IL:/^(IL[0-9]{2})\d{19}$/,IQ:/^(IQ[0-9]{2})[A-Z]{4}\d{15}$/,IR:/^(IR[0-9]{2})0\d{2}0\d{18}$/,IS:/^(IS[0-9]{2})\d{22}$/,IT:/^(IT[0-9]{2})[A-Z]{1}\d{10}[A-Z0-9]{12}$/,JO:/^(JO[0-9]{2})[A-Z]{4}\d{22}$/,KW:/^(KW[0-9]{2})[A-Z]{4}[A-Z0-9]{22}$/,KZ:/^(KZ[0-9]{2})\d{3}[A-Z0-9]{13}$/,LB:/^(LB[0-9]{2})\d{4}[A-Z0-9]{20}$/,LC:/^(LC[0-9]{2})[A-Z]{4}[A-Z0-9]{24}$/,LI:/^(LI[0-9]{2})\d{5}[A-Z0-9]{12}$/,LT:/^(LT[0-9]{2})\d{16}$/,LU:/^(LU[0-9]{2})\d{3}[A-Z0-9]{13}$/,LV:/^(LV[0-9]{2})[A-Z]{4}[A-Z0-9]{13}$/,MA:/^(MA[0-9]{26})$/,MC:/^(MC[0-9]{2})\d{10}[A-Z0-9]{11}\d{2}$/,MD:/^(MD[0-9]{2})[A-Z0-9]{20}$/,ME:/^(ME[0-9]{2})\d{18}$/,MK:/^(MK[0-9]{2})\d{3}[A-Z0-9]{10}\d{2}$/,MR:/^(MR[0-9]{2})\d{23}$/,MT:/^(MT[0-9]{2})[A-Z]{4}\d{5}[A-Z0-9]{18}$/,MU:/^(MU[0-9]{2})[A-Z]{4}\d{19}[A-Z]{3}$/,MZ:/^(MZ[0-9]{2})\d{21}$/,NL:/^(NL[0-9]{2})[A-Z]{4}\d{10}$/,NO:/^(NO[0-9]{2})\d{11}$/,PK:/^(PK[0-9]{2})[A-Z0-9]{4}\d{16}$/,PL:/^(PL[0-9]{2})\d{24}$/,PS:/^(PS[0-9]{2})[A-Z0-9]{4}\d{21}$/,PT:/^(PT[0-9]{2})\d{21}$/,QA:/^(QA[0-9]{2})[A-Z]{4}[A-Z0-9]{21}$/,RO:/^(RO[0-9]{2})[A-Z]{4}[A-Z0-9]{16}$/,RS:/^(RS[0-9]{2})\d{18}$/,SA:/^(SA[0-9]{2})\d{2}[A-Z0-9]{18}$/,SC:/^(SC[0-9]{2})[A-Z]{4}\d{20}[A-Z]{3}$/,SE:/^(SE[0-9]{2})\d{20}$/,SI:/^(SI[0-9]{2})\d{15}$/,SK:/^(SK[0-9]{2})\d{20}$/,SM:/^(SM[0-9]{2})[A-Z]{1}\d{10}[A-Z0-9]{12}$/,SV:/^(SV[0-9]{2})[A-Z0-9]{4}\d{20}$/,TL:/^(TL[0-9]{2})\d{19}$/,TN:/^(TN[0-9]{2})\d{20}$/,TR:/^(TR[0-9]{2})\d{5}[A-Z0-9]{17}$/,UA:/^(UA[0-9]{2})\d{6}[A-Z0-9]{19}$/,VA:/^(VA[0-9]{2})\d{18}$/,VG:/^(VG[0-9]{2})[A-Z0-9]{4}\d{16}$/,XK:/^(XK[0-9]{2})\d{16}$/};function r(a){var l=a.filter(function(c){return!(c in t)});return!(l.length>0)}function i(a,l){var c=a.replace(/[\s\-]+/gi,"").toUpperCase(),u=c.slice(0,2).toUpperCase(),d=u in t;if(l.whitelist){if(!r(l.whitelist))return!1;var h=l.whitelist.includes(u);if(!h)return!1}if(l.blacklist){var p=l.blacklist.includes(u);if(p)return!1}return d&&t[u].test(c)}function s(a){var l=a.replace(/[^A-Z0-9]+/gi,"").toUpperCase(),c=l.slice(4)+l.slice(0,4),u=c.replace(/[A-Z]/g,function(h){return h.charCodeAt(0)-55}),d=u.match(/\d{1,7}/g).reduce(function(h,p){return Number(h+p)%97},"");return d===1}function o(a){var l=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return(0,n.default)(a),i(a,l)&&s(a)}return hi.locales=Object.keys(t),hi}var Wa={exports:{}},pi={},G0;function OS(){if(G0)return pi;G0=1,Object.defineProperty(pi,"__esModule",{value:!0}),pi.CountryCodes=void 0,pi.default=r;var n=e(U());function e(i){return i&&i.__esModule?i:{default:i}}var t=new Set(["AD","AE","AF","AG","AI","AL","AM","AO","AQ","AR","AS","AT","AU","AW","AX","AZ","BA","BB","BD","BE","BF","BG","BH","BI","BJ","BL","BM","BN","BO","BQ","BR","BS","BT","BV","BW","BY","BZ","CA","CC","CD","CF","CG","CH","CI","CK","CL","CM","CN","CO","CR","CU","CV","CW","CX","CY","CZ","DE","DJ","DK","DM","DO","DZ","EC","EE","EG","EH","ER","ES","ET","FI","FJ","FK","FM","FO","FR","GA","GB","GD","GE","GF","GG","GH","GI","GL","GM","GN","GP","GQ","GR","GS","GT","GU","GW","GY","HK","HM","HN","HR","HT","HU","ID","IE","IL","IM","IN","IO","IQ","IR","IS","IT","JE","JM","JO","JP","KE","KG","KH","KI","KM","KN","KP","KR","KW","KY","KZ","LA","LB","LC","LI","LK","LR","LS","LT","LU","LV","LY","MA","MC","MD","ME","MF","MG","MH","MK","ML","MM","MN","MO","MP","MQ","MR","MS","MT","MU","MV","MW","MX","MY","MZ","NA","NC","NE","NF","NG","NI","NL","NO","NP","NR","NU","NZ","OM","PA","PE","PF","PG","PH","PK","PL","PM","PN","PR","PS","PT","PW","PY","QA","RE","RO","RS","RU","RW","SA","SB","SC","SD","SE","SG","SH","SI","SJ","SK","SL","SM","SN","SO","SR","SS","ST","SV","SX","SY","SZ","TC","TD","TF","TG","TH","TJ","TK","TL","TM","TN","TO","TR","TT","TV","TW","TZ","UA","UG","UM","US","UY","UZ","VA","VC","VE","VG","VI","VN","VU","WF","WS","YE","YT","ZA","ZM","ZW"]);function r(i){return(0,n.default)(i),t.has(i.toUpperCase())}return pi.CountryCodes=t,pi}var K0;function I4(){return K0||(K0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=o;var t=i(U()),r=OS();function i(a){return a&&a.__esModule?a:{default:a}}var s=/^[A-Za-z]{6}[A-Za-z0-9]{2}([A-Za-z0-9]{3})?$/;function o(a){(0,t.default)(a);var l=a.slice(4,6).toUpperCase();return!r.CountryCodes.has(l)&&l!=="XK"?!1:s.test(a)}n.exports=e.default,n.exports.default=e.default})(Wa,Wa.exports)),Wa.exports}var qa={exports:{}},Z0;function E4(){return Z0||(Z0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=s;var t=r(U());function r(o){return o&&o.__esModule?o:{default:o}}var i=/^[a-f0-9]{32}$/;function s(o){return(0,t.default)(o),i.test(o)}n.exports=e.default,n.exports.default=e.default})(qa,qa.exports)),qa.exports}var Ga={exports:{}},Y0;function D4(){return Y0||(Y0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=s;var t=r(U());function r(o){return o&&o.__esModule?o:{default:o}}var i={md5:32,md4:32,sha1:40,sha256:64,sha384:96,sha512:128,ripemd128:32,ripemd160:40,tiger128:32,tiger160:40,tiger192:48,crc32:8,crc32b:8};function s(o,a){(0,t.default)(o);var l=new RegExp("^[a-fA-F0-9]{".concat(i[a],"}$"));return l.test(o)}n.exports=e.default,n.exports.default=e.default})(Ga,Ga.exports)),Ga.exports}var Ka={exports:{}},Za={exports:{}},J0;function TS(){return J0||(J0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=l;var t=i(U()),r=i(Ht());function i(c){return c&&c.__esModule?c:{default:c}}var s=/[^A-Z0-9+\/=]/i,o=/^[A-Z0-9_\-]*$/i,a={urlSafe:!1};function l(c,u){(0,t.default)(c),u=(0,r.default)(u,a);var d=c.length;if(u.urlSafe)return o.test(c);if(d%4!==0||s.test(c))return!1;var h=c.indexOf("=");return h===-1||h===d-1||h===d-2&&c[d-1]==="="}n.exports=e.default,n.exports.default=e.default})(Za,Za.exports)),Za.exports}var X0;function R4(){return X0||(X0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=s;var t=i(U()),r=i(TS());function i(o){return o&&o.__esModule?o:{default:o}}function s(o){(0,t.default)(o);var a=o.split("."),l=a.length;return l!==3?!1:a.reduce(function(c,u){return c&&(0,r.default)(u,{urlSafe:!0})},!0)}n.exports=e.default,n.exports.default=e.default})(Ka,Ka.exports)),Ka.exports}var Ya={exports:{}},Q0;function O4(){return Q0||(Q0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=a;var t=i(U()),r=i(Ht());function i(l){return l&&l.__esModule?l:{default:l}}function s(l){"@babel/helpers - typeof";return s=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(c){return typeof c}:function(c){return c&&typeof Symbol=="function"&&c.constructor===Symbol&&c!==Symbol.prototype?"symbol":typeof c},s(l)}var o={allow_primitives:!1};function a(l,c){(0,t.default)(l);try{c=(0,r.default)(c,o);var u=[];c.allow_primitives&&(u=[null,!1,!0]);var d=JSON.parse(l);return u.includes(d)||!!d&&s(d)==="object"}catch{}return!1}n.exports=e.default,n.exports.default=e.default})(Ya,Ya.exports)),Ya.exports}var Ja={exports:{}},ev;function T4(){return ev||(ev=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=o;var t=i(U()),r=i(Ht());function i(a){return a&&a.__esModule?a:{default:a}}var s={ignore_whitespace:!1};function o(a,l){return(0,t.default)(a),l=(0,r.default)(l,s),(l.ignore_whitespace?a.trim().length:a.length)===0}n.exports=e.default,n.exports.default=e.default})(Ja,Ja.exports)),Ja.exports}var Xa={exports:{}},tv;function N4(){return tv||(tv=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=s;var t=r(U());function r(o){return o&&o.__esModule?o:{default:o}}function i(o){"@babel/helpers - typeof";return i=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(a){return typeof a}:function(a){return a&&typeof Symbol=="function"&&a.constructor===Symbol&&a!==Symbol.prototype?"symbol":typeof a},i(o)}function s(o,a){(0,t.default)(o);var l,c;i(a)==="object"?(l=a.min||0,c=a.max):(l=arguments[1]||0,c=arguments[2]);var u=o.match(/(\uFE0F|\uFE0E)/g)||[],d=o.match(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g)||[],h=o.length-u.length-d.length;return h>=l&&(typeof c>"u"||h<=c)}n.exports=e.default,n.exports.default=e.default})(Xa,Xa.exports)),Xa.exports}var Qa={exports:{}},nv;function P4(){return nv||(nv=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=s;var t=r(U());function r(o){return o&&o.__esModule?o:{default:o}}var i={1:/^[0-9A-F]{8}-[0-9A-F]{4}-1[0-9A-F]{3}-[0-9A-F]{4}-[0-9A-F]{12}$/i,2:/^[0-9A-F]{8}-[0-9A-F]{4}-2[0-9A-F]{3}-[0-9A-F]{4}-[0-9A-F]{12}$/i,3:/^[0-9A-F]{8}-[0-9A-F]{4}-3[0-9A-F]{3}-[0-9A-F]{4}-[0-9A-F]{12}$/i,4:/^[0-9A-F]{8}-[0-9A-F]{4}-4[0-9A-F]{3}-[89AB][0-9A-F]{3}-[0-9A-F]{12}$/i,5:/^[0-9A-F]{8}-[0-9A-F]{4}-5[0-9A-F]{3}-[89AB][0-9A-F]{3}-[0-9A-F]{12}$/i,7:/^[0-9A-F]{8}-[0-9A-F]{4}-7[0-9A-F]{3}-[89AB][0-9A-F]{3}-[0-9A-F]{12}$/i,all:/^[0-9A-F]{8}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{12}$/i};function s(o,a){(0,t.default)(o);var l=i[[void 0,null].includes(a)?"all":a];return!!l&&l.test(o)}n.exports=e.default,n.exports.default=e.default})(Qa,Qa.exports)),Qa.exports}var el={exports:{}},rv;function L4(){return rv||(rv=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=s;var t=i(U()),r=i(RS());function i(o){return o&&o.__esModule?o:{default:o}}function s(o){return(0,t.default)(o),(0,r.default)(o)&&o.length===24}n.exports=e.default,n.exports.default=e.default})(el,el.exports)),el.exports}var tl={exports:{}},iv;function _4(){return iv||(iv=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=r(Uh());function r(s){return s&&s.__esModule?s:{default:s}}function i(s,o){var a=o?.comparisonDate||o||Date().toString(),l=(0,t.default)(a),c=(0,t.default)(s);return!!(c&&l&&c>l)}n.exports=e.default,n.exports.default=e.default})(tl,tl.exports)),tl.exports}var nl={exports:{}},sv;function j4(){return sv||(sv=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=s;var t=i(U()),r=i(Uh());function i(o){return o&&o.__esModule?o:{default:o}}function s(o){var a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:String(new Date);(0,t.default)(o);var l=(0,r.default)(a),c=(0,r.default)(o);return!!(c&&l&&c<l)}n.exports=e.default,n.exports.default=e.default})(nl,nl.exports)),nl.exports}var rl={exports:{}},ov;function B4(){return ov||(ov=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=o;var t=i(U()),r=i(kS());function i(a){return a&&a.__esModule?a:{default:a}}function s(a){"@babel/helpers - typeof";return s=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(l){return typeof l}:function(l){return l&&typeof Symbol=="function"&&l.constructor===Symbol&&l!==Symbol.prototype?"symbol":typeof l},s(a)}function o(a,l){(0,t.default)(a);var c;if(Object.prototype.toString.call(l)==="[object Array]"){var u=[];for(c in l)({}).hasOwnProperty.call(l,c)&&(u[c]=(0,r.default)(l[c]));return u.indexOf(a)>=0}else{if(s(l)==="object")return l.hasOwnProperty(a);if(l&&typeof l.indexOf=="function")return l.indexOf(a)>=0}return!1}n.exports=e.default,n.exports.default=e.default})(rl,rl.exports)),rl.exports}var il={exports:{}},av;function NS(){return av||(av=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=r(U());function r(s){return s&&s.__esModule?s:{default:s}}function i(s){(0,t.default)(s);for(var o=s.replace(/[- ]+/g,""),a=0,l,c,u,d=o.length-1;d>=0;d--)l=o.substring(d,d+1),c=parseInt(l,10),u?(c*=2,c>=10?a+=c%10+1:a+=c):a+=c,u=!u;return!!(a%10===0&&o)}n.exports=e.default,n.exports.default=e.default})(il,il.exports)),il.exports}var sl={exports:{}},lv;function $4(){return lv||(lv=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=a;var t=i(U()),r=i(NS());function i(l){return l&&l.__esModule?l:{default:l}}var s={amex:/^3[47][0-9]{13}$/,dinersclub:/^3(?:0[0-5]|[68][0-9])[0-9]{11}$/,discover:/^6(?:011|5[0-9][0-9])[0-9]{12,15}$/,jcb:/^(?:2131|1800|35\d{3})\d{11}$/,mastercard:/^5[1-5][0-9]{2}|(222[1-9]|22[3-9][0-9]|2[3-6][0-9]{2}|27[01][0-9]|2720)[0-9]{12}$/,unionpay:/^(6[27][0-9]{14}|^(81[0-9]{14,17}))$/,visa:/^(?:4[0-9]{12})(?:[0-9]{3,6})?$/},o=(function(){var l=[];for(var c in s)s.hasOwnProperty(c)&&l.push(s[c]);return l})();function a(l){var c=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};(0,t.default)(l);var u=c.provider,d=l.replace(/[- ]+/g,"");if(u&&u.toLowerCase()in s){if(!s[u.toLowerCase()].test(d))return!1}else{if(u&&!(u.toLowerCase()in s))throw new Error("".concat(u," is not a valid credit card provider."));if(!o.some(function(h){return h.test(d)}))return!1}return(0,r.default)(l)}n.exports=e.default,n.exports.default=e.default})(sl,sl.exports)),sl.exports}var ol={exports:{}},cv;function F4(){return cv||(cv=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=o;var t=i(U()),r=i(Wh());function i(a){return a&&a.__esModule?a:{default:a}}var s={PL:function(l){(0,t.default)(l);var c={1:1,2:3,3:7,4:9,5:1,6:3,7:7,8:9,9:1,10:3,11:0};if(l!=null&&l.length===11&&(0,r.default)(l,{allow_leading_zeroes:!0})){var u=l.split("").slice(0,-1),d=u.reduce(function(g,m,v){return g+Number(m)*c[v+1]},0),h=d%10,p=Number(l.charAt(l.length-1));if(h===0&&p===0||p===10-h)return!0}return!1},ES:function(l){(0,t.default)(l);var c=/^[0-9X-Z][0-9]{7}[TRWAGMYFPDXBNJZSQVHLCKE]$/,u={X:0,Y:1,Z:2},d=["T","R","W","A","G","M","Y","F","P","D","X","B","N","J","Z","S","Q","V","H","L","C","K","E"],h=l.trim().toUpperCase();if(!c.test(h))return!1;var p=h.slice(0,-1).replace(/[X,Y,Z]/g,function(g){return u[g]});return h.endsWith(d[p%23])},FI:function(l){if((0,t.default)(l),l.length!==11||!l.match(/^\d{6}[\-A\+]\d{3}[0-9ABCDEFHJKLMNPRSTUVWXY]{1}$/))return!1;var c="0123456789ABCDEFHJKLMNPRSTUVWXY",u=parseInt(l.slice(0,6),10)*1e3+parseInt(l.slice(7,10),10),d=u%31,h=c[d];return h===l.slice(10,11)},IN:function(l){var c=/^[1-9]\d{3}\s?\d{4}\s?\d{4}$/,u=[[0,1,2,3,4,5,6,7,8,9],[1,2,3,4,0,6,7,8,9,5],[2,3,4,0,1,7,8,9,5,6],[3,4,0,1,2,8,9,5,6,7],[4,0,1,2,3,9,5,6,7,8],[5,9,8,7,6,0,4,3,2,1],[6,5,9,8,7,1,0,4,3,2],[7,6,5,9,8,2,1,0,4,3],[8,7,6,5,9,3,2,1,0,4],[9,8,7,6,5,4,3,2,1,0]],d=[[0,1,2,3,4,5,6,7,8,9],[1,5,7,6,2,8,3,0,9,4],[5,8,0,3,7,9,6,1,4,2],[8,9,1,6,0,4,3,5,2,7],[9,4,5,3,1,2,6,8,7,0],[4,2,8,6,5,7,3,9,0,1],[2,7,9,3,8,0,6,4,1,5],[7,0,4,6,9,1,3,2,5,8]],h=l.trim();if(!c.test(h))return!1;var p=0,g=h.replace(/\s/g,"").split("").map(Number).reverse();return g.forEach(function(m,v){p=u[p][d[v%8][m]]}),p===0},IR:function(l){if(!l.match(/^\d{10}$/)||(l="0000".concat(l).slice(l.length-6),parseInt(l.slice(3,9),10)===0))return!1;for(var c=parseInt(l.slice(9,10),10),u=0,d=0;d<9;d++)u+=parseInt(l.slice(d,d+1),10)*(10-d);return u%=11,u<2&&c===u||u>=2&&c===11-u},IT:function(l){return l.length!==9||l==="CA00000AA"?!1:l.search(/C[A-Z]\d{5}[A-Z]{2}/i)>-1},NO:function(l){var c=l.trim();if(isNaN(Number(c))||c.length!==11||c==="00000000000")return!1;var u=c.split("").map(Number),d=(11-(3*u[0]+7*u[1]+6*u[2]+1*u[3]+8*u[4]+9*u[5]+4*u[6]+5*u[7]+2*u[8])%11)%11,h=(11-(5*u[0]+4*u[1]+3*u[2]+2*u[3]+7*u[4]+6*u[5]+5*u[6]+4*u[7]+3*u[8]+2*d)%11)%11;return!(d!==u[9]||h!==u[10])},TH:function(l){if(!l.match(/^[1-8]\d{12}$/))return!1;for(var c=0,u=0;u<12;u++)c+=parseInt(l[u],10)*(13-u);return l[12]===((11-c%11)%10).toString()},LK:function(l){var c=/^[1-9]\d{8}[vx]$/i,u=/^[1-9]\d{11}$/i;return l.length===10&&c.test(l)?!0:!!(l.length===12&&u.test(l))},"he-IL":function(l){var c=/^\d{9}$/,u=l.trim();if(!c.test(u))return!1;for(var d=u,h=0,p,g=0;g<d.length;g++)p=Number(d[g])*(g%2+1),h+=p>9?p-9:p;return h%10===0},"ar-LY":function(l){var c=/^(1|2)\d{11}$/,u=l.trim();return!!c.test(u)},"ar-TN":function(l){var c=/^\d{8}$/,u=l.trim();return!!c.test(u)},"zh-CN":function(l){var c=["11","12","13","14","15","21","22","23","31","32","33","34","35","36","37","41","42","43","44","45","46","50","51","52","53","54","61","62","63","64","65","71","81","82","91"],u=["7","9","10","5","8","4","2","1","6","3","7","9","10","5","8","4","2"],d=["1","0","X","9","8","7","6","5","4","3","2"],h=function(w){return c.includes(w)},p=function(w){var C=parseInt(w.substring(0,4),10),k=parseInt(w.substring(4,6),10),A=parseInt(w.substring(6),10),I=new Date(C,k-1,A);return I>new Date?!1:I.getFullYear()===C&&I.getMonth()===k-1&&I.getDate()===A},g=function(w){for(var C=w.substring(0,17),k=0,A=0;A<17;A++)k+=parseInt(C.charAt(A),10)*parseInt(u[A],10);var I=k%11;return d[I]},m=function(w){return g(w)===w.charAt(17).toUpperCase()},v=function(w){var C=/^[1-9]\d{7}((0[1-9])|(1[0-2]))((0[1-9])|([1-2][0-9])|(3[0-1]))\d{3}$/.test(w);if(!C)return!1;var k=w.substring(0,2);if(C=h(k),!C)return!1;var A="19".concat(w.substring(6,12));return C=p(A),!!C},b=function(w){var C=/^[1-9]\d{5}[1-9]\d{3}((0[1-9])|(1[0-2]))((0[1-9])|([1-2][0-9])|(3[0-1]))\d{3}(\d|x|X)$/.test(w);if(!C)return!1;var k=w.substring(0,2);if(C=h(k),!C)return!1;var A=w.substring(6,14);return C=p(A),C?m(w):!1},y=function(w){var C=/^\d{15}|(\d{17}(\d|x|X))$/.test(w);return C?w.length===15?v(w):b(w):!1};return y(l)},"zh-HK":function(l){l=l.trim();var c=/^[A-Z]{1,2}[0-9]{6}((\([0-9A]\))|(\[[0-9A]\])|([0-9A]))$/,u=/^[0-9]$/;if(l=l.toUpperCase(),!c.test(l))return!1;l=l.replace(/\[|\]|\(|\)/g,""),l.length===8&&(l="3".concat(l));for(var d=0,h=0;h<=7;h++){var p=void 0;u.test(l[h])?p=l[h]:p=(l[h].charCodeAt(0)-55)%11,d+=p*(9-h)}d%=11;var g;return d===0?g="0":d===1?g="A":g=String(11-d),g===l[l.length-1]},"zh-TW":function(l){var c={A:10,B:11,C:12,D:13,E:14,F:15,G:16,H:17,I:34,J:18,K:19,L:20,M:21,N:22,O:35,P:23,Q:24,R:25,S:26,T:27,U:28,V:29,W:32,X:30,Y:31,Z:33},u=l.trim().toUpperCase();return/^[A-Z][0-9]{9}$/.test(u)?Array.from(u).reduce(function(d,h,p){if(p===0){var g=c[h];return g%10*9+Math.floor(g/10)}return p===9?(10-d%10-Number(h))%10===0:d+Number(h)*(9-p)},0):!1}};function o(a,l){if((0,t.default)(a),l in s)return s[l](a);if(l==="any"){for(var c in s)if(s.hasOwnProperty(c)){var u=s[c];if(u(a))return!0}return!1}throw new Error("Invalid locale '".concat(l,"'"))}n.exports=e.default,n.exports.default=e.default})(ol,ol.exports)),ol.exports}var al={exports:{}},uv;function H4(){return uv||(uv=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=c;var t=r(U());function r(u){return u&&u.__esModule?u:{default:u}}var i=8,s=14,o=/^(\d{8}|\d{13}|\d{14})$/;function a(u,d){return u===i||u===s?d%2===0?3:1:d%2===0?1:3}function l(u){var d=u.slice(0,-1).split("").map(function(p,g){return Number(p)*a(u.length,g)}).reduce(function(p,g){return p+g},0),h=10-d%10;return h<10?h:0}function c(u){(0,t.default)(u);var d=Number(u.slice(-1));return o.test(u)&&d===l(u)}n.exports=e.default,n.exports.default=e.default})(al,al.exports)),al.exports}var ll={exports:{}},dv;function V4(){return dv||(dv=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=s;var t=r(U());function r(o){return o&&o.__esModule?o:{default:o}}var i=/^[A-Z]{2}[0-9A-Z]{9}[0-9]$/;function s(o){if((0,t.default)(o),!i.test(o))return!1;for(var a=!0,l=0,c=o.length-2;c>=0;c--)if(o[c]>="A"&&o[c]<="Z")for(var u=o[c].charCodeAt(0)-55,d=u%10,h=Math.trunc(u/10),p=0,g=[d,h];p<g.length;p++){var m=g[p];a?m>=5?l+=1+(m-5)*2:l+=m*2:l+=m,a=!a}else{var v=o[c].charCodeAt(0)-48;a?v>=5?l+=1+(v-5)*2:l+=v*2:l+=v,a=!a}var b=Math.trunc((l+9)/10)*10-l;return+o[o.length-1]===b}n.exports=e.default,n.exports.default=e.default})(ll,ll.exports)),ll.exports}var cl={exports:{}},fv;function U4(){return fv||(fv=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=a;var t=r(U());function r(l){return l&&l.__esModule?l:{default:l}}var i=/^(?:[0-9]{9}X|[0-9]{10})$/,s=/^(?:[0-9]{13})$/,o=[1,3];function a(l,c){(0,t.default)(l);var u=String(c?.version||c);if(!(c!=null&&c.version||c))return a(l,{version:10})||a(l,{version:13});var d=l.replace(/[\s-]+/g,""),h=0;if(u==="10"){if(!i.test(d))return!1;for(var p=0;p<u-1;p++)h+=(p+1)*d.charAt(p);if(d.charAt(9)==="X"?h+=100:h+=10*d.charAt(9),h%11===0)return!0}else if(u==="13"){if(!s.test(d))return!1;for(var g=0;g<12;g++)h+=o[g%2]*d.charAt(g);if(d.charAt(12)-(10-h%10)%10===0)return!0}return!1}n.exports=e.default,n.exports.default=e.default})(cl,cl.exports)),cl.exports}var ul={exports:{}},hv;function z4(){return hv||(hv=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=s;var t=r(U());function r(o){return o&&o.__esModule?o:{default:o}}var i="^\\d{4}-?\\d{3}[\\dX]$";function s(o){var a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};(0,t.default)(o);var l=i;if(l=a.require_hyphen?l.replace("?",""):l,l=a.case_sensitive?new RegExp(l):new RegExp(l,"i"),!l.test(o))return!1;for(var c=o.replace("-","").toUpperCase(),u=0,d=0;d<c.length;d++){var h=c[d];u+=(h==="X"?10:+h)*(8-d)}return u%11===0}n.exports=e.default,n.exports.default=e.default})(ul,ul.exports)),ul.exports}var dl={exports:{}},Br={},pv;function PS(){if(pv)return Br;pv=1,Object.defineProperty(Br,"__esModule",{value:!0}),Br.iso7064Check=n,Br.luhnCheck=e,Br.reverseMultiplyAndSum=t,Br.verhoeffCheck=r;function n(i){for(var s=10,o=0;o<i.length-1;o++)s=(parseInt(i[o],10)+s)%10===0?20%11:(parseInt(i[o],10)+s)%10*2%11;return s=s===1?0:11-s,s===parseInt(i[10],10)}function e(i){for(var s=0,o=!1,a=i.length-1;a>=0;a--){if(o){var l=parseInt(i[a],10)*2;l>9?s+=l.toString().split("").map(function(c){return parseInt(c,10)}).reduce(function(c,u){return c+u},0):s+=l}else s+=parseInt(i[a],10);o=!o}return s%10===0}function t(i,s){for(var o=0,a=0;a<i.length;a++)o+=i[a]*(s-a);return o}function r(i){for(var s=[[0,1,2,3,4,5,6,7,8,9],[1,2,3,4,0,6,7,8,9,5],[2,3,4,0,1,7,8,9,5,6],[3,4,0,1,2,8,9,5,6,7],[4,0,1,2,3,9,5,6,7,8],[5,9,8,7,6,0,4,3,2,1],[6,5,9,8,7,1,0,4,3,2],[7,6,5,9,8,2,1,0,4,3],[8,7,6,5,9,3,2,1,0,4],[9,8,7,6,5,4,3,2,1,0]],o=[[0,1,2,3,4,5,6,7,8,9],[1,5,7,6,2,8,3,0,9,4],[5,8,0,3,7,9,6,1,4,2],[8,9,1,6,0,4,3,5,2,7],[9,4,5,3,1,2,6,8,7,0],[4,2,8,6,5,7,3,9,0,1],[2,7,9,3,8,0,6,4,1,5],[7,0,4,6,9,1,3,2,5,8]],a=i.split("").reverse().join(""),l=0,c=0;c<a.length;c++)l=s[l][o[c%8][parseInt(a[c],10)]];return l===0}return Br}var mv;function W4(){return mv||(mv=1,(function(n,e){function t(M){"@babel/helpers - typeof";return t=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(E){return typeof E}:function(E){return E&&typeof Symbol=="function"&&E.constructor===Symbol&&E!==Symbol.prototype?"symbol":typeof E},t(M)}Object.defineProperty(e,"__esModule",{value:!0}),e.default=or;var r=l(U()),i=a(PS()),s=l(IS());function o(M){if(typeof WeakMap!="function")return null;var E=new WeakMap,O=new WeakMap;return(o=function(F){return F?O:E})(M)}function a(M,E){if(M&&M.__esModule)return M;if(M===null||t(M)!="object"&&typeof M!="function")return{default:M};var O=o(E);if(O&&O.has(M))return O.get(M);var H={__proto__:null},F=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var z in M)if(z!=="default"&&{}.hasOwnProperty.call(M,z)){var ie=F?Object.getOwnPropertyDescriptor(M,z):null;ie&&(ie.get||ie.set)?Object.defineProperty(H,z,ie):H[z]=M[z]}return H.default=M,O&&O.set(M,H),H}function l(M){return M&&M.__esModule?M:{default:M}}function c(M){return p(M)||h(M)||d(M)||u()}function u(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
|
|
@@ -31,4 +31,4 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
31
31
|
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function l(m,v){var b=m==null?null:typeof Symbol<"u"&&m[Symbol.iterator]||m["@@iterator"];if(b!=null){var y,S,w,C,k=[],A=!0,I=!1;try{if(w=(b=b.call(m)).next,v!==0)for(;!(A=(y=w.call(b)).done)&&(k.push(y.value),k.length!==v);A=!0);}catch(D){I=!0,S=D}finally{try{if(!A&&b.return!=null&&(C=b.return(),Object(C)!==C))return}finally{if(I)throw S}}return k}}function c(m){if(Array.isArray(m))return m}function u(m,v){var b=typeof Symbol<"u"&&m[Symbol.iterator]||m["@@iterator"];if(!b){if(Array.isArray(m)||(b=d(m))||v){b&&(m=b);var y=0,S=function(){};return{s:S,n:function(){return y>=m.length?{done:!0}:{done:!1,value:m[y++]}},e:function(I){throw I},f:S}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
|
|
32
32
|
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var w=!0,C=!1,k;return{s:function(){b=b.call(m)},n:function(){var I=b.next();return w=I.done,I},e:function(I){C=!0,k=I},f:function(){try{!w&&b.return!=null&&b.return()}finally{if(C)throw k}}}}function d(m,v){if(m){if(typeof m=="string")return h(m,v);var b=Object.prototype.toString.call(m).slice(8,-1);if(b==="Object"&&m.constructor&&(b=m.constructor.name),b==="Map"||b==="Set")return Array.from(m);if(b==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(b))return h(m,v)}}function h(m,v){(v==null||v>m.length)&&(v=m.length);for(var b=0,y=new Array(v);b<v;b++)y[b]=m[b];return y}function p(m){var v=new Set(["subject","body","cc","bcc"]),b={cc:"",bcc:""},y=!1,S=m.split("&");if(S.length>4)return!1;var w=u(S),C;try{for(w.s();!(C=w.n()).done;){var k=C.value,A=k.split("="),I=o(A,2),D=I[0],R=I[1];if(D&&!v.has(D)){y=!0;break}R&&(D==="cc"||D==="bcc")&&(b[D]=R),D&&v.delete(D)}}catch(T){w.e(T)}finally{w.f()}return y?!1:b}function g(m,v){if((0,i.default)(m),m.indexOf("mailto:")!==0)return!1;var b=m.replace("mailto:","").split("?"),y=o(b,2),S=y[0],w=y[1],C=w===void 0?"":w;if(!S&&!C)return!0;var k=p(C);return k?"".concat(S,",").concat(k.cc,",").concat(k.bcc).split(",").every(function(A){return A=(0,t.default)(A," "),A?(0,r.default)(A,v):!0}):!1}n.exports=e.default,n.exports.default=e.default})(Cl,Cl.exports)),Cl.exports}var Il={exports:{}},Pv;function aj(){return Pv||(Pv=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=a;var t=r(U());function r(l){return l&&l.__esModule?l:{default:l}}var i=/^(application|audio|font|image|message|model|multipart|text|video)\/[a-zA-Z0-9\.\-\+_]{1,100}$/i,s=/^text\/[a-zA-Z0-9\.\-\+]{1,100};\s?charset=("[a-zA-Z0-9\.\-\+\s]{0,70}"|[a-zA-Z0-9\.\-\+]{0,70})(\s?\([a-zA-Z0-9\.\-\+\s]{1,20}\))?$/i,o=/^multipart\/[a-zA-Z0-9\.\-\+]{1,100}(;\s?(boundary|charset)=("[a-zA-Z0-9\.\-\+\s]{0,70}"|[a-zA-Z0-9\.\-\+]{0,70})(\s?\([a-zA-Z0-9\.\-\+\s]{1,20}\))?){0,2}$/i;function a(l){return(0,t.default)(l),i.test(l)||s.test(l)||o.test(l)}n.exports=e.default,n.exports.default=e.default})(Il,Il.exports)),Il.exports}var El={exports:{}},Lv;function lj(){return Lv||(Lv=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=u;var t=i(U()),r=i(Ht());function i(d){return d&&d.__esModule?d:{default:d}}var s=/^\(?[+-]?(90(\.0+)?|[1-8]?\d(\.\d+)?)$/,o=/^\s?[+-]?(180(\.0+)?|1[0-7]\d(\.\d+)?|\d{1,2}(\.\d+)?)\)?$/,a=/^(([1-8]?\d)\D+([1-5]?\d|60)\D+([1-5]?\d|60)(\.\d+)?|90\D+0\D+0)\D+[NSns]?$/i,l=/^\s*([1-7]?\d{1,2}\D+([1-5]?\d|60)\D+([1-5]?\d|60)(\.\d+)?|180\D+0\D+0)\D+[EWew]?$/i,c={checkDMS:!1};function u(d,h){if((0,t.default)(d),h=(0,r.default)(h,c),!d.includes(","))return!1;var p=d.split(",");return p[0].startsWith("(")&&!p[1].endsWith(")")||p[1].endsWith(")")&&!p[0].startsWith("(")?!1:h.checkDMS?a.test(p[0])&&l.test(p[1]):s.test(p[0])&&o.test(p[1])}n.exports=e.default,n.exports.default=e.default})(El,El.exports)),El.exports}var bi={},_v;function cj(){if(_v)return bi;_v=1,Object.defineProperty(bi,"__esModule",{value:!0}),bi.default=a,bi.locales=void 0;var n=e(U());function e(l){return l&&l.__esModule?l:{default:l}}var t=/^\d{3}$/,r=/^\d{4}$/,i=/^\d{5}$/,s=/^\d{6}$/,o={AD:/^AD\d{3}$/,AT:r,AU:r,AZ:/^AZ\d{4}$/,BA:/^([7-8]\d{4}$)/,BE:r,BG:r,BR:/^\d{5}-\d{3}$/,BY:/^2[1-4]\d{4}$/,CA:/^[ABCEGHJKLMNPRSTVXY]\d[ABCEGHJ-NPRSTV-Z][\s\-]?\d[ABCEGHJ-NPRSTV-Z]\d$/i,CH:r,CN:/^(0[1-7]|1[012356]|2[0-7]|3[0-6]|4[0-7]|5[1-7]|6[1-7]|7[1-5]|8[1345]|9[09])\d{4}$/,CZ:/^\d{3}\s?\d{2}$/,DE:i,DK:r,DO:i,DZ:i,EE:i,ES:/^(5[0-2]{1}|[0-4]{1}\d{1})\d{3}$/,FI:i,FR:/^\d{2}\s?\d{3}$/,GB:/^(gir\s?0aa|[a-z]{1,2}\d[\da-z]?\s?(\d[a-z]{2})?)$/i,GR:/^\d{3}\s?\d{2}$/,HR:/^([1-5]\d{4}$)/,HT:/^HT\d{4}$/,HU:r,ID:i,IE:/^(?!.*(?:o))[A-Za-z]\d[\dw]\s\w{4}$/i,IL:/^(\d{5}|\d{7})$/,IN:/^((?!10|29|35|54|55|65|66|86|87|88|89)[1-9][0-9]{5})$/,IR:/^(?!(\d)\1{3})[13-9]{4}[1346-9][013-9]{5}$/,IS:t,IT:i,JP:/^\d{3}\-\d{4}$/,KE:i,KR:/^(\d{5}|\d{6})$/,LI:/^(948[5-9]|949[0-7])$/,LT:/^LT\-\d{5}$/,LU:r,LV:/^LV\-\d{4}$/,LK:i,MG:t,MX:i,MT:/^[A-Za-z]{3}\s{0,1}\d{4}$/,MY:i,NL:/^[1-9]\d{3}\s?(?!sa|sd|ss)[a-z]{2}$/i,NO:r,NP:/^(10|21|22|32|33|34|44|45|56|57)\d{3}$|^(977)$/i,NZ:r,PL:/^\d{2}\-\d{3}$/,PR:/^00[679]\d{2}([ -]\d{4})?$/,PT:/^\d{4}\-\d{3}?$/,RO:s,RU:s,SA:i,SE:/^[1-9]\d{2}\s?\d{2}$/,SG:s,SI:r,SK:/^\d{3}\s?\d{2}$/,TH:i,TN:r,TW:/^\d{3}(\d{2})?$/,UA:i,US:/^\d{5}(-\d{4})?$/,ZA:r,ZM:i};bi.locales=Object.keys(o);function a(l,c){if((0,n.default)(l),c in o)return o[c].test(l);if(c==="any"){for(var u in o)if(o.hasOwnProperty(u)){var d=o[u];if(d.test(l))return!0}return!1}throw new Error("Invalid locale '".concat(c,"'"))}return bi}var Dl={exports:{}},jv;function uj(){return jv||(jv=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=r(U());function r(s){return s&&s.__esModule?s:{default:s}}function i(s){return(0,t.default)(s),s.replace(/&/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(/</g,"<").replace(/>/g,">").replace(/\//g,"/").replace(/\\/g,"\").replace(/`/g,"`")}n.exports=e.default,n.exports.default=e.default})(Dl,Dl.exports)),Dl.exports}var Rl={exports:{}},Bv;function dj(){return Bv||(Bv=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=r(U());function r(s){return s&&s.__esModule?s:{default:s}}function i(s){return(0,t.default)(s),s.replace(/"/g,'"').replace(/'/g,"'").replace(/</g,"<").replace(/>/g,">").replace(///g,"/").replace(/\/g,"\\").replace(/`/g,"`").replace(/&/g,"&")}n.exports=e.default,n.exports.default=e.default})(Rl,Rl.exports)),Rl.exports}var Ol={exports:{}},Tl={exports:{}},$v;function BS(){return $v||($v=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=r(U());function r(s){return s&&s.__esModule?s:{default:s}}function i(s,o){return(0,t.default)(s),s.replace(new RegExp("[".concat(o,"]+"),"g"),"")}n.exports=e.default,n.exports.default=e.default})(Tl,Tl.exports)),Tl.exports}var Fv;function fj(){return Fv||(Fv=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=s;var t=i(U()),r=i(BS());function i(o){return o&&o.__esModule?o:{default:o}}function s(o,a){(0,t.default)(o);var l=a?"\\x00-\\x09\\x0B\\x0C\\x0E-\\x1F\\x7F":"\\x00-\\x1F\\x7F";return(0,r.default)(o,l)}n.exports=e.default,n.exports.default=e.default})(Ol,Ol.exports)),Ol.exports}var Nl={exports:{}},Hv;function hj(){return Hv||(Hv=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=r(U());function r(s){return s&&s.__esModule?s:{default:s}}function i(s,o){return(0,t.default)(s),s.replace(new RegExp("[^".concat(o,"]+"),"g"),"")}n.exports=e.default,n.exports.default=e.default})(Nl,Nl.exports)),Nl.exports}var Pl={exports:{}},Vv;function pj(){return Vv||(Vv=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=r(U());function r(s){return s&&s.__esModule?s:{default:s}}function i(s,o){(0,t.default)(s);for(var a=s.length-1;a>=0;a--)if(o.indexOf(s[a])===-1)return!1;return!0}n.exports=e.default,n.exports.default=e.default})(Pl,Pl.exports)),Pl.exports}var Ll={exports:{}},Uv;function mj(){return Uv||(Uv=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=u;var t=r(Ht());function r(d){return d&&d.__esModule?d:{default:d}}var i={all_lowercase:!0,gmail_lowercase:!0,gmail_remove_dots:!0,gmail_remove_subaddress:!0,gmail_convert_googlemaildotcom:!0,outlookdotcom_lowercase:!0,outlookdotcom_remove_subaddress:!0,yahoo_lowercase:!0,yahoo_remove_subaddress:!0,yandex_lowercase:!0,icloud_lowercase:!0,icloud_remove_subaddress:!0},s=["icloud.com","me.com"],o=["hotmail.at","hotmail.be","hotmail.ca","hotmail.cl","hotmail.co.il","hotmail.co.nz","hotmail.co.th","hotmail.co.uk","hotmail.com","hotmail.com.ar","hotmail.com.au","hotmail.com.br","hotmail.com.gr","hotmail.com.mx","hotmail.com.pe","hotmail.com.tr","hotmail.com.vn","hotmail.cz","hotmail.de","hotmail.dk","hotmail.es","hotmail.fr","hotmail.hu","hotmail.id","hotmail.ie","hotmail.in","hotmail.it","hotmail.jp","hotmail.kr","hotmail.lv","hotmail.my","hotmail.ph","hotmail.pt","hotmail.sa","hotmail.sg","hotmail.sk","live.be","live.co.uk","live.com","live.com.ar","live.com.mx","live.de","live.es","live.eu","live.fr","live.it","live.nl","msn.com","outlook.at","outlook.be","outlook.cl","outlook.co.il","outlook.co.nz","outlook.co.th","outlook.com","outlook.com.ar","outlook.com.au","outlook.com.br","outlook.com.gr","outlook.com.pe","outlook.com.tr","outlook.com.vn","outlook.cz","outlook.de","outlook.dk","outlook.es","outlook.fr","outlook.hu","outlook.id","outlook.ie","outlook.in","outlook.it","outlook.jp","outlook.kr","outlook.lv","outlook.my","outlook.ph","outlook.pt","outlook.sa","outlook.sg","outlook.sk","passport.com"],a=["rocketmail.com","yahoo.ca","yahoo.co.uk","yahoo.com","yahoo.de","yahoo.fr","yahoo.in","yahoo.it","ymail.com"],l=["yandex.ru","yandex.ua","yandex.kz","yandex.com","yandex.by","ya.ru"];function c(d){return d.length>1?d:""}function u(d,h){h=(0,t.default)(h,i);var p=d.split("@"),g=p.pop(),m=p.join("@"),v=[m,g];if(v[1]=v[1].toLowerCase(),v[1]==="gmail.com"||v[1]==="googlemail.com"){if(h.gmail_remove_subaddress&&(v[0]=v[0].split("+")[0]),h.gmail_remove_dots&&(v[0]=v[0].replace(/\.+/g,c)),!v[0].length)return!1;(h.all_lowercase||h.gmail_lowercase)&&(v[0]=v[0].toLowerCase()),v[1]=h.gmail_convert_googlemaildotcom?"gmail.com":v[1]}else if(s.indexOf(v[1])>=0){if(h.icloud_remove_subaddress&&(v[0]=v[0].split("+")[0]),!v[0].length)return!1;(h.all_lowercase||h.icloud_lowercase)&&(v[0]=v[0].toLowerCase())}else if(o.indexOf(v[1])>=0){if(h.outlookdotcom_remove_subaddress&&(v[0]=v[0].split("+")[0]),!v[0].length)return!1;(h.all_lowercase||h.outlookdotcom_lowercase)&&(v[0]=v[0].toLowerCase())}else if(a.indexOf(v[1])>=0){if(h.yahoo_remove_subaddress){var b=v[0].split("-");v[0]=b.length>1?b.slice(0,-1).join("-"):b[0]}if(!v[0].length)return!1;(h.all_lowercase||h.yahoo_lowercase)&&(v[0]=v[0].toLowerCase())}else l.indexOf(v[1])>=0?((h.all_lowercase||h.yandex_lowercase)&&(v[0]=v[0].toLowerCase()),v[1]="yandex.ru"):h.all_lowercase&&(v[0]=v[0].toLowerCase());return v.join("@")}n.exports=e.default,n.exports.default=e.default})(Ll,Ll.exports)),Ll.exports}var _l={exports:{}},zv;function gj(){return zv||(zv=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=s;var t=r(U());function r(o){return o&&o.__esModule?o:{default:o}}var i=/^[^\s-_](?!.*?[-_]{2,})[a-z0-9-\\][^\s]*[^-_\s]$/;function s(o){return(0,t.default)(o),i.test(o)}n.exports=e.default,n.exports.default=e.default})(_l,_l.exports)),_l.exports}var jl={exports:{}},Wv;function vj(){return Wv||(Wv=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=s;var t=r(U());function r(o){return o&&o.__esModule?o:{default:o}}var i={"cs-CZ":function(a){return/^(([ABCDEFHIJKLMNPRSTUVXYZ]|[0-9])-?){5,8}$/.test(a)},"de-DE":function(a){return/^((A|AA|AB|AC|AE|AH|AK|AM|AN|AÖ|AP|AS|AT|AU|AW|AZ|B|BA|BB|BC|BE|BF|BH|BI|BK|BL|BM|BN|BO|BÖ|BS|BT|BZ|C|CA|CB|CE|CO|CR|CW|D|DA|DD|DE|DH|DI|DL|DM|DN|DO|DU|DW|DZ|E|EA|EB|ED|EE|EF|EG|EH|EI|EL|EM|EN|ER|ES|EU|EW|F|FB|FD|FF|FG|FI|FL|FN|FO|FR|FS|FT|FÜ|FW|FZ|G|GA|GC|GD|GE|GF|GG|GI|GK|GL|GM|GN|GÖ|GP|GR|GS|GT|GÜ|GV|GW|GZ|H|HA|HB|HC|HD|HE|HF|HG|HH|HI|HK|HL|HM|HN|HO|HP|HR|HS|HU|HV|HX|HY|HZ|IK|IL|IN|IZ|J|JE|JL|K|KA|KB|KC|KE|KF|KG|KH|KI|KK|KL|KM|KN|KO|KR|KS|KT|KU|KW|KY|L|LA|LB|LC|LD|LF|LG|LH|LI|LL|LM|LN|LÖ|LP|LR|LU|M|MA|MB|MC|MD|ME|MG|MH|MI|MK|ML|MM|MN|MO|MQ|MR|MS|MÜ|MW|MY|MZ|N|NB|ND|NE|NF|NH|NI|NK|NM|NÖ|NP|NR|NT|NU|NW|NY|NZ|OA|OB|OC|OD|OE|OF|OG|OH|OK|OL|OP|OS|OZ|P|PA|PB|PE|PF|PI|PL|PM|PN|PR|PS|PW|PZ|R|RA|RC|RD|RE|RG|RH|RI|RL|RM|RN|RO|RP|RS|RT|RU|RV|RW|RZ|S|SB|SC|SE|SG|SI|SK|SL|SM|SN|SO|SP|SR|ST|SU|SW|SY|SZ|TE|TF|TG|TO|TP|TR|TS|TT|TÜ|ÜB|UE|UH|UL|UM|UN|V|VB|VG|VK|VR|VS|W|WA|WB|WE|WF|WI|WK|WL|WM|WN|WO|WR|WS|WT|WÜ|WW|WZ|Z|ZE|ZI|ZP|ZR|ZW|ZZ)[- ]?[A-Z]{1,2}[- ]?\d{1,4}|(ABG|ABI|AIB|AIC|ALF|ALZ|ANA|ANG|ANK|APD|ARN|ART|ASL|ASZ|AUR|AZE|BAD|BAR|BBG|BCH|BED|BER|BGD|BGL|BID|BIN|BIR|BIT|BIW|BKS|BLB|BLK|BNA|BOG|BOH|BOR|BOT|BRA|BRB|BRG|BRK|BRL|BRV|BSB|BSK|BTF|BÜD|BUL|BÜR|BÜS|BÜZ|CAS|CHA|CLP|CLZ|COC|COE|CUX|DAH|DAN|DAU|DBR|DEG|DEL|DGF|DIL|DIN|DIZ|DKB|DLG|DON|DUD|DÜW|EBE|EBN|EBS|ECK|EIC|EIL|EIN|EIS|EMD|EMS|ERB|ERH|ERK|ERZ|ESB|ESW|FDB|FDS|FEU|FFB|FKB|FLÖ|FOR|FRG|FRI|FRW|FTL|FÜS|GAN|GAP|GDB|GEL|GEO|GER|GHA|GHC|GLA|GMN|GNT|GOA|GOH|GRA|GRH|GRI|GRM|GRZ|GTH|GUB|GUN|GVM|HAB|HAL|HAM|HAS|HBN|HBS|HCH|HDH|HDL|HEB|HEF|HEI|HER|HET|HGN|HGW|HHM|HIG|HIP|HMÜ|HOG|HOH|HOL|HOM|HOR|HÖS|HOT|HRO|HSK|HST|HVL|HWI|IGB|ILL|JÜL|KEH|KEL|KEM|KIB|KLE|KLZ|KÖN|KÖT|KÖZ|KRU|KÜN|KUS|KYF|LAN|LAU|LBS|LBZ|LDK|LDS|LEO|LER|LEV|LIB|LIF|LIP|LÖB|LOS|LRO|LSZ|LÜN|LUP|LWL|MAB|MAI|MAK|MAL|MED|MEG|MEI|MEK|MEL|MER|MET|MGH|MGN|MHL|MIL|MKK|MOD|MOL|MON|MOS|MSE|MSH|MSP|MST|MTK|MTL|MÜB|MÜR|MYK|MZG|NAB|NAI|NAU|NDH|NEA|NEB|NEC|NEN|NES|NEW|NMB|NMS|NOH|NOL|NOM|NOR|NVP|NWM|OAL|OBB|OBG|OCH|OHA|ÖHR|OHV|OHZ|OPR|OSL|OVI|OVL|OVP|PAF|PAN|PAR|PCH|PEG|PIR|PLÖ|PRÜ|QFT|QLB|RDG|REG|REH|REI|RID|RIE|ROD|ROF|ROK|ROL|ROS|ROT|ROW|RSL|RÜD|RÜG|SAB|SAD|SAN|SAW|SBG|SBK|SCZ|SDH|SDL|SDT|SEB|SEE|SEF|SEL|SFB|SFT|SGH|SHA|SHG|SHK|SHL|SIG|SIM|SLE|SLF|SLK|SLN|SLS|SLÜ|SLZ|SMÜ|SOB|SOG|SOK|SÖM|SON|SPB|SPN|SRB|SRO|STA|STB|STD|STE|STL|SUL|SÜW|SWA|SZB|TBB|TDO|TET|TIR|TÖL|TUT|UEM|UER|UFF|USI|VAI|VEC|VER|VIB|VIE|VIT|VOH|WAF|WAK|WAN|WAR|WAT|WBS|WDA|WEL|WEN|WER|WES|WHV|WIL|WIS|WIT|WIZ|WLG|WMS|WND|WOB|WOH|WOL|WOR|WOS|WRN|WSF|WST|WSW|WTL|WTM|WUG|WÜM|WUN|WUR|WZL|ZEL|ZIG)[- ]?(([A-Z][- ]?\d{1,4})|([A-Z]{2}[- ]?\d{1,3})))[- ]?(E|H)?$/.test(a)},"de-LI":function(a){return/^FL[- ]?\d{1,5}[UZ]?$/.test(a)},"en-IN":function(a){return/^[A-Z]{2}[ -]?[0-9]{1,2}(?:[ -]?[A-Z])(?:[ -]?[A-Z]*)?[ -]?[0-9]{4}$/.test(a)},"es-AR":function(a){return/^(([A-Z]{2} ?[0-9]{3} ?[A-Z]{2})|([A-Z]{3} ?[0-9]{3}))$/.test(a)},"fi-FI":function(a){return/^(?=.{4,7})(([A-Z]{1,3}|[0-9]{1,3})[\s-]?([A-Z]{1,3}|[0-9]{1,5}))$/.test(a)},"hu-HU":function(a){return/^((((?!AAA)(([A-NPRSTVZWXY]{1})([A-PR-Z]{1})([A-HJ-NPR-Z]))|(A[ABC]I)|A[ABC]O|A[A-W]Q|BPI|BPO|UCO|UDO|XAO)-(?!000)\d{3})|(M\d{6})|((CK|DT|CD|HC|H[ABEFIKLMNPRSTVX]|MA|OT|R[A-Z]) \d{2}-\d{2})|(CD \d{3}-\d{3})|(C-(C|X) \d{4})|(X-(A|B|C) \d{4})|(([EPVZ]-\d{5}))|(S A[A-Z]{2} \d{2})|(SP \d{2}-\d{2}))$/.test(a)},"pt-BR":function(a){return/^[A-Z]{3}[ -]?[0-9][A-Z][0-9]{2}|[A-Z]{3}[ -]?[0-9]{4}$/.test(a)},"pt-PT":function(a){return/^([A-Z]{2}|[0-9]{2})[ -·]?([A-Z]{2}|[0-9]{2})[ -·]?([A-Z]{2}|[0-9]{2})$/.test(a)},"sq-AL":function(a){return/^[A-Z]{2}[- ]?((\d{3}[- ]?(([A-Z]{2})|T))|(R[- ]?\d{3}))$/.test(a)},"sv-SE":function(a){return/^[A-HJ-PR-UW-Z]{3} ?[\d]{2}[A-HJ-PR-UW-Z1-9]$|(^[A-ZÅÄÖ ]{2,7}$)/.test(a.trim())},"en-PK":function(a){return/(^[A-Z]{2}((\s|-){0,1})[0-9]{3,4}((\s|-)[0-9]{2}){0,1}$)|(^[A-Z]{3}((\s|-){0,1})[0-9]{3,4}((\s|-)[0-9]{2}){0,1}$)|(^[A-Z]{4}((\s|-){0,1})[0-9]{3,4}((\s|-)[0-9]{2}){0,1}$)|(^[A-Z]((\s|-){0,1})[0-9]{4}((\s|-)[0-9]{2}){0,1}$)/.test(a.trim())}};function s(o,a){if((0,t.default)(o),a in i)return i[a](o);if(a==="any"){for(var l in i){var c=i[l];if(c(o))return!0}return!1}throw new Error("Invalid locale '".concat(a,"'"))}n.exports=e.default,n.exports.default=e.default})(jl,jl.exports)),jl.exports}var Bl={exports:{}},qv;function bj(){return qv||(qv=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=p;var t=i(Ht()),r=i(U());function i(g){return g&&g.__esModule?g:{default:g}}var s=/^[A-Z]$/,o=/^[a-z]$/,a=/^[0-9]$/,l=/^[-#!$@£%^&*()_+|~=`{}\[\]:";'<>?,.\/\\ ]$/,c={minLength:8,minLowercase:1,minUppercase:1,minNumbers:1,minSymbols:1,returnScore:!1,pointsPerUnique:1,pointsPerRepeat:.5,pointsForContainingLower:10,pointsForContainingUpper:10,pointsForContainingNumber:10,pointsForContainingSymbol:10};function u(g){var m={};return Array.from(g).forEach(function(v){var b=m[v];b?m[v]+=1:m[v]=1}),m}function d(g){var m=u(g),v={length:g.length,uniqueChars:Object.keys(m).length,uppercaseCount:0,lowercaseCount:0,numberCount:0,symbolCount:0};return Object.keys(m).forEach(function(b){s.test(b)?v.uppercaseCount+=m[b]:o.test(b)?v.lowercaseCount+=m[b]:a.test(b)?v.numberCount+=m[b]:l.test(b)&&(v.symbolCount+=m[b])}),v}function h(g,m){var v=0;return v+=g.uniqueChars*m.pointsPerUnique,v+=(g.length-g.uniqueChars)*m.pointsPerRepeat,g.lowercaseCount>0&&(v+=m.pointsForContainingLower),g.uppercaseCount>0&&(v+=m.pointsForContainingUpper),g.numberCount>0&&(v+=m.pointsForContainingNumber),g.symbolCount>0&&(v+=m.pointsForContainingSymbol),v}function p(g){var m=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;(0,r.default)(g);var v=d(g);return m=(0,t.default)(m||{},c),m.returnScore?h(v,m):v.length>=m.minLength&&v.lowercaseCount>=m.minLowercase&&v.uppercaseCount>=m.minUppercase&&v.numberCount>=m.minNumbers&&v.symbolCount>=m.minSymbols}n.exports=e.default,n.exports.default=e.default})(Bl,Bl.exports)),Bl.exports}var xi={},Gv;function xj(){if(Gv)return xi;Gv=1;function n(d){"@babel/helpers - typeof";return n=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(h){return typeof h}:function(h){return h&&typeof Symbol=="function"&&h.constructor===Symbol&&h!==Symbol.prototype?"symbol":typeof h},n(d)}Object.defineProperty(xi,"__esModule",{value:!0}),xi.default=u,xi.vatMatchers=void 0;var e=s(U()),t=i(PS());function r(d){if(typeof WeakMap!="function")return null;var h=new WeakMap,p=new WeakMap;return(r=function(m){return m?p:h})(d)}function i(d,h){if(d&&d.__esModule)return d;if(d===null||n(d)!="object"&&typeof d!="function")return{default:d};var p=r(h);if(p&&p.has(d))return p.get(d);var g={__proto__:null},m=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var v in d)if(v!=="default"&&{}.hasOwnProperty.call(d,v)){var b=m?Object.getOwnPropertyDescriptor(d,v):null;b&&(b.get||b.set)?Object.defineProperty(g,v,b):g[v]=d[v]}return g.default=d,p&&p.set(d,g),g}function s(d){return d&&d.__esModule?d:{default:d}}var o=function(h){var p=h.match(/^(AU)?(\d{11})$/);if(!p)return!1;var g=[10,1,3,5,7,9,11,13,15,17,19];h=h.replace(/^AU/,"");for(var m=(parseInt(h.slice(0,1),10)-1).toString()+h.slice(1),v=0,b=0;b<11;b++)v+=g[b]*m.charAt(b);return v!==0&&v%89===0},a=function(h){var p=function(m){var v=m.pop(),b=[5,4,3,2,7,6,5,4],y=(11-m.reduce(function(S,w,C){return S+w*b[C]},0)%11)%11;return v===y};return/^(CHE[- ]?)?(\d{9}|(\d{3}\.\d{3}\.\d{3})|(\d{3} \d{3} \d{3})) ?(TVA|MWST|IVA)?$/.test(h)&&p(h.match(/\d/g).map(function(g){return+g}))},l=function(h){var p=h.match(/^(PT)?(\d{9})$/);if(!p)return!1;var g=p[2],m=11-t.reverseMultiplyAndSum(g.split("").slice(0,8).map(function(v){return parseInt(v,10)}),9)%11;return m>9?parseInt(g[8],10)===0:m===parseInt(g[8],10)},c=xi.vatMatchers={AT:function(h){return/^(AT)?U\d{8}$/.test(h)},BE:function(h){return/^(BE)?\d{10}$/.test(h)},BG:function(h){return/^(BG)?\d{9,10}$/.test(h)},HR:function(h){return/^(HR)?\d{11}$/.test(h)},CY:function(h){return/^(CY)?\w{9}$/.test(h)},CZ:function(h){return/^(CZ)?\d{8,10}$/.test(h)},DK:function(h){return/^(DK)?\d{8}$/.test(h)},EE:function(h){return/^(EE)?\d{9}$/.test(h)},FI:function(h){return/^(FI)?\d{8}$/.test(h)},FR:function(h){return/^(FR)?\w{2}\d{9}$/.test(h)},DE:function(h){return/^(DE)?\d{9}$/.test(h)},EL:function(h){return/^(EL)?\d{9}$/.test(h)},HU:function(h){return/^(HU)?\d{8}$/.test(h)},IE:function(h){return/^(IE)?\d{7}\w{1}(W)?$/.test(h)},IT:function(h){return/^(IT)?\d{11}$/.test(h)},LV:function(h){return/^(LV)?\d{11}$/.test(h)},LT:function(h){return/^(LT)?\d{9,12}$/.test(h)},LU:function(h){return/^(LU)?\d{8}$/.test(h)},MT:function(h){return/^(MT)?\d{8}$/.test(h)},NL:function(h){return/^(NL)?\d{9}B\d{2}$/.test(h)},PL:function(h){return/^(PL)?(\d{10}|(\d{3}-\d{3}-\d{2}-\d{2})|(\d{3}-\d{2}-\d{2}-\d{3}))$/.test(h)},PT:l,RO:function(h){return/^(RO)?\d{2,10}$/.test(h)},SK:function(h){return/^(SK)?\d{10}$/.test(h)},SI:function(h){return/^(SI)?\d{8}$/.test(h)},ES:function(h){return/^(ES)?\w\d{7}[A-Z]$/.test(h)},SE:function(h){return/^(SE)?\d{12}$/.test(h)},AL:function(h){return/^(AL)?\w{9}[A-Z]$/.test(h)},MK:function(h){return/^(MK)?\d{13}$/.test(h)},AU:o,BY:function(h){return/^(УНП )?\d{9}$/.test(h)},CA:function(h){return/^(CA)?\d{9}$/.test(h)},IS:function(h){return/^(IS)?\d{5,6}$/.test(h)},IN:function(h){return/^(IN)?\d{15}$/.test(h)},ID:function(h){return/^(ID)?(\d{15}|(\d{2}.\d{3}.\d{3}.\d{1}-\d{3}.\d{3}))$/.test(h)},IL:function(h){return/^(IL)?\d{9}$/.test(h)},KZ:function(h){return/^(KZ)?\d{12}$/.test(h)},NZ:function(h){return/^(NZ)?\d{9}$/.test(h)},NG:function(h){return/^(NG)?(\d{12}|(\d{8}-\d{4}))$/.test(h)},NO:function(h){return/^(NO)?\d{9}MVA$/.test(h)},PH:function(h){return/^(PH)?(\d{12}|\d{3} \d{3} \d{3} \d{3})$/.test(h)},RU:function(h){return/^(RU)?(\d{10}|\d{12})$/.test(h)},SM:function(h){return/^(SM)?\d{5}$/.test(h)},SA:function(h){return/^(SA)?\d{15}$/.test(h)},RS:function(h){return/^(RS)?\d{9}$/.test(h)},CH:a,TR:function(h){return/^(TR)?\d{10}$/.test(h)},UA:function(h){return/^(UA)?\d{12}$/.test(h)},GB:function(h){return/^GB((\d{3} \d{4} ([0-8][0-9]|9[0-6]))|(\d{9} \d{3})|(((GD[0-4])|(HA[5-9]))[0-9]{2}))$/.test(h)},UZ:function(h){return/^(UZ)?\d{9}$/.test(h)},AR:function(h){return/^(AR)?\d{11}$/.test(h)},BO:function(h){return/^(BO)?\d{7}$/.test(h)},BR:function(h){return/^(BR)?((\d{2}.\d{3}.\d{3}\/\d{4}-\d{2})|(\d{3}.\d{3}.\d{3}-\d{2}))$/.test(h)},CL:function(h){return/^(CL)?\d{8}-\d{1}$/.test(h)},CO:function(h){return/^(CO)?\d{10}$/.test(h)},CR:function(h){return/^(CR)?\d{9,12}$/.test(h)},EC:function(h){return/^(EC)?\d{13}$/.test(h)},SV:function(h){return/^(SV)?\d{4}-\d{6}-\d{3}-\d{1}$/.test(h)},GT:function(h){return/^(GT)?\d{7}-\d{1}$/.test(h)},HN:function(h){return/^(HN)?$/.test(h)},MX:function(h){return/^(MX)?\w{3,4}\d{6}\w{3}$/.test(h)},NI:function(h){return/^(NI)?\d{3}-\d{6}-\d{4}\w{1}$/.test(h)},PA:function(h){return/^(PA)?$/.test(h)},PY:function(h){return/^(PY)?\d{6,8}-\d{1}$/.test(h)},PE:function(h){return/^(PE)?\d{11}$/.test(h)},DO:function(h){return/^(DO)?(\d{11}|(\d{3}-\d{7}-\d{1})|[1,4,5]{1}\d{8}|([1,4,5]{1})-\d{2}-\d{5}-\d{1})$/.test(h)},UY:function(h){return/^(UY)?\d{12}$/.test(h)},VE:function(h){return/^(VE)?[J,G,V,E]{1}-(\d{9}|(\d{8}-\d{1}))$/.test(h)}};function u(d,h){if((0,e.default)(d),(0,e.default)(h),h in c)return c[h](d);throw new Error("Invalid country code: '".concat(h,"'"))}return xi}var Kv;function yj(){return Kv||(Kv=1,(function(n,e){function t(Ue){"@babel/helpers - typeof";return t=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(Rn){return typeof Rn}:function(Rn){return Rn&&typeof Symbol=="function"&&Rn.constructor===Symbol&&Rn!==Symbol.prototype?"symbol":typeof Rn},t(Ue)}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0;var r=V(Uh()),i=V(CS()),s=V(q5()),o=V(G5()),a=V(K5()),l=V(Z5()),c=V(Y5()),u=V(MS()),d=V(J5()),h=V(X5()),p=V(Iu()),g=V(Q5()),m=V(zh()),v=V(IS()),b=V(e4()),y=V(t4()),S=V(n4()),w=V(r4()),C=ni(i4()),k=ni(s4()),A=V(o4()),I=V(a4()),D=V(l4()),R=V(c4()),T=V(u4()),N=V(d4()),P=V(f4()),L=V(ES()),$=V(DS()),q=V(h4()),Z=V(p4()),ae=V(g4()),ee=V(v4()),de=V(Wh()),ge=ni(SS()),K=V(x4()),fe=V(RS()),re=V(y4()),ue=V(w4()),Q=V(S4()),ce=V(C4()),Ae=V(k4()),Be=V(A4()),he=ni(M4()),Je=V(I4()),Me=V(E4()),Ie=V(D4()),_e=V(R4()),xt=V(O4()),Tt=V(T4()),or=V(N4()),M=V(AS()),E=V(P4()),O=V(L4()),H=V(_4()),F=V(j4()),z=V(B4()),ie=V(NS()),me=V($4()),we=V(F4()),Ee=V(H4()),Vt=V(V4()),Nt=V(U4()),Qt=V(z4()),Ut=V(W4()),ar=ni(q4()),Jn=V(G4()),lr=V(K4()),cr=V(Z4()),as=Y4(),Eu=V(J4()),Mo=V(X4()),Du=V(Q4()),Ru=V(OS()),Ou=V(ej()),ht=V(tj()),Pt=V(nj()),Lt=V(rj()),En=V(TS()),zt=V(ij()),_t=V(sj()),ln=V(oj()),ur=V(aj()),st=V(lj()),vn=ni(cj()),cn=V(_S()),bn=V(LS()),Nr=V(jS()),Pr=V(uj()),Dn=V(dj()),Lr=V(fj()),ls=V(hj()),JS=V(BS()),XS=V(pj()),QS=V(mj()),e2=V(gj()),t2=V(vj()),n2=V(bj()),r2=V(xj());function Yh(Ue){if(typeof WeakMap!="function")return null;var Rn=new WeakMap,_r=new WeakMap;return(Yh=function(Tu){return Tu?_r:Rn})(Ue)}function ni(Ue,Rn){if(Ue&&Ue.__esModule)return Ue;if(Ue===null||t(Ue)!="object"&&typeof Ue!="function")return{default:Ue};var _r=Yh(Rn);if(_r&&_r.has(Ue))return _r.get(Ue);var ri={__proto__:null},Tu=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var ii in Ue)if(ii!=="default"&&{}.hasOwnProperty.call(Ue,ii)){var Io=Tu?Object.getOwnPropertyDescriptor(Ue,ii):null;Io&&(Io.get||Io.set)?Object.defineProperty(ri,ii,Io):ri[ii]=Ue[ii]}return ri.default=Ue,_r&&_r.set(Ue,ri),ri}function V(Ue){return Ue&&Ue.__esModule?Ue:{default:Ue}}var i2="13.12.0",s2={version:i2,toDate:r.default,toFloat:i.default,toInt:s.default,toBoolean:o.default,equals:a.default,contains:l.default,matches:c.default,isEmail:u.default,isURL:d.default,isMACAddress:h.default,isIP:p.default,isIPRange:g.default,isFQDN:m.default,isBoolean:y.default,isIBAN:he.default,isBIC:Je.default,isAbaRouting:w.default,isAlpha:C.default,isAlphaLocales:C.locales,isAlphanumeric:k.default,isAlphanumericLocales:k.locales,isNumeric:A.default,isPassportNumber:I.default,isPort:D.default,isLowercase:R.default,isUppercase:T.default,isAscii:P.default,isFullWidth:L.default,isHalfWidth:$.default,isVariableWidth:q.default,isMultibyte:Z.default,isSemVer:ae.default,isSurrogatePair:ee.default,isInt:de.default,isIMEI:N.default,isFloat:ge.default,isFloatLocales:ge.locales,isDecimal:K.default,isHexadecimal:fe.default,isOctal:re.default,isDivisibleBy:ue.default,isHexColor:Q.default,isRgbColor:ce.default,isHSL:Ae.default,isISRC:Be.default,isMD5:Me.default,isHash:Ie.default,isJWT:_e.default,isJSON:xt.default,isEmpty:Tt.default,isLength:or.default,isLocale:S.default,isByteLength:M.default,isUUID:E.default,isMongoId:O.default,isAfter:H.default,isBefore:F.default,isIn:z.default,isLuhnNumber:ie.default,isCreditCard:me.default,isIdentityCard:we.default,isEAN:Ee.default,isISIN:Vt.default,isISBN:Nt.default,isISSN:Qt.default,isMobilePhone:ar.default,isMobilePhoneLocales:ar.locales,isPostalCode:vn.default,isPostalCodeLocales:vn.locales,isEthereumAddress:Jn.default,isCurrency:lr.default,isBtcAddress:cr.default,isISO6346:as.isISO6346,isFreightContainerID:as.isFreightContainerID,isISO6391:Eu.default,isISO8601:Mo.default,isRFC3339:Du.default,isISO31661Alpha2:Ru.default,isISO31661Alpha3:Ou.default,isISO4217:ht.default,isBase32:Pt.default,isBase58:Lt.default,isBase64:En.default,isDataURI:zt.default,isMagnetURI:_t.default,isMailtoURI:ln.default,isMimeType:ur.default,isLatLong:st.default,ltrim:cn.default,rtrim:bn.default,trim:Nr.default,escape:Pr.default,unescape:Dn.default,stripLow:Lr.default,whitelist:ls.default,blacklist:JS.default,isWhitelisted:XS.default,normalizeEmail:QS.default,toString,isSlug:e2.default,isStrongPassword:n2.default,isTaxID:Ut.default,isDate:v.default,isTime:b.default,isLicensePlate:t2.default,isVAT:r2.default,ibanLocales:he.locales};e.default=s2,n.exports=e.default,n.exports.default=e.default})(ea,ea.exports)),ea.exports}var wj=yj();const qh=H2(wj);function Zv(n){const e="The URL must be in a format like https://www.facebook.com/yourPage";if(!n)return"";if(n=n.replace(/(https?:\/\/)?(www\.)?facebook\.com/i,""),n.match(/^(http|\/\/)/i))throw new Error(e);if(n=n.replace(/^\//,""),n=`https://www.facebook.com/${n}`,!qh.isURL(n))throw new Error(e);return n}const Yv=n=>`https://www.facebook.com/${n}`,Sj=n=>n.match(/(?:https:\/\/)(?:www\.)(?:facebook\.com)\/(?:#!\/)?(\w+\/?\S+)/i)?.[1]||null,kd=/^x\.com\/([a-zA-Z0-9_]{1,15})$/;function Jv(n){if(!n)return"";if(n.match(kd)||n.match(/([a-z\d.]+)/i)){let e=[];if(n.match(kd)?[,e]=n.match(kd):[e]=n.match(/([^/]+)\/?$/i),e.startsWith("@")&&(e=e.slice(1)),!e.match(/^[a-z\d_]{1,15}$/i))throw new Error("Your Username is not a valid Twitter Username");return`https://x.com/${e}`}else{const e="The URL must be in a format like https://x.com/yourUsername";throw new Error(e)}}const Xv=n=>`https://x.com/${n.replace("@","")}`,Cj=n=>{const e=n.match(/(?:https:\/\/)(?:x\.com)\/(?:#!\/)?@?([^/]*)/)?.[1];return e?`@${e}`:null},kj=({keywords:n})=>{const{localSettings:e,isEditing:t,saveState:r,handleSave:i,handleCancel:s,updateSetting:o,handleEditingChange:a}=Ot(),[l,c]=x.useState({}),[u,d]=Te(e,["facebook","twitter"]),[h,p]=x.useState(u?Yv(u):""),[g,m]=x.useState(d?Xv(d):"");x.useEffect(()=>{p(u?Yv(u):""),m(d?Xv(d):"")},[u,d]);const v=S=>{p(S);try{const w=Zv(S);o("facebook",Sj(w)),t||a(!0),l.facebook&&c({...l,facebook:""})}catch(w){w instanceof Error&&c({...l,facebook:w.message}),o("facebook",null)}},b=S=>{m(S);try{const w=Jv(S);o("twitter",Cj(w)),t||a(!0),l.twitter&&c({...l,twitter:""})}catch(w){w instanceof Error&&c({...l,twitter:w.message}),o("twitter",null)}},y=()=>{const S={};if(h)try{Zv(h)}catch(w){w instanceof Error&&(S.facebook=w.message)}if(g)try{Jv(g)}catch(w){w instanceof Error&&(S.twitter=w.message)}c(S),Object.keys(S).length===0&&i()};return f.jsx(Se,{description:"Link your social accounts for full structured data and rich card support",isEditing:t,keywords:n,navid:"social-accounts",saveState:r,testId:"social-accounts",title:"Social accounts",hideEditButton:!0,onCancel:s,onEditingChange:a,onSave:y,children:f.jsxs(Ze,{children:[f.jsx(tt,{error:!!l.facebook,hint:l.facebook,placeholder:"https://www.facebook.com/ghost",title:"URL of your publication's Facebook Page",value:h,onChange:S=>v(S.target.value)}),f.jsx(tt,{error:!!l.twitter,hint:l.twitter,placeholder:"https://x.com/ghost",title:"URL of your X profile",value:g,onChange:S=>b(S.target.value)})]})})},Aj=ke(kj,"Social accounts"),Mj=[{name:"Pacific/Pago_Pago",label:"(GMT -11:00) Midway Island, Samoa"},{name:"Pacific/Honolulu",label:"(GMT -10:00) Hawaii"},{name:"America/Anchorage",label:"(GMT -9:00) Alaska"},{name:"America/Tijuana",label:"(GMT -8:00) Chihuahua, La Paz, Mazatlan"},{name:"America/Los_Angeles",label:"(GMT -8:00) Pacific Time (US & Canada); Tijuana"},{name:"America/Phoenix",label:"(GMT -7:00) Arizona"},{name:"America/Denver",label:"(GMT -7:00) Mountain Time (US & Canada)"},{name:"America/Costa_Rica",label:"(GMT -6:00) Central America"},{name:"America/Chicago",label:"(GMT -6:00) Central Time (US & Canada)"},{name:"America/Mexico_City",label:"(GMT -6:00) Guadalajara, Mexico City, Monterrey"},{name:"America/Regina",label:"(GMT -6:00) Saskatchewan"},{name:"America/Bogota",label:"(GMT -5:00) Bogota, Lima, Quito"},{name:"America/New_York",label:"(GMT -5:00) Eastern Time (US & Canada)"},{name:"America/Fort_Wayne",label:"(GMT -5:00) Indiana (East)"},{name:"America/Caracas",label:"(GMT -4:00) Caracas, La Paz"},{name:"America/Halifax",label:"(GMT -4:00) Atlantic Time (Canada); Greenland"},{name:"America/Santiago",label:"(GMT -4:00) Santiago"},{name:"America/St_Johns",label:"(GMT -3:30) Newfoundland"},{name:"America/Argentina/Buenos_Aires",label:"(GMT -3:00) Buenos Aires, Brasilia, Georgetown"},{name:"America/Noronha",label:"(GMT -2:00) Fernando de Noronha"},{name:"Atlantic/Azores",label:"(GMT -1:00) Azores"},{name:"Atlantic/Cape_Verde",label:"(GMT -1:00) Cape Verde Is."},{name:"Etc/UTC",label:"(GMT) UTC"},{name:"Africa/Casablanca",label:"(GMT +0:00) Casablanca, Monrovia"},{name:"Europe/Dublin",label:"(GMT +0:00) Dublin, Edinburgh, London"},{name:"Europe/Amsterdam",label:"(GMT +1:00) Amsterdam, Berlin, Rome, Stockholm, Vienna"},{name:"Europe/Prague",label:"(GMT +1:00) Belgrade, Bratislava, Budapest, Prague"},{name:"Europe/Paris",label:"(GMT +1:00) Brussels, Copenhagen, Madrid, Paris"},{name:"Europe/Warsaw",label:"(GMT +1:00) Sarajevo, Skopje, Warsaw, Zagreb"},{name:"Africa/Lagos",label:"(GMT +1:00) West Central Africa"},{name:"Europe/Athens",label:"(GMT +2:00) Athens, Beirut, Bucharest"},{name:"Africa/Cairo",label:"(GMT +2:00) Cairo, Egypt"},{name:"Africa/Maputo",label:"(GMT +2:00) Harare"},{name:"Europe/Kiev",label:"(GMT +2:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius"},{name:"Asia/Jerusalem",label:"(GMT +2:00) Jerusalem"},{name:"Africa/Johannesburg",label:"(GMT +2:00) Pretoria"},{name:"Asia/Baghdad",label:"(GMT +3:00) Baghdad"},{name:"Asia/Riyadh",label:"(GMT +3:00) Kuwait, Nairobi, Riyadh"},{name:"Europe/Istanbul",label:"(GMT +3:00) Istanbul, Ankara"},{name:"Europe/Moscow",label:"(GMT +3:00) Moscow, St. Petersburg, Volgograd"},{name:"Asia/Tehran",label:"(GMT +3:30) Tehran"},{name:"Asia/Dubai",label:"(GMT +4:00) Abu Dhabi, Muscat"},{name:"Asia/Baku",label:"(GMT +4:00) Baku, Tbilisi, Yerevan"},{name:"Asia/Kabul",label:"(GMT +4:30) Kabul"},{name:"Asia/Karachi",label:"(GMT +5:00) Islamabad, Karachi, Tashkent"},{name:"Asia/Yekaterinburg",label:"(GMT +5:00) Yekaterinburg"},{name:"Asia/Kolkata",label:"(GMT +5:30) Chennai, Calcutta, Mumbai, New Delhi"},{name:"Asia/Kathmandu",label:"(GMT +5:45) Katmandu"},{name:"Asia/Almaty",label:"(GMT +6:00) Almaty, Novosibirsk"},{name:"Asia/Dhaka",label:"(GMT +6:00) Astana, Dhaka, Sri Jayawardenepura"},{name:"Asia/Rangoon",label:"(GMT +6:30) Rangoon"},{name:"Asia/Bangkok",label:"(GMT +7:00) Bangkok, Hanoi, Jakarta"},{name:"Asia/Krasnoyarsk",label:"(GMT +7:00) Krasnoyarsk"},{name:"Asia/Hong_Kong",label:"(GMT +8:00) Beijing, Chongqing, Hong Kong, Urumqi"},{name:"Asia/Irkutsk",label:"(GMT +8:00) Irkutsk, Ulaan Bataar"},{name:"Asia/Singapore",label:"(GMT +8:00) Kuala Lumpur, Perth, Singapore, Taipei"},{name:"Asia/Tokyo",label:"(GMT +9:00) Osaka, Sapporo, Tokyo"},{name:"Asia/Seoul",label:"(GMT +9:00) Seoul"},{name:"Asia/Yakutsk",label:"(GMT +9:00) Yakutsk"},{name:"Australia/Adelaide",label:"(GMT +9:30) Adelaide"},{name:"Australia/Darwin",label:"(GMT +9:30) Darwin"},{name:"Australia/Brisbane",label:"(GMT +10:00) Brisbane, Guam, Port Moresby"},{name:"Australia/Sydney",label:"(GMT +10:00) Canberra, Hobart, Melbourne, Sydney, Vladivostok"},{name:"Asia/Magadan",label:"(GMT +11:00) Magadan, Soloman Is., New Caledonia"},{name:"Pacific/Auckland",label:"(GMT +12:00) Auckland, Wellington"},{name:"Pacific/Fiji",label:"(GMT +12:00) Fiji, Kamchatka, Marshall Is."},{name:"Pacific/Kwajalein",label:"(GMT +12:00) International Date Line West"}],Ij=({timezone:n})=>{const[e,t]=x.useState(Ug(n));return x.useEffect(()=>{const r=setInterval(()=>{t(Ug(n))},1e3);return()=>{clearInterval(r)}},[n]),f.jsxs(f.Fragment,{children:["The local time here is currently ",e]})},Ej=({keywords:n})=>{const{localSettings:e,isEditing:t,saveState:r,handleSave:i,handleCancel:s,updateSetting:o,handleEditingChange:a}=Ot(),[l]=Te(e,["timezone"]),c=Mj.map(d=>({value:d.name,label:d.label})),u=d=>{o("timezone",d||null),a(!0)};return f.jsx(Se,{description:"Set the time and date of your publication, used for all published posts",hideEditButton:!0,isEditing:t,keywords:n,navid:"timezone",saveState:r,testId:"timezone",title:"Site timezone",onCancel:s,onEditingChange:a,onSave:i,children:f.jsx(Ze,{columns:1,children:f.jsx(yr,{hint:f.jsx(Ij,{timezone:l}),options:c,selectedOption:c.find(d=>d.value===l),testId:"timezone-select",title:"Site timezone",isSearchable:!0,onSelect:d=>u(d?.value)})})})},Dj=ke(Ej,"Site timezone"),Rj=({keywords:n})=>{const{errors:e,localSettings:t,isEditing:r,saveState:i,focusRef:s,clearError:o,handleSave:a,handleCancel:l,updateSetting:c,handleEditingChange:u}=Ot({onValidate:()=>d?d.length<4?{title:"Please use a site title longer than 3 characters."}:d.length>63?{title:"Please use a site title shorter than 63 characters."}:{}:{title:"Please enter a site title."}}),[d,h]=Te(t,["title","description"]),p=b=>{c("title",b.target.value)},g=b=>{c("description",b.target.value)},m=f.jsx(Ze,{columns:2,values:[{heading:"Site title",key:"site-title",value:d},{heading:"Site description",key:"site-description",value:h}]}),v=f.jsxs(Ze,{children:[f.jsx(tt,{error:!!e.title,hint:e.title||"The name of your site",inputRef:s,maxLength:63,placeholder:"Site title",title:"Site title",value:d,onChange:p,onKeyDown:()=>o("title")}),f.jsx(tt,{hint:"A short description, used in your theme, meta data and search results",maxLength:200,placeholder:"Site description",title:"Site description",value:h,onChange:g})]});return f.jsx(Se,{description:"The details used to identify your publication around the web",isEditing:r,keywords:n,navid:"general",saveState:i,testId:"title-and-description",title:"Title & description",onCancel:l,onEditingChange:u,onSave:a,children:r?v:m})},Oj=ke(Rj,"Title & description"),Tj=({user:n})=>{const{updateRoute:e}=be(),{currentUser:t}=Pe(),r=()=>{Cs(t)&&e({route:`staff/${n.slug}`})};return n?f.jsxs("div",{className:_("group flex gap-3",Cs(t)&&"cursor-pointer"),"data-testid":"owner-user",onClick:r,children:[f.jsx(nh,{bgColor:Vh(n.name?n.name:n.email),image:n.profile_image??void 0,label:yS(n.name),labelColor:"white",size:"lg"}),f.jsxs("div",{className:"flex flex-col",children:[f.jsxs("span",{children:[n.name," — ",f.jsx("strong",{children:"Owner"})," ",Cs(t)&&f.jsx("button",{className:"ml-2 inline-block text-sm font-bold text-green group-hover:visible md:invisible",type:"button",children:"View profile"})]}),f.jsx("span",{className:"text-xs text-grey-700",children:n.email})]})]}):null},$l=({users:n,groupname:e})=>{const{updateRoute:t}=be(),{currentUser:r}=Pe(),i=s=>{t({route:`staff/${s.slug}`})};return!n||!n.length?f.jsxs(ei,{icon:"single-user-block",children:["No ",e," found."]}):f.jsx(Xi,{titleSeparator:!1,children:n.map(s=>{let o=s.name||"";s.status==="inactive"&&(o=`${o} (Suspended)`);const a=Cs(r)||vb(r)&&V2(s)||r.id===s.id;return f.jsx(ru,{action:a&&f.jsx(ne,{color:"green",label:"Edit",link:!0,onClick:()=>i(s)}),avatar:f.jsx(nh,{bgColor:Vh(s.name?s.name:s.email),image:s.profile_image??void 0,label:yS(s.name),labelColor:"white"}),bgOnHover:a,className:"min-h-[64px]",detail:s.email,hideActions:!0,id:`list-item-${s.id}`,separator:!1,testId:"user-list-item",title:o,onClick:()=>a&&i(s)},s.id)})})},Nj=({invite:n})=>{const[e,t]=x.useState(""),[r,i]=x.useState(""),{mutateAsync:s}=t5(),{mutateAsync:o}=e5(),a=vt();let l="Revoke";e==="progress"&&(l="Revoking...");let c="Resend";return r==="progress"&&(c="Resending..."),f.jsxs("div",{className:"flex gap-2",children:[f.jsx(ne,{color:"red",label:l,link:!0,onClick:async()=>{try{t("progress"),await s(n.id),tr({title:"Invitation revoked",message:n.email,type:"success"})}catch(u){a(u)}finally{t("")}}}),f.jsx(ne,{className:"ml-2",color:"green",label:c,link:!0,onClick:async()=>{try{i("progress"),await s(n.id),await o({email:n.email,roleId:n.role_id}),tr({title:"Invitation resent",message:n.email,type:"success"})}catch(u){a(u)}finally{i("")}}})]})},Pj=({users:n})=>!n||!n.length?f.jsx(ei,{icon:"single-user-block",children:"No invitations found."}):f.jsx(Xi,{children:n.map(e=>f.jsx(ru,{action:f.jsx(Nj,{invite:e}),avatar:f.jsx(nh,{bgColor:Vh(e.email),image:"",label:e.email.charAt(0).toUpperCase(),labelColor:"white"}),className:"min-h-[64px]",detail:e.role,hideActions:!0,id:`list-item-${e.id}`,separator:!1,testId:"user-invite",title:e.email,onClick:()=>{}},e.id))}),Lj=({keywords:n,highlight:e=!0})=>{const{totalUsers:t,totalInvites:r,users:i,ownerUser:s,adminUsers:o,editorUsers:a,authorUsers:l,contributorUsers:c,invites:u,hasNextPage:d,fetchNextPage:h,invitesHasNextPage:p,fetchNextInvitePage:g}=gS(),{updateRoute:m}=be(),{settings:v,config:b,currentUser:y}=Pe(),S=()=>{m("staff/invite")},w=f.jsx(ne,{className:"mt-[-5px]",color:"clear",label:"Invite people",size:"sm",linkWithPadding:!0,onClick:()=>{S()}}),C=wS().getParam("tab"),k=C||"administrators",[A,I]=x.useState(k);x.useEffect(()=>{C&&I(C)},[C]);const D=L=>{m(`staff?tab=${L}`),I(L)},R=[{id:"administrators",title:"Administrators",contents:f.jsx($l,{groupname:"administrators",users:o}),counter:o.length?o.length:void 0},{id:"editors",title:"Editors",contents:f.jsx($l,{groupname:"editors",users:a}),counter:a.length?a.length:void 0},{id:"authors",title:"Authors",contents:f.jsx($l,{groupname:"authors",users:l}),counter:l.length?l.length:void 0},{id:"contributors",title:"Contributors",contents:f.jsx($l,{groupname:"contributors",users:c}),counter:c.length?c.length:void 0},{id:"invited",title:"Invited",contents:f.jsx(Pj,{users:u}),counter:r||void 0}],T=mb(v,"require_email_mfa")||!1,{mutateAsync:N}=Xr(),P=vt();return f.jsxs(Se,{customButtons:w,highlightOnModalClose:e,keywords:n,navid:"staff",testId:"users",title:"Staff",children:[f.jsx(Tj,{user:s}),(i.length>1||u.length>0)&&f.jsx(Gn,{selectedTab:A,tabs:R,testId:"user-tabview",onTabChange:D}),d&&A!=="invited"&&f.jsx(ne,{label:`Load more (showing ${i.length}/${t} users)`,link:!0,onClick:()=>h()}),p&&A==="invited"&&f.jsx(ne,{label:`Load more (showing ${u.length}/${r} invites)`,link:!0,onClick:()=>g()}),b?.security?.staffDeviceVerification&&Cs(y)&&f.jsxs("div",{className:`flex flex-col gap-6 ${i.length>1||u.length>0?"-mt-6":""}`,children:[f.jsx(gt,{}),f.jsxs("div",{className:"flex items-baseline justify-between",children:[f.jsxs("div",{className:"flex flex-col",children:[f.jsx("span",{className:"text-[1.5rem] font-semibold tracking-tight",children:"Security settings"}),f.jsx("span",{children:"Require email 2FA codes to be used on all staff logins"})]}),f.jsx(Kt,{checked:T,direction:"rtl",gap:"gap-0",onChange:async()=>{const L=!T;try{await N([{key:"require_email_mfa",value:L}])}catch($){P($)}}})]})]})]})},$S=ke(Lj,"Staff"),at={titleAndDescription:["general","title and description","site title","site description","title & description"],timeZone:["general","time","date","site timezone","time zone"],publicationLanguage:["general","publication language","locale"],users:["general","users and permissions","roles","staff","invite people","contributors","editors","authors","administrators"],metadata:["general","metadata","title","description","search","engine","google","meta data","twitter card","structured data","rich cards","x card","social","facebook card"],socialAccounts:["general","social accounts","facebook","twitter","structured data","rich cards"],lockSite:["general","password protection","lock site","make this site private"],analytics:["membership","analytics","tracking","privacy","membership"]},_j=()=>f.jsxs(ss,{keywords:Object.values(at).flat(),title:"General settings",children:[f.jsx(Oj,{keywords:at.titleAndDescription}),f.jsx(Dj,{keywords:at.timeZone}),f.jsx(H5,{keywords:at.publicationLanguage}),f.jsx($S,{keywords:at.users}),f.jsx(W5,{keywords:at.metadata}),f.jsx(Aj,{keywords:at.socialAccounts}),f.jsx(L5,{keywords:at.analytics}),f.jsx(j5,{keywords:at.lockSite})]}),jj=({keywords:n})=>{const{updateRoute:e}=be(),t=()=>{e("embed-signup-form/show")};return f.jsx(Se,{customButtons:f.jsx(ne,{className:"mt-[-5px]",color:"clear",label:"Embed",size:"sm",onClick:t}),description:"Grow your audience from anywhere on the web",keywords:n,navid:"embed-signup-form",testId:"embed-signup-form",title:"Signup forms"})},FS="/ghost/assets/explore-default-logo-DyP-dkSK.png",Bj="/ghost/assets/ghost-explore-afOk0g_6.png",$j=({keywords:n})=>{const{settings:e}=Pe(),{mutateAsync:t}=Xr(),r=vt(),{updateRoute:i}=be(),{refetch:s}=gb({searchParams:{limit:"1"}}),[o,a]=x.useState(0);x.useEffect(()=>{(async()=>{const{data:C}=await s(),k=C?.meta?.pagination?.total||0;a(k)})()},[s]);const[l,c]=Te(e,["accent_color","icon"]),{localSettings:u,siteData:d}=Ot(),[h,p]=Te(u,["title","description"]),[g]=Te(e,["explore_ping"]),[m]=Te(e,["explore_ping_growth"]),v=d?.url,b=v?.replace(/^https?:\/\//,"").replace(/\/?$/,""),y=l||"#F6414E",S=async(w,C)=>{const k=[{key:w,value:C.target.checked}];try{await t(k)}catch(A){r(A)}};return f.jsx(Se,{customButtons:f.jsx(Kt,{checked:g,direction:"rtl",testId:"explore-toggle",onChange:w=>S("explore_ping",w)}),description:"Promote your site across Ghost's website and publishing network",keywords:n,navid:"explore",testId:"explore",title:"Ghost Explore",children:g?f.jsxs(Ze,{columns:1,children:[f.jsx(gt,{}),f.jsx(Kt,{checked:m,containerClasses:"!items-center",direction:"rtl",gap:"gap-0",hint:"Enabling this will use your revenue/member growth data to rank your site more highly on Ghost Explore. Total member count will be displayed publicly, other data will be kept private.",label:"Share growth data to rank higher?",labelClasses:"w-full",testId:"explore-growth-toggle",onChange:w=>S("explore_ping_growth",w)}),f.jsx("div",{className:"-mx-5 -mb-5 flex flex-col items-center bg-grey-75 px-7 py-10 md:-mx-7 md:-mb-7","data-testid":"explore-preview",children:f.jsxs("div",{className:"relative w-full max-w-[320px] rounded-lg bg-white p-6 text-black shadow-lg",children:[f.jsx("div",{className:"absolute right-3 top-2.5 text-xs uppercase text-grey-300",children:"Preview"}),c?f.jsx("div",{className:"size-9 rounded-sm bg-cover bg-center",style:{backgroundImage:`url(${c})`}}):f.jsx("div",{className:"flex aspect-square size-10 items-center justify-center overflow-hidden rounded-full p-1 text-white",style:{backgroundColor:y},children:f.jsx("img",{className:"h-auto w-8",src:FS})}),f.jsx("div",{className:"mt-3 text-lg font-semibold tracking-tight",children:h}),p&&f.jsx("div",{className:"mt-1.5 text-sm leading-tight text-grey-700",children:p}),f.jsxs("a",{className:"group mt-8 flex h-6 w-full items-center justify-between gap-5 hover:cursor-pointer",href:v,rel:"noopener noreferrer",target:"_blank",children:[f.jsx("span",{className:"text-sm font-semibold",children:b}),m?f.jsxs("span",{className:"rounded-sm bg-black px-2 py-0.5 text-xs font-semibold text-white","data-testid":"explore-members-count",children:[U2(o)," ",o===1?"member":"members"]}):f.jsx("span",{className:"flex size-5 items-center justify-center rounded-full border border-black text-black group-hover:bg-black group-hover:text-white",children:f.jsx(ve,{name:"arrow-right",size:10})})]})]})}),f.jsxs("div",{className:"-mx-5 -mb-5 flex items-center justify-between gap-4 rounded-b-xl border-t border-[rgba(142,66,255,0.1)] bg-gradient-to-tr from-[rgba(142,66,255,0.07)] to-[rgba(142,66,255,0.02)] p-6 px-7 md:-mx-7 md:-mb-7",children:[f.jsxs("div",{className:"flex flex-col",children:[f.jsx("span",{className:"font-medium",children:"Get featured on the Ghost.org homepage"}),f.jsx("span",{className:"text-pretty text-sm text-black/80 dark:text-white/80",children:"Send us a quote we can use to highlight your site"})]}),f.jsx(ne,{className:"border border-purple bg-white text-purple hover:bg-purple/5 hover:text-purple dark:bg-transparent",icon:"send",label:"Send testimonial",onClick:()=>{i("explore/testimonial")}})]})]}):f.jsx("img",{src:Bj})})},Fj=ke($j,"Ghost Explore"),Hj="/ghost/assets/network-BsaAQxl3.png",Vj=({keywords:n})=>{const{settings:e}=Pe(),{mutateAsync:t}=Xr(),r=vt(),{updateRoute:i}=be(),o=Co()?.isDisabled("limitSocialWeb"),{subdir:a}=Ed(),[l]=Te(e,["is_private"]),c=!!a,u=["localhost","127.0.0.1","::1"].includes(window.location.hostname),d=qh.isIP(window.location.hostname),h=o||c||u||d,p=!!l,g=h||p,[m]=Te(e,["social_web"]),v=!!m&&!g,b=async y=>{const S=[{key:"social_web",value:y.target.checked}];try{await t(S)}catch(w){r(w)}};return f.jsx(Se,{customButtons:f.jsx(Kt,{checked:v,direction:"rtl",disabled:g,onChange:b},`${v}-${g}`),description:"Distribute posts to the social web, so people can discover and follow your content across BlueSky, Threads, Mastodon, Flipboard, WordPress, and more.",keywords:n,navid:"network",testId:"network",title:"Network",children:f.jsxs(f.Fragment,{children:[f.jsx(Ze,{columns:1,values:[{key:"private",value:g&&f.jsxs("div",{className:"flex w-full gap-1.5 rounded-md border border-grey-200 bg-grey-75 p-3 text-sm dark:border-grey-900 dark:bg-grey-925",children:[f.jsx(ve,{name:"info",size:16}),f.jsx("div",{className:"-mt-0.5",children:p?f.jsxs(f.Fragment,{children:["Network is automatically disabled while your site is in ",f.jsx("span",{className:"cursor-pointer text-green",onClick:()=>i("locksite"),children:"private mode"})]}):f.jsxs(f.Fragment,{children:["You need to configure a supported custom domain to use this feature. ",f.jsx("a",{className:"text-green",href:"https://ghost.org/help/social-web/#custom-domain-required",rel:"noopener noreferrer",target:"_blank",children:"Help →"})]})})]})}]}),f.jsx("div",{className:"-mx-5 -mb-5 overflow-hidden rounded-b-xl md:-mx-7 md:-mb-7",children:f.jsx("img",{className:"dark:opacity-90",src:Hj})})]})})},Uj=ke(Vj,"Network"),Qv=[{isoCode:"USD",name:"United States dollar"},{isoCode:"EUR",name:"Euro"},{isoCode:"GBP",name:"Pound sterling"},{isoCode:"AUD",name:"Australian dollar"},{isoCode:"CAD",name:"Canadian dollar"},{isoCode:"AED",name:"United Arab Emirates dirham"},{isoCode:"AFN",name:"Afghan afghani"},{isoCode:"ALL",name:"Albanian lek"},{isoCode:"AMD",name:"Armenian dram"},{isoCode:"ANG",name:"Netherlands Antillean guilder"},{isoCode:"AOA",name:"Angolan kwanza"},{isoCode:"ARS",name:"Argentine peso"},{isoCode:"AWG",name:"Aruban florin"},{isoCode:"AZN",name:"Azerbaijani manat"},{isoCode:"BAM",name:"Bosnia and Herzegovina convertible mark"},{isoCode:"BBD",name:"Barbados dollar"},{isoCode:"BDT",name:"Bangladeshi taka"},{isoCode:"BGN",name:"Bulgarian lev"},{isoCode:"BMD",name:"Bermudian dollar"},{isoCode:"BND",name:"Brunei dollar"},{isoCode:"BOB",name:"Boliviano"},{isoCode:"BRL",name:"Brazilian real"},{isoCode:"BSD",name:"Bahamian dollar"},{isoCode:"BWP",name:"Botswana pula"},{isoCode:"BZD",name:"Belize dollar"},{isoCode:"CDF",name:"Congolese franc"},{isoCode:"CHF",name:"Swiss franc"},{isoCode:"CNY",name:"Chinese yuan"},{isoCode:"COP",name:"Colombian peso"},{isoCode:"CRC",name:"Costa Rican colon"},{isoCode:"CVE",name:"Cape Verdean escudo"},{isoCode:"CZK",name:"Czech koruna"},{isoCode:"DKK",name:"Danish krone"},{isoCode:"DOP",name:"Dominican peso"},{isoCode:"DZD",name:"Algerian dinar"},{isoCode:"EGP",name:"Egyptian pound"},{isoCode:"ETB",name:"Ethiopian birr"},{isoCode:"FJD",name:"Fiji dollar"},{isoCode:"FKP",name:"Falkland Islands pound"},{isoCode:"GEL",name:"Georgian lari"},{isoCode:"GIP",name:"Gibraltar pound"},{isoCode:"GMD",name:"Gambian dalasi"},{isoCode:"GTQ",name:"Guatemalan queztal"},{isoCode:"GYD",name:"Guyanese dollar"},{isoCode:"HKD",name:"Hong Kong dollar"},{isoCode:"HNL",name:"Honduran lempira"},{isoCode:"HRK",name:"Croation kuna"},{isoCode:"HTG",name:"Haitian gourde"},{isoCode:"HUF",name:"Hungarian forint"},{isoCode:"IDR",name:"Indonesian rupiah"},{isoCode:"ILS",name:"Israeli new shekel"},{isoCode:"INR",name:"Indian rupee"},{isoCode:"ISK",name:"Icelandic króna"},{isoCode:"JMD",name:"Jamaican dollar"},{isoCode:"KES",name:"Kenyan shilling"},{isoCode:"KGS",name:"Kyrgyzstani som"},{isoCode:"KHR",name:"Cambodian riel"},{isoCode:"KYD",name:"Cayman Islands dollar"},{isoCode:"KZT",name:"Kazakhstani tenge"},{isoCode:"LAK",name:"Lao kip"},{isoCode:"LBP",name:"Lebanese pound"},{isoCode:"LKR",name:"Sri Lankan rupee"},{isoCode:"LRD",name:"Liberian dollar"},{isoCode:"LSL",name:"Lesotho loti"},{isoCode:"MAD",name:"Moroccan dirham"},{isoCode:"MDL",name:"Moldovan leu"},{isoCode:"MKD",name:"Macedonian denar"},{isoCode:"MMK",name:"Myanmar kyat"},{isoCode:"MNT",name:"Mongolian tögrög"},{isoCode:"MOP",name:"Macanese pataca"},{isoCode:"MRO",name:"Mauritanian ouguiya"},{isoCode:"MUR",name:"Mauritian rupee"},{isoCode:"MVR",name:"Maldivian rufiyaa"},{isoCode:"MWK",name:"Malawian kwacha"},{isoCode:"MXN",name:"Mexican peso"},{isoCode:"MYR",name:"Malaysian ringgit"},{isoCode:"MZN",name:"Mozambican metical"},{isoCode:"NAD",name:"Namibian dollar"},{isoCode:"NGN",name:"Nigerian naira"},{isoCode:"NIO",name:"Nicaraguan córdoba"},{isoCode:"NOK",name:"Norwegian krone"},{isoCode:"NPR",name:"Nepalese rupee"},{isoCode:"NZD",name:"New Zealand dollar"},{isoCode:"PAB",name:"Panamanian balboa"},{isoCode:"PEN",name:"Peruvian sol"},{isoCode:"PGK",name:"Papua New Guinean kina"},{isoCode:"PHP",name:"Philippine peso"},{isoCode:"PKR",name:"Pakistani rupee"},{isoCode:"PLN",name:"Polish złoty"},{isoCode:"QAR",name:"Qatari riyal"},{isoCode:"RON",name:"Romanian leu"},{isoCode:"RSD",name:"Serbian dinar"},{isoCode:"RUB",name:"Russian ruble"},{isoCode:"SAR",name:"Saudi riyal"},{isoCode:"SBD",name:"Solomon Islands dollar"},{isoCode:"SCR",name:"Seychelles rupee"},{isoCode:"SEK",name:"Swedish krona"},{isoCode:"SGD",name:"Singapore dollar"},{isoCode:"SHP",name:"Saint Helena pound"},{isoCode:"SLL",name:"Sierra Leonean leone"},{isoCode:"SOS",name:"Somali shilling"},{isoCode:"SRD",name:"Surinamese dollar"},{isoCode:"STD",name:"São Tomé and Príncipe dobra"},{isoCode:"SZL",name:"Salvadoran colón"},{isoCode:"THB",name:"Thai baht"},{isoCode:"TJS",name:"Tajikistani somoni"},{isoCode:"TOP",name:"Tongan paʻanga"},{isoCode:"TRY",name:"Turkish lira"},{isoCode:"TTD",name:"Trinidad and Tobago dollar"},{isoCode:"TWD",name:"New Taiwan dollar"},{isoCode:"TZS",name:"Tanzanian shilling"},{isoCode:"UAH",name:"Ukrainian hryvnia"},{isoCode:"UYU",name:"Uruguayan peso"},{isoCode:"UZS",name:"Uzbekistan som"},{isoCode:"WST",name:"Samoan tala"},{isoCode:"XCD",name:"East Caribbean dollar"},{isoCode:"YER",name:"Yemeni rial"},{isoCode:"ZAR",name:"South African rand"},{isoCode:"ZMW",name:"Zambian kwacha"}];function zj(){return{top:Qv.slice(0,5),other:Qv.slice(5)}}function eb({showName:n=!1}={}){return Object.values(zj()).map((e,t)=>({label:"—",key:t.toString(),options:e.map(({isoCode:r,name:i})=>({value:r,label:n?`${r} - ${i}`:r}))}))}function to(n){return n?Intl.NumberFormat("en",{currency:n,style:"currency"}).format(0).replace(/[\d\s.]/g,""):""}function $i(n){return n/100}function Wj(n){switch(n?.toUpperCase()){case"AED":return 4;case"BGN":return 2;case"CZK":return 30;case"DKK":return 5;case"HKD":return 8;case"HUF":return 250;case"JPY":return 100;case"MXN":return 20;case"MYR":return 4;case"NOK":return 6;case"PLN":return 4;case"RON":return 4;case"SEK":return 6;case"THB":return 20;default:return 1}}function qj(n,e,{allowZero:t=!0,maxAmount:r}={}){if(n===void 0||!e)return;const i=to(e),s=Wj(e);if(!t&&n===0)return`Amount must be at least ${i}${s}.`;if(n!==0&&n<s*100)return`Non-zero amount must be at least ${i}${s}.`;if(r&&n!==0&&n>r*100)return`Suggested amount cannot be more than ${i}${r}.`}const HS=n=>{const e="/ghost/#/members",t=`offer_redemptions:[${n}]`;return`${e}?filter=${encodeURIComponent(t)}`},Gj=n=>n==="month"?"monthly":"yearly",Kj=n=>n==="once"?"First payment":n==="repeating"?"Repeating":"Forever",VS=(n,e,t,r,i)=>{let s="",o="";const a=t==="month"?i?.monthly_price??0:i?.yearly_price??0;let l=a;const c=h=>parseFloat(h.toFixed(2));let u=to(r)+Sn(c($i(a)));switch(n){case"percent":s="text-green",o=e+"% off",l=a-a*e/100;break;case"fixed":s="text-blue",o=Sn(c($i(e)))+" "+r+" off",l=a-e;break;case"trial":s="text-pink",o=e+" days free",u="";break}l<0&&(l=0);const d=to(r)+Sn(c($i(l)));return{discountColor:s,discountOffer:o,originalPriceWithCurrency:u,updatedPriceWithCurrency:d}},US=({offerCode:n})=>{const[e,t]=x.useState(!1),{siteData:r}=Pe(),i=s=>{s?.stopPropagation();const o=`${z2(r)}${n}`;navigator.clipboard.writeText(o),t(!0),setTimeout(()=>t(!1),2e3)};return f.jsx(th,{containerClassName:"group-hover:opacity-100 opacity-0 inline-flex items-center -mr-1 justify-center leading-none w-5 h-5",content:e?"Copied":"Copy link",size:"sm",children:f.jsx(ne,{color:"clear",hideLabel:!0,icon:e?"check-circle":"hyperlink-circle",iconColorClass:e?"text-green w-[14px] h-[14px]":"w-[14px] h-[14px]",label:e?"Copied":"Copy",unstyled:!0,onClick:i})})},tb=({title:n="No offers found",description:e,buttonAction:t,buttonLabel:r})=>f.jsxs("div",{className:"flex h-full grow flex-col items-center justify-center text-center",children:[f.jsx(ve,{className:"-mt-14",colorClass:"text-grey-700 -mt-6",name:"tags-block",size:"xl"}),f.jsx("h1",{className:"mt-6 text-2xl",children:n}),f.jsx("p",{className:"mt-3 max-w-[420px] text-[1.6rem]",children:e}),f.jsx(ne,{className:"mt-8",color:"grey",label:r,onClick:t})]}),F6=()=>{const n=ir(),{updateRoute:e}=be(),{data:{offers:t=[]}={},isFetching:r}=bS(),{data:{tiers:i}={}}=Mu(),s=t.filter(w=>{const C=i?.find(k=>k.id===w?.tier.id);return w.status==="active"&&C&&C.active===!0}),o=t.filter(w=>{const C=i?.find(k=>k.id===w?.tier.id);return w.status==="archived"||C&&C.active===!1});let a=[{id:"active",title:"Active"},{id:"archived",title:"Archived"}];const{sortingState:l,setSortingState:c}=O_(),u=l?.find(w=>w.type==="offers"),[d,h]=x.useState("active"),p=u?.option||"date-added",g=u?.direction||"desc",m=w=>{sessionStorage.setItem("editOfferPageSource","offersIndex"),e(`offers/edit/${w}`)},v=t.sort((w,C)=>{const k=g==="desc"?-1:1;switch(p){case"name":return k*w.name.localeCompare(C.name);case"redemptions":return k*(w.redemption_count-C.redemption_count);default:return k*((w.created_at?new Date(w.created_at).getTime():0)-(C.created_at?new Date(C.created_at).getTime():0))}}),b=xS(i||[]),y=f.jsx("div",{className:"overflow-x-auto",children:f.jsxs("table",{className:"m-0 w-full",children:[d==="active"&&s.length>0||d==="archived"&&o.length>0?f.jsxs("tr",{className:"border-b border-b-grey-300 dark:border-grey-800",children:[f.jsxs("th",{className:"px-5 py-2.5 pl-0 text-xs font-normal text-grey-700",children:[d==="active"?s.length:o.length," ",d==="active"?s.length!==1?"offers":"offer":o.length!==1?"offers":"offer"]}),f.jsx("th",{className:"px-5 py-2.5 text-xs font-normal text-grey-700",children:"Terms"}),f.jsx("th",{className:"px-5 py-2.5 text-xs font-normal text-grey-700",children:"Price"}),f.jsx("th",{className:"px-5 py-2.5 text-xs font-normal text-grey-700",children:"Redemptions"}),f.jsx("th",{className:"min-w-[80px] px-5 py-2.5 pr-0 text-xs font-normal text-grey-700"})]}):null,v.filter(w=>{const C=i?.find(k=>k.id===w?.tier.id);return d==="active"&&w.status==="active"&&C&&C.active===!0||d==="archived"&&(w.status==="archived"||C&&C.active===!1)}).map(w=>{const C=i?.find(R=>R.id===w?.tier.id);if(!C)return null;const k=C?.active===!1,{discountOffer:A,originalPriceWithCurrency:I,updatedPriceWithCurrency:D}=VS(w.type,w.amount,w.cadence,w.currency||"USD",C);return f.jsxs("tr",{className:"group relative scale-100 border-b border-b-grey-200 dark:border-grey-800","data-testid":"offer-item",children:[f.jsx("td",{className:`${k?"opacity-50":""} p-0`,children:f.jsxs("a",{className:`block ${k?"cursor-default select-none":"cursor-pointer"} p-5 pl-0`,onClick:k?()=>{}:()=>m(w?.id?w.id:""),children:[f.jsx("span",{className:"font-semibold",children:w?.name}),f.jsx("br",{}),f.jsxs("span",{className:"text-sm text-grey-700",children:[C.name," ",Gj(w.cadence)]})]})}),f.jsx("td",{className:`${k?"opacity-50":""} whitespace-nowrap p-0 text-sm`,children:f.jsxs("a",{className:`block ${k?"cursor-default select-none":"cursor-pointer"} p-5`,onClick:k?()=>{}:()=>m(w?.id?w.id:""),children:[f.jsx("span",{className:"text-[1.3rem] font-medium uppercase",children:A}),f.jsx("br",{}),f.jsx("span",{className:"text-grey-700",children:w.type!=="trial"?Kj(w.duration):"Trial period"})]})}),f.jsx("td",{className:`${k?"opacity-50":""} whitespace-nowrap p-0 text-sm`,children:f.jsxs("a",{className:`block ${k?"cursor-default select-none":"cursor-pointer"} p-5`,onClick:k?()=>{}:()=>m(w?.id?w.id:""),children:[f.jsx("span",{className:"font-medium",children:D})," ",w.type!=="trial"?f.jsx("span",{className:'relative text-xs text-grey-700 before:absolute before:-inset-x-0.5 before:top-1/2 before:rotate-[-20deg] before:border-t before:content-[""]',children:I}):null]})}),f.jsx("td",{className:`${k?"opacity-50":""} w-[120px] whitespace-nowrap p-0 text-sm`,children:f.jsx("a",{className:`block ${k?"cursor-default select-none":"cursor-pointer"} p-5 ${w.redemption_count===0?"":"hover:underline"}`,href:w.redemption_count>0?HS(w.id?w.id:""):void 0,onClick:w.redemption_count===0?k?()=>{}:()=>m(w?.id?w.id:""):()=>{},children:w.redemption_count})}),f.jsx("td",{className:`${k?"opacity-50":""} w-[120px] whitespace-nowrap p-5 pr-8 text-right text-sm leading-none`,children:k?null:f.jsx(US,{offerCode:w.code})}),k?f.jsxs("div",{className:"absolute right-0 top-[11px] whitespace-nowrap rounded-sm bg-black px-2 py-0.5 text-xs leading-normal text-white opacity-0 transition-all group-hover:opacity-100 dark:bg-grey-950",children:["This offer is disabled, because ",f.jsx("br",{})," it is tied to an archived tier."]}):null]})})]})}),S=[{key:"cancel-modal",label:"Close",onClick:()=>{n.remove(),e("offers")}},{key:"new-offer",icon:"add",label:"New offer",color:"green",onClick:()=>{b.length===0?tr({type:"info",title:"You must have an active tier to create an offer."}):e("offers/new")}}];return f.jsx(Or,{afterClose:()=>{e("offers")},animate:!1,backDropClick:!1,cancelLabel:"",footer:!1,height:"full",size:"lg",testId:"offers-modal",title:"Offers",topRightContent:f.jsx(_s,{buttons:S}),width:1140,children:f.jsxs("div",{className:"flex h-full flex-col pt-8",children:[f.jsx("header",{children:f.jsx(Gn,{selectedTab:d,tabs:a,topRightContent:d==="active"&&s.length>0||d==="archived"&&o.length>0?f.jsx("div",{className:"pt-1",children:f.jsx(fR,{direction:g,items:[{id:"date-added",label:"Date added",selected:p==="date-added",direction:g},{id:"name",label:"Name",selected:p==="name",direction:g},{id:"redemptions",label:"Redemptions",selected:p==="redemptions",direction:g}],position:"end",triggerButtonProps:{link:!0},onDirectionChange:w=>{c?.([{type:"offers",option:p,direction:w==="asc"?"desc":"asc"}])},onSortChange:w=>{c?.([{type:"offers",option:w,direction:g}])}})}):null,onTabChange:h})}),d==="active"&&s.length===0&&!r?f.jsx(tb,{buttonAction:()=>e("offers/new"),buttonLabel:"Create an offer",description:"Grow your audience with discounts or free trials."}):null,d==="archived"&&o.length===0&&!r?f.jsx(tb,{buttonAction:()=>h("active"),buttonLabel:"Back to active",description:"All archived offers will be shown here."}):null,y]})})},Zj=({offerTitle:n,tier:e,cadence:t,redemptions:r,type:i,amount:s,currency:o,offerId:a,offerCode:l,goToOfferEdit:c})=>{const{discountOffer:u}=VS(i,s,t,o||"USD",e);return f.jsxs("div",{className:"group flex h-full cursor-pointer flex-col justify-between gap-4 break-words rounded-sm border border-transparent bg-grey-100 p-5 transition-all hover:border-grey-100 hover:bg-grey-75 hover:shadow-sm min-[900px]:min-h-[187px] dark:bg-grey-950 dark:hover:border-grey-800",onClick:()=>c(a),children:[f.jsx("span",{className:"text-[1.65rem] font-bold leading-tight tracking-tight text-black dark:text-white",children:n}),f.jsxs("div",{className:"flex flex-col",children:[f.jsx("span",{className:"text-sm font-semibold uppercase",children:u}),f.jsxs("div",{className:"flex gap-1 text-xs",children:[f.jsx("span",{className:"font-semibold",children:e.name}),f.jsx("span",{className:"text-grey-700",children:t==="month"?"monthly":"yearly"})]}),f.jsxs("div",{className:"mt-2 flex items-end justify-between",children:[f.jsxs("a",{className:`text-xs text-grey-700 hover:text-black ${r===0?"pointer-events-none":"hover:underline"}`,"data-test-offer":n,href:HS(a),children:[Sn(r)," ",r===1?"redemption":"redemptions"]}),f.jsx(US,{offerCode:l})]})]})]})},Yj=({keywords:n})=>{const{updateRoute:e}=be(),{settings:t,config:r}=Pe(),{data:{offers:i=[]}={}}=bS(),{data:{tiers:s}={}}=Mu(),o=xS(s||[]),a=i.map(v=>({...v,tier:o.find(b=>b.id===v.tier.id)})).filter(v=>v.status==="active"&&!!v.tier);a.sort((v,b)=>{const y=v.created_at?new Date(v.created_at):new Date(0);return(b.created_at?new Date(b.created_at):new Date(0)).getTime()-y.getTime()});const l=a.slice(0,3),c=()=>{e("offers/edit")},u=()=>{e("offers/new")},d=()=>{e("/tiers")},h=v=>{sessionStorage.setItem("editOfferPageSource","offers"),e(`offers/edit/${v}`)};let p="Manage offers",g=c,m="Learn more";return i.length>0?(p="Manage offers",g=c):o.length===0&&i.length===0?(p="",g=d,m=""):o.length>0&&i.length===0&&(p="Add offer",g=u),f.jsxs(Se,{customButtons:f.jsx(ne,{className:"mt-[-5px]",color:"clear",disabled:!Xn(t,r),label:p,size:"sm",onClick:g}),description:f.jsxs(f.Fragment,{children:["Create discounts & coupons to boost new subscriptions. ",i.length===0&&f.jsx(f.Fragment,{children:f.jsx("a",{className:"text-green",href:"https://ghost.org/help/offers",rel:"noopener noreferrer",target:"_blank",children:m})})]}),keywords:n,navid:"offers",testId:"offers",title:"Offers",children:[l.length>0?f.jsxs("div",{children:[f.jsx("div",{className:"grid grid-cols-1 gap-4 min-[900px]:grid-cols-3",children:l.map(v=>f.jsx(Zj,{amount:v.amount,cadence:v.cadence,currency:v.currency||"USD",goToOfferEdit:h,offerCode:v.code,offerId:v.id,offerTitle:v.name,redemptions:v.redemption_count,tier:v.tier,type:v.type},v.id))}),i.length>3&&f.jsx("div",{className:"mt-4 border-t border-t-grey-200 pt-2",children:f.jsxs("span",{className:"text-xs text-grey-700 dark:text-grey-600",children:[i.length," offers in total"]})})]}):null,o.length===0&&i.length===0?f.jsxs("div",{children:[f.jsx("span",{children:"You must have an active tier to create an offer."})," ",f.jsx(ne,{className:"font-normal",color:"green",label:"Manage tiers",link:!0,linkWithPadding:!0,onClick:d})]}):""]})},Jj=ke(Yj,"Portal settings"),Xj="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAZZSURBVHgBzVpNcFNVFD73PdoitEkc21IGCnHnTHEmyMqyAfyhcQWOI+4Kg5aVAgqOC37a0YUCSgszzrSg1p1lHGEHbmxZNIzjOJSR7nAIrVMDyeIlVARjcjnfS194eXl/SdPSbybJfffe93L+7jnnnvsEVYgQo66uLkykRkgREZIiSEKGBVEY41KKEAkK2d4sSRNCapKExhea4F9J8g6P3JY5eSOVSoxRhRB+JulENzzTzc0dTHDEkcCaQI5RXhnOqrmrWiIR95rtykBzc9sWoYrjPG0LPQ1IGs4q+T43RmwZKEh8JRMuD9CSgOxP3v37oN1IGQOhtrZwnVQucjNCSwvxrMhvtWqjhIGC5Fdcp7kFWS3a29fyp53W8SedTlM6k6FMOkM3JydpnpjIPnqwVWMYHcvMo3NmE6YKsWFDB0W7uqiz82XazB83xGLXaDwWox9GLtD09F9UISLsTJhGrWhORQ3Mmc5tqgAg9tChjzyJdgKYOXHqS/23Ekg2pVSi4HKLDLS0rh4mIbr9PADmcWbgdNWEWwFtnGRG/GtEjvGi3oqWzkAl0o92baezZ/opEAiUjcHWJ29O0h/8mWR7n5qeZqKmdYYNM3NiGvOOHD1Ol6/8TH7Aa+FZrAWdgeZVqw9wVDztddNhNpfDhz4s6zdM4SYTnmEm3ABm8Ix3dr1tO37y1Fe6NrwgJfWl7s306gy0rFo96hWs7IiHpI8eO16xDQNg5OJPP7KnWls25o+JghmpaK5sDAy7TYXZnDzxeUnf0NA52r1nbzWeRAc0NXLhArW2turmZQbMDNq8detPlyeIcH2dOiAK6YIy6jQNkrrEkmo3SQrEHznWS7UCHILVpNIcN7a9+pq7gPLZjQqpwjXiwmzMxGNh1pJ4AGYIiZsRDAbo7EC/6315qo8okpSw0wQEJqtkYJ+1BqTdzeY4ZZE2/r/TxVUrSj6iCCnXO03AwjUD0h9hn70QgBv9YH957vixhYYS8F5E4Q2GbW4P27f67IUi3gC8GWKBGdBAu42nAiRvpBR9B2WDaHR7Wd94Fe6yUgydO1/2P04xg2NXWFEcdleImlZYF9pCwRoDNnd2Os5lDdgzYDUf2KhXlK0VChnrEy10dHQ4TQ0pdvtbuxuqDVjVwqwFuFSHdcAM2AA3WIEcfjGBZDBt0jicih0U8onFWMBmIDZMT015zvPNwGItYDPSmfuec2wZAPfW68VawJXClgErsZlMmp4GgoGmYtvJAmwZgMv0s4AWEoVd3Aa97WIBGscxituNxMavWR5oH84XCvt69hbbLg5Ec1zE49dK3WY02kWLBUg/2hUtXl++csVpqqbkuWJsN4LEzWxGb3QtHgOffdpXovGYQwziyraugbjdIOxuZGSkeO2Vm9cKSOGxhTXgVgATUsQVKcQdp4cNDn1TogXX3LwGgOSthQO3zb0kuqOubGx8gdNSW/vAyl/e0FDMBmGbwWCQfhkdo1rC2Hdb1xmId6sTqSLXr65oalzODOx2moTMEKk1qgfApk0vETLxWI1Si56e9+jc4Ndlrhq7P1Q93CDzuS/U+mXNmros94nbREgc0jGSvEKqPT8m8Izvv/tW36w0sJatxO988y2v6K8l79096LuwhdoNClFBU0kRAW8H/1ElqbZXQRhrDsR75V7sgcZSXNjS4wBvK6+SB/DAba+8XlI5gNp//+1X3X4hSbt6KYD+fT3v6gLAx4l4Q/J+Ekfeyw/rv/hqaVnDJ47yOvmAV2XaqI+CmEAgSC+y5vxEcZjj+1yV8KtNVeSfT/BpzZPyug8zMmMXSxw+e908UwyYDLzN0NB5/zfx4V/y3sweNIsMNLdxiVE6lxidUC0j0BRShEEmvNJU3ZA+2iVnZM+tWtOvkNxPVQCLHJEaLhcL3VqwhWngjAxbUxBfrQeTgsvqiZle49pyyBcO1dX/N8q9S+2E0sBE8u7MRnNHSTaqaXFNVfI72cYmaOlhgk1np7VTtXbMzs5qD/65P7iiqUmwerbQkoAcyD76d08qlUpYR1xfNWjjs7NcXvT6PfyrNRCsOOXsM04k7eDrZQ+dEdYGB7xuscAvexSIFldFLnspmUx6mrIvBqxA4MuLfJiTwAintOs5KobZPYT0Srfb6zYFEuP6txQaz+NANPe6jZA3/n/4cMJ8Cu8HjwHQPddRjKN7RgAAAABJRU5ErkJggg==",Gh=({title:n,favicon:e,featured_image:t,isGhostSite:r})=>{const[i,s]=x.useState(e||t||null),o=()=>{s(null)};if(!i)return f.jsx("div",{className:"relative size-6 shrink-0 rounded-sm"});const a=r?"This is a Ghost site that supports one-click subscribe":"";return f.jsxs("div",{className:"dark:group-hover/table-row:bg-grey-950 relative size-6 shrink-0 rounded-sm",title:a,children:[f.jsx("img",{alt:n,className:"size-6 rounded-sm",src:i,onError:o}),r&&f.jsx("img",{alt:"Ghost Logo",className:"absolute bottom-[-3px] right-[-3px] size-[14px]",src:Xj})]})},Ao="RecommendationResponseType",Qj=Uc({dataType:Ao,path:"/recommendations/",returnData:n=>{const{pages:e}=n;let t=e.flatMap(r=>r.recommendations);return t=t.filter((r,i)=>t.findIndex(({id:s})=>s===r.id)===i),{recommendations:t,meta:e[e.length-1].meta}}}),eB=He({method:"DELETE",path:n=>`/recommendations/${n.id}/`,invalidateQueries:{dataType:Ao}}),tB=He({method:"PUT",path:n=>`/recommendations/${n.id}/`,body:n=>({recommendations:[n]}),invalidateQueries:{dataType:Ao}}),H6=He({method:"POST",path:()=>"/recommendations/",body:({...n})=>({recommendations:[n]}),invalidateQueries:{dataType:Ao}}),V6=He({method:"POST",path:()=>"/recommendations/check/",body:n=>({recommendations:[{url:n.toString()}]})}),nB=Uc({dataType:Ao,path:"/incoming_recommendations/",returnData:n=>{const{pages:e}=n;let t=e.flatMap(r=>r.recommendations);return t=t.filter((r,i)=>t.findIndex(({id:s})=>s===r.id)===i),{recommendations:t,meta:e[e.length-1].meta}}}),rB=({incomingRecommendation:n,stats:e})=>{const{updateRoute:t}=be(),r=x.useMemo(()=>{let a=n.url;try{a=new URL(n.url).hostname.replace(/^www\./,"")}catch{}return e.reduce((l,c)=>c.source===a?l+c.signups:l,0)},[e,n.url]),i=()=>{t({route:`recommendations/add?url=${n.url}`})},s=()=>{window.open(n.url,"_blank")},o=r===1?"free member":"free members";return f.jsxs(cu,{action:!n.recommending_back&&f.jsx("div",{className:"flex items-center justify-end",children:f.jsx(ne,{color:"green",label:"Recommend back",size:"sm",link:!0,onClick:i})}),testId:"incoming-recommendation-list-item",hideActions:!0,children:[f.jsx(Fn,{className:"w-80",onClick:s,children:f.jsx("div",{className:"group flex items-center gap-3 hover:cursor-pointer",children:f.jsx("div",{className:"flex grow flex-col",children:f.jsxs("div",{className:"flex items-center gap-3",children:[f.jsx(Gh,{favicon:n.favicon,featured_image:n.featured_image,title:n.title||n.url}),f.jsx("span",{className:"line-clamp-1 font-medium",children:n.title||n.url})]})})})}),f.jsx(Fn,{className:"hidden w-auto whitespace-nowrap text-left align-middle md:!visible md:!table-cell",padding:!1,onClick:s,children:r===0?f.jsx("span",{className:"text-grey-500 dark:text-grey-900",children:"-"}):f.jsx("div",{className:"mr-2",children:f.jsx("span",{children:Sn(r)})})}),f.jsx(Fn,{className:"hidden w-[1%] whitespace-nowrap align-middle md:!visible md:!table-cell",onClick:s,children:r===0?null:f.jsx("div",{className:"-mt-px text-left",children:f.jsx("span",{className:"-mb-px inline-block min-w-[60px] whitespace-nowrap text-left text-sm lowercase text-grey-700",children:o})})}),n.recommending_back&&f.jsx(Fn,{className:"w-[1%] whitespace-nowrap group-hover/table-row:visible md:invisible",children:f.jsx("div",{className:"mt-1 whitespace-nowrap text-right text-sm text-grey-700",children:"Recommending"})})]})},iB=({incomingRecommendations:n,stats:e,pagination:t,showMore:r,isLoading:i})=>i||n.length?f.jsx(Ni,{isLoading:i,pagination:t,showMore:r,hintSeparator:!0,children:n.map(s=>f.jsx(rB,{incomingRecommendation:s,stats:e},s.id))}):f.jsx(ei,{children:f.jsx("span",{className:"max-w-[40ch] text-center",children:"No one’s recommended you yet. Once they do, you’ll find them here along with how many memberships they’ve driven."})}),nb=function(n,e,t){const r={...n};switch(e){case"title":t?delete r.title:r.title="Title is required";break;case"description":t&&t.length>200?r.description="Description cannot be longer than 200 characters":delete r.description;break;default:const i=e;throw new Error(`Unknown field ${i}`)}return r},zS=function(n){let e={};return e=nb(e,"title",n.title),e=nb(e,"description",n.description),e},sB=({showURL:n,formState:e,updateForm:t,errors:r,clearError:i,setErrors:s})=>{const[o,a]=Y.useState(e?.description?.length||0),l=o>200?"text-red":"text-green",c=Y.useRef(!1);return Y.useEffect(()=>{c.current||(c.current=!0,s(zS(e)))},[e,s]),f.jsxs(MC,{marginBottom:!1,marginTop:!0,children:[f.jsxs("div",{children:[f.jsx(ft,{className:"mb-2 block text-2xs font-semibold uppercase tracking-wider",grey:!0,level:6,children:"Preview"}),f.jsx("div",{className:"-mx-8 flex items-center justify-center overflow-hidden border-y border-grey-100 bg-grey-50 px-7 py-4 dark:border-grey-950 dark:bg-black",children:f.jsx("div",{className:"w-full rounded bg-white py-3 shadow",children:f.jsx("div",{className:"",children:f.jsxs("a",{className:"flex items-center justify-between bg-white px-5 py-3",href:e.url,rel:"noopener noreferrer",target:"_blank",children:[f.jsxs("div",{className:"flex flex-col gap-[2px]",children:[f.jsxs("div",{className:"flex items-start gap-2",children:[f.jsx(Gh,{...e}),f.jsx("span",{className:"text-[1.6rem] font-semibold text-grey-900",children:e.title})]}),e.description&&f.jsx("span",{className:"pl-[31px] text-[1.35rem] leading-snug text-grey-700",children:e.description})]}),e.one_click_subscribe&&f.jsx("span",{className:"flex whitespace-nowrap pl-6 text-md font-semibold text-green",children:"Subscribe"})]})})})}),e.one_click_subscribe&&f.jsx(An,{children:"This is a Ghost site, so your readers can subscribe with just one click"})]}),n&&f.jsx(jI,{disabled:!0,title:"URL",value:e.url,onChange:u=>t(d=>({...d,url:u||""}))}),f.jsx(tt,{autoFocus:!0,error:!!r.title,hint:r.title,maxLength:2e3,title:"Title",value:e.title??"",onChange:u=>{i?.("title"),t(d=>({...d,title:u.target.value}))}}),f.jsx(Sx,{error:!!r.description,hint:f.jsxs(f.Fragment,{children:["Max: ",f.jsx("strong",{children:"200"})," characters. You’ve used ",f.jsx("strong",{className:l,children:o})]}),rows:4,title:"Short description",value:e.description??"",onChange:u=>{i?.("description"),a(u.target.value.length),t(d=>({...d,description:u.target.value}))}})]})},oB=({recommendation:n,animate:e})=>{const t=ir(),{updateRoute:r}=be(),{mutateAsync:i}=tB(),{mutateAsync:s}=eB(),o=vt(),{formState:a,updateForm:l,handleSave:c,errors:u,clearError:d,setErrors:h,okProps:p}=uh({initialState:{...n},savingDelay:500,savedDelay:500,onSave:async m=>{await i(m)},onSaveError:o,onValidate:m=>zS(m)});let g={label:"Delete",link:!0,color:"red",size:"sm",onClick:()=>{t.remove(),Ye.show(Gr,{title:"Delete recommendation",prompt:f.jsx(f.Fragment,{children:f.jsxs("p",{children:["Your recommendation ",f.jsx("strong",{children:n.title})," will no longer be visible to your audience."]})}),okLabel:"Delete",onOk:async m=>{try{await s(n),m?.remove()}catch(v){tr({title:"Failed to delete the recommendation",message:"Please try again later.",type:"error"}),o(v,{withToast:!1})}}})}};return f.jsx(Or,{afterClose:()=>{r("recommendations")},animate:e??!0,backDropClick:!1,buttonsDisabled:p.disabled,cancelLabel:"Close",leftButtonProps:g,okColor:p.color,okLabel:p.label||"Save",size:"sm",testId:"edit-recommendation-modal",title:"Edit recommendation",stickyFooter:!0,onOk:async()=>{W2();try{await c({force:!0})}catch{tr({title:"Something went wrong",type:"error",message:"Please try again later."})}},children:f.jsx(sB,{clearError:d,errors:u,formState:a,setErrors:h,showURL:!0,updateForm:l})})},aB=Ye.create(oB),lB=({recommendation:n})=>{const{route:e}=be(),t=()=>{Ye.show(aB,{pathName:e,animate:!1,recommendation:n})},r=n.one_click_subscribe,i=r&&!!n.count?.subscribers,s=(i?n.count?.subscribers:n.count?.clicks)||0,o=s===1?"signup":"signups",a=s===1?"click":"clicks";return f.jsxs(cu,{className:"group hover:cursor-pointer",testId:"recommendation-list-item",onClick:t,children:[f.jsx(Fn,{className:"w-80",children:f.jsxs("div",{className:"flex items-center gap-3",children:[f.jsx(Gh,{isGhostSite:r,...n}),f.jsx("span",{className:"line-clamp-1 font-medium",children:n.title})]})}),f.jsx(Fn,{className:"hidden w-auto whitespace-nowrap text-left align-middle md:!visible md:!table-cell",children:s===0?f.jsx("span",{className:"text-grey-500 dark:text-grey-900",children:"-"}):f.jsx(f.Fragment,{children:f.jsxs("div",{className:"flex items-center",children:[f.jsx("div",{className:"mr-2",children:f.jsx("span",{children:Sn(s)})}),f.jsxs("div",{className:"text-sm lowercase text-grey-700",children:[f.jsx("span",{children:i?o:a}),f.jsx("span",{className:"invisible group-hover:visible",children:" from you"})]})]})})})]})},cB=({recommendations:n,pagination:e,showMore:t,isLoading:r})=>{const{siteData:i}=Ot(),s=`${i?.url.replace(/\/$/,"")}/#/portal/recommendations`,{updateRoute:o}=be(),a=()=>{o("recommendations/add")},[l,c]=x.useState(!1),u=()=>{navigator.clipboard.writeText(s),c(!0),setTimeout(()=>c(!1),2e3)};return r||n.length?f.jsx(Ni,{hint:f.jsxs("span",{className:"flex items-center gap-1",children:["Shared with new members after signup, or anytime using ",f.jsx(dc,{href:s,target:"_blank",children:"this link"}),f.jsx(th,{containerClassName:"leading-none",content:l?"Copied":"Copy link",size:"sm",children:f.jsx(ne,{color:"clear",hideLabel:!0,icon:l?"check-circle":"duplicate",iconColorClass:l?"text-green w-[14px] h-[14px]":"text-grey-600 hover:opacity-80 w-[14px] h-[14px]",label:l?"Copied":"Copy",unstyled:!0,onClick:u})})]}),isLoading:r,pagination:e,showMore:t,hintSeparator:!0,children:n&&n.map(d=>f.jsx(lB,{recommendation:d},d.id))}):f.jsxs(ei,{children:[f.jsx(ne,{color:"grey",label:"Add first recommendation",size:"sm",onClick:()=>{a()}}),f.jsxs("span",{className:"mt-2 max-w-[40ch] text-center text-xs",children:["Need inspiration? ",f.jsx(dc,{href:"https://ghost.org/explore",target:"_blank",children:"Explore thousands of sites"})]})]})},uB=({keywords:n})=>{const{saveState:e,handleSave:t}=Ot(),{data:{meta:r,recommendations:i}={},isLoading:s,hasNextPage:o,fetchNextPage:a}=Qj({searchParams:{include:"count.clicks,count.subscribers",order:"created_at desc",limit:"5"},getNextPageParams:(I,D)=>{if(!I.meta)return;const{limit:R,page:T,pages:N}=I.meta.pagination;if(T>=N)return;const P=typeof R=="number"&&R<100?1:T+1;return{...D,page:P.toString(),limit:"100"}},keepPreviousData:!0}),l={hasMore:!!o,loadMore:a},{data:{recommendations:c,meta:u}={},isLoading:d,hasNextPage:h,fetchNextPage:p}=nB({searchParams:{limit:"5",order:"created_at desc"},getNextPageParams:(I,D)=>{if(!I.meta)return;const{limit:R,page:T,pages:N}=I.meta.pagination;if(T>=N)return;const P=typeof R=="number"&&R<100?1:T+1;return{...D,page:P.toString(),limit:"100"}},keepPreviousData:!0}),{data:{stats:g}={},isLoading:m}=rC({}),v={hasMore:!!h,loadMore:p},[b,y]=x.useState("your-recommendations"),S=[{id:"your-recommendations",title:"Your recommendations",counter:r?.pagination?.total,contents:f.jsx(cB,{isLoading:s,recommendations:i??[],showMore:l})},{id:"recommending-you",title:"Recommending you",counter:u?.pagination?.total,contents:f.jsx(iB,{incomingRecommendations:c??[],isLoading:d||m,showMore:v,stats:g??[]})}],w=f.jsx(f.Fragment,{children:"Recommend any publication that your audience will find valuable, and find out when others are recommending you."}),{updateRoute:C}=be(),k=()=>{C("recommendations/add")},A=f.jsx(ne,{className:"mt-[-5px] hidden md:!visible md:!block",color:"clear",label:"Add recommendation",size:"sm",onClick:()=>{k()}});return f.jsxs(Se,{beta:!0,customButtons:A,description:w,keywords:n,navid:"recommendations",saveState:e,testId:"recommendations",title:"Recommendations",onSave:t,children:[f.jsx("div",{className:"flex justify-center rounded border border-green px-4 py-2 md:hidden",children:f.jsx(ne,{color:"light-grey",label:"Add recommendation",link:!0,onClick:()=>{k()}})}),f.jsx(Gn,{selectedTab:b,tabs:S,onTabChange:y})]})},dB=ke(uB,"Recommendations"),nn={network:["growth","network","activitypub","blog","fediverse","sharing"],explore:["ghost explore","explore","growth","share","list","listing"],recommendations:["growth","recommendations","recommend","blogroll"],embedSignupForm:["growth","embeddable signup form","embeddable form","embeddable sign up form","embeddable sign up"],offers:["growth","offers","discounts","coupons","promotions"]},fB=()=>{const{config:n,settings:e}=Pe(),t=Xn(e||[],n||{});return f.jsxs(ss,{keywords:Object.values(nn).flat(),title:"Growth",children:[f.jsx(Uj,{keywords:nn.network}),f.jsx(Fj,{keywords:nn.explore}),f.jsx(dB,{keywords:nn.recommendations}),f.jsx(jj,{keywords:nn.embedSignupForm}),t&&f.jsx(Jj,{keywords:nn.offers})]})},rb=[{value:"all",label:"Anyone can sign up",hint:"All visitors will be able to subscribe and sign in"},{value:"paid",label:"Paid-members only",hint:"A paid Stripe subscription is required to sign up"},{value:"invite",label:"Invite-only",hint:"People can sign in but won't be able to sign up"},{value:"none",label:"Nobody",hint:"Disable all member features, including newsletters"}],ib=[{value:"public",label:"Public",hint:"All site visitors to your site, no login required"},{value:"members",label:"Members only",hint:"All logged-in members"},{value:"paid",label:"Paid-members only",hint:"Only logged-in members with an active Stripe subscription"},{value:"tiers",label:"Specific tiers",hint:"Members with any of the selected tiers"}],sb=[{value:"all",label:"All members",hint:"Logged-in members"},{value:"paid",label:"Paid-members only",hint:"Only logged-in members with an active Stripe subscription"},{value:"off",label:"Nobody",hint:"Disable commenting completely"}],hB=({keywords:n})=>{const{localSettings:e,isEditing:t,saveState:r,handleSave:i,handleCancel:s,updateSetting:o,handleEditingChange:a}=Ot(),[l,c,u,d]=Te(e,["members_signup_access","default_content_visibility","default_content_visibility_tiers","comments_enabled"]),{data:{tiers:h}={}}=Mu(),p=[{label:"Active Tiers",options:h?.filter(({active:y})=>y).map(y=>({value:y.id,label:y.name}))||[]},{label:"Archived Tiers",options:h?.filter(({active:y})=>!y).map(y=>({value:y.id,label:y.name}))||[]}],g=JSON.parse(u||"[]"),m=p.flatMap(y=>y.options).filter(y=>g.includes(y.value)),v=y=>{const S=y.map(w=>w.value);o("default_content_visibility_tiers",JSON.stringify(S))},b=f.jsxs(Ze,{className:"gap-y-4",columns:1,children:[f.jsxs("div",{className:"flex flex-col content-center items-center gap-4 md:flex-row",children:[f.jsx("div",{className:"w-full min-w-[160px] max-w-none md:w-2/3 md:max-w-[320px]",children:"Who should be able to subscribe to your site?"}),f.jsx("div",{className:"w-full md:flex-1",children:f.jsx(yr,{options:rb,selectedOption:rb.find(y=>y.value===l),testId:"subscription-access-select",onSelect:y=>{o("members_signup_access",y?.value||null),a(!0)}})})]}),f.jsx(gt,{className:"border-grey-200 dark:border-grey-900"}),f.jsxs("div",{className:"flex flex-col content-center items-center gap-4 md:flex-row",children:[f.jsx("div",{className:"w-full min-w-[160px] max-w-none md:w-2/3 md:max-w-[320px]",children:"Who should have access to new posts?"}),f.jsx("div",{className:"w-full md:flex-1",children:f.jsx(yr,{options:ib,selectedOption:ib.find(y=>y.value===c),testId:"default-post-access-select",onSelect:y=>{o("default_content_visibility",y?.value||null),a(!0)}})})]}),c==="tiers"&&f.jsxs("div",{className:"flex flex-col content-center items-center gap-4 md:flex-row",children:[f.jsx("div",{className:"w-full min-w-[160px] max-w-none md:w-2/3 md:max-w-[320px]",children:"Select specific tiers"}),f.jsx("div",{className:"w-full md:flex-1",children:f.jsx(wx,{color:"black",options:p.filter(y=>y.options.length>0),testId:"tiers-select",values:m,onChange:y=>{v(y),a(!0)}})})]}),f.jsx(gt,{className:"border-grey-200 dark:border-grey-900"}),f.jsxs("div",{className:"flex flex-col content-center items-center gap-4 md:flex-row",children:[f.jsx("div",{className:"w-full min-w-[160px] max-w-none md:w-2/3 md:max-w-[320px]",children:"Who can comment on posts?"}),f.jsx("div",{className:"w-full md:flex-1",children:f.jsx(yr,{options:sb,selectedOption:sb.find(y=>y.value===d),testId:"commenting-select",title:"",onSelect:y=>{o("comments_enabled",y?.value||null),a(!0)}})})]})]});return f.jsx(Se,{description:"Set up default access options for subscription and posts",isEditing:t,keywords:n,navid:"members",saveState:r,testId:"access",title:"Access",hideEditButton:!0,onCancel:s,onEditingChange:a,onSave:i,children:b})},pB=ke(hB,"Access"),mB=({value:n,placeholder:e,nodes:t="DEFAULT_NODES",singleParagraph:r=!1,className:i,onChange:s})=>{const o=x.useCallback(a=>{if(s&&a&&typeof a=="object"){const l=JSON.stringify(a);l!==n&&s(l)}},[s,n]);return f.jsx(TC,{className:i,emojiPicker:!1,initialEditorState:n,nodes:t,placeholder:e,singleParagraph:r,onChange:o,children:()=>null})},Kh="AutomatedEmailsResponseType",gB=Qr({dataType:Kh,path:"/automated_emails/"}),vB=He({method:"POST",path:()=>"/automated_emails/",body:n=>({automated_emails:[n]}),updateQueries:{dataType:Kh,emberUpdateType:"createOrUpdate",update:Vf("automated_emails")}}),WS=He({method:"PUT",path:n=>`/automated_emails/${n.id}/`,body:n=>({automated_emails:[n]}),updateQueries:{dataType:Kh,emberUpdateType:"createOrUpdate",update:Uf("automated_emails")}}),bB=He({method:"POST",path:({id:n})=>`/automated_emails/${n}/test/`,body:({email:n,subject:e,lexical:t})=>({email:n,subject:e,lexical:t})}),xB=({automatedEmailId:n,subject:e,lexical:t,validateForm:r})=>{const{data:i}=pb(),{mutateAsync:s}=bB(),[o,a]=x.useState(i?.email||""),[l,c]=x.useState(""),[u,d]=x.useState("idle"),h=x.useRef(null);x.useEffect(()=>()=>{h.current&&clearTimeout(h.current)},[]),x.useEffect(()=>{i?.email&&a(i.email)},[i?.email]);const p=async()=>{if(c(""),!qh.isEmail(o)){c("Please enter a valid email address");return}if(!r()){c("Please complete the required fields");return}d("sending");try{await s({id:n,email:o,subject:e,lexical:t}),d("sent"),h.current&&clearTimeout(h.current),h.current=setTimeout(()=>d("idle"),2e3)}catch(g){d("idle");let m;g instanceof q2&&g.data&&g.data.errors[0]?m=g.data.errors[0].context||g.data.errors[0].message:g instanceof Error&&(m=g.message),c(m||"Failed to send test email")}};return f.jsxs("div",{className:"absolute right-0 top-full z-10 mt-2 w-[260px] rounded border border-grey-200 bg-white p-4 shadow-lg",children:[f.jsxs("div",{className:"mb-3",children:[f.jsx("label",{className:"mb-2 block text-sm font-semibold",htmlFor:"test-email-input",children:"Send test email"}),f.jsx(tt,{className:"!h-[36px]",id:"test-email-input",placeholder:"you@yoursite.com",value:o,onChange:g=>{a(g.target.value)}})]}),f.jsx(ne,{className:"w-full",color:u==="sent"?"green":"black",disabled:u==="sending",label:u==="sent"?"Sent":u==="sending"?"Sending...":"Send",onClick:p}),l&&f.jsx(An,{className:"mt-2",color:"red",children:l})]})},yB=n=>{if(!n)return!0;try{const t=JSON.parse(n)?.root?.children;return!t||t.length===0||t.length===1&&t[0].type==="paragraph"&&(!t[0].children||t[0].children.length===0)}catch{return!0}},wB=Ye.create(({emailType:n="free",automatedEmail:e})=>{const{updateRoute:t}=be(),{mutateAsync:r}=WS(),[i,s]=x.useState(!1),o=x.useRef(null),a=vt(),{settings:l}=Pe(),[c,u]=Te(l,["title","default_email_address"]),{formState:d,saveState:h,updateForm:p,handleSave:g,okProps:m,errors:v,validate:b}=uh({initialState:{subject:e?.subject||"Welcome",lexical:e?.lexical||""},savingDelay:500,onSave:async C=>{await r({...e,...C})},onSaveError:a,onValidate:C=>{const k={};return C.subject?.trim()||(k.subject="A subject is required"),yB(C.lexical)&&(k.lexical="Email content is required"),k}});x.useEffect(()=>{const C=k=>{o.current&&!o.current.contains(k.target)&&s(!1)};return i&&document.addEventListener("mousedown",C),()=>{document.removeEventListener("mousedown",C)}},[i]);const y=x.useRef(g);x.useEffect(()=>{y.current=g},[g]),x.useEffect(()=>{const C=k=>{(k.metaKey||k.ctrlKey)&&k.key==="s"&&(k.preventDefault(),y.current({fakeWhenUnchanged:!0}))};return window.addEventListener("keydown",C),()=>{window.removeEventListener("keydown",C)}},[]);const S=e?.sender_email||u,w=e?.sender_reply_to||u;return f.jsx(Or,{afterClose:()=>{t("memberemails")},dirty:h==="unsaved",footer:!1,header:!1,testId:"welcome-email-modal",children:f.jsxs("div",{className:"-mx-8 h-[calc(100vh-16vmin)] overflow-y-auto",children:[f.jsxs("div",{className:"sticky top-0 z-10 flex flex-col gap-2 border-b border-grey-100 bg-white p-5",children:[f.jsxs("div",{className:"mb-2 flex items-center justify-between",children:[f.jsxs("h3",{className:"font-semibold",children:[n==="paid"?"Paid":"Free"," members welcome email"]}),f.jsxs("div",{className:"flex items-center gap-2",children:[f.jsxs("div",{ref:o,className:"relative",children:[f.jsx(ne,{className:"border border-grey-200 font-semibold hover:border-grey-300 hover:!bg-white",color:"clear",icon:"send",label:"Test",onClick:()=>s(!i)}),i&&f.jsx(xB,{automatedEmailId:e.id,lexical:d.lexical,subject:d.subject,validateForm:b})]}),f.jsx(ne,{color:m.color,disabled:m.disabled,label:m.label||"Save",onClick:async()=>await g({fakeWhenUnchanged:!0})})]})]}),f.jsxs("div",{className:"flex items-center",children:[f.jsx("div",{className:"w-20 font-semibold",children:"From:"}),f.jsxs("div",{className:"flex grow items-center gap-1",children:[f.jsx("span",{children:e?.sender_name||c}),f.jsx("span",{className:"text-grey-700",children:`<${S}>`})]})]}),w!==S&&f.jsxs("div",{className:"flex items-center py-0.5",children:[f.jsx("div",{className:"w-20 font-semibold",children:"Reply-to:"}),f.jsx("div",{className:"grow text-grey-700",children:w})]}),f.jsxs("div",{className:"flex items-center",children:[f.jsx("div",{className:"w-20 font-semibold",children:"Subject:"}),f.jsx("div",{className:"grow",children:f.jsx(tt,{className:"w-full",error:!!v.subject,hint:v.subject||"",maxLength:300,placeholder:`Welcome to ${c}`,value:d.subject,onChange:C=>p(k=>({...k,subject:C.target.value}))})})]})]}),f.jsxs("div",{className:"bg-grey-50 p-6",children:[f.jsx("div",{className:`mx-auto max-w-[600px] rounded border bg-white p-8 text-[1.6rem] leading-[1.6] tracking-[-0.01em] shadow-sm [&_a]:text-black [&_a]:underline [&_p]:mb-4 [&_strong]:font-semibold ${v.lexical?"border-red":"border-grey-200"}`,children:f.jsx(mB,{nodes:"DEFAULT_NODES",placeholder:"Write your welcome email content...",singleParagraph:!1,value:d.lexical,onChange:C=>p(k=>({...k,lexical:C}))},e?.id||"new")}),v.lexical&&f.jsx(An,{className:"ml-8 mr-auto mt-2 max-w-[600px]",color:"red",children:v.lexical})]})]})})}),SB=`{"root":{"children":[{"children":[{"detail":0,"format":0,"mode":"normal","style":"","text":"Welcome! Thanks for subscribing — it's great to have you here.","type":"extended-text","version":1}],"direction":"ltr","format":"","indent":0,"type":"paragraph","version":1},{"children":[{"detail":0,"format":0,"mode":"normal","style":"","text":"You'll now receive new posts straight to your inbox. You can also log in any time to read the ","type":"extended-text","version":1},{"children":[{"detail":0,"format":0,"mode":"normal","style":"","text":"full archive","type":"extended-text","version":1}],"direction":"ltr","format":"","indent":0,"type":"link","version":1,"rel":"noreferrer","target":null,"title":null,"url":"__GHOST_URL__/"},{"detail":0,"format":0,"mode":"normal","style":"","text":" or catch up on new posts as they go live.","type":"extended-text","version":1}],"direction":"ltr","format":"","indent":0,"type":"paragraph","version":1},{"children":[{"detail":0,"format":0,"mode":"normal","style":"","text":"A little housekeeping: If this email landed in spam or promotions, try moving it to your primary inbox and adding this address to your contacts. Small signals like that help your inbox recognize that these messages matter to you.","type":"extended-text","version":1}],"direction":"ltr","format":"","indent":0,"type":"paragraph","version":1},{"children":[{"detail":0,"format":0,"mode":"normal","style":"","text":"Have questions or just want to say hi? Feel free to reply directly to this email or any newsletter in the future.","type":"extended-text","version":1}],"direction":"ltr","format":"","indent":0,"type":"paragraph","version":1},{"children":[],"direction":"ltr","format":"","indent":0,"type":"paragraph","version":1}],"direction":"ltr","format":"","indent":0,"type":"root","version":1}}`,CB=`{"root":{"children":[{"children":[{"detail":0,"format":0,"mode":"normal","style":"","text":"Welcome, and thank you for your support — it means a lot.","type":"extended-text","version":1}],"direction":"ltr","format":"","indent":0,"type":"paragraph","version":1},{"children":[{"detail":0,"format":0,"mode":"normal","style":"","text":"As a paid member, you now have full access to everything: the complete archive, and any paid-only content going forward. New posts will land straight to your inbox, and you can log in any time to ","type":"extended-text","version":1},{"children":[{"detail":0,"format":0,"mode":"normal","style":"","text":"catch up","type":"extended-text","version":1}],"direction":"ltr","format":"","indent":0,"type":"link","version":1,"rel":"noreferrer","target":null,"title":null,"url":"__GHOST_URL__/"},{"detail":0,"format":0,"mode":"normal","style":"","text":" on anything you've missed.","type":"extended-text","version":1}],"direction":"ltr","format":"","indent":0,"type":"paragraph","version":1},{"children":[{"detail":0,"format":0,"mode":"normal","style":"","text":"A little housekeeping: If this email landed in spam or promotions, try moving it to your primary inbox and adding this address to your contacts. Small signals like that help your inbox recognize that these messages matter to you.","type":"extended-text","version":1}],"direction":"ltr","format":"","indent":0,"type":"paragraph","version":1},{"children":[{"detail":0,"format":0,"mode":"normal","style":"","text":"Have questions or just want to say hi? Feel free to reply directly to this email or any newsletter in the future.","type":"extended-text","version":1}],"direction":"ltr","format":"","indent":0,"type":"paragraph","version":1}],"direction":"ltr","format":"","indent":0,"type":"root","version":1}}`,ob=({automatedEmail:n,emailType:e})=>{const{settings:t}=Pe(),[r,i,s]=Te(t,["accent_color","icon","title"]),o=r||"#F6414E",a=n.sender_name||s||"Your Site";return f.jsxs("div",{className:"mb-5 flex items-center justify-between gap-3 rounded-lg border border-grey-100 bg-grey-50 p-5",children:[f.jsxs("div",{className:"flex items-start gap-3",children:[i?f.jsx("div",{className:"size-10 min-h-10 min-w-10 rounded-sm bg-cover bg-center",style:{backgroundImage:`url(${i})`}}):f.jsx("div",{className:"flex aspect-square size-10 items-center justify-center overflow-hidden rounded-full p-1 text-white",style:{backgroundColor:o},children:f.jsx("img",{className:"h-auto w-8",src:FS})}),f.jsxs("div",{children:[f.jsx("div",{className:"font-semibold",children:a}),f.jsx("div",{className:"text-sm",children:n.subject})]})]}),f.jsx(ne,{className:"rounded-md border border-grey-200 font-semibold hover:shadow-xs",color:"white","data-testid":`${e}-welcome-email-edit-button`,icon:"pen",label:"Edit",onClick:()=>{Ye.show(wB,{emailType:e,automatedEmail:n})}})]})},kB=({keywords:n})=>{const{settings:e,config:t}=Pe(),[r]=Te(e,["title"]),{data:i,isLoading:s}=gB(),{mutateAsync:o}=vB(),{mutateAsync:a}=WS(),l=vt(),c=i?.automated_emails||[],u=c.find(m=>m.slug==="member-welcome-email-free"),d=c.find(m=>m.slug==="member-welcome-email-paid"),h=u?.status==="active",p=d?.status==="active",g=async m=>{const v=`member-welcome-email-${m}`,b=c.find(S=>S.slug===v),y=m==="free"?`Welcome to ${r||"our site"}`:"Welcome to your paid subscription";try{b?b.status==="active"?await a({...b,status:"inactive"}):await a({...b,status:"active"}):await o({name:m==="free"?"Welcome Email (Free)":"Welcome Email (Paid)",slug:v,subject:y,status:"active",lexical:m==="free"?SB:CB})}catch(S){l(S)}};return f.jsx(Se,{description:"Create and manage automated emails that are sent to your members.",keywords:n,navid:"memberemails",testId:"memberemails",title:"Welcome emails",children:f.jsxs(Ze,{className:"!gap-y-0",columns:1,children:[f.jsx(gt,{}),f.jsx(Kt,{checked:!!h,containerClasses:"items-center",direction:"rtl",disabled:s,gap:"gap-0",hint:"Email new free members receive when they join your site.",label:"Free members welcome email",labelClasses:"py-4 w-full",onChange:()=>g("free")},`free-${s?"loading":u?.status??"none"}`),u&&h&&f.jsx(ob,{automatedEmail:u,emailType:"free"}),Xn(e,t)&&f.jsxs(f.Fragment,{children:[f.jsx(gt,{}),f.jsx(Kt,{checked:!!p,containerClasses:"items-center",direction:"rtl",disabled:s,gap:"gap-0",hint:"Sent to new paid members as soon as they start their subscription.",label:"Paid members welcome email",labelClasses:"py-4 w-full",onChange:()=>g("paid")},`paid-${s?"loading":d?.status??"none"}`),d&&p&&f.jsx(ob,{automatedEmail:d,emailType:"paid"})]})]})})},AB=ke(kB,"MemberEmails"),MB="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAcCAYAAAB2+A+pAAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAATkSURBVHgBrVZrTJtVGD5fWy6FDcZgnR3DsA1QRDaRoICBsEFA4IdEYkwwLEGJCYIJEDISwATBGF1C0B8g/iDETDeSaYgaNQJGMXJTQCVcisXEgm0Kxa3tWqR3n7f9PlIZHd3omzx9+53bc97Lec/h2MHC8XC2t7eLVCpVtEQikQUFBTmnp6dVs7Oz23y/iwVQJPTT19eXpdfrf3C5XIvADaAdaAM+2djY+HFgYCCPHy/2d2HuAFK7yWT6NSwsTAyST0UikRFtNkAHbAIaQAm8ZDAY3sjPz0+DByz4drIDPCDy0S6ura2NBJkrNDS0m+O4MqfTOYr2o8BJu93+pM1ma7VardfxveRwOErDw8OvzczM6BUKRSZPKmL3KeKampqz4FQSL1ALoq8mJiZqq6urT+fl5Um8F01JSQkeHR1Nwrgq4DNgS6vVtnp5zS+RlJeXJ2LyT0AM8F1PT0823yck2V7ZbW9oaJAi+a7Spo1G4zeCIewgS6uqqk5gkgqToqG/9JrIMf/E7Qm4u5XmA993dnY+wnxv2jMBA+3b29unoT+qqKg4yx4gTsIcnU73MUJ0ndZaXl5+nu+7i5xbXFx8E4NeweCKzc3N99jhRFRWVnYM603S8UPytYyPjxfuR0zWrgDHgZuIawLz372+RAwjSrHe7yD+ALqrsrIynHl7sbm5+QI63gIuAZ+zAMnCwsKzWO8FijXIW+fm5l4X+oidS0hIeBR6DJAjxlssQDIyMqKF+hrQofgkpqWlZaanpwcJxK7S0tJL0EeA26hSZlSgaBYAWV1dvQ0lB/oBKWDLyclxh9Ht75iYGDtUOmAGVjIyMh5mARC49g4UxXUCOAGoCwoKsqBdbmKUxH+gonlig9lsPsICIJOTk1Tbo5jHs39SW3JyciLjG+gCoMZ1gM7bVm5u7hl2+KwmseP2orJ5HJgDzshksjCBGAnn+It5bhS6WbIQ8ydYgO7XtbU1IiayReCYWCy2CsRMrVaT/gKgjAuXSqXnWlpaKCn8vl99SWpqaizzJBaF0w4jzQIx19/fr4Y2ME8i/IKDv9rW1kYbcRyCXNTY2BiHa9XCr0vJdWd9ff3v/41CQj1nsVgeQ7ypyjTgrq2HnuaP1v2Su8fDum6+KCUDHxLq6upOMa/8EeFSiELH0xhcB/0qPW148m8HBwcvsHvcMF7iHkNFApcEERXRmsB5PBx+Q7wb9psk6urqiqMSt7Oz8xr0ZeAKJrwN3T8/P1/ibc0+hKykpOShsbGxFzH+Hcx7hieNxv+fEb6bAs/uBG/ywsJC6dDQ0BVUMHLVH8jCo3j2PIW+Dbws9LGxse/SwOLi4hD0xWRmZsrxKjkFK2WI5y10rfFr0fldAm4AJhh1uampifqd+xELO3L29vaexxPoZZAaUWdTmeetdQvfscD7IKGzTw8/E2DnPbEDBANpABWPXljbrdFoxuLj4+fucpEPcddx3KMXs7OznSB14j19EW20Caq3/wIKYAXQ8t+UuSk8MZXJq0qlMjUpKWlEMMgf4l3rQSzr6OjIRYEXBwcHWxGCKLiZrKPzeRI4x/8nK+m5ew14fHh4WFNUVKTYS+oP8d5xLuSADJUtDgtGyuXykIiICOqjoqCnfngmcmpqylhfX7+EN7ZdmMcCIHs3y9GTF3d6CP/0Fcbc06j/APDXjC9ayXo+AAAAAElFTkSuQmCC",IB="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAKKSURBVHgB7ZmLcdswDIZ/9zpAuoFG8AZ1J0g2qEboBnYnqDewPUHSCeJOkHQCaQNlA4QMoZiGqFgkRUq583eHsySLDxAgCFLAlWlZYCSIaKV+bpUUSpb8+IXlr5KHxWJRY27ojit5pGHslBSYC6ozfyiMNabGMeqNkq2SOz3KLEslpZL7WSnhGHndwZsLZbRClSj3C7nhEbXZeJbfi/JL5ESM4hYBqHJPVh2PyIUY/eqS23xQz1JYoUAO6HwyRvkvnQeBPHOBTKQZxXeFNR+QGu0uts0RCZmo9O6OCOSLx7u2v9eYCT4KvFjXQZNXMEYdwxVQiVibmL01PkLkKKzrGoH4WEDzbF3fIY5b6/o/cqDDnTXxnhCImMCaFXLAkaiJjd9k0uroCBSEanAjRu+nZ/m1KB/riv7QeS6juZgas/VkFhuUS0VD7tRY35cyOvG7a+F6muA5NArcMWmJloYVanr+32MkfMOojV4T+nIYvUgVcC9WutwRU9LjEr5USkpE4nWsQsa/73E6NmlprfEPZrGz046C3/8O9+K3V/I7+ZELmU1IZyKSmbiD8hoy86YkdwAokApH5/V18CaEFdkKJdJsarixRozWKBtxtkbDUjj+X7OVw5Qjs/hUKU3Nbdz0PH9vFyHQ+bLfEOU7FqTYHRt1M8YSGRlDgZ1VQb6zm1P74QpQN21eITNDFfja83yFUxpQq0XmiISQyWbLD14pHEroxfLQV+HO0j7poROJ4xpPqr5kzo7zz0gIHxYcEcbBmQtp1azbb9xIUqgbovV9GzxqJT9kGWf+JEzaYCKGTmKXC9mrYvKRj6WjAJvlyLcHfFZo4q+JROMc/k4Knb4hbPBZmdoTrlyZO6//Zfm9iMHs2AAAAABJRU5ErkJggg==",Ad=({title:n,color:e,price:t})=>f.jsxs("div",{className:"rounded-lg bg-grey-100/70 px-3 pb-3 pt-1.5",children:[f.jsx("div",{className:"font-space-grotesk text-[1.5rem] font-bold",style:{color:e},children:n}),f.jsx("div",{className:"-mt-1 font-space-grotesk text-[1.7rem] font-bold",children:t}),f.jsxs("div",{className:"mt-5 flex flex-col gap-1.5",children:[f.jsx("div",{className:"h-1.5 w-[100%] bg-grey-300/60"}),f.jsx("div",{className:"h-1.5 w-[70%] bg-grey-300/60"}),f.jsx("div",{className:"h-1.5 w-[90%] bg-grey-300/60"})]})]}),EB=({keywords:n})=>{const{updateRoute:e}=be(),{settings:t}=Pe(),[r,i,s]=Te(t,["accent_color","icon","members_signup_access"]),o=()=>{e("portal/edit")},a=r||"#F6414E";return f.jsx(Se,{customButtons:f.jsx(ne,{className:"mt-[-5px]",color:"clear",disabled:s==="none",label:"Customize",size:"sm",onClick:o}),description:"Customize members modal signup flow",keywords:n,navid:"portal",testId:"portal",title:"Signup portal",children:f.jsxs("div",{className:"relative isolate -mx-5 -mb-5 hidden flex-col items-center justify-end overflow-hidden rounded-b-xl bg-grey-50 px-5 pt-6 text-black sm:!visible sm:!flex md:-mx-7 md:-mb-7",children:[f.jsx("div",{className:"absolute bottom-6 right-6 flex size-12 items-center justify-center rounded-full text-white shadow-lg",style:{backgroundColor:a},children:f.jsx("img",{className:"size-6",src:IB})}),f.jsxs("div",{className:"grid w-full max-w-[440px] grid-cols-3 gap-5 rounded-t-xl bg-white px-9 py-6 shadow-xl",children:[f.jsxs("div",{className:"col-span-3 mb-1 flex flex-col items-center justify-center",children:[i?f.jsx("div",{className:"size-6 rounded-sm bg-cover bg-center",style:{backgroundImage:`url(${i})`}}):f.jsx("div",{className:"flex aspect-square items-center justify-center overflow-hidden rounded-full p-1 text-white",style:{backgroundColor:a},children:f.jsx("img",{className:"h-auto w-5",src:MB})}),f.jsx("div",{className:"mt-1.5 font-space-grotesk text-lg font-bold",children:"Sign up"}),f.jsx("div",{className:"mt-1.5 flex h-6 w-1/2 items-center rounded border border-grey-200 p-2 text-xs text-grey-700",children:"jamie@example.com"})]}),f.jsx(Ad,{color:a,price:"$0",title:"Free"}),f.jsx(Ad,{color:a,price:"$5",title:"Silver"}),f.jsx(Ad,{color:a,price:"$10",title:"Gold"})]})]})})},DB=ke(EB,"Portal settings"),RB=({keywords:n})=>{const{localSettings:e,isEditing:t,saveState:r,handleSave:i,handleCancel:s,updateSetting:o,errors:a,clearError:l,handleEditingChange:c}=Ot({onValidate:()=>({})}),[u]=Te(e,["blocked_email_domains"]),d=JSON.parse(u||"[]"),[h,p]=Y.useState(d.join(`
|
|
33
33
|
`)),g=v=>{const b=v.target.value;p(b);const y=b.split(/[\s,]+/).map(S=>S.trim().toLowerCase().split("@").pop()).filter(S=>S&&S.includes("."));o("blocked_email_domains",JSON.stringify(y)),t||c(!0)},m=f.jsxs(f.Fragment,{children:["Prevent unwanted signups by blocking email domains. Add one domain per line, e.g., ",f.jsx("code",{children:"spam.xyz"})," to block signups from email addresses like ",f.jsx("code",{children:"hello@spam.xyz"}),"."]});return f.jsx(Se,{description:"Protect your member signups from spam",isEditing:t,keywords:n,navid:"spam-filters",saveState:r,testId:"spam-filters",title:"Spam filters",hideEditButton:!0,onCancel:s,onEditingChange:c,onSave:i,children:f.jsx(Ze,{columns:1,children:f.jsx(Sx,{className:"h-[86px]",error:!!a.blockedEmailDomains,hint:a.blockedEmailDomains||m,placeholder:`spam.xyz
|
|
34
|
-
junk.com`,resize:"vertical",title:"Blocked email domains",value:h,onChange:g,onKeyDown:()=>l("spam-filters")})})})},OB=ke(RB,"Spam Filters"),qS=({size:n="md",trialDays:e})=>{if(!e)return null;const t=_(n==="sm"?"px-1.5 py-0.5 text-xs":"px-2.5 py-1.5 text-sm","relative -mr-1 -mt-1 whitespace-nowrap rounded-full font-semibold leading-none tracking-wide text-grey-900");return f.jsxs("span",{className:t,children:[f.jsx("span",{className:"absolute inset-0 block rounded-full bg-accent opacity-20 dark:bg-pink"}),f.jsxs("span",{className:"dark:text-pink",children:[e," days free"]})]})},TB=({benefits:n})=>n?.length?f.jsx(f.Fragment,{children:n.map(e=>f.jsx("div",{className:"mt-4 w-full text-md leading-snug text-grey-900",children:f.jsxs("div",{className:"mb-2.5 flex items-start",children:[f.jsx(ve,{className:"mr-[10px] mt-[3px] !h-3.5 !w-3.5 min-w-[14px] overflow-visible !stroke-[3px]",name:"check"}),f.jsx("div",{children:e})]})},e))}):f.jsx("div",{className:"mt-4 w-full text-md leading-snug text-grey-900 opacity-30",children:f.jsxs("div",{className:"mb-2.5 flex items-start",children:[f.jsx(ve,{className:"mr-[10px] mt-[3px] !h-3.5 !w-3.5 min-w-[14px] overflow-visible !stroke-[3px]",name:"check"}),f.jsx("div",{children:"Expert analysis"})]})}),NB=({discount:n})=>n?f.jsxs("span",{className:"mt-1 text-sm font-semibold leading-none text-pink",children:[n,"% discount"]}):null,U6=({tier:n,isFreeTier:e})=>{const[t,r]=x.useState(!1),i=n?.name||"",s=n?.description||"",o=parseFloat(n?.trial_days||"0"),a=n?.currency||"USD",l=to(a),c=n?.benefits||[],u=e?0:500,d=e?0:5e3,h=$i(n?.monthly_price??u),p=$i(n?.yearly_price??d),g=n?.monthly_price&&n?.yearly_price?Math.ceil((h*12-p)/(h*12)*100):0;return f.jsxs("div",{"data-testid":"tier-preview",children:[f.jsxs("div",{className:"flex items-baseline justify-between",children:[f.jsx(ft,{className:"pb-2",level:6,grey:!0,children:e?"Free membership preview":"Tier preview"}),!e&&f.jsxs("div",{className:"flex gap-1",children:[f.jsx(ne,{className:`${t===!0?"text-grey-500":"text-grey-900 dark:text-white"}`,label:"Monthly",link:!0,unstyled:!0,onClick:()=>r(!1)}),f.jsx(ne,{className:`ml-2 ${t===!0?"text-grey-900 dark:text-white":"text-grey-500"}`,label:"Yearly",link:!0,unstyled:!0,onClick:()=>r(!0)})]})]}),f.jsx("div",{className:"rounded-sm border border-grey-200 bg-white dark:border-transparent",children:f.jsxs("div",{className:"flex-column relative flex min-h-[200px] w-full max-w-[420px] scale-90 items-start justify-stretch rounded bg-white p-4",children:[f.jsxs("div",{className:"min-h-[56px] w-full",children:[f.jsx("h4",{className:`-mt-1 mb-0 w-full break-words text-lg font-semibold leading-tight text-accent ${!i&&"opacity-30"}`,children:i||(e?"Free":"Bronze")}),f.jsxs("div",{className:"mt-4 flex w-full flex-row flex-wrap items-end justify-between gap-x-1 gap-y-[10px]",children:[f.jsxs("div",{className:`flex flex-wrap text-black ${(t&&n?.yearly_price===void 0||!t&&n?.monthly_price===void 0)&&!e?"opacity-30":""}`,children:[f.jsx("span",{className:"self-start text-[2.7rem] font-bold uppercase leading-[1.115]",children:l}),f.jsx("span",{className:"break-all text-[3.4rem] font-bold leading-none tracking-tight",children:Sn(t?p:h)}),!e&&f.jsxs("span",{className:"ml-1 self-end text-[1.5rem] leading-snug text-grey-800",children:["/",t?"year":"month"]})]}),f.jsx(qS,{trialDays:o})]}),t&&g>0&&f.jsx(NB,{discount:g})]}),f.jsx("div",{className:"flex-column flex w-full flex-1",children:f.jsxs("div",{className:"flex-1",children:[f.jsx("div",{className:`mt-4 w-full text-[1.55rem] font-semibold leading-snug text-grey-900 ${!s&&"opacity-30"}`,children:s||(e?"Free preview":"Full access to premium content")}),f.jsx(TB,{benefits:c})]})})]})})]})},GS=_("group/tiercard flex cursor-pointer flex-col items-start justify-between gap-4 self-stretch rounded-sm border border-transparent bg-grey-100 p-4 transition-all hover:border-grey-100 hover:bg-grey-75 hover:shadow-sm min-[900px]:min-h-[200px] dark:bg-grey-950 dark:hover:border-grey-800"),PB=({tier:n})=>{const{updateRoute:e}=be(),t=n?.currency||"USD",r=to(t);return f.jsx("div",{className:GS,"data-testid":"tier-card","data-tier":n.slug,children:f.jsxs("div",{className:"w-full grow",onClick:()=>{e({route:`tiers/${n.id}`})},children:[f.jsx("div",{className:"text-[1.65rem] font-bold leading-tight tracking-tight text-black dark:text-white",children:n.name}),f.jsxs("div",{className:"mt-2 flex items-baseline",children:[f.jsx("span",{className:"ml-1 translate-y-[-3px] text-md font-bold uppercase",children:r}),f.jsx("span",{className:"text-xl font-bold tracking-tighter",children:Sn($i(n.monthly_price||0))}),n.monthly_price&&n.monthly_price>0&&f.jsx("span",{className:"text-sm text-grey-700",children:"/month"})]}),n.trial_days?f.jsx("div",{className:"mb-4 mt-1",children:f.jsx(qS,{size:"sm",trialDays:n.trial_days})}):"",f.jsx("div",{className:"mt-2 line-clamp-2 text-[1.4rem] font-medium",children:n.description||f.jsx("span",{className:"opacity-30",children:"No description"})})]})})},Md=({tab:n,tiers:e})=>{const{updateRoute:t}=be(),r=()=>{t("tiers/add")};return e.length?f.jsxs("div",{className:"mt-4 grid grid-cols-1 gap-4 min-[900px]:grid-cols-3",children:[e.map(i=>f.jsx(PB,{tier:i})),n==="active-tiers"&&f.jsx("button",{className:`${GS} group cursor-pointer`,type:"button",onClick:()=>{r()},children:f.jsx("div",{className:"flex size-full flex-col items-center justify-center",children:f.jsxs("div",{className:"flex flex-col items-center justify-center",children:[f.jsx("div",{className:"translate-y-[15px] transition-all group-hover:translate-y-0",children:f.jsx(ve,{colorClass:"text-green",name:"add"})}),f.jsx("div",{className:"mt-2 translate-y-[-10px] text-sm font-semibold text-green opacity-0 transition-all group-hover:translate-y-0 group-hover:opacity-100",children:"Add tier"})]})})})]}):f.jsxs(ei,{icon:"money-bags",children:["No ",n==="active-tiers"?"active":"archived"," tiers found."]})},ab=({className:n,onClick:e})=>(n=_("group flex shrink-0 items-center justify-center whitespace-nowrap rounded border border-grey-300 px-3 py-1.5 text-sm font-semibold text-grey-900 transition-all hover:border-grey-500 dark:border-grey-900 dark:text-white",n),f.jsxs("button",{className:n,"data-testid":"stripe-connected",type:"button",onClick:e,children:[f.jsx("span",{className:"inline-flex size-2 rounded-full bg-green transition-all group-hover:bg-[#625BF6]"}),f.jsx("span",{className:"ml-2",children:"Connected to Stripe"})]})),LB=({keywords:n})=>{const[e,t]=x.useState("active-tiers"),{settings:r,config:i}=Pe(),{data:{tiers:s,meta:o,isEnd:a}={},fetchNextPage:l}=Mu(),c=y5(s||[]),u=w5(s||[]),{updateRoute:d}=be(),h=Co(),p=async()=>{if(h?.isDisabled("limitStripeConnect")&&!Xn(r,i))try{await h.errorIfWouldGoOverLimit("limitStripeConnect")}catch(b){if(b instanceof So){Ye.show(jx,{prompt:b.message||"Your current plan doesn't support Stripe Connect.",onOk:()=>d({route:"/pro",isExternal:!0})});return}}d("stripe-connect")},g=b=>[...b].sort((y,S)=>(y.monthly_price??0)-(S.monthly_price??0)),m=[{id:"active-tiers",title:"Active",contents:f.jsx(Md,{tab:"active-tiers",tiers:g(c)})},{id:"archived-tiers",title:"Archived",contents:f.jsx(Md,{tab:"archive-tiers",tiers:g(u)})}];let v;return Xn(r,i)?v=f.jsx(Gn,{selectedTab:e,tabs:m,onTabChange:t}):v=f.jsx(Md,{tab:"free-tier",tiers:c.filter(b=>b.type==="free")}),f.jsxs(Se,{customButtons:Xn(r,i)?f.jsx(ab,{className:"hidden tablet:!visible tablet:!block",onClick:p}):f.jsx(Fp,{className:"hidden tablet:!visible tablet:!block",onClick:p}),description:"Set prices and paid member sign up settings",keywords:n,navid:"tiers",testId:"tiers",title:"Tiers",children:[f.jsx("div",{className:"w-full tablet:hidden",children:Xn(r,i)?f.jsx(ab,{className:"w-full",onClick:p}):f.jsx(Fp,{onClick:p})}),v,a===!1&&f.jsx(ne,{label:`Load more (showing ${s?.length||0}/${o?.pagination.total||0} tiers)`,link:!0,onClick:()=>l()})]})},_B=ke(LB,"Tiers"),jB=1e4,BB=({keywords:n})=>{const{localSettings:e,siteData:t,updateSetting:r,saveState:i,handleSave:s,handleCancel:o,focusRef:a,errors:l,validate:c,clearError:u,handleEditingChange:d}=Ot({onValidate:()=>({donationsSuggestedAmount:qj(g,h,{maxAmount:jB})})}),[h="USD",p="500"]=Te(e,["donations_currency","donations_suggested_amount"]),g=parseInt(p),m=`${t?.url.replace(/\/$/,"")}/#/portal/support`;x.useEffect(()=>{c()},[h]);const[v,b]=x.useState(!1),[y,S]=x.useState(!1);x.useEffect(()=>{e.some(R=>R.dirty)&&!y&&(S(!0),d(!0))},[e,y,d]);const w=()=>{navigator.clipboard.writeText(m),b(!0),setTimeout(()=>b(!1),2e3)},C=()=>{js(i==="unsaved",()=>window.open(m,"_blank"))},k=(D,R)=>{r(D,R)},A=()=>{o(),S(!1)},I=async()=>{await s()&&S(!1)};return f.jsxs(Se,{description:"Give your audience a simple way to support your work with one-time payments.",isEditing:y,keywords:n,navid:"tips-and-donations",saveState:i,testId:"tips-and-donations",title:"Tips & donations",hideEditButton:!0,onCancel:A,onEditingChange:S,onSave:I,children:[f.jsxs(Ze,{columns:1,children:[f.jsx("div",{className:"flex max-w-[180px] items-end gap-[.6rem]",children:f.jsx(AC,{error:!!l.donationsSuggestedAmount,hint:l.donationsSuggestedAmount,inputRef:a,placeholder:"5",rightPlaceholder:f.jsx(yr,{border:!1,clearBg:!0,containerClassName:"w-14",fullWidth:!1,options:eb(),selectedOption:eb().flatMap(D=>D.options).find(D=>D.value===h),title:"Currency",hideTitle:!0,isSearchable:!0,onSelect:D=>k("donations_currency",D?.value||"USD")}),title:"Suggested amount",valueInCents:parseInt(p),onBlur:c,onChange:D=>k("donations_suggested_amount",D.toString()),onKeyDown:()=>u("donationsSuggestedAmount")},p)}),f.jsxs("div",{className:"w-100",children:[f.jsx("div",{className:"flex items-center gap-2",children:f.jsx(ft,{level:6,children:"Shareable link"})}),f.jsxs("div",{className:"w-100 group relative mt-0 flex items-center justify-between overflow-hidden border-b border-transparent pb-2 pt-1 hover:border-grey-300 dark:hover:border-grey-600",children:[f.jsx("span",{"data-testid":"donate-url",children:m}),f.jsxs("div",{className:"invisible flex gap-1 bg-white pl-1 group-hover:visible dark:bg-black",children:[f.jsx(ne,{color:"clear","data-testid":"preview-shareable-link",label:"Preview",size:"sm",onClick:C}),f.jsx(ne,{color:"light-grey","data-testid":"copy-shareable-link",label:v?"Copied":"Copy link",size:"sm",onClick:w})]})]})]})]}),f.jsxs("div",{className:"items-center-mt-1 flex text-sm",children:["All tips and donations are subject to Stripe's ",f.jsx("a",{className:"ml-1 text-green",href:"https://ghost.org/help/tips-donations/",rel:"noopener noreferrer",target:"_blank",children:" tipping policy"}),"."]})]})},$B=ke(BB,"Tips & donations"),KS=n=>{const{config:e}=Pe();return e.labs[n]||!1},qt={access:["membership","default","access","subscription","post","membership","comments","commenting","signup","sign up","spam","filters","prevention","prevent","block","domains","email"],tiers:["membership","tiers","payment","paid","stripe"],portal:["membership","portal","signup","sign up","signin","sign in","login","account","membership","support","email","address","support email address","support address"],memberEmails:["membership","signup","welcome email","email","new user","new member","account"],tips:["growth","tips","donations","one time","payment"]},FB=()=>{const{config:n,settings:e}=Pe(),[t]=Te(e,["donations_enabled"]),r=Xn(e||[],n||{}),i=KS("welcomeEmails");return f.jsxs(ss,{keywords:Object.values(qt).flat(),title:"Membership",children:[f.jsx(pB,{keywords:qt.access}),f.jsx(OB,{keywords:qt.access}),f.jsx(_B,{keywords:qt.tiers}),f.jsx(DB,{keywords:qt.portal}),i&&f.jsx(AB,{keywords:qt.memberEmails}),t&&r&&f.jsx($B,{keywords:qt.tips})]})},HB=({keywords:n})=>{const{updateRoute:e}=be(),t=()=>{e("announcement-bar/edit")};return f.jsx(Se,{customButtons:f.jsx(ne,{className:"mt-[-5px]",color:"clear",label:"Customize",size:"sm",onClick:t}),description:"Highlight important updates or offers",keywords:n,navid:"announcement-bar",testId:"announcement-bar",title:"Announcement bar"})},VB=ke(HB,"Announcement bar"),z6=null,Zh="CustomThemeSettingsResponseType",UB=Zh,W6=Qr({dataType:Zh,path:"/custom_theme_settings/"}),q6=He({method:"PUT",path:()=>"/custom_theme_settings/",body:n=>({custom_theme_settings:n}),updateQueries:{emberUpdateType:"skip",dataType:Zh,update:n=>n}}),os="ThemesResponseType",zB=Qr({dataType:os,path:"/themes/"}),G6=Qr({dataType:os,path:"/themes/active/"}),K6=He({method:"PUT",path:n=>`/themes/${n}/activate/`,updateQueries:{dataType:os,emberUpdateType:"createOrUpdate",update:(n,e)=>({...e,themes:e.themes.map(t=>{const r=n.themes.find(({name:i})=>i===t.name);return r||{...t,active:!1}})})},invalidateQueries:{dataType:UB}}),Z6=He({method:"DELETE",path:n=>`/themes/${n}/`,updateQueries:{dataType:os,emberUpdateType:"delete",update:(n,e,t)=>({...e,themes:e.themes.filter(r=>r.name!==t)})}}),Y6=He({method:"POST",path:()=>"/themes/install/",searchParams:n=>({source:"github",ref:n}),updateQueries:{dataType:os,emberUpdateType:"createOrUpdate",update:(n,e)=>e&&{...e,themes:[...e.themes,...n.themes]}}}),J6=He({method:"POST",path:()=>"/themes/upload/",body:({file:n})=>{const e=new FormData;return e.append("file",n),e},updateQueries:{dataType:os,emberUpdateType:"createOrUpdate",update:(n,e)=>e&&{...e,themes:[...e.themes,...n.themes]}}});function WB(n){return n.active}function ZS(n){return n.name.toLowerCase()==="source"}function YS(n){return n.name.toLowerCase()==="casper"}function X6(n){return ZS(n)||YS(n)}function Q6(n){return!ZS(n)&&!YS(n)&&!WB(n)}const qB=()=>{const n=Co(),{config:e}=Pe(),t=e.hostSettings?.limits?.customThemes?.allowlist,r=t?.length===1||!1;return{checkThemeLimitError:x.useCallback(async s=>{if(!n?.isLimited("customThemes")||!(r||s&&t&&!t.includes(s.toLowerCase())))return null;try{const a=r?".":s||".";return await n.errorIfWouldGoOverLimit("customThemes",{value:a}),null}catch(a){return a instanceof So?a.message||"Your current plan doesn't support changing themes.":null}},[n,t,r]),isThemeLimited:n?.isLimited("customThemes")||!1,isThemeLimitCheckReady:n!==void 0,allowedThemesList:t,noThemeChangesAllowed:r}},GB=({keywords:n})=>{const[e,t]=x.useState(null),[r,i]=x.useState(!1),{checkThemeLimitError:s}=qB(),{updateRoute:o}=be(),{data:a}=zB(),l=a?.themes.find(d=>d.active);x.useEffect(()=>{(async()=>{i(!0);const h=await s();t(h),i(!1)})()},[s]);const c=async()=>{r||(e?Ye.show(jx,{prompt:e,onOk:()=>o({route:"/pro",isExternal:!0})}):o("design/change-theme"))},u=f.jsx(Ze,{values:[{heading:"Active theme",key:"active-theme",value:l?`${l.name} (v${l.package?.version||"1.0"})`:"Loading..."}]});return f.jsx(Se,{customButtons:f.jsx(ne,{className:"mt-[-5px]",color:"clear",label:"Change theme",size:"sm",onClick:c}),description:"Browse and install official themes or upload one",keywords:n,navid:"theme",testId:"theme",title:"Theme",children:u})},KB=ke(GB,"Branding and design"),ZB="/ghost/assets/design-settings-B-S7bLUU.png",YB=({keywords:n})=>{const{updateRoute:e}=be(),t=()=>{e("design/edit")};return f.jsx(Se,{customButtons:f.jsx(ne,{className:"mt-[-5px]",color:"clear",label:"Customize",size:"sm",onClick:t}),description:"Customize the style and layout of your site",keywords:n,navid:"design",testId:"design",title:"Design & branding",children:f.jsx("img",{src:ZB})})},JB=ke(YB,"Branding and design"),XB=({keywords:n})=>{const{updateRoute:e}=be(),t=()=>{e("navigation/edit")};return f.jsx(Se,{customButtons:f.jsx(ne,{className:"mt-[-5px]",color:"clear",label:"Customize",size:"sm",onClick:t}),description:"Set up primary and secondary menus",keywords:n,navid:"navigation",testId:"navigation",title:"Navigation"})},QB=ke(XB,"Navigation"),xn={design:["site","logo","cover","colors","fonts","background","themes","appearance","style","design & branding","design and branding"],theme:["theme","template","upload"],navigation:["site","navigation","menus","primary","secondary","links"],announcementBar:["site","announcement bar","important","banner"]},e6=()=>f.jsx(f.Fragment,{children:f.jsxs(ss,{keywords:Object.values(xn).flat(),title:"Site",children:[f.jsx(JB,{keywords:xn.design}),f.jsx(KB,{keywords:xn.theme}),f.jsx(QB,{keywords:xn.navigation}),f.jsx(VB,{keywords:xn.announcementBar})]})}),t6=()=>f.jsx(f.Fragment,{children:f.jsxs("div",{className:"mb-[60vh] px-8 pt-16 tablet:max-w-[760px] tablet:px-14 tablet:pt-0",children:[f.jsx(_j,{}),f.jsx(e6,{}),f.jsx(FB,{}),f.jsx(N5,{}),f.jsx(fB,{}),f.jsx(x5,{})]})}),n6="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAC9FBMVEUAAAB+J/tVRv9VRf9VRv9XRP9VRf+UGf9ZQf94Lv9WRP/dAPBYRP9yMP+9AP7VAPNWQv9cPv9xMf+DIv+PG//KAPfdAO95Kv9/Jv/1DvHXAPTzAPOjEP9qN//lAPFbQf/5A/JWRf9hPf/5APLFAPr/H/BXRf+rCf9qNv+cE//xAPF3Lf9bQP9sM/9jOv9XPf9mPP/9O+fcHO5iPv//Ref/R+fDAPv/ROhtNf9VRf/eAPH/QOnyAPLUAPOoDP/vAPP8BPLXAPOxB/95LP//SeeHI///GfH+E/L/QOilDv/GAPdsNP9aP//yAfCvCP/uAe7mAO/RAPJbQP+9BPZXRf99M//NAPdfPv/fAPKwCP9yMv/EAPpdQP/NAPZhPf/TAPSdFP+4A///Ku+rC/+/AP7vAPK5Av9uNf/+BfObFP/pAPKDJf9zMP9lO/+UGv+9AP7fAPDMAPZmOv/EAPv4AvJXQ//6APFeP/+vCP/0APGNH/9cQP+eFP/oAPG4A/6KH/+8AP2pCv/FAPn7APPfAPHKAPS4Bv6FIf/lAPXzHPPgAPJhPf/sAPL/Nez4APN4Lv+IJP//QemFJf//R+d5Lf+JIv9fP/+UGv//R+h+Kv+bFf/eAPJtNf+VGf/yAPKQHf//QeiHI//QAPX/Ref3APP/MO2FJP+uB/+MH///L+3/NetpN/+vB///RejsAPFkOv+hEv9kPP//LO3/NepoOP//R+brAfC6Af7bAPLgAPDdAPFbP//4BPP/SOr1APDLAPa2Bv9qOP92L//CAPz/EfOAKf/UAPPGAPqrC/9oOP++AP7/NuyOHv/UAPRmO/+FJf+2BP//MO78CvL/POpuNv//POpWRf//Qeh6LP+cFv9kOv//Ke9gPf+aFf//F/H8APH/N+voAPD/SueWGP+BJ//CAPj7BvLRAPX2APByMf+hDf/hAPP/SOr/K+/jAPK1BP/QAPb/HfHNAPaNIP+4Av/zAPPOAPb/M+xdP/+5AP/HAPj/Tehx7sdAAAAA/HRSTlMABYVVdWhvPDWGfG5kWFhYRj4yMCwsKyIeE6mkoIuLiYWDb21pZWFNSERCLisrJhkSDge1oJyZlZN/enp3bGtnYV9eXFtVVU1HRT85ODY1NC4mIA8OCc2+uaako56dmJeWkZGJg39+fXl0dG5sa2lmZWRiXl5dW1lVUU9NTElHRUI9OTk3MiYkGArWzcnHwLu7trWxr62spqWenJqZlY6JiYSEgn9+fXl3d3V0cW1saGdeXlNRUE5NTT01MDAvKyoe19DHx8bDwLu6t7e0sqmpqKelpZ2alZCPjIaGgH10cWtiX15cWFZKRD4vHRfRvr28sK+YlpaNiHl4cThB/jUsAAAEnElEQVRIx2JAB4whBgYGIaEMxAGdUhYmJkUuFlY15mqfIILKORSvXZNnAgJFSxY2IOARDMGnnFEp7o4SK48aDysbiyXIHiDFxayPU72+7C2l9VsEfHw4ODh8BAWYWbmYLNnYLJlKcbhMz2L16iJBjt06Onp6QfpAEKTHwczCwsPKpai2G0sQACRukZPO6y2kq+utsaW66E6csfG0GHlWZmYetVJWFtZyDM8Y3Mjh5BUS0n3JmyN78uDB7pPnjMPDQXrkFVmZ1ViYBZg5UDUsy+Z0FhbW1sjh7D90hTcIbIauxsZcJfnw7hieci7m3QICjEjqn6xYlq0trO18o/8QpzhCOIRj4+rcuO5w+VIuNR3BaoQOiYXZC4HmZ086OlMcPSxy028BnZb7g0dHQAAumpc3v15EZNmkqa5Ygk9D1uKcbJyS0kafch2YBQBlZuaJiKyY+pkda4ALWVyZkz6nqLxaowgqUpN3l13k8fS57AyM2BIAg1BUlKyFrIag93pBsEjoBrsNIpoJsx5D1WPqeDllDmcUr5Cu93qwwCu7zJpXmbNuwpVjAud+zqh0XT2JLd4gnrrdcj/1ZBlPBjw6OKfMnCIkLqHNC+I4rbHzs0tMxpvwQ8/PPMorIS7ubMDAEJy/3KluTWQF3pTPUDVpwkKJdglnbQaGA/lpfBVpkQcYCFgxYapwe/uTegaGtvwUPr7EREK5cf6ZCa7iwq7AqBVVSSzmi1YhqGH6mRXt7FVgDWb5T09tJ6Th5tzpc0Xq66tAGqJ/PT3cREB9cMLdhFnsmuxVjAAxBBbGLioOEyWgoU1mQ4KMpiZ7DSPDa8f42MKwVgIaGmUqZGQ8gRqAljkuOmv7wYuABvVIpxPJnp6NmkA2v+2xRVL8DPgjzunC8hNr1Bs9/YC8HfzHzsbbBuO3Ie19cqSTup86KH537ZjdNZt7F171RhdO/fyyva6xwgjI6eDn7orgLsAfSIfN0lLqGrY3gHnbaiO6uK124vNC8fEUM74GL742MN+3Vq5n3kOrDtw6Os2izVL8Gur4IFzJ2nXSPanrsjpxalCJPR7t1dpUDEsPzWVfgTqy1uFSz//tU9hz0VYvFSOogGSlgoJ0X2qqPVblkrZS8WH8+0X3FyJiF6A9GfOAOmyWKGMqF+OWireSim0VDWwqRBJ2S8pQuNSnvERBEkV1Ry23nJQVN7+U7X6xQMdA5GBYlbTy9scjDmVLtCBaDF/v26OVJScnN9vKsaUgokUscMdzFLMMra+uXHrxbZJb2X1lhxIHZRsbG/tKLa2HWdtaxHa9KxAT2+mI7lgXE3Prpad7k1TdShzKKl80+/q+KLGx1/IPCIiQCwhoKcBMbG/WmpgsXjCx9/JK1U1ubs8c7mcob/P1F/OXnucfsNO+A2sAAuZiPsPcfKLJg1Xfby+9p+revGffvmfSCr7+lfaSuOLIw3Ty5IkzFltbr3qwabO7u+qlIxla7solRngS5t5Ha61NJ5teX3D96uXTvRdV3VXvNRPIjm9+uyw2nWFiar5g7WaPzZs8OhkIA8O9Hi6PXLZu3eqx15CBaGBkaIjF7QBYMGrq1RZRzQAAAABJRU5ErkJggg==",Le=({keywords:n,navid:e,...t})=>{const{ref:r,props:i}=QL(e),{currentSection:s}=Cu(),{checkVisible:o}=wo(),l=(Array.isArray(e)?e:[e]).includes(s||"");return f.jsx(dR,{ref:r,isCurrent:l,isVisible:o(n),navid:Array.isArray(e)?e[0]:e,...i,...t})},r6=()=>{const{filter:n,setFilter:e,checkVisible:t,noResult:r,setNoResult:i}=wo(),{updateRoute:s}=be(),o=x.useRef(null),{isAnyTextFieldFocused:a}=Zi();x.useEffect(()=>{const v=b=>{b.target instanceof HTMLElement&&(b.target.nodeName==="INPUT"||b.target.nodeName==="TEXTAREA"||b.target.isContentEditable)||b.key==="/"&&!a&&(b?.preventDefault(),o.current&&o.current.focus())};return window.addEventListener("keydown",v),()=>{window.removeEventListener("keydown",v)}}),x.useEffect(()=>{o.current&&o.current.focus()},[]),x.useEffect(()=>{!t(Object.values(at).flat())&&!t(Object.values(xn).flat())&&!t(Object.values(qt).flat())&&!t(Object.values(nn).flat())&&!t(Object.values(gr).flat())&&!t(Object.values(Wt).flat())?i(!0):i(!1)},[t,i,n]),x.useEffect(()=>{const v=b=>{b.key==="Escape"&&n&&(o.current?.blur(),b.stopPropagation())};return o.current?.addEventListener("keydown",v),()=>{o.current?.removeEventListener("keydown",v)}},[n]);const{settings:l,config:c}=Pe(),[u]=Te(l,["donations_enabled"]),d=Xn(l||[],c||{}),h=KS("welcomeEmails"),p=v=>{v&&(e(""),i(!1),s(v.currentTarget.id))},g=v=>{e(v.target.value),v.target.value&&document.querySelector(".admin-x-settings")?.scrollTo({top:0,left:0})},m=_("hidden pt-10 tablet:!visible tablet:!block");return f.jsxs("div",{className:"ml-auto flex w-full flex-col pt-0 tablet:max-w-[240px]","data-testid":"sidebar",children:[f.jsx("div",{className:"sticky top-0 flex content-stretch items-end tablet:h-20 tablet:bg-grey-50 xl:h-20 dark:bg-grey-975 dark:tablet:bg-[#101114]",children:f.jsxs("div",{className:"relative w-full",children:[f.jsx(ve,{className:"absolute left-3 top-3 z-10",colorClass:"text-grey-500",name:"magnifying-glass",size:"sm"}),f.jsx(tt,{autoComplete:"off",className:"mr-12 flex h-10 w-full items-center rounded-lg border border-transparent bg-white px-[33px] py-1.5 text-[14px] shadow-[0_0_1px_rgba(21,23,26,0.25),0_1px_3px_rgba(0,0,0,0.03),0_8px_10px_-12px_rgba(0,0,0,.1)] transition-colors hover:shadow-sm focus:border-green focus:bg-white focus:shadow-[0_0_0_2px_rgba(48,207,67,0.25)] focus:outline-2 tablet:mr-0 dark:border-transparent dark:bg-grey-925 dark:text-white dark:placeholder:text-grey-800 dark:focus:border-green dark:focus:bg-grey-950",containerClassName:"w-100",inputRef:o,placeholder:"Search settings",title:"Search",value:n,clearBg:!0,hideTitle:!0,unstyled:!0,onChange:g}),n?f.jsx(ne,{className:"absolute right-14 top-3 p-1 tablet:right-3",icon:"close",iconColorClass:"text-grey-700 !w-[10px] !h-[10px]",size:"sm",unstyled:!0,onClick:()=>{e(""),o.current?.focus()}}):f.jsx("div",{className:"absolute -right-1/2 top-[9px] hidden rounded border border-grey-400 bg-white px-1.5 py-0.5 text-2xs font-semibold uppercase tracking-wider text-grey-600 shadow-[0px_1px_#CED4D9] tablet:!visible tablet:right-3 tablet:!block dark:border-grey-800 dark:bg-grey-900 dark:text-grey-500 dark:shadow-[0px_1px_#626D79]",children:"/"})]})}),f.jsxs("nav",{className:m,id:"admin-x-settings-sidebar",children:[r&&f.jsxs("div",{className:"ml-2 text-base text-grey-700",children:[f.jsx("h2",{className:"mb-2 text-base font-semibold tracking-normal text-black dark:text-white",children:"No result"}),f.jsxs("div",{children:[`We couldn't find any setting matching '${n}'`,"."]})]}),f.jsxs(ds,{isVisible:t(Object.values(at).flat()),title:"General settings",children:[f.jsx(Le,{icon:"textfield",keywords:at.titleAndDescription,navid:"general",title:"Title & description",onClick:p}),f.jsx(Le,{icon:"world-clock",keywords:at.timeZone,navid:"timezone",title:"Timezone",onClick:p}),f.jsx(Le,{icon:"language",keywords:at.publicationLanguage,navid:"publication-language",title:"Publication language",onClick:p}),f.jsx(Le,{icon:"user-pen",keywords:at.users,navid:"staff",title:"Staff",onClick:p}),f.jsx(Le,{icon:"layer",keywords:at.metadata,navid:"metadata",title:"Meta data",onClick:p}),f.jsx(Le,{icon:"like",keywords:at.socialAccounts,navid:"social-accounts",title:"Social accounts",onClick:p}),f.jsx(Le,{icon:"baseline-chart",keywords:at.analytics,navid:"analytics",title:"Analytics",onClick:p}),f.jsx(Le,{icon:"lock-locked",keywords:at.lockSite,navid:"locksite",title:"Make this site private",onClick:p})]}),f.jsxs(ds,{isVisible:t(Object.values(xn).flat()),title:"Site",children:[f.jsx(Le,{icon:"palette",keywords:xn.design,navid:"design",title:"Design & branding",onClick:p}),f.jsx(Le,{icon:"layout-2-col",keywords:xn.theme,navid:"theme",title:"Theme",onClick:p}),f.jsx(Le,{icon:"navigation",keywords:xn.navigation,navid:"navigation",title:"Navigation",onClick:p}),f.jsx(Le,{icon:"megaphone",keywords:xn.announcementBar,navid:"announcement-bar",title:"Announcement bar",onClick:p})]}),f.jsxs(ds,{isVisible:t([...Object.values(qt).flat(),...gr.newslettersNavMenu]),title:"Membership",children:[f.jsx(Le,{icon:"key",keywords:qt.access,navid:["members","spam-filters"],title:"Access",onClick:p}),f.jsx(Le,{icon:"bills",keywords:qt.tiers,navid:"tiers",title:"Tiers",onClick:p}),f.jsx(Le,{icon:"portal",keywords:qt.portal,navid:"portal",title:"Signup portal",onClick:p}),h&&f.jsx(Le,{icon:"mailplus",keywords:qt.memberEmails,navid:"memberemails",title:"Welcome emails",onClick:p}),u&&d&&f.jsx(Le,{icon:"piggybank",keywords:qt.tips,navid:"tips-and-donations",title:"Tips & donations",onClick:p}),f.jsx(Le,{icon:"email",keywords:gr.newslettersNavMenu,navid:["enable-newsletters","default-recipients","newsletters","mailgun"],title:"Newsletters",onClick:p})]}),f.jsxs(ds,{isVisible:t(Object.values(nn).flat()),title:"Growth",children:[f.jsx(Le,{icon:"ap-network",keywords:nn.network,navid:"network",title:"Network",onClick:p}),f.jsx(Le,{icon:"globe-simple",keywords:nn.explore,navid:"explore",title:"Ghost Explore",onClick:p}),f.jsx(Le,{icon:"heart",keywords:nn.recommendations,navid:"recommendations",title:"Recommendations",onClick:p}),f.jsx(Le,{icon:"emailfield",keywords:nn.embedSignupForm,navid:"embed-signup-form",title:"Signup forms",onClick:p}),d&&f.jsx(Le,{icon:"discount",keywords:nn.offers,navid:"offers",title:"Offers",onClick:p})]}),f.jsxs(ds,{isVisible:t(Object.values(Wt).flat()),title:"Advanced",children:[f.jsx(Le,{icon:"modules-3",keywords:Wt.integrations,navid:"integrations",title:"Integrations",onClick:p}),f.jsx(Le,{icon:"download",keywords:Wt.migrationtools,navid:"migration",title:"Import/Export",onClick:p}),f.jsx(Le,{icon:"brackets",keywords:Wt.codeInjection,navid:"code-injection",title:"Code injection",onClick:p}),f.jsx(Le,{icon:"labs-flask",keywords:Wt.labs,navid:"labs",title:"Labs",onClick:p}),f.jsx(Le,{icon:"time-back",keywords:Wt.history,navid:"history",title:"History",onClick:p})]}),!n&&f.jsxs("a",{className:"w-100 mb-10 mt-1 flex h-[38px] cursor-pointer items-center rounded-lg px-3 py-2 text-left text-[14px] font-medium text-grey-800 transition-all hover:bg-grey-200 focus:bg-grey-100 dark:text-grey-600 dark:hover:bg-grey-950 dark:focus:bg-grey-925",onClick:()=>{s("about")},children:[f.jsx("img",{alt:"Ghost Logo",className:"mr-[7px] size-[18px]",src:n6}),"About Ghost"]})]})]})},lb=({children:n})=>f.jsxs(f.Fragment,{children:[f.jsx("div",{className:"fixed right-0 top-2 z-50 flex justify-end bg-transparent p-8 tablet:fixed tablet:top-0 tablet:px-8",id:"done-button-container",children:f.jsx(_L,{})}),f.jsx("div",{className:"w-full tablet:fixed tablet:left-0 tablet:top-0 tablet:flex tablet:h-full dark:bg-grey-975",id:"admin-x-settings-content",children:n})]}),i6=()=>{const{currentUser:n}=Pe(),{loadingModal:e}=be(),{isDirty:t}=qc(),r=i=>{window.location.hash=i};return x.useEffect(()=>{const i=s=>{s.key==="Escape"&&js(t,()=>{r("/")})};return window.addEventListener("keydown",i),()=>{window.removeEventListener("keydown",i)}},[t]),x.useEffect(()=>{G2.remove()},[]),K2(n)?vb(n)?f.jsx(lb,{children:f.jsxs("div",{className:"mx-auto w-full max-w-5xl overflow-y-auto px-[5vmin] tablet:mt-16 xl:mt-10",id:"admin-x-settings-scroller",children:[f.jsx(ft,{className:"mb-[5vmin]",children:"Settings"}),f.jsx($S,{highlight:!1,keywords:[]})]})}):f.jsxs(lb,{children:[e&&f.jsx("div",{className:`fixed inset-0 z-40 h-[calc(100vh-55px)] w-[100vw] tablet:h-[100vh] ${_x}`}),f.jsx("div",{className:"no-scrollbar fixed inset-x-0 top-0 z-[35] flex-1 basis-[320px] bg-white p-8 tablet:relative tablet:inset-x-auto tablet:top-auto tablet:h-full tablet:overflow-y-scroll tablet:bg-grey-50 tablet:py-0 dark:bg-grey-975 dark:tablet:bg-[#101114]",id:"admin-x-settings-sidebar-scroller",children:f.jsx("div",{className:"relative w-full",children:f.jsx(r6,{})})}),f.jsx("div",{className:"relative h-full flex-1 overflow-y-scroll bg-white pt-12 tablet:basis-[800px] dark:bg-grey-975 dark:tablet:bg-black",id:"admin-x-settings-scroller",children:f.jsx(t6,{})})]}):null},s6={"design/change-theme":"DesignAndThemeModal","design/edit":"DesignAndThemeModal","theme/install":"DesignAndThemeModal","navigation/edit":"NavigationModal","staff/invite":"InviteUserModal","staff/:slug/social-links":"UserDetailModal","staff/:slug/email-notifications":"UserDetailModal","staff/:slug/edit":"UserDetailModal","staff/:slug":"UserDetailModal","portal/edit":"PortalModal","tiers/add":"TierDetailModal","tiers/:id":"TierDetailModal","stripe-connect":"StripeConnectModal","newsletters/new":"AddNewsletterModal","newsletters/:id":"NewsletterDetailModal","history/view":"HistoryModal","history/view/:user":"HistoryModal","integrations/zapier":"ZapierModal","integrations/slack":"SlackModal","integrations/unsplash":"UnsplashModal","integrations/firstpromoter":"FirstPromoterModal","integrations/pintura":"PinturaModal","integrations/new":"AddIntegrationModal","integrations/:id":"CustomIntegrationModal","recommendations/add":"AddRecommendationModal","recommendations/edit":"EditRecommendationModal","announcement-bar/edit":"AnnouncementBarModal","embed-signup-form/show":"EmbedSignupFormModal","offers/edit":"OffersContainerModal","offers/edit/:id":"OffersContainerModal","offers/new":"OffersContainerModal","explore/testimonial":"TestimonialsModal",about:"AboutModal"},o6=()=>no(()=>import("./modals-CIgzYQgv.js"),__vite__mapDeps([10,1,2,4,5,3,6,11])),a6=()=>{const{updateNavigatedSection:n,scrollToSection:e}=Cu(),{route:t}=be();return KL((r,i)=>{r===i&&e(r.split("/")[0])},[e]),x.useEffect(()=>{t!==void 0&&n(t.split("/")[0])},[t,n]),null};function l6({designSystem:n,upgradeStatus:e}){return f.jsx(R_,{upgradeStatus:e,children:f.jsx(Ye.Provider,{children:f.jsx(GL,{basePath:"settings",modals:{paths:s6,load:o6},children:f.jsxs(bR,{className:"admin-x-settings",...n,children:[f.jsx(a6,{}),f.jsx(i6,{})]})})})})}async function c6(){return await no(()=>import("./koenig-lexical-BDJVCHtm.js"),__vite__mapDeps([12,1,2]))}function u6(){return Vr.createPortal(f.jsx("div",{className:"shade shade-admin",style:{position:"absolute",inset:0,zIndex:20},children:f.jsx(l6,{designSystem:{darkMode:!1,fetchKoenigLexical:c6}})}),document.body)}const e8=Object.freeze(Object.defineProperty({__proto__:null,default:u6},Symbol.toStringTag,{value:"Module"}));export{Gr as $,yr as A,ne as B,_s as C,dN as D,G as E,js as F,Gn as G,ft as H,We as I,dE as J,TC as K,If as L,Or as M,_y as N,ch as O,bN as P,R6 as Q,LL as R,gt as S,dt as T,Ye as U,be as V,ku as W,e_ as X,Pe as Y,Xi as Z,ru as _,An as a,ei as a$,qh as a0,Mu as a1,$6 as a2,B6 as a3,Ot as a4,uh as a5,Qv as a6,qj as a7,MC as a8,tt as a9,ep as aA,Cd as aB,sE as aC,G6 as aD,ZS as aE,YS as aF,WB as aG,K6 as aH,Z6 as aI,Q6 as aJ,N6 as aK,X6 as aL,zB as aM,Y6 as aN,qB as aO,J6 as aP,rc as aQ,mS as aR,Ji as aS,qr as aT,z6 as aU,W6 as aV,q6 as aW,wS as aX,Ku as aY,wx as aZ,iE as a_,eb as aa,AC as ab,Kt as ac,jI as ad,lR as ae,U6 as af,P6 as ag,v6 as ah,O6 as ai,Co as aj,So as ak,jx as al,Sx as am,Sn as an,H6 as ao,zS as ap,q_ as aq,sB as ar,V6 as as,Uu as at,wb as au,Ni as av,cu as aw,Fn as ax,T6 as ay,V5 as az,Xt as b,nh as b0,yS as b1,Vh as b2,r5 as b3,Q_ as b4,e5 as b5,b6,L6 as b7,$i as b8,xS as b9,j6 as ba,bS as bb,_6 as bc,HS as bd,F6 as be,n6 as bf,Fp as bg,uR as bh,KS as bi,Ze as bj,Yv as bk,Xv as bl,Jv as bm,Cj as bn,Zv as bo,Sj as bp,gS as bq,aB as br,e8 as bs,xe as c,M6 as d,I6 as e,YN as f,C6 as g,At as h,FN as i,y6 as j,k6 as k,A6 as l,_N as m,LN as n,E6 as o,w6 as p,d3 as q,B as r,RN as s,j as t,Zi as u,D6 as v,yP as w,sC as x,ir as y,qc as z};
|
|
34
|
+
junk.com`,resize:"vertical",title:"Blocked email domains",value:h,onChange:g,onKeyDown:()=>l("spam-filters")})})})},OB=ke(RB,"Spam Filters"),qS=({size:n="md",trialDays:e})=>{if(!e)return null;const t=_(n==="sm"?"px-1.5 py-0.5 text-xs":"px-2.5 py-1.5 text-sm","relative -mr-1 -mt-1 whitespace-nowrap rounded-full font-semibold leading-none tracking-wide text-grey-900");return f.jsxs("span",{className:t,children:[f.jsx("span",{className:"absolute inset-0 block rounded-full bg-accent opacity-20 dark:bg-pink"}),f.jsxs("span",{className:"dark:text-pink",children:[e," days free"]})]})},TB=({benefits:n})=>n?.length?f.jsx(f.Fragment,{children:n.map(e=>f.jsx("div",{className:"mt-4 w-full text-md leading-snug text-grey-900",children:f.jsxs("div",{className:"mb-2.5 flex items-start",children:[f.jsx(ve,{className:"mr-[10px] mt-[3px] !h-3.5 !w-3.5 min-w-[14px] overflow-visible !stroke-[3px]",name:"check"}),f.jsx("div",{children:e})]})},e))}):f.jsx("div",{className:"mt-4 w-full text-md leading-snug text-grey-900 opacity-30",children:f.jsxs("div",{className:"mb-2.5 flex items-start",children:[f.jsx(ve,{className:"mr-[10px] mt-[3px] !h-3.5 !w-3.5 min-w-[14px] overflow-visible !stroke-[3px]",name:"check"}),f.jsx("div",{children:"Expert analysis"})]})}),NB=({discount:n})=>n?f.jsxs("span",{className:"mt-1 text-sm font-semibold leading-none text-pink",children:[n,"% discount"]}):null,U6=({tier:n,isFreeTier:e})=>{const[t,r]=x.useState(!1),i=n?.name||"",s=n?.description||"",o=parseFloat(n?.trial_days||"0"),a=n?.currency||"USD",l=to(a),c=n?.benefits||[],u=e?0:500,d=e?0:5e3,h=$i(n?.monthly_price??u),p=$i(n?.yearly_price??d),g=n?.monthly_price&&n?.yearly_price?Math.ceil((h*12-p)/(h*12)*100):0;return f.jsxs("div",{"data-testid":"tier-preview",children:[f.jsxs("div",{className:"flex items-baseline justify-between",children:[f.jsx(ft,{className:"pb-2",level:6,grey:!0,children:e?"Free membership preview":"Tier preview"}),!e&&f.jsxs("div",{className:"flex gap-1",children:[f.jsx(ne,{className:`${t===!0?"text-grey-500":"text-grey-900 dark:text-white"}`,label:"Monthly",link:!0,unstyled:!0,onClick:()=>r(!1)}),f.jsx(ne,{className:`ml-2 ${t===!0?"text-grey-900 dark:text-white":"text-grey-500"}`,label:"Yearly",link:!0,unstyled:!0,onClick:()=>r(!0)})]})]}),f.jsx("div",{className:"rounded-sm border border-grey-200 bg-white dark:border-transparent",children:f.jsxs("div",{className:"flex-column relative flex min-h-[200px] w-full max-w-[420px] scale-90 items-start justify-stretch rounded bg-white p-4",children:[f.jsxs("div",{className:"min-h-[56px] w-full",children:[f.jsx("h4",{className:`-mt-1 mb-0 w-full break-words text-lg font-semibold leading-tight text-accent ${!i&&"opacity-30"}`,children:i||(e?"Free":"Bronze")}),f.jsxs("div",{className:"mt-4 flex w-full flex-row flex-wrap items-end justify-between gap-x-1 gap-y-[10px]",children:[f.jsxs("div",{className:`flex flex-wrap text-black ${(t&&n?.yearly_price===void 0||!t&&n?.monthly_price===void 0)&&!e?"opacity-30":""}`,children:[f.jsx("span",{className:"self-start text-[2.7rem] font-bold uppercase leading-[1.115]",children:l}),f.jsx("span",{className:"break-all text-[3.4rem] font-bold leading-none tracking-tight",children:Sn(t?p:h)}),!e&&f.jsxs("span",{className:"ml-1 self-end text-[1.5rem] leading-snug text-grey-800",children:["/",t?"year":"month"]})]}),f.jsx(qS,{trialDays:o})]}),t&&g>0&&f.jsx(NB,{discount:g})]}),f.jsx("div",{className:"flex-column flex w-full flex-1",children:f.jsxs("div",{className:"flex-1",children:[f.jsx("div",{className:`mt-4 w-full text-[1.55rem] font-semibold leading-snug text-grey-900 ${!s&&"opacity-30"}`,children:s||(e?"Free preview":"Full access to premium content")}),f.jsx(TB,{benefits:c})]})})]})})]})},GS=_("group/tiercard flex cursor-pointer flex-col items-start justify-between gap-4 self-stretch rounded-sm border border-transparent bg-grey-100 p-4 transition-all hover:border-grey-100 hover:bg-grey-75 hover:shadow-sm min-[900px]:min-h-[200px] dark:bg-grey-950 dark:hover:border-grey-800"),PB=({tier:n})=>{const{updateRoute:e}=be(),t=n?.currency||"USD",r=to(t);return f.jsx("div",{className:GS,"data-testid":"tier-card","data-tier":n.slug,children:f.jsxs("div",{className:"w-full grow",onClick:()=>{e({route:`tiers/${n.id}`})},children:[f.jsx("div",{className:"text-[1.65rem] font-bold leading-tight tracking-tight text-black dark:text-white",children:n.name}),f.jsxs("div",{className:"mt-2 flex items-baseline",children:[f.jsx("span",{className:"ml-1 translate-y-[-3px] text-md font-bold uppercase",children:r}),f.jsx("span",{className:"text-xl font-bold tracking-tighter",children:Sn($i(n.monthly_price||0))}),n.monthly_price&&n.monthly_price>0&&f.jsx("span",{className:"text-sm text-grey-700",children:"/month"})]}),n.trial_days?f.jsx("div",{className:"mb-4 mt-1",children:f.jsx(qS,{size:"sm",trialDays:n.trial_days})}):"",f.jsx("div",{className:"mt-2 line-clamp-2 text-[1.4rem] font-medium",children:n.description||f.jsx("span",{className:"opacity-30",children:"No description"})})]})})},Md=({tab:n,tiers:e})=>{const{updateRoute:t}=be(),r=()=>{t("tiers/add")};return e.length?f.jsxs("div",{className:"mt-4 grid grid-cols-1 gap-4 min-[900px]:grid-cols-3",children:[e.map(i=>f.jsx(PB,{tier:i})),n==="active-tiers"&&f.jsx("button",{className:`${GS} group cursor-pointer`,type:"button",onClick:()=>{r()},children:f.jsx("div",{className:"flex size-full flex-col items-center justify-center",children:f.jsxs("div",{className:"flex flex-col items-center justify-center",children:[f.jsx("div",{className:"translate-y-[15px] transition-all group-hover:translate-y-0",children:f.jsx(ve,{colorClass:"text-green",name:"add"})}),f.jsx("div",{className:"mt-2 translate-y-[-10px] text-sm font-semibold text-green opacity-0 transition-all group-hover:translate-y-0 group-hover:opacity-100",children:"Add tier"})]})})})]}):f.jsxs(ei,{icon:"money-bags",children:["No ",n==="active-tiers"?"active":"archived"," tiers found."]})},ab=({className:n,onClick:e})=>(n=_("group flex shrink-0 items-center justify-center whitespace-nowrap rounded border border-grey-300 px-3 py-1.5 text-sm font-semibold text-grey-900 transition-all hover:border-grey-500 dark:border-grey-900 dark:text-white",n),f.jsxs("button",{className:n,"data-testid":"stripe-connected",type:"button",onClick:e,children:[f.jsx("span",{className:"inline-flex size-2 rounded-full bg-green transition-all group-hover:bg-[#625BF6]"}),f.jsx("span",{className:"ml-2",children:"Connected to Stripe"})]})),LB=({keywords:n})=>{const[e,t]=x.useState("active-tiers"),{settings:r,config:i}=Pe(),{data:{tiers:s,meta:o,isEnd:a}={},fetchNextPage:l}=Mu(),c=y5(s||[]),u=w5(s||[]),{updateRoute:d}=be(),h=Co(),p=async()=>{if(h?.isDisabled("limitStripeConnect")&&!Xn(r,i))try{await h.errorIfWouldGoOverLimit("limitStripeConnect")}catch(b){if(b instanceof So){Ye.show(jx,{prompt:b.message||"Your current plan doesn't support Stripe Connect.",onOk:()=>d({route:"/pro",isExternal:!0})});return}}d("stripe-connect")},g=b=>[...b].sort((y,S)=>(y.monthly_price??0)-(S.monthly_price??0)),m=[{id:"active-tiers",title:"Active",contents:f.jsx(Md,{tab:"active-tiers",tiers:g(c)})},{id:"archived-tiers",title:"Archived",contents:f.jsx(Md,{tab:"archive-tiers",tiers:g(u)})}];let v;return Xn(r,i)?v=f.jsx(Gn,{selectedTab:e,tabs:m,onTabChange:t}):v=f.jsx(Md,{tab:"free-tier",tiers:c.filter(b=>b.type==="free")}),f.jsxs(Se,{customButtons:Xn(r,i)?f.jsx(ab,{className:"hidden tablet:!visible tablet:!block",onClick:p}):f.jsx(Fp,{className:"hidden tablet:!visible tablet:!block",onClick:p}),description:"Set prices and paid member sign up settings",keywords:n,navid:"tiers",testId:"tiers",title:"Tiers",children:[f.jsx("div",{className:"w-full tablet:hidden",children:Xn(r,i)?f.jsx(ab,{className:"w-full",onClick:p}):f.jsx(Fp,{onClick:p})}),v,a===!1&&f.jsx(ne,{label:`Load more (showing ${s?.length||0}/${o?.pagination.total||0} tiers)`,link:!0,onClick:()=>l()})]})},_B=ke(LB,"Tiers"),jB=1e4,BB=({keywords:n})=>{const{localSettings:e,siteData:t,updateSetting:r,saveState:i,handleSave:s,handleCancel:o,focusRef:a,errors:l,validate:c,clearError:u,handleEditingChange:d}=Ot({onValidate:()=>({donationsSuggestedAmount:qj(g,h,{maxAmount:jB})})}),[h="USD",p="500"]=Te(e,["donations_currency","donations_suggested_amount"]),g=parseInt(p),m=`${t?.url.replace(/\/$/,"")}/#/portal/support`;x.useEffect(()=>{c()},[h]);const[v,b]=x.useState(!1),[y,S]=x.useState(!1);x.useEffect(()=>{e.some(R=>R.dirty)&&!y&&(S(!0),d(!0))},[e,y,d]);const w=()=>{navigator.clipboard.writeText(m),b(!0),setTimeout(()=>b(!1),2e3)},C=()=>{js(i==="unsaved",()=>window.open(m,"_blank"))},k=(D,R)=>{r(D,R)},A=()=>{o(),S(!1)},I=async()=>{await s()&&S(!1)};return f.jsxs(Se,{description:"Give your audience a simple way to support your work with one-time payments.",isEditing:y,keywords:n,navid:"tips-and-donations",saveState:i,testId:"tips-and-donations",title:"Tips & donations",hideEditButton:!0,onCancel:A,onEditingChange:S,onSave:I,children:[f.jsxs(Ze,{columns:1,children:[f.jsx("div",{className:"flex max-w-[180px] items-end gap-[.6rem]",children:f.jsx(AC,{error:!!l.donationsSuggestedAmount,hint:l.donationsSuggestedAmount,inputRef:a,placeholder:"5",rightPlaceholder:f.jsx(yr,{border:!1,clearBg:!0,containerClassName:"w-14",fullWidth:!1,options:eb(),selectedOption:eb().flatMap(D=>D.options).find(D=>D.value===h),title:"Currency",hideTitle:!0,isSearchable:!0,onSelect:D=>k("donations_currency",D?.value||"USD")}),title:"Suggested amount",valueInCents:parseInt(p),onBlur:c,onChange:D=>k("donations_suggested_amount",D.toString()),onKeyDown:()=>u("donationsSuggestedAmount")},p)}),f.jsxs("div",{className:"w-100",children:[f.jsx("div",{className:"flex items-center gap-2",children:f.jsx(ft,{level:6,children:"Shareable link"})}),f.jsxs("div",{className:"w-100 group relative mt-0 flex items-center justify-between overflow-hidden border-b border-transparent pb-2 pt-1 hover:border-grey-300 dark:hover:border-grey-600",children:[f.jsx("span",{"data-testid":"donate-url",children:m}),f.jsxs("div",{className:"invisible flex gap-1 bg-white pl-1 group-hover:visible dark:bg-black",children:[f.jsx(ne,{color:"clear","data-testid":"preview-shareable-link",label:"Preview",size:"sm",onClick:C}),f.jsx(ne,{color:"light-grey","data-testid":"copy-shareable-link",label:v?"Copied":"Copy link",size:"sm",onClick:w})]})]})]})]}),f.jsxs("div",{className:"items-center-mt-1 flex text-sm",children:["All tips and donations are subject to Stripe's ",f.jsx("a",{className:"ml-1 text-green",href:"https://ghost.org/help/tips-donations/",rel:"noopener noreferrer",target:"_blank",children:" tipping policy"}),"."]})]})},$B=ke(BB,"Tips & donations"),KS=n=>{const{config:e}=Pe();return e.labs[n]||!1},qt={access:["membership","default","access","subscription","post","membership","comments","commenting","signup","sign up","spam","filters","prevention","prevent","block","domains","email"],tiers:["membership","tiers","payment","paid","stripe"],portal:["membership","portal","signup","sign up","signin","sign in","login","account","membership","support","email","address","support email address","support address"],memberEmails:["membership","signup","welcome email","email","new user","new member","account"],tips:["growth","tips","donations","one time","payment"]},FB=()=>{const{config:n,settings:e}=Pe(),[t]=Te(e,["donations_enabled"]),r=Xn(e||[],n||{}),i=KS("welcomeEmails");return f.jsxs(ss,{keywords:Object.values(qt).flat(),title:"Membership",children:[f.jsx(pB,{keywords:qt.access}),f.jsx(OB,{keywords:qt.access}),f.jsx(_B,{keywords:qt.tiers}),f.jsx(DB,{keywords:qt.portal}),i&&f.jsx(AB,{keywords:qt.memberEmails}),t&&r&&f.jsx($B,{keywords:qt.tips})]})},HB=({keywords:n})=>{const{updateRoute:e}=be(),t=()=>{e("announcement-bar/edit")};return f.jsx(Se,{customButtons:f.jsx(ne,{className:"mt-[-5px]",color:"clear",label:"Customize",size:"sm",onClick:t}),description:"Highlight important updates or offers",keywords:n,navid:"announcement-bar",testId:"announcement-bar",title:"Announcement bar"})},VB=ke(HB,"Announcement bar"),z6=null,Zh="CustomThemeSettingsResponseType",UB=Zh,W6=Qr({dataType:Zh,path:"/custom_theme_settings/"}),q6=He({method:"PUT",path:()=>"/custom_theme_settings/",body:n=>({custom_theme_settings:n}),updateQueries:{emberUpdateType:"skip",dataType:Zh,update:n=>n}}),os="ThemesResponseType",zB=Qr({dataType:os,path:"/themes/"}),G6=Qr({dataType:os,path:"/themes/active/"}),K6=He({method:"PUT",path:n=>`/themes/${n}/activate/`,updateQueries:{dataType:os,emberUpdateType:"createOrUpdate",update:(n,e)=>({...e,themes:e.themes.map(t=>{const r=n.themes.find(({name:i})=>i===t.name);return r||{...t,active:!1}})})},invalidateQueries:{dataType:UB}}),Z6=He({method:"DELETE",path:n=>`/themes/${n}/`,updateQueries:{dataType:os,emberUpdateType:"delete",update:(n,e,t)=>({...e,themes:e.themes.filter(r=>r.name!==t)})}}),Y6=He({method:"POST",path:()=>"/themes/install/",searchParams:n=>({source:"github",ref:n}),updateQueries:{dataType:os,emberUpdateType:"createOrUpdate",update:(n,e)=>e&&{...e,themes:[...e.themes,...n.themes]}}}),J6=He({method:"POST",path:()=>"/themes/upload/",body:({file:n})=>{const e=new FormData;return e.append("file",n),e},updateQueries:{dataType:os,emberUpdateType:"createOrUpdate",update:(n,e)=>e&&{...e,themes:[...e.themes,...n.themes]}}});function WB(n){return n.active}function ZS(n){return n.name.toLowerCase()==="source"}function YS(n){return n.name.toLowerCase()==="casper"}function X6(n){return ZS(n)||YS(n)}function Q6(n){return!ZS(n)&&!YS(n)&&!WB(n)}const qB=()=>{const n=Co(),{config:e}=Pe(),t=e.hostSettings?.limits?.customThemes?.allowlist,r=t?.length===1||!1;return{checkThemeLimitError:x.useCallback(async s=>{if(!n?.isLimited("customThemes")||!(r||s&&t&&!t.includes(s.toLowerCase())))return null;try{const a=r?".":s||".";return await n.errorIfWouldGoOverLimit("customThemes",{value:a}),null}catch(a){return a instanceof So?a.message||"Your current plan doesn't support changing themes.":null}},[n,t,r]),isThemeLimited:n?.isLimited("customThemes")||!1,isThemeLimitCheckReady:n!==void 0,allowedThemesList:t,noThemeChangesAllowed:r}},GB=({keywords:n})=>{const[e,t]=x.useState(null),[r,i]=x.useState(!1),{checkThemeLimitError:s}=qB(),{updateRoute:o}=be(),{data:a}=zB(),l=a?.themes.find(d=>d.active);x.useEffect(()=>{(async()=>{i(!0);const h=await s();t(h),i(!1)})()},[s]);const c=async()=>{r||(e?Ye.show(jx,{prompt:e,onOk:()=>o({route:"/pro",isExternal:!0})}):o("design/change-theme"))},u=f.jsx(Ze,{values:[{heading:"Active theme",key:"active-theme",value:l?`${l.name} (v${l.package?.version||"1.0"})`:"Loading..."}]});return f.jsx(Se,{customButtons:f.jsx(ne,{className:"mt-[-5px]",color:"clear",label:"Change theme",size:"sm",onClick:c}),description:"Browse and install official themes or upload one",keywords:n,navid:"theme",testId:"theme",title:"Theme",children:u})},KB=ke(GB,"Branding and design"),ZB="/ghost/assets/design-settings-B-S7bLUU.png",YB=({keywords:n})=>{const{updateRoute:e}=be(),t=()=>{e("design/edit")};return f.jsx(Se,{customButtons:f.jsx(ne,{className:"mt-[-5px]",color:"clear",label:"Customize",size:"sm",onClick:t}),description:"Customize the style and layout of your site",keywords:n,navid:"design",testId:"design",title:"Design & branding",children:f.jsx("img",{src:ZB})})},JB=ke(YB,"Branding and design"),XB=({keywords:n})=>{const{updateRoute:e}=be(),t=()=>{e("navigation/edit")};return f.jsx(Se,{customButtons:f.jsx(ne,{className:"mt-[-5px]",color:"clear",label:"Customize",size:"sm",onClick:t}),description:"Set up primary and secondary menus",keywords:n,navid:"navigation",testId:"navigation",title:"Navigation"})},QB=ke(XB,"Navigation"),xn={design:["site","logo","cover","colors","fonts","background","themes","appearance","style","design & branding","design and branding"],theme:["theme","template","upload"],navigation:["site","navigation","menus","primary","secondary","links"],announcementBar:["site","announcement bar","important","banner"]},e6=()=>f.jsx(f.Fragment,{children:f.jsxs(ss,{keywords:Object.values(xn).flat(),title:"Site",children:[f.jsx(JB,{keywords:xn.design}),f.jsx(KB,{keywords:xn.theme}),f.jsx(QB,{keywords:xn.navigation}),f.jsx(VB,{keywords:xn.announcementBar})]})}),t6=()=>f.jsx(f.Fragment,{children:f.jsxs("div",{className:"mb-[60vh] px-8 pt-16 tablet:max-w-[760px] tablet:px-14 tablet:pt-0",children:[f.jsx(_j,{}),f.jsx(e6,{}),f.jsx(FB,{}),f.jsx(N5,{}),f.jsx(fB,{}),f.jsx(x5,{})]})}),n6="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAC9FBMVEUAAAB+J/tVRv9VRf9VRv9XRP9VRf+UGf9ZQf94Lv9WRP/dAPBYRP9yMP+9AP7VAPNWQv9cPv9xMf+DIv+PG//KAPfdAO95Kv9/Jv/1DvHXAPTzAPOjEP9qN//lAPFbQf/5A/JWRf9hPf/5APLFAPr/H/BXRf+rCf9qNv+cE//xAPF3Lf9bQP9sM/9jOv9XPf9mPP/9O+fcHO5iPv//Ref/R+fDAPv/ROhtNf9VRf/eAPH/QOnyAPLUAPOoDP/vAPP8BPLXAPOxB/95LP//SeeHI///GfH+E/L/QOilDv/GAPdsNP9aP//yAfCvCP/uAe7mAO/RAPJbQP+9BPZXRf99M//NAPdfPv/fAPKwCP9yMv/EAPpdQP/NAPZhPf/TAPSdFP+4A///Ku+rC/+/AP7vAPK5Av9uNf/+BfObFP/pAPKDJf9zMP9lO/+UGv+9AP7fAPDMAPZmOv/EAPv4AvJXQ//6APFeP/+vCP/0APGNH/9cQP+eFP/oAPG4A/6KH/+8AP2pCv/FAPn7APPfAPHKAPS4Bv6FIf/lAPXzHPPgAPJhPf/sAPL/Nez4APN4Lv+IJP//QemFJf//R+d5Lf+JIv9fP/+UGv//R+h+Kv+bFf/eAPJtNf+VGf/yAPKQHf//QeiHI//QAPX/Ref3APP/MO2FJP+uB/+MH///L+3/NetpN/+vB///RejsAPFkOv+hEv9kPP//LO3/NepoOP//R+brAfC6Af7bAPLgAPDdAPFbP//4BPP/SOr1APDLAPa2Bv9qOP92L//CAPz/EfOAKf/UAPPGAPqrC/9oOP++AP7/NuyOHv/UAPRmO/+FJf+2BP//MO78CvL/POpuNv//POpWRf//Qeh6LP+cFv9kOv//Ke9gPf+aFf//F/H8APH/N+voAPD/SueWGP+BJ//CAPj7BvLRAPX2APByMf+hDf/hAPP/SOr/K+/jAPK1BP/QAPb/HfHNAPaNIP+4Av/zAPPOAPb/M+xdP/+5AP/HAPj/Tehx7sdAAAAA/HRSTlMABYVVdWhvPDWGfG5kWFhYRj4yMCwsKyIeE6mkoIuLiYWDb21pZWFNSERCLisrJhkSDge1oJyZlZN/enp3bGtnYV9eXFtVVU1HRT85ODY1NC4mIA8OCc2+uaako56dmJeWkZGJg39+fXl0dG5sa2lmZWRiXl5dW1lVUU9NTElHRUI9OTk3MiYkGArWzcnHwLu7trWxr62spqWenJqZlY6JiYSEgn9+fXl3d3V0cW1saGdeXlNRUE5NTT01MDAvKyoe19DHx8bDwLu6t7e0sqmpqKelpZ2alZCPjIaGgH10cWtiX15cWFZKRD4vHRfRvr28sK+YlpaNiHl4cThB/jUsAAAEnElEQVRIx2JAB4whBgYGIaEMxAGdUhYmJkUuFlY15mqfIILKORSvXZNnAgJFSxY2IOARDMGnnFEp7o4SK48aDysbiyXIHiDFxayPU72+7C2l9VsEfHw4ODh8BAWYWbmYLNnYLJlKcbhMz2L16iJBjt06Onp6QfpAEKTHwczCwsPKpai2G0sQACRukZPO6y2kq+utsaW66E6csfG0GHlWZmYetVJWFtZyDM8Y3Mjh5BUS0n3JmyN78uDB7pPnjMPDQXrkFVmZ1ViYBZg5UDUsy+Z0FhbW1sjh7D90hTcIbIauxsZcJfnw7hieci7m3QICjEjqn6xYlq0trO18o/8QpzhCOIRj4+rcuO5w+VIuNR3BaoQOiYXZC4HmZ086OlMcPSxy028BnZb7g0dHQAAumpc3v15EZNmkqa5Ygk9D1uKcbJyS0kafch2YBQBlZuaJiKyY+pkda4ALWVyZkz6nqLxaowgqUpN3l13k8fS57AyM2BIAg1BUlKyFrIag93pBsEjoBrsNIpoJsx5D1WPqeDllDmcUr5Cu93qwwCu7zJpXmbNuwpVjAud+zqh0XT2JLd4gnrrdcj/1ZBlPBjw6OKfMnCIkLqHNC+I4rbHzs0tMxpvwQ8/PPMorIS7ubMDAEJy/3KluTWQF3pTPUDVpwkKJdglnbQaGA/lpfBVpkQcYCFgxYapwe/uTegaGtvwUPr7EREK5cf6ZCa7iwq7AqBVVSSzmi1YhqGH6mRXt7FVgDWb5T09tJ6Th5tzpc0Xq66tAGqJ/PT3cREB9cMLdhFnsmuxVjAAxBBbGLioOEyWgoU1mQ4KMpiZ7DSPDa8f42MKwVgIaGmUqZGQ8gRqAljkuOmv7wYuABvVIpxPJnp6NmkA2v+2xRVL8DPgjzunC8hNr1Bs9/YC8HfzHzsbbBuO3Ie19cqSTup86KH537ZjdNZt7F171RhdO/fyyva6xwgjI6eDn7orgLsAfSIfN0lLqGrY3gHnbaiO6uK124vNC8fEUM74GL742MN+3Vq5n3kOrDtw6Os2izVL8Gur4IFzJ2nXSPanrsjpxalCJPR7t1dpUDEsPzWVfgTqy1uFSz//tU9hz0VYvFSOogGSlgoJ0X2qqPVblkrZS8WH8+0X3FyJiF6A9GfOAOmyWKGMqF+OWireSim0VDWwqRBJ2S8pQuNSnvERBEkV1Ry23nJQVN7+U7X6xQMdA5GBYlbTy9scjDmVLtCBaDF/v26OVJScnN9vKsaUgokUscMdzFLMMra+uXHrxbZJb2X1lhxIHZRsbG/tKLa2HWdtaxHa9KxAT2+mI7lgXE3Prpad7k1TdShzKKl80+/q+KLGx1/IPCIiQCwhoKcBMbG/WmpgsXjCx9/JK1U1ubs8c7mcob/P1F/OXnucfsNO+A2sAAuZiPsPcfKLJg1Xfby+9p+revGffvmfSCr7+lfaSuOLIw3Ty5IkzFltbr3qwabO7u+qlIxla7solRngS5t5Ha61NJ5teX3D96uXTvRdV3VXvNRPIjm9+uyw2nWFiar5g7WaPzZs8OhkIA8O9Hi6PXLZu3eqx15CBaGBkaIjF7QBYMGrq1RZRzQAAAABJRU5ErkJggg==",Le=({keywords:n,navid:e,...t})=>{const{ref:r,props:i}=QL(e),{currentSection:s}=Cu(),{checkVisible:o}=wo(),l=(Array.isArray(e)?e:[e]).includes(s||"");return f.jsx(dR,{ref:r,isCurrent:l,isVisible:o(n),navid:Array.isArray(e)?e[0]:e,...i,...t})},r6=()=>{const{filter:n,setFilter:e,checkVisible:t,noResult:r,setNoResult:i}=wo(),{updateRoute:s}=be(),o=x.useRef(null),{isAnyTextFieldFocused:a}=Zi();x.useEffect(()=>{const v=b=>{b.target instanceof HTMLElement&&(b.target.nodeName==="INPUT"||b.target.nodeName==="TEXTAREA"||b.target.isContentEditable)||b.key==="/"&&!a&&(b?.preventDefault(),o.current&&o.current.focus())};return window.addEventListener("keydown",v),()=>{window.removeEventListener("keydown",v)}}),x.useEffect(()=>{o.current&&o.current.focus()},[]),x.useEffect(()=>{!t(Object.values(at).flat())&&!t(Object.values(xn).flat())&&!t(Object.values(qt).flat())&&!t(Object.values(nn).flat())&&!t(Object.values(gr).flat())&&!t(Object.values(Wt).flat())?i(!0):i(!1)},[t,i,n]),x.useEffect(()=>{const v=b=>{b.key==="Escape"&&n&&(o.current?.blur(),b.stopPropagation())};return o.current?.addEventListener("keydown",v),()=>{o.current?.removeEventListener("keydown",v)}},[n]);const{settings:l,config:c}=Pe(),[u]=Te(l,["donations_enabled"]),d=Xn(l||[],c||{}),h=KS("welcomeEmails"),p=v=>{v&&(e(""),i(!1),s(v.currentTarget.id))},g=v=>{e(v.target.value),v.target.value&&document.querySelector(".admin-x-settings")?.scrollTo({top:0,left:0})},m=_("hidden pt-10 tablet:!visible tablet:!block");return f.jsxs("div",{className:"ml-auto flex w-full flex-col pt-0 tablet:max-w-[240px]","data-testid":"sidebar",children:[f.jsx("div",{className:"sticky top-0 flex content-stretch items-end tablet:h-20 tablet:bg-grey-50 xl:h-20 dark:bg-grey-975 dark:tablet:bg-[#101114]",children:f.jsxs("div",{className:"relative w-full",children:[f.jsx(ve,{className:"absolute left-3 top-3 z-10",colorClass:"text-grey-500",name:"magnifying-glass",size:"sm"}),f.jsx(tt,{autoComplete:"off",className:"mr-12 flex h-10 w-full items-center rounded-lg border border-transparent bg-white px-[33px] py-1.5 text-[14px] shadow-[0_0_1px_rgba(21,23,26,0.25),0_1px_3px_rgba(0,0,0,0.03),0_8px_10px_-12px_rgba(0,0,0,.1)] transition-colors hover:shadow-sm focus:border-green focus:bg-white focus:shadow-[0_0_0_2px_rgba(48,207,67,0.25)] focus:outline-2 tablet:mr-0 dark:border-transparent dark:bg-grey-925 dark:text-white dark:placeholder:text-grey-800 dark:focus:border-green dark:focus:bg-grey-950",containerClassName:"w-100",inputRef:o,placeholder:"Search settings",title:"Search",value:n,clearBg:!0,hideTitle:!0,unstyled:!0,onChange:g}),n?f.jsx(ne,{className:"absolute right-14 top-3 p-1 tablet:right-3",icon:"close",iconColorClass:"text-grey-700 !w-[10px] !h-[10px]",size:"sm",unstyled:!0,onClick:()=>{e(""),o.current?.focus()}}):f.jsx("div",{className:"absolute -right-1/2 top-[9px] hidden rounded border border-grey-400 bg-white px-1.5 py-0.5 text-2xs font-semibold uppercase tracking-wider text-grey-600 shadow-[0px_1px_#CED4D9] tablet:!visible tablet:right-3 tablet:!block dark:border-grey-800 dark:bg-grey-900 dark:text-grey-500 dark:shadow-[0px_1px_#626D79]",children:"/"})]})}),f.jsxs("nav",{className:m,id:"admin-x-settings-sidebar",children:[r&&f.jsxs("div",{className:"ml-2 text-base text-grey-700",children:[f.jsx("h2",{className:"mb-2 text-base font-semibold tracking-normal text-black dark:text-white",children:"No result"}),f.jsxs("div",{children:[`We couldn't find any setting matching '${n}'`,"."]})]}),f.jsxs(ds,{isVisible:t(Object.values(at).flat()),title:"General settings",children:[f.jsx(Le,{icon:"textfield",keywords:at.titleAndDescription,navid:"general",title:"Title & description",onClick:p}),f.jsx(Le,{icon:"world-clock",keywords:at.timeZone,navid:"timezone",title:"Timezone",onClick:p}),f.jsx(Le,{icon:"language",keywords:at.publicationLanguage,navid:"publication-language",title:"Publication language",onClick:p}),f.jsx(Le,{icon:"user-pen",keywords:at.users,navid:"staff",title:"Staff",onClick:p}),f.jsx(Le,{icon:"layer",keywords:at.metadata,navid:"metadata",title:"Meta data",onClick:p}),f.jsx(Le,{icon:"like",keywords:at.socialAccounts,navid:"social-accounts",title:"Social accounts",onClick:p}),f.jsx(Le,{icon:"baseline-chart",keywords:at.analytics,navid:"analytics",title:"Analytics",onClick:p}),f.jsx(Le,{icon:"lock-locked",keywords:at.lockSite,navid:"locksite",title:"Make this site private",onClick:p})]}),f.jsxs(ds,{isVisible:t(Object.values(xn).flat()),title:"Site",children:[f.jsx(Le,{icon:"palette",keywords:xn.design,navid:"design",title:"Design & branding",onClick:p}),f.jsx(Le,{icon:"layout-2-col",keywords:xn.theme,navid:"theme",title:"Theme",onClick:p}),f.jsx(Le,{icon:"navigation",keywords:xn.navigation,navid:"navigation",title:"Navigation",onClick:p}),f.jsx(Le,{icon:"megaphone",keywords:xn.announcementBar,navid:"announcement-bar",title:"Announcement bar",onClick:p})]}),f.jsxs(ds,{isVisible:t([...Object.values(qt).flat(),...gr.newslettersNavMenu]),title:"Membership",children:[f.jsx(Le,{icon:"key",keywords:qt.access,navid:["members","spam-filters"],title:"Access",onClick:p}),f.jsx(Le,{icon:"bills",keywords:qt.tiers,navid:"tiers",title:"Tiers",onClick:p}),f.jsx(Le,{icon:"portal",keywords:qt.portal,navid:"portal",title:"Signup portal",onClick:p}),h&&f.jsx(Le,{icon:"mailplus",keywords:qt.memberEmails,navid:"memberemails",title:"Welcome emails",onClick:p}),u&&d&&f.jsx(Le,{icon:"piggybank",keywords:qt.tips,navid:"tips-and-donations",title:"Tips & donations",onClick:p}),f.jsx(Le,{icon:"email",keywords:gr.newslettersNavMenu,navid:["enable-newsletters","default-recipients","newsletters","mailgun"],title:"Newsletters",onClick:p})]}),f.jsxs(ds,{isVisible:t(Object.values(nn).flat()),title:"Growth",children:[f.jsx(Le,{icon:"ap-network",keywords:nn.network,navid:"network",title:"Network",onClick:p}),f.jsx(Le,{icon:"globe-simple",keywords:nn.explore,navid:"explore",title:"Ghost Explore",onClick:p}),f.jsx(Le,{icon:"heart",keywords:nn.recommendations,navid:"recommendations",title:"Recommendations",onClick:p}),f.jsx(Le,{icon:"emailfield",keywords:nn.embedSignupForm,navid:"embed-signup-form",title:"Signup forms",onClick:p}),d&&f.jsx(Le,{icon:"discount",keywords:nn.offers,navid:"offers",title:"Offers",onClick:p})]}),f.jsxs(ds,{isVisible:t(Object.values(Wt).flat()),title:"Advanced",children:[f.jsx(Le,{icon:"modules-3",keywords:Wt.integrations,navid:"integrations",title:"Integrations",onClick:p}),f.jsx(Le,{icon:"download",keywords:Wt.migrationtools,navid:"migration",title:"Import/Export",onClick:p}),f.jsx(Le,{icon:"brackets",keywords:Wt.codeInjection,navid:"code-injection",title:"Code injection",onClick:p}),f.jsx(Le,{icon:"labs-flask",keywords:Wt.labs,navid:"labs",title:"Labs",onClick:p}),f.jsx(Le,{icon:"time-back",keywords:Wt.history,navid:"history",title:"History",onClick:p})]}),!n&&f.jsxs("a",{className:"w-100 mb-10 mt-1 flex h-[38px] cursor-pointer items-center rounded-lg px-3 py-2 text-left text-[14px] font-medium text-grey-800 transition-all hover:bg-grey-200 focus:bg-grey-100 dark:text-grey-600 dark:hover:bg-grey-950 dark:focus:bg-grey-925",onClick:()=>{s("about")},children:[f.jsx("img",{alt:"Ghost Logo",className:"mr-[7px] size-[18px]",src:n6}),"About Ghost"]})]})]})},lb=({children:n})=>f.jsxs(f.Fragment,{children:[f.jsx("div",{className:"fixed right-0 top-2 z-50 flex justify-end bg-transparent p-8 tablet:fixed tablet:top-0 tablet:px-8",id:"done-button-container",children:f.jsx(_L,{})}),f.jsx("div",{className:"w-full tablet:fixed tablet:left-0 tablet:top-0 tablet:flex tablet:h-full dark:bg-grey-975",id:"admin-x-settings-content",children:n})]}),i6=()=>{const{currentUser:n}=Pe(),{loadingModal:e}=be(),{isDirty:t}=qc(),r=i=>{window.location.hash=i};return x.useEffect(()=>{const i=s=>{s.key==="Escape"&&js(t,()=>{r("/")})};return window.addEventListener("keydown",i),()=>{window.removeEventListener("keydown",i)}},[t]),x.useEffect(()=>{G2.remove()},[]),K2(n)?vb(n)?f.jsx(lb,{children:f.jsxs("div",{className:"mx-auto w-full max-w-5xl overflow-y-auto px-[5vmin] tablet:mt-16 xl:mt-10",id:"admin-x-settings-scroller",children:[f.jsx(ft,{className:"mb-[5vmin]",children:"Settings"}),f.jsx($S,{highlight:!1,keywords:[]})]})}):f.jsxs(lb,{children:[e&&f.jsx("div",{className:`fixed inset-0 z-40 h-[calc(100vh-55px)] w-[100vw] tablet:h-[100vh] ${_x}`}),f.jsx("div",{className:"no-scrollbar fixed inset-x-0 top-0 z-[35] flex-1 basis-[320px] bg-white p-8 tablet:relative tablet:inset-x-auto tablet:top-auto tablet:h-full tablet:overflow-y-scroll tablet:bg-grey-50 tablet:py-0 dark:bg-grey-975 dark:tablet:bg-[#101114]",id:"admin-x-settings-sidebar-scroller",children:f.jsx("div",{className:"relative w-full",children:f.jsx(r6,{})})}),f.jsx("div",{className:"relative h-full flex-1 overflow-y-scroll bg-white pt-12 tablet:basis-[800px] dark:bg-grey-975 dark:tablet:bg-black",id:"admin-x-settings-scroller",children:f.jsx(t6,{})})]}):null},s6={"design/change-theme":"DesignAndThemeModal","design/edit":"DesignAndThemeModal","theme/install":"DesignAndThemeModal","navigation/edit":"NavigationModal","staff/invite":"InviteUserModal","staff/:slug/social-links":"UserDetailModal","staff/:slug/email-notifications":"UserDetailModal","staff/:slug/edit":"UserDetailModal","staff/:slug":"UserDetailModal","portal/edit":"PortalModal","tiers/add":"TierDetailModal","tiers/:id":"TierDetailModal","stripe-connect":"StripeConnectModal","newsletters/new":"AddNewsletterModal","newsletters/:id":"NewsletterDetailModal","history/view":"HistoryModal","history/view/:user":"HistoryModal","integrations/zapier":"ZapierModal","integrations/slack":"SlackModal","integrations/unsplash":"UnsplashModal","integrations/firstpromoter":"FirstPromoterModal","integrations/pintura":"PinturaModal","integrations/new":"AddIntegrationModal","integrations/:id":"CustomIntegrationModal","recommendations/add":"AddRecommendationModal","recommendations/edit":"EditRecommendationModal","announcement-bar/edit":"AnnouncementBarModal","embed-signup-form/show":"EmbedSignupFormModal","offers/edit":"OffersContainerModal","offers/edit/:id":"OffersContainerModal","offers/new":"OffersContainerModal","explore/testimonial":"TestimonialsModal",about:"AboutModal"},o6=()=>no(()=>import("./modals-CumFuZ2d.js"),__vite__mapDeps([10,1,2,4,5,3,6,11])),a6=()=>{const{updateNavigatedSection:n,scrollToSection:e}=Cu(),{route:t}=be();return KL((r,i)=>{r===i&&e(r.split("/")[0])},[e]),x.useEffect(()=>{t!==void 0&&n(t.split("/")[0])},[t,n]),null};function l6({designSystem:n,upgradeStatus:e}){return f.jsx(R_,{upgradeStatus:e,children:f.jsx(Ye.Provider,{children:f.jsx(GL,{basePath:"settings",modals:{paths:s6,load:o6},children:f.jsxs(bR,{className:"admin-x-settings",...n,children:[f.jsx(a6,{}),f.jsx(i6,{})]})})})})}async function c6(){return await no(()=>import("./koenig-lexical-DgAlBHHS.js"),__vite__mapDeps([12,1,2]))}function u6(){return Vr.createPortal(f.jsx("div",{className:"shade shade-admin",style:{position:"absolute",inset:0,zIndex:20},children:f.jsx(l6,{designSystem:{darkMode:!1,fetchKoenigLexical:c6}})}),document.body)}const e8=Object.freeze(Object.defineProperty({__proto__:null,default:u6},Symbol.toStringTag,{value:"Module"}));export{Gr as $,yr as A,ne as B,_s as C,dN as D,G as E,js as F,Gn as G,ft as H,We as I,dE as J,TC as K,If as L,Or as M,_y as N,ch as O,bN as P,R6 as Q,LL as R,gt as S,dt as T,Ye as U,be as V,ku as W,e_ as X,Pe as Y,Xi as Z,ru as _,An as a,ei as a$,qh as a0,Mu as a1,$6 as a2,B6 as a3,Ot as a4,uh as a5,Qv as a6,qj as a7,MC as a8,tt as a9,ep as aA,Cd as aB,sE as aC,G6 as aD,ZS as aE,YS as aF,WB as aG,K6 as aH,Z6 as aI,Q6 as aJ,N6 as aK,X6 as aL,zB as aM,Y6 as aN,qB as aO,J6 as aP,rc as aQ,mS as aR,Ji as aS,qr as aT,z6 as aU,W6 as aV,q6 as aW,wS as aX,Ku as aY,wx as aZ,iE as a_,eb as aa,AC as ab,Kt as ac,jI as ad,lR as ae,U6 as af,P6 as ag,v6 as ah,O6 as ai,Co as aj,So as ak,jx as al,Sx as am,Sn as an,H6 as ao,zS as ap,q_ as aq,sB as ar,V6 as as,Uu as at,wb as au,Ni as av,cu as aw,Fn as ax,T6 as ay,V5 as az,Xt as b,nh as b0,yS as b1,Vh as b2,r5 as b3,Q_ as b4,e5 as b5,b6,L6 as b7,$i as b8,xS as b9,j6 as ba,bS as bb,_6 as bc,HS as bd,F6 as be,n6 as bf,Fp as bg,uR as bh,KS as bi,Ze as bj,Yv as bk,Xv as bl,Jv as bm,Cj as bn,Zv as bo,Sj as bp,gS as bq,aB as br,e8 as bs,xe as c,M6 as d,I6 as e,YN as f,C6 as g,At as h,FN as i,y6 as j,k6 as k,A6 as l,_N as m,LN as n,E6 as o,w6 as p,d3 as q,B as r,RN as s,j as t,Zi as u,D6 as v,yP as w,sC as x,ir as y,qc as z};
|