ghost 6.64.0 → 6.65.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/bin/create-migration.js +15 -0
- package/components/tryghost-adapter-base-scheduling-0.2.4.tgz +0 -0
- package/components/tryghost-api-framework-0.0.0.tgz +0 -0
- package/components/tryghost-i18n-0.0.0.tgz +0 -0
- package/components/tryghost-kg-default-cards-10.3.6.tgz +0 -0
- package/components/tryghost-kg-lexical-html-renderer-1.5.1.tgz +0 -0
- package/components/tryghost-metafield-types-0.0.0.tgz +0 -0
- package/content/themes/casper/assets/built/casper.js +1 -1
- package/content/themes/casper/assets/built/screen.css +1 -1
- package/content/themes/casper/assets/css/screen.css +15 -2
- package/content/themes/casper/assets/js/init.js +37 -9
- package/content/themes/casper/package.json +8 -8
- package/content/themes/source/assets/built/screen.css +1 -1
- package/content/themes/source/assets/built/source.js +1 -1
- package/content/themes/source/assets/css/screen.css +14 -1
- package/content/themes/source/assets/js/main.js +24 -4
- package/content/themes/source/package.json +7 -7
- package/core/boot.js +22 -16
- package/core/bridge.js +1 -1
- package/core/built/admin/assets/Combination-DQ6f9A5P.js +41 -0
- package/core/built/admin/assets/{PolarAngleAxis-a81ieQUO.js → PolarAngleAxis-BBaU7PRV.js} +1 -1
- package/core/built/admin/assets/RadialBarChart-Bp20JPnA.js +1 -0
- package/core/built/admin/assets/{about-39CAfroa.js → about-Dp43j18M.js} +1 -1
- package/core/built/admin/assets/accordion-h62UzFhj.js +1 -0
- package/core/built/admin/assets/account-migration-CBTbtX6Q.js +1 -0
- package/core/built/admin/assets/action-list-DC9QpX-l.js +1 -0
- package/core/built/admin/assets/activitypub/{account-migration-KA6Jjf9L.js → account-migration-B1DUZS4Q.js} +8 -8
- package/core/built/admin/assets/activitypub/activitypub.js +24 -11
- package/core/built/admin/assets/activitypub/avatar-CRGud8yf.js +153 -0
- package/core/built/admin/assets/activitypub/{avatar-flipboard-csQaNeYK.js → avatar-flipboard-BZNFAXfm.js} +3 -3
- package/core/built/admin/assets/activitypub/{bluesky-sharing-C7nTDMvw.js → bluesky-sharing-Cg_v-LwS.js} +30 -31
- package/core/built/admin/assets/activitypub/{chunk-KS7C4IRE-Ck3O4oo2.js → chunk-KS7C4IRE-CTUL98Lc.js} +2498 -1885
- package/core/built/admin/assets/activitypub/{content-formatters-CLcjaBwV.js → content-formatters-D7GWP7nH.js} +23 -24
- package/core/built/admin/assets/activitypub/{copy-DcOh8kXw.js → copy-CgzTvoeR.js} +2 -2
- package/core/built/admin/assets/activitypub/{domain-fZ-X8i4-.js → domain-C3G_nkHU.js} +46 -46
- package/core/built/admin/assets/activitypub/{edit-profile-BqMLQV88.js → edit-profile-C8cCY-AK.js} +927 -928
- package/core/built/admin/assets/activitypub/{explore-B4yPoP8E.js → explore-NlDT4inq.js} +11 -11
- package/core/built/admin/assets/activitypub/{feed-BRC_mvAe.js → feed-DF22jCTV.js} +10 -10
- package/core/built/admin/assets/activitypub/{field-COacNgOt.js → field-95-iuTte.js} +4 -4
- package/core/built/admin/assets/activitypub/{hash-C7u-irQQ.js → hash-R7LMLnhY.js} +2 -2
- package/core/built/admin/assets/activitypub/{inbox-CbTTdDQ3.js → inbox-DUJUiV6x.js} +2 -2
- package/core/built/admin/assets/activitypub/{inbox-BW-yvUoN.js → inbox-DerExBzA.js} +416 -414
- package/core/built/admin/assets/activitypub/{label-kPMmYI7l.js → label-EwCn1QYc.js} +4 -4
- package/core/built/admin/assets/activitypub/layout-Dy6NnW1G.js +1 -0
- package/core/built/admin/assets/activitypub/{moderation-CuidJzc0.js → moderation-BSkfiVYo.js} +73 -75
- package/core/built/admin/assets/activitypub/{note-CAMRRSqD.js → note-DOnAJTXK.js} +9 -9
- package/core/built/admin/assets/activitypub/{notifications-BmNlXGgp.js → notifications-DZc6XTjG.js} +27 -27
- package/core/built/admin/assets/activitypub/{onboarding-Dmun9jr_.js → onboarding-8vEIwYTH.js} +3 -3
- package/core/built/admin/assets/activitypub/{onboarding-Bqg7fh_L.js → onboarding-DYVqbNmp.js} +2 -2
- package/core/built/admin/assets/activitypub/{preferences--oH19wf9.js → preferences-DDok6F2N.js} +1418 -1390
- package/core/built/admin/assets/activitypub/{profile-DH_tQx2D.js → profile-DjVa2hUk.js} +254 -255
- package/core/built/admin/assets/activitypub/{reply-Cap9PxSH.js → reply-DtXBpHxu.js} +2 -2
- package/core/built/admin/assets/activitypub/routes-Cw302e1c.js +4946 -0
- package/core/built/admin/assets/activitypub/{separator-CAxxu8VV.js → separator-FpRpVDd3.js} +8 -9
- package/core/built/admin/assets/activitypub/settings-yK-puALn.js +314 -0
- package/core/built/admin/assets/activitypub/{site-BYps63oh.js → site-CHw0R2PA.js} +2 -2
- package/core/built/admin/assets/activitypub/{step-1-CKjR2KAm.js → step-1-737bnvxk.js} +7 -7
- package/core/built/admin/assets/activitypub/{step-2-B6PKfOUQ.js → step-2-DBaIsAsM.js} +7 -7
- package/core/built/admin/assets/activitypub/{step-3-C-qBbcUo.js → step-3-BBmy9m9V.js} +23 -23
- package/core/built/admin/assets/activitypub/tabs-LQ2xirdm.js +1101 -0
- package/core/built/admin/assets/activitypub/{topic-filter-DsUOuu0k.js → topic-filter-75Nu0CKj.js} +4 -4
- package/core/built/admin/assets/activitypub/{use-activity-pub-queries-CX9snsLs.js → use-activity-pub-queries-CYI2QJMs.js} +58 -58
- package/core/built/admin/assets/activitypub/{use-navigate-with-base-path-DsJTGDSS.js → use-navigate-with-base-path-B4jZ8hyg.js} +3924 -1403
- package/core/built/admin/assets/activitypub/{use-reply-chain-data-AJi9zkzm.js → use-reply-chain-data-BHmFxc3U.js} +6 -6
- package/core/built/admin/assets/activitypub/users-CSjOwpT9.js +886 -0
- package/core/built/admin/assets/activitypub/{x-DR8AT3-4.js → x-B9ptWCds.js} +2 -2
- package/core/built/admin/assets/{add-integration-modal-B12oRifD.js → add-integration-modal-BwePhq95.js} +1 -1
- package/core/built/admin/assets/add-newsletter-modal-Zv0I7Msm.js +1 -0
- package/core/built/admin/assets/{add-recommendation-modal-CJf92edY.js → add-recommendation-modal-cdLv0wHy.js} +1 -1
- package/core/built/admin/assets/analytics-DY8_SaP7.js +1 -0
- package/core/built/admin/assets/announcement-bar-modal-C-2yWwag.js +1 -0
- package/core/built/admin/assets/api-keys-BHKATUqQ.js +1 -0
- package/core/built/admin/assets/{audience-6GXevic-.js → audience-wRcSN0jV.js} +1 -1
- package/core/built/admin/assets/{automated-emails-DJQ4uNZo.js → automated-emails-CzUa3v4d.js} +1 -1
- package/core/built/admin/assets/automations-DupSsSOr.js +1 -0
- package/core/built/admin/assets/badge-CI1Z0xyG.js +1 -0
- package/core/built/admin/assets/bluesky-sharing-B8PC1SBj.js +1 -0
- package/core/built/admin/assets/box-LUuYRT-1.js +1 -0
- package/core/built/admin/assets/brand-icon-CrmbX86T.js +1 -0
- package/core/built/admin/assets/breadcrumb-DDDpzLyo.js +1 -0
- package/core/built/admin/assets/button-D414TI3B.js +1 -0
- package/core/built/admin/assets/calendar-Cp_opo3i.js +1 -0
- package/core/built/admin/assets/card-C2dfd5u0.js +1 -0
- package/core/built/admin/assets/chart-B_UNLXse.js +63 -0
- package/core/built/admin/assets/chart-helpers-Czu_9QpJ.js +1 -0
- package/core/built/admin/assets/checkbox-CFFqf0Nh.js +1 -0
- package/core/built/admin/assets/{chunk.368.22ce1b732c0b40abd3f1.js → chunk.201.6961b57ed7a281ac193e.js} +23 -19
- package/core/built/admin/assets/chunk.524.0b850e72ec49a0fa3882.js +25 -0
- package/core/built/admin/assets/chunk.582.db2ae9e968256e8d58ac.js +27 -0
- package/core/built/admin/assets/code-editor-view-Bd_nnHKk.js +1 -0
- package/core/built/admin/assets/code-editor-view-BeU3Yf9M.js +1 -0
- package/core/built/admin/assets/color-picker-Bzm1V7qg.js +3 -0
- package/core/built/admin/assets/color-picker-field-DP0moHz9.js +1 -0
- package/core/built/admin/assets/combobox-6_ruuTuj.js +1 -0
- package/core/built/admin/assets/command-B5wfm6pd.js +1 -0
- package/core/built/admin/assets/comments-BB26dUSl.js +1 -0
- package/core/built/admin/assets/confirmation-context-znVJD4pX.js +1 -0
- package/core/built/admin/assets/container-CHHif8km.js +1 -0
- package/core/built/admin/assets/{content-api-modal-0ZjuLcQ8.js → content-api-modal-DOHwl0yZ.js} +1 -1
- package/core/built/admin/assets/context-menu-BpY46Dlb.js +1 -0
- package/core/built/admin/assets/copy-field-DRBx6Ady.js +1 -0
- package/core/built/admin/assets/create-ghost-browse-value-source-eIXo5Qws.js +1 -0
- package/core/built/admin/assets/custom-field-type-option-DrSlETOI.js +1 -0
- package/core/built/admin/assets/custom-integration-modal-Dgo425Ec.js +1 -0
- package/core/built/admin/assets/data-list-DM8yqpXi.js +1 -0
- package/core/built/admin/assets/date-range-select-DdC23c13.js +1 -0
- package/core/built/admin/assets/design-and-theme-modal-CbSu9IT4.js +2 -0
- package/core/built/admin/assets/detail-page-CN4NdhpV.js +1 -0
- package/core/built/admin/assets/dirty-confirm-dialog-BT_Vq9TD.js +1 -0
- package/core/built/admin/assets/{disabled-sources-indicator-CLZhMv8J.js → disabled-sources-indicator-C5xtW0Q2.js} +1 -1
- package/core/built/admin/assets/dist-B40T-RCQ.js +1 -0
- package/core/built/admin/assets/dist-CrlaEoaK.js +1 -0
- package/core/built/admin/assets/domain-BPReCZa8.js +1 -0
- package/core/built/admin/assets/dropzone-B2auMkf2.js +5 -0
- package/core/built/admin/assets/edit-profile-B7XTBzKe.js +1 -0
- package/core/built/admin/assets/editor-BcaC9dqm.js +8 -0
- package/core/built/admin/assets/editor-screen-FuMpItC8.js +27 -0
- package/core/built/admin/assets/email-sending-status-provider-9d81o1C2.js +1 -0
- package/core/built/admin/assets/embed-signup-form-modal-CbVbMsxl.js +8 -0
- package/core/built/admin/assets/empty-indicator-CSQts7GV.js +1 -0
- package/core/built/admin/assets/explore-DbSXFTJN.js +1 -0
- package/core/built/admin/assets/feature-image-placeholder-DFXA4vfJ.js +1 -0
- package/core/built/admin/assets/feed-W7RlF-Gp.js +1 -0
- package/core/built/admin/assets/field-BXEh3ptU.js +1 -0
- package/core/built/admin/assets/filter-sources-DHK2IoCk.js +1 -0
- package/core/built/admin/assets/filters-0SYNTqyQ.js +1 -0
- package/core/built/admin/assets/filters-DTtZKQyq.js +1 -0
- package/core/built/admin/assets/{first-promoter-modal-wr73Dldc.js → first-promoter-modal-DcoN_OXu.js} +1 -1
- package/core/built/admin/assets/{ghost-a1e6e172c6917e8ef8fa6b0007756d9b.js → ghost-25495154132af7305cb7b646fd83f48f.js} +562 -514
- package/core/built/admin/assets/gift-link-modal-BX-Q1TOk.js +1 -0
- package/core/built/admin/assets/grid-BEUIDQX7.js +1 -0
- package/core/built/admin/assets/growth-G6PLO4aF.js +1 -0
- package/core/built/admin/assets/growth-tkD-fBOY.js +3 -0
- package/core/built/admin/assets/heading-ih-fOVqF.js +1 -0
- package/core/built/admin/assets/history-modal-Ca-gStoq.js +1 -0
- package/core/built/admin/assets/html-field-B3CrKV9Y.js +1 -0
- package/core/built/admin/assets/images-H-BIm8OQ.js +1 -0
- package/core/built/admin/assets/{inbox-DgSZ6w2p.js → inbox-DBbDVMPz.js} +14 -14
- package/core/built/admin/assets/index-DOF2jDq0.js +4 -0
- package/core/built/admin/assets/index-JrrNchW1.css +2 -0
- package/core/built/admin/assets/input-group-CvH-3d3F.js +1 -0
- package/core/built/admin/assets/input-surface-CL23Mlh8.js +1 -0
- package/core/built/admin/assets/integration-header-C7GXGis_.js +1 -0
- package/core/built/admin/assets/invite-user-modal-EJ2_6RpV.js +1 -0
- package/core/built/admin/assets/isPlainObject-BzzgUf1E.js +1 -0
- package/core/built/admin/assets/{koenig-lexical-CXVgQFUk.js → koenig-lexical-Dkwee5FG.js} +1 -1
- package/core/built/admin/assets/koenig-loader-BzXCXHoA.js +2 -0
- package/core/built/admin/assets/kpi-card-iCDUTgOR.js +1 -0
- package/core/built/admin/assets/kpi-card-jTnpLKGr.js +1 -0
- package/core/built/admin/assets/kpi-helpers-Criu0YAf.js +1 -0
- package/core/built/admin/assets/kpi-tabs-DbOmmyOo.js +1 -0
- package/core/built/admin/assets/label-Du0yqMqL.js +1 -0
- package/core/built/admin/assets/label-picker-Bq1XXr1D.js +1 -0
- package/core/built/admin/assets/{labels-KMkFoRG6.js → labels-0x2NfLtC.js} +1 -1
- package/core/built/admin/assets/layout-Ckwzsnsu.js +1 -0
- package/core/built/admin/assets/lib-CCz2mjm8.js +2 -0
- package/core/built/admin/assets/link-helpers-o9GgBTni.js +1 -0
- package/core/built/admin/assets/{links-FwNCVyVe.js → links-Ctujreuh.js} +1 -1
- package/core/built/admin/assets/list-page-CH_wnDC3.js +1 -0
- package/core/built/admin/assets/member-activity-CsAh6MxK.js +1 -0
- package/core/built/admin/assets/member-activity-feed-0ytsQbtY.js +1 -0
- package/core/built/admin/assets/member-custom-fields-CTFGnnYv.js +1 -0
- package/core/built/admin/assets/member-detail-QU3vB1ML.js +1 -0
- package/core/built/admin/assets/members-CtMVO_AB.js +4 -0
- package/core/built/admin/assets/modal-page-8Ipfl51B.js +1 -0
- package/core/built/admin/assets/moderation-B8VtA-W0.js +1 -0
- package/core/built/admin/assets/multi-select-combobox-_9wEYmGv.js +1 -0
- package/core/built/admin/assets/navigation-modal-CGcjJvkc.js +1 -0
- package/core/built/admin/assets/newsletter-BpHjjqmq.js +1 -0
- package/core/built/admin/assets/newsletter-detail-modal-DzTbGOyo.js +1 -0
- package/core/built/admin/assets/newsletter-emails-BMKH4Osp.js +1 -0
- package/core/built/admin/assets/newsletters-BxC84_cL.js +1 -0
- package/core/built/admin/assets/note-BPtEzzZS.js +1 -0
- package/core/built/admin/assets/notifications-ng3ulEdp.js +1 -0
- package/core/built/admin/assets/offers-container-modal-CwqnRa3T.js +1 -0
- package/core/built/admin/assets/onboarding-route-CplZzd7F.js +1 -0
- package/core/built/admin/assets/overview-B0yD9OoX.js +1 -0
- package/core/built/admin/assets/overview-C4eJzQqi.js +1 -0
- package/core/built/admin/assets/page-header-CdCpekG9.js +1 -0
- package/core/built/admin/assets/pagemenu-CKQD9hoP.js +1 -0
- package/core/built/admin/assets/pages-route-CKsnxIvw.js +1 -0
- package/core/built/admin/assets/{pintura-modal-BljM7hf8.js → pintura-modal-C5jzeyGk.js} +1 -1
- package/core/built/admin/assets/portal-frame-DYo0bh0E.js +1 -0
- package/core/built/admin/assets/portal-modal-C0d8xjKa.js +1 -0
- package/core/built/admin/assets/post-analytics-C5C7IyAm.js +1 -0
- package/core/built/admin/assets/post-analytics-header-DKWHwoK2.js +1 -0
- package/core/built/admin/assets/{post-analytics-provider-CgreZDjS.js → post-analytics-provider-BqCPPxmW.js} +1 -1
- package/core/built/admin/assets/post-share-modal-wxmqbAv_.js +1 -0
- package/core/built/admin/assets/posts-list-screen-B978ZO0R.js +2 -0
- package/core/built/admin/assets/posts-route-CDqxKazl.js +1 -0
- package/core/built/admin/assets/preferences-CnejTRc4.js +5 -0
- package/core/built/admin/assets/preview-chrome-C7yZWVLZ.js +1 -0
- package/core/built/admin/assets/preview-modal-CFUxUGHp.js +1 -0
- package/core/built/admin/assets/profile-ClRGiOqA.js +1 -0
- package/core/built/admin/assets/radio-group-CTmLo0h9.js +1 -0
- package/core/built/admin/assets/router-provider-DDZvgS3V.js +1 -0
- package/core/built/admin/assets/select-D_4xWFYv.js +1 -0
- package/core/built/admin/assets/settings-BRl7-7a9.js +1 -0
- package/core/built/admin/assets/settings-BoQcPa-y.js +4 -0
- package/core/built/admin/assets/settings-breadcrumbs-C9Yxl81q.js +1 -0
- package/core/built/admin/assets/{dist-BXHrDV19.js → shade-scope-Cccj-c7I-D0XwkdKQ.js} +5 -3
- package/core/built/admin/assets/share-modal-DBqZobuR.js +1 -0
- package/core/built/admin/assets/simple-pagination-D5t_ox6x.js +1 -0
- package/core/built/admin/assets/skeleton-CPcTiTSX.js +1 -0
- package/core/built/admin/assets/{slack-modal-D7W_fNON.js → slack-modal-BF9ex8cd.js} +1 -1
- package/core/built/admin/assets/sort-button-C0EXGjnS.js +1 -0
- package/core/built/admin/assets/{source-icon-CQboPZQ3.js → source-icon-BzzftCQ2.js} +1 -1
- package/core/built/admin/assets/stats-view-CzpGoHzF.js +1 -0
- package/core/built/admin/assets/{step-1-BKhjy0PV.js → step-1-CBUYUPPF.js} +1 -1
- package/core/built/admin/assets/{step-2-PxA1OM7R.js → step-2-CEIXUwQa.js} +1 -1
- package/core/built/admin/assets/{step-3-BJbAiq16.js → step-3-C1HA5i1N.js} +2 -2
- package/core/built/admin/assets/stripe-button-DMFsLs80.js +1 -0
- package/core/built/admin/assets/stripe-connect-modal-CEvxCUTv.js +1 -0
- package/core/built/admin/assets/switch-DoOJF2yg.js +1 -0
- package/core/built/admin/assets/table-BDYbUHJz.js +1 -0
- package/core/built/admin/assets/tabs-BZyz4ZCH.js +1 -0
- package/core/built/admin/assets/tag-detail-CFzaz_9E.js +2 -0
- package/core/built/admin/assets/tag-picker-BKUCZuRc.js +1 -0
- package/core/built/admin/assets/tags-Bs1FiD7m.js +1 -0
- package/core/built/admin/assets/{testimonials-modal-Dkt6ODLW.js → testimonials-modal-CVm0_7E-.js} +1 -1
- package/core/built/admin/assets/text-BLI0C8Mc.js +1 -0
- package/core/built/admin/assets/textarea-C5qolByg.js +1 -0
- package/core/built/admin/assets/tier-detail-modal-Cmwzi-e7.js +1 -0
- package/core/built/admin/assets/toggle-group-BTL1QsWY.js +1 -0
- package/core/built/admin/assets/{topic-filter-DVOe3D-b.js → topic-filter-BMjhquv7.js} +1 -1
- package/core/built/admin/assets/transistor-modal-hMv53jF8.js +1 -0
- package/core/built/admin/assets/trend-badge-1w_HEzkG.js +1 -0
- package/core/built/admin/assets/{unsplash-modal-DXt7Brum.js → unsplash-modal-jzC8lEB2.js} +1 -1
- package/core/built/admin/assets/use-analytics-data-B3lGOxsC.js +1 -0
- package/core/built/admin/assets/use-availability-DnKqOyqd.js +1 -0
- package/core/built/admin/assets/{use-check-theme-limit-error-JD-J5aaZ.js → use-check-theme-limit-error-C1tc2P4N.js} +2 -2
- package/core/built/admin/assets/use-filter-params-DU-aiaTb.js +1 -0
- package/core/built/admin/assets/{use-filterable-api-CEMSAYPg.js → use-filterable-api-CxCrnPxG.js} +1 -1
- package/core/built/admin/assets/use-growth-stats-E13rMQUE.js +1 -0
- package/core/built/admin/assets/use-limiter-DlL7au90.js +19 -0
- package/core/built/admin/assets/{use-navigate-with-base-path-88EQpw2k.js → use-navigate-with-base-path-BzgNwMAx.js} +1 -1
- package/core/built/admin/assets/{use-pintura-config-BmU45Ruy.js → use-pintura-config-CtEV1JQY.js} +1 -1
- package/core/built/admin/assets/{use-pintura-editor-Bz2bZ4iT.js → use-pintura-editor-CaxE64kD.js} +1 -1
- package/core/built/admin/assets/use-reply-chain-data-BST2OgCM.js +1 -0
- package/core/built/admin/assets/use-sending-eta-DR9ueMH8.js +1 -0
- package/core/built/admin/assets/use-setting-group-ldtX1Vsk.js +1 -0
- package/core/built/admin/assets/use-settings-navigation-CzGU4sus.js +1 -0
- package/core/built/admin/assets/use-staff-users-DoeXaPsb.js +1 -0
- package/core/built/admin/assets/use-tinybird-query-BaBNCaj0.js +1 -0
- package/core/built/admin/assets/{use-tinybird-token-Lk1RSn0t.js → use-tinybird-token-CnZ19NDf.js} +1 -1
- package/core/built/admin/assets/{use-url-input-DpmbDppC.js → use-url-input-C5KHJw79.js} +1 -1
- package/core/built/admin/assets/user-detail-modal-Dm0KfPeR.js +1 -0
- package/core/built/admin/assets/{vendor-2dd263291938d407802568d3357ec69e.js → vendor-97e91ff8dd1457c668f9ef103ee1a77b.js} +2748 -2977
- package/core/built/admin/assets/virtual-list-tAuPUICw.js +1 -0
- package/core/built/admin/assets/web-BQlKcW2x.js +2 -0
- package/core/built/admin/assets/web-NTT5DkEz.js +1 -0
- package/core/built/admin/assets/{zapier-modal-BafLUO4R.js → zapier-modal-DsHG9Oev.js} +1 -1
- package/core/built/admin/index.html +22 -24
- package/core/frontend/apps/private-blogging/index.js +2 -2
- package/core/frontend/apps/private-blogging/lib/middleware.js +1 -1
- package/core/frontend/apps/private-blogging/lib/router.js +1 -1
- package/core/frontend/helpers/cancel_link.js +3 -3
- package/core/frontend/helpers/content.js +2 -2
- package/core/frontend/helpers/content_api_url.js +1 -1
- package/core/frontend/helpers/date.js +1 -1
- package/core/frontend/helpers/foreach.js +5 -5
- package/core/frontend/helpers/get.js +7 -4
- package/core/frontend/helpers/ghost_head.js +2 -2
- package/core/frontend/helpers/has.js +1 -3
- package/core/frontend/helpers/link.js +7 -7
- package/core/frontend/helpers/link_class.js +2 -2
- package/core/frontend/helpers/navigation.js +1 -2
- package/core/frontend/helpers/recommendations.js +5 -6
- package/core/frontend/helpers/tiers.js +1 -1
- package/core/frontend/helpers/total_members.js +1 -1
- package/core/frontend/helpers/total_paid_members.js +1 -1
- package/core/frontend/meta/author-url.js +1 -1
- package/core/frontend/meta/modified-date.js +1 -1
- package/core/frontend/meta/published-date.js +1 -1
- package/core/frontend/meta/schema.js +3 -8
- package/core/frontend/meta/structured-data.js +1 -2
- package/core/frontend/services/assets-minification/minifier.js +1 -1
- package/core/frontend/services/data/entry-lookup.js +1 -1
- package/core/frontend/services/data/fetch-data.js +2 -2
- package/core/frontend/services/rendering/format-response.js +1 -1
- package/core/frontend/services/rendering/renderer.js +3 -0
- package/core/frontend/services/rendering/templates.js +1 -1
- package/core/frontend/services/routing/controllers/static.js +1 -1
- package/core/frontend/services/routing/parent-router.js +1 -1
- package/core/frontend/services/routing/registry.js +1 -1
- package/core/frontend/services/sitemap/base-site-map-generator.js +68 -97
- package/core/frontend/services/sitemap/site-map-index-generator.js +16 -21
- package/core/frontend/services/sitemap/site-map-manager.js +82 -43
- package/core/frontend/services/sitemap/sitemap-xml.js +72 -0
- package/core/frontend/services/theme-engine/handlebars/utils.js +8 -8
- package/core/frontend/services/theme-engine/i18n/i18n.js +4 -5
- package/core/frontend/services/theme-engine/middleware/update-global-template-options.js +1 -1
- package/core/frontend/services/theme-engine/preview.js +1 -1
- package/core/frontend/utils/member-count.js +2 -2
- package/core/frontend/web/routers/serve-public-file.js +1 -1
- package/core/server/adapters/scheduling/README.md +4 -0
- package/core/server/adapters/scheduling/get-scheduler-idempotency-key.js +21 -0
- package/core/server/adapters/storage/LocalStorageBase.js +2 -1
- package/core/server/api/endpoints/automated-emails.js +8 -2
- package/core/server/api/endpoints/db.js +1 -1
- package/core/server/api/endpoints/emails.js +3 -3
- package/core/server/api/endpoints/mail.js +1 -1
- package/core/server/api/endpoints/member-signin-urls.js +1 -1
- package/core/server/api/endpoints/members.js +3 -3
- package/core/server/api/endpoints/oembed.js +1 -1
- package/core/server/api/endpoints/posts.js +1 -1
- package/core/server/api/endpoints/settings.js +2 -2
- package/core/server/api/endpoints/themes.js +5 -5
- package/core/server/api/endpoints/utils/serializers/input/pages.js +2 -2
- package/core/server/api/endpoints/utils/serializers/input/posts.js +2 -2
- package/core/server/api/endpoints/utils/serializers/input/tags.js +1 -1
- package/core/server/api/endpoints/utils/serializers/input/utils/slug-filter-order.js +4 -4
- package/core/server/api/endpoints/utils/serializers/output/mappers/comments.js +8 -5
- package/core/server/api/endpoints/utils/serializers/output/mappers/posts.js +1 -1
- package/core/server/api/endpoints/utils/serializers/output/pages.js +4 -4
- package/core/server/api/endpoints/utils/serializers/output/posts.js +4 -4
- package/core/server/api/endpoints/utils/serializers/output/search-index.js +11 -11
- package/core/server/api/endpoints/utils/serializers/output/settings.js +1 -1
- package/core/server/api/endpoints/utils/serializers/output/utils/extra-attrs.js +3 -3
- package/core/server/api/endpoints/utils/validators/input/automated_emails.js +23 -33
- package/core/server/api/endpoints/utils/validators/input/settings.js +3 -3
- package/core/server/data/exporter/exporter.js +1 -2
- package/core/server/data/exporter/table-lists.js +1 -0
- package/core/server/data/importer/handlers/image.js +1 -2
- package/core/server/data/importer/handlers/json.js +1 -3
- package/core/server/data/importer/handlers/markdown.js +4 -8
- package/core/server/data/importer/import-manager.js +1 -1
- package/core/server/data/importer/importers/content-file-importer.js +4 -8
- package/core/server/data/importer/importers/data/base.js +10 -10
- package/core/server/data/importer/importers/data/custom-theme-settings-importer.js +1 -1
- package/core/server/data/importer/importers/data/data-importer.js +3 -4
- package/core/server/data/importer/importers/data/posts-importer.js +10 -10
- package/core/server/data/importer/importers/data/products-importer.js +3 -3
- package/core/server/data/importer/importers/data/settings-importer.js +2 -2
- package/core/server/data/importer/importers/data/stripe-prices-importer.js +1 -1
- package/core/server/data/importer/importers/data/stripe-products-importer.js +1 -1
- package/core/server/data/importer/importers/data/tags-importer.js +1 -1
- package/core/server/data/importer/importers/data/users-importer.js +2 -2
- package/core/server/data/importer/importers/json-to-html.js +12 -9
- package/core/server/data/migrations/versions/5.0/2022-05-11-13-12-rename-settings.js +1 -1
- package/core/server/data/migrations/versions/6.65/2026-09-16-15-35-26-add-members-metafield-change-events.js +17 -0
- package/core/server/data/schema/fixtures/fixture-manager.js +3 -3
- package/core/server/data/schema/index.js +1 -1
- package/core/server/data/schema/schema.js +26 -0
- package/core/server/data/schema/validator.js +96 -123
- package/core/server/data/seeders/importers/email-recipients-importer.js +2 -2
- package/core/server/data/seeders/importers/members-login-events-importer.js +1 -1
- package/core/server/data/seeders/importers/members-newsletters-importer.js +1 -1
- package/core/server/data/seeders/importers/members-paid-subscription-events-importer.js +1 -1
- package/core/server/data/seeders/importers/members-status-events-importer.js +1 -1
- package/core/server/data/seeders/importers/members-stripe-customers-importer.js +1 -1
- package/core/server/data/seeders/importers/members-stripe-customers-subscriptions-importer.js +1 -1
- package/core/server/data/seeders/importers/members-subscribe-events-importer.js +2 -2
- package/core/server/data/seeders/importers/members-subscription-created-events-importer.js +1 -1
- package/core/server/data/tinybird/pipes/mv_hits.pipe +25 -20
- package/core/server/data/tinybird/scripts/docker-analytics-manager.js +2 -2
- package/core/server/ghost-server.js +1 -19
- package/core/server/lib/image/image-size.js +1 -3
- package/core/server/lib/request-external.js +53 -117
- package/core/server/models/base/plugins/actions.js +2 -3
- package/core/server/models/base/plugins/crud.js +1 -2
- package/core/server/models/base/plugins/events.js +4 -4
- package/core/server/models/base/plugins/raw-knex.js +3 -3
- package/core/server/models/base/plugins/sanitize.js +1 -1
- package/core/server/models/benefit.js +1 -1
- package/core/server/models/collection.js +1 -1
- package/core/server/models/comment.js +3 -3
- package/core/server/models/invite.js +2 -5
- package/core/server/models/label.js +3 -6
- package/core/server/models/member.js +7 -10
- package/core/server/models/newsletter.js +1 -1
- package/core/server/models/permission.js +3 -6
- package/core/server/models/post.js +20 -23
- package/core/server/models/product.js +4 -1
- package/core/server/models/relations/authors.js +9 -12
- package/core/server/models/role.js +2 -5
- package/core/server/models/settings.js +3 -3
- package/core/server/models/tag.js +2 -5
- package/core/server/models/user.js +8 -10
- package/core/server/models/webhook.js +2 -4
- package/core/server/notify.js +2 -2
- package/core/server/services/adapter-manager/utils.js +6 -1
- package/core/server/services/api-version-compatibility/legacy-api-path-match.js +2 -2
- package/core/server/services/auth/api-key/admin.js +2 -2
- package/core/server/services/auth/api-key/content.js +1 -1
- package/core/server/services/auth/passwordreset.js +1 -1
- package/core/server/services/auth/setup.js +1 -3
- package/core/server/services/automations/README.md +19 -0
- package/core/server/services/automations/poll.js +3 -1
- package/core/server/services/automations/service.js +2 -2
- package/core/server/services/automations/welcome-email-automation-poll.js +199 -293
- package/core/server/services/comments/comments-controller.js +9 -30
- package/core/server/services/comments/comments-service-email-renderer.js +1 -1
- package/core/server/services/comments/comments-service-emails.js +1 -1
- package/core/server/services/comments/comments-service.js +27 -58
- package/core/server/services/comments/comments-stats-service.js +1 -1
- package/core/server/services/content-import/import/staged-file.js +9 -9
- package/core/server/services/content-import/index.js +1 -1
- package/core/server/services/custom-redirects/validation.js +1 -1
- package/core/server/services/email-analytics/email-analytics-service-wrapper.js +23 -55
- package/core/server/services/email-analytics/index.js +35 -19
- package/core/server/services/email-analytics/jobs/email-analytics-job-scheduler.js +31 -60
- package/core/server/services/email-service/README.md +35 -0
- package/core/server/services/email-service/batch-sending-service.js +13 -14
- package/core/server/services/email-service/email-renderer.js +50 -14
- package/core/server/services/email-service/email-service-wrapper.js +3 -2
- package/core/server/services/email-service/email-service.js +33 -8
- package/core/server/services/email-service/email-templates/partials/feedback-button.hbs +2 -1
- package/core/server/services/email-service/email-templates/partials/styles.hbs +0 -6
- package/core/server/services/email-service/email-templates/template.hbs +1 -1
- package/core/server/services/email-service/jobs/send-email-job.js +12 -0
- package/core/server/services/email-service/mailgun-email-provider.js +7 -2
- package/core/server/services/email-service/sending-service.js +1 -1
- package/core/server/services/gifts/gift-service.js +12 -3
- package/core/server/services/gifts/index.js +0 -2
- package/core/server/services/gifts/jobs/index.js +12 -24
- package/core/server/services/gifts/jobs/send-gift-reminders-job.js +6 -46
- package/core/server/services/invitations/accept.js +2 -2
- package/core/server/services/jobs/job-service.js +0 -28
- package/core/server/services/jobs-service/jobs-service.js +5 -0
- package/core/server/services/jobs-service/register-job-handlers.js +17 -1
- package/core/server/services/lib/mailgun-client.js +16 -1
- package/core/server/services/lib/mailgun-recipient-message-id.js +49 -0
- package/core/server/services/limits.js +1 -1
- package/core/server/services/mail/ghost-mailer.js +1 -1
- package/core/server/services/member-attribution/member-attribution-service.js +1 -1
- package/core/server/services/member-attribution/referrer-translator.js +1 -1
- package/core/server/services/members/account-service.js +3 -3
- package/core/server/services/members/api.js +1 -1
- package/core/server/services/members/import-export/import/importer.js +25 -16
- package/core/server/services/members/import-export/import/spool.js +11 -15
- package/core/server/services/members/import-export/index.js +6 -4
- package/core/server/services/members/jobs/index.js +1 -1
- package/core/server/services/members/jobs/members-import-job.js +18 -0
- package/core/server/services/members/member-avatar.js +18 -0
- package/core/server/services/members/members-api/controllers/member-controller.js +2 -2
- package/core/server/services/members/members-api/members-api.js +4 -4
- package/core/server/services/members/members-api/repositories/event-repository.js +36 -1
- package/core/server/services/members/members-api/repositories/member-repository.js +55 -17
- package/core/server/services/members/members-api/repositories/product-repository.js +1 -1
- package/core/server/services/members/members-api/services/member-bread-service.js +4 -7
- package/core/server/services/members/service.js +7 -2
- package/core/server/services/members/stats/members-stats.js +2 -2
- package/core/server/services/members-events/event-storage.js +2 -2
- package/core/server/services/members-metafields/actions.js +23 -2
- package/core/server/services/members-metafields/bindings-service.js +5 -5
- package/core/server/services/members-metafields/definitions-service.js +2 -7
- package/core/server/services/members-metafields/index.js +2 -1
- package/core/server/services/members-metafields/queries.js +7 -1
- package/core/server/services/members-metafields/schema.js +49 -1
- package/core/server/services/members-metafields/values-service.js +112 -10
- package/core/server/services/mentions/mention-sending-service.js +2 -2
- package/core/server/services/mentions/mention.js +3 -4
- package/core/server/services/mentions/mentions-api.js +4 -1
- package/core/server/services/mentions-jobs/job-service.js +0 -28
- package/core/server/services/milestones/milestones-service.js +1 -1
- package/core/server/services/newsletters/newsletters-service.js +1 -1
- package/core/server/services/notifications/notifications.js +3 -3
- package/core/server/services/oembed/oembed-service.js +79 -3
- package/core/server/services/permissions/can-this.js +1 -2
- package/core/server/services/post-scheduling/post-scheduling.js +8 -1
- package/core/server/services/posts/post-scheduling.js +7 -0
- package/core/server/services/settings/settings-bread-service.js +3 -3
- package/core/server/services/settings/settings-utils.js +1 -1
- package/core/server/services/settings-helpers/settings-helpers.js +1 -1
- package/core/server/services/staff/staff-service-emails.js +9 -9
- package/core/server/services/stats/posts-stats-service.js +10 -10
- package/core/server/services/stats/referrers-stats-service.js +1 -1
- package/core/server/services/stats/subscription-stats-service.js +3 -3
- package/core/server/services/stats/utils/tinybird.js +8 -1
- package/core/server/services/stripe/stripe-api.js +3 -3
- package/core/server/services/stripe/stripe-migrations.js +6 -6
- package/core/server/services/themes/storage.js +21 -26
- package/core/server/services/themes/theme-storage.js +2 -2
- package/core/server/services/tiers/tier.js +15 -15
- package/core/server/services/tinybird-sync/index.js +3 -0
- package/core/server/services/tinybird-sync/tinybird-sync-service.js +7 -2
- package/core/server/services/update-check/update-check-service.js +3 -3
- package/core/server/services/webhooks/serialize.js +1 -1
- package/core/server/web/api/app.js +0 -5
- package/core/server/web/api/middleware/upload.js +29 -2
- package/core/server/web/parent/middleware/index.js +1 -1
- package/core/server/web/parent/middleware/log-request.js +5 -0
- package/core/server/web/parent/middleware/queue-request.js +104 -59
- package/core/server/web/shared/middleware/api/spam-prevention.js +2 -2
- package/core/shared/config/defaults.json +6 -1
- package/core/shared/custom-theme-settings-cache/custom-theme-settings-service.js +1 -1
- package/core/shared/labs.js +3 -2
- package/core/shared/settings-cache/cache-manager.js +1 -1
- package/nodemon.json +1 -1
- package/package.json +6 -7
- package/pnpm-lock.yaml +126 -728
- package/pnpm-workspace.yaml +4 -7
- package/tsconfig.json +1 -1
- package/components/tryghost-adapter-base-scheduling-0.2.3.tgz +0 -0
- package/core/built/admin/assets/Combination-DWfJPcz9.js +0 -41
- package/core/built/admin/assets/RadialBarChart-CHRBhiBN.js +0 -1
- package/core/built/admin/assets/_baseAssignValue-DcPokYW8.js +0 -1
- package/core/built/admin/assets/accordion-CJmRaqK7.js +0 -1
- package/core/built/admin/assets/account-migration-DYf7skbb.js +0 -1
- package/core/built/admin/assets/action-list-Crnh-_UI.js +0 -1
- package/core/built/admin/assets/activitypub/avatar-DVJF5bxP.js +0 -261
- package/core/built/admin/assets/activitypub/layout-BL4_jtuV.js +0 -1
- package/core/built/admin/assets/activitypub/routes-DdyY9uFF.js +0 -7181
- package/core/built/admin/assets/activitypub/settings-B6EEcVkW.js +0 -315
- package/core/built/admin/assets/activitypub/tabs-DLhZtVde.js +0 -1083
- package/core/built/admin/assets/activitypub/users-inweyKL5.js +0 -1499
- package/core/built/admin/assets/add-newsletter-modal-CTvXiIqY.js +0 -1
- package/core/built/admin/assets/analytics-PHR1Fggi.js +0 -1
- package/core/built/admin/assets/announcement-bar-modal-Bql0CXdp.js +0 -1
- package/core/built/admin/assets/api-keys-CubH-7_H.js +0 -1
- package/core/built/admin/assets/automations-DcZSLFDU.js +0 -1
- package/core/built/admin/assets/badge-qP06OT7C.js +0 -1
- package/core/built/admin/assets/bluesky-sharing-CJw4d4Mf.js +0 -1
- package/core/built/admin/assets/box-CZ_LSVSy.js +0 -1
- package/core/built/admin/assets/brand-icon-D3ffDYaC.js +0 -1
- package/core/built/admin/assets/breadcrumb-Chn1Ip_q.js +0 -1
- package/core/built/admin/assets/button-DvIh2Bq-.js +0 -1
- package/core/built/admin/assets/calendar-1QGoStFM.js +0 -1
- package/core/built/admin/assets/card-FHQ4D10L.js +0 -1
- package/core/built/admin/assets/chart-helpers-CNpA7re_.js +0 -1
- package/core/built/admin/assets/chart-jVz9Nf9t.js +0 -63
- package/core/built/admin/assets/checkbox-DKht9xMl.js +0 -1
- package/core/built/admin/assets/chunk.524.cc9be98e44890cedc8c8.js +0 -25
- package/core/built/admin/assets/chunk.582.e6fe742b3217207b11a6.js +0 -27
- package/core/built/admin/assets/code-editor-view-BLQIV85-.js +0 -1
- package/core/built/admin/assets/code-editor-view-Cg5eJxcr.js +0 -1
- package/core/built/admin/assets/color-picker-DQoghc0t.js +0 -3
- package/core/built/admin/assets/color-picker-field-BbeK5RRs.js +0 -1
- package/core/built/admin/assets/combobox-weO4FBbv.js +0 -1
- package/core/built/admin/assets/command-DlLrCm9V.js +0 -1
- package/core/built/admin/assets/comments-BjTitLmP.js +0 -1
- package/core/built/admin/assets/confirmation-context-IyqoXVk-.js +0 -1
- package/core/built/admin/assets/container-DAimjOF_.js +0 -1
- package/core/built/admin/assets/context-menu-BtioYFrg.js +0 -1
- package/core/built/admin/assets/copy-field-C6ujqJlP.js +0 -1
- package/core/built/admin/assets/create-ghost-browse-value-source-DAZMWZNq.js +0 -1
- package/core/built/admin/assets/custom-integration-modal-Dm8QI_J4.js +0 -1
- package/core/built/admin/assets/data-list-C0CKkeWW.js +0 -1
- package/core/built/admin/assets/date-range-select-DrjHQdgz.js +0 -1
- package/core/built/admin/assets/design-and-theme-modal-CXVOzBWu.js +0 -2
- package/core/built/admin/assets/detail-page-QpLIL-EO.js +0 -1
- package/core/built/admin/assets/dirty-confirm-dialog-DWwxREGh.js +0 -1
- package/core/built/admin/assets/dist-Bf-HQtVL.js +0 -1
- package/core/built/admin/assets/dist-CUwte9v_.js +0 -1
- package/core/built/admin/assets/dist-FEQQAwTe.js +0 -1
- package/core/built/admin/assets/domain-DBrBic6q.js +0 -1
- package/core/built/admin/assets/dropzone-D61QVcEY.js +0 -5
- package/core/built/admin/assets/edit-profile-jCqJBxqw.js +0 -1
- package/core/built/admin/assets/editor-8Fm4UBEd.js +0 -8
- package/core/built/admin/assets/editor-screen-BSX_uC2B.js +0 -27
- package/core/built/admin/assets/email-sending-status-provider-DnNhlIvt.js +0 -1
- package/core/built/admin/assets/embed-signup-form-modal-DqtBs1WE.js +0 -8
- package/core/built/admin/assets/empty-indicator-L4Ql5Db7.js +0 -1
- package/core/built/admin/assets/en-Cx75dJv5.js +0 -1
- package/core/built/admin/assets/explore-DXhDCtKw.js +0 -1
- package/core/built/admin/assets/feature-image-placeholder-e2q6TcH6.js +0 -1
- package/core/built/admin/assets/feed-mmt4noNL.js +0 -1
- package/core/built/admin/assets/field-p7KnP98B.js +0 -1
- package/core/built/admin/assets/filter-bar-CiIKBg3D.js +0 -1
- package/core/built/admin/assets/filter-sources-I-dRaQxl.js +0 -1
- package/core/built/admin/assets/filters-1injvyxJ.js +0 -1
- package/core/built/admin/assets/filters-DnpO6GWX.js +0 -1
- package/core/built/admin/assets/gift-link-modal-C3H7YFXO.js +0 -1
- package/core/built/admin/assets/grid-5vplBYri.js +0 -1
- package/core/built/admin/assets/growth-B1og1kQp.js +0 -1
- package/core/built/admin/assets/growth-Bf6OHZlK.js +0 -3
- package/core/built/admin/assets/heading-BB21QAbb.js +0 -1
- package/core/built/admin/assets/history-modal-t_qEnxPx.js +0 -1
- package/core/built/admin/assets/html-field-COLQbV4r.js +0 -1
- package/core/built/admin/assets/images-4mvoc3lB.js +0 -1
- package/core/built/admin/assets/index-B3HZU2i8.css +0 -2
- package/core/built/admin/assets/index-DDd-zhNL.js +0 -4
- package/core/built/admin/assets/inline-B8H6NzIw.js +0 -1
- package/core/built/admin/assets/input-group-CLIN2ykI.js +0 -1
- package/core/built/admin/assets/input-surface-wSO5CRy5.js +0 -1
- package/core/built/admin/assets/integration-header-CKGrXNVP.js +0 -1
- package/core/built/admin/assets/invite-user-modal-BaN2mdhI.js +0 -1
- package/core/built/admin/assets/koenig-loader-B1XPPY5C.js +0 -2
- package/core/built/admin/assets/kpi-card-CRLPVlFW.js +0 -1
- package/core/built/admin/assets/kpi-card-CRPbW8NZ.js +0 -1
- package/core/built/admin/assets/kpi-helpers-D7zT96bp.js +0 -1
- package/core/built/admin/assets/kpi-tabs-DE_yh9Go.js +0 -1
- package/core/built/admin/assets/label-CgeBxy4o.js +0 -1
- package/core/built/admin/assets/label-picker-DGDp4Vwr.js +0 -1
- package/core/built/admin/assets/layout-DWnOMly4.js +0 -1
- package/core/built/admin/assets/lib-_QYaUU89.js +0 -2
- package/core/built/admin/assets/link-helpers-8J7ixADV.js +0 -1
- package/core/built/admin/assets/list-page-DLMP0PxC.js +0 -1
- package/core/built/admin/assets/member-activity-ClMWFyvN.js +0 -1
- package/core/built/admin/assets/member-activity-feed-BQY5Rwaj.js +0 -1
- package/core/built/admin/assets/member-custom-fields-Dd_ie1zG.js +0 -1
- package/core/built/admin/assets/member-detail-DjwkGVne.js +0 -1
- package/core/built/admin/assets/members--N9lhk1N.js +0 -4
- package/core/built/admin/assets/modal-page-Dz-9TP4E.js +0 -1
- package/core/built/admin/assets/moderation-DfYBKq9s.js +0 -1
- package/core/built/admin/assets/multi-select-combobox-BcBEzUW_.js +0 -1
- package/core/built/admin/assets/navigation-modal-Cd-scywg.js +0 -1
- package/core/built/admin/assets/newsletter-detail-modal-CFRY6vg_.js +0 -1
- package/core/built/admin/assets/newsletter-emails-4ntck1AC.js +0 -1
- package/core/built/admin/assets/newsletter-o6eCJtab.js +0 -1
- package/core/built/admin/assets/newsletters-Bmlv0edG.js +0 -1
- package/core/built/admin/assets/note-CWs3LF-0.js +0 -1
- package/core/built/admin/assets/notifications-BjSvTJqh.js +0 -1
- package/core/built/admin/assets/offers-container-modal-Bc9A196w.js +0 -1
- package/core/built/admin/assets/onboarding-route-Di1LJYEE.js +0 -1
- package/core/built/admin/assets/overview-DE7NHZQN.js +0 -1
- package/core/built/admin/assets/overview-DEF-ZY6x.js +0 -1
- package/core/built/admin/assets/page-header-B-G_g42C.js +0 -1
- package/core/built/admin/assets/pagemenu-CnkTDO71.js +0 -1
- package/core/built/admin/assets/pages-route-VT7r7YhG.js +0 -1
- package/core/built/admin/assets/portal-frame-D9V8iq5x.js +0 -1
- package/core/built/admin/assets/portal-modal-B5OOR9ZD.js +0 -1
- package/core/built/admin/assets/post-analytics-header-J0WciLx6.js +0 -1
- package/core/built/admin/assets/post-analytics-rGb-PgD-.js +0 -1
- package/core/built/admin/assets/post-share-modal-D0BbTo4W.js +0 -1
- package/core/built/admin/assets/posts-list-screen-CO5jAWoU.js +0 -2
- package/core/built/admin/assets/posts-route-DV-CXWK9.js +0 -1
- package/core/built/admin/assets/preferences-Tac29oG6.js +0 -5
- package/core/built/admin/assets/preview-chrome-C2lQgZBZ.js +0 -1
- package/core/built/admin/assets/preview-modal-CjRbBr8U.js +0 -1
- package/core/built/admin/assets/profile-yiM1f_Og.js +0 -1
- package/core/built/admin/assets/radio-group-CKROWsw4.js +0 -1
- package/core/built/admin/assets/router-provider-CU87qxXw.js +0 -1
- package/core/built/admin/assets/select-CKaC4ggu.js +0 -1
- package/core/built/admin/assets/settings-81kxUa28.js +0 -1
- package/core/built/admin/assets/settings-BVXFqBVK.js +0 -4
- package/core/built/admin/assets/settings-breadcrumbs-czGRx-iu.js +0 -1
- package/core/built/admin/assets/shade-app-CcS3f8MZ-D5BnfHck.js +0 -3
- package/core/built/admin/assets/share-modal-BL-16PiB.js +0 -1
- package/core/built/admin/assets/skeleton-DwCva0-b.js +0 -1
- package/core/built/admin/assets/sort-button-Dquc83jY.js +0 -1
- package/core/built/admin/assets/stack-BURz77VS.js +0 -1
- package/core/built/admin/assets/stats-view-NDja_g96.js +0 -1
- package/core/built/admin/assets/stripe-button-C3cfCAou.js +0 -1
- package/core/built/admin/assets/stripe-connect-modal-FyE3Ey2c.js +0 -1
- package/core/built/admin/assets/switch-zfUUy9Jh.js +0 -1
- package/core/built/admin/assets/table-dE4GTIRT.js +0 -1
- package/core/built/admin/assets/tabs-B3XK93sR.js +0 -1
- package/core/built/admin/assets/tag-detail-D4P-tZdM.js +0 -2
- package/core/built/admin/assets/tag-picker-BNSZ6Qxw.js +0 -1
- package/core/built/admin/assets/tags-BsZcaJ6h.js +0 -1
- package/core/built/admin/assets/text-DC-ot6u2.js +0 -1
- package/core/built/admin/assets/textarea-B4FffFmE.js +0 -1
- package/core/built/admin/assets/tier-detail-modal-a77Z2VMH.js +0 -1
- package/core/built/admin/assets/toggle-group-D2p4okmJ.js +0 -1
- package/core/built/admin/assets/transistor-modal-C8RMkhOD.js +0 -1
- package/core/built/admin/assets/trend-badge-B9v7kMF8.js +0 -1
- package/core/built/admin/assets/types-uYQ1HgqL.js +0 -1
- package/core/built/admin/assets/use-analytics-data-ChHqiZXv.js +0 -1
- package/core/built/admin/assets/use-availability-hPdeG76y.js +0 -1
- package/core/built/admin/assets/use-filter-params-BSFigDIn.js +0 -1
- package/core/built/admin/assets/use-growth-stats-CqqdnESN.js +0 -1
- package/core/built/admin/assets/use-limiter-DBGjYqu7.js +0 -19
- package/core/built/admin/assets/use-reply-chain-data-DmD2yX5D.js +0 -1
- package/core/built/admin/assets/use-sending-eta-CQeG6OP_.js +0 -1
- package/core/built/admin/assets/use-setting-group-Dza6bQ7W.js +0 -1
- package/core/built/admin/assets/use-settings-navigation-BIjI5mL3.js +0 -1
- package/core/built/admin/assets/use-simple-pagination-DwVxe-Lo.js +0 -1
- package/core/built/admin/assets/use-staff-users-i_Mq9OGR.js +0 -1
- package/core/built/admin/assets/use-tinybird-query-DXoF74NM.js +0 -1
- package/core/built/admin/assets/user-detail-modal-BU4QCHE7.js +0 -1
- package/core/built/admin/assets/virtual-list-DScLNuU8.js +0 -1
- package/core/built/admin/assets/web-BZS-t4H0.js +0 -1
- package/core/built/admin/assets/web-DxAUxnK3.js +0 -2
- package/core/frontend/services/sitemap/utils.js +0 -17
- package/core/server/services/automations/get-scheduler-idempotency-key.js +0 -13
- package/core/server/web/api/testmode/index.js +0 -1
- package/core/server/web/api/testmode/jobs/cpu-hog.js +0 -15
- package/core/server/web/api/testmode/jobs/graceful-job.js +0 -50
- package/core/server/web/api/testmode/jobs/say-hello.js +0 -17
- package/core/server/web/api/testmode/routes.js +0 -120
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./dist-Cm2qbZKL.js","./react-BXwhMTuc.js","./dist-BRQkNYN1.js","./dist-D7yMk931.js","./dist-DVVKsyPh.js","./dist-C2lYC76d.js","./dist-Bm-PB47a.js","./dist-nmRzULcD.js","./dist-DNAdeRyr.js"])))=>i.map(i=>d[i]);
|
|
2
|
-
import{s as e,t}from"./react-BXwhMTuc.js";import{t as n}from"./react-dom-CMOtJ5MH.js";import{r}from"./framework-provider-DB-svAju.js";import{_ as i,c as a,d as o,l as s,m as c,p as l,w as u}from"./hooks-DYfTEQLk.js";import{t as d}from"./jsx-runtime-BlNNh7jY.js";import{n as f}from"./dist-DziNzWI2.js";import{t as p}from"./use-form-DJKZJhQh.js";import{r as m}from"./posts-tcoO3iRG.js";import{t as h}from"./preload-helper-DYl5dUZ5.js";import{a as g}from"./router-provider-CU87qxXw.js";import{m as _,w as v}from"./dist-BXHrDV19.js";import{t as y}from"./inline-B8H6NzIw.js";import{t as b}from"./text-DC-ot6u2.js";import{An as x,Cn as S,D as C,Pn as w,Y as T,a as E,an as D,b as O,bt as k,er as ee,fn as te,ft as A,j as ne,nr as re,rt as j,t as M,wn as N}from"./button-DvIh2Bq-.js";import{i as ie,r as ae,t as oe}from"./esm--rhhUGIG.js";import{i as P,n as F,r as I,t as L}from"./tabs-B3XK93sR.js";import{t as se}from"./switch-zfUUy9Jh.js";import{t as ce}from"./dropzone-D61QVcEY.js";import{i as R,n as z,o as B,s as V,t as H}from"./select-CKaC4ggu.js";import{o as U,t as W}from"./use-settings-navigation-BIjI5mL3.js";import{i as le,n as ue,r as de,t as fe}from"./action-list-Crnh-_UI.js";import{a as G,c as pe,n as me,o as K,r as q,s as he,t as J}from"./field-p7KnP98B.js";import{t as ge}from"./preview-chrome-C2lQgZBZ.js";import{n as _e,t as ve}from"./toggle-group-D2p4okmJ.js";import{d as ye,m as be,r as xe,t as Se,u as Ce}from"./schemas-BoYdB6YU.js";import{a as we,c as Te,d as Ee,f as De,i as Oe,l as ke,m as Ae,n as je,p as Me,r as Ne,s as Pe,t as Fe,u as Ie}from"./themes-DtcEFQWm.js";import{$ as Le,Ar as Re,Q as ze,Sr as Be,Xn as Ve,Z as He,Zn as Ue,br as We,ct as Ge,di as Y,et as Ke,hi as qe,lt as Je,nt as Ye,rt as Xe,tt as Ze,ui as Qe,wr as $e}from"./index-DDd-zhNL.js";import{t as X}from"./page-header-B-G_g42C.js";import{a as et,c as tt,i as nt,n as rt,o as it,r as at,s as ot,t as st}from"./images-4mvoc3lB.js";import{t as ct}from"./modal-page-Dz-9TP4E.js";import{t as lt}from"./index.es-Ct5XQNSj.js";import{t as ut}from"./nql-DnDc7UuU.js";import{i as dt,n as ft}from"./confirmation-context-IyqoXVk-.js";import{n as pt}from"./global-data-context-3MItMry2.js";import{t as mt}from"./use-upgrade-route-CVjDlNSs.js";import{i as ht}from"./zapier-modal-BafLUO4R.js";import{rt as gt}from"./dist-BRQkNYN1.js";import{t as _t}from"./color-picker-field-BbeK5RRs.js";import{t as vt}from"./preview-modal-CjRbBr8U.js";import{t as yt}from"./use-pintura-editor-Bz2bZ4iT.js";import{t as bt}from"./iframe-buffering-Bq1el-gw.js";import{t as xt}from"./settings-breadcrumbs-czGRx-iu.js";import{t as St}from"./use-query-params-DlOHCo-R.js";import{n as Ct,t as wt}from"./use-check-theme-limit-error-JD-J5aaZ.js";var Z=e(t(),1),Q=d(),Tt=({title:e,themeName:t,action:n=`uploaded`,cancelLabel:r=`Cancel`,okLabel:i,fatalErrors:a,onRetry:o,onClose:s})=>{let{blockingProblems:c,secondaryProblems:l,stringErrors:u}=Ke(a);return(0,Q.jsx)(dt,{cancelLabel:r,contentClassName:c.length+u.length+l.length>0?`max-w-[600px]`:void 0,okLabel:i??(o?`Try again`:``),okVariant:`default`,prompt:(0,Q.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,Q.jsxs)(`p`,{className:`text-base text-foreground`,children:[t?(0,Q.jsx)(`strong`,{children:t}):`This theme`,` couldn't be `,n,`. Fix the errors below and try again.`]}),(0,Q.jsx)(ze,{errorLabel:`Blocking`,messages:u,problems:c,expandedByDefault:!0}),(0,Q.jsx)(He,{problems:l})]}),stickyFooter:!0,title:e,onOk:o,onRemove:s})},Et=()=>{let e=Te();return{supportsCustomFonts:!(e.data?.themes[0])?.warnings?.some(e=>e.code===`GS051-CUSTOM-FONTS`),refreshActiveThemeData:(0,Z.useCallback)(()=>{e.refetch()},[e])}};function Dt(e){let t=e.package?.name||e.name,n=t;return Ne(e)?n=`${t} (default)`:we(e)?n=`${t} (legacy)`:e.package?.name!==e.name&&(n=(0,Q.jsxs)(`span`,{className:`md:text-base`,children:[n,` `,(0,Q.jsxs)(`span`,{className:`text-gray-600`,children:[`(`,e.name,`)`]})]})),Fe(e)&&(n=(0,Q.jsxs)(`span`,{className:`font-bold md:text-base`,children:[n,` — `,(0,Q.jsx)(`span`,{className:`text-green`,children:` Active`})]})),n}function Ot(e){return e.package?.version||`1.0`}var kt=({theme:e})=>{let{mutateAsync:t}=Pe(),{mutateAsync:n}=Ie(),{refreshActiveThemeData:r}=Et(),a=l(),{route:s,updateRoute:c}=W(),u=mt(),{checkThemeLimitError:d}=wt(),{confirm:p,showLimit:m}=ft(),[h,g]=(0,Z.useState)(null),_=async()=>{try{await t(e.name),r(),f.success(`Theme activated`,{description:(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(`span`,{className:`capitalize`,children:e.name}),` is now your active theme`]})})}catch(e){let t=null;e instanceof i&&e.response?.status===422&&e.data?.errors?t=e.data.errors:a(e),t&&g(t)}},v=()=>{o(`/themes/${e.name}/download`)},y=()=>{p({title:`Are you sure you want to delete this?`,prompt:(0,Q.jsxs)(Q.Fragment,{children:[`You are about to delete `,(0,Q.jsxs)(`strong`,{children:[`"`,e.name,`".`]}),` This is permanent! We warned you, k? Maybe download`,` `,(0,Q.jsx)(`span`,{className:`cursor-pointer text-green-500`,onClick:v,children:`your theme before continuing`})]}),okLabel:`Delete`,okRunningLabel:`Deleting`,okVariant:`destructive`,onOk:async t=>{try{await n(e.name),t?.remove()}catch(e){a(e)}}})},b=async()=>{let t=await d(`.`);if(t){m({prompt:t,onOk:()=>c({route:u,isExternal:!0})});return}c(`theme/edit/${encodeURIComponent(e.name)}?from=${encodeURIComponent(s??``)}`)},x=[];return Fe(e)||x.push((0,Q.jsx)(M,{className:`ml-2`,size:`sm`,type:`button`,variant:`ghost`,onClick:()=>void _(),children:`Activate`},`activate`)),(0,Q.jsxs)(`div`,{className:`-mr-3 flex items-center gap-4`,children:[x,(0,Q.jsxs)(We,{children:[(0,Q.jsx)(Re,{asChild:!0,children:(0,Q.jsx)(M,{"aria-label":`Menu`,size:`icon`,type:`button`,variant:`ghost`,children:(0,Q.jsx)(w,{})})}),(0,Q.jsxs)(Be,{align:`end`,className:`z-[9999]`,children:[(0,Q.jsx)($e,{onSelect:()=>void b(),children:`Edit code`}),(0,Q.jsx)($e,{onSelect:v,children:`Download`}),Oe(e)&&(0,Q.jsx)($e,{onSelect:y,children:`Delete`})]})]}),h&&(0,Q.jsx)(Tt,{action:`activated`,fatalErrors:h,themeName:e.package?.name||e.name,title:`Theme not activated`,onClose:()=>g(null),onRetry:()=>{g(null),_()}})]})},At=({themes:e})=>(e.sort((e,t)=>e.active&&!t.active?-1:!e.active&&t.active?1:e.package?.name&&t.package?.name?e.package.name.localeCompare(t.package.name):e.name.localeCompare(t.name)),(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`h1`,{className:`mb-5 text-2xl font-bold`,children:`Installed themes`}),(0,Q.jsx)(fe,{className:`border-t border-border`,children:e.map(e=>{let t=Dt(e),n=Ot(e);return(0,Q.jsxs)(ue,{"data-testid":`theme-list-item`,children:[(0,Q.jsxs)(le,{className:`py-3 pr-6`,id:`theme-${e.name}`,children:[(0,Q.jsx)(`div`,{children:t}),n&&(0,Q.jsx)(`div`,{className:`text-sm text-muted-foreground`,children:n})]}),(0,Q.jsx)(de,{children:(0,Q.jsx)(kt,{theme:e})})]},e.name)})})]})),jt=({themes:e})=>(0,Q.jsx)(ct,{children:(0,Q.jsx)(At,{themes:e})}),Mt=``+new URL(`footer-marketplace-bg-cXGt4GLt.png`,import.meta.url).href,Nt=3e3,Pt=e=>e.variants&&e.variants.length>0,Ft=e=>{let t=[{category:e.category,previewUrl:e.previewUrl,image:e.image}];return e.variants&&e.variants.length>0&&t.push(...e.variants),t},It=({onSelectTheme:e})=>{let t=ht(),[n,r]=(0,Z.useState)(null),[i,a]=(0,Z.useState)(0),o=e=>{r(e),a(e!==null&&Pt(e)&&Ft(e).length>1?1:0)};return(0,Z.useEffect)(()=>{if(n===null)return;let e=setInterval(()=>{a((i+1)%(Ft(n).length||0))},Nt);return()=>clearInterval(e)},[n,i]),(0,Q.jsxs)(ct,{children:[(0,Q.jsx)(ct.Title,{children:`Themes`}),(0,Q.jsx)(`div`,{className:`mt-[6vmin] grid grid-cols-1 gap-[6vmin] sm:grid-cols-2 md:grid-cols-3 xl:grid-cols-4`,children:t.map(t=>{let r=Pt(t),a=Ft(t),s=n===t;return(0,Q.jsxs)(`button`,{className:`flex cursor-pointer flex-col gap-3 text-left`,type:`button`,onClick:()=>{e?.(t)},children:[(0,Q.jsx)(`div`,{className:`relative w-full bg-gray-100 shadow-md transition-all duration-500 hover:scale-[1.05]`,onMouseEnter:()=>o(t),onMouseLeave:()=>o(null),children:r?(0,Q.jsx)(Q.Fragment,{children:a.map((e,n)=>(0,Q.jsx)(`img`,{alt:`${t.name} Theme - ${e.category}`,className:v(`size-full object-contain opacity-0 transition-opacity duration-500`,{"opacity-100":n===i&&s||!s&&n===0,relative:n===i,absolute:n!==i,"left-0":n!==i,"top-0":n!==i}),src:e.image},`theme-variant-${e.category.toLowerCase()}`))}):(0,Q.jsx)(`img`,{alt:`${t.name} Theme`,className:`size-full object-contain`,src:t.image})}),(0,Q.jsxs)(`div`,{className:`relative mt-3`,children:[(0,Q.jsx)(b,{as:`h4`,className:`md:text-xl`,leading:`heading`,size:`lg`,weight:`bold`,children:t.name}),r?a.map((e,t)=>(0,Q.jsx)(`span`,{className:v(`absolute left-0 translate-y-px text-gray-700 opacity-0`,{"opacity-100":t===i&&s||!s&&t===0}),children:e.category},e.category)):(0,Q.jsx)(`span`,{className:`text-gray-700`,children:t.category})]})]},t.name)})}),(0,Q.jsxs)(`div`,{className:`mx-[-8vmin] mt-[8vmin] mb-[-8vmin] bg-black px-[8vmin] py-16 text-center text-lg text-white`,style:{background:`#15171a url(${Mt}) 100% 100% / 35vw no-repeat`},children:[`Find and buy third-party, premium themes from independent developers in the`,` `,(0,Q.jsx)(`a`,{className:`inline-block font-semibold text-lime`,href:`https://ghost.org/themes/`,rel:`noopener noreferrer`,target:`_blank`,children:`Ghost Marketplace →`})]})]})},Lt=({title:e,action:t=`uploaded`,statusMessage:n,installedTheme:r,onActivate:i,onClose:a})=>{let{mutateAsync:o}=Pe(),{refreshActiveThemeData:s}=Et(),c=l(),{data:u}=Je(),d=Ze(r),p=u?.site?Ge(u.site):void 0,m=r.active?`OK`:Ye(d)?`Activate with errors`:`Activate theme`,h=r.active?(0,Q.jsx)(`span`,{className:`text-green`,children:`It's live!`}):e,g;return g=r.active?(0,Q.jsxs)(Q.Fragment,{children:[`Your theme `,(0,Q.jsx)(`strong`,{children:r.name}),` was saved successfully and is now visible to your readers.`,p?(0,Q.jsxs)(Q.Fragment,{children:[` `,(0,Q.jsx)(`a`,{className:`font-semibold text-foreground hover:underline`,href:p,rel:`noreferrer`,target:`_blank`,children:`Take a look →`})]}):null]}):n||(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`strong`,{children:r.name}),` was `,Le(t,d),`. Do you want to activate it?`]}),(0,Q.jsx)(dt,{cancelLabel:`Close`,contentClassName:d.length>0?`max-w-[600px]`:void 0,okLabel:m,okRunningLabel:`Activating...`,okVariant:`default`,prompt:(0,Q.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,Q.jsx)(`p`,{className:`text-base text-foreground`,children:g}),(0,Q.jsx)(He,{problems:d})]}),stickyFooter:!0,title:h,onOk:async e=>{if(!r.active)try{let e=(await o(r.name)).themes[0];s(),f.success(`Theme activated`,{description:(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(`span`,{className:`capitalize`,children:e.name}),` is now your active theme.`]})})}catch(e){c(e);return}i?.(),e?.remove()},onRemove:a})},Rt=e=>e.variants&&e.variants.length>0,zt=e=>{let t=[{image:e.image,category:e.category,previewUrl:e.previewUrl}];return e.variants&&e.variants.length>0&&t.push(...e.variants),t},Bt=e=>e.category.toLowerCase(),Vt=({selectedTheme:e,isInstalling:t,installedTheme:n,onBack:r,onInstall:i})=>{let[a,o]=(0,Z.useState)(`desktop`),[s,c]=(0,Z.useState)(void 0);if(!e)return null;let l=e.previewUrl,u=zt(e).map(e=>({label:e.category,value:Bt(e)}));Rt(e)&&(s===void 0&&c(u[0].value),l=zt(e).find(e=>Bt(e)===s)?.previewUrl||l);let d=`Install ${e.name}`;t?d=`Installing...`:je(e)&&!n?.active?d=`Activate ${e.name}`:n&&(d=`Update ${e.name}`);let f=()=>{i?.()},p=(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsx)(xt,{current:e.name,label:`Change theme`,onBack:r}),Rt(e)?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`span`,{className:`hidden md:!visible md:!block`,children:`–`}),(0,Q.jsxs)(J,{className:`w-auto`,children:[(0,Q.jsx)(K,{className:`sr-only`,children:`Theme variant`}),(0,Q.jsxs)(H,{value:s,onValueChange:c,children:[(0,Q.jsx)(B,{"aria-label":`Theme variant`,className:`w-auto border-0 bg-transparent shadow-none`,children:(0,Q.jsx)(V,{})}),(0,Q.jsx)(z,{className:`min-w-max`,children:u.map(e=>(0,Q.jsx)(R,{value:e.value,children:e.label},e.value))})]})]})]}):null]}),m=(0,Q.jsxs)(`div`,{className:`flex justify-end gap-8`,children:[(0,Q.jsxs)(y,{gap:`sm`,children:[(0,Q.jsx)(M,{"aria-label":`Desktop preview`,size:`icon`,type:`button`,variant:`ghost`,onClick:()=>o(`desktop`),children:(0,Q.jsx)(D,{className:a===`desktop`?`text-foreground`:`text-muted-foreground`})}),(0,Q.jsx)(M,{"aria-label":`Mobile preview`,size:`icon`,type:`button`,variant:`ghost`,onClick:()=>o(`mobile`),children:(0,Q.jsx)(T,{className:a===`mobile`?`text-foreground`:`text-muted-foreground`})})]}),(0,Q.jsx)(M,{disabled:t,type:`button`,onClick:f,children:t?`Installing...`:d})]});return(0,Q.jsxs)(`div`,{className:`absolute inset-0 z-[100]`,children:[(0,Q.jsxs)(X,{blurredBackground:!1,className:`z-[100] h-22 min-h-[92px] bg-background p-8`,sticky:!1,children:[(0,Q.jsx)(X.Left,{className:`flex-auto`,children:p}),(0,Q.jsx)(X.Actions,{className:`flex-auto justify-end`,children:m})]}),(0,Q.jsx)(`div`,{className:`flex h-[calc(100%-92px)] grow flex-col items-center justify-center bg-background`,children:a===`desktop`?(0,Q.jsx)(ge,{device:`desktop`,children:(0,Q.jsx)(`iframe`,{className:`size-full`,src:l,title:`Theme preview`})}):(0,Q.jsx)(ge,{device:`mobile`,children:(0,Q.jsx)(`iframe`,{className:`size-full`,src:l,title:`Theme preview`})})})]})},Ht=({onUpload:e})=>(0,Q.jsx)(ce,{accept:{"application/zip":[`.zip`]},inputId:`theme-upload`,onDropAccepted:([t])=>{e(t)},children:`Click to select or drag & drop zip file`}),Ut=({currentTab:e,setCurrentTab:t,themes:n})=>{let{updateRoute:r}=W(),a=mt(),{mutateAsync:o}=De(),{checkThemeLimitError:s,isThemeLimited:c}=wt(),u=l(),{confirm:d,showLimit:f}=ft(),[p,m]=(0,Z.useState)(),[h,g]=(0,Z.useState)(!1),[_,v]=(0,Z.useState)(null),[y,b]=(0,Z.useState)(null);(0,Z.useEffect)(()=>{(async()=>{if(c){let e=await s(`.`);m({enabled:!1,error:e||`Your current plan doesn't support uploading custom themes.`})}else m({enabled:!0})})()},[s,c]);let x=()=>{r(`/`)},S=e=>{let r=e?.name.replace(/\.zip$/,``),i=n.map(e=>e.name);je({name:r})?d({title:`Upload failed`,cancelLabel:`Cancel`,okLabel:``,prompt:(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(`p`,{children:[`The default `,(0,Q.jsx)(`strong`,{children:r}),` theme cannot be overwritten.`]}),(0,Q.jsx)(`p`,{children:`Rename your zip file and try again.`})]}),onOk:e=>{e?.remove()}}):i.includes(r)?d({title:`Overwrite theme`,prompt:(0,Q.jsxs)(Q.Fragment,{children:[`The theme `,(0,Q.jsx)(`strong`,{children:r}),` already exists. Do you want to overwrite it?`]}),okLabel:`Overwrite`,cancelLabel:`Cancel`,okRunningLabel:`Overwriting...`,okVariant:`destructive`,onOk:async a=>{g(!0);let o=i.indexOf(r);n.splice(o,1),await C({file:e,onActivate:x}),g(!1),t(`installed`),a?.remove()}}):(t(`installed`),C({file:e,onActivate:x}))},C=async({file:e,onActivate:t})=>{let n,r=null;try{g(!0),n=await o({file:e}),g(!1)}catch(e){g(!1),e instanceof i&&e.response?.status===422&&e.data?.errors?r=e.data.errors:u(e)}r&&!n&&v({themeName:e.name.replace(/\.zip$/,``),fatalErrors:r}),n&&b({title:`Upload successful`,action:`uploaded`,installedTheme:n.themes[0],onActivate:t})},w=(0,Q.jsx)(`div`,{className:`hidden md:!visible md:!block`,children:(0,Q.jsx)(L,{value:e,variant:`button`,onValueChange:t,children:(0,Q.jsxs)(I,{children:[(0,Q.jsx)(P,{value:`official`,children:`Official themes`}),(0,Q.jsx)(P,{value:`installed`,children:`Installed`})]})})}),T=()=>{if(p)if(p.enabled){let e={current:null};e.current=d({title:`Upload theme`,prompt:(0,Q.jsx)(Ht,{onUpload:t=>{e.current?.remove(),S(t)}}),okLabel:``,formSheet:!1})}else f({title:`Upgrade to enable custom themes`,prompt:p.error||(0,Q.jsxs)(Q.Fragment,{children:[`Your current plan only supports official themes. You can install them from the`,` `,(0,Q.jsx)(`a`,{href:`https://ghost.org/marketplace/`,children:`Ghost theme marketplace`}),`.`]}),onOk:()=>r({route:a,isExternal:!0})})},E=(0,Q.jsx)(`div`,{className:`flex items-center gap-14`,children:(0,Q.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,Q.jsx)(M,{type:`button`,variant:`outline`,onClick:x,children:`Close`}),(0,Q.jsxs)(M,{disabled:h,type:`button`,onClick:T,children:[h&&(0,Q.jsx)(Ve,{size:`sm`}),`Upload theme`]})]})});return(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(X,{blurredBackground:!1,className:`sticky -top-px z-50 h-22 min-h-[92px] bg-background p-8`,sticky:!1,children:[(0,Q.jsx)(X.Left,{className:`flex-auto`,children:w}),(0,Q.jsx)(X.Actions,{className:`flex-auto justify-end`,children:E})]}),(0,Q.jsx)(`div`,{className:`px-[8vmin] md:hidden`,children:(0,Q.jsx)(L,{value:e,variant:`button`,onValueChange:t,children:(0,Q.jsxs)(I,{children:[(0,Q.jsx)(P,{value:`official`,children:`Official themes`}),(0,Q.jsx)(P,{value:`installed`,children:`Installed`})]})})}),_&&(0,Q.jsx)(Tt,{action:`uploaded`,fatalErrors:_.fatalErrors,okLabel:`Re-upload`,themeName:_.themeName,title:`Theme not uploaded`,onClose:()=>v(null),onRetry:()=>{v(null),T()}}),y&&(0,Q.jsx)(Lt,{...y,onClose:()=>b(null)})]})},Wt=({currentTab:e,onSelectTheme:t,themes:n})=>{switch(e){case`official`:return(0,Q.jsx)(It,{onSelectTheme:t});case`installed`:return(0,Q.jsx)(jt,{themes:n})}return null},Gt=({source:e,themeRef:t})=>{let[n,r]=(0,Z.useState)(`official`),[i,a]=(0,Z.useState)(null),[o,s]=(0,Z.useState)(`desktop`),[c,u]=(0,Z.useState)(!1),[d,p]=(0,Z.useState)(!1),[m,h]=(0,Z.useState)(!1),[g,_]=(0,Z.useState)(null),{updateRoute:v}=W(),y=mt(),{data:{themes:b}={}}=ke(),{mutateAsync:x}=Ee(),{mutateAsync:S}=Pe(),{checkThemeLimitError:C}=wt(),w=l(),{confirm:T,showLimit:E}=ft(),D=e=>{a(e)};if((0,Z.useEffect)(()=>{h(!0)},[]),(0,Z.useEffect)(()=>{(async()=>{if(e&&t&&!d&&m){let e=t.split(`/`)[1];if(await C(e)){v(`theme`);return}let n=b?.map(e=>e.name)||[],r=n.includes(e.toLowerCase()),i=n.indexOf(e.toLowerCase()),a=b?.[i],o=(0,Q.jsxs)(Q.Fragment,{children:[`By clicking below, `,(0,Q.jsx)(`strong`,{children:e}),` will automatically be activated as the theme for your site.`,r&&(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`br`,{}),(0,Q.jsx)(`br`,{}),`This will overwrite your existing version of `,(0,Q.jsx)(`strong`,{children:e}),a?.active?` which is your active theme`:``,`. All custom changes will be lost.`]})]});T({title:`Install Theme`,prompt:o,okLabel:`Install`,cancelLabel:`Cancel`,okRunningLabel:`Installing...`,okVariant:`default`,onOk:async e=>{let n;p(!0);try{r&&b&&b.splice(i,1),n=await x(t),n?.themes[0]&&(await S(n.themes[0].name),f.success(`Theme activated`,{description:(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(`span`,{className:`capitalize`,children:n.themes[0].name}),` is now your active theme`]})})),e?.remove(),v(``)}catch(e){w(e)}}})}})()},[t,e,x,w,S,v,b,d,C,T,m]),!b)return;let O,k;if(i){O=b.find(e=>e.name.toLowerCase()===i.name.toLowerCase()),k=async()=>{let t=await C(i.name);if(t){E({prompt:t,onOk:()=>v({route:y,isExternal:!0})});return}return O&&!je(i)?new Promise(t=>{T({title:`Overwrite theme`,prompt:(0,Q.jsxs)(Q.Fragment,{children:[`This will overwrite your existing version of `,i.name,O?.active?`, which is your active theme`:``,`. All custom changes will be lost.`]}),okLabel:`Overwrite`,okRunningLabel:`Installing...`,cancelLabel:`Cancel`,okVariant:`destructive`,onOk:async n=>{n?.remove(),await e(),t()}})}):e()};let e=async()=>{let e=`Installed successfully`,t;if(je(i))e=`Activate theme`,t=(0,Q.jsxs)(Q.Fragment,{children:[`Do you want to activate `,(0,Q.jsx)(`strong`,{children:i.name}),` as the theme for your site?`]});else{u(!0);let e;try{e=await x(i.ref)}catch(e){w(e)}finally{u(!1)}if(!e)return;O=e.themes[0]}_({title:e,action:`installed`,statusMessage:t,installedTheme:O,onActivate:()=>{v(``)}})}}return(0,Q.jsxs)(U,{animate:!1,cancelLabel:``,footer:!1,padding:!1,size:`full`,testId:`theme-modal`,title:``,scrolling:!0,onCancel:()=>{v(``)},onClose:()=>{v(``)},children:[(0,Q.jsx)(`div`,{className:`flex h-full justify-between`,children:(0,Q.jsxs)(`div`,{className:`grow`,children:[i&&(0,Q.jsx)(Vt,{installedTheme:O,isInstalling:c,selectedTheme:i,onBack:()=>{a(null)},onClose:()=>{v(``)},onInstall:k}),(0,Q.jsx)(Ut,{currentTab:n,previewMode:o,selectedTheme:i,setCurrentTab:r,setPreviewMode:s,setSelectedTheme:a,themes:b}),!i&&(0,Q.jsx)(Wt,{currentTab:n,themes:b,onSelectTheme:D})]})}),g&&(0,Q.jsx)(Lt,{...g,onClose:()=>_(null)})]})},Kt=e(n(),1),qt=({children:e,to:t,classNames:n})=>{let r=t||document.body;return r?(0,Kt.createPortal)((0,Q.jsx)(`div`,{className:n,onMouseDown:e=>{e.stopPropagation()},children:(0,Q.jsx)(`div`,{children:e})}),r):(0,Q.jsx)(Q.Fragment,{children:e})},Jt=({unsplashProviderConfig:e,onClose:t,onImageInsert:n})=>(0,Q.jsx)(qt,{classNames:`settings-app`,children:(0,Q.jsx)(lt,{unsplashProviderConfig:e,onClose:t,onImageInsert:n})}),Yt={heading:[{name:`Cardo`,creator:`David Perry`},{name:`Chakra Petch`,creator:`Cadson Demak`},{name:`Fira Mono`,creator:`Carrois Apostrophe`},{name:`Fira Sans`,creator:`Carrois Apostrophe`},{name:`IBM Plex Serif`,creator:`Mike Abbink`},{name:`Inter`,creator:`Rasmus Andersson`},{name:`JetBrains Mono`,creator:`JetBrains`},{name:`Libre Baskerville`,creator:`Impallari Type`},{name:`Lora`,creator:`Cyreal`},{name:`Manrope`,creator:`Mikhail Sharanda`},{name:`Merriweather`,creator:`Sorkin Type`},{name:`Noto Sans`,creator:`Google`},{name:`Noto Serif`,creator:`Google`},{name:`Nunito`,creator:`Vernon Adams`},{name:`Old Standard TT`,creator:`Alexey Kryukov`},{name:`Poppins`,creator:`Indian Type Foundry`},{name:`Roboto`,creator:`Christian Robertson`},{name:`Rufina`,creator:`Martin Sommaruga`},{name:`Space Grotesk`,creator:`Florian Karsten`},{name:`Space Mono`,creator:`Colophon Foundry`},{name:`Tenor Sans`,creator:`Denis Masharov`}],body:[{name:`Fira Mono`,creator:`Carrois Apostrophe`},{name:`Fira Sans`,creator:`Carrois Apostrophe`},{name:`IBM Plex Serif`,creator:`Mike Abbink`},{name:`Inter`,creator:`Rasmus Andersson`},{name:`JetBrains Mono`,creator:`JetBrains`},{name:`Lora`,creator:`Cyreal`},{name:`Manrope`,creator:`Mikhail Sharanda`},{name:`Merriweather`,creator:`Sorkin Type`},{name:`Noto Sans`,creator:`Google`},{name:`Noto Serif`,creator:`Google`},{name:`Nunito`,creator:`Vernon Adams`},{name:`Poppins`,creator:`Indian Type Foundry`},{name:`Roboto`,creator:`Christian Robertson`},{name:`Space Mono`,creator:`Colophon Foundry`}]},$=`Theme default`,Xt=({option:e,selected:t})=>(0,Q.jsxs)(`span`,{className:`flex w-full items-center gap-4 ${e.className??``}`,"data-testid":t?`select-current-option`:`select-option`,"data-value":e.value,children:[(0,Q.jsx)(`span`,{className:`flex size-12 shrink-0 items-center justify-center rounded-md border border-border-default bg-surface-elevated text-2xl font-bold shadow-xs`,children:`Aa`}),(0,Q.jsxs)(`span`,{className:`flex min-w-0 flex-col`,children:[(0,Q.jsx)(`span`,{className:`text-md`,children:e.label}),(0,Q.jsx)(`span`,{className:`truncate font-sans text-sm font-normal text-muted-foreground`,children:e.hint})]})]}),Zt=e=>e.split(` `).map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(` `),Qt=({values:e,updateSetting:t})=>{let{mutateAsync:n}=rt(),{settings:i}=pt(),[a]=Qe(i,[`unsplash`]),[o,s]=(0,Z.useState)(!1),{unsplashConfig:c}=r(),u=l(),d=async(e,r)=>{try{t(e,st(await n({file:r})))}catch(e){let t=e;t.response.status===415&&(t.message=`Unsupported file type`),u(t)}},f=yt(),{data:p}=ke(),m=p?.themes.find(e=>e.active),h=m?`${Zt(m.name)} (v${m.package?.version||`1.0`})`:`Loading...`,[g,y]=(0,Z.useState)(Yt.heading.find(t=>t.name===e.headingFont)||{name:$,creator:h}),[b,x]=(0,Z.useState)(Yt.heading.find(t=>t.name===e.bodyFont)||{name:$,creator:h}),S=(e,t=!0)=>{let n=``;return e===`Cardo`?n=v(`font-cardo`,t&&`font-bold`):e===`Manrope`?n=v(`font-manrope`,t&&`font-bold`):e===`Merriweather`?n=v(`font-merriweather`,t&&`font-bold`):e===`Nunito`?n=v(`font-nunito`,t&&`font-semibold`):e===`Old Standard TT`?n=v(`font-old-standard-tt`,t&&`font-bold`):e===`Prata`?n=v(`font-prata`,t&&`font-normal`):e===`Roboto`?n=v(`font-roboto`,t&&`font-bold`):e===`Rufina`?n=v(`font-rufina`,t&&`font-bold`):e===`Tenor Sans`?n=v(`font-tenor-sans`,t&&`font-normal`):e===`Chakra Petch`?n=v(`font-chakra-petch`,t&&`font-normal`):e===`Fira Mono`?n=v(`font-fira-mono`,t&&`font-bold`):e===`Fira Sans`?n=v(`font-fira-sans`,t&&`font-bold`):e===`IBM Plex Serif`?n=v(`font-ibm-plex-serif`,t&&`font-bold`):e===`Inter`?n=v(`font-inter`,t&&`font-bold`):e===`JetBrains Mono`?n=v(`font-jetbrains-mono`,t&&`font-bold`):e===`Lora`?n=v(`font-lora`,t&&`font-bold`):e===`Noto Sans`?n=v(`font-noto-sans`,t&&`font-bold`):e===`Noto Serif`?n=v(`font-noto-serif`,t&&`font-bold`):e===`Poppins`?n=v(`font-poppins`,t&&`font-bold`):e===`Space Grotesk`?n=v(`font-space-grotesk`,t&&`font-bold`):e===`Space Mono`&&(n=v(`font-space-mono`,t&&`font-bold`)),n},w=Yt.heading.map(e=>{let t=S(e.name,!0);return{label:e.name,value:e.name,hint:e.creator,className:t}});w.unshift({label:$,value:$,hint:h,className:`font-sans font-normal`});let T=Yt.body.map(e=>{let t=S(e.name,!1);return{label:e.name,value:e.name,hint:e.creator,className:t}});T.unshift({label:$,value:$,hint:h,className:`font-sans font-normal`});let E=(e,t)=>e===$?``:S(e,t),D=w.find(e=>e.value===g.name)||w[0],O=T.find(e=>e.value===b.name)||T[0];return(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(G,{className:`mt-6 mb-12 gap-6`,children:[(0,Q.jsx)(_t,{debounceMs:200,direction:`rtl`,testId:`accent-color-picker`,title:(0,Q.jsx)(`div`,{children:`Accent color`}),value:e.accentColor,onChange:e=>t(`accent_color`,e)}),(0,Q.jsxs)(`div`,{className:`flex items-start justify-between`,children:[(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(`div`,{children:`Publication icon`}),(0,Q.jsxs)(q,{className:`mr-5 max-w-[160px]`,children:[`A square, social icon, at least `,_(60),`×`,_(60),`px`]})]}),(0,Q.jsx)(`div`,{className:`flex gap-3`,children:(0,Q.jsx)(at,{className:e.icon?`size-16.5`:`h-9 w-40`,children:e.icon?(0,Q.jsxs)(tt,{background:`checkerboard`,children:[(0,Q.jsx)(ot,{id:`logo`,src:e.icon}),(0,Q.jsx)(et,{className:`top-1 right-1`,children:(0,Q.jsx)(nt,{"aria-label":`Remove publication icon`,"data-testid":`image-delete-button`,onClick:()=>t(`icon`,null),children:(0,Q.jsx)(C,{})})})]}):(0,Q.jsx)(it,{inputId:`logo`,onDropAccepted:([e])=>void d(`icon`,e),children:`Upload icon`})})})]}),(0,Q.jsxs)(`div`,{className:`flex items-start justify-between ${e.icon&&`mt-2`}`,children:[(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(`div`,{children:`Publication logo`}),(0,Q.jsx)(q,{className:`mr-5 max-w-[160px]`,children:`Appears usually in the main header of your theme`})]}),(0,Q.jsx)(`div`,{children:(0,Q.jsx)(at,{className:`h-15 w-40`,children:e.logo?(0,Q.jsxs)(tt,{background:`checkerboard`,children:[(0,Q.jsx)(ot,{className:`object-contain`,id:`site-logo`,src:e.logo}),(0,Q.jsx)(et,{className:`top-1 right-1`,children:(0,Q.jsx)(nt,{"aria-label":`Remove publication logo`,"data-testid":`image-delete-button`,onClick:()=>t(`logo`,null),children:(0,Q.jsx)(C,{})})})]}):(0,Q.jsx)(it,{inputId:`site-logo`,onDropAccepted:([e])=>void d(`logo`,e),children:`Upload logo`})})})]}),(0,Q.jsxs)(`div`,{className:`mt-2 flex items-start justify-between`,"data-testid":`publication-cover`,children:[(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(`div`,{children:`Publication cover`}),(0,Q.jsx)(q,{className:`mr-5 max-w-[160px]`,children:`Usually as a large banner image on your index pages`})]}),(0,Q.jsx)(at,{className:`h-23.75 w-40`,children:e.coverImage?(0,Q.jsxs)(tt,{children:[(0,Q.jsx)(ot,{id:`cover`,src:e.coverImage}),(0,Q.jsxs)(et,{className:`top-1 right-1`,children:[f.isEnabled&&(0,Q.jsx)(nt,{"aria-label":`Edit publication cover`,onClick:()=>f.openEditor({image:e.coverImage||``,handleSave:async e=>{try{t(`cover_image`,st(await n({file:e})))}catch(e){u(e)}}}),children:(0,Q.jsx)(k,{})}),(0,Q.jsx)(nt,{"aria-label":`Remove publication cover`,"data-testid":`image-delete-button`,onClick:()=>t(`cover_image`,null),children:(0,Q.jsx)(C,{})})]})]}):(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(it,{inputId:`cover`,onDropAccepted:([e])=>void d(`cover_image`,e),children:`Upload cover`}),a&&(0,Q.jsx)(et,{className:`top-1 right-1 opacity-100`,children:(0,Q.jsx)(nt,{"aria-label":`Select publication cover from Unsplash`,"data-testid":`toggle-unsplash-button`,onClick:()=>s(!0),children:(0,Q.jsx)(te,{})})})]})}),o&&c&&a&&(0,Q.jsx)(Jt,{unsplashProviderConfig:c,onClose:()=>{s(!1)},onImageInsert:e=>{e.src&&t(`cover_image`,e.src),s(!1)}})]})]}),(0,Q.jsxs)(pe,{className:`-mt-4 gap-0`,children:[(0,Q.jsx)(he,{className:`mb-4 text-md! leading-supertight font-bold md:text-lg!`,children:`Typography`}),(0,Q.jsxs)(G,{className:`mb-12 gap-6`,children:[(0,Q.jsxs)(J,{children:[(0,Q.jsx)(K,{children:`Heading font`}),(0,Q.jsxs)(H,{value:D.value,onValueChange:e=>{e===$?(y({name:$,creator:h}),t(`heading_font`,``)):(y({name:e,creator:Yt.heading.find(t=>t.name===e)?.creator||``}),t(`heading_font`,e))},children:[(0,Q.jsx)(B,{"aria-label":`Heading font`,className:`h-16 pl-2 text-left ${E(D.label,!0)}`,"data-testid":`heading-font-select`,children:(0,Q.jsx)(V,{children:(0,Q.jsx)(Xt,{option:D,selected:!0})})}),(0,Q.jsx)(z,{children:w.map(e=>(0,Q.jsx)(R,{value:e.value,children:(0,Q.jsx)(Xt,{option:e})},e.value))})]})]}),(0,Q.jsxs)(J,{children:[(0,Q.jsx)(K,{children:`Body font`}),(0,Q.jsxs)(H,{value:O.value,onValueChange:e=>{e===$?(x({name:$,creator:h}),t(`body_font`,``)):(x({name:e,creator:Yt.body.find(t=>t.name===e)?.creator||``}),t(`body_font`,e))},children:[(0,Q.jsx)(B,{"aria-label":`Body font`,className:`h-16 pl-2 text-left ${E(O.label,!1)}`,"data-testid":`body-font-select`,children:(0,Q.jsx)(V,{children:(0,Q.jsx)(Xt,{option:O,selected:!0})})}),(0,Q.jsx)(z,{className:`max-h-52`,children:T.map(e=>(0,Q.jsx)(R,{value:e.value,children:(0,Q.jsx)(Xt,{option:e})},e.value))})]})]})]})]})]})},$t=e(ut(),1);function en(e,t){return e.visibility?(0,$t.default)(e.visibility).queryJSON(t):!0}function tn({description:e,accentColor:t,icon:n,logo:r,coverImage:i,themeSettings:a,bodyFont:o,headingFont:s}){if(!a)return;let c=a.reduce((e,{key:t,value:n})=>({...e,[t]:n}),{}),l=new URLSearchParams;l.append(`c`,t),l.append(`d`,e),l.append(`icon`,n),l.append(`logo`,r),l.append(`cover`,i),l.append(`bf`,o),l.append(`hf`,s);let u={};return a.forEach(e=>{u[e.key]=en(e,c)?e.value:null}),l.append(`custom`,JSON.stringify(u)),l.toString()}var nn=({settings:e,url:t,isVisible:n=!0})=>{let r=tn({...e});return(0,Q.jsx)(bt,{addDelay:!1,className:`absolute -top-px -left-px size-[calc(110%_+_3px)] origin-top-left scale-[.90909] bg-white max-[1600px]:size-[calc(130%_+_3px)] max-[1600px]:scale-[.76923]`,generateContent:(0,Z.useCallback)(e=>{if(!t||!r)return;let n=new URL(t);n.searchParams.set(`admin_toolbar`,`0`),fetch(n.toString(),{method:`POST`,headers:{"Content-Type":`text/html;charset=utf-8`,"x-ghost-preview":r,Accept:`text/html`},mode:`cors`,credentials:`include`}).then(e=>e.text()).then(t=>{let n=`html { pointer-events: none; }`,r=new DOMParser().parseFromString(t,`text/html`),i=r.querySelector(`style`),a=i?.innerHTML;a?i.innerHTML=`${a}\n\n${n}`:r.head.innerHTML+=`<style>${n}</style>`;let o=(r.doctype?new XMLSerializer().serializeToString(r.doctype):``)+r.documentElement.outerHTML;e.contentDocument?.open(),e.contentDocument?.write(o),e.contentDocument?.close()})},[r,t]),height:`100%`,parentClassName:`absolute inset-0 overflow-hidden ${n?`z-10 opacity-100`:`z-0 opacity-0 pointer-events-none`}`,testId:`theme-preview`,width:`100%`})},rn=({setting:e,setSetting:t})=>{let[n,r]=(0,Z.useState)({});(0,Z.useEffect)(()=>{let t=e.value===null?``:String(e.value);r(n=>({...n,[e.key]:t}))},[e]);let i=e=>{n[e]!==void 0&&t(n[e])},a=(e,t)=>{r(n=>({...n,[e]:t}))},{mutateAsync:o}=rt(),s=l(),c=async e=>{try{t(st(await o({file:e})))}catch(e){s(e)}};switch(e.type){case`text`:return(0,Q.jsxs)(J,{children:[(0,Q.jsx)(K,{htmlFor:`theme-setting-${e.key}`,children:Y(e.key)}),(0,Q.jsx)(Ue,{id:`theme-setting-${e.key}`,value:n[e.key]||``,onBlur:()=>i(e.key),onChange:t=>a(e.key,t.target.value)}),e.description&&(0,Q.jsx)(q,{children:e.description})]});case`boolean`:return(0,Q.jsxs)(J,{orientation:`horizontal`,children:[(0,Q.jsxs)(me,{children:[(0,Q.jsx)(K,{htmlFor:`theme-setting-${e.key}`,children:Y(e.key)}),e.description&&(0,Q.jsx)(q,{children:e.description})]}),(0,Q.jsx)(se,{checked:!!e.value,id:`theme-setting-${e.key}`,onCheckedChange:t})]});case`select`:return(0,Q.jsxs)(J,{children:[(0,Q.jsx)(K,{children:Y(e.key)}),(0,Q.jsxs)(H,{value:e.value,onValueChange:t,children:[(0,Q.jsx)(B,{"aria-label":Y(e.key),"data-testid":`setting-select-${e.key}`,children:(0,Q.jsx)(V,{})}),(0,Q.jsx)(z,{children:e.options.map(e=>(0,Q.jsx)(R,{value:e,children:e},e))})]}),e.description&&(0,Q.jsx)(q,{children:e.description})]});case`color`:return(0,Q.jsx)(_t,{debounceMs:200,direction:`rtl`,hint:e.description,title:Y(e.key),value:e.value||``,onChange:e=>t(e)});case`image`:return(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(K,{children:Y(e.key)}),(0,Q.jsx)(at,{className:e.value?`h-25`:`h-8`,children:e.value?(0,Q.jsxs)(tt,{children:[(0,Q.jsx)(ot,{id:`custom-${e.key}`,src:e.value}),(0,Q.jsx)(et,{children:(0,Q.jsx)(nt,{"aria-label":`Remove image`,onClick:()=>t(null),children:(0,Q.jsx)(C,{})})})]}):(0,Q.jsx)(it,{inputId:`custom-${e.key}`,onDropAccepted:e=>void c(e[0]),children:`Upload image`})}),e.description&&(0,Q.jsx)(q,{children:e.description})]})}},an={source:[`title_font`,`body_font`],casper:[`title_font`,`body_font`],alto:[`title_font`,`body_font`],bulletin:[`title_font`,`body_font`],dawn:[`title_font`,`body_font`],digest:[`title_font`,`body_font`],dope:[`title_font`,`body_font`],ease:[`title_font`,`body_font`],edge:[`title_font`,`body_font`],edition:[`title_font`,`body_font`],episode:[`typography`],headline:[`title_font`,`body_font`],journal:[`title_font`,`body_font`],london:[`title_font`,`body_font`],ruby:[`title_font`,`body_font`],solo:[`typography`],taste:[`style`],wave:[`title_font`,`body_font`]},on=({sections:e,updateSetting:t})=>{let{data:n}=ke(),r=n?.themes.find(e=>e.active),i=r?.package.name?.toLowerCase()||``,a=r?.package.author?.name||``,{supportsCustomFonts:o}=Et();return(0,Q.jsx)(Q.Fragment,{children:e.map(e=>{let n=e.settings.filter(t=>en(t,e.settings.reduce((e,{key:t,value:n})=>({...e,[t]:n}),{}))),r;return(0,Q.jsxs)(pe,{className:`gap-0 first-of-type:mt-6`,children:[(0,Q.jsx)(he,{className:`mb-4 text-md! leading-supertight font-bold md:text-lg!`,children:e.title}),(0,Q.jsx)(G,{className:`mb-12 gap-4`,children:n.map(e=>{let n=``;e.type===`boolean`&&r!==`boolean`&&r!==void 0&&(n=`mt-3`),(e.type===`text`||e.type===`select`)&&(r===`text`||r===`select`)&&(n=`mt-2`);let s=an[i];return s&&s.includes(e.key)&&a===`Ghost Foundation`&&o&&(n+=` hidden`),r=e.type,(0,Q.jsx)(`div`,{className:n,children:(0,Q.jsx)(rn,{setSetting:n=>t({...e,value:n}),setting:e},e.key)},e.key)})})]},e.id)})})},sn=({globalSettings:e,themeSettingSections:t,updateGlobalSetting:n,updateThemeSetting:r,onTabChange:i})=>{let[a,o]=(0,Z.useState)(`global`);return(0,Q.jsx)(`div`,{className:`flex h-full flex-col justify-between`,children:(0,Q.jsx)(`div`,{className:`grow p-7 pt-0`,"data-testid":`design-setting-tabs`,children:t.length>0?(0,Q.jsxs)(L,{value:a,variant:`underline`,onValueChange:e=>{o(e),i(e)},children:[(0,Q.jsxs)(I,{className:`sticky top-0 z-50 bg-surface-elevated-2`,children:[(0,Q.jsx)(P,{value:`global`,children:`Brand`}),(0,Q.jsx)(P,{value:`theme-settings`,children:`Theme`})]}),(0,Q.jsx)(F,{value:`global`,children:(0,Q.jsx)(Qt,{updateSetting:n,values:e})}),(0,Q.jsx)(F,{value:`theme-settings`,children:(0,Q.jsx)(on,{sections:t,updateSetting:r})})]}):(0,Q.jsx)(Qt,{updateSetting:n,values:e})})})},cn=()=>{let{settings:e,siteData:t}=pt(),{mutateAsync:n}=qe(),{data:{posts:[r]}={posts:[]}}=m({searchParams:{filter:`status:published`,order:`published_at DESC`,limit:`1`,fields:`id,url`}}),{data:i}=Me(),{mutateAsync:a}=Ae(),o=l(),[s,c]=(0,Z.useState)(`homepage`),[u,d]=(0,Z.useState)(`desktop`),{updateRoute:f}=W(),h=g(),_=St().getParam(`ref`),{formState:v,saveState:y,handleSave:b,updateForm:x,setFormState:S,okProps:C}=p({initialState:{settings:e,themeSettings:i?.custom_theme_settings},savingDelay:500,onSave:async()=>{if(v.themeSettings?.some(e=>e.dirty)){let e=await a(v.themeSettings);S(t=>({...t,themeSettings:e.custom_theme_settings}))}if(v.settings.some(e=>e.dirty)){let{settings:e}=await n(v.settings.filter(e=>e.dirty));S(t=>({...t,settings:e}))}},onSaveError:o});(0,Z.useEffect)(()=>{i&&S(e=>({...e,themeSettings:i.custom_theme_settings}))},[S,i]);let w=(e,t)=>{x(n=>({...n,settings:n.settings.map(n=>n.key===e?{...n,value:t,dirty:!0}:n)}))},E=e=>{x(t=>({...t,themeSettings:t.themeSettings?.map(t=>t.key===e.key?{...e,dirty:!0}:t)}))},[O,k,ee,te,A,ne,re]=Qe(v.settings,[`description`,`accent_color`,`icon`,`logo`,`cover_image`,`heading_font`,`body_font`]),j=(v.themeSettings||[]).reduce((e,t)=>{let n=t.group===`homepage`||t.group===`post`?t.group:`site-wide`;return{...e,[n]:(e[n]||[]).concat(t)}},{}),M=Object.entries(j).map(([e,t])=>({id:e,settings:t||[],title:e===`site-wide`?`Site wide`:e===`homepage`?`Homepage`:`Post`})),N=e=>{r&&c(e)},ie=e=>{c(e===`post`&&r?`post`:`homepage`)},ae=[{id:`homepage`,url:Ge(t)},...r?[{id:`post`,url:r.url}]:[]],oe={description:O,accentColor:k,icon:ee,logo:te,coverImage:A,themeSettings:v.themeSettings,headingFont:ne,bodyFont:re},F=(0,Q.jsx)(`div`,{className:`relative size-full`,children:ae.map(({id:e,url:t})=>(0,Q.jsx)(nn,{isVisible:s===e,settings:oe,url:t},e))}),se=u===`desktop`?(0,Q.jsx)(ge,{"data-testid":`preview-desktop`,device:`desktop`,children:F}):(0,Q.jsx)(ge,{"data-testid":`preview-mobile`,device:`mobile`,children:F}),ce=r?(0,Q.jsx)(L,{value:s,variant:`button`,onValueChange:N,children:(0,Q.jsxs)(I,{children:[(0,Q.jsx)(P,{value:`homepage`,children:`Homepage`}),(0,Q.jsx)(P,{value:`post`,children:`Post`})]})}):void 0,R=(0,Q.jsxs)(ve,{size:`default`,type:`single`,value:u,onValueChange:e=>{(e===`desktop`||e===`mobile`)&&d(e)},children:[(0,Q.jsx)(_e,{"aria-label":`Desktop`,value:`desktop`,children:(0,Q.jsx)(D,{})}),(0,Q.jsx)(_e,{"aria-label":`Mobile`,value:`mobile`,children:(0,Q.jsx)(T,{})})]}),z=(0,Q.jsx)(sn,{globalSettings:{description:O,accentColor:k,icon:ee,logo:te,coverImage:A,headingFont:ne,bodyFont:re},handleSave:b,themeSettingSections:M,updateGlobalSetting:w,updateThemeSetting:E,onTabChange:ie});return(0,Q.jsx)(vt,{buttonsDisabled:C.disabled,cancelLabel:`Close`,deviceSelector:R,dirty:y===`unsaved`,okLabel:C.label||`Save`,okVariant:C.variant,preview:se,previewToolbarTabs:ce,sidebar:z,sidebarPadding:!1,siteLink:Ge(t),size:`full`,testId:`design-modal`,title:`Design`,onClose:()=>{_===`setup`?h(`/analytics`):f(`design`)},onOk:async()=>{await b({fakeWhenUnchanged:!0})}})},ln=({title:e,prompt:t,cancelLabel:n=`Cancel`,okLabel:r=`OK`,okVariant:i=`default`,onResolve:a})=>(0,Q.jsx)(U,{backDropClick:!1,cancelLabel:n,okLabel:r,okVariant:i,testId:`theme-editor-confirm-modal`,title:e,width:540,onCancel:()=>a(!1),onClose:()=>a(!1),onOk:()=>a(!0),children:(0,Q.jsx)(`div`,{className:`py-4`,children:t})}),un=({title:e,prompt:t,fieldTitle:n,initialValue:r,placeholder:i,cancelLabel:a=`Cancel`,okLabel:o=`Continue`,onResolve:s})=>{let[c,l]=(0,Z.useState)(r);return(0,Q.jsx)(U,{backDropClick:!1,cancelLabel:a,okDisabled:!c.trim(),okLabel:o,testId:`theme-editor-input-modal`,title:e,width:540,onCancel:()=>s(null),onClose:()=>s(null),onOk:()=>s(c),children:(0,Q.jsxs)(`div`,{className:`flex flex-col gap-4 py-4`,children:[t,(0,Q.jsxs)(J,{children:[(0,Q.jsx)(K,{htmlFor:`theme-editor-input`,children:n}),(0,Q.jsx)(Ue,{id:`theme-editor-input`,placeholder:i,value:c,autoFocus:!0,onChange:e=>l(e.target.value)})]})]})})},dn=`inline-flex items-center gap-2 rounded-md border px-3 py-1.5 text-[13px] font-medium transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-[#4a9eff] disabled:cursor-not-allowed disabled:opacity-50`,fn=`${dn} border-[#2f333b] bg-transparent text-[#e6e7ea] hover:bg-[#1f2228]`,pn=`${dn} border-transparent bg-green text-black hover:bg-green-400`,mn=({currentThemeName:e,changes:t,isSaving:n,onClose:r,onSave:i})=>(0,Q.jsxs)(`div`,{className:`flex items-center gap-3 border-b border-[#23262c] bg-[#1a1d21] px-4 py-3`,children:[(0,Q.jsxs)(`div`,{className:`flex min-w-0 items-baseline gap-2`,children:[(0,Q.jsx)(`h2`,{className:`truncate text-[14px] font-semibold text-[#f4f5f7]`,children:`Edit theme`}),(0,Q.jsx)(`span`,{className:`truncate text-[12px] text-[#8a8f98]`,children:e})]}),t.length>0&&(0,Q.jsxs)(`span`,{className:`rounded-full border border-transparent bg-[#3b2a16] px-2.5 py-1 text-[11px] leading-none text-[#f5a623]`,children:[_(t.length),` `,t.length===1?`file modified`:`files modified`]}),(0,Q.jsx)(`div`,{className:`grow`}),(0,Q.jsxs)(`button`,{className:fn,type:`button`,onClick:r,children:[(0,Q.jsx)(E,{size:14}),`Close`]}),(0,Q.jsxs)(`button`,{className:pn,disabled:n,type:`button`,onClick:i,children:[(0,Q.jsx)(j,{size:14}),n?`Saving…`:`Save`]})]}),hn=e=>{let t={type:`dir`,name:``,path:``,children:new Map};for(let n of Object.keys(e).sort()){let r=n.split(`/`),i=t;for(let t=0;t<r.length;t+=1){let a=r[t];if(t===r.length-1){i.children.set(a,{type:`file`,name:a,path:n,editable:e[n].editable});continue}let o=`${r.slice(0,t+1).join(`/`)}/`,s=i.children.get(a);if(s?.type===`dir`){i=s;continue}let c={type:`dir`,name:a,path:o,children:new Map};i.children.set(a,c),i=c}}return t},gn=e=>e.sort((e,t)=>e.type===t.type?e.name.localeCompare(t.name):e.type===`dir`?-1:1),_n=`inline-flex h-5 w-5 items-center justify-center rounded-sm text-[#c8ccd3] transition-opacity hover:opacity-100 focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-[#4a9eff] disabled:cursor-not-allowed disabled:opacity-30`,vn=({currentFiles:e,selectedNode:t,setSelectedNode:n,expandedDirectories:r,setExpandedDirectories:i,changesMap:a,isLoading:o,onCreateFile:s,onRenameSelected:c,onDeleteSelected:l,onOpenFile:u})=>{let d=(e,o=0)=>{if(e.type===`file`){let n=t?.type===`file`&&t.path===e.path,r=a.get(e.path);return(0,Q.jsxs)(`button`,{className:`flex min-h-6 w-full items-center gap-1.5 rounded px-2 py-1 text-left text-[13px] leading-5 ${n?`bg-[#243043] text-white`:`text-[#c8ccd3] hover:bg-[#1f2228]`} ${e.editable?``:`opacity-70`}`,style:{paddingLeft:`${o*14+8}px`},type:`button`,onClick:()=>u(e.path),children:[(0,Q.jsx)(`span`,{className:`w-3 shrink-0`}),(0,Q.jsx)(x,{size:14}),(0,Q.jsx)(`span`,{className:`min-w-0 grow truncate`,children:e.name}),r&&(0,Q.jsx)(`span`,{className:`mr-1 size-1.5 shrink-0 rounded-full ${r===`deleted`?`bg-[#ff6b6b]`:r===`added`?`bg-[#14b886]`:`bg-[#f5a623]`}`})]},e.path)}let s=r.has(e.path),c=t?.type===`dir`&&t.path===e.path,l=gn(Array.from(e.children?.values()||[]));return(0,Q.jsxs)(`div`,{children:[e.path&&(0,Q.jsxs)(`button`,{className:`flex min-h-6 w-full items-center gap-1.5 rounded px-2 py-1 text-left text-[13px] leading-5 ${c?`bg-[#202630] text-white`:`text-[#c8ccd3] hover:bg-[#1f2228]`}`,style:{paddingLeft:`${o*14+8}px`},type:`button`,onClick:()=>{n({type:`dir`,path:e.path}),i(t=>{let n=new Set(t);return n.has(e.path)?n.delete(e.path):n.add(e.path),n})},children:[s?(0,Q.jsx)(re,{className:`shrink-0 text-[#6a6f78]`,size:12}):(0,Q.jsx)(ee,{className:`shrink-0 text-[#6a6f78]`,size:12}),s?(0,Q.jsx)(N,{className:`shrink-0 text-[#8a8f98]`,size:14}):(0,Q.jsx)(S,{className:`shrink-0 text-[#8a8f98]`,size:14}),(0,Q.jsx)(`span`,{className:`truncate`,children:e.name})]}),(e.path===``||s)&&(0,Q.jsx)(`div`,{children:l.map(t=>d(t,e.path?o+1:o))})]},e.path||`root`)};return(0,Q.jsxs)(`aside`,{className:`flex w-[280px] shrink-0 flex-col border-r border-[#23262c] bg-[#16181c]`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center justify-between gap-2 border-b border-[#23262c] px-3 py-2`,children:[(0,Q.jsxs)(`div`,{className:`text-[12px] font-medium text-[#c8ccd3]`,children:[Object.keys(e).length,` files`]}),(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsx)(`button`,{"aria-label":`New file`,className:_n,type:`button`,onClick:s,children:(0,Q.jsx)(A,{size:13})}),(0,Q.jsx)(`button`,{"aria-label":`Rename selected item`,className:_n,disabled:!t,type:`button`,onClick:c,children:(0,Q.jsx)(k,{size:13})}),(0,Q.jsx)(`button`,{"aria-label":`Delete selected item`,className:_n,disabled:!t,type:`button`,onClick:l,children:(0,Q.jsx)(C,{size:13})})]})]}),(0,Q.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto p-2`,children:o?(0,Q.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center gap-3 text-center text-[13px] text-[#8a8f98]`,children:[(0,Q.jsx)(`div`,{className:`size-5 animate-spin rounded-full border-2 border-[#2f333b] border-t-[#14b886]`}),(0,Q.jsx)(`span`,{children:`Loading theme files…`})]}):Object.keys(e).length===0?(0,Q.jsx)(`div`,{className:`px-3 py-4 text-[12px] text-[#8a8f98]`,children:`This theme archive does not contain any files.`}):d(hn(e))})]})},yn=e(Ct(),1),bn=e=>{if(!e.startsWith(`theme/edit/`))return{themeName:null,isInvalid:!1};let t=e.slice(11).split(`?`)[0];if(!t||t.includes(`/`))return{themeName:null,isInvalid:!0};try{let e=decodeURIComponent(t);return!e||e.includes(`/`)?{themeName:null,isInvalid:!0}:{themeName:e,isInvalid:!1}}catch{return{themeName:null,isInvalid:!0}}},xn={maxFiles:1e3,maxExtractedBytes:32*1024*1024},Sn=class extends Error{reason;constructor(e,t){super(t),this.name=`ThemeArchiveExtractionError`,this.reason=e}},Cn=new Set([`css`,`cjs`,`hbs`,`handlebars`,`htm`,`html`,`js`,`json`,`less`,`md`,`markdown`,`mjs`,`sass`,`scss`,`svg`,`txt`,`xml`,`yaml`,`yml`]),wn=new Set([`.editorconfig`,`.eslintignore`,`.eslintrc`,`.gitattributes`,`.gitignore`,`.npmignore`,`.prettierignore`,`.prettierrc`,`CODEOWNERS`,`LICENSE`,`LICENCE`,`NOTICE`,`Procfile`]),Tn=e=>{if(Cn.has(En(e)))return!0;let t=e.split(`/`).at(-1)||e;return wn.has(t)},En=e=>{let t=e.lastIndexOf(`.`);return t===-1?``:e.slice(t+1).toLowerCase()},Dn=e=>{let t=e.trim().replace(/^\/+/,``).replace(/\/+/g,`/`);if(!t)return null;let n=t.split(`/`).filter(Boolean);return n.length===0||n.some(e=>e===`.`||e===`..`)?null:n.join(`/`)},On=e=>[`casper`,`source`].includes(e.toLowerCase()),kn=e=>{if(e.length===0)return``;let t=e[0].indexOf(`/`);if(t<=0)return``;let n=e[0].slice(0,t+1);return e.every(e=>e.startsWith(n))?n:``},An=e=>Object.fromEntries(Object.entries(e).map(([e,t])=>[e,{...t,date:new Date(t.date),binary:t.binary?new Uint8Array(t.binary):null}])),jn=`Failed to open the theme archive. Download the theme again and retry.`,Mn=e=>{let t=e/(1024*1024);return Number.isInteger(t)?`${t} MB`:`${t.toFixed(1)} MB`},Nn=e=>{let t=[];return e.forEach((e,n)=>{n.dir||t.push([e,n])}),t},Pn=e=>{if(e.length>xn.maxFiles)throw new Sn(`too_many_files`,`This theme archive contains too many files for the browser editor (${e.length}/${xn.maxFiles}).`)},Fn=async e=>{try{return await yn.default.loadAsync(e)}catch{throw new Sn(`invalid_archive`,jn)}},In=async e=>{try{return await e.async(`uint8array`)}catch{throw new Sn(`invalid_archive`,jn)}},Ln=async e=>{try{return await e.async(`string`)}catch{throw new Sn(`invalid_archive`,jn)}},Rn=e=>{let t=Dn(e);if(!t||t!==e)throw new Sn(`invalid_archive`,jn);return t},zn=(e,t)=>{let n=e+t;if(n>xn.maxExtractedBytes)throw new Sn(`too_large`,`This theme archive is too large to open in the browser editor. Extracted files must stay under ${Mn(xn.maxExtractedBytes)}.`);return n},Bn=async e=>{let t=Nn(await Fn(e));Pn(t);let n=kn(t.map(([e])=>e)),r={},i=new TextEncoder,a=0;for(let[e,o]of t){let t=n?e.slice(n.length):e;if(!t)continue;let s=Rn(t);if(Tn(s))try{let e=await Ln(o);a=zn(a,i.encode(e).byteLength),r[s]={path:s,editable:!0,content:e,binary:null,date:o.date||new Date,unixPermissions:typeof o.unixPermissions==`number`?o.unixPermissions:null,dosPermissions:typeof o.dosPermissions==`number`?o.dosPermissions:null};continue}catch{}let c=await In(o);a=zn(a,c.byteLength),r[s]={path:s,editable:!1,content:null,binary:c,date:o.date||new Date,unixPermissions:typeof o.unixPermissions==`number`?o.unixPermissions:null,dosPermissions:typeof o.dosPermissions==`number`?o.dosPermissions:null}}return{files:r,rootPrefix:n}},Vn=async({files:e,rootPrefix:t})=>{let n=new yn.default;for(let[r,i]of Object.entries(e)){let e=`${t}${r}`,a={date:i.date,createFolders:!0,unixPermissions:i.unixPermissions??void 0,dosPermissions:i.dosPermissions??void 0};i.editable?n.file(e,i.content??``,a):n.file(e,i.binary,{...a,binary:!0})}return n.generateAsync({type:`blob`,mimeType:`application/zip`,compression:`DEFLATE`,compressionOptions:{level:6}})},Hn=({baseFiles:e,currentFiles:t})=>{let n=new Set([...Object.keys(e),...Object.keys(t)]),r=[];for(let i of Array.from(n).sort()){let n=e[i],a=t[i];if(!n&&a){r.push({path:i,editable:a.editable,status:`added`});continue}if(n&&!a){r.push({path:i,editable:n.editable,status:`deleted`});continue}!n||!a||n.editable&&a.editable&&n.content!==a.content&&r.push({path:i,editable:!0,status:`modified`})}return r},Un=({files:e,oldPrefix:t,newPrefix:n})=>{let r={};for(let[i,a]of Object.entries(e)){if(!i.startsWith(t)){r[i]=a;continue}let e=`${n}${i.slice(t.length)}`;r[e]={...a,path:e}}return r},Wn=e=>{switch(En(e)){case`css`:case`scss`:case`sass`:case`less`:return h(()=>import(`./dist-Cm2qbZKL.js`).then(e=>e.r).then(e=>e.css()),__vite__mapDeps([0,1,2,3]),import.meta.url);case`js`:case`cjs`:case`mjs`:return h(()=>import(`./dist-DVVKsyPh.js`).then(e=>e.t).then(e=>e.javascript()),__vite__mapDeps([4,1,2,3]),import.meta.url);case`json`:return h(()=>import(`./dist-C2lYC76d.js`).then(e=>e.json()),__vite__mapDeps([5,2,3]),import.meta.url);case`md`:case`markdown`:return h(()=>import(`./dist-Bm-PB47a.js`).then(e=>e.markdown()),__vite__mapDeps([6,2,7,3,0,1,4]),import.meta.url);case`yaml`:case`yml`:return h(()=>import(`./dist-DNAdeRyr.js`).then(e=>e.yaml()),__vite__mapDeps([8,2,3]),import.meta.url);case`hbs`:case`handlebars`:case`html`:case`htm`:case`svg`:case`xml`:return h(()=>import(`./dist-nmRzULcD.js`).then(e=>e.html()),__vite__mapDeps([7,2,3,0,1,4]),import.meta.url);default:return h(()=>import(`./dist-nmRzULcD.js`).then(e=>e.html()),__vite__mapDeps([7,2,3,0,1,4]),import.meta.url)}},Gn=e=>{let t=En(e);if(!t)return`text`;switch(t){case`hbs`:return`handlebars`;case`htm`:return`html`;case`yml`:return`yaml`;default:return t}},Kn=e=>{if(e[`package.json`]?.editable)return{type:`file`,path:`package.json`};let t=Object.keys(e).sort().find(t=>e[t].editable);if(t)return{type:`file`,path:t};let n=Object.keys(e).sort()[0];return n?{type:`file`,path:n}:null},qn=e=>{let t=e.split(`/`),n=[``];for(let e=0;e<t.length-1;e+=1)n.push(`${t.slice(0,e+1).join(`/`)}/`);return n},Jn=[`theme`,`design`],Yn=e=>Jn.some(t=>e===t||e.startsWith(`${t}/`)),Xn=()=>{let e=window.location.hash.substring(1),t=`${window.location.protocol}//${window.location.hostname}`,n;try{n=new URL(e||`/`,t)}catch{return null}let r=n.searchParams.get(`from`);return r===null?null:r===``||Yn(r)?r:null},Zn=(e,t)=>{let n=`theme/edit/${encodeURIComponent(e)}`;return t===null?n:`${n}?from=${encodeURIComponent(t)}`},Qn=(e,t)=>!e.editable&&Tn(t),$n=/^[a-z0-9][\w-]{0,63}$/,er=[`COMPRESSED_TOO_LARGE`,`ENTRY_TOO_LARGE`,`TOTAL_TOO_LARGE`],tr={COMPRESSED_TOO_LARGE:`Theme too large to upload`,ENTRY_TOO_LARGE:`File too large`,TOTAL_TOO_LARGE:`Theme contents too large`},nr=ye({errors:xe(ye({message:be().optional(),code:Se(er),errorDetails:ye({entryName:be().optional(),limitBytes:Ce().positive().finite().optional()}).optional()})).min(1)}),rr=e=>{if(!e||e<=0)return`the allowed size`;let t=e/(1024*1024);return t>=1?`${t.toFixed(1)} MB`:`${Math.round(e/1024)} KB`},ir=e=>{if(!(e instanceof u))return null;let t=e.data;if(typeof t==`string`)try{t=JSON.parse(t)}catch{return null}let n=nr.safeParse(t);return n.success?n.data.errors[0]??null:null},ar=e=>{let{entryName:t,limitBytes:n}=e.errorDetails??{},r=rr(n);switch(e.code){case`COMPRESSED_TOO_LARGE`:return`The theme archive is too large to upload (max ${r}).`;case`ENTRY_TOO_LARGE`:return t?`The file "${t}" is too large (max ${r} per file).`:`One of the files is too large (max ${r} per file).`;case`TOTAL_TOO_LARGE`:return`The theme contents exceed the maximum allowed size of ${r}.`;default:return e.message||`Theme upload failed.`}},or=e=>`inline-flex h-5 w-5 items-center justify-center rounded-sm text-[#c8ccd3] transition-opacity hover:opacity-100 focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-[#4a9eff] ${e?`opacity-100`:`opacity-60`}`,sr=`flex h-full items-center justify-center p-8 text-center text-[13px] text-[#6a6f78]`,cr=gt.theme({"&.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground, .cm-selectionBackground, .cm-content ::selection":{backgroundColor:`#355070`},".cm-content ::selection":{color:`#ffffff`}},{dark:!0}),lr=({themeName:e})=>{let{updateRoute:t}=W(),n=s(),r=l(),{data:o}=ke(),{mutateAsync:u}=De(),[d,p]=(0,Z.useState)(e),[m,h]=(0,Z.useState)({}),[g,v]=(0,Z.useState)({}),[y,b]=(0,Z.useState)(``),[x,S]=(0,Z.useState)(null),[C,w]=(0,Z.useState)(new Set([``])),[T,E]=(0,Z.useState)(!0),[D,k]=(0,Z.useState)(!1),[ee,te]=(0,Z.useState)(null),[A,re]=(0,Z.useState)(!1),[j,M]=(0,Z.useState)(null),N=(0,Z.useRef)(null),[P,F]=(0,Z.useState)(null),[I,L]=(0,Z.useState)(null),[se,ce]=(0,Z.useState)([]);(0,Z.useEffect)(()=>{let t=!0,r=()=>{p(e),h({}),v({}),b(``),S(null),w(new Set([``]))};return(async()=>{E(!0),te(null),r();try{let r=await Bn(await n(a(`/themes/${encodeURIComponent(e)}/download/`),{responseType:`arraybuffer`})),i=An(r.files),o=Kn(i);if(!t)return;p(e),h(An(r.files)),v(i),b(r.rootPrefix),S(o),w(new Set(o?.type===`file`?qn(o.path):[``]))}catch(n){if(!t)return;n instanceof c&&n.response?te(`Failed to load theme "${e}" (${n.response.status})`):te(n instanceof Error?n.message:`Failed to load theme`)}finally{t&&E(!1)}})(),()=>{t=!1}},[e,n]),(0,Z.useEffect)(()=>{let e=document.body.style.overflow;return document.body.style.overflow=`hidden`,()=>{document.body.style.overflow=e}},[]);let R=(0,Z.useMemo)(()=>Hn({baseFiles:m,currentFiles:g}),[m,g]),z=(0,Z.useMemo)(()=>new Map(R.map(e=>[e.path,e.status])),[R]),B=x?.type===`file`?g[x.path]:null;(0,Z.useEffect)(()=>{let e=!0;return B?.editable?(Wn(B.path).then(t=>{e&&ce([ie({top:!0}),ae,t,...A?[gt.lineWrapping]:[],cr])}).catch(()=>{e&&ce([ie({top:!0}),ae,...A?[gt.lineWrapping]:[],cr])}),()=>{e=!1}):(ce([]),()=>{e=!1})},[A,B]);let V=(0,Z.useCallback)(()=>{let e=N.current;e&&(N.current=null,e.type===`confirmation`?e.resolve(!1):e.resolve(null))},[]),H=e=>(V(),new Promise(t=>{let n={type:`confirmation`,props:e,resolve:t};N.current=n,M(n)})),U=e=>(V(),new Promise(t=>{let n={type:`input`,props:e,resolve:t};N.current=n,M(n)}));(0,Z.useEffect)(()=>()=>V(),[V]);let le=async()=>{R.length>0&&!await H({title:`Discard changes?`,prompt:`You have unsaved theme changes. Close the editor and discard them?`,okLabel:`Discard changes`,okVariant:`destructive`})||t(Xn()??`design/change-theme`)},ue=(0,Z.useRef)(async()=>{}),de=!!(j||P||I);(0,Z.useEffect)(()=>{let e=e=>{if((e.metaKey||e.ctrlKey)&&e.key.toLowerCase()===`s`){if(e.preventDefault(),de){e.stopPropagation(),e.stopImmediatePropagation();return}ue.current();return}e.key===`Escape`&&(de||(e.preventDefault(),e.stopPropagation(),e.stopImmediatePropagation()))};return window.addEventListener(`keydown`,e,!0),()=>{window.removeEventListener(`keydown`,e,!0)}},[de]);let fe=e=>{w(t=>{let n=new Set(t);for(let t of qn(e))n.add(t);return n})},G=(e,t)=>{if(v(e),t){S(t),t.type===`file`&&fe(t.path);return}x?.type===`file`&&e[x.path]||S(Kn(e))},pe=async()=>{let e=await U({title:`Create file`,fieldTitle:`File path`,initialValue:`partials/new-file.hbs`,okLabel:`Create file`,prompt:`Add a new editable file to this theme.`}),t=e?Dn(e):null;if(!t)return;if(!Tn(t)){f.error(`Only text files can be created here`,{description:`Use a text-based theme file extension such as .hbs, .css, .js, or .json.`});return}if(g[t]){f.error(`File already exists`);return}let n={...g,[t]:{path:t,editable:!0,content:``,binary:null,date:new Date,unixPermissions:null,dosPermissions:null}};G(n,{type:`file`,path:t})},me=async()=>{if(!x)return;let e=x.type===`dir`?x.path.replace(/\/$/,``):x.path,t=x.type===`dir`?`Rename folder to`:`Rename file to`,n=await U({title:x.type===`dir`?`Rename folder`:`Rename file`,fieldTitle:`Path`,initialValue:e,okLabel:`Rename`,prompt:t}),r=n?Dn(n):null;if(!r||r===e)return;if(x.type===`file`){let e=g[x.path];if(!Tn(r)&&e.editable){f.error(`Text files must keep a text file extension`);return}if(Qn(e,r)){f.error(`Binary files cannot be renamed to a text file`,{description:`Rename this file with a non-text extension to keep its contents intact.`});return}if(g[r]){f.error(`A file with that name already exists`);return}let t={...g},n=t[x.path];delete t[x.path],t[r]={...n,path:r,editable:Tn(r)},G(t,{type:`file`,path:r});return}let i=`${r}/`;if(i.startsWith(x.path)){f.error(`A folder cannot be renamed inside itself`);return}if(Object.keys(g).find(e=>e.startsWith(i))){f.error(`A folder with that path already exists`);return}let a=Un({files:g,oldPrefix:x.path,newPrefix:i});G(a,{type:`dir`,path:i}),w(e=>{let t=new Set;for(let n of e){if(!n.startsWith(x.path)){t.add(n);continue}t.add(`${i}${n.slice(x.path.length)}`)}return t})},K=async()=>{if(!x)return;if(x.type===`file`){if(!await H({title:`Delete file`,prompt:(0,Q.jsxs)(Q.Fragment,{children:[`Delete `,(0,Q.jsx)(`strong`,{children:x.path}),` from this theme?`]}),okLabel:`Delete`,okVariant:`destructive`}))return;let e={...g};delete e[x.path],G(e);return}let e=Object.keys(g).filter(e=>e.startsWith(x.path));if(!e.length||!await H({title:`Delete folder`,prompt:(0,Q.jsxs)(Q.Fragment,{children:[`Delete `,_(e.length),` file`,e.length===1?``:`s`,` `,`from `,(0,Q.jsx)(`strong`,{children:x.path}),`?`]}),okLabel:`Delete`,okVariant:`destructive`}))return;let t={...g};for(let n of e)delete t[n];G(t)},q=e=>{let t=m[e],n=g[e],r={...g};!t&&n?delete r[e]:t&&(r[e]={...t,binary:t.binary?new Uint8Array(t.binary):null}),G(r)},he=async()=>{let e=(await U({title:`Save as new theme`,fieldTitle:`Theme name`,initialValue:`${d}-edited`,okLabel:`Continue`,prompt:`Default themes cannot be overwritten. Save your edits as a new theme instead.`}))?.trim().toLowerCase();return e?$n.test(e)?On(e)?(f.error(`Built-in themes cannot be overwritten`),null):e:(f.error(`Invalid theme name`,{description:`Use 1-64 characters, starting with a letter or number. Allowed: letters, numbers, dashes, and underscores.`}),null):null},J=async()=>{if(D)return;if(R.length===0){f.info(`No changes to save`);return}let e=d,n=On(e)?await he():e;if(!n)return;let a=n!==e,s=o?.themes.some(e=>e.name===n)||!1,c=a?`Save your edits as "${n}"?`:`Upload ${_(R.length)} changed file${R.length===1?``:`s`} and replace "${e}"?`;if(await H({title:a?`Save theme as new copy`:`Update theme`,prompt:c,okLabel:a?`Save theme`:`Replace theme`})&&!(a&&s&&!await H({title:`Overwrite theme`,prompt:(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`strong`,{children:n}),` already exists. Do you want to overwrite it?`]}),okLabel:`Overwrite`,okVariant:`destructive`}))){k(!0);try{let r=await Vn({files:g,rootPrefix:y}),i=(await u({file:new File([r],`${n}.zip`,{type:`application/zip`}),copySettingsFrom:a?e:void 0})).themes[0],o=Xn();h(An(g)),a&&(p(n),b(y?`${n}/`:``),t(Zn(n,o)));let s=Ze(i);a||s.length?L({title:a?`Theme saved`:`Theme updated`,action:`saved`,installedTheme:i}):f.success(`Theme saved`,{description:(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(`span`,{className:`capitalize`,children:i.name}),` has been updated.`]})})}catch(e){if(e instanceof i&&e.response?.status===422){let t=Xe(e.data?.errors);if(t){F(t);return}}let t=ir(e);if(t){f.error(tr[t.code],{description:ar(t)});return}r(e)}finally{k(!1)}}};(0,Z.useEffect)(()=>{ue.current=J});let ge=e=>{S({type:`file`,path:e}),fe(e)},_e=B?z.get(B.path):null;return(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`div`,{"aria-label":`Edit theme ${e}`,"aria-modal":`true`,className:`dark fixed inset-0 z-[140] bg-[rgba(10,11,13,0.72)] text-[#e6e7ea] backdrop-blur-[4px]`,"data-testid":`theme-code-editor-modal`,role:`dialog`,onClick:e=>{e.target===e.currentTarget&&le()},children:(0,Q.jsxs)(`div`,{className:`relative flex size-full flex-col overflow-hidden bg-[#15171a]`,children:[(0,Q.jsx)(mn,{changes:R,currentThemeName:d,isSaving:D,onClose:()=>void le(),onSave:()=>void J()}),ee&&(0,Q.jsx)(`div`,{className:`border-b border-[#512828] bg-[#3a1d1d] px-4 py-2 text-[12px] text-[#ffbdbd]`,children:ee}),(0,Q.jsxs)(`div`,{className:`flex min-h-0 flex-1`,children:[(0,Q.jsx)(vn,{changesMap:z,currentFiles:g,expandedDirectories:C,isLoading:T,selectedNode:x,setExpandedDirectories:w,setSelectedNode:S,onCreateFile:()=>void pe(),onDeleteSelected:()=>void K(),onOpenFile:ge,onRenameSelected:()=>void me()}),(0,Q.jsxs)(`section`,{className:`flex min-w-0 flex-1 flex-col bg-[#16181c]`,children:[(0,Q.jsx)(`div`,{className:`flex items-center gap-2 border-b border-[#23262c] bg-[#17191d] px-4 py-2 text-[12px] text-[#8a8f98]`,children:B?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`span`,{className:`min-w-0 truncate font-medium text-[#e6e7ea]`,children:B.path}),(0,Q.jsx)(`span`,{className:`rounded bg-[#2a2d33] px-2 py-0.5 text-[10px] tracking-[0.04em] text-[#c8ccd3] uppercase`,children:Gn(B.path)}),_e&&(0,Q.jsxs)(`button`,{className:`inline-flex items-center gap-1 rounded px-2 py-0.5 text-[10px] tracking-[0.04em] uppercase ${_e===`deleted`?`bg-[#4a2222] text-[#ffbdbd]`:_e===`added`?`bg-[#17342a] text-[#a5e8c8]`:`bg-[#3b2a16] text-[#f5a623]`}`,type:`button`,onClick:()=>q(B.path),children:[(0,Q.jsx)(O,{size:11}),`Revert`]}),(0,Q.jsx)(`div`,{className:`grow`}),B.editable&&(0,Q.jsx)(`button`,{"aria-label":A?`Disable text wrap`:`Enable text wrap`,"aria-pressed":A,className:or(A),title:A?`Disable text wrap`:`Enable text wrap`,type:`button`,onClick:()=>re(e=>!e),children:(0,Q.jsx)(ne,{className:`shrink-0`,size:14,strokeWidth:2})})]}):(0,Q.jsx)(`span`,{children:`No file selected`})}),(0,Q.jsxs)(`div`,{className:`min-h-0 flex-1`,children:[!x&&!T&&(0,Q.jsx)(`div`,{className:sr,children:`Select a file from the tree to start editing.`}),x?.type===`dir`&&(0,Q.jsx)(`div`,{className:sr,children:`Folder selected. Choose a file to edit, or rename or delete the folder from the file pane.`}),B&&!B.editable&&(0,Q.jsx)(`div`,{className:sr,children:`This file cannot be edited in the browser.`}),B?.editable&&(0,Q.jsx)(oe,{basicSetup:{highlightActiveLine:!1,highlightActiveLineGutter:!1},className:`h-full [&_.cm-button]:h-8 [&_.cm-button]:rounded-md [&_.cm-button]:border [&_.cm-button]:border-[#2f333b] [&_.cm-button]:bg-[#1f2228] [&_.cm-button]:bg-none [&_.cm-button]:px-3 [&_.cm-button]:text-[13px] [&_.cm-button]:text-[#c8ccd3] [&_.cm-button:hover]:bg-[#2a2d33] [&_.cm-content]:min-h-full [&_.cm-content]:py-3 [&_.cm-content_*::selection]:bg-[#355070] [&_.cm-cursor]:border-l-[#e6e7ea] [&_.cm-editor]:h-full [&_.cm-editor]:rounded-none [&_.cm-editor]:border-0 [&_.cm-editor]:bg-[#16181c] [&_.cm-gutters]:border-r-[#23262c] [&_.cm-gutters]:bg-[#17191d] [&_.cm-line::selection]:bg-[#355070] [&_.cm-panel]:bg-[#17191d] [&_.cm-panel]:shadow-none [&_.cm-panel.cm-search]:gap-2 [&_.cm-panel.cm-search]:px-3 [&_.cm-panel.cm-search]:py-2 [&_.cm-panel.cm-search]:text-[13px] [&_.cm-panels]:border-b [&_.cm-panels]:border-[#23262c] [&_.cm-panels]:bg-[#17191d] [&_.cm-panels]:text-[#c8ccd3] [&_.cm-scroller]:min-h-full [&_.cm-scroller]:overflow-auto [&_.cm-scroller]:bg-[#16181c] [&_.cm-search]:flex [&_.cm-search]:flex-wrap [&_.cm-search]:items-center [&_.cm-search]:gap-2 [&_.cm-search_label]:inline-flex [&_.cm-search_label]:items-center [&_.cm-search_label]:gap-1.5 [&_.cm-search_label]:text-[#a5abb4] [&_.cm-search_label_input]:size-4 [&_.cm-search_label_input]:accent-[#14b886] [&_.cm-searchMatch]:bg-[#243043] [&_.cm-searchMatch-selected]:bg-[#3b2a16] [&_.cm-searchMatch-selected]:outline-none [&_.cm-selectionBackground]:!bg-[#355070] [&_.cm-selectionLayer_.cm-selectionBackground]:!bg-[#355070] [&_.cm-textfield]:h-8 [&_.cm-textfield]:min-w-[220px] [&_.cm-textfield]:rounded-md [&_.cm-textfield]:border [&_.cm-textfield]:border-[#2f333b] [&_.cm-textfield]:bg-[#16181c] [&_.cm-textfield]:px-2.5 [&_.cm-textfield]:text-[#e6e7ea] [&_.cm-textfield]:outline-none [&_.cm-textfield]:placeholder:text-[#6a6f78]`,extensions:se,height:`full`,theme:ae,value:B.content||``,autoFocus:!0,onChange:e=>{v(t=>({...t,[B.path]:{...t[B.path],content:e}}))}},`${B.path}:${se.length}`)]})]})]})]})}),j?.type===`confirmation`&&(0,Q.jsx)(ln,{...j.props,onResolve:e=>{N.current===j&&(N.current=null,M(null),j.resolve(e))}}),j?.type===`input`&&(0,Q.jsx)(un,{...j.props,onResolve:e=>{N.current===j&&(N.current=null,M(null),j.resolve(e))}}),P&&(0,Q.jsx)(Tt,{action:`saved`,cancelLabel:`Close`,fatalErrors:P,themeName:d,title:`Theme not saved`,onClose:()=>F(null)}),I&&(0,Q.jsx)(Lt,{...I,onClose:()=>L(null)})]})},ur=()=>{let{route:e,updateRoute:t}=W(),n=mt(),r=e,[i,a]=(0,Z.useState)(null),[o,s]=(0,Z.useState)(!1),[c,l]=(0,Z.useState)(!1),[u,d]=(0,Z.useState)(null),[f,p]=(0,Z.useState)(!1),{checkThemeLimitError:m,isThemeLimitCheckReady:h,noThemeChangesAllowed:g,isThemeLimited:_}=wt(),[v,y]=(0,Z.useState)(null),[b,x]=(0,Z.useState)(!1),{themeName:S,isInvalid:C}=bn(r),{showLimit:w}=ft(),T=(0,Z.useCallback)(e=>{w({prompt:e,onOk:()=>t({route:n,isExternal:!0})})},[w,t,n]);if((0,Z.useEffect)(()=>{r===`design/change-theme`&&h?(async()=>{if(!g){s(!1),a(null);return}s(!0);let e=await m();a(e),s(!1),e&&(T(e),t(`theme`))})():(a(null),s(!1))},[m,r,h,g,T,t]),(0,Z.useEffect)(()=>{r!==`theme/install`&&(x(!1),y(null),l(!1))},[r]),(0,Z.useEffect)(()=>{C&&t(`theme`)},[C,t]),(0,Z.useEffect)(()=>{let e=!1;return(async()=>{if(!S){d(null),p(!1);return}if(!h){p(!0);return}if(!_){d(null),p(!1);return}p(!0);let n=await m(`.`);e||(d(n),p(!1),n&&(T(n),t(`theme`)))})(),()=>{e=!0}},[m,S,h,_,T,t]),(0,Z.useEffect)(()=>{let e=()=>{let e=window.location.href.split(`#`)[1]?.split(`?`)[1];return e?new URLSearchParams(e).get(`ref`):null},n=e=>{y(!1),T(e),t({route:`theme`,replace:!0})};(async()=>{if(r!==`theme/install`){l(!1);return}if(x(!0),!h){l(!0);return}if(!_){y(!0),l(!1);return}l(!0);let t=e();if(!t){y(!1),l(!1);return}let i=t.split(`/`)[1]?.toLowerCase(),a=await m(i);if(r!==`theme/install`){l(!1);return}if(a){y(!1),l(!1),n(a);return}y(!0),l(!1)})()},[m,r,h,g,_,T,t]),r===`design/edit`)return(0,Q.jsx)(cn,{});if(r===`design/change-theme`)return o||i?null:(0,Q.jsx)(Gt,{});if(r===`theme/install`){if(!b||!h||c||v===null||!v)return null;let e=window.location.href.split(`#`)[1]?.split(`?`)[1],t=null,n=null;if(e){let r=new URLSearchParams(e);t=r.get(`ref`),n=r.get(`source`)}return(0,Q.jsx)(Gt,{source:n,themeRef:t})}else if(r.startsWith(`theme/edit/`))return C||!S||f||u?null:(0,Q.jsx)(lr,{themeName:S});else return null};export{ur as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{t as e}from"./react-BXwhMTuc.js";import{t}from"./jsx-runtime-BlNNh7jY.js";import{l as n}from"./dist-BXHrDV19.js";import{t as r}from"./stack-BURz77VS.js";e();var i=t();function a({className:e,children:t,...a}){return(0,i.jsx)(r,{className:n(`py-5`,e),"data-detail-page":`header`,gap:`lg`,...a,children:t})}function o({className:e,children:t,...a}){return(0,i.jsx)(r,{className:n(`min-h-0 min-w-0 grow overflow-y-auto pb-4 lg:pb-8`,e),"data-detail-page":`body`,gap:`none`,...a,children:t})}var s=Object.assign(function({className:e,children:t,...a}){return(0,i.jsx)(r,{className:n(`h-full min-h-0 grow px-4 lg:px-6`,e),"data-detail-page":`detail-page`,gap:`none`,...a,children:t})},{Header:a,Body:o});export{s as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{s as e,t}from"./react-BXwhMTuc.js";import{t as n}from"./jsx-runtime-BlNNh7jY.js";import{l as r}from"./dist-BXHrDV19.js";import{t as i}from"./stack-BURz77VS.js";import{t as a}from"./button-DvIh2Bq-.js";import{$n as o,Qn as s,ar as c,er as l,ir as u,nr as d,rr as f,tr as p}from"./index-DDd-zhNL.js";var m=e(t(),1),h=n();function g(){let e=m.useRef(null),[t,n]=m.useState(!1),r=m.useCallback((t,r)=>{if(!t){r();return}e.current=r,n(!0)},[]),i=m.useCallback(t=>{n(t),t||(e.current=null)},[]);return{confirm:r,dialogProps:{open:t,onConfirm:m.useCallback(()=>{let t=e.current;e.current=null,n(!1),t?.()},[]),onOpenChange:i}}}function _({className:e,description:t,open:n,testId:m=`confirmation-modal`,title:g=`Are you sure you want to leave this page?`,onConfirm:_,onOpenChange:v}){return(0,h.jsx)(s,{open:n,onOpenChange:v,children:(0,h.jsxs)(p,{className:r(`z-[1100]`,e),"data-testid":m,overlayClassName:`z-[1100]`,onEscapeKeyDown:e=>e.stopPropagation(),children:[(0,h.jsxs)(u,{children:[(0,h.jsx)(c,{children:g}),(0,h.jsx)(d,{asChild:!0,children:(0,h.jsx)(i,{gap:`sm`,children:t||(0,h.jsxs)(h.Fragment,{children:[(0,h.jsx)(`p`,{children:`Hey there! It looks like you didn't save the changes you made.`}),(0,h.jsx)(`p`,{children:`Save before you go!`})]})})})]}),(0,h.jsxs)(f,{children:[(0,h.jsx)(l,{asChild:!0,children:(0,h.jsx)(a,{variant:`outline`,children:`Stay`})}),(0,h.jsx)(o,{className:`bg-destructive text-destructive-foreground hover:bg-destructive/90`,asChild:!0,children:(0,h.jsx)(a,{variant:`destructive`,onClick:_,children:`Leave`})})]})]})})}export{g as n,_ as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{s as e,t}from"./react-BXwhMTuc.js";import{t as n}from"./jsx-runtime-BlNNh7jY.js";import{a as r,n as i}from"./dist-BXHrDV19.js";import{b as a,d as o,l as s,u as c,v as l,x as u,y as d}from"./shade-app-CcS3f8MZ-D5BnfHck.js";import{a as f,r as p}from"./dist-FEQQAwTe.js";import{i as m,o as h,r as g,t as _}from"./Combination-DWfJPcz9.js";var v=e(t(),1),y=n(),b=`Dialog`,[x,S]=f(b),[C,w]=x(b),T=e=>{let{__scopeDialog:t,children:n,open:r,defaultOpen:i,onOpenChange:a,modal:o=!0}=e,c=v.useRef(null),u=v.useRef(null),[d,f]=s({prop:r,defaultProp:i??!1,onChange:a,caller:b});return(0,y.jsx)(C,{scope:t,triggerRef:c,contentRef:u,contentId:l(),titleId:l(),descriptionId:l(),open:d,onOpenChange:f,onOpenToggle:v.useCallback(()=>f(e=>!e),[f]),modal:o,children:n})};T.displayName=b;var E=`DialogTrigger`,D=v.forwardRef((e,t)=>{let{__scopeDialog:n,...i}=e,a=w(E,n),o=r(t,a.triggerRef);return(0,y.jsx)(p.button,{type:`button`,"aria-haspopup":`dialog`,"aria-expanded":a.open,"aria-controls":a.open?a.contentId:void 0,"data-state":q(a.open),...i,ref:o,onClick:u(e.onClick,a.onOpenToggle)})});D.displayName=E;var O=`DialogPortal`,[k,A]=x(O,{forceMount:void 0}),j=e=>{let{__scopeDialog:t,forceMount:n,children:r,container:i}=e,a=w(O,t);return(0,y.jsx)(k,{scope:t,forceMount:n,children:v.Children.map(r,e=>(0,y.jsx)(c,{present:n||a.open,children:(0,y.jsx)(o,{asChild:!0,container:i,children:e})}))})};j.displayName=O;var M=`DialogOverlay`,N=v.forwardRef((e,t)=>{let n=A(M,e.__scopeDialog),{forceMount:r=n.forceMount,...i}=e,a=w(M,e.__scopeDialog);return a.modal?(0,y.jsx)(c,{present:r||a.open,children:(0,y.jsx)(F,{...i,ref:t})}):null});N.displayName=M;var P=i(`DialogOverlay.RemoveScroll`),F=v.forwardRef((e,t)=>{let{__scopeDialog:n,...i}=e,o=w(M,n),s=r(t,a());return(0,y.jsx)(_,{as:P,allowPinchZoom:!0,shards:[o.contentRef],children:(0,y.jsx)(p.div,{"data-state":q(o.open),...i,ref:s,style:{pointerEvents:`auto`,...i.style}})})}),I=`DialogContent`,L=v.forwardRef((e,t)=>{let n=A(I,e.__scopeDialog),{forceMount:r=n.forceMount,...i}=e,a=w(I,e.__scopeDialog);return(0,y.jsx)(c,{present:r||a.open,children:a.modal?(0,y.jsx)(R,{...i,ref:t}):(0,y.jsx)(z,{...i,ref:t})})});L.displayName=I;var R=v.forwardRef((e,t)=>{let n=w(I,e.__scopeDialog),i=v.useRef(null),a=r(t,n.contentRef,i);return v.useEffect(()=>{let e=i.current;if(e)return g(e)},[]),(0,y.jsx)(B,{...e,ref:a,trapFocus:n.open,disableOutsidePointerEvents:n.open,onCloseAutoFocus:u(e.onCloseAutoFocus,e=>{e.preventDefault(),n.triggerRef.current?.focus()}),onPointerDownOutside:u(e.onPointerDownOutside,e=>{let t=e.detail.originalEvent,n=t.button===0&&t.ctrlKey===!0;(t.button===2||n)&&e.preventDefault()}),onFocusOutside:u(e.onFocusOutside,e=>e.preventDefault())})}),z=v.forwardRef((e,t)=>{let n=w(I,e.__scopeDialog),r=v.useRef(!1),i=v.useRef(!1);return(0,y.jsx)(B,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:t=>{e.onCloseAutoFocus?.(t),t.defaultPrevented||(r.current||n.triggerRef.current?.focus(),t.preventDefault()),r.current=!1,i.current=!1},onInteractOutside:t=>{e.onInteractOutside?.(t),t.defaultPrevented||(r.current=!0,t.detail.originalEvent.type===`pointerdown`&&(i.current=!0));let a=t.target;n.triggerRef.current?.contains(a)&&t.preventDefault(),t.detail.originalEvent.type===`focusin`&&i.current&&t.preventDefault()}})}),B=v.forwardRef((e,t)=>{let{__scopeDialog:n,trapFocus:r,onOpenAutoFocus:i,onCloseAutoFocus:a,...o}=e,s=w(I,n);return h(),(0,y.jsx)(y.Fragment,{children:(0,y.jsx)(m,{asChild:!0,loop:!0,trapped:r,onMountAutoFocus:i,onUnmountAutoFocus:a,children:(0,y.jsx)(d,{role:`dialog`,id:s.contentId,"aria-describedby":s.descriptionId,"aria-labelledby":s.titleId,"data-state":q(s.open),...o,ref:t,deferPointerDownOutside:!0,onDismiss:()=>s.onOpenChange(!1)})})})}),V=`DialogTitle`,H=v.forwardRef((e,t)=>{let{__scopeDialog:n,...r}=e,i=w(V,n);return(0,y.jsx)(p.h2,{id:i.titleId,...r,ref:t})});H.displayName=V;var U=`DialogDescription`,W=v.forwardRef((e,t)=>{let{__scopeDialog:n,...r}=e,i=w(U,n);return(0,y.jsx)(p.p,{id:i.descriptionId,...r,ref:t})});W.displayName=U;var G=`DialogClose`,K=v.forwardRef((e,t)=>{let{__scopeDialog:n,...r}=e,i=w(G,n);return(0,y.jsx)(p.button,{type:`button`,...r,ref:t,onClick:u(e.onClick,()=>i.onOpenChange(!1))})});K.displayName=G;function q(e){return e?`open`:`closed`}export{N as a,D as c,W as i,S as l,K as n,j as o,L as r,H as s,T as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{s as e,t}from"./react-BXwhMTuc.js";import{t as n}from"./jsx-runtime-BlNNh7jY.js";import{a as r,n as i}from"./dist-BXHrDV19.js";import{a}from"./dist-FEQQAwTe.js";var o=e(t(),1),s=n();function c(e){let t=e+`CollectionProvider`,[n,c]=a(t),[l,u]=n(t,{collectionRef:{current:null},itemMap:new Map}),d=e=>{let{scope:t,children:n}=e,r=o.useRef(null),i=o.useRef(new Map).current;return(0,s.jsx)(l,{scope:t,itemMap:i,collectionRef:r,children:n})};d.displayName=t;let f=e+`CollectionSlot`,p=i(f),m=o.forwardRef((e,t)=>{let{scope:n,children:i}=e,a=r(t,u(f,n).collectionRef);return(0,s.jsx)(p,{ref:a,children:i})});m.displayName=f;let h=e+`CollectionItemSlot`,g=`data-radix-collection-item`,_=i(h),v=o.forwardRef((e,t)=>{let{scope:n,children:i,...a}=e,c=o.useRef(null),l=r(t,c),d=u(h,n);return o.useEffect(()=>(d.itemMap.set(c,{ref:c,...a}),()=>void d.itemMap.delete(c))),(0,s.jsx)(_,{[g]:``,ref:l,children:i})});v.displayName=h;function y(t){let n=u(e+`CollectionConsumer`,t);return o.useCallback(()=>{let e=n.collectionRef.current;if(!e)return[];let t=Array.from(e.querySelectorAll(`[${g}]`));return Array.from(n.itemMap.values()).sort((e,n)=>t.indexOf(e.ref.current)-t.indexOf(n.ref.current))},[n.collectionRef,n.itemMap])}return[{Provider:d,Slot:m,ItemSlot:v},y,c]}var l=o.createContext(void 0);function u(e){let t=o.useContext(l);return e||t||`ltr`}export{c as n,u as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{s as e,t}from"./react-BXwhMTuc.js";import{t as n}from"./react-dom-CMOtJ5MH.js";import{t as r}from"./jsx-runtime-BlNNh7jY.js";import{n as i}from"./dist-BXHrDV19.js";var a=e(t(),1),o=r();function s(e,t=[]){let n=[];function r(t,r){let i=a.createContext(r);i.displayName=t+`Context`;let s=n.length;n=[...n,r];let c=t=>{let{scope:n,children:r,...c}=t,l=n?.[e]?.[s]||i,u=a.useMemo(()=>c,Object.values(c));return(0,o.jsx)(l.Provider,{value:u,children:r})};c.displayName=t+`Provider`;function l(n,o){let c=o?.[e]?.[s]||i,l=a.useContext(c);if(l)return l;if(r!==void 0)return r;throw Error(`\`${n}\` must be used within \`${t}\``)}return[c,l]}let i=()=>{let t=n.map(e=>a.createContext(e));return function(n){let r=n?.[e]||t;return a.useMemo(()=>({[`__scope${e}`]:{...n,[e]:r}}),[n,r])}};return i.scopeName=e,[r,c(i,...t)]}function c(...e){let t=e[0];if(e.length===1)return t;let n=()=>{let n=e.map(e=>({useScope:e(),scopeName:e.scopeName}));return function(e){let r=n.reduce((t,{useScope:n,scopeName:r})=>{let i=n(e)[`__scope${r}`];return{...t,...i}},{});return a.useMemo(()=>({[`__scope${t.scopeName}`]:r}),[r])}};return n.scopeName=t.scopeName,n}var l=e(n(),1),u=[`a`,`button`,`div`,`form`,`h2`,`h3`,`img`,`input`,`label`,`li`,`nav`,`ol`,`p`,`select`,`span`,`svg`,`ul`].reduce((e,t)=>{let n=i(`Primitive.${t}`),r=a.forwardRef((e,r)=>{let{asChild:i,...a}=e,s=i?n:t;return typeof window<`u`&&(window[Symbol.for(`radix-ui`)]=!0),(0,o.jsx)(s,{...a,ref:r})});return r.displayName=`Primitive.${t}`,{...e,[t]:r}},{});function d(e,t){e&&l.flushSync(()=>e.dispatchEvent(t))}function f(e){let t=a.useRef(e);return a.useEffect(()=>{t.current=e}),a.useMemo(()=>((...e)=>t.current?.(...e)),[])}var p=globalThis?.document?a.useLayoutEffect:()=>{};export{s as a,d as i,f as n,u as r,p as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{s as e,t}from"./react-BXwhMTuc.js";import{t as n}from"./jsx-runtime-BlNNh7jY.js";import{t as r}from"./inline-B8H6NzIw.js";import{n as ee}from"./heading-BB21QAbb.js";import{a as te,i as ne,o as re,r as ie}from"./shade-app-CcS3f8MZ-D5BnfHck.js";import{d as ae,t as i,zn as oe}from"./button-DvIh2Bq-.js";import{t as a}from"./skeleton-DwCva0-b.js";import{i as o,o as s,t as c}from"./field-p7KnP98B.js";import{Sn as se,Xn as l,Yt as ce,Zn as u,lt as le,pt as ue,qt as de,vn as fe,yn as pe}from"./index-DDd-zhNL.js";import"./layout-DWnOMly4.js";import{n as me,t as d}from"./social-web-handle-CvfIKPww.js";var f=e(t(),1),p=n();function m(e){let t=e.trim();if(t===``)return null;try{return new URL(t.includes(`://`)?t:`https://${t}`).host||null}catch{return t.replace(/^[a-z][a-z\d+\-.]*:\/\//i,``).split(/[/?#]/)[0]||null}}function he(e,t){if(e)try{return new URL(e).host}catch{}return t?.split(`@`).at(-1)??``}function ge(e,t){if(!e)return``;try{return new URL(e,t||window.location.origin).toString()}catch{return e}}async function _e(e){if(navigator.clipboard?.writeText)try{await navigator.clipboard.writeText(e);return}catch{}let t=document.createElement(`textarea`);t.value=e,t.setAttribute(`readonly`,``),t.style.position=`fixed`,t.style.left=`-9999px`,t.style.top=`0`,document.body.appendChild(t),t.select(),document.execCommand(`copy`),document.body.removeChild(t)}var h=()=>{let{data:e,isLoading:t}=ce(`index`,`me`),{data:n}=le(),{data:h,isLoading:g,isError:_}=de(`index`),v=fe(`index`),y=se(`index`),b=pe(e?.handle||`index`),[x,S]=(0,f.useState)(``),[C,w]=(0,f.useState)(``),[T,E]=(0,f.useState)(null),[D,O]=(0,f.useState)(!1),[k,A]=(0,f.useState)(!1),[j,M]=(0,f.useState)(!1),[N,P]=(0,f.useState)(null),[F,I]=(0,f.useState)(null),[L,R]=(0,f.useState)(null),[ve,z]=(0,f.useState)(!1),[ye,B]=(0,f.useState)(!1),V=(0,f.useRef)(null);(0,f.useEffect)(()=>{e?.handle&&(w(d(e.handle).username),E(null))},[e?.handle]),(0,f.useEffect)(()=>()=>{V.current&&window.clearTimeout(V.current)},[]);let H=m(x),U=h?.domain??null,W=he(h?.actorUrl,h?.handle),G=d(e?.handle).username,K=b.isPending,be=v.isPending||y.isPending,q=g||be,J=t||K||!e,Y=!!(D&&C!==G),X=!!(j&&H&&(!U||N===H)),xe=!!(k&&H&&!j),Se=!!(X&&H&&H!==N),Ce=!!(N&&H===N),we=H?`https://${H}/.well-known/webfinger`:``,Te=W?`https://${W}/.well-known/webfinger`:``,Z=d(h?.handle),Q={username:D?C:Z.username,domain:(k||j)&&x?H??x.trim():Z.domain},Ee=`@${Q.username}@${Q.domain}`,De=ge(e?.avatarUrl||n?.site?.icon,n?.site?.url),Oe=e=>{e.preventDefault();let t=m(new FormData(e.currentTarget).get(`domain`)?.toString()??``);t&&(S(t),A(!0),M(!0),I(null),R(null))},ke=async()=>{if(!(!H||!Se)){I(null),R(null);try{await y.mutateAsync(H),P(H)}catch{R(`Redirect could not be validated`)}}},Ae=async()=>{if(N){I(null),R(null);try{await v.mutateAsync(N),S(``),A(!1),M(!1),P(null)}catch{I(`Could not save the custom domain. Try again.`)}}},$=()=>{S(``),A(!1),M(!1),P(null),I(null),R(null)},je=async()=>{if(!e||!D||!Y)return;let t=me(C);if(t){E(t);return}E(null);try{await b.mutateAsync({name:e.name,username:C,bio:e.bio??``,avatarUrl:e.avatarUrl||``,bannerImageUrl:e.bannerImageUrl||``}),O(!1)}catch{E(`Could not save the Social Web username. Try again.`)}},Me=()=>{w(G),E(null),O(!1)},Ne=async()=>{I(null);try{await v.mutateAsync(null),S(``),A(!1),M(!1),P(null)}catch{I(`Could not remove the custom domain. Try again.`)}},Pe=async()=>{!Q.username||!Q.domain||(await _e(Ee),z(!0),B(!0),V.current&&window.clearTimeout(V.current),V.current=window.setTimeout(()=>{z(!1),B(!1)},2e3))};return(0,p.jsx)(ue,{children:(0,p.jsxs)(`div`,{className:`mx-auto max-w-[620px] py-[min(4vh,48px)]`,children:[(0,p.jsx)(r,{gap:`2xl`,justify:`between`,children:(0,p.jsx)(ee,{children:`Your social web handle`})}),(0,p.jsx)(`p`,{className:`mt-3 text-base text-muted-foreground`,children:`Like an email address, your handle is how people can find and interact with you.`}),(0,p.jsx)(`div`,{className:`mt-10`,children:(0,p.jsx)(`div`,{className:`rounded-md border border-border-default bg-sidebar px-4 pt-3 pb-4`,children:(0,p.jsx)(c,{children:g?(0,p.jsx)(a,{className:`mt-2 h-16 w-full`}):_?(0,p.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`Could not load your Social Web handle.`}):(0,p.jsxs)(`div`,{className:`mt-3 flex items-start gap-2`,children:[(0,p.jsx)(`div`,{className:`mt-[-5px] flex size-7 shrink-0 items-center justify-center overflow-hidden rounded-full bg-surface-elevated text-muted-foreground ring-1 ring-border-default`,children:t?(0,p.jsx)(a,{className:`size-7 rounded-full`}):De?(0,p.jsx)(`img`,{alt:e?.name||n?.site?.title||``,className:`size-full rounded-full object-cover`,referrerPolicy:`no-referrer`,src:De}):(0,p.jsx)(ae,{className:`size-4`,strokeWidth:1.5})}),(0,p.jsx)(`div`,{className:`-ml-14 min-w-0 overflow-x-auto px-14`,children:(0,p.jsxs)(`div`,{"aria-label":`Social Web handle breakdown`,className:`inline-flex pb-9 font-mono text-xl leading-none font-medium whitespace-nowrap text-foreground select-none`,role:`group`,children:[(0,p.jsx)(`span`,{children:`@`}),(0,p.jsxs)(`div`,{className:`relative`,children:[(0,p.jsx)(`span`,{children:Q.username}),(0,p.jsxs)(`div`,{className:`absolute top-7 left-0 w-full border-t border-border-strong before:absolute before:top-[-5px] before:left-0 before:h-[5px] before:border-l before:border-border-strong after:absolute after:top-[-5px] after:right-0 after:h-[5px] after:border-l after:border-border-strong`,children:[(0,p.jsx)(`span`,{"aria-hidden":`true`,className:`absolute top-0 left-1/2 h-[5px] border-l border-border-strong`}),(0,p.jsx)(`div`,{className:`absolute top-2 right-0 w-max min-w-full text-center font-sans text-[10px] leading-normal font-medium whitespace-nowrap text-muted-foreground uppercase`,children:`Username`})]})]}),(0,p.jsx)(`span`,{className:`ml-px`,children:`@`}),(0,p.jsxs)(`div`,{className:`relative`,children:[(0,p.jsx)(`span`,{children:Q.domain}),(0,p.jsxs)(`div`,{className:`absolute top-7 left-0 w-full border-t border-state-success before:absolute before:top-[-5px] before:left-0 before:h-[5px] before:border-l before:border-state-success after:absolute after:top-[-5px] after:right-0 after:h-[5px] after:border-l after:border-state-success`,children:[(0,p.jsx)(`span`,{"aria-hidden":`true`,className:`absolute top-0 left-1/2 h-[5px] border-l border-state-success`}),(0,p.jsx)(`div`,{className:`absolute top-2 left-0 w-max min-w-full text-center font-sans text-[10px] leading-normal font-medium whitespace-nowrap text-state-success uppercase`,children:`Domain`})]})]}),h?.handle&&(0,p.jsx)(te,{delayDuration:0,children:(0,p.jsxs)(ie,{open:ye,onOpenChange:B,children:[(0,p.jsx)(re,{asChild:!0,children:(0,p.jsx)(i,{"aria-label":`Copy Social Web handle`,className:`mt-[-2px] ml-1.5 size-5 shrink-0 self-start p-0 text-muted-foreground hover:text-foreground [&_svg]:size-3.5!`,type:`button`,variant:`ghost`,onClick:()=>{Pe()},children:(0,p.jsx)(oe,{size:12})})}),(0,p.jsx)(ne,{children:ve?`Copied!`:`Copy`})]})})]})})]})})})}),(0,p.jsx)(`form`,{className:`mt-10`,onSubmit:e=>{e.preventDefault(),je()},children:(0,p.jsxs)(c,{children:[(0,p.jsx)(s,{htmlFor:`social-web-username`,children:`Social web username`}),t?(0,p.jsx)(a,{className:`h-9 w-full`}):(0,p.jsxs)(r,{className:`flex-col items-stretch sm:flex-row sm:items-center`,gap:`md`,children:[(0,p.jsx)(u,{"aria-describedby":T?`social-web-username-error`:void 0,"aria-invalid":T?!0:void 0,autoComplete:`off`,className:`sm:flex-1`,disabled:J||!D,id:`social-web-username`,value:C,"data-1p-ignore":!0,onChange:e=>{w(e.target.value),E(null)}}),D?(0,p.jsxs)(r,{gap:`md`,justify:`end`,children:[(0,p.jsx)(i,{className:`h-9 text-sm sm:w-auto`,disabled:K,type:`button`,variant:`outline`,onClick:Me,children:`Cancel`}),(0,p.jsx)(i,{className:`h-9 text-sm sm:w-auto`,disabled:J||!Y,type:`submit`,children:K?(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(l,{color:`light`,size:`sm`}),`Saving...`]}):`Save`})]}):(0,p.jsx)(i,{"aria-label":`Edit Social web username`,className:`h-9 text-sm sm:w-auto`,disabled:J,type:`button`,variant:`outline`,onClick:()=>{w(G),E(null),O(!0)},children:`Edit`})]}),T&&(0,p.jsx)(o,{id:`social-web-username-error`,children:T})]})}),(0,p.jsx)(`div`,{className:`mt-10`,children:U&&!N?(0,p.jsxs)(c,{"data-invalid":F?!0:void 0,children:[(0,p.jsx)(s,{htmlFor:`social-web-active-domain`,children:`Social web domain`}),(0,p.jsxs)(r,{className:`flex-col items-stretch sm:flex-row sm:items-center`,gap:`md`,children:[(0,p.jsx)(u,{"aria-label":`Active social web domain`,autoComplete:`off`,className:`sm:flex-1`,id:`social-web-active-domain`,value:U,"data-1p-ignore":!0,disabled:!0}),(0,p.jsx)(i,{className:`h-9 text-sm sm:w-auto`,disabled:q,variant:`outline`,onClick:Ne,children:v.isPending?(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(l,{size:`sm`}),`Removing...`]}):`Remove`})]}),F&&(0,p.jsx)(o,{id:`social-web-domain-error`,children:F})]}):(0,p.jsxs)(`form`,{onSubmit:Oe,children:[(0,p.jsxs)(c,{"data-invalid":F?!0:void 0,children:[(0,p.jsx)(s,{htmlFor:`social-web-domain`,children:`Social web domain`}),(0,p.jsxs)(r,{className:`flex-col items-stretch sm:flex-row sm:items-center`,gap:`md`,children:[(0,p.jsx)(u,{"aria-describedby":F?`social-web-domain-error`:void 0,"aria-invalid":F?!0:void 0,"aria-label":`Social web domain`,autoComplete:`off`,className:`sm:flex-1`,disabled:q||!k||j,id:`social-web-domain`,name:`domain`,placeholder:W,value:k||j?x:W,"data-1p-ignore":!0,onChange:e=>{S(e.target.value),M(!1),P(null),I(null),R(null)}}),!X&&(k?(0,p.jsxs)(r,{gap:`md`,justify:`end`,children:[(0,p.jsx)(i,{className:`h-9 text-sm sm:w-auto`,disabled:q,type:`button`,variant:`outline`,onClick:$,children:`Cancel`}),(0,p.jsx)(i,{className:`h-9 text-sm sm:w-auto`,disabled:q||!xe||_,type:`submit`,children:`Activate`})]}):(0,p.jsx)(i,{"aria-label":`Edit Social web domain`,className:`h-9 text-sm sm:w-auto`,disabled:q||_,type:`button`,variant:`outline`,onClick:()=>{S(``),I(null),R(null),A(!0)},children:`Edit`}))]}),F&&(0,p.jsx)(o,{id:`social-web-domain-error`,children:F})]}),X&&(0,p.jsxs)(`div`,{className:`mt-6 rounded-md border border-border-default bg-surface-elevated p-4`,children:[(0,p.jsx)(`div`,{className:`text-sm font-medium text-foreground`,children:`Set up your redirect`}),(0,p.jsx)(`p`,{className:`mt-2 text-sm text-muted-foreground`,children:`Add a redirect or proxy service to forward social web requests to Ghost.`}),(0,p.jsxs)(`div`,{className:`mt-4 flex flex-col gap-3 text-sm`,children:[(0,p.jsxs)(`div`,{children:[(0,p.jsx)(`div`,{className:`text-muted-foreground`,children:`Redirect from`}),(0,p.jsx)(`code`,{className:`mt-1 block overflow-x-auto rounded-sm bg-background px-3 py-2 text-foreground`,children:we})]}),(0,p.jsxs)(`div`,{children:[(0,p.jsx)(`div`,{className:`text-muted-foreground`,children:`Redirect to`}),(0,p.jsx)(`code`,{className:`mt-1 block overflow-x-auto rounded-sm bg-background px-3 py-2 text-foreground`,children:Te})]})]})]}),X&&(0,p.jsxs)(r,{className:`mt-4 flex-col items-stretch sm:flex-row sm:items-center`,gap:`md`,justify:`between`,children:[(0,p.jsx)(`div`,{className:`text-sm text-destructive`,children:L}),(0,p.jsxs)(r,{gap:`md`,justify:`end`,children:[(0,p.jsx)(i,{disabled:q,variant:`outline`,onClick:$,children:`Cancel`}),Ce?(0,p.jsx)(i,{disabled:q,onClick:Ae,children:v.isPending?(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(l,{color:`light`,size:`sm`}),`Saving...`]}):`Save`}):(0,p.jsx)(i,{disabled:q||!Se||_,onClick:ke,children:y.isPending?(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(l,{color:`light`,size:`sm`}),`Validating...`]}):L?`Retry`:`Validate`})]})]})]})})]})})};export{h as default};
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import{n as e,s as t,t as n}from"./react-BXwhMTuc.js";import{t as r}from"./jsx-runtime-BlNNh7jY.js";import{l as i,o as a}from"./dist-BXHrDV19.js";import{n as o}from"./button-DvIh2Bq-.js";import{n as s}from"./Combination-DWfJPcz9.js";import{t as c}from"./prop-types-6lTeqvom.js";import{t as l}from"./input-surface-wSO5CRy5.js";var u=new Map([[`1km`,`application/vnd.1000minds.decision-model+xml`],[`3dml`,`text/vnd.in3d.3dml`],[`3ds`,`image/x-3ds`],[`3g2`,`video/3gpp2`],[`3gp`,`video/3gp`],[`3gpp`,`video/3gpp`],[`3mf`,`model/3mf`],[`7z`,`application/x-7z-compressed`],[`7zip`,`application/x-7z-compressed`],[`123`,`application/vnd.lotus-1-2-3`],[`aab`,`application/x-authorware-bin`],[`aac`,`audio/x-acc`],[`aam`,`application/x-authorware-map`],[`aas`,`application/x-authorware-seg`],[`abw`,`application/x-abiword`],[`ac`,`application/vnd.nokia.n-gage.ac+xml`],[`ac3`,`audio/ac3`],[`acc`,`application/vnd.americandynamics.acc`],[`ace`,`application/x-ace-compressed`],[`acu`,`application/vnd.acucobol`],[`acutc`,`application/vnd.acucorp`],[`adp`,`audio/adpcm`],[`aep`,`application/vnd.audiograph`],[`afm`,`application/x-font-type1`],[`afp`,`application/vnd.ibm.modcap`],[`ahead`,`application/vnd.ahead.space`],[`ai`,`application/pdf`],[`aif`,`audio/x-aiff`],[`aifc`,`audio/x-aiff`],[`aiff`,`audio/x-aiff`],[`air`,`application/vnd.adobe.air-application-installer-package+zip`],[`ait`,`application/vnd.dvb.ait`],[`ami`,`application/vnd.amiga.ami`],[`amr`,`audio/amr`],[`apk`,`application/vnd.android.package-archive`],[`apng`,`image/apng`],[`appcache`,`text/cache-manifest`],[`application`,`application/x-ms-application`],[`apr`,`application/vnd.lotus-approach`],[`arc`,`application/x-freearc`],[`arj`,`application/x-arj`],[`asc`,`application/pgp-signature`],[`asf`,`video/x-ms-asf`],[`asm`,`text/x-asm`],[`aso`,`application/vnd.accpac.simply.aso`],[`asx`,`video/x-ms-asf`],[`atc`,`application/vnd.acucorp`],[`atom`,`application/atom+xml`],[`atomcat`,`application/atomcat+xml`],[`atomdeleted`,`application/atomdeleted+xml`],[`atomsvc`,`application/atomsvc+xml`],[`atx`,`application/vnd.antix.game-component`],[`au`,`audio/x-au`],[`avi`,`video/x-msvideo`],[`avif`,`image/avif`],[`aw`,`application/applixware`],[`azf`,`application/vnd.airzip.filesecure.azf`],[`azs`,`application/vnd.airzip.filesecure.azs`],[`azv`,`image/vnd.airzip.accelerator.azv`],[`azw`,`application/vnd.amazon.ebook`],[`b16`,`image/vnd.pco.b16`],[`bat`,`application/x-msdownload`],[`bcpio`,`application/x-bcpio`],[`bdf`,`application/x-font-bdf`],[`bdm`,`application/vnd.syncml.dm+wbxml`],[`bdoc`,`application/x-bdoc`],[`bed`,`application/vnd.realvnc.bed`],[`bh2`,`application/vnd.fujitsu.oasysprs`],[`bin`,`application/octet-stream`],[`blb`,`application/x-blorb`],[`blorb`,`application/x-blorb`],[`bmi`,`application/vnd.bmi`],[`bmml`,`application/vnd.balsamiq.bmml+xml`],[`bmp`,`image/bmp`],[`book`,`application/vnd.framemaker`],[`box`,`application/vnd.previewsystems.box`],[`boz`,`application/x-bzip2`],[`bpk`,`application/octet-stream`],[`bpmn`,`application/octet-stream`],[`bsp`,`model/vnd.valve.source.compiled-map`],[`btif`,`image/prs.btif`],[`buffer`,`application/octet-stream`],[`bz`,`application/x-bzip`],[`bz2`,`application/x-bzip2`],[`c`,`text/x-c`],[`c4d`,`application/vnd.clonk.c4group`],[`c4f`,`application/vnd.clonk.c4group`],[`c4g`,`application/vnd.clonk.c4group`],[`c4p`,`application/vnd.clonk.c4group`],[`c4u`,`application/vnd.clonk.c4group`],[`c11amc`,`application/vnd.cluetrust.cartomobile-config`],[`c11amz`,`application/vnd.cluetrust.cartomobile-config-pkg`],[`cab`,`application/vnd.ms-cab-compressed`],[`caf`,`audio/x-caf`],[`cap`,`application/vnd.tcpdump.pcap`],[`car`,`application/vnd.curl.car`],[`cat`,`application/vnd.ms-pki.seccat`],[`cb7`,`application/x-cbr`],[`cba`,`application/x-cbr`],[`cbr`,`application/x-cbr`],[`cbt`,`application/x-cbr`],[`cbz`,`application/x-cbr`],[`cc`,`text/x-c`],[`cco`,`application/x-cocoa`],[`cct`,`application/x-director`],[`ccxml`,`application/ccxml+xml`],[`cdbcmsg`,`application/vnd.contact.cmsg`],[`cda`,`application/x-cdf`],[`cdf`,`application/x-netcdf`],[`cdfx`,`application/cdfx+xml`],[`cdkey`,`application/vnd.mediastation.cdkey`],[`cdmia`,`application/cdmi-capability`],[`cdmic`,`application/cdmi-container`],[`cdmid`,`application/cdmi-domain`],[`cdmio`,`application/cdmi-object`],[`cdmiq`,`application/cdmi-queue`],[`cdr`,`application/cdr`],[`cdx`,`chemical/x-cdx`],[`cdxml`,`application/vnd.chemdraw+xml`],[`cdy`,`application/vnd.cinderella`],[`cer`,`application/pkix-cert`],[`cfs`,`application/x-cfs-compressed`],[`cgm`,`image/cgm`],[`chat`,`application/x-chat`],[`chm`,`application/vnd.ms-htmlhelp`],[`chrt`,`application/vnd.kde.kchart`],[`cif`,`chemical/x-cif`],[`cii`,`application/vnd.anser-web-certificate-issue-initiation`],[`cil`,`application/vnd.ms-artgalry`],[`cjs`,`application/node`],[`cla`,`application/vnd.claymore`],[`class`,`application/octet-stream`],[`clkk`,`application/vnd.crick.clicker.keyboard`],[`clkp`,`application/vnd.crick.clicker.palette`],[`clkt`,`application/vnd.crick.clicker.template`],[`clkw`,`application/vnd.crick.clicker.wordbank`],[`clkx`,`application/vnd.crick.clicker`],[`clp`,`application/x-msclip`],[`cmc`,`application/vnd.cosmocaller`],[`cmdf`,`chemical/x-cmdf`],[`cml`,`chemical/x-cml`],[`cmp`,`application/vnd.yellowriver-custom-menu`],[`cmx`,`image/x-cmx`],[`cod`,`application/vnd.rim.cod`],[`coffee`,`text/coffeescript`],[`com`,`application/x-msdownload`],[`conf`,`text/plain`],[`cpio`,`application/x-cpio`],[`cpp`,`text/x-c`],[`cpt`,`application/mac-compactpro`],[`crd`,`application/x-mscardfile`],[`crl`,`application/pkix-crl`],[`crt`,`application/x-x509-ca-cert`],[`crx`,`application/x-chrome-extension`],[`cryptonote`,`application/vnd.rig.cryptonote`],[`csh`,`application/x-csh`],[`csl`,`application/vnd.citationstyles.style+xml`],[`csml`,`chemical/x-csml`],[`csp`,`application/vnd.commonspace`],[`csr`,`application/octet-stream`],[`css`,`text/css`],[`cst`,`application/x-director`],[`csv`,`text/csv`],[`cu`,`application/cu-seeme`],[`curl`,`text/vnd.curl`],[`cww`,`application/prs.cww`],[`cxt`,`application/x-director`],[`cxx`,`text/x-c`],[`dae`,`model/vnd.collada+xml`],[`daf`,`application/vnd.mobius.daf`],[`dart`,`application/vnd.dart`],[`dataless`,`application/vnd.fdsn.seed`],[`davmount`,`application/davmount+xml`],[`dbf`,`application/vnd.dbf`],[`dbk`,`application/docbook+xml`],[`dcr`,`application/x-director`],[`dcurl`,`text/vnd.curl.dcurl`],[`dd2`,`application/vnd.oma.dd2+xml`],[`ddd`,`application/vnd.fujixerox.ddd`],[`ddf`,`application/vnd.syncml.dmddf+xml`],[`dds`,`image/vnd.ms-dds`],[`deb`,`application/x-debian-package`],[`def`,`text/plain`],[`deploy`,`application/octet-stream`],[`der`,`application/x-x509-ca-cert`],[`dfac`,`application/vnd.dreamfactory`],[`dgc`,`application/x-dgc-compressed`],[`dic`,`text/x-c`],[`dir`,`application/x-director`],[`dis`,`application/vnd.mobius.dis`],[`disposition-notification`,`message/disposition-notification`],[`dist`,`application/octet-stream`],[`distz`,`application/octet-stream`],[`djv`,`image/vnd.djvu`],[`djvu`,`image/vnd.djvu`],[`dll`,`application/octet-stream`],[`dmg`,`application/x-apple-diskimage`],[`dmn`,`application/octet-stream`],[`dmp`,`application/vnd.tcpdump.pcap`],[`dms`,`application/octet-stream`],[`dna`,`application/vnd.dna`],[`doc`,`application/msword`],[`docm`,`application/vnd.ms-word.template.macroEnabled.12`],[`docx`,`application/vnd.openxmlformats-officedocument.wordprocessingml.document`],[`dot`,`application/msword`],[`dotm`,`application/vnd.ms-word.template.macroEnabled.12`],[`dotx`,`application/vnd.openxmlformats-officedocument.wordprocessingml.template`],[`dp`,`application/vnd.osgi.dp`],[`dpg`,`application/vnd.dpgraph`],[`dra`,`audio/vnd.dra`],[`drle`,`image/dicom-rle`],[`dsc`,`text/prs.lines.tag`],[`dssc`,`application/dssc+der`],[`dtb`,`application/x-dtbook+xml`],[`dtd`,`application/xml-dtd`],[`dts`,`audio/vnd.dts`],[`dtshd`,`audio/vnd.dts.hd`],[`dump`,`application/octet-stream`],[`dvb`,`video/vnd.dvb.file`],[`dvi`,`application/x-dvi`],[`dwd`,`application/atsc-dwd+xml`],[`dwf`,`model/vnd.dwf`],[`dwg`,`image/vnd.dwg`],[`dxf`,`image/vnd.dxf`],[`dxp`,`application/vnd.spotfire.dxp`],[`dxr`,`application/x-director`],[`ear`,`application/java-archive`],[`ecelp4800`,`audio/vnd.nuera.ecelp4800`],[`ecelp7470`,`audio/vnd.nuera.ecelp7470`],[`ecelp9600`,`audio/vnd.nuera.ecelp9600`],[`ecma`,`application/ecmascript`],[`edm`,`application/vnd.novadigm.edm`],[`edx`,`application/vnd.novadigm.edx`],[`efif`,`application/vnd.picsel`],[`ei6`,`application/vnd.pg.osasli`],[`elc`,`application/octet-stream`],[`emf`,`image/emf`],[`eml`,`message/rfc822`],[`emma`,`application/emma+xml`],[`emotionml`,`application/emotionml+xml`],[`emz`,`application/x-msmetafile`],[`eol`,`audio/vnd.digital-winds`],[`eot`,`application/vnd.ms-fontobject`],[`eps`,`application/postscript`],[`epub`,`application/epub+zip`],[`es`,`application/ecmascript`],[`es3`,`application/vnd.eszigno3+xml`],[`esa`,`application/vnd.osgi.subsystem`],[`esf`,`application/vnd.epson.esf`],[`et3`,`application/vnd.eszigno3+xml`],[`etx`,`text/x-setext`],[`eva`,`application/x-eva`],[`evy`,`application/x-envoy`],[`exe`,`application/octet-stream`],[`exi`,`application/exi`],[`exp`,`application/express`],[`exr`,`image/aces`],[`ext`,`application/vnd.novadigm.ext`],[`ez`,`application/andrew-inset`],[`ez2`,`application/vnd.ezpix-album`],[`ez3`,`application/vnd.ezpix-package`],[`f`,`text/x-fortran`],[`f4v`,`video/mp4`],[`f77`,`text/x-fortran`],[`f90`,`text/x-fortran`],[`fbs`,`image/vnd.fastbidsheet`],[`fcdt`,`application/vnd.adobe.formscentral.fcdt`],[`fcs`,`application/vnd.isac.fcs`],[`fdf`,`application/vnd.fdf`],[`fdt`,`application/fdt+xml`],[`fe_launch`,`application/vnd.denovo.fcselayout-link`],[`fg5`,`application/vnd.fujitsu.oasysgp`],[`fgd`,`application/x-director`],[`fh`,`image/x-freehand`],[`fh4`,`image/x-freehand`],[`fh5`,`image/x-freehand`],[`fh7`,`image/x-freehand`],[`fhc`,`image/x-freehand`],[`fig`,`application/x-xfig`],[`fits`,`image/fits`],[`flac`,`audio/x-flac`],[`fli`,`video/x-fli`],[`flo`,`application/vnd.micrografx.flo`],[`flv`,`video/x-flv`],[`flw`,`application/vnd.kde.kivio`],[`flx`,`text/vnd.fmi.flexstor`],[`fly`,`text/vnd.fly`],[`fm`,`application/vnd.framemaker`],[`fnc`,`application/vnd.frogans.fnc`],[`fo`,`application/vnd.software602.filler.form+xml`],[`for`,`text/x-fortran`],[`fpx`,`image/vnd.fpx`],[`frame`,`application/vnd.framemaker`],[`fsc`,`application/vnd.fsc.weblaunch`],[`fst`,`image/vnd.fst`],[`ftc`,`application/vnd.fluxtime.clip`],[`fti`,`application/vnd.anser-web-funds-transfer-initiation`],[`fvt`,`video/vnd.fvt`],[`fxp`,`application/vnd.adobe.fxp`],[`fxpl`,`application/vnd.adobe.fxp`],[`fzs`,`application/vnd.fuzzysheet`],[`g2w`,`application/vnd.geoplan`],[`g3`,`image/g3fax`],[`g3w`,`application/vnd.geospace`],[`gac`,`application/vnd.groove-account`],[`gam`,`application/x-tads`],[`gbr`,`application/rpki-ghostbusters`],[`gca`,`application/x-gca-compressed`],[`gdl`,`model/vnd.gdl`],[`gdoc`,`application/vnd.google-apps.document`],[`geo`,`application/vnd.dynageo`],[`geojson`,`application/geo+json`],[`gex`,`application/vnd.geometry-explorer`],[`ggb`,`application/vnd.geogebra.file`],[`ggt`,`application/vnd.geogebra.tool`],[`ghf`,`application/vnd.groove-help`],[`gif`,`image/gif`],[`gim`,`application/vnd.groove-identity-message`],[`glb`,`model/gltf-binary`],[`gltf`,`model/gltf+json`],[`gml`,`application/gml+xml`],[`gmx`,`application/vnd.gmx`],[`gnumeric`,`application/x-gnumeric`],[`gpg`,`application/gpg-keys`],[`gph`,`application/vnd.flographit`],[`gpx`,`application/gpx+xml`],[`gqf`,`application/vnd.grafeq`],[`gqs`,`application/vnd.grafeq`],[`gram`,`application/srgs`],[`gramps`,`application/x-gramps-xml`],[`gre`,`application/vnd.geometry-explorer`],[`grv`,`application/vnd.groove-injector`],[`grxml`,`application/srgs+xml`],[`gsf`,`application/x-font-ghostscript`],[`gsheet`,`application/vnd.google-apps.spreadsheet`],[`gslides`,`application/vnd.google-apps.presentation`],[`gtar`,`application/x-gtar`],[`gtm`,`application/vnd.groove-tool-message`],[`gtw`,`model/vnd.gtw`],[`gv`,`text/vnd.graphviz`],[`gxf`,`application/gxf`],[`gxt`,`application/vnd.geonext`],[`gz`,`application/gzip`],[`gzip`,`application/gzip`],[`h`,`text/x-c`],[`h261`,`video/h261`],[`h263`,`video/h263`],[`h264`,`video/h264`],[`hal`,`application/vnd.hal+xml`],[`hbci`,`application/vnd.hbci`],[`hbs`,`text/x-handlebars-template`],[`hdd`,`application/x-virtualbox-hdd`],[`hdf`,`application/x-hdf`],[`heic`,`image/heic`],[`heics`,`image/heic-sequence`],[`heif`,`image/heif`],[`heifs`,`image/heif-sequence`],[`hej2`,`image/hej2k`],[`held`,`application/atsc-held+xml`],[`hh`,`text/x-c`],[`hjson`,`application/hjson`],[`hlp`,`application/winhlp`],[`hpgl`,`application/vnd.hp-hpgl`],[`hpid`,`application/vnd.hp-hpid`],[`hps`,`application/vnd.hp-hps`],[`hqx`,`application/mac-binhex40`],[`hsj2`,`image/hsj2`],[`htc`,`text/x-component`],[`htke`,`application/vnd.kenameaapp`],[`htm`,`text/html`],[`html`,`text/html`],[`hvd`,`application/vnd.yamaha.hv-dic`],[`hvp`,`application/vnd.yamaha.hv-voice`],[`hvs`,`application/vnd.yamaha.hv-script`],[`i2g`,`application/vnd.intergeo`],[`icc`,`application/vnd.iccprofile`],[`ice`,`x-conference/x-cooltalk`],[`icm`,`application/vnd.iccprofile`],[`ico`,`image/x-icon`],[`ics`,`text/calendar`],[`ief`,`image/ief`],[`ifb`,`text/calendar`],[`ifm`,`application/vnd.shana.informed.formdata`],[`iges`,`model/iges`],[`igl`,`application/vnd.igloader`],[`igm`,`application/vnd.insors.igm`],[`igs`,`model/iges`],[`igx`,`application/vnd.micrografx.igx`],[`iif`,`application/vnd.shana.informed.interchange`],[`img`,`application/octet-stream`],[`imp`,`application/vnd.accpac.simply.imp`],[`ims`,`application/vnd.ms-ims`],[`in`,`text/plain`],[`ini`,`text/plain`],[`ink`,`application/inkml+xml`],[`inkml`,`application/inkml+xml`],[`install`,`application/x-install-instructions`],[`iota`,`application/vnd.astraea-software.iota`],[`ipfix`,`application/ipfix`],[`ipk`,`application/vnd.shana.informed.package`],[`irm`,`application/vnd.ibm.rights-management`],[`irp`,`application/vnd.irepository.package+xml`],[`iso`,`application/x-iso9660-image`],[`itp`,`application/vnd.shana.informed.formtemplate`],[`its`,`application/its+xml`],[`ivp`,`application/vnd.immervision-ivp`],[`ivu`,`application/vnd.immervision-ivu`],[`jad`,`text/vnd.sun.j2me.app-descriptor`],[`jade`,`text/jade`],[`jam`,`application/vnd.jam`],[`jar`,`application/java-archive`],[`jardiff`,`application/x-java-archive-diff`],[`java`,`text/x-java-source`],[`jhc`,`image/jphc`],[`jisp`,`application/vnd.jisp`],[`jls`,`image/jls`],[`jlt`,`application/vnd.hp-jlyt`],[`jng`,`image/x-jng`],[`jnlp`,`application/x-java-jnlp-file`],[`joda`,`application/vnd.joost.joda-archive`],[`jp2`,`image/jp2`],[`jpe`,`image/jpeg`],[`jpeg`,`image/jpeg`],[`jpf`,`image/jpx`],[`jpg`,`image/jpeg`],[`jpg2`,`image/jp2`],[`jpgm`,`video/jpm`],[`jpgv`,`video/jpeg`],[`jph`,`image/jph`],[`jpm`,`video/jpm`],[`jpx`,`image/jpx`],[`js`,`application/javascript`],[`json`,`application/json`],[`json5`,`application/json5`],[`jsonld`,`application/ld+json`],[`jsonl`,`application/jsonl`],[`jsonml`,`application/jsonml+json`],[`jsx`,`text/jsx`],[`jxr`,`image/jxr`],[`jxra`,`image/jxra`],[`jxrs`,`image/jxrs`],[`jxs`,`image/jxs`],[`jxsc`,`image/jxsc`],[`jxsi`,`image/jxsi`],[`jxss`,`image/jxss`],[`kar`,`audio/midi`],[`karbon`,`application/vnd.kde.karbon`],[`kdb`,`application/octet-stream`],[`kdbx`,`application/x-keepass2`],[`key`,`application/x-iwork-keynote-sffkey`],[`kfo`,`application/vnd.kde.kformula`],[`kia`,`application/vnd.kidspiration`],[`kml`,`application/vnd.google-earth.kml+xml`],[`kmz`,`application/vnd.google-earth.kmz`],[`kne`,`application/vnd.kinar`],[`knp`,`application/vnd.kinar`],[`kon`,`application/vnd.kde.kontour`],[`kpr`,`application/vnd.kde.kpresenter`],[`kpt`,`application/vnd.kde.kpresenter`],[`kpxx`,`application/vnd.ds-keypoint`],[`ksp`,`application/vnd.kde.kspread`],[`ktr`,`application/vnd.kahootz`],[`ktx`,`image/ktx`],[`ktx2`,`image/ktx2`],[`ktz`,`application/vnd.kahootz`],[`kwd`,`application/vnd.kde.kword`],[`kwt`,`application/vnd.kde.kword`],[`lasxml`,`application/vnd.las.las+xml`],[`latex`,`application/x-latex`],[`lbd`,`application/vnd.llamagraphics.life-balance.desktop`],[`lbe`,`application/vnd.llamagraphics.life-balance.exchange+xml`],[`les`,`application/vnd.hhe.lesson-player`],[`less`,`text/less`],[`lgr`,`application/lgr+xml`],[`lha`,`application/octet-stream`],[`link66`,`application/vnd.route66.link66+xml`],[`list`,`text/plain`],[`list3820`,`application/vnd.ibm.modcap`],[`listafp`,`application/vnd.ibm.modcap`],[`litcoffee`,`text/coffeescript`],[`lnk`,`application/x-ms-shortcut`],[`log`,`text/plain`],[`lostxml`,`application/lost+xml`],[`lrf`,`application/octet-stream`],[`lrm`,`application/vnd.ms-lrm`],[`ltf`,`application/vnd.frogans.ltf`],[`lua`,`text/x-lua`],[`luac`,`application/x-lua-bytecode`],[`lvp`,`audio/vnd.lucent.voice`],[`lwp`,`application/vnd.lotus-wordpro`],[`lzh`,`application/octet-stream`],[`m1v`,`video/mpeg`],[`m2a`,`audio/mpeg`],[`m2v`,`video/mpeg`],[`m3a`,`audio/mpeg`],[`m3u`,`text/plain`],[`m3u8`,`application/vnd.apple.mpegurl`],[`m4a`,`audio/x-m4a`],[`m4p`,`application/mp4`],[`m4s`,`video/iso.segment`],[`m4u`,`application/vnd.mpegurl`],[`m4v`,`video/x-m4v`],[`m13`,`application/x-msmediaview`],[`m14`,`application/x-msmediaview`],[`m21`,`application/mp21`],[`ma`,`application/mathematica`],[`mads`,`application/mads+xml`],[`maei`,`application/mmt-aei+xml`],[`mag`,`application/vnd.ecowin.chart`],[`maker`,`application/vnd.framemaker`],[`man`,`text/troff`],[`manifest`,`text/cache-manifest`],[`map`,`application/json`],[`mar`,`application/octet-stream`],[`markdown`,`text/markdown`],[`mathml`,`application/mathml+xml`],[`mb`,`application/mathematica`],[`mbk`,`application/vnd.mobius.mbk`],[`mbox`,`application/mbox`],[`mc1`,`application/vnd.medcalcdata`],[`mcd`,`application/vnd.mcd`],[`mcurl`,`text/vnd.curl.mcurl`],[`md`,`text/markdown`],[`mdb`,`application/x-msaccess`],[`mdi`,`image/vnd.ms-modi`],[`mdx`,`text/mdx`],[`me`,`text/troff`],[`mesh`,`model/mesh`],[`meta4`,`application/metalink4+xml`],[`metalink`,`application/metalink+xml`],[`mets`,`application/mets+xml`],[`mfm`,`application/vnd.mfmp`],[`mft`,`application/rpki-manifest`],[`mgp`,`application/vnd.osgeo.mapguide.package`],[`mgz`,`application/vnd.proteus.magazine`],[`mid`,`audio/midi`],[`midi`,`audio/midi`],[`mie`,`application/x-mie`],[`mif`,`application/vnd.mif`],[`mime`,`message/rfc822`],[`mj2`,`video/mj2`],[`mjp2`,`video/mj2`],[`mjs`,`application/javascript`],[`mk3d`,`video/x-matroska`],[`mka`,`audio/x-matroska`],[`mkd`,`text/x-markdown`],[`mks`,`video/x-matroska`],[`mkv`,`video/x-matroska`],[`mlp`,`application/vnd.dolby.mlp`],[`mmd`,`application/vnd.chipnuts.karaoke-mmd`],[`mmf`,`application/vnd.smaf`],[`mml`,`text/mathml`],[`mmr`,`image/vnd.fujixerox.edmics-mmr`],[`mng`,`video/x-mng`],[`mny`,`application/x-msmoney`],[`mobi`,`application/x-mobipocket-ebook`],[`mods`,`application/mods+xml`],[`mov`,`video/quicktime`],[`movie`,`video/x-sgi-movie`],[`mp2`,`audio/mpeg`],[`mp2a`,`audio/mpeg`],[`mp3`,`audio/mpeg`],[`mp4`,`video/mp4`],[`mp4a`,`audio/mp4`],[`mp4s`,`application/mp4`],[`mp4v`,`video/mp4`],[`mp21`,`application/mp21`],[`mpc`,`application/vnd.mophun.certificate`],[`mpd`,`application/dash+xml`],[`mpe`,`video/mpeg`],[`mpeg`,`video/mpeg`],[`mpg`,`video/mpeg`],[`mpg4`,`video/mp4`],[`mpga`,`audio/mpeg`],[`mpkg`,`application/vnd.apple.installer+xml`],[`mpm`,`application/vnd.blueice.multipass`],[`mpn`,`application/vnd.mophun.application`],[`mpp`,`application/vnd.ms-project`],[`mpt`,`application/vnd.ms-project`],[`mpy`,`application/vnd.ibm.minipay`],[`mqy`,`application/vnd.mobius.mqy`],[`mrc`,`application/marc`],[`mrcx`,`application/marcxml+xml`],[`ms`,`text/troff`],[`mscml`,`application/mediaservercontrol+xml`],[`mseed`,`application/vnd.fdsn.mseed`],[`mseq`,`application/vnd.mseq`],[`msf`,`application/vnd.epson.msf`],[`msg`,`application/vnd.ms-outlook`],[`msh`,`model/mesh`],[`msi`,`application/x-msdownload`],[`msl`,`application/vnd.mobius.msl`],[`msm`,`application/octet-stream`],[`msp`,`application/octet-stream`],[`msty`,`application/vnd.muvee.style`],[`mtl`,`model/mtl`],[`mts`,`model/vnd.mts`],[`mus`,`application/vnd.musician`],[`musd`,`application/mmt-usd+xml`],[`musicxml`,`application/vnd.recordare.musicxml+xml`],[`mvb`,`application/x-msmediaview`],[`mvt`,`application/vnd.mapbox-vector-tile`],[`mwf`,`application/vnd.mfer`],[`mxf`,`application/mxf`],[`mxl`,`application/vnd.recordare.musicxml`],[`mxmf`,`audio/mobile-xmf`],[`mxml`,`application/xv+xml`],[`mxs`,`application/vnd.triscape.mxs`],[`mxu`,`video/vnd.mpegurl`],[`n-gage`,`application/vnd.nokia.n-gage.symbian.install`],[`n3`,`text/n3`],[`nb`,`application/mathematica`],[`nbp`,`application/vnd.wolfram.player`],[`nc`,`application/x-netcdf`],[`ncx`,`application/x-dtbncx+xml`],[`nfo`,`text/x-nfo`],[`ngdat`,`application/vnd.nokia.n-gage.data`],[`nitf`,`application/vnd.nitf`],[`nlu`,`application/vnd.neurolanguage.nlu`],[`nml`,`application/vnd.enliven`],[`nnd`,`application/vnd.noblenet-directory`],[`nns`,`application/vnd.noblenet-sealer`],[`nnw`,`application/vnd.noblenet-web`],[`npx`,`image/vnd.net-fpx`],[`nq`,`application/n-quads`],[`nsc`,`application/x-conference`],[`nsf`,`application/vnd.lotus-notes`],[`nt`,`application/n-triples`],[`ntf`,`application/vnd.nitf`],[`numbers`,`application/x-iwork-numbers-sffnumbers`],[`nzb`,`application/x-nzb`],[`oa2`,`application/vnd.fujitsu.oasys2`],[`oa3`,`application/vnd.fujitsu.oasys3`],[`oas`,`application/vnd.fujitsu.oasys`],[`obd`,`application/x-msbinder`],[`obgx`,`application/vnd.openblox.game+xml`],[`obj`,`model/obj`],[`oda`,`application/oda`],[`odb`,`application/vnd.oasis.opendocument.database`],[`odc`,`application/vnd.oasis.opendocument.chart`],[`odf`,`application/vnd.oasis.opendocument.formula`],[`odft`,`application/vnd.oasis.opendocument.formula-template`],[`odg`,`application/vnd.oasis.opendocument.graphics`],[`odi`,`application/vnd.oasis.opendocument.image`],[`odm`,`application/vnd.oasis.opendocument.text-master`],[`odp`,`application/vnd.oasis.opendocument.presentation`],[`ods`,`application/vnd.oasis.opendocument.spreadsheet`],[`odt`,`application/vnd.oasis.opendocument.text`],[`oga`,`audio/ogg`],[`ogex`,`model/vnd.opengex`],[`ogg`,`audio/ogg`],[`ogv`,`video/ogg`],[`ogx`,`application/ogg`],[`omdoc`,`application/omdoc+xml`],[`onepkg`,`application/onenote`],[`onetmp`,`application/onenote`],[`onetoc`,`application/onenote`],[`onetoc2`,`application/onenote`],[`opf`,`application/oebps-package+xml`],[`opml`,`text/x-opml`],[`oprc`,`application/vnd.palm`],[`opus`,`audio/ogg`],[`org`,`text/x-org`],[`osf`,`application/vnd.yamaha.openscoreformat`],[`osfpvg`,`application/vnd.yamaha.openscoreformat.osfpvg+xml`],[`osm`,`application/vnd.openstreetmap.data+xml`],[`otc`,`application/vnd.oasis.opendocument.chart-template`],[`otf`,`font/otf`],[`otg`,`application/vnd.oasis.opendocument.graphics-template`],[`oth`,`application/vnd.oasis.opendocument.text-web`],[`oti`,`application/vnd.oasis.opendocument.image-template`],[`otp`,`application/vnd.oasis.opendocument.presentation-template`],[`ots`,`application/vnd.oasis.opendocument.spreadsheet-template`],[`ott`,`application/vnd.oasis.opendocument.text-template`],[`ova`,`application/x-virtualbox-ova`],[`ovf`,`application/x-virtualbox-ovf`],[`owl`,`application/rdf+xml`],[`oxps`,`application/oxps`],[`oxt`,`application/vnd.openofficeorg.extension`],[`p`,`text/x-pascal`],[`p7a`,`application/x-pkcs7-signature`],[`p7b`,`application/x-pkcs7-certificates`],[`p7c`,`application/pkcs7-mime`],[`p7m`,`application/pkcs7-mime`],[`p7r`,`application/x-pkcs7-certreqresp`],[`p7s`,`application/pkcs7-signature`],[`p8`,`application/pkcs8`],[`p10`,`application/x-pkcs10`],[`p12`,`application/x-pkcs12`],[`pac`,`application/x-ns-proxy-autoconfig`],[`pages`,`application/x-iwork-pages-sffpages`],[`pas`,`text/x-pascal`],[`paw`,`application/vnd.pawaafile`],[`pbd`,`application/vnd.powerbuilder6`],[`pbm`,`image/x-portable-bitmap`],[`pcap`,`application/vnd.tcpdump.pcap`],[`pcf`,`application/x-font-pcf`],[`pcl`,`application/vnd.hp-pcl`],[`pclxl`,`application/vnd.hp-pclxl`],[`pct`,`image/x-pict`],[`pcurl`,`application/vnd.curl.pcurl`],[`pcx`,`image/x-pcx`],[`pdb`,`application/x-pilot`],[`pde`,`text/x-processing`],[`pdf`,`application/pdf`],[`pem`,`application/x-x509-user-cert`],[`pfa`,`application/x-font-type1`],[`pfb`,`application/x-font-type1`],[`pfm`,`application/x-font-type1`],[`pfr`,`application/font-tdpfr`],[`pfx`,`application/x-pkcs12`],[`pgm`,`image/x-portable-graymap`],[`pgn`,`application/x-chess-pgn`],[`pgp`,`application/pgp`],[`php`,`application/x-httpd-php`],[`php3`,`application/x-httpd-php`],[`php4`,`application/x-httpd-php`],[`phps`,`application/x-httpd-php-source`],[`phtml`,`application/x-httpd-php`],[`pic`,`image/x-pict`],[`pkg`,`application/octet-stream`],[`pki`,`application/pkixcmp`],[`pkipath`,`application/pkix-pkipath`],[`pkpass`,`application/vnd.apple.pkpass`],[`pl`,`application/x-perl`],[`plb`,`application/vnd.3gpp.pic-bw-large`],[`plc`,`application/vnd.mobius.plc`],[`plf`,`application/vnd.pocketlearn`],[`pls`,`application/pls+xml`],[`pm`,`application/x-perl`],[`pml`,`application/vnd.ctc-posml`],[`png`,`image/png`],[`pnm`,`image/x-portable-anymap`],[`portpkg`,`application/vnd.macports.portpkg`],[`pot`,`application/vnd.ms-powerpoint`],[`potm`,`application/vnd.ms-powerpoint.presentation.macroEnabled.12`],[`potx`,`application/vnd.openxmlformats-officedocument.presentationml.template`],[`ppa`,`application/vnd.ms-powerpoint`],[`ppam`,`application/vnd.ms-powerpoint.addin.macroEnabled.12`],[`ppd`,`application/vnd.cups-ppd`],[`ppm`,`image/x-portable-pixmap`],[`pps`,`application/vnd.ms-powerpoint`],[`ppsm`,`application/vnd.ms-powerpoint.slideshow.macroEnabled.12`],[`ppsx`,`application/vnd.openxmlformats-officedocument.presentationml.slideshow`],[`ppt`,`application/powerpoint`],[`pptm`,`application/vnd.ms-powerpoint.presentation.macroEnabled.12`],[`pptx`,`application/vnd.openxmlformats-officedocument.presentationml.presentation`],[`pqa`,`application/vnd.palm`],[`prc`,`application/x-pilot`],[`pre`,`application/vnd.lotus-freelance`],[`prf`,`application/pics-rules`],[`provx`,`application/provenance+xml`],[`ps`,`application/postscript`],[`psb`,`application/vnd.3gpp.pic-bw-small`],[`psd`,`application/x-photoshop`],[`psf`,`application/x-font-linux-psf`],[`pskcxml`,`application/pskc+xml`],[`pti`,`image/prs.pti`],[`ptid`,`application/vnd.pvi.ptid1`],[`pub`,`application/x-mspublisher`],[`pvb`,`application/vnd.3gpp.pic-bw-var`],[`pwn`,`application/vnd.3m.post-it-notes`],[`pya`,`audio/vnd.ms-playready.media.pya`],[`pyv`,`video/vnd.ms-playready.media.pyv`],[`qam`,`application/vnd.epson.quickanime`],[`qbo`,`application/vnd.intu.qbo`],[`qfx`,`application/vnd.intu.qfx`],[`qps`,`application/vnd.publishare-delta-tree`],[`qt`,`video/quicktime`],[`qwd`,`application/vnd.quark.quarkxpress`],[`qwt`,`application/vnd.quark.quarkxpress`],[`qxb`,`application/vnd.quark.quarkxpress`],[`qxd`,`application/vnd.quark.quarkxpress`],[`qxl`,`application/vnd.quark.quarkxpress`],[`qxt`,`application/vnd.quark.quarkxpress`],[`ra`,`audio/x-realaudio`],[`ram`,`audio/x-pn-realaudio`],[`raml`,`application/raml+yaml`],[`rapd`,`application/route-apd+xml`],[`rar`,`application/x-rar`],[`ras`,`image/x-cmu-raster`],[`rcprofile`,`application/vnd.ipunplugged.rcprofile`],[`rdf`,`application/rdf+xml`],[`rdz`,`application/vnd.data-vision.rdz`],[`relo`,`application/p2p-overlay+xml`],[`rep`,`application/vnd.businessobjects`],[`res`,`application/x-dtbresource+xml`],[`rgb`,`image/x-rgb`],[`rif`,`application/reginfo+xml`],[`rip`,`audio/vnd.rip`],[`ris`,`application/x-research-info-systems`],[`rl`,`application/resource-lists+xml`],[`rlc`,`image/vnd.fujixerox.edmics-rlc`],[`rld`,`application/resource-lists-diff+xml`],[`rm`,`audio/x-pn-realaudio`],[`rmi`,`audio/midi`],[`rmp`,`audio/x-pn-realaudio-plugin`],[`rms`,`application/vnd.jcp.javame.midlet-rms`],[`rmvb`,`application/vnd.rn-realmedia-vbr`],[`rnc`,`application/relax-ng-compact-syntax`],[`rng`,`application/xml`],[`roa`,`application/rpki-roa`],[`roff`,`text/troff`],[`rp9`,`application/vnd.cloanto.rp9`],[`rpm`,`audio/x-pn-realaudio-plugin`],[`rpss`,`application/vnd.nokia.radio-presets`],[`rpst`,`application/vnd.nokia.radio-preset`],[`rq`,`application/sparql-query`],[`rs`,`application/rls-services+xml`],[`rsa`,`application/x-pkcs7`],[`rsat`,`application/atsc-rsat+xml`],[`rsd`,`application/rsd+xml`],[`rsheet`,`application/urc-ressheet+xml`],[`rss`,`application/rss+xml`],[`rtf`,`text/rtf`],[`rtx`,`text/richtext`],[`run`,`application/x-makeself`],[`rusd`,`application/route-usd+xml`],[`rv`,`video/vnd.rn-realvideo`],[`s`,`text/x-asm`],[`s3m`,`audio/s3m`],[`saf`,`application/vnd.yamaha.smaf-audio`],[`sass`,`text/x-sass`],[`sbml`,`application/sbml+xml`],[`sc`,`application/vnd.ibm.secure-container`],[`scd`,`application/x-msschedule`],[`scm`,`application/vnd.lotus-screencam`],[`scq`,`application/scvp-cv-request`],[`scs`,`application/scvp-cv-response`],[`scss`,`text/x-scss`],[`scurl`,`text/vnd.curl.scurl`],[`sda`,`application/vnd.stardivision.draw`],[`sdc`,`application/vnd.stardivision.calc`],[`sdd`,`application/vnd.stardivision.impress`],[`sdkd`,`application/vnd.solent.sdkm+xml`],[`sdkm`,`application/vnd.solent.sdkm+xml`],[`sdp`,`application/sdp`],[`sdw`,`application/vnd.stardivision.writer`],[`sea`,`application/octet-stream`],[`see`,`application/vnd.seemail`],[`seed`,`application/vnd.fdsn.seed`],[`sema`,`application/vnd.sema`],[`semd`,`application/vnd.semd`],[`semf`,`application/vnd.semf`],[`senmlx`,`application/senml+xml`],[`sensmlx`,`application/sensml+xml`],[`ser`,`application/java-serialized-object`],[`setpay`,`application/set-payment-initiation`],[`setreg`,`application/set-registration-initiation`],[`sfd-hdstx`,`application/vnd.hydrostatix.sof-data`],[`sfs`,`application/vnd.spotfire.sfs`],[`sfv`,`text/x-sfv`],[`sgi`,`image/sgi`],[`sgl`,`application/vnd.stardivision.writer-global`],[`sgm`,`text/sgml`],[`sgml`,`text/sgml`],[`sh`,`application/x-sh`],[`shar`,`application/x-shar`],[`shex`,`text/shex`],[`shf`,`application/shf+xml`],[`shtml`,`text/html`],[`sid`,`image/x-mrsid-image`],[`sieve`,`application/sieve`],[`sig`,`application/pgp-signature`],[`sil`,`audio/silk`],[`silo`,`model/mesh`],[`sis`,`application/vnd.symbian.install`],[`sisx`,`application/vnd.symbian.install`],[`sit`,`application/x-stuffit`],[`sitx`,`application/x-stuffitx`],[`siv`,`application/sieve`],[`skd`,`application/vnd.koan`],[`skm`,`application/vnd.koan`],[`skp`,`application/vnd.koan`],[`skt`,`application/vnd.koan`],[`sldm`,`application/vnd.ms-powerpoint.slide.macroenabled.12`],[`sldx`,`application/vnd.openxmlformats-officedocument.presentationml.slide`],[`slim`,`text/slim`],[`slm`,`text/slim`],[`sls`,`application/route-s-tsid+xml`],[`slt`,`application/vnd.epson.salt`],[`sm`,`application/vnd.stepmania.stepchart`],[`smf`,`application/vnd.stardivision.math`],[`smi`,`application/smil`],[`smil`,`application/smil`],[`smv`,`video/x-smv`],[`smzip`,`application/vnd.stepmania.package`],[`snd`,`audio/basic`],[`snf`,`application/x-font-snf`],[`so`,`application/octet-stream`],[`spc`,`application/x-pkcs7-certificates`],[`spdx`,`text/spdx`],[`spf`,`application/vnd.yamaha.smaf-phrase`],[`spl`,`application/x-futuresplash`],[`spot`,`text/vnd.in3d.spot`],[`spp`,`application/scvp-vp-response`],[`spq`,`application/scvp-vp-request`],[`spx`,`audio/ogg`],[`sql`,`application/x-sql`],[`src`,`application/x-wais-source`],[`srt`,`application/x-subrip`],[`sru`,`application/sru+xml`],[`srx`,`application/sparql-results+xml`],[`ssdl`,`application/ssdl+xml`],[`sse`,`application/vnd.kodak-descriptor`],[`ssf`,`application/vnd.epson.ssf`],[`ssml`,`application/ssml+xml`],[`sst`,`application/octet-stream`],[`st`,`application/vnd.sailingtracker.track`],[`stc`,`application/vnd.sun.xml.calc.template`],[`std`,`application/vnd.sun.xml.draw.template`],[`stf`,`application/vnd.wt.stf`],[`sti`,`application/vnd.sun.xml.impress.template`],[`stk`,`application/hyperstudio`],[`stl`,`model/stl`],[`stpx`,`model/step+xml`],[`stpxz`,`model/step-xml+zip`],[`stpz`,`model/step+zip`],[`str`,`application/vnd.pg.format`],[`stw`,`application/vnd.sun.xml.writer.template`],[`styl`,`text/stylus`],[`stylus`,`text/stylus`],[`sub`,`text/vnd.dvb.subtitle`],[`sus`,`application/vnd.sus-calendar`],[`susp`,`application/vnd.sus-calendar`],[`sv4cpio`,`application/x-sv4cpio`],[`sv4crc`,`application/x-sv4crc`],[`svc`,`application/vnd.dvb.service`],[`svd`,`application/vnd.svd`],[`svg`,`image/svg+xml`],[`svgz`,`image/svg+xml`],[`swa`,`application/x-director`],[`swf`,`application/x-shockwave-flash`],[`swi`,`application/vnd.aristanetworks.swi`],[`swidtag`,`application/swid+xml`],[`sxc`,`application/vnd.sun.xml.calc`],[`sxd`,`application/vnd.sun.xml.draw`],[`sxg`,`application/vnd.sun.xml.writer.global`],[`sxi`,`application/vnd.sun.xml.impress`],[`sxm`,`application/vnd.sun.xml.math`],[`sxw`,`application/vnd.sun.xml.writer`],[`t`,`text/troff`],[`t3`,`application/x-t3vm-image`],[`t38`,`image/t38`],[`taglet`,`application/vnd.mynfc`],[`tao`,`application/vnd.tao.intent-module-archive`],[`tap`,`image/vnd.tencent.tap`],[`tar`,`application/x-tar`],[`tcap`,`application/vnd.3gpp2.tcap`],[`tcl`,`application/x-tcl`],[`td`,`application/urc-targetdesc+xml`],[`teacher`,`application/vnd.smart.teacher`],[`tei`,`application/tei+xml`],[`teicorpus`,`application/tei+xml`],[`tex`,`application/x-tex`],[`texi`,`application/x-texinfo`],[`texinfo`,`application/x-texinfo`],[`text`,`text/plain`],[`tfi`,`application/thraud+xml`],[`tfm`,`application/x-tex-tfm`],[`tfx`,`image/tiff-fx`],[`tga`,`image/x-tga`],[`tgz`,`application/x-tar`],[`thmx`,`application/vnd.ms-officetheme`],[`tif`,`image/tiff`],[`tiff`,`image/tiff`],[`tk`,`application/x-tcl`],[`tmo`,`application/vnd.tmobile-livetv`],[`toml`,`application/toml`],[`torrent`,`application/x-bittorrent`],[`tpl`,`application/vnd.groove-tool-template`],[`tpt`,`application/vnd.trid.tpt`],[`tr`,`text/troff`],[`tra`,`application/vnd.trueapp`],[`trig`,`application/trig`],[`trm`,`application/x-msterminal`],[`ts`,`video/mp2t`],[`tsd`,`application/timestamped-data`],[`tsv`,`text/tab-separated-values`],[`ttc`,`font/collection`],[`ttf`,`font/ttf`],[`ttl`,`text/turtle`],[`ttml`,`application/ttml+xml`],[`twd`,`application/vnd.simtech-mindmapper`],[`twds`,`application/vnd.simtech-mindmapper`],[`txd`,`application/vnd.genomatix.tuxedo`],[`txf`,`application/vnd.mobius.txf`],[`txt`,`text/plain`],[`u8dsn`,`message/global-delivery-status`],[`u8hdr`,`message/global-headers`],[`u8mdn`,`message/global-disposition-notification`],[`u8msg`,`message/global`],[`u32`,`application/x-authorware-bin`],[`ubj`,`application/ubjson`],[`udeb`,`application/x-debian-package`],[`ufd`,`application/vnd.ufdl`],[`ufdl`,`application/vnd.ufdl`],[`ulx`,`application/x-glulx`],[`umj`,`application/vnd.umajin`],[`unityweb`,`application/vnd.unity`],[`uoml`,`application/vnd.uoml+xml`],[`uri`,`text/uri-list`],[`uris`,`text/uri-list`],[`urls`,`text/uri-list`],[`usdz`,`model/vnd.usdz+zip`],[`ustar`,`application/x-ustar`],[`utz`,`application/vnd.uiq.theme`],[`uu`,`text/x-uuencode`],[`uva`,`audio/vnd.dece.audio`],[`uvd`,`application/vnd.dece.data`],[`uvf`,`application/vnd.dece.data`],[`uvg`,`image/vnd.dece.graphic`],[`uvh`,`video/vnd.dece.hd`],[`uvi`,`image/vnd.dece.graphic`],[`uvm`,`video/vnd.dece.mobile`],[`uvp`,`video/vnd.dece.pd`],[`uvs`,`video/vnd.dece.sd`],[`uvt`,`application/vnd.dece.ttml+xml`],[`uvu`,`video/vnd.uvvu.mp4`],[`uvv`,`video/vnd.dece.video`],[`uvva`,`audio/vnd.dece.audio`],[`uvvd`,`application/vnd.dece.data`],[`uvvf`,`application/vnd.dece.data`],[`uvvg`,`image/vnd.dece.graphic`],[`uvvh`,`video/vnd.dece.hd`],[`uvvi`,`image/vnd.dece.graphic`],[`uvvm`,`video/vnd.dece.mobile`],[`uvvp`,`video/vnd.dece.pd`],[`uvvs`,`video/vnd.dece.sd`],[`uvvt`,`application/vnd.dece.ttml+xml`],[`uvvu`,`video/vnd.uvvu.mp4`],[`uvvv`,`video/vnd.dece.video`],[`uvvx`,`application/vnd.dece.unspecified`],[`uvvz`,`application/vnd.dece.zip`],[`uvx`,`application/vnd.dece.unspecified`],[`uvz`,`application/vnd.dece.zip`],[`vbox`,`application/x-virtualbox-vbox`],[`vbox-extpack`,`application/x-virtualbox-vbox-extpack`],[`vcard`,`text/vcard`],[`vcd`,`application/x-cdlink`],[`vcf`,`text/x-vcard`],[`vcg`,`application/vnd.groove-vcard`],[`vcs`,`text/x-vcalendar`],[`vcx`,`application/vnd.vcx`],[`vdi`,`application/x-virtualbox-vdi`],[`vds`,`model/vnd.sap.vds`],[`vhd`,`application/x-virtualbox-vhd`],[`vis`,`application/vnd.visionary`],[`viv`,`video/vnd.vivo`],[`vlc`,`application/videolan`],[`vmdk`,`application/x-virtualbox-vmdk`],[`vob`,`video/x-ms-vob`],[`vor`,`application/vnd.stardivision.writer`],[`vox`,`application/x-authorware-bin`],[`vrml`,`model/vrml`],[`vsd`,`application/vnd.visio`],[`vsf`,`application/vnd.vsf`],[`vss`,`application/vnd.visio`],[`vst`,`application/vnd.visio`],[`vsw`,`application/vnd.visio`],[`vtf`,`image/vnd.valve.source.texture`],[`vtt`,`text/vtt`],[`vtu`,`model/vnd.vtu`],[`vxml`,`application/voicexml+xml`],[`w3d`,`application/x-director`],[`wad`,`application/x-doom`],[`wadl`,`application/vnd.sun.wadl+xml`],[`war`,`application/java-archive`],[`wasm`,`application/wasm`],[`wav`,`audio/x-wav`],[`wax`,`audio/x-ms-wax`],[`wbmp`,`image/vnd.wap.wbmp`],[`wbs`,`application/vnd.criticaltools.wbs+xml`],[`wbxml`,`application/wbxml`],[`wcm`,`application/vnd.ms-works`],[`wdb`,`application/vnd.ms-works`],[`wdp`,`image/vnd.ms-photo`],[`weba`,`audio/webm`],[`webapp`,`application/x-web-app-manifest+json`],[`webm`,`video/webm`],[`webmanifest`,`application/manifest+json`],[`webp`,`image/webp`],[`wg`,`application/vnd.pmi.widget`],[`wgt`,`application/widget`],[`wks`,`application/vnd.ms-works`],[`wm`,`video/x-ms-wm`],[`wma`,`audio/x-ms-wma`],[`wmd`,`application/x-ms-wmd`],[`wmf`,`image/wmf`],[`wml`,`text/vnd.wap.wml`],[`wmlc`,`application/wmlc`],[`wmls`,`text/vnd.wap.wmlscript`],[`wmlsc`,`application/vnd.wap.wmlscriptc`],[`wmv`,`video/x-ms-wmv`],[`wmx`,`video/x-ms-wmx`],[`wmz`,`application/x-msmetafile`],[`woff`,`font/woff`],[`woff2`,`font/woff2`],[`word`,`application/msword`],[`wpd`,`application/vnd.wordperfect`],[`wpl`,`application/vnd.ms-wpl`],[`wps`,`application/vnd.ms-works`],[`wqd`,`application/vnd.wqd`],[`wri`,`application/x-mswrite`],[`wrl`,`model/vrml`],[`wsc`,`message/vnd.wfa.wsc`],[`wsdl`,`application/wsdl+xml`],[`wspolicy`,`application/wspolicy+xml`],[`wtb`,`application/vnd.webturbo`],[`wvx`,`video/x-ms-wvx`],[`x3d`,`model/x3d+xml`],[`x3db`,`model/x3d+fastinfoset`],[`x3dbz`,`model/x3d+binary`],[`x3dv`,`model/x3d-vrml`],[`x3dvz`,`model/x3d+vrml`],[`x3dz`,`model/x3d+xml`],[`x32`,`application/x-authorware-bin`],[`x_b`,`model/vnd.parasolid.transmit.binary`],[`x_t`,`model/vnd.parasolid.transmit.text`],[`xaml`,`application/xaml+xml`],[`xap`,`application/x-silverlight-app`],[`xar`,`application/vnd.xara`],[`xav`,`application/xcap-att+xml`],[`xbap`,`application/x-ms-xbap`],[`xbd`,`application/vnd.fujixerox.docuworks.binder`],[`xbm`,`image/x-xbitmap`],[`xca`,`application/xcap-caps+xml`],[`xcs`,`application/calendar+xml`],[`xdf`,`application/xcap-diff+xml`],[`xdm`,`application/vnd.syncml.dm+xml`],[`xdp`,`application/vnd.adobe.xdp+xml`],[`xdssc`,`application/dssc+xml`],[`xdw`,`application/vnd.fujixerox.docuworks`],[`xel`,`application/xcap-el+xml`],[`xenc`,`application/xenc+xml`],[`xer`,`application/patch-ops-error+xml`],[`xfdf`,`application/vnd.adobe.xfdf`],[`xfdl`,`application/vnd.xfdl`],[`xht`,`application/xhtml+xml`],[`xhtml`,`application/xhtml+xml`],[`xhvml`,`application/xv+xml`],[`xif`,`image/vnd.xiff`],[`xl`,`application/excel`],[`xla`,`application/vnd.ms-excel`],[`xlam`,`application/vnd.ms-excel.addin.macroEnabled.12`],[`xlc`,`application/vnd.ms-excel`],[`xlf`,`application/xliff+xml`],[`xlm`,`application/vnd.ms-excel`],[`xls`,`application/vnd.ms-excel`],[`xlsb`,`application/vnd.ms-excel.sheet.binary.macroEnabled.12`],[`xlsm`,`application/vnd.ms-excel.sheet.macroEnabled.12`],[`xlsx`,`application/vnd.openxmlformats-officedocument.spreadsheetml.sheet`],[`xlt`,`application/vnd.ms-excel`],[`xltm`,`application/vnd.ms-excel.template.macroEnabled.12`],[`xltx`,`application/vnd.openxmlformats-officedocument.spreadsheetml.template`],[`xlw`,`application/vnd.ms-excel`],[`xm`,`audio/xm`],[`xml`,`application/xml`],[`xns`,`application/xcap-ns+xml`],[`xo`,`application/vnd.olpc-sugar`],[`xop`,`application/xop+xml`],[`xpi`,`application/x-xpinstall`],[`xpl`,`application/xproc+xml`],[`xpm`,`image/x-xpixmap`],[`xpr`,`application/vnd.is-xpr`],[`xps`,`application/vnd.ms-xpsdocument`],[`xpw`,`application/vnd.intercon.formnet`],[`xpx`,`application/vnd.intercon.formnet`],[`xsd`,`application/xml`],[`xsl`,`application/xml`],[`xslt`,`application/xslt+xml`],[`xsm`,`application/vnd.syncml+xml`],[`xspf`,`application/xspf+xml`],[`xul`,`application/vnd.mozilla.xul+xml`],[`xvm`,`application/xv+xml`],[`xvml`,`application/xv+xml`],[`xwd`,`image/x-xwindowdump`],[`xyz`,`chemical/x-xyz`],[`xz`,`application/x-xz`],[`yaml`,`text/yaml`],[`yang`,`application/yang`],[`yin`,`application/yin+xml`],[`yml`,`text/yaml`],[`ymp`,`text/x-suse-ymp`],[`z`,`application/x-compress`],[`z1`,`application/x-zmachine`],[`z2`,`application/x-zmachine`],[`z3`,`application/x-zmachine`],[`z4`,`application/x-zmachine`],[`z5`,`application/x-zmachine`],[`z6`,`application/x-zmachine`],[`z7`,`application/x-zmachine`],[`z8`,`application/x-zmachine`],[`zaz`,`application/vnd.zzazz.deck+xml`],[`zip`,`application/zip`],[`zir`,`application/vnd.zul`],[`zirz`,`application/vnd.zul`],[`zmm`,`application/vnd.handheld-entertainment+xml`],[`zsh`,`text/x-scriptzsh`]]);function d(e,t,n){let r=f(e),{webkitRelativePath:i}=e,a=typeof t==`string`?t:typeof i==`string`&&i.length>0?i:`./${e.name}`;return typeof r.path!=`string`&&p(r,`path`,a),n!==void 0&&Object.defineProperty(r,"handle",{value:n,writable:!1,configurable:!1,enumerable:!0}),p(r,`relativePath`,a),r}function f(e){let{name:t}=e;if(t&&t.lastIndexOf(`.`)!==-1&&!e.type){let n=t.split(`.`).pop().toLowerCase(),r=u.get(n);r&&Object.defineProperty(e,"type",{value:r,writable:!1,configurable:!1,enumerable:!0})}return e}function p(e,t,n){Object.defineProperty(e,t,{value:n,writable:!1,configurable:!1,enumerable:!0})}var m=[`.DS_Store`,`Thumbs.db`];function h(e){return s(this,void 0,void 0,function*(){return v(e)&&g(e.dataTransfer)?x(e.dataTransfer,e.type):_(e)?y(e):Array.isArray(e)&&e.every(e=>`getFile`in e&&typeof e.getFile==`function`)?b(e):[]})}function g(e){return v(e)}function _(e){return v(e)&&v(e.target)}function v(e){return typeof e==`object`&&!!e}function y(e){return C(e.target.files).map(e=>d(e))}function b(e){return s(this,void 0,void 0,function*(){return(yield Promise.all(e.map(e=>e.getFile()))).map(e=>d(e))})}function x(e,t){return s(this,void 0,void 0,function*(){if(e.items){let n=C(e.items).filter(e=>e.kind===`file`);return t===`drop`?S(T(yield Promise.all(n.map(w)))):n}return S(C(e.files).map(e=>d(e)))})}function S(e){return e.filter(e=>m.indexOf(e.name)===-1)}function C(e){if(e===null)return[];let t=[];for(let n=0;n<e.length;n++){let r=e[n];t.push(r)}return t}function w(e){if(typeof e.webkitGetAsEntry!=`function`)return E(e);let t=e.webkitGetAsEntry();return t&&t.isDirectory?D(t):E(e,t)}function T(e){return e.reduce((e,t)=>[...e,...Array.isArray(t)?T(t):[t]],[])}function E(e,t){return s(this,void 0,void 0,function*(){if(globalThis.isSecureContext&&typeof e.getAsFileSystemHandle==`function`){let t=yield e.getAsFileSystemHandle();if(t===null)throw Error(`${e} is not a File`);if(t!==void 0){let e=yield t.getFile();return e.handle=t,d(e)}}let n=e.getAsFile();if(!n)throw Error(`${e} is not a File`);return d(n,t?.fullPath??void 0)})}function ee(e){return s(this,void 0,void 0,function*(){return e.isDirectory?D(e):O(e)})}function D(e){let t=e.createReader();return new Promise((e,n)=>{let r=[];function i(){t.readEntries(t=>s(this,void 0,void 0,function*(){if(t.length){let e=Promise.all(t.map(ee));r.push(e),i()}else try{e(yield Promise.all(r))}catch(e){n(e)}}),e=>{n(e)})}i()})}function O(e){return s(this,void 0,void 0,function*(){return new Promise((t,n)=>{e.file(n=>{t(d(n,e.fullPath))},e=>{n(e)})})})}var k=e((e=>{e.__esModule=!0,e.default=function(e,t){if(e&&t){var n=Array.isArray(t)?t:t.split(`,`);if(n.length===0)return!0;var r=e.name||``,i=(e.type||``).toLowerCase(),a=i.replace(/\/.*$/,``);return n.some(function(e){var t=e.trim().toLowerCase();return t.charAt(0)===`.`?r.toLowerCase().endsWith(t):t.endsWith(`/*`)?a===t.replace(/\/.*$/,``):i===t})}return!0}})),A=t(n()),j=r(),M=t(c()),N=t(k());function P(e){return F(e)||ne(e)||V(e)||te()}function te(){throw TypeError(`Invalid attempt to spread non-iterable instance.
|
|
2
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function ne(e){if(typeof Symbol<`u`&&e[Symbol.iterator]!=null||e[`@@iterator`]!=null)return Array.from(e)}function F(e){if(Array.isArray(e))return H(e)}function I(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function L(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]==null?{}:arguments[t];t%2?I(Object(n),!0).forEach(function(t){R(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):I(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function R(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function z(e,t){return U(e)||re(e,t)||V(e,t)||B()}function B(){throw TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
3
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function V(e,t){if(e){if(typeof e==`string`)return H(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`)return Array.from(e);if(n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return H(e,t)}}function H(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function re(e,t){var n=e==null?null:typeof Symbol<`u`&&e[Symbol.iterator]||e[`@@iterator`];if(n!=null){var r=[],i=!0,a=!1,o,s;try{for(n=n.call(e);!(i=(o=n.next()).done)&&(r.push(o.value),!(t&&r.length===t));i=!0);}catch(e){a=!0,s=e}finally{try{!i&&n.return!=null&&n.return()}finally{if(a)throw s}}return r}}function U(e){if(Array.isArray(e))return e}var W=typeof N.default==`function`?N.default:N.default.default,G=`file-invalid-type`,ie=`file-too-large`,ae=`file-too-small`,oe=`too-many-files`,se=function(){var e=(arguments.length>0&&arguments[0]!==void 0?arguments[0]:``).split(`,`);return{code:G,message:`File type must be ${e.length>1?`one of ${e.join(`, `)}`:e[0]}`}},K=function(e){return{code:ie,message:`File is larger than ${e} ${e===1?`byte`:`bytes`}`}},q=function(e){return{code:ae,message:`File is smaller than ${e} ${e===1?`byte`:`bytes`}`}},ce={code:oe,message:`Too many files`};function J(e){return e.type===``&&typeof e.getAsFile==`function`}function le(e,t){var n=e.type===`application/x-moz-file`||W(e,t)||J(e);return[n,n?null:se(t)]}function ue(e,t,n){if(Y(e.size)){if(Y(t)&&Y(n)){if(e.size>n)return[!1,K(n)];if(e.size<t)return[!1,q(t)]}else if(Y(t)&&e.size<t)return[!1,q(t)];else if(Y(n)&&e.size>n)return[!1,K(n)]}return[!0,null]}function Y(e){return e!=null}function de(e){var t=e.files,n=e.accept,r=e.minSize,i=e.maxSize,a=e.multiple,o=e.maxFiles,s=e.validator;return!a&&t.length>1||a&&o>=1&&t.length>o?!1:t.every(function(e){var t=z(le(e,n),1)[0],a=z(ue(e,r,i),1)[0],o=s?s(e):null;return t&&a&&!o})}function X(e){return typeof e.isPropagationStopped==`function`?e.isPropagationStopped():e.cancelBubble===void 0?!1:e.cancelBubble}function Z(e){return e.dataTransfer?Array.prototype.some.call(e.dataTransfer.types,function(e){return e===`Files`||e===`application/x-moz-file`}):!!e.target&&!!e.target.files}function fe(e){e.preventDefault()}function pe(e){return e.indexOf(`MSIE`)!==-1||e.indexOf(`Trident/`)!==-1}function me(e){return e.indexOf(`Edge/`)!==-1}function he(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:window.navigator.userAgent;return pe(e)||me(e)}function Q(){var e=[...arguments];return function(t){var n=[...arguments].slice(1);return e.some(function(e){return!X(t)&&e&&e.apply(void 0,[t].concat(n)),X(t)})}}function ge(){return`showOpenFilePicker`in window}function _e(e){return Y(e)?[{description:`Files`,accept:Object.entries(e).filter(function(e){var t=z(e,2),n=t[0],r=t[1],i=!0;return xe(n)||(console.warn(`Skipped "${n}" because it is not a valid MIME type. Check https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Common_types for a list of valid MIME types.`),i=!1),(!Array.isArray(r)||!r.every(Se))&&(console.warn(`Skipped "${n}" because an invalid file extension was provided.`),i=!1),i}).reduce(function(e,t){var n=z(t,2),r=n[0],i=n[1];return L(L({},e),{},R({},r,i))},{})}]:e}function ve(e){if(Y(e))return Object.entries(e).reduce(function(e,t){var n=z(t,2),r=n[0],i=n[1];return[].concat(P(e),[r],P(i))},[]).filter(function(e){return xe(e)||Se(e)}).join(`,`)}function ye(e){return e instanceof DOMException&&(e.name===`AbortError`||e.code===e.ABORT_ERR)}function be(e){return e instanceof DOMException&&(e.name===`SecurityError`||e.code===e.SECURITY_ERR)}function xe(e){return e===`audio/*`||e===`video/*`||e===`image/*`||e===`text/*`||e===`application/*`||/\w+\/[-+.\w]+/g.test(e)}function Se(e){return/^.*\.[\w]+$/.test(e)}var Ce=[`children`],we=[`open`],Te=[`refKey`,`role`,`onKeyDown`,`onFocus`,`onBlur`,`onClick`,`onDragEnter`,`onDragOver`,`onDragLeave`,`onDrop`],Ee=[`refKey`,`onChange`,`onClick`];function De(e){return Ae(e)||ke(e)||Ne(e)||Oe()}function Oe(){throw TypeError(`Invalid attempt to spread non-iterable instance.
|
|
4
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function ke(e){if(typeof Symbol<`u`&&e[Symbol.iterator]!=null||e[`@@iterator`]!=null)return Array.from(e)}function Ae(e){if(Array.isArray(e))return Pe(e)}function je(e,t){return Ie(e)||Fe(e,t)||Ne(e,t)||Me()}function Me(){throw TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
5
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Ne(e,t){if(e){if(typeof e==`string`)return Pe(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`)return Array.from(e);if(n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Pe(e,t)}}function Pe(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function Fe(e,t){var n=e==null?null:typeof Symbol<`u`&&e[Symbol.iterator]||e[`@@iterator`];if(n!=null){var r=[],i=!0,a=!1,o,s;try{for(n=n.call(e);!(i=(o=n.next()).done)&&(r.push(o.value),!(t&&r.length===t));i=!0);}catch(e){a=!0,s=e}finally{try{!i&&n.return!=null&&n.return()}finally{if(a)throw s}}return r}}function Ie(e){if(Array.isArray(e))return e}function Le(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function $(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]==null?{}:arguments[t];t%2?Le(Object(n),!0).forEach(function(t){Re(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Le(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function Re(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function ze(e,t){if(e==null)return{};var n=Be(e,t),r,i;if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(i=0;i<a.length;i++)r=a[i],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function Be(e,t){if(e==null)return{};var n={},r=Object.keys(e),i,a;for(a=0;a<r.length;a++)i=r[a],!(t.indexOf(i)>=0)&&(n[i]=e[i]);return n}var Ve=(0,A.forwardRef)(function(e,t){var n=e.children,r=We(ze(e,Ce)),i=r.open,a=ze(r,we);return(0,A.useImperativeHandle)(t,function(){return{open:i}},[i]),A.createElement(A.Fragment,null,n($($({},a),{},{open:i})))});Ve.displayName=`Dropzone`;var He={disabled:!1,getFilesFromEvent:h,maxSize:1/0,minSize:0,multiple:!0,maxFiles:0,preventDropOnDocument:!0,noClick:!1,noKeyboard:!1,noDrag:!1,noDragEventsBubbling:!1,validator:null,useFsAccessApi:!1,autoFocus:!1};Ve.defaultProps=He,Ve.propTypes={children:M.default.func,accept:M.default.objectOf(M.default.arrayOf(M.default.string)),multiple:M.default.bool,preventDropOnDocument:M.default.bool,noClick:M.default.bool,noKeyboard:M.default.bool,noDrag:M.default.bool,noDragEventsBubbling:M.default.bool,minSize:M.default.number,maxSize:M.default.number,maxFiles:M.default.number,disabled:M.default.bool,getFilesFromEvent:M.default.func,onFileDialogCancel:M.default.func,onFileDialogOpen:M.default.func,useFsAccessApi:M.default.bool,autoFocus:M.default.bool,onDragEnter:M.default.func,onDragLeave:M.default.func,onDragOver:M.default.func,onDrop:M.default.func,onDropAccepted:M.default.func,onDropRejected:M.default.func,onError:M.default.func,validator:M.default.func};var Ue={isFocused:!1,isFileDialogActive:!1,isDragActive:!1,isDragAccept:!1,isDragReject:!1,isDragGlobal:!1,acceptedFiles:[],fileRejections:[]};function We(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=$($({},He),e),n=t.accept,r=t.disabled,i=t.getFilesFromEvent,a=t.maxSize,o=t.minSize,s=t.multiple,c=t.maxFiles,l=t.onDragEnter,u=t.onDragLeave,d=t.onDragOver,f=t.onDrop,p=t.onDropAccepted,m=t.onDropRejected,h=t.onFileDialogCancel,g=t.onFileDialogOpen,_=t.useFsAccessApi,v=t.autoFocus,y=t.preventDropOnDocument,b=t.noClick,x=t.noKeyboard,S=t.noDrag,C=t.noDragEventsBubbling,w=t.onError,T=t.validator,E=(0,A.useMemo)(function(){return ve(n)},[n]),ee=(0,A.useMemo)(function(){return _e(n)},[n]),D=(0,A.useMemo)(function(){return typeof g==`function`?g:Ke},[g]),O=(0,A.useMemo)(function(){return typeof h==`function`?h:Ke},[h]),k=(0,A.useRef)(null),j=(0,A.useRef)(null),M=je((0,A.useReducer)(Ge,Ue),2),N=M[0],P=M[1],te=N.isFocused,ne=N.isFileDialogActive,F=(0,A.useRef)(typeof window<`u`&&window.isSecureContext&&_&&ge()),I=function(){!F.current&&ne&&setTimeout(function(){j.current&&(j.current.files.length||(P({type:`closeDialog`}),O()))},300)};(0,A.useEffect)(function(){return window.addEventListener(`focus`,I,!1),function(){window.removeEventListener(`focus`,I,!1)}},[j,ne,O,F]);var L=(0,A.useRef)([]),R=(0,A.useRef)([]),z=function(e){k.current&&k.current.contains(e.target)||(e.preventDefault(),L.current=[])};(0,A.useEffect)(function(){return y&&(document.addEventListener(`dragover`,fe,!1),document.addEventListener(`drop`,z,!1)),function(){y&&(document.removeEventListener(`dragover`,fe),document.removeEventListener(`drop`,z))}},[k,y]),(0,A.useEffect)(function(){var e=function(e){R.current=[].concat(De(R.current),[e.target]),Z(e)&&P({isDragGlobal:!0,type:`setDragGlobal`})},t=function(e){R.current=R.current.filter(function(t){return t!==e.target&&t!==null}),!(R.current.length>0)&&P({isDragGlobal:!1,type:`setDragGlobal`})},n=function(){R.current=[],P({isDragGlobal:!1,type:`setDragGlobal`})},r=function(){R.current=[],P({isDragGlobal:!1,type:`setDragGlobal`})};return document.addEventListener(`dragenter`,e,!1),document.addEventListener(`dragleave`,t,!1),document.addEventListener(`dragend`,n,!1),document.addEventListener(`drop`,r,!1),function(){document.removeEventListener(`dragenter`,e),document.removeEventListener(`dragleave`,t),document.removeEventListener(`dragend`,n),document.removeEventListener(`drop`,r)}},[k]),(0,A.useEffect)(function(){return!r&&v&&k.current&&k.current.focus(),function(){}},[k,v,r]);var B=(0,A.useCallback)(function(e){w?w(e):console.error(e)},[w]),V=(0,A.useCallback)(function(e){e.preventDefault(),e.persist(),Y(e),L.current=[].concat(De(L.current),[e.target]),Z(e)&&Promise.resolve(i(e)).then(function(t){if(!(X(e)&&!C)){var n=t.length,r=n>0&&de({files:t,accept:E,minSize:o,maxSize:a,multiple:s,maxFiles:c,validator:T});P({isDragAccept:r,isDragReject:n>0&&!r,isDragActive:!0,type:`setDraggedFiles`}),l&&l(e)}}).catch(function(e){return B(e)})},[i,l,B,C,E,o,a,s,c,T]),H=(0,A.useCallback)(function(e){e.preventDefault(),e.persist(),Y(e);var t=Z(e);if(t&&e.dataTransfer)try{e.dataTransfer.dropEffect=`copy`}catch{}return t&&d&&d(e),!1},[d,C]),re=(0,A.useCallback)(function(e){e.preventDefault(),e.persist(),Y(e);var t=L.current.filter(function(e){return k.current&&k.current.contains(e)}),n=t.indexOf(e.target);n!==-1&&t.splice(n,1),L.current=t,!(t.length>0)&&(P({type:`setDraggedFiles`,isDragActive:!1,isDragAccept:!1,isDragReject:!1}),Z(e)&&u&&u(e))},[k,u,C]),U=(0,A.useCallback)(function(e,t){var n=[],r=[];e.forEach(function(e){var t=je(le(e,E),2),i=t[0],s=t[1],c=je(ue(e,o,a),2),l=c[0],u=c[1],d=T?T(e):null;if(i&&l&&!d)n.push(e);else{var f=[s,u];d&&(f=f.concat(d)),r.push({file:e,errors:f.filter(function(e){return e})})}}),(!s&&n.length>1||s&&c>=1&&n.length>c)&&(n.forEach(function(e){r.push({file:e,errors:[ce]})}),n.splice(0)),P({acceptedFiles:n,fileRejections:r,isDragReject:r.length>0,type:`setFiles`}),f&&f(n,r,t),r.length>0&&m&&m(r,t),n.length>0&&p&&p(n,t)},[P,s,E,o,a,c,f,p,m,T]),W=(0,A.useCallback)(function(e){e.preventDefault(),e.persist(),Y(e),L.current=[],Z(e)&&Promise.resolve(i(e)).then(function(t){X(e)&&!C||U(t,e)}).catch(function(e){return B(e)}),P({type:`reset`})},[i,U,B,C]),G=(0,A.useCallback)(function(){if(F.current){P({type:`openDialog`}),D();var e={multiple:s,types:ee};window.showOpenFilePicker(e).then(function(e){return i(e)}).then(function(e){U(e,null),P({type:`closeDialog`})}).catch(function(e){ye(e)?(O(e),P({type:`closeDialog`})):be(e)?(F.current=!1,j.current?(j.current.value=null,j.current.click()):B(Error(`Cannot open the file picker because the https://developer.mozilla.org/en-US/docs/Web/API/File_System_Access_API is not supported and no <input> was provided.`))):B(e)});return}j.current&&(P({type:`openDialog`}),D(),j.current.value=null,j.current.click())},[P,D,O,_,U,B,ee,s]),ie=(0,A.useCallback)(function(e){!k.current||!k.current.isEqualNode(e.target)||(e.key===` `||e.key===`Enter`||e.keyCode===32||e.keyCode===13)&&(e.preventDefault(),G())},[k,G]),ae=(0,A.useCallback)(function(){P({type:`focus`})},[]),oe=(0,A.useCallback)(function(){P({type:`blur`})},[]),se=(0,A.useCallback)(function(){b||(he()?setTimeout(G,0):G())},[b,G]),K=function(e){return r?null:e},q=function(e){return x?null:K(e)},J=function(e){return S?null:K(e)},Y=function(e){C&&e.stopPropagation()},pe=(0,A.useMemo)(function(){return function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=e.refKey,n=t===void 0?`ref`:t,i=e.role,a=e.onKeyDown,o=e.onFocus,s=e.onBlur,c=e.onClick,l=e.onDragEnter,u=e.onDragOver,d=e.onDragLeave,f=e.onDrop,p=ze(e,Te);return $($(Re({onKeyDown:q(Q(a,ie)),onFocus:q(Q(o,ae)),onBlur:q(Q(s,oe)),onClick:K(Q(c,se)),onDragEnter:J(Q(l,V)),onDragOver:J(Q(u,H)),onDragLeave:J(Q(d,re)),onDrop:J(Q(f,W)),role:typeof i==`string`&&i!==``?i:`presentation`},n,k),!r&&!x?{tabIndex:0}:{}),p)}},[k,ie,ae,oe,se,V,H,re,W,x,S,r]),me=(0,A.useCallback)(function(e){e.stopPropagation()},[]),xe=(0,A.useMemo)(function(){return function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=e.refKey,n=t===void 0?`ref`:t,r=e.onChange,i=e.onClick,a=ze(e,Ee);return $($({},Re({accept:E,multiple:s,type:`file`,style:{border:0,clip:`rect(0, 0, 0, 0)`,clipPath:`inset(50%)`,height:`1px`,margin:`0 -1px -1px 0`,overflow:`hidden`,padding:0,position:`absolute`,width:`1px`,whiteSpace:`nowrap`},onChange:K(Q(r,W)),onClick:K(Q(i,me)),tabIndex:-1},n,j)),a)}},[j,n,s,W,r]);return $($({},N),{},{isFocused:te&&!r,getRootProps:pe,getInputProps:xe,rootRef:k,inputRef:j,open:K(G)})}function Ge(e,t){switch(t.type){case`focus`:return $($({},e),{},{isFocused:!0});case`blur`:return $($({},e),{},{isFocused:!1});case`openDialog`:return $($({},Ue),{},{isFileDialogActive:!0});case`closeDialog`:return $($({},e),{},{isFileDialogActive:!1});case`setDraggedFiles`:return $($({},e),{},{isDragActive:t.isDragActive,isDragAccept:t.isDragAccept,isDragReject:t.isDragReject});case`setFiles`:return $($({},e),{},{acceptedFiles:t.acceptedFiles,fileRejections:t.fileRejections,isDragReject:t.isDragReject});case`setDragGlobal`:return $($({},e),{},{isDragGlobal:t.isDragGlobal});case`reset`:return $({},Ue);default:return e}}function Ke(){}var qe=a(`flex cursor-pointer flex-col items-center justify-center outline-hidden`,{variants:{variant:{default:i(l(`self`),`border-2 border-dashed bg-transparent p-10 hover:border-border-strong`),filled:i(l(`self`),`border-transparent bg-muted p-3 hover:bg-interactive-hover`),button:i(o({variant:`outline`}),`flex-row`),buttonSecondary:i(o({size:`sm`,variant:`secondary`}),`flex-row`)}},defaultVariants:{variant:`default`}}),Je=A.forwardRef(({accept:e,multiple:t=!1,maxFiles:n=+!t,disabled:r=!1,noDragEventsBubbling:a=!1,inputId:o,inputAriaLabel:s,inputTestId:c,onDropAccepted:l,onDropRejected:u,variant:d,className:f,children:p,...m},h)=>{let{getRootProps:g,getInputProps:_,rootRef:v,isDragActive:y,isDragAccept:b,isDragReject:x,isFocused:S,isFileDialogActive:C,open:w}=We({accept:e,multiple:t,maxFiles:n,disabled:r,noDragEventsBubbling:a,onDropAccepted:l,onDropRejected:u}),T=typeof p==`function`?p({isDragActive:y,isDragAccept:b,isDragReject:x,isFocused:S,isFileDialogActive:C,open:w}):p,E=e=>{v.current=e,typeof h==`function`?h(e):h&&(h.current=e)},{ref:ee,...D}=g({...m,role:`button`,tabIndex:r?-1:0,"aria-disabled":r,"aria-invalid":x||void 0,className:i(qe({variant:d}),r&&`pointer-events-none cursor-not-allowed opacity-60`,x&&`border-state-danger bg-state-danger/10`,y&&!x&&!r&&`border-state-success bg-state-success/10`,f)});return(0,j.jsxs)(`div`,{ref:E,...D,children:[(0,j.jsx)(`input`,{..._(),"aria-label":s,"data-testid":c,id:o}),T]})});Je.displayName=`Dropzone`;export{Je as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{s as e,t}from"./react-BXwhMTuc.js";import{t as n}from"./jsx-runtime-BlNNh7jY.js";import{n as r}from"./dist-DziNzWI2.js";import{l as i,t as a}from"./dist-BXHrDV19.js";import{D as o,p as s,t as c}from"./button-DvIh2Bq-.js";import{t as l}from"./label-CgeBxy4o.js";import{t as u}from"./textarea-B4FffFmE.js";import{b as d,d as f,m as p,x as m,y as h}from"./schemas-BoYdB6YU.js";import{Gt as g,St as _,Xn as v,Zn as y,bt as b,gr as x,pr as S,vt as C,yn as w}from"./index-DDd-zhNL.js";import{t as T}from"./social-web-handle-CvfIKPww.js";var E=n(),D=e(t(),1),O=e=>e.type===`checkbox`,k=e=>e instanceof Date,A=e=>e==null,ee=e=>typeof e==`object`,j=e=>!A(e)&&!Array.isArray(e)&&ee(e)&&!k(e),te=e=>j(e)&&e.target?O(e.target)?e.target.checked:e.target.value:e,ne=(e,t)=>t.split(`.`).some((t,n,r)=>!isNaN(Number(t))&&e.has(r.slice(0,n).join(`.`))),M=e=>{let t=e.constructor&&e.constructor.prototype;return j(t)&&t.hasOwnProperty(`isPrototypeOf`)},re=typeof window<`u`&&window.HTMLElement!==void 0&&typeof document<`u`;function N(e){if(e instanceof Date)return new Date(e);let t=typeof FileList<`u`&&e instanceof FileList;if(re&&(e instanceof Blob||t))return e;let n=Array.isArray(e);if(!n&&!(j(e)&&M(e)))return e;let r=n?[]:Object.create(Object.getPrototypeOf(e));for(let t in e)Object.prototype.hasOwnProperty.call(e,t)&&(r[t]=N(e[t]));return r}var P={BLUR:`blur`,FOCUS_OUT:`focusout`,CHANGE:`change`,SUBMIT:`submit`,TRIGGER:`trigger`,VALID:`valid`},F={onBlur:`onBlur`,onChange:`onChange`,onSubmit:`onSubmit`,onTouched:`onTouched`,all:`all`},I={max:`max`,min:`min`,maxLength:`maxLength`,minLength:`minLength`,pattern:`pattern`,required:`required`,validate:`validate`},ie=`root`,ae=[`__proto__`,`constructor`,`prototype`],oe=/^\w*$/,se=e=>oe.test(e),L=e=>e===void 0,R=/[.[\]'"]/,ce=e=>e.split(R).filter(Boolean),z=(e,t,n)=>{if(!t||!j(e))return n;let r=se(t)?[t]:ce(t);if(r.some(e=>ae.includes(e)))return n;let i=r.reduce((e,t)=>A(e)?void 0:e[t],e);return L(i)||i===e?L(e[t])?n:e[t]:i},B=e=>typeof e==`boolean`,V=e=>typeof e==`function`,H=(e,t,n)=>{let r=-1,i=se(t)?[t]:ce(t),a=i.length,o=a-1;for(;++r<a;){let t=i[r],a=n;if(r!==o){let n=e[t];a=j(n)||Array.isArray(n)?n:isNaN(+i[r+1])?{}:[]}if(ae.includes(t))return;e[t]=a,e=e[t]}},le=D.createContext(null);le.displayName=`HookFormControlContext`;var U=()=>D.useContext(le),ue=(e,t,n,r=!0)=>{let i={};for(let a in e)Object.defineProperty(i,a,{get:()=>{let i=a;return t._proxyFormState[i]!==F.all&&(t._proxyFormState[i]=!r||F.all),n&&(n[i]=!0),e[i]}});return i},de=re?D.useLayoutEffect:D.useEffect;function fe(e){let t=U(),{control:n=t,disabled:r,name:i,exact:a}=e||{},[o,s]=D.useState(()=>({...n._formState,defaultValues:n._defaultValues})),c=D.useRef({isDirty:!1,isLoading:!1,dirtyFields:!1,touchedFields:!1,validatingFields:!1,isValidating:!1,isValid:!1,errors:!1});return de(()=>n._subscribe({name:i,formState:c.current,exact:a,callback:e=>{!r&&s({...n._formState,...e,defaultValues:n._defaultValues})}}),[i,r,a]),D.useEffect(()=>{c.current.isValid&&n._setValid(!0)},[n]),D.useMemo(()=>ue(o,n,c.current,!1),[o,n])}var W=e=>typeof e==`string`,pe=(e,t,n,r,i)=>W(e)?(r&&t.watch.add(e),z(n,e,i)):Array.isArray(e)?e.map(e=>(r&&t.watch.add(e),z(n,e))):(r&&(t.watchAll=!0),n),me=e=>A(e)||!ee(e),he=(e,t)=>t.length===0&&!Array.isArray(e)&&!M(e);function G(e,t,n=new WeakMap){if(e===t)return!0;if(me(e)||me(t))return Object.is(e,t);if(k(e)&&k(t))return Object.is(e.getTime(),t.getTime());let r=Object.keys(e),i=Object.keys(t);if(r.length!==i.length)return!1;if(he(e,r)||he(t,i))return Object.is(e,t);if(!r.length&&Array.isArray(e)!==Array.isArray(t))return!1;let a=n.get(e);if(a&&a.has(t))return!0;if(a)a.add(t);else{let r=new WeakSet;r.add(t),n.set(e,r)}for(let i of r){let r=e[i];if(!(i in t))return!1;if(i!==`ref`){let e=t[i];if(k(r)&&k(e)||(j(r)||Array.isArray(r))&&(j(e)||Array.isArray(e))?!G(r,e,n):!Object.is(r,e))return!1}}return!0}function K(e){let t=U(),{control:n=t,name:r,defaultValue:i,disabled:a,exact:o,compute:s}=e||{},c=D.useRef(i),l=D.useRef(s),u=D.useRef(void 0),d=D.useRef(n),f=D.useRef(r);l.current=s;let[p,m]=D.useState(()=>{let e=n._getWatch(r,c.current);return l.current?l.current(e):e}),h=D.useCallback(e=>{let t=pe(r,n._names,e||n._formValues,!1,c.current);return l.current?l.current(t):t},[n._formValues,n._names,r]),g=D.useCallback(e=>{if(!a){let t=pe(r,n._names,e||n._formValues,!1,c.current);if(l.current){let e=l.current(t);G(e,u.current)||(m(e),u.current=e)}else m(t)}},[n._formValues,n._names,a,r]);de(()=>((d.current!==n||!G(f.current,r))&&(d.current=n,f.current=r,g()),n._subscribe({name:r,formState:{values:!0},exact:o,callback:e=>{g(e.values)}})),[n,o,r,g]),D.useEffect(()=>n._removeUnmounted());let _=d.current!==n,v=f.current,y=D.useMemo(()=>{if(a)return null;let e=!_&&!G(v,r);return _||e?h():null},[a,_,r,v,h]);return y===null?p:y}function ge(e){let t=U(),{name:n,disabled:r,control:i=t,shouldUnregister:a,defaultValue:o,exact:s=!0}=e,c=ne(i._names.array,n),l=K({control:i,name:n,defaultValue:D.useMemo(()=>z(i._formValues,n,z(i._defaultValues,n,o)),[i,n,o]),exact:s}),u=fe({control:i,name:n,exact:s}),d=D.useRef(e),f=D.useRef(null),p=D.useRef(i.register(n,{...e.rules,value:l,...B(e.disabled)?{disabled:e.disabled}:{}}));d.current=e;let m=D.useMemo(()=>Object.defineProperties({},{invalid:{enumerable:!0,get:()=>!!z(u.errors,n)},isDirty:{enumerable:!0,get:()=>!!z(u.dirtyFields,n)},isTouched:{enumerable:!0,get:()=>!!z(u.touchedFields,n)},isValidating:{enumerable:!0,get:()=>!!z(u.validatingFields,n)},error:{enumerable:!0,get:()=>z(u.errors,n)}}),[u,n]),h=D.useCallback(e=>{let t=te(e);return z(i._fields,n)||(p.current=i.register(n,{...d.current.rules,value:t})),p.current.onChange({target:{value:te(e),name:n},type:P.CHANGE})},[n,i]),g=D.useCallback(()=>p.current.onBlur({target:{value:z(i._formValues,n),name:n},type:P.BLUR}),[n,i._formValues]),_=D.useCallback(e=>{e&&(f.current={focus:()=>V(e.focus)&&e.focus(),select:()=>V(e.select)&&e.select(),setCustomValidity:t=>V(e.setCustomValidity)&&e.setCustomValidity(t),reportValidity:()=>V(e.reportValidity)&&e.reportValidity()});let t=z(i._fields,n);t&&t._f&&e&&(t._f.ref=f.current)},[i._fields,n]),v=D.useMemo(()=>({name:n,value:l,...B(r)||u.disabled?{disabled:u.disabled||r}:{},onChange:h,onBlur:g,ref:_}),[n,r,u.disabled,h,g,_,l]);return D.useEffect(()=>{let e=i._options.shouldUnregister||a;i.register(n,{...d.current.rules,...B(d.current.disabled)?{disabled:d.current.disabled}:{}});let t=(e,t)=>{let n=z(i._fields,e);n&&n._f&&(n._f.mount=t)};if(t(n,!0),e){let e=N(z(a?i._defaultValues:i._options.values||i._defaultValues,n,z(i._options.defaultValues,n,d.current.defaultValue)));H(i._defaultValues,n,e),L(z(i._formValues,n))&&H(i._formValues,n,e)}if(!c&&i.register(n),f.current){let e=z(i._fields,n);e&&e._f&&(e._f.ref=f.current)}return()=>{(c?e&&!i._state.action:e)?i.unregister(n):t(n,!1)}},[n,i,c,a]),D.useEffect(()=>{i._setDisabledField({disabled:r,name:n})},[r,n,i]),D.useMemo(()=>({field:v,formState:u,fieldState:m}),[v,u,m])}var _e=e=>e.render(ge(e)),ve=D.createContext(null);ve.displayName=`HookFormContext`;var ye=()=>D.useContext(ve),be=({children:e,watch:t,getValues:n,getFieldState:r,setError:i,clearErrors:a,setValue:o,setValues:s,trigger:c,formState:l,resetField:u,reset:d,handleSubmit:f,unregister:p,control:m,register:h,setFocus:g,subscribe:_})=>{let v=D.useMemo(()=>({watch:t,getValues:n,getFieldState:r,setError:i,clearErrors:a,setValue:o,setValues:s,trigger:c,formState:l,resetField:u,reset:d,handleSubmit:f,unregister:p,control:m,register:h,setFocus:g,subscribe:_}),[a,m,l,r,n,f,h,d,u,i,g,o,s,_,c,p,t]);return D.createElement(ve.Provider,{value:v},D.createElement(le.Provider,{value:v.control},e))},q=(e,t,n,r,i)=>t?{...n[e],types:{...n[e]&&n[e].types?n[e].types:{},[r]:i||!0}}:{},xe=e=>Array.isArray(e)?e.filter(Boolean):[],Se=e=>Array.isArray(e)?e:[e],Ce=()=>{let e=[];return{get observers(){return e},next:t=>{for(let n of e)n.next&&n.next(t)},subscribe:t=>(e.push(t),{unsubscribe:()=>{e=e.filter(e=>e!==t)}}),unsubscribe:()=>{e=[]}}};function we(e,t){let n={};for(let r in e)if(e.hasOwnProperty(r)){let i=e[r],a=t[r];if(i&&j(i)&&a){let e=we(i,a);j(e)&&(n[r]=e)}else e[r]&&(n[r]=a)}return n}var J=e=>j(e)&&!Object.keys(e).length,Te=e=>e.type===`file`,Ee=e=>{if(!re)return!1;let t=e?e.ownerDocument:0;return e instanceof(t&&t.defaultView?t.defaultView.HTMLElement:HTMLElement)},De=e=>e.type===`select-multiple`,Oe=e=>e.type===`radio`,ke=e=>Oe(e)||O(e),Ae=e=>Ee(e)&&e.isConnected;function je(e,t){let n=t.slice(0,-1).length,r=0;for(;r<n;){if(A(e)){e=void 0;break}e=e[t[r]],r++}return e}function Me(e){for(let t in e)if(e.hasOwnProperty(t)&&!L(e[t]))return!1;return!0}function Y(e,t){if(W(t)&&Object.prototype.hasOwnProperty.call(e,t))return delete e[t],e;let n=Array.isArray(t)?t:se(t)?[t]:ce(t),r=n.length===1?e:je(e,n),i=n.length-1,a=n[i];return r&&delete r[a],i!==0&&(j(r)&&J(r)||Array.isArray(r)&&Me(r))&&Y(e,n.slice(0,-1)),e}var Ne=e=>{for(let t in e)if(V(e[t]))return!0;return!1};function Pe(e){return Array.isArray(e)||j(e)&&!Ne(e)}function X(e,t={}){for(let n in e){let r=e[n];Pe(r)?(t[n]=Array.isArray(r)?[]:{},X(r,t[n])):L(r)||(t[n]=!0)}return t}function Fe(e){if(e!==!1){if(e===!0)return!0;if(Array.isArray(e)){let t=e.map(e=>Fe(e));return t.some(e=>e!==void 0)?t:void 0}if(j(e)){let t={};for(let n in e){let r=Fe(e[n]);L(r)||(t[n]=r)}return Object.keys(t).length?t:void 0}}}function Z(e,t,n){n||=X(t);for(let r in e){let i=e[r];if(Pe(i))L(t)||me(n[r])?n[r]=X(i,Array.isArray(i)?[]:{}):Z(i,A(t)?{}:t[r],n[r]);else{let e=t[r];n[r]=!G(i,e)}}return Fe(n)||{}}var Ie={value:!1,isValid:!1},Le={value:!0,isValid:!0},Re=e=>{if(Array.isArray(e)){if(e.length>1){let t=e.filter(e=>e&&e.checked&&!e.disabled).map(e=>e.value);return{value:t,isValid:!!t.length}}return e[0].checked&&!e[0].disabled?e[0].attributes&&!L(e[0].attributes.value)?L(e[0].value)||e[0].value===``?Le:{value:e[0].value,isValid:!0}:Le:Ie}return Ie},ze=(e,{valueAsNumber:t,valueAsDate:n,setValueAs:r})=>L(e)?e:t?e===``?NaN:e&&+e:n&&W(e)?new Date(e):r?r(e):e,Be={isValid:!1,value:null},Ve=e=>Array.isArray(e)?e.reduce((e,t)=>t&&t.checked&&!t.disabled?{isValid:!0,value:t.value}:e,Be):Be;function He(e){let t=e.ref;return Te(t)?t.files:Oe(t)?Ve(e.refs).value:De(t)?[...t.selectedOptions].map(({value:e})=>e):O(t)?Re(e.refs).value:ze(L(t.value)?e.ref.value:t.value,e)}var Ue=(e,t,n,r)=>{let i={};for(let n of e){let e=z(t,n);e&&H(i,n,e._f)}return{criteriaMode:n,names:[...e],fields:i,shouldUseNativeValidation:r}},Q=e=>e instanceof RegExp,We=e=>L(e)?e:Q(e)?e.source:j(e)?Q(e.value)?e.value.source:e.value:e,Ge=e=>({isOnSubmit:!e||e===F.onSubmit,isOnBlur:e===F.onBlur,isOnChange:e===F.onChange,isOnAll:e===F.all,isOnTouch:e===F.onTouched}),Ke=`AsyncFunction`,qe=e=>{if(!e||!e.validate)return!1;if(V(e.validate))return e.validate.constructor.name===Ke;if(j(e.validate)){for(let t in e.validate)if(e.validate[t].constructor.name===Ke)return!0}return!1},Je=e=>e.mount&&(e.required||e.min||e.max||e.maxLength||e.minLength||e.pattern||e.validate),Ye=(e,t,n)=>{if(n)return!1;if(t.watchAll||t.watch.has(e))return!0;for(let n of t.watch)if(e.startsWith(n)&&e.charAt(n.length)===`.`)return!0;return!1},Xe=(e,t,n,r)=>{for(let i of n||Object.keys(e)){let n=z(e,i);if(n){let{_f:e,...a}=n;if(e){if(e.refs&&e.refs[0]&&t(e.refs[0],i)&&!r||e.ref&&t(e.ref,e.name)&&!r)return!0;if(Xe(a,t))break}else if(j(a)&&Xe(a,t))break}}};function Ze(e,t,n){let r=z(e,n);if(r||se(n))return{error:r,name:n};let i=n.split(`.`);for(;i.length;){let r=i.join(`.`),a=z(t,r),o=z(e,r);if(a&&!Array.isArray(a)&&n!==r)return{name:n};if(o&&o.type)return{name:r,error:o};if(o&&o.root&&o.root.type)return{name:`${r}.root`,error:o.root};i.pop()}return{name:n}}var Qe=(e,t,n,r)=>{n(e);let{name:i,...a}=e,o=Object.keys(a);return!o.length||r&&o.length>=Object.keys(t).length||o.find(e=>t[e]===(!r||F.all))},$e=(e,t,n)=>!e||!t||e===t||Se(e).some(e=>e&&(n?e===t:e.startsWith(t)||t.startsWith(e))),et=(e,t,n,r,i)=>i.isOnAll?!1:!n&&i.isOnTouch?!(t||e):(n?r.isOnBlur:i.isOnBlur)?!e:(n?r.isOnChange:i.isOnChange)?e:!0,tt=(e,t)=>!xe(z(e,t)).length&&Y(e,t),nt=(e,t,n)=>{let r=z(e,n),i=Array.isArray(r)?r:[];return H(i,ie,t[n]),H(e,n,i),e};function rt(e,t,n=`validate`){if(W(e)||Array.isArray(e)&&e.every(W)||B(e)&&!e)return{type:n,message:W(e)?e:``,ref:t}}var $=e=>j(e)&&!Q(e)?e:{value:e,message:``},it=async(e,t,n,r,i,a)=>{let{ref:o,refs:s,required:c,maxLength:l,minLength:u,min:d,max:f,pattern:p,validate:m,name:h,valueAsNumber:g,mount:_}=e._f,v=z(n,h);if(!_||t.has(h))return{};let y=s?s[0]:o,b=e=>{if(i&&y.reportValidity){let t=B(e)?``:e||``;s?s.forEach(e=>e.setCustomValidity(t)):y.setCustomValidity(t),y.reportValidity()}},x={},S=Oe(o),C=O(o),w=S||C,T=(g||Te(o))&&L(o.value)&&L(v)||Ee(o)&&o.value===``||v===``||Array.isArray(v)&&!v.length,E=q.bind(null,h,r,x),D=(e,t,n,r=I.maxLength,i=I.minLength)=>{let a=e?t:n;x[h]={type:e?r:i,message:a,ref:o,...E(e?r:i,a)}};if(a?!Array.isArray(v)||!v.length:c&&(!w&&(T||A(v))||B(v)&&!v||C&&!Re(s).isValid||S&&!Ve(s).isValid)){let{value:e,message:t}=W(c)?{value:!!c,message:c}:$(c);if(e&&(x[h]={type:I.required,message:t,ref:y,...E(I.required,t)},!r))return b(t),x}if(!T&&(!A(d)||!A(f))){let e,t,n=$(f),i=$(d);if(!A(v)&&!isNaN(v)){let r=o.valueAsNumber||v&&+v;A(n.value)||(e=r>n.value),A(i.value)||(t=r<i.value)}else{let r=o.valueAsDate||new Date(v),a=e=>new Date(new Date().toDateString()+` `+e),s=o.type==`time`,c=o.type==`week`;W(n.value)&&v&&(e=s?a(v)>a(n.value):c?v>n.value:r>new Date(n.value)),W(i.value)&&v&&(t=s?a(v)<a(i.value):c?v<i.value:r<new Date(i.value))}if((e||t)&&(D(!!e,n.message,i.message,I.max,I.min),!r))return b(x[h].message),x}if((l||u)&&!T&&(W(v)||a&&Array.isArray(v))){let e=$(l),t=$(u),n=!A(e.value)&&v.length>+e.value,i=!A(t.value)&&v.length<+t.value;if((n||i)&&(D(n,e.message,t.message),!r))return b(x[h].message),x}if(p&&!T&&W(v)){let{value:e,message:t}=$(p);if(Q(e)&&!v.match(e)&&(x[h]={type:I.pattern,message:t,ref:o,...E(I.pattern,t)},!r))return b(t),x}if(m){if(V(m)){let e=rt(await m(v,n),y);if(e&&(x[h]={...e,...E(I.validate,e.message)},!r))return b(e.message),x}else if(j(m)){let e={};for(let t in m){if(!J(e)&&!r)break;let i=rt(await m[t](v,n),y,t);i&&(e={...i,...E(t,i.message)},b(i.message),r&&(x[h]=e))}if(!J(e)&&(x[h]={ref:y,...e},!r))return x}}return b(!0),x},at={mode:F.onSubmit,reValidateMode:F.onChange,shouldFocusError:!0},ot=`form`,st={submitCount:0,isDirty:!1,isReady:!1,isValidating:!1,isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,touchedFields:{},dirtyFields:{},validatingFields:{}};function ct(e={}){let t={...at,...e},n={...N(st),isLoading:V(t.defaultValues),errors:t.errors||{},disabled:t.disabled||!1},r={},i=(j(t.defaultValues)||j(t.values))&&N(t.defaultValues||t.values)||{},a=t.shouldUnregister?{}:N(i),o={action:!1,mount:!1,watch:!1,keepIsValid:!1},s={mount:new Set,disabled:new Set,unMount:new Set,array:new Set,watch:new Set,registerName:new Set},c,l=0,u=0,d=Ge(t.mode),f=Ge(t.reValidateMode),p={isDirty:!1,dirtyFields:!1,validatingFields:!1,touchedFields:!1,isValidating:!1,isValid:!1,errors:!1},m={...p},h={...m},g={array:Ce(),state:Ce()},_=t.criteriaMode===F.all,v=e=>t=>{clearTimeout(l),l=setTimeout(e,t)},y=async e=>{if(!o.keepIsValid&&!t.disabled&&(m.isValid||h.isValid||e)){let e;t.resolver?(e=J((await M()).errors),b()):e=await R({fields:r,onlyCheckValid:!0,eventType:P.VALID}),e!==n.isValid&&g.state.next({isValid:e})}},b=(e,r)=>{!t.disabled&&(m.isValidating||m.validatingFields||h.isValidating||h.validatingFields)&&((e||Array.from(s.mount)).forEach(e=>{e&&(r?H(n.validatingFields,e,r):Y(n.validatingFields,e))}),g.state.next({validatingFields:n.validatingFields,isValidating:!J(n.validatingFields)}))},x=()=>{n.dirtyFields=Z(i,a)},S=(e,i=[],s,c,l=!0,u=!0)=>{if(c&&s&&!t.disabled){if(o.action=!0,u&&Array.isArray(z(r,e))){let t=s(z(r,e),c.argA,c.argB);l&&H(r,e,t)}if(u&&Array.isArray(z(n.errors,e))){let t=s(z(n.errors,e),c.argA,c.argB);l&&H(n.errors,e,t),tt(n.errors,e)}if((m.touchedFields||h.touchedFields)&&u&&Array.isArray(z(n.touchedFields,e))){let t=s(z(n.touchedFields,e),c.argA,c.argB);l&&H(n.touchedFields,e,t)}(m.dirtyFields||h.dirtyFields)&&x(),g.state.next({name:e,isDirty:U(e,i),dirtyFields:n.dirtyFields,errors:n.errors,isValid:n.isValid})}else H(a,e,i)},C=(e,t)=>{H(n.errors,e,t),n.errors={...n.errors},g.state.next({errors:n.errors})},w=e=>{n.errors=e,g.state.next({errors:n.errors,isValid:!1})},T=e=>{let t=se(e)?[e]:ce(e),n=a,r=i;for(let e=0;e<t.length-1;e++){let i=t[e];if(n=A(n)?n:n[i],r=A(r)?r:r[i],n===null&&r!==null)return!0}return!1},E=(t,c,l,u)=>{let d=z(r,t);if(d){if(T(t))return;let r=L(z(a,t)),f=z(a,t,L(l)?z(i,t):l);L(f)||u&&u.defaultChecked||c?H(a,t,c?f:He(d._f)):fe(t,f),o.mount&&!o.action&&(y(),r&&n.isDirty&&(m.isDirty||h.isDirty)&&(U()||(n.isDirty=!1,g.state.next({...n}))),e.shouldUnregister&&r&&!L(z(a,t))&&Ye(t,s)&&(o.watch=!0))}},D=(e,r,o,s,c)=>{let l=!1,u=!1,d={name:e};if(!t.disabled){if(!o||s){let t=G(z(i,e),r);(m.isDirty||h.isDirty)&&(u=n.isDirty,n.isDirty=d.isDirty=!t||U(),l=u!==d.isDirty),u=!!z(n.dirtyFields,e),t===n.isDirty?t?Y(n.dirtyFields,e):H(n.dirtyFields,e,!0):n.dirtyFields=Z(i,a),d.dirtyFields=n.dirtyFields,l||=(m.dirtyFields||h.dirtyFields)&&u!==!t}if(o){let t=z(n.touchedFields,e);t||(H(n.touchedFields,e,o),d.touchedFields=n.touchedFields,l||=(m.touchedFields||h.touchedFields)&&t!==o)}l&&c&&g.state.next(d)}return l?d:{}},ee=(e,r,i,a)=>{let o=z(n.errors,e),s=(m.isValid||h.isValid)&&B(r)&&n.isValid!==r;if(t.delayError&&i?(c=v(()=>C(e,i)),c(t.delayError)):(clearTimeout(l),c=null,i?H(n.errors,e,i):Y(n.errors,e),n.errors={...n.errors}),(i?!G(o,i):o)||!J(a)||s){let t={...a,...s&&B(r)?{isValid:r}:{},errors:n.errors,name:e};n={...n,...t},g.state.next(t)}},M=async e=>(b(e,!0),await t.resolver(a,t.context,Ue(e||s.mount,r,t.criteriaMode,t.shouldUseNativeValidation))),ae=async e=>{let{errors:t}=await M(e);if(b(e),e){for(let r of e){let e=z(t,r);e?s.array.has(r)&&j(e)&&!Object.keys(e).some(e=>!Number.isNaN(Number(e)))?nt(n.errors,{[r]:e},r):H(n.errors,r,e):Y(n.errors,r)}n.errors={...n.errors}}else n.errors=t;return t},oe=async({name:t,eventType:r})=>{if(e.validate){let i=await e.validate({formValues:a,formState:n,name:t,eventType:r});if(j(i))for(let e in i){let t=i[e];t&&je(`${ot}.${e}`,{message:W(t.message)?t.message:``,type:t.type||I.validate})}else W(i)||!i?je(ot,{message:i||``,type:I.validate}):Oe(ot);return i}return!0},R=async({fields:r,onlyCheckValid:i,name:o,eventType:c,context:l={valid:!0,runRootValidation:!1}})=>{if(e.validate&&(l.runRootValidation=!0,!await oe({name:o,eventType:c})&&(l.valid=!1,i)))return l.valid;for(let o in r){let u=r[o];if(u){let{_f:r,...d}=u;if(r){let o=s.array.has(r.name),c=u._f&&qe(u._f),d=m.validatingFields||m.isValidating||h.validatingFields||h.isValidating;c&&d&&b([r.name],!0);let f=await it(u,s.disabled,a,_,t.shouldUseNativeValidation&&!i,o);if(c&&d&&b([r.name]),f[r.name]&&(l.valid=!1,i)||(!i&&(z(f,r.name)?o?nt(n.errors,f,r.name):H(n.errors,r.name,f[r.name]):Y(n.errors,r.name)),e.shouldUseNativeValidation&&f[r.name]))break}!J(d)&&await R({context:l,onlyCheckValid:i,fields:d,name:o,eventType:c})}}return l.valid},le=()=>{for(let e of s.unMount){let t=z(r,e);t&&(t._f.refs?t._f.refs.every(e=>!Ae(e)):!Ae(t._f.ref))&&X(e)}s.unMount=new Set},U=(e,n)=>!t.disabled&&(e&&n&&H(a,e,n),!G(o.mount?a:i,i)),ue=(e,t,n)=>pe(e,s,{...o.mount?a:L(t)?i:W(e)?{[e]:t}:t},n,t),de=e=>xe(z(o.mount?a:i,e,t.shouldUnregister?z(i,e,[]):[])),fe=(e,t,n={},i=!1,o=!1)=>{let s=z(r,e),c=t;if(s){let n=s._f;n&&(!n.disabled&&H(a,e,ze(t,n)),c=Ee(n.ref)&&A(t)?``:t,De(n.ref)?[...n.ref.options].forEach(e=>e.selected=c.includes(e.value)):n.refs?O(n.ref)?n.refs.forEach(e=>{(!e.defaultChecked||!e.disabled)&&(Array.isArray(c)?e.checked=!!c.find(t=>t===e.value):e.checked=c===e.value||!!c)}):n.refs.forEach(e=>e.checked=e.value===c):Te(n.ref)?n.ref.value=``:(n.ref.value=c,!n.ref.type&&!o&&g.state.next({name:e,values:i?a:N(a)})))}(n.shouldDirty||n.shouldTouch)&&D(e,c,n.shouldTouch,n.shouldDirty,!o),n.shouldValidate&&ye(e)},me=(e,t,n,i=!1,a=!1)=>{for(let o in t){if(!t.hasOwnProperty(o))return;let c=t[o],l=e+`.`+o,u=z(r,l);(s.array.has(e)||j(c)||u&&!u._f)&&!k(c)?me(l,c,n,i,a):fe(l,c,n,i,a)}},he=(e,t,i,c,l=!1)=>{let u=z(r,e),d=s.array.has(e),f=c?t:N(t),p=G(z(a,e),f);if(p||H(a,e,f),d)g.array.next({name:e,values:c?a:N(a)}),(m.isDirty||m.dirtyFields||h.isDirty||h.dirtyFields)&&i.shouldDirty&&(x(),l||g.state.next({name:e,dirtyFields:n.dirtyFields,isDirty:U(e,f)}));else{let t=Array.isArray(f)&&!f.length||J(f);!u||u._f||A(f)||t?fe(e,f,i,c,l):me(e,f,i,c,l)}if(!p&&!l){let t=Ye(e,s),r=c?a:N(a);g.state.next({...t&&n,name:o.mount||t?e:void 0,values:r})}},K=(e,t,n={})=>he(e,t,n,!1),ge=(e,t={})=>{let r=V(e)?e(a):e;if(!G(a,r)){a={...a,...r};for(let e of s.mount)he(e,z(r,e),t,!0,!0);g.state.next({...n,name:void 0,type:void 0,...u?{values:a}:{}}),t.shouldValidate&&y()}},_e=async i=>{o.mount=!0;let l=i.target,p=l.name,v=!0,x=z(r,p),S=e=>{v=Number.isNaN(e)||k(e)&&isNaN(e.getTime())||G(e,z(a,p,e))};if(x){let o,C,w=l.type?He(x._f):te(i),T=i.type===P.BLUR||i.type===P.FOCUS_OUT,E=!Je(x._f)&&!e.validate&&!t.resolver&&!z(n.errors,p)&&!x._f.deps,O=E||et(T,z(n.touchedFields,p),n.isSubmitted,f,d),k=Ye(p,s,T);H(a,p,w),T?(!l||!l.readOnly)&&(x._f.onBlur&&x._f.onBlur(i),c&&c(0)):x._f.onChange&&x._f.onChange(i);let A=D(p,w,T),j=!J(A)||k;if(!T&&g.state.next({name:p,type:i.type,...u?{values:N(a)}:{}}),O)return(!E||!n.isValid)&&(m.isValid||h.isValid)&&(t.mode===`onBlur`?T&&y():T||y()),j&&g.state.next({name:p,...k?{}:A});if(!t.resolver&&e.validate&&await oe({name:p,eventType:i.type}),!T&&k&&g.state.next({...n}),t.resolver){let{errors:e}=await M([p]);if(b([p]),S(w),!v){!J(A)&&g.state.next(A);return}let t=Ze(n.errors,r,p),i=Ze(e,r,t.name||p);o=i.error,p=i.name,C=J(e)}else b([p],!0),o=(await it(x,s.disabled,a,_,t.shouldUseNativeValidation))[p],b([p]),S(w),v&&(o?C=!1:(m.isValid||h.isValid)&&(C=await R({fields:r,onlyCheckValid:!0,name:p,eventType:i.type})));v&&(x._f.deps&&(!Array.isArray(x._f.deps)||x._f.deps.length>0)&&ye(x._f.deps),ee(p,C,o,A))}},ve=(e,t)=>{if(z(n.errors,t)&&e.focus)return e.focus(),1},ye=async(e,i={})=>{let a,o,c=Se(e);if(t.resolver){let t=await ae(L(e)?e:c);a=J(t),o=e?!c.some(e=>z(t,e)):a}else e?(o=(await Promise.all(c.map(async e=>{let t=z(r,e);return await R({fields:t&&t._f?{[e]:t}:t,eventType:P.TRIGGER})}))).every(Boolean),!(!o&&!n.isValid)&&y()):o=a=await R({fields:r,name:e,eventType:P.TRIGGER});return g.state.next({...!W(e)||(m.isValid||h.isValid)&&a!==n.isValid?{}:{name:e},...t.resolver||!e?{isValid:a}:{},errors:n.errors}),i.shouldFocus&&!o&&Xe(r,ve,e?c:s.mount),o},be=(e,t)=>{let r={...o.mount?a:i};return t&&(r=we(t.dirtyFields?n.dirtyFields:n.touchedFields,r)),L(e)?r:W(e)?z(r,e):e.map(e=>z(r,e))},q=(e,t)=>({invalid:!!z((t||n).errors,e),isDirty:!!z((t||n).dirtyFields,e),error:z((t||n).errors,e),isValidating:!!z(n.validatingFields,e),isTouched:!!z((t||n).touchedFields,e)}),Oe=e=>{let t=e?Se(e):void 0;t?.forEach(e=>Y(n.errors,e)),t?t.forEach(e=>{g.state.next({name:e,errors:n.errors})}):g.state.next({errors:{}})},je=(e,t,i)=>{let a=(z(r,e,{_f:{}})._f||{}).ref,{ref:o,message:s,type:c,...l}=z(n.errors,e)||{};H(n.errors,e,{...l,...t,ref:a}),g.state.next({name:e,errors:n.errors,isValid:!1}),i&&i.shouldFocus&&a&&a.focus&&a.focus()},Me=(e,t)=>{if(V(e)){u++;let{unsubscribe:n}=g.state.subscribe({next:n=>`values`in n&&e(n.values||ue(void 0,t),n)}),r=!1;return{unsubscribe:()=>{r||(r=!0,u--,n())}}}return ue(e,t,!0)},Ne=e=>{let t=!!e.formState?.values;t&&u++;let{unsubscribe:r}=g.state.subscribe({next:t=>{if($e(e.name,t.name,e.exact)&&Qe(t,e.formState||m,$,e.reRenderRoot)){let r={...a};e.callback({values:r,...n,...t,defaultValues:i})}}});if(!t)return r;let o=!1;return()=>{o||(o=!0,u--,r())}},Pe=e=>(o.mount=!0,h={...h,...e.formState},Ne({...e,formState:{...p,...e.formState}})),X=(e,o={})=>{for(let c of e?Se(e):s.mount)s.mount.delete(c),s.array.delete(c),o.keepValue||(Y(r,c),Y(a,c)),!o.keepError&&Y(n.errors,c),!o.keepDirty&&Y(n.dirtyFields,c),!o.keepTouched&&Y(n.touchedFields,c),!o.keepIsValidating&&Y(n.validatingFields,c),!t.shouldUnregister&&!o.keepDefaultValue&&Y(i,c);g.state.next({values:N(a)}),g.state.next({...n,...o.keepDirty?{isDirty:U()}:{}}),!o.keepIsValid&&y()},Fe=({disabled:e,name:t})=>{if(B(e)&&o.mount||e||s.disabled.has(t)){let n=s.disabled.has(t)!==!!e;e?s.disabled.add(t):s.disabled.delete(t),n&&o.mount&&!o.action&&y()}},Ie=(e,n={})=>{let a=z(r,e),c=B(n.disabled)||B(t.disabled),l=!s.registerName.has(e)&&a&&a._f&&!a._f.mount;return H(r,e,{...a||{},_f:{...a&&a._f?a._f:{ref:{name:e}},name:e,mount:!0,...n}}),s.mount.add(e),a&&!l?Fe({disabled:B(n.disabled)?n.disabled:t.disabled,name:e}):E(e,!0,n.value),{...c?{disabled:n.disabled||t.disabled}:{},...t.progressive?{required:!!n.required,min:We(n.min),max:We(n.max),minLength:We(n.minLength),maxLength:We(n.maxLength),pattern:We(n.pattern)}:{},name:e,onChange:_e,onBlur:_e,ref:c=>{if(c){s.registerName.add(e),Ie(e,n),s.registerName.delete(e),a=z(r,e);let t=L(c.value)&&c.querySelectorAll&&c.querySelectorAll(`input,select,textarea`)[0]||c,o=ke(t),l=a._f.refs||[];if(o?l.find(e=>e===t):t===a._f.ref)return;H(r,e,{_f:{...a._f,...o?{refs:[...l.filter(Ae),t,...Array.isArray(z(i,e))?[{}]:[]],ref:{type:t.type,name:e}}:{ref:t}}}),E(e,!1,void 0,t)}else a=z(r,e,{}),a._f&&(a._f.mount=!1),(t.shouldUnregister||n.shouldUnregister)&&!(ne(s.array,e)&&o.action)&&s.unMount.add(e)}}},Le=()=>t.shouldFocusError&&!t.shouldUseNativeValidation&&Xe(r,ve,s.mount),Re=e=>{B(e)&&(g.state.next({disabled:e}),Xe(r,(t,n)=>{let i=z(r,n);i&&(t.disabled=i._f.disabled||e,Array.isArray(i._f.refs)&&i._f.refs.forEach(t=>{t.disabled=i._f.disabled||e}))},0,!1))},Be=(e,i)=>async o=>{let c;o&&(o.preventDefault&&o.preventDefault(),o.persist&&o.persist());let l=N(a);if(g.state.next({isSubmitting:!0}),t.resolver){let{errors:e,values:t}=await M();b(),n.errors=e,l=N(t)}else await R({fields:r,eventType:P.SUBMIT});if(s.disabled.size)for(let e of s.disabled)Y(l,e);if(Y(n.errors,ie),J(n.errors)){g.state.next({errors:{}});try{await e(l,o)}catch(e){c=e}}else i&&await i({...n.errors},o),Le(),setTimeout(Le);if(g.state.next({isSubmitted:!0,isSubmitting:!1,isSubmitSuccessful:J(n.errors)&&!c,submitCount:n.submitCount+1,errors:n.errors}),c)throw c},Ve=(e,t={})=>{z(r,e)&&(L(t.defaultValue)?K(e,N(z(i,e))):(K(e,t.defaultValue),H(i,e,N(t.defaultValue))),t.keepTouched||Y(n.touchedFields,e),t.keepDirty||(Y(n.dirtyFields,e),n.isDirty=t.defaultValue?U(e,N(z(i,e))):U()),t.keepError||(Y(n.errors,e),m.isValid&&y()),g.state.next({...n}))},Q=(e,c={})=>{let l=e?N(e):i,u=N(l),d=J(e),f=u;if(c.keepDefaultValues||(i=l),!c.keepValues){if(c.keepDirtyValues){let e=new Set([...s.mount,...Object.keys(Z(i,a))]);for(let t of Array.from(e)){let e=z(n.dirtyFields,t),r=z(a,t),i=z(f,t);e&&!L(r)?H(f,t,r):!e&&!L(i)&&K(t,i)}}else{if(re&&L(e))for(let e of s.mount){let t=z(r,e);if(t&&t._f){let e=Array.isArray(t._f.refs)?t._f.refs[0]:t._f.ref;if(Ee(e)){let t=e.closest(`form`);if(t){t.reset();break}}}}if(c.keepFieldsRef)for(let e of s.mount)K(e,z(f,e));else r={}}if(t.shouldUnregister){if(a=c.keepDefaultValues?N(i):{},c.keepFieldsRef)for(let e of s.mount)H(a,e,z(f,e))}else a=N(f);g.array.next({values:{...f}}),g.state.next({values:{...f}})}s={mount:c.keepDirtyValues?s.mount:new Set,unMount:new Set,array:new Set,registerName:new Set,disabled:new Set,watch:new Set,watchAll:!1,focus:``},o.mount=!m.isValid||!!c.keepIsValid||!!c.keepDirtyValues||!t.shouldUnregister&&!J(f),o.watch=!!t.shouldUnregister,o.keepIsValid=!!c.keepIsValid,o.action=!1,c.keepErrors||(n.errors={}),g.state.next({submitCount:c.keepSubmitCount?n.submitCount:0,isDirty:d?!1:c.keepDirty?n.isDirty:c.keepValues?U():!!(c.keepDefaultValues&&!G(e,i)),isSubmitted:c.keepIsSubmitted?n.isSubmitted:!1,dirtyFields:d?{}:c.keepDirtyValues?c.keepDefaultValues&&a?Z(i,a):n.dirtyFields:c.keepDefaultValues&&e?Z(i,e):c.keepDirty?n.dirtyFields:{},touchedFields:c.keepTouched?n.touchedFields:{},errors:c.keepErrors?n.errors:{},isSubmitSuccessful:c.keepIsSubmitSuccessful?n.isSubmitSuccessful:!1,isSubmitting:!1,defaultValues:i})},Ke=(e,n)=>Q(V(e)?e(a):e,{...t.resetOptions,...n}),rt=(e,t={})=>{let n=z(r,e),i=n&&n._f;if(i){let e=i.refs?i.refs[0]:i.ref;e.focus&&setTimeout(()=>{e.focus(),t.shouldSelect&&V(e.select)&&e.select()})}},$=e=>{n={...n,...e}},ct={control:{register:Ie,unregister:X,getFieldState:q,handleSubmit:Be,setError:je,_subscribe:Ne,_runSchema:M,_updateIsValidating:b,_focusError:Le,_getWatch:ue,_getDirty:U,_setValid:y,_setFieldArray:S,_setDisabledField:Fe,_setErrors:w,_getFieldArray:de,_reset:Q,_resetDefaultValues:()=>V(t.defaultValues)&&t.defaultValues().then(e=>{Ke(e,t.resetOptions),g.state.next({isLoading:!1})}),_removeUnmounted:le,_disableForm:Re,_subjects:g,_proxyFormState:m,get _fields(){return r},get _formValues(){return a},get _state(){return o},set _state(e){o=e},get _defaultValues(){return i},get _names(){return s},set _names(e){s=e},get _formState(){return n},get _options(){return t},set _options(e){t={...t,...e},d=Ge(t.mode),f=Ge(t.reValidateMode)}},subscribe:Pe,trigger:ye,register:Ie,handleSubmit:Be,watch:Me,setValue:K,setValues:ge,getValues:be,reset:Ke,resetField:Ve,resetDefaultValues:(e,t={})=>{if(i=N(e),!t.keepDirty){let e=Z(i,a);n.dirtyFields=e,n.isDirty=!J(e)}t.keepIsValid||y(),g.state.next({...n,defaultValues:i})},clearErrors:Oe,unregister:X,setError:je,setFocus:rt,getFieldState:q};return{...ct,formControl:ct}}function lt(e={}){let t=D.useRef(void 0),n=D.useRef(void 0),r=D.useRef(e.formControl),[i,a]=D.useState(()=>({...N(st),isLoading:V(e.defaultValues),errors:e.errors||{},disabled:e.disabled||!1,defaultValues:V(e.defaultValues)?void 0:e.defaultValues}));if(!t.current||e.formControl&&r.current!==e.formControl)if(r.current=e.formControl,e.formControl)t.current={...e.formControl,formState:i},e.defaultValues&&!V(e.defaultValues)&&e.formControl.reset(e.defaultValues,e.resetOptions);else{let{formControl:n,...r}=ct(e);t.current={...r,formState:i}}let o=t.current.control;return o._options=e,de(()=>{let e=o._subscribe({formState:o._proxyFormState,callback:()=>a({...o._formState,defaultValues:o._defaultValues}),reRenderRoot:!0});return a(e=>({...e,isReady:!0})),o._formState.isReady=!0,e},[o]),D.useEffect(()=>o._disableForm(e.disabled),[o,e.disabled]),D.useEffect(()=>{e.mode&&(o._options.mode=e.mode),e.reValidateMode&&(o._options.reValidateMode=e.reValidateMode)},[o,e.mode,e.reValidateMode]),D.useEffect(()=>{e.errors&&(o._setErrors(e.errors),o._focusError())},[o,e.errors]),D.useEffect(()=>{e.shouldUnregister&&o._subjects.state.next({values:o._getWatch()})},[o,e.shouldUnregister]),D.useEffect(()=>{if(o._proxyFormState.isDirty){let e=o._getDirty();e!==i.isDirty&&o._subjects.state.next({isDirty:e})}},[o,i.isDirty]),D.useEffect(()=>{e.values&&!G(e.values,n.current)?(o._reset(e.values,{keepFieldsRef:!0,...o._options.resetOptions}),o._options.resetOptions?.keepIsValid||o._setValid(),n.current=e.values,a(e=>({...e}))):o._resetDefaultValues()},[o,e.values]),D.useEffect(()=>{o._state.mount||(o._setValid(),o._state.mount=!0),o._state.watch&&(o._state.watch=!1,o._subjects.state.next({...o._formState})),o._removeUnmounted()}),t.current.formState=D.useMemo(()=>ue(i,o),[o,i]),t.current}var ut=be,dt=D.createContext({}),ft=({...e})=>(0,E.jsx)(dt.Provider,{value:{name:e.name},children:(0,E.jsx)(_e,{...e})}),pt=()=>{let e=D.useContext(dt),t=D.useContext(mt),{getFieldState:n,formState:r}=ye(),i=n(e.name,r);if(!e)throw Error(`useFormField should be used within <FormField>`);let{id:a}=t;return{id:a,name:e.name,formItemId:`${a}-form-item`,formDescriptionId:`${a}-form-item-description`,formMessageId:`${a}-form-item-message`,...i}},mt=D.createContext({}),ht=D.forwardRef(({className:e,...t},n)=>{let r=D.useId();return(0,E.jsx)(mt.Provider,{value:{id:r},children:(0,E.jsx)(`div`,{ref:n,className:i(`space-y-2`,e),...t})})});ht.displayName=`FormItem`;var gt=D.forwardRef(({className:e,...t},n)=>{let{formItemId:r}=pt();return(0,E.jsx)(l,{ref:n,className:e,htmlFor:r,...t})});gt.displayName=`FormLabel`;var _t=D.forwardRef(({...e},t)=>{let{error:n,formItemId:r,formDescriptionId:i,formMessageId:o}=pt();return(0,E.jsx)(a,{ref:t,"aria-describedby":n?`${i} ${o}`:`${i}`,"aria-invalid":!!n,id:r,...e})});_t.displayName=`FormControl`;var vt=D.forwardRef(({className:e,...t},n)=>{let{formDescriptionId:r}=pt();return(0,E.jsx)(`p`,{ref:n,className:i(`text-sm text-text-secondary`,e),id:r,...t})});vt.displayName=`FormDescription`;var yt=D.forwardRef(({className:e,children:t,...n},r)=>{let{error:a,formMessageId:o}=pt(),s=a?String(a?.message??``):t;return s?(0,E.jsx)(`p`,{ref:r,className:i(`text-xs text-destructive`,e),id:o,...n,children:s}):null});yt.displayName=`FormMessage`;var bt=(e,t,n)=>{if(e&&`reportValidity`in e){let r=z(n,t);e.setCustomValidity(r&&r.message||``),e.reportValidity()}},xt=(e,t)=>{for(let n in t.fields){let r=t.fields[n];r&&r.ref&&`reportValidity`in r.ref?bt(r.ref,n,e):r&&r.refs&&r.refs.forEach(t=>bt(t,n,e))}},St=(e,t)=>{t.shouldUseNativeValidation&&xt(e,t);let n={};for(let r in e){let i=z(t.fields,r),a=Object.assign(e[r]||{},{ref:i&&i.ref});if(Ct(t.names||Object.keys(e),r)){let e=Object.assign({},z(n,r));H(e,`root`,a),H(n,r,e)}else H(n,r,a)}return n},Ct=(e,t)=>{let n=wt(t).replace(/[.*+?^${}()|\\]/g,`\\$&`);return e.some(e=>wt(e).match(`^${n}\\.\\d+`))};function wt(e){return e.replace(/[\[\]]/g,``)}function Tt(){return Tt=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Tt.apply(null,arguments)}function Et(e,t){try{var n=e()}catch(e){return t(e)}return n&&n.then?n.then(void 0,t):n}function Dt(e,t){for(var n={};e.length;){var r=e[0],i=r.code,a=r.message,o=r.path.join(`.`);if(!n[o])if(`unionErrors`in r){var s=r.unionErrors[0].errors[0];n[o]={message:s.message,type:s.code}}else n[o]={message:a,type:i};if(`unionErrors`in r&&r.unionErrors.forEach(function(t){return t.errors.forEach(function(t){return e.push(t)})}),t){var c=n[o].types,l=c&&c[r.code];n[o]=q(o,t,n,i,l?[].concat(l,r.message):r.message)}e.shift()}return n}function Ot(e,t){for(var n={},r=function(){var r=e[0],i=r.code,a=r.message,o=r.path.join(`.`);if(!n[o])if(r.code===`invalid_union`&&r.errors.length>0){var s=r.errors[0][0];n[o]={message:s.message,type:s.code}}else n[o]={message:a,type:i};if(r.code===`invalid_union`&&r.errors.forEach(function(t){return t.forEach(function(t){return e.push(Tt({},t,{path:[].concat(r.path,t.path)}))})}),t){var c=n[o].types,l=c&&c[r.code];n[o]=q(o,t,n,i,l?[].concat(l,r.message):r.message)}e.shift()};e.length;)r();return n}function kt(e,t,n){if(n===void 0&&(n={}),function(e){return`_def`in e&&typeof e._def==`object`&&`typeName`in e._def}(e))return function(r,i,a){try{return Promise.resolve(Et(function(){return Promise.resolve(e[n.mode===`sync`?`parse`:`parseAsync`](r,t)).then(function(e){return a.shouldUseNativeValidation&&xt({},a),{errors:{},values:n.raw?Object.assign({},r):e}})},function(e){if(function(e){return Array.isArray(e?.issues)}(e))return{values:{},errors:St(Dt(e.errors,!a.shouldUseNativeValidation&&a.criteriaMode===`all`),a)};throw e}))}catch(e){return Promise.reject(e)}};if(function(e){return`_zod`in e&&typeof e._zod==`object`}(e))return function(r,i,a){try{return Promise.resolve(Et(function(){return Promise.resolve((n.mode===`sync`?h:d)(e,r,t)).then(function(e){return a.shouldUseNativeValidation&&xt({},a),{errors:{},values:n.raw?Object.assign({},r):e}})},function(e){if(function(e){return e instanceof m}(e))return{values:{},errors:St(Ot(e.issues,!a.shouldUseNativeValidation&&a.criteriaMode===`all`),a)};throw e}))}catch(e){return Promise.reject(e)}};throw Error(`Invalid input: not a Zod schema`)}var At=e=>{let t=document.createElement(`textarea`);return t.innerHTML=e,t.value},jt=f({profileImage:p().optional(),coverImage:p().optional(),name:p().nonempty({message:`Display name is required.`}).max(64,{message:`Display name must be less than 64 characters.`}),bio:p().max(250,{message:`Bio must be less than 250 characters.`}).optional()}),Mt=({account:e,setIsEditingProfile:t})=>{let[n,i]=(0,D.useState)(e.avatarUrl||null),a=(0,D.useRef)(null),[l,d]=(0,D.useState)(!1),[f,p]=(0,D.useState)(e.bannerImageUrl||null),m=(0,D.useRef)(null),[h,O]=(0,D.useState)(!1),[k,A]=(0,D.useState)(!1),{mutate:ee}=w(e?.handle||``),j=lt({resolver:kt(jt),defaultValues:{profileImage:e.avatarUrl,coverImage:e.bannerImageUrl||``,name:e.name,bio:e.bio?At(e.bio):``}}),te=!!j.formState.errors.name,ne=()=>{a.current?.click()},M=async e=>{try{return d(!0),await g(e)}catch(e){i(null),j.setValue(`profileImage`,``);let t=`Failed to upload image. Try again.`;if(e&&typeof e==`object`&&`statusCode`in e)switch(e.statusCode){case 413:t=`Image size exceeds limit.`;break;case 415:t=`The file type is not supported.`;break;default:}r.error(t)}finally{d(!1)}},re=async e=>{let t=e.target.files;if(t&&t.length>0){let n=t[0];if(n.size>5242880){r.error(C),e.target.value=``;return}if(!await _(n)){r.error(b),e.target.value=``;return}let a=URL.createObjectURL(n);i(a);let o=await M(n);j.setValue(`profileImage`,o)}},N=()=>{m.current?.click()},P=async e=>{try{return O(!0),await g(e)}catch(e){p(null),j.setValue(`coverImage`,``);let t=`Failed to upload image. Try again.`;if(e&&typeof e==`object`&&`statusCode`in e)switch(e.statusCode){case 413:t=`Image size exceeds limit.`;break;case 415:t=`The file type is not supported.`;break;default:}r.error(t)}finally{O(!1)}},F=async e=>{let t=e.target.files;if(t&&t.length>0){let n=t[0];if(n.size>5242880){r.error(C),e.target.value=``;return}let i=URL.createObjectURL(n);p(i);let a=await P(n);j.setValue(`coverImage`,a)}};function I(n){A(!0);let r=e.bio?At(e.bio):``;if(n.name===e.name&&n.bio===r&&n.profileImage===e.avatarUrl&&n.coverImage===e.bannerImageUrl){A(!1),t(!1);return}ee({name:n.name||e.name,username:T(e.handle).username||e.handle.replace(/^@/,``).split(`@`)[0],bio:n.bio??``,avatarUrl:n.profileImage||``,bannerImageUrl:n.coverImage||``},{onSettled(){A(!1),t(!1)}})}return(0,E.jsx)(ut,{...j,children:(0,E.jsxs)(`form`,{className:`flex flex-col gap-5`,onKeyDown:e=>{e.key===`Enter`&&!e.shiftKey&&(e.preventDefault(),j.handleSubmit(I)())},onSubmit:j.handleSubmit(I),children:[(0,E.jsxs)(`div`,{className:`relative mb-2`,children:[(0,E.jsx)(`div`,{className:`group relative flex h-[180px] cursor-pointer items-center justify-center bg-gray-100 dark:bg-gray-950`,onClick:N,children:f?(0,E.jsxs)(E.Fragment,{children:[(0,E.jsx)(`img`,{className:`size-full object-cover ${h&&`opacity-10`}`,src:f}),h&&(0,E.jsx)(`div`,{className:`absolute leading-[0]`,children:(0,E.jsx)(v,{size:`md`})}),(0,E.jsx)(c,{className:`absolute top-3 right-3 size-8 bg-black/60 opacity-0 group-hover:opacity-100 hover:bg-black/80 dark:text-white`,onClick:e=>{e.stopPropagation(),p(null),j.setValue(`coverImage`,``)},children:(0,E.jsx)(o,{})})]}):(0,E.jsx)(c,{className:`pointer-events-none absolute right-3 bottom-3 bg-gray-200 group-hover:bg-gray-300 dark:bg-black/40 dark:text-white dark:group-hover:bg-black/60`,variant:`secondary`,children:`Upload cover image`})}),(0,E.jsx)(`div`,{className:`group absolute -bottom-10 left-4 flex size-20 cursor-pointer items-center justify-center rounded-full border-2 border-white bg-gray-100 dark:border-surface-elevated-2 dark:bg-gray-950`,onClick:ne,children:n?(0,E.jsxs)(E.Fragment,{children:[(0,E.jsx)(`img`,{className:`size-full rounded-full object-cover ${l&&`opacity-10`}`,src:n}),l&&(0,E.jsx)(`div`,{className:`absolute leading-[0]`,children:(0,E.jsx)(v,{size:`md`})}),(0,E.jsx)(c,{className:`absolute -top-2 -right-2 h-8 w-10 rounded-full bg-black/80 opacity-0 group-hover:opacity-100 hover:bg-black/90 dark:text-white`,onClick:e=>{e.stopPropagation(),i(null),j.setValue(`profileImage`,``)},children:(0,E.jsx)(o,{})})]}):(0,E.jsx)(s,{size:32,strokeWidth:1.5})})]}),(0,E.jsx)(ft,{control:j.control,name:`profileImage`,render:()=>(0,E.jsxs)(ht,{children:[(0,E.jsx)(_t,{children:(0,E.jsx)(y,{ref:a,accept:`image/*`,className:`hidden`,type:`file`,onChange:re})}),(0,E.jsx)(yt,{})]})}),(0,E.jsx)(ft,{control:j.control,name:`coverImage`,render:()=>(0,E.jsxs)(ht,{children:[(0,E.jsx)(_t,{children:(0,E.jsx)(y,{ref:m,accept:`image/*`,className:`hidden`,type:`file`,onChange:F})}),(0,E.jsx)(yt,{})]})}),(0,E.jsx)(ft,{control:j.control,name:`name`,render:({field:e})=>(0,E.jsxs)(ht,{children:[(0,E.jsx)(gt,{children:`Display name`}),(0,E.jsx)(_t,{children:(0,E.jsx)(y,{placeholder:`Jamie Larson`,...e})}),!te&&(0,E.jsx)(vt,{children:`The name shown to your followers in the Inbox and Feed`}),(0,E.jsx)(yt,{})]})}),(0,E.jsx)(ft,{control:j.control,name:`bio`,render:({field:e})=>(0,E.jsxs)(ht,{children:[(0,E.jsx)(gt,{children:`Bio`}),(0,E.jsx)(_t,{children:(0,E.jsx)(u,{...e})}),(0,E.jsx)(yt,{})]})}),(0,E.jsxs)(x,{className:`max-sm:gap-2`,children:[(0,E.jsx)(S,{asChild:!0,children:(0,E.jsx)(c,{variant:`outline`,children:`Cancel`})}),(0,E.jsx)(c,{disabled:k||l||h,type:`submit`,children:`Save`})]})]})})};export{Mt as t};
|