ghost 6.68.0 → 6.69.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.
Files changed (300) hide show
  1. package/components/ghost-storage-base-3.0.1.tgz +0 -0
  2. package/components/tryghost-adapter-base-cache-0.2.1.tgz +0 -0
  3. package/components/tryghost-adapter-base-scheduling-0.2.5.tgz +0 -0
  4. package/components/tryghost-adapter-base-sso-0.1.4.tgz +0 -0
  5. package/components/tryghost-app-contracts-0.0.0.tgz +0 -0
  6. package/components/tryghost-checkout-0.0.0.tgz +0 -0
  7. package/components/tryghost-i18n-0.0.0.tgz +0 -0
  8. package/components/tryghost-kg-card-factory-5.2.6.tgz +0 -0
  9. package/components/tryghost-kg-clean-basic-html-4.3.6.tgz +0 -0
  10. package/components/tryghost-kg-converters-1.2.6.tgz +0 -0
  11. package/components/tryghost-kg-default-cards-10.3.7.tgz +0 -0
  12. package/components/tryghost-kg-default-nodes-2.2.3.tgz +0 -0
  13. package/components/tryghost-kg-default-transforms-1.3.6.tgz +0 -0
  14. package/components/tryghost-kg-html-to-lexical-1.4.1.tgz +0 -0
  15. package/components/tryghost-kg-lexical-html-renderer-1.5.1.tgz +0 -0
  16. package/components/tryghost-kg-markdown-html-renderer-7.2.7.tgz +0 -0
  17. package/components/tryghost-kg-utils-1.1.6.tgz +0 -0
  18. package/components/tryghost-metafield-csv-0.0.0.tgz +0 -0
  19. package/components/tryghost-metafield-types-0.1.1.tgz +0 -0
  20. package/core/boot.js +6 -0
  21. package/core/built/admin/assets/{about-D_nwtf7X.js → about-Dxp30cNg.js} +1 -1
  22. package/core/built/admin/assets/{account-migration-BaecWw1T.js → account-migration-D05akW4q.js} +1 -1
  23. package/core/built/admin/assets/activitypub/{account-migration-4saTEZ6p.js → account-migration-BmiwuzXI.js} +6 -6
  24. package/core/built/admin/assets/activitypub/activitypub.js +2 -2
  25. package/core/built/admin/assets/activitypub/{bluesky-sharing-BHBNuZQH.js → bluesky-sharing-B1fzMdFb.js} +6 -6
  26. package/core/built/admin/assets/activitypub/{content-formatters-DVx9YktY.js → content-formatters-G0qBT5QE.js} +3 -3
  27. package/core/built/admin/assets/activitypub/{domain-rAmlMXBC.js → domain-B3UtdA1m.js} +7 -7
  28. package/core/built/admin/assets/activitypub/{edit-profile-CXYL4ZrS.js → edit-profile-9EodzviR.js} +4 -4
  29. package/core/built/admin/assets/activitypub/{explore-dqpEx3GA.js → explore-DmwPdxHI.js} +8 -8
  30. package/core/built/admin/assets/activitypub/{feed-Cb-wYNw9.js → feed-yauqnu7A.js} +5 -5
  31. package/core/built/admin/assets/activitypub/{field-JxegcPt6.js → field-CsrMjbg2.js} +2 -2
  32. package/core/built/admin/assets/activitypub/{inbox-2hXDJBn5.js → inbox-DV3RrpFH.js} +7 -7
  33. package/core/built/admin/assets/activitypub/{label-DRQzZ7lb.js → label-DPs40NLn.js} +2 -2
  34. package/core/built/admin/assets/activitypub/layout-CvOhndCA.js +1 -0
  35. package/core/built/admin/assets/activitypub/{moderation-BnYKcTXY.js → moderation-DGa6hVNH.js} +7 -7
  36. package/core/built/admin/assets/activitypub/{note-C6ucS3Wu.js → note-BVL6LVHF.js} +5 -5
  37. package/core/built/admin/assets/activitypub/{notifications-DgBW9wEC.js → notifications-CRUu_uMC.js} +5 -5
  38. package/core/built/admin/assets/activitypub/{onboarding-DGu6yG4L.js → onboarding-Dpm-nLkQ.js} +2 -2
  39. package/core/built/admin/assets/activitypub/{onboarding-Bq3fNf_a.js → onboarding-KtpJA-xb.js} +2 -2
  40. package/core/built/admin/assets/activitypub/{preferences-C3jI1eVN.js → preferences-CdFuVqIt.js} +7 -7
  41. package/core/built/admin/assets/activitypub/{profile-Cn3vRb5Z.js → profile-KnNAoHYu.js} +8 -8
  42. package/core/built/admin/assets/activitypub/{routes-DbrwlS9h.js → routes-BRndai50.js} +26 -26
  43. package/core/built/admin/assets/activitypub/{settings-D0BALDQu.js → settings-DU7ftJ8w.js} +4 -4
  44. package/core/built/admin/assets/activitypub/{site-BFGj8HuQ.js → site-D1ZYV3AT.js} +2 -2
  45. package/core/built/admin/assets/activitypub/{step-1-CaoPg0a5.js → step-1-9IHheE78.js} +4 -4
  46. package/core/built/admin/assets/activitypub/{step-3-5k0TkyC9.js → step-3-DBERnfa-.js} +3 -3
  47. package/core/built/admin/assets/activitypub/{tabs-BV4JU7Vg.js → tabs-CvkwStij.js} +4 -4
  48. package/core/built/admin/assets/activitypub/{topic-filter-71sX5nfN.js → topic-filter-CS0Jsf_4.js} +2 -2
  49. package/core/built/admin/assets/activitypub/{use-activity-pub-queries-B3srUuKt.js → use-activity-pub-queries-CGgtQrxL.js} +2 -2
  50. package/core/built/admin/assets/activitypub/{use-reply-chain-data-Cl6bGNy7.js → use-reply-chain-data-CLdUpx1t.js} +4 -4
  51. package/core/built/admin/assets/activitypub/{users-EcSPpds5.js → users-CyoMXlwX.js} +11 -3
  52. package/core/built/admin/assets/{add-integration-modal-DBFzeAUT.js → add-integration-modal-BVg-ec8i.js} +1 -1
  53. package/core/built/admin/assets/{add-newsletter-modal-CYJe-dTC.js → add-newsletter-modal-Du6th521.js} +1 -1
  54. package/core/built/admin/assets/{add-recommendation-modal-CgwGKH-_.js → add-recommendation-modal-BiCJ0-q5.js} +1 -1
  55. package/core/built/admin/assets/{analytics-CcXT_WqF.js → analytics-CQJzDDdJ.js} +1 -1
  56. package/core/built/admin/assets/{announcement-bar-modal-Ldcg-PB-.js → announcement-bar-modal-CskyZLzT.js} +1 -1
  57. package/core/built/admin/assets/{api-BLteQZ7W.js → api-BFocMbDg.js} +2 -2
  58. package/core/built/admin/assets/{api-keys-CoeerpwI.js → api-keys-CqKJHuAV.js} +1 -1
  59. package/core/built/admin/assets/{audience-Deg9lzfk.js → audience-Dn7LuH-r.js} +1 -1
  60. package/core/built/admin/assets/{auth-layout-CRaMX7g6.js → auth-layout-VLhXgXn5.js} +1 -1
  61. package/core/built/admin/assets/{automated-emails-WcjjRkRV.js → automated-emails-D5cFl1wr.js} +1 -1
  62. package/core/built/admin/assets/{automations-CbIdX0rd.js → automations-BpweKEcq.js} +1 -1
  63. package/core/built/admin/assets/automations-DBTYwNTJ.js +1 -0
  64. package/core/built/admin/assets/{bluesky-sharing-BJMNRwnU.js → bluesky-sharing-CrfpFHQ9.js} +1 -1
  65. package/core/built/admin/assets/{chart-helpers-D-3N170i.js → chart-helpers-BSuFLd6-.js} +1 -1
  66. package/core/built/admin/assets/{chunk.524.94ab17e1199b4c3f4615.js → chunk.524.e24d68bc6253b274b726.js} +4 -4
  67. package/core/built/admin/assets/{chunk.582.6f09b19a007e2805824e.js → chunk.582.47834285406dfa1abb29.js} +6 -6
  68. package/core/built/admin/assets/{chunk.476.53b5794a67d68111e0bf.js → chunk.837.e1454abc054e1fba1fe5.js} +5 -5
  69. package/core/built/admin/assets/{code-editor-view-DhTwpxxv.js → code-editor-view-BrGe3eS4.js} +1 -1
  70. package/core/built/admin/assets/{code-editor-view-C7wXGiuv.js → code-editor-view-CY6JCXNv.js} +1 -1
  71. package/core/built/admin/assets/{color-picker-field-Cjz2zY11.js → color-picker-field-DGe9HH6W.js} +1 -1
  72. package/core/built/admin/assets/{comments-DY-VLVxh.js → comments-iRbF6XiJ.js} +1 -1
  73. package/core/built/admin/assets/{config-B3HuCo0y.js → config-CRAZ4Civ.js} +1 -1
  74. package/core/built/admin/assets/{content-api-modal-2jt-jWiM.js → content-api-modal-B-XRbzeW.js} +1 -1
  75. package/core/built/admin/assets/{content-formatters-VqvNA7Pv.js → content-formatters-C08JJbUJ.js} +2 -2
  76. package/core/built/admin/assets/{context-menu-BWbk9nd5.js → context-menu-BxGXsgQO.js} +1 -1
  77. package/core/built/admin/assets/{custom-field-type-option-CIatEwIN.js → custom-field-type-option-C8Nt4X6x.js} +1 -1
  78. package/core/built/admin/assets/{custom-integration-modal-Cw0w2Tb3.js → custom-integration-modal-DzI16qjN.js} +1 -1
  79. package/core/built/admin/assets/{date-range-select-O-uA-BRV.js → date-range-select-BZqsYsGx.js} +1 -1
  80. package/core/built/admin/assets/{design-and-theme-modal-BLjNHRYN.js → design-and-theme-modal-1ty_KEkM.js} +2 -2
  81. package/core/built/admin/assets/{dist-DJhCsld6.js → dist-B4jqKAG5.js} +1 -1
  82. package/core/built/admin/assets/{dist-5Ol0DC_t.js → dist-Bmo2j_KH.js} +1 -1
  83. package/core/built/admin/assets/{dist-p52UDdoR.js → dist-C-_aTlvJ.js} +1 -1
  84. package/core/built/admin/assets/{dist-CcN1a5SB.js → dist-CWHIoxYn.js} +1 -1
  85. package/core/built/admin/assets/{dist-BcfsaiCV.js → dist-Cp2M5TzT.js} +1 -1
  86. package/core/built/admin/assets/{dist-kjTYGivb.js → dist-DQAAPbtg.js} +1 -1
  87. package/core/built/admin/assets/{dist-IMek6Acg.js → dist-DyO279y5.js} +1 -1
  88. package/core/built/admin/assets/{domain-DaPAeOFF.js → domain-DiFl_Z1A.js} +1 -1
  89. package/core/built/admin/assets/{edit-profile-BKO5qonH.js → edit-profile-PrLbJV3P.js} +1 -1
  90. package/core/built/admin/assets/editor-BBJDJL8U.js +8 -0
  91. package/core/built/admin/assets/{editor-screen-l4BUPE2o.js → editor-screen-nblrp808.js} +3 -3
  92. package/core/built/admin/assets/{email-previews-B1Ska3CF.js → email-previews-BKJxrW29.js} +1 -1
  93. package/core/built/admin/assets/{email-sending-status-provider-Bjn5KTy2.js → email-sending-status-provider-DB9ylBWk.js} +1 -1
  94. package/core/built/admin/assets/{emails-qxNbhO6X.js → emails-8YiSmC2X.js} +1 -1
  95. package/core/built/admin/assets/{embed-signup-form-modal-DSgds6Js.js → embed-signup-form-modal-CZmbYKfd.js} +1 -1
  96. package/core/built/admin/assets/{error-boundary-CJODV8Rg.js → error-boundary-DrxPFFO-.js} +1 -1
  97. package/core/built/admin/assets/{esm-CNLDtBMc.js → esm-_iCUCvbN.js} +1 -1
  98. package/core/built/admin/assets/{explore-C6V_JpUZ.js → explore-C69LSRVg.js} +1 -1
  99. package/core/built/admin/assets/{feed-B_TyFn9E.js → feed-B_0m7WhZ.js} +1 -1
  100. package/core/built/admin/assets/{feedback-gKOzmiGt.js → feedback-DW1DXdzT.js} +1 -1
  101. package/core/built/admin/assets/{filters-Bf6E1qAP.js → filters-Dr3vMnjZ.js} +1 -1
  102. package/core/built/admin/assets/{filters-DhsiEotO.js → filters-M2sRWPoF.js} +1 -1
  103. package/core/built/admin/assets/{first-promoter-modal-LmTXHr-z.js → first-promoter-modal-D43R2zhI.js} +1 -1
  104. package/core/built/admin/assets/{focus-koenig-editor-on-bottom-click-BAcLNJti.js → focus-koenig-editor-on-bottom-click-BzS8jiJf.js} +1 -1
  105. package/core/built/admin/assets/fullscreen-close-button-CWSp-MsK.js +1 -0
  106. package/core/built/admin/assets/{ghost-63bc7da4336844000c523a5a0819531e.js → ghost-ffde29676517b768b1aef5ec8d492418.js} +93 -96
  107. package/core/built/admin/assets/{gift-link-modal-uZtwRHzl.js → gift-link-modal-CNE7dfPD.js} +1 -1
  108. package/core/built/admin/assets/{gift-links-HVqaXear.js → gift-links-lQ7H_D8Z.js} +1 -1
  109. package/core/built/admin/assets/global-search-modal-DzRM3aON.js +1 -0
  110. package/core/built/admin/assets/{growth-BlPW4DHj.js → growth-CAi_5HIf.js} +1 -1
  111. package/core/built/admin/assets/{growth-CflU3vR0.js → growth-CMHbTWKE.js} +1 -1
  112. package/core/built/admin/assets/history-modal-BIz13vhr.js +1 -0
  113. package/core/built/admin/assets/{hooks-C-BDQ6Hs.js → hooks-0r7qxGEo.js} +2 -2
  114. package/core/built/admin/assets/{html-field-D6G0G1d_.js → html-field-vTe2q1be.js} +1 -1
  115. package/core/built/admin/assets/{iframe-buffering-DW-Axhvc.js → iframe-buffering-cu-yK7NA.js} +1 -1
  116. package/core/built/admin/assets/{images-BSUWxquu.js → images-DTZtaIAr.js} +1 -1
  117. package/core/built/admin/assets/{inbox-BkU3sg13.js → inbox-BHfpmmzn.js} +1 -1
  118. package/core/built/admin/assets/{index-z8-nEVdb.css → index-B02LJqc8.css} +1 -1
  119. package/core/built/admin/assets/{index-CuDhPtkB.js → index-RuRs_qGS.js} +3 -3
  120. package/core/built/admin/assets/{index.es-H6HOI4DG.js → index.es-rdb1skp_.js} +1 -1
  121. package/core/built/admin/assets/{integrations-BRo5DwA5.js → integrations-Deg9-u8X.js} +1 -1
  122. package/core/built/admin/assets/{invite-user-modal-CydBOG99.js → invite-user-modal-C4DeNcoO.js} +1 -1
  123. package/core/built/admin/assets/koenig-lexical/koenig-lexical.js +10483 -10455
  124. package/core/built/admin/assets/koenig-lexical/koenig-lexical.umd.js +131 -131
  125. package/core/built/admin/assets/{koenig-lexical-CG_eb4dw.js → koenig-lexical-BhXu1__-.js} +96 -96
  126. package/core/built/admin/assets/{kpi-helpers-CyRx_yD6.js → kpi-helpers-H-Hl6h7h.js} +1 -1
  127. package/core/built/admin/assets/{kpi-tabs-V1_Nu9sh.js → kpi-tabs-k4A9-imn.js} +1 -1
  128. package/core/built/admin/assets/{label-picker-GTIIlBQ6.js → label-picker-DaivLdMw.js} +1 -1
  129. package/core/built/admin/assets/{labels-BVGLgdAj.js → labels-BCj6D_nl.js} +1 -1
  130. package/core/built/admin/assets/{layout-CG58T6P7.js → layout-_g2xhB0L.js} +1 -1
  131. package/core/built/admin/assets/{lib-Dkic19kH.js → lib-Bre6UXdJ.js} +2 -2
  132. package/core/built/admin/assets/{links-jD8AkkIu.js → links-C8RnEJVJ.js} +1 -1
  133. package/core/built/admin/assets/{member-activity-JggQ0VNQ.js → member-activity-DNJPUW5X.js} +1 -1
  134. package/core/built/admin/assets/{member-activity-feed-BBeCZmLM.js → member-activity-feed-CvKEetHS.js} +1 -1
  135. package/core/built/admin/assets/{member-custom-fields-DPsyP1Hq.js → member-custom-fields-CBdiwPD9.js} +1 -1
  136. package/core/built/admin/assets/{member-detail-D7qugPN7.js → member-detail-BIoyIIsl.js} +1 -1
  137. package/core/built/admin/assets/{members-Cj_BUZUL.js → members-CH6KeXQc.js} +1 -1
  138. package/core/built/admin/assets/{members-alDWPKDd.js → members-Dd9RczFK.js} +1 -1
  139. package/core/built/admin/assets/{migrate-2uKKakld.js → migrate-CVQIWsXO.js} +1 -1
  140. package/core/built/admin/assets/{moderation-pCUKsxbF.js → moderation-OtjZoNOc.js} +1 -1
  141. package/core/built/admin/assets/{navigation-modal-D0FBI5-m.js → navigation-modal-Bl02NjtO.js} +1 -1
  142. package/core/built/admin/assets/{newsletter-4urgCSR_.js → newsletter-BXyT7o69.js} +1 -1
  143. package/core/built/admin/assets/{newsletter-detail-modal-Chh1jvjH.js → newsletter-detail-modal-DxuKNu_1.js} +1 -1
  144. package/core/built/admin/assets/{newsletter-emails-CzVCiC2K.js → newsletter-emails-DicgmnMU.js} +1 -1
  145. package/core/built/admin/assets/{newsletters-eRQTtOBH.js → newsletters-By25FmUs.js} +1 -1
  146. package/core/built/admin/assets/{newsletters-BMEgeL2l.js → newsletters-CACa0VCx.js} +1 -1
  147. package/core/built/admin/assets/{note-dqog4Bua.js → note-CF4LrSmR.js} +1 -1
  148. package/core/built/admin/assets/{notifications-rcEVv-gx.js → notifications-BmHJmqIJ.js} +1 -1
  149. package/core/built/admin/assets/{offers-hV7zBtsI.js → offers-Df9Jzay5.js} +1 -1
  150. package/core/built/admin/assets/{offers-container-modal-DgZgkMsA.js → offers-container-modal-R0HRwugm.js} +1 -1
  151. package/core/built/admin/assets/{onboarding-4TxbZb90.js → onboarding-Bpo1yTzA.js} +1 -1
  152. package/core/built/admin/assets/{onboarding-SGscZLIc.js → onboarding-bMq3R8jB.js} +1 -1
  153. package/core/built/admin/assets/{onboarding-route-B3mN9l7E.js → onboarding-route-flf5YWti.js} +1 -1
  154. package/core/built/admin/assets/{overview-D4EanvDG.js → overview-C9WvmmOC.js} +1 -1
  155. package/core/built/admin/assets/{overview-CCwbHet8.js → overview-CDkHdIJM.js} +1 -1
  156. package/core/built/admin/assets/{page-header-Baymg6VR.js → page-header-CxTb0je5.js} +1 -1
  157. package/core/built/admin/assets/{pagemenu--UL0gW1x.js → pagemenu-DXr_U43J.js} +1 -1
  158. package/core/built/admin/assets/{pages-Cbq1M2kG.js → pages-Bm-zFXyP.js} +1 -1
  159. package/core/built/admin/assets/pages-route-LCw94aIO.js +1 -0
  160. package/core/built/admin/assets/{pintura-modal-D6HGlnJa.js → pintura-modal-B5sIPWcj.js} +1 -1
  161. package/core/built/admin/assets/{portal-modal-Bhqsevn_.js → portal-modal-DjOO3Unv.js} +1 -1
  162. package/core/built/admin/assets/{post-analytics-header-DX9fETdi.js → post-analytics-header-D2anehCj.js} +1 -1
  163. package/core/built/admin/assets/{post-analytics-provider-U7RtOle1.js → post-analytics-provider-BLQvV5C0.js} +1 -1
  164. package/core/built/admin/assets/{post-analytics-BJWDtC3a.js → post-analytics-wdu9gq8u.js} +1 -1
  165. package/core/built/admin/assets/{post-debug-D1b8Amju.js → post-debug-BnABXMfD.js} +1 -1
  166. package/core/built/admin/assets/{posts-Lg-p_ZHg.js → posts-CftunZgV.js} +1 -1
  167. package/core/built/admin/assets/{posts-list-screen-CmsW18e_.js → posts-list-screen-CwXmvY68.js} +2 -2
  168. package/core/built/admin/assets/posts-route-J74fMhCe.js +1 -0
  169. package/core/built/admin/assets/{preferences-CMlDfHfa.js → preferences-DFhf_pJF.js} +1 -1
  170. package/core/built/admin/assets/{preview-modal-D8om_cQv.js → preview-modal-BrZza3R_.js} +1 -1
  171. package/core/built/admin/assets/{profile-yFsIoZom.js → profile-CS4fP60N.js} +1 -1
  172. package/core/built/admin/assets/{radio-group-DwgLjwWB.js → radio-group-Xfp-frJz.js} +1 -1
  173. package/core/built/admin/assets/{referrers-DzP5QoXL.js → referrers-C8LJlrBm.js} +1 -1
  174. package/core/built/admin/assets/{reload-CZ-KP3IQ.js → reload-D0fnKoCm.js} +1 -1
  175. package/core/built/admin/assets/{reset-CCAa8v35.js → reset-CB-ATcLE.js} +1 -1
  176. package/core/built/admin/assets/{restore-screen-Ba0i2Y1K.js → restore-screen-EaZf4V8j.js} +1 -1
  177. package/core/built/admin/assets/{routes-DrnhmKTT.js → routes-DKfpFMfF.js} +2 -2
  178. package/core/built/admin/assets/search-index-sM3OjEUl.js +1 -0
  179. package/core/built/admin/assets/settings-BWzod-5X.js +4 -0
  180. package/core/built/admin/assets/{settings-lqWkfSmT.js → settings-DvgngbFt.js} +1 -1
  181. package/core/built/admin/assets/{setup-BopRPuaM.js → setup-CdHAchG5.js} +1 -1
  182. package/core/built/admin/assets/{signin-e8NgsU9M.js → signin-CUEEme88.js} +1 -1
  183. package/core/built/admin/assets/{signin-verify-CHkFJevb.js → signin-verify-CYRphSrj.js} +1 -1
  184. package/core/built/admin/assets/{signout-DRvQZuWa.js → signout-kLCJau9G.js} +1 -1
  185. package/core/built/admin/assets/{signup-DQHi7jZz.js → signup-J2Vjq7Gt.js} +1 -1
  186. package/core/built/admin/assets/{slack-modal-BuGESzgn.js → slack-modal-DKamr_94.js} +1 -1
  187. package/core/built/admin/assets/source-icon-DqBCPDIK.js +1 -0
  188. package/core/built/admin/assets/{stats-CHOikfoP.js → stats-BL_FJ7Ns.js} +1 -1
  189. package/core/built/admin/assets/{stats-view-DQZzKeEz.js → stats-view-BwbdkdOQ.js} +1 -1
  190. package/core/built/admin/assets/{step-1-C8XwHcKt.js → step-1-CLYhNmG9.js} +1 -1
  191. package/core/built/admin/assets/{step-2-BXaXAdwY.js → step-2-B2ujMlpa.js} +1 -1
  192. package/core/built/admin/assets/{step-3-DytbqpJi.js → step-3-DoaTWqqj.js} +1 -1
  193. package/core/built/admin/assets/{stripe-connect-modal-BhudjSeO.js → stripe-connect-modal-DytxH9DJ.js} +1 -1
  194. package/core/built/admin/assets/{tabs-CDb_TceL.js → tabs-fHs3A8WC.js} +1 -1
  195. package/core/built/admin/assets/{tag-detail-V72Zlro8.js → tag-detail-BcO46Ids.js} +2 -2
  196. package/core/built/admin/assets/{tag-picker-M3fC-yOF.js → tag-picker-Ct6NeqWK.js} +1 -1
  197. package/core/built/admin/assets/{tags-CXqE2A2T.js → tags-C1h3wCpW.js} +1 -1
  198. package/core/built/admin/assets/{tags-ZhqbPPc6.js → tags-OlmRJ6Ps.js} +1 -1
  199. package/core/built/admin/assets/{testimonials-modal-Cn8gvIFA.js → testimonials-modal-DMsQzSCB.js} +1 -1
  200. package/core/built/admin/assets/{themes-pOHHvnkt.js → themes-CPJSMo_W.js} +1 -1
  201. package/core/built/admin/assets/{tier-detail-modal-CeDla1OO.js → tier-detail-modal-DssSmhkF.js} +1 -1
  202. package/core/built/admin/assets/{tiers-D7aGzwZ-.js → tiers-DlvS8D6_.js} +1 -1
  203. package/core/built/admin/assets/{toggle-group-D7ly9OGa.js → toggle-group-BFWCtH3p.js} +1 -1
  204. package/core/built/admin/assets/{topic-filter-DQ3pr6AB.js → topic-filter-DAJ-DFPb.js} +1 -1
  205. package/core/built/admin/assets/{transistor-modal-4_Yx2vRo.js → transistor-modal-CtyFRsD0.js} +1 -1
  206. package/core/built/admin/assets/{unsplash-modal-Dm7R4k4k.js → unsplash-modal-DHnnTPmZ.js} +1 -1
  207. package/core/built/admin/assets/{use-activity-pub-queries-Gy9_locM.js → use-activity-pub-queries-BgR1USeY.js} +1 -1
  208. package/core/built/admin/assets/{use-analytics-data-oJ2o0pSS.js → use-analytics-data-Byf83QE-.js} +1 -1
  209. package/core/built/admin/assets/{use-availability-BqL7Dvn_.js → use-availability-CgZC6L_V.js} +1 -1
  210. package/core/built/admin/assets/{use-check-theme-limit-error-CxC9uKJz.js → use-check-theme-limit-error-DjprzKAN.js} +1 -1
  211. package/core/built/admin/assets/use-definitions-CJuXLSob.js +1 -0
  212. package/core/built/admin/assets/{use-email-sending-status-BFAg5TIb.js → use-email-sending-status-7kopNcza.js} +1 -1
  213. package/core/built/admin/assets/{use-filter-params-BOo9yZ5j.js → use-filter-params-DQ7uX-Zp.js} +1 -1
  214. package/core/built/admin/assets/{use-filterable-api-BnNLaS_r.js → use-filterable-api-CDrrxoGD.js} +1 -1
  215. package/core/built/admin/assets/{use-growth-stats-BS62uyyn.js → use-growth-stats-CCpnBgqS.js} +1 -1
  216. package/core/built/admin/assets/{use-host-limits-CNh4AAEs.js → use-host-limits-BZx7rzRI.js} +1 -1
  217. package/core/built/admin/assets/{use-limiter-DPKxoO1_.js → use-limiter-gF219BEg.js} +1 -1
  218. package/core/built/admin/assets/{use-pintura-config-CyVO62ZV.js → use-pintura-config-D-pmGkn2.js} +1 -1
  219. package/core/built/admin/assets/{use-pintura-editor-B5VBPbiO.js → use-pintura-editor-D_4zhlGE.js} +1 -1
  220. package/core/built/admin/assets/{use-post-referrers-nUPolSk7.js → use-post-referrers-Bc8eq4uy.js} +1 -1
  221. package/core/built/admin/assets/{use-post-top-links-DCH4eO11.js → use-post-top-links-DjltnQuI.js} +1 -1
  222. package/core/built/admin/assets/{use-reply-chain-data-UMzFbDvh.js → use-reply-chain-data-BiV3Cl0B.js} +1 -1
  223. package/core/built/admin/assets/use-sending-eta-gE-2B0Zw.js +1 -0
  224. package/core/built/admin/assets/{use-setting-group-Bf3vY8br.js → use-setting-group-YP84CqrJ.js} +1 -1
  225. package/core/built/admin/assets/{use-staff-users-CcQzTHqH.js → use-staff-users-CnwfdSx1.js} +1 -1
  226. package/core/built/admin/assets/{use-tinybird-query-CPy5ipAP.js → use-tinybird-query-BYbl5gKY.js} +1 -1
  227. package/core/built/admin/assets/{use-tinybird-token-DVNHuhu_.js → use-tinybird-token-Dz37zvb7.js} +1 -1
  228. package/core/built/admin/assets/{use-unsaved-changes-guard-Bvcp_Rny.js → use-unsaved-changes-guard-BkCuSlvU.js} +1 -1
  229. package/core/built/admin/assets/{use-upgrade-route-Bsxw9ZLN.js → use-upgrade-route-C-V-Xfak.js} +1 -1
  230. package/core/built/admin/assets/{use-url-input-DPJ592FB.js → use-url-input-BeYKYMGh.js} +1 -1
  231. package/core/built/admin/assets/{user-detail-modal-6UY6GdNy.js → user-detail-modal-CSoj7vOC.js} +1 -1
  232. package/core/built/admin/assets/{users-CzgQKbfO.js → users-CKJaAxEJ.js} +1 -1
  233. package/core/built/admin/assets/{view-site-DA_-zfGq.js → view-site-SpMx4P7G.js} +1 -1
  234. package/core/built/admin/assets/{web-Cq5YiD2r.js → web-CZf-k4F0.js} +1 -1
  235. package/core/built/admin/assets/{web-DqFIrOxt.js → web-uAqgYPK9.js} +1 -1
  236. package/core/built/admin/assets/{zapier-modal-DgqU-OBB.js → zapier-modal-DENbgTyE.js} +1 -1
  237. package/core/built/admin/index.html +24 -24
  238. package/core/frontend/helpers/color_to_rgba.js +15 -13
  239. package/core/frontend/helpers/facebook_url.js +27 -15
  240. package/core/frontend/services/assets-minification/card-assets.js +1 -1
  241. package/core/frontend/services/helpers/register-ghost-helpers.js +2 -2
  242. package/core/server/api/endpoints/app-installations.js +36 -0
  243. package/core/server/api/endpoints/automations.js +1 -1
  244. package/core/server/api/endpoints/index.js +4 -0
  245. package/core/server/data/exporter/table-lists.js +2 -0
  246. package/core/server/data/migrations/versions/6.69/2026-10-07-06-20-43-add-app-installation-permissions.js +40 -0
  247. package/core/server/data/schema/fixtures/fixtures.json +21 -0
  248. package/core/server/data/schema/in-development.js +1 -1
  249. package/core/server/data/schema/schema.js +53 -0
  250. package/core/server/lib/after-commit.js +20 -0
  251. package/core/server/models/action.js +6 -0
  252. package/core/server/services/app-installations/actions.js +44 -0
  253. package/core/server/services/app-installations/codec.js +20 -0
  254. package/core/server/services/app-installations/index.js +42 -0
  255. package/core/server/services/app-installations/schema.js +52 -0
  256. package/core/server/services/app-installations/service.js +160 -0
  257. package/core/server/services/automations/README.md +3 -3
  258. package/core/server/services/automations/automations-api.js +1 -1
  259. package/core/server/services/comments/comments-service-emails.js +8 -6
  260. package/core/server/services/email-service/README.md +16 -0
  261. package/core/server/services/email-service/email-service-wrapper.js +1 -0
  262. package/core/server/services/email-service/email-service.js +94 -53
  263. package/core/server/services/email-service/sending-status-serializers.js +4 -1
  264. package/core/server/services/email-service/sending-status-service.js +13 -0
  265. package/core/server/services/email-service/sending-status.js +12 -1
  266. package/core/server/services/members/members-api/repositories/member-repository.js +5 -23
  267. package/core/server/services/posts/post-email-handler.js +61 -28
  268. package/core/server/services/posts/posts-service.js +27 -2
  269. package/core/server/services/service-inventory.yaml +93 -7
  270. package/core/server/services/stats/stats-service.js +1 -5
  271. package/core/server/services/tinybird-sync/index.js +0 -3
  272. package/core/server/services/tinybird-sync/tinybird-sync-service.js +2 -6
  273. package/core/server/web/api/endpoints/admin/routes.js +25 -12
  274. package/core/shared/labs.js +4 -6
  275. package/package.json +11 -10
  276. package/pnpm-lock.yaml +112 -100
  277. package/pnpm-workspace.yaml +14 -12
  278. package/components/ghost-storage-base-3.0.0.tgz +0 -0
  279. package/components/tryghost-adapter-base-cache-0.2.0.tgz +0 -0
  280. package/components/tryghost-checkout-0.0.1.tgz +0 -0
  281. package/components/tryghost-kg-card-factory-5.2.4.tgz +0 -0
  282. package/components/tryghost-kg-clean-basic-html-4.3.4.tgz +0 -0
  283. package/components/tryghost-kg-converters-1.2.5.tgz +0 -0
  284. package/components/tryghost-kg-default-transforms-1.3.4.tgz +0 -0
  285. package/components/tryghost-kg-html-to-lexical-1.4.0.tgz +0 -0
  286. package/components/tryghost-kg-markdown-html-renderer-7.2.6.tgz +0 -0
  287. package/components/tryghost-kg-utils-1.1.4.tgz +0 -0
  288. package/components/tryghost-metafield-csv-0.0.1.tgz +0 -0
  289. package/core/built/admin/assets/activitypub/layout-QTbY0t8e.js +0 -1
  290. package/core/built/admin/assets/automations-DVToctfJ.js +0 -1
  291. package/core/built/admin/assets/editor-CMXR0YvR.js +0 -8
  292. package/core/built/admin/assets/fullscreen-close-button-DXssPeDB.js +0 -1
  293. package/core/built/admin/assets/global-search-modal-C8LVJmiz.js +0 -1
  294. package/core/built/admin/assets/history-modal-parBtjpz.js +0 -1
  295. package/core/built/admin/assets/pages-route-CDk3V9rq.js +0 -1
  296. package/core/built/admin/assets/posts-route-CexHhklY.js +0 -1
  297. package/core/built/admin/assets/settings-xqakrAWa.js +0 -4
  298. package/core/built/admin/assets/source-icon-BjVangBd.js +0 -1
  299. package/core/built/admin/assets/use-definitions-DMVU3mTG.js +0 -1
  300. package/core/built/admin/assets/use-sending-eta-BsnKdQhv.js +0 -1
@@ -1,5 +1,5 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./dist-p52UDdoR.js","./dist-tI811Kyl.js","./dist-DJhCsld6.js","./dist-5Ol0DC_t.js","./react-C9lG_SsT.js","./dist-CcN1a5SB.js","./esm-CNLDtBMc.js","./jsx-runtime-Bm2_KH-0.js"])))=>i.map(i=>d[i]);
2
- (function(){try{var e=typeof window<`u`?window:typeof global<`u`?global:typeof globalThis<`u`?globalThis:typeof self<`u`?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]=`cb38e873-feca-4810-9d1b-d059b5e65f6f`,e._sentryDebugIdIdentifier=`sentry-dbid-cb38e873-feca-4810-9d1b-d059b5e65f6f`)}catch{}})();import{s as e,t}from"./react-C9lG_SsT.js";import{t as n}from"./react-dom-t7VxfrkA.js";import{N as r,P as i,i as a,m as o,r as s}from"./framework-provider-CIvHFnik.js";import{A as c,C as l,E as u,N as d,O as f,S as p,T as m,_ as h,b as g,c as _,g as v,l as y,n as b,o as x,t as S,u as C,w,x as T,y as E}from"./hooks-C-BDQ6Hs.js";import{t as D}from"./jsx-runtime-Bm2_KH-0.js";import{A as O,C as k,D as A,E as j,O as M,T as N,j as P,k as F,n as I,w as ee,y as L}from"./members-Cj_BUZUL.js";import{n as R}from"./dist-pogVoW2G.js";import{i as z,n as te,r as ne,t as re}from"./focus-koenig-editor-on-bottom-click-BAcLNJti.js";import{c as ie,l as ae,n as oe,p as B,t as se,u as ce}from"./posts-Lg-p_ZHg.js";import{i as le,r as ue,s as de,t as fe}from"./config-B3HuCo0y.js";import{t as pe}from"./preload-helper-Ba4JejZL.js";import{f as V,h as me,u as H}from"./chunk-OB3PAWPO-D3muQBsq.js";import{a as he,t as ge}from"./router-provider-Cf-bcYZr.js";import{H as _e,J as ve,L as U,a as ye,i as be,n as xe,r as Se,s as Ce}from"./shade-provider-DvrXKKQZ.js";import{t as we}from"./box-BOIwAOVT.js";import{t as Te}from"./grid-BYJO9x_v.js";import{t as W}from"./inline-Qoyy4r2g.js";import{t as G}from"./stack-C3OmgpUv.js";import{t as K}from"./text-BnCSdzao.js";import{i as Ee}from"./api-BLteQZ7W.js";import{C as De,Ct as Oe,D as ke,E as Ae,Fr as je,Kt as Me,Ln as Ne,Mn as Pe,Nn as Fe,Qt as Ie,Vn as Le,Wn as Re,X as ze,Y as Be,Zn as Ve,ar as He,dt as Ue,et as We,gr as Ge,hn as Ke,in as qe,jn as Je,jr as Ye,l as Xe,n as Ze,nn as Qe,nt as $e,on as et,rr as tt,t as q,v as nt,yt as rt}from"./button-CTHYSI-d.js";import{i as it,o as at}from"./es2015-8TGMBpHz.js";import{a as ot,c as st,i as ct,l as lt,n as ut,o as dt,r as ft,s as pt,t as mt}from"./alert-dialog-CAPLqwVs.js";import{t as ht}from"./avatar-YbECDnBI.js";import{t as gt}from"./badge-DuMiqyUH.js";import{t as _t}from"./calendar-BPNNrGa9.js";import{t as vt}from"./use-limiter-DPKxoO1_.js";import{t as yt}from"./checkbox-DN_wUAjb.js";import{a as bt,i as xt,n as St,o as Ct,r as wt,t as Tt}from"./lib-Dkic19kH.js";import{a as Et,i as Dt,o as Ot,r as kt,s as At,t as jt}from"./dialog-BO1lcy8A.js";import{a as Mt,i as Nt,n as Pt,t as Ft}from"./popover-r_3DwMi9.js";import{t as It}from"./empty-indicator-BhVwqSVH.js";import{t as Lt}from"./label-CxXFmzcd.js";import{a as Rt,i as zt,o as Bt,t as Vt}from"./field-DCPPrQDr.js";import{a as Ht,c as Ut,i as Wt,n as Gt,o as Kt,r as qt,s as Jt,t as Yt}from"./images-BSUWxquu.js";import{t as Xt}from"./input-BHb2A_DU.js";import{i as Zt,n as Qt,r as $t,t as en}from"./input-group-DL5EFP5r.js";import{n as tn}from"./loading-indicator-DaRyGrxv.js";import{t as nn}from"./page-header-Baymg6VR.js";import{t as rn}from"./preview-chrome-Dcu3p6mp.js";import{n as an,t as on}from"./radio-group-DwgLjwWB.js";import{a as sn,i as cn,n as ln,o as un,r as dn,s as fn,t as pn}from"./select-DeloOYCg.js";import{t as mn}from"./switch-BppWscjz.js";import{i as hn,r as gn,t as _n}from"./tabs-CDb_TceL.js";import{t as vn}from"./textarea-B_rfKtjs.js";import{n as yn,t as bn}from"./toggle-group-D7ly9OGa.js";import{t as xn}from"./google-logo-IGBgqBWI.js";import{p as Sn,u as Cn}from"./label-picker-GTIIlBQ6.js";import{t as wn}from"./list-return-state-B91WMz_J.js";import{c as Tn}from"./content-formatters-VqvNA7Pv.js";import{c as En,d as Dn,f as On,l as kn,o as An,s as jn,t as Mn,u as Nn}from"./users-CzgQKbfO.js";import{n as Pn}from"./index.module-CnPepLB9.js";import{a as Fn,d as J,f as In,g as Y,i as Ln,o as Rn,p as zn,r as Bn,v as Vn,y as Hn}from"./schemas-21VB7GGY.js";import{r as Un}from"./newsletters-BMEgeL2l.js";import{t as Wn}from"./use-pintura-config-CyVO62ZV.js";import{t as Gn}from"./labels-BVGLgdAj.js";import{t as Kn}from"./dirty-confirm-dialog-CdxPMCA8.js";import{c as qn,l as Jn,n as Yn,t as Xn,u as Zn}from"./pages-Cbq1M2kG.js";import{a as Qn,r as $n}from"./tiers-D7aGzwZ-.js";import{c as er,l as tr,o as nr}from"./themes-pOHHvnkt.js";import{l as rr,o as ir,s as ar,t as or}from"./reload-CZ-KP3IQ.js";import{$t as sr,B as cr,F as lr,Ht as ur,I as dr,Kt as fr,P as pr,Qt as mr,Ut as hr,Vt as gr,at as _r,c as vr,ct as yr,d as br,ft as xr,g as Sr,h as Cr,it as wr,l as Tr,n as Er,s as Dr,st as Or,ut as kr,v as Ar,vt as jr,zt as Mr}from"./index-CuDhPtkB.js";import{t as Nr}from"./validator-DgUCXsE8.js";import"./virtual-list-qPFukjyT.js";import{n as Pr,t as Fr}from"./use-unsaved-changes-guard-Bvcp_Rny.js";import{n as Ir,r as Lr,t as Rr}from"./email-previews-B1Ska3CF.js";import{t as zr}from"./assertString-C4noZ-9N.js";import{a as Br,i as Vr,n as Hr,o as Ur,r as Wr,s as Gr,t as Kr}from"./tag-picker-M3fC-yOF.js";import{c as qr}from"./emails-qxNbhO6X.js";import{t as Jr}from"./error-boundary-CJODV8Rg.js";import{t as Yr}from"./index.es-H6HOI4DG.js";import{t as Xr}from"./brand-icon-BFOhZhQt.js";import{a as Zr,i as Qr,r as $r,t as ei}from"./content-text-BaMRj0du.js";import{n as ti,t as ni}from"./autocomplete-links-DKqd4ypg.js";var X=e(t(),1),Z=D(),ri=(0,X.forwardRef)(function({className:e,suffix:t,disabled:n,step:r=60,...i},a){return(0,Z.jsxs)(en,{className:U(`min-w-0`,e),"data-disabled":n,children:[(0,Z.jsx)(Qt,{children:(0,Z.jsx)(Re,{"aria-hidden":`true`})}),(0,Z.jsx)(Zt,{ref:a,className:`min-w-0 appearance-none [&::-webkit-calendar-picker-indicator]:hidden [&::-webkit-calendar-picker-indicator]:appearance-none`,disabled:n,step:r,type:`time`,...i}),t?(0,Z.jsx)(Qt,{align:`inline-end`,className:`text-sm font-normal`,children:t}):null]})}),ii=e(n(),1),ai=`post-editor`,oi=`editor-title-input`,si=`editor-body`,ci=`editor-secondary-instance`,li=`editor-email-size-warning`,ui=`editor-email-size-details`,di=`editor-load-error`,fi=`editor-reauth-dialog`,pi=`editor-conflict-banner`,mi=`editor-conflict-reload-confirm`,hi=`editor-status`,gi=`editor-schedule-countdown`,_i=`editor-feature-image`,vi=`editor-feature-image-caption`,yi=`editor-save-error-banner`,bi=`editor-newer-version-notice`,xi=`post-preview-modal`,Si=`post-preview-browser`,Ci=`post-preview-browser-frame`,wi=`post-preview-email`,Ti=`post-preview-email-frame`,Ei=`post-preview-email-from`,Di=`post-preview-email-subject`,Oi=`post-preview-email-size-warning`,ki=`post-preview-test-email-input`,Ai=`post-preview-test-email-error`,ji=`post-preview-unavailable`,Mi=`post-preview-newsletter-missing`,Ni=`post-preview-newsletters-error`,Pi=`post-preview-save-failed`,Fi=`editor-leave-dialog`,Ii=`editor-header-actions`,Li=`editor-publish-inputs-error`,Ri=`snippet-confirm-modal`,zi=`post-settings-sidebar`,Bi=`settings-menu-toggle`,Vi=`settings-load-error`,Hi=`settings-excerpt-input`,Ui=`settings-featured-toggle`,Wi=`settings-show-title-toggle`,Gi=`settings-show-title-warning`,Ki=`settings-slug-input`,qi=`settings-slug-error`,Ji=`settings-url-preview`,Yi=`settings-visibility-select`,Xi=`settings-tiers-picker`,Zi=`settings-tiers-error`,Qi=`settings-tags-field`,$i=`settings-tags-input`,ea=`settings-tags-list`,ta=`settings-tags-token`,na=`settings-template-select`,ra=`settings-template-slug-match`,ia=`settings-publish-date`,aa=`settings-publish-time`,oa=`settings-publish-date-error`,sa=`settings-publish-date-note`,ca=`settings-authors-picker`,la=`settings-authors-list`,ua=`settings-authors-error`,da=`settings-author-chip`,fa=`settings-delete-button`,pa=`settings-delete-dialog`,ma=`settings-delete-error`,ha=`settings-subview-pane`,ga=`settings-meta-title-input`,_a=`settings-meta-description-input`,va=`settings-canonical-url-input`,ya=`settings-serp-preview`,ba=`settings-x-image`,xa=`settings-x-title-input`,Sa=`settings-x-description-input`,Ca=`settings-x-preview`,wa=`settings-x-preview-image`,Ta=`settings-facebook-title-input`,Ea=`settings-facebook-description-input`,Da=`settings-facebook-preview`,Oa=`settings-facebook-preview-image`,ka=`settings-post-history-button`,Aa=`settings-shortcut-row`,ja=`post-history-modal`,Ma=`post-history-revision-list`,Na=`post-history-preview`,Pa=`post-history-preview-title`,Fa=`post-history-preview-excerpt`,Ia=`post-history-preview-feature-image`,La=`post-history-preview-body`,Ra=`post-history-restore-confirm`,za=`publish-flow-modal`,Ba=`publish-flow-options`,Va=`publish-flow-confirm`,Ha=`publish-flow-complete`,Ua=`publish-flow-preview`,Wa=`publish-setting-publish-type`,Ga=`publish-setting-email-recipients`,Ka=`publish-setting-publish-at`,qa=`publish-already-sent`,Ja=`publish-type-error`,Ya=`publish-email-size-warning`,Xa=`publish-newsletter-select`,Za=`publish-recipient-free`,Qa=`publish-recipient-paid`,$a=`publish-recipient-specific`,eo=`publish-recipient-segments`,to=`publish-schedule-date`,no=`publish-schedule-time`,ro=`publish-continue`,io=`publish-confirm`,ao=`publish-confirm-error`,oo=`publish-limits-error`,so=`publish-back-to-settings`,co=`publish-complete-bookmark`,lo=`publish-complete-note`,uo=`publish-back-to-dashboard`,fo=`publish-revert-to-draft`,po=`publish-email-error-step`,mo=`publish-retry-email`,ho=`publish-retry-error`,go=`tk-reminder-dialog`,_o=`public-preview-warning-dialog`,vo=`update-flow-modal`,yo=`update-flow-title`,bo=`update-flow-confirmation`,xo=`update-flow-previous-email`;function So(e,t){if(e)return{displayName:e.displayName,isPage:e.displayName===`page`,showTitleAndFeatureImage:e.showTitleAndFeatureImage??!0,visibility:e.visibility||t}}function Co(e){return e?.isPage||e?.displayName===`page`?`web only`:`web and email`}function wo(e,t){let n=ur(e,t);return typeof n==`string`?n:null}function To(e,t){let{settings:n,config:r,site:i,currentUser:a}=e;return{unsplash:ur(n,`unsplash`)?e.unsplashHeaders:null,klipy:r.klipy?.apiKey?r.klipy:null,pinturaConfig:e.pinturaConfig,embedPreviewUrl:r.security?.embedPreviewUrl||void 0,fetchAutocompleteLinks:t.fetchAutocompleteLinks,fetchEmbed:t.fetchEmbed,fetchLabels:t.fetchLabels,renderLabels:!kn(a),feature:{transistor:ur(n,`transistor`)===!0,paywallImprovements:r.labs?.paywallImprovements===!0},deprecated:{headerV1:!0},membersEnabled:ur(n,`members_signup_access`)===`all`,searchLinks:t.searchLinks,siteTitle:ur(n,`title`)??``,siteDescription:ur(n,`description`)??``,siteOgImage:wo(n,`og_image`),siteTwitterImage:wo(n,`twitter_image`),siteCoverImage:wo(n,`cover_image`),siteUrl:Cr(i),siteUuid:i.site_uuid,stripeEnabled:gr(n,r),post:e.post,snippets:e.snippets,createSnippet:t.createSnippet,deleteSnippet:t.deleteSnippet,visibilitySettings:Co(e.post)}}function Eo(e,t){return e.post?{...e,post:{...e.post,visibility:t.visibility||e.post.visibility,showTitleAndFeatureImage:t.showTitleAndFeatureImage??!0}}:e}var Q={sessionExpiryRedirect:!1},Do={filter:`type:paid`,limit:`all`};function Oo(e){return e&&An(e)?{limit:`all`,include:`count.active_members`}:{limit:`all`}}var ko=`Etc/UTC`;function Ao(){return fr({defaultErrorHandler:!1,requestOptions:Q})}function jo(){let{data:e}=Ao(),t=ur(e?.settings??null,`timezone`);return typeof t==`string`?t:ko}var Mo=`top-0 left-0 h-dvh w-full max-w-none translate-0 gap-0 rounded-none border-0 p-0 shadow-none sm:rounded-none`,No={header:`grid-rows-[auto_1fr]`,plain:`grid-rows-[1fr] overflow-y-auto`};function Po({open:e,onOpenChange:t,title:n,layout:r=`plain`,animate:i=!0,headerActions:a,headerControls:o,className:s,children:c,onCloseAutoFocus:l,...u}){let d=(0,X.useRef)(null),f=(0,X.useRef)(!1);return(0,X.useLayoutEffect)(()=>{if(e&&!f.current){let e=document.activeElement;d.current=e instanceof HTMLElement&&e!==document.body?e:null}f.current=e},[e]),(0,Z.jsx)(jt,{open:e,onOpenChange:t,children:(0,Z.jsxs)(kt,{className:U(Mo,No[r],!i&&`data-[state=closed]:animate-none data-[state=open]:animate-none`,s),onCloseAutoFocus:e=>{l?.(e);let t=d.current;d.current=null,!(e.defaultPrevented||!t?.isConnected)&&(e.preventDefault(),t.focus())},onInteractOutside:e=>e.preventDefault(),...u,children:[r===`header`?(0,Z.jsxs)(Ot,{className:U(`flex-row flex-wrap items-center justify-between gap-4 border-b border-border-default p-4`,o&&`grid grid-cols-[minmax(0,1fr)_auto] md:grid-cols-[minmax(max-content,1fr)_minmax(0,max-content)_minmax(max-content,1fr)]`),children:[(0,Z.jsx)(At,{className:U(`text-lg`,o&&`sr-only md:not-sr-only`),children:n}),o&&(0,Z.jsx)(we,{className:`min-w-0`,children:o}),(0,Z.jsx)(we,{className:`justify-self-end`,children:a})]}):(0,Z.jsx)(At,{className:`sr-only`,children:n}),c]})})}var Fo=5*1e3,Io=600*1e3,Lo=/please upgrade/i;function Ro(e){return new Date(e-e%1e3).toISOString()}function zo(e,t){return Date.parse(e)<Date.parse(t)}function Bo(e){return e.filter(e=>e.status===`active`).sort((e,t)=>(e.sortOrder??0)-(t.sortOrder??0))}function Vo(e){return e.map(e=>`tier:${e.slug}`).join(`,`)||null}function Ho(e,t){let n=t.editorDefaultEmailRecipients,r=O(t.editorDefaultEmailRecipientsFilter),i=n===`filter`&&r===null;if(n===`disabled`)return null;if(n===`visibility`||i)switch(e.visibility){case`public`:case`members`:return k;case`paid`:return N;case`tiers`:return Vo(e.tiers??[]);default:return e.visibility??null}return r}function Uo(e){return e.editorDefaultEmailRecipients===`disabled`||!e.membersEnabled}function Wo(e,t){return e.isPage?`page`:e.email?`already-emailed`:Uo(t)?`disabled-in-settings`:null}function Go({mailgunConfigured:e,memberCount:t},n,r){return e?t===0?`no-members`:r?n?.kind??null:`no-newsletter`:`no-mailgun`}function Ko(e,t,{emailUnavailable:n,emailDisabled:r}){let i=`publish+send`;return(n||r)&&(i=`publish`),t.editorDefaultEmailRecipients===`filter`&&O(t.editorDefaultEmailRecipientsFilter)===null&&(i=`publish`),e.status===`sent`&&(i=`send`),i}function qo(e){let t=Lo.exec(e);if(!t)return[{text:e,kind:`text`}];let n=[],r=e.slice(0,t.index),i=e.slice(t.index+t[0].length);return r&&n.push({text:r,kind:`text`}),n.push({text:t[0],kind:`upgrade`}),i&&n.push({text:i,kind:`text`}),n}function Jo(e){return e instanceof Error?e.message:String(e)}function Yo({post:e,site:t,user:n,limits:r={},now:i=()=>new Date}){let a=Bo(t.newsletters),o=a[0]??null,s=e.status===`draft`,c=s&&e.email?.status===`failed`,l=e.newsletter?t.newsletters.find(t=>t.slug===e.newsletter)??(c?{slug:e.newsletter}:null):null,u=l&&(l.status===`active`||c)?l:o,d=n.isAdmin?t.memberCount:null,f=Wo(e,t),p=f!==null,m=null,h=null,g=u,_=()=>Go({...t,memberCount:d},m,g!==null),v=()=>_()!==null,y=()=>Ro(i().getTime()+Fo),b=()=>Ro(i().getTime()+Io),x=Ko(e,t,{emailUnavailable:p,emailDisabled:v()}),S=!1,C=!1,w=y(),T=!1,E,D=()=>E===void 0?e.newsletter&&O(e.emailSegment)||Ho(e,t)||null:E,k={publishType:x,isScheduled:C,scheduledAt:w,newsletterSlug:g?.slug??null,recipientFilter:D()},j=()=>g?A(M({slug:g.slug,visibility:g.visibility}),D()):null,N=()=>{if(!g||v()||p&&!c)return!1;let t=!!e.email,n=e.email?.status===`failed`;return x!==`publish`&&!!D()&&s&&!t||s&&t&&n},P=()=>{let e=v();return[{value:`publish+send`,label:`Publish and email`,display:`Publish and email`,disabled:e},{value:`publish`,label:`Publish only`,display:`Publish`,disabled:!1},{value:`send`,label:`Email only`,display:`Email`,disabled:e}]},F=()=>x!==k.publishType||C!==k.isScheduled||(C||T)&&w!==k.scheduledAt||(g?.slug??null)!==k.newsletterSlug||D()!==k.recipientFilter,I=()=>{let e=P(),t=N();return{publishType:x,publishTypeOptions:e,availablePublishTypes:p?[`publish`]:e.filter(e=>!e.disabled).map(e=>e.value),isScheduled:C,scheduledAt:w,minScheduledAt:y(),newsletter:g,newsletters:a,onlyDefaultNewsletter:a.length===1,recipientFilter:D(),fullRecipientFilter:j(),willEmail:t,willEmailImmediately:t&&!C,willPublish:x!==`send`,willOnlyEmail:x===`send`,emailUnavailable:p,emailUnavailableReason:f,emailDisabled:v(),emailDisabledReason:_(),emailBlock:m,publishBlock:h,canPublish:s&&(x!==`send`||t),isDirty:F()}},ee=e=>{let t=e instanceof Date?e.getTime():Date.parse(e);if(Number.isNaN(t))return;let n=Ro(t),r=y();w=zo(n,r)?r:n,T=!0},L=async()=>{await r.refreshSettings?.();try{n.isAuthorOrContributor||await r.checkSendingLimit?.();let e=r.getEmailVerification?.();e?.required&&(m={kind:`email-verification`,message:e.message||`Email sending is temporarily disabled because your account is currently in review. You should have an email about this from us already, but you can also reach us any time at support@ghost.org.`})}catch(e){m={kind:`sending-limit`,message:Jo(e)}}},R=async()=>{if(n.isAdmin)try{await r.checkPublishingLimit?.()}catch(e){let t=Jo(e);h={kind:`host-limit`,message:t,parts:qo(t)}}};return{getState:I,setPublishType(e){x=e,S=!0},setIsScheduled(e){C=e===void 0?!C:e,C&&zo(w,b())&&(w=b())},setScheduledAt:ee,resetPastScheduledAt(){zo(w,y())&&(C=!1)},setNewsletter(e){g=e},setRecipientFilter(e){E=O(e)},reset(){x=k.publishType,S=!1,C=k.isScheduled,w=y(),T=!1,g=u,E=void 0},async checkLimits(){m=null,h=null;let[n]=await Promise.allSettled([L(),R()]);if((!S||v())&&(x=Ko(e,t,{emailUnavailable:p,emailDisabled:v()}),k={...k,publishType:x}),n.status===`rejected`)throw n.reason;return{emailBlock:m,publishBlock:h}},toDispatch(){if(!s)return null;let e=N();if(x===`send`&&!e)return null;let t={};if(e&&(t.emailOnly=x===`send`,!c)){let e=D();g&&(t.newsletter=g.slug),e&&(t.emailSegment=e)}return C?{kind:`schedule`,options:{...t,publishedAt:w}}:{kind:`publish`,options:t}},toRevertDispatch(){return{kind:`revert`}}}}var Xo=`Unable to connect, please check your internet connection and try again.`,Zo=`Someone else has edited this post since you opened it. Reload the editor to get their changes before publishing.`,Qo=`Your session was restored. Confirm again to publish.`,$o=`Your session expired. Confirm again to sign in and publish.`,es=`Unknown Error`,ts=`Something went wrong while saving. Please try again.`,ns=`This post can no longer be published from here. Reload the editor.`;function rs(e){return e instanceof Error&&e.message?{message:e.message}:typeof e==`string`&&e?{message:e}:{message:es}}function is(e){return e.kind===`saved`?null:e.kind===`needs-retry`?{message:Qo}:e.kind===`dropped`||e.kind===`superseded`?{message:ns}:os(e.error)}function as(e){return e.kind===`unknown`&&e.cause instanceof Error&&!(e.cause instanceof h)?ts:e.message}function os(e){switch(e.kind){case`validation`:return{message:`Validation failed: ${e.message||`Unknown Error`}`};case`transport`:return{message:Xo};case`conflict`:return{message:Zo};case`session-invalid`:return{message:$o};case`host-limit`:return{message:e.message||`Unknown Error`,parts:qo(e.message||`Unknown Error`)};default:return{message:as(e)||`Unknown Error`}}}function ss(e,t){return t?`${e.replace(/\/+$/,``)}/p/${t}/`:``}function cs(e,t){if(!e)return``;let n=new URL(e);return n.searchParams.set(`member_status`,t.segment===`tier`?`paid`:t.segment),t.segment===`tier`&&t.tierSlug?n.searchParams.set(`member_tier`,t.tierSlug):n.searchParams.delete(`member_tier`),n.toString()}function ls(e){let t=e.segment===`paid`||e.segment===`tier`?`paid`:`free`;return e.segment===`tier`&&e.tierSlug?{memberStatus:t,memberTier:e.tierSlug}:{memberStatus:t}}function us(e,t){return e.segment===`tier`&&t?`${t} tier member`:`${e.segment} member`}function ds(e){let t=(0,X.useRef)(e);return t.current=e,e=>{try{e.currentTarget.contentWindow?.addEventListener(`keydown`,e=>{e.key===`Escape`&&t.current()})}catch{}}}function fs({previewUrl:e,audience:t,device:n,onEscape:r}){let i=ds(r);return e?(0,Z.jsx)(n===`mobile`?rn:we,{className:n===`desktop`?`size-full`:`max-w-full shrink-0`,"data-testid":Si,...n===`mobile`?{device:n}:{},children:(0,Z.jsx)(`iframe`,{className:`size-full border-0`,"data-testid":Ci,src:cs(e,t),title:`Post preview`,onLoad:i})}):(0,Z.jsx)(It,{className:`grow justify-center self-center`,"data-testid":ji,description:`A post gets its preview link the first time it is saved.`,title:`Nothing to preview yet`,children:(0,Z.jsx)(Je,{})})}var ps=100*1024,ms=50,hs=`<!-- POST CONTENT START -->`,gs=`<!-- POST CONTENT END -->`;function _s(e){let t=e.indexOf(hs),n=e.indexOf(gs);return t!==-1&&n!==-1&&n>t?e.substring(t+27,n):e}function vs(e,t){let n=t.replace(/\/$/,``).length+ms,r=0;for(let[,t]of _s(e).matchAll(/href="([^"]+)"/g))t.startsWith(`%%{`)&&t.endsWith(`}%%`)||t===`#`||!t.startsWith(`http://`)&&!t.startsWith(`https://`)&&!t.startsWith(`/`)||(r+=n-t.length);return r}function ys(e,t){let n=new Blob([e]).size,r=Math.max(0,n+vs(e,t));return{overLimit:r>=ps,sizeKb:Math.round(r/1024)}}var bs=`EditorEmailSize`;function xs(e){let t=!!e.email||e.emailOnly===!0;return e.status!==`published`&&e.displayName!==`page`&&!t}function Ss(e){let t=C(),{data:n}=Ao(),{data:r}=Sr({requestOptions:Q}),[i]=Pn(e.updatedAt??null,500),a=ur(n?.settings??null,`editor_default_email_recipients`),s=r?.site.url,c=!!e.id&&!!i&&!!s&&!!a&&a!==`disabled`&&xs(e),{data:l}=d({queryKey:[bs,e.id,i,s],queryFn:async()=>{try{return ys(Rr.parse(await t(_(`/email_previews/posts/${e.id}/`),Q)).email_previews[0].html,s??``)}catch{return null}},enabled:c,placeholderData:o,staleTime:1/0});return c?l??null:null}var Cs=e(Nr(),1),ws=`z-[1100]`,Ts=`Please enter a password`,Es=`Couldn’t sign in. Please try again.`,Ds=`Verification code is required`,Os=`Verification code must be 6 numbers`,ks=`Your verification code is incorrect.`,As=`There was a problem verifying the code. Please try again.`,js=`A new verification code has been sent to your email.`;function Ms(e){return e instanceof g?e.data?.errors?.[0]?.message:void 0}function Ns(e){return{kind:`verify`,newDevice:e.data?.errors?.[0]?.code===`2FA_NEW_DEVICE_DETECTED`}}function Ps({email:e,passwordRef:t,onSucceeded:n}){let{mutateAsync:r}=ar(),{mutateAsync:i}=rr(),[a,o]=(0,X.useState)({kind:`password`}),[s,c]=(0,X.useState)(``),[l,d]=(0,X.useState)(``),[f,p]=(0,X.useState)(null),[m,h]=(0,X.useState)(!1),g=(0,X.useRef)(null),_=(0,X.useRef)(!0);(0,X.useEffect)(()=>(_.current=!0,()=>{_.current=!1}),[]),(0,X.useEffect)(()=>{a.kind===`verify`&&g.current?.focus()},[a.kind]);let v=async()=>{if(!s){p(Ts);return}h(!0);try{await r({username:e,password:s}),_.current&&n()}catch(e){if(!_.current)return;if(ir(e)){o(Ns(e));return}p(Ms(e)??Es)}finally{_.current&&h(!1)}},y=async()=>{let e=l.trim();if(!e){p(Ds);return}if(!/^\d{6}$/.test(e)){p(Os);return}h(!0);try{await i({token:e}),_.current&&n()}catch(e){if(!_.current)return;if(e instanceof u){p(ks);return}p(Ms(e)??As)}finally{_.current&&h(!1)}},b=e=>{e.preventDefault(),!m&&(p(null),a.kind===`password`?v():y())};return a.kind===`verify`?(0,Z.jsxs)(`form`,{noValidate:!0,onSubmit:b,children:[(0,Z.jsxs)(pt,{children:[(0,Z.jsx)(st,{children:a.newDevice?`Verify it’s really you`:`2FA confirmation`}),(0,Z.jsx)(ot,{children:a.newDevice?`It looks like you’re signing in from a new device. A 6-digit sign-in verification code has been sent to your email to keep your account safe.`:`Enter the sign-in verification code sent to your email.`})]}),(0,Z.jsx)(Rt,{className:`py-6`,children:(0,Z.jsxs)(Vt,{"data-invalid":f?!0:void 0,children:[(0,Z.jsx)(Bt,{htmlFor:`reauth-token`,children:`Verification code`}),(0,Z.jsxs)(en,{children:[(0,Z.jsx)(Zt,{ref:g,"aria-invalid":f?!0:void 0,autoComplete:`one-time-code`,id:`reauth-token`,inputMode:`numeric`,name:`token`,pattern:`[0-9]*`,placeholder:`• • • • • •`,value:l,"data-1p-ignore":!0,onChange:e=>{p(null),d(e.target.value)}}),(0,Z.jsx)(Qt,{align:`inline-end`,children:(0,Z.jsx)(br,{onError:p,onSent:()=>R.success(js)})})]}),f&&(0,Z.jsx)(zt,{children:f})]})}),(0,Z.jsxs)(dt,{children:[(0,Z.jsx)(ft,{asChild:!0,children:(0,Z.jsx)(q,{disabled:m,variant:`outline`,children:`Cancel`})}),(0,Z.jsx)(q,{disabled:m,type:`submit`,children:m?`Verifying…`:`Verify`})]})]}):(0,Z.jsxs)(`form`,{noValidate:!0,onSubmit:b,children:[(0,Z.jsxs)(pt,{children:[(0,Z.jsx)(st,{children:`Are you still here?`}),(0,Z.jsx)(ot,{children:`Your authenticated session expired. Enter your password to continue where you left off.`})]}),(0,Z.jsxs)(Rt,{className:`gap-4 py-6`,children:[(0,Z.jsxs)(Vt,{children:[(0,Z.jsx)(Bt,{htmlFor:`reauth-email`,children:`Email`}),(0,Z.jsx)(Xt,{autoComplete:`username`,id:`reauth-email`,name:`username`,type:`email`,value:e,readOnly:!0})]}),(0,Z.jsxs)(Vt,{"data-invalid":f?!0:void 0,children:[(0,Z.jsx)(Bt,{htmlFor:`reauth-password`,children:`Password`}),(0,Z.jsx)(Xt,{ref:t,"aria-invalid":f?!0:void 0,autoComplete:`current-password`,id:`reauth-password`,name:`password`,placeholder:`•••••••••••••••`,type:`password`,value:s,onChange:e=>{p(null),c(e.target.value)}}),f&&(0,Z.jsx)(zt,{children:f})]})]}),(0,Z.jsxs)(dt,{children:[(0,Z.jsx)(ft,{asChild:!0,children:(0,Z.jsx)(q,{disabled:m,variant:`outline`,children:`Cancel`})}),(0,Z.jsx)(q,{disabled:m,type:`submit`,children:m?`Authenticating…`:`Sign in`})]})]})}function Fs({open:e,email:t,onSucceeded:n,onAbandoned:r}){let i=(0,X.useRef)(null);return(0,Z.jsx)(mt,{open:e,onOpenChange:e=>{e||r()},children:(0,Z.jsx)(ct,{className:ws,"data-testid":fi,overlayClassName:ws,onOpenAutoFocus:e=>{e.preventDefault(),i.current?.focus()},children:(0,Z.jsx)(Ps,{email:t,passwordRef:i,onSucceeded:n})})})}var Is=`Your session expired. Send again to sign in.`;function Ls({postId:e,audience:t,audienceLabel:n,newsletterSlug:r,disabled:i=!1}){let a=(0,X.useId)(),{data:o}=x({requestOptions:Q}),{data:s}=de({requestOptions:Q}),{data:c}=Ao(),{mutateAsync:l,isPending:u}=Lr(),d=v(),[f,p]=(0,X.useState)(null),[m,h]=(0,X.useState)(!1),[g,_]=(0,X.useState)(!1),[y,b]=(0,X.useState)(null),S=f??o?.email??``,[C,T,E]=hr(c?.settings??[],[`mailgun_api_key`,`mailgun_domain`,`mailgun_base_url`]),D=!!s?.config.mailgunIsConfigured||!!(C&&T&&E),O=s!==void 0&&c!==void 0,k=async()=>{let n=S.trim();if(!i){if(b(null),!Cs.default.isEmail(n)){R.error(`Please enter a valid email`);return}if(!D){R.error(`Please verify your email settings`);return}try{await l({postId:e,emails:[n],newsletter:r,...ls(t)}),R.success(`Test email sent to ${n}`)}catch(e){if(e instanceof w){h(!0),_(!0);return}d(e)}}};return(0,Z.jsxs)(Ft,{open:m,onOpenChange:h,children:[(0,Z.jsx)(Mt,{asChild:!0,children:(0,Z.jsxs)(q,{className:`shrink-0`,disabled:i,variant:`outline`,children:[(0,Z.jsx)(We,{}),`Test`]})}),(0,Z.jsxs)(Nt,{align:`end`,className:`w-80`,children:[(0,Z.jsx)(`form`,{noValidate:!0,onSubmit:e=>{e.preventDefault(),k()},children:(0,Z.jsxs)(G,{gap:`md`,children:[(0,Z.jsx)(Lt,{htmlFor:a,children:`Send test email`}),(0,Z.jsx)(Xt,{"data-testid":ki,id:a,placeholder:`you@yoursite.com`,type:`email`,value:S,onChange:e=>p(e.target.value)}),(0,Z.jsxs)(`p`,{className:`text-sm text-muted-foreground`,children:[`You’ll receive this as a `,n,`.`]}),(0,Z.jsx)(q,{disabled:i||u||!O,type:`submit`,children:u?`Sending...`:`Send`}),y?(0,Z.jsx)(K,{className:`text-destructive`,"data-testid":Ai,role:`alert`,size:`sm`,children:y}):null]})}),(0,Z.jsx)(Fs,{email:o?.email??``,open:g,onAbandoned:()=>{_(!1),b(Is)},onSucceeded:()=>{_(!1),k()}})]})]})}function Rs(e){"@babel/helpers - typeof";return Rs=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},Rs(e)}function zs(e,t){zr(e);var n,r;Rs(t)===`object`?(n=t.min||0,r=t.max):(n=arguments[1]||0,r=arguments[2]);var i=e.match(/[^\uFE0F\uFE0E][\uFE0F\uFE0E]/g)||[],a=e.match(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g)||[],o=e.length-i.length-a.length,s=o>=n&&(r===void 0||o<=r);return s&&Array.isArray(t?.discreteLengths)?t.discreteLengths.some(function(e){return e===o}):s}function Bs(e,t){let n={};for(let r of t)n[r]=e[r];return n}var Vs=[`tags`,`authors`,`custom_excerpt`,`email_subject`,`featured`,`visibility`,`tiers`,`meta_title`,`meta_description`,`canonical_url`,`custom_template`,`codeinjection_head`,`codeinjection_foot`,`og_image`,`og_title`,`og_description`,`twitter_image`,`twitter_title`,`twitter_description`,`show_title_and_feature_image`],Hs=`Please select at least one tier.`,Us=`At least one author is required.`;function Ws(e,t){return e===`authors`?t.authors.map(({id:e})=>({id:e})):e===`tags`?Gr(t.tags):e===`tiers`?[...t.tiers]:e===`show_title_and_feature_image`?t.show_title_and_feature_image??void 0:t[e]}var Gs=65535,Ks=`Email subject cannot be longer than 300 characters.`,qs=`Title cannot be longer than 255 characters.`,Js=`Excerpt cannot be longer than 300 characters.`,Ys=`Header code cannot be longer than ${Gs} characters.`,Xs=`Footer code cannot be longer than ${Gs} characters.`,Zs=`Meta title cannot be longer than 300 characters.`,Qs=`Meta description cannot be longer than 500 characters.`,$s=`Facebook title cannot be longer than 300 characters.`,ec=`Facebook description cannot be longer than 500 characters.`,tc=`X title cannot be longer than 300 characters.`,nc=`X description cannot be longer than 500 characters.`;function rc(e){return zs(e.trim(),{max:255})?null:qs}function ic(e){return e.visibility===`tiers`&&e.tiers.length===0}var ac=`Please choose a past date and time.`;function oc(e,t,n=Date.now()){if(t===null||e!==`draft`&&e!==`published`)return!1;let r=Date.parse(t);return!Number.isNaN(r)&&r>=n}function sc(e,t){return Array.from(e??``).length>t}var cc=[`email_subject`,`visibility`,`tiers`,`custom_excerpt`,`codeinjection_head`,`codeinjection_foot`,`meta_title`,`meta_description`,`canonical_url`,`og_title`,`og_description`,`twitter_title`,`twitter_description`];function lc(e){return Bs(e,cc)}var uc={email_subject:{max:300,message:Ks},custom_excerpt:{max:300,message:Js},codeinjection_head:{max:Gs,message:Ys},codeinjection_foot:{max:Gs,message:Xs},meta_title:{max:300,message:Zs},meta_description:{max:500,message:Qs},og_title:{max:300,message:$s},og_description:{max:500,message:ec},twitter_title:{max:300,message:tc},twitter_description:{max:500,message:nc}};function dc(e,t){if(e===`visibility`)return null;if(e===`tiers`)return ic(t)?Hs:null;if(e===`canonical_url`){let e=t.canonical_url??``;return/\S/.test(e)?/\s/.test(e)||!/^(\/|[a-zA-Z0-9-]+:)/.test(e)?`Please enter a valid URL`:sc(e,2e3)?`Canonical URL is too long, max 2000 chars`:null:null}let{max:n,message:r}=uc[e];return sc(t[e],n)?r:null}function fc(e,t,n=[]){for(let r of cc){if(t&&r===`tiers`||n.includes(r))continue;let i=dc(r,e);if(i)return i}return null}var pc=40,mc=`...`;function hc(e){let t=Array.from(e),n=pc-3;return t.length>n?`${t.slice(0,n).join(``)}${mc}`:e}var gc=new Set([`conflict`,`not-found`,`forbidden`]);function _c({editor:e}){let t=(0,X.useId)(),[n,r]=(0,X.useState)(null),i=sc(e.value,300)?Ks:null,a=e.saveError&&(e.saveError!==n||gc.has(e.saveError.kind))?e.saveError:null,o=i??(a&&os(a).message),s=!!i||!!a;return(0,Z.jsxs)(G,{className:`min-w-0 flex-1`,gap:`xs`,children:[(0,Z.jsx)(Xt,{"aria-describedby":o?t:void 0,"aria-invalid":s,"aria-label":`Email subject`,className:`min-w-0`,"data-testid":Di,placeholder:hc(e.fallback),value:e.value??e.fallback,onBlur:()=>{i||(e.value===``&&e.onChange(null),e.onCommit())},onChange:t=>{r(e.saveError),e.onChange(t.target.value)},onKeyDown:e=>{e.key===`Enter`&&!e.nativeEvent.isComposing&&(e.preventDefault(),e.currentTarget.blur())}}),o&&(0,Z.jsx)(`p`,{className:`text-sm text-destructive`,id:t,role:`alert`,children:o})]})}var vc=`
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./dist-C-_aTlvJ.js","./dist-tI811Kyl.js","./dist-B4jqKAG5.js","./dist-Bmo2j_KH.js","./react-C9lG_SsT.js","./dist-CWHIoxYn.js","./esm-_iCUCvbN.js","./jsx-runtime-Bm2_KH-0.js"])))=>i.map(i=>d[i]);
2
+ (function(){try{var e=typeof window<`u`?window:typeof global<`u`?global:typeof globalThis<`u`?globalThis:typeof self<`u`?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]=`838ce919-0cdf-4a2e-90d7-ed094fd2cef3`,e._sentryDebugIdIdentifier=`sentry-dbid-838ce919-0cdf-4a2e-90d7-ed094fd2cef3`)}catch{}})();import{s as e,t}from"./react-C9lG_SsT.js";import{t as n}from"./react-dom-t7VxfrkA.js";import{N as r,P as i,i as a,m as o,r as s}from"./framework-provider-CIvHFnik.js";import{A as c,C as l,E as u,N as d,O as f,S as p,T as m,_ as h,b as g,c as _,g as v,l as y,n as b,o as x,t as S,u as C,w,x as T,y as E}from"./hooks-0r7qxGEo.js";import{t as D}from"./jsx-runtime-Bm2_KH-0.js";import{A as O,C as k,D as A,E as j,O as M,T as N,j as P,k as F,n as I,w as ee,y as L}from"./members-CH6KeXQc.js";import{n as R}from"./dist-pogVoW2G.js";import{i as z,n as te,r as ne,t as re}from"./focus-koenig-editor-on-bottom-click-BzS8jiJf.js";import{c as ie,l as ae,n as oe,p as B,t as se,u as ce}from"./posts-CftunZgV.js";import{i as le,r as ue,s as de,t as fe}from"./config-CRAZ4Civ.js";import{t as pe}from"./preload-helper-Ba4JejZL.js";import{f as V,h as me,u as H}from"./chunk-OB3PAWPO-D3muQBsq.js";import{a as he,t as ge}from"./router-provider-Cf-bcYZr.js";import{H as _e,J as ve,L as U,a as ye,i as be,n as xe,r as Se,s as Ce}from"./shade-provider-DvrXKKQZ.js";import{t as we}from"./box-BOIwAOVT.js";import{t as Te}from"./grid-BYJO9x_v.js";import{t as W}from"./inline-Qoyy4r2g.js";import{t as G}from"./stack-C3OmgpUv.js";import{t as K}from"./text-BnCSdzao.js";import{i as Ee}from"./api-BFocMbDg.js";import{C as De,Ct as Oe,D as ke,E as Ae,Fr as je,Kt as Me,Ln as Ne,Mn as Pe,Nn as Fe,Qt as Ie,Vn as Le,Wn as Re,X as ze,Y as Be,Zn as Ve,ar as He,dt as Ue,et as We,gr as Ge,hn as Ke,in as qe,jn as Je,jr as Ye,l as Xe,n as Ze,nn as Qe,nt as $e,on as et,rr as tt,t as q,v as nt,yt as rt}from"./button-CTHYSI-d.js";import{i as it,o as at}from"./es2015-8TGMBpHz.js";import{a as ot,c as st,i as ct,l as lt,n as ut,o as dt,r as ft,s as pt,t as mt}from"./alert-dialog-CAPLqwVs.js";import{t as ht}from"./avatar-YbECDnBI.js";import{t as gt}from"./badge-DuMiqyUH.js";import{t as _t}from"./calendar-BPNNrGa9.js";import{t as vt}from"./use-limiter-gF219BEg.js";import{t as yt}from"./checkbox-DN_wUAjb.js";import{a as bt,i as xt,n as St,o as Ct,r as wt,t as Tt}from"./lib-Bre6UXdJ.js";import{a as Et,i as Dt,o as Ot,r as kt,s as At,t as jt}from"./dialog-BO1lcy8A.js";import{a as Mt,i as Nt,n as Pt,t as Ft}from"./popover-r_3DwMi9.js";import{t as It}from"./empty-indicator-BhVwqSVH.js";import{t as Lt}from"./label-CxXFmzcd.js";import{a as Rt,i as zt,o as Bt,t as Vt}from"./field-DCPPrQDr.js";import{a as Ht,c as Ut,i as Wt,n as Gt,o as Kt,r as qt,s as Jt,t as Yt}from"./images-DTZtaIAr.js";import{t as Xt}from"./input-BHb2A_DU.js";import{i as Zt,n as Qt,r as $t,t as en}from"./input-group-DL5EFP5r.js";import{n as tn}from"./loading-indicator-DaRyGrxv.js";import{t as nn}from"./page-header-CxTb0je5.js";import{t as rn}from"./preview-chrome-Dcu3p6mp.js";import{n as an,t as on}from"./radio-group-Xfp-frJz.js";import{a as sn,i as cn,n as ln,o as un,r as dn,s as fn,t as pn}from"./select-DeloOYCg.js";import{t as mn}from"./switch-BppWscjz.js";import{i as hn,r as gn,t as _n}from"./tabs-fHs3A8WC.js";import{t as vn}from"./textarea-B_rfKtjs.js";import{n as yn,t as bn}from"./toggle-group-BFWCtH3p.js";import{t as xn}from"./google-logo-IGBgqBWI.js";import{p as Sn,u as Cn}from"./label-picker-DaivLdMw.js";import{t as wn}from"./list-return-state-B91WMz_J.js";import{c as Tn}from"./content-formatters-C08JJbUJ.js";import{c as En,d as Dn,f as On,l as kn,o as An,s as jn,t as Mn,u as Nn}from"./users-CKJaAxEJ.js";import{n as Pn}from"./index.module-CnPepLB9.js";import{a as Fn,d as J,f as In,g as Y,i as Ln,o as Rn,p as zn,r as Bn,v as Vn,y as Hn}from"./schemas-21VB7GGY.js";import{r as Un}from"./newsletters-CACa0VCx.js";import{t as Wn}from"./use-pintura-config-D-pmGkn2.js";import{t as Gn}from"./labels-BCj6D_nl.js";import{t as Kn}from"./dirty-confirm-dialog-CdxPMCA8.js";import{c as qn,l as Jn,n as Yn,t as Xn,u as Zn}from"./pages-Bm-zFXyP.js";import{a as Qn,r as $n}from"./tiers-DlvS8D6_.js";import{c as er,l as tr,o as nr}from"./themes-CPJSMo_W.js";import{l as rr,o as ir,s as ar,t as or}from"./reload-D0fnKoCm.js";import{$t as sr,B as cr,F as lr,Ht as ur,I as dr,Kt as fr,P as pr,Qt as mr,Ut as hr,Vt as gr,at as _r,c as vr,ct as yr,d as br,ft as xr,g as Sr,h as Cr,it as wr,l as Tr,n as Er,s as Dr,st as Or,ut as kr,v as Ar,vt as jr,zt as Mr}from"./index-RuRs_qGS.js";import{t as Nr}from"./validator-DgUCXsE8.js";import"./virtual-list-qPFukjyT.js";import{n as Pr,t as Fr}from"./use-unsaved-changes-guard-BkCuSlvU.js";import{n as Ir,r as Lr,t as Rr}from"./email-previews-BKJxrW29.js";import{t as zr}from"./assertString-C4noZ-9N.js";import{a as Br,i as Vr,n as Hr,o as Ur,r as Wr,s as Gr,t as Kr}from"./tag-picker-Ct6NeqWK.js";import{c as qr}from"./emails-8YiSmC2X.js";import{t as Jr}from"./error-boundary-DrxPFFO-.js";import{t as Yr}from"./index.es-rdb1skp_.js";import{t as Xr}from"./brand-icon-BFOhZhQt.js";import{a as Zr,i as Qr,r as $r,t as ei}from"./content-text-BaMRj0du.js";import{t as ti}from"./search-index-sM3OjEUl.js";import{n as ni,t as ri}from"./autocomplete-links-DKqd4ypg.js";var X=e(t(),1),Z=D(),ii=(0,X.forwardRef)(function({className:e,suffix:t,disabled:n,step:r=60,...i},a){return(0,Z.jsxs)(en,{className:U(`min-w-0`,e),"data-disabled":n,children:[(0,Z.jsx)(Qt,{children:(0,Z.jsx)(Re,{"aria-hidden":`true`})}),(0,Z.jsx)(Zt,{ref:a,className:`min-w-0 appearance-none [&::-webkit-calendar-picker-indicator]:hidden [&::-webkit-calendar-picker-indicator]:appearance-none`,disabled:n,step:r,type:`time`,...i}),t?(0,Z.jsx)(Qt,{align:`inline-end`,className:`text-sm font-normal`,children:t}):null]})}),ai=e(n(),1),oi=`post-editor`,si=`editor-title-input`,ci=`editor-body`,li=`editor-secondary-instance`,ui=`editor-email-size-warning`,di=`editor-email-size-details`,fi=`editor-load-error`,pi=`editor-reauth-dialog`,mi=`editor-conflict-banner`,hi=`editor-conflict-reload-confirm`,gi=`editor-status`,_i=`editor-schedule-countdown`,vi=`editor-feature-image`,yi=`editor-feature-image-caption`,bi=`editor-save-error-banner`,xi=`editor-newer-version-notice`,Si=`post-preview-modal`,Ci=`post-preview-browser`,wi=`post-preview-browser-frame`,Ti=`post-preview-email`,Ei=`post-preview-email-frame`,Di=`post-preview-email-from`,Oi=`post-preview-email-subject`,ki=`post-preview-email-size-warning`,Ai=`post-preview-test-email-input`,ji=`post-preview-test-email-error`,Mi=`post-preview-unavailable`,Ni=`post-preview-newsletter-missing`,Pi=`post-preview-newsletters-error`,Fi=`post-preview-save-failed`,Ii=`editor-leave-dialog`,Li=`editor-header-actions`,Ri=`editor-publish-inputs-error`,zi=`snippet-confirm-modal`,Bi=`post-settings-sidebar`,Vi=`settings-menu-toggle`,Hi=`settings-load-error`,Ui=`settings-excerpt-input`,Wi=`settings-featured-toggle`,Gi=`settings-show-title-toggle`,Ki=`settings-show-title-warning`,qi=`settings-slug-input`,Ji=`settings-slug-error`,Yi=`settings-url-preview`,Xi=`settings-visibility-select`,Zi=`settings-tiers-picker`,Qi=`settings-tiers-error`,$i=`settings-tags-field`,ea=`settings-tags-input`,ta=`settings-tags-list`,na=`settings-tags-token`,ra=`settings-template-select`,ia=`settings-template-slug-match`,aa=`settings-publish-date`,oa=`settings-publish-time`,sa=`settings-publish-date-error`,ca=`settings-publish-date-note`,la=`settings-authors-picker`,ua=`settings-authors-list`,da=`settings-authors-error`,fa=`settings-author-chip`,pa=`settings-delete-button`,ma=`settings-delete-dialog`,ha=`settings-delete-error`,ga=`settings-subview-pane`,_a=`settings-meta-title-input`,va=`settings-meta-description-input`,ya=`settings-canonical-url-input`,ba=`settings-serp-preview`,xa=`settings-x-image`,Sa=`settings-x-title-input`,Ca=`settings-x-description-input`,wa=`settings-x-preview`,Ta=`settings-x-preview-image`,Ea=`settings-facebook-title-input`,Da=`settings-facebook-description-input`,Oa=`settings-facebook-preview`,ka=`settings-facebook-preview-image`,Aa=`settings-post-history-button`,ja=`settings-shortcut-row`,Ma=`post-history-modal`,Na=`post-history-revision-list`,Pa=`post-history-preview`,Fa=`post-history-preview-title`,Ia=`post-history-preview-excerpt`,La=`post-history-preview-feature-image`,Ra=`post-history-preview-body`,za=`post-history-restore-confirm`,Ba=`publish-flow-modal`,Va=`publish-flow-options`,Ha=`publish-flow-confirm`,Ua=`publish-flow-complete`,Wa=`publish-flow-preview`,Ga=`publish-setting-publish-type`,Ka=`publish-setting-email-recipients`,qa=`publish-setting-publish-at`,Ja=`publish-already-sent`,Ya=`publish-type-error`,Xa=`publish-email-size-warning`,Za=`publish-newsletter-select`,Qa=`publish-recipient-free`,$a=`publish-recipient-paid`,eo=`publish-recipient-specific`,to=`publish-recipient-segments`,no=`publish-schedule-date`,ro=`publish-schedule-time`,io=`publish-continue`,ao=`publish-confirm`,oo=`publish-confirm-error`,so=`publish-limits-error`,co=`publish-back-to-settings`,lo=`publish-complete-bookmark`,uo=`publish-complete-note`,fo=`publish-back-to-dashboard`,po=`publish-revert-to-draft`,mo=`publish-email-error-step`,ho=`publish-retry-email`,go=`publish-retry-error`,_o=`tk-reminder-dialog`,vo=`public-preview-warning-dialog`,yo=`update-flow-modal`,bo=`update-flow-title`,xo=`update-flow-confirmation`,So=`update-flow-previous-email`;function Co(e,t){if(e)return{displayName:e.displayName,isPage:e.displayName===`page`,showTitleAndFeatureImage:e.showTitleAndFeatureImage??!0,visibility:e.visibility||t}}function wo(e){return e?.isPage||e?.displayName===`page`?`web only`:`web and email`}function To(e,t){let n=ur(e,t);return typeof n==`string`?n:null}function Eo(e,t){let{settings:n,config:r,site:i,currentUser:a}=e;return{unsplash:ur(n,`unsplash`)?e.unsplashHeaders:null,klipy:r.klipy?.apiKey?r.klipy:null,pinturaConfig:e.pinturaConfig,embedPreviewUrl:r.security?.embedPreviewUrl||void 0,fetchAutocompleteLinks:t.fetchAutocompleteLinks,fetchEmbed:t.fetchEmbed,fetchLabels:t.fetchLabels,renderLabels:!kn(a),feature:{transistor:ur(n,`transistor`)===!0,paywallImprovements:r.labs?.paywallImprovements===!0},deprecated:{headerV1:!0},membersEnabled:ur(n,`members_signup_access`)===`all`,searchLinks:t.searchLinks,siteTitle:ur(n,`title`)??``,siteDescription:ur(n,`description`)??``,siteOgImage:To(n,`og_image`),siteTwitterImage:To(n,`twitter_image`),siteCoverImage:To(n,`cover_image`),siteUrl:Cr(i),siteUuid:i.site_uuid,stripeEnabled:gr(n,r),post:e.post,snippets:e.snippets,createSnippet:t.createSnippet,deleteSnippet:t.deleteSnippet,visibilitySettings:wo(e.post)}}function Do(e,t){return e.post?{...e,post:{...e.post,visibility:t.visibility||e.post.visibility,showTitleAndFeatureImage:t.showTitleAndFeatureImage??!0}}:e}var Q={sessionExpiryRedirect:!1},Oo={filter:`type:paid`,limit:`all`};function ko(e){return e&&An(e)?{limit:`all`,include:`count.active_members`}:{limit:`all`}}var Ao=`Etc/UTC`;function jo(){return fr({defaultErrorHandler:!1,requestOptions:Q})}function Mo(){let{data:e}=jo(),t=ur(e?.settings??null,`timezone`);return typeof t==`string`?t:Ao}var No=`top-0 left-0 h-dvh w-full max-w-none translate-0 gap-0 rounded-none border-0 p-0 shadow-none sm:rounded-none`,Po={header:`grid-rows-[auto_1fr]`,plain:`grid-rows-[1fr] overflow-y-auto`};function Fo({open:e,onOpenChange:t,title:n,layout:r=`plain`,animate:i=!0,headerActions:a,headerControls:o,className:s,children:c,onCloseAutoFocus:l,...u}){let d=(0,X.useRef)(null),f=(0,X.useRef)(!1);return(0,X.useLayoutEffect)(()=>{if(e&&!f.current){let e=document.activeElement;d.current=e instanceof HTMLElement&&e!==document.body?e:null}f.current=e},[e]),(0,Z.jsx)(jt,{open:e,onOpenChange:t,children:(0,Z.jsxs)(kt,{className:U(No,Po[r],!i&&`data-[state=closed]:animate-none data-[state=open]:animate-none`,s),onCloseAutoFocus:e=>{l?.(e);let t=d.current;d.current=null,!(e.defaultPrevented||!t?.isConnected)&&(e.preventDefault(),t.focus())},onInteractOutside:e=>e.preventDefault(),...u,children:[r===`header`?(0,Z.jsxs)(Ot,{className:U(`flex-row flex-wrap items-center justify-between gap-4 border-b border-border-default p-4`,o&&`grid grid-cols-[minmax(0,1fr)_auto] md:grid-cols-[minmax(max-content,1fr)_minmax(0,max-content)_minmax(max-content,1fr)]`),children:[(0,Z.jsx)(At,{className:U(`text-lg`,o&&`sr-only md:not-sr-only`),children:n}),o&&(0,Z.jsx)(we,{className:`min-w-0`,children:o}),(0,Z.jsx)(we,{className:`justify-self-end`,children:a})]}):(0,Z.jsx)(At,{className:`sr-only`,children:n}),c]})})}var Io=5*1e3,Lo=600*1e3,Ro=/please upgrade/i;function zo(e){return new Date(e-e%1e3).toISOString()}function Bo(e,t){return Date.parse(e)<Date.parse(t)}function Vo(e){return e.filter(e=>e.status===`active`).sort((e,t)=>(e.sortOrder??0)-(t.sortOrder??0))}function Ho(e){return e.map(e=>`tier:${e.slug}`).join(`,`)||null}function Uo(e,t){let n=t.editorDefaultEmailRecipients,r=O(t.editorDefaultEmailRecipientsFilter),i=n===`filter`&&r===null;if(n===`disabled`)return null;if(n===`visibility`||i)switch(e.visibility){case`public`:case`members`:return k;case`paid`:return N;case`tiers`:return Ho(e.tiers??[]);default:return e.visibility??null}return r}function Wo(e){return e.editorDefaultEmailRecipients===`disabled`||!e.membersEnabled}function Go(e,t){return e.isPage?`page`:e.email?`already-emailed`:Wo(t)?`disabled-in-settings`:null}function Ko({mailgunConfigured:e,memberCount:t},n,r){return e?t===0?`no-members`:r?n?.kind??null:`no-newsletter`:`no-mailgun`}function qo(e,t,{emailUnavailable:n,emailDisabled:r}){let i=`publish+send`;return(n||r)&&(i=`publish`),t.editorDefaultEmailRecipients===`filter`&&O(t.editorDefaultEmailRecipientsFilter)===null&&(i=`publish`),e.status===`sent`&&(i=`send`),i}function Jo(e){let t=Ro.exec(e);if(!t)return[{text:e,kind:`text`}];let n=[],r=e.slice(0,t.index),i=e.slice(t.index+t[0].length);return r&&n.push({text:r,kind:`text`}),n.push({text:t[0],kind:`upgrade`}),i&&n.push({text:i,kind:`text`}),n}function Yo(e){return e instanceof Error?e.message:String(e)}function Xo({post:e,site:t,user:n,limits:r={},now:i=()=>new Date}){let a=Vo(t.newsletters),o=a[0]??null,s=e.status===`draft`,c=s&&e.email?.status===`failed`,l=e.newsletter?t.newsletters.find(t=>t.slug===e.newsletter)??(c?{slug:e.newsletter}:null):null,u=l&&(l.status===`active`||c)?l:o,d=n.isAdmin?t.memberCount:null,f=Go(e,t),p=f!==null,m=null,h=null,g=u,_=()=>Ko({...t,memberCount:d},m,g!==null),v=()=>_()!==null,y=()=>zo(i().getTime()+Io),b=()=>zo(i().getTime()+Lo),x=qo(e,t,{emailUnavailable:p,emailDisabled:v()}),S=!1,C=!1,w=y(),T=!1,E,D=()=>E===void 0?e.newsletter&&O(e.emailSegment)||Uo(e,t)||null:E,k={publishType:x,isScheduled:C,scheduledAt:w,newsletterSlug:g?.slug??null,recipientFilter:D()},j=()=>g?A(M({slug:g.slug,visibility:g.visibility}),D()):null,N=()=>{if(!g||v()||p&&!c)return!1;let t=!!e.email,n=e.email?.status===`failed`;return x!==`publish`&&!!D()&&s&&!t||s&&t&&n},P=()=>{let e=v();return[{value:`publish+send`,label:`Publish and email`,display:`Publish and email`,disabled:e},{value:`publish`,label:`Publish only`,display:`Publish`,disabled:!1},{value:`send`,label:`Email only`,display:`Email`,disabled:e}]},F=()=>x!==k.publishType||C!==k.isScheduled||(C||T)&&w!==k.scheduledAt||(g?.slug??null)!==k.newsletterSlug||D()!==k.recipientFilter,I=()=>{let e=P(),t=N();return{publishType:x,publishTypeOptions:e,availablePublishTypes:p?[`publish`]:e.filter(e=>!e.disabled).map(e=>e.value),isScheduled:C,scheduledAt:w,minScheduledAt:y(),newsletter:g,newsletters:a,onlyDefaultNewsletter:a.length===1,recipientFilter:D(),fullRecipientFilter:j(),willEmail:t,willEmailImmediately:t&&!C,willPublish:x!==`send`,willOnlyEmail:x===`send`,emailUnavailable:p,emailUnavailableReason:f,emailDisabled:v(),emailDisabledReason:_(),emailBlock:m,publishBlock:h,canPublish:s&&(x!==`send`||t),isDirty:F()}},ee=e=>{let t=e instanceof Date?e.getTime():Date.parse(e);if(Number.isNaN(t))return;let n=zo(t),r=y();w=Bo(n,r)?r:n,T=!0},L=async()=>{await r.refreshSettings?.();try{n.isAuthorOrContributor||await r.checkSendingLimit?.();let e=r.getEmailVerification?.();e?.required&&(m={kind:`email-verification`,message:e.message||`Email sending is temporarily disabled because your account is currently in review. You should have an email about this from us already, but you can also reach us any time at support@ghost.org.`})}catch(e){m={kind:`sending-limit`,message:Yo(e)}}},R=async()=>{if(n.isAdmin)try{await r.checkPublishingLimit?.()}catch(e){let t=Yo(e);h={kind:`host-limit`,message:t,parts:Jo(t)}}};return{getState:I,setPublishType(e){x=e,S=!0},setIsScheduled(e){C=e===void 0?!C:e,C&&Bo(w,b())&&(w=b())},setScheduledAt:ee,resetPastScheduledAt(){Bo(w,y())&&(C=!1)},setNewsletter(e){g=e},setRecipientFilter(e){E=O(e)},reset(){x=k.publishType,S=!1,C=k.isScheduled,w=y(),T=!1,g=u,E=void 0},async checkLimits(){m=null,h=null;let[n]=await Promise.allSettled([L(),R()]);if((!S||v())&&(x=qo(e,t,{emailUnavailable:p,emailDisabled:v()}),k={...k,publishType:x}),n.status===`rejected`)throw n.reason;return{emailBlock:m,publishBlock:h}},toDispatch(){if(!s)return null;let e=N();if(x===`send`&&!e)return null;let t={};if(e&&(t.emailOnly=x===`send`,!c)){let e=D();g&&(t.newsletter=g.slug),e&&(t.emailSegment=e)}return C?{kind:`schedule`,options:{...t,publishedAt:w}}:{kind:`publish`,options:t}},toRevertDispatch(){return{kind:`revert`}}}}var Zo=`Unable to connect, please check your internet connection and try again.`,Qo=`Someone else has edited this post since you opened it. Reload the editor to get their changes before publishing.`,$o=`Your session was restored. Confirm again to publish.`,es=`Your session expired. Confirm again to sign in and publish.`,ts=`Unknown Error`,ns=`Something went wrong while saving. Please try again.`,rs=`This post can no longer be published from here. Reload the editor.`;function is(e){return e instanceof Error&&e.message?{message:e.message}:typeof e==`string`&&e?{message:e}:{message:ts}}function as(e){return e.kind===`saved`?null:e.kind===`needs-retry`?{message:$o}:e.kind===`dropped`||e.kind===`superseded`?{message:rs}:ss(e.error)}function os(e){return e.kind===`unknown`&&e.cause instanceof Error&&!(e.cause instanceof h)?ns:e.message}function ss(e){switch(e.kind){case`validation`:return{message:`Validation failed: ${e.message||`Unknown Error`}`};case`transport`:return{message:Zo};case`conflict`:return{message:Qo};case`session-invalid`:return{message:es};case`host-limit`:return{message:e.message||`Unknown Error`,parts:Jo(e.message||`Unknown Error`)};default:return{message:os(e)||`Unknown Error`}}}function cs(e,t){return t?`${e.replace(/\/+$/,``)}/p/${t}/`:``}function ls(e,t){if(!e)return``;let n=new URL(e);return n.searchParams.set(`member_status`,t.segment===`tier`?`paid`:t.segment),t.segment===`tier`&&t.tierSlug?n.searchParams.set(`member_tier`,t.tierSlug):n.searchParams.delete(`member_tier`),n.toString()}function us(e){let t=e.segment===`paid`||e.segment===`tier`?`paid`:`free`;return e.segment===`tier`&&e.tierSlug?{memberStatus:t,memberTier:e.tierSlug}:{memberStatus:t}}function ds(e,t){return e.segment===`tier`&&t?`${t} tier member`:`${e.segment} member`}function fs(e){let t=(0,X.useRef)(e);return t.current=e,e=>{try{e.currentTarget.contentWindow?.addEventListener(`keydown`,e=>{e.key===`Escape`&&t.current()})}catch{}}}function ps({previewUrl:e,audience:t,device:n,onEscape:r}){let i=fs(r);return e?(0,Z.jsx)(n===`mobile`?rn:we,{className:n===`desktop`?`size-full`:`max-w-full shrink-0`,"data-testid":Ci,...n===`mobile`?{device:n}:{},children:(0,Z.jsx)(`iframe`,{className:`size-full border-0`,"data-testid":wi,src:ls(e,t),title:`Post preview`,onLoad:i})}):(0,Z.jsx)(It,{className:`grow justify-center self-center`,"data-testid":Mi,description:`A post gets its preview link the first time it is saved.`,title:`Nothing to preview yet`,children:(0,Z.jsx)(Je,{})})}var ms=100*1024,hs=50,gs=`<!-- POST CONTENT START -->`,_s=`<!-- POST CONTENT END -->`;function vs(e){let t=e.indexOf(gs),n=e.indexOf(_s);return t!==-1&&n!==-1&&n>t?e.substring(t+27,n):e}function ys(e,t){let n=t.replace(/\/$/,``).length+hs,r=0;for(let[,t]of vs(e).matchAll(/href="([^"]+)"/g))t.startsWith(`%%{`)&&t.endsWith(`}%%`)||t===`#`||!t.startsWith(`http://`)&&!t.startsWith(`https://`)&&!t.startsWith(`/`)||(r+=n-t.length);return r}function bs(e,t){let n=new Blob([e]).size,r=Math.max(0,n+ys(e,t));return{overLimit:r>=ms,sizeKb:Math.round(r/1024)}}var xs=`EditorEmailSize`;function Ss(e){let t=!!e.email||e.emailOnly===!0;return e.status!==`published`&&e.displayName!==`page`&&!t}function Cs(e){let t=C(),{data:n}=jo(),{data:r}=Sr({requestOptions:Q}),[i]=Pn(e.updatedAt??null,500),a=ur(n?.settings??null,`editor_default_email_recipients`),s=r?.site.url,c=!!e.id&&!!i&&!!s&&!!a&&a!==`disabled`&&Ss(e),{data:l}=d({queryKey:[xs,e.id,i,s],queryFn:async()=>{try{return bs(Rr.parse(await t(_(`/email_previews/posts/${e.id}/`),Q)).email_previews[0].html,s??``)}catch{return null}},enabled:c,placeholderData:o,staleTime:1/0});return c?l??null:null}var ws=e(Nr(),1),Ts=`z-[1100]`,Es=`Please enter a password`,Ds=`Couldn’t sign in. Please try again.`,Os=`Verification code is required`,ks=`Verification code must be 6 numbers`,As=`Your verification code is incorrect.`,js=`There was a problem verifying the code. Please try again.`,Ms=`A new verification code has been sent to your email.`;function Ns(e){return e instanceof g?e.data?.errors?.[0]?.message:void 0}function Ps(e){return{kind:`verify`,newDevice:e.data?.errors?.[0]?.code===`2FA_NEW_DEVICE_DETECTED`}}function Fs({email:e,passwordRef:t,onSucceeded:n}){let{mutateAsync:r}=ar(),{mutateAsync:i}=rr(),[a,o]=(0,X.useState)({kind:`password`}),[s,c]=(0,X.useState)(``),[l,d]=(0,X.useState)(``),[f,p]=(0,X.useState)(null),[m,h]=(0,X.useState)(!1),g=(0,X.useRef)(null),_=(0,X.useRef)(!0);(0,X.useEffect)(()=>(_.current=!0,()=>{_.current=!1}),[]),(0,X.useEffect)(()=>{a.kind===`verify`&&g.current?.focus()},[a.kind]);let v=async()=>{if(!s){p(Es);return}h(!0);try{await r({username:e,password:s}),_.current&&n()}catch(e){if(!_.current)return;if(ir(e)){o(Ps(e));return}p(Ns(e)??Ds)}finally{_.current&&h(!1)}},y=async()=>{let e=l.trim();if(!e){p(Os);return}if(!/^\d{6}$/.test(e)){p(ks);return}h(!0);try{await i({token:e}),_.current&&n()}catch(e){if(!_.current)return;if(e instanceof u){p(As);return}p(Ns(e)??js)}finally{_.current&&h(!1)}},b=e=>{e.preventDefault(),!m&&(p(null),a.kind===`password`?v():y())};return a.kind===`verify`?(0,Z.jsxs)(`form`,{noValidate:!0,onSubmit:b,children:[(0,Z.jsxs)(pt,{children:[(0,Z.jsx)(st,{children:a.newDevice?`Verify it’s really you`:`2FA confirmation`}),(0,Z.jsx)(ot,{children:a.newDevice?`It looks like you’re signing in from a new device. A 6-digit sign-in verification code has been sent to your email to keep your account safe.`:`Enter the sign-in verification code sent to your email.`})]}),(0,Z.jsx)(Rt,{className:`py-6`,children:(0,Z.jsxs)(Vt,{"data-invalid":f?!0:void 0,children:[(0,Z.jsx)(Bt,{htmlFor:`reauth-token`,children:`Verification code`}),(0,Z.jsxs)(en,{children:[(0,Z.jsx)(Zt,{ref:g,"aria-invalid":f?!0:void 0,autoComplete:`one-time-code`,id:`reauth-token`,inputMode:`numeric`,name:`token`,pattern:`[0-9]*`,placeholder:`• • • • • •`,value:l,"data-1p-ignore":!0,onChange:e=>{p(null),d(e.target.value)}}),(0,Z.jsx)(Qt,{align:`inline-end`,children:(0,Z.jsx)(br,{onError:p,onSent:()=>R.success(Ms)})})]}),f&&(0,Z.jsx)(zt,{children:f})]})}),(0,Z.jsxs)(dt,{children:[(0,Z.jsx)(ft,{asChild:!0,children:(0,Z.jsx)(q,{disabled:m,variant:`outline`,children:`Cancel`})}),(0,Z.jsx)(q,{disabled:m,type:`submit`,children:m?`Verifying…`:`Verify`})]})]}):(0,Z.jsxs)(`form`,{noValidate:!0,onSubmit:b,children:[(0,Z.jsxs)(pt,{children:[(0,Z.jsx)(st,{children:`Are you still here?`}),(0,Z.jsx)(ot,{children:`Your authenticated session expired. Enter your password to continue where you left off.`})]}),(0,Z.jsxs)(Rt,{className:`gap-4 py-6`,children:[(0,Z.jsxs)(Vt,{children:[(0,Z.jsx)(Bt,{htmlFor:`reauth-email`,children:`Email`}),(0,Z.jsx)(Xt,{autoComplete:`username`,id:`reauth-email`,name:`username`,type:`email`,value:e,readOnly:!0})]}),(0,Z.jsxs)(Vt,{"data-invalid":f?!0:void 0,children:[(0,Z.jsx)(Bt,{htmlFor:`reauth-password`,children:`Password`}),(0,Z.jsx)(Xt,{ref:t,"aria-invalid":f?!0:void 0,autoComplete:`current-password`,id:`reauth-password`,name:`password`,placeholder:`•••••••••••••••`,type:`password`,value:s,onChange:e=>{p(null),c(e.target.value)}}),f&&(0,Z.jsx)(zt,{children:f})]})]}),(0,Z.jsxs)(dt,{children:[(0,Z.jsx)(ft,{asChild:!0,children:(0,Z.jsx)(q,{disabled:m,variant:`outline`,children:`Cancel`})}),(0,Z.jsx)(q,{disabled:m,type:`submit`,children:m?`Authenticating…`:`Sign in`})]})]})}function Is({open:e,email:t,onSucceeded:n,onAbandoned:r}){let i=(0,X.useRef)(null);return(0,Z.jsx)(mt,{open:e,onOpenChange:e=>{e||r()},children:(0,Z.jsx)(ct,{className:Ts,"data-testid":pi,overlayClassName:Ts,onOpenAutoFocus:e=>{e.preventDefault(),i.current?.focus()},children:(0,Z.jsx)(Fs,{email:t,passwordRef:i,onSucceeded:n})})})}var Ls=`Your session expired. Send again to sign in.`;function Rs({postId:e,audience:t,audienceLabel:n,newsletterSlug:r,disabled:i=!1}){let a=(0,X.useId)(),{data:o}=x({requestOptions:Q}),{data:s}=de({requestOptions:Q}),{data:c}=jo(),{mutateAsync:l,isPending:u}=Lr(),d=v(),[f,p]=(0,X.useState)(null),[m,h]=(0,X.useState)(!1),[g,_]=(0,X.useState)(!1),[y,b]=(0,X.useState)(null),S=f??o?.email??``,[C,T,E]=hr(c?.settings??[],[`mailgun_api_key`,`mailgun_domain`,`mailgun_base_url`]),D=!!s?.config.mailgunIsConfigured||!!(C&&T&&E),O=s!==void 0&&c!==void 0,k=async()=>{let n=S.trim();if(!i){if(b(null),!ws.default.isEmail(n)){R.error(`Please enter a valid email`);return}if(!D){R.error(`Please verify your email settings`);return}try{await l({postId:e,emails:[n],newsletter:r,...us(t)}),R.success(`Test email sent to ${n}`)}catch(e){if(e instanceof w){h(!0),_(!0);return}d(e)}}};return(0,Z.jsxs)(Ft,{open:m,onOpenChange:h,children:[(0,Z.jsx)(Mt,{asChild:!0,children:(0,Z.jsxs)(q,{className:`shrink-0`,disabled:i,variant:`outline`,children:[(0,Z.jsx)(We,{}),`Test`]})}),(0,Z.jsxs)(Nt,{align:`end`,className:`w-80`,children:[(0,Z.jsx)(`form`,{noValidate:!0,onSubmit:e=>{e.preventDefault(),k()},children:(0,Z.jsxs)(G,{gap:`md`,children:[(0,Z.jsx)(Lt,{htmlFor:a,children:`Send test email`}),(0,Z.jsx)(Xt,{"data-testid":Ai,id:a,placeholder:`you@yoursite.com`,type:`email`,value:S,onChange:e=>p(e.target.value)}),(0,Z.jsxs)(`p`,{className:`text-sm text-muted-foreground`,children:[`You’ll receive this as a `,n,`.`]}),(0,Z.jsx)(q,{disabled:i||u||!O,type:`submit`,children:u?`Sending...`:`Send`}),y?(0,Z.jsx)(K,{className:`text-destructive`,"data-testid":ji,role:`alert`,size:`sm`,children:y}):null]})}),(0,Z.jsx)(Is,{email:o?.email??``,open:g,onAbandoned:()=>{_(!1),b(Ls)},onSucceeded:()=>{_(!1),k()}})]})]})}function zs(e){"@babel/helpers - typeof";return zs=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},zs(e)}function Bs(e,t){zr(e);var n,r;zs(t)===`object`?(n=t.min||0,r=t.max):(n=arguments[1]||0,r=arguments[2]);var i=e.match(/[^\uFE0F\uFE0E][\uFE0F\uFE0E]/g)||[],a=e.match(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g)||[],o=e.length-i.length-a.length,s=o>=n&&(r===void 0||o<=r);return s&&Array.isArray(t?.discreteLengths)?t.discreteLengths.some(function(e){return e===o}):s}function Vs(e,t){let n={};for(let r of t)n[r]=e[r];return n}var Hs=[`tags`,`authors`,`custom_excerpt`,`email_subject`,`featured`,`visibility`,`tiers`,`meta_title`,`meta_description`,`canonical_url`,`custom_template`,`codeinjection_head`,`codeinjection_foot`,`og_image`,`og_title`,`og_description`,`twitter_image`,`twitter_title`,`twitter_description`,`show_title_and_feature_image`],Us=`Please select at least one tier.`,Ws=`At least one author is required.`;function Gs(e,t){return e===`authors`?t.authors.map(({id:e})=>({id:e})):e===`tags`?Gr(t.tags):e===`tiers`?[...t.tiers]:e===`show_title_and_feature_image`?t.show_title_and_feature_image??void 0:t[e]}var Ks=65535,qs=`Email subject cannot be longer than 300 characters.`,Js=`Title cannot be longer than 255 characters.`,Ys=`Excerpt cannot be longer than 300 characters.`,Xs=`Header code cannot be longer than ${Ks} characters.`,Zs=`Footer code cannot be longer than ${Ks} characters.`,Qs=`Meta title cannot be longer than 300 characters.`,$s=`Meta description cannot be longer than 500 characters.`,ec=`Facebook title cannot be longer than 300 characters.`,tc=`Facebook description cannot be longer than 500 characters.`,nc=`X title cannot be longer than 300 characters.`,rc=`X description cannot be longer than 500 characters.`;function ic(e){return Bs(e.trim(),{max:255})?null:Js}function ac(e){return e.visibility===`tiers`&&e.tiers.length===0}var oc=`Please choose a past date and time.`;function sc(e,t,n=Date.now()){if(t===null||e!==`draft`&&e!==`published`)return!1;let r=Date.parse(t);return!Number.isNaN(r)&&r>=n}function cc(e,t){return Array.from(e??``).length>t}var lc=[`email_subject`,`visibility`,`tiers`,`custom_excerpt`,`codeinjection_head`,`codeinjection_foot`,`meta_title`,`meta_description`,`canonical_url`,`og_title`,`og_description`,`twitter_title`,`twitter_description`];function uc(e){return Vs(e,lc)}var dc={email_subject:{max:300,message:qs},custom_excerpt:{max:300,message:Ys},codeinjection_head:{max:Ks,message:Xs},codeinjection_foot:{max:Ks,message:Zs},meta_title:{max:300,message:Qs},meta_description:{max:500,message:$s},og_title:{max:300,message:ec},og_description:{max:500,message:tc},twitter_title:{max:300,message:nc},twitter_description:{max:500,message:rc}};function fc(e,t){if(e===`visibility`)return null;if(e===`tiers`)return ac(t)?Us:null;if(e===`canonical_url`){let e=t.canonical_url??``;return/\S/.test(e)?/\s/.test(e)||!/^(\/|[a-zA-Z0-9-]+:)/.test(e)?`Please enter a valid URL`:cc(e,2e3)?`Canonical URL is too long, max 2000 chars`:null:null}let{max:n,message:r}=dc[e];return cc(t[e],n)?r:null}function pc(e,t,n=[]){for(let r of lc){if(t&&r===`tiers`||n.includes(r))continue;let i=fc(r,e);if(i)return i}return null}var mc=40,hc=`...`;function gc(e){let t=Array.from(e),n=mc-3;return t.length>n?`${t.slice(0,n).join(``)}${hc}`:e}var _c=new Set([`conflict`,`not-found`,`forbidden`]);function vc({editor:e}){let t=(0,X.useId)(),[n,r]=(0,X.useState)(null),i=cc(e.value,300)?qs:null,a=e.saveError&&(e.saveError!==n||_c.has(e.saveError.kind))?e.saveError:null,o=i??(a&&ss(a).message),s=!!i||!!a;return(0,Z.jsxs)(G,{className:`min-w-0 flex-1`,gap:`xs`,children:[(0,Z.jsx)(Xt,{"aria-describedby":o?t:void 0,"aria-invalid":s,"aria-label":`Email subject`,className:`min-w-0`,"data-testid":Oi,placeholder:gc(e.fallback),value:e.value??e.fallback,onBlur:()=>{i||(e.value===``&&e.onChange(null),e.onCommit())},onChange:t=>{r(e.saveError),e.onChange(t.target.value)},onKeyDown:e=>{e.key===`Enter`&&!e.nativeEvent.isComposing&&(e.preventDefault(),e.currentTarget.blur())}}),o&&(0,Z.jsx)(`p`,{className:`text-sm text-destructive`,id:t,role:`alert`,children:o})]})}var yc=`
3
3
  html {
4
4
  scrollbar-width: thin;
5
5
  scrollbar-color: rgba(0, 0, 0, 0.2) transparent;
@@ -15,4 +15,4 @@ html::-webkit-scrollbar-thumb {
15
15
  html::-webkit-scrollbar-thumb:hover {
16
16
  background-color: rgba(0, 0, 0, 0.3);
17
17
  }
18
- `;function yc(e){let t=`<style>${vc}</style>`;return e.includes(`</head>`)?e.replace(`</head>`,`${t}</head>`):`${e}${t}`}function bc(e,t,n){if(!le(n))return e||t;if(!ue(n))return t;let r=n.hostSettings?.managedEmail?.sendingDomain;return e&&e.split(`@`)[1]===r?e:t}function xc({post:e}){let t=Ss(e);return t?.overLimit?(0,Z.jsxs)(W,{align:`start`,className:`border-b border-border-default bg-state-warning/10 p-4`,"data-testid":Oi,gap:`md`,children:[(0,Z.jsx)(Me,{className:`size-5 shrink-0 text-state-warning`}),(0,Z.jsxs)(G,{gap:`xs`,children:[(0,Z.jsxs)(K,{size:`sm`,weight:`semibold`,children:[`This newsletter is `,(0,Z.jsxs)(`span`,{className:`text-state-warning`,children:[t.sizeKb,`kB`]})]}),(0,Z.jsx)(K,{size:`sm`,tone:`secondary`,children:`Emails may get clipped in the inbox behind a “View entire message” link when they’re over 100kB.`})]})]}):null}function Sc({subjectEditor:e,postId:t,post:n,audience:r,tierName:i,canSendTestEmail:a,device:o,newsletters:s,newsletterSlug:c,newsletterLookupError:l=!1,newsletterLookupPending:u=!1,newsletterMissing:d=!1,onNewsletterChange:f,onRetryNewsletterLookup:p}){let{data:m}=Ao(),{data:h}=de({requestOptions:Q}),[g]=hr(m?.settings??[],[`default_email_address`]),{data:_,isError:v,isFetching:y,refetch:b}=Ir(t,{...ls(r),enabled:!l&&!u&&!d,newsletter:c,requestOptions:Q,staleTime:0}),x=_?.email_previews[0],S=s.find(e=>e.slug===c),C=h?.config,w=e=>C?bc(e,g??``,C):``;return(0,Z.jsx)(o===`mobile`?rn:we,{className:o===`desktop`?`size-full max-w-[720px] overflow-hidden rounded-xl shadow-xl`:`max-w-full shrink-0`,"data-testid":wi,...o===`mobile`?{device:o}:{},children:(0,Z.jsxs)(G,{className:`size-full bg-background`,gap:`none`,children:[(0,Z.jsxs)(Te,{align:`center`,className:`grid-cols-[auto_minmax(0,1fr)] border-b border-border-default p-4 [--control-height:28px]`,gap:`md`,children:[(0,Z.jsx)(`span`,{className:`text-sm text-muted-foreground`,children:`From`}),(0,Z.jsxs)(W,{className:`min-w-0`,gap:`lg`,justify:`between`,children:[(0,Z.jsx)(we,{className:`min-w-0 flex-1`,children:u?(0,Z.jsx)(tn,{size:`sm`}):l?(0,Z.jsx)(`p`,{className:`min-w-0 truncate text-sm text-muted-foreground`,children:`Couldn’t load newsletters`}):d?(0,Z.jsx)(`p`,{className:`min-w-0 truncate text-sm text-muted-foreground`,"data-testid":Mi,children:`This newsletter no longer exists`}):s.length>1?(0,Z.jsxs)(pn,{value:S?.slug,onValueChange:f,children:[(0,Z.jsx)(un,{"aria-label":`Newsletter`,className:`w-auto max-w-full min-w-0 [&>span]:min-w-0 [&>span]:truncate [&>svg]:shrink-0`,title:`${S?.name??``} <${w(S?.sender_email??null)}>`,children:(0,Z.jsx)(fn,{})}),(0,Z.jsx)(ln,{children:s.map(e=>(0,Z.jsxs)(cn,{value:e.slug,children:[e.name,` <`,w(e.sender_email),`>`]},e.id))})]}):(0,Z.jsxs)(`p`,{className:`min-w-0 truncate text-sm`,"data-testid":Ei,children:[S?.name,` `,(0,Z.jsxs)(`span`,{className:`text-muted-foreground`,children:[`<`,w(S?.sender_email??null),`>`]})]})}),a&&(0,Z.jsx)(Ls,{audience:r,audienceLabel:us(r,i),disabled:l||u||d||e?.hasUnsavedChanges||e?.isSaving,newsletterSlug:c,postId:t})]}),(0,Z.jsx)(`span`,{className:`self-start text-sm leading-(--control-height) text-muted-foreground`,children:`Subject`}),e&&o===`desktop`?(0,Z.jsx)(_c,{editor:e}):(0,Z.jsx)(`p`,{className:`min-w-0 truncate text-sm`,"data-testid":Di,children:e?e.value||e.fallback:!y&&x?.subject})]}),n?(0,Z.jsx)(xc,{post:n}):null,u||y?(0,Z.jsx)(W,{className:`grow`,gap:`none`,justify:`center`,children:(0,Z.jsx)(tn,{size:`md`})}):l?(0,Z.jsx)(It,{actions:(0,Z.jsx)(q,{variant:`outline`,onClick:p,children:`Retry`}),className:`grow justify-center`,"data-testid":Ni,description:`The newsletters could not be loaded.`,title:`Couldn’t load newsletters`,children:(0,Z.jsx)(De,{})}):v?(0,Z.jsx)(It,{actions:(0,Z.jsx)(q,{variant:`outline`,onClick:()=>void b(),children:`Retry`}),className:`grow justify-center`,description:`The email preview could not be loaded.`,title:`Couldn’t load the email preview`,children:(0,Z.jsx)(De,{})}):d?(0,Z.jsx)(It,{className:`grow justify-center`,description:`Choose an active newsletter before sending this post.`,title:`Newsletter unavailable`,children:(0,Z.jsx)(Me,{})}):(0,Z.jsx)(`iframe`,{className:`min-h-0 grow border-0`,"data-testid":Ti,sandbox:`allow-popups allow-popups-to-escape-sandbox`,srcDoc:yc(x?.html??``),title:`Email preview`})]})})}function Cc({subjectEditor:e,open:t,animate:n=!0,postId:r,previewUrl:i,isPost:a=!0,post:o,newsletterSlug:s,fallbackNewsletterSlug:c,onBeforeOpen:l,onPublish:u,publishDisabled:d=!1,onOpenChange:f}){let[p,m]=(0,X.useState)(`browser`),[h,g]=(0,X.useState)(`desktop`),[_,v]=(0,X.useState)(`free`),[y,b]=(0,X.useState)(null),[S,C]=(0,X.useState)(null),[w,T]=(0,X.useState)(()=>l&&t?`preparing`:`ready`),[E,D]=(0,X.useState)(``),[O,k]=(0,X.useState)(t),{data:A}=x({requestOptions:Q}),{data:j}=Ao(),M=sr({requestOptions:Q}),N=mr({requestOptions:Q}),P=ur(j?.settings??[],`members_enabled`)===!0,F=a&&P&&!!N&&!!A&&!kn(A),I=!!A&&(Dn(A)||jn(A)||Nn(A)),ee=M===!0&&!!A&&!kn(A),{data:L}=Qn({searchParams:Do,enabled:t&&w===`ready`&&ee,requestOptions:Q}),z=(0,X.useMemo)(()=>L?.tiers??[],[L]),{data:te,fetchNextPage:ne,hasNextPage:re,isError:ie,isFetching:ae,isFetchingNextPage:oe,refetch:B}=Un({searchParams:Oo(A),enabled:t&&w===`ready`&&F,requestOptions:Q});(0,X.useEffect)(()=>{re&&!oe&&!ie&&ne()},[ie,ne,re,oe]);let se=ae||re||oe,ce=(0,X.useMemo)(()=>(te?.newsletters??[]).filter(e=>e.status===`active`),[te]),le=!!te&&!ie&&!se&&!!s&&!ce.some(e=>e.slug===s),{data:ue,isError:de,isFetching:fe,refetch:pe}=Un({searchParams:{filter:`slug:${s??``}`,limit:`1`},enabled:t&&w===`ready`&&F&&le,requestOptions:Q,staleTime:0}),V=le&&ue?ue.newsletters.find(e=>e.slug===s):void 0,me=le&&!de&&!!ue&&!V,H=ie||le&&de,he=F&&(se||!te&&!ie)||le&&(fe||!ue&&!de),ge=(0,X.useMemo)(()=>V?[V,...ce]:ce,[ce,V]),_e=(0,X.useRef)(l),ve=(0,X.useRef)(null);_e.current=l,t!==O&&(k(t),ve.current=null,T(t&&l?`preparing`:`ready`),t&&C(null)),(0,X.useEffect)(()=>{if(!t||w!==`preparing`)return;let e=_e.current;if(!e){T(`ready`);return}let n=ve.current??=Promise.resolve().then(e),r=!1;return n.then(()=>{r||T(`ready`)},e=>{r||(D(rs(e).message),T(`failed`))}),()=>{r=!0}},[t,w]);let ye=(0,X.useMemo)(()=>{let e=p===`email`?[{label:`Free member`,value:`free`}]:[{label:`Public visitor`,value:`anonymous`},{label:`Free member`,value:`free`}];return M&&(e.push({label:`Paid member`,value:`paid`}),z.length>0&&e.push({label:`Specific tier`,value:`tier`})),e},[p,M,z.length]),be=z.find(e=>e.active)??z[0],xe=y??be?.slug,Se=z.find(e=>e.slug===xe),Ce=z.filter(e=>e.active),we=z.filter(e=>!e.active),Te=S??s??c??ge[0]?.slug,K=()=>{ve.current=null,T(`preparing`)},Ee=()=>{ie&&B(),de&&pe()},Oe={segment:_,tierSlug:xe},ke=cs(i,Oe),Ae=w===`ready`&&!!ke,je=p===`browser`||ye.length>1,Me=_===`tier`&&z.length>0,Ne=p===`email`&&F,Pe=e=>{m(e),e===`email`&&_===`anonymous`&&v(`free`)},Ie=async()=>{try{await navigator.clipboard.writeText(ke),R.success(`Preview link copied`)}catch{R.error(`Could not copy the preview link`)}};return(0,Z.jsx)(Po,{animate:n,"aria-describedby":void 0,"data-testid":xi,headerActions:(0,Z.jsxs)(nn.ActionGroup,{children:[(0,Z.jsxs)(yr,{children:[(0,Z.jsx)(jr,{asChild:!0,children:(0,Z.jsx)(nn.Action,{disabled:!Ae,label:`Share`,iconOnly:!0,children:(0,Z.jsx)(ze,{})})}),(0,Z.jsxs)(kr,{align:`end`,children:[(0,Z.jsxs)(xr,{onSelect:()=>void Ie(),children:[(0,Z.jsx)(Qe,{}),`Copy preview link`]}),(0,Z.jsx)(xr,{asChild:!0,children:(0,Z.jsxs)(`a`,{href:ke,rel:`noopener noreferrer`,target:`_blank`,children:[(0,Z.jsx)(Fe,{}),`Open in new tab`]})})]})]}),(0,Z.jsx)(q,{variant:`ghost`,onClick:()=>f(!1),children:`Close`}),u?(0,Z.jsx)(q,{className:`w-20 shrink-0`,disabled:d,onClick:u,children:`Publish`}):null]}),headerControls:(0,Z.jsxs)(W,{className:`min-w-0`,gap:`md`,children:[F&&(0,Z.jsx)(_n,{value:p,variant:`segmented`,onValueChange:e=>Pe(e),children:(0,Z.jsxs)(gn,{className:`rounded-full`,children:[(0,Z.jsx)(hn,{className:`rounded-full`,value:`browser`,children:`Web`}),(0,Z.jsx)(hn,{className:`rounded-full`,value:`email`,children:`Email`})]})}),(0,Z.jsxs)(bn,{className:`hidden shrink-0 sidebar:flex`,shape:`pill`,type:`single`,value:h,onValueChange:e=>{(e===`desktop`||e===`mobile`)&&g(e)},children:[(0,Z.jsx)(yn,{"aria-label":`Desktop`,value:`desktop`,children:(0,Z.jsx)(qe,{})}),(0,Z.jsx)(yn,{"aria-label":`Mobile`,value:`mobile`,children:(0,Z.jsx)(Be,{})})]}),je&&(0,Z.jsxs)(pn,{value:_,onValueChange:e=>v(e),children:[(0,Z.jsx)(nn.SelectTrigger,{className:`hidden shrink-0 md:flex`,label:`Preview as`,shape:`pill`,variant:`ghost`,showChevron:!0,children:(0,Z.jsx)(fn,{})}),(0,Z.jsx)(ln,{children:ye.map(e=>(0,Z.jsx)(cn,{value:e.value,children:e.label},e.value))})]}),Me&&(0,Z.jsxs)(pn,{value:xe,onValueChange:b,children:[(0,Z.jsx)(nn.SelectTrigger,{className:`hidden max-w-[240px] min-w-0 md:flex [&>span]:min-w-0 [&>span]:truncate`,label:`Tier`,shape:`pill`,title:Se?.name,variant:`ghost`,showChevron:!0,children:(0,Z.jsx)(fn,{})}),(0,Z.jsxs)(ln,{children:[Ce.length>0&&(0,Z.jsxs)(dn,{children:[(0,Z.jsx)(sn,{children:`Active tiers`}),Ce.map(e=>(0,Z.jsx)(cn,{value:e.slug,children:e.name},e.id))]}),we.length>0&&(0,Z.jsxs)(dn,{children:[(0,Z.jsx)(sn,{children:`Archived tiers`}),we.map(e=>(0,Z.jsx)(cn,{value:e.slug,children:e.name},e.id))]})]})]})]}),layout:`header`,open:t,title:`Preview`,onOpenChange:f,children:(0,Z.jsx)(W,{align:`start`,className:U(`min-h-0 overflow-auto`,Ne||h===`mobile`?`bg-muted`:`bg-surface-panel`,(Ne||h===`mobile`)&&`p-6`),gap:`none`,justify:`center`,children:w===`preparing`?(0,Z.jsx)(W,{align:`center`,"aria-label":`Preparing preview`,className:`grow self-center`,gap:`none`,justify:`center`,role:`status`,children:(0,Z.jsx)(tn,{size:`lg`})}):w===`failed`?(0,Z.jsx)(It,{actions:(0,Z.jsxs)(G,{className:`w-[320px] max-w-full`,gap:`md`,children:[F&&e&&(0,Z.jsxs)(G,{className:`text-left`,gap:`xs`,children:[(0,Z.jsx)(`span`,{className:`text-sm text-muted-foreground`,children:`Email subject`}),(0,Z.jsx)(_c,{editor:{...e,saveError:null,onCommit:K}})]}),(0,Z.jsx)(q,{className:`self-center`,variant:`outline`,onClick:K,children:`Retry`})]}),className:`grow justify-center self-center`,"data-testid":Pi,description:(0,Z.jsx)(`span`,{role:`alert`,children:E}),title:`Couldn’t preview this post`,children:(0,Z.jsx)(De,{})}):Ne?(0,Z.jsx)(Sc,{audience:Oe,canSendTestEmail:I,device:h,newsletterLookupError:H,newsletterLookupPending:he,newsletterMissing:me&&Te===s,newsletters:ge,newsletterSlug:Te,post:o,postId:r,subjectEditor:e,tierName:Se?.name,onNewsletterChange:C,onRetryNewsletterLookup:Ee}):(0,Z.jsx)(fs,{audience:Oe,device:h,previewUrl:i,onEscape:()=>f(!1)})})})}function wc({post:e,siteTitle:t}){return(0,Z.jsxs)(`a`,{className:`block overflow-hidden rounded-lg border border-border-default`,"data-testid":co,href:e.url??`#`,rel:`noopener noreferrer`,target:`_blank`,children:[e.featureImage?(0,Z.jsx)(`div`,{className:`aspect-video bg-cover bg-center`,style:{backgroundImage:`url(${e.featureImage})`}}):null,(0,Z.jsxs)(G,{className:`p-6`,gap:`xs`,children:[(0,Z.jsx)(K,{as:`h3`,className:`text-pretty`,size:`lg`,weight:`bold`,children:e.title}),e.excerpt?(0,Z.jsx)(K,{className:`line-clamp-2 text-pretty`,size:`lg`,tone:`secondary`,children:e.excerpt}):null,t?(0,Z.jsx)(K,{size:`lg`,tone:`secondary`,children:t}):null]})]})}var Tc=e(ve(),1);function Ec(e){return e===1?`subscriber`:`subscribers`}function Dc(e){return e.charAt(0).toUpperCase()+e.slice(1)}function Oc(e){return e.filter(e=>!!e).join(` `)}function kc({recipientType:e,count:t,newsletterName:n}){let r=t==null,i=e===`all`;return Oc([i&&(r||t>1)?`All`:null,r?null:_e(t),i?null:r?Dc(e):e,Ec(t),n?`of ${n}`:null])}function Ac({recipientType:e,count:t}){let n=t==null,r=e===`all`;return Oc([r?`all`:null,n?null:_e(t),r?null:e,Ec(t)])}var jc={"publish+send":{idle:`Publish & send`,running:`Publishing & sending`},send:{idle:`Send email`,running:`Sending`},publish:{idle:`Publish`,running:`Publishing`},schedule:{running:`Scheduling`}};function Mc({publishType:e,isScheduled:t,scheduledAt:n,displayName:r,timezone:i}){let a=jc[e].idle;return e===`publish`&&(a+=` ${r}`),t?a+=`, on ${Tc.default.tz(n,i).format(`MMMM Do`)}`:a+=`, right now`,a}function Nc(e,t){return jc[t?`schedule`:e].running}function Pc({willPublish:e,willEmail:t,willOnlyEmail:n}){return e&&t?`publish+send`:n?`send`:`publish`}function Fc(e,t){let n=Tc.default.tz(e,t);return new Date(n.year(),n.month(),n.date())}function Ic(e,t){return(0,Tc.default)(e).from(t?(0,Tc.default)(t):Tc.default.utc())}function Lc(e,t){return Tc.default.tz(e,t).format(`D MMM YYYY [at] HH:mm`)}function Rc(e,t){let n=Tc.default.tz(e,t);return`${n.isSame(Tc.default.tz(t),`day`)?`today`:`on ${n.format(`MMMM Do`)}`} at ${n.format(`HH:mm`)}`}function zc({onRevertToDraft:e}){return e?(0,Z.jsxs)(G,{gap:`md`,children:[(0,Z.jsx)(K,{size:`lg`,children:`Need to make a change?`}),(0,Z.jsx)(W,{children:(0,Z.jsx)(q,{className:`h-auto min-h-11 max-w-full px-5 py-2 whitespace-normal`,"data-testid":fo,size:`lg`,variant:`outline`,onClick:e,children:`Unschedule and revert to draft →`})})]}):null}function Bc({post:e,state:t,captured:n,timezone:r,siteTitle:i,postCount:a,completedAt:o,note:s,onRevertToDraft:c}){let{count:l}=L(t.fullRecipientFilter,{requestOptions:Q}),u=n.willOnlyEmail,d=n.isScheduled?t.scheduledAt:o??e.publishedAt??t.scheduledAt,f=u?`sent`:n.willEmail?`published and sent`:`published`,p=!!s;return(0,Z.jsxs)(G,{"data-testid":Ha,gap:`xl`,children:[s?(0,Z.jsx)(Mr,{"data-testid":lo,role:`status`,variant:`warning`,children:s}):null,(0,Z.jsx)(K,{as:`h2`,className:`text-5xl leading-tighter tracking-tight`,weight:`bold`,children:n.isScheduled?(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(`span`,{className:`block text-state-success`,children:`All set!`}),` Your`,` `,u?`email`:e.displayName,` will be `,f,` `,Rc(d,r),`.`]}):(0,Z.jsxs)(Z.Fragment,{children:[u&&p?null:(0,Z.jsx)(`span`,{className:`block text-state-success`,children:`Boom. It’s out there. `}),u?p?(0,Z.jsxs)(Z.Fragment,{children:[`Your `,e.displayName,` has been created.`]}):`Your email has been sent.`:e.displayName===`post`&&a?(0,Z.jsxs)(Z.Fragment,{children:[`That’s `,_e(a),` `,a===1?`post`:`posts`,` published, keep going!`]}):(0,Z.jsxs)(Z.Fragment,{children:[`Your `,e.displayName,` has been published.`]})]})}),u?(0,Z.jsxs)(G,{gap:`xl`,children:[p?null:(0,Z.jsxs)(K,{className:`text-pretty`,size:`lg`,children:[`Your post `,n.isScheduled?`will be`:`was`,` sent to`,` `,(0,Z.jsx)(`strong`,{children:Ac({recipientType:F(t.recipientFilter),count:l})}),t.onlyDefaultNewsletter?null:(0,Z.jsxs)(Z.Fragment,{children:[` `,`of `,(0,Z.jsx)(`strong`,{children:t.newsletter?.name})]}),` `,`on `,Lc(d,r),`.`]}),n.isScheduled?(0,Z.jsx)(zc,{onRevertToDraft:c}):null]}):(0,Z.jsxs)(G,{gap:`xl`,children:[(0,Z.jsx)(wc,{post:e,siteTitle:i}),n.isScheduled?(0,Z.jsx)(zc,{onRevertToDraft:c}):(0,Z.jsx)(W,{children:(0,Z.jsx)(q,{className:`px-5`,size:`lg`,variant:`outline`,asChild:!0,children:(0,Z.jsxs)(`a`,{"data-testid":uo,href:`#/analytics`,children:[(0,Z.jsx)(je,{}),`Back to dashboard`]})})})]})]})}var Vc=1e3,Hc=15*1e3;function Uc(e){return!!e&&e.includes(`partially`)}function Wc(e){let t=e?.error??null;return{kind:`failed`,error:t,partial:Uc(t)}}function Gc(e){let{reload:t,retry:n}=e,r=e.setTimeout??((e,t)=>setTimeout(e,t)),i=e.clearTimeout??(e=>clearTimeout(e)),a=null;function o(e,t){return new Promise(n=>{let i=!1,a=()=>{i||(i=!0,e.timer=null,e.release=null,n())};e.release=a;let o=r(a,t);i||(e.timer=o)})}function s(e){e.cancelled=!0,e.timer!==null&&(i(e.timer),e.timer=null),e.release?.(),e.release=null,e.settleCancelled()}function c(){a&&=(s(a.state),null)}async function l(e,{stopWhenUnpublished:n}){let r=0;for(;r<Hc;){if(await o(e,Vc),e.cancelled)return{kind:`cancelled`};r+=Vc;let i=await t(e.postId);if(e.cancelled)return{kind:`cancelled`};if(n&&i.status!==`sent`&&i.status!==`published`)return{kind:`unpublished`};if(!i.email)return{kind:`not-needed`};if(i.email.status===`submitted`)return{kind:`submitted`};if(i.email.status===`failed`)return Wc(i.email)}return{kind:`timeout`}}function u(e,t,n){if(a){if(a.state.operation===e&&a.state.postId===t)return a.promise;s(a.state),a=null}let r=()=>{},i=new Promise(e=>{r=()=>e({kind:`cancelled`})}),o={operation:e,postId:t,cancelled:!1,timer:null,release:null,settleCancelled:r},c=Promise.race([n(o),i]),l=()=>{a?.state===o&&(a=null)};return a={state:o,promise:c},c.then(l,l),c}return{confirm(e,t){return u(`confirm`,e,e=>t&&!t.email?Promise.resolve({kind:`not-needed`}):t?.email?.status===`submitted`?Promise.resolve({kind:`submitted`}):l(e,{stopWhenUnpublished:!0}))},retryAndConfirm(e,t){return u(`retry`,e,async e=>(await n(t),e.cancelled?{kind:`cancelled`}:l(e,{stopWhenUnpublished:!1})))},cancel:c}}function Kc({post:e,emailErrorMessage:t,willOnlyEmail:n,mailgunConfigured:r,status:i,retryFailure:a,onRetry:o}){let s=Uc(t);return(0,Z.jsxs)(G,{"data-testid":po,gap:`xl`,children:[(0,Z.jsxs)(K,{as:`h2`,className:`text-5xl leading-tighter tracking-tight`,weight:`bold`,children:[(0,Z.jsx)(`span`,{className:`text-state-error block`,children:`Uh-oh.`}),` `,n?`Your post has been created but the email failed to send.`:`Your ${e.displayName} has been published but the email failed to send.`]}),(0,Z.jsxs)(K,{className:`text-pretty`,size:`lg`,children:[t,r?null:(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(`br`,{}),(0,Z.jsx)(`br`,{}),`If the error persists, please verify your email settings.`]})]}),a?(0,Z.jsx)(Mr,{"data-testid":ho,role:`alert`,variant:`destructive`,children:a}):null,(0,Z.jsx)(W,{children:(0,Z.jsx)(q,{className:`h-auto min-h-11 max-w-full px-5 py-2 whitespace-normal`,"data-testid":mo,disabled:i===`running`,size:`lg`,variant:`destructive`,onClick:o,children:i===`running`?`Sending`:s?`Send remaining emails`:`Retry sending email`})})]})}var qc=J({config:J({hostSettings:J({billing:J({upgradeUrl:Y().min(1).regex(/^(?:#?\/|https?:\/\/)/).optional()}).optional()}).optional()})});function Jc(e){return e.startsWith(`/`)?`#${e}`:e}function Yc(e){let t=qc.safeParse(e),n=t.success?t.data.config.hostSettings?.billing?.upgradeUrl:void 0;return Jc(n?n.replace(/^#/,``):fe)}function Xc({parts:e}){let{data:t}=de({defaultErrorHandler:!1,requestOptions:Q}),n=Yc(t);return(0,Z.jsx)(Z.Fragment,{children:e.map(e=>e.kind===`upgrade`?(0,Z.jsx)(`a`,{className:`underline`,href:n,children:e.text},`${e.kind}:${e.text}`):(0,Z.jsx)(`span`,{children:e.text},`${e.kind}:${e.text}`))})}function Zc({failure:e}){return e.parts?(0,Z.jsx)(Xc,{parts:e.parts}):(0,Z.jsx)(Z.Fragment,{children:e.message})}function Qc({post:e,state:t,captured:n,timezone:r,status:i,failure:a,onConfirm:o,onBack:s}){let{count:c}=L(t.fullRecipientFilter,{requestOptions:Q}),l=Pc(n),u=!t.onlyDefaultNewsletter&&t.newsletter?.name,d=Ac({recipientType:F(t.recipientFilter),count:c}),f={idle:Mc({publishType:l,isScheduled:t.isScheduled,scheduledAt:t.scheduledAt,displayName:e.displayName,timezone:r}),running:Nc(l,t.isScheduled)};return(0,Z.jsxs)(G,{"data-testid":Va,gap:`xl`,children:[(0,Z.jsxs)(G,{gap:`none`,children:[(0,Z.jsx)(K,{as:`h2`,className:`text-5xl leading-tighter tracking-tight text-state-success`,weight:`bold`,children:`Ready, set, publish.`}),(0,Z.jsx)(K,{as:`h2`,className:`text-5xl leading-tighter tracking-tight`,weight:`bold`,children:`Share it with the world.`})]}),(0,Z.jsxs)(K,{className:`text-pretty`,size:`lg`,children:[t.isScheduled?(0,Z.jsxs)(Z.Fragment,{children:[`On `,(0,Z.jsx)(`strong`,{children:Lc(t.scheduledAt,r)}),` your`]}):`Your`,` `,e.displayName,n.willPublish?(0,Z.jsxs)(Z.Fragment,{children:[` will be published on your site`,n.willEmail?`, and delivered to`:`.`]}):null,n.willEmail?(0,Z.jsxs)(Z.Fragment,{children:[n.willPublish?` `:` will be delivered to `,(0,Z.jsx)(`strong`,{children:d}),u?(0,Z.jsxs)(Z.Fragment,{children:[` `,`of `,(0,Z.jsx)(`strong`,{children:t.newsletter?.name})]}):null,n.willPublish?`.`:`,`,n.willPublish?null:(0,Z.jsxs)(Z.Fragment,{children:[` `,`and will `,(0,Z.jsx)(`strong`,{children:`not`}),` be published on your site.`]})]}):null]}),a?(0,Z.jsx)(Mr,{"data-testid":ao,role:`alert`,variant:`destructive`,children:(0,Z.jsx)(Zc,{failure:a})}):null,(0,Z.jsxs)(W,{gap:`sm`,justify:`between`,wrap:!0,children:[(0,Z.jsxs)(q,{"data-testid":so,disabled:i===`running`,size:`lg`,variant:`outline`,onClick:s,children:[(0,Z.jsx)(je,{}),`Back to settings`]}),(0,Z.jsx)(q,{className:`ml-auto h-auto min-h-11 max-w-full bg-state-success py-2 whitespace-normal text-white hover:bg-state-success/90`,"data-testid":io,disabled:i===`running`,size:`lg`,onClick:o,children:i===`running`?f.running:f.idle})]})]})}function $c({testId:e,title:t,children:n,onContinue:r,onBack:i}){return(0,Z.jsx)(jt,{open:!0,onOpenChange:e=>!e&&i(),children:(0,Z.jsxs)(kt,{"data-testid":e,children:[(0,Z.jsxs)(Ot,{children:[(0,Z.jsx)(At,{children:t}),(0,Z.jsx)(Dt,{children:n})]}),(0,Z.jsxs)(Et,{children:[(0,Z.jsx)(q,{variant:`outline`,onClick:r,children:`Continue to publish`}),(0,Z.jsx)(q,{onClick:i,children:`Back to editor`})]})]})})}var el=J({tiers:Fn(J({slug:Y(),name:Y(),active:Rn()}))}),tl=J({labels:Fn(J({slug:Y(),name:Y()}))});function nl(e,t){let n=el.safeParse(e),r=tl.safeParse(t);return{tiers:n.success?n.data.tiers:[],labels:r.success?r.data.labels:[]}}function rl({filter:e}){let{count:t}=L(e,{requestOptions:Q});return t===null?null:(0,Z.jsxs)(K,{as:`span`,leading:`none`,size:`sm`,tone:`secondary`,children:[`(`,_e(t),`)`]})}function il({filter:e,newsletterRecipientFilter:t,paidAvailable:n,segmentOptions:r,onChange:i}){let a=(0,X.useId)(),o=P(e),[s,c]=(0,X.useState)(!1),[l,u]=(0,X.useState)(null),d=s||o.specific.length>0,f=(e,t)=>{i(j({base:e,specific:t},{paidAvailable:n}))},p=e=>{let t=o.base.includes(e)?o.base.filter(t=>t!==e):[...o.base,e];f(t,o.specific)},m=()=>{if(s&&o.specific.length===0){c(!1);return}if(c(!1),d){u(o.specific),f(o.base,[]);return}if(l){f(o.base,l);return}c(!0)},h=e=>{let t=o.specific.includes(e)?o.specific.filter(t=>t!==e):[...o.specific,e];t.length===0&&(u(null),c(!0)),f(o.base,t)},g=e=>t?`${t}+${e}`:e;return(0,Z.jsxs)(G,{gap:`md`,children:[(0,Z.jsxs)(G,{gap:`sm`,children:[(0,Z.jsxs)(W,{gap:`sm`,children:[(0,Z.jsx)(yt,{checked:o.free,"data-testid":Za,id:`${a}-free`,onCheckedChange:()=>p(ee)}),(0,Z.jsxs)(Lt,{htmlFor:`${a}-free`,children:[`Free `,(0,Z.jsx)(rl,{filter:g(ee)})]})]}),n?(0,Z.jsxs)(W,{gap:`sm`,children:[(0,Z.jsx)(yt,{checked:o.paid,"data-testid":Qa,id:`${a}-paid`,onCheckedChange:()=>p(N)}),(0,Z.jsxs)(Lt,{htmlFor:`${a}-paid`,children:[`Paid `,(0,Z.jsx)(rl,{filter:g(N)})]})]}):null,r.length>0?(0,Z.jsxs)(W,{gap:`sm`,children:[(0,Z.jsx)(yt,{checked:d,"data-testid":$a,id:`${a}-specific`,onCheckedChange:m}),(0,Z.jsx)(Lt,{htmlFor:`${a}-specific`,children:`Specific people`})]}):null]}),d?(0,Z.jsxs)(G,{"data-testid":eo,gap:`sm`,children:[(0,Z.jsx)(K,{size:`sm`,weight:`medium`,children:`Selection`}),(0,Z.jsx)(Cn,{labels:r.map(e=>({id:e.segment,slug:e.segment,name:e.name,group:e.group})),optionSource:{options:r.map(e=>({value:e.segment,label:e.name})),isInitialLoad:!1,isSearching:!1,isLoadingMore:!1,hasMore:!1,loadMore:()=>{},shouldClientFilter:!0},placeholder:`Search labels and tiers...`,selectedSlugs:o.specific,onToggle:h})]}):null]})}var al=zn({settingsData:J({settings:Fn(J({key:Y(),value:Hn()}))}),configData:J({config:J({stripeDirect:Rn()})})});function ol({state:e,onSetNewsletter:t,onSetRecipientFilter:n}){let r=(0,X.useId)(),{data:i}=Ao(),{data:a}=de({defaultErrorHandler:!1,requestOptions:Q}),o=Qn({defaultErrorHandler:!1,requestOptions:Q,searchParams:Do}),s=Gn({defaultErrorHandler:!1,requestOptions:Q,searchParams:{limit:`all`}}),{data:c,fetchNextPage:l,hasNextPage:u,isError:d,isFetchingNextPage:f}=s,{data:p,fetchNextPage:m,hasNextPage:h,isError:g,isFetchingNextPage:_}=o;(0,X.useEffect)(()=>{u&&!f&&!d&&l()},[l,u,f,d]),(0,X.useEffect)(()=>{h&&!_&&!g&&m()},[m,h,_,g]);let v=!s.isLoading&&!f&&(!u||d),y=!o.isLoading&&!_&&(!h||g),b=al.safeParse({settingsData:i,configData:a}),x=b.success?(()=>{let{settings:e,config:t}={settings:b.data.settingsData.settings,config:b.data.configData.config},n=t=>e.some(e=>e.key===t&&!!e.value),r=n(`stripe_secret_key`)&&n(`stripe_publishable_key`),i=n(`stripe_connect_secret_key`)&&n(`stripe_connect_publishable_key`);return t.stripeDirect?r:i||r})():!1,S=(0,X.useMemo)(()=>{if(!v||!y)return[];let{tiers:e,labels:t}=nl(g?void 0:p,d?void 0:c);return[...e.length>1?[...e].sort((e,t)=>Number(t.active)-Number(e.active)).map(e=>({segment:`tier:${e.slug}`,name:e.name,group:e.active?`Active tiers`:`Archived tiers`})):[],...t.map(e=>({segment:`label:${e.slug}`,name:e.name,group:`Labels`}))]},[c,d,v,p,g,y]),C=e.newsletter?M({slug:e.newsletter.slug,visibility:e.newsletter.visibility}):null;return(0,Z.jsxs)(G,{gap:`lg`,children:[(0,Z.jsx)(il,{filter:e.recipientFilter,newsletterRecipientFilter:C,paidAvailable:x,segmentOptions:S,onChange:n}),e.newsletters.length>1?(0,Z.jsxs)(G,{gap:`sm`,children:[(0,Z.jsx)(Lt,{htmlFor:r,children:`Newsletter`}),(0,Z.jsxs)(pn,{value:e.newsletter?.slug??``,onValueChange:n=>t(e.newsletters.find(e=>e.slug===n)??null),children:[(0,Z.jsx)(un,{"data-testid":Xa,id:r,children:(0,Z.jsx)(fn,{placeholder:`Select a newsletter`,children:e.newsletter?e.newsletter.name??e.newsletter.slug:void 0})}),(0,Z.jsx)(ln,{children:e.newsletters.map(e=>(0,Z.jsxs)(cn,{value:e.slug,children:[e.name??e.slug,e.activeMembers===void 0?null:(0,Z.jsxs)(Z.Fragment,{children:[` `,(0,Z.jsxs)(K,{as:`span`,leading:`none`,size:`sm`,tone:`secondary`,children:[`(`,_e(e.activeMembers),`)`]})]})]},e.slug))})]})]}):null]})}var sl=`YYYY-MM-DD`,cl=`HH:mm`,ll=`Invalid date format, must be YYYY-MM-DD`,ul=`Invalid date`;function dl(e,t){return/^\d\d\d\d-\d\d-\d\d$/.test(e)?Tc.default.tz(e,sl,t).isValid()?null:ul:ll}function fl(e){return(e.metaKey||e.ctrlKey)&&!e.altKey&&e.key.toLowerCase()===`s`}function pl({value:e,timezone:t,minDate:n,maxDate:r,disabled:i=!1,className:a,errorClassName:o,dateLabel:s,timeLabel:c,dateTestId:l,timeTestId:u,invalid:d=!1,describedBy:f,labelledBy:p,onChange:m}){let h=Tc.default.tz(e,t),[g,_]=(0,X.useState)(null),[v,y]=(0,X.useState)(null),[b,x]=(0,X.useState)(null),[S,C]=(0,X.useState)(!1),[w,T]=(0,X.useState)(`button`),E=(0,X.useRef)(!1),D=(0,X.useRef)(null),O=(0,X.useRef)(null),k=(0,X.useId)(),A=e=>{let n=Tc.default.tz(`${e} ${h.format(cl)}`,`${sl} ${cl}`,t);n.isSame(h,`minute`)||m(n.toDate())},j=()=>{y(null),x(null)},M=e=>{e&&(C(!1),j(),A((0,Tc.default)(e).format(sl)))},N=()=>{if(v===null)return;let e=v?dl(v,t):null;if(e){x(e);return}j(),v&&A(v)},P=e=>{if(e.key===`Enter`){e.preventDefault(),C(!1),N();return}if(e.key===`Escape`){j();return}let n=v?dl(v,t):null;n&&fl(e)&&(e.preventDefault(),e.stopPropagation(),x(n))},F=e=>{if(g===null)return;let t=/^\d:\d\d$/.test(e)?`0${e}`:e,[n,r]=t.split(`:`).map(e=>parseInt(e,10));_(null),!(!/^\d\d:\d\d$/.test(t)||n>23||r>59||t===h.format(cl))&&m(h.clone().set({hour:n,minute:r,second:0,millisecond:0}).toDate())},I=d?{"aria-invalid":!0}:{},ee=f?{"aria-describedby":f}:{},L=[f,b?k:null].filter(Boolean).join(` `);return(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsxs)(Te,{"aria-labelledby":p,className:a,columns:2,gap:`sm`,role:p?`group`:void 0,children:[(0,Z.jsxs)(Ft,{open:S&&!i,onOpenChange:e=>{e&&(E.current=!1),C(e)},children:[(0,Z.jsx)(Pt,{ref:D,className:`min-w-0`,children:(0,Z.jsxs)(en,{className:`min-w-0`,"data-disabled":i,children:[(0,Z.jsx)(Qt,{children:(0,Z.jsx)(Mt,{asChild:!0,children:(0,Z.jsx)($t,{"aria-label":`Choose date`,disabled:i,size:`icon-xs`,onClick:()=>T(`button`),children:(0,Z.jsx)(Ge,{"aria-hidden":`true`})})})}),(0,Z.jsx)(Zt,{ref:O,"aria-describedby":L||void 0,"aria-invalid":d||b!==null||void 0,"aria-label":s,autoComplete:`off`,className:`min-w-0`,"data-testid":l,disabled:i,placeholder:sl,value:v??h.format(sl),onBlur:N,onChange:e=>{y(e.target.value),C(!1)},onClick:()=>{T(`field`),S||(E.current=!1,C(!0))},onKeyDown:P})]})}),(0,Z.jsx)(Nt,{"aria-label":`Choose date`,className:`w-auto p-0`,onCloseAutoFocus:e=>{let t=O.current;(w===`field`||document.activeElement===t)&&(e.preventDefault(),E.current||t?.focus())},onInteractOutside:e=>{if(D.current?.contains(e.target)){e.preventDefault();return}E.current=!0},onOpenAutoFocus:e=>{if(w===`field`){e.preventDefault();return}let t=e.currentTarget.querySelector(`[role="grid"] [tabindex="0"]`);t&&(e.preventDefault(),t.focus())},children:(0,Z.jsx)(_t,{autoFocus:w===`button`,captionLayout:`dropdown-months`,defaultMonth:Fc(e,t),disabled:[...n?[{before:Fc(n,t)}]:[],...r?[{after:Fc(r,t)}]:[]],mode:`single`,selected:Fc(e,t),onSelect:M})})]}),(0,Z.jsx)(ri,{"aria-label":c,"data-testid":u,disabled:i,suffix:h.format(`z`),value:g??h.format(cl),onBlur:e=>F(e.target.value),onChange:e=>_(e.target.value),...I,...ee})]}),b?(0,Z.jsx)(zt,{className:o,id:k,children:b}):null]})}function ml({state:e,timezone:t,onToggleScheduled:n,onSetScheduledAt:r}){let i=(0,X.useId)();return(0,Z.jsxs)(Te,{align:`end`,className:`grid-cols-1 sm:grid-cols-[auto_minmax(0,1fr)]`,gap:`sm`,children:[(0,Z.jsxs)(on,{value:e.isScheduled?`schedule`:`now`,onValueChange:e=>n(e===`schedule`),children:[(0,Z.jsxs)(W,{gap:`sm`,children:[(0,Z.jsx)(an,{id:`${i}-now`,value:`now`}),(0,Z.jsx)(Lt,{htmlFor:`${i}-now`,children:`Set it live now`})]}),(0,Z.jsxs)(W,{gap:`sm`,children:[(0,Z.jsx)(an,{id:`${i}-schedule`,value:`schedule`}),(0,Z.jsx)(Lt,{htmlFor:`${i}-schedule`,children:`Schedule for later`})]})]}),e.isScheduled?(0,Z.jsx)(pl,{className:`w-full sm:w-70 sm:translate-y-2 sm:justify-self-end`,dateLabel:`Publish date`,dateTestId:to,errorClassName:`sm:col-start-2 sm:w-70 sm:translate-y-2 sm:justify-self-end`,minDate:e.minScheduledAt,timeLabel:`Publish time`,timeTestId:no,timezone:t,value:e.scheduledAt,onChange:r}):null]})}function hl({testId:e,icon:t,title:n,open:r=!1,disabled:i=!1,onToggle:a,children:o,footer:s}){let c=!i&&!!a;return(0,Z.jsxs)(G,{className:`border-b border-border-default last:border-b-0`,"data-testid":e,gap:`none`,children:[(0,Z.jsxs)(`button`,{"aria-expanded":c?r:void 0,className:U(`flex w-full items-center gap-3 px-1 py-4 text-left [&[aria-expanded=true]>svg]:rotate-180`,i&&`cursor-default text-foreground/40`),disabled:!c,type:`button`,onClick:a,children:[(0,Z.jsx)(`span`,{className:`shrink-0`,children:t}),(0,Z.jsx)(K,{className:`grow text-inherit`,size:`lg`,weight:`medium`,children:n}),(0,Z.jsx)(He,{className:`size-4 shrink-0 transition-transform`})]}),r&&o?(0,Z.jsx)(we,{className:`pr-1 pb-5 pl-8 motion-safe:animate-in motion-safe:duration-200 motion-safe:fade-in motion-safe:slide-in-from-top-1`,children:o}):null,s]})}function gl({children:e,testId:t}){return(0,Z.jsx)(W,{align:`start`,className:`mb-4 rounded-md bg-surface-elevated p-3`,"data-testid":t,gap:`sm`,children:(0,Z.jsx)(K,{size:`sm`,children:e})})}var _l=`https://docs.ghost.org/newsletters/#bulk-email-configuration`;function vl(){let{data:e}=x({requestOptions:Q}),t=cr(`automations`,{defaultErrorHandler:!1,requestOptions:Q});return(0,Z.jsxs)(K,{"data-testid":Ja,size:`sm`,children:[`Email is unavailable because there are no active `,e&&An(e)?(0,Z.jsx)(`a`,{className:`underline`,href:t?`#/settings/emails`:`#/settings/newsletters`,children:`newsletters`}):`newsletters`,`.`]})}function yl({state:e}){let t=e.emailDisabledReason;return t===`sending-limit`||t===`email-verification`?(0,Z.jsx)(K,{"data-testid":Ja,size:`sm`,children:e.emailBlock?.message}):t===`no-members`?(0,Z.jsxs)(K,{"data-testid":Ja,size:`sm`,children:[(0,Z.jsx)(`a`,{className:`underline`,href:`#/members`,children:`Add members`}),` `,`to start sending newsletters!`]}):t===`no-mailgun`?(0,Z.jsxs)(K,{"data-testid":Ja,size:`sm`,children:[`Set up`,` `,(0,Z.jsx)(`a`,{className:`underline`,href:_l,rel:`noreferrer noopener`,target:`_blank`,children:`Mailgun`}),` `,`to start sending newsletters!`]}):t===`no-newsletter`?(0,Z.jsx)(vl,{}):null}function bl({state:e,onChange:t}){return(0,Z.jsxs)(G,{gap:`md`,children:[(0,Z.jsx)(on,{value:e.publishType,onValueChange:e=>t(e),children:e.publishTypeOptions.map(e=>(0,Z.jsxs)(W,{gap:`sm`,children:[(0,Z.jsx)(an,{disabled:e.disabled,id:`publish-type-${e.value}`,value:e.value}),(0,Z.jsx)(Lt,{htmlFor:`publish-type-${e.value}`,children:e.label})]},e.value))}),(0,Z.jsx)(yl,{state:e})]})}function xl(e){return e.charAt(0).toUpperCase()+e.slice(1)}function Sl({state:e}){let{count:t}=L(e.fullRecipientFilter,{requestOptions:Q});return e.recipientFilter?(0,Z.jsx)(Z.Fragment,{children:kc({recipientType:F(e.recipientFilter),count:t,newsletterName:e.onlyDefaultNewsletter?null:e.newsletter?.name??null})}):(0,Z.jsx)(Z.Fragment,{children:`Not sent as newsletter`})}function Cl({post:e}){let t=Ss(e);return t?.overLimit?(0,Z.jsx)(Mr,{className:`mb-4`,"data-testid":Ya,variant:`warning`,children:(0,Z.jsxs)(G,{gap:`xs`,children:[(0,Z.jsxs)(K,{weight:`semibold`,children:[`This email is `,(0,Z.jsxs)(`span`,{className:`text-state-warning`,children:[t.sizeKb,`kB`]})]}),(0,Z.jsx)(K,{size:`sm`,tone:`secondary`,children:`Email newsletters may get clipped in the inbox behind a “View entire message” link when they’re over 100kB.`})]})}):null}function wl({post:e,state:t,timezone:n,emailDisabledInSettings:r,limitsChecked:i,limitsFailure:a,onSetPublishType:o,onSetNewsletter:s,onSetRecipientFilter:c,onToggleScheduled:l,onSetScheduledAt:u,onContinue:d,onRetryLimits:f}){let[p,m]=(0,X.useState)(null),h=e=>()=>m(t=>t===e?null:e),g=t.publishBlock!==null,_=t.publishTypeOptions.find(e=>e.value===t.publishType),v=e.email,y=F(O(e.emailSegment));return(0,Z.jsxs)(G,{"data-testid":Ba,gap:`xl`,children:[(0,Z.jsxs)(G,{gap:`none`,children:[(0,Z.jsx)(K,{as:`h2`,className:`text-5xl leading-tighter tracking-tight text-state-success`,weight:`bold`,children:`Ready, set, publish.`}),(0,Z.jsx)(K,{as:`h2`,className:`text-5xl leading-tighter tracking-tight`,weight:`bold`,children:`Share it with the world.`})]}),a?(0,Z.jsx)(Mr,{"data-testid":oo,role:`alert`,variant:`destructive`,children:(0,Z.jsxs)(G,{align:`start`,gap:`sm`,children:[(0,Z.jsx)(K,{children:a}),(0,Z.jsx)(q,{size:`sm`,variant:`outline`,onClick:f,children:`Try again`})]})}):null,(0,Z.jsxs)(G,{gap:`none`,children:[(0,Z.jsx)(hl,{disabled:t.emailUnavailable||g,footer:t.willEmail?(0,Z.jsx)(Cl,{post:e}):null,icon:(0,Z.jsx)(We,{className:`size-4`}),open:p===`publishType`,testId:Wa,title:t.emailUnavailable||g?`Publish on site`:_?.display??`Publish`,onToggle:h(`publishType`),children:(0,Z.jsx)(bl,{state:t,onChange:o})}),t.publishBlock?(0,Z.jsx)(gl,{children:(0,Z.jsx)(Xc,{parts:t.publishBlock.parts})}):null,t.emailUnavailable?null:(0,Z.jsx)(hl,{disabled:t.publishType===`publish`||g,icon:(0,Z.jsx)(Xe,{className:`size-4`}),open:p===`emailRecipients`,testId:Ga,title:t.publishType===`publish`||g?`Not sent as newsletter`:(0,Z.jsx)(Sl,{state:t}),onToggle:h(`emailRecipients`),children:(0,Z.jsx)(ol,{state:t,onSetNewsletter:s,onSetRecipientFilter:c})}),v&&!r?(0,Z.jsx)(hl,{icon:(0,Z.jsx)(Xe,{className:`size-4`}),testId:qa,title:[v.status===`failed`?`Retry sending to`:`Already sent to`,_e(v.email_count??0),y===`all`||y===`none`?null:y,v.email_count===1?`subscriber`:`subscribers`,t.onlyDefaultNewsletter||!e.newsletterName?null:`of ${e.newsletterName}`].filter(Boolean).join(` `),disabled:!0}):null,(0,Z.jsx)(hl,{disabled:g,icon:(0,Z.jsx)(Re,{className:`size-4`}),open:p===`publishAt`,testId:Ka,title:t.isScheduled?xl(Ic(t.scheduledAt)):`Right now`,onToggle:h(`publishAt`),children:(0,Z.jsx)(ml,{state:t,timezone:n,onSetScheduledAt:u,onToggleScheduled:l})})]}),g?null:(0,Z.jsx)(`div`,{children:(0,Z.jsx)(q,{"data-testid":ro,disabled:!i||!t.canPublish,size:`lg`,onClick:d,children:`Continue, final review →`})})]})}var Tl=J({type:Y(),text:Hn().optional(),children:Fn(Hn()).optional()}),El=J({root:J({children:Fn(Hn())})});function Dl(e){if(!e)return null;try{let t=typeof e==`string`?JSON.parse(e):e,n=El.safeParse(t);return n.success?n.data:null}catch{return null}}function Ol(e){let t=Tl.safeParse(e);if(!t.success)return!1;let n=t.data;return n.type===`paywall`||n.type===`linebreak`?!1:typeof n.text==`string`?!!n.text.trim():n.type===`text`||n.type===`extended-text`?!1:Array.isArray(n.children)?n.children.some(Ol):n.type!==`paragraph`&&n.type!==`root`}function kl(e){let t=Dl(e.lexical)?.root?.children;if(!t)return null;let n=t.findIndex(e=>{let t=Tl.safeParse(e);return t.success&&t.data.type===`paywall`});return n===-1?null:e.visibility===`public`?`public-access`:t.slice(0,n).some(Ol)?t.slice(n+1).some(Ol)?null:`no-content-after`:`no-content-before`}var Al={"no-content-before":{title:`Nothing above the public preview`,body:`Add some content above the public preview so everyone has something to read before the paywall.`},"no-content-after":{title:`Nothing below the public preview`,body:`Add some content below the public preview for subscribers who have access to the full post.`},"public-access":{title:`Public preview has no effect`,body:`This post is public, so everyone can read the full post and the public preview won’t have any effect.`}},jl=J({id:Y(),opened_count:In().int().nonnegative(),email_count:In().int().nonnegative(),status:Bn([`pending`,`submitting`,`submitted`,`failed`]),error:Y().nullable().optional(),track_opens:Rn().optional(),track_clicks:Rn().optional()}),Ml=J({posts:Fn(J({status:Bn([`published`,`draft`,`scheduled`,`sent`]),email:jl.nullable().optional()})).min(1)}),Nl=J({meta:J({pagination:J({total:In().int().nonnegative()})})}),Pl={published:`ghost-last-published-post`,scheduled:`ghost-last-scheduled-post`};function Fl({postId:e,displayName:t,isScheduled:n}){try{localStorage.setItem(n?Pl.scheduled:Pl.published,JSON.stringify({id:e,type:t}))}catch{}}var Il=`Unknown error`,Ll=`Unknown Error occurred when attempting to resend`,Rl=`We couldn’t confirm the newsletter was sent. Check the post’s email status from the posts list.`;function zl(e){return e.displayName===`post`&&(e.status===`published`||e.status===`sent`)&&e.email?.status===`failed`?e.email?.error||Il:null}function Bl({post:e,site:t,user:n,limits:r,now:i,dispatch:o,showCompletion:s=!0,improveSendingUI:c=!1,onBeforePublish:l,onCompleted:u}){let d=C(),f=a(),{mutateAsync:p}=qr(),[,m]=(0,X.useReducer)(e=>e+1,0),h=(0,X.useRef)({post:e,site:t,user:n,limits:r,now:i});h.current={post:e,site:t,user:n,limits:r,now:i};let g=(0,X.useMemo)(()=>{let e=h.current;return Yo({post:{...e.post,isPage:e.post.displayName===`page`},site:e.site,user:e.user,limits:e.limits,now:e.now})},[e.id]),v=(0,X.useMemo)(()=>({setPublishType:e=>{g.setPublishType(e),m()},setNewsletter:e=>{g.setNewsletter(e),m()},setRecipientFilter:e=>{g.setRecipientFilter(e),m()},setScheduledAt:e=>{g.setScheduledAt(e),m()},setIsScheduled:e=>{g.setIsScheduled(e),m()}}),[g]),y=(0,X.useRef)(e.email?.id??null),b=(0,X.useMemo)(()=>Gc({reload:async e=>{let t=Ml.parse(await d(_(`/posts/${e}/`,{include:`email`}),Q)).posts.at(0);if(!t)throw Error(`The published post was missing from its reload response.`);return y.current=t.email?.id??y.current,{status:t.status,email:t.email??null}},retry:async e=>{await p({id:e,sessionExpiryRedirect:!1})}}),[d,p]),x=(0,X.useCallback)(t=>{t.kind!==`cancelled`&&f.invalidateQueries({queryKey:[e.displayName===`page`?Xn:se]})},[e.displayName,f]),[S,w]=(0,X.useState)(()=>zl(e)?`email-error`:`options`),[T,E]=(0,X.useState)(`idle`),[D,O]=(0,X.useState)(null),[k,A]=(0,X.useState)(()=>zl(e)),[j,M]=(0,X.useState)(null),[N,P]=(0,X.useState)(null),[F,I]=(0,X.useState)(null),[ee,L]=(0,X.useState)(null),[R,z]=(0,X.useState)(null),[te,ne]=(0,X.useState)(`idle`),[re,ie]=(0,X.useState)(null),[ae,oe]=(0,X.useState)(()=>{if(zl(e))return{willPublish:e.status===`published`&&e.emailOnly!==!0,willEmail:!0,willOnlyEmail:e.emailOnly===!0||e.status===`sent`,isScheduled:!1};let t=g.getState();return{willPublish:t.willPublish,willEmail:t.willEmail,willOnlyEmail:t.willOnlyEmail,isScheduled:t.isScheduled}}),B=(0,X.useRef)(!0),ce=(0,X.useRef)(!1),le=(0,X.useRef)(!1),ue=(0,X.useRef)(!1),de=(0,X.useRef)(0),fe=(0,X.useRef)(null),pe=(0,X.useCallback)(async()=>{let e=de.current+1;de.current=e,I(null),L(null);let t=fe.current,n=t?.machine===g?t:{machine:g,promise:g.checkLimits().then(()=>void 0)};fe.current=n;try{await n.promise}catch(t){if(B.current&&e===de.current){let{message:e}=rs(t);L(`Couldn’t check publishing limits. ${e}`),m()}return}finally{fe.current===n&&(fe.current=null)}B.current&&e===de.current&&(I(g),m())},[g]);(0,X.useEffect)(()=>(g.resetPastScheduledAt(),pe(),()=>{de.current+=1}),[pe,g]);let V=(0,X.useRef)(b);V.current=b;let me=(0,X.useCallback)(()=>{B.current=!1,V.current.cancel(),de.current+=1},[]);(0,X.useEffect)(()=>(B.current=!0,me),[me]);let H=g.getState(),he=F===g,ge=(0,X.useCallback)(async()=>{if(e.displayName===`page`||H.isScheduled||!H.willPublish){M(null);return}try{let t=Nl.parse(await d(_(`/posts/`,{filter:`status:published+id:-'${e.id}'`,limit:`1`}),Q));B.current&&M(t.meta.pagination.total+1)}catch{B.current&&M(null)}},[d,e.displayName,e.id,H.isScheduled,H.willPublish]),_e=(0,X.useCallback)(()=>{!he||!H.canPublish||(oe({willPublish:H.willPublish,willEmail:H.willEmail,willOnlyEmail:H.willOnlyEmail,isScheduled:H.isScheduled}),O(null),E(`idle`),w(`confirm`),ge())},[ge,he,H]),ve=(0,X.useCallback)(()=>{le.current||(w(`options`),E(`idle`))},[]),U=(0,X.useCallback)((t,n)=>{if(!(!B.current||ce.current)){ce.current=!0,s&&(A(null),E(`success`),w(`complete`),P(new Date().toISOString()));try{Fl({postId:e.id,displayName:e.displayName,isScheduled:t})}finally{u?.({postId:e.id,isScheduled:t,hasEmail:n})}}},[u,e.displayName,e.id,s]),ye=(0,X.useCallback)((e,t)=>{if(B.current){if(e.kind===`failed`){A(e.error||Il),w(`email-error`),E(`idle`);return}if(e.kind===`cancelled`){E(`idle`);return}e.kind!==`submitted`&&z(Rl),U(t,e.kind!==`not-needed`)}},[U]),be=(0,X.useCallback)(async()=>{if(le.current)return;le.current=!0,O(null),E(`running`);let t=g.toDispatch();if(!t){le.current=!1,O({message:`This post can no longer be published from here. Reload the editor.`}),E(`failure`);return}let{isScheduled:n,willEmailImmediately:r,willEmail:i}=H;try{await l?.()}catch(e){B.current&&(le.current=!1,O(rs(e)),E(`failure`));return}if(!B.current)return;let a;try{a=await o(t)}catch(e){B.current&&(le.current=!1,O(rs(e)),E(`failure`));return}if(!B.current)return;let s=is(a);if(s){le.current=!1,O(s),E(`failure`),w(`confirm`);return}if(r&&!c){let t;try{t=await b.confirm(e.id)}catch{if(!B.current)return;z(Rl),U(n,!0);return}x(t),ye(t,n);return}U(n,i)},[ye,U,b,o,c,g,l,e.id,x,H]),xe=(0,X.useCallback)(async()=>{let t=y.current;if(!ue.current){if(!t){ie(Ll),ne(`failure`);return}ue.current=!0,ie(null),ne(`running`);try{let n=await b.retryAndConfirm(e.id,t);if(x(n),!B.current)return;if(n.kind===`failed`||n.kind===`cancelled`){ue.current=!1,n.kind===`failed`&&A(n.error||Il),ne(`idle`);return}n.kind!==`submitted`&&z(Rl),s&&ne(`success`),U(!1,n.kind!==`not-needed`)}catch(e){B.current&&(ue.current=!1,ie(e instanceof Error?e.message:Ll),ne(`failure`))}}},[U,b,e.id,x,s]);return{...v,state:H,step:S,confirmStatus:T,failure:D,emailErrorMessage:k,postCount:j,completedAt:N,limitsChecked:he,limitsFailure:ee,emailNote:R,captured:ae,retryLimits:()=>void pe(),toConfirm:_e,toOptions:ve,confirmPublish:be,retryEmail:xe,retryStatus:te,retryFailure:re,cancel:me}}function Vl({post:e,...t}){return(0,Z.jsx)(Hl,{post:e,...t},e.id)}function Hl({post:e,animate:t=!0,showCompletion:n,site:r,user:i,limits:a,now:o,timezone:s,siteTitle:c,tkCount:l=0,paywallImprovements:u=!1,improveSendingUI:d,dispatch:f,onBeforePublish:p,onClose:m,onNewsletterChange:h,onPreview:g,onRevertToDraft:_,onCompleted:v}){let[y,b]=(0,X.useState)(!1),x=u?kl(e):null;return!y&&l>0?(0,Z.jsxs)($c,{testId:go,title:`Forget something?`,onBack:m,onContinue:()=>b(!0),children:[`Looks like you’ve got some unfinished business. There `,l===1?`is`:`are`,` `,(0,Z.jsxs)(`strong`,{children:[_e(l),` TK `,l===1?`reminder`:`reminders`]}),` `,`left in your post.`]}):!y&&x?(0,Z.jsx)($c,{testId:_o,title:Al[x].title,onBack:m,onContinue:()=>b(!0),children:Al[x].body}):(0,Z.jsx)(Ul,{animate:t,dispatch:f,improveSendingUI:d,limits:a,now:o,post:e,showCompletion:n,site:r,siteTitle:c,timezone:s,user:i,onBeforePublish:p,onClose:m,onCompleted:v,onNewsletterChange:h,onPreview:g,onRevertToDraft:_})}function Ul({post:e,animate:t=!0,showCompletion:n,site:r,user:i,limits:a,now:o,timezone:s,siteTitle:c,improveSendingUI:l,dispatch:u,onBeforePublish:d,onClose:f,onNewsletterChange:p,onPreview:m,onRevertToDraft:h,onCompleted:g}){let _=Bl({post:e,site:r,user:i,limits:a,now:o,dispatch:u,showCompletion:n,improveSendingUI:l,onBeforePublish:d,onCompleted:g}),{state:v,step:y}=_,b=v.newsletter?.slug;(0,X.useEffect)(()=>(p?.(b),()=>p?.(void 0)),[b,p]);let x=()=>{_.cancel(),f()};return(0,Z.jsx)(Po,{animate:t,"data-testid":za,title:`Publish`,open:!0,onOpenChange:e=>!e&&x(),children:(0,Z.jsxs)(we,{className:`relative min-h-full`,children:[(0,Z.jsxs)(W,{className:`absolute inset-x-0 top-0 p-4`,justify:`between`,children:[(0,Z.jsx)(K,{"aria-hidden":`true`,as:`h2`,className:`text-lg tracking-tight`,weight:`semibold`,children:`Publish`}),(0,Z.jsx)(nn.ActionGroup,{children:y===`complete`?null:(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(q,{variant:`ghost`,onClick:x,children:`Close`}),_.emailErrorMessage||!m?null:(0,Z.jsx)(q,{className:`w-20 shrink-0`,"data-testid":Ua,variant:`outline`,onClick:m,children:`Preview`})]})})]}),(0,Z.jsx)(G,{className:`mx-auto w-full max-w-156 px-6 pt-[max(9.6rem,18vh)] pb-16`,gap:`xl`,children:y===`email-error`&&_.emailErrorMessage?(0,Z.jsx)(Kc,{emailErrorMessage:_.emailErrorMessage,mailgunConfigured:r.mailgunConfigured,post:e,retryFailure:_.retryFailure,status:_.retryStatus,willOnlyEmail:v.willOnlyEmail,onRetry:()=>void _.retryEmail()}):y===`complete`?(0,Z.jsx)(Bc,{captured:_.captured,completedAt:_.completedAt,note:_.emailNote,post:e,postCount:_.postCount,siteTitle:c,state:v,timezone:s,onRevertToDraft:h}):y===`confirm`?(0,Z.jsx)(Qc,{captured:_.captured,failure:_.failure,post:e,state:v,status:_.confirmStatus,timezone:s,onBack:_.toOptions,onConfirm:()=>void _.confirmPublish()}):(0,Z.jsx)(wl,{emailDisabledInSettings:Uo(r),limitsChecked:_.limitsChecked,limitsFailure:_.limitsFailure,post:e,state:v,timezone:s,onContinue:_.toConfirm,onRetryLimits:_.retryLimits,onSetNewsletter:_.setNewsletter,onSetPublishType:_.setPublishType,onSetRecipientFilter:_.setRecipientFilter,onSetScheduledAt:_.setScheduledAt,onToggleScheduled:_.setIsScheduled})})]})})}function Wl(e){return e==null?`subscribers`:`${_e(e)} ${e===1?`subscriber`:`subscribers`}`}function Gl({post:e,...t}){return(0,Z.jsx)(Kl,{post:e,...t},e.id)}function Kl({post:e,site:t,user:n,timezone:r,dispatch:i,onClose:a,onReverted:o}){let s=(0,X.useRef)({post:e,site:t,user:n});s.current={post:e,site:t,user:n};let c=(0,X.useMemo)(()=>{let e=s.current;return Yo({post:{...e.post,isPage:e.post.displayName===`page`},site:e.site,user:e.user})},[e.id]),l=c.getState(),u=e.status===`scheduled`,d=e.status===`sent`,f=e.emailOnly===!0||d,p=u||!f,m=p?u?`Unschedule`:`Unpublish`:`Sent`,h=u&&!!e.newsletter&&!e.email,g=e.displayName===`post`&&(e.status===`sent`||e.status===`published`)&&!!(e.email&&e.email.status!==`failed`),_=t.newsletters.find(t=>t.slug===e.newsletter),v=O(e.emailSegment),y=h&&_&&v?A(M(_),v):null,{count:b}=L(y,{requestOptions:Q}),x=y?b:null,[S,C]=(0,X.useState)(null),[w,T]=(0,X.useState)(!1),E=(0,X.useRef)(!1),D=(0,X.useRef)(!0),k=!l.onlyDefaultNewsletter||e.newsletterStatus===`archived`,j=()=>{D.current&&(D.current=!1,a())};(0,X.useEffect)(()=>(D.current=!0,()=>{D.current=!1}),[]);let N=async()=>{if(E.current)return;E.current=!0,C(null),T(!0);let e;try{e=await i(c.toRevertDispatch())}catch(e){D.current&&(C(rs(e)),T(!1)),E.current=!1;return}if(!D.current){E.current=!1;return}let t=is(e);if(t){C(t),T(!1),E.current=!1;return}T(!1),E.current=!1,o?.(),D.current&&j()},P=e.publishedAt;return(0,Z.jsx)(Po,{"data-testid":vo,title:m,open:!0,onOpenChange:e=>!e&&j(),children:(0,Z.jsxs)(we,{className:`relative min-h-full`,children:[(0,Z.jsxs)(W,{className:`absolute inset-x-0 top-0 p-4`,justify:`between`,children:[(0,Z.jsx)(K,{"aria-hidden":`true`,as:`h2`,className:`text-lg tracking-tight`,weight:`semibold`,children:m}),(0,Z.jsx)(nn.ActionGroup,{children:(0,Z.jsx)(q,{variant:`outline`,onClick:j,children:`Close`})})]}),(0,Z.jsxs)(G,{className:`mx-auto w-full max-w-156 px-6 pt-[max(9.6rem,18vh)] pb-16`,gap:`xl`,children:[(0,Z.jsxs)(K,{as:`h2`,className:`text-5xl leading-tighter tracking-tight`,"data-testid":yo,weight:`bold`,children:[`This `,e.displayName,` `,d?`was`:`has been`,` `,(0,Z.jsxs)(`span`,{className:`text-state-success`,children:[e.status,d?` by email`:``]})]}),(0,Z.jsxs)(K,{className:`text-pretty`,"data-testid":bo,size:`lg`,children:[`Your `,e.displayName,` `,u?`will be`:`was`,` `,g||h?(0,Z.jsxs)(Z.Fragment,{children:[f?`sent to`:`published and sent to`,` `,(0,Z.jsx)(`strong`,{children:Wl(u?x:e.email?.email_count??null)}),k&&e.newsletterName?(0,Z.jsxs)(Z.Fragment,{children:[` `,`of `,(0,Z.jsx)(`strong`,{children:e.newsletterName})]}):null]}):`published on your site`,P?(0,Z.jsxs)(Z.Fragment,{children:[` on `,Lc(P,r),`.`]}):`.`]}),u&&e.email?(0,Z.jsxs)(K,{className:`text-pretty`,"data-testid":xo,size:`lg`,children:[`This post was previously emailed to`,` `,(0,Z.jsx)(`strong`,{children:Wl(e.email.email_count??null)}),k&&e.newsletterName?(0,Z.jsxs)(Z.Fragment,{children:[` `,`of `,(0,Z.jsx)(`strong`,{children:e.newsletterName})]}):null,e.emailCreatedAt?(0,Z.jsxs)(Z.Fragment,{children:[` on `,Lc(e.emailCreatedAt,r),`.`]}):`.`]}):null,S?(0,Z.jsx)(Mr,{role:`alert`,variant:`destructive`,children:S.message}):null,p?(0,Z.jsx)(W,{justify:`start`,children:(0,Z.jsx)(q,{className:`h-auto min-h-11 max-w-full px-5 py-2 whitespace-normal`,"data-testid":fo,disabled:w,size:`lg`,variant:`outline`,onClick:()=>void N(),children:u?`Unschedule and revert to draft →`:`Unpublish and revert to private draft →`})}):null]})]})})}var ql=Vn([Y(),Rn(),In(),Ln(),Fn(Y())]),Jl=J({key:Y(),value:ql}),Yl=Bn([`disabled`,`visibility`,`filter`]),Xl=J({slug:Y(),name:Y(),status:Y(),visibility:Y(),sort_order:In().optional(),count:J({active_members:In().optional()}).optional()}).transform(({sort_order:e,count:t,...n})=>({...n,sortOrder:e,activeMembers:t?.active_members})),Zl=zn({settingsData:J({settings:Fn(Jl)}),configData:J({config:J({mailgunIsConfigured:Rn().optional()})}),newslettersData:J({newsletters:Fn(Xl)}),currentUser:J({roles:Fn(J({name:Y()}))}),memberCount:In().int().nonnegative().nullable()}),Ql={membersEnabled:!0,mailgunConfigured:!1,editorDefaultEmailRecipients:`visibility`,editorDefaultEmailRecipientsFilter:null,memberCount:null,newsletters:[]},$l={isAdmin:!1,isAuthorOrContributor:!1};function eu(e,t){let n=e.find(e=>e.key===t)?.value;return typeof n==`string`?n:null}function tu(e){let t=Zl.safeParse(e);if(!t.success)return{site:Ql,user:$l,isValid:!1};let{settingsData:n,configData:r,newslettersData:i,currentUser:a,memberCount:o}=t.data,s=n.settings,c=s.find(e=>e.key===`editor_default_email_recipients`)?.value,l=c==null?Yl.safeParse(`visibility`):Yl.safeParse(c);if(!l.success)return{site:Ql,user:$l,isValid:!1};let u=new Set(a.roles.map(e=>e.name)),d=!!(eu(s,`mailgun_api_key`)&&eu(s,`mailgun_domain`)&&eu(s,`mailgun_base_url`));return{site:{membersEnabled:eu(s,`members_signup_access`)!==`none`,mailgunConfigured:d||r.config.mailgunIsConfigured===!0,editorDefaultEmailRecipients:l.data,editorDefaultEmailRecipientsFilter:eu(s,`editor_default_email_recipients_filter`),memberCount:o,newsletters:i.newsletters},user:{isAdmin:u.has(`Owner`)||u.has(`Administrator`),isAuthorOrContributor:u.has(`Author`)||u.has(`Contributor`)},isValid:!0}}function nu(e){return e?e instanceof Error?e:Error(`The publish settings could not be loaded.`):null}function ru(){let e=Ao(),t=jo(),n=de({defaultErrorHandler:!1,requestOptions:Q}),r=x({requestOptions:Q}),i=r.data,a=Un({defaultErrorHandler:!1,requestOptions:Q,searchParams:Oo(i),enabled:i!==void 0}),{fetchNextPage:o,hasNextPage:s,isError:c,isFetchingNextPage:l}=a;(0,X.useEffect)(()=>{s&&!l&&!c&&o()},[o,s,l,c]);let{count:u,isLoading:d,isFetching:f,error:p,refetch:m}=L(``,{requestOptions:Q}),h=e.data,g=n.data,_=a.data,v=(0,X.useMemo)(()=>tu({settingsData:h,configData:g,newslettersData:_,currentUser:i,memberCount:u}),[h,g,_,i,u]),y=e.isLoading||n.isLoading||n.isFetching||a.isLoading||a.isFetching||a.hasNextPage||a.isFetchingNextPage||r.isLoading||r.isFetching||d||f,b=(0,X.useMemo)(()=>{let t=e.error??n.error??a.error??r.error??p;return t?nu(t):!y&&!v.isValid?Error(`The publish settings response was invalid.`):null},[v.isValid,n.error,r.error,y,p,a.error,e.error]),S=(0,X.useCallback)(()=>{Promise.all([e.refetch(),n.refetch(),a.refetch(),r.refetch(),m()])},[n,r,a,m,e]);return{site:v.site,user:v.user,timezone:t,isReady:v.isValid&&!y&&!b,error:b,retry:S}}var iu=[`members`,`emails`];function au(e,t){return{required:ur(e,`email_verification_required`)===!0,message:t?.hostSettings?.emailVerification?.emailSendingDisabledMessage??null}}function ou(){let e=vt({limits:iu,requestOptions:Q}),t=Ao(),{data:n}=de({defaultErrorHandler:!1,requestOptions:Q}),r=(0,X.useRef)({limiter:e,settingsQuery:t,config:n?.config});r.current={limiter:e,settingsQuery:t,config:n?.config};let i=(0,X.useRef)(null);return(0,X.useMemo)(()=>({async refreshSettings(){let{data:e}=await r.current.settingsQuery.refetch({throwOnError:!0});i.current=e?.settings??null},async checkSendingLimit(){let{limiter:e}=r.current;e.isLimited(`emails`)&&await e.errorIfWouldGoOverLimit(`emails`)},async checkPublishingLimit(){let{limiter:e}=r.current;e.isLimited(`members`)&&await e.errorIfIsOverLimit(`members`)},getEmailVerification(){return au(i.current??r.current.settingsQuery.data?.settings,r.current.config)}}),[])}var su={kind:`not-found`,message:`This post has been deleted. Copy your content and paste it into a new post to keep it.`},cu={kind:`forbidden`,message:`You no longer have permission to edit this post. Copy your content to keep your changes.`},lu={kind:`not-found`,message:`The editor has crashed. Copy your content and paste it into a new post to keep it.`};function uu(e){return e.kind===`halted`?e.error.kind===`forbidden`?cu:su:e.kind===`crashed`?lu:null}function du(e){return e.kind===`error`||e.kind===`conflict`?e.error:uu(e)}var fu=`UPDATE_COLLISION`,pu=`Your post is already published, please reload your page.`,mu=`NoPermissionError`;function hu(e){return e instanceof g?e.data?.errors?.[0]?.code??void 0:void 0}function gu(e){return e instanceof g&&e.data?.errors?.[0]?.type===mu}function _u(e){let t=e instanceof g?e.data?.errors?.[0]:void 0;return t?.type===`ValidationError`&&t.context===pu}function vu(e){return e instanceof h?e.response?.status:void 0}function yu(e,t){return e instanceof Error&&e.message?e.message:t}function bu(e,t){let n=(()=>{if(hu(e)===fu||_u(e))return`conflict`;if(e instanceof w||e instanceof u)return`session-invalid`;if(gu(e))return`forbidden`;if(e instanceof E)return`host-limit`;if(e instanceof l||e instanceof T||e instanceof m)return`transport`;if(e instanceof f||e instanceof p)return`validation`;let t=vu(e);return t===401?`session-invalid`:t===404?`not-found`:t===422?`validation`:`unknown`})();return{kind:n,message:n===`validation`||n===`host-limit`||n===`forbidden`?c(e,yu(e,t)):yu(e,t),cause:e}}function xu(e,t,n,r=!0){let i=(0,X.useRef)({onPress:n,enabled:r});i.current={onPress:n,enabled:r},(0,X.useEffect)(()=>{let n=n=>{!i.current.enabled||n.key.toLowerCase()!==e||!(n.metaKey||n.ctrlKey)||n.altKey||t!==void 0&&n.shiftKey!==t||(n.preventDefault(),n.repeat||i.current.onPress())};return document.addEventListener(`keydown`,n),()=>document.removeEventListener(`keydown`,n)},[e,t])}function Su(e,t=!0){xu(`p`,!1,e,t)}function Cu(e,t=!0){xu(`p`,!0,e,t)}function wu(){return vr()?`⌘P`:`Ctrl+P`}function Tu(){return vr()?`⌘⇧P`:`Ctrl+Shift+P`}function Eu(e){let t=(0,X.useRef)(e);t.current=e;let n=(0,X.useRef)(new Set);(0,X.useEffect)(()=>{let e=n.current;return()=>{e.forEach(clearTimeout),e.clear()}},[]),xu(`s`,void 0,()=>{let e=document.activeElement;e instanceof HTMLInputElement&&e.type===`text`&&e.blur();let r=setTimeout(()=>{n.current.delete(r),t.current()});n.current.add(r)})}var Du=3e3;function Ou(e){return e===`submitting`||e===`pending`?`sending`:e===`submitted`?`sent`:e===`failed`?`failed`:`none`}function ku(e){if(!e.newsletter||e.hasEmail||e.emailSegment===`none`)return null;let t=O(e.emailSegment),n=t??(e.newsletter.visibility===`paid`?`status:-free`:k);return{filter:A(M(e.newsletter),t),segment:n}}function Au(e,t){if(e.status!==`scheduled`||!e.publishedAt)return!1;let n=Date.parse(e.publishedAt);return!Number.isNaN(n)&&n<=t.getTime()}function ju({state:e,record:t,isDirty:n,isSaving:r,now:i=new Date}){if(e.kind===`error`)return{kind:`problem`,message:as(e.error)};let a=t?.status??`draft`;if(r&&a===`draft`)return{kind:`saving`};if(!t)return{kind:`new`};let o=t.emailCount??0,s=a===`scheduled`?ku(t):null;return a===`sent`?{kind:`sent`,failed:t.emailStatus===`failed`,count:o}:t.emailOnly&&a===`scheduled`?{kind:`scheduled`,publishedAt:t.publishedAt??null,emailOnly:!0,recipientFilter:s?.filter??null,recipientSegment:s?.segment??null}:a===`published`||Au(t,i)?{kind:`published`,url:t.url,email:Ou(t.emailStatus),count:o}:a===`scheduled`?{kind:`scheduled`,publishedAt:t.publishedAt??null,emailOnly:!1,recipientFilter:s?.filter??null,recipientSegment:s?.segment??null}:{kind:`draft`,saved:!n}}var Mu=2147483647;function Nu(e,t){let[n,r]=(0,X.useState)(0);(0,X.useEffect)(()=>{if(!t||!e)return;let n=Date.parse(e)-Date.now();if(!Number.isFinite(n)||n<=0)return;let i=setTimeout(()=>r(e=>e+1),Math.min(n,Mu));return()=>clearTimeout(i)},[t,n,e])}function Pu(e,t=Du){let[n,r]=(0,X.useState)(!1),i=(0,X.useRef)(void 0);return(0,X.useEffect)(()=>{!e||i.current||(r(!0),i.current=setTimeout(()=>{i.current=void 0,r(!1)},t))},[e,n,t]),(0,X.useEffect)(()=>()=>clearTimeout(i.current),[]),n}var Fu={published:{published:`Updated`,draft:`Saved`,scheduled:`Scheduled`,sent:`Sent`},draft:{published:`Published`,draft:`Saved`,scheduled:`Scheduled`,sent:`Sent`},scheduled:{scheduled:`Updated`,draft:`Unscheduled`,published:`Published`,sent:`Sent`},sent:{sent:`Updated`}};function Iu(e){return e.charAt(0).toUpperCase()+e.slice(1)}function Lu(e,t){let n=Tc.default.tz(e,t);return n.utcOffset()===0?`(UTC)`:`(UTC${n.format(`Z`).replace(/([+-])0/,`$1`).replace(/:00/,``)})`}function Ru({displayName:e,previewUrl:t,publishedAt:n,timezone:r,emailOnly:i,recipients:a}){let o=[{text:i?`Will be sent`:`Will be published`}];if(a!==null&&o.push({text:i?` to `:` and delivered to `},{text:a,strong:!0}),n){let e=Tc.default.tz(n,r);o.push({text:` on `},{text:e.format(`D MMM YYYY`),strong:!0},{text:` at `},{text:e.format(`HH:mm`),strong:!0},{text:`\u00a0${Lu(n,r)}`})}return{title:`${Iu(e)} scheduled`,description:o,action:t?{label:`Show preview`,href:t}:void 0}}function zu(e){if(e.status===`scheduled`)return Ru(e);let t=Fu[e.previousStatus]?.[e.status];return t?{title:`${Iu(e.displayName)} ${t.toLowerCase()}`,action:e.status===`published`&&e.url?{label:`View on site`,href:e.url}:void 0}:null}function Bu(e){return{title:`${Iu(e)} reverted to a draft.`}}var Vu=0,Hu=2500;function Uu(e){if(!e||!(`newsletter`in e)||!e.newsletter)return null;let t=ku({newsletter:e.newsletter,hasEmail:!!e.email,emailSegment:e.email_segment});return t?{...t,newsletter:e.newsletter}:null}function Wu(e){if(!(e.kind!==`saved`||!(`post`in e.result)))return e.result.post}function Gu({title:e,description:t,action:n}){Vu+=1;let r=`editor-save-${Vu}`;return R.success(e,{id:r,description:t?(0,Z.jsx)(Z.Fragment,{children:t.map(({text:e,strong:t})=>t?(0,Z.jsx)(`strong`,{children:e},`strong:${e}`):(0,Z.jsx)(`span`,{children:e},e))}):void 0,action:n?(0,Z.jsx)(`a`,{className:`ml-auto shrink-0 text-sm font-semibold text-foreground underline`,href:n.href,rel:`noopener noreferrer`,target:`_blank`,children:n.label}):void 0}),r}function Ku({session:e,displayName:t,siteUrl:n}){let r=jo(),i=Uu(e.loadedRecord),{count:a}=L(i?.filter??null,{requestOptions:Q}),{data:o}=x({requestOptions:Q}),{data:s}=Un({defaultErrorHandler:!1,requestOptions:Q,searchParams:Oo(o),enabled:i!==null&&o!==void 0}),c={session:e,displayName:t,siteUrl:n,timezone:r,audience:i,count:a,hasMultipleNewsletters:(s?.newsletters??[]).filter(e=>e.status===`active`).length>1},l=(0,X.useRef)(c);l.current=c;let u=(0,X.useRef)(null),d=(0,X.useCallback)(e=>{u.current&&R.dismiss(u.current),u.current=Gu(e)},[]);return{save:(0,X.useCallback)(async()=>{let e=l.current.session.publishTime.status;u.current&&=(R.dismiss(u.current),null);let t=await l.current.session.saveExplicit();if(t.kind!==`saved`||t.result.status!==e)return t;let n=l.current,r=Wu(t)??n.session.loadedRecord,i=Uu(r),a=i?I(i.segment,{count:i.filter===n.audience?.filter?n.count:void 0,newsletter:{name:i.newsletter.name,recipientFilter:M(i.newsletter)},hasMultipleNewsletters:n.hasMultipleNewsletters}):null,o=zu({displayName:n.displayName,previousStatus:e,status:t.result.status,url:r?.url,previewUrl:ss(n.siteUrl,r?.uuid),publishedAt:r?.published_at,timezone:n.timezone,emailOnly:!!r&&`email_only`in r&&r.email_only===!0,recipients:a});return o&&d(o),t},[d]),showReverted:(0,X.useCallback)(()=>{d(Bu(l.current.displayName))},[d])}}function qu(e,t){let[n,r]=(0,X.useState)(`idle`),i=(0,X.useRef)(void 0),a=(0,X.useRef)(!0),o=(0,X.useRef)(0);return(0,X.useLayoutEffect)(()=>(a.current=!0,o.current+=1,r(`idle`),()=>{a.current=!1,clearTimeout(i.current)}),[t]),{phase:n,run:(0,X.useCallback)(async()=>{let t=o.current;clearTimeout(i.current),r(`running`);let n=null;try{n=await e()}finally{a.current&&o.current===t&&(n?.kind===`saved`?(r(`success`),clearTimeout(i.current),i.current=setTimeout(()=>r(`idle`),Hu)):r(n===null||n.kind===`failed`?`failure`:`idle`))}},[e])}}var Ju={idle:`Update`,running:`Updating...`,success:`Updated`,failure:`Retry`},Yu={idle:`Save`,running:`Saving`,success:`Saved`,failure:`Retry`};async function Xu(e){let t=await e;if(t.kind===`dropped`&&t.reason===`clean`)return;let n=is(t);if(n)throw Error(n.message)}function Zu({session:e,post:t,postType:n,currentUser:r,siteUrl:i,tkCount:a,openFlow:o,onOpenFlow:s,offersEmailRetry:c,revealInvalidField:l}){let{isAdmin7:u}=Se(),{persistedId:d}=e,f=e.loadedRecord,[p,m]=(0,X.useState)(!1),h=Ku({session:e,displayName:n,siteUrl:i}),g=qu(h.save,e.contentKey);Eu(()=>void h.save());let _=(0,X.useCallback)(()=>m(!0),[]),v=t.status===`draft`;Su((0,X.useCallback)(()=>{m(!p),p&&s(`none`)},[s,p]),v&&d!==null);let y=(0,X.useCallback)(async()=>{e.publishTime.status!==`draft`||!e.isDirty()||await Xu(e.saveExplicit())},[e]),b=e.state.kind===`preparing`||e.state.kind===`saving`||e.state.kind===`pending-coalesced`,x=!!r&&kn(r);if(!d)return null;let S={subjectEditor:{value:e.settings.email_subject,fallback:e.title,hasUnsavedChanges:e.isDirty(),isSaving:b,saveError:du(e.state),onChange:t=>e.stageSettings({email_subject:t}),onCommit:e.commitSettings},isPost:n===`post`,post:t,newsletterSlug:t.newsletter??void 0,open:p,postId:d,previewUrl:ss(i,f?.uuid),onBeforeOpen:y,onOpenChange:m};return(0,Z.jsxs)(W,{"data-testid":Ii,gap:`md`,justify:`end`,wrap:!0,children:[v?(0,Z.jsx)(nn.Action,{className:`bg-background/80 backdrop-blur-sm`,fallbackSize:`sm`,label:`Preview`,shortcut:wu(),onClick:_,children:`Preview`}):null,x?(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(q,{disabled:b,size:u?`default`:`sm`,onClick:()=>void g.run(),children:Yu[g.phase]}),v?(0,Z.jsx)(Cc,{...S}):null]}):(0,Z.jsx)(Qu,{feedback:h,isDraft:v,isSaving:b,offersEmailRetry:c,openFlow:o,post:t,preview:S,revealInvalidField:l,session:e,tkCount:a,onOpenFlow:s,onPreview:_})]})}function Qu({session:e,feedback:t,post:n,tkCount:r,isDraft:i,isSaving:a,offersEmailRetry:o,openFlow:s,preview:c,revealInvalidField:l,onOpenFlow:u,onPreview:d}){let f=he(),p=Tr(),{isAdmin7:m}=Se(),h=ru(),g=ou(),{data:_}=Ao(),v=ur(_?.settings??null,`title`)??void 0,y=cr(`paywallImprovements`,{defaultErrorHandler:!1,requestOptions:Q}),b=cr(`improveSendingUI`,{defaultErrorHandler:!1,requestOptions:Q}),[x,S]=(0,X.useState)(!1),[C,w]=(0,X.useState)(!1),[T,E]=(0,X.useState)();h.isReady&&!x&&S(!0);let D=(0,X.useCallback)(async()=>{e.isDirty()&&await Xu(e.saveExplicit())},[e]),{save:O,showReverted:k}=t,A=qu(O,e.contentKey),j=(0,X.useCallback)(()=>{u(`none`),e.dispatchPublish({kind:`revert`})},[u,e]),M=(0,X.useCallback)(()=>{w(!1),u(`none`)},[u]),N=(0,X.useCallback)(()=>l()?(e.saveExplicit(),!0):!1,[l,e]),P=(0,X.useCallback)(()=>{N()||(w(!1),u(`publish`))},[u,N]),{onOpenChange:F}=c,I=(0,X.useCallback)(e=>{F(e),e||M()},[M,F]),ee=(0,X.useCallback)(()=>{w(!0),F(!1),u(`publish`)},[u,F]);Cu(P,i&&h.isReady&&!c.open);let L=!i&&n.status!==`sent`,R=n.status===`sent`&&n.email?.status!==`failed`,z=(i||L||R||o)&&h.error?(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(K,{className:`bg-background/80 text-destructive backdrop-blur-sm`,"data-testid":Li,role:`alert`,size:`sm`,children:h.error.message}),(0,Z.jsx)(q,{className:`bg-background/80 backdrop-blur-sm`,size:m?`default`:`sm`,variant:`ghost`,onClick:h.retry,children:`Retry`})]}):null;return(0,Z.jsxs)(Z.Fragment,{children:[i?(0,Z.jsxs)(Z.Fragment,{children:[z,(0,Z.jsx)(nn.Action,{className:`bg-background/80 font-semibold text-state-success backdrop-blur-sm hover:text-state-success disabled:text-text-secondary/60 disabled:opacity-100`,disabled:!h.isReady,fallbackSize:`sm`,label:`Publish`,shortcut:Tu(),onClick:P,children:`Publish`}),(0,Z.jsx)(Cc,{...c,animate:s!==`publish`,fallbackNewsletterSlug:T,publishDisabled:!h.isReady,onOpenChange:I,onPublish:ee})]}):(0,Z.jsxs)(Z.Fragment,{children:[z,L?(0,Z.jsx)(nn.Action,{className:`bg-background/80 backdrop-blur-sm`,fallbackSize:`sm`,fallbackVariant:`ghost`,label:n.status===`scheduled`?`Unschedule`:`Unpublish`,onClick:()=>{N()||u(`update`)},children:n.status===`scheduled`?`Unschedule`:`Unpublish`}):null,(0,Z.jsx)(nn.Action,{className:`bg-background/80 font-semibold text-state-success backdrop-blur-sm hover:text-state-success disabled:text-text-secondary/60 disabled:opacity-100`,disabled:!e.isDirty()||a,fallbackSize:`sm`,label:Ju[A.phase],onClick:()=>{l(),A.run()},children:Ju[A.phase]})]}),s===`publish`&&x?(0,Z.jsx)(Vl,{animate:!C,dispatch:e.dispatchPublish,improveSendingUI:b,limits:g,paywallImprovements:y,post:n,showCompletion:!1,site:h.site,siteTitle:v,timezone:h.timezone,tkCount:r,user:h.user,onBeforePublish:D,onClose:M,onCompleted:({postId:e,isScheduled:t,hasEmail:r})=>{let i=n.displayName===`page`?`/pages`:!t&&(r||n.email||n.emailOnly)?`/posts/analytics/${e}`:`/posts`;f(i,{crossApp:p(i)})},onNewsletterChange:E,onPreview:d,onRevertToDraft:j}):null,s===`update`&&x?(0,Z.jsx)(Gl,{dispatch:e.dispatchPublish,post:n,site:h.site,timezone:h.timezone,user:h.user,onClose:M,onReverted:k}):null]})}function $u(e){return`${_e(e)} ${e===1?`member`:`members`}`}function ed({filter:e,segment:t}){let{count:n}=L(e,{requestOptions:Q});return(0,Z.jsx)(Z.Fragment,{children:typeof n==`number`?$u(n):I(t,{count:n})})}function td({publishedAt:e,emailOnly:t,recipientFilter:n,recipientSegment:r,timezone:i}){return(0,Z.jsxs)(`time`,{className:`text-state-success`,"data-testid":gi,dateTime:e??void 0,children:[t?`to be sent`:`to be published`,n&&r&&(0,Z.jsxs)(Z.Fragment,{children:[t?` to `:` and sent to `,(0,Z.jsx)(ed,{filter:n,segment:r})]}),` `,Wr(e,{timezone:i,scheduled:!0})]})}function nd({label:e,onOpen:t}){let{isReady:n}=ru();return(0,Z.jsxs)(Z.Fragment,{children:[` `,(0,Z.jsx)(q,{className:`h-auto p-0 text-destructive`,disabled:!n,variant:`link`,onClick:t,children:e})]})}function rd({onOpen:e}){let{isReady:t}=ru();return(0,Z.jsx)(q,{className:`h-auto p-0`,disabled:!t,variant:`link`,onClick:e,children:`Sent`})}function id({view:e,timezone:t,isHovered:n,onOpenPublishFlow:r,onOpenUpdateFlow:i}){switch(e.kind){case`problem`:return(0,Z.jsx)(`span`,{className:`text-destructive`,children:e.message});case`saving`:return(0,Z.jsx)(Z.Fragment,{children:`Saving…`});case`new`:return(0,Z.jsx)(Z.Fragment,{children:`New`});case`draft`:return(0,Z.jsx)(Z.Fragment,{children:e.saved?`Draft - Saved`:`Draft`});case`sent`:return e.failed?(0,Z.jsxs)(Z.Fragment,{children:[`Failed to send newsletter.`,r?(0,Z.jsx)(nd,{label:`Retry now`,onOpen:r}):null]}):i?(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(rd,{onOpen:i}),` to `,$u(e.count)]}):(0,Z.jsxs)(Z.Fragment,{children:[`Sent to `,$u(e.count)]});case`scheduled`:return(0,Z.jsxs)(Z.Fragment,{children:[`Scheduled`,n&&(0,Z.jsxs)(Z.Fragment,{children:[` `,(0,Z.jsx)(td,{emailOnly:e.emailOnly,publishedAt:e.publishedAt,recipientFilter:e.recipientFilter,recipientSegment:e.recipientSegment,timezone:t})]})]});default:return(0,Z.jsxs)(Z.Fragment,{children:[e.url?(0,Z.jsx)(`a`,{className:`hover:text-foreground`,href:e.url,rel:`noopener noreferrer`,target:`_blank`,children:`Published`}):`Published`,e.email===`sending`&&` and sending to ${$u(e.count)}`,e.email===`sent`&&` and sent to ${$u(e.count)}`,e.email===`failed`&&` but failed to send newsletter.`,e.email===`failed`&&r?(0,Z.jsx)(nd,{label:`View details`,onOpen:r}):null]})}}function ad({state:e,record:t,isDirty:n,onOpenPublishFlow:r,onOpenUpdateFlow:i}){let{isAdmin7:a}=Se(),o=jo(),s=Pu(e.kind===`saving`||e.kind===`pending-coalesced`),[c,l]=(0,X.useState)(!1),[,u]=(0,X.useState)(0);return Nu(t?.publishedAt,t?.status===`scheduled`&&t.emailOnly!==!0),(0,X.useEffect)(()=>{if(!c)return;let e=setInterval(()=>u(e=>e+1),1e3);return()=>clearInterval(e)},[c]),(0,Z.jsx)(K,{as:`span`,className:Ze({variant:null,size:a?`default`:`sm`,shape:`pill`,isAdmin7:a,className:`pointer-events-auto h-auto max-w-full min-w-0 justify-self-start bg-background/80 px-3 py-1 text-(length:--text-control) whitespace-normal text-text-secondary backdrop-blur-sm max-sm:col-span-2 max-sm:row-start-2 ${a?`min-h-(--control-height)`:`min-h-7`}`}),"data-testid":hi,tone:`secondary`,weight:`medium`,onMouseEnter:()=>l(!0),onMouseLeave:()=>l(!1),children:(0,Z.jsx)(`span`,{className:`min-w-0 break-words`,children:(0,Z.jsx)(id,{isHovered:c,timezone:o,view:ju({state:e,record:t,isDirty:n,isSaving:s}),onOpenPublishFlow:r,onOpenUpdateFlow:i})})})}function od({post:e}){let{isAdmin7:t}=xe(),n=Ss(e);return n?.overLimit?(0,Z.jsxs)(Ft,{children:[(0,Z.jsx)(Mt,{asChild:!0,children:(0,Z.jsx)(q,{"aria-label":`Looks like this is a long post: ${n.sizeKb}kB`,className:`bg-background/80 text-state-warning backdrop-blur-sm hover:text-state-warning`,"data-testid":li,shape:`pill`,size:t?`icon`:`icon-sm`,type:`button`,variant:`ghost`,children:(0,Z.jsx)(Me,{})})}),(0,Z.jsx)(Nt,{align:`end`,className:`w-72`,"data-testid":ui,side:`top`,children:(0,Z.jsxs)(G,{gap:`xs`,children:[(0,Z.jsx)(K,{size:`sm`,weight:`semibold`,children:`Looks like this is a long post`}),(0,Z.jsx)(K,{size:`sm`,tone:`secondary`,children:`Emails may get clipped in the inbox behind a "View entire message" link when they're over 100kB.`}),(0,Z.jsxs)(K,{size:`sm`,children:[`You've used:`,` `,(0,Z.jsxs)(`span`,{className:`font-semibold text-state-warning`,children:[n.sizeKb,`kB`]})]})]})})]}):null}var sd=2e3;function cd(e,t){console.error(e),r(e,t)}function ld(e){cd(e,{tags:{lexical:!0},contexts:{koenig:{version:dr()}}})}function ud(e,t){cd(e,{tags:{lexical:!0},contexts:{koenig:{version:dr()},react:{componentStack:t.componentStack}}})}function dd(e){return Object.fromEntries(Object.entries(e).filter(([,e])=>e!==void 0))}function fd(e){let t=e.cause instanceof h?e.cause.response:void 0;return{api_response_status:t?.status,api_url:t?.url?t.url.slice(0,200):void 0}}function pd(e,t){let{command:n,error:a,persisted:o,durationMs:s,postId:c,status:u}=e,d=dd({savePostTask:!0,post_type:t,save_intent:n.kind,save_error_kind:a.kind,save_persisted:o,save_status:u,...fd(a)});if(s!==null&&s>sd&&r(`Failed Lexical save took > 2s`,{tags:dd({...d,save_time:Math.ceil(s/1e3),save_revision:n.requiresRevision,email_segment:n.target?.emailSegment}),extra:{post_id:c}}),!(a.kind===`validation`||a.kind===`host-limit`||a.kind===`forbidden`||a.cause instanceof l)){if(a.kind===`not-found`&&o){i(`Attempted to edit deleted ${t}`,{tags:d,extra:{post_id:c}});return}cd(a.cause??Error(a.message),{tags:d,extra:{post_id:c,duration_ms:s}})}}function md(e,t){i(e,{tags:dd({shown_to_user:!0,source:`editor-banner`,save_error_kind:t.kind,...fd(t)}),contexts:{ghost:{displayed_message:e,save_error_message:t.message}}})}function hd(e,t){i(`showing leave editor modal`,{tags:{post_type:t,save_status:e.status,engine_state:e.engineState,leave_reasons:e.reasons.join(`,`)},extra:{post_id:e.postId,reasons:e.reasons,dirty_fields:e.dirtyFields,body_diff:e.bodyDiff}})}function gd({editor:e,html:t,placeholder:n,darkMode:r,searchLinks:i,onChangeHtml:a,onFocus:o,onBlur:s,onTkCountChange:c,registerAPI:l}){let{KoenigComposer:u,KoenigComposableEditor:d,HtmlOutputPlugin:f,EmojiPickerPlugin:p,TKCountPlugin:m,MINIMAL_NODES:h,MINIMAL_TRANSFORMERS:g}=e.read();return(0,Z.jsx)(u,{cardConfig:{searchLinks:i},isTKEnabled:!0,nodes:h,onError:ld,children:(0,Z.jsxs)(d,{className:`koenig-lexical-editor-input font-sans! text-base! leading-6 [&_.kg-prose]:text-base! [&_.kg-prose_p]:m-0 [&_.kg-prose_p]:font-sans! [&_.kg-prose_p]:text-base! [&_.kg-prose_p]:leading-6`,darkMode:r,inheritStyles:!0,isSnippetsEnabled:!1,markdownTransformers:g,placeholderClassName:`koenig-lexical-editor-input-placeholder font-sans! text-base! leading-6 text-muted-foreground!`,placeholderText:n,registerAPI:l,singleParagraph:!0,onBlur:s,onFocus:o,children:[(0,Z.jsx)(f,{html:t??void 0,setHtml:a}),(0,Z.jsx)(p,{}),(0,Z.jsx)(m,{onChange:c})]})})}function _d(e){let t=lr();return(0,Z.jsx)(`div`,{className:`koenig-react-editor flex-1`,children:(0,Z.jsx)(Jr,{name:`the feature image caption`,onError:ud,children:(0,Z.jsx)(X.Suspense,{fallback:null,children:(0,Z.jsx)(gd,{...e,editor:t})})})})}var vd={utm_source:`ghost`,utm_medium:`referral`,utm_campaign:`api-credit`};function yd(e){let t=new DOMParser().parseFromString(e,`text/html`);for(let e of t.body.querySelectorAll(`a[href]`)){let t=new URL(e.href);for(let[e,n]of Object.entries(vd))t.searchParams.set(e,n);e.href=t.href}return t.body.innerHTML}function bd({enabled:e,label:t,disabled:n,variant:r=`overlay`,className:i,onSelect:a}){let{unsplashConfig:o}=s(),c=(0,X.useRef)(null),[l,u]=(0,X.useState)(!1),[d,f]=(0,X.useState)(null);return(0,X.useEffect)(()=>{e||u(!1)},[e]),(0,X.useEffect)(()=>{if(!d)return;let e=e=>{e.key===`Escape`&&e.preventDefault()};return d.addEventListener(`keydown`,e,!0),()=>d.removeEventListener(`keydown`,e,!0)},[d]),e?(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(Ht,{className:U(`top-1 right-1 opacity-100`,i),children:(0,Z.jsx)(q,{ref:c,"aria-label":t,className:U(`group/unsplash hover:bg-button-hover`,r===`inline`&&`p-0 hover:bg-accent`),disabled:n,shape:`pill`,size:`icon`,type:`button`,variant:`ghost`,onClick:()=>u(!0),children:(0,Z.jsx)(Xr,{className:U(`text-muted-foreground transition-colors group-hover/unsplash:text-foreground`,r===`inline`?`size-3.5`:`size-4`),name:`unsplash`})})}),l&&(0,ii.createPortal)((0,Z.jsx)(it,{children:(0,Z.jsx)(at,{asChild:!0,loop:!0,trapped:!0,onUnmountAutoFocus:e=>{e.preventDefault(),c.current?.focus()},children:(0,Z.jsx)(`div`,{ref:f,"data-testid":`unsplash-search-modal`,tabIndex:-1,children:(0,Z.jsx)(Yr,{unsplashProviderConfig:o,onClose:()=>u(!1),onImageInsert:e=>{e.src&&a({src:e.src,caption:yd(e.caption??``)}),u(!1)}})})})}),document.body)]}):null}var xd={bar:{empty:`h-14`,dropzone:`group/dropzone -ml-3 h-(--control-height) w-auto rounded-full border-0 bg-transparent px-3 py-2 shadow-none hover:bg-accent active:bg-accent active:shadow-control-pressed`,prompt:`transition-colors group-hover/dropzone:text-foreground`,icon:Ue,iconClassName:`size-4`,label:`text-base font-medium`,unsplash:`static`},panel:{empty:`h-[120px]`,dropzone:`group/dropzone border-dashed border-border-default bg-surface-elevated transition-colors`,prompt:`transition-colors group-hover/dropzone:text-foreground`,icon:nt,iconClassName:`size-6 stroke-[1.5px]`,label:`text-sm`,unsplash:``}};function Sd({src:e,subject:t,unsplashEnabled:n,upload:r,variant:i=`panel`,className:a,testId:o,alt:s=null,faded:c=!1,onChange:l,onUnsplashSelect:u,children:d}){let{isUploading:f,onUpload:p}=r,m=bt({requestOptions:Q}),h=f||m.isOpen,g=xd[i],_=i===`bar`?W:qt,v=i===`bar`?W:G,y=g.icon,b=`Add ${t}`;if(!e)return(0,Z.jsxs)(_,{className:U(g.empty,a),"data-testid":o,...i===`bar`?{gap:`sm`}:{},children:[(0,Z.jsx)(Kt,{accept:St,className:g.dropzone,disabled:f,inputAriaLabel:b,noDragEventsBubbling:!0,onDropAccepted:e=>e[0]&&void p(e[0]),onDropRejected:()=>R.error(wt),children:f?(0,Z.jsx)(tn,{size:`sm`}):(0,Z.jsxs)(v,{align:`center`,gap:`sm`,children:[(0,Z.jsx)(y,{"aria-hidden":`true`,className:U(`text-muted-foreground`,g.iconClassName,g.prompt)}),(0,Z.jsx)(`span`,{className:U(`text-muted-foreground`,g.prompt,g.label),children:b})]})}),(0,Z.jsx)(bd,{className:g.unsplash,disabled:f,enabled:n,label:`Select ${t} from Unsplash`,variant:i===`bar`?`inline`:`overlay`,onSelect:e=>u?u(e):l(e.src)})]});let x=(0,Z.jsxs)(Ut,{className:i===`bar`?`rounded-none`:void 0,children:[(0,Z.jsx)(Jt,{alt:s??``,className:c?`opacity-50`:void 0,role:s?`img`:`presentation`,src:e}),f?(0,Z.jsx)(W,{align:`center`,className:`absolute inset-0 bg-background/60`,justify:`center`,children:(0,Z.jsx)(tn,{size:`sm`})}):null,(0,Z.jsxs)(Ht,{children:[m.isEnabled&&(0,Z.jsx)(Wt,{"aria-label":`Edit ${t}`,disabled:h,onClick:()=>m.openEditor({image:e,handleSave:p}),children:(0,Z.jsx)(rt,{})}),(0,Z.jsx)(Wt,{"aria-label":`Remove ${t}`,disabled:h,onClick:()=>l(null),children:(0,Z.jsx)(ke,{})})]})]});return d?(0,Z.jsxs)(G,{className:a,"data-testid":o,gap:`sm`,children:[(0,Z.jsx)(qt,{className:i===`panel`?`max-h-[480px]`:`rounded-none`,children:x}),d]}):(0,Z.jsx)(qt,{className:U(i===`panel`?`max-h-[480px]`:`rounded-none`,a),"data-testid":o,children:x})}function Cd(e,t){let{mutateAsync:n,isPending:r}=Gt();return{isUploading:r,onUpload:(0,X.useCallback)(async r=>{try{return t(Yt(await n({file:r,...Q}))),!0}catch(t){return R.error(xt(t,e)),!1}},[t,e,n])}}var wd=191,Td=`feature image`;function Ed({image:e,alt:t,caption:n,captionKey:r,cardConfig:i,darkMode:a,faded:o=!1,onImageChange:s,onImageClear:c,onAltChange:l,onCaptionChange:u,onCaptionFocus:d,onCaptionBlur:f,onTkCountChange:p}){let[m,h]=(0,X.useState)(!1),[g,_]=(0,X.useState)(!1),[v,y]=(0,X.useState)(0),b=(0,X.useRef)(null),x=(0,X.useCallback)(e=>{y(e),p(e)},[p]),S=(0,X.useCallback)(e=>{b.current=e},[]),C=(0,X.useCallback)(()=>{b.current?.focusEditor({position:`bottom`})},[]),w=(0,X.useCallback)(()=>{_(!0),d()},[d]),T=(0,X.useCallback)(()=>{_(!1),f()},[f]),E=(0,X.useCallback)(e=>{if(e===null){h(!1),x(0),c();return}s(e)},[s,c,x]),D=Cd(Td,E),O=(0,X.useCallback)(e=>{s(e.src),u(e.caption)},[u,s]);return(0,Z.jsx)(Sd,{alt:t,className:e?`mb-8`:`mb-4`,faded:o,src:e,subject:Td,testId:_i,unsplashEnabled:!!i.unsplash,upload:D,variant:`bar`,onChange:E,onUnsplashSelect:O,children:(0,Z.jsxs)(W,{align:`center`,className:`relative`,gap:`sm`,children:[m?(0,Z.jsx)(`input`,{"aria-label":`Alt text for feature image`,className:U(`flex-1 border-0 bg-transparent p-0 font-sans text-base leading-6 text-text-secondary outline-none placeholder:text-muted-foreground`,o&&`opacity-50 focus:opacity-100`),maxLength:wd,name:`alt`,placeholder:`Add alt text to the feature image`,type:`text`,value:t??``,autoFocus:!0,onChange:e=>l(e.target.value)}):(0,Z.jsx)(`div`,{className:U(`flex-1`,o&&!g&&`opacity-50`),"data-testid":vi,children:(0,Z.jsx)(_d,{darkMode:a,html:n,placeholder:g?``:`Add a caption to the feature image`,registerAPI:S,searchLinks:i.searchLinks,onBlur:T,onChangeHtml:u,onFocus:w,onTkCountChange:x},r)}),v>0&&!m&&(0,Z.jsx)(`button`,{className:`rounded-sm bg-state-warning px-1.5 py-0.5 text-2xs font-bold text-foreground`,"data-testid":`feature-image-tk-indicator`,type:`button`,onClick:C,children:`TK`}),(0,Z.jsx)(`button`,{"aria-label":`Toggle between editing alt text and caption`,className:U(`rounded-md border px-1.5 py-0.5 text-2xs font-medium tracking-wide`,m?`border-primary bg-primary text-primary-foreground`:`border-border-default bg-transparent text-text-secondary`),type:`button`,onClick:()=>h(!m),children:`Alt`})]})})}var Dd={useFileUpload:(e=`image`)=>z(e,Q),fileTypes:ne},Od=()=>{};function kd({editor:e,isSecondary:t,onError:n,initialLexical:r,placeholder:i,cardConfig:a,darkMode:o,cursorDidExitAtTop:s,onChange:c,onSecondaryChange:l,registerAPI:u,onWordCountChange:d,onTkCountChange:f}){let{KoenigComposer:p,KoenigEditor:m,WordCountPlugin:h,TKCountPlugin:g}=e.read();return(0,Z.jsx)(`div`,{"data-secondary-instance":t?`true`:`false`,"data-testid":t?ci:si,hidden:t,children:(0,Z.jsxs)(p,{cardConfig:a,darkMode:o,fileUploader:Dd,initialEditorState:r??void 0,isTKEnabled:!0,onError:n,children:[(0,Z.jsx)(m,{cursorDidExitAtTop:t?void 0:s,darkMode:t?void 0:o,placeholderText:t?void 0:i,registerAPI:t?void 0:u,onChange:t?l:c}),(0,Z.jsx)(h,{onChange:t?Od:d}),(0,Z.jsx)(g,{onChange:t?Od:f})]})})}var Ad=(0,X.memo)(function(e){let t=lr(),{onSecondaryError:n}=e,r=(0,X.useCallback)(e=>{ld(e),n?.()},[n]),i=(0,X.useCallback)((e,t)=>{ud(e,t),n?.()},[n]);return(0,Z.jsx)(`div`,{className:`koenig-react-editor koenig-lexical mx-auto w-full max-w-[740px]`,children:(0,Z.jsx)(Jr,{name:`the editor`,onError:ud,children:(0,Z.jsxs)(X.Suspense,{fallback:(0,Z.jsx)(`div`,{className:`flex justify-center py-10`,children:(0,Z.jsx)(tn,{size:`lg`})}),children:[(0,Z.jsx)(Jr,{fallback:null,name:`the editor`,onError:i,children:(0,Z.jsx)(kd,{...e,editor:t,isSecondary:!0,onError:r})}),(0,Z.jsx)(kd,{...e,editor:t,isSecondary:!1,onError:ld})]})})})}),jd=/(^|.)([^\p{L}\p{N}\s]*(TK)+[^\p{L}\p{N}\s]*)(.)?/u,Md=/\p{L}|\p{N}/u;function Nd(e){return!(e[1]&&e[1].trim()&&Md.test(e[1])||e[4]&&e[4].trim()&&Md.test(e[4]))}function Pd(e){let t=e,n=jd.exec(t);for(;n!==null&&!Nd(n);)t=t.slice(n.index+n[0].length-1),n=jd.exec(t);return n!==null}function Fd(){let e=document.activeElement;return e instanceof HTMLTextAreaElement?!e.readOnly&&!e.disabled:e instanceof HTMLInputElement?!e.readOnly&&!e.disabled&&[`text`,`search`,`email`,`url`,`tel`,`password`,`number`].includes(e.type):e instanceof HTMLElement&&e.isContentEditable===!0}function Id(){let[e,t]=(0,X.useState)(!1);return(0,X.useEffect)(()=>{let e=window.visualViewport;if(!e)return;let n=()=>{t(e.scale===1&&window.innerHeight-e.height>150&&Fd())};return n(),e.addEventListener(`resize`,n),window.addEventListener(`resize`,n),document.addEventListener(`focusin`,n),document.addEventListener(`focusout`,n),()=>{e.removeEventListener(`resize`,n),window.removeEventListener(`resize`,n),document.removeEventListener(`focusin`,n),document.removeEventListener(`focusout`,n)}},[]),e}var Ld=e=>e.charAt(0).toUpperCase()+e.slice(1),Rd=`block w-full resize-none overflow-hidden border-0 bg-transparent p-0 outline-none`;function zd(e,t){let n=(0,X.useCallback)(()=>{let t=e.current;t&&(t.style.height=`auto`,t.style.height=`${t.scrollHeight}px`)},[e]);(0,X.useLayoutEffect)(n,[n,t]),(0,X.useEffect)(()=>{let t=e.current;if(!t)return;let r=0,i=new ResizeObserver(()=>{cancelAnimationFrame(r),r=requestAnimationFrame(n)});return i.observe(t),()=>{cancelAnimationFrame(r),i.disconnect()}},[e,n])}function Bd({className:e,label:t,testId:n}){return(0,Z.jsxs)(be,{children:[(0,Z.jsx)(Ce,{asChild:!0,children:(0,Z.jsx)(`span`,{"aria-label":t,className:U(`absolute -left-15 text-muted-foreground`,e),"data-testid":n,role:`img`,children:(0,Z.jsx)(Pe,{})})}),(0,Z.jsx)(ye,{children:t})]})}function Vd({className:e,onClick:t,testId:n}){return(0,Z.jsx)(`button`,{className:U(`absolute rounded-sm bg-state-warning px-1.5 py-0.5 text-2xs font-bold text-foreground`,e),"data-testid":n,type:`button`,onClick:t,children:`TK`})}function Hd({postType:e,title:t,excerpt:n,titleError:r=null,excerptError:i=null,featureImage:a,titleAndFeatureImageHidden:o=!1,initialLexical:s,cardConfig:c,showExcerpt:l,autofocusTitle:u=!1,onTitleChange:d,onTitleBlur:f,onExcerptChange:p,onExcerptBlur:m,onLexicalChange:h,onSecondaryChange:g,onSecondaryError:_,registerEditorApi:v,onTkCountChange:y,wordCountAccessory:b,handleRef:x}){let{darkMode:S,isAdmin7:C}=xe(),w=Id(),T=(0,X.useRef)(null),E=(0,X.useRef)(null),D=(0,X.useRef)(null),O=(0,X.useId)(),k=(0,X.useId)(),A=(0,X.useRef)(null),j=(0,X.useRef)(!1),[M,N]=(0,X.useState)(0),[P,F]=(0,X.useState)(0),[I,ee]=(0,X.useState)(0);zd(E,t),zd(D,n),(0,X.useLayoutEffect)(()=>{let e=T.current;if(!e)return;let t=()=>{e.style.setProperty(`--kg-breakout-adjustment`,`${Math.max(0,window.innerWidth-e.clientWidth)}px`)};t();let n=new ResizeObserver(t);return n.observe(e),window.addEventListener(`resize`,t),()=>{n.disconnect(),window.removeEventListener(`resize`,t)}},[]);let L=!!a.featureImage,R=Pd(t),z=l&&Pd(n);(0,X.useEffect)(()=>{y?.(+!!R+ +!!z+P+I)},[y,R,z,P,I]);let te=(0,X.useCallback)(()=>{E.current?.focus()},[]),ne=(0,X.useCallback)(()=>{D.current?.focus(),setTimeout(()=>D.current?.setSelectionRange(-1,-1),0)},[]);(0,X.useImperativeHandle)(x,()=>({focusTitle:te,focusExcerpt:ne}),[te,ne]);let ie=(0,X.useCallback)(e=>{A.current=e,v?.(e)},[v]),ae=e=>{let t=A.current;t&&(e===`Enter`&&!t.editorIsEmpty()?t.insertParagraphAtTop({focus:!0}):t.focusEditor({position:`top`}))};return(0,Z.jsxs)(`div`,{className:`relative h-full min-h-0`,"data-testid":ai,children:[(0,Z.jsx)(`div`,{className:`h-full scroll-pt-(--editor-overlap) overflow-x-hidden overflow-y-auto`,children:(0,Z.jsxs)(G,{ref:T,className:`min-h-full px-6 pt-[calc(var(--spacing)*12+var(--editor-overlap,0px))] pb-24 lg:mr-[calc(var(--spacing)*3*var(--editor-settings-progress,0))]`,gap:`none`,onDragOver:e=>e.preventDefault(),onDrop:e=>{e.dataTransfer.files.length>0&&(e.preventDefault(),A.current?.insertFiles(Array.from(e.dataTransfer.files)))},onMouseDown:e=>{j.current=e.nativeEvent.composedPath().some(e=>e instanceof Element&&e.matches(`[data-lexical-decorator], [data-kg-slash-menu]`))},onMouseUp:e=>{!j.current&&e.target===e.currentTarget&&A.current&&re(A.current,e),j.current=!1},children:[(0,Z.jsxs)(`div`,{className:`relative mx-auto w-full max-w-[740px]`,children:[(0,Z.jsx)(Ed,{alt:a.featureImageAlt,caption:a.featureImageCaption,captionKey:a.featureImageCaptionKey,cardConfig:c,darkMode:S,faded:o,image:a.featureImage,onAltChange:a.onFeatureImageAltChange,onCaptionBlur:a.onFeatureImageCaptionBlur,onCaptionChange:a.onFeatureImageCaptionChange,onCaptionFocus:a.onFeatureImageCaptionFocus,onImageChange:a.onFeatureImageChange,onImageClear:a.onFeatureImageClear,onTkCountChange:ee}),o&&L&&(0,Z.jsx)(Bd,{className:`-top-px`,label:`Feature image and post title are hidden on page`,testId:`feature-image-hidden-indicator`}),(0,Z.jsxs)(`div`,{className:`relative`,children:[o&&!L&&(0,Z.jsx)(Bd,{className:`top-4.5`,label:`Post title is hidden on page`,testId:`title-hidden-indicator`}),R&&(0,Z.jsx)(Vd,{className:`top-4.5 -right-14`,testId:`tk-indicator`,onClick:te}),(0,Z.jsx)(`textarea`,{ref:E,"aria-describedby":r?O:void 0,"aria-invalid":!!r,"aria-label":`${Ld(e)} title`,autoFocus:u,className:U(Rd,`heading-font-features mb-4 min-h-0 max-w-none min-w-0 pb-1 text-[4.8rem] leading-[1.1] font-bold tracking-[-0.017em] text-foreground placeholder:font-bold placeholder:text-muted-foreground max-[769px]:text-[3.6rem] max-[501px]:text-[2.8rem]`,o&&`opacity-50 focus:opacity-100`),"data-testid":oi,placeholder:`${Ld(e)} title`,rows:1,value:t,onBlur:f,onChange:e=>d(e.target.value),onKeyDown:e=>{let{key:t}=e,{value:n,selectionStart:r}=e.currentTarget,i=!n||r===n.length;if(l){t===`Enter`&&(e.preventDefault(),ne()),(t===`ArrowDown`||t===`ArrowRight`)&&!e.shiftKey&&i&&(e.preventDefault(),ne());return}!A.current||e.nativeEvent.isComposing||(t===`Enter`||t===`Tab`||(t===`ArrowDown`||t===`ArrowRight`)&&i)&&(e.preventDefault(),ae(t))},onPaste:e=>{let t=e.clipboardData.getData(`text`);t&&(e.preventDefault(),document.execCommand(`insertText`,!1,t.replace(/(\n|\r)+/g,` `).trim()))}})]}),r?(0,Z.jsx)(zt,{className:`-mt-2 mb-4`,id:O,children:r}):null,l&&(0,Z.jsxs)(`div`,{className:`relative`,children:[z&&(0,Z.jsx)(Vd,{className:`top-1 -left-12`,testId:`tk-indicator-excerpt`,onClick:ne}),(0,Z.jsx)(`textarea`,{ref:D,"aria-describedby":i?k:void 0,"aria-invalid":!!i,"aria-label":`Excerpt`,className:U(Rd,`text-xl leading-normal tracking-tight text-text-secondary placeholder:text-muted-foreground`),"data-testid":`editor-excerpt-input`,placeholder:`Add an excerpt`,rows:1,value:n,onBlur:m,onChange:e=>p(e.target.value),onKeyDown:e=>{let{key:t}=e,{value:n,selectionStart:r}=e.currentTarget;if((t===`ArrowUp`||t===`ArrowLeft`)&&!e.shiftKey&&(!n||r===0)){e.preventDefault(),te();return}let i=!n||r===n.length,a=(t===`ArrowRight`||t===`ArrowDown`)&&i;(t===`Enter`||t===`Tab`&&!e.shiftKey||a)&&(e.preventDefault(),ae(t))}}),(0,Z.jsx)(`hr`,{className:U(`mt-4`,i?`mb-2 border-destructive`:`mb-6 border-border`)}),i?(0,Z.jsx)(zt,{className:`mb-6`,id:k,children:i}):null]})]}),(0,Z.jsx)(Ad,{cardConfig:c,cursorDidExitAtTop:l?ne:te,darkMode:S,initialLexical:s,placeholder:`Begin writing your ${e}...`,registerAPI:ie,onChange:h,onSecondaryChange:g,onSecondaryError:_,onTkCountChange:F,onWordCountChange:N})]})}),(0,Z.jsxs)(W,{className:`absolute right-[calc(var(--spacing)*(4+2*var(--editor-settings-progress,0)))] bottom-3 z-20`,gap:`sm`,children:[!w&&(0,Z.jsxs)(K,{as:`span`,className:Ze({variant:null,size:C?`default`:`sm`,shape:`pill`,isAdmin7:C,className:`bg-background/80 px-3 text-(length:--text-control) text-text-secondary backdrop-blur-sm`}),"data-testid":`editor-word-count`,tone:`secondary`,weight:`medium`,children:[_e(M),` `,M===1?`word`:`words`]}),b,(0,Z.jsx)(q,{className:U(`bg-background/80 text-text-secondary backdrop-blur-sm hover:text-foreground`,C&&`[&_svg]:stroke-2!`),shape:`pill`,size:C?`icon`:`icon-sm`,variant:`ghost`,asChild:!0,children:(0,Z.jsx)(`a`,{"aria-label":`Editor help`,href:`https://ghost.org/help/using-the-editor/`,rel:`noopener noreferrer`,target:`_blank`,children:(0,Z.jsx)(Ve,{})})})]})]})}function Ud({snapshot:e,record:t,access:n,knownTiers:r,displayName:i,lexical:a}){let o=t&&`email`in t?t.email??null:null,s=t&&`newsletter`in t?t.newsletter??null:null;return{id:e.id??t?.id??``,displayName:i,status:e.status,title:e.title,excerpt:t?.custom_excerpt??null,url:t?.url??null,featureImage:t?.feature_image??null,publishedAt:e.publishedAt,visibility:n.visibility,tiers:n.tiers.flatMap(e=>{let n=e.slug??r?.find(({id:t})=>t===e.id)?.slug??t?.tiers?.find(({id:t})=>t===e.id)?.slug;return n?[{slug:n}]:[]}),newsletter:s?.slug??null,newsletterName:s?.name??null,newsletterStatus:s?.status??null,emailSegment:t&&`email_segment`in t?t.email_segment??null:null,emailOnly:t&&`email_only`in t?t.email_only===!0:!1,email:o,emailCreatedAt:o?.created_at??null,lexical:a??t?.lexical??null,updatedAt:t?.updated_at??null}}var Wd=`Your session expired. Retry to sign in again and save.`,Gd=`Someone else is editing this post. Reloading replaces what you have with their version, so copy your content first if you need it.`,Kd=`This post was updated elsewhere.`,qd=`Couldn’t reload this post`;function Jd(e){switch(e.kind){case`session-invalid`:return Wd;case`transport`:return`Couldn’t reach the server. Your changes are still here.`;default:return as(e)}}function Yd(e,t){(0,X.useEffect)(()=>{e!==null&&t!==null&&md(e,t)},[e,t])}function Xd({hasUnsavedContent:e,contentText:t,onReload:n,error:r,stopped:i=!1}){let[a,o]=(0,X.useState)(!1),[s,c]=(0,X.useState)(!1),[l,u]=(0,X.useState)(!1),d=i?r:l?su:null,f=d?d.message:Gd;Yd(f,d??r);let p=async()=>{o(!1),c(!0);let e=await n();c(!1),e===`gone`&&u(!0),e===`failed`&&R.error(qd)},m=async()=>{try{await navigator.clipboard.writeText(t()),R.success(`Content copied`)}catch{R.error(`Couldn’t copy your content`)}};return(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(Mr,{className:`mx-4 mb-2 shrink-0 bg-destructive text-destructive-foreground`,"data-testid":pi,role:`alert`,size:`sm`,variant:`destructive`,children:(0,Z.jsxs)(W,{align:`center`,gap:`sm`,justify:`center`,wrap:!0,children:[(0,Z.jsx)(K,{className:`text-center text-inherit`,children:f}),(0,Z.jsxs)(W,{align:`center`,gap:`sm`,justify:`center`,children:[!d&&(0,Z.jsx)(q,{className:`border-destructive-foreground/40 text-destructive-foreground hover:bg-destructive-foreground/10 hover:text-destructive-foreground`,disabled:s,size:`sm`,variant:`outline`,onClick:()=>e()?o(!0):void p(),children:`Reload`}),(0,Z.jsx)(q,{className:`text-destructive-foreground hover:bg-destructive-foreground/10 hover:text-destructive-foreground`,size:`sm`,variant:`ghost`,onClick:()=>void m(),children:`Copy content`})]})]})}),(0,Z.jsx)(mt,{open:a,onOpenChange:o,children:(0,Z.jsxs)(ct,{className:ws,"data-testid":mi,overlayClassName:ws,children:[(0,Z.jsxs)(pt,{children:[(0,Z.jsx)(st,{children:`Discard your unsaved changes?`}),(0,Z.jsx)(ot,{children:`Reloading replaces this post with the version on the server. Anything you have not saved is lost.`})]}),(0,Z.jsxs)(dt,{children:[(0,Z.jsx)(ft,{asChild:!0,children:(0,Z.jsx)(q,{variant:`outline`,children:`Cancel`})}),(0,Z.jsx)(ut,{asChild:!0,children:(0,Z.jsx)(q,{variant:`destructive`,onClick:()=>void p(),children:`Discard and reload`})})]})]})})]})}function Zd({onReload:e}){let[t,n]=(0,X.useState)(!1),r=async()=>{n(!0);let t=await e();n(!1),t!==`reloaded`&&R.error(qd)};return(0,Z.jsx)(Mr,{className:`mx-4 mb-2 shrink-0`,"data-testid":bi,role:`status`,size:`sm`,variant:`info`,children:(0,Z.jsxs)(W,{align:`center`,gap:`sm`,children:[(0,Z.jsx)(K,{children:Kd}),(0,Z.jsx)(q,{disabled:t,size:`sm`,variant:`outline`,onClick:()=>void r(),children:`Reload`})]})})}function Qd({state:e,pendingSave:t,newerVersionAvailable:n=!1,hasUnsavedContent:r,contentText:i,onRetrySave:a,onReload:o}){let s=e.kind===`error`?e.error:null;Yd(s&&Jd(s),s);let c=uu(e),l=e.kind===`conflict`?e.error:c??(t?.blockedBy?.kind===`conflict`?t.blockedBy:null);return l?(0,Z.jsx)(Xd,{contentText:i,error:l,hasUnsavedContent:r,stopped:c!==null,onReload:o}):e.kind===`error`?(0,Z.jsx)(Mr,{className:`mx-4 mb-2 shrink-0`,"data-testid":yi,role:`alert`,size:`sm`,variant:`destructive`,children:(0,Z.jsxs)(W,{align:`center`,gap:`sm`,children:[(0,Z.jsx)(K,{children:e.error.kind===`host-limit`?(0,Z.jsx)(Xc,{parts:qo(e.error.message)}):Jd(e.error)}),(0,Z.jsx)(q,{size:`sm`,variant:`outline`,onClick:a,children:`Retry`})]})}):t?.blockedBy?.kind===`validation`?(0,Z.jsx)(Mr,{className:`mx-4 mb-2 shrink-0`,role:`status`,size:`sm`,variant:`warning`,children:(0,Z.jsxs)(K,{children:[`Changes are waiting to save. `,t.blockedBy.message]})}):n?(0,Z.jsx)(Zd,{onReload:o}):null}function $d(e){return!e.loadedRecord&&e.createdId===null}function ef(e){let{title:t}=e.bind,{commitSettings:n,createdId:r,dispose:i,editPublishedAt:a,editSettings:o,editSlug:s,loadedRecord:c,publishTime:l,restoreRevision:u,settings:d,slug:f,stageSettings:p}=e,m=(0,X.useMemo)(()=>({title:t}),[t]);return(0,X.useMemo)(()=>({bind:m,commitSettings:n,createdId:r,dispose:i,editPublishedAt:a,editSettings:o,editSlug:s,loadedRecord:c,publishTime:l,restoreRevision:u,settings:d,slug:f,stageSettings:p}),[m,n,r,i,a,o,s,c,l,u,d,f,p])}function tf({message:e,onRetry:t}){return(0,Z.jsxs)(G,{align:`start`,className:`p-2`,"data-testid":Vi,gap:`sm`,children:[(0,Z.jsx)(K,{role:`alert`,size:`sm`,children:e}),(0,Z.jsx)(q,{size:`sm`,variant:`outline`,onClick:t,children:`Retry`})]})}function nf({children:e}){return(0,Z.jsx)(G,{className:`px-5 py-4`,gap:`sm`,children:e})}var rf=[{value:`public`,label:`Public`},{value:`members`,label:`Members only`},{value:`paid`,label:`Paid-members only`},{value:`tiers`,label:`Specific tier(s)`}];function af(e,t){return e||t||`public`}function of(e){let t=(e??[]).filter(e=>e.type===`paid`),n=$n(t),r=t.filter(e=>!e.active);return[...n,...r].map(e=>({id:e.id,name:e.name,archived:!e.active}))}function sf(e){return e.filter(e=>e.type!==`free`).map(e=>e.id).filter(e=>!!e)}function cf(e){return sf(e).map(e=>({id:e}))}function lf(e){try{let t=JSON.parse(e||`[]`);return Array.isArray(t)?t.filter(e=>typeof e==`string`):[]}catch{return[]}}function uf(e,t){let n=new Set(e.map(e=>e.id)),r=e.filter(e=>t.has(e.id)).map(e=>e.id),i=[...t].filter(e=>!n.has(e));return[...r,...i].map(e=>({id:e}))}function df({option:e,checked:t,onToggle:n}){let r=(0,X.useId)();return(0,Z.jsxs)(W,{gap:`sm`,children:[(0,Z.jsx)(yt,{checked:t,id:r,onCheckedChange:n}),(0,Z.jsx)(Lt,{htmlFor:r,children:e.name})]})}function ff({heading:e,options:t,selected:n,onToggle:r}){return t.length===0?null:(0,Z.jsxs)(G,{gap:`sm`,children:[(0,Z.jsx)(K,{size:`sm`,tone:`secondary`,weight:`medium`,children:e}),t.map(e=>(0,Z.jsx)(df,{checked:n.has(e.id),option:e,onToggle:()=>r(e.id)},e.id))]})}function pf({session:e,postType:t}){let n=(0,X.useId)(),r=(0,X.useId)(),{data:i}=Ao(),a=ur(i?.settings??null,`default_content_visibility`),o=ur(i?.settings??null,`default_content_visibility_tiers`),s=af(e.settings.visibility,a),c=$d(e)&&!e.settings.visibility&&s===`tiers`,l=new Set(c?lf(o):sf(e.settings.tiers)),u=ic(e.settings),{data:d,fetchNextPage:f,hasNextPage:p,isError:m,isFetchingNextPage:h,refetch:g}=Qn({defaultErrorHandler:!1,enabled:s===`tiers`,requestOptions:Q,searchParams:Do});(0,X.useEffect)(()=>{p&&!h&&!m&&f()},[f,p,h,m]);let _=p?[]:of(d?.tiers),v=t=>{if(ic(t)&&$d(e)){e.stageSettings(t);return}e.editSettings(t)},y=t=>v({visibility:t,tiers:t===`tiers`?cf(e.settings.tiers):[]}),b=t=>{let n=new Set(l);n.delete(t)||n.add(t);let r={visibility:`tiers`,tiers:uf(_,n)};if(e.publishTime.status!==`draft`){e.stageSettings(r);return}v(r)};return(0,Z.jsxs)(nf,{children:[(0,Z.jsxs)(Lt,{htmlFor:n,children:[t===`page`?`Page`:`Post`,` access`]}),(0,Z.jsxs)(pn,{value:s,onValueChange:y,children:[(0,Z.jsx)(un,{"data-testid":Yi,id:n,children:(0,Z.jsx)(fn,{})}),(0,Z.jsx)(ln,{children:rf.map(e=>(0,Z.jsx)(cn,{value:e.value,children:e.label},e.value))})]}),s===`tiers`?(0,Z.jsxs)(G,{"aria-describedby":u?r:void 0,"aria-invalid":u,"aria-label":`Tiers`,"data-testid":Xi,gap:`md`,role:`group`,children:[m?(0,Z.jsx)(tf,{message:`Couldn’t load tiers.`,onRetry:()=>void g()}):(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(ff,{heading:`Active tiers`,options:_.filter(e=>!e.archived),selected:l,onToggle:b}),(0,Z.jsx)(ff,{heading:`Archived tiers`,options:_.filter(e=>e.archived),selected:l,onToggle:b})]}),u?(0,Z.jsx)(zt,{"data-testid":Zi,id:r,children:Hs}):null]}):null]})}var mf=`Use the publish menu to re-schedule`;function hf({session:e}){let t=(0,X.useId)(),n=(0,X.useId)(),r=jo(),{status:i,publishedAt:a}=e.publishTime,o=new Date().toISOString(),s=a??o,c=i===`scheduled`,l=c&&!!a&&Date.parse(a)<Date.now(),u=oc(i,a);return(0,Z.jsxs)(nf,{children:[(0,Z.jsx)(Lt,{id:n,children:c&&!l?`Scheduled date`:`Publish date`}),(0,Z.jsx)(pl,{dateLabel:`Publish date`,dateTestId:ia,describedBy:u?t:void 0,disabled:c,invalid:u,labelledBy:n,maxDate:o,timeLabel:`Publish time`,timeTestId:aa,timezone:r,value:s,onChange:t=>e.editPublishedAt(t.toISOString())}),u?(0,Z.jsx)(zt,{"data-testid":oa,id:t,children:ac}):null,c&&!l?(0,Z.jsx)(K,{"data-testid":sa,size:`sm`,tone:`secondary`,children:mf}):null]})}var gf={include:`count.posts`,limit:`all`,order:`count.posts desc, name asc`};function _f(e){return e.normalize(`NFD`).replace(/\p{Diacritic}/gu,``).toLowerCase()}function vf(e){return e.name||e.email}function yf(e){return{id:e.id,name:vf(e),email:e.email}}function bf(e,t){let n=_f(t);return[e.name,e.slug,e.email].some(e=>_f(e??``).includes(n))}function xf(e,t){let n=new Map((t??[]).map(e=>[e.id,e])),r=[];for(let t of e){if(!t.id)continue;let e=n.get(t.id);r.push(e?yf(e):{id:t.id,name:t.name||t.email||t.id,email:t.email??``})}return r}function Sf({inputId:e,describedBy:t,invalid:n,selected:r,staff:i,loading:a,loadError:o,onRetry:s,onChange:c,onOpen:l}){let u=(0,X.useRef)(null),d=o&&!a,f=(0,X.useCallback)(e=>{e&&l()},[l]);return(0,Z.jsx)(Hr,{chipVariant:()=>`secondary`,describedBy:t,emptyMessage:a?`Loading authors...`:`No authors found`,getKey:e=>e.id,getLabel:vf,inputId:e,inputLabel:`Authors`,inputRef:u,invalid:n,matches:bf,notice:d?(0,Z.jsx)(tf,{message:`Couldn’t load authors.`,onRetry:()=>{u.current?.focus(),s()}}):null,options:i,placeholder:`Select authors...`,renderOption:e=>(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(`span`,{className:`truncate`,children:vf(e)}),(0,Z.jsx)(`span`,{className:`ms-auto truncate text-xs text-muted-foreground`,children:e.email})]}),selected:r,testIds:{field:ca,list:la,chip:da},hideSelected:!0,reopenOnRemove:!0,onAdd:e=>c([...r,yf(e)]),onOpenChange:f,onRemove:e=>c(r.filter(t=>t.id!==e)),onReorder:c})}function Cf({session:e,currentUser:t}){let n=(0,X.useId)(),r=(0,X.useId)(),[i,a]=(0,X.useState)(!1),o=(0,X.useCallback)(()=>a(!0),[]),{data:s,fetchNextPage:c,hasNextPage:l,isFetching:u,isFetchingNextPage:d,isError:f,refetch:p}=On({defaultErrorHandler:!1,enabled:i,requestOptions:Q,searchParams:gf});(0,X.useEffect)(()=>{l&&!d&&!f&&c()},[c,l,d,f]);let m=e.settings.authors,h=xf(m,[...s?.users??[],...t?[t]:[]]),g=h.length===0;return(0,Z.jsxs)(nf,{children:[(0,Z.jsx)(Lt,{htmlFor:n,children:`Authors`}),(0,Z.jsx)(Sf,{describedBy:g?r:void 0,inputId:n,invalid:g,loadError:f,loading:u||l,selected:h,staff:s?.users??[],onChange:t=>e.editSettings({authors:t}),onOpen:o,onRetry:()=>void p()}),g?(0,Z.jsx)(zt,{"data-testid":ua,id:r,children:Us}):null]})}var wf=(0,X.forwardRef)(function({icon:e,children:t,className:n,...r},i){return(0,Z.jsxs)(`button`,{ref:i,className:U(`flex w-full items-center gap-2 px-5 py-3 text-left text-foreground hover:bg-interactive-hover focus-visible:ring-1 focus-visible:ring-focus-ring focus-visible:outline-hidden [&>svg]:size-4 [&>svg]:shrink-0`,n),type:`button`,...r,children:[e,(0,Z.jsx)(K,{as:`span`,className:`flex-1 text-control!`,weight:`medium`,children:t}),(0,Z.jsx)(tt,{className:`size-4 shrink-0 text-text-tertiary`})]})}),Tf=(0,X.createContext)(null);function Ef(){let[e,t]=(0,X.useState)(null),n=(0,X.useCallback)(()=>{let e=document.activeElement;e instanceof HTMLElement&&e.blur(),t(null)},[]);return(0,X.useEffect)(()=>{if(!e)return;let t=e=>{e.key===`Escape`&&!e.defaultPrevented&&n()};return window.addEventListener(`keydown`,t),()=>window.removeEventListener(`keydown`,t)},[n,e]),(0,X.useMemo)(()=>({open:e,show:t,close:n}),[n,e])}function Df(){let e=(0,X.useContext)(Tf);if(!e)throw Error(`A settings subview must be rendered inside the settings panel.`);return e}function Of({id:e,icon:t,label:n,title:r,closeLabel:i,contentClassName:a,children:o}){let{open:s,show:c,close:l}=Df(),u=s?.id===e,d=(0,X.useRef)(null),f=(0,X.useRef)(null),p=(0,X.useRef)(!1);return(0,X.useEffect)(()=>{u?d.current?.focus():p.current&&f.current?.focus(),p.current=u},[u]),u?(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(we,{className:`z-10 shrink-0 bg-sidebar`,children:(0,Z.jsxs)(W,{align:`center`,className:`px-4 py-3`,gap:`sm`,children:[(0,Z.jsx)(q,{ref:d,"aria-label":i,className:`hover:bg-sidebar-accent [&_svg]:stroke-2!`,shape:`pill`,size:`icon`,variant:`ghost`,onClick:l,children:(0,Z.jsx)(je,{})}),(0,Z.jsx)(K,{as:`h2`,className:`flex-1`,size:`lg`,weight:`semibold`,children:r}),(0,Z.jsx)(we,{"aria-hidden":`true`,className:`size-(--editor-settings-toggle-width) shrink-0`})]})}),(0,Z.jsx)(G,{className:U(`min-h-0 flex-1 overflow-y-auto px-5 py-4 [&>*]:shrink-0`,a),"data-testid":ha,gap:`lg`,children:o})]}):(0,Z.jsx)(wf,{ref:f,icon:t,onClick:()=>c({id:e,title:r}),children:n})}var kf=[()=>pe(()=>import(`./dist-p52UDdoR.js`).then(e=>e.html()),__vite__mapDeps([0,1,2,3,4,5]),import.meta.url),()=>pe(async()=>{let{Prec:e,keymap:t}=await import(`./esm-CNLDtBMc.js`).then(e=>e.n);return{Prec:e,keymap:t}},__vite__mapDeps([6,4,7,1]),import.meta.url).then(({Prec:e,keymap:t})=>e.lowest(t.of([{key:`Escape`,run:e=>(e.setTabFocusMode(2e3),!0)}])))],Af=`240px`;function jf({text:e,helper:t}){return(0,Z.jsxs)(Z.Fragment,{children:[e,` `,(0,Z.jsx)(`code`,{className:`ml-1 font-normal`,children:t})]})}function Mf({session:e,postType:t}){let n=t===`page`?`Page`:`Post`,r=dc(`codeinjection_head`,e.settings),i=dc(`codeinjection_foot`,e.settings);return(0,Z.jsxs)(Of,{closeLabel:`Close code injection panel`,icon:(0,Z.jsx)(Le,{}),id:`code-injection`,label:`Code injection`,title:`Code injection`,children:[(0,Z.jsx)(Ct,{clearBg:!1,error:!!r,extensions:kf,height:Af,hint:r,title:(0,Z.jsx)(jf,{helper:`{{ghost_head}}`,text:`${n} header`}),value:e.settings.codeinjection_head??``,onBlur:e.commitSettings,onChange:t=>e.stageSettings({codeinjection_head:t||null})}),(0,Z.jsx)(Ct,{clearBg:!1,error:!!i,extensions:kf,height:Af,hint:i,title:(0,Z.jsx)(jf,{helper:`{{ghost_foot}}`,text:`${n} footer`}),value:e.settings.codeinjection_foot??``,onBlur:e.commitSettings,onChange:t=>e.stageSettings({codeinjection_foot:t||null})})]})}var Nf=6e4,Pf=`(Untitled)`,Ff={autosave:0,timed:1,field:2,settings:3,leave:4,explicit:5,publish:6,schedule:6,revert:6};function If(e){return e===`autosave`||e===`timed`||e===`field`||e===`settings`}function Lf(e){return e===`autosave`||e===`timed`||e===`field`}function Rf(e){return e===`publish`||e===`schedule`||e===`revert`}function zf(e,t){return e.kind===`settings`&&t.status!==`draft`}function Bf(e){if(e===null)return null;let t=Date.parse(e);return Number.isNaN(t)?e:new Date(t-t%1e3).toISOString()}function Vf(e,t){return t.emailOnly!==void 0&&(e.emailOnly=t.emailOnly),t.newsletter!==void 0&&(e.newsletter=t.newsletter),t.emailSegment!==void 0&&(e.emailSegment=t.emailSegment),e}function Hf(e,t,n={}){switch(e){case`publish`:return Vf({status:`published`,publishedAt:Bf(n.publishedAt===void 0?t.publishedAt:n.publishedAt)},n);case`schedule`:return Vf({status:`scheduled`,publishedAt:Bf(n.publishedAt??null)},n);case`revert`:return{status:`draft`,publishedAt:t.status===`scheduled`?null:Bf(t.publishedAt),emailOnly:!1}}}function Uf(e,t){return e.target?e.target:{status:Lf(e.kind)?`draft`:t.status,publishedAt:Bf(t.publishedAt)}}function Wf(e,t){return Uf(e,t).status!==t.status}var Gf={kind:`autosave`,requiresRevision:!1,requiresReconfirmation:!1},Kf={kind:`timed`,requiresRevision:!1,requiresReconfirmation:!1};function qf(e){return{kind:`dropped`,reason:e}}function Jf(e,t){return{kind:`failed`,error:e,executedAs:t}}function Yf(e,t){for(let n of e)n.resolve(t)}function Xf(e,t){let n=e.requiresRevision||t.some(e=>e.command.requiresRevision);return n===e.requiresRevision?e:{...e,requiresRevision:n}}function Zf(e){return{kind:`unknown`,message:e instanceof Error?e.message:`Save failed`,cause:e}}function Qf(e){return typeof e==`string`&&!Number.isNaN(Date.parse(e))}function $f(e,t){if(e.kind!==t.kind)return!1;let n=e,r=t;return n.intent===r.intent&&n.pending===r.pending&&n.error===r.error}function ep(e){queueMicrotask(()=>{throw e})}function tp(e){let t=()=>e.autosaveDebounceMs?.()??3e3,n=e.setTimeout??((e,t)=>globalThis.setTimeout(e,t)),r=e.clearTimeout??(e=>globalThis.clearTimeout(e)),i=e.onListenerError??ep,a=new Set,o=new Set,s={kind:`idle`},c=null,l=null,u=null,d=null,f=null,p=null,m=null,h=null,g=!1,_=null,v=!1;function y(){if(v)return null;let t=e.getSnapshot();return t.isDirty?{blockedBy:d?.error??(w(t)?h?.error:null)??(m?.source===`local-validation`?m.error:null)??(s.kind===`error`?s.error:null)}:null}function b(t){if(!$f(s,t)){s=t;for(let n of[e.onStateChange,...a]){if(s!==t)break;try{n?.(t)}catch(e){i(e)}}for(let e of[...o])e()}}function x(){return s.kind===`halted`||s.kind===`crashed`}function S({keepHalt:e=!0}={}){return d||x()||v?s:c?c.submittedVersion===null?{kind:`preparing`,intent:c.slot.command.kind,...u?{pending:u.command.kind}:{}}:u?{kind:`pending-coalesced`,intent:c.slot.command.kind,pending:u.command.kind}:{kind:`saving`,intent:c.slot.command.kind}:h?{kind:`conflict`,intent:h.intent,error:h.error}:e&&s.kind===`error`?s:f||p?{kind:`debouncing`}:{kind:`idle`}}function C(e){return m!==null&&e.version===m.version}function w(e){return h!==null&&e.updatedAt===h.updatedAt}function T(e,t){return Lf(e.kind)&&t.status!==`draft`?`not-draft`:!e.retry&&C(t)?`suppressed`:w(t)?`conflict`:null}function E(e){for(let t of[f,p])t&&(r(t.handle),e.push(...t.waiters));f=null,p=null}function D(e){let i=f?f.waiters:[];f&&r(f.handle),e&&i.push(e),f={handle:n(()=>{f=null,A(Gf,i)},t()),waiters:i},b(S())}function O(){if(p)return;let e=[];p={handle:n(()=>{p=null,A(Kf,e)},Nf),waiters:e},b(S())}function k(e,t){if(!u){u={command:Xf(e,t),waiters:t};return}let n=u.command;if(Rf(e.kind)&&Rf(u.command.kind)){let t=u.waiters.filter(e=>Rf(e.command.kind));u.waiters=u.waiters.filter(e=>!Rf(e.command.kind)),Yf(t,{kind:`superseded`,by:e.kind}),n=e}else Ff[e.kind]>Ff[u.command.kind]&&(n=e);u.waiters.push(...t),u.command=Xf(n,u.waiters)}function A(e,t){if(c||d){k(e,t),b(S());return}ne({command:e,waiters:t})}function j(){if(c)return;let e=u;u=null,e?ne(e):b(S())}function M(e,t){return h?{kind:`conflict`,intent:h.intent,error:h.error}:{kind:`error`,intent:e,error:t}}function N(e,t,n,r){Yf(e.waiters,Jf(t,e.command.kind)),b(M(e.command.kind,t)),P(e,t,n,r),j()}function P(e,t,n,r){F({command:e.command,error:t,persisted:n!==null&&n.id!==null,durationMs:r})}function F(t){if(e.onSaveFailed)try{e.onSaveFailed(t)}catch(e){i(e)}}function I(e){return e.trim()?e:Pf}function ee(t,n){return t.slug&&t.status!==`draft`?Promise.resolve(null):e.slug.fromTitle(I(t.title),t.id,n)}function L(e,t,n){return{command:e,snapshot:t,title:I(t.title),slug:n?.source===`generated`?n.slug:t.slug,target:Uf(e,t),saveRevision:e.requiresRevision}}function R(e,t){let n=te(e,t);return n?(c=null,l=null,Yf(e.waiters,qf(n)),j(),!0):!1}function z(e,t){m?.source===`local-validation`&&(m.settingsOnly&&zf(e,t)?!t.settingsDirty:!t.isDirty)&&(m=null)}function te(e,t){z(e.command,t);let{kind:n}=e.command;return If(n)?Lf(n)&&t.status!==`draft`?`not-draft`:(zf(e.command,t)?t.settingsDirty:t.isDirty)?T(e.command,t):`clean`:null}async function ne(t){E(t.waiters),t.command=Xf(t.command,t.waiters);let n;try{n=e.getSnapshot()}catch(e){N(t,Zf(e),oe(),null);return}if(zf(t.command,n)){let e=t.waiters.filter(e=>Lf(e.command.kind));t.waiters=t.waiters.filter(e=>!Lf(e.command.kind)),Yf(e,qf(`not-draft`))}let r=te(t,n);if(r){Yf(t.waiters,qf(r)),r===`clean`&&zf(t.command,n)&&s.kind===`error`&&s.intent===`settings`&&b(S({keepHalt:!1})),j();return}c={slot:t,submittedVersion:null};let i=new AbortController;l=i,b(S());let a,o=null;try{if(await e.slug.settled(),v||(n=e.getSnapshot(),R(t,n)))return;let r=await ee(n,i.signal);if(v||r&&(n=e.getSnapshot(),R(t,n)))return;let s=await e.prepare(L(t.command,n,r),i.signal);if(v)return;if(s.ok){if(m?.source===`local-validation`&&(m=null),c.submittedVersion=n.version,b(S()),v||(o=Date.now(),a=await e.execute(s.prepared,i.signal),v))return;a.ok&&await e.reconcile(s.prepared,a.result)}else{if(s.error.kind===`validation`){m={version:n.version,source:`local-validation`,error:s.error,settingsOnly:zf(t.command,n)},c=null,l=null,Yf(t.waiters,If(t.command.kind)?{kind:`blocked`,error:s.error}:Jf(s.error,t.command.kind)),If(t.command.kind)||(b(M(t.command.kind,s.error)),P(t,s.error,n,null)),j();return}a={ok:!1,error:s.error}}}catch(e){a={ok:!1,error:Zf(e)}}if(!v){if(c=null,l=null,a.ok){m=null,h=null,Yf(t.waiters,{kind:`saved`,result:a.result,executedAs:t.command.kind}),j();return}re(t,n,a.error,o===null?null:Date.now()-o)}}function re(e,t,n,r){let i=e.command.kind;if(n.kind===`session-invalid`){d={slot:e,error:n,persisted:t.id!==null,durationMs:r},b({kind:`reauth-pending`,intent:i});return}if(n.kind===`not-found`||n.kind===`forbidden`){let a=[];E(a),u&&=(a.push(...u.waiters),null),Yf(a,qf(`halted`)),Yf(e.waiters,Jf(n,i)),b(n.kind===`not-found`&&!t.id?{kind:`crashed`}:{kind:`halted`,error:n}),P(e,n,t,r);return}if(n.kind===`conflict`){h={updatedAt:t.updatedAt,error:n,intent:i};let a=[];E(a),u&&=(a.push(...u.waiters),null),Yf(a,qf(`conflict`)),Yf(e.waiters,Jf(n,i)),b({kind:`conflict`,intent:i,error:n}),P(e,n,t,r);return}(n.kind===`validation`||n.kind===`host-limit`&&!Wf(e.command,t))&&(m={version:t.version,source:`server`,error:n}),N(e,n,t,r)}function ie(e,t,n){if(Rf(e)&&t){let r=Hf(e,t,n);return{kind:e,target:r,requiresRevision:!1,requiresReconfirmation:r.status!==t.status}}return{kind:e,requiresRevision:e===`explicit`||e===`leave`,requiresReconfirmation:!1,...e===`settings`&&n?.retry?{retry:!0}:{}}}function ae(t,n){return new Promise(r=>{if(v){r(qf(`disposed`));return}if(x()){r(qf(`halted`));return}let i=null;if(If(t)||Rf(t))try{i=e.getSnapshot()}catch(e){r(Jf(Zf(e),t));return}let a={command:ie(t,i,n),resolve:r};if(!If(t)||!i){let e=[a];E(e),A(a.command,e);return}z(a.command,i);let o=T(a.command,i);if(o){b(S()),r(qf(o));return}if(t===`field`||t===`settings`){A(a.command,[a]);return}if(O(),i.id===null&&m?.source!==`local-validation`){A(a.command,[a]);return}D(a)})}function oe(){try{return e.getSnapshot()}catch{return null}}function B(e,t){return t?Wf(e,t):e.requiresReconfirmation}function se(){if(!d||v)return;let e=u?[d.slot,u]:[d.slot];d=null,u=null;let t=oe(),n=!1;for(let r of e){r.waiters.length===0&&(B(r.command,t)?n=!0:k(r.command,[]));for(let e of r.waiters)B(e.command,t)?(e.resolve({kind:`needs-retry`}),n=!0):k(e.command,[e])}n&&!u&&ce(t),j()}function ce(e){if(!e){O(),D();return}if(!(e.status!==`draft`||!e.isDirty||T(Gf,e))){if(O(),e.id===null&&m?.source!==`local-validation`){A(Gf,[]);return}D()}}function le(){if(!d||v)return;let{slot:e,error:t,persisted:n,durationMs:r}=d;d=null,Yf(e.waiters,Jf(t,e.command.kind));let i=[];E(i),u&&=(i.push(...u.waiters),null);for(let e of i)e.resolve(Jf(t,e.command.kind));b(M(e.command.kind,t)),F({command:e.command,error:t,persisted:n,durationMs:r})}function ue(e,t){let n=e??oe()?.updatedAt;return g||v||x()||c||d||!Qf(n)||(h?n===h.updatedAt:oe()?.isDirty!==!1)||(h=null,m=null,g=!0,t?.(),g=!1,v)?!1:(b(S({keepHalt:!1})),!0)}function de(){return new Promise(e=>{let t=()=>{(!c&&!u||d||v||x())&&(o.delete(t),e())};o.add(t),t()})}function fe(){return _||=pe().finally(()=>{_=null}),_}async function pe(){let e=!1;for(;;){if(v)return`proceed`;let t=oe();if(!t||d)return`confirm`;if(x())return t.isDirty?`confirm`:`proceed`;let n=!e&&t.isDirty&&t.status===`draft`&&!w(t);if(n&&t.changedSinceLastRevision){e=!0,await ae(`leave`);continue}if(c||u){await de();continue}if(!t.isDirty)return`proceed`;if(n&&(f||p)){e=!0,await ae(`leave`);continue}return`confirm`}}function V(e){return a.add(e),()=>{a.delete(e)}}function me(){if(v)return;v=!0,l?.abort(),l=null;let e=[];E(e);for(let t of[c?.slot??null,u,d?.slot??null])t&&e.push(...t.waiters);c=null,u=null,d=null,Yf(e,qf(`disposed`)),b({kind:`disposed`}),a.clear()}return{dispatch:ae,getState:()=>s,getPendingSave:y,subscribe:V,reauthSucceeded:se,reauthAbandoned:le,contentReloaded:ue,leaveRequested:fe,dispose:me}}var np=`Your session expired. Delete again to sign in.`;function rp({session:e,postType:t}){let n=he(),r=a(),{mutateAsync:i}=ie(),{mutateAsync:o}=qn(),{data:s}=x({requestOptions:Q}),[l,u]=(0,X.useState)(!1),[d,f]=(0,X.useState)(!1),[p,m]=(0,X.useState)(!1),[h,g]=(0,X.useState)(null),_=e.loadedRecord?.id??e.createdId,v=t===`page`?`page`:`post`;if(!_)return null;let y=e.bind.title.trim()||e.loadedRecord?.title||`(Untitled)`,b=e=>{d||(u(e),g(null))},S=async()=>{f(!0),g(null);try{await(t===`page`?o({id:_,sessionExpiryRedirect:!1}):i({id:_,sessionExpiryRedirect:!1}))}catch(e){if(f(!1),e instanceof w){m(!0);return}g(c(e,`Couldn’t delete this ${v}.`));return}e.dispose(),r.invalidateQueries({queryKey:[t===`page`?Xn:se],refetchType:`none`}),n(t===`page`?`/pages`:`/posts`,{replace:!0})};return(0,Z.jsxs)(nf,{children:[(0,Z.jsxs)(mt,{open:l,onOpenChange:b,children:[(0,Z.jsx)(lt,{asChild:!0,children:(0,Z.jsxs)(q,{className:`w-full bg-destructive/10 hover:bg-destructive/20`,"data-testid":fa,variant:`destructive-ghost`,children:[(0,Z.jsx)(Ae,{}),`Delete `,v]})}),(0,Z.jsxs)(ct,{"data-testid":pa,children:[(0,Z.jsxs)(pt,{children:[(0,Z.jsxs)(st,{children:[`Are you sure you want to delete this `,v,`?`]}),(0,Z.jsxs)(ot,{children:[`You’re about to delete "`,(0,Z.jsx)(`strong`,{children:y}),`". This is permanent! We warned you, k?`]})]}),h?(0,Z.jsx)(K,{className:`text-destructive`,"data-testid":ma,role:`alert`,size:`sm`,children:h}):null,(0,Z.jsxs)(dt,{children:[(0,Z.jsx)(ft,{disabled:d,children:`Cancel`}),(0,Z.jsx)(q,{disabled:d,variant:`destructive`,onClick:()=>void S(),children:`Delete`})]})]})]}),(0,Z.jsx)(Fs,{email:s?.email??``,open:p,onAbandoned:()=>{m(!1),g(np)},onSucceeded:()=>{m(!1),S()}})]})}function $(e){return{text:e,mono:!0}}function ip(e){let t=e?{text:`⌘`,tooltip:`Command`}:{text:`Ctrl`,mono:!0},n=e?{text:`⌃`,tooltip:`Control`}:{text:`Ctrl`,mono:!0},r=e?{text:`⌥`,tooltip:`Option`}:{text:`Alt`,mono:!0},i=e?{text:`⇧`,tooltip:`Shift`}:$(`Shift`),a=e?{text:`↩`,tooltip:`Return`}:$(`Enter`);return[{title:`Formatting`,shortcuts:[{label:`Bold`,style:`bold`,keys:[t,$(`B`)]},{label:`Emphasize`,style:`italic`,keys:[t,$(`I`)]},{label:`Underline`,style:`underline`,keys:[t,$(`U`)]},{label:`Strike through`,style:`strikethrough`,keys:[n,r,$(`U`)]},{label:`Highlight`,style:`highlight`,keys:[t,r,$(`H`)]},{label:`Link`,style:`link`,keys:[t,$(`K`)]},{label:`Inline code`,style:`code`,keys:[n,i,$(`K`)]},{label:`List`,keys:[n,$(`L`)]},{label:`Ordered list`,keys:[n,r,$(`L`)]},{label:`Quote`,keys:[n,$(`Q`)]},{label:`H2`,keys:[n,r,$(`2`)]},{label:`H3`,keys:[n,r,$(`3`)]}]},{title:`Editing`,shortcuts:[{label:`Toggle card edit mode`,keys:[t,a]},{label:`Paste without formatting`,keys:[t,i,$(`V`)]},{label:`Indent`,keys:[$(`tab`)]},{label:`Unindent`,keys:[i,$(`tab`)]},{label:`Line break`,keys:[i,a]},{label:`Undo`,keys:[t,$(`Z`)]},{label:`Redo`,keys:[t,i,$(`Z`)]}]},{title:`Application`,shortcuts:[{label:`Save`,keys:[t,$(`S`)]},{label:`Preview`,keys:[t,$(`P`)]},{label:`Publish`,keys:[t,i,$(`P`)]}]},{title:`Inserting`,shortcuts:[{label:`Code block`,keys:[$("```"),a]},{label:`Language code block`,keys:[$("```html"),a]},{label:`Emoji`,keys:[$(`:emoji_name:`)]},{label:`Image`,keys:[$(`/image`)]},{label:`Markdown`,keys:[$(`/md`)]},{label:`HTML`,keys:[$(`/html`)]},{label:`Gallery`,keys:[$(`/gallery`)]},{label:`Divider`,keys:[$(`---`),{text:`or`,mono:!0,plain:!0},$(`/hr`)]},{label:`Bookmark`,keys:[$(`/bookmark [url]`)]},{label:`Public preview`,keys:[$(`/paywall`)]},{label:`Button`,keys:[$(`/button`)]},{label:`Callout`,keys:[$(`/callout`)]},{label:`Toggle`,keys:[$(`/toggle`)]},{label:`Video`,keys:[$(`/video`)]},{label:`Audio`,keys:[$(`/audio`)]},{label:`File`,keys:[$(`/file`)]},{label:`Product`,keys:[$(`/product`)]},{label:`Header`,keys:[$(`/header`)]},{label:`GIF`,keys:[$(`/gif`)]},{label:`Signup`,keys:[$(`/signup`)]},{label:`YouTube`,keys:[$(`/youtube [url]`)]},{label:`X (Twitter)`,keys:[$(`/twitter [url]`)]},{label:`Unsplash`,keys:[$(`/unsplash`)]},{label:`Vimeo`,keys:[$(`/vimeo [url]`)]},{label:`CodePen`,keys:[$(`/codepen [url]`)]},{label:`Spotify`,keys:[$(`/spotify [url]`)]},{label:`SoundCloud`,keys:[$(`/soundcloud [url]`)]},{label:`Other embed`,keys:[$(`/embed [url]`)]}]}]}var ap={bold:`font-semibold`,italic:`italic`,underline:`underline`,strikethrough:`line-through`,highlight:`bg-yellow-200 text-black`,link:`text-ghostaccent`,code:`font-mono`};function op({token:e}){let t=(0,Z.jsx)(wr,{"aria-label":e.tooltip,className:U(e.mono&&`font-mono`,e.plain&&`bg-transparent`,e.tooltip&&`pointer-events-auto`),role:e.tooltip?`img`:void 0,variant:`contrast`,children:e.text});return e.tooltip?(0,Z.jsxs)(be,{children:[(0,Z.jsx)(Ce,{asChild:!0,children:(0,Z.jsx)(`span`,{className:`inline-flex`,children:t})}),(0,Z.jsx)(ye,{children:e.tooltip})]}):t}function sp({shortcut:e}){return(0,Z.jsxs)(W,{className:`-mx-2 rounded-md px-2 py-1 hover:bg-interactive-hover`,"data-testid":Aa,gap:`sm`,justify:`between`,children:[(0,Z.jsx)(`dt`,{className:`float-none clear-none m-0 w-auto min-w-0 flex-1 overflow-visible text-left font-normal wrap-anywhere whitespace-normal`,children:(0,Z.jsx)(K,{as:`span`,className:e.style&&ap[e.style],size:`sm`,children:e.label})}),(0,Z.jsx)(`dd`,{className:`m-0 shrink-0`,children:(0,Z.jsx)(_r,{children:e.keys.map(e=>(0,Z.jsx)(op,{token:e},e.text))})})]})}function cp(){let e=(0,X.useMemo)(()=>ip(vr()),[]);return(0,Z.jsx)(Of,{closeLabel:`Close keyboard shortcuts panel`,icon:(0,Z.jsx)(et,{}),id:`keyboard-shortcuts`,label:`Keyboard shortcuts`,title:`Keyboard shortcuts`,children:e.map(e=>(0,Z.jsxs)(G,{className:`mb-2`,gap:`sm`,children:[(0,Z.jsx)(K,{as:`h3`,className:`border-b border-border-default pb-2`,size:`md`,weight:`semibold`,children:e.title}),(0,Z.jsx)(`dl`,{className:`m-0`,children:e.shortcuts.map(e=>(0,Z.jsx)(sp,{shortcut:e},e.label))})]},e.title))})}var lp=60,up=149,dp=150,fp=`(Untitled)`,pp=[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`],mp=`Search engines will automatically show a custom preview of content related to the search term here if no custom meta description is set.`;function hp(e){return Array.from(e).length}function gp(e,t){let n=t-3,r=Array.from(e);return r.length>n?`${r.slice(0,n).join(``)}...`:e}function _p(e,t){return e||t||fp}function vp(e,t){return e||t||``}function yp({siteUrl:e,slug:t,canonicalUrl:n}){let r=[];if(n)try{let e=new URL(n);r.push(e.host,...e.pathname.split(`/`).filter(Boolean))}catch{return``}else{let n=new URL(e);r.push(n.host,...n.pathname.split(`/`).filter(Boolean),t)}return r.join(` › `)}function bp(e){return gp(e,lp)}function xp(e){return e?gp(e,up):mp}function Sp(e){return gp(e,dp)}function Cp(e){return`${String(e.getDate()).padStart(2,`0`)} ${pp[e.getMonth()]} ${e.getFullYear()}`}function wp(e,t,n){let r=(0,X.useId)(),i=(0,X.useId)(),a=e.settings[t]??``,o=dc(t,e.settings),s=[n,o?i:void 0].filter(Boolean).join(` `);return{value:a,error:o,fieldProps:{id:r,value:a,"aria-invalid":!!o,"aria-describedby":s||void 0,onChange:n=>e.stageSettings({[t]:n.target.value||null}),onBlur:e.commitSettings},errorProps:{id:i}}}function Tp({id:e,value:t,recommended:n}){let r=hp(t);return(0,Z.jsxs)(K,{id:e,size:`sm`,tone:`secondary`,children:[`Recommended: `,(0,Z.jsx)(`b`,{children:_e(n)}),` characters. You've used`,` `,(0,Z.jsx)(`span`,{className:U(`font-bold`,r>n?`text-destructive`:`text-state-success`),children:_e(r)})]})}function Ep({url:e,title:t,description:n}){return(0,Z.jsxs)(G,{className:`rounded-md border border-border bg-surface-elevated p-5 font-[Arial,sans-serif]`,"data-testid":ya,gap:`xs`,children:[(0,Z.jsxs)(W,{className:`mb-5`,gap:`lg`,children:[(0,Z.jsx)(xn,{"aria-hidden":`true`,className:`h-5 w-auto shrink-0`}),(0,Z.jsx)(W,{className:`h-7 min-w-0 flex-1 rounded-full bg-muted px-3`,justify:`end`,children:(0,Z.jsx)($e,{className:`size-4 text-muted-foreground`})})]}),(0,Z.jsx)(K,{className:`truncate text-[14px] leading-[1.3]`,size:`sm`,children:e}),(0,Z.jsx)(K,{className:`text-[20px] leading-[1.3] text-search-result-title`,size:`lg`,children:bp(t)}),(0,Z.jsxs)(K,{className:`text-[14px] leading-[22px] text-search-result-description`,size:`sm`,tone:`secondary`,children:[Cp(new Date),` — `,xp(n)]})]})}function Dp({session:e,siteUrl:t}){let n=(0,X.useId)(),r=(0,X.useId)(),i=wp(e,`canonical_url`),a=wp(e,`meta_title`,n),o=wp(e,`meta_description`,r),s=_p(a.value,e.bind.title),c=vp(o.value,e.settings.custom_excerpt??``),l=yp({siteUrl:t,slug:e.slug,canonicalUrl:e.settings.canonical_url??``});return(0,Z.jsxs)(Of,{closeLabel:`Close meta data panel`,icon:(0,Z.jsx)($e,{}),id:`meta-data`,label:`Meta data`,title:`Meta data`,children:[(0,Z.jsxs)(Vt,{children:[(0,Z.jsx)(Bt,{htmlFor:a.fieldProps.id,children:`Meta title`}),(0,Z.jsx)(Xt,{"data-testid":ga,placeholder:s,...a.fieldProps}),(0,Z.jsx)(Tp,{id:n,recommended:60,value:a.value}),(0,Z.jsx)(zt,{...a.errorProps,children:a.error})]}),(0,Z.jsxs)(Vt,{children:[(0,Z.jsx)(Bt,{htmlFor:o.fieldProps.id,children:`Meta description`}),(0,Z.jsx)(vn,{"data-testid":_a,placeholder:Sp(c),rows:3,...o.fieldProps}),(0,Z.jsx)(Tp,{id:r,recommended:145,value:o.value}),(0,Z.jsx)(zt,{...o.errorProps,children:o.error})]}),(0,Z.jsxs)(Vt,{children:[(0,Z.jsx)(Bt,{htmlFor:i.fieldProps.id,children:`Canonical URL`}),(0,Z.jsx)(Xt,{"data-testid":va,placeholder:e.loadedRecord?.url??`${t.replace(/\/$/,``)}/${e.slug}/`,...i.fieldProps}),(0,Z.jsx)(zt,{...i.errorProps,children:i.error})]}),(0,Z.jsxs)(G,{gap:`sm`,children:[(0,Z.jsx)(K,{size:`sm`,weight:`medium`,children:`Search Engine Result Preview`}),(0,Z.jsx)(Ep,{description:c,title:s,url:l})]})]})}var Op=Fn(zn({id:Y().optional(),lexical:Y().nullish(),title:Y().nullish(),custom_excerpt:Y().nullish(),feature_image:Y().nullish(),feature_image_alt:Y().nullish(),feature_image_caption:Y().nullish(),post_status:Y().nullish(),reason:Y().nullish(),created_at:Y().optional(),created_at_ts:In().optional(),author:zn({name:Y().nullish(),profile_image:Y().nullish()}).nullish()}));function kp(e){let t=Op.safeParse(e);return t.success?t.data:[]}function Ap(e){if(typeof e.created_at_ts==`number`)return e.created_at_ts;let t=Date.parse(e.created_at??``);return Number.isNaN(t)?0:t}function jp(e){return!e||e.lexical===null||e.lexical===void 0?!1:e.status!==`published`&&e.status!==`sent`?!0:!(`email_only`in e&&e.email_only)}function Mp(e=[]){let t=kp(e).sort((e,t)=>Ap(t)-Ap(e));return t.map((e,n)=>{let r=e.post_status===`published`&&t[n+1]?.post_status===`draft`,i=[];return n===0&&i.push(`latest`),r&&i.push(`published`),e.reason===`unpublished`&&i.push(`unpublished`),{id:e.id??String(n),lexical:e.lexical??null,title:e.title??``,customExcerpt:e.custom_excerpt??null,featureImage:e.feature_image??null,featureImageAlt:e.feature_image_alt??null,featureImageCaption:e.feature_image_caption??null,authorName:e.author?.name||`Deleted staff user`,authorImage:e.author?.profile_image??null,createdAt:e.created_at??``,tags:i}})}function Np(e,t){let n=typeof t==`string`&&Tc.default.tz.zone(t)?t:`Etc/UTC`,r=Tc.default.tz(e,n);return r.isValid()?r.format(`D MMM YYYY, HH:mm`):``}function Pp(e){return Tn.sanitize(e??``,{ALLOWED_TAGS:[`a`,`b`,`i`,`span`],ALLOWED_ATTR:[`href`,`style`],ALLOW_DATA_ATTR:!1,ALLOW_ARIA_ATTR:!1})}function Fp({editor:e,lexical:t,cardConfig:n,darkMode:r}){let{KoenigComposer:i,KoenigEditor:a}=e.read(),o=(0,X.useCallback)(e=>{(e?.editorInstance)?.setEditable(!1)},[]);return(0,Z.jsx)(`div`,{className:`koenig-react-editor koenig-lexical [&_[data-kg-card]]:pointer-events-none`,"data-testid":La,children:(0,Z.jsx)(i,{cardConfig:n,darkMode:r,fileUploader:Dd,initialEditorState:t??void 0,onError:ld,children:(0,Z.jsx)(a,{darkMode:r,placeholderText:``,registerAPI:o,readOnly:!0})})})}function Ip({revision:e,cardConfig:t,darkMode:n,showExcerpt:r,currentTitle:i,currentExcerpt:a}){let o=lr(),s=Pp(e.featureImageCaption),c=e.title||i,l=e.customExcerpt??a;return(0,Z.jsx)(`div`,{className:`mx-auto w-full max-w-[740px]`,"data-testid":Na,children:(0,Z.jsx)(Jr,{name:`this version`,onError:ud,children:(0,Z.jsxs)(X.Suspense,{fallback:(0,Z.jsx)(W,{className:`py-10`,justify:`center`,children:(0,Z.jsx)(tn,{size:`lg`})}),children:[e.featureImage?(0,Z.jsxs)(`figure`,{className:`mb-6`,children:[(0,Z.jsx)(`img`,{alt:e.featureImageAlt??``,className:`w-full`,"data-testid":Ia,src:e.featureImage}),s?(0,Z.jsx)(`figcaption`,{dangerouslySetInnerHTML:{__html:s},className:`mt-2 text-center text-sm text-text-secondary`}):null]}):null,(0,Z.jsx)(`div`,{className:`heading-font-features mb-4 pb-1 text-[4.8rem] leading-[1.1] font-bold tracking-[-0.017em] text-foreground max-[769px]:text-[3.6rem] max-[501px]:text-[2.8rem]`,"data-testid":Pa,children:c}),r?(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(`div`,{className:`text-xl leading-normal tracking-tight text-text-secondary`,"data-testid":Fa,children:l}),l?(0,Z.jsx)(`hr`,{className:`mt-4 mb-6 border-border`}):null]}):null,e.lexical===null?(0,Z.jsx)(K,{tone:`secondary`,children:`This version has no body content to restore.`}):(0,Z.jsx)(Fp,{cardConfig:t,darkMode:n,editor:o,lexical:e.lexical},e.id)]})})})}var Lp={latest:`Latest`,published:`Published`,unpublished:`Unpublished`},Rp={latest:`secondary`,published:`success`,unpublished:`warning`};function zp({revision:e,timezone:t,selected:n,restorable:r,onSelect:i,onRestore:a}){return(0,Z.jsxs)(`li`,{className:U(`relative rounded-md px-3 py-2`,n?`bg-tab-active`:`hover:bg-interactive-hover`),children:[(0,Z.jsxs)(`button`,{"aria-current":n,className:`w-full text-left`,type:`button`,onClick:i,children:[(0,Z.jsxs)(W,{gap:`sm`,wrap:!0,children:[(0,Z.jsx)(K,{className:`whitespace-nowrap`,size:`sm`,weight:`medium`,children:Np(e.createdAt,t)}),e.tags.map(e=>(0,Z.jsx)(gt,{variant:Rp[e],children:Lp[e]},e))]}),(0,Z.jsxs)(W,{className:U(`mt-1 min-h-7`,n&&r&&`pr-20`),gap:`sm`,children:[(0,Z.jsx)(ht,{className:`size-6 shrink-0`,...Sn({name:e.authorName}),src:e.authorImage}),(0,Z.jsx)(K,{className:`truncate`,size:`sm`,tone:`secondary`,children:e.authorName})]})]}),n&&r?(0,Z.jsx)(q,{className:`absolute right-3 bottom-2 bg-surface-elevated-2`,size:`sm`,variant:`outline`,onClick:a,children:`Restore`}):null]})}function Bp({open:e,revisions:t,postType:n,isPublished:r,timezone:i,cardConfig:a,darkMode:o,showExcerpt:s,currentTitle:c,currentExcerpt:l,onRestore:u,onOpenChange:d,onCloseAutoFocus:f,restoreError:p}){let[m,h]=(0,X.useState)(0),[g,_]=(0,X.useState)(null),[v,y]=(0,X.useState)(!1),b=t[m],x=async e=>{if(e.preventDefault(),!g||v)return;y(!0);let t=await u(g);if(y(!1),_(null),t){R.success(`Revision restored.`),d(!1);return}R.error(`Failed to restore revision.`)};return(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(Po,{"data-testid":ja,headerActions:(0,Z.jsx)(q,{disabled:v,onClick:()=>d(!1),children:`Close`}),layout:`header`,open:e,title:`${n===`page`?`Page`:`Post`} history`,onCloseAutoFocus:f,onOpenChange:e=>!v&&d(e),children:(0,Z.jsxs)(W,{align:`stretch`,className:`min-h-0`,gap:`none`,children:[(0,Z.jsx)(`div`,{className:`min-w-0 flex-1 overflow-y-auto bg-surface-panel p-8`,children:b?(0,Z.jsx)(Ip,{cardConfig:a,currentExcerpt:l,currentTitle:c,darkMode:o,revision:b,showExcerpt:s}):(0,Z.jsxs)(K,{"data-testid":Na,tone:`secondary`,children:[`This `,n,` has no saved versions yet.`]})}),(0,Z.jsxs)(G,{className:`w-[320px] shrink-0 overflow-y-auto border-l border-border p-3`,gap:`none`,children:[p?(0,Z.jsx)(K,{className:`mb-3 text-destructive`,role:`alert`,size:`sm`,children:p}):null,(0,Z.jsx)(`ul`,{className:`grid gap-px`,"data-testid":Ma,children:t.map((e,t)=>(0,Z.jsx)(zp,{restorable:t!==0&&e.lexical!==null,revision:e,selected:t===m,timezone:i,onRestore:()=>_(e),onSelect:()=>h(t)},e.id))})]})]})}),(0,Z.jsx)(mt,{open:!!g,onOpenChange:e=>!e&&!v&&_(null),children:(0,Z.jsxs)(ct,{className:ws,"data-testid":Ra,overlayClassName:ws,children:[(0,Z.jsxs)(pt,{children:[(0,Z.jsx)(st,{children:r?`Restore version for published ${n}?`:`Restore this version?`}),(0,Z.jsx)(ot,{children:r?`Heads up! This ${n} has already been published, restoring a previous version will automatically update the ${n} on your site.`:`Replace your existing draft with this version of the ${n}.`})]}),(0,Z.jsxs)(dt,{children:[(0,Z.jsx)(ft,{asChild:!0,children:(0,Z.jsx)(q,{disabled:v,variant:`outline`,children:`Cancel`})}),(0,Z.jsx)(ut,{asChild:!0,children:(0,Z.jsx)(q,{disabled:v,onClick:e=>void x(e),children:`Restore`})})]})]})})]})}function Vp({session:e,postType:t,cardConfig:n,showExcerpt:r,state:i}){let[a,o]=(0,X.useState)(!1),s=(0,X.useRef)(null),{darkMode:c}=xe(),l=jo(),u=e.loadedRecord,d=(0,X.useMemo)(()=>Mp(u?.post_revisions),[u]);return jp(u)?(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsxs)(wf,{ref:s,"data-testid":ka,icon:(0,Z.jsx)(Ke,{}),onClick:()=>o(!0),children:[t===`page`?`Page`:`Post`,` history`]}),a?(0,Z.jsx)(Bp,{cardConfig:n,currentExcerpt:e.settings.custom_excerpt??null,currentTitle:u?.title??``,darkMode:c,isPublished:u?.status===`published`,open:a,postType:t,restoreError:i.kind===`error`&&i.error.kind===`session-invalid`||i.kind===`reauth-pending`?`Your session expired. Restore again to sign in and continue.`:void 0,revisions:d,showExcerpt:r,timezone:l,onCloseAutoFocus:e=>{e.preventDefault(),s.current?.focus()},onOpenChange:o,onRestore:t=>e.restoreRevision({lexical:t.lexical,title:t.title,custom_excerpt:r?t.customExcerpt??e.settings.custom_excerpt:e.settings.custom_excerpt,feature_image:t.featureImage,feature_image_alt:t.featureImageAlt,feature_image_caption:t.featureImageCaption})}):null]}):null}var Hp=[`url`,`publish-date`,`tags`,`access`,`excerpt`,`authors`,`template`,`show-title-and-feature-image`,`featured`,`post-history`,`code-injection`,`meta-data`,`x-card`,`facebook-card`,`keyboard-shortcuts`,`delete`],Up=`show_title_and_feature_image`,Wp=`Uh-oh. Looks like your theme doesn't support this feature.`,Gp=`https://docs.ghost.org/themes/helpers/`;function Kp({session:e,currentUser:t}){let n=(0,X.useId)(),r=e.settings.show_title_and_feature_image??!0,{data:i}=er({enabled:!(t&&kn(t))&&!r,defaultErrorHandler:!1,requestOptions:Q}),a=i?.themes?.[0],o=!!a&&[...a.errors??[],...a.warnings??[]].some(e=>nr(e,Up));return(0,Z.jsxs)(nf,{children:[(0,Z.jsxs)(W,{gap:`sm`,justify:`between`,children:[(0,Z.jsx)(Lt,{htmlFor:n,children:`Show title and feature image`}),(0,Z.jsx)(mn,{checked:r,"data-testid":Wi,id:n,onCheckedChange:t=>e.editSettings({show_title_and_feature_image:t})})]}),!r&&o?(0,Z.jsxs)(K,{"data-testid":Gi,size:`sm`,tone:`secondary`,children:[Wp,` `,(0,Z.jsx)(`a`,{className:`underline`,href:Gp,rel:`noopener noreferrer`,target:`_blank`,children:`Learn more`})]}):null]})}var qp={id:`x-card`,name:`X`,icon:`twitter-x`,titleKey:`twitter_title`,descriptionKey:`twitter_description`,imageKey:`twitter_image`,siteImageKey:`siteTwitterImage`,titleTestId:xa,descriptionTestId:Sa,previewTestId:Ca,previewImageTestId:wa,imageTestId:ba,previewRows:[`title`,`description`,`domain`],truncatesPreviewTitle:!1},Jp={id:`facebook-card`,name:`Facebook`,icon:`facebook`,titleKey:`og_title`,descriptionKey:`og_description`,imageKey:`og_image`,siteImageKey:`siteOgImage`,titleTestId:Ta,descriptionTestId:Ea,previewTestId:Da,previewImageTestId:Oa,previewRows:[`domain`,`title`,`description`],truncatesPreviewTitle:!0};function Yp({own:e,metaTitle:t,title:n}){return e||_p(t,n)}function Xp({own:e,customExcerpt:t,metaDescription:n,postExcerpt:r,siteDescription:i}){return e||t||n||r||i||``}function Zp({own:e,featureImage:t,siteSocialImage:n,siteCoverImage:r}){return e||t||n||r||``}function Qp(e){return e.replace(/^https?:\/\//,``).replace(/\/$/,``)}function $p({network:e,session:t,siteUrl:n,featureImage:r,cardConfig:i}){let a=wp(t,e.titleKey),o=wp(t,e.descriptionKey),s=t.settings[e.imageKey]??``,c=`${e.name} image`,l=Yp({own:a.value,metaTitle:t.settings.meta_title??``,title:t.bind.title}),u=Xp({own:o.value,customExcerpt:t.settings.custom_excerpt??``,metaDescription:t.settings.meta_description??``,postExcerpt:t.loadedRecord?.excerpt??``,siteDescription:i.siteDescription}),d=Zp({own:s,featureImage:r??``,siteSocialImage:i[e.siteImageKey]??``,siteCoverImage:i.siteCoverImage??``}),f=(0,X.useCallback)(n=>t.editSettings({[e.imageKey]:n}),[e.imageKey,t]),p=Cd(c,f),m=t=>t===`title`?(0,Z.jsx)(K,{size:`md`,weight:`medium`,children:e.truncatesPreviewTitle?gp(l,140):l},t):t===`description`?(0,Z.jsx)(K,{size:`sm`,tone:`secondary`,children:gp(u,140)},t):(0,Z.jsx)(K,{size:`sm`,tone:`secondary`,children:Qp(n)},t);return(0,Z.jsxs)(Of,{closeLabel:`Close ${e.name} card panel`,icon:(0,Z.jsx)(Xr,{className:`size-4`,name:e.icon}),id:e.id,label:`${e.name} card`,title:`${e.name} card`,children:[(0,Z.jsx)(Sd,{src:s||null,subject:c,testId:e.imageTestId,unsplashEnabled:!!i.unsplash,upload:p,onChange:f}),(0,Z.jsxs)(Vt,{children:[(0,Z.jsxs)(Bt,{htmlFor:a.fieldProps.id,children:[e.name,` title`]}),(0,Z.jsx)(Xt,{"data-testid":e.titleTestId,placeholder:gp(l,40),...a.fieldProps}),(0,Z.jsx)(zt,{...a.errorProps,children:a.error})]}),(0,Z.jsxs)(Vt,{children:[(0,Z.jsxs)(Bt,{htmlFor:o.fieldProps.id,children:[e.name,` description`]}),(0,Z.jsx)(vn,{"data-testid":e.descriptionTestId,placeholder:gp(u,150),rows:3,...o.fieldProps}),(0,Z.jsx)(zt,{...o.errorProps,children:o.error})]}),(0,Z.jsxs)(G,{gap:`sm`,children:[(0,Z.jsxs)(K,{size:`sm`,weight:`medium`,children:[e.name,` preview`]}),(0,Z.jsxs)(G,{className:`overflow-hidden rounded-md border border-border`,"data-testid":e.previewTestId,gap:`none`,children:[d?(0,Z.jsx)(`img`,{alt:``,className:`h-[220px] w-full object-cover`,"data-testid":e.previewImageTestId,src:d}):null,(0,Z.jsx)(G,{className:`bg-surface-elevated p-4`,gap:`xs`,children:e.previewRows.map(m)})]})]})]})}var em=191;function tm({session:e}){let t=(0,X.useId)(),n=e.settings.tags,r=t=>{t!==n&&e.editSettings({tags:t})};return(0,Z.jsxs)(nf,{children:[(0,Z.jsx)(Lt,{htmlFor:t,children:`Tags`}),(0,Z.jsx)(Kr,{defaultErrorHandler:!1,inputId:t,inputLabel:`Tags`,maxLength:em,requestOptions:Q,selected:n,testIds:{field:Qi,input:$i,list:ea,chip:ta},deferSearch:!0,hideSelected:!0,onAdd:e=>{r(Vr(n,e))},onRemove:e=>{r(Br(n,e))},onReorder:r})]})}var nm=`default`,rm=`Default`;function im(e){return e?.find(e=>e.active)?.templates??[]}function am(e,t){return!e.for||e.for.includes(t)}function om(e){return e.filter(e=>!e.slug).sort((e,t)=>e.name.localeCompare(t.name))}function sm(e,t,n){return n?e.find(e=>!!e.slug&&am(e,t)&&e.slug===n):void 0}function cm(e,t){return e.some(e=>e.filename===t)&&t?t:nm}function lm({session:e,postType:t}){let n=(0,X.useId)(),{data:r,isError:i,refetch:a}=tr({defaultErrorHandler:!1,requestOptions:Q}),o=im(r?.themes),s=om(o),c=sm(o,t,e.slug);return i?(0,Z.jsx)(nf,{children:(0,Z.jsx)(tf,{message:`Couldn’t load templates.`,onRetry:()=>void a()})}):s.length===0?null:(0,Z.jsxs)(nf,{children:[(0,Z.jsx)(Lt,{htmlFor:n,children:`Template`}),(0,Z.jsxs)(pn,{disabled:!!c,value:cm(s,e.settings.custom_template),onValueChange:t=>e.editSettings({custom_template:t==="default"?null:t}),children:[(0,Z.jsx)(un,{"data-testid":na,id:n,children:(0,Z.jsx)(fn,{})}),(0,Z.jsxs)(ln,{children:[(0,Z.jsx)(cn,{value:nm,children:rm}),s.map(e=>(0,Z.jsx)(cn,{value:e.filename,children:e.name},e.filename))]})]}),c?(0,Z.jsxs)(K,{"data-testid":ra,size:`sm`,tone:`secondary`,children:[t===`page`?`Page`:`Post`,` URL matches `,c.filename]}):null]})}var um=Tt(),dm=function(){let e,t;return{promise:new Promise((n,r)=>{e=n,t=r}),resolve:e,reject:t}};function fm(e,t){return!e||t===`(Untitled)`||t.endsWith(`(Copy)`)?!1:(0,um.slugify)(t)!==e}function pm(e,t){if(e.mode===`custom`)return!1;let n=t.trim();return!(!n||n===`(Untitled)`&&e.slug)}function mm(e,t){let n=(e||t).trim();return!n||n===t?null:n}function hm(e,t,n){if(e===n)return n;let r=e.split(`-`);return Number(r.pop())>0&&r.join(`-`)===n&&e!==(0,um.slugify)(t)?n:e}function gm(e){let t=e.kind===`generating`;return{mode:t&&e.request.kind===`manual`?`custom`:e.mode,slug:e.slug,title:e.title,pending:t}}var _m=({mode:e,slug:t,title:n})=>({kind:`idle`,mode:e,slug:t,title:n}),vm=(e,t,n)=>({slug:e,source:`unchanged`,reason:t,...n!==void 0&&{error:n}}),ym=(e,t)=>({type:`resolve`,ticket:e,proposal:t}),bm=(e,t)=>({type:`notify`,view:gm(e),proposal:t}),xm=(e,t,n)=>[ym(t,n),bm(e,n)],Sm=e=>ym(e.ticket,vm(e.slugAtSubmission,`stale`)),Cm=(e,t)=>t===e.title&&!!e.slug,wm=(e,t)=>!pm({mode:`derived`,slug:e.slug},t);function Tm(e,t,n){return{state:e,effects:xm(e,t,vm(e.slug,n))}}function Em(e,t){let n={..._m(e),kind:`generating`,request:{...t,slugAtSubmission:e.slug},deferred:null};return{state:n,effects:[{type:`request`,ticket:t.ticket,text:t.text},bm(n,null)]}}function Dm(e,t,n){if(n.kind===`title`){let r=n.value.trim();return e.mode===`custom`?Tm(e,t,`custom`):Cm(e,r)?Tm(e,t,`same-title`):wm(e,r)?Tm(e,t,`frozen`):Em(e,{ticket:t,kind:`title`,text:r})}let r=mm(n.value,e.slug);return r===null?Tm(e,t,`reverted`):Em(e,{ticket:t,kind:`manual`,text:r})}function Om(e,t,n){if(!n)return{state:e,effects:t};let r=Dm(e,n.ticket,n.submission);return{state:r.state,effects:[...t,...r.effects]}}function km(e,t,n){return{state:{...e,deferred:{ticket:t,submission:n,slugAtSubmission:e.slug}},effects:e.deferred?[Sm(e.deferred)]:[]}}function Am(e,t,n,r){let{request:i,deferred:a}=e,o=_m(e),s=r?a:null;return Om(o,[...a&&!s?[Sm(a)]:[],Sm(i),...xm(o,t,vm(o.slug,n))],s)}function jm(e,t,n){let{request:r,deferred:i}=e;if(n.kind===`manual`){if(mm(n.value,e.slug)!==null)return km(e,t,n);if(r.kind===`manual`)return Am(e,t,`reverted`,i?.submission.kind===`title`);let a=i?.submission.kind===`manual`?i:null,o=a?{...e,deferred:null}:e;return{state:o,effects:[...a?[Sm(a)]:[],...xm(o,t,vm(o.slug,`reverted`))]}}if(r.kind===`manual`)return km(e,t,n);let a=n.value.trim(),o=i?.submission.kind===`manual`;return Cm(e,a)?Am(e,t,`same-title`,o):wm(e,a)?Am(e,t,`frozen`,o):km(e,t,n)}function Mm(e,t){let{request:n,deferred:r}=e,i=(e,t)=>{let i=_m(e);return Om(i,xm(i,n.ticket,t),r)};if(`error`in t)return i(e,vm(e.slug,`error`,t.error));if(!t.ok.trim())return i(e,vm(e.slug,`empty-result`));if(n.kind===`title`)return i({...e,slug:t.ok,title:n.text},{slug:t.ok,source:`generated`});let a=hm(t.ok,n.text,e.slug);return a===e.slug?i(e,vm(e.slug,`reverted`)):i({...e,slug:a,mode:`custom`},{slug:a,source:`manual`})}function Nm(e,t){switch(t.type){case`loaded`:{let n=_m({mode:fm(t.slug,t.title)?`custom`:`derived`,slug:t.slug,title:t.title});return{state:n,effects:[...e.kind===`generating`?[...e.deferred?[Sm(e.deferred)]:[],Sm(e.request)]:[],bm(n,null)]}}case`acknowledged`:{let{submitted:n,acknowledged:r}=t,i=e.slug===n.slug?r.slug:e.slug,a=e.title===n.title?r.title:e.title;if(i===e.slug&&a===e.title)return{state:e,effects:[]};let o={...e,slug:i,title:a};return{state:o,effects:[bm(o,null)]}}case`submitted`:return e.kind===`idle`?Dm(e,t.ticket,t.submission):jm(e,t.ticket,t.submission);case`settled`:return e.kind!==`generating`||e.request.ticket!==t.ticket?{state:e,effects:[]}:Mm(e,t.outcome)}}function Pm({generateSlug:e,onListenerError:t}){let n=_m({mode:`derived`,slug:``,title:``}),r=0,i=new Map,a=new Set,o=[],s=!1,c=n=>{switch(n.type){case`request`:new Promise(t=>{t(e(n.text))}).then(e=>l({type:`settled`,ticket:n.ticket,outcome:{ok:typeof e==`string`?e:``}}),e=>l({type:`settled`,ticket:n.ticket,outcome:{error:e}}));return;case`resolve`:{let e=i.get(n.ticket);i.delete(n.ticket),e?.(n.proposal);return}case`notify`:for(let e of a)try{e(n.view,n.proposal)}catch(e){try{t(e)}catch{}}}},l=e=>{let t=Nm(n,e);if(n=t.state,o.push(...t.effects),!s){s=!0;try{for(;o.length>0;)c(o.shift())}finally{s=!1}}},u=e=>{r+=1;let t=dm();return i.set(r,t.resolve),l({type:`submitted`,ticket:r,submission:e}),t.promise};return{loaded(e){l({type:`loaded`,slug:e.slug,title:e.title})},saveAcknowledged(e,t){l({type:`acknowledged`,submitted:e,acknowledged:t})},titleCommitted(e){return u({kind:`title`,value:e})},slugEdited(e){return u({kind:`manual`,value:e})},getState:()=>gm(n),subscribe(e){return a.add(e),()=>{a.delete(e)}}}}function Fm(e,t,n){return`${e.replace(/^[a-z][a-z\d+.-]*:\/\//i,``).replace(/\/+$/,``)}/${n?`${n}/`:``}${t?`${t}/`:``}`}var Im=`Couldn’t update the URL. Try again.`;function Lm(e,t,n){return(e?.status===`published`||e?.status===`sent`)&&e.url?{href:e.url,label:`View ${t}`}:e?.status===`scheduled`&&e.uuid?{href:ss(n,e.uuid),label:`Preview`}:null}function Rm({session:e,postType:t,siteUrl:n}){let r=(0,X.useId)(),i=(0,X.useId)(),[a,o]=(0,X.useState)(null),[s,c]=(0,X.useState)(!1),[l,u]=(0,X.useState)(!1),{slug:d,editSlug:f,loadedRecord:p}=e,m=a??d,h=Lm(p,t,n),g=(0,X.useCallback)(()=>{if(u(!1),mm(m,d)===null){o(null);return}c(!0),f(m).then(e=>u(e===`failed`)).finally(()=>{c(!1),o(null)})},[f,d,m]),_=(0,X.useCallback)(e=>{e.key===`Enter`&&e.currentTarget.blur()},[]);return(0,Z.jsxs)(nf,{children:[(0,Z.jsxs)(W,{gap:`sm`,justify:`between`,children:[(0,Z.jsxs)(Lt,{htmlFor:r,children:[t===`page`?`Page`:`Post`,` URL`]}),h?(0,Z.jsxs)(`a`,{className:`inline-flex items-center gap-1 text-sm text-text-secondary hover:text-foreground`,href:h.href,rel:`noopener noreferrer`,target:`_blank`,children:[h.label,(0,Z.jsx)(Ye,{className:`size-3.5`})]}):null]}),(0,Z.jsxs)(en,{"data-disabled":s,children:[(0,Z.jsx)(Qt,{children:(0,Z.jsx)(Qe,{})}),(0,Z.jsx)(Zt,{"aria-describedby":l?i:void 0,"aria-invalid":l,"data-testid":Ki,disabled:s,id:r,value:m,onBlur:g,onChange:e=>o(e.target.value),onKeyDown:_})]}),l?(0,Z.jsx)(zt,{"data-testid":qi,id:i,children:Im}):null,(0,Z.jsx)(K,{"data-testid":Ji,size:`sm`,tone:`secondary`,children:p?.status===`sent`?Fm(n,p?.uuid??``,`email`):Fm(n,m)})]})}var zm=(0,X.memo)(pf),Bm=(0,X.memo)(Cf),Vm=(0,X.memo)(Mf),Hm=(0,X.memo)(rp),Um=(0,X.memo)(cp),Wm=(0,X.memo)(Dp),Gm=(0,X.memo)(Vp),Km=(0,X.memo)(hf),qm=(0,X.memo)(Kp),Jm=(0,X.memo)($p),Ym=(0,X.memo)(tm),Xm=(0,X.memo)(lm),Zm=(0,X.memo)(Rm),Qm=(0,X.memo)(function({session:e,inputRef:t}){let n=(0,X.useId)(),r=(0,X.useId)(),i=dc(`custom_excerpt`,e.settings);return(0,Z.jsxs)(nf,{children:[(0,Z.jsx)(Lt,{htmlFor:n,children:`Excerpt`}),(0,Z.jsx)(vn,{ref:t,"aria-describedby":i?r:void 0,"aria-invalid":!!i,"data-testid":Hi,id:n,rows:3,value:e.settings.custom_excerpt??``,onBlur:e.commitSettings,onChange:t=>e.stageSettings({custom_excerpt:t.target.value||null})}),i?(0,Z.jsx)(zt,{id:r,children:i}):null]})}),$m=(0,X.memo)(function({session:e,postType:t}){let n=(0,X.useId)();return(0,Z.jsx)(nf,{children:(0,Z.jsxs)(W,{gap:`sm`,justify:`between`,children:[(0,Z.jsxs)(Lt,{htmlFor:n,children:[`Feature this `,t]}),(0,Z.jsx)(mn,{checked:e.settings.featured,"data-testid":Ui,id:n,onCheckedChange:t=>e.editSettings({featured:t})})]})})});function eh({session:e,postType:t,siteUrl:n,cardConfig:r,featureImage:i,currentUser:a,hasInlineExcerpt:o=!1,excerptRef:s}){let c=ef(e),l=!!a&&Mn(a),u=!!a&&!kn(a),d=!!a&&!En(a),f=Ef(),p={url:(0,Z.jsx)(Zm,{postType:t,session:c,siteUrl:n}),"publish-date":(0,Z.jsx)(Km,{session:c}),tags:u?(0,Z.jsx)(Ym,{session:c}):null,excerpt:o?null:(0,Z.jsx)(Qm,{inputRef:s,session:c}),featured:l?(0,Z.jsx)($m,{postType:t,session:c}):null,access:l?(0,Z.jsx)(zm,{postType:t,session:c}):null,authors:d?(0,Z.jsx)(Bm,{currentUser:a,session:c}):null,"show-title-and-feature-image":t===`page`?(0,Z.jsx)(qm,{currentUser:a,session:c}):null,template:(0,Z.jsx)(Xm,{postType:t,session:c}),delete:(0,Z.jsx)(Hm,{postType:t,session:c}),"code-injection":(0,Z.jsx)(Vm,{postType:t,session:c}),"meta-data":(0,Z.jsx)(Wm,{session:c,siteUrl:n}),"keyboard-shortcuts":(0,Z.jsx)(Um,{}),"x-card":(0,Z.jsx)(Jm,{cardConfig:r,featureImage:i,network:qp,session:c,siteUrl:n}),"facebook-card":(0,Z.jsx)(Jm,{cardConfig:r,featureImage:i,network:Jp,session:c,siteUrl:n}),"post-history":(0,Z.jsx)(Gm,{cardConfig:r,postType:t,session:c,showExcerpt:o,state:e.state})},m=f.open&&p[f.open.id]?f.open:null;(0,X.useEffect)(()=>{f.open&&!m&&f.close()},[m,f]);let h=`${t===`page`?`Page`:`Post`} settings`,g=Hp.map(e=>(0,Z.jsxs)(X.Fragment,{children:[!m&&e===`post-history`?(0,Z.jsx)(Or,{className:`my-3`}):null,m&&m.id!==e?null:p[e]]},e));return(0,Z.jsx)(Tf.Provider,{value:f,children:(0,Z.jsx)(we,{className:`absolute inset-y-0 right-0 z-30 w-[calc(var(--editor-settings-progress,1)*var(--editor-settings-width))] overflow-hidden [--editor-settings-width:350px] max-[500px]:[--editor-settings-width:100vw] lg:static lg:shrink-0`,children:(0,Z.jsx)(`aside`,{"aria-label":m?.title??h,className:`my-2 mr-2 h-[calc(100%-var(--spacing)*4)] w-[calc(var(--editor-settings-width)-var(--spacing)*2)] overflow-hidden rounded-xl border border-border bg-sidebar`,"data-testid":zi,children:(0,Z.jsxs)(G,{className:`h-full min-h-0 opacity-(--editor-settings-progress,1)`,gap:`none`,children:[m?null:(0,Z.jsx)(we,{className:`z-10 shrink-0 bg-sidebar`,children:(0,Z.jsxs)(W,{align:`center`,className:`px-4 py-3`,gap:`sm`,justify:`between`,children:[(0,Z.jsx)(K,{as:`h2`,className:`pl-1`,size:`lg`,weight:`semibold`,children:h}),(0,Z.jsx)(we,{"aria-hidden":`true`,className:`size-(--editor-settings-toggle-width) shrink-0`})]})}),(0,Z.jsx)(G,{className:U(`min-h-0 flex-1`,m?`overflow-hidden`:`overflow-x-hidden overflow-y-auto [&>*]:shrink-0`),gap:`none`,children:g})]})})})})}function th(e){return e.replace(/<code\b[^>]*>((.*?){.*?}(.*?))<\/code>/gi,`$1`)}function nh(e=``,t={}){let n=Object.assign({},{},t);if(!n.createDocument){let e=typeof DOMParser<`u`&&DOMParser||typeof window<`u`&&window.DOMParser;if(!e)throw Error("cleanBasicHtml() must be passed a `createDocument` function as an option when used in a non-browser environment");n.createDocument=function(t){return new e().parseFromString(t,`text/html`)}}let r=e;if((!n.allowBr||r===`<br>`)&&(r=r.replace(/<br\s?\/?>/g,` `)),n.removeCodeWrappers&&(r=th(r)),r=r.replace(/(\s|&nbsp;){2,}/g,` `).trim().replace(/^&nbsp;|&nbsp$/g,``).trim(),r){let e=n.createDocument(r);if(e.body.textContent===``)return``;e.body.querySelectorAll(`*`).forEach(t=>{if(!t.textContent?.trim().replace(/\u200c+/g,``)){if(n.allowBr&&t.tagName===`BR`)return;if(n.allowBr&&t.querySelector(`br`))return t.replaceWith(e.createElement(`br`));if(t.textContent&&t.textContent.length>0){let n=e.createTextNode(` `);return t.replaceWith(n)}return t.remove()}}),r=n.firstChildInnerContent&&e.body.firstElementChild?e.body.firstElementChild.innerHTML.trim():e.body.innerHTML.trim()}return r}function rh(e){return nh(e??``,{firstChildInnerContent:!0})}function ih(e){if(e.tagName!==`SPAN`||e.attributes.length!==1)return!1;let t=(e.getAttribute(`style`)??``).split(`;`).map(e=>e.trim()).filter(Boolean);return t.length===1&&/^white-space\s*:\s*pre-wrap$/i.test(t[0])}function ah(e){return e?new DOMParser().parseFromString(e,`text/html`).body.firstElementChild?.tagName===`P`?e:`<p>${e}</p>`:null}function oh(e){let t=rh(ah(e)),n=new DOMParser().parseFromString(t,`text/html`);return n.body.querySelectorAll(`span`).forEach(e=>{ih(e)&&e.replaceWith(...e.childNodes)}),n.body.innerHTML.trim()}function sh(e,t,n=0){let r=(0,X.useRef)(e);r.current=e;let[i,a]=(0,X.useState)(t?.feature_image??null),[o,s]=(0,X.useState)(t?.feature_image_caption??null),[c,l]=(0,X.useState)(0),[u,d]=(0,X.useState)(!1),[f,p]=(0,X.useState)(n),m=(0,X.useRef)(o);m.current=o,f===n?!u&&e.featureImageCaption!==o&&(oh(e.featureImageCaption)!==oh(o)&&l(e=>e+1),s(e.featureImageCaption)):(p(n),a(t?.feature_image??null),s(t?.feature_image_caption??null),d(!1));let h=(0,X.useCallback)(e=>{a(e),r.current.patchFeatureImage({feature_image:e}),r.current.commitField()},[]),g=(0,X.useCallback)(()=>{a(null),s(null),r.current.patchFeatureImage({feature_image:null,feature_image_alt:null,feature_image_caption:null}),r.current.commitField()},[]),_=(0,X.useCallback)(e=>{r.current.patchFeatureImage({feature_image_alt:e}),r.current.commitField()},[]),v=(0,X.useCallback)(e=>{let t=rh(e);oh(t)!==oh(m.current)&&(s(t),r.current.patchFeatureImage({feature_image_caption:t}))},[]),y=(0,X.useCallback)(()=>d(!0),[]),b=(0,X.useCallback)(()=>{d(!1),r.current.commitField()},[]);return{featureImage:i,featureImageAlt:e.featureImageAlt,featureImageCaption:ah(o),featureImageCaptionKey:c,onFeatureImageChange:h,onFeatureImageClear:g,onFeatureImageAltChange:_,onFeatureImageCaptionChange:v,onFeatureImageCaptionFocus:y,onFeatureImageCaptionBlur:b}}var ch=2e4;function lh(e,{ms:t,isSigningIn:n,onLate:r}){return new Promise(i=>{let a,o=()=>{if(n()){a=setTimeout(o,ch);return}r(),i(`confirm`)};a=setTimeout(o,t),e.then(i,()=>i(`confirm`)).finally(()=>clearTimeout(a))})}function uh(e,t){return t?!0:e.kind===`preparing`||e.kind===`saving`||e.kind===`pending-coalesced`||e.kind===`reauth-pending`}function dh(e,t,n,r){let i=`/editor/${n}`;if(Er(e.pathname)!==i||!t.pathname.startsWith(`${i}/`))return!1;let a=t.pathname.slice(i.length+1);return!a||a.includes(`/`)?!1:t.state?.editorSession===r}var fh=(0,X.createContext)(``),ph=(0,X.createContext)(()=>{}),mh=fh.Provider,hh=ph.Provider;function gh(){return(0,X.useContext)(fh)}function _h(){return(0,X.useContext)(ph)}function vh(){let e=H(),t=V().at(-1)?.params,n=Er(e.pathname),[r,i]=(0,X.useState)(()=>({screen:yh(),count:0,path:n,location:e,navigation:t,created:!1})),a=(0,X.useCallback)(()=>{i(e=>e.created?e:{...e,created:!0})},[]),o=`${r.screen}:${r.count}`;if(e===r.location&&t===r.navigation)return{key:o,markCreated:a};let s=e.state?.editorSession,c=n===r.path&&r.created&&bh(n),l=(n===r.path?!c:s===o)?{...r,path:n,location:e,navigation:t}:{...r,path:n,location:e,navigation:t,count:r.count+1,created:!1};return i(l),{key:`${l.screen}:${l.count}`,markCreated:a}}function yh(){return Array.from(crypto.getRandomValues(new Uint32Array(2)),e=>e.toString(36)).join(``)}function bh(e){return e.split(`/`).filter(Boolean).length===2}function xh(e,t){let n=H(),r=he(),i=gh(),a=e.isDirty(),o=uh(e.state,a),[s,c]=(0,X.useState)(!1),l=Fr({when:o,confirmUnloadWhen:o,interceptNavigation:({currentLocation:e,nextLocation:n})=>dh(e,n,t,i),guardHistoryPops:!0});(0,X.useEffect)(()=>o?y():void 0,[o]);let u=(0,X.useRef)(l);u.current=l;let d=(0,X.useRef)(e.state);d.current=e.state;let f=(0,X.useRef)(null),p=(0,X.useRef)(!1),m=(0,X.useRef)(!0);(0,X.useEffect)(()=>(m.current=!0,()=>{m.current=!1}),[]),(0,X.useEffect)(()=>{p.current&&(p.current=!1,c(!1))},[n]);let h=l.interceptedNavigation.isBlocked,g=e.createdId,_=_h();(0,X.useEffect)(()=>{g&&_()},[g,_]);let{hasBlockedNavigation:v}=l;(0,X.useEffect)(()=>{if(!g||v()||h||p.current)return;let e=`/editor/${t}/${g}`;n.pathname!==e&&r(e,{replace:!0,state:{editorSession:i}})},[g,l.isBlocked,v,h,n.pathname,r,t,i]),(0,X.useEffect)(()=>{h&&u.current.interceptedNavigation.proceed()},[h]);let{isBlocked:b}=l,{leaveRequested:x}=e,S=(0,X.useRef)(!1);(0,X.useEffect)(()=>{if(!b){S.current=!1,p.current||c(!1);return}S.current||(S.current=!0,lh(x(),{ms:d.current===f.current?0:ch,isSigningIn:()=>d.current.kind===`reauth-pending`,onLate:()=>{f.current=d.current}}).then(e=>{if(!(!m.current||!u.current.isBlocked)){if(e===`confirm`){c(!0);return}p.current=!0,u.current.dialogProps.onConfirm()}}))},[b,x]);let C=l.dialogProps;return{dialogProps:{open:s,onConfirm:()=>{p.current||(p.current=!0,C.onConfirm())},onOpenChange:e=>{p.current||(e||c(!1),C.onOpenChange(e))}}}}var Sh=()=>{let e=C();return(0,X.useCallback)(async({type:t,text:n,id:r,sessionExpiryRedirect:i})=>{if(!n)return``;let a=encodeURIComponent((0,um.slugify)(n)),o=r?`/slugs/${t}/${a}/${r}/`:`/slugs/${t}/${a}/`;return(await e(_(o),{sessionExpiryRedirect:i})).slugs[0].slug},[e])},Ch=`title.slug.lexical.tags.custom_excerpt.email_subject.feature_image.feature_image_alt.feature_image_caption.featured.visibility.tiers.authors.meta_title.meta_description.canonical_url.custom_template.codeinjection_head.codeinjection_foot.og_image.og_title.og_description.twitter_image.twitter_title.twitter_description.show_title_and_feature_image.updated_at`.split(`.`),wh=new Set([`tiers`,`authors`]),Th=new Set([`title`,`lexical`,`tags`,`updated_at`]);function Eh(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function Dh(e){return Array.isArray(e)?e.map(Dh):Eh(e)?Object.fromEntries(Object.entries(e).map(([e,t])=>[e,Dh(t)])):e}function Oh(e){return Dh(Bs(e,Ch))}function kh(e){return Dh(Bs(e,Ch.filter(t=>t in e&&e[t]!==void 0)))}function Ah(e){return e==null?null:typeof e==`string`?e:JSON.stringify(e)}function jh(e,t){let n=e??[],r=t??[];return n.length===r.length&&n.every((e,t)=>Ur(e,r[t]))}function Mh(e,t){return e.trim()===t.trim()}function Nh(e){return(e??[]).map(e=>e.id??``)}function Ph(e,t,n){return e===`title`?Mh(t,n):e===`tags`?jh(t,n):wh.has(e)?Pr(Nh(t),Nh(n)):Pr(t,n)}function Fh(e,t){if(e===null||t===null)return!1;let n=Date.parse(e),r=Date.parse(t);return!Number.isNaN(n)&&!Number.isNaN(r)&&n<r}var Ih=200,Lh=4*Ih;function Rh(e,t){let n=Math.min(e.length,t.length),r=0;for(;r<n&&e[r]===t[r];)r+=1;return r===e.length&&r===t.length?null:t.length>0&&r<=Ih&&t.length-r<=Ih||e.length<=Lh?{at:r,before:``,live:``,other:``}:{at:r,before:e.slice(Math.max(0,r-Ih),r),live:e.slice(r,r+Ih),other:t.slice(r,r+Ih)}}function zh(e={}){let t=e.siteUrl??``,n=null,r=!1,i=new Set,a=null,o=null,s={status:`pending`},c=!1,l=!1,u=!1;function d(e,n){return $r(e,n,t)}function f(e,n){try{let r=Qr(e,t);return{status:`ready`,lexical:e,forms:new Set([...n,r])}}catch{return{status:`ready`,lexical:e,forms:n}}}function p(e,t,n){if(e===`lexical`)try{return d(t,n)}catch{return!1}return Ph(e,t,n)}function m(e){return!u&&a!==null&&e===n}function h(e){return m(e)||e===null&&r&&!u&&a!==null}function g(e,t){return Ch.some(n=>!Th.has(n)&&!p(n,e[n],t[n]))}function _(){if(!a||!o)return null;let e=o.lexical;try{return d(a.lexical,e)?null:s.status===`pending`?`BASELINE_PENDING`:s.status===`failed`?`BASELINE_FAILED`:s.forms.has(Qr(e,t))?null:`SCRATCH_DIVERGED_FROM_SECONDARY`}catch{return`LEXICAL_PARSE_FAILED`}}function v(e,n){try{return Rh(Qr(e,t),Qr(n,t))}catch{return Rh(e??``,n??``)}}function y(){if(!a||!o)return[];let e=[];l&&e.push({code:`POST_HAS_ERROR`}),jh(a.tags,o.tags)||e.push({code:`POST_TAGS_DIVERGED`}),Mh(a.title,o.title)||e.push({code:`POST_TITLE_DIVERGED`});let t=_();return t&&e.push({code:t}),g(a,o)&&e.push({code:n===null?`NEW_POST_HAS_CHANGED_ATTRIBUTES`:`POST_HAS_DIRTY_ATTRIBUTES`}),e}return{load(e,t){u||(n=e,r=!1,e!==null&&i.add(e),a=Oh(t),o=Oh(t),s={status:`pending`},c=!1,l=!1)},setSaved(e,t){if(!m(e)||!a||!o)return;let n=Oh(t);Fh(n.updated_at,a.updated_at)||(a=n,o={...o,updated_at:n.updated_at})},saveAcknowledged(e,t,d){if(u||!a||!o||n!==null&&e!==n||n===null&&e!==null&&i.has(e))return;let m=Oh(d),h=[];for(let e of Ch){let n=t[e]===void 0?a[e]:t[e];(e===`updated_at`||p(e,o[e],n))&&h.push(e)}n===null&&e!==null&&(r=!0,i.add(e)),n=e,p(`lexical`,a.lexical,m.lexical)||(s=f(m.lexical,new Set),c=!0),a=m,o={...o,...Bs(m,h)},l=!1},setBaseline(e,t){!h(e)||c||(s=f(Ah(t),s.status===`ready`?s.forms:new Set))},baselineFailed(e){!h(e)||c||(s={status:`failed`})},setLive(e,t){if(!h(e)||!o)return;let n=kh(t);delete n.updated_at,o={...o,...n}},markSaveError(){u||(l=!0)},clearSaveError(){u||(l=!1)},revisionRestored(e,t){if(!m(e)||!a||!o)return;let n=Dh({lexical:t.lexical,title:t.title,custom_excerpt:t.custom_excerpt,feature_image:t.feature_image,feature_image_alt:t.feature_image_alt,feature_image_caption:t.feature_image_caption});a={...a,...n},o={...o,...n},s={status:`pending`},c=!1,l=!1},verdict(){let e=y();return{dirty:e.length>0,reasons:e}},dirtyFields(){if(!a||!o)return[];let e=a,t=o,n=_()!==null;return Ch.filter(r=>r===`lexical`?n:r!==`updated_at`&&!p(r,e[r],t[r]))},bodyDivergence(){return!a||!o||_()===null?null:{saved:v(o.lexical,a.lexical),baseline:s.status===`ready`?v(o.lexical,s.lexical):null}},isFieldDirty(e){return!!a&&!!o&&e!==`updated_at`&&!p(e,a[e],o[e])},savedValue(e){return a?Dh(a[e]):void 0},hasChangedSinceRevision(e){if(u||!a)return!1;if(!e)return!0;if(n===null)return!1;if(!Mh(a.title,e.title)||a.custom_excerpt!==(e.custom_excerpt??null)||a.feature_image!==(e.feature_image??null))return!0;try{return!d(a.lexical,e.lexical)}catch{return!0}},dispose(){u=!0,n=null,r=!1,i.clear(),a=null,o=null,s={status:`pending`},c=!1,l=!1}}}function Bh(e){let t=Promise.resolve(),n=dm();function r(e){return t=e.catch(()=>void 0),e}function i(){return new Promise(t=>{let n=()=>{e.getState().pending||(r(),t())},r=e.subscribe(n);n()})}async function a(){let e;do e=t,await Promise.race([e,n.promise]),await Promise.race([i(),n.promise]);while(e!==t)}async function o(t){let n=await r(e.titleCommitted(t));return n.source===`generated`?{slug:n.slug,source:`generated`}:{slug:e.getState().slug,source:`unchanged`}}function s(){t=Promise.resolve();let e=n;n=dm(),e.resolve()}return{port:{settled:a,fromTitle:o},commitTitle:t=>void r(e.titleCommitted(t)),editSlug:t=>{let i=e.getState().slug,a=n.promise;return Promise.race([r(e.slugEdited(t)),a.then(()=>({slug:i,source:`unchanged`,reason:`stale`}))])},titleReplaced:t=>{s(),e.loaded({slug:e.getState().slug,title:t})},reset:s}}function Vh({identity:e,status:t,publishedAt:n,publishedAtDirty:r,settingsDirty:i,title:a,slug:o,slugIsCustom:s,verdict:c,changedSinceLastRevision:l,version:u}){let d={status:t,publishedAt:n,title:a,slug:o,slugIsCustom:s,isDirty:c.dirty||r,settingsDirty:i,titleDirty:c.reasons.some(e=>e.code===`POST_TITLE_DIVERGED`),changedSinceLastRevision:l,version:u};return e.id===null?{id:null,updatedAt:null,...d}:{id:e.id,updatedAt:e.updatedAt,...d}}var Hh=Y().nullish();function Uh(e){return{title:``,slug:``,lexical:null,tags:[],custom_excerpt:null,email_subject:null,feature_image:null,feature_image_alt:null,feature_image_caption:null,featured:!1,visibility:null,tiers:[],authors:e?[{id:e}]:[],meta_title:null,meta_description:null,canonical_url:null,custom_template:null,codeinjection_head:null,codeinjection_foot:null,og_image:null,og_title:null,og_description:null,twitter_image:null,twitter_title:null,twitter_description:null,show_title_and_feature_image:null,updated_at:null}}function Wh(e){let t=Hh.safeParse(`email_subject`in e?e.email_subject:void 0);return{title:e.title,slug:e.slug,lexical:e.lexical??null,tags:e.tags??[],custom_excerpt:e.custom_excerpt??null,email_subject:t.success?t.data??null:null,feature_image:e.feature_image??null,feature_image_alt:e.feature_image_alt??null,feature_image_caption:e.feature_image_caption??null,featured:e.featured??!1,visibility:e.visibility??null,tiers:e.tiers??[],authors:e.authors??[],meta_title:e.meta_title??null,meta_description:e.meta_description??null,canonical_url:e.canonical_url??null,custom_template:e.custom_template??null,codeinjection_head:e.codeinjection_head??null,codeinjection_foot:e.codeinjection_foot??null,og_image:e.og_image??null,og_title:e.og_title??null,og_description:e.og_description??null,twitter_image:e.twitter_image??null,twitter_title:e.twitter_title??null,twitter_description:e.twitter_description??null,show_title_and_feature_image:`show_title_and_feature_image`in e?e.show_title_and_feature_image??null:null,updated_at:e.updated_at}}function Gh(e){let t=kp(e?.post_revisions);if(t.length===0)return null;let n=t.reduce((e,t)=>Ap(t)>=Ap(e)?t:e);return{lexical:n.lexical??null,title:n.title??``,custom_excerpt:n.custom_excerpt??null,feature_image:n.feature_image??null}}var Kh=[`title`,`slug`],qh=`Cannot save without the version this post was loaded at.`;function Jh(e,t){return t?{ok:!1,error:{kind:`validation`,message:t}}:{ok:!0,prepared:e}}var Yh=new Set([`SCRATCH_DIVERGED_FROM_SECONDARY`,`BASELINE_FAILED`,`LEXICAL_PARSE_FAILED`]),Xh=[...Vs,`feature_image_alt`,`feature_image_caption`],Zh=[`title`,`slug`,`tags`,`custom_excerpt`,`feature_image`,`feature_image_alt`,`feature_image_caption`,`authors`],Qh=new Set([`reauth-pending`,`conflict`,`halted`,`crashed`]);function $h(e,t,n,r){n[e]=t[e],r[e]=Ws(e,t)}function eg(e,t){if(e===null||t===null)return e===t;let n=Date.parse(e),r=Date.parse(t);return!Number.isNaN(n)&&!Number.isNaN(r)&&Math.floor(n/6e4)===Math.floor(r/6e4)}function tg(e,t){if(!t)return!1;let n=Date.parse(e),r=Date.parse(t);return!Number.isNaN(n)&&!Number.isNaN(r)&&n<r}function ng(e,t){return Qf(e)&&Qf(t)&&Date.parse(e)===Date.parse(t)}function rg(e,t){return Qf(e)&&Qf(t)&&Date.parse(e)>Date.parse(t)}function ig({record:e,siteUrl:t,currentUserId:n,saveFailureMessage:r,autosaveDebounceMs:i,transport:a,onIdAcquired:o,onSaveAcknowledged:s,onError:c,onSaveFailed:l,onLeaveConfirmed:u,localRevisions:d}){let f=e?{id:e.id,updatedAt:e.updated_at??``}:{id:null,updatedAt:null},p=e?.status??`draft`,m=e?.published_at??null,h=null,g=0,_=e?Wh(e):Uh(n),v=Gh(e),y=0,b=!1,x=new Set,S=new Map,C=null,w=!1,T=!1,E=null,D=!1,O=null;function k(){return h??m}function A(){eg(h,m)&&(C===null||g<=C)&&(h=null)}let j=zh({siteUrl:t});j.load(f.id,_);let M=Pm({generateSlug:e=>a.generateSlug(e,f.id),onListenerError:c});M.loaded({slug:_.slug,title:_.title});let N=Bh(M),P=new Set,F;function I(){if(b)return;let e=V.getState(),t=V.getPendingSave(),n=F?.pendingSave?.blockedBy===t?.blockedBy?F?.pendingSave??null:t,r=re().isDirty,i=M.getState().slug,a=k(),o=F&&Vs.every(e=>F.settings[e]===_[e])?F.settings:Bs(_,Vs),s=F&&F.publishTime.status===p&&F.publishTime.publishedAt===a?F.publishTime:{status:p,publishedAt:a},l=(e.kind===`idle`||e.kind===`debouncing`)&&!r&&rg(O,f.updatedAt);if(!(F&&F.state===e&&F.pendingSave===n&&F.isDirty===r&&F.title===_.title&&F.slug===i&&F.settings===o&&F.publishTime===s&&F.featureImageAlt===_.feature_image_alt&&F.featureImageCaption===_.feature_image_caption&&F.newerVersionAvailable===l)){F={state:e,pendingSave:n,isDirty:r,title:_.title,slug:i,settings:o,publishTime:s,featureImageAlt:_.feature_image_alt,featureImageCaption:_.feature_image_caption,newerVersionAvailable:l};for(let e of P)try{e()}catch(e){c(e)}}}function ee(e){let t=_;_={..._,...e},y+=1;for(let n of Xh)e[n]!==void 0&&!Ph(n,t[n],e[n])&&S.set(n,y);j.setLive(f.id,e),I(),se()}function L(e,t){for(let n of Kh){let r=t[n],i=e[n];r===void 0||i===void 0||r===i||!Ph(n,_[n],i)||(_={..._,[n]:r},j.setLive(f.id,{[n]:r}))}}function R(e){return j.isFieldDirty(e)?!1:C===null||(S.get(e)??0)<=C}function z(e,t){let n={};for(let r of Xh)t(r)&&_[r]!==e[r]&&(n[r]=e[r]);Object.keys(n).length!==0&&(_={..._,...n},j.setLive(f.id,n))}function te(e){return e===`custom_excerpt`&&w}function ne(){return h!==null||x.size>0||j.isFieldDirty(`slug`)||Vs.some(e=>!te(e)&&j.isFieldDirty(e))}function re(){let e=j.verdict();return Vh({identity:f,status:p,publishedAt:k(),publishedAtDirty:h!==null,settingsDirty:ne(),title:_.title,slug:M.getState().slug,slugIsCustom:M.getState().mode===`custom`,verdict:{...e,dirty:e.dirty||x.size>0},changedSinceLastRevision:j.hasChangedSinceRevision(v),version:y})}function ie(){return Zh.some(e=>j.isFieldDirty(e))||j.verdict().reasons.some(e=>Yh.has(e.code))}function ae(){return{id:f.id,status:p,title:_.title,slug:M.getState().slug,lexical:_.lexical,custom_excerpt:_.custom_excerpt,feature_image:_.feature_image,feature_image_alt:_.feature_image_alt,feature_image_caption:_.feature_image_caption,authors:_.authors.map(({id:e})=>({id:e})),tags:_.tags.map(({id:e,name:t,slug:n})=>({id:e,name:t,slug:n}))}}function oe(e){if(d)try{e(d)}catch(e){c(e)}}function B(e){if(b||T||p!==`draft`)return!1;let t=!1;return oe(n=>{ie()&&(e(n),t=!0)}),t}function se(){B(e=>e.record(ae()))}function ce(){return B(e=>e.flush(ae()))}let le=M.subscribe(I);function ue(e,t,n){let r=e.snapshot.id===null&&e.target.status===`draft`;return((n?null:rc(e.title))??fc(lc(_),r,n?cc.filter(te):[]))||(e.target.publishedAt!==m&&oc(e.target.status,e.target.publishedAt)?ac:t.authors?.length===0?Us:null)}function de(e){let t=e.snapshot.id,r=zf(e.command,e.snapshot),i,a;r?(i={updated_at:e.snapshot.updatedAt},a={title:j.savedValue(`title`),slug:e.slug,lexical:j.savedValue(`lexical`),feature_image:j.savedValue(`feature_image`)},te(`custom_excerpt`)&&(a.custom_excerpt=j.savedValue(`custom_excerpt`)),j.isFieldDirty(`slug`)&&(i.slug=e.slug),h!==null&&(a.published_at=e.target.publishedAt)):(i={title:e.title,slug:e.slug,lexical:_.lexical,feature_image:_.feature_image,feature_image_alt:_.feature_image_alt,feature_image_caption:_.feature_image_caption,updated_at:e.snapshot.updatedAt},a={title:e.title,slug:e.slug,lexical:i.lexical,feature_image:i.feature_image,feature_image_alt:i.feature_image_alt,feature_image_caption:i.feature_image_caption,status:e.target.status,published_at:e.target.publishedAt}),t===null&&n&&(a.authors=[{id:n}]);for(let e of Vs)j.isFieldDirty(e)&&!(r&&te(e))&&$h(e,_,i,a);ic(_)?(delete i.visibility,delete a.visibility,delete i.tiers,delete a.tiers):_.visibility===`tiers`&&(`visibility`in a||`tiers`in a)&&(i.visibility=_.visibility,a.visibility=_.visibility,i.tiers=_.tiers,a.tiers=Ws(`tiers`,_)),e.target.emailOnly!==void 0&&(a.email_only=e.target.emailOnly);let o={...e,projection:i,authoredFrom:{title:_.title,slug:_.slug},builtAtVersion:y,options:{saveRevision:e.saveRevision,newsletter:e.target.newsletter,emailSegment:e.target.emailSegment}},s=ue(e,i,r);return t===null?Promise.resolve(Jh({...o,isCreate:!0,payload:{...a,title:e.title}},s)):i.updated_at?Promise.resolve(Jh({...o,isCreate:!1,payload:{...a,id:t,updated_at:i.updated_at}},s)):Promise.resolve({ok:!1,error:{kind:`unknown`,message:qh}})}async function fe(e){C=e.builtAtVersion;try{let t=e.isCreate?await a.create(e.payload):await a.update(e.payload,e.options);return t?{ok:!0,result:{id:t.id,status:t.status??`draft`,updatedAt:t.updated_at??``,post:t}}:(C=null,A(),{ok:!1,error:{kind:`unknown`,message:r}})}catch(e){return C=null,A(),{ok:!1,error:bu(e,r)}}}function pe(e,t){let n={};for(let t of Kh)e.projection[t]!==void 0&&(n[t]=e.projection[t]);L(e.authoredFrom,n);let r=Object.fromEntries(Xh.filter(t=>e.projection[t]===void 0&&(S.get(t)??0)>e.builtAtVersion).map(e=>[e,_[e]]));e.projection.visibility===void 0&&ic(_)&&(r.visibility=_.visibility,r.tiers=_.tiers);let i=Wh(t.post),a={title:i.title,slug:i.slug};j.saveAcknowledged(t.id,e.projection,i),j.setLive(t.id,r),L(n,a),C=null,z(i,R),M.saveAcknowledged({...a,...n},a);let l=f.id===null;f={id:t.id,updatedAt:t.updatedAt},p=t.status,m=t.post.published_at??null,g<=e.builtAtVersion&&(h=null),A(),v=Gh(t.post),_={..._,updated_at:t.updatedAt},l&&(oe(e=>e.created()),o(t.id));try{s?.(t.post)}catch(e){c(e)}oe(e=>{p!==`draft`||!ie()?e.discard():l&&e.flush(ae())}),I()}let V=tp({getSnapshot:re,slug:N.port,prepare:de,execute:fe,reconcile:pe,autosaveDebounceMs:i,onStateChange:e=>{if(e.kind===`error`||e.kind===`conflict`?j.markSaveError():D&&e.kind===`idle`&&j.clearSaveError(),D=e.kind===`error`&&e.intent===`settings`,Qh.has(e.kind)){let t=e.kind===`conflict`?e.error:null;t===null?(E=null,ce()):t!==E&&ce()&&(E=t)}I()},onListenerError:c,onSaveFailed:e=>l?.({...e,postId:f.id,status:p})});I();function me(){V.dispatch(`field`)}function H(){V.dispatch(`settings`),I()}async function he(e){if(b)return`unchanged`;let t=Symbol();x.add(t);let n=N.editSlug(e);I();try{let e=await n;return b||!x.has(t)?`unchanged`:e.source===`unchanged`?e.reason===`error`?(c(e.error),`failed`):e.reason===`empty-result`?`failed`:`unchanged`:(ee({slug:e.slug}),H(),`applied`)}finally{x.delete(t),b||I()}}return{getState:()=>V.getState(),getView:()=>F,subscribe:e=>(P.add(e),()=>{P.delete(e)}),getSaveSnapshot:re,isDirty:()=>re().isDirty,hasUnsavedContent:()=>h!==null||x.size>0||j.verdict().reasons.some(e=>e.code!==`POST_HAS_ERROR`),patchTitle:e=>ee({title:e.trim()?e:Pf}),patchExcerpt:e=>{w=!0,ee({custom_excerpt:e===``?null:e})},patchFeatureImage:e=>ee(e),patchFields:e=>{`custom_excerpt`in e&&(w=!1),ee(e)},getFields:()=>_,commitField:me,commitSettings:H,getSlug:()=>M.getState().slug,editSlug:he,editPublishedAt:e=>{eg(e,k())||(h=eg(e,m)?m:Bf(e),y+=1,g=y,A(),I())},getPublishedAt:k,patchLexical:e=>ee({lexical:JSON.stringify(e)}),restoreRevision:async e=>{if(b||e.lexical===null||V.getState().kind===`reauth-pending`)return!1;let t={...e,title:e.title.trim()?e.title:Pf};ce();let n={lexical:_.lexical,title:_.title,custom_excerpt:_.custom_excerpt,feature_image:_.feature_image,feature_image_alt:_.feature_image_alt,feature_image_caption:_.feature_image_caption};T=!0;try{return ee(t),N.titleReplaced(t.title),(await V.dispatch(`explicit`)).kind===`saved`?(j.revisionRestored(f.id,t),I(),!0):(ee(n),N.titleReplaced(n.title),!1)}finally{T=!1}},setBaseline:e=>{j.setBaseline(f.id,e),I(),se()},baselineFailed:()=>{j.baselineFailed(f.id),I(),se()},commitTitle:e=>{p===`draft`&&N.commitTitle(e)},dispatchAutosave:()=>void V.dispatch(`autosave`),dispatchExplicit:()=>V.dispatch(`explicit`),retrySave:()=>{let e=V.getState();return e.kind===`error`&&e.intent===`settings`&&p!==`draft`?V.dispatch(`settings`,{retry:!0}):V.dispatch(`explicit`)},dispatchPublish:e=>V.dispatch(`publish`,e),dispatchSchedule:e=>V.dispatch(`schedule`,e),dispatchRevert:()=>V.dispatch(`revert`),getLiveLexical:()=>_.lexical,recordRefetched:e=>{if(b||f.id!==e.id)return!1;if(!ng(e.updated_at,f.updatedAt)){let t=e.updated_at??null;return rg(t,f.updatedAt)&&!rg(O,t)&&(O=t,I()),!1}let t=new Set(Xh.filter(R)),n=Wh(e);return j.setSaved(e.id,n),z(n,e=>t.has(e)),p=e.status??p,m=e.published_at??null,A(),v=Gh(e),I(),!0},recordReloaded:e=>{let t=e.updated_at??``;return b||f.id!==e.id||!Qf(t)||tg(t,f.updatedAt)||!V.contentReloaded(t,()=>{f={id:e.id,updatedAt:t},p=e.status??`draft`,m=e.published_at??null,v=Gh(e),_=Wh(e),h=null,g=0,x.clear(),S.clear(),C=null,y+=1,j.load(f.id,_),N.reset(),M.loaded({slug:_.slug,title:_.title})})?!1:(I(),!0)},reauthSucceeded:()=>V.reauthSucceeded(),reauthAbandoned:()=>V.reauthAbandoned(),leaveRequested:async()=>{let e=await V.leaveRequested();if(e===`confirm`&&!b)try{u?.({postId:f.id,status:p,engineState:V.getState().kind,reasons:j.verdict().reasons.map(e=>e.code),dirtyFields:j.dirtyFields(),bodyDiff:j.bodyDivergence()})}catch(e){c(e)}return e},flushLocalRevision:ce,dispose:()=>{b||(ce(),oe(e=>e.discard()),p===`draft`&&_.slug.includes(`untitled`)&&_.title.trim()&&_.title!==`(Untitled)`&&c(Error(`Draft post has title set with untitled slug`),{extra:{slug:_.slug,title:_.title}}),b=!0,x.clear(),le(),N.reset(),V.dispose(),j.dispose(),P.clear())}}}function ag(e){return t=>{switch(t.kind){case`publish`:return e.publish(t.options);case`schedule`:return e.schedule(t.options);default:return e.revert()}}}function og(e){return e===`sent`?void 0:e}function sg(e){return typeof e==`number`&&Number.isFinite(e)&&e>0?e:void 0}function cg(e,t){let n=_(e===`page`?`/pages/${t}/`:`/posts/${t}/`,B());return{url:n,queryKey:[e===`page`?Xn:se,n]}}function lg(e,t){return e===`page`?t?.pages?.[0]:t?.posts?.[0]}function ug(e,t){return!!e&&e.id===t.id&&Qf(e.updated_at)&&Qf(t.updated_at)&&Date.parse(e.updated_at)>Date.parse(t.updated_at)}function dg({postType:e,record:t,siteUrl:n,currentUserId:r}){let i=C(),o=a(),{data:s}=de({requestOptions:Q}),c=Sh(),{mutateAsync:l}=oe(),{mutateAsync:u}=ae(),{mutateAsync:d}=Yn(),{mutateAsync:f}=Jn(),[p,m]=(0,X.useState)(t?.id??null),[g,_]=(0,X.useState)(()=>t?.title===`(Untitled)`?``:t?.title??``),[v,y]=(0,X.useState)(()=>t?.lexical??null),[b,x]=(0,X.useState)(t),[S,w]=(0,X.useState)(0),T=(0,X.useRef)({addPost:l,editPost:u,addPage:d,editPage:f,generateSlug:c,postType:e});(0,X.useEffect)(()=>{T.current={addPost:l,editPost:u,addPage:d,editPage:f,generateSlug:c,postType:e}});let E=(0,X.useRef)(void 0);(0,X.useEffect)(()=>{E.current=sg(s?.config.editorAutosaveDebounceMs)});let[D]=(0,X.useState)(()=>ig({record:t,siteUrl:n,currentUserId:r,saveFailureMessage:`Couldn’t save this ${e}.`,autosaveDebounceMs:()=>E.current,onIdAcquired:m,onSaveAcknowledged:t=>{o.setQueryData(cg(e,t.id).queryKey,n=>{if(!ug(lg(e,n),t))return e===`page`?{pages:[t]}:{posts:[t]}})},onError:cd,onSaveFailed:t=>pd(t,e),onLeaveConfirmed:t=>hd(t,e),localRevisions:Zr({type:e,storage:()=>window.localStorage,onError:cd}),transport:{create:async e=>{let t=T.current;if(t.postType===`page`){let{pages:n}=await t.addPage({page:{...e,status:og(e.status)},sessionExpiryRedirect:!1});return n[0]}let{posts:n}=await t.addPost({post:e,sessionExpiryRedirect:!1});return n[0]},update:async(e,t)=>{let n=T.current;if(n.postType===`page`){let{pages:r}=await n.editPage({page:{...e,status:og(e.status)},options:t,sessionExpiryRedirect:!1});return r[0]}let{posts:r}=await n.editPost({post:e,options:t,sessionExpiryRedirect:!1});return r[0]},generateSlug:(e,t)=>T.current.generateSlug({type:`post`,text:e,id:t??void 0,sessionExpiryRedirect:!1})}})),O=(0,X.useRef)(void 0);(0,X.useEffect)(()=>(clearTimeout(O.current),()=>{O.current=setTimeout(()=>D.dispose())}),[D]),(0,X.useEffect)(()=>{let e=()=>D.flushLocalRevision(),t=()=>{document.visibilityState===`hidden`&&e()};return window.addEventListener(`pagehide`,e),document.addEventListener(`visibilitychange`,t),()=>{window.removeEventListener(`pagehide`,e),document.removeEventListener(`visibilitychange`,t)}},[D]);let k=(0,X.useSyncExternalStore)(D.subscribe,D.getView),{state:A,pendingSave:j,title:M,slug:N,settings:P,publishTime:F,featureImageAlt:I,featureImageCaption:ee,newerVersionAvailable:L}=k,R=(0,X.useCallback)(()=>k.isDirty,[k]),z=D.patchFields,te=(0,X.useCallback)(e=>{let t=D.getPublishedAt();D.editPublishedAt(e),t!==D.getPublishedAt()&&D.commitSettings()},[D]),ne=(0,X.useCallback)(()=>D.commitSettings(),[D]),re=(0,X.useCallback)(()=>D.commitField(),[D]),ie=(0,X.useCallback)(e=>{z(e),D.commitSettings()},[D,z]),B=ce(p??``,{enabled:e===`post`&&!!p,defaultErrorHandler:!1,requestOptions:Q}),se=Zn(p??``,{enabled:e===`page`&&!!p,defaultErrorHandler:!1,requestOptions:Q}),le=e===`page`?se.data?.pages[0]:B.data?.posts[0],ue=(0,X.useRef)(void 0);(0,X.useEffect)(()=>{!le||le===ue.current||D.recordRefetched(le)&&(ue.current=le,x(le))},[le,D,A]);let fe=(0,X.useCallback)(async()=>{if(!p)return`failed`;let{url:t,queryKey:n}=cg(e,p),r;try{r=await i(t,Q)}catch(e){return e instanceof h&&e.response?.status===404?`gone`:`failed`}let a=lg(e,r);if(!a)return`gone`;await o.cancelQueries({queryKey:n,exact:!0});let s=o.getQueryData(n),c=lg(e,s);return s&&ug(c,a)&&(r=s,a=c),D.recordReloaded(a)?(o.setQueryData(n,r),_(a.title===`(Untitled)`?``:a.title),y(a.lexical??null),x(a),w(e=>e+1),`reloaded`):`failed`},[i,p,e,o,D]),pe=(0,X.useCallback)(async e=>{if(!await D.restoreRevision(e))return!1;let t=D.getFields();return _(t.title===`(Untitled)`?``:t.title),y(e.lexical),x(n=>n&&{...n,...e,title:t.title}),w(e=>e+1),!0},[D]),V=(0,X.useCallback)(()=>ei(g,D.getLiveLexical()),[D,g]),me=!t,H=(0,X.useCallback)(e=>{_(e),D.patchTitle(e)},[D]),he=(0,X.useCallback)(e=>D.patchExcerpt(e),[D]),ge=(0,X.useCallback)(()=>{D.commitTitle(g),D.commitField()},[D,g]),_e=(0,X.useCallback)(e=>{D.patchLexical(e),D.dispatchAutosave()},[D]),ve=(0,X.useCallback)(e=>D.setBaseline(e),[D]),U=(0,X.useCallback)(()=>D.baselineFailed(),[D]),ye=(0,X.useMemo)(()=>ag({publish:D.dispatchPublish,schedule:D.dispatchSchedule,revert:D.dispatchRevert}),[D]),be=(0,X.useCallback)(()=>void D.retrySave(),[D]),xe=P.custom_excerpt??``,Se=(0,X.useMemo)(()=>({title:g,excerpt:xe,initialLexical:v,onTitleChange:H,onTitleBlur:ge,onExcerptChange:he,onLexicalChange:_e,onSecondaryChange:ve,onSecondaryError:U}),[xe,v,he,_e,ve,U,ge,H,g]);return(0,X.useMemo)(()=>({bind:Se,state:A,pendingSave:j,persistedId:p,createdId:me?p:null,isDirty:R,contentKey:S,loadedRecord:b,hasUnsavedContent:D.hasUnsavedContent,contentText:V,reload:fe,newerVersionAvailable:L,restoreRevision:pe,patchFeatureImage:D.patchFeatureImage,featureImageAlt:I,featureImageCaption:ee,settings:P,editSettings:ie,stageSettings:z,commitSettings:ne,commitField:re,title:M,slug:N,editSlug:D.editSlug,publishTime:F,editPublishedAt:te,getSaveSnapshot:D.getSaveSnapshot,getLiveLexical:D.getLiveLexical,retrySave:be,saveExplicit:D.dispatchExplicit,dispatchPublish:ye,reauthSucceeded:D.reauthSucceeded,reauthAbandoned:D.reauthAbandoned,leaveRequested:D.leaveRequested,dispose:D.dispose}),[Se,re,ne,S,V,ye,te,ie,M,I,ee,R,me,b,L,p,F,fe,pe,be,D,P,N,z,A,j])}var fg=`100`,pg=10;async function mg(e){let t=[],n=1;for(;n!==null&&n<=pg;){let r=await e(_(`/labels/`,{limit:fg,fields:`id,name`,page:String(n)}));t.push(...r.labels.map(e=>e.name)),n=r.meta?.pagination.next??null}return t}function hg(e,t){let n=new Intl.DateTimeFormat(`en-US`,{day:`numeric`,month:`short`,year:`numeric`,timeZone:t}).formatToParts(new Date(e)),r=e=>n.find(t=>t.type===e)?.value??``;return`${r(`day`)} ${r(`month`)} ${r(`year`)}`}function gg(e,t){let n={...e};return e.publishedAt&&(n.metaText=hg(e.publishedAt,t.timezone)),t.membersEnabled&&e.visibility&&(e.visibility===`members`?(n.MetaIcon=Ie,n.metaIconTitle=`Members only`):e.visibility===`paid`?(n.MetaIcon=Ne,n.metaIconTitle=`Paid-members only`):e.visibility===`tiers`&&(n.MetaIcon=Ne,n.metaIconTitle=`Specific tiers only`)),n}function _g(e,t){let n=[];return e.forEach(e=>{let r=e.options.filter(e=>e.url);(e.groupName===`Posts`||e.groupName===`Pages`)&&(r=r.filter(e=>e.status===`published`)),e.groupName===`Staff`&&(r=r.filter(e=>!/\/404\//.test(e.url??``))),r.length!==0&&((e.groupName===`Posts`||e.groupName===`Pages`)&&(r=r.map(e=>gg(e,t))),n.push({label:e.groupName,items:r}))}),n}function vg(e,t){return[{label:`Latest posts`,items:e.map(e=>gg({id:e.id,title:e.title,url:e.url,visibility:e.visibility,publishedAt:e.published_at},t))}]}function yg(e,t,n){return{groupName:e,options:xg(t,n,e=>e.title).map(t=>({id:`${e===`Posts`?`post`:`page`}.${t.id}`,title:t.title,url:t.url,status:t.status,visibility:t.visibility,publishedAt:t.published_at}))}}function bg(e,t,n){return{groupName:e,options:xg(t,n,e=>e.name).map(t=>({id:`${e===`Staff`?`user`:`tag`}.${t.id}`,title:t.name,url:t.url}))}}function xg(e,t,n){let r=t.trim().toLowerCase();if(!r)return[];let i=r.split(/\s+/);return e.filter(e=>{let t=n(e).toLowerCase();return i.every(e=>t.includes(e))})}function Sg({postType:e,homepageUrl:t,paidMembersEnabled:n,donationsEnabled:r,recommendationsEnabled:i,membersSignupAccess:a,membersEnabled:o,timezone:s}){let c=C(),l=(0,X.useRef)({index:{}}),u=(0,X.useCallback)(e=>{let t=l.current.index[e];if(t)return t;let n=c(_(`/search-index/${e}/`),Q).then(t=>t[e]).catch(()=>(delete l.current.index[e],[]));return l.current.index[e]=n,n},[c]),d=(0,X.useCallback)(async()=>{l.current.offerLinks??=c(_(`/offers/`,{filter:`status:active+redemption_type:signup`}),Q).then(e=>ti(e.offers??[],t)).catch(()=>(delete l.current.offerLinks,[]));let o=await l.current.offerLinks;return ni({postType:e,homepageUrl:t,paidMembersEnabled:n,donationsEnabled:r,recommendationsEnabled:i,membersSignupAccess:a},o)},[c,e,t,n,r,i,a]),f=(0,X.useMemo)(()=>({timezone:s,membersEnabled:o}),[s,o]);return{fetchAutocompleteLinks:d,searchLinks:(0,X.useCallback)(async e=>{if(!e)return l.current.latestPosts??=c(_(`/posts/`,{filter:`status:published`,fields:`id,url,title,visibility,published_at`,order:`published_at desc`,limit:`5`}),Q).then(e=>vg(e.posts,f)).catch(e=>{throw delete l.current.latestPosts,e}),l.current.latestPosts;let[t,n,r,i]=await Promise.all([u(`users`),u(`tags`),u(`posts`),u(`pages`)]);return _g([bg(`Staff`,t,e),bg(`Tags`,n,e),yg(`Posts`,r,e),yg(`Pages`,i,e)],f)},[c,u,f])}}function Cg({post:e,snippets:t,createSnippet:n,deleteSnippet:r}){let i=Ao(),a=jo(),o=de({requestOptions:Q}),c=Sr({requestOptions:Q}),l=x({requestOptions:Q}),{unsplashConfig:u}=s(),d=Wn({requestOptions:Q}),f=te(Q),p=C(),m=i.data?.settings??null,h=o.data?.config,g=c.data?.site,_=l.data,v=(0,X.useRef)(null),y=(0,X.useCallback)(()=>(v.current??=mg(e=>p(e,Q)).catch(e=>{throw v.current=null,e}),v.current),[p]),b=ur(m,`members_signup_access`)??`all`,{fetchAutocompleteLinks:S,searchLinks:w}=Sg({postType:e.displayName,homepageUrl:g?Cr(g):`/`,paidMembersEnabled:ur(m,`paid_members_enabled`)===!0,donationsEnabled:ur(m,`donations_enabled`)===!0,recommendationsEnabled:ur(m,`recommendations_enabled`)===!0,membersSignupAccess:b,membersEnabled:b!==`none`,timezone:a}),T=ur(m,`default_content_visibility`)??`public`,E=(0,X.useMemo)(()=>So(e,T),[e,T]),D=(0,X.useMemo)(()=>!m||!h||!g||!_?null:To({settings:m,config:h,site:g,currentUser:_,unsplashHeaders:u,pinturaConfig:d,post:E,snippets:t},{fetchEmbed:f,fetchAutocompleteLinks:S,searchLinks:w,fetchLabels:y,createSnippet:n,deleteSnippet:r}),[m,h,g,_,u,d,E,t,f,S,w,y,n,r]),O=[i,o,c,l].filter(e=>e.data===void 0&&e.isError&&!e.isFetching);return{cardConfig:D,failed:O.length>0,retry:()=>{for(let e of O)e.refetch()}}}var wg=`SnippetsResponseType`,Tg=`mobiledoc,lexical`,Eg=S({dataType:wg,path:`/snippets/`,defaultSearchParams:{limit:`all`,formats:Tg},defaultNextPageParams:(e,t)=>{let n=e.meta?.pagination.next;if(n)return{...t,page:n.toString()}},returnData:e=>{let{pages:t}=e,n=t.flatMap(e=>e.snippets),r=t[t.length-1].meta;return{snippets:n,meta:r,isEnd:r?r.pagination.pages===r.pagination.page:!0}}}),Dg=({searchParams:e,...t}={})=>Eg({...t,searchParams:{limit:`all`,...e,formats:Tg}}),Og=!1,kg=b({method:`POST`,sessionExpiryRedirect:Og,path:()=>`/snippets/`,searchParams:()=>({formats:Tg}),body:e=>({snippets:[e]}),invalidateQueries:{dataType:wg}}),Ag=b({method:`PUT`,sessionExpiryRedirect:Og,path:({id:e})=>`/snippets/${e}/`,searchParams:()=>({formats:Tg}),body:({id:e,...t})=>({snippets:[t]}),invalidateQueries:{dataType:wg}}),jg=b({method:`DELETE`,sessionExpiryRedirect:Og,path:e=>`/snippets/${e}/`,invalidateQueries:{dataType:wg}}),Mg={root:{children:[],direction:null,format:``,indent:0,type:`root`,version:1}},Ng={p:{type:`paragraph`},h1:{type:`heading`,tag:`h1`},h2:{type:`heading`,tag:`h2`},h3:{type:`heading`,tag:`h3`},h4:{type:`heading`,tag:`h4`},h5:{type:`heading`,tag:`h5`},h6:{type:`heading`,tag:`h6`},blockquote:{type:`quote`},aside:{type:`aside`},a:{type:`link`,rel:null,target:null,title:null,url:null}},Pg={"soft-return":{type:`linebreak`,version:1}},Fg={strong:1,b:1,em:2,i:2,s:4,u:8,code:16,sub:32,sup:64},Ig={code:`codeblock`,hr:`horizontalrule`},Lg={embed:{type:`embedType`}},Rg={callout:e=>(e.backgroundColor&&!e.backgroundColor.match(/^[a-zA-Z\d-]+$/)&&(e.backgroundColor=`white`),e)};function zg(e){if(e==null||e===``)return JSON.stringify(Mg);let t=JSON.parse(e);if(!t.sections)return JSON.stringify(Mg);let n=Bg();return t.sections.forEach(e=>Vg(e,t,n)),JSON.stringify(n)}function Bg(){return{root:{children:[],direction:null,format:``,indent:0,type:`root`,version:1}}}function Vg(e,t,n){let r=e[0];if(r===1){let r=Hg(e,t);n.root.children.push(r),r.children&&r.children.length>0&&(n.root.direction=`ltr`)}else if(r!==2){if(r===3){let r=Jg(e,t);n.root.children.push(r),n.root.direction=`ltr`}else if(r===10){let r=Yg(e,t);n.root.children.push(r)}}}function Hg(e,t){let n=e[1],r=e[2],i=Gg(n);return Ug(i,r,t),i}function Ug(e,t,n){let r=n.markups,i=n.atoms,a=[],o,s,c,l=!1;for(let n=0;n<t.length;n++){let[u,d,f,p]=t[n];if((u===0?`markup`:`atom`)==`atom`){let t=Pg[i[p][0]];Kg(e,t);continue}if(d.forEach(e=>{let t=r[e];if(t[0]===`a`){l=!0;let e=t[1];e&&e[0]===`href`&&(s=e[1]),e&&e[2]===`rel`&&(c=e[3])}a.push(t)}),p!==void 0){let t=qg(a);if(l){o=o===void 0?Gg(`a`,{url:s,rel:c||null}):o;let e=Wg(p,t);Kg(o,e)}else Kg(e,Wg(p,t))}for(let t=0;t<f;t++){let t=a.pop();t&&t[0]===`a`&&(Kg(e,o),l=!1,s=void 0,o=void 0)}}}function Wg(e,t){return{detail:0,format:t,mode:`normal`,style:``,text:e,type:`text`,version:1}}function Gg(e,t={}){let n=Ng[e];return{children:[],direction:`ltr`,format:``,indent:0,...n,...t,type:n?.type||t.type||e,version:1}}function Kg(e,t){t&&(e.children.push(t),t&&`text`in t&&t.text&&(e.direction=`ltr`))}function qg(e){let t=0;return e.forEach(e=>{let n=e[0];n in Fg&&(t|=Fg[n])}),t}function Jg(e,t){let n=e[1],r=e[2],i=Gg(n,{tag:n,type:`list`,listType:n===`ul`?`bullet`:`number`,start:1,direction:`ltr`});return r?.forEach((e,n)=>{let r=Gg(`li`,{type:`listitem`,value:n+1,direction:`ltr`});Ug(r,e,t),i.children.push(r)}),i}function Yg(e,t){let n=e[1],[r,i]=t.cards[n];if(r=Ig[r]||r,Lg[r]){let e=Lg[r];for(let[t,n]of Object.entries(e))i[n]=i[t],delete i[t]}return Rg[r]&&(i=Rg[r](i)),delete i.type,{type:r,...i}}function Xg(e){try{return JSON.parse(e)}catch{return}}function Zg(e){return typeof e==`object`&&!!e&&Array.isArray(e.nodes)}function Qg(e){let t;try{t=JSON.parse(zg(e)).root}catch{return null}let n=t?.children??[];return n.length===1&&n[0].type===`paragraph`&&(n=n[0].children??[]),n.length?JSON.stringify({namespace:`KoenigEditor`,nodes:n}):null}function $g(e){if(e.lexical){let t=Xg(e.lexical);if(typeof t==`string`){let e=Xg(t);if(Zg(e)&&e.nodes.length)return t}else if(typeof t==`object`&&t)return e.lexical}return Qg(e.mobiledoc)}function e_({canManage:e}){let{data:t,fetchNextPage:n,hasNextPage:r,isError:i,isFetchingNextPage:a}=Dg({requestOptions:Q});(0,X.useEffect)(()=>{r&&!a&&!i&&n()},[n,r,a,i]);let o=r?void 0:t?.snippets,s=kg(),c=Ag(),l=jg(),[u,d]=(0,X.useState)(null),[f,p]=(0,X.useState)(!1),m=(0,X.useMemo)(()=>(o??[]).map(e=>({snippet:e,value:$g(e)})).filter(e=>e.value!==null).sort((e,t)=>e.snippet.name.localeCompare(t.snippet.name)),[o]),h=(0,X.useMemo)(()=>o??[],[o]),g=(0,X.useMemo)(()=>m.map(({snippet:e,value:t})=>({id:e.id,name:e.name,value:t})),[m]),_=(0,X.useCallback)(e=>{let t=e.name.trim().toLowerCase(),n=h.find(e=>e.name.toLowerCase()===t);if(n){d({kind:`update`,snippet:n,value:e.value});return}s.mutateAsync({name:e.name,lexical:e.value,mobiledoc:`{}`}).then(()=>R.success(`Snippet saved as "${e.name}"`)).catch(()=>R.error(`Snippet save failed`))},[s,h]),v=(0,X.useCallback)(({name:e})=>{let t=h.find(t=>t.name===e);t&&d({kind:`delete`,snippet:t})},[h]),y=()=>d(null),b=async()=>{if(u){p(!0);try{u.kind===`update`?(await c.mutateAsync({id:u.snippet.id,name:u.snippet.name,lexical:u.value,mobiledoc:u.snippet.mobiledoc||`{}`}),R.success(`Snippet "${u.snippet.name}" updated`)):await l.mutateAsync(u.snippet.id)}catch{R.error(u.kind===`update`?`Snippet save failed`:`Snippet delete failed`)}finally{p(!1),y()}}},x=(0,Z.jsx)(mt,{open:u!==null,onOpenChange:e=>!e&&!f&&y(),children:(0,Z.jsxs)(ct,{"data-testid":Ri,children:[(0,Z.jsxs)(pt,{children:[(0,Z.jsx)(st,{children:u?.kind===`delete`?`Confirm snippet deletion`:`Update this snippet?`}),(0,Z.jsx)(ot,{children:u?.kind===`delete`?(0,Z.jsxs)(Z.Fragment,{children:[`You’re about to delete the “`,(0,Z.jsx)(`strong`,{children:u.snippet.name}),`” snippet. This is permanent, and will delete the snippet for all staff users. It will`,` `,(0,Z.jsx)(`strong`,{children:`not`}),` change any posts where you’ve used this snippet in the past.`]}):(0,Z.jsxs)(Z.Fragment,{children:[`“`,(0,Z.jsx)(`strong`,{children:u?.snippet.name}),`” will be overwritten. Don’t worry, this will only affect using the snippet in the future. Any older posts using this snippet will stay the same.`]})})]}),(0,Z.jsxs)(dt,{children:[(0,Z.jsx)(q,{disabled:f,variant:`outline`,onClick:y,children:`Cancel`}),(0,Z.jsx)(q,{disabled:f,variant:u?.kind===`delete`?`destructive`:`default`,onClick:()=>void b(),children:u?.kind===`delete`?`Delete snippet`:`Update`})]})]})});return{snippets:g,createSnippet:e?_:void 0,deleteSnippet:e?v:void 0,snippetDialog:x}}function t_(){return(0,Z.jsx)(G,{align:`center`,className:`h-full`,justify:`center`,children:(0,Z.jsx)(tn,{size:`lg`})})}function n_({message:e,onRetry:t}){return(0,Z.jsxs)(G,{align:`center`,className:`h-full`,"data-testid":di,justify:`center`,children:[(0,Z.jsx)(K,{tone:`secondary`,children:e}),(0,Z.jsx)(q,{variant:`outline`,onClick:t,children:`Retry`})]})}function r_({postType:e,analyticsReturn:t,children:n}){let r=e===`page`?`Pages`:`Posts`,i=Ee(e===`page`?`pages`:`posts`),a=t?`Analytics`:r;return(0,Z.jsxs)(Te,{align:`center`,className:`grid-cols-[auto_minmax(0,1fr)] pt-[calc(var(--spacing)*5+1px)] pr-[calc(var(--spacing)*(4+2*var(--editor-settings-progress,0)))] pb-3 pl-4 sm:grid-cols-[auto_minmax(0,1fr)_auto] [&_a]:pointer-events-auto [&_button]:pointer-events-auto`,gap:`sm`,children:[(0,Z.jsx)(nn.Action,{className:`bg-background/80 backdrop-blur-sm`,fallbackSize:`sm`,fallbackVariant:`ghost`,label:a,asChild:!0,children:t?(0,Z.jsxs)(Dr,{to:t,children:[(0,Z.jsx)(je,{}),a]}):(0,Z.jsxs)(Dr,{state:wn(i),to:i,children:[(0,Z.jsx)(je,{}),a]})}),n]})}function i_(e,t){if(!e)return t?{status:`draft`}:void 0;let n=`email`in e?e.email:null,r=`newsletter`in e?e.newsletter??null:null;return{status:e.status,publishedAt:e.published_at,url:e.url,emailOnly:`email_only`in e?e.email_only:!1,newsletter:r,emailSegment:`email_segment`in e?e.email_segment:null,hasEmail:!!n,emailStatus:n?.status??null,emailCount:n?.email_count??0}}function a_({postType:e,record:t,createdId:n,cardConfig:r,currentUser:i,showExcerpt:a,snippetDialog:o}){let s=dg({postType:e,record:t,siteUrl:r.siteUrl,currentUserId:i?.id}),[c,l]=(0,X.useState)(0),[u,d]=(0,X.useState)(`none`),f=(0,X.useCallback)(()=>d(`publish`),[]),p=(0,X.useCallback)(()=>d(`update`),[]),{data:m}=Qn({defaultErrorHandler:!1,enabled:!1,requestOptions:Q,searchParams:Do}),h=Ud({snapshot:{id:s.persistedId,status:s.publishTime.status,publishedAt:s.publishTime.publishedAt,title:s.title},record:s.loadedRecord,access:s.settings,knownTiers:m?.tiers,displayName:e,lexical:s.getLiveLexical()}),g=!!i&&!En(i)&&!!zl(h),_=!!i&&!kn(i),v=H(),y=t?pr(v.state):void 0,b=i_(s.loadedRecord??t,n),x=e===`post`&&(b?.status===`published`||b?.status===`sent`)&&b.emailStatus===`failed`,[S,C]=(0,X.useState)(!1),[w,T]=(0,X.useState)(!1),E=(0,X.useRef)(null),D=(0,X.useRef)(null),[O,k]=(0,X.useState)(0);(0,X.useLayoutEffect)(()=>{let e=D.current;if(!e)return;let t=()=>k(e.getBoundingClientRect().width);t();let n=new ResizeObserver(t);return n.observe(e),()=>n.disconnect()},[]),(0,X.useLayoutEffect)(()=>{if(S||!w)return;let e=()=>{T(!1)},t=E.current?.getAnimations()??[];if(!t.length){e();return}let n=!1;return Promise.allSettled(t.map(e=>e.finished)).then(()=>{n||e()}),()=>{n=!0}},[S,w]);let A=(0,X.useRef)(null),[j,M]=(0,X.useState)(0);(0,X.useLayoutEffect)(()=>{let e=A.current;if(!e)return;let t=()=>M(e.getBoundingClientRect().height);t();let n=new ResizeObserver(t);return n.observe(e),()=>n.disconnect()},[]);let N=(0,X.useCallback)(()=>{D.current?.focus(),T(!0),C(e=>!e)},[]),P=(0,X.useRef)(null),F=(0,X.useRef)(null),I=(0,X.useCallback)(()=>{let e=rc(s.bind.title)?`title`:cc.find(e=>dc(e,s.settings));return e===`title`?P.current?.focusTitle():e===`custom_excerpt`&&a?P.current?.focusExcerpt():e&&e!==`email_subject`&&((0,ii.flushSync)(()=>{T(!0),C(!0)}),e===`custom_excerpt`&&F.current?.focus()),e!==void 0},[s.bind.title,s.settings,a]),ee=sh(s,s.loadedRecord,s.contentKey),L=xh(s,e),R=s.settings.visibility,z=s.settings.show_title_and_feature_image,te=(0,X.useMemo)(()=>Eo(r,{visibility:R,showTitleAndFeatureImage:z}),[r,z,R]),ne=(0,Z.jsx)(nn.Action,{ref:D,"aria-expanded":S,className:S?`bg-transparent enabled:aria-expanded:bg-transparent enabled:aria-expanded:shadow-none enabled:aria-expanded:hover:bg-sidebar-accent`:`bg-background/80 backdrop-blur-sm`,"data-testid":Bi,fallbackSize:`sm`,fallbackVariant:`ghost`,label:`Settings`,tooltip:!1,iconOnly:!0,onClick:N,children:(0,Z.jsx)(Oe,{})});return(0,Z.jsxs)(W,{ref:E,align:`stretch`,className:`relative h-full min-h-0 transition-[--editor-settings-progress] duration-450 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none`,gap:`none`,style:{"--editor-header-height":`${j}px`,"--editor-overlap":`0px`,"--editor-settings-progress":+!!S,"--editor-settings-toggle-width":`${O}px`},children:[(0,Z.jsxs)(G,{className:`min-h-0 min-w-0 flex-1`,gap:`none`,children:[(0,Z.jsx)(we,{ref:A,className:`pointer-events-none relative z-20 shrink-0`,children:(0,Z.jsxs)(r_,{analyticsReturn:y,postType:e,children:[!y||x||s.state.kind===`error`?(0,Z.jsx)(ad,{isDirty:s.isDirty(),record:b,state:s.state,onOpenPublishFlow:g?f:void 0,onOpenUpdateFlow:_?p:void 0}):null,(0,Z.jsxs)(nn.ActionGroup,{className:`ml-auto gap-x-[calc(var(--spacing)*3*(1-var(--editor-settings-progress)))] max-sm:col-start-2 max-sm:row-start-1 sm:col-start-3`,children:[(0,Z.jsx)(Zu,{currentUser:i,offersEmailRetry:g,openFlow:u,post:h,postType:e,revealInvalidField:I,session:s,siteUrl:r.siteUrl,tkCount:c,onOpenFlow:d}),(0,Z.jsx)(we,{"aria-hidden":`true`,className:`w-[calc((var(--editor-settings-toggle-width)+var(--spacing)*2+1px)*(1-var(--editor-settings-progress)))] shrink-0`})]})]})}),(0,Z.jsxs)(we,{className:`peer shrink-0`,children:[(0,Z.jsx)(Qd,{contentText:s.contentText,hasUnsavedContent:s.hasUnsavedContent,newerVersionAvailable:s.newerVersionAvailable,pendingSave:s.pendingSave,state:s.state,onReload:s.reload,onRetrySave:s.retrySave}),(0,Z.jsx)(Fs,{email:i?.email??``,open:s.state.kind===`reauth-pending`,onAbandoned:s.reauthAbandoned,onSucceeded:s.reauthSucceeded})]}),(0,Z.jsx)(we,{className:`relative min-h-0 flex-1 peer-empty:[--editor-overlap:var(--editor-header-height)]`,children:(0,Z.jsx)(`div`,{className:`-mt-(--editor-overlap) h-[calc(100%+var(--editor-overlap))] min-h-0`,children:(0,Z.jsx)(Hd,{...s.bind,autofocusTitle:!t,cardConfig:te,excerptError:dc(`custom_excerpt`,s.settings),featureImage:ee,handleRef:P,postType:e,showExcerpt:a,titleAndFeatureImageHidden:e===`page`&&z===!1,titleError:rc(s.bind.title),wordCountAccessory:(0,Z.jsx)(od,{post:h}),onExcerptBlur:s.commitField,onTkCountChange:l},s.contentKey)})})]}),(0,Z.jsx)(we,{className:`absolute top-[calc(var(--spacing)*5+1px)] right-[calc(var(--spacing)*6+1px)] z-40`,children:ne}),w?(0,Z.jsx)(eh,{cardConfig:te,currentUser:i,excerptRef:F,featureImage:ee.featureImage,hasInlineExcerpt:a,postType:e,session:s,siteUrl:r.siteUrl}):null,o,(0,Z.jsx)(Kn,{testId:Fi,...L.dialogProps})]})}function o_({postType:e,record:t,createdId:n}){let{data:r}=x({requestOptions:Q}),i=cr(`editorExcerpt`,{requestOptions:Q}),{snippets:a,createSnippet:o,deleteSnippet:s,snippetDialog:c}=e_({canManage:!!r&&(Dn(r)||jn(r)||Nn(r))}),[l]=(0,X.useState)(()=>({displayName:e,showTitleAndFeatureImage:t&&`show_title_and_feature_image`in t?t.show_title_and_feature_image:void 0,visibility:t?.visibility})),{cardConfig:u,failed:d,retry:f}=Cg({post:l,snippets:a,createSnippet:o,deleteSnippet:s});return u?(0,Z.jsx)(a_,{cardConfig:u,createdId:n,currentUser:r,postType:e,record:t,showExcerpt:i,snippetDialog:c}):d?(0,Z.jsx)(n_,{message:`Couldn’t load the editor.`,onRetry:f}):(0,Z.jsx)(t_,{})}function s_(e,t){let n=t.authors?.some(t=>t.id===e.id)??!1;return En(e)&&!n?!0:kn(e)&&t.status!==`draft`}function c_(e){let{mutateAsync:t}=ae(),{mutateAsync:n}=Jn(),[r,i]=(0,X.useState)(null);return{state:r,convert:(0,X.useCallback)(async r=>{let a={id:r.id,updated_at:r.updated_at},o={convertToLexical:!0};i({id:r.id});try{let s=e===`page`?(await n({page:a,options:o,...Q})).pages[0]:(await t({post:a,options:o,...Q})).posts[0];i(s?{id:r.id,record:s}:{id:r.id,error:!0})}catch(e){i({id:r.id,error:e})}},[n,t,e])}}function l_({postType:e,id:t}){let[n]=(0,X.useState)(t),[r,i]=(0,X.useState)(),a=he(),{pathname:o,search:s}=H(),{data:c}=x({requestOptions:Q}),l=ce(n??``,{enabled:e===`post`&&!!n,defaultErrorHandler:!1,requestOptions:Q}),u=Zn(n??``,{enabled:e===`page`&&!!n,defaultErrorHandler:!1,requestOptions:Q}),d=e===`page`?u:l,f=e===`page`?u.data?.pages[0]:l.data?.posts[0],{state:p,convert:m}=c_(e),g=e===`page`?`/pages`:`/posts`,_=r||f?null:d.error,v=_ instanceof w;(0,X.useEffect)(()=>{v&&or(`${o}${s}`)},[v,o,s]);let y=r?void 0:f,b=!!c&&!!y&&s_(c,y);(0,X.useEffect)(()=>{b&&a(g,{replace:!0})},[b,a,g]);let S=!!c&&!!y?.mobiledoc&&!y.lexical&&!b;if((0,X.useEffect)(()=>{S&&y&&p?.id!==y.id&&m(y)},[S,y,p?.id,m]),!n)return(0,Z.jsx)(o_,{createdId:t,postType:e});if(r)return(0,Z.jsx)(o_,{postType:e,record:r});if(_ instanceof h&&_.response?.status===404)return(0,Z.jsx)(Ar,{});if(v)return(0,Z.jsx)(t_,{});if(_)return(0,Z.jsx)(n_,{message:`Couldn’t load this ${e}.`,onRetry:()=>void d.refetch()});if(d.isPending||!c||b)return(0,Z.jsx)(t_,{});if(!f)return(0,Z.jsx)(Ar,{});let C=f;if(S){let t=p?.id===f.id?p:void 0;if(t?.error)return(0,Z.jsx)(n_,{message:`Couldn’t convert this ${e} for editing.`,onRetry:()=>void m(f)});if(!t?.record)return(0,Z.jsx)(t_,{});C=t.record}return d.isFetching||i(C),(0,Z.jsx)(o_,{postType:e,record:C})}function u_(){let e=me()[`*`]??``,{key:t,markCreated:n}=vh(),[r,i,...a]=e.split(`/`).filter(Boolean);return r?r!==`post`&&r!==`page`||a.length>0?(0,Z.jsx)(Ar,{}):(0,Z.jsx)(mh,{value:t,children:(0,Z.jsx)(hh,{value:n,children:(0,Z.jsx)(l_,{id:i,postType:r},t)})}):(0,Z.jsx)(ge,{to:`/editor/post`,replace:!0})}export{u_ as default};
18
+ `;function bc(e){let t=`<style>${yc}</style>`;return e.includes(`</head>`)?e.replace(`</head>`,`${t}</head>`):`${e}${t}`}function xc(e,t,n){if(!le(n))return e||t;if(!ue(n))return t;let r=n.hostSettings?.managedEmail?.sendingDomain;return e&&e.split(`@`)[1]===r?e:t}function Sc({post:e}){let t=Cs(e);return t?.overLimit?(0,Z.jsxs)(W,{align:`start`,className:`border-b border-border-default bg-state-warning/10 p-4`,"data-testid":ki,gap:`md`,children:[(0,Z.jsx)(Me,{className:`size-5 shrink-0 text-state-warning`}),(0,Z.jsxs)(G,{gap:`xs`,children:[(0,Z.jsxs)(K,{size:`sm`,weight:`semibold`,children:[`This newsletter is `,(0,Z.jsxs)(`span`,{className:`text-state-warning`,children:[t.sizeKb,`kB`]})]}),(0,Z.jsx)(K,{size:`sm`,tone:`secondary`,children:`Emails may get clipped in the inbox behind a “View entire message” link when they’re over 100kB.`})]})]}):null}function Cc({subjectEditor:e,postId:t,post:n,audience:r,tierName:i,canSendTestEmail:a,device:o,newsletters:s,newsletterSlug:c,newsletterLookupError:l=!1,newsletterLookupPending:u=!1,newsletterMissing:d=!1,onNewsletterChange:f,onRetryNewsletterLookup:p}){let{data:m}=jo(),{data:h}=de({requestOptions:Q}),[g]=hr(m?.settings??[],[`default_email_address`]),{data:_,isError:v,isFetching:y,refetch:b}=Ir(t,{...us(r),enabled:!l&&!u&&!d,newsletter:c,requestOptions:Q,staleTime:0}),x=_?.email_previews[0],S=s.find(e=>e.slug===c),C=h?.config,w=e=>C?xc(e,g??``,C):``;return(0,Z.jsx)(o===`mobile`?rn:we,{className:o===`desktop`?`size-full max-w-[720px] overflow-hidden rounded-xl shadow-xl`:`max-w-full shrink-0`,"data-testid":Ti,...o===`mobile`?{device:o}:{},children:(0,Z.jsxs)(G,{className:`size-full bg-background`,gap:`none`,children:[(0,Z.jsxs)(Te,{align:`center`,className:`grid-cols-[auto_minmax(0,1fr)] border-b border-border-default p-4 [--control-height:28px]`,gap:`md`,children:[(0,Z.jsx)(`span`,{className:`text-sm text-muted-foreground`,children:`From`}),(0,Z.jsxs)(W,{className:`min-w-0`,gap:`lg`,justify:`between`,children:[(0,Z.jsx)(we,{className:`min-w-0 flex-1`,children:u?(0,Z.jsx)(tn,{size:`sm`}):l?(0,Z.jsx)(`p`,{className:`min-w-0 truncate text-sm text-muted-foreground`,children:`Couldn’t load newsletters`}):d?(0,Z.jsx)(`p`,{className:`min-w-0 truncate text-sm text-muted-foreground`,"data-testid":Ni,children:`This newsletter no longer exists`}):s.length>1?(0,Z.jsxs)(pn,{value:S?.slug,onValueChange:f,children:[(0,Z.jsx)(un,{"aria-label":`Newsletter`,className:`w-auto max-w-full min-w-0 [&>span]:min-w-0 [&>span]:truncate [&>svg]:shrink-0`,title:`${S?.name??``} <${w(S?.sender_email??null)}>`,children:(0,Z.jsx)(fn,{})}),(0,Z.jsx)(ln,{children:s.map(e=>(0,Z.jsxs)(cn,{value:e.slug,children:[e.name,` <`,w(e.sender_email),`>`]},e.id))})]}):(0,Z.jsxs)(`p`,{className:`min-w-0 truncate text-sm`,"data-testid":Di,children:[S?.name,` `,(0,Z.jsxs)(`span`,{className:`text-muted-foreground`,children:[`<`,w(S?.sender_email??null),`>`]})]})}),a&&(0,Z.jsx)(Rs,{audience:r,audienceLabel:ds(r,i),disabled:l||u||d||e?.hasUnsavedChanges||e?.isSaving,newsletterSlug:c,postId:t})]}),(0,Z.jsx)(`span`,{className:`self-start text-sm leading-(--control-height) text-muted-foreground`,children:`Subject`}),e&&o===`desktop`?(0,Z.jsx)(vc,{editor:e}):(0,Z.jsx)(`p`,{className:`min-w-0 truncate text-sm`,"data-testid":Oi,children:e?e.value||e.fallback:!y&&x?.subject})]}),n?(0,Z.jsx)(Sc,{post:n}):null,u||y?(0,Z.jsx)(W,{className:`grow`,gap:`none`,justify:`center`,children:(0,Z.jsx)(tn,{size:`md`})}):l?(0,Z.jsx)(It,{actions:(0,Z.jsx)(q,{variant:`outline`,onClick:p,children:`Retry`}),className:`grow justify-center`,"data-testid":Pi,description:`The newsletters could not be loaded.`,title:`Couldn’t load newsletters`,children:(0,Z.jsx)(De,{})}):v?(0,Z.jsx)(It,{actions:(0,Z.jsx)(q,{variant:`outline`,onClick:()=>void b(),children:`Retry`}),className:`grow justify-center`,description:`The email preview could not be loaded.`,title:`Couldn’t load the email preview`,children:(0,Z.jsx)(De,{})}):d?(0,Z.jsx)(It,{className:`grow justify-center`,description:`Choose an active newsletter before sending this post.`,title:`Newsletter unavailable`,children:(0,Z.jsx)(Me,{})}):(0,Z.jsx)(`iframe`,{className:`min-h-0 grow border-0`,"data-testid":Ei,sandbox:`allow-popups allow-popups-to-escape-sandbox`,srcDoc:bc(x?.html??``),title:`Email preview`})]})})}function wc({subjectEditor:e,open:t,animate:n=!0,postId:r,previewUrl:i,isPost:a=!0,post:o,newsletterSlug:s,fallbackNewsletterSlug:c,onBeforeOpen:l,onPublish:u,publishDisabled:d=!1,onOpenChange:f}){let[p,m]=(0,X.useState)(`browser`),[h,g]=(0,X.useState)(`desktop`),[_,v]=(0,X.useState)(`free`),[y,b]=(0,X.useState)(null),[S,C]=(0,X.useState)(null),[w,T]=(0,X.useState)(()=>l&&t?`preparing`:`ready`),[E,D]=(0,X.useState)(``),[O,k]=(0,X.useState)(t),{data:A}=x({requestOptions:Q}),{data:j}=jo(),M=sr({requestOptions:Q}),N=mr({requestOptions:Q}),P=ur(j?.settings??[],`members_enabled`)===!0,F=a&&P&&!!N&&!!A&&!kn(A),I=!!A&&(Dn(A)||jn(A)||Nn(A)),ee=M===!0&&!!A&&!kn(A),{data:L}=Qn({searchParams:Oo,enabled:t&&w===`ready`&&ee,requestOptions:Q}),z=(0,X.useMemo)(()=>L?.tiers??[],[L]),{data:te,fetchNextPage:ne,hasNextPage:re,isError:ie,isFetching:ae,isFetchingNextPage:oe,refetch:B}=Un({searchParams:ko(A),enabled:t&&w===`ready`&&F,requestOptions:Q});(0,X.useEffect)(()=>{re&&!oe&&!ie&&ne()},[ie,ne,re,oe]);let se=ae||re||oe,ce=(0,X.useMemo)(()=>(te?.newsletters??[]).filter(e=>e.status===`active`),[te]),le=!!te&&!ie&&!se&&!!s&&!ce.some(e=>e.slug===s),{data:ue,isError:de,isFetching:fe,refetch:pe}=Un({searchParams:{filter:`slug:${s??``}`,limit:`1`},enabled:t&&w===`ready`&&F&&le,requestOptions:Q,staleTime:0}),V=le&&ue?ue.newsletters.find(e=>e.slug===s):void 0,me=le&&!de&&!!ue&&!V,H=ie||le&&de,he=F&&(se||!te&&!ie)||le&&(fe||!ue&&!de),ge=(0,X.useMemo)(()=>V?[V,...ce]:ce,[ce,V]),_e=(0,X.useRef)(l),ve=(0,X.useRef)(null);_e.current=l,t!==O&&(k(t),ve.current=null,T(t&&l?`preparing`:`ready`),t&&C(null)),(0,X.useEffect)(()=>{if(!t||w!==`preparing`)return;let e=_e.current;if(!e){T(`ready`);return}let n=ve.current??=Promise.resolve().then(e),r=!1;return n.then(()=>{r||T(`ready`)},e=>{r||(D(is(e).message),T(`failed`))}),()=>{r=!0}},[t,w]);let ye=(0,X.useMemo)(()=>{let e=p===`email`?[{label:`Free member`,value:`free`}]:[{label:`Public visitor`,value:`anonymous`},{label:`Free member`,value:`free`}];return M&&(e.push({label:`Paid member`,value:`paid`}),z.length>0&&e.push({label:`Specific tier`,value:`tier`})),e},[p,M,z.length]),be=z.find(e=>e.active)??z[0],xe=y??be?.slug,Se=z.find(e=>e.slug===xe),Ce=z.filter(e=>e.active),we=z.filter(e=>!e.active),Te=S??s??c??ge[0]?.slug,K=()=>{ve.current=null,T(`preparing`)},Ee=()=>{ie&&B(),de&&pe()},Oe={segment:_,tierSlug:xe},ke=ls(i,Oe),Ae=w===`ready`&&!!ke,je=p===`browser`||ye.length>1,Me=_===`tier`&&z.length>0,Ne=p===`email`&&F,Pe=e=>{m(e),e===`email`&&_===`anonymous`&&v(`free`)},Ie=async()=>{try{await navigator.clipboard.writeText(ke),R.success(`Preview link copied`)}catch{R.error(`Could not copy the preview link`)}};return(0,Z.jsx)(Fo,{animate:n,"aria-describedby":void 0,"data-testid":Si,headerActions:(0,Z.jsxs)(nn.ActionGroup,{children:[(0,Z.jsxs)(yr,{children:[(0,Z.jsx)(jr,{asChild:!0,children:(0,Z.jsx)(nn.Action,{disabled:!Ae,label:`Share`,iconOnly:!0,children:(0,Z.jsx)(ze,{})})}),(0,Z.jsxs)(kr,{align:`end`,children:[(0,Z.jsxs)(xr,{onSelect:()=>void Ie(),children:[(0,Z.jsx)(Qe,{}),`Copy preview link`]}),(0,Z.jsx)(xr,{asChild:!0,children:(0,Z.jsxs)(`a`,{href:ke,rel:`noopener noreferrer`,target:`_blank`,children:[(0,Z.jsx)(Fe,{}),`Open in new tab`]})})]})]}),(0,Z.jsx)(q,{variant:`ghost`,onClick:()=>f(!1),children:`Close`}),u?(0,Z.jsx)(q,{className:`w-20 shrink-0`,disabled:d,onClick:u,children:`Publish`}):null]}),headerControls:(0,Z.jsxs)(W,{className:`min-w-0`,gap:`md`,children:[F&&(0,Z.jsx)(_n,{value:p,variant:`segmented`,onValueChange:e=>Pe(e),children:(0,Z.jsxs)(gn,{className:`rounded-full`,children:[(0,Z.jsx)(hn,{className:`rounded-full`,value:`browser`,children:`Web`}),(0,Z.jsx)(hn,{className:`rounded-full`,value:`email`,children:`Email`})]})}),(0,Z.jsxs)(bn,{className:`hidden shrink-0 sidebar:flex`,shape:`pill`,type:`single`,value:h,onValueChange:e=>{(e===`desktop`||e===`mobile`)&&g(e)},children:[(0,Z.jsx)(yn,{"aria-label":`Desktop`,value:`desktop`,children:(0,Z.jsx)(qe,{})}),(0,Z.jsx)(yn,{"aria-label":`Mobile`,value:`mobile`,children:(0,Z.jsx)(Be,{})})]}),je&&(0,Z.jsxs)(pn,{value:_,onValueChange:e=>v(e),children:[(0,Z.jsx)(nn.SelectTrigger,{className:`hidden shrink-0 md:flex`,label:`Preview as`,shape:`pill`,variant:`ghost`,showChevron:!0,children:(0,Z.jsx)(fn,{})}),(0,Z.jsx)(ln,{children:ye.map(e=>(0,Z.jsx)(cn,{value:e.value,children:e.label},e.value))})]}),Me&&(0,Z.jsxs)(pn,{value:xe,onValueChange:b,children:[(0,Z.jsx)(nn.SelectTrigger,{className:`hidden max-w-[240px] min-w-0 md:flex [&>span]:min-w-0 [&>span]:truncate`,label:`Tier`,shape:`pill`,title:Se?.name,variant:`ghost`,showChevron:!0,children:(0,Z.jsx)(fn,{})}),(0,Z.jsxs)(ln,{children:[Ce.length>0&&(0,Z.jsxs)(dn,{children:[(0,Z.jsx)(sn,{children:`Active tiers`}),Ce.map(e=>(0,Z.jsx)(cn,{value:e.slug,children:e.name},e.id))]}),we.length>0&&(0,Z.jsxs)(dn,{children:[(0,Z.jsx)(sn,{children:`Archived tiers`}),we.map(e=>(0,Z.jsx)(cn,{value:e.slug,children:e.name},e.id))]})]})]})]}),layout:`header`,open:t,title:`Preview`,onOpenChange:f,children:(0,Z.jsx)(W,{align:`start`,className:U(`min-h-0 overflow-auto`,Ne||h===`mobile`?`bg-muted`:`bg-surface-panel`,(Ne||h===`mobile`)&&`p-6`),gap:`none`,justify:`center`,children:w===`preparing`?(0,Z.jsx)(W,{align:`center`,"aria-label":`Preparing preview`,className:`grow self-center`,gap:`none`,justify:`center`,role:`status`,children:(0,Z.jsx)(tn,{size:`lg`})}):w===`failed`?(0,Z.jsx)(It,{actions:(0,Z.jsxs)(G,{className:`w-[320px] max-w-full`,gap:`md`,children:[F&&e&&(0,Z.jsxs)(G,{className:`text-left`,gap:`xs`,children:[(0,Z.jsx)(`span`,{className:`text-sm text-muted-foreground`,children:`Email subject`}),(0,Z.jsx)(vc,{editor:{...e,saveError:null,onCommit:K}})]}),(0,Z.jsx)(q,{className:`self-center`,variant:`outline`,onClick:K,children:`Retry`})]}),className:`grow justify-center self-center`,"data-testid":Fi,description:(0,Z.jsx)(`span`,{role:`alert`,children:E}),title:`Couldn’t preview this post`,children:(0,Z.jsx)(De,{})}):Ne?(0,Z.jsx)(Cc,{audience:Oe,canSendTestEmail:I,device:h,newsletterLookupError:H,newsletterLookupPending:he,newsletterMissing:me&&Te===s,newsletters:ge,newsletterSlug:Te,post:o,postId:r,subjectEditor:e,tierName:Se?.name,onNewsletterChange:C,onRetryNewsletterLookup:Ee}):(0,Z.jsx)(ps,{audience:Oe,device:h,previewUrl:i,onEscape:()=>f(!1)})})})}function Tc({post:e,siteTitle:t}){return(0,Z.jsxs)(`a`,{className:`block overflow-hidden rounded-lg border border-border-default`,"data-testid":lo,href:e.url??`#`,rel:`noopener noreferrer`,target:`_blank`,children:[e.featureImage?(0,Z.jsx)(`div`,{className:`aspect-video bg-cover bg-center`,style:{backgroundImage:`url(${e.featureImage})`}}):null,(0,Z.jsxs)(G,{className:`p-6`,gap:`xs`,children:[(0,Z.jsx)(K,{as:`h3`,className:`text-pretty`,size:`lg`,weight:`bold`,children:e.title}),e.excerpt?(0,Z.jsx)(K,{className:`line-clamp-2 text-pretty`,size:`lg`,tone:`secondary`,children:e.excerpt}):null,t?(0,Z.jsx)(K,{size:`lg`,tone:`secondary`,children:t}):null]})]})}var Ec=e(ve(),1);function Dc(e){return e===1?`subscriber`:`subscribers`}function Oc(e){return e.charAt(0).toUpperCase()+e.slice(1)}function kc(e){return e.filter(e=>!!e).join(` `)}function Ac({recipientType:e,count:t,newsletterName:n}){let r=t==null,i=e===`all`;return kc([i&&(r||t>1)?`All`:null,r?null:_e(t),i?null:r?Oc(e):e,Dc(t),n?`of ${n}`:null])}function jc({recipientType:e,count:t}){let n=t==null,r=e===`all`;return kc([r?`all`:null,n?null:_e(t),r?null:e,Dc(t)])}var Mc={"publish+send":{idle:`Publish & send`,running:`Publishing & sending`},send:{idle:`Send email`,running:`Sending`},publish:{idle:`Publish`,running:`Publishing`},schedule:{running:`Scheduling`}};function Nc({publishType:e,isScheduled:t,scheduledAt:n,displayName:r,timezone:i}){let a=Mc[e].idle;return e===`publish`&&(a+=` ${r}`),t?a+=`, on ${Ec.default.tz(n,i).format(`MMMM Do`)}`:a+=`, right now`,a}function Pc(e,t){return Mc[t?`schedule`:e].running}function Fc({willPublish:e,willEmail:t,willOnlyEmail:n}){return e&&t?`publish+send`:n?`send`:`publish`}function Ic(e,t){let n=Ec.default.tz(e,t);return new Date(n.year(),n.month(),n.date())}function Lc(e,t){return(0,Ec.default)(e).from(t?(0,Ec.default)(t):Ec.default.utc())}function Rc(e,t){return Ec.default.tz(e,t).format(`D MMM YYYY [at] HH:mm`)}function zc(e,t){let n=Ec.default.tz(e,t);return`${n.isSame(Ec.default.tz(t),`day`)?`today`:`on ${n.format(`MMMM Do`)}`} at ${n.format(`HH:mm`)}`}function Bc({onRevertToDraft:e}){return e?(0,Z.jsxs)(G,{gap:`md`,children:[(0,Z.jsx)(K,{size:`lg`,children:`Need to make a change?`}),(0,Z.jsx)(W,{children:(0,Z.jsx)(q,{className:`h-auto min-h-11 max-w-full px-5 py-2 whitespace-normal`,"data-testid":po,size:`lg`,variant:`outline`,onClick:e,children:`Unschedule and revert to draft →`})})]}):null}function Vc({post:e,state:t,captured:n,timezone:r,siteTitle:i,postCount:a,completedAt:o,note:s,onRevertToDraft:c}){let{count:l}=L(t.fullRecipientFilter,{requestOptions:Q}),u=n.willOnlyEmail,d=n.isScheduled?t.scheduledAt:o??e.publishedAt??t.scheduledAt,f=u?`sent`:n.willEmail?`published and sent`:`published`,p=!!s;return(0,Z.jsxs)(G,{"data-testid":Ua,gap:`xl`,children:[s?(0,Z.jsx)(Mr,{"data-testid":uo,role:`status`,variant:`warning`,children:s}):null,(0,Z.jsx)(K,{as:`h2`,className:`text-5xl leading-tighter tracking-tight`,weight:`bold`,children:n.isScheduled?(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(`span`,{className:`block text-state-success`,children:`All set!`}),` Your`,` `,u?`email`:e.displayName,` will be `,f,` `,zc(d,r),`.`]}):(0,Z.jsxs)(Z.Fragment,{children:[u&&p?null:(0,Z.jsx)(`span`,{className:`block text-state-success`,children:`Boom. It’s out there. `}),u?p?(0,Z.jsxs)(Z.Fragment,{children:[`Your `,e.displayName,` has been created.`]}):`Your email has been sent.`:e.displayName===`post`&&a?(0,Z.jsxs)(Z.Fragment,{children:[`That’s `,_e(a),` `,a===1?`post`:`posts`,` published, keep going!`]}):(0,Z.jsxs)(Z.Fragment,{children:[`Your `,e.displayName,` has been published.`]})]})}),u?(0,Z.jsxs)(G,{gap:`xl`,children:[p?null:(0,Z.jsxs)(K,{className:`text-pretty`,size:`lg`,children:[`Your post `,n.isScheduled?`will be`:`was`,` sent to`,` `,(0,Z.jsx)(`strong`,{children:jc({recipientType:F(t.recipientFilter),count:l})}),t.onlyDefaultNewsletter?null:(0,Z.jsxs)(Z.Fragment,{children:[` `,`of `,(0,Z.jsx)(`strong`,{children:t.newsletter?.name})]}),` `,`on `,Rc(d,r),`.`]}),n.isScheduled?(0,Z.jsx)(Bc,{onRevertToDraft:c}):null]}):(0,Z.jsxs)(G,{gap:`xl`,children:[(0,Z.jsx)(Tc,{post:e,siteTitle:i}),n.isScheduled?(0,Z.jsx)(Bc,{onRevertToDraft:c}):(0,Z.jsx)(W,{children:(0,Z.jsx)(q,{className:`px-5`,size:`lg`,variant:`outline`,asChild:!0,children:(0,Z.jsxs)(`a`,{"data-testid":fo,href:`#/analytics`,children:[(0,Z.jsx)(je,{}),`Back to dashboard`]})})})]})]})}var Hc=1e3,Uc=15*1e3;function Wc(e){return!!e&&e.includes(`partially`)}function Gc(e){let t=e?.error??null;return{kind:`failed`,error:t,partial:Wc(t)}}function Kc(e){let{reload:t,retry:n}=e,r=e.setTimeout??((e,t)=>setTimeout(e,t)),i=e.clearTimeout??(e=>clearTimeout(e)),a=null;function o(e,t){return new Promise(n=>{let i=!1,a=()=>{i||(i=!0,e.timer=null,e.release=null,n())};e.release=a;let o=r(a,t);i||(e.timer=o)})}function s(e){e.cancelled=!0,e.timer!==null&&(i(e.timer),e.timer=null),e.release?.(),e.release=null,e.settleCancelled()}function c(){a&&=(s(a.state),null)}async function l(e,{stopWhenUnpublished:n}){let r=0;for(;r<Uc;){if(await o(e,Hc),e.cancelled)return{kind:`cancelled`};r+=Hc;let i=await t(e.postId);if(e.cancelled)return{kind:`cancelled`};if(n&&i.status!==`sent`&&i.status!==`published`)return{kind:`unpublished`};if(!i.email)return{kind:`not-needed`};if(i.email.status===`submitted`)return{kind:`submitted`};if(i.email.status===`failed`)return Gc(i.email)}return{kind:`timeout`}}function u(e,t,n){if(a){if(a.state.operation===e&&a.state.postId===t)return a.promise;s(a.state),a=null}let r=()=>{},i=new Promise(e=>{r=()=>e({kind:`cancelled`})}),o={operation:e,postId:t,cancelled:!1,timer:null,release:null,settleCancelled:r},c=Promise.race([n(o),i]),l=()=>{a?.state===o&&(a=null)};return a={state:o,promise:c},c.then(l,l),c}return{confirm(e,t){return u(`confirm`,e,e=>t&&!t.email?Promise.resolve({kind:`not-needed`}):t?.email?.status===`submitted`?Promise.resolve({kind:`submitted`}):l(e,{stopWhenUnpublished:!0}))},retryAndConfirm(e,t){return u(`retry`,e,async e=>(await n(t),e.cancelled?{kind:`cancelled`}:l(e,{stopWhenUnpublished:!1})))},cancel:c}}function qc({post:e,emailErrorMessage:t,willOnlyEmail:n,mailgunConfigured:r,status:i,retryFailure:a,onRetry:o}){let s=Wc(t);return(0,Z.jsxs)(G,{"data-testid":mo,gap:`xl`,children:[(0,Z.jsxs)(K,{as:`h2`,className:`text-5xl leading-tighter tracking-tight`,weight:`bold`,children:[(0,Z.jsx)(`span`,{className:`text-state-error block`,children:`Uh-oh.`}),` `,n?`Your post has been created but the email failed to send.`:`Your ${e.displayName} has been published but the email failed to send.`]}),(0,Z.jsxs)(K,{className:`text-pretty`,size:`lg`,children:[t,r?null:(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(`br`,{}),(0,Z.jsx)(`br`,{}),`If the error persists, please verify your email settings.`]})]}),a?(0,Z.jsx)(Mr,{"data-testid":go,role:`alert`,variant:`destructive`,children:a}):null,(0,Z.jsx)(W,{children:(0,Z.jsx)(q,{className:`h-auto min-h-11 max-w-full px-5 py-2 whitespace-normal`,"data-testid":ho,disabled:i===`running`,size:`lg`,variant:`destructive`,onClick:o,children:i===`running`?`Sending`:s?`Send remaining emails`:`Retry sending email`})})]})}var Jc=J({config:J({hostSettings:J({billing:J({upgradeUrl:Y().min(1).regex(/^(?:#?\/|https?:\/\/)/).optional()}).optional()}).optional()})});function Yc(e){return e.startsWith(`/`)?`#${e}`:e}function Xc(e){let t=Jc.safeParse(e),n=t.success?t.data.config.hostSettings?.billing?.upgradeUrl:void 0;return Yc(n?n.replace(/^#/,``):fe)}function Zc({parts:e}){let{data:t}=de({defaultErrorHandler:!1,requestOptions:Q}),n=Xc(t);return(0,Z.jsx)(Z.Fragment,{children:e.map(e=>e.kind===`upgrade`?(0,Z.jsx)(`a`,{className:`underline`,href:n,children:e.text},`${e.kind}:${e.text}`):(0,Z.jsx)(`span`,{children:e.text},`${e.kind}:${e.text}`))})}function Qc({failure:e}){return e.parts?(0,Z.jsx)(Zc,{parts:e.parts}):(0,Z.jsx)(Z.Fragment,{children:e.message})}function $c({post:e,state:t,captured:n,timezone:r,status:i,failure:a,onConfirm:o,onBack:s}){let{count:c}=L(t.fullRecipientFilter,{requestOptions:Q}),l=Fc(n),u=!t.onlyDefaultNewsletter&&t.newsletter?.name,d=jc({recipientType:F(t.recipientFilter),count:c}),f={idle:Nc({publishType:l,isScheduled:t.isScheduled,scheduledAt:t.scheduledAt,displayName:e.displayName,timezone:r}),running:Pc(l,t.isScheduled)};return(0,Z.jsxs)(G,{"data-testid":Ha,gap:`xl`,children:[(0,Z.jsxs)(G,{gap:`none`,children:[(0,Z.jsx)(K,{as:`h2`,className:`text-5xl leading-tighter tracking-tight text-state-success`,weight:`bold`,children:`Ready, set, publish.`}),(0,Z.jsx)(K,{as:`h2`,className:`text-5xl leading-tighter tracking-tight`,weight:`bold`,children:`Share it with the world.`})]}),(0,Z.jsxs)(K,{className:`text-pretty`,size:`lg`,children:[t.isScheduled?(0,Z.jsxs)(Z.Fragment,{children:[`On `,(0,Z.jsx)(`strong`,{children:Rc(t.scheduledAt,r)}),` your`]}):`Your`,` `,e.displayName,n.willPublish?(0,Z.jsxs)(Z.Fragment,{children:[` will be published on your site`,n.willEmail?`, and delivered to`:`.`]}):null,n.willEmail?(0,Z.jsxs)(Z.Fragment,{children:[n.willPublish?` `:` will be delivered to `,(0,Z.jsx)(`strong`,{children:d}),u?(0,Z.jsxs)(Z.Fragment,{children:[` `,`of `,(0,Z.jsx)(`strong`,{children:t.newsletter?.name})]}):null,n.willPublish?`.`:`,`,n.willPublish?null:(0,Z.jsxs)(Z.Fragment,{children:[` `,`and will `,(0,Z.jsx)(`strong`,{children:`not`}),` be published on your site.`]})]}):null]}),a?(0,Z.jsx)(Mr,{"data-testid":oo,role:`alert`,variant:`destructive`,children:(0,Z.jsx)(Qc,{failure:a})}):null,(0,Z.jsxs)(W,{gap:`sm`,justify:`between`,wrap:!0,children:[(0,Z.jsxs)(q,{"data-testid":co,disabled:i===`running`,size:`lg`,variant:`outline`,onClick:s,children:[(0,Z.jsx)(je,{}),`Back to settings`]}),(0,Z.jsx)(q,{className:`ml-auto h-auto min-h-11 max-w-full bg-state-success py-2 whitespace-normal text-white hover:bg-state-success/90`,"data-testid":ao,disabled:i===`running`,size:`lg`,onClick:o,children:i===`running`?f.running:f.idle})]})]})}function el({testId:e,title:t,children:n,onContinue:r,onBack:i}){return(0,Z.jsx)(jt,{open:!0,onOpenChange:e=>!e&&i(),children:(0,Z.jsxs)(kt,{"data-testid":e,children:[(0,Z.jsxs)(Ot,{children:[(0,Z.jsx)(At,{children:t}),(0,Z.jsx)(Dt,{children:n})]}),(0,Z.jsxs)(Et,{children:[(0,Z.jsx)(q,{variant:`outline`,onClick:r,children:`Continue to publish`}),(0,Z.jsx)(q,{onClick:i,children:`Back to editor`})]})]})})}var tl=J({tiers:Fn(J({slug:Y(),name:Y(),active:Rn()}))}),nl=J({labels:Fn(J({slug:Y(),name:Y()}))});function rl(e,t){let n=tl.safeParse(e),r=nl.safeParse(t);return{tiers:n.success?n.data.tiers:[],labels:r.success?r.data.labels:[]}}function il({filter:e}){let{count:t}=L(e,{requestOptions:Q});return t===null?null:(0,Z.jsxs)(K,{as:`span`,leading:`none`,size:`sm`,tone:`secondary`,children:[`(`,_e(t),`)`]})}function al({filter:e,newsletterRecipientFilter:t,paidAvailable:n,segmentOptions:r,onChange:i}){let a=(0,X.useId)(),o=P(e),[s,c]=(0,X.useState)(!1),[l,u]=(0,X.useState)(null),d=s||o.specific.length>0,f=(e,t)=>{i(j({base:e,specific:t},{paidAvailable:n}))},p=e=>{let t=o.base.includes(e)?o.base.filter(t=>t!==e):[...o.base,e];f(t,o.specific)},m=()=>{if(s&&o.specific.length===0){c(!1);return}if(c(!1),d){u(o.specific),f(o.base,[]);return}if(l){f(o.base,l);return}c(!0)},h=e=>{let t=o.specific.includes(e)?o.specific.filter(t=>t!==e):[...o.specific,e];t.length===0&&(u(null),c(!0)),f(o.base,t)},g=e=>t?`${t}+${e}`:e;return(0,Z.jsxs)(G,{gap:`md`,children:[(0,Z.jsxs)(G,{gap:`sm`,children:[(0,Z.jsxs)(W,{gap:`sm`,children:[(0,Z.jsx)(yt,{checked:o.free,"data-testid":Qa,id:`${a}-free`,onCheckedChange:()=>p(ee)}),(0,Z.jsxs)(Lt,{htmlFor:`${a}-free`,children:[`Free `,(0,Z.jsx)(il,{filter:g(ee)})]})]}),n?(0,Z.jsxs)(W,{gap:`sm`,children:[(0,Z.jsx)(yt,{checked:o.paid,"data-testid":$a,id:`${a}-paid`,onCheckedChange:()=>p(N)}),(0,Z.jsxs)(Lt,{htmlFor:`${a}-paid`,children:[`Paid `,(0,Z.jsx)(il,{filter:g(N)})]})]}):null,r.length>0?(0,Z.jsxs)(W,{gap:`sm`,children:[(0,Z.jsx)(yt,{checked:d,"data-testid":eo,id:`${a}-specific`,onCheckedChange:m}),(0,Z.jsx)(Lt,{htmlFor:`${a}-specific`,children:`Specific people`})]}):null]}),d?(0,Z.jsxs)(G,{"data-testid":to,gap:`sm`,children:[(0,Z.jsx)(K,{size:`sm`,weight:`medium`,children:`Selection`}),(0,Z.jsx)(Cn,{labels:r.map(e=>({id:e.segment,slug:e.segment,name:e.name,group:e.group})),optionSource:{options:r.map(e=>({value:e.segment,label:e.name})),isInitialLoad:!1,isSearching:!1,isLoadingMore:!1,hasMore:!1,loadMore:()=>{},shouldClientFilter:!0},placeholder:`Search labels and tiers...`,selectedSlugs:o.specific,onToggle:h})]}):null]})}var ol=zn({settingsData:J({settings:Fn(J({key:Y(),value:Hn()}))}),configData:J({config:J({stripeDirect:Rn()})})});function sl({state:e,onSetNewsletter:t,onSetRecipientFilter:n}){let r=(0,X.useId)(),{data:i}=jo(),{data:a}=de({defaultErrorHandler:!1,requestOptions:Q}),o=Qn({defaultErrorHandler:!1,requestOptions:Q,searchParams:Oo}),s=Gn({defaultErrorHandler:!1,requestOptions:Q,searchParams:{limit:`all`}}),{data:c,fetchNextPage:l,hasNextPage:u,isError:d,isFetchingNextPage:f}=s,{data:p,fetchNextPage:m,hasNextPage:h,isError:g,isFetchingNextPage:_}=o;(0,X.useEffect)(()=>{u&&!f&&!d&&l()},[l,u,f,d]),(0,X.useEffect)(()=>{h&&!_&&!g&&m()},[m,h,_,g]);let v=!s.isLoading&&!f&&(!u||d),y=!o.isLoading&&!_&&(!h||g),b=ol.safeParse({settingsData:i,configData:a}),x=b.success?(()=>{let{settings:e,config:t}={settings:b.data.settingsData.settings,config:b.data.configData.config},n=t=>e.some(e=>e.key===t&&!!e.value),r=n(`stripe_secret_key`)&&n(`stripe_publishable_key`),i=n(`stripe_connect_secret_key`)&&n(`stripe_connect_publishable_key`);return t.stripeDirect?r:i||r})():!1,S=(0,X.useMemo)(()=>{if(!v||!y)return[];let{tiers:e,labels:t}=rl(g?void 0:p,d?void 0:c);return[...e.length>1?[...e].sort((e,t)=>Number(t.active)-Number(e.active)).map(e=>({segment:`tier:${e.slug}`,name:e.name,group:e.active?`Active tiers`:`Archived tiers`})):[],...t.map(e=>({segment:`label:${e.slug}`,name:e.name,group:`Labels`}))]},[c,d,v,p,g,y]),C=e.newsletter?M({slug:e.newsletter.slug,visibility:e.newsletter.visibility}):null;return(0,Z.jsxs)(G,{gap:`lg`,children:[(0,Z.jsx)(al,{filter:e.recipientFilter,newsletterRecipientFilter:C,paidAvailable:x,segmentOptions:S,onChange:n}),e.newsletters.length>1?(0,Z.jsxs)(G,{gap:`sm`,children:[(0,Z.jsx)(Lt,{htmlFor:r,children:`Newsletter`}),(0,Z.jsxs)(pn,{value:e.newsletter?.slug??``,onValueChange:n=>t(e.newsletters.find(e=>e.slug===n)??null),children:[(0,Z.jsx)(un,{"data-testid":Za,id:r,children:(0,Z.jsx)(fn,{placeholder:`Select a newsletter`,children:e.newsletter?e.newsletter.name??e.newsletter.slug:void 0})}),(0,Z.jsx)(ln,{children:e.newsletters.map(e=>(0,Z.jsxs)(cn,{value:e.slug,children:[e.name??e.slug,e.activeMembers===void 0?null:(0,Z.jsxs)(Z.Fragment,{children:[` `,(0,Z.jsxs)(K,{as:`span`,leading:`none`,size:`sm`,tone:`secondary`,children:[`(`,_e(e.activeMembers),`)`]})]})]},e.slug))})]})]}):null]})}var cl=`YYYY-MM-DD`,ll=`HH:mm`,ul=`Invalid date format, must be YYYY-MM-DD`,dl=`Invalid date`;function fl(e,t){return/^\d\d\d\d-\d\d-\d\d$/.test(e)?Ec.default.tz(e,cl,t).isValid()?null:dl:ul}function pl(e){return(e.metaKey||e.ctrlKey)&&!e.altKey&&e.key.toLowerCase()===`s`}function ml({value:e,timezone:t,minDate:n,maxDate:r,disabled:i=!1,className:a,errorClassName:o,dateLabel:s,timeLabel:c,dateTestId:l,timeTestId:u,invalid:d=!1,describedBy:f,labelledBy:p,onChange:m}){let h=Ec.default.tz(e,t),[g,_]=(0,X.useState)(null),[v,y]=(0,X.useState)(null),[b,x]=(0,X.useState)(null),[S,C]=(0,X.useState)(!1),[w,T]=(0,X.useState)(`button`),E=(0,X.useRef)(!1),D=(0,X.useRef)(null),O=(0,X.useRef)(null),k=(0,X.useId)(),A=e=>{let n=Ec.default.tz(`${e} ${h.format(ll)}`,`${cl} ${ll}`,t);n.isSame(h,`minute`)||m(n.toDate())},j=()=>{y(null),x(null)},M=e=>{e&&(C(!1),j(),A((0,Ec.default)(e).format(cl)))},N=()=>{if(v===null)return;let e=v?fl(v,t):null;if(e){x(e);return}j(),v&&A(v)},P=e=>{if(e.key===`Enter`){e.preventDefault(),C(!1),N();return}if(e.key===`Escape`){j();return}let n=v?fl(v,t):null;n&&pl(e)&&(e.preventDefault(),e.stopPropagation(),x(n))},F=e=>{if(g===null)return;let t=/^\d:\d\d$/.test(e)?`0${e}`:e,[n,r]=t.split(`:`).map(e=>parseInt(e,10));_(null),!(!/^\d\d:\d\d$/.test(t)||n>23||r>59||t===h.format(ll))&&m(h.clone().set({hour:n,minute:r,second:0,millisecond:0}).toDate())},I=d?{"aria-invalid":!0}:{},ee=f?{"aria-describedby":f}:{},L=[f,b?k:null].filter(Boolean).join(` `);return(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsxs)(Te,{"aria-labelledby":p,className:a,columns:2,gap:`sm`,role:p?`group`:void 0,children:[(0,Z.jsxs)(Ft,{open:S&&!i,onOpenChange:e=>{e&&(E.current=!1),C(e)},children:[(0,Z.jsx)(Pt,{ref:D,className:`min-w-0`,children:(0,Z.jsxs)(en,{className:`min-w-0`,"data-disabled":i,children:[(0,Z.jsx)(Qt,{children:(0,Z.jsx)(Mt,{asChild:!0,children:(0,Z.jsx)($t,{"aria-label":`Choose date`,disabled:i,size:`icon-xs`,onClick:()=>T(`button`),children:(0,Z.jsx)(Ge,{"aria-hidden":`true`})})})}),(0,Z.jsx)(Zt,{ref:O,"aria-describedby":L||void 0,"aria-invalid":d||b!==null||void 0,"aria-label":s,autoComplete:`off`,className:`min-w-0`,"data-testid":l,disabled:i,placeholder:cl,value:v??h.format(cl),onBlur:N,onChange:e=>{y(e.target.value),C(!1)},onClick:()=>{T(`field`),S||(E.current=!1,C(!0))},onKeyDown:P})]})}),(0,Z.jsx)(Nt,{"aria-label":`Choose date`,className:`w-auto p-0`,onCloseAutoFocus:e=>{let t=O.current;(w===`field`||document.activeElement===t)&&(e.preventDefault(),E.current||t?.focus())},onInteractOutside:e=>{if(D.current?.contains(e.target)){e.preventDefault();return}E.current=!0},onOpenAutoFocus:e=>{if(w===`field`){e.preventDefault();return}let t=e.currentTarget.querySelector(`[role="grid"] [tabindex="0"]`);t&&(e.preventDefault(),t.focus())},children:(0,Z.jsx)(_t,{autoFocus:w===`button`,captionLayout:`dropdown-months`,defaultMonth:Ic(e,t),disabled:[...n?[{before:Ic(n,t)}]:[],...r?[{after:Ic(r,t)}]:[]],mode:`single`,selected:Ic(e,t),onSelect:M})})]}),(0,Z.jsx)(ii,{"aria-label":c,"data-testid":u,disabled:i,suffix:h.format(`z`),value:g??h.format(ll),onBlur:e=>F(e.target.value),onChange:e=>_(e.target.value),...I,...ee})]}),b?(0,Z.jsx)(zt,{className:o,id:k,children:b}):null]})}function hl({state:e,timezone:t,onToggleScheduled:n,onSetScheduledAt:r}){let i=(0,X.useId)();return(0,Z.jsxs)(Te,{align:`end`,className:`grid-cols-1 sm:grid-cols-[auto_minmax(0,1fr)]`,gap:`sm`,children:[(0,Z.jsxs)(on,{value:e.isScheduled?`schedule`:`now`,onValueChange:e=>n(e===`schedule`),children:[(0,Z.jsxs)(W,{gap:`sm`,children:[(0,Z.jsx)(an,{id:`${i}-now`,value:`now`}),(0,Z.jsx)(Lt,{htmlFor:`${i}-now`,children:`Set it live now`})]}),(0,Z.jsxs)(W,{gap:`sm`,children:[(0,Z.jsx)(an,{id:`${i}-schedule`,value:`schedule`}),(0,Z.jsx)(Lt,{htmlFor:`${i}-schedule`,children:`Schedule for later`})]})]}),e.isScheduled?(0,Z.jsx)(ml,{className:`w-full sm:w-70 sm:translate-y-2 sm:justify-self-end`,dateLabel:`Publish date`,dateTestId:no,errorClassName:`sm:col-start-2 sm:w-70 sm:translate-y-2 sm:justify-self-end`,minDate:e.minScheduledAt,timeLabel:`Publish time`,timeTestId:ro,timezone:t,value:e.scheduledAt,onChange:r}):null]})}function gl({testId:e,icon:t,title:n,open:r=!1,disabled:i=!1,onToggle:a,children:o,footer:s}){let c=!i&&!!a;return(0,Z.jsxs)(G,{className:`border-b border-border-default last:border-b-0`,"data-testid":e,gap:`none`,children:[(0,Z.jsxs)(`button`,{"aria-expanded":c?r:void 0,className:U(`flex w-full items-center gap-3 px-1 py-4 text-left [&[aria-expanded=true]>svg]:rotate-180`,i&&`cursor-default text-foreground/40`),disabled:!c,type:`button`,onClick:a,children:[(0,Z.jsx)(`span`,{className:`shrink-0`,children:t}),(0,Z.jsx)(K,{className:`grow text-inherit`,size:`lg`,weight:`medium`,children:n}),(0,Z.jsx)(He,{className:`size-4 shrink-0 transition-transform`})]}),r&&o?(0,Z.jsx)(we,{className:`pr-1 pb-5 pl-8 motion-safe:animate-in motion-safe:duration-200 motion-safe:fade-in motion-safe:slide-in-from-top-1`,children:o}):null,s]})}function _l({children:e,testId:t}){return(0,Z.jsx)(W,{align:`start`,className:`mb-4 rounded-md bg-surface-elevated p-3`,"data-testid":t,gap:`sm`,children:(0,Z.jsx)(K,{size:`sm`,children:e})})}var vl=`https://docs.ghost.org/newsletters/#bulk-email-configuration`;function yl(){let{data:e}=x({requestOptions:Q}),t=cr(`automations`,{defaultErrorHandler:!1,requestOptions:Q});return(0,Z.jsxs)(K,{"data-testid":Ya,size:`sm`,children:[`Email is unavailable because there are no active `,e&&An(e)?(0,Z.jsx)(`a`,{className:`underline`,href:t?`#/settings/emails`:`#/settings/newsletters`,children:`newsletters`}):`newsletters`,`.`]})}function bl({state:e}){let t=e.emailDisabledReason;return t===`sending-limit`||t===`email-verification`?(0,Z.jsx)(K,{"data-testid":Ya,size:`sm`,children:e.emailBlock?.message}):t===`no-members`?(0,Z.jsxs)(K,{"data-testid":Ya,size:`sm`,children:[(0,Z.jsx)(`a`,{className:`underline`,href:`#/members`,children:`Add members`}),` `,`to start sending newsletters!`]}):t===`no-mailgun`?(0,Z.jsxs)(K,{"data-testid":Ya,size:`sm`,children:[`Set up`,` `,(0,Z.jsx)(`a`,{className:`underline`,href:vl,rel:`noreferrer noopener`,target:`_blank`,children:`Mailgun`}),` `,`to start sending newsletters!`]}):t===`no-newsletter`?(0,Z.jsx)(yl,{}):null}function xl({state:e,onChange:t}){return(0,Z.jsxs)(G,{gap:`md`,children:[(0,Z.jsx)(on,{value:e.publishType,onValueChange:e=>t(e),children:e.publishTypeOptions.map(e=>(0,Z.jsxs)(W,{gap:`sm`,children:[(0,Z.jsx)(an,{disabled:e.disabled,id:`publish-type-${e.value}`,value:e.value}),(0,Z.jsx)(Lt,{htmlFor:`publish-type-${e.value}`,children:e.label})]},e.value))}),(0,Z.jsx)(bl,{state:e})]})}function Sl(e){return e.charAt(0).toUpperCase()+e.slice(1)}function Cl({state:e}){let{count:t}=L(e.fullRecipientFilter,{requestOptions:Q});return e.recipientFilter?(0,Z.jsx)(Z.Fragment,{children:Ac({recipientType:F(e.recipientFilter),count:t,newsletterName:e.onlyDefaultNewsletter?null:e.newsletter?.name??null})}):(0,Z.jsx)(Z.Fragment,{children:`Not sent as newsletter`})}function wl({post:e}){let t=Cs(e);return t?.overLimit?(0,Z.jsx)(Mr,{className:`mb-4`,"data-testid":Xa,variant:`warning`,children:(0,Z.jsxs)(G,{gap:`xs`,children:[(0,Z.jsxs)(K,{weight:`semibold`,children:[`This email is `,(0,Z.jsxs)(`span`,{className:`text-state-warning`,children:[t.sizeKb,`kB`]})]}),(0,Z.jsx)(K,{size:`sm`,tone:`secondary`,children:`Email newsletters may get clipped in the inbox behind a “View entire message” link when they’re over 100kB.`})]})}):null}function Tl({post:e,state:t,timezone:n,emailDisabledInSettings:r,limitsChecked:i,limitsFailure:a,onSetPublishType:o,onSetNewsletter:s,onSetRecipientFilter:c,onToggleScheduled:l,onSetScheduledAt:u,onContinue:d,onRetryLimits:f}){let[p,m]=(0,X.useState)(null),h=e=>()=>m(t=>t===e?null:e),g=t.publishBlock!==null,_=t.publishTypeOptions.find(e=>e.value===t.publishType),v=e.email,y=F(O(e.emailSegment));return(0,Z.jsxs)(G,{"data-testid":Va,gap:`xl`,children:[(0,Z.jsxs)(G,{gap:`none`,children:[(0,Z.jsx)(K,{as:`h2`,className:`text-5xl leading-tighter tracking-tight text-state-success`,weight:`bold`,children:`Ready, set, publish.`}),(0,Z.jsx)(K,{as:`h2`,className:`text-5xl leading-tighter tracking-tight`,weight:`bold`,children:`Share it with the world.`})]}),a?(0,Z.jsx)(Mr,{"data-testid":so,role:`alert`,variant:`destructive`,children:(0,Z.jsxs)(G,{align:`start`,gap:`sm`,children:[(0,Z.jsx)(K,{children:a}),(0,Z.jsx)(q,{size:`sm`,variant:`outline`,onClick:f,children:`Try again`})]})}):null,(0,Z.jsxs)(G,{gap:`none`,children:[(0,Z.jsx)(gl,{disabled:t.emailUnavailable||g,footer:t.willEmail?(0,Z.jsx)(wl,{post:e}):null,icon:(0,Z.jsx)(We,{className:`size-4`}),open:p===`publishType`,testId:Ga,title:t.emailUnavailable||g?`Publish on site`:_?.display??`Publish`,onToggle:h(`publishType`),children:(0,Z.jsx)(xl,{state:t,onChange:o})}),t.publishBlock?(0,Z.jsx)(_l,{children:(0,Z.jsx)(Zc,{parts:t.publishBlock.parts})}):null,t.emailUnavailable?null:(0,Z.jsx)(gl,{disabled:t.publishType===`publish`||g,icon:(0,Z.jsx)(Xe,{className:`size-4`}),open:p===`emailRecipients`,testId:Ka,title:t.publishType===`publish`||g?`Not sent as newsletter`:(0,Z.jsx)(Cl,{state:t}),onToggle:h(`emailRecipients`),children:(0,Z.jsx)(sl,{state:t,onSetNewsletter:s,onSetRecipientFilter:c})}),v&&!r?(0,Z.jsx)(gl,{icon:(0,Z.jsx)(Xe,{className:`size-4`}),testId:Ja,title:[v.status===`failed`?`Retry sending to`:`Already sent to`,_e(v.email_count??0),y===`all`||y===`none`?null:y,v.email_count===1?`subscriber`:`subscribers`,t.onlyDefaultNewsletter||!e.newsletterName?null:`of ${e.newsletterName}`].filter(Boolean).join(` `),disabled:!0}):null,(0,Z.jsx)(gl,{disabled:g,icon:(0,Z.jsx)(Re,{className:`size-4`}),open:p===`publishAt`,testId:qa,title:t.isScheduled?Sl(Lc(t.scheduledAt)):`Right now`,onToggle:h(`publishAt`),children:(0,Z.jsx)(hl,{state:t,timezone:n,onSetScheduledAt:u,onToggleScheduled:l})})]}),g?null:(0,Z.jsx)(`div`,{children:(0,Z.jsx)(q,{"data-testid":io,disabled:!i||!t.canPublish,size:`lg`,onClick:d,children:`Continue, final review →`})})]})}var El=J({type:Y(),text:Hn().optional(),children:Fn(Hn()).optional()}),Dl=J({root:J({children:Fn(Hn())})});function Ol(e){if(!e)return null;try{let t=typeof e==`string`?JSON.parse(e):e,n=Dl.safeParse(t);return n.success?n.data:null}catch{return null}}function kl(e){let t=El.safeParse(e);if(!t.success)return!1;let n=t.data;return n.type===`paywall`||n.type===`linebreak`?!1:typeof n.text==`string`?!!n.text.trim():n.type===`text`||n.type===`extended-text`?!1:Array.isArray(n.children)?n.children.some(kl):n.type!==`paragraph`&&n.type!==`root`}function Al(e){let t=Ol(e.lexical)?.root?.children;if(!t)return null;let n=t.findIndex(e=>{let t=El.safeParse(e);return t.success&&t.data.type===`paywall`});return n===-1?null:e.visibility===`public`?`public-access`:t.slice(0,n).some(kl)?t.slice(n+1).some(kl)?null:`no-content-after`:`no-content-before`}var jl={"no-content-before":{title:`Nothing above the public preview`,body:`Add some content above the public preview so everyone has something to read before the paywall.`},"no-content-after":{title:`Nothing below the public preview`,body:`Add some content below the public preview for subscribers who have access to the full post.`},"public-access":{title:`Public preview has no effect`,body:`This post is public, so everyone can read the full post and the public preview won’t have any effect.`}},Ml=J({id:Y(),opened_count:In().int().nonnegative(),email_count:In().int().nonnegative(),status:Bn([`pending`,`submitting`,`submitted`,`failed`]),error:Y().nullable().optional(),track_opens:Rn().optional(),track_clicks:Rn().optional()}),Nl=J({posts:Fn(J({status:Bn([`published`,`draft`,`scheduled`,`sent`]),email:Ml.nullable().optional()})).min(1)}),Pl=J({meta:J({pagination:J({total:In().int().nonnegative()})})}),Fl={published:`ghost-last-published-post`,scheduled:`ghost-last-scheduled-post`};function Il({postId:e,displayName:t,isScheduled:n}){try{localStorage.setItem(n?Fl.scheduled:Fl.published,JSON.stringify({id:e,type:t}))}catch{}}var Ll=`Unknown error`,Rl=`Unknown Error occurred when attempting to resend`,zl=`We couldn’t confirm the newsletter was sent. Check the post’s email status from the posts list.`;function Bl(e){return e.displayName===`post`&&(e.status===`published`||e.status===`sent`)&&e.email?.status===`failed`?e.email?.error||Ll:null}function Vl({post:e,site:t,user:n,limits:r,now:i,dispatch:o,showCompletion:s=!0,improveSendingUI:c=!1,onBeforePublish:l,onCompleted:u}){let d=C(),f=a(),{mutateAsync:p}=qr(),[,m]=(0,X.useReducer)(e=>e+1,0),h=(0,X.useRef)({post:e,site:t,user:n,limits:r,now:i});h.current={post:e,site:t,user:n,limits:r,now:i};let g=(0,X.useMemo)(()=>{let e=h.current;return Xo({post:{...e.post,isPage:e.post.displayName===`page`},site:e.site,user:e.user,limits:e.limits,now:e.now})},[e.id]),v=(0,X.useMemo)(()=>({setPublishType:e=>{g.setPublishType(e),m()},setNewsletter:e=>{g.setNewsletter(e),m()},setRecipientFilter:e=>{g.setRecipientFilter(e),m()},setScheduledAt:e=>{g.setScheduledAt(e),m()},setIsScheduled:e=>{g.setIsScheduled(e),m()}}),[g]),y=(0,X.useRef)(e.email?.id??null),b=(0,X.useMemo)(()=>Kc({reload:async e=>{let t=Nl.parse(await d(_(`/posts/${e}/`,{include:`email`}),Q)).posts.at(0);if(!t)throw Error(`The published post was missing from its reload response.`);return y.current=t.email?.id??y.current,{status:t.status,email:t.email??null}},retry:async e=>{await p({id:e,sessionExpiryRedirect:!1})}}),[d,p]),x=(0,X.useCallback)(t=>{t.kind!==`cancelled`&&f.invalidateQueries({queryKey:[e.displayName===`page`?Xn:se]})},[e.displayName,f]),[S,w]=(0,X.useState)(()=>Bl(e)?`email-error`:`options`),[T,E]=(0,X.useState)(`idle`),[D,O]=(0,X.useState)(null),[k,A]=(0,X.useState)(()=>Bl(e)),[j,M]=(0,X.useState)(null),[N,P]=(0,X.useState)(null),[F,I]=(0,X.useState)(null),[ee,L]=(0,X.useState)(null),[R,z]=(0,X.useState)(null),[te,ne]=(0,X.useState)(`idle`),[re,ie]=(0,X.useState)(null),[ae,oe]=(0,X.useState)(()=>{if(Bl(e))return{willPublish:e.status===`published`&&e.emailOnly!==!0,willEmail:!0,willOnlyEmail:e.emailOnly===!0||e.status===`sent`,isScheduled:!1};let t=g.getState();return{willPublish:t.willPublish,willEmail:t.willEmail,willOnlyEmail:t.willOnlyEmail,isScheduled:t.isScheduled}}),B=(0,X.useRef)(!0),ce=(0,X.useRef)(!1),le=(0,X.useRef)(!1),ue=(0,X.useRef)(!1),de=(0,X.useRef)(0),fe=(0,X.useRef)(null),pe=(0,X.useCallback)(async()=>{let e=de.current+1;de.current=e,I(null),L(null);let t=fe.current,n=t?.machine===g?t:{machine:g,promise:g.checkLimits().then(()=>void 0)};fe.current=n;try{await n.promise}catch(t){if(B.current&&e===de.current){let{message:e}=is(t);L(`Couldn’t check publishing limits. ${e}`),m()}return}finally{fe.current===n&&(fe.current=null)}B.current&&e===de.current&&(I(g),m())},[g]);(0,X.useEffect)(()=>(g.resetPastScheduledAt(),pe(),()=>{de.current+=1}),[pe,g]);let V=(0,X.useRef)(b);V.current=b;let me=(0,X.useCallback)(()=>{B.current=!1,V.current.cancel(),de.current+=1},[]);(0,X.useEffect)(()=>(B.current=!0,me),[me]);let H=g.getState(),he=F===g,ge=(0,X.useCallback)(async()=>{if(e.displayName===`page`||H.isScheduled||!H.willPublish){M(null);return}try{let t=Pl.parse(await d(_(`/posts/`,{filter:`status:published+id:-'${e.id}'`,limit:`1`}),Q));B.current&&M(t.meta.pagination.total+1)}catch{B.current&&M(null)}},[d,e.displayName,e.id,H.isScheduled,H.willPublish]),_e=(0,X.useCallback)(()=>{!he||!H.canPublish||(oe({willPublish:H.willPublish,willEmail:H.willEmail,willOnlyEmail:H.willOnlyEmail,isScheduled:H.isScheduled}),O(null),E(`idle`),w(`confirm`),ge())},[ge,he,H]),ve=(0,X.useCallback)(()=>{le.current||(w(`options`),E(`idle`))},[]),U=(0,X.useCallback)((t,n)=>{if(!(!B.current||ce.current)){ce.current=!0,s&&(A(null),E(`success`),w(`complete`),P(new Date().toISOString()));try{Il({postId:e.id,displayName:e.displayName,isScheduled:t})}finally{u?.({postId:e.id,isScheduled:t,hasEmail:n})}}},[u,e.displayName,e.id,s]),ye=(0,X.useCallback)((e,t)=>{if(B.current){if(e.kind===`failed`){A(e.error||Ll),w(`email-error`),E(`idle`);return}if(e.kind===`cancelled`){E(`idle`);return}e.kind!==`submitted`&&z(zl),U(t,e.kind!==`not-needed`)}},[U]),be=(0,X.useCallback)(async()=>{if(le.current)return;le.current=!0,O(null),E(`running`);let t=g.toDispatch();if(!t){le.current=!1,O({message:`This post can no longer be published from here. Reload the editor.`}),E(`failure`);return}let{isScheduled:n,willEmailImmediately:r,willEmail:i}=H;try{await l?.()}catch(e){B.current&&(le.current=!1,O(is(e)),E(`failure`));return}if(!B.current)return;let a;try{a=await o(t)}catch(e){B.current&&(le.current=!1,O(is(e)),E(`failure`));return}if(!B.current)return;let s=as(a);if(s){le.current=!1,O(s),E(`failure`),w(`confirm`);return}if(r&&!c){let t;try{t=await b.confirm(e.id)}catch{if(!B.current)return;z(zl),U(n,!0);return}x(t),ye(t,n);return}U(n,i)},[ye,U,b,o,c,g,l,e.id,x,H]),xe=(0,X.useCallback)(async()=>{let t=y.current;if(!ue.current){if(!t){ie(Rl),ne(`failure`);return}ue.current=!0,ie(null),ne(`running`);try{let n=await b.retryAndConfirm(e.id,t);if(x(n),!B.current)return;if(n.kind===`failed`||n.kind===`cancelled`){ue.current=!1,n.kind===`failed`&&A(n.error||Ll),ne(`idle`);return}n.kind!==`submitted`&&z(zl),s&&ne(`success`),U(!1,n.kind!==`not-needed`)}catch(e){B.current&&(ue.current=!1,ie(e instanceof Error?e.message:Rl),ne(`failure`))}}},[U,b,e.id,x,s]);return{...v,state:H,step:S,confirmStatus:T,failure:D,emailErrorMessage:k,postCount:j,completedAt:N,limitsChecked:he,limitsFailure:ee,emailNote:R,captured:ae,retryLimits:()=>void pe(),toConfirm:_e,toOptions:ve,confirmPublish:be,retryEmail:xe,retryStatus:te,retryFailure:re,cancel:me}}function Hl({post:e,...t}){return(0,Z.jsx)(Ul,{post:e,...t},e.id)}function Ul({post:e,animate:t=!0,showCompletion:n,site:r,user:i,limits:a,now:o,timezone:s,siteTitle:c,tkCount:l=0,paywallImprovements:u=!1,improveSendingUI:d,dispatch:f,onBeforePublish:p,onClose:m,onNewsletterChange:h,onPreview:g,onRevertToDraft:_,onCompleted:v}){let[y,b]=(0,X.useState)(!1),x=u?Al(e):null;return!y&&l>0?(0,Z.jsxs)(el,{testId:_o,title:`Forget something?`,onBack:m,onContinue:()=>b(!0),children:[`Looks like you’ve got some unfinished business. There `,l===1?`is`:`are`,` `,(0,Z.jsxs)(`strong`,{children:[_e(l),` TK `,l===1?`reminder`:`reminders`]}),` `,`left in your post.`]}):!y&&x?(0,Z.jsx)(el,{testId:vo,title:jl[x].title,onBack:m,onContinue:()=>b(!0),children:jl[x].body}):(0,Z.jsx)(Wl,{animate:t,dispatch:f,improveSendingUI:d,limits:a,now:o,post:e,showCompletion:n,site:r,siteTitle:c,timezone:s,user:i,onBeforePublish:p,onClose:m,onCompleted:v,onNewsletterChange:h,onPreview:g,onRevertToDraft:_})}function Wl({post:e,animate:t=!0,showCompletion:n,site:r,user:i,limits:a,now:o,timezone:s,siteTitle:c,improveSendingUI:l,dispatch:u,onBeforePublish:d,onClose:f,onNewsletterChange:p,onPreview:m,onRevertToDraft:h,onCompleted:g}){let _=Vl({post:e,site:r,user:i,limits:a,now:o,dispatch:u,showCompletion:n,improveSendingUI:l,onBeforePublish:d,onCompleted:g}),{state:v,step:y}=_,b=v.newsletter?.slug;(0,X.useEffect)(()=>(p?.(b),()=>p?.(void 0)),[b,p]);let x=()=>{_.cancel(),f()};return(0,Z.jsx)(Fo,{animate:t,"data-testid":Ba,title:`Publish`,open:!0,onOpenChange:e=>!e&&x(),children:(0,Z.jsxs)(we,{className:`relative min-h-full`,children:[(0,Z.jsxs)(W,{className:`absolute inset-x-0 top-0 p-4`,justify:`between`,children:[(0,Z.jsx)(K,{"aria-hidden":`true`,as:`h2`,className:`text-lg tracking-tight`,weight:`semibold`,children:`Publish`}),(0,Z.jsx)(nn.ActionGroup,{children:y===`complete`?null:(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(q,{variant:`ghost`,onClick:x,children:`Close`}),_.emailErrorMessage||!m?null:(0,Z.jsx)(q,{className:`w-20 shrink-0`,"data-testid":Wa,variant:`outline`,onClick:m,children:`Preview`})]})})]}),(0,Z.jsx)(G,{className:`mx-auto w-full max-w-156 px-6 pt-[max(9.6rem,18vh)] pb-16`,gap:`xl`,children:y===`email-error`&&_.emailErrorMessage?(0,Z.jsx)(qc,{emailErrorMessage:_.emailErrorMessage,mailgunConfigured:r.mailgunConfigured,post:e,retryFailure:_.retryFailure,status:_.retryStatus,willOnlyEmail:v.willOnlyEmail,onRetry:()=>void _.retryEmail()}):y===`complete`?(0,Z.jsx)(Vc,{captured:_.captured,completedAt:_.completedAt,note:_.emailNote,post:e,postCount:_.postCount,siteTitle:c,state:v,timezone:s,onRevertToDraft:h}):y===`confirm`?(0,Z.jsx)($c,{captured:_.captured,failure:_.failure,post:e,state:v,status:_.confirmStatus,timezone:s,onBack:_.toOptions,onConfirm:()=>void _.confirmPublish()}):(0,Z.jsx)(Tl,{emailDisabledInSettings:Wo(r),limitsChecked:_.limitsChecked,limitsFailure:_.limitsFailure,post:e,state:v,timezone:s,onContinue:_.toConfirm,onRetryLimits:_.retryLimits,onSetNewsletter:_.setNewsletter,onSetPublishType:_.setPublishType,onSetRecipientFilter:_.setRecipientFilter,onSetScheduledAt:_.setScheduledAt,onToggleScheduled:_.setIsScheduled})})]})})}function Gl(e){return e==null?`subscribers`:`${_e(e)} ${e===1?`subscriber`:`subscribers`}`}function Kl({post:e,...t}){return(0,Z.jsx)(ql,{post:e,...t},e.id)}function ql({post:e,site:t,user:n,timezone:r,dispatch:i,onClose:a,onReverted:o}){let s=(0,X.useRef)({post:e,site:t,user:n});s.current={post:e,site:t,user:n};let c=(0,X.useMemo)(()=>{let e=s.current;return Xo({post:{...e.post,isPage:e.post.displayName===`page`},site:e.site,user:e.user})},[e.id]),l=c.getState(),u=e.status===`scheduled`,d=e.status===`sent`,f=e.emailOnly===!0||d,p=u||!f,m=p?u?`Unschedule`:`Unpublish`:`Sent`,h=u&&!!e.newsletter&&!e.email,g=e.displayName===`post`&&(e.status===`sent`||e.status===`published`)&&!!(e.email&&e.email.status!==`failed`),_=t.newsletters.find(t=>t.slug===e.newsletter),v=O(e.emailSegment),y=h&&_&&v?A(M(_),v):null,{count:b}=L(y,{requestOptions:Q}),x=y?b:null,[S,C]=(0,X.useState)(null),[w,T]=(0,X.useState)(!1),E=(0,X.useRef)(!1),D=(0,X.useRef)(!0),k=!l.onlyDefaultNewsletter||e.newsletterStatus===`archived`,j=()=>{D.current&&(D.current=!1,a())};(0,X.useEffect)(()=>(D.current=!0,()=>{D.current=!1}),[]);let N=async()=>{if(E.current)return;E.current=!0,C(null),T(!0);let e;try{e=await i(c.toRevertDispatch())}catch(e){D.current&&(C(is(e)),T(!1)),E.current=!1;return}if(!D.current){E.current=!1;return}let t=as(e);if(t){C(t),T(!1),E.current=!1;return}T(!1),E.current=!1,o?.(),D.current&&j()},P=e.publishedAt;return(0,Z.jsx)(Fo,{"data-testid":yo,title:m,open:!0,onOpenChange:e=>!e&&j(),children:(0,Z.jsxs)(we,{className:`relative min-h-full`,children:[(0,Z.jsxs)(W,{className:`absolute inset-x-0 top-0 p-4`,justify:`between`,children:[(0,Z.jsx)(K,{"aria-hidden":`true`,as:`h2`,className:`text-lg tracking-tight`,weight:`semibold`,children:m}),(0,Z.jsx)(nn.ActionGroup,{children:(0,Z.jsx)(q,{variant:`outline`,onClick:j,children:`Close`})})]}),(0,Z.jsxs)(G,{className:`mx-auto w-full max-w-156 px-6 pt-[max(9.6rem,18vh)] pb-16`,gap:`xl`,children:[(0,Z.jsxs)(K,{as:`h2`,className:`text-5xl leading-tighter tracking-tight`,"data-testid":bo,weight:`bold`,children:[`This `,e.displayName,` `,d?`was`:`has been`,` `,(0,Z.jsxs)(`span`,{className:`text-state-success`,children:[e.status,d?` by email`:``]})]}),(0,Z.jsxs)(K,{className:`text-pretty`,"data-testid":xo,size:`lg`,children:[`Your `,e.displayName,` `,u?`will be`:`was`,` `,g||h?(0,Z.jsxs)(Z.Fragment,{children:[f?`sent to`:`published and sent to`,` `,(0,Z.jsx)(`strong`,{children:Gl(u?x:e.email?.email_count??null)}),k&&e.newsletterName?(0,Z.jsxs)(Z.Fragment,{children:[` `,`of `,(0,Z.jsx)(`strong`,{children:e.newsletterName})]}):null]}):`published on your site`,P?(0,Z.jsxs)(Z.Fragment,{children:[` on `,Rc(P,r),`.`]}):`.`]}),u&&e.email?(0,Z.jsxs)(K,{className:`text-pretty`,"data-testid":So,size:`lg`,children:[`This post was previously emailed to`,` `,(0,Z.jsx)(`strong`,{children:Gl(e.email.email_count??null)}),k&&e.newsletterName?(0,Z.jsxs)(Z.Fragment,{children:[` `,`of `,(0,Z.jsx)(`strong`,{children:e.newsletterName})]}):null,e.emailCreatedAt?(0,Z.jsxs)(Z.Fragment,{children:[` on `,Rc(e.emailCreatedAt,r),`.`]}):`.`]}):null,S?(0,Z.jsx)(Mr,{role:`alert`,variant:`destructive`,children:S.message}):null,p?(0,Z.jsx)(W,{justify:`start`,children:(0,Z.jsx)(q,{className:`h-auto min-h-11 max-w-full px-5 py-2 whitespace-normal`,"data-testid":po,disabled:w,size:`lg`,variant:`outline`,onClick:()=>void N(),children:u?`Unschedule and revert to draft →`:`Unpublish and revert to private draft →`})}):null]})]})})}var Jl=Vn([Y(),Rn(),In(),Ln(),Fn(Y())]),Yl=J({key:Y(),value:Jl}),Xl=Bn([`disabled`,`visibility`,`filter`]),Zl=J({slug:Y(),name:Y(),status:Y(),visibility:Y(),sort_order:In().optional(),count:J({active_members:In().optional()}).optional()}).transform(({sort_order:e,count:t,...n})=>({...n,sortOrder:e,activeMembers:t?.active_members})),Ql=zn({settingsData:J({settings:Fn(Yl)}),configData:J({config:J({mailgunIsConfigured:Rn().optional()})}),newslettersData:J({newsletters:Fn(Zl)}),currentUser:J({roles:Fn(J({name:Y()}))}),memberCount:In().int().nonnegative().nullable()}),$l={membersEnabled:!0,mailgunConfigured:!1,editorDefaultEmailRecipients:`visibility`,editorDefaultEmailRecipientsFilter:null,memberCount:null,newsletters:[]},eu={isAdmin:!1,isAuthorOrContributor:!1};function tu(e,t){let n=e.find(e=>e.key===t)?.value;return typeof n==`string`?n:null}function nu(e){let t=Ql.safeParse(e);if(!t.success)return{site:$l,user:eu,isValid:!1};let{settingsData:n,configData:r,newslettersData:i,currentUser:a,memberCount:o}=t.data,s=n.settings,c=s.find(e=>e.key===`editor_default_email_recipients`)?.value,l=c==null?Xl.safeParse(`visibility`):Xl.safeParse(c);if(!l.success)return{site:$l,user:eu,isValid:!1};let u=new Set(a.roles.map(e=>e.name)),d=!!(tu(s,`mailgun_api_key`)&&tu(s,`mailgun_domain`)&&tu(s,`mailgun_base_url`));return{site:{membersEnabled:tu(s,`members_signup_access`)!==`none`,mailgunConfigured:d||r.config.mailgunIsConfigured===!0,editorDefaultEmailRecipients:l.data,editorDefaultEmailRecipientsFilter:tu(s,`editor_default_email_recipients_filter`),memberCount:o,newsletters:i.newsletters},user:{isAdmin:u.has(`Owner`)||u.has(`Administrator`),isAuthorOrContributor:u.has(`Author`)||u.has(`Contributor`)},isValid:!0}}function ru(e){return e?e instanceof Error?e:Error(`The publish settings could not be loaded.`):null}function iu(){let e=jo(),t=Mo(),n=de({defaultErrorHandler:!1,requestOptions:Q}),r=x({requestOptions:Q}),i=r.data,a=Un({defaultErrorHandler:!1,requestOptions:Q,searchParams:ko(i),enabled:i!==void 0}),{fetchNextPage:o,hasNextPage:s,isError:c,isFetchingNextPage:l}=a;(0,X.useEffect)(()=>{s&&!l&&!c&&o()},[o,s,l,c]);let{count:u,isLoading:d,isFetching:f,error:p,refetch:m}=L(``,{requestOptions:Q}),h=e.data,g=n.data,_=a.data,v=(0,X.useMemo)(()=>nu({settingsData:h,configData:g,newslettersData:_,currentUser:i,memberCount:u}),[h,g,_,i,u]),y=e.isLoading||n.isLoading||n.isFetching||a.isLoading||a.isFetching||a.hasNextPage||a.isFetchingNextPage||r.isLoading||r.isFetching||d||f,b=(0,X.useMemo)(()=>{let t=e.error??n.error??a.error??r.error??p;return t?ru(t):!y&&!v.isValid?Error(`The publish settings response was invalid.`):null},[v.isValid,n.error,r.error,y,p,a.error,e.error]),S=(0,X.useCallback)(()=>{Promise.all([e.refetch(),n.refetch(),a.refetch(),r.refetch(),m()])},[n,r,a,m,e]);return{site:v.site,user:v.user,timezone:t,isReady:v.isValid&&!y&&!b,error:b,retry:S}}var au=[`members`,`emails`];function ou(e,t){return{required:ur(e,`email_verification_required`)===!0,message:t?.hostSettings?.emailVerification?.emailSendingDisabledMessage??null}}function su(){let e=vt({limits:au,requestOptions:Q}),t=jo(),{data:n}=de({defaultErrorHandler:!1,requestOptions:Q}),r=(0,X.useRef)({limiter:e,settingsQuery:t,config:n?.config});r.current={limiter:e,settingsQuery:t,config:n?.config};let i=(0,X.useRef)(null);return(0,X.useMemo)(()=>({async refreshSettings(){let{data:e}=await r.current.settingsQuery.refetch({throwOnError:!0});i.current=e?.settings??null},async checkSendingLimit(){let{limiter:e}=r.current;e.isLimited(`emails`)&&await e.errorIfWouldGoOverLimit(`emails`)},async checkPublishingLimit(){let{limiter:e}=r.current;e.isLimited(`members`)&&await e.errorIfIsOverLimit(`members`)},getEmailVerification(){return ou(i.current??r.current.settingsQuery.data?.settings,r.current.config)}}),[])}var cu={kind:`not-found`,message:`This post has been deleted. Copy your content and paste it into a new post to keep it.`},lu={kind:`forbidden`,message:`You no longer have permission to edit this post. Copy your content to keep your changes.`},uu={kind:`not-found`,message:`The editor has crashed. Copy your content and paste it into a new post to keep it.`};function du(e){return e.kind===`halted`?e.error.kind===`forbidden`?lu:cu:e.kind===`crashed`?uu:null}function fu(e){return e.kind===`error`||e.kind===`conflict`?e.error:du(e)}var pu=`UPDATE_COLLISION`,mu=`Your post is already published, please reload your page.`,hu=`NoPermissionError`;function gu(e){return e instanceof g?e.data?.errors?.[0]?.code??void 0:void 0}function _u(e){return e instanceof g&&e.data?.errors?.[0]?.type===hu}function vu(e){let t=e instanceof g?e.data?.errors?.[0]:void 0;return t?.type===`ValidationError`&&t.context===mu}function yu(e){return e instanceof h?e.response?.status:void 0}function bu(e,t){return e instanceof Error&&e.message?e.message:t}function xu(e,t){let n=(()=>{if(gu(e)===pu||vu(e))return`conflict`;if(e instanceof w||e instanceof u)return`session-invalid`;if(_u(e))return`forbidden`;if(e instanceof E)return`host-limit`;if(e instanceof l||e instanceof T||e instanceof m)return`transport`;if(e instanceof f||e instanceof p)return`validation`;let t=yu(e);return t===401?`session-invalid`:t===404?`not-found`:t===422?`validation`:`unknown`})();return{kind:n,message:n===`validation`||n===`host-limit`||n===`forbidden`?c(e,bu(e,t)):bu(e,t),cause:e}}function Su(e,t,n,r=!0){let i=(0,X.useRef)({onPress:n,enabled:r});i.current={onPress:n,enabled:r},(0,X.useEffect)(()=>{let n=n=>{!i.current.enabled||n.key.toLowerCase()!==e||!(n.metaKey||n.ctrlKey)||n.altKey||t!==void 0&&n.shiftKey!==t||(n.preventDefault(),n.repeat||i.current.onPress())};return document.addEventListener(`keydown`,n),()=>document.removeEventListener(`keydown`,n)},[e,t])}function Cu(e,t=!0){Su(`p`,!1,e,t)}function wu(e,t=!0){Su(`p`,!0,e,t)}function Tu(){return vr()?`⌘P`:`Ctrl+P`}function Eu(){return vr()?`⌘⇧P`:`Ctrl+Shift+P`}function Du(e){let t=(0,X.useRef)(e);t.current=e;let n=(0,X.useRef)(new Set);(0,X.useEffect)(()=>{let e=n.current;return()=>{e.forEach(clearTimeout),e.clear()}},[]),Su(`s`,void 0,()=>{let e=document.activeElement;e instanceof HTMLInputElement&&e.type===`text`&&e.blur();let r=setTimeout(()=>{n.current.delete(r),t.current()});n.current.add(r)})}var Ou=3e3;function ku(e){return e===`submitting`||e===`pending`?`sending`:e===`submitted`?`sent`:e===`failed`?`failed`:`none`}function Au(e){if(!e.newsletter||e.hasEmail||e.emailSegment===`none`)return null;let t=O(e.emailSegment),n=t??(e.newsletter.visibility===`paid`?`status:-free`:k);return{filter:A(M(e.newsletter),t),segment:n}}function ju(e,t){if(e.status!==`scheduled`||!e.publishedAt)return!1;let n=Date.parse(e.publishedAt);return!Number.isNaN(n)&&n<=t.getTime()}function Mu({state:e,record:t,isDirty:n,isSaving:r,now:i=new Date}){if(e.kind===`error`)return{kind:`problem`,message:os(e.error)};let a=t?.status??`draft`;if(r&&a===`draft`)return{kind:`saving`};if(!t)return{kind:`new`};let o=t.emailCount??0,s=a===`scheduled`?Au(t):null;return a===`sent`?{kind:`sent`,failed:t.emailStatus===`failed`,count:o}:t.emailOnly&&a===`scheduled`?{kind:`scheduled`,publishedAt:t.publishedAt??null,emailOnly:!0,recipientFilter:s?.filter??null,recipientSegment:s?.segment??null}:a===`published`||ju(t,i)?{kind:`published`,url:t.url,email:ku(t.emailStatus),count:o}:a===`scheduled`?{kind:`scheduled`,publishedAt:t.publishedAt??null,emailOnly:!1,recipientFilter:s?.filter??null,recipientSegment:s?.segment??null}:{kind:`draft`,saved:!n}}var Nu=2147483647;function Pu(e,t){let[n,r]=(0,X.useState)(0);(0,X.useEffect)(()=>{if(!t||!e)return;let n=Date.parse(e)-Date.now();if(!Number.isFinite(n)||n<=0)return;let i=setTimeout(()=>r(e=>e+1),Math.min(n,Nu));return()=>clearTimeout(i)},[t,n,e])}function Fu(e,t=Ou){let[n,r]=(0,X.useState)(!1),i=(0,X.useRef)(void 0);return(0,X.useEffect)(()=>{!e||i.current||(r(!0),i.current=setTimeout(()=>{i.current=void 0,r(!1)},t))},[e,n,t]),(0,X.useEffect)(()=>()=>clearTimeout(i.current),[]),n}var Iu={published:{published:`Updated`,draft:`Saved`,scheduled:`Scheduled`,sent:`Sent`},draft:{published:`Published`,draft:`Saved`,scheduled:`Scheduled`,sent:`Sent`},scheduled:{scheduled:`Updated`,draft:`Unscheduled`,published:`Published`,sent:`Sent`},sent:{sent:`Updated`}};function Lu(e){return e.charAt(0).toUpperCase()+e.slice(1)}function Ru(e,t){let n=Ec.default.tz(e,t);return n.utcOffset()===0?`(UTC)`:`(UTC${n.format(`Z`).replace(/([+-])0/,`$1`).replace(/:00/,``)})`}function zu({displayName:e,previewUrl:t,publishedAt:n,timezone:r,emailOnly:i,recipients:a}){let o=[{text:i?`Will be sent`:`Will be published`}];if(a!==null&&o.push({text:i?` to `:` and delivered to `},{text:a,strong:!0}),n){let e=Ec.default.tz(n,r);o.push({text:` on `},{text:e.format(`D MMM YYYY`),strong:!0},{text:` at `},{text:e.format(`HH:mm`),strong:!0},{text:`\u00a0${Ru(n,r)}`})}return{title:`${Lu(e)} scheduled`,description:o,action:t?{label:`Show preview`,href:t}:void 0}}function Bu(e){if(e.status===`scheduled`)return zu(e);let t=Iu[e.previousStatus]?.[e.status];return t?{title:`${Lu(e.displayName)} ${t.toLowerCase()}`,action:e.status===`published`&&e.url?{label:`View on site`,href:e.url}:void 0}:null}function Vu(e){return{title:`${Lu(e)} reverted to a draft.`}}var Hu=0,Uu=2500;function Wu(e){if(!e||!(`newsletter`in e)||!e.newsletter)return null;let t=Au({newsletter:e.newsletter,hasEmail:!!e.email,emailSegment:e.email_segment});return t?{...t,newsletter:e.newsletter}:null}function Gu(e){if(!(e.kind!==`saved`||!(`post`in e.result)))return e.result.post}function Ku({title:e,description:t,action:n}){Hu+=1;let r=`editor-save-${Hu}`;return R.success(e,{id:r,description:t?(0,Z.jsx)(Z.Fragment,{children:t.map(({text:e,strong:t})=>t?(0,Z.jsx)(`strong`,{children:e},`strong:${e}`):(0,Z.jsx)(`span`,{children:e},e))}):void 0,action:n?(0,Z.jsx)(`a`,{className:`ml-auto shrink-0 text-sm font-semibold text-foreground underline`,href:n.href,rel:`noopener noreferrer`,target:`_blank`,children:n.label}):void 0}),r}function qu({session:e,displayName:t,siteUrl:n}){let r=Mo(),i=Wu(e.loadedRecord),{count:a}=L(i?.filter??null,{requestOptions:Q}),{data:o}=x({requestOptions:Q}),{data:s}=Un({defaultErrorHandler:!1,requestOptions:Q,searchParams:ko(o),enabled:i!==null&&o!==void 0}),c={session:e,displayName:t,siteUrl:n,timezone:r,audience:i,count:a,hasMultipleNewsletters:(s?.newsletters??[]).filter(e=>e.status===`active`).length>1},l=(0,X.useRef)(c);l.current=c;let u=(0,X.useRef)(null),d=(0,X.useCallback)(e=>{u.current&&R.dismiss(u.current),u.current=Ku(e)},[]);return{save:(0,X.useCallback)(async()=>{let e=l.current.session.publishTime.status;u.current&&=(R.dismiss(u.current),null);let t=await l.current.session.saveExplicit();if(t.kind!==`saved`||t.result.status!==e)return t;let n=l.current,r=Gu(t)??n.session.loadedRecord,i=Wu(r),a=i?I(i.segment,{count:i.filter===n.audience?.filter?n.count:void 0,newsletter:{name:i.newsletter.name,recipientFilter:M(i.newsletter)},hasMultipleNewsletters:n.hasMultipleNewsletters}):null,o=Bu({displayName:n.displayName,previousStatus:e,status:t.result.status,url:r?.url,previewUrl:cs(n.siteUrl,r?.uuid),publishedAt:r?.published_at,timezone:n.timezone,emailOnly:!!r&&`email_only`in r&&r.email_only===!0,recipients:a});return o&&d(o),t},[d]),showReverted:(0,X.useCallback)(()=>{d(Vu(l.current.displayName))},[d])}}function Ju(e,t){let[n,r]=(0,X.useState)(`idle`),i=(0,X.useRef)(void 0),a=(0,X.useRef)(!0),o=(0,X.useRef)(0);return(0,X.useLayoutEffect)(()=>(a.current=!0,o.current+=1,r(`idle`),()=>{a.current=!1,clearTimeout(i.current)}),[t]),{phase:n,run:(0,X.useCallback)(async()=>{let t=o.current;clearTimeout(i.current),r(`running`);let n=null;try{n=await e()}finally{a.current&&o.current===t&&(n?.kind===`saved`?(r(`success`),clearTimeout(i.current),i.current=setTimeout(()=>r(`idle`),Uu)):r(n===null||n.kind===`failed`?`failure`:`idle`))}},[e])}}var Yu={idle:`Update`,running:`Updating...`,success:`Updated`,failure:`Retry`},Xu={idle:`Save`,running:`Saving`,success:`Saved`,failure:`Retry`};async function Zu(e){let t=await e;if(t.kind===`dropped`&&t.reason===`clean`)return;let n=as(t);if(n)throw Error(n.message)}function Qu({session:e,post:t,postType:n,currentUser:r,siteUrl:i,tkCount:a,openFlow:o,onOpenFlow:s,offersEmailRetry:c,revealInvalidField:l}){let{isAdmin7:u}=Se(),{persistedId:d}=e,f=e.loadedRecord,[p,m]=(0,X.useState)(!1),h=qu({session:e,displayName:n,siteUrl:i}),g=Ju(h.save,e.contentKey);Du(()=>void h.save());let _=(0,X.useCallback)(()=>m(!0),[]),v=t.status===`draft`;Cu((0,X.useCallback)(()=>{m(!p),p&&s(`none`)},[s,p]),v&&d!==null);let y=(0,X.useCallback)(async()=>{e.publishTime.status!==`draft`||!e.isDirty()||await Zu(e.saveExplicit())},[e]),b=e.state.kind===`preparing`||e.state.kind===`saving`||e.state.kind===`pending-coalesced`,x=!!r&&kn(r);if(!d)return null;let S={subjectEditor:{value:e.settings.email_subject,fallback:e.title,hasUnsavedChanges:e.isDirty(),isSaving:b,saveError:fu(e.state),onChange:t=>e.stageSettings({email_subject:t}),onCommit:e.commitSettings},isPost:n===`post`,post:t,newsletterSlug:t.newsletter??void 0,open:p,postId:d,previewUrl:cs(i,f?.uuid),onBeforeOpen:y,onOpenChange:m};return(0,Z.jsxs)(W,{"data-testid":Li,gap:`md`,justify:`end`,wrap:!0,children:[v?(0,Z.jsx)(nn.Action,{className:`bg-background/80 backdrop-blur-sm`,fallbackSize:`sm`,label:`Preview`,shortcut:Tu(),onClick:_,children:`Preview`}):null,x?(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(q,{disabled:b,size:u?`default`:`sm`,onClick:()=>void g.run(),children:Xu[g.phase]}),v?(0,Z.jsx)(wc,{...S}):null]}):(0,Z.jsx)($u,{feedback:h,isDraft:v,isSaving:b,offersEmailRetry:c,openFlow:o,post:t,preview:S,revealInvalidField:l,session:e,tkCount:a,onOpenFlow:s,onPreview:_})]})}function $u({session:e,feedback:t,post:n,tkCount:r,isDraft:i,isSaving:a,offersEmailRetry:o,openFlow:s,preview:c,revealInvalidField:l,onOpenFlow:u,onPreview:d}){let f=he(),p=Tr(),{isAdmin7:m}=Se(),h=iu(),g=su(),{data:_}=jo(),v=ur(_?.settings??null,`title`)??void 0,y=cr(`paywallImprovements`,{defaultErrorHandler:!1,requestOptions:Q}),b=cr(`improveSendingUI`,{defaultErrorHandler:!1,requestOptions:Q}),[x,S]=(0,X.useState)(!1),[C,w]=(0,X.useState)(!1),[T,E]=(0,X.useState)();h.isReady&&!x&&S(!0);let D=(0,X.useCallback)(async()=>{e.isDirty()&&await Zu(e.saveExplicit())},[e]),{save:O,showReverted:k}=t,A=Ju(O,e.contentKey),j=(0,X.useCallback)(()=>{u(`none`),e.dispatchPublish({kind:`revert`})},[u,e]),M=(0,X.useCallback)(()=>{w(!1),u(`none`)},[u]),N=(0,X.useCallback)(()=>l()?(e.saveExplicit(),!0):!1,[l,e]),P=(0,X.useCallback)(()=>{N()||(w(!1),u(`publish`))},[u,N]),{onOpenChange:F}=c,I=(0,X.useCallback)(e=>{F(e),e||M()},[M,F]),ee=(0,X.useCallback)(()=>{w(!0),F(!1),u(`publish`)},[u,F]);wu(P,i&&h.isReady&&!c.open);let L=!i&&n.status!==`sent`,R=n.status===`sent`&&n.email?.status!==`failed`,z=(i||L||R||o)&&h.error?(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(K,{className:`bg-background/80 text-destructive backdrop-blur-sm`,"data-testid":Ri,role:`alert`,size:`sm`,children:h.error.message}),(0,Z.jsx)(q,{className:`bg-background/80 backdrop-blur-sm`,size:m?`default`:`sm`,variant:`ghost`,onClick:h.retry,children:`Retry`})]}):null;return(0,Z.jsxs)(Z.Fragment,{children:[i?(0,Z.jsxs)(Z.Fragment,{children:[z,(0,Z.jsx)(nn.Action,{className:`bg-background/80 font-semibold text-state-success backdrop-blur-sm hover:text-state-success disabled:text-text-secondary/60 disabled:opacity-100`,disabled:!h.isReady,fallbackSize:`sm`,label:`Publish`,shortcut:Eu(),onClick:P,children:`Publish`}),(0,Z.jsx)(wc,{...c,animate:s!==`publish`,fallbackNewsletterSlug:T,publishDisabled:!h.isReady,onOpenChange:I,onPublish:ee})]}):(0,Z.jsxs)(Z.Fragment,{children:[z,L?(0,Z.jsx)(nn.Action,{className:`bg-background/80 backdrop-blur-sm`,fallbackSize:`sm`,fallbackVariant:`ghost`,label:n.status===`scheduled`?`Unschedule`:`Unpublish`,onClick:()=>{N()||u(`update`)},children:n.status===`scheduled`?`Unschedule`:`Unpublish`}):null,(0,Z.jsx)(nn.Action,{className:`bg-background/80 font-semibold text-state-success backdrop-blur-sm hover:text-state-success disabled:text-text-secondary/60 disabled:opacity-100`,disabled:!e.isDirty()||a,fallbackSize:`sm`,label:Yu[A.phase],onClick:()=>{l(),A.run()},children:Yu[A.phase]})]}),s===`publish`&&x?(0,Z.jsx)(Hl,{animate:!C,dispatch:e.dispatchPublish,improveSendingUI:b,limits:g,paywallImprovements:y,post:n,showCompletion:!1,site:h.site,siteTitle:v,timezone:h.timezone,tkCount:r,user:h.user,onBeforePublish:D,onClose:M,onCompleted:({postId:e,isScheduled:t,hasEmail:r})=>{let i=n.displayName===`page`?`/pages`:!t&&(r||n.email||n.emailOnly)?`/posts/analytics/${e}`:`/posts`;f(i,{crossApp:p(i)})},onNewsletterChange:E,onPreview:d,onRevertToDraft:j}):null,s===`update`&&x?(0,Z.jsx)(Kl,{dispatch:e.dispatchPublish,post:n,site:h.site,timezone:h.timezone,user:h.user,onClose:M,onReverted:k}):null]})}function ed(e){return`${_e(e)} ${e===1?`member`:`members`}`}function td({filter:e,segment:t}){let{count:n}=L(e,{requestOptions:Q});return(0,Z.jsx)(Z.Fragment,{children:typeof n==`number`?ed(n):I(t,{count:n})})}function nd({publishedAt:e,emailOnly:t,recipientFilter:n,recipientSegment:r,timezone:i}){return(0,Z.jsxs)(`time`,{className:`text-state-success`,"data-testid":_i,dateTime:e??void 0,children:[t?`to be sent`:`to be published`,n&&r&&(0,Z.jsxs)(Z.Fragment,{children:[t?` to `:` and sent to `,(0,Z.jsx)(td,{filter:n,segment:r})]}),` `,Wr(e,{timezone:i,scheduled:!0})]})}function rd({label:e,onOpen:t}){let{isReady:n}=iu();return(0,Z.jsxs)(Z.Fragment,{children:[` `,(0,Z.jsx)(q,{className:`h-auto p-0 text-destructive`,disabled:!n,variant:`link`,onClick:t,children:e})]})}function id({onOpen:e}){let{isReady:t}=iu();return(0,Z.jsx)(q,{className:`h-auto p-0`,disabled:!t,variant:`link`,onClick:e,children:`Sent`})}function ad({view:e,timezone:t,isHovered:n,onOpenPublishFlow:r,onOpenUpdateFlow:i}){switch(e.kind){case`problem`:return(0,Z.jsx)(`span`,{className:`text-destructive`,children:e.message});case`saving`:return(0,Z.jsx)(Z.Fragment,{children:`Saving…`});case`new`:return(0,Z.jsx)(Z.Fragment,{children:`New`});case`draft`:return(0,Z.jsx)(Z.Fragment,{children:e.saved?`Draft - Saved`:`Draft`});case`sent`:return e.failed?(0,Z.jsxs)(Z.Fragment,{children:[`Failed to send newsletter.`,r?(0,Z.jsx)(rd,{label:`Retry now`,onOpen:r}):null]}):i?(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(id,{onOpen:i}),` to `,ed(e.count)]}):(0,Z.jsxs)(Z.Fragment,{children:[`Sent to `,ed(e.count)]});case`scheduled`:return(0,Z.jsxs)(Z.Fragment,{children:[`Scheduled`,n&&(0,Z.jsxs)(Z.Fragment,{children:[` `,(0,Z.jsx)(nd,{emailOnly:e.emailOnly,publishedAt:e.publishedAt,recipientFilter:e.recipientFilter,recipientSegment:e.recipientSegment,timezone:t})]})]});default:return(0,Z.jsxs)(Z.Fragment,{children:[e.url?(0,Z.jsx)(`a`,{className:`hover:text-foreground`,href:e.url,rel:`noopener noreferrer`,target:`_blank`,children:`Published`}):`Published`,e.email===`sending`&&` and sending to ${ed(e.count)}`,e.email===`sent`&&` and sent to ${ed(e.count)}`,e.email===`failed`&&` but failed to send newsletter.`,e.email===`failed`&&r?(0,Z.jsx)(rd,{label:`View details`,onOpen:r}):null]})}}function od({state:e,record:t,isDirty:n,onOpenPublishFlow:r,onOpenUpdateFlow:i}){let{isAdmin7:a}=Se(),o=Mo(),s=Fu(e.kind===`saving`||e.kind===`pending-coalesced`),[c,l]=(0,X.useState)(!1),[,u]=(0,X.useState)(0);return Pu(t?.publishedAt,t?.status===`scheduled`&&t.emailOnly!==!0),(0,X.useEffect)(()=>{if(!c)return;let e=setInterval(()=>u(e=>e+1),1e3);return()=>clearInterval(e)},[c]),(0,Z.jsx)(K,{as:`span`,className:Ze({variant:null,size:a?`default`:`sm`,shape:`pill`,isAdmin7:a,className:`pointer-events-auto h-auto max-w-full min-w-0 justify-self-start bg-background/80 px-3 py-1 text-(length:--text-control) whitespace-normal text-text-secondary backdrop-blur-sm max-sm:col-span-2 max-sm:row-start-2 ${a?`min-h-(--control-height)`:`min-h-7`}`}),"data-testid":gi,tone:`secondary`,weight:`medium`,onMouseEnter:()=>l(!0),onMouseLeave:()=>l(!1),children:(0,Z.jsx)(`span`,{className:`min-w-0 break-words`,children:(0,Z.jsx)(ad,{isHovered:c,timezone:o,view:Mu({state:e,record:t,isDirty:n,isSaving:s}),onOpenPublishFlow:r,onOpenUpdateFlow:i})})})}function sd({post:e}){let{isAdmin7:t}=xe(),n=Cs(e);return n?.overLimit?(0,Z.jsxs)(Ft,{children:[(0,Z.jsx)(Mt,{asChild:!0,children:(0,Z.jsx)(q,{"aria-label":`Looks like this is a long post: ${n.sizeKb}kB`,className:`bg-background/80 text-state-warning backdrop-blur-sm hover:text-state-warning`,"data-testid":ui,shape:`pill`,size:t?`icon`:`icon-sm`,type:`button`,variant:`ghost`,children:(0,Z.jsx)(Me,{})})}),(0,Z.jsx)(Nt,{align:`end`,className:`w-72`,"data-testid":di,side:`top`,children:(0,Z.jsxs)(G,{gap:`xs`,children:[(0,Z.jsx)(K,{size:`sm`,weight:`semibold`,children:`Looks like this is a long post`}),(0,Z.jsx)(K,{size:`sm`,tone:`secondary`,children:`Emails may get clipped in the inbox behind a "View entire message" link when they're over 100kB.`}),(0,Z.jsxs)(K,{size:`sm`,children:[`You've used:`,` `,(0,Z.jsxs)(`span`,{className:`font-semibold text-state-warning`,children:[n.sizeKb,`kB`]})]})]})})]}):null}var cd=2e3;function ld(e,t){console.error(e),r(e,t)}function ud(e){ld(e,{tags:{lexical:!0},contexts:{koenig:{version:dr()}}})}function dd(e,t){ld(e,{tags:{lexical:!0},contexts:{koenig:{version:dr()},react:{componentStack:t.componentStack}}})}function fd(e){return Object.fromEntries(Object.entries(e).filter(([,e])=>e!==void 0))}function pd(e){let t=e.cause instanceof h?e.cause.response:void 0;return{api_response_status:t?.status,api_url:t?.url?t.url.slice(0,200):void 0}}function md(e,t){let{command:n,error:a,persisted:o,durationMs:s,postId:c,status:u}=e,d=fd({savePostTask:!0,post_type:t,save_intent:n.kind,save_error_kind:a.kind,save_persisted:o,save_status:u,...pd(a)});if(s!==null&&s>cd&&r(`Failed Lexical save took > 2s`,{tags:fd({...d,save_time:Math.ceil(s/1e3),save_revision:n.requiresRevision,email_segment:n.target?.emailSegment}),extra:{post_id:c}}),!(a.kind===`validation`||a.kind===`host-limit`||a.kind===`forbidden`||a.cause instanceof l)){if(a.kind===`not-found`&&o){i(`Attempted to edit deleted ${t}`,{tags:d,extra:{post_id:c}});return}ld(a.cause??Error(a.message),{tags:d,extra:{post_id:c,duration_ms:s}})}}function hd(e,t){i(e,{tags:fd({shown_to_user:!0,source:`editor-banner`,save_error_kind:t.kind,...pd(t)}),contexts:{ghost:{displayed_message:e,save_error_message:t.message}}})}function gd(e,t){i(`showing leave editor modal`,{tags:{post_type:t,save_status:e.status,engine_state:e.engineState,leave_reasons:e.reasons.join(`,`)},extra:{post_id:e.postId,reasons:e.reasons,dirty_fields:e.dirtyFields,body_diff:e.bodyDiff}})}function _d({editor:e,html:t,placeholder:n,darkMode:r,searchLinks:i,onChangeHtml:a,onFocus:o,onBlur:s,onTkCountChange:c,registerAPI:l}){let{KoenigComposer:u,KoenigComposableEditor:d,HtmlOutputPlugin:f,EmojiPickerPlugin:p,TKCountPlugin:m,MINIMAL_NODES:h,MINIMAL_TRANSFORMERS:g}=e.read();return(0,Z.jsx)(u,{cardConfig:{searchLinks:i},isTKEnabled:!0,nodes:h,onError:ud,children:(0,Z.jsxs)(d,{className:`koenig-lexical-editor-input font-sans! text-base! leading-6 [&_.kg-prose]:text-base! [&_.kg-prose_p]:m-0 [&_.kg-prose_p]:font-sans! [&_.kg-prose_p]:text-base! [&_.kg-prose_p]:leading-6`,darkMode:r,inheritStyles:!0,isSnippetsEnabled:!1,markdownTransformers:g,placeholderClassName:`koenig-lexical-editor-input-placeholder font-sans! text-base! leading-6 text-muted-foreground!`,placeholderText:n,registerAPI:l,singleParagraph:!0,onBlur:s,onFocus:o,children:[(0,Z.jsx)(f,{html:t??void 0,setHtml:a}),(0,Z.jsx)(p,{}),(0,Z.jsx)(m,{onChange:c})]})})}function vd(e){let t=lr();return(0,Z.jsx)(`div`,{className:`koenig-react-editor flex-1`,children:(0,Z.jsx)(Jr,{name:`the feature image caption`,onError:dd,children:(0,Z.jsx)(X.Suspense,{fallback:null,children:(0,Z.jsx)(_d,{...e,editor:t})})})})}var yd={utm_source:`ghost`,utm_medium:`referral`,utm_campaign:`api-credit`};function bd(e){let t=new DOMParser().parseFromString(e,`text/html`);for(let e of t.body.querySelectorAll(`a[href]`)){let t=new URL(e.href);for(let[e,n]of Object.entries(yd))t.searchParams.set(e,n);e.href=t.href}return t.body.innerHTML}function xd({enabled:e,label:t,disabled:n,variant:r=`overlay`,className:i,onSelect:a}){let{unsplashConfig:o}=s(),c=(0,X.useRef)(null),[l,u]=(0,X.useState)(!1),[d,f]=(0,X.useState)(null);return(0,X.useEffect)(()=>{e||u(!1)},[e]),(0,X.useEffect)(()=>{if(!d)return;let e=e=>{e.key===`Escape`&&e.preventDefault()};return d.addEventListener(`keydown`,e,!0),()=>d.removeEventListener(`keydown`,e,!0)},[d]),e?(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(Ht,{className:U(`top-1 right-1 opacity-100`,i),children:(0,Z.jsx)(q,{ref:c,"aria-label":t,className:U(`group/unsplash hover:bg-button-hover`,r===`inline`&&`p-0 hover:bg-accent`),disabled:n,shape:`pill`,size:`icon`,type:`button`,variant:`ghost`,onClick:()=>u(!0),children:(0,Z.jsx)(Xr,{className:U(`text-muted-foreground transition-colors group-hover/unsplash:text-foreground`,r===`inline`?`size-3.5`:`size-4`),name:`unsplash`})})}),l&&(0,ai.createPortal)((0,Z.jsx)(it,{children:(0,Z.jsx)(at,{asChild:!0,loop:!0,trapped:!0,onUnmountAutoFocus:e=>{e.preventDefault(),c.current?.focus()},children:(0,Z.jsx)(`div`,{ref:f,"data-testid":`unsplash-search-modal`,tabIndex:-1,children:(0,Z.jsx)(Yr,{unsplashProviderConfig:o,onClose:()=>u(!1),onImageInsert:e=>{e.src&&a({src:e.src,caption:bd(e.caption??``)}),u(!1)}})})})}),document.body)]}):null}var Sd={bar:{empty:`h-14`,dropzone:`group/dropzone -ml-3 h-(--control-height) w-auto rounded-full border-0 bg-transparent px-3 py-2 shadow-none hover:bg-accent active:bg-accent active:shadow-control-pressed`,prompt:`transition-colors group-hover/dropzone:text-foreground`,icon:Ue,iconClassName:`size-4`,label:`text-base font-medium`,unsplash:`static`},panel:{empty:`h-[120px]`,dropzone:`group/dropzone border-dashed border-border-default bg-surface-elevated transition-colors`,prompt:`transition-colors group-hover/dropzone:text-foreground`,icon:nt,iconClassName:`size-6 stroke-[1.5px]`,label:`text-sm`,unsplash:``}};function Cd({src:e,subject:t,unsplashEnabled:n,upload:r,variant:i=`panel`,className:a,testId:o,alt:s=null,faded:c=!1,onChange:l,onUnsplashSelect:u,children:d}){let{isUploading:f,onUpload:p}=r,m=bt({requestOptions:Q}),h=f||m.isOpen,g=Sd[i],_=i===`bar`?W:qt,v=i===`bar`?W:G,y=g.icon,b=`Add ${t}`;if(!e)return(0,Z.jsxs)(_,{className:U(g.empty,a),"data-testid":o,...i===`bar`?{gap:`sm`}:{},children:[(0,Z.jsx)(Kt,{accept:St,className:g.dropzone,disabled:f,inputAriaLabel:b,noDragEventsBubbling:!0,onDropAccepted:e=>e[0]&&void p(e[0]),onDropRejected:()=>R.error(wt),children:f?(0,Z.jsx)(tn,{size:`sm`}):(0,Z.jsxs)(v,{align:`center`,gap:`sm`,children:[(0,Z.jsx)(y,{"aria-hidden":`true`,className:U(`text-muted-foreground`,g.iconClassName,g.prompt)}),(0,Z.jsx)(`span`,{className:U(`text-muted-foreground`,g.prompt,g.label),children:b})]})}),(0,Z.jsx)(xd,{className:g.unsplash,disabled:f,enabled:n,label:`Select ${t} from Unsplash`,variant:i===`bar`?`inline`:`overlay`,onSelect:e=>u?u(e):l(e.src)})]});let x=(0,Z.jsxs)(Ut,{className:i===`bar`?`rounded-none`:void 0,children:[(0,Z.jsx)(Jt,{alt:s??``,className:c?`opacity-50`:void 0,role:s?`img`:`presentation`,src:e}),f?(0,Z.jsx)(W,{align:`center`,className:`absolute inset-0 bg-background/60`,justify:`center`,children:(0,Z.jsx)(tn,{size:`sm`})}):null,(0,Z.jsxs)(Ht,{children:[m.isEnabled&&(0,Z.jsx)(Wt,{"aria-label":`Edit ${t}`,disabled:h,onClick:()=>m.openEditor({image:e,handleSave:p}),children:(0,Z.jsx)(rt,{})}),(0,Z.jsx)(Wt,{"aria-label":`Remove ${t}`,disabled:h,onClick:()=>l(null),children:(0,Z.jsx)(ke,{})})]})]});return d?(0,Z.jsxs)(G,{className:a,"data-testid":o,gap:`sm`,children:[(0,Z.jsx)(qt,{className:i===`panel`?`max-h-[480px]`:`rounded-none`,children:x}),d]}):(0,Z.jsx)(qt,{className:U(i===`panel`?`max-h-[480px]`:`rounded-none`,a),"data-testid":o,children:x})}function wd(e,t){let{mutateAsync:n,isPending:r}=Gt();return{isUploading:r,onUpload:(0,X.useCallback)(async r=>{try{return t(Yt(await n({file:r,...Q}))),!0}catch(t){return R.error(xt(t,e)),!1}},[t,e,n])}}var Td=191,Ed=`feature image`;function Dd({image:e,alt:t,caption:n,captionKey:r,cardConfig:i,darkMode:a,faded:o=!1,onImageChange:s,onImageClear:c,onAltChange:l,onCaptionChange:u,onCaptionFocus:d,onCaptionBlur:f,onTkCountChange:p}){let[m,h]=(0,X.useState)(!1),[g,_]=(0,X.useState)(!1),[v,y]=(0,X.useState)(0),b=(0,X.useRef)(null),x=(0,X.useCallback)(e=>{y(e),p(e)},[p]),S=(0,X.useCallback)(e=>{b.current=e},[]),C=(0,X.useCallback)(()=>{b.current?.focusEditor({position:`bottom`})},[]),w=(0,X.useCallback)(()=>{_(!0),d()},[d]),T=(0,X.useCallback)(()=>{_(!1),f()},[f]),E=(0,X.useCallback)(e=>{if(e===null){h(!1),x(0),c();return}s(e)},[s,c,x]),D=wd(Ed,E),O=(0,X.useCallback)(e=>{s(e.src),u(e.caption)},[u,s]);return(0,Z.jsx)(Cd,{alt:t,className:e?`mb-8`:`mb-4`,faded:o,src:e,subject:Ed,testId:vi,unsplashEnabled:!!i.unsplash,upload:D,variant:`bar`,onChange:E,onUnsplashSelect:O,children:(0,Z.jsxs)(W,{align:`center`,className:`relative`,gap:`sm`,children:[m?(0,Z.jsx)(`input`,{"aria-label":`Alt text for feature image`,className:U(`flex-1 border-0 bg-transparent p-0 font-sans text-base leading-6 text-text-secondary outline-none placeholder:text-muted-foreground`,o&&`opacity-50 focus:opacity-100`),maxLength:Td,name:`alt`,placeholder:`Add alt text to the feature image`,type:`text`,value:t??``,autoFocus:!0,onChange:e=>l(e.target.value)}):(0,Z.jsx)(`div`,{className:U(`flex-1`,o&&!g&&`opacity-50`),"data-testid":yi,children:(0,Z.jsx)(vd,{darkMode:a,html:n,placeholder:g?``:`Add a caption to the feature image`,registerAPI:S,searchLinks:i.searchLinks,onBlur:T,onChangeHtml:u,onFocus:w,onTkCountChange:x},r)}),v>0&&!m&&(0,Z.jsx)(`button`,{className:`rounded-sm bg-state-warning px-1.5 py-0.5 text-2xs font-bold text-foreground`,"data-testid":`feature-image-tk-indicator`,type:`button`,onClick:C,children:`TK`}),(0,Z.jsx)(`button`,{"aria-label":`Toggle between editing alt text and caption`,className:U(`rounded-md border px-1.5 py-0.5 text-2xs font-medium tracking-wide`,m?`border-primary bg-primary text-primary-foreground`:`border-border-default bg-transparent text-text-secondary`),type:`button`,onClick:()=>h(!m),children:`Alt`})]})})}var Od={useFileUpload:(e=`image`)=>z(e,Q),fileTypes:ne},kd=()=>{};function Ad({editor:e,isSecondary:t,onError:n,initialLexical:r,placeholder:i,cardConfig:a,darkMode:o,cursorDidExitAtTop:s,onChange:c,onSecondaryChange:l,registerAPI:u,onWordCountChange:d,onTkCountChange:f}){let{KoenigComposer:p,KoenigEditor:m,WordCountPlugin:h,TKCountPlugin:g}=e.read();return(0,Z.jsx)(`div`,{"data-secondary-instance":t?`true`:`false`,"data-testid":t?li:ci,hidden:t,children:(0,Z.jsxs)(p,{cardConfig:a,darkMode:o,fileUploader:Od,initialEditorState:r??void 0,isTKEnabled:!0,onError:n,children:[(0,Z.jsx)(m,{cursorDidExitAtTop:t?void 0:s,darkMode:t?void 0:o,placeholderText:t?void 0:i,registerAPI:t?void 0:u,onChange:t?l:c}),(0,Z.jsx)(h,{onChange:t?kd:d}),(0,Z.jsx)(g,{onChange:t?kd:f})]})})}var jd=(0,X.memo)(function(e){let t=lr(),{onSecondaryError:n}=e,r=(0,X.useCallback)(e=>{ud(e),n?.()},[n]),i=(0,X.useCallback)((e,t)=>{dd(e,t),n?.()},[n]);return(0,Z.jsx)(`div`,{className:`koenig-react-editor koenig-lexical mx-auto w-full max-w-[740px]`,children:(0,Z.jsx)(Jr,{name:`the editor`,onError:dd,children:(0,Z.jsxs)(X.Suspense,{fallback:(0,Z.jsx)(`div`,{className:`flex justify-center py-10`,children:(0,Z.jsx)(tn,{size:`lg`})}),children:[(0,Z.jsx)(Jr,{fallback:null,name:`the editor`,onError:i,children:(0,Z.jsx)(Ad,{...e,editor:t,isSecondary:!0,onError:r})}),(0,Z.jsx)(Ad,{...e,editor:t,isSecondary:!1,onError:ud})]})})})}),Md=/(^|.)([^\p{L}\p{N}\s]*(TK)+[^\p{L}\p{N}\s]*)(.)?/u,Nd=/\p{L}|\p{N}/u;function Pd(e){return!(e[1]&&e[1].trim()&&Nd.test(e[1])||e[4]&&e[4].trim()&&Nd.test(e[4]))}function Fd(e){let t=e,n=Md.exec(t);for(;n!==null&&!Pd(n);)t=t.slice(n.index+n[0].length-1),n=Md.exec(t);return n!==null}function Id(){let e=document.activeElement;return e instanceof HTMLTextAreaElement?!e.readOnly&&!e.disabled:e instanceof HTMLInputElement?!e.readOnly&&!e.disabled&&[`text`,`search`,`email`,`url`,`tel`,`password`,`number`].includes(e.type):e instanceof HTMLElement&&e.isContentEditable===!0}function Ld(){let[e,t]=(0,X.useState)(!1);return(0,X.useEffect)(()=>{let e=window.visualViewport;if(!e)return;let n=()=>{t(e.scale===1&&window.innerHeight-e.height>150&&Id())};return n(),e.addEventListener(`resize`,n),window.addEventListener(`resize`,n),document.addEventListener(`focusin`,n),document.addEventListener(`focusout`,n),()=>{e.removeEventListener(`resize`,n),window.removeEventListener(`resize`,n),document.removeEventListener(`focusin`,n),document.removeEventListener(`focusout`,n)}},[]),e}var Rd=e=>e.charAt(0).toUpperCase()+e.slice(1),zd=`block w-full resize-none overflow-hidden border-0 bg-transparent p-0 outline-none`;function Bd(e,t){let n=(0,X.useCallback)(()=>{let t=e.current;t&&(t.style.height=`auto`,t.style.height=`${t.scrollHeight}px`)},[e]);(0,X.useLayoutEffect)(n,[n,t]),(0,X.useEffect)(()=>{let t=e.current;if(!t)return;let r=0,i=new ResizeObserver(()=>{cancelAnimationFrame(r),r=requestAnimationFrame(n)});return i.observe(t),()=>{cancelAnimationFrame(r),i.disconnect()}},[e,n])}function Vd({className:e,label:t,testId:n}){return(0,Z.jsxs)(be,{children:[(0,Z.jsx)(Ce,{asChild:!0,children:(0,Z.jsx)(`span`,{"aria-label":t,className:U(`absolute -left-15 text-muted-foreground`,e),"data-testid":n,role:`img`,children:(0,Z.jsx)(Pe,{})})}),(0,Z.jsx)(ye,{children:t})]})}function Hd({className:e,onClick:t,testId:n}){return(0,Z.jsx)(`button`,{className:U(`absolute rounded-sm bg-state-warning px-1.5 py-0.5 text-2xs font-bold text-foreground`,e),"data-testid":n,type:`button`,onClick:t,children:`TK`})}function Ud({postType:e,title:t,excerpt:n,titleError:r=null,excerptError:i=null,featureImage:a,titleAndFeatureImageHidden:o=!1,initialLexical:s,cardConfig:c,showExcerpt:l,autofocusTitle:u=!1,onTitleChange:d,onTitleBlur:f,onExcerptChange:p,onExcerptBlur:m,onLexicalChange:h,onSecondaryChange:g,onSecondaryError:_,registerEditorApi:v,onTkCountChange:y,wordCountAccessory:b,handleRef:x}){let{darkMode:S,isAdmin7:C}=xe(),w=Ld(),T=(0,X.useRef)(null),E=(0,X.useRef)(null),D=(0,X.useRef)(null),O=(0,X.useId)(),k=(0,X.useId)(),A=(0,X.useRef)(null),j=(0,X.useRef)(!1),[M,N]=(0,X.useState)(0),[P,F]=(0,X.useState)(0),[I,ee]=(0,X.useState)(0);Bd(E,t),Bd(D,n),(0,X.useLayoutEffect)(()=>{let e=T.current;if(!e)return;let t=()=>{e.style.setProperty(`--kg-breakout-adjustment`,`${Math.max(0,window.innerWidth-e.clientWidth)}px`)};t();let n=new ResizeObserver(t);return n.observe(e),window.addEventListener(`resize`,t),()=>{n.disconnect(),window.removeEventListener(`resize`,t)}},[]);let L=!!a.featureImage,R=Fd(t),z=l&&Fd(n);(0,X.useEffect)(()=>{y?.(+!!R+ +!!z+P+I)},[y,R,z,P,I]);let te=(0,X.useCallback)(()=>{E.current?.focus()},[]),ne=(0,X.useCallback)(()=>{D.current?.focus(),setTimeout(()=>D.current?.setSelectionRange(-1,-1),0)},[]);(0,X.useImperativeHandle)(x,()=>({focusTitle:te,focusExcerpt:ne}),[te,ne]);let ie=(0,X.useCallback)(e=>{A.current=e,v?.(e)},[v]),ae=e=>{let t=A.current;t&&(e===`Enter`&&!t.editorIsEmpty()?t.insertParagraphAtTop({focus:!0}):t.focusEditor({position:`top`}))};return(0,Z.jsxs)(`div`,{className:`relative h-full min-h-0`,"data-testid":oi,children:[(0,Z.jsx)(`div`,{className:`h-full scroll-pt-(--editor-overlap) overflow-x-hidden overflow-y-auto`,children:(0,Z.jsxs)(G,{ref:T,className:`min-h-full px-6 pt-[calc(var(--spacing)*12+var(--editor-overlap,0px))] pb-24 lg:mr-[calc(var(--spacing)*3*var(--editor-settings-progress,0))]`,gap:`none`,onDragOver:e=>e.preventDefault(),onDrop:e=>{e.dataTransfer.files.length>0&&(e.preventDefault(),A.current?.insertFiles(Array.from(e.dataTransfer.files)))},onMouseDown:e=>{j.current=e.nativeEvent.composedPath().some(e=>e instanceof Element&&e.matches(`[data-lexical-decorator], [data-kg-slash-menu]`))},onMouseUp:e=>{!j.current&&e.target===e.currentTarget&&A.current&&re(A.current,e),j.current=!1},children:[(0,Z.jsxs)(`div`,{className:`relative mx-auto w-full max-w-[740px]`,children:[(0,Z.jsx)(Dd,{alt:a.featureImageAlt,caption:a.featureImageCaption,captionKey:a.featureImageCaptionKey,cardConfig:c,darkMode:S,faded:o,image:a.featureImage,onAltChange:a.onFeatureImageAltChange,onCaptionBlur:a.onFeatureImageCaptionBlur,onCaptionChange:a.onFeatureImageCaptionChange,onCaptionFocus:a.onFeatureImageCaptionFocus,onImageChange:a.onFeatureImageChange,onImageClear:a.onFeatureImageClear,onTkCountChange:ee}),o&&L&&(0,Z.jsx)(Vd,{className:`-top-px`,label:`Feature image and post title are hidden on page`,testId:`feature-image-hidden-indicator`}),(0,Z.jsxs)(`div`,{className:`relative`,children:[o&&!L&&(0,Z.jsx)(Vd,{className:`top-4.5`,label:`Post title is hidden on page`,testId:`title-hidden-indicator`}),R&&(0,Z.jsx)(Hd,{className:`top-4.5 -right-14`,testId:`tk-indicator`,onClick:te}),(0,Z.jsx)(`textarea`,{ref:E,"aria-describedby":r?O:void 0,"aria-invalid":!!r,"aria-label":`${Rd(e)} title`,autoFocus:u,className:U(zd,`heading-font-features mb-4 min-h-0 max-w-none min-w-0 pb-1 text-[4.8rem] leading-[1.1] font-bold tracking-[-0.017em] text-foreground placeholder:font-bold placeholder:text-muted-foreground max-[769px]:text-[3.6rem] max-[501px]:text-[2.8rem]`,o&&`opacity-50 focus:opacity-100`),"data-testid":si,placeholder:`${Rd(e)} title`,rows:1,value:t,onBlur:f,onChange:e=>d(e.target.value),onKeyDown:e=>{let{key:t}=e,{value:n,selectionStart:r}=e.currentTarget,i=!n||r===n.length;if(l){t===`Enter`&&(e.preventDefault(),ne()),(t===`ArrowDown`||t===`ArrowRight`)&&!e.shiftKey&&i&&(e.preventDefault(),ne());return}!A.current||e.nativeEvent.isComposing||(t===`Enter`||t===`Tab`||(t===`ArrowDown`||t===`ArrowRight`)&&i)&&(e.preventDefault(),ae(t))},onPaste:e=>{let t=e.clipboardData.getData(`text`);t&&(e.preventDefault(),document.execCommand(`insertText`,!1,t.replace(/(\n|\r)+/g,` `).trim()))}})]}),r?(0,Z.jsx)(zt,{className:`-mt-2 mb-4`,id:O,children:r}):null,l&&(0,Z.jsxs)(`div`,{className:`relative`,children:[z&&(0,Z.jsx)(Hd,{className:`top-1 -left-12`,testId:`tk-indicator-excerpt`,onClick:ne}),(0,Z.jsx)(`textarea`,{ref:D,"aria-describedby":i?k:void 0,"aria-invalid":!!i,"aria-label":`Excerpt`,className:U(zd,`text-xl leading-normal tracking-tight text-text-secondary placeholder:text-muted-foreground`),"data-testid":`editor-excerpt-input`,placeholder:`Add an excerpt`,rows:1,value:n,onBlur:m,onChange:e=>p(e.target.value),onKeyDown:e=>{let{key:t}=e,{value:n,selectionStart:r}=e.currentTarget;if((t===`ArrowUp`||t===`ArrowLeft`)&&!e.shiftKey&&(!n||r===0)){e.preventDefault(),te();return}let i=!n||r===n.length,a=(t===`ArrowRight`||t===`ArrowDown`)&&i;(t===`Enter`||t===`Tab`&&!e.shiftKey||a)&&(e.preventDefault(),ae(t))}}),(0,Z.jsx)(`hr`,{className:U(`mt-4`,i?`mb-2 border-destructive`:`mb-6 border-border`)}),i?(0,Z.jsx)(zt,{className:`mb-6`,id:k,children:i}):null]})]}),(0,Z.jsx)(jd,{cardConfig:c,cursorDidExitAtTop:l?ne:te,darkMode:S,initialLexical:s,placeholder:`Begin writing your ${e}...`,registerAPI:ie,onChange:h,onSecondaryChange:g,onSecondaryError:_,onTkCountChange:F,onWordCountChange:N})]})}),(0,Z.jsxs)(W,{className:`absolute right-[calc(var(--spacing)*(4+2*var(--editor-settings-progress,0)))] bottom-3 z-20`,gap:`sm`,children:[!w&&(0,Z.jsxs)(K,{as:`span`,className:Ze({variant:null,size:C?`default`:`sm`,shape:`pill`,isAdmin7:C,className:`bg-background/80 px-3 text-(length:--text-control) text-text-secondary backdrop-blur-sm`}),"data-testid":`editor-word-count`,tone:`secondary`,weight:`medium`,children:[_e(M),` `,M===1?`word`:`words`]}),b,(0,Z.jsx)(q,{className:U(`bg-background/80 text-text-secondary backdrop-blur-sm hover:text-foreground`,C&&`[&_svg]:stroke-2!`),shape:`pill`,size:C?`icon`:`icon-sm`,variant:`ghost`,asChild:!0,children:(0,Z.jsx)(`a`,{"aria-label":`Editor help`,href:`https://ghost.org/help/using-the-editor/`,rel:`noopener noreferrer`,target:`_blank`,children:(0,Z.jsx)(Ve,{})})})]})]})}function Wd({snapshot:e,record:t,access:n,knownTiers:r,displayName:i,lexical:a}){let o=t&&`email`in t?t.email??null:null,s=t&&`newsletter`in t?t.newsletter??null:null;return{id:e.id??t?.id??``,displayName:i,status:e.status,title:e.title,excerpt:t?.custom_excerpt??null,url:t?.url??null,featureImage:t?.feature_image??null,publishedAt:e.publishedAt,visibility:n.visibility,tiers:n.tiers.flatMap(e=>{let n=e.slug??r?.find(({id:t})=>t===e.id)?.slug??t?.tiers?.find(({id:t})=>t===e.id)?.slug;return n?[{slug:n}]:[]}),newsletter:s?.slug??null,newsletterName:s?.name??null,newsletterStatus:s?.status??null,emailSegment:t&&`email_segment`in t?t.email_segment??null:null,emailOnly:t&&`email_only`in t?t.email_only===!0:!1,email:o,emailCreatedAt:o?.created_at??null,lexical:a??t?.lexical??null,updatedAt:t?.updated_at??null}}var Gd=`Your session expired. Retry to sign in again and save.`,Kd=`Someone else is editing this post. Reloading replaces what you have with their version, so copy your content first if you need it.`,qd=`This post was updated elsewhere.`,Jd=`Couldn’t reload this post`;function Yd(e){switch(e.kind){case`session-invalid`:return Gd;case`transport`:return`Couldn’t reach the server. Your changes are still here.`;default:return os(e)}}function Xd(e,t){(0,X.useEffect)(()=>{e!==null&&t!==null&&hd(e,t)},[e,t])}function Zd({hasUnsavedContent:e,contentText:t,onReload:n,error:r,stopped:i=!1}){let[a,o]=(0,X.useState)(!1),[s,c]=(0,X.useState)(!1),[l,u]=(0,X.useState)(!1),d=i?r:l?cu:null,f=d?d.message:Kd;Xd(f,d??r);let p=async()=>{o(!1),c(!0);let e=await n();c(!1),e===`gone`&&u(!0),e===`failed`&&R.error(Jd)},m=async()=>{try{await navigator.clipboard.writeText(t()),R.success(`Content copied`)}catch{R.error(`Couldn’t copy your content`)}};return(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(Mr,{className:`mx-4 mb-2 shrink-0 bg-destructive text-destructive-foreground`,"data-testid":mi,role:`alert`,size:`sm`,variant:`destructive`,children:(0,Z.jsxs)(W,{align:`center`,gap:`sm`,justify:`center`,wrap:!0,children:[(0,Z.jsx)(K,{className:`text-center text-inherit`,children:f}),(0,Z.jsxs)(W,{align:`center`,gap:`sm`,justify:`center`,children:[!d&&(0,Z.jsx)(q,{className:`border-destructive-foreground/40 text-destructive-foreground hover:bg-destructive-foreground/10 hover:text-destructive-foreground`,disabled:s,size:`sm`,variant:`outline`,onClick:()=>e()?o(!0):void p(),children:`Reload`}),(0,Z.jsx)(q,{className:`text-destructive-foreground hover:bg-destructive-foreground/10 hover:text-destructive-foreground`,size:`sm`,variant:`ghost`,onClick:()=>void m(),children:`Copy content`})]})]})}),(0,Z.jsx)(mt,{open:a,onOpenChange:o,children:(0,Z.jsxs)(ct,{className:Ts,"data-testid":hi,overlayClassName:Ts,children:[(0,Z.jsxs)(pt,{children:[(0,Z.jsx)(st,{children:`Discard your unsaved changes?`}),(0,Z.jsx)(ot,{children:`Reloading replaces this post with the version on the server. Anything you have not saved is lost.`})]}),(0,Z.jsxs)(dt,{children:[(0,Z.jsx)(ft,{asChild:!0,children:(0,Z.jsx)(q,{variant:`outline`,children:`Cancel`})}),(0,Z.jsx)(ut,{asChild:!0,children:(0,Z.jsx)(q,{variant:`destructive`,onClick:()=>void p(),children:`Discard and reload`})})]})]})})]})}function Qd({onReload:e}){let[t,n]=(0,X.useState)(!1),r=async()=>{n(!0);let t=await e();n(!1),t!==`reloaded`&&R.error(Jd)};return(0,Z.jsx)(Mr,{className:`mx-4 mb-2 shrink-0`,"data-testid":xi,role:`status`,size:`sm`,variant:`info`,children:(0,Z.jsxs)(W,{align:`center`,gap:`sm`,children:[(0,Z.jsx)(K,{children:qd}),(0,Z.jsx)(q,{disabled:t,size:`sm`,variant:`outline`,onClick:()=>void r(),children:`Reload`})]})})}function $d({state:e,pendingSave:t,newerVersionAvailable:n=!1,hasUnsavedContent:r,contentText:i,onRetrySave:a,onReload:o}){let s=e.kind===`error`?e.error:null;Xd(s&&Yd(s),s);let c=du(e),l=e.kind===`conflict`?e.error:c??(t?.blockedBy?.kind===`conflict`?t.blockedBy:null);return l?(0,Z.jsx)(Zd,{contentText:i,error:l,hasUnsavedContent:r,stopped:c!==null,onReload:o}):e.kind===`error`?(0,Z.jsx)(Mr,{className:`mx-4 mb-2 shrink-0`,"data-testid":bi,role:`alert`,size:`sm`,variant:`destructive`,children:(0,Z.jsxs)(W,{align:`center`,gap:`sm`,children:[(0,Z.jsx)(K,{children:e.error.kind===`host-limit`?(0,Z.jsx)(Zc,{parts:Jo(e.error.message)}):Yd(e.error)}),(0,Z.jsx)(q,{size:`sm`,variant:`outline`,onClick:a,children:`Retry`})]})}):t?.blockedBy?.kind===`validation`?(0,Z.jsx)(Mr,{className:`mx-4 mb-2 shrink-0`,role:`status`,size:`sm`,variant:`warning`,children:(0,Z.jsxs)(K,{children:[`Changes are waiting to save. `,t.blockedBy.message]})}):n?(0,Z.jsx)(Qd,{onReload:o}):null}function ef(e){return!e.loadedRecord&&e.createdId===null}function tf(e){let{title:t}=e.bind,{commitSettings:n,createdId:r,dispose:i,editPublishedAt:a,editSettings:o,editSlug:s,loadedRecord:c,publishTime:l,restoreRevision:u,settings:d,slug:f,stageSettings:p}=e,m=(0,X.useMemo)(()=>({title:t}),[t]);return(0,X.useMemo)(()=>({bind:m,commitSettings:n,createdId:r,dispose:i,editPublishedAt:a,editSettings:o,editSlug:s,loadedRecord:c,publishTime:l,restoreRevision:u,settings:d,slug:f,stageSettings:p}),[m,n,r,i,a,o,s,c,l,u,d,f,p])}function nf({message:e,onRetry:t}){return(0,Z.jsxs)(G,{align:`start`,className:`p-2`,"data-testid":Hi,gap:`sm`,children:[(0,Z.jsx)(K,{role:`alert`,size:`sm`,children:e}),(0,Z.jsx)(q,{size:`sm`,variant:`outline`,onClick:t,children:`Retry`})]})}function rf({children:e}){return(0,Z.jsx)(G,{className:`px-5 py-4`,gap:`sm`,children:e})}var af=[{value:`public`,label:`Public`},{value:`members`,label:`Members only`},{value:`paid`,label:`Paid-members only`},{value:`tiers`,label:`Specific tier(s)`}];function of(e,t){return e||t||`public`}function sf(e){let t=(e??[]).filter(e=>e.type===`paid`),n=$n(t),r=t.filter(e=>!e.active);return[...n,...r].map(e=>({id:e.id,name:e.name,archived:!e.active}))}function cf(e){return e.filter(e=>e.type!==`free`).map(e=>e.id).filter(e=>!!e)}function lf(e){return cf(e).map(e=>({id:e}))}function uf(e){try{let t=JSON.parse(e||`[]`);return Array.isArray(t)?t.filter(e=>typeof e==`string`):[]}catch{return[]}}function df(e,t){let n=new Set(e.map(e=>e.id)),r=e.filter(e=>t.has(e.id)).map(e=>e.id),i=[...t].filter(e=>!n.has(e));return[...r,...i].map(e=>({id:e}))}function ff({option:e,checked:t,onToggle:n}){let r=(0,X.useId)();return(0,Z.jsxs)(W,{gap:`sm`,children:[(0,Z.jsx)(yt,{checked:t,id:r,onCheckedChange:n}),(0,Z.jsx)(Lt,{htmlFor:r,children:e.name})]})}function pf({heading:e,options:t,selected:n,onToggle:r}){return t.length===0?null:(0,Z.jsxs)(G,{gap:`sm`,children:[(0,Z.jsx)(K,{size:`sm`,tone:`secondary`,weight:`medium`,children:e}),t.map(e=>(0,Z.jsx)(ff,{checked:n.has(e.id),option:e,onToggle:()=>r(e.id)},e.id))]})}function mf({session:e,postType:t}){let n=(0,X.useId)(),r=(0,X.useId)(),{data:i}=jo(),a=ur(i?.settings??null,`default_content_visibility`),o=ur(i?.settings??null,`default_content_visibility_tiers`),s=of(e.settings.visibility,a),c=ef(e)&&!e.settings.visibility&&s===`tiers`,l=new Set(c?uf(o):cf(e.settings.tiers)),u=ac(e.settings),{data:d,fetchNextPage:f,hasNextPage:p,isError:m,isFetchingNextPage:h,refetch:g}=Qn({defaultErrorHandler:!1,enabled:s===`tiers`,requestOptions:Q,searchParams:Oo});(0,X.useEffect)(()=>{p&&!h&&!m&&f()},[f,p,h,m]);let _=p?[]:sf(d?.tiers),v=t=>{if(ac(t)&&ef(e)){e.stageSettings(t);return}e.editSettings(t)},y=t=>v({visibility:t,tiers:t===`tiers`?lf(e.settings.tiers):[]}),b=t=>{let n=new Set(l);n.delete(t)||n.add(t);let r={visibility:`tiers`,tiers:df(_,n)};if(e.publishTime.status!==`draft`){e.stageSettings(r);return}v(r)};return(0,Z.jsxs)(rf,{children:[(0,Z.jsxs)(Lt,{htmlFor:n,children:[t===`page`?`Page`:`Post`,` access`]}),(0,Z.jsxs)(pn,{value:s,onValueChange:y,children:[(0,Z.jsx)(un,{"data-testid":Xi,id:n,children:(0,Z.jsx)(fn,{})}),(0,Z.jsx)(ln,{children:af.map(e=>(0,Z.jsx)(cn,{value:e.value,children:e.label},e.value))})]}),s===`tiers`?(0,Z.jsxs)(G,{"aria-describedby":u?r:void 0,"aria-invalid":u,"aria-label":`Tiers`,"data-testid":Zi,gap:`md`,role:`group`,children:[m?(0,Z.jsx)(nf,{message:`Couldn’t load tiers.`,onRetry:()=>void g()}):(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(pf,{heading:`Active tiers`,options:_.filter(e=>!e.archived),selected:l,onToggle:b}),(0,Z.jsx)(pf,{heading:`Archived tiers`,options:_.filter(e=>e.archived),selected:l,onToggle:b})]}),u?(0,Z.jsx)(zt,{"data-testid":Qi,id:r,children:Us}):null]}):null]})}var hf=`Use the publish menu to re-schedule`;function gf({session:e}){let t=(0,X.useId)(),n=(0,X.useId)(),r=Mo(),{status:i,publishedAt:a}=e.publishTime,o=new Date().toISOString(),s=a??o,c=i===`scheduled`,l=c&&!!a&&Date.parse(a)<Date.now(),u=sc(i,a);return(0,Z.jsxs)(rf,{children:[(0,Z.jsx)(Lt,{id:n,children:c&&!l?`Scheduled date`:`Publish date`}),(0,Z.jsx)(ml,{dateLabel:`Publish date`,dateTestId:aa,describedBy:u?t:void 0,disabled:c,invalid:u,labelledBy:n,maxDate:o,timeLabel:`Publish time`,timeTestId:oa,timezone:r,value:s,onChange:t=>e.editPublishedAt(t.toISOString())}),u?(0,Z.jsx)(zt,{"data-testid":sa,id:t,children:oc}):null,c&&!l?(0,Z.jsx)(K,{"data-testid":ca,size:`sm`,tone:`secondary`,children:hf}):null]})}var _f={include:`count.posts`,limit:`all`,order:`count.posts desc, name asc`};function vf(e){return e.normalize(`NFD`).replace(/\p{Diacritic}/gu,``).toLowerCase()}function yf(e){return e.name||e.email}function bf(e){return{id:e.id,name:yf(e),email:e.email}}function xf(e,t){let n=vf(t);return[e.name,e.slug,e.email].some(e=>vf(e??``).includes(n))}function Sf(e,t){let n=new Map((t??[]).map(e=>[e.id,e])),r=[];for(let t of e){if(!t.id)continue;let e=n.get(t.id);r.push(e?bf(e):{id:t.id,name:t.name||t.email||t.id,email:t.email??``})}return r}function Cf({inputId:e,describedBy:t,invalid:n,selected:r,staff:i,loading:a,loadError:o,onRetry:s,onChange:c,onOpen:l}){let u=(0,X.useRef)(null),d=o&&!a,f=(0,X.useCallback)(e=>{e&&l()},[l]);return(0,Z.jsx)(Hr,{chipVariant:()=>`secondary`,describedBy:t,emptyMessage:a?`Loading authors...`:`No authors found`,getKey:e=>e.id,getLabel:yf,inputId:e,inputLabel:`Authors`,inputRef:u,invalid:n,matches:xf,notice:d?(0,Z.jsx)(nf,{message:`Couldn’t load authors.`,onRetry:()=>{u.current?.focus(),s()}}):null,options:i,placeholder:`Select authors...`,renderOption:e=>(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(`span`,{className:`truncate`,children:yf(e)}),(0,Z.jsx)(`span`,{className:`ms-auto truncate text-xs text-muted-foreground`,children:e.email})]}),selected:r,testIds:{field:la,list:ua,chip:fa},hideSelected:!0,reopenOnRemove:!0,onAdd:e=>c([...r,bf(e)]),onOpenChange:f,onRemove:e=>c(r.filter(t=>t.id!==e)),onReorder:c})}function wf({session:e,currentUser:t}){let n=(0,X.useId)(),r=(0,X.useId)(),[i,a]=(0,X.useState)(!1),o=(0,X.useCallback)(()=>a(!0),[]),{data:s,fetchNextPage:c,hasNextPage:l,isFetching:u,isFetchingNextPage:d,isError:f,refetch:p}=On({defaultErrorHandler:!1,enabled:i,requestOptions:Q,searchParams:_f});(0,X.useEffect)(()=>{l&&!d&&!f&&c()},[c,l,d,f]);let m=e.settings.authors,h=Sf(m,[...s?.users??[],...t?[t]:[]]),g=h.length===0;return(0,Z.jsxs)(rf,{children:[(0,Z.jsx)(Lt,{htmlFor:n,children:`Authors`}),(0,Z.jsx)(Cf,{describedBy:g?r:void 0,inputId:n,invalid:g,loadError:f,loading:u||l,selected:h,staff:s?.users??[],onChange:t=>e.editSettings({authors:t}),onOpen:o,onRetry:()=>void p()}),g?(0,Z.jsx)(zt,{"data-testid":da,id:r,children:Ws}):null]})}var Tf=(0,X.forwardRef)(function({icon:e,children:t,className:n,...r},i){return(0,Z.jsxs)(`button`,{ref:i,className:U(`flex w-full items-center gap-2 px-5 py-3 text-left text-foreground hover:bg-interactive-hover focus-visible:ring-1 focus-visible:ring-focus-ring focus-visible:outline-hidden [&>svg]:size-4 [&>svg]:shrink-0`,n),type:`button`,...r,children:[e,(0,Z.jsx)(K,{as:`span`,className:`flex-1 text-control!`,weight:`medium`,children:t}),(0,Z.jsx)(tt,{className:`size-4 shrink-0 text-text-tertiary`})]})}),Ef=(0,X.createContext)(null);function Df(){let[e,t]=(0,X.useState)(null),n=(0,X.useCallback)(()=>{let e=document.activeElement;e instanceof HTMLElement&&e.blur(),t(null)},[]);return(0,X.useEffect)(()=>{if(!e)return;let t=e=>{e.key===`Escape`&&!e.defaultPrevented&&n()};return window.addEventListener(`keydown`,t),()=>window.removeEventListener(`keydown`,t)},[n,e]),(0,X.useMemo)(()=>({open:e,show:t,close:n}),[n,e])}function Of(){let e=(0,X.useContext)(Ef);if(!e)throw Error(`A settings subview must be rendered inside the settings panel.`);return e}function kf({id:e,icon:t,label:n,title:r,closeLabel:i,contentClassName:a,children:o}){let{open:s,show:c,close:l}=Of(),u=s?.id===e,d=(0,X.useRef)(null),f=(0,X.useRef)(null),p=(0,X.useRef)(!1);return(0,X.useEffect)(()=>{u?d.current?.focus():p.current&&f.current?.focus(),p.current=u},[u]),u?(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(we,{className:`z-10 shrink-0 bg-sidebar`,children:(0,Z.jsxs)(W,{align:`center`,className:`px-4 py-3`,gap:`sm`,children:[(0,Z.jsx)(q,{ref:d,"aria-label":i,className:`hover:bg-sidebar-accent [&_svg]:stroke-2!`,shape:`pill`,size:`icon`,variant:`ghost`,onClick:l,children:(0,Z.jsx)(je,{})}),(0,Z.jsx)(K,{as:`h2`,className:`flex-1`,size:`lg`,weight:`semibold`,children:r}),(0,Z.jsx)(we,{"aria-hidden":`true`,className:`size-(--editor-settings-toggle-width) shrink-0`})]})}),(0,Z.jsx)(G,{className:U(`min-h-0 flex-1 overflow-y-auto px-5 py-4 [&>*]:shrink-0`,a),"data-testid":ga,gap:`lg`,children:o})]}):(0,Z.jsx)(Tf,{ref:f,icon:t,onClick:()=>c({id:e,title:r}),children:n})}var Af=[()=>pe(()=>import(`./dist-C-_aTlvJ.js`).then(e=>e.html()),__vite__mapDeps([0,1,2,3,4,5]),import.meta.url),()=>pe(async()=>{let{Prec:e,keymap:t}=await import(`./esm-_iCUCvbN.js`).then(e=>e.n);return{Prec:e,keymap:t}},__vite__mapDeps([6,4,7,1]),import.meta.url).then(({Prec:e,keymap:t})=>e.lowest(t.of([{key:`Escape`,run:e=>(e.setTabFocusMode(2e3),!0)}])))],jf=`240px`;function Mf({text:e,helper:t}){return(0,Z.jsxs)(Z.Fragment,{children:[e,` `,(0,Z.jsx)(`code`,{className:`ml-1 font-normal`,children:t})]})}function Nf({session:e,postType:t}){let n=t===`page`?`Page`:`Post`,r=fc(`codeinjection_head`,e.settings),i=fc(`codeinjection_foot`,e.settings);return(0,Z.jsxs)(kf,{closeLabel:`Close code injection panel`,icon:(0,Z.jsx)(Le,{}),id:`code-injection`,label:`Code injection`,title:`Code injection`,children:[(0,Z.jsx)(Ct,{clearBg:!1,error:!!r,extensions:Af,height:jf,hint:r,title:(0,Z.jsx)(Mf,{helper:`{{ghost_head}}`,text:`${n} header`}),value:e.settings.codeinjection_head??``,onBlur:e.commitSettings,onChange:t=>e.stageSettings({codeinjection_head:t||null})}),(0,Z.jsx)(Ct,{clearBg:!1,error:!!i,extensions:Af,height:jf,hint:i,title:(0,Z.jsx)(Mf,{helper:`{{ghost_foot}}`,text:`${n} footer`}),value:e.settings.codeinjection_foot??``,onBlur:e.commitSettings,onChange:t=>e.stageSettings({codeinjection_foot:t||null})})]})}var Pf=6e4,Ff=`(Untitled)`,If={autosave:0,timed:1,field:2,settings:3,leave:4,explicit:5,publish:6,schedule:6,revert:6};function Lf(e){return e===`autosave`||e===`timed`||e===`field`||e===`settings`}function Rf(e){return e===`autosave`||e===`timed`||e===`field`}function zf(e){return e===`publish`||e===`schedule`||e===`revert`}function Bf(e,t){return e.kind===`settings`&&t.status!==`draft`}function Vf(e){if(e===null)return null;let t=Date.parse(e);return Number.isNaN(t)?e:new Date(t-t%1e3).toISOString()}function Hf(e,t){return t.emailOnly!==void 0&&(e.emailOnly=t.emailOnly),t.newsletter!==void 0&&(e.newsletter=t.newsletter),t.emailSegment!==void 0&&(e.emailSegment=t.emailSegment),e}function Uf(e,t,n={}){switch(e){case`publish`:return Hf({status:`published`,publishedAt:Vf(n.publishedAt===void 0?t.publishedAt:n.publishedAt)},n);case`schedule`:return Hf({status:`scheduled`,publishedAt:Vf(n.publishedAt??null)},n);case`revert`:return{status:`draft`,publishedAt:t.status===`scheduled`?null:Vf(t.publishedAt),emailOnly:!1}}}function Wf(e,t){return e.target?e.target:{status:Rf(e.kind)?`draft`:t.status,publishedAt:Vf(t.publishedAt)}}function Gf(e,t){return Wf(e,t).status!==t.status}var Kf={kind:`autosave`,requiresRevision:!1,requiresReconfirmation:!1},qf={kind:`timed`,requiresRevision:!1,requiresReconfirmation:!1};function Jf(e){return{kind:`dropped`,reason:e}}function Yf(e,t){return{kind:`failed`,error:e,executedAs:t}}function Xf(e,t){for(let n of e)n.resolve(t)}function Zf(e,t){let n=e.requiresRevision||t.some(e=>e.command.requiresRevision);return n===e.requiresRevision?e:{...e,requiresRevision:n}}function Qf(e){return{kind:`unknown`,message:e instanceof Error?e.message:`Save failed`,cause:e}}function $f(e){return typeof e==`string`&&!Number.isNaN(Date.parse(e))}function ep(e,t){if(e.kind!==t.kind)return!1;let n=e,r=t;return n.intent===r.intent&&n.pending===r.pending&&n.error===r.error}function tp(e){queueMicrotask(()=>{throw e})}function np(e){let t=()=>e.autosaveDebounceMs?.()??3e3,n=e.setTimeout??((e,t)=>globalThis.setTimeout(e,t)),r=e.clearTimeout??(e=>globalThis.clearTimeout(e)),i=e.onListenerError??tp,a=new Set,o=new Set,s={kind:`idle`},c=null,l=null,u=null,d=null,f=null,p=null,m=null,h=null,g=!1,_=null,v=!1;function y(){if(v)return null;let t=e.getSnapshot();return t.isDirty?{blockedBy:d?.error??(w(t)?h?.error:null)??(m?.source===`local-validation`?m.error:null)??(s.kind===`error`?s.error:null)}:null}function b(t){if(!ep(s,t)){s=t;for(let n of[e.onStateChange,...a]){if(s!==t)break;try{n?.(t)}catch(e){i(e)}}for(let e of[...o])e()}}function x(){return s.kind===`halted`||s.kind===`crashed`}function S({keepHalt:e=!0}={}){return d||x()||v?s:c?c.submittedVersion===null?{kind:`preparing`,intent:c.slot.command.kind,...u?{pending:u.command.kind}:{}}:u?{kind:`pending-coalesced`,intent:c.slot.command.kind,pending:u.command.kind}:{kind:`saving`,intent:c.slot.command.kind}:h?{kind:`conflict`,intent:h.intent,error:h.error}:e&&s.kind===`error`?s:f||p?{kind:`debouncing`}:{kind:`idle`}}function C(e){return m!==null&&e.version===m.version}function w(e){return h!==null&&e.updatedAt===h.updatedAt}function T(e,t){return Rf(e.kind)&&t.status!==`draft`?`not-draft`:!e.retry&&C(t)?`suppressed`:w(t)?`conflict`:null}function E(e){for(let t of[f,p])t&&(r(t.handle),e.push(...t.waiters));f=null,p=null}function D(e){let i=f?f.waiters:[];f&&r(f.handle),e&&i.push(e),f={handle:n(()=>{f=null,A(Kf,i)},t()),waiters:i},b(S())}function O(){if(p)return;let e=[];p={handle:n(()=>{p=null,A(qf,e)},Pf),waiters:e},b(S())}function k(e,t){if(!u){u={command:Zf(e,t),waiters:t};return}let n=u.command;if(zf(e.kind)&&zf(u.command.kind)){let t=u.waiters.filter(e=>zf(e.command.kind));u.waiters=u.waiters.filter(e=>!zf(e.command.kind)),Xf(t,{kind:`superseded`,by:e.kind}),n=e}else If[e.kind]>If[u.command.kind]&&(n=e);u.waiters.push(...t),u.command=Zf(n,u.waiters)}function A(e,t){if(c||d){k(e,t),b(S());return}ne({command:e,waiters:t})}function j(){if(c)return;let e=u;u=null,e?ne(e):b(S())}function M(e,t){return h?{kind:`conflict`,intent:h.intent,error:h.error}:{kind:`error`,intent:e,error:t}}function N(e,t,n,r){Xf(e.waiters,Yf(t,e.command.kind)),b(M(e.command.kind,t)),P(e,t,n,r),j()}function P(e,t,n,r){F({command:e.command,error:t,persisted:n!==null&&n.id!==null,durationMs:r})}function F(t){if(e.onSaveFailed)try{e.onSaveFailed(t)}catch(e){i(e)}}function I(e){return e.trim()?e:Ff}function ee(t,n){return t.slug&&t.status!==`draft`?Promise.resolve(null):e.slug.fromTitle(I(t.title),t.id,n)}function L(e,t,n){return{command:e,snapshot:t,title:I(t.title),slug:n?.source===`generated`?n.slug:t.slug,target:Wf(e,t),saveRevision:e.requiresRevision}}function R(e,t){let n=te(e,t);return n?(c=null,l=null,Xf(e.waiters,Jf(n)),j(),!0):!1}function z(e,t){m?.source===`local-validation`&&(m.settingsOnly&&Bf(e,t)?!t.settingsDirty:!t.isDirty)&&(m=null)}function te(e,t){z(e.command,t);let{kind:n}=e.command;return Lf(n)?Rf(n)&&t.status!==`draft`?`not-draft`:(Bf(e.command,t)?t.settingsDirty:t.isDirty)?T(e.command,t):`clean`:null}async function ne(t){E(t.waiters),t.command=Zf(t.command,t.waiters);let n;try{n=e.getSnapshot()}catch(e){N(t,Qf(e),oe(),null);return}if(Bf(t.command,n)){let e=t.waiters.filter(e=>Rf(e.command.kind));t.waiters=t.waiters.filter(e=>!Rf(e.command.kind)),Xf(e,Jf(`not-draft`))}let r=te(t,n);if(r){Xf(t.waiters,Jf(r)),r===`clean`&&Bf(t.command,n)&&s.kind===`error`&&s.intent===`settings`&&b(S({keepHalt:!1})),j();return}c={slot:t,submittedVersion:null};let i=new AbortController;l=i,b(S());let a,o=null;try{if(await e.slug.settled(),v||(n=e.getSnapshot(),R(t,n)))return;let r=await ee(n,i.signal);if(v||r&&(n=e.getSnapshot(),R(t,n)))return;let s=await e.prepare(L(t.command,n,r),i.signal);if(v)return;if(s.ok){if(m?.source===`local-validation`&&(m=null),c.submittedVersion=n.version,b(S()),v||(o=Date.now(),a=await e.execute(s.prepared,i.signal),v))return;a.ok&&await e.reconcile(s.prepared,a.result)}else{if(s.error.kind===`validation`){m={version:n.version,source:`local-validation`,error:s.error,settingsOnly:Bf(t.command,n)},c=null,l=null,Xf(t.waiters,Lf(t.command.kind)?{kind:`blocked`,error:s.error}:Yf(s.error,t.command.kind)),Lf(t.command.kind)||(b(M(t.command.kind,s.error)),P(t,s.error,n,null)),j();return}a={ok:!1,error:s.error}}}catch(e){a={ok:!1,error:Qf(e)}}if(!v){if(c=null,l=null,a.ok){m=null,h=null,Xf(t.waiters,{kind:`saved`,result:a.result,executedAs:t.command.kind}),j();return}re(t,n,a.error,o===null?null:Date.now()-o)}}function re(e,t,n,r){let i=e.command.kind;if(n.kind===`session-invalid`){d={slot:e,error:n,persisted:t.id!==null,durationMs:r},b({kind:`reauth-pending`,intent:i});return}if(n.kind===`not-found`||n.kind===`forbidden`){let a=[];E(a),u&&=(a.push(...u.waiters),null),Xf(a,Jf(`halted`)),Xf(e.waiters,Yf(n,i)),b(n.kind===`not-found`&&!t.id?{kind:`crashed`}:{kind:`halted`,error:n}),P(e,n,t,r);return}if(n.kind===`conflict`){h={updatedAt:t.updatedAt,error:n,intent:i};let a=[];E(a),u&&=(a.push(...u.waiters),null),Xf(a,Jf(`conflict`)),Xf(e.waiters,Yf(n,i)),b({kind:`conflict`,intent:i,error:n}),P(e,n,t,r);return}(n.kind===`validation`||n.kind===`host-limit`&&!Gf(e.command,t))&&(m={version:t.version,source:`server`,error:n}),N(e,n,t,r)}function ie(e,t,n){if(zf(e)&&t){let r=Uf(e,t,n);return{kind:e,target:r,requiresRevision:!1,requiresReconfirmation:r.status!==t.status}}return{kind:e,requiresRevision:e===`explicit`||e===`leave`,requiresReconfirmation:!1,...e===`settings`&&n?.retry?{retry:!0}:{}}}function ae(t,n){return new Promise(r=>{if(v){r(Jf(`disposed`));return}if(x()){r(Jf(`halted`));return}let i=null;if(Lf(t)||zf(t))try{i=e.getSnapshot()}catch(e){r(Yf(Qf(e),t));return}let a={command:ie(t,i,n),resolve:r};if(!Lf(t)||!i){let e=[a];E(e),A(a.command,e);return}z(a.command,i);let o=T(a.command,i);if(o){b(S()),r(Jf(o));return}if(t===`field`||t===`settings`){A(a.command,[a]);return}if(O(),i.id===null&&m?.source!==`local-validation`){A(a.command,[a]);return}D(a)})}function oe(){try{return e.getSnapshot()}catch{return null}}function B(e,t){return t?Gf(e,t):e.requiresReconfirmation}function se(){if(!d||v)return;let e=u?[d.slot,u]:[d.slot];d=null,u=null;let t=oe(),n=!1;for(let r of e){r.waiters.length===0&&(B(r.command,t)?n=!0:k(r.command,[]));for(let e of r.waiters)B(e.command,t)?(e.resolve({kind:`needs-retry`}),n=!0):k(e.command,[e])}n&&!u&&ce(t),j()}function ce(e){if(!e){O(),D();return}if(!(e.status!==`draft`||!e.isDirty||T(Kf,e))){if(O(),e.id===null&&m?.source!==`local-validation`){A(Kf,[]);return}D()}}function le(){if(!d||v)return;let{slot:e,error:t,persisted:n,durationMs:r}=d;d=null,Xf(e.waiters,Yf(t,e.command.kind));let i=[];E(i),u&&=(i.push(...u.waiters),null);for(let e of i)e.resolve(Yf(t,e.command.kind));b(M(e.command.kind,t)),F({command:e.command,error:t,persisted:n,durationMs:r})}function ue(e,t){let n=e??oe()?.updatedAt;return g||v||x()||c||d||!$f(n)||(h?n===h.updatedAt:oe()?.isDirty!==!1)||(h=null,m=null,g=!0,t?.(),g=!1,v)?!1:(b(S({keepHalt:!1})),!0)}function de(){return new Promise(e=>{let t=()=>{(!c&&!u||d||v||x())&&(o.delete(t),e())};o.add(t),t()})}function fe(){return _||=pe().finally(()=>{_=null}),_}async function pe(){let e=!1;for(;;){if(v)return`proceed`;let t=oe();if(!t||d)return`confirm`;if(x())return t.isDirty?`confirm`:`proceed`;let n=!e&&t.isDirty&&t.status===`draft`&&!w(t);if(n&&t.changedSinceLastRevision){e=!0,await ae(`leave`);continue}if(c||u){await de();continue}if(!t.isDirty)return`proceed`;if(n&&(f||p)){e=!0,await ae(`leave`);continue}return`confirm`}}function V(e){return a.add(e),()=>{a.delete(e)}}function me(){if(v)return;v=!0,l?.abort(),l=null;let e=[];E(e);for(let t of[c?.slot??null,u,d?.slot??null])t&&e.push(...t.waiters);c=null,u=null,d=null,Xf(e,Jf(`disposed`)),b({kind:`disposed`}),a.clear()}return{dispatch:ae,getState:()=>s,getPendingSave:y,subscribe:V,reauthSucceeded:se,reauthAbandoned:le,contentReloaded:ue,leaveRequested:fe,dispose:me}}var rp=`Your session expired. Delete again to sign in.`;function ip({session:e,postType:t}){let n=he(),r=a(),{mutateAsync:i}=ie(),{mutateAsync:o}=qn(),{data:s}=x({requestOptions:Q}),[l,u]=(0,X.useState)(!1),[d,f]=(0,X.useState)(!1),[p,m]=(0,X.useState)(!1),[h,g]=(0,X.useState)(null),_=e.loadedRecord?.id??e.createdId,v=t===`page`?`page`:`post`;if(!_)return null;let y=e.bind.title.trim()||e.loadedRecord?.title||`(Untitled)`,b=e=>{d||(u(e),g(null))},S=async()=>{f(!0),g(null);try{await(t===`page`?o({id:_,sessionExpiryRedirect:!1}):i({id:_,sessionExpiryRedirect:!1}))}catch(e){if(f(!1),e instanceof w){m(!0);return}g(c(e,`Couldn’t delete this ${v}.`));return}e.dispose(),r.invalidateQueries({queryKey:[t===`page`?Xn:se],refetchType:`none`}),n(t===`page`?`/pages`:`/posts`,{replace:!0})};return(0,Z.jsxs)(rf,{children:[(0,Z.jsxs)(mt,{open:l,onOpenChange:b,children:[(0,Z.jsx)(lt,{asChild:!0,children:(0,Z.jsxs)(q,{className:`w-full bg-destructive/10 hover:bg-destructive/20`,"data-testid":pa,variant:`destructive-ghost`,children:[(0,Z.jsx)(Ae,{}),`Delete `,v]})}),(0,Z.jsxs)(ct,{"data-testid":ma,children:[(0,Z.jsxs)(pt,{children:[(0,Z.jsxs)(st,{children:[`Are you sure you want to delete this `,v,`?`]}),(0,Z.jsxs)(ot,{children:[`You’re about to delete "`,(0,Z.jsx)(`strong`,{children:y}),`". This is permanent! We warned you, k?`]})]}),h?(0,Z.jsx)(K,{className:`text-destructive`,"data-testid":ha,role:`alert`,size:`sm`,children:h}):null,(0,Z.jsxs)(dt,{children:[(0,Z.jsx)(ft,{disabled:d,children:`Cancel`}),(0,Z.jsx)(q,{disabled:d,variant:`destructive`,onClick:()=>void S(),children:`Delete`})]})]})]}),(0,Z.jsx)(Is,{email:s?.email??``,open:p,onAbandoned:()=>{m(!1),g(rp)},onSucceeded:()=>{m(!1),S()}})]})}function $(e){return{text:e,mono:!0}}function ap(e){let t=e?{text:`⌘`,tooltip:`Command`}:{text:`Ctrl`,mono:!0},n=e?{text:`⌃`,tooltip:`Control`}:{text:`Ctrl`,mono:!0},r=e?{text:`⌥`,tooltip:`Option`}:{text:`Alt`,mono:!0},i=e?{text:`⇧`,tooltip:`Shift`}:$(`Shift`),a=e?{text:`↩`,tooltip:`Return`}:$(`Enter`);return[{title:`Formatting`,shortcuts:[{label:`Bold`,style:`bold`,keys:[t,$(`B`)]},{label:`Emphasize`,style:`italic`,keys:[t,$(`I`)]},{label:`Underline`,style:`underline`,keys:[t,$(`U`)]},{label:`Strike through`,style:`strikethrough`,keys:[n,r,$(`U`)]},{label:`Highlight`,style:`highlight`,keys:[t,r,$(`H`)]},{label:`Link`,style:`link`,keys:[t,$(`K`)]},{label:`Inline code`,style:`code`,keys:[n,i,$(`K`)]},{label:`List`,keys:[n,$(`L`)]},{label:`Ordered list`,keys:[n,r,$(`L`)]},{label:`Quote`,keys:[n,$(`Q`)]},{label:`H2`,keys:[n,r,$(`2`)]},{label:`H3`,keys:[n,r,$(`3`)]}]},{title:`Editing`,shortcuts:[{label:`Toggle card edit mode`,keys:[t,a]},{label:`Paste without formatting`,keys:[t,i,$(`V`)]},{label:`Indent`,keys:[$(`tab`)]},{label:`Unindent`,keys:[i,$(`tab`)]},{label:`Line break`,keys:[i,a]},{label:`Undo`,keys:[t,$(`Z`)]},{label:`Redo`,keys:[t,i,$(`Z`)]}]},{title:`Application`,shortcuts:[{label:`Save`,keys:[t,$(`S`)]},{label:`Preview`,keys:[t,$(`P`)]},{label:`Publish`,keys:[t,i,$(`P`)]}]},{title:`Inserting`,shortcuts:[{label:`Code block`,keys:[$("```"),a]},{label:`Language code block`,keys:[$("```html"),a]},{label:`Emoji`,keys:[$(`:emoji_name:`)]},{label:`Image`,keys:[$(`/image`)]},{label:`Markdown`,keys:[$(`/md`)]},{label:`HTML`,keys:[$(`/html`)]},{label:`Gallery`,keys:[$(`/gallery`)]},{label:`Divider`,keys:[$(`---`),{text:`or`,mono:!0,plain:!0},$(`/hr`)]},{label:`Bookmark`,keys:[$(`/bookmark [url]`)]},{label:`Public preview`,keys:[$(`/paywall`)]},{label:`Button`,keys:[$(`/button`)]},{label:`Callout`,keys:[$(`/callout`)]},{label:`Toggle`,keys:[$(`/toggle`)]},{label:`Video`,keys:[$(`/video`)]},{label:`Audio`,keys:[$(`/audio`)]},{label:`File`,keys:[$(`/file`)]},{label:`Product`,keys:[$(`/product`)]},{label:`Header`,keys:[$(`/header`)]},{label:`GIF`,keys:[$(`/gif`)]},{label:`Signup`,keys:[$(`/signup`)]},{label:`YouTube`,keys:[$(`/youtube [url]`)]},{label:`X (Twitter)`,keys:[$(`/twitter [url]`)]},{label:`Unsplash`,keys:[$(`/unsplash`)]},{label:`Vimeo`,keys:[$(`/vimeo [url]`)]},{label:`CodePen`,keys:[$(`/codepen [url]`)]},{label:`Spotify`,keys:[$(`/spotify [url]`)]},{label:`SoundCloud`,keys:[$(`/soundcloud [url]`)]},{label:`Other embed`,keys:[$(`/embed [url]`)]}]}]}var op={bold:`font-semibold`,italic:`italic`,underline:`underline`,strikethrough:`line-through`,highlight:`bg-yellow-200 text-black`,link:`text-ghostaccent`,code:`font-mono`};function sp({token:e}){let t=(0,Z.jsx)(wr,{"aria-label":e.tooltip,className:U(e.mono&&`font-mono`,e.plain&&`bg-transparent`,e.tooltip&&`pointer-events-auto`),role:e.tooltip?`img`:void 0,variant:`contrast`,children:e.text});return e.tooltip?(0,Z.jsxs)(be,{children:[(0,Z.jsx)(Ce,{asChild:!0,children:(0,Z.jsx)(`span`,{className:`inline-flex`,children:t})}),(0,Z.jsx)(ye,{children:e.tooltip})]}):t}function cp({shortcut:e}){return(0,Z.jsxs)(W,{className:`-mx-2 rounded-md px-2 py-1 hover:bg-interactive-hover`,"data-testid":ja,gap:`sm`,justify:`between`,children:[(0,Z.jsx)(`dt`,{className:`float-none clear-none m-0 w-auto min-w-0 flex-1 overflow-visible text-left font-normal wrap-anywhere whitespace-normal`,children:(0,Z.jsx)(K,{as:`span`,className:e.style&&op[e.style],size:`sm`,children:e.label})}),(0,Z.jsx)(`dd`,{className:`m-0 shrink-0`,children:(0,Z.jsx)(_r,{children:e.keys.map(e=>(0,Z.jsx)(sp,{token:e},e.text))})})]})}function lp(){let e=(0,X.useMemo)(()=>ap(vr()),[]);return(0,Z.jsx)(kf,{closeLabel:`Close keyboard shortcuts panel`,icon:(0,Z.jsx)(et,{}),id:`keyboard-shortcuts`,label:`Keyboard shortcuts`,title:`Keyboard shortcuts`,children:e.map(e=>(0,Z.jsxs)(G,{className:`mb-2`,gap:`sm`,children:[(0,Z.jsx)(K,{as:`h3`,className:`border-b border-border-default pb-2`,size:`md`,weight:`semibold`,children:e.title}),(0,Z.jsx)(`dl`,{className:`m-0`,children:e.shortcuts.map(e=>(0,Z.jsx)(cp,{shortcut:e},e.label))})]},e.title))})}var up=60,dp=149,fp=150,pp=`(Untitled)`,mp=[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`],hp=`Search engines will automatically show a custom preview of content related to the search term here if no custom meta description is set.`;function gp(e){return Array.from(e).length}function _p(e,t){let n=t-3,r=Array.from(e);return r.length>n?`${r.slice(0,n).join(``)}...`:e}function vp(e,t){return e||t||pp}function yp(e,t){return e||t||``}function bp({siteUrl:e,slug:t,canonicalUrl:n}){let r=[];if(n)try{let e=new URL(n);r.push(e.host,...e.pathname.split(`/`).filter(Boolean))}catch{return``}else{let n=new URL(e);r.push(n.host,...n.pathname.split(`/`).filter(Boolean),t)}return r.join(` › `)}function xp(e){return _p(e,up)}function Sp(e){return e?_p(e,dp):hp}function Cp(e){return _p(e,fp)}function wp(e){return`${String(e.getDate()).padStart(2,`0`)} ${mp[e.getMonth()]} ${e.getFullYear()}`}function Tp(e,t,n){let r=(0,X.useId)(),i=(0,X.useId)(),a=e.settings[t]??``,o=fc(t,e.settings),s=[n,o?i:void 0].filter(Boolean).join(` `);return{value:a,error:o,fieldProps:{id:r,value:a,"aria-invalid":!!o,"aria-describedby":s||void 0,onChange:n=>e.stageSettings({[t]:n.target.value||null}),onBlur:e.commitSettings},errorProps:{id:i}}}function Ep({id:e,value:t,recommended:n}){let r=gp(t);return(0,Z.jsxs)(K,{id:e,size:`sm`,tone:`secondary`,children:[`Recommended: `,(0,Z.jsx)(`b`,{children:_e(n)}),` characters. You've used`,` `,(0,Z.jsx)(`span`,{className:U(`font-bold`,r>n?`text-destructive`:`text-state-success`),children:_e(r)})]})}function Dp({url:e,title:t,description:n}){return(0,Z.jsxs)(G,{className:`rounded-md border border-border bg-surface-elevated p-5 font-[Arial,sans-serif]`,"data-testid":ba,gap:`xs`,children:[(0,Z.jsxs)(W,{className:`mb-5`,gap:`lg`,children:[(0,Z.jsx)(xn,{"aria-hidden":`true`,className:`h-5 w-auto shrink-0`}),(0,Z.jsx)(W,{className:`h-7 min-w-0 flex-1 rounded-full bg-muted px-3`,justify:`end`,children:(0,Z.jsx)($e,{className:`size-4 text-muted-foreground`})})]}),(0,Z.jsx)(K,{className:`truncate text-[14px] leading-[1.3]`,size:`sm`,children:e}),(0,Z.jsx)(K,{className:`text-[20px] leading-[1.3] text-search-result-title`,size:`lg`,children:xp(t)}),(0,Z.jsxs)(K,{className:`text-[14px] leading-[22px] text-search-result-description`,size:`sm`,tone:`secondary`,children:[wp(new Date),` — `,Sp(n)]})]})}function Op({session:e,siteUrl:t}){let n=(0,X.useId)(),r=(0,X.useId)(),i=Tp(e,`canonical_url`),a=Tp(e,`meta_title`,n),o=Tp(e,`meta_description`,r),s=vp(a.value,e.bind.title),c=yp(o.value,e.settings.custom_excerpt??``),l=bp({siteUrl:t,slug:e.slug,canonicalUrl:e.settings.canonical_url??``});return(0,Z.jsxs)(kf,{closeLabel:`Close meta data panel`,icon:(0,Z.jsx)($e,{}),id:`meta-data`,label:`Meta data`,title:`Meta data`,children:[(0,Z.jsxs)(Vt,{children:[(0,Z.jsx)(Bt,{htmlFor:a.fieldProps.id,children:`Meta title`}),(0,Z.jsx)(Xt,{"data-testid":_a,placeholder:s,...a.fieldProps}),(0,Z.jsx)(Ep,{id:n,recommended:60,value:a.value}),(0,Z.jsx)(zt,{...a.errorProps,children:a.error})]}),(0,Z.jsxs)(Vt,{children:[(0,Z.jsx)(Bt,{htmlFor:o.fieldProps.id,children:`Meta description`}),(0,Z.jsx)(vn,{"data-testid":va,placeholder:Cp(c),rows:3,...o.fieldProps}),(0,Z.jsx)(Ep,{id:r,recommended:145,value:o.value}),(0,Z.jsx)(zt,{...o.errorProps,children:o.error})]}),(0,Z.jsxs)(Vt,{children:[(0,Z.jsx)(Bt,{htmlFor:i.fieldProps.id,children:`Canonical URL`}),(0,Z.jsx)(Xt,{"data-testid":ya,placeholder:e.loadedRecord?.url??`${t.replace(/\/$/,``)}/${e.slug}/`,...i.fieldProps}),(0,Z.jsx)(zt,{...i.errorProps,children:i.error})]}),(0,Z.jsxs)(G,{gap:`sm`,children:[(0,Z.jsx)(K,{size:`sm`,weight:`medium`,children:`Search Engine Result Preview`}),(0,Z.jsx)(Dp,{description:c,title:s,url:l})]})]})}var kp=Fn(zn({id:Y().optional(),lexical:Y().nullish(),title:Y().nullish(),custom_excerpt:Y().nullish(),feature_image:Y().nullish(),feature_image_alt:Y().nullish(),feature_image_caption:Y().nullish(),post_status:Y().nullish(),reason:Y().nullish(),created_at:Y().optional(),created_at_ts:In().optional(),author:zn({name:Y().nullish(),profile_image:Y().nullish()}).nullish()}));function Ap(e){let t=kp.safeParse(e);return t.success?t.data:[]}function jp(e){if(typeof e.created_at_ts==`number`)return e.created_at_ts;let t=Date.parse(e.created_at??``);return Number.isNaN(t)?0:t}function Mp(e){return!e||e.lexical===null||e.lexical===void 0?!1:e.status!==`published`&&e.status!==`sent`?!0:!(`email_only`in e&&e.email_only)}function Np(e=[]){let t=Ap(e).sort((e,t)=>jp(t)-jp(e));return t.map((e,n)=>{let r=e.post_status===`published`&&t[n+1]?.post_status===`draft`,i=[];return n===0&&i.push(`latest`),r&&i.push(`published`),e.reason===`unpublished`&&i.push(`unpublished`),{id:e.id??String(n),lexical:e.lexical??null,title:e.title??``,customExcerpt:e.custom_excerpt??null,featureImage:e.feature_image??null,featureImageAlt:e.feature_image_alt??null,featureImageCaption:e.feature_image_caption??null,authorName:e.author?.name||`Deleted staff user`,authorImage:e.author?.profile_image??null,createdAt:e.created_at??``,tags:i}})}function Pp(e,t){let n=typeof t==`string`&&Ec.default.tz.zone(t)?t:`Etc/UTC`,r=Ec.default.tz(e,n);return r.isValid()?r.format(`D MMM YYYY, HH:mm`):``}function Fp(e){return Tn.sanitize(e??``,{ALLOWED_TAGS:[`a`,`b`,`i`,`span`],ALLOWED_ATTR:[`href`,`style`],ALLOW_DATA_ATTR:!1,ALLOW_ARIA_ATTR:!1})}function Ip({editor:e,lexical:t,cardConfig:n,darkMode:r}){let{KoenigComposer:i,KoenigEditor:a}=e.read(),o=(0,X.useCallback)(e=>{(e?.editorInstance)?.setEditable(!1)},[]);return(0,Z.jsx)(`div`,{className:`koenig-react-editor koenig-lexical [&_[data-kg-card]]:pointer-events-none`,"data-testid":Ra,children:(0,Z.jsx)(i,{cardConfig:n,darkMode:r,fileUploader:Od,initialEditorState:t??void 0,onError:ud,children:(0,Z.jsx)(a,{darkMode:r,placeholderText:``,registerAPI:o,readOnly:!0})})})}function Lp({revision:e,cardConfig:t,darkMode:n,showExcerpt:r,currentTitle:i,currentExcerpt:a}){let o=lr(),s=Fp(e.featureImageCaption),c=e.title||i,l=e.customExcerpt??a;return(0,Z.jsx)(`div`,{className:`mx-auto w-full max-w-[740px]`,"data-testid":Pa,children:(0,Z.jsx)(Jr,{name:`this version`,onError:dd,children:(0,Z.jsxs)(X.Suspense,{fallback:(0,Z.jsx)(W,{className:`py-10`,justify:`center`,children:(0,Z.jsx)(tn,{size:`lg`})}),children:[e.featureImage?(0,Z.jsxs)(`figure`,{className:`mb-6`,children:[(0,Z.jsx)(`img`,{alt:e.featureImageAlt??``,className:`w-full`,"data-testid":La,src:e.featureImage}),s?(0,Z.jsx)(`figcaption`,{dangerouslySetInnerHTML:{__html:s},className:`mt-2 text-center text-sm text-text-secondary`}):null]}):null,(0,Z.jsx)(`div`,{className:`heading-font-features mb-4 pb-1 text-[4.8rem] leading-[1.1] font-bold tracking-[-0.017em] text-foreground max-[769px]:text-[3.6rem] max-[501px]:text-[2.8rem]`,"data-testid":Fa,children:c}),r?(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(`div`,{className:`text-xl leading-normal tracking-tight text-text-secondary`,"data-testid":Ia,children:l}),l?(0,Z.jsx)(`hr`,{className:`mt-4 mb-6 border-border`}):null]}):null,e.lexical===null?(0,Z.jsx)(K,{tone:`secondary`,children:`This version has no body content to restore.`}):(0,Z.jsx)(Ip,{cardConfig:t,darkMode:n,editor:o,lexical:e.lexical},e.id)]})})})}var Rp={latest:`Latest`,published:`Published`,unpublished:`Unpublished`},zp={latest:`secondary`,published:`success`,unpublished:`warning`};function Bp({revision:e,timezone:t,selected:n,restorable:r,onSelect:i,onRestore:a}){return(0,Z.jsxs)(`li`,{className:U(`relative rounded-md px-3 py-2`,n?`bg-tab-active`:`hover:bg-interactive-hover`),children:[(0,Z.jsxs)(`button`,{"aria-current":n,className:`w-full text-left`,type:`button`,onClick:i,children:[(0,Z.jsxs)(W,{gap:`sm`,wrap:!0,children:[(0,Z.jsx)(K,{className:`whitespace-nowrap`,size:`sm`,weight:`medium`,children:Pp(e.createdAt,t)}),e.tags.map(e=>(0,Z.jsx)(gt,{variant:zp[e],children:Rp[e]},e))]}),(0,Z.jsxs)(W,{className:U(`mt-1 min-h-7`,n&&r&&`pr-20`),gap:`sm`,children:[(0,Z.jsx)(ht,{className:`size-6 shrink-0`,...Sn({name:e.authorName}),src:e.authorImage}),(0,Z.jsx)(K,{className:`truncate`,size:`sm`,tone:`secondary`,children:e.authorName})]})]}),n&&r?(0,Z.jsx)(q,{className:`absolute right-3 bottom-2 bg-surface-elevated-2`,size:`sm`,variant:`outline`,onClick:a,children:`Restore`}):null]})}function Vp({open:e,revisions:t,postType:n,isPublished:r,timezone:i,cardConfig:a,darkMode:o,showExcerpt:s,currentTitle:c,currentExcerpt:l,onRestore:u,onOpenChange:d,onCloseAutoFocus:f,restoreError:p}){let[m,h]=(0,X.useState)(0),[g,_]=(0,X.useState)(null),[v,y]=(0,X.useState)(!1),b=t[m],x=async e=>{if(e.preventDefault(),!g||v)return;y(!0);let t=await u(g);if(y(!1),_(null),t){R.success(`Revision restored.`),d(!1);return}R.error(`Failed to restore revision.`)};return(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(Fo,{"data-testid":Ma,headerActions:(0,Z.jsx)(q,{disabled:v,onClick:()=>d(!1),children:`Close`}),layout:`header`,open:e,title:`${n===`page`?`Page`:`Post`} history`,onCloseAutoFocus:f,onOpenChange:e=>!v&&d(e),children:(0,Z.jsxs)(W,{align:`stretch`,className:`min-h-0`,gap:`none`,children:[(0,Z.jsx)(`div`,{className:`min-w-0 flex-1 overflow-y-auto bg-surface-panel p-8`,children:b?(0,Z.jsx)(Lp,{cardConfig:a,currentExcerpt:l,currentTitle:c,darkMode:o,revision:b,showExcerpt:s}):(0,Z.jsxs)(K,{"data-testid":Pa,tone:`secondary`,children:[`This `,n,` has no saved versions yet.`]})}),(0,Z.jsxs)(G,{className:`w-[320px] shrink-0 overflow-y-auto border-l border-border p-3`,gap:`none`,children:[p?(0,Z.jsx)(K,{className:`mb-3 text-destructive`,role:`alert`,size:`sm`,children:p}):null,(0,Z.jsx)(`ul`,{className:`grid gap-px`,"data-testid":Na,children:t.map((e,t)=>(0,Z.jsx)(Bp,{restorable:t!==0&&e.lexical!==null,revision:e,selected:t===m,timezone:i,onRestore:()=>_(e),onSelect:()=>h(t)},e.id))})]})]})}),(0,Z.jsx)(mt,{open:!!g,onOpenChange:e=>!e&&!v&&_(null),children:(0,Z.jsxs)(ct,{className:Ts,"data-testid":za,overlayClassName:Ts,children:[(0,Z.jsxs)(pt,{children:[(0,Z.jsx)(st,{children:r?`Restore version for published ${n}?`:`Restore this version?`}),(0,Z.jsx)(ot,{children:r?`Heads up! This ${n} has already been published, restoring a previous version will automatically update the ${n} on your site.`:`Replace your existing draft with this version of the ${n}.`})]}),(0,Z.jsxs)(dt,{children:[(0,Z.jsx)(ft,{asChild:!0,children:(0,Z.jsx)(q,{disabled:v,variant:`outline`,children:`Cancel`})}),(0,Z.jsx)(ut,{asChild:!0,children:(0,Z.jsx)(q,{disabled:v,onClick:e=>void x(e),children:`Restore`})})]})]})})]})}function Hp({session:e,postType:t,cardConfig:n,showExcerpt:r,state:i}){let[a,o]=(0,X.useState)(!1),s=(0,X.useRef)(null),{darkMode:c}=xe(),l=Mo(),u=e.loadedRecord,d=(0,X.useMemo)(()=>Np(u?.post_revisions),[u]);return Mp(u)?(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsxs)(Tf,{ref:s,"data-testid":Aa,icon:(0,Z.jsx)(Ke,{}),onClick:()=>o(!0),children:[t===`page`?`Page`:`Post`,` history`]}),a?(0,Z.jsx)(Vp,{cardConfig:n,currentExcerpt:e.settings.custom_excerpt??null,currentTitle:u?.title??``,darkMode:c,isPublished:u?.status===`published`,open:a,postType:t,restoreError:i.kind===`error`&&i.error.kind===`session-invalid`||i.kind===`reauth-pending`?`Your session expired. Restore again to sign in and continue.`:void 0,revisions:d,showExcerpt:r,timezone:l,onCloseAutoFocus:e=>{e.preventDefault(),s.current?.focus()},onOpenChange:o,onRestore:t=>e.restoreRevision({lexical:t.lexical,title:t.title,custom_excerpt:r?t.customExcerpt??e.settings.custom_excerpt:e.settings.custom_excerpt,feature_image:t.featureImage,feature_image_alt:t.featureImageAlt,feature_image_caption:t.featureImageCaption})}):null]}):null}var Up=[`url`,`publish-date`,`tags`,`access`,`excerpt`,`authors`,`template`,`show-title-and-feature-image`,`featured`,`post-history`,`code-injection`,`meta-data`,`x-card`,`facebook-card`,`keyboard-shortcuts`,`delete`],Wp=`show_title_and_feature_image`,Gp=`Uh-oh. Looks like your theme doesn't support this feature.`,Kp=`https://docs.ghost.org/themes/helpers/`;function qp({session:e,currentUser:t}){let n=(0,X.useId)(),r=e.settings.show_title_and_feature_image??!0,{data:i}=er({enabled:!(t&&kn(t))&&!r,defaultErrorHandler:!1,requestOptions:Q}),a=i?.themes?.[0],o=!!a&&[...a.errors??[],...a.warnings??[]].some(e=>nr(e,Wp));return(0,Z.jsxs)(rf,{children:[(0,Z.jsxs)(W,{gap:`sm`,justify:`between`,children:[(0,Z.jsx)(Lt,{htmlFor:n,children:`Show title and feature image`}),(0,Z.jsx)(mn,{checked:r,"data-testid":Gi,id:n,onCheckedChange:t=>e.editSettings({show_title_and_feature_image:t})})]}),!r&&o?(0,Z.jsxs)(K,{"data-testid":Ki,size:`sm`,tone:`secondary`,children:[Gp,` `,(0,Z.jsx)(`a`,{className:`underline`,href:Kp,rel:`noopener noreferrer`,target:`_blank`,children:`Learn more`})]}):null]})}var Jp={id:`x-card`,name:`X`,icon:`twitter-x`,titleKey:`twitter_title`,descriptionKey:`twitter_description`,imageKey:`twitter_image`,siteImageKey:`siteTwitterImage`,titleTestId:Sa,descriptionTestId:Ca,previewTestId:wa,previewImageTestId:Ta,imageTestId:xa,previewRows:[`title`,`description`,`domain`],truncatesPreviewTitle:!1},Yp={id:`facebook-card`,name:`Facebook`,icon:`facebook`,titleKey:`og_title`,descriptionKey:`og_description`,imageKey:`og_image`,siteImageKey:`siteOgImage`,titleTestId:Ea,descriptionTestId:Da,previewTestId:Oa,previewImageTestId:ka,previewRows:[`domain`,`title`,`description`],truncatesPreviewTitle:!0};function Xp({own:e,metaTitle:t,title:n}){return e||vp(t,n)}function Zp({own:e,customExcerpt:t,metaDescription:n,postExcerpt:r,siteDescription:i}){return e||t||n||r||i||``}function Qp({own:e,featureImage:t,siteSocialImage:n,siteCoverImage:r}){return e||t||n||r||``}function $p(e){return e.replace(/^https?:\/\//,``).replace(/\/$/,``)}function em({network:e,session:t,siteUrl:n,featureImage:r,cardConfig:i}){let a=Tp(t,e.titleKey),o=Tp(t,e.descriptionKey),s=t.settings[e.imageKey]??``,c=`${e.name} image`,l=Xp({own:a.value,metaTitle:t.settings.meta_title??``,title:t.bind.title}),u=Zp({own:o.value,customExcerpt:t.settings.custom_excerpt??``,metaDescription:t.settings.meta_description??``,postExcerpt:t.loadedRecord?.excerpt??``,siteDescription:i.siteDescription}),d=Qp({own:s,featureImage:r??``,siteSocialImage:i[e.siteImageKey]??``,siteCoverImage:i.siteCoverImage??``}),f=(0,X.useCallback)(n=>t.editSettings({[e.imageKey]:n}),[e.imageKey,t]),p=wd(c,f),m=t=>t===`title`?(0,Z.jsx)(K,{size:`md`,weight:`medium`,children:e.truncatesPreviewTitle?_p(l,140):l},t):t===`description`?(0,Z.jsx)(K,{size:`sm`,tone:`secondary`,children:_p(u,140)},t):(0,Z.jsx)(K,{size:`sm`,tone:`secondary`,children:$p(n)},t);return(0,Z.jsxs)(kf,{closeLabel:`Close ${e.name} card panel`,icon:(0,Z.jsx)(Xr,{className:`size-4`,name:e.icon}),id:e.id,label:`${e.name} card`,title:`${e.name} card`,children:[(0,Z.jsx)(Cd,{src:s||null,subject:c,testId:e.imageTestId,unsplashEnabled:!!i.unsplash,upload:p,onChange:f}),(0,Z.jsxs)(Vt,{children:[(0,Z.jsxs)(Bt,{htmlFor:a.fieldProps.id,children:[e.name,` title`]}),(0,Z.jsx)(Xt,{"data-testid":e.titleTestId,placeholder:_p(l,40),...a.fieldProps}),(0,Z.jsx)(zt,{...a.errorProps,children:a.error})]}),(0,Z.jsxs)(Vt,{children:[(0,Z.jsxs)(Bt,{htmlFor:o.fieldProps.id,children:[e.name,` description`]}),(0,Z.jsx)(vn,{"data-testid":e.descriptionTestId,placeholder:_p(u,150),rows:3,...o.fieldProps}),(0,Z.jsx)(zt,{...o.errorProps,children:o.error})]}),(0,Z.jsxs)(G,{gap:`sm`,children:[(0,Z.jsxs)(K,{size:`sm`,weight:`medium`,children:[e.name,` preview`]}),(0,Z.jsxs)(G,{className:`overflow-hidden rounded-md border border-border`,"data-testid":e.previewTestId,gap:`none`,children:[d?(0,Z.jsx)(`img`,{alt:``,className:`h-[220px] w-full object-cover`,"data-testid":e.previewImageTestId,src:d}):null,(0,Z.jsx)(G,{className:`bg-surface-elevated p-4`,gap:`xs`,children:e.previewRows.map(m)})]})]})]})}var tm=191;function nm({session:e}){let t=(0,X.useId)(),n=e.settings.tags,r=t=>{t!==n&&e.editSettings({tags:t})};return(0,Z.jsxs)(rf,{children:[(0,Z.jsx)(Lt,{htmlFor:t,children:`Tags`}),(0,Z.jsx)(Kr,{defaultErrorHandler:!1,inputId:t,inputLabel:`Tags`,maxLength:tm,requestOptions:Q,selected:n,testIds:{field:$i,input:ea,list:ta,chip:na},deferSearch:!0,hideSelected:!0,onAdd:e=>{r(Vr(n,e))},onRemove:e=>{r(Br(n,e))},onReorder:r})]})}var rm=`default`,im=`Default`;function am(e){return e?.find(e=>e.active)?.templates??[]}function om(e,t){return!e.for||e.for.includes(t)}function sm(e){return e.filter(e=>!e.slug).sort((e,t)=>e.name.localeCompare(t.name))}function cm(e,t,n){return n?e.find(e=>!!e.slug&&om(e,t)&&e.slug===n):void 0}function lm(e,t){return e.some(e=>e.filename===t)&&t?t:rm}function um({session:e,postType:t}){let n=(0,X.useId)(),{data:r,isError:i,refetch:a}=tr({defaultErrorHandler:!1,requestOptions:Q}),o=am(r?.themes),s=sm(o),c=cm(o,t,e.slug);return i?(0,Z.jsx)(rf,{children:(0,Z.jsx)(nf,{message:`Couldn’t load templates.`,onRetry:()=>void a()})}):s.length===0?null:(0,Z.jsxs)(rf,{children:[(0,Z.jsx)(Lt,{htmlFor:n,children:`Template`}),(0,Z.jsxs)(pn,{disabled:!!c,value:lm(s,e.settings.custom_template),onValueChange:t=>e.editSettings({custom_template:t==="default"?null:t}),children:[(0,Z.jsx)(un,{"data-testid":ra,id:n,children:(0,Z.jsx)(fn,{})}),(0,Z.jsxs)(ln,{children:[(0,Z.jsx)(cn,{value:rm,children:im}),s.map(e=>(0,Z.jsx)(cn,{value:e.filename,children:e.name},e.filename))]})]}),c?(0,Z.jsxs)(K,{"data-testid":ia,size:`sm`,tone:`secondary`,children:[t===`page`?`Page`:`Post`,` URL matches `,c.filename]}):null]})}var dm=Tt(),fm=function(){let e,t;return{promise:new Promise((n,r)=>{e=n,t=r}),resolve:e,reject:t}};function pm(e,t){return!e||t===`(Untitled)`||t.endsWith(`(Copy)`)?!1:(0,dm.slugify)(t)!==e}function mm(e,t){if(e.mode===`custom`)return!1;let n=t.trim();return!(!n||n===`(Untitled)`&&e.slug)}function hm(e,t){let n=(e||t).trim();return!n||n===t?null:n}function gm(e,t,n){if(e===n)return n;let r=e.split(`-`);return Number(r.pop())>0&&r.join(`-`)===n&&e!==(0,dm.slugify)(t)?n:e}function _m(e){let t=e.kind===`generating`;return{mode:t&&e.request.kind===`manual`?`custom`:e.mode,slug:e.slug,title:e.title,pending:t}}var vm=({mode:e,slug:t,title:n})=>({kind:`idle`,mode:e,slug:t,title:n}),ym=(e,t,n)=>({slug:e,source:`unchanged`,reason:t,...n!==void 0&&{error:n}}),bm=(e,t)=>({type:`resolve`,ticket:e,proposal:t}),xm=(e,t)=>({type:`notify`,view:_m(e),proposal:t}),Sm=(e,t,n)=>[bm(t,n),xm(e,n)],Cm=e=>bm(e.ticket,ym(e.slugAtSubmission,`stale`)),wm=(e,t)=>t===e.title&&!!e.slug,Tm=(e,t)=>!mm({mode:`derived`,slug:e.slug},t);function Em(e,t,n){return{state:e,effects:Sm(e,t,ym(e.slug,n))}}function Dm(e,t){let n={...vm(e),kind:`generating`,request:{...t,slugAtSubmission:e.slug},deferred:null};return{state:n,effects:[{type:`request`,ticket:t.ticket,text:t.text},xm(n,null)]}}function Om(e,t,n){if(n.kind===`title`){let r=n.value.trim();return e.mode===`custom`?Em(e,t,`custom`):wm(e,r)?Em(e,t,`same-title`):Tm(e,r)?Em(e,t,`frozen`):Dm(e,{ticket:t,kind:`title`,text:r})}let r=hm(n.value,e.slug);return r===null?Em(e,t,`reverted`):Dm(e,{ticket:t,kind:`manual`,text:r})}function km(e,t,n){if(!n)return{state:e,effects:t};let r=Om(e,n.ticket,n.submission);return{state:r.state,effects:[...t,...r.effects]}}function Am(e,t,n){return{state:{...e,deferred:{ticket:t,submission:n,slugAtSubmission:e.slug}},effects:e.deferred?[Cm(e.deferred)]:[]}}function jm(e,t,n,r){let{request:i,deferred:a}=e,o=vm(e),s=r?a:null;return km(o,[...a&&!s?[Cm(a)]:[],Cm(i),...Sm(o,t,ym(o.slug,n))],s)}function Mm(e,t,n){let{request:r,deferred:i}=e;if(n.kind===`manual`){if(hm(n.value,e.slug)!==null)return Am(e,t,n);if(r.kind===`manual`)return jm(e,t,`reverted`,i?.submission.kind===`title`);let a=i?.submission.kind===`manual`?i:null,o=a?{...e,deferred:null}:e;return{state:o,effects:[...a?[Cm(a)]:[],...Sm(o,t,ym(o.slug,`reverted`))]}}if(r.kind===`manual`)return Am(e,t,n);let a=n.value.trim(),o=i?.submission.kind===`manual`;return wm(e,a)?jm(e,t,`same-title`,o):Tm(e,a)?jm(e,t,`frozen`,o):Am(e,t,n)}function Nm(e,t){let{request:n,deferred:r}=e,i=(e,t)=>{let i=vm(e);return km(i,Sm(i,n.ticket,t),r)};if(`error`in t)return i(e,ym(e.slug,`error`,t.error));if(!t.ok.trim())return i(e,ym(e.slug,`empty-result`));if(n.kind===`title`)return i({...e,slug:t.ok,title:n.text},{slug:t.ok,source:`generated`});let a=gm(t.ok,n.text,e.slug);return a===e.slug?i(e,ym(e.slug,`reverted`)):i({...e,slug:a,mode:`custom`},{slug:a,source:`manual`})}function Pm(e,t){switch(t.type){case`loaded`:{let n=vm({mode:pm(t.slug,t.title)?`custom`:`derived`,slug:t.slug,title:t.title});return{state:n,effects:[...e.kind===`generating`?[...e.deferred?[Cm(e.deferred)]:[],Cm(e.request)]:[],xm(n,null)]}}case`acknowledged`:{let{submitted:n,acknowledged:r}=t,i=e.slug===n.slug?r.slug:e.slug,a=e.title===n.title?r.title:e.title;if(i===e.slug&&a===e.title)return{state:e,effects:[]};let o={...e,slug:i,title:a};return{state:o,effects:[xm(o,null)]}}case`submitted`:return e.kind===`idle`?Om(e,t.ticket,t.submission):Mm(e,t.ticket,t.submission);case`settled`:return e.kind!==`generating`||e.request.ticket!==t.ticket?{state:e,effects:[]}:Nm(e,t.outcome)}}function Fm({generateSlug:e,onListenerError:t}){let n=vm({mode:`derived`,slug:``,title:``}),r=0,i=new Map,a=new Set,o=[],s=!1,c=n=>{switch(n.type){case`request`:new Promise(t=>{t(e(n.text))}).then(e=>l({type:`settled`,ticket:n.ticket,outcome:{ok:typeof e==`string`?e:``}}),e=>l({type:`settled`,ticket:n.ticket,outcome:{error:e}}));return;case`resolve`:{let e=i.get(n.ticket);i.delete(n.ticket),e?.(n.proposal);return}case`notify`:for(let e of a)try{e(n.view,n.proposal)}catch(e){try{t(e)}catch{}}}},l=e=>{let t=Pm(n,e);if(n=t.state,o.push(...t.effects),!s){s=!0;try{for(;o.length>0;)c(o.shift())}finally{s=!1}}},u=e=>{r+=1;let t=fm();return i.set(r,t.resolve),l({type:`submitted`,ticket:r,submission:e}),t.promise};return{loaded(e){l({type:`loaded`,slug:e.slug,title:e.title})},saveAcknowledged(e,t){l({type:`acknowledged`,submitted:e,acknowledged:t})},titleCommitted(e){return u({kind:`title`,value:e})},slugEdited(e){return u({kind:`manual`,value:e})},getState:()=>_m(n),subscribe(e){return a.add(e),()=>{a.delete(e)}}}}function Im(e,t,n){return`${e.replace(/^[a-z][a-z\d+.-]*:\/\//i,``).replace(/\/+$/,``)}/${n?`${n}/`:``}${t?`${t}/`:``}`}var Lm=`Couldn’t update the URL. Try again.`;function Rm(e,t,n){return(e?.status===`published`||e?.status===`sent`)&&e.url?{href:e.url,label:`View ${t}`}:e?.status===`scheduled`&&e.uuid?{href:cs(n,e.uuid),label:`Preview`}:null}function zm({session:e,postType:t,siteUrl:n}){let r=(0,X.useId)(),i=(0,X.useId)(),[a,o]=(0,X.useState)(null),[s,c]=(0,X.useState)(!1),[l,u]=(0,X.useState)(!1),{slug:d,editSlug:f,loadedRecord:p}=e,m=a??d,h=Rm(p,t,n),g=(0,X.useCallback)(()=>{if(u(!1),hm(m,d)===null){o(null);return}c(!0),f(m).then(e=>u(e===`failed`)).finally(()=>{c(!1),o(null)})},[f,d,m]),_=(0,X.useCallback)(e=>{e.key===`Enter`&&e.currentTarget.blur()},[]);return(0,Z.jsxs)(rf,{children:[(0,Z.jsxs)(W,{gap:`sm`,justify:`between`,children:[(0,Z.jsxs)(Lt,{htmlFor:r,children:[t===`page`?`Page`:`Post`,` URL`]}),h?(0,Z.jsxs)(`a`,{className:`inline-flex items-center gap-1 text-sm text-text-secondary hover:text-foreground`,href:h.href,rel:`noopener noreferrer`,target:`_blank`,children:[h.label,(0,Z.jsx)(Ye,{className:`size-3.5`})]}):null]}),(0,Z.jsxs)(en,{"data-disabled":s,children:[(0,Z.jsx)(Qt,{children:(0,Z.jsx)(Qe,{})}),(0,Z.jsx)(Zt,{"aria-describedby":l?i:void 0,"aria-invalid":l,"data-testid":qi,disabled:s,id:r,value:m,onBlur:g,onChange:e=>o(e.target.value),onKeyDown:_})]}),l?(0,Z.jsx)(zt,{"data-testid":Ji,id:i,children:Lm}):null,(0,Z.jsx)(K,{"data-testid":Yi,size:`sm`,tone:`secondary`,children:p?.status===`sent`?Im(n,p?.uuid??``,`email`):Im(n,m)})]})}var Bm=(0,X.memo)(mf),Vm=(0,X.memo)(wf),Hm=(0,X.memo)(Nf),Um=(0,X.memo)(ip),Wm=(0,X.memo)(lp),Gm=(0,X.memo)(Op),Km=(0,X.memo)(Hp),qm=(0,X.memo)(gf),Jm=(0,X.memo)(qp),Ym=(0,X.memo)(em),Xm=(0,X.memo)(nm),Zm=(0,X.memo)(um),Qm=(0,X.memo)(zm),$m=(0,X.memo)(function({session:e,inputRef:t}){let n=(0,X.useId)(),r=(0,X.useId)(),i=fc(`custom_excerpt`,e.settings);return(0,Z.jsxs)(rf,{children:[(0,Z.jsx)(Lt,{htmlFor:n,children:`Excerpt`}),(0,Z.jsx)(vn,{ref:t,"aria-describedby":i?r:void 0,"aria-invalid":!!i,"data-testid":Ui,id:n,rows:3,value:e.settings.custom_excerpt??``,onBlur:e.commitSettings,onChange:t=>e.stageSettings({custom_excerpt:t.target.value||null})}),i?(0,Z.jsx)(zt,{id:r,children:i}):null]})}),eh=(0,X.memo)(function({session:e,postType:t}){let n=(0,X.useId)();return(0,Z.jsx)(rf,{children:(0,Z.jsxs)(W,{gap:`sm`,justify:`between`,children:[(0,Z.jsxs)(Lt,{htmlFor:n,children:[`Feature this `,t]}),(0,Z.jsx)(mn,{checked:e.settings.featured,"data-testid":Wi,id:n,onCheckedChange:t=>e.editSettings({featured:t})})]})})});function th({session:e,postType:t,siteUrl:n,cardConfig:r,featureImage:i,currentUser:a,hasInlineExcerpt:o=!1,excerptRef:s}){let c=tf(e),l=!!a&&Mn(a),u=!!a&&!kn(a),d=!!a&&!En(a),f=Df(),p={url:(0,Z.jsx)(Qm,{postType:t,session:c,siteUrl:n}),"publish-date":(0,Z.jsx)(qm,{session:c}),tags:u?(0,Z.jsx)(Xm,{session:c}):null,excerpt:o?null:(0,Z.jsx)($m,{inputRef:s,session:c}),featured:l?(0,Z.jsx)(eh,{postType:t,session:c}):null,access:l?(0,Z.jsx)(Bm,{postType:t,session:c}):null,authors:d?(0,Z.jsx)(Vm,{currentUser:a,session:c}):null,"show-title-and-feature-image":t===`page`?(0,Z.jsx)(Jm,{currentUser:a,session:c}):null,template:(0,Z.jsx)(Zm,{postType:t,session:c}),delete:(0,Z.jsx)(Um,{postType:t,session:c}),"code-injection":(0,Z.jsx)(Hm,{postType:t,session:c}),"meta-data":(0,Z.jsx)(Gm,{session:c,siteUrl:n}),"keyboard-shortcuts":(0,Z.jsx)(Wm,{}),"x-card":(0,Z.jsx)(Ym,{cardConfig:r,featureImage:i,network:Jp,session:c,siteUrl:n}),"facebook-card":(0,Z.jsx)(Ym,{cardConfig:r,featureImage:i,network:Yp,session:c,siteUrl:n}),"post-history":(0,Z.jsx)(Km,{cardConfig:r,postType:t,session:c,showExcerpt:o,state:e.state})},m=f.open&&p[f.open.id]?f.open:null;(0,X.useEffect)(()=>{f.open&&!m&&f.close()},[m,f]);let h=`${t===`page`?`Page`:`Post`} settings`,g=Up.map(e=>(0,Z.jsxs)(X.Fragment,{children:[!m&&e===`post-history`?(0,Z.jsx)(Or,{className:`my-3`}):null,m&&m.id!==e?null:p[e]]},e));return(0,Z.jsx)(Ef.Provider,{value:f,children:(0,Z.jsx)(we,{className:`absolute inset-y-0 right-0 z-30 w-[calc(var(--editor-settings-progress,1)*var(--editor-settings-width))] overflow-hidden [--editor-settings-width:350px] max-[500px]:[--editor-settings-width:100vw] lg:static lg:shrink-0`,children:(0,Z.jsx)(`aside`,{"aria-label":m?.title??h,className:`my-2 mr-2 h-[calc(100%-var(--spacing)*4)] w-[calc(var(--editor-settings-width)-var(--spacing)*2)] overflow-hidden rounded-xl border border-border bg-sidebar`,"data-testid":Bi,children:(0,Z.jsxs)(G,{className:`h-full min-h-0 opacity-(--editor-settings-progress,1)`,gap:`none`,children:[m?null:(0,Z.jsx)(we,{className:`z-10 shrink-0 bg-sidebar`,children:(0,Z.jsxs)(W,{align:`center`,className:`px-4 py-3`,gap:`sm`,justify:`between`,children:[(0,Z.jsx)(K,{as:`h2`,className:`pl-1`,size:`lg`,weight:`semibold`,children:h}),(0,Z.jsx)(we,{"aria-hidden":`true`,className:`size-(--editor-settings-toggle-width) shrink-0`})]})}),(0,Z.jsx)(G,{className:U(`min-h-0 flex-1`,m?`overflow-hidden`:`overflow-x-hidden overflow-y-auto [&>*]:shrink-0`),gap:`none`,children:g})]})})})})}function nh(e){return e.replace(/<code\b[^>]*>((.*?){.*?}(.*?))<\/code>/gi,`$1`)}function rh(e=``,t={}){let n=Object.assign({},{},t);if(!n.createDocument){let e=typeof DOMParser<`u`&&DOMParser||typeof window<`u`&&window.DOMParser;if(!e)throw Error("cleanBasicHtml() must be passed a `createDocument` function as an option when used in a non-browser environment");n.createDocument=function(t){return new e().parseFromString(t,`text/html`)}}let r=e;if((!n.allowBr||r===`<br>`)&&(r=r.replace(/<br\s?\/?>/g,` `)),n.removeCodeWrappers&&(r=nh(r)),r=r.replace(/(\s|&nbsp;){2,}/g,` `).trim().replace(/^&nbsp;|&nbsp$/g,``).trim(),r){let e=n.createDocument(r);if(e.body.textContent===``)return``;e.body.querySelectorAll(`*`).forEach(t=>{if(!t.textContent?.trim().replace(/\u200c+/g,``)){if(n.allowBr&&t.tagName===`BR`)return;if(n.allowBr&&t.querySelector(`br`))return t.replaceWith(e.createElement(`br`));if(t.textContent&&t.textContent.length>0){let n=e.createTextNode(` `);return t.replaceWith(n)}return t.remove()}}),r=n.firstChildInnerContent&&e.body.firstElementChild?e.body.firstElementChild.innerHTML.trim():e.body.innerHTML.trim()}return r}function ih(e){return rh(e??``,{firstChildInnerContent:!0})}function ah(e){if(e.tagName!==`SPAN`||e.attributes.length!==1)return!1;let t=(e.getAttribute(`style`)??``).split(`;`).map(e=>e.trim()).filter(Boolean);return t.length===1&&/^white-space\s*:\s*pre-wrap$/i.test(t[0])}function oh(e){return e?new DOMParser().parseFromString(e,`text/html`).body.firstElementChild?.tagName===`P`?e:`<p>${e}</p>`:null}function sh(e){let t=ih(oh(e)),n=new DOMParser().parseFromString(t,`text/html`);return n.body.querySelectorAll(`span`).forEach(e=>{ah(e)&&e.replaceWith(...e.childNodes)}),n.body.innerHTML.trim()}function ch(e,t,n=0){let r=(0,X.useRef)(e);r.current=e;let[i,a]=(0,X.useState)(t?.feature_image??null),[o,s]=(0,X.useState)(t?.feature_image_caption??null),[c,l]=(0,X.useState)(0),[u,d]=(0,X.useState)(!1),[f,p]=(0,X.useState)(n),m=(0,X.useRef)(o);m.current=o,f===n?!u&&e.featureImageCaption!==o&&(sh(e.featureImageCaption)!==sh(o)&&l(e=>e+1),s(e.featureImageCaption)):(p(n),a(t?.feature_image??null),s(t?.feature_image_caption??null),d(!1));let h=(0,X.useCallback)(e=>{a(e),r.current.patchFeatureImage({feature_image:e}),r.current.commitField()},[]),g=(0,X.useCallback)(()=>{a(null),s(null),r.current.patchFeatureImage({feature_image:null,feature_image_alt:null,feature_image_caption:null}),r.current.commitField()},[]),_=(0,X.useCallback)(e=>{r.current.patchFeatureImage({feature_image_alt:e}),r.current.commitField()},[]),v=(0,X.useCallback)(e=>{let t=ih(e);sh(t)!==sh(m.current)&&(s(t),r.current.patchFeatureImage({feature_image_caption:t}))},[]),y=(0,X.useCallback)(()=>d(!0),[]),b=(0,X.useCallback)(()=>{d(!1),r.current.commitField()},[]);return{featureImage:i,featureImageAlt:e.featureImageAlt,featureImageCaption:oh(o),featureImageCaptionKey:c,onFeatureImageChange:h,onFeatureImageClear:g,onFeatureImageAltChange:_,onFeatureImageCaptionChange:v,onFeatureImageCaptionFocus:y,onFeatureImageCaptionBlur:b}}var lh=2e4;function uh(e,{ms:t,isSigningIn:n,onLate:r}){return new Promise(i=>{let a,o=()=>{if(n()){a=setTimeout(o,lh);return}r(),i(`confirm`)};a=setTimeout(o,t),e.then(i,()=>i(`confirm`)).finally(()=>clearTimeout(a))})}function dh(e,t){return t?!0:e.kind===`preparing`||e.kind===`saving`||e.kind===`pending-coalesced`||e.kind===`reauth-pending`}function fh(e,t,n,r){let i=`/editor/${n}`;if(Er(e.pathname)!==i||!t.pathname.startsWith(`${i}/`))return!1;let a=t.pathname.slice(i.length+1);return!a||a.includes(`/`)?!1:t.state?.editorSession===r}var ph=(0,X.createContext)(``),mh=(0,X.createContext)(()=>{}),hh=ph.Provider,gh=mh.Provider;function _h(){return(0,X.useContext)(ph)}function vh(){return(0,X.useContext)(mh)}function yh(){let e=H(),t=V().at(-1)?.params,n=Er(e.pathname),[r,i]=(0,X.useState)(()=>({screen:bh(),count:0,path:n,location:e,navigation:t,created:!1})),a=(0,X.useCallback)(()=>{i(e=>e.created?e:{...e,created:!0})},[]),o=`${r.screen}:${r.count}`;if(e===r.location&&t===r.navigation)return{key:o,markCreated:a};let s=e.state?.editorSession,c=n===r.path&&r.created&&xh(n),l=(n===r.path?!c:s===o)?{...r,path:n,location:e,navigation:t}:{...r,path:n,location:e,navigation:t,count:r.count+1,created:!1};return i(l),{key:`${l.screen}:${l.count}`,markCreated:a}}function bh(){return Array.from(crypto.getRandomValues(new Uint32Array(2)),e=>e.toString(36)).join(``)}function xh(e){return e.split(`/`).filter(Boolean).length===2}function Sh(e,t){let n=H(),r=he(),i=_h(),a=e.isDirty(),o=dh(e.state,a),[s,c]=(0,X.useState)(!1),l=Fr({when:o,confirmUnloadWhen:o,interceptNavigation:({currentLocation:e,nextLocation:n})=>fh(e,n,t,i),guardHistoryPops:!0});(0,X.useEffect)(()=>o?y():void 0,[o]);let u=(0,X.useRef)(l);u.current=l;let d=(0,X.useRef)(e.state);d.current=e.state;let f=(0,X.useRef)(null),p=(0,X.useRef)(!1),m=(0,X.useRef)(!0);(0,X.useEffect)(()=>(m.current=!0,()=>{m.current=!1}),[]),(0,X.useEffect)(()=>{p.current&&(p.current=!1,c(!1))},[n]);let h=l.interceptedNavigation.isBlocked,g=e.createdId,_=vh();(0,X.useEffect)(()=>{g&&_()},[g,_]);let{hasBlockedNavigation:v}=l;(0,X.useEffect)(()=>{if(!g||v()||h||p.current)return;let e=`/editor/${t}/${g}`;n.pathname!==e&&r(e,{replace:!0,state:{editorSession:i}})},[g,l.isBlocked,v,h,n.pathname,r,t,i]),(0,X.useEffect)(()=>{h&&u.current.interceptedNavigation.proceed()},[h]);let{isBlocked:b}=l,{leaveRequested:x}=e,S=(0,X.useRef)(!1);(0,X.useEffect)(()=>{if(!b){S.current=!1,p.current||c(!1);return}S.current||(S.current=!0,uh(x(),{ms:d.current===f.current?0:lh,isSigningIn:()=>d.current.kind===`reauth-pending`,onLate:()=>{f.current=d.current}}).then(e=>{if(!(!m.current||!u.current.isBlocked)){if(e===`confirm`){c(!0);return}p.current=!0,u.current.dialogProps.onConfirm()}}))},[b,x]);let C=l.dialogProps;return{dialogProps:{open:s,onConfirm:()=>{p.current||(p.current=!0,C.onConfirm())},onOpenChange:e=>{p.current||(e||c(!1),C.onOpenChange(e))}}}}var Ch=()=>{let e=C();return(0,X.useCallback)(async({type:t,text:n,id:r,sessionExpiryRedirect:i})=>{if(!n)return``;let a=encodeURIComponent((0,dm.slugify)(n)),o=r?`/slugs/${t}/${a}/${r}/`:`/slugs/${t}/${a}/`;return(await e(_(o),{sessionExpiryRedirect:i})).slugs[0].slug},[e])},wh=`title.slug.lexical.tags.custom_excerpt.email_subject.feature_image.feature_image_alt.feature_image_caption.featured.visibility.tiers.authors.meta_title.meta_description.canonical_url.custom_template.codeinjection_head.codeinjection_foot.og_image.og_title.og_description.twitter_image.twitter_title.twitter_description.show_title_and_feature_image.updated_at`.split(`.`),Th=new Set([`tiers`,`authors`]),Eh=new Set([`title`,`lexical`,`tags`,`updated_at`]);function Dh(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function Oh(e){return Array.isArray(e)?e.map(Oh):Dh(e)?Object.fromEntries(Object.entries(e).map(([e,t])=>[e,Oh(t)])):e}function kh(e){return Oh(Vs(e,wh))}function Ah(e){return Oh(Vs(e,wh.filter(t=>t in e&&e[t]!==void 0)))}function jh(e){return e==null?null:typeof e==`string`?e:JSON.stringify(e)}function Mh(e,t){let n=e??[],r=t??[];return n.length===r.length&&n.every((e,t)=>Ur(e,r[t]))}function Nh(e,t){return e.trim()===t.trim()}function Ph(e){return(e??[]).map(e=>e.id??``)}function Fh(e,t,n){return e===`title`?Nh(t,n):e===`tags`?Mh(t,n):Th.has(e)?Pr(Ph(t),Ph(n)):Pr(t,n)}function Ih(e,t){if(e===null||t===null)return!1;let n=Date.parse(e),r=Date.parse(t);return!Number.isNaN(n)&&!Number.isNaN(r)&&n<r}var Lh=200,Rh=4*Lh;function zh(e,t){let n=Math.min(e.length,t.length),r=0;for(;r<n&&e[r]===t[r];)r+=1;return r===e.length&&r===t.length?null:t.length>0&&r<=Lh&&t.length-r<=Lh||e.length<=Rh?{at:r,before:``,live:``,other:``}:{at:r,before:e.slice(Math.max(0,r-Lh),r),live:e.slice(r,r+Lh),other:t.slice(r,r+Lh)}}function Bh(e={}){let t=e.siteUrl??``,n=null,r=!1,i=new Set,a=null,o=null,s={status:`pending`},c=!1,l=!1,u=!1;function d(e,n){return $r(e,n,t)}function f(e,n){try{let r=Qr(e,t);return{status:`ready`,lexical:e,forms:new Set([...n,r])}}catch{return{status:`ready`,lexical:e,forms:n}}}function p(e,t,n){if(e===`lexical`)try{return d(t,n)}catch{return!1}return Fh(e,t,n)}function m(e){return!u&&a!==null&&e===n}function h(e){return m(e)||e===null&&r&&!u&&a!==null}function g(e,t){return wh.some(n=>!Eh.has(n)&&!p(n,e[n],t[n]))}function _(){if(!a||!o)return null;let e=o.lexical;try{return d(a.lexical,e)?null:s.status===`pending`?`BASELINE_PENDING`:s.status===`failed`?`BASELINE_FAILED`:s.forms.has(Qr(e,t))?null:`SCRATCH_DIVERGED_FROM_SECONDARY`}catch{return`LEXICAL_PARSE_FAILED`}}function v(e,n){try{return zh(Qr(e,t),Qr(n,t))}catch{return zh(e??``,n??``)}}function y(){if(!a||!o)return[];let e=[];l&&e.push({code:`POST_HAS_ERROR`}),Mh(a.tags,o.tags)||e.push({code:`POST_TAGS_DIVERGED`}),Nh(a.title,o.title)||e.push({code:`POST_TITLE_DIVERGED`});let t=_();return t&&e.push({code:t}),g(a,o)&&e.push({code:n===null?`NEW_POST_HAS_CHANGED_ATTRIBUTES`:`POST_HAS_DIRTY_ATTRIBUTES`}),e}return{load(e,t){u||(n=e,r=!1,e!==null&&i.add(e),a=kh(t),o=kh(t),s={status:`pending`},c=!1,l=!1)},setSaved(e,t){if(!m(e)||!a||!o)return;let n=kh(t);Ih(n.updated_at,a.updated_at)||(a=n,o={...o,updated_at:n.updated_at})},saveAcknowledged(e,t,d){if(u||!a||!o||n!==null&&e!==n||n===null&&e!==null&&i.has(e))return;let m=kh(d),h=[];for(let e of wh){let n=t[e]===void 0?a[e]:t[e];(e===`updated_at`||p(e,o[e],n))&&h.push(e)}n===null&&e!==null&&(r=!0,i.add(e)),n=e,p(`lexical`,a.lexical,m.lexical)||(s=f(m.lexical,new Set),c=!0),a=m,o={...o,...Vs(m,h)},l=!1},setBaseline(e,t){!h(e)||c||(s=f(jh(t),s.status===`ready`?s.forms:new Set))},baselineFailed(e){!h(e)||c||(s={status:`failed`})},setLive(e,t){if(!h(e)||!o)return;let n=Ah(t);delete n.updated_at,o={...o,...n}},markSaveError(){u||(l=!0)},clearSaveError(){u||(l=!1)},revisionRestored(e,t){if(!m(e)||!a||!o)return;let n=Oh({lexical:t.lexical,title:t.title,custom_excerpt:t.custom_excerpt,feature_image:t.feature_image,feature_image_alt:t.feature_image_alt,feature_image_caption:t.feature_image_caption});a={...a,...n},o={...o,...n},s={status:`pending`},c=!1,l=!1},verdict(){let e=y();return{dirty:e.length>0,reasons:e}},dirtyFields(){if(!a||!o)return[];let e=a,t=o,n=_()!==null;return wh.filter(r=>r===`lexical`?n:r!==`updated_at`&&!p(r,e[r],t[r]))},bodyDivergence(){return!a||!o||_()===null?null:{saved:v(o.lexical,a.lexical),baseline:s.status===`ready`?v(o.lexical,s.lexical):null}},isFieldDirty(e){return!!a&&!!o&&e!==`updated_at`&&!p(e,a[e],o[e])},savedValue(e){return a?Oh(a[e]):void 0},hasChangedSinceRevision(e){if(u||!a)return!1;if(!e)return!0;if(n===null)return!1;if(!Nh(a.title,e.title)||a.custom_excerpt!==(e.custom_excerpt??null)||a.feature_image!==(e.feature_image??null))return!0;try{return!d(a.lexical,e.lexical)}catch{return!0}},dispose(){u=!0,n=null,r=!1,i.clear(),a=null,o=null,s={status:`pending`},c=!1,l=!1}}}function Vh(e){let t=Promise.resolve(),n=fm();function r(e){return t=e.catch(()=>void 0),e}function i(){return new Promise(t=>{let n=()=>{e.getState().pending||(r(),t())},r=e.subscribe(n);n()})}async function a(){let e;do e=t,await Promise.race([e,n.promise]),await Promise.race([i(),n.promise]);while(e!==t)}async function o(t){let n=await r(e.titleCommitted(t));return n.source===`generated`?{slug:n.slug,source:`generated`}:{slug:e.getState().slug,source:`unchanged`}}function s(){t=Promise.resolve();let e=n;n=fm(),e.resolve()}return{port:{settled:a,fromTitle:o},commitTitle:t=>void r(e.titleCommitted(t)),editSlug:t=>{let i=e.getState().slug,a=n.promise;return Promise.race([r(e.slugEdited(t)),a.then(()=>({slug:i,source:`unchanged`,reason:`stale`}))])},titleReplaced:t=>{s(),e.loaded({slug:e.getState().slug,title:t})},reset:s}}function Hh({identity:e,status:t,publishedAt:n,publishedAtDirty:r,settingsDirty:i,title:a,slug:o,slugIsCustom:s,verdict:c,changedSinceLastRevision:l,version:u}){let d={status:t,publishedAt:n,title:a,slug:o,slugIsCustom:s,isDirty:c.dirty||r,settingsDirty:i,titleDirty:c.reasons.some(e=>e.code===`POST_TITLE_DIVERGED`),changedSinceLastRevision:l,version:u};return e.id===null?{id:null,updatedAt:null,...d}:{id:e.id,updatedAt:e.updatedAt,...d}}var Uh=Y().nullish();function Wh(e){return{title:``,slug:``,lexical:null,tags:[],custom_excerpt:null,email_subject:null,feature_image:null,feature_image_alt:null,feature_image_caption:null,featured:!1,visibility:null,tiers:[],authors:e?[{id:e}]:[],meta_title:null,meta_description:null,canonical_url:null,custom_template:null,codeinjection_head:null,codeinjection_foot:null,og_image:null,og_title:null,og_description:null,twitter_image:null,twitter_title:null,twitter_description:null,show_title_and_feature_image:null,updated_at:null}}function Gh(e){let t=Uh.safeParse(`email_subject`in e?e.email_subject:void 0);return{title:e.title,slug:e.slug,lexical:e.lexical??null,tags:e.tags??[],custom_excerpt:e.custom_excerpt??null,email_subject:t.success?t.data??null:null,feature_image:e.feature_image??null,feature_image_alt:e.feature_image_alt??null,feature_image_caption:e.feature_image_caption??null,featured:e.featured??!1,visibility:e.visibility??null,tiers:e.tiers??[],authors:e.authors??[],meta_title:e.meta_title??null,meta_description:e.meta_description??null,canonical_url:e.canonical_url??null,custom_template:e.custom_template??null,codeinjection_head:e.codeinjection_head??null,codeinjection_foot:e.codeinjection_foot??null,og_image:e.og_image??null,og_title:e.og_title??null,og_description:e.og_description??null,twitter_image:e.twitter_image??null,twitter_title:e.twitter_title??null,twitter_description:e.twitter_description??null,show_title_and_feature_image:`show_title_and_feature_image`in e?e.show_title_and_feature_image??null:null,updated_at:e.updated_at}}function Kh(e){let t=Ap(e?.post_revisions);if(t.length===0)return null;let n=t.reduce((e,t)=>jp(t)>=jp(e)?t:e);return{lexical:n.lexical??null,title:n.title??``,custom_excerpt:n.custom_excerpt??null,feature_image:n.feature_image??null}}var qh=[`title`,`slug`],Jh=`Cannot save without the version this post was loaded at.`;function Yh(e,t){return t?{ok:!1,error:{kind:`validation`,message:t}}:{ok:!0,prepared:e}}var Xh=new Set([`SCRATCH_DIVERGED_FROM_SECONDARY`,`BASELINE_FAILED`,`LEXICAL_PARSE_FAILED`]),Zh=[...Hs,`feature_image_alt`,`feature_image_caption`],Qh=[`title`,`slug`,`tags`,`custom_excerpt`,`feature_image`,`feature_image_alt`,`feature_image_caption`,`authors`],$h=new Set([`reauth-pending`,`conflict`,`halted`,`crashed`]);function eg(e,t,n,r){n[e]=t[e],r[e]=Gs(e,t)}function tg(e,t){if(e===null||t===null)return e===t;let n=Date.parse(e),r=Date.parse(t);return!Number.isNaN(n)&&!Number.isNaN(r)&&Math.floor(n/6e4)===Math.floor(r/6e4)}function ng(e,t){if(!t)return!1;let n=Date.parse(e),r=Date.parse(t);return!Number.isNaN(n)&&!Number.isNaN(r)&&n<r}function rg(e,t){return $f(e)&&$f(t)&&Date.parse(e)===Date.parse(t)}function ig(e,t){return $f(e)&&$f(t)&&Date.parse(e)>Date.parse(t)}function ag({record:e,siteUrl:t,currentUserId:n,saveFailureMessage:r,autosaveDebounceMs:i,transport:a,onIdAcquired:o,onSaveAcknowledged:s,onError:c,onSaveFailed:l,onLeaveConfirmed:u,localRevisions:d}){let f=e?{id:e.id,updatedAt:e.updated_at??``}:{id:null,updatedAt:null},p=e?.status??`draft`,m=e?.published_at??null,h=null,g=0,_=e?Gh(e):Wh(n),v=Kh(e),y=0,b=!1,x=new Set,S=new Map,C=null,w=!1,T=!1,E=null,D=!1,O=null;function k(){return h??m}function A(){tg(h,m)&&(C===null||g<=C)&&(h=null)}let j=Bh({siteUrl:t});j.load(f.id,_);let M=Fm({generateSlug:e=>a.generateSlug(e,f.id),onListenerError:c});M.loaded({slug:_.slug,title:_.title});let N=Vh(M),P=new Set,F;function I(){if(b)return;let e=V.getState(),t=V.getPendingSave(),n=F?.pendingSave?.blockedBy===t?.blockedBy?F?.pendingSave??null:t,r=re().isDirty,i=M.getState().slug,a=k(),o=F&&Hs.every(e=>F.settings[e]===_[e])?F.settings:Vs(_,Hs),s=F&&F.publishTime.status===p&&F.publishTime.publishedAt===a?F.publishTime:{status:p,publishedAt:a},l=(e.kind===`idle`||e.kind===`debouncing`)&&!r&&ig(O,f.updatedAt);if(!(F&&F.state===e&&F.pendingSave===n&&F.isDirty===r&&F.title===_.title&&F.slug===i&&F.settings===o&&F.publishTime===s&&F.featureImageAlt===_.feature_image_alt&&F.featureImageCaption===_.feature_image_caption&&F.newerVersionAvailable===l)){F={state:e,pendingSave:n,isDirty:r,title:_.title,slug:i,settings:o,publishTime:s,featureImageAlt:_.feature_image_alt,featureImageCaption:_.feature_image_caption,newerVersionAvailable:l};for(let e of P)try{e()}catch(e){c(e)}}}function ee(e){let t=_;_={..._,...e},y+=1;for(let n of Zh)e[n]!==void 0&&!Fh(n,t[n],e[n])&&S.set(n,y);j.setLive(f.id,e),I(),se()}function L(e,t){for(let n of qh){let r=t[n],i=e[n];r===void 0||i===void 0||r===i||!Fh(n,_[n],i)||(_={..._,[n]:r},j.setLive(f.id,{[n]:r}))}}function R(e){return j.isFieldDirty(e)?!1:C===null||(S.get(e)??0)<=C}function z(e,t){let n={};for(let r of Zh)t(r)&&_[r]!==e[r]&&(n[r]=e[r]);Object.keys(n).length!==0&&(_={..._,...n},j.setLive(f.id,n))}function te(e){return e===`custom_excerpt`&&w}function ne(){return h!==null||x.size>0||j.isFieldDirty(`slug`)||Hs.some(e=>!te(e)&&j.isFieldDirty(e))}function re(){let e=j.verdict();return Hh({identity:f,status:p,publishedAt:k(),publishedAtDirty:h!==null,settingsDirty:ne(),title:_.title,slug:M.getState().slug,slugIsCustom:M.getState().mode===`custom`,verdict:{...e,dirty:e.dirty||x.size>0},changedSinceLastRevision:j.hasChangedSinceRevision(v),version:y})}function ie(){return Qh.some(e=>j.isFieldDirty(e))||j.verdict().reasons.some(e=>Xh.has(e.code))}function ae(){return{id:f.id,status:p,title:_.title,slug:M.getState().slug,lexical:_.lexical,custom_excerpt:_.custom_excerpt,feature_image:_.feature_image,feature_image_alt:_.feature_image_alt,feature_image_caption:_.feature_image_caption,authors:_.authors.map(({id:e})=>({id:e})),tags:_.tags.map(({id:e,name:t,slug:n})=>({id:e,name:t,slug:n}))}}function oe(e){if(d)try{e(d)}catch(e){c(e)}}function B(e){if(b||T||p!==`draft`)return!1;let t=!1;return oe(n=>{ie()&&(e(n),t=!0)}),t}function se(){B(e=>e.record(ae()))}function ce(){return B(e=>e.flush(ae()))}let le=M.subscribe(I);function ue(e,t,n){let r=e.snapshot.id===null&&e.target.status===`draft`;return((n?null:ic(e.title))??pc(uc(_),r,n?lc.filter(te):[]))||(e.target.publishedAt!==m&&sc(e.target.status,e.target.publishedAt)?oc:t.authors?.length===0?Ws:null)}function de(e){let t=e.snapshot.id,r=Bf(e.command,e.snapshot),i,a;r?(i={updated_at:e.snapshot.updatedAt},a={title:j.savedValue(`title`),slug:e.slug,lexical:j.savedValue(`lexical`),feature_image:j.savedValue(`feature_image`)},te(`custom_excerpt`)&&(a.custom_excerpt=j.savedValue(`custom_excerpt`)),j.isFieldDirty(`slug`)&&(i.slug=e.slug),h!==null&&(a.published_at=e.target.publishedAt)):(i={title:e.title,slug:e.slug,lexical:_.lexical,feature_image:_.feature_image,feature_image_alt:_.feature_image_alt,feature_image_caption:_.feature_image_caption,updated_at:e.snapshot.updatedAt},a={title:e.title,slug:e.slug,lexical:i.lexical,feature_image:i.feature_image,feature_image_alt:i.feature_image_alt,feature_image_caption:i.feature_image_caption,status:e.target.status,published_at:e.target.publishedAt}),t===null&&n&&(a.authors=[{id:n}]);for(let e of Hs)j.isFieldDirty(e)&&!(r&&te(e))&&eg(e,_,i,a);ac(_)?(delete i.visibility,delete a.visibility,delete i.tiers,delete a.tiers):_.visibility===`tiers`&&(`visibility`in a||`tiers`in a)&&(i.visibility=_.visibility,a.visibility=_.visibility,i.tiers=_.tiers,a.tiers=Gs(`tiers`,_)),e.target.emailOnly!==void 0&&(a.email_only=e.target.emailOnly);let o={...e,projection:i,authoredFrom:{title:_.title,slug:_.slug},builtAtVersion:y,options:{saveRevision:e.saveRevision,newsletter:e.target.newsletter,emailSegment:e.target.emailSegment}},s=ue(e,i,r);return t===null?Promise.resolve(Yh({...o,isCreate:!0,payload:{...a,title:e.title}},s)):i.updated_at?Promise.resolve(Yh({...o,isCreate:!1,payload:{...a,id:t,updated_at:i.updated_at}},s)):Promise.resolve({ok:!1,error:{kind:`unknown`,message:Jh}})}async function fe(e){C=e.builtAtVersion;try{let t=e.isCreate?await a.create(e.payload):await a.update(e.payload,e.options);return t?{ok:!0,result:{id:t.id,status:t.status??`draft`,updatedAt:t.updated_at??``,post:t}}:(C=null,A(),{ok:!1,error:{kind:`unknown`,message:r}})}catch(e){return C=null,A(),{ok:!1,error:xu(e,r)}}}function pe(e,t){let n={};for(let t of qh)e.projection[t]!==void 0&&(n[t]=e.projection[t]);L(e.authoredFrom,n);let r=Object.fromEntries(Zh.filter(t=>e.projection[t]===void 0&&(S.get(t)??0)>e.builtAtVersion).map(e=>[e,_[e]]));e.projection.visibility===void 0&&ac(_)&&(r.visibility=_.visibility,r.tiers=_.tiers);let i=Gh(t.post),a={title:i.title,slug:i.slug};j.saveAcknowledged(t.id,e.projection,i),j.setLive(t.id,r),L(n,a),C=null,z(i,R),M.saveAcknowledged({...a,...n},a);let l=f.id===null;f={id:t.id,updatedAt:t.updatedAt},p=t.status,m=t.post.published_at??null,g<=e.builtAtVersion&&(h=null),A(),v=Kh(t.post),_={..._,updated_at:t.updatedAt},l&&(oe(e=>e.created()),o(t.id));try{s?.(t.post)}catch(e){c(e)}oe(e=>{p!==`draft`||!ie()?e.discard():l&&e.flush(ae())}),I()}let V=np({getSnapshot:re,slug:N.port,prepare:de,execute:fe,reconcile:pe,autosaveDebounceMs:i,onStateChange:e=>{if(e.kind===`error`||e.kind===`conflict`?j.markSaveError():D&&e.kind===`idle`&&j.clearSaveError(),D=e.kind===`error`&&e.intent===`settings`,$h.has(e.kind)){let t=e.kind===`conflict`?e.error:null;t===null?(E=null,ce()):t!==E&&ce()&&(E=t)}I()},onListenerError:c,onSaveFailed:e=>l?.({...e,postId:f.id,status:p})});I();function me(){V.dispatch(`field`)}function H(){V.dispatch(`settings`),I()}async function he(e){if(b)return`unchanged`;let t=Symbol();x.add(t);let n=N.editSlug(e);I();try{let e=await n;return b||!x.has(t)?`unchanged`:e.source===`unchanged`?e.reason===`error`?(c(e.error),`failed`):e.reason===`empty-result`?`failed`:`unchanged`:(ee({slug:e.slug}),H(),`applied`)}finally{x.delete(t),b||I()}}return{getState:()=>V.getState(),getView:()=>F,subscribe:e=>(P.add(e),()=>{P.delete(e)}),getSaveSnapshot:re,isDirty:()=>re().isDirty,hasUnsavedContent:()=>h!==null||x.size>0||j.verdict().reasons.some(e=>e.code!==`POST_HAS_ERROR`),patchTitle:e=>ee({title:e.trim()?e:Ff}),patchExcerpt:e=>{w=!0,ee({custom_excerpt:e===``?null:e})},patchFeatureImage:e=>ee(e),patchFields:e=>{`custom_excerpt`in e&&(w=!1),ee(e)},getFields:()=>_,commitField:me,commitSettings:H,getSlug:()=>M.getState().slug,editSlug:he,editPublishedAt:e=>{tg(e,k())||(h=tg(e,m)?m:Vf(e),y+=1,g=y,A(),I())},getPublishedAt:k,patchLexical:e=>ee({lexical:JSON.stringify(e)}),restoreRevision:async e=>{if(b||e.lexical===null||V.getState().kind===`reauth-pending`)return!1;let t={...e,title:e.title.trim()?e.title:Ff};ce();let n={lexical:_.lexical,title:_.title,custom_excerpt:_.custom_excerpt,feature_image:_.feature_image,feature_image_alt:_.feature_image_alt,feature_image_caption:_.feature_image_caption};T=!0;try{return ee(t),N.titleReplaced(t.title),(await V.dispatch(`explicit`)).kind===`saved`?(j.revisionRestored(f.id,t),I(),!0):(ee(n),N.titleReplaced(n.title),!1)}finally{T=!1}},setBaseline:e=>{j.setBaseline(f.id,e),I(),se()},baselineFailed:()=>{j.baselineFailed(f.id),I(),se()},commitTitle:e=>{p===`draft`&&N.commitTitle(e)},dispatchAutosave:()=>void V.dispatch(`autosave`),dispatchExplicit:()=>V.dispatch(`explicit`),retrySave:()=>{let e=V.getState();return e.kind===`error`&&e.intent===`settings`&&p!==`draft`?V.dispatch(`settings`,{retry:!0}):V.dispatch(`explicit`)},dispatchPublish:e=>V.dispatch(`publish`,e),dispatchSchedule:e=>V.dispatch(`schedule`,e),dispatchRevert:()=>V.dispatch(`revert`),getLiveLexical:()=>_.lexical,recordRefetched:e=>{if(b||f.id!==e.id)return!1;if(!rg(e.updated_at,f.updatedAt)){let t=e.updated_at??null;return ig(t,f.updatedAt)&&!ig(O,t)&&(O=t,I()),!1}let t=new Set(Zh.filter(R)),n=Gh(e);return j.setSaved(e.id,n),z(n,e=>t.has(e)),p=e.status??p,m=e.published_at??null,A(),v=Kh(e),I(),!0},recordReloaded:e=>{let t=e.updated_at??``;return b||f.id!==e.id||!$f(t)||ng(t,f.updatedAt)||!V.contentReloaded(t,()=>{f={id:e.id,updatedAt:t},p=e.status??`draft`,m=e.published_at??null,v=Kh(e),_=Gh(e),h=null,g=0,x.clear(),S.clear(),C=null,y+=1,j.load(f.id,_),N.reset(),M.loaded({slug:_.slug,title:_.title})})?!1:(I(),!0)},reauthSucceeded:()=>V.reauthSucceeded(),reauthAbandoned:()=>V.reauthAbandoned(),leaveRequested:async()=>{let e=await V.leaveRequested();if(e===`confirm`&&!b)try{u?.({postId:f.id,status:p,engineState:V.getState().kind,reasons:j.verdict().reasons.map(e=>e.code),dirtyFields:j.dirtyFields(),bodyDiff:j.bodyDivergence()})}catch(e){c(e)}return e},flushLocalRevision:ce,dispose:()=>{b||(ce(),oe(e=>e.discard()),p===`draft`&&_.slug.includes(`untitled`)&&_.title.trim()&&_.title!==`(Untitled)`&&c(Error(`Draft post has title set with untitled slug`),{extra:{slug:_.slug,title:_.title}}),b=!0,x.clear(),le(),N.reset(),V.dispose(),j.dispose(),P.clear())}}}function og(e){return t=>{switch(t.kind){case`publish`:return e.publish(t.options);case`schedule`:return e.schedule(t.options);default:return e.revert()}}}function sg(e){return e===`sent`?void 0:e}function cg(e){return typeof e==`number`&&Number.isFinite(e)&&e>0?e:void 0}function lg(e,t){let n=_(e===`page`?`/pages/${t}/`:`/posts/${t}/`,B());return{url:n,queryKey:[e===`page`?Xn:se,n]}}function ug(e,t){return e===`page`?t?.pages?.[0]:t?.posts?.[0]}function dg(e,t){return!!e&&e.id===t.id&&$f(e.updated_at)&&$f(t.updated_at)&&Date.parse(e.updated_at)>Date.parse(t.updated_at)}function fg({postType:e,record:t,siteUrl:n,currentUserId:r}){let i=C(),o=a(),{data:s}=de({requestOptions:Q}),c=Ch(),{mutateAsync:l}=oe(),{mutateAsync:u}=ae(),{mutateAsync:d}=Yn(),{mutateAsync:f}=Jn(),[p,m]=(0,X.useState)(t?.id??null),[g,_]=(0,X.useState)(()=>t?.title===`(Untitled)`?``:t?.title??``),[v,y]=(0,X.useState)(()=>t?.lexical??null),[b,x]=(0,X.useState)(t),[S,w]=(0,X.useState)(0),T=(0,X.useRef)({addPost:l,editPost:u,addPage:d,editPage:f,generateSlug:c,postType:e});(0,X.useEffect)(()=>{T.current={addPost:l,editPost:u,addPage:d,editPage:f,generateSlug:c,postType:e}});let E=(0,X.useRef)(void 0);(0,X.useEffect)(()=>{E.current=cg(s?.config.editorAutosaveDebounceMs)});let[D]=(0,X.useState)(()=>ag({record:t,siteUrl:n,currentUserId:r,saveFailureMessage:`Couldn’t save this ${e}.`,autosaveDebounceMs:()=>E.current,onIdAcquired:m,onSaveAcknowledged:t=>{o.setQueryData(lg(e,t.id).queryKey,n=>{if(!dg(ug(e,n),t))return e===`page`?{pages:[t]}:{posts:[t]}})},onError:ld,onSaveFailed:t=>md(t,e),onLeaveConfirmed:t=>gd(t,e),localRevisions:Zr({type:e,storage:()=>window.localStorage,onError:ld}),transport:{create:async e=>{let t=T.current;if(t.postType===`page`){let{pages:n}=await t.addPage({page:{...e,status:sg(e.status)},sessionExpiryRedirect:!1});return n[0]}let{posts:n}=await t.addPost({post:e,sessionExpiryRedirect:!1});return n[0]},update:async(e,t)=>{let n=T.current;if(n.postType===`page`){let{pages:r}=await n.editPage({page:{...e,status:sg(e.status)},options:t,sessionExpiryRedirect:!1});return r[0]}let{posts:r}=await n.editPost({post:e,options:t,sessionExpiryRedirect:!1});return r[0]},generateSlug:(e,t)=>T.current.generateSlug({type:`post`,text:e,id:t??void 0,sessionExpiryRedirect:!1})}})),O=(0,X.useRef)(void 0);(0,X.useEffect)(()=>(clearTimeout(O.current),()=>{O.current=setTimeout(()=>D.dispose())}),[D]),(0,X.useEffect)(()=>{let e=()=>D.flushLocalRevision(),t=()=>{document.visibilityState===`hidden`&&e()};return window.addEventListener(`pagehide`,e),document.addEventListener(`visibilitychange`,t),()=>{window.removeEventListener(`pagehide`,e),document.removeEventListener(`visibilitychange`,t)}},[D]);let k=(0,X.useSyncExternalStore)(D.subscribe,D.getView),{state:A,pendingSave:j,title:M,slug:N,settings:P,publishTime:F,featureImageAlt:I,featureImageCaption:ee,newerVersionAvailable:L}=k,R=(0,X.useCallback)(()=>k.isDirty,[k]),z=D.patchFields,te=(0,X.useCallback)(e=>{let t=D.getPublishedAt();D.editPublishedAt(e),t!==D.getPublishedAt()&&D.commitSettings()},[D]),ne=(0,X.useCallback)(()=>D.commitSettings(),[D]),re=(0,X.useCallback)(()=>D.commitField(),[D]),ie=(0,X.useCallback)(e=>{z(e),D.commitSettings()},[D,z]),B=ce(p??``,{enabled:e===`post`&&!!p,defaultErrorHandler:!1,requestOptions:Q}),se=Zn(p??``,{enabled:e===`page`&&!!p,defaultErrorHandler:!1,requestOptions:Q}),le=e===`page`?se.data?.pages[0]:B.data?.posts[0],ue=(0,X.useRef)(void 0);(0,X.useEffect)(()=>{!le||le===ue.current||D.recordRefetched(le)&&(ue.current=le,x(le))},[le,D,A]);let fe=(0,X.useCallback)(async()=>{if(!p)return`failed`;let{url:t,queryKey:n}=lg(e,p),r;try{r=await i(t,Q)}catch(e){return e instanceof h&&e.response?.status===404?`gone`:`failed`}let a=ug(e,r);if(!a)return`gone`;await o.cancelQueries({queryKey:n,exact:!0});let s=o.getQueryData(n),c=ug(e,s);return s&&dg(c,a)&&(r=s,a=c),D.recordReloaded(a)?(o.setQueryData(n,r),_(a.title===`(Untitled)`?``:a.title),y(a.lexical??null),x(a),w(e=>e+1),`reloaded`):`failed`},[i,p,e,o,D]),pe=(0,X.useCallback)(async e=>{if(!await D.restoreRevision(e))return!1;let t=D.getFields();return _(t.title===`(Untitled)`?``:t.title),y(e.lexical),x(n=>n&&{...n,...e,title:t.title}),w(e=>e+1),!0},[D]),V=(0,X.useCallback)(()=>ei(g,D.getLiveLexical()),[D,g]),me=!t,H=(0,X.useCallback)(e=>{_(e),D.patchTitle(e)},[D]),he=(0,X.useCallback)(e=>D.patchExcerpt(e),[D]),ge=(0,X.useCallback)(()=>{D.commitTitle(g),D.commitField()},[D,g]),_e=(0,X.useCallback)(e=>{D.patchLexical(e),D.dispatchAutosave()},[D]),ve=(0,X.useCallback)(e=>D.setBaseline(e),[D]),U=(0,X.useCallback)(()=>D.baselineFailed(),[D]),ye=(0,X.useMemo)(()=>og({publish:D.dispatchPublish,schedule:D.dispatchSchedule,revert:D.dispatchRevert}),[D]),be=(0,X.useCallback)(()=>void D.retrySave(),[D]),xe=P.custom_excerpt??``,Se=(0,X.useMemo)(()=>({title:g,excerpt:xe,initialLexical:v,onTitleChange:H,onTitleBlur:ge,onExcerptChange:he,onLexicalChange:_e,onSecondaryChange:ve,onSecondaryError:U}),[xe,v,he,_e,ve,U,ge,H,g]);return(0,X.useMemo)(()=>({bind:Se,state:A,pendingSave:j,persistedId:p,createdId:me?p:null,isDirty:R,contentKey:S,loadedRecord:b,hasUnsavedContent:D.hasUnsavedContent,contentText:V,reload:fe,newerVersionAvailable:L,restoreRevision:pe,patchFeatureImage:D.patchFeatureImage,featureImageAlt:I,featureImageCaption:ee,settings:P,editSettings:ie,stageSettings:z,commitSettings:ne,commitField:re,title:M,slug:N,editSlug:D.editSlug,publishTime:F,editPublishedAt:te,getSaveSnapshot:D.getSaveSnapshot,getLiveLexical:D.getLiveLexical,retrySave:be,saveExplicit:D.dispatchExplicit,dispatchPublish:ye,reauthSucceeded:D.reauthSucceeded,reauthAbandoned:D.reauthAbandoned,leaveRequested:D.leaveRequested,dispose:D.dispose}),[Se,re,ne,S,V,ye,te,ie,M,I,ee,R,me,b,L,p,F,fe,pe,be,D,P,N,z,A,j])}var pg=`100`,mg=10;async function hg(e){let t=[],n=1;for(;n!==null&&n<=mg;){let r=await e(_(`/labels/`,{limit:pg,fields:`id,name`,page:String(n)}));t.push(...r.labels.map(e=>e.name)),n=r.meta?.pagination.next??null}return t}function gg(e,t){let n=new Intl.DateTimeFormat(`en-US`,{day:`numeric`,month:`short`,year:`numeric`,timeZone:t}).formatToParts(new Date(e)),r=e=>n.find(t=>t.type===e)?.value??``;return`${r(`day`)} ${r(`month`)} ${r(`year`)}`}function _g(e,t){let n={...e};return e.publishedAt&&(n.metaText=gg(e.publishedAt,t.timezone)),t.membersEnabled&&e.visibility&&(e.visibility===`members`?(n.MetaIcon=Ie,n.metaIconTitle=`Members only`):e.visibility===`paid`?(n.MetaIcon=Ne,n.metaIconTitle=`Paid-members only`):e.visibility===`tiers`&&(n.MetaIcon=Ne,n.metaIconTitle=`Specific tiers only`)),n}function vg(e,t){let n=[];return e.forEach(e=>{let r=e.options.filter(e=>e.url);(e.groupName===`Posts`||e.groupName===`Pages`)&&(r=r.filter(e=>e.status===`published`)),e.groupName===`Staff`&&(r=r.filter(e=>!/\/404\//.test(e.url??``))),r.length!==0&&((e.groupName===`Posts`||e.groupName===`Pages`)&&(r=r.map(e=>_g(e,t))),n.push({label:e.groupName,items:r}))}),n}function yg(e,t){return[{label:`Latest posts`,items:e.map(e=>_g({id:e.id,title:e.title,url:e.url,visibility:e.visibility,publishedAt:e.published_at},t))}]}function bg(e,t,n){return{groupName:e,options:Sg(t,n,e=>e.title).map(t=>({id:`${e===`Posts`?`post`:`page`}.${t.id}`,title:t.title,url:t.url,status:t.status,visibility:t.visibility,publishedAt:t.published_at}))}}function xg(e,t,n){return{groupName:e,options:Sg(t,n,e=>e.name).map(t=>({id:`${e===`Staff`?`user`:`tag`}.${t.id}`,title:t.name,url:t.url}))}}function Sg(e,t,n){let r=t.trim().toLowerCase();if(!r)return[];let i=r.split(/\s+/);return e.filter(e=>{let t=n(e).toLowerCase();return i.every(e=>t.includes(e))})}var Cg=e=>typeof e.name==`string`,wg=e=>typeof e.title==`string`;function Tg({postType:e,homepageUrl:t,paidMembersEnabled:n,donationsEnabled:r,recommendationsEnabled:i,membersSignupAccess:o,membersEnabled:s,timezone:c}){let l=C(),u=a(),d=(0,X.useRef)({}),f=(0,X.useCallback)(async e=>{try{return(await u.fetchQuery(ti(e,l,Q)))[e]??[]}catch{return[]}},[l,u]),p=(0,X.useCallback)(async()=>{d.current.offerLinks??=l(_(`/offers/`,{filter:`status:active+redemption_type:signup`}),Q).then(e=>ni(e.offers??[],t)).catch(()=>(delete d.current.offerLinks,[]));let a=await d.current.offerLinks;return ri({postType:e,homepageUrl:t,paidMembersEnabled:n,donationsEnabled:r,recommendationsEnabled:i,membersSignupAccess:o},a)},[l,e,t,n,r,i,o]),m=(0,X.useMemo)(()=>({timezone:c,membersEnabled:s}),[c,s]);return{fetchAutocompleteLinks:p,searchLinks:(0,X.useCallback)(async e=>{if(!e)return d.current.latestPosts??=l(_(`/posts/`,{filter:`status:published`,fields:`id,url,title,visibility,published_at`,order:`published_at desc`,limit:`5`}),Q).then(e=>yg(e.posts,m)).catch(e=>{throw delete d.current.latestPosts,e}),d.current.latestPosts;let[t,n,r,i]=await Promise.all([f(`users`),f(`tags`),f(`posts`),f(`pages`)]);return vg([xg(`Staff`,t.filter(Cg),e),xg(`Tags`,n.filter(Cg),e),bg(`Posts`,r.filter(wg),e),bg(`Pages`,i.filter(wg),e)],m)},[l,f,m])}}function Eg({post:e,snippets:t,createSnippet:n,deleteSnippet:r}){let i=jo(),a=Mo(),o=de({requestOptions:Q}),c=Sr({requestOptions:Q}),l=x({requestOptions:Q}),{unsplashConfig:u}=s(),d=Wn({requestOptions:Q}),f=te(Q),p=C(),m=i.data?.settings??null,h=o.data?.config,g=c.data?.site,_=l.data,v=(0,X.useRef)(null),y=(0,X.useCallback)(()=>(v.current??=hg(e=>p(e,Q)).catch(e=>{throw v.current=null,e}),v.current),[p]),b=ur(m,`members_signup_access`)??`all`,{fetchAutocompleteLinks:S,searchLinks:w}=Tg({postType:e.displayName,homepageUrl:g?Cr(g):`/`,paidMembersEnabled:ur(m,`paid_members_enabled`)===!0,donationsEnabled:ur(m,`donations_enabled`)===!0,recommendationsEnabled:ur(m,`recommendations_enabled`)===!0,membersSignupAccess:b,membersEnabled:b!==`none`,timezone:a}),T=ur(m,`default_content_visibility`)??`public`,E=(0,X.useMemo)(()=>Co(e,T),[e,T]),D=(0,X.useMemo)(()=>!m||!h||!g||!_?null:Eo({settings:m,config:h,site:g,currentUser:_,unsplashHeaders:u,pinturaConfig:d,post:E,snippets:t},{fetchEmbed:f,fetchAutocompleteLinks:S,searchLinks:w,fetchLabels:y,createSnippet:n,deleteSnippet:r}),[m,h,g,_,u,d,E,t,f,S,w,y,n,r]),O=[i,o,c,l].filter(e=>e.data===void 0&&e.isError&&!e.isFetching);return{cardConfig:D,failed:O.length>0,retry:()=>{for(let e of O)e.refetch()}}}var Dg=`SnippetsResponseType`,Og=`mobiledoc,lexical`,kg=S({dataType:Dg,path:`/snippets/`,defaultSearchParams:{limit:`all`,formats:Og},defaultNextPageParams:(e,t)=>{let n=e.meta?.pagination.next;if(n)return{...t,page:n.toString()}},returnData:e=>{let{pages:t}=e,n=t.flatMap(e=>e.snippets),r=t[t.length-1].meta;return{snippets:n,meta:r,isEnd:r?r.pagination.pages===r.pagination.page:!0}}}),Ag=({searchParams:e,...t}={})=>kg({...t,searchParams:{limit:`all`,...e,formats:Og}}),jg=!1,Mg=b({method:`POST`,sessionExpiryRedirect:jg,path:()=>`/snippets/`,searchParams:()=>({formats:Og}),body:e=>({snippets:[e]}),invalidateQueries:{dataType:Dg}}),Ng=b({method:`PUT`,sessionExpiryRedirect:jg,path:({id:e})=>`/snippets/${e}/`,searchParams:()=>({formats:Og}),body:({id:e,...t})=>({snippets:[t]}),invalidateQueries:{dataType:Dg}}),Pg=b({method:`DELETE`,sessionExpiryRedirect:jg,path:e=>`/snippets/${e}/`,invalidateQueries:{dataType:Dg}}),Fg={root:{children:[],direction:null,format:``,indent:0,type:`root`,version:1}},Ig={p:{type:`paragraph`},h1:{type:`heading`,tag:`h1`},h2:{type:`heading`,tag:`h2`},h3:{type:`heading`,tag:`h3`},h4:{type:`heading`,tag:`h4`},h5:{type:`heading`,tag:`h5`},h6:{type:`heading`,tag:`h6`},blockquote:{type:`quote`},aside:{type:`aside`},a:{type:`link`,rel:null,target:null,title:null,url:null}},Lg={"soft-return":{type:`linebreak`,version:1}},Rg={strong:1,b:1,em:2,i:2,s:4,u:8,code:16,sub:32,sup:64},zg={code:`codeblock`,hr:`horizontalrule`},Bg={embed:{type:`embedType`}},Vg={callout:e=>(e.backgroundColor&&!e.backgroundColor.match(/^[a-zA-Z\d-]+$/)&&(e.backgroundColor=`white`),e)};function Hg(e){if(e==null||e===``)return JSON.stringify(Fg);let t=JSON.parse(e);if(!t.sections)return JSON.stringify(Fg);let n=Ug();return t.sections.forEach(e=>Wg(e,t,n)),JSON.stringify(n)}function Ug(){return{root:{children:[],direction:null,format:``,indent:0,type:`root`,version:1}}}function Wg(e,t,n){let r=e[0];if(r===1){let r=Gg(e,t);n.root.children.push(r),r.children&&r.children.length>0&&(n.root.direction=`ltr`)}else if(r!==2){if(r===3){let r=Zg(e,t);n.root.children.push(r),n.root.direction=`ltr`}else if(r===10){let r=Qg(e,t);n.root.children.push(r)}}}function Gg(e,t){let n=e[1],r=e[2],i=Jg(n);return Kg(i,r,t),i}function Kg(e,t,n){let r=n.markups,i=n.atoms,a=[],o,s,c,l=!1;for(let n=0;n<t.length;n++){let[u,d,f,p]=t[n];if((u===0?`markup`:`atom`)==`atom`){let t=Lg[i[p][0]];Yg(e,t);continue}if(d.forEach(e=>{let t=r[e];if(t[0]===`a`){l=!0;let e=t[1];e&&e[0]===`href`&&(s=e[1]),e&&e[2]===`rel`&&(c=e[3])}a.push(t)}),p!==void 0){let t=Xg(a);if(l){o=o===void 0?Jg(`a`,{url:s,rel:c||null}):o;let e=qg(p,t);Yg(o,e)}else Yg(e,qg(p,t))}for(let t=0;t<f;t++){let t=a.pop();t&&t[0]===`a`&&(Yg(e,o),l=!1,s=void 0,o=void 0)}}}function qg(e,t){return{detail:0,format:t,mode:`normal`,style:``,text:e,type:`text`,version:1}}function Jg(e,t={}){let n=Ig[e];return{children:[],direction:`ltr`,format:``,indent:0,...n,...t,type:n?.type||t.type||e,version:1}}function Yg(e,t){t&&(e.children.push(t),t&&`text`in t&&t.text&&(e.direction=`ltr`))}function Xg(e){let t=0;return e.forEach(e=>{let n=e[0];n in Rg&&(t|=Rg[n])}),t}function Zg(e,t){let n=e[1],r=e[2],i=Jg(n,{tag:n,type:`list`,listType:n===`ul`?`bullet`:`number`,start:1,direction:`ltr`});return r?.forEach((e,n)=>{let r=Jg(`li`,{type:`listitem`,value:n+1,direction:`ltr`});Kg(r,e,t),i.children.push(r)}),i}function Qg(e,t){let n=e[1],[r,i]=t.cards[n];if(r=zg[r]||r,Bg[r]){let e=Bg[r];for(let[t,n]of Object.entries(e))i[n]=i[t],delete i[t]}return Vg[r]&&(i=Vg[r](i)),delete i.type,{type:r,...i}}function $g(e){try{return JSON.parse(e)}catch{return}}function e_(e){return typeof e==`object`&&!!e&&Array.isArray(e.nodes)}function t_(e){let t;try{t=JSON.parse(Hg(e)).root}catch{return null}let n=t?.children??[];return n.length===1&&n[0].type===`paragraph`&&(n=n[0].children??[]),n.length?JSON.stringify({namespace:`KoenigEditor`,nodes:n}):null}function n_(e){if(e.lexical){let t=$g(e.lexical);if(typeof t==`string`){let e=$g(t);if(e_(e)&&e.nodes.length)return t}else if(typeof t==`object`&&t)return e.lexical}return t_(e.mobiledoc)}function r_({canManage:e}){let{data:t,fetchNextPage:n,hasNextPage:r,isError:i,isFetchingNextPage:a}=Ag({requestOptions:Q});(0,X.useEffect)(()=>{r&&!a&&!i&&n()},[n,r,a,i]);let o=r?void 0:t?.snippets,s=Mg(),c=Ng(),l=Pg(),[u,d]=(0,X.useState)(null),[f,p]=(0,X.useState)(!1),m=(0,X.useMemo)(()=>(o??[]).map(e=>({snippet:e,value:n_(e)})).filter(e=>e.value!==null).sort((e,t)=>e.snippet.name.localeCompare(t.snippet.name)),[o]),h=(0,X.useMemo)(()=>o??[],[o]),g=(0,X.useMemo)(()=>m.map(({snippet:e,value:t})=>({id:e.id,name:e.name,value:t})),[m]),_=(0,X.useCallback)(e=>{let t=e.name.trim().toLowerCase(),n=h.find(e=>e.name.toLowerCase()===t);if(n){d({kind:`update`,snippet:n,value:e.value});return}s.mutateAsync({name:e.name,lexical:e.value,mobiledoc:`{}`}).then(()=>R.success(`Snippet saved as "${e.name}"`)).catch(()=>R.error(`Snippet save failed`))},[s,h]),v=(0,X.useCallback)(({name:e})=>{let t=h.find(t=>t.name===e);t&&d({kind:`delete`,snippet:t})},[h]),y=()=>d(null),b=async()=>{if(u){p(!0);try{u.kind===`update`?(await c.mutateAsync({id:u.snippet.id,name:u.snippet.name,lexical:u.value,mobiledoc:u.snippet.mobiledoc||`{}`}),R.success(`Snippet "${u.snippet.name}" updated`)):await l.mutateAsync(u.snippet.id)}catch{R.error(u.kind===`update`?`Snippet save failed`:`Snippet delete failed`)}finally{p(!1),y()}}},x=(0,Z.jsx)(mt,{open:u!==null,onOpenChange:e=>!e&&!f&&y(),children:(0,Z.jsxs)(ct,{"data-testid":zi,children:[(0,Z.jsxs)(pt,{children:[(0,Z.jsx)(st,{children:u?.kind===`delete`?`Confirm snippet deletion`:`Update this snippet?`}),(0,Z.jsx)(ot,{children:u?.kind===`delete`?(0,Z.jsxs)(Z.Fragment,{children:[`You’re about to delete the “`,(0,Z.jsx)(`strong`,{children:u.snippet.name}),`” snippet. This is permanent, and will delete the snippet for all staff users. It will`,` `,(0,Z.jsx)(`strong`,{children:`not`}),` change any posts where you’ve used this snippet in the past.`]}):(0,Z.jsxs)(Z.Fragment,{children:[`“`,(0,Z.jsx)(`strong`,{children:u?.snippet.name}),`” will be overwritten. Don’t worry, this will only affect using the snippet in the future. Any older posts using this snippet will stay the same.`]})})]}),(0,Z.jsxs)(dt,{children:[(0,Z.jsx)(q,{disabled:f,variant:`outline`,onClick:y,children:`Cancel`}),(0,Z.jsx)(q,{disabled:f,variant:u?.kind===`delete`?`destructive`:`default`,onClick:()=>void b(),children:u?.kind===`delete`?`Delete snippet`:`Update`})]})]})});return{snippets:g,createSnippet:e?_:void 0,deleteSnippet:e?v:void 0,snippetDialog:x}}function i_(){return(0,Z.jsx)(G,{align:`center`,className:`h-full`,justify:`center`,children:(0,Z.jsx)(tn,{size:`lg`})})}function a_({message:e,onRetry:t}){return(0,Z.jsxs)(G,{align:`center`,className:`h-full`,"data-testid":fi,justify:`center`,children:[(0,Z.jsx)(K,{tone:`secondary`,children:e}),(0,Z.jsx)(q,{variant:`outline`,onClick:t,children:`Retry`})]})}function o_({postType:e,analyticsReturn:t,children:n}){let r=e===`page`?`Pages`:`Posts`,i=Ee(e===`page`?`pages`:`posts`),a=t?`Analytics`:r;return(0,Z.jsxs)(Te,{align:`center`,className:`grid-cols-[auto_minmax(0,1fr)] pt-[calc(var(--spacing)*5+1px)] pr-[calc(var(--spacing)*(4+2*var(--editor-settings-progress,0)))] pb-3 pl-4 sm:grid-cols-[auto_minmax(0,1fr)_auto] [&_a]:pointer-events-auto [&_button]:pointer-events-auto`,gap:`sm`,children:[(0,Z.jsx)(nn.Action,{className:`bg-background/80 backdrop-blur-sm`,fallbackSize:`sm`,fallbackVariant:`ghost`,label:a,asChild:!0,children:t?(0,Z.jsxs)(Dr,{to:t,children:[(0,Z.jsx)(je,{}),a]}):(0,Z.jsxs)(Dr,{state:wn(i),to:i,children:[(0,Z.jsx)(je,{}),a]})}),n]})}function s_(e,t){if(!e)return t?{status:`draft`}:void 0;let n=`email`in e?e.email:null,r=`newsletter`in e?e.newsletter??null:null;return{status:e.status,publishedAt:e.published_at,url:e.url,emailOnly:`email_only`in e?e.email_only:!1,newsletter:r,emailSegment:`email_segment`in e?e.email_segment:null,hasEmail:!!n,emailStatus:n?.status??null,emailCount:n?.email_count??0}}function c_({postType:e,record:t,createdId:n,cardConfig:r,currentUser:i,showExcerpt:a,snippetDialog:o}){let s=fg({postType:e,record:t,siteUrl:r.siteUrl,currentUserId:i?.id}),[c,l]=(0,X.useState)(0),[u,d]=(0,X.useState)(`none`),f=(0,X.useCallback)(()=>d(`publish`),[]),p=(0,X.useCallback)(()=>d(`update`),[]),{data:m}=Qn({defaultErrorHandler:!1,enabled:!1,requestOptions:Q,searchParams:Oo}),h=Wd({snapshot:{id:s.persistedId,status:s.publishTime.status,publishedAt:s.publishTime.publishedAt,title:s.title},record:s.loadedRecord,access:s.settings,knownTiers:m?.tiers,displayName:e,lexical:s.getLiveLexical()}),g=!!i&&!En(i)&&!!Bl(h),_=!!i&&!kn(i),v=H(),y=t?pr(v.state):void 0,b=s_(s.loadedRecord??t,n),x=e===`post`&&(b?.status===`published`||b?.status===`sent`)&&b.emailStatus===`failed`,[S,C]=(0,X.useState)(!1),[w,T]=(0,X.useState)(!1),E=(0,X.useRef)(null),D=(0,X.useRef)(null),[O,k]=(0,X.useState)(0);(0,X.useLayoutEffect)(()=>{let e=D.current;if(!e)return;let t=()=>k(e.getBoundingClientRect().width);t();let n=new ResizeObserver(t);return n.observe(e),()=>n.disconnect()},[]),(0,X.useLayoutEffect)(()=>{if(S||!w)return;let e=()=>{T(!1)},t=E.current?.getAnimations()??[];if(!t.length){e();return}let n=!1;return Promise.allSettled(t.map(e=>e.finished)).then(()=>{n||e()}),()=>{n=!0}},[S,w]);let A=(0,X.useRef)(null),[j,M]=(0,X.useState)(0);(0,X.useLayoutEffect)(()=>{let e=A.current;if(!e)return;let t=()=>M(e.getBoundingClientRect().height);t();let n=new ResizeObserver(t);return n.observe(e),()=>n.disconnect()},[]);let N=(0,X.useCallback)(()=>{D.current?.focus(),T(!0),C(e=>!e)},[]),P=(0,X.useRef)(null),F=(0,X.useRef)(null),I=(0,X.useCallback)(()=>{let e=ic(s.bind.title)?`title`:lc.find(e=>fc(e,s.settings));return e===`title`?P.current?.focusTitle():e===`custom_excerpt`&&a?P.current?.focusExcerpt():e&&e!==`email_subject`&&((0,ai.flushSync)(()=>{T(!0),C(!0)}),e===`custom_excerpt`&&F.current?.focus()),e!==void 0},[s.bind.title,s.settings,a]),ee=ch(s,s.loadedRecord,s.contentKey),L=Sh(s,e),R=s.settings.visibility,z=s.settings.show_title_and_feature_image,te=(0,X.useMemo)(()=>Do(r,{visibility:R,showTitleAndFeatureImage:z}),[r,z,R]),ne=(0,Z.jsx)(nn.Action,{ref:D,"aria-expanded":S,className:S?`bg-transparent enabled:aria-expanded:bg-transparent enabled:aria-expanded:shadow-none enabled:aria-expanded:hover:bg-sidebar-accent`:`bg-background/80 backdrop-blur-sm`,"data-testid":Vi,fallbackSize:`sm`,fallbackVariant:`ghost`,label:`Settings`,tooltip:!1,iconOnly:!0,onClick:N,children:(0,Z.jsx)(Oe,{})});return(0,Z.jsxs)(W,{ref:E,align:`stretch`,className:`relative h-full min-h-0 transition-[--editor-settings-progress] duration-450 ease-[cubic-bezier(0.22,1,0.36,1)] motion-reduce:transition-none`,gap:`none`,style:{"--editor-header-height":`${j}px`,"--editor-overlap":`0px`,"--editor-settings-progress":+!!S,"--editor-settings-toggle-width":`${O}px`},children:[(0,Z.jsxs)(G,{className:`min-h-0 min-w-0 flex-1`,gap:`none`,children:[(0,Z.jsx)(we,{ref:A,className:`pointer-events-none relative z-20 shrink-0`,children:(0,Z.jsxs)(o_,{analyticsReturn:y,postType:e,children:[!y||x||s.state.kind===`error`?(0,Z.jsx)(od,{isDirty:s.isDirty(),record:b,state:s.state,onOpenPublishFlow:g?f:void 0,onOpenUpdateFlow:_?p:void 0}):null,(0,Z.jsxs)(nn.ActionGroup,{className:`ml-auto gap-x-[calc(var(--spacing)*3*(1-var(--editor-settings-progress)))] max-sm:col-start-2 max-sm:row-start-1 sm:col-start-3`,children:[(0,Z.jsx)(Qu,{currentUser:i,offersEmailRetry:g,openFlow:u,post:h,postType:e,revealInvalidField:I,session:s,siteUrl:r.siteUrl,tkCount:c,onOpenFlow:d}),(0,Z.jsx)(we,{"aria-hidden":`true`,className:`w-[calc((var(--editor-settings-toggle-width)+var(--spacing)*2+1px)*(1-var(--editor-settings-progress)))] shrink-0`})]})]})}),(0,Z.jsxs)(we,{className:`peer shrink-0`,children:[(0,Z.jsx)($d,{contentText:s.contentText,hasUnsavedContent:s.hasUnsavedContent,newerVersionAvailable:s.newerVersionAvailable,pendingSave:s.pendingSave,state:s.state,onReload:s.reload,onRetrySave:s.retrySave}),(0,Z.jsx)(Is,{email:i?.email??``,open:s.state.kind===`reauth-pending`,onAbandoned:s.reauthAbandoned,onSucceeded:s.reauthSucceeded})]}),(0,Z.jsx)(we,{className:`relative min-h-0 flex-1 peer-empty:[--editor-overlap:var(--editor-header-height)]`,children:(0,Z.jsx)(`div`,{className:`-mt-(--editor-overlap) h-[calc(100%+var(--editor-overlap))] min-h-0`,children:(0,Z.jsx)(Ud,{...s.bind,autofocusTitle:!t,cardConfig:te,excerptError:fc(`custom_excerpt`,s.settings),featureImage:ee,handleRef:P,postType:e,showExcerpt:a,titleAndFeatureImageHidden:e===`page`&&z===!1,titleError:ic(s.bind.title),wordCountAccessory:(0,Z.jsx)(sd,{post:h}),onExcerptBlur:s.commitField,onTkCountChange:l},s.contentKey)})})]}),(0,Z.jsx)(we,{className:`absolute top-[calc(var(--spacing)*5+1px)] right-[calc(var(--spacing)*6+1px)] z-40`,children:ne}),w?(0,Z.jsx)(th,{cardConfig:te,currentUser:i,excerptRef:F,featureImage:ee.featureImage,hasInlineExcerpt:a,postType:e,session:s,siteUrl:r.siteUrl}):null,o,(0,Z.jsx)(Kn,{testId:Ii,...L.dialogProps})]})}function l_({postType:e,record:t,createdId:n}){let{data:r}=x({requestOptions:Q}),i=cr(`editorExcerpt`,{requestOptions:Q}),{snippets:a,createSnippet:o,deleteSnippet:s,snippetDialog:c}=r_({canManage:!!r&&(Dn(r)||jn(r)||Nn(r))}),[l]=(0,X.useState)(()=>({displayName:e,showTitleAndFeatureImage:t&&`show_title_and_feature_image`in t?t.show_title_and_feature_image:void 0,visibility:t?.visibility})),{cardConfig:u,failed:d,retry:f}=Eg({post:l,snippets:a,createSnippet:o,deleteSnippet:s});return u?(0,Z.jsx)(c_,{cardConfig:u,createdId:n,currentUser:r,postType:e,record:t,showExcerpt:i,snippetDialog:c}):d?(0,Z.jsx)(a_,{message:`Couldn’t load the editor.`,onRetry:f}):(0,Z.jsx)(i_,{})}function u_(e,t){let n=t.authors?.some(t=>t.id===e.id)??!1;return En(e)&&!n?!0:kn(e)&&t.status!==`draft`}function d_(e){let{mutateAsync:t}=ae(),{mutateAsync:n}=Jn(),[r,i]=(0,X.useState)(null);return{state:r,convert:(0,X.useCallback)(async r=>{let a={id:r.id,updated_at:r.updated_at},o={convertToLexical:!0};i({id:r.id});try{let s=e===`page`?(await n({page:a,options:o,...Q})).pages[0]:(await t({post:a,options:o,...Q})).posts[0];i(s?{id:r.id,record:s}:{id:r.id,error:!0})}catch(e){i({id:r.id,error:e})}},[n,t,e])}}function f_({postType:e,id:t}){let[n]=(0,X.useState)(t),[r,i]=(0,X.useState)(),a=he(),{pathname:o,search:s}=H(),{data:c}=x({requestOptions:Q}),l=ce(n??``,{enabled:e===`post`&&!!n,defaultErrorHandler:!1,requestOptions:Q}),u=Zn(n??``,{enabled:e===`page`&&!!n,defaultErrorHandler:!1,requestOptions:Q}),d=e===`page`?u:l,f=e===`page`?u.data?.pages[0]:l.data?.posts[0],{state:p,convert:m}=d_(e),g=e===`page`?`/pages`:`/posts`,_=r||f?null:d.error,v=_ instanceof w;(0,X.useEffect)(()=>{v&&or(`${o}${s}`)},[v,o,s]);let y=r?void 0:f,b=!!c&&!!y&&u_(c,y);(0,X.useEffect)(()=>{b&&a(g,{replace:!0})},[b,a,g]);let S=!!c&&!!y?.mobiledoc&&!y.lexical&&!b;if((0,X.useEffect)(()=>{S&&y&&p?.id!==y.id&&m(y)},[S,y,p?.id,m]),!n)return(0,Z.jsx)(l_,{createdId:t,postType:e});if(r)return(0,Z.jsx)(l_,{postType:e,record:r});if(_ instanceof h&&_.response?.status===404)return(0,Z.jsx)(Ar,{});if(v)return(0,Z.jsx)(i_,{});if(_)return(0,Z.jsx)(a_,{message:`Couldn’t load this ${e}.`,onRetry:()=>void d.refetch()});if(d.isPending||!c||b)return(0,Z.jsx)(i_,{});if(!f)return(0,Z.jsx)(Ar,{});let C=f;if(S){let t=p?.id===f.id?p:void 0;if(t?.error)return(0,Z.jsx)(a_,{message:`Couldn’t convert this ${e} for editing.`,onRetry:()=>void m(f)});if(!t?.record)return(0,Z.jsx)(i_,{});C=t.record}return d.isFetching||i(C),(0,Z.jsx)(l_,{postType:e,record:C})}function p_(){let e=me()[`*`]??``,{key:t,markCreated:n}=yh(),[r,i,...a]=e.split(`/`).filter(Boolean);return r?r!==`post`&&r!==`page`||a.length>0?(0,Z.jsx)(Ar,{}):(0,Z.jsx)(hh,{value:t,children:(0,Z.jsx)(gh,{value:n,children:(0,Z.jsx)(f_,{id:i,postType:r},t)})}):(0,Z.jsx)(ge,{to:`/editor/post`,replace:!0})}export{p_ as default};