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,2 +1,2 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./gift-link-modal-uZtwRHzl.js","./react-C9lG_SsT.js","./hooks-C-BDQ6Hs.js","./framework-provider-CIvHFnik.js","./jsx-runtime-Bm2_KH-0.js","./dist-pogVoW2G.js","./react-dom-t7VxfrkA.js","./use-tinybird-query-CPy5ipAP.js","./use-tinybird-token-DVNHuhu_.js","./index-CuDhPtkB.js","./members-Cj_BUZUL.js","./src-BwdakGcc.js","./users-CzgQKbfO.js","./update-queries-sbOKc6_E.js","./config-B3HuCo0y.js","./preload-helper-Ba4JejZL.js","./chunk-OB3PAWPO-D3muQBsq.js","./router-provider-Cf-bcYZr.js","./shade-provider-DvrXKKQZ.js","./stack-C3OmgpUv.js","./types-1riS5y4E.js","./feature-flag-overrides-context-o_oxK9Lh.js","./inline-Qoyy4r2g.js","./text-BnCSdzao.js","./lazy-component-DNJLzmpQ.js","./api-BLteQZ7W.js","./button-CTHYSI-d.js","./list-return-state-B91WMz_J.js","./dist-xChRm5l0.js","./accordion-BB5V0RD1.js","./es2015-8TGMBpHz.js","./dist-DH_36i66.js","./routes-DrnhmKTT.js","./heading-Ch2Mb19A.js","./alert-dialog-CAPLqwVs.js","./avatar-YbECDnBI.js","./badge-DuMiqyUH.js","./dialog-BO1lcy8A.js","./popover-r_3DwMi9.js","./overlay-escape-DzyuD9tc.js","./dist-sRp1p0JK.js","./hover-card-Bt4FXKiL.js","./input-BHb2A_DU.js","./input-surface-DoDPknjt.js","./skeleton-C1s6yr9e.js","./loading-indicator-DaRyGrxv.js","./no-value-label-CKNmidLC.js","./use-navigate-with-base-path-pweMCFf6.js","./content-formatters-VqvNA7Pv.js","./use-activity-pub-queries-Gy9_locM.js","./onboarding-SGscZLIc.js","./onboarding-4TxbZb90.js","./index.module-CnPepLB9.js","./empty-indicator-BhVwqSVH.js","./input-group-DL5EFP5r.js","./label-picker-GTIIlBQ6.js","./posts-Lg-p_ZHg.js","./tags-ZhqbPPc6.js","./multi-select-combobox-BzBMUFst.js","./labels-BVGLgdAj.js","./pages-Cbq1M2kG.js","./tiers-D7aGzwZ-.js","./schemas-21VB7GGY.js","./iso-B3K0cJod.js","./themes-pOHHvnkt.js","./reload-CZ-KP3IQ.js","./index-z8-nEVdb.css","./analytics-CDjjaA4a.js","./share-modal-CdHbFNEw.js","./gift-links-HVqaXear.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]=`6c917446-9363-4f09-a155-ad03f48836f5`,e._sentryDebugIdIdentifier=`sentry-dbid-6c917446-9363-4f09-a155-ad03f48836f5`)}catch{}})();import{s as e,t}from"./react-C9lG_SsT.js";import{i as n,m as r}from"./framework-provider-CIvHFnik.js";import{g as i,o as a}from"./hooks-C-BDQ6Hs.js";import{t as o}from"./jsx-runtime-Bm2_KH-0.js";import{n as s}from"./dist-pogVoW2G.js";import{t as c}from"./src-BwdakGcc.js";import{a as l,i as u,o as d,r as f,s as p,t as m}from"./posts-Lg-p_ZHg.js";import{r as h}from"./tags-ZhqbPPc6.js";import{t as g}from"./preload-helper-Ba4JejZL.js";import{_,u as v}from"./chunk-OB3PAWPO-D3muQBsq.js";import{a as y}from"./router-provider-Cf-bcYZr.js";import{H as b,L as x,a as ee,i as te,r as S,s as ne}from"./shade-provider-DvrXKKQZ.js";import{t as C}from"./box-BOIwAOVT.js";import{t as re}from"./container-DakAbO79.js";import{t as w}from"./inline-Qoyy4r2g.js";import{t as T}from"./stack-C3OmgpUv.js";import{t as E}from"./text-BnCSdzao.js";import{_ as ie,i as ae,o as oe,s as D}from"./api-BLteQZ7W.js";import{D as O,H as k,I as A,Jt as j,Mr as se,On as ce,Qt as M,V as N,b as P,br as F,bt as I,c as L,dt as le,et as ue,g as R,jr as z,kt as de,mr as fe,nn as B,t as V,tt as pe,u as H,ur as U,vn as me,xt as W,yn as he,zn as ge}from"./button-CTHYSI-d.js";import{a as _e,c as ve,i as ye,n as be,o as xe,r as Se,s as Ce,t as we}from"./alert-dialog-CAPLqwVs.js";import{t as Te}from"./checkbox-DN_wUAjb.js";import{a as Ee,i as De,o as Oe,r as ke,s as Ae,t as je}from"./dialog-BO1lcy8A.js";import{a as Me,i as Ne,t as Pe}from"./popover-r_3DwMi9.js";import{a as Fe,i as Ie,n as Le,r as Re,t as ze}from"./context-menu-BWbk9nd5.js";import{t as Be}from"./empty-indicator-BhVwqSVH.js";import{n as Ve,r as He,t as Ue}from"./hover-card-Bt4FXKiL.js";import{t as We}from"./input-BHb2A_DU.js";import{n as Ge}from"./loading-indicator-DaRyGrxv.js";import{t as G}from"./page-header-Baymg6VR.js";import{i as Ke,n as qe,o as Je,s as Ye,t as Xe}from"./select-DeloOYCg.js";import{c as Ze,l as Qe}from"./label-picker-GTIIlBQ6.js";import{c as $e,f as et,l as tt,o as nt,u as rt}from"./users-CzgQKbfO.js";import{a as it,s as K}from"./filters-Bf6E1qAP.js";import{a as at,i as ot,o as st,r as ct,s as lt}from"./pages-Cbq1M2kG.js";import{a as ut}from"./tiers-D7aGzwZ-.js";import{A as dt,B as ft,Ht as q,Jt as pt,Kt as J,a as mt,g as ht,k as Y,o as gt,st as _t}from"./index-CuDhPtkB.js";import{c as vt,d as yt}from"./stats-CHOikfoP.js";import{t as bt}from"./post-share-modal-Z_oAYgWz.js";import{t as xt}from"./feature-image-placeholder-moUV4yhR.js";import{t as St}from"./list-page-BnOuLOBb.js";import{n as Ct,t as wt}from"./virtual-list-qPFukjyT.js";import{c as Tt,r as Et,t as Dt}from"./tag-picker-M3fC-yOF.js";import{t as Ot}from"./use-email-sending-status-BFAg5TIb.js";import{i as kt,n as At,t as jt}from"./use-sending-eta-BsnKdQhv.js";import{t as Mt}from"./nql-Cjj71Bsg.js";var Nt={deleted:{single:`{Type} deleted`,multiple:`{count} {type}s deleted`},unpublished:{single:`{Type} reverted to a draft`,multiple:`{count} {type}s reverted to drafts`},unscheduled:{single:`{Type} unscheduled`,multiple:`{count} {type}s unscheduled`},accessUpdated:{single:`{Type} access updated`,multiple:`{Type} access updated for {count} {type}s`},tagsAdded:{single:`Tags added`,multiple:`Tags added to {count} {type}s`},tagAdded:{single:`Tag added`,multiple:`Tag added to {count} {type}s`},duplicated:{single:`{Type} duplicated`,multiple:`{count} {type}s duplicated`},copiedPostUrl:{single:`Post link copied`},copiedPreviewUrl:{single:`Preview link copied`}};function X(e,{count:t,resource:n,isSingle:r=t===1}){let i=Nt[e],a=(r?i.single:i.multiple)??i.single,o=n===`pages`?`page`:`post`;return a.replace(/\{Type\}/g,o.charAt(0).toUpperCase()+o.slice(1)).replace(/\{type\}/g,o).replace(/\{count\}/g,String(t))}function Pt(e,t){return e.uuid?`${t.replace(/\/$/,``)}/p/${e.uuid}/`:``}var Z=e(t(),1),Ft=new Set([`copy-link`,`copy-preview`,`duplicate`,`gift-link`,`delete`,`unpublish`,`unschedule`,`feature`,`unfeature`,`add-tag`,`change-access`]);function It({resource:e,posts:t,onShareAsGift:r,count:i,onBulkAction:a,selectionFilter:o,bucketFilters:c,isSingle:l,inverted:u}){let{data:d}=ht(),f=d?.site.url??``,m=p(),h=lt(),g=n();return(0,Z.useCallback)(async n=>{let d=t[0];if(!d)return;let p=t=>{s.success(X(t,{count:i,resource:e,isSingle:l}))};try{switch(n){case`copy-link`:await navigator.clipboard.writeText(d.url),p(`copiedPostUrl`);break;case`copy-preview`:await navigator.clipboard.writeText(Pt(d,f)),p(`copiedPreviewUrl`);break;case`duplicate`:{e===`pages`?await h.mutateAsync(d.id):await m.mutateAsync(d.id);let t=e===`pages`?`PagesResponseType`:`PostsResponseType`;g.invalidateQueries({queryKey:[t]}),p(`duplicated`);break}case`gift-link`:r?.(d.id);break;default:a?.(n,{filter:o,posts:t,count:i,bucketFilters:c,isSingle:l,inverted:u});break}}catch(t){s.error(t instanceof Error&&t.message?t.message:`Could not complete that action on this ${e===`pages`?`page`:`post`}.`)}},[t,e,f,m,h,g,r,i,a,o,c,l,u])}var Q=o(),Lt={"copy-link":B,"copy-preview":B,"gift-link":he,unpublish:P,unschedule:fe,feature:N,unfeature:k,"add-tag":A,"change-access":M,duplicate:ge,delete:O};function Rt({children:e,getItems:t,showGiftLink:n,enabled:r,onOpenChange:i,onAction:a}){if(!r)return(0,Q.jsx)(Q.Fragment,{children:e});let o=n?t():t().filter(e=>e.key!==`gift-link`);return(0,Q.jsxs)(ze,{onOpenChange:i,children:[(0,Q.jsx)(Fe,{asChild:!0,children:e}),(0,Q.jsx)(Le,{children:o.map((e,t)=>{let n=Lt[e.key];return(0,Q.jsxs)(Z.Fragment,{children:[t>0&&(e.separated||o[t-1].key===`gift-link`)&&(0,Q.jsx)(Ie,{}),(0,Q.jsxs)(Re,{"data-testid":`post-menu-${e.key}`,disabled:!Ft.has(e.key),variant:e.destructive?`destructive`:void 0,onSelect:()=>{a(e.key)},children:[(0,Q.jsx)(n,{}),e.label]})]},e.key)})})]})}function zt(e){return e.charAt(0).toUpperCase()+e.slice(1)}function Bt(e,t){return t===1?e:`${e}s`}function Vt(e,t){let n=RegExp(`${t}s:\\[(.*?)\\]`).exec(e);if(n)return n[1].split(`,`);let r=[...e.matchAll(RegExp(`${t}:(.*?)(?:,|$)`,`g`))].map(([,e])=>e).filter(Boolean);return r.length?r:null}function Ht(e=``){let t=e.split(`,`);if(t.includes(`status:free`)&&t.includes(`status:-free`))return`All subscribers`;let n=[];t.includes(`status:free`)?n.push(`Free subscribers`):t.includes(`status:-free`)&&n.push(`Paid subscribers`);let r=Vt(e,`label`);r&&n.push(`${Bt(`Label`,r.length)}: ${r.map(zt).join(`, `)}`);let i=Vt(e,`product`);return i&&n.push(`${Bt(`Product`,i.length)}: ${i.map(zt).join(`, `)}`),n.length?n.join(` & `):e}function $(e){return e.status??`draft`}function Ut(e,t=`posts`){let n=$(e);return t===`posts`&&(n===`published`||n===`sent`)&&e.email?.status===`failed`}function Wt(e){return e.email?.status===`failed`}function Gt(e,t=`posts`){let n=$(e);return t===`posts`&&(n===`published`||n===`sent`)&&!!e.email&&!Wt(e)}function Kt(e){return(e.authors??[]).map(e=>e.name||e.email).filter(Boolean).join(`, `)}function qt(e){let t=$(e);return t===`draft`||t===`scheduled`?`updated_at`:`published_at`}function Jt(e){return(qt(e)===`updated_at`?e.updated_at:e.published_at)??void 0}function Yt(e){let t=Kt(e);return{byline:t?`By ${t}`:null,primaryTagName:e.primary_tag?.name??null}}function Xt(e,{timezone:t,now:n}={}){let{byline:r,primaryTagName:i}=Yt(e),a=Jt(e);return[r,i?`in ${i}`:null,a?Et(a,{timezone:t,absolute:!0,short:!0,now:n}):null].filter(e=>!!e)}function Zt(e,{timezone:t,now:n}={}){let r=Jt(e);if(r)return`${qt(e)===`updated_at`?`Updated`:`Published`} ${Et(r,{timezone:t,absolute:!0,now:n})}`}function Qt(e,t=`posts`){switch($(e)){case`scheduled`:return`Scheduled`;case`published`:return Ut(e,t)?`Published but failed to send newsletter`:Gt(e,t)?`Published and sent`:`Published`;case`sent`:return Ut(e,t)?`Failed to send newsletter`:`Sent`;default:return`Draft`}}function $t(e,{timezone:t,now:n,resource:r=`posts`}={}){if($(e)===`scheduled`){let r=Et(e.published_at,{timezone:t,scheduled:!0,now:n}),i=e.email_segment?`to ${Ht(e.email_segment)}`:null;return[e.email_only?`to be sent`:`to be published${e.newsletter?` and sent`:``}`,r,e.email_only||e.newsletter?i:null].filter(Boolean).join(` `)}if(Gt(e,r)){let t=e.email?.email_count??0;return`to ${b(t)} ${t===1?`member`:`members`}`}return null}var en={visitors:{label:`Visitors`,tab:`web`},opens:{label:`Opens`,tab:`newsletter`},clicks:{label:`Clicks`,tab:`newsletter`},sent:{label:`Sent`,tab:`newsletter`},members:{label:`Members`,tab:`growth`}};function tn(e,t){return t===`posts`&&(e.status===`published`||e.status===`sent`)&&!!e.email&&e.email?.status!==`failed`}function nn(e,t,n){return tn(e,n)&&!t.isContributor&&t.membersSignupAccess!==`none`&&t.emailTrackOpens&&e.email?.track_opens===!0}function rn(e,t,n){return tn(e,n)&&!t.isContributor&&t.membersSignupAccess!==`none`&&t.emailTrackClicks&&e.email?.track_clicks===!0}function an(e,t,n){return(n===`pages`||!e.email_only)&&e.status===`published`&&t.membersTrackSources&&!t.isMembersInviteOnly&&!t.isContributor}function on(e,t,n){let r=[],i=e.status===`published`;if(t.webAnalyticsEnabled&&i&&r.push(`visitors`),e.email){let i=nn(e,t,n),a=rn(e,t,n);i&&r.push(`opens`),a&&r.push(`clicks`),!i&&!a&&r.push(`sent`)}return t.membersTrackSources&&i&&r.push(`members`),r.map(e=>({key:e,...en[e]}))}function sn(e){let t=e.email?.email_count,n=e.count?.clicks;return!t||!n?0:Math.round(n/t*100)}function cn(e){let t=e.email?.email_count,n=e.email?.opened_count;return!t||!n?0:Math.round(n/t*100)}function ln(e,t,n,r){return n!==`posts`||!r?!1:nn(e,t,n)||rn(e,t,n)||an(e,t,n)}var un={visitors:me,opens:j,clicks:de,sent:ue,members:R,free:H,paid:L};function dn({title:e,rows:t,children:n}){return(0,Q.jsxs)(Ue,{closeDelay:0,openDelay:0,children:[(0,Q.jsx)(He,{asChild:!0,children:n}),(0,Q.jsx)(Ve,{className:`pointer-events-none w-48 p-3`,"data-testid":`post-metric-panel`,side:`top`,children:(0,Q.jsxs)(T,{gap:`xs`,children:[(0,Q.jsx)(E,{size:`sm`,weight:`semibold`,children:e}),(0,Q.jsx)(_t,{className:`my-1 bg-border-default`}),t.map(e=>{let t=un[e.icon];return(0,Q.jsxs)(w,{gap:`md`,justify:`between`,children:[(0,Q.jsxs)(w,{align:`center`,gap:`xs`,children:[(0,Q.jsx)(t,{className:`size-3.5 shrink-0 text-muted-foreground`,strokeWidth:1.5}),(0,Q.jsx)(E,{size:`sm`,tone:`secondary`,children:e.label})]}),(0,Q.jsx)(E,{className:`font-mono`,size:`sm`,children:b(e.value)})]},e.label)})]})})]})}function fn(e,t,n){return e===`visitors`?{title:`Web traffic`,rows:[{label:`Unique visitors`,value:n.visitors??0,icon:`visitors`}]}:e===`opens`||e===`clicks`||e===`sent`?{title:`Newsletter performance`,rows:[{label:`Sent`,value:t.email?.email_count??0,icon:`sent`},...n.showOpens?[{label:`Opens`,value:t.email?.opened_count??0,icon:`opens`}]:[],...n.showClicks?[{label:`Clicks`,value:t.count?.clicks??0,icon:`clicks`}]:[]]}:{title:`New members`,rows:[{label:`Free`,value:n.freeMembers??0,icon:`free`},...n.paidMembersEnabled?[{label:`Paid`,value:n.paidMembers??0,icon:`paid`}]:[]]}}var pn=[`opens`,`clicks`,`sent`];function mn(e,t,n,r){switch(e.key){case`visitors`:return b(n?.[t.uuid??``]??0);case`opens`:return`${cn(t)}%`;case`clicks`:return`${sn(t)}%`;case`sent`:return b(t.email?.email_count??0);case`members`:{let e=r?.[t.id];return b((e?.free??0)+(e?.paid??0))}default:return``}}function hn({post:e,settings:t,resource:n,visitorCounts:r,memberCounts:i,paidMembersEnabled:a,className:o,hideEmailMetrics:s}){let c=on(e,t,n).filter(e=>!(s&&pn.includes(e.key))),l=new Set(c.map(e=>e.key)),u=i?.[e.id];if(c.length===0)return null;let d=[];return c.forEach(e=>{let t=d[d.length-1];pn.includes(e.key)&&t!==void 0&&pn.includes(t[0].key)?t.push(e):d.push([e])}),(0,Q.jsx)(w,{align:`center`,className:x(`shrink-0 max-[1200px]:hidden`,o),gap:`md`,children:d.map(t=>{let o=fn(t[0].key,e,{visitors:r?.[e.uuid??``],freeMembers:u?.free,paidMembers:u?.paid,paidMembersEnabled:a,showOpens:l.has(`opens`),showClicks:l.has(`clicks`)});return(0,Q.jsx)(dn,{rows:o.rows,title:o.title,children:(0,Q.jsx)(w,{align:`center`,gap:`md`,children:t.map(t=>{let a=un[t.key],o=mn(t,e,r,i),s=(0,Q.jsxs)(w,{align:`center`,gap:`xs`,justify:`end`,children:[(0,Q.jsx)(a,{className:`size-4 shrink-0 text-muted-foreground`,strokeWidth:1.5}),(0,Q.jsx)(E,{className:`font-mono`,size:`sm`,children:o})]});return n===`pages`?(0,Q.jsx)(`span`,{"aria-label":`${t.label}: ${o}`,className:`min-w-16`,title:t.label,"data-ignore-select":!0,children:s},t.key):(0,Q.jsx)(`a`,{"aria-label":`${t.label}: ${o}`,className:`min-w-16 no-underline`,href:`#/posts/analytics/${e.id}/${t.tab}`,title:t.label,"data-ignore-select":!0,children:s},t.key)})})},t[0].key)})})}var gn={status:`settled`};function _n(e,t,n){return!!(n&&t===`posts`&&(e.status===`published`||e.status===`sent`)&&e.email?.id&&(e.email.status===`pending`||e.email.status===`submitting`))}function vn({post:e,children:t}){let r=n(),i=e.email?.id,a=e.email?.status,o=Ot({emailId:i,emailStatus:a,enabled:!0}),s=o.status,c=s?.sending,l=c?.status,u=jt(s),[d,f]=(0,Z.useState)(null);if((0,Z.useEffect)(()=>{if(!(!i||!l)){if(l!==`submitted`&&f(e=>e===i?null:e),l===`failed`){r.invalidateQueries({queryKey:[m]});return}if(l===`submitted`){let e=!1;return r.invalidateQueries({queryKey:[m]}).then(()=>{e||f(i)}),()=>{e=!0}}}},[i,r,l]),o.isUnsupported)return(0,Q.jsx)(Q.Fragment,{children:t(gn)});if(c?.status===`failed`)return(0,Q.jsx)(Q.Fragment,{children:t({status:`failed`})});let p=!!(i&&c?.status===`submitted`&&d!==i);return c&&(c.status!==`submitted`||p)?(0,Q.jsx)(Q.Fragment,{children:t({status:`sending`,line:kt(c,{estimate:u})})}):!c&&(a===`pending`||a===`submitting`)?(0,Q.jsx)(Q.Fragment,{children:t({status:`sending`,line:kt({status:a===`pending`?`preparing`:`submitting`})})}):(0,Q.jsx)(Q.Fragment,{children:t(gn)})}function yn(e,t){if(t)return`text-state-danger`;switch(e.status){case`draft`:return`text-pink`;case`scheduled`:return`text-green`;default:return`text-muted-foreground`}}var bn=`aspect-[16/10] w-[80px] shrink-0 rounded-sm lg:w-[100px]`;function xn({post:e}){return e.feature_image?(0,Q.jsx)(`div`,{className:x(bn,`bg-muted bg-cover bg-center`),role:`presentation`,style:{backgroundImage:`url(${JSON.stringify(e.feature_image)})`}}):(0,Q.jsx)(xt,{className:x(bn,`p-0 group-hover:brightness-95`)})}var Sn=(0,Z.forwardRef)(function({post:e,resource:t,timezone:n,isContributor:r,hasAdminAccess:i,paidMembersEnabled:a,isSelected:o,onSelectMouseDown:s,onSelectClick:c,getMenuItems:l,showGiftLink:u,menuEnabled:d,menuOnOpenChange:f,menuOnAction:p,metricsSettings:m,visitorCounts:h,memberCounts:g,improveSendingUI:_,emailSendingState:v,...y},b){let{isAdmin7:C}=S(),[re,ie]=(0,Z.useState)(!1),ae=Xt(e,{timezone:n}),oe=Zt(e,{timezone:n}),D=Qt(e,t),O=$t(e,{timezone:n,resource:t}),k=Ut(e,t),A=v.status===`failed`?{...e,email:{...e.email,status:`failed`}}:e,j=v.status===`failed`||k,se=v.status===`failed`?Qt(A,t):D,ce=e.status===`published`,M=t===`pages`?`page`:`post`,P=!!(r&&ce),F=P?e.url:`#/editor/${M}/${e.id}`,L=ln(e,m,t,!!i)?{href:`#/posts/analytics/${e.id}`,label:`Post analytics`,external:!1,Icon:U}:P?{href:e.url,label:`View post`,external:!0,Icon:z}:{href:F,label:`Edit`,external:!1,Icon:I},le=(0,Q.jsx)(`li`,{ref:b,...y,className:x(`group border-b border-border-default`,o?`bg-table-row-selected select-none`:`hover:bg-table-row-hover`),"data-selected":o?`true`:void 0,"data-testid":`posts-list-item`,onClickCapture:c,onMouseDownCapture:t=>{s?.(t,e.id)},onMouseEnter:()=>{ie(!0)},onMouseLeave:()=>{ie(!1)},children:(0,Q.jsxs)(w,{align:`center`,className:`pr-4`,gap:`md`,children:[(0,Q.jsxs)(`a`,{className:`flex min-w-0 flex-1 items-start gap-4 py-4 pl-4 no-underline focus-visible:ring-1 focus-visible:ring-focus-ring focus-visible:outline-hidden focus-visible:ring-inset`,"data-testid":`post-list-item-link`,href:F,rel:P?`noopener noreferrer`:void 0,target:P?`_blank`:void 0,children:[(0,Q.jsx)(xn,{post:e}),(0,Q.jsxs)(T,{className:`min-w-0 flex-1`,gap:`xs`,children:[(0,Q.jsxs)(w,{align:`center`,gap:`xs`,children:[e.featured&&(0,Q.jsx)(N,{"aria-label":`Featured`,className:`size-4 shrink-0 fill-state-warning text-state-warning`,"data-testid":`post-featured`}),(0,Q.jsx)(E,{as:`h3`,className:`truncate tracking-normal`,weight:`semibold`,children:e.title})]}),ae.length>0&&(0,Q.jsx)(E,{className:`truncate`,size:`sm`,title:oe,tone:`secondary`,children:ae.join(` - `)}),v.status===`sending`?(0,Q.jsx)(At,{announce:!1,className:`text-sm`,line:v.line}):(0,Q.jsxs)(E,{className:yn(A,j),size:`sm`,weight:j||e.status===`draft`||e.status===`scheduled`?`medium`:`regular`,children:[se,v.status!==`failed`&&re&&O&&(0,Q.jsxs)(`span`,{children:[` `,O]})]})]})]}),(0,Q.jsx)(hn,{className:`py-4`,hideEmailMetrics:v.status===`sending`,memberCounts:g,paidMembersEnabled:a,post:e,resource:t,settings:m,visitorCounts:h}),(0,Q.jsxs)(te,{delayDuration:1e3,children:[(0,Q.jsx)(ne,{asChild:!0,children:(0,Q.jsx)(V,{className:x(`my-4 shrink-0`,C?`ms-8`:`ms-2`,C?`text-muted-foreground hover:bg-background hover:text-foreground`:`bg-control-surface px-4`,C&&re&&`bg-background`),size:C?`icon`:void 0,variant:C?re?`outline`:`ghost`:`outline`,asChild:!0,children:(0,Q.jsx)(`a`,{"aria-label":L.label,"data-testid":`post-list-item-action`,href:L.href,rel:L.external?`noopener noreferrer`:void 0,target:L.external?`_blank`:void 0,"data-ignore-select":!0,children:(0,Q.jsx)(L.Icon,{})})})}),(0,Q.jsx)(ee,{variant:`white`,children:L.label})]})]})});return(0,Q.jsx)(Rt,{enabled:d??!1,getItems:l,showGiftLink:u??!1,onAction:p??(()=>{}),onOpenChange:f??(()=>{}),children:le})}),Cn=(0,Z.forwardRef)(function(e,t){return _n(e.post,e.resource,e.improveSendingUI??!1)?(0,Q.jsx)(vn,{post:e.post,children:n=>(0,Q.jsx)(Sn,{ref:t,...e,emailSendingState:n})}):(0,Q.jsx)(Sn,{ref:t,...e,emailSendingState:gn})}),wn=(0,Z.memo)(Cn),Tn={posts:{title:`Posts`,plural:`posts`,newLabel:`New post`,newHref:`#/editor/post`,emptyTitle:`Start creating content.`,emptyAction:`Write a new post`},pages:{title:`Pages`,plural:`pages`,newLabel:`New page`,newHref:`#/editor/page`,emptyTitle:`Tell the world about yourself.`,emptyAction:`Create a new page`}};function En(e){return Tn[e]}function Dn({resource:e,hasFilters:t,onClearFilters:n}){let r=En(e);return t?(0,Q.jsx)(Be,{actions:(0,Q.jsxs)(V,{variant:`outline`,onClick:n,children:[`Show all `,r.plural]}),"data-testid":`posts-empty-filtered`,title:`No ${r.plural} match the current filter`,children:(0,Q.jsx)(pe,{})}):(0,Q.jsx)(Be,{actions:(0,Q.jsx)(V,{asChild:!0,children:(0,Q.jsx)(`a`,{href:r.newHref,children:r.emptyAction})}),"data-testid":`posts-empty-cold`,title:r.emptyTitle,children:(0,Q.jsx)(W,{})})}var On=[`scheduled`,`draft`,`publishedAndSent`],kn=[`draft`,`scheduled`,`published`,`sent`],An=`featured`;function jn(e){return(e??``).split(`,`).map(e=>e.trim()).filter(Boolean)}function Mn(e){let t=jn(e),n=kn.filter(e=>t.includes(e));return n.length>0?n:[...kn]}function Nn(e){return e.featured===`true`||e.featured===`false`?e.featured:jn(e.type).includes(`featured`)?`true`:null}function Pn(e){return e.length===1?e[0]:`[${e.join(`,`)}]`}function Fn(e){return e.filter(e=>{let t=e[1];return t!=null&&t.trim()!==``}).map(([e,t])=>`${e}:${t}`).join(`+`)}function In(e,t,{ownAuthorSlug:n}){return[[`tag`,e.tag],[`visibility`,e.visibility],[`status`,Pn(t)],[`featured`,Nn(e)],[`authors`,n||e.author]]}function Ln(e,t={}){return Fn(In(e,Mn(e.type),t))}function Rn(e){let t=Mn(e.type);return On.filter(e=>e===`publishedAndSent`?t.includes(`published`)||t.includes(`sent`):t.includes(e))}function zn(e,t){return e===`publishedAndSent`?Mn(t.type).filter(e=>e===`published`||e===`sent`):[e]}function Bn(e,t,n={}){return Fn(In(t,zn(e,t),n))}function Vn(e,t){return t||(e===`draft`?`updated_at desc`:`published_at desc`)}function Hn(e,t,n={}){return{filter:Bn(e,t,n),order:Vn(e,t.order),limit:`30`}}var Un=[{value:`draft`,label:`Draft posts`},{value:`published`,label:`Published posts`},{value:`sent`,label:`Email only posts`},{value:`scheduled`,label:`Scheduled posts`}],Wn=[{value:`draft`,label:`Draft pages`},{value:`published`,label:`Published pages`},{value:`scheduled`,label:`Scheduled pages`}],Gn=[{value:`public`,label:`Public`},{value:`members`,label:`Members-only`},{value:`[paid,tiers]`,label:`Paid members-only`}],Kn=[{value:`published_at asc`,label:`Oldest first`},{value:`updated_at desc`,label:`Recently updated`}],qn=`Newest first`;function Jn(e){return e===`pages`?Wn:Un}function Yn(e){return e?Kn.find(t=>t.value===e)?.label??e:qn}var Xn=[`type`,`featured`,`visibility`,`author`,`tag`],Zn={type:null,featured:null,visibility:null,author:null,tag:null},Qn=`is`,$n=`is_any_of`,er=`true`,tr=`is_not`,nr=Jn(`posts`).map(e=>e.value);function rr(e){return Xn.includes(e)}function ir(e){return Xn.flatMap((t,n)=>{let r=ar(e,t);if(r.length===0)return[];let i=`${t}:${n+1}`;return t===`featured`?[{id:i,field:t,operator:r[0]===`false`?tr:Qn,values:[er]}]:[{id:i,field:t,operator:t===`type`?$n:Qn,values:r}]})}function ar(e,t){if(t===`type`)return jn(e.type).filter(e=>e!==An);let n=t===`featured`?Nn(e):e[t];return n==null||n.trim()===``?[]:[n]}function or(e){let t=nr.indexOf(e);return t===-1?nr.length:t}function sr(e){let t=[...new Set(e.map(cr).filter(e=>e!==null))];return t.sort((e,t)=>or(e)-or(t)),t.length>0?t.join(`,`):null}function cr(e){return typeof e==`string`?e===``?null:e:typeof e==`number`||typeof e==`boolean`?String(e):null}function lr(e){let t={...Zn};return e.forEach(e=>{if(rr(e.field)){if(e.field===`featured`){t.featured=e.operator===`is_not`?`false`:`true`;return}t[e.field]=e.field===`type`?sr(e.values):cr(e.values[0])}}),t}var ur=`100`;function dr(e){return{value:e.slug,label:e.name||e.email,metadata:{id:e.id}}}var fr=Ze({id:`posts.authors`,buildBrowseSearchParams:e=>({limit:ur,order:`name asc`,...e?{filter:`name:~${c(e)}`}:{}}),buildHydrateFilter:e=>Qe(`slug`,e),buildHydrateSearchParams:e=>({filter:e,order:`name asc`}),getMissingSelectedOption:e=>({value:e,label:`Unknown author`}),selectItems:e=>e?.users,useQuery:({enabled:e,searchParams:t})=>et({enabled:e,placeholderData:r,searchParams:t}),toOption:dr,debounceMs:250});function pr(){return fr()}var mr=`100`;function hr(e){return{value:e.slug,label:e.name,detail:e.slug,metadata:{id:e.id}}}var gr=Ze({id:`posts.tags`,buildBrowseSearchParams:e=>({limit:mr,order:`name asc`,...e?{filter:`tags.name:~${c(e)}`}:{}}),buildHydrateFilter:e=>Qe(`slug`,e),buildHydrateSearchParams:e=>({filter:e,order:`name asc`}),getMissingSelectedOption:e=>({value:e,label:`Unknown tag`}),selectItems:e=>e?.tags,useQuery:({enabled:e,searchParams:t})=>h({filter:{},enabled:e,placeholderData:r,searchParams:t}),toOption:hr,debounceMs:250});function _r(){return gr()}var vr=[{value:`is`,label:`is`}],yr=[{value:$n,label:`is any of`}],br=[{value:`is`,label:`is`},{value:tr,label:`is not`}];function xr(e,t,n){let r=t.filter(t=>!e.some(e=>e.value===t));return[...e,...r.map(e=>({value:e,label:`Unknown ${n}`}))]}function Sr(e){return e?[e]:[]}function Cr({resource:e,authorValueSource:t,tagValueSource:n,isContributor:r=!1,isAuthorOrContributor:i=!1,params:a={}}){let o=e===`pages`?`Page`:`Post`,s=jn(a.type).filter(e=>e!==An),c={key:`type`,label:`${o} type`,type:`multiselect`,icon:(0,Q.jsx)(ce,{className:`size-4`}),operators:yr,defaultOperator:$n,options:xr(Jn(e),s,`type`)},l={key:`featured`,label:`Featured`,pillLabel:o,type:`custom`,icon:(0,Q.jsx)(N,{className:`size-4`}),operators:br,defaultOperator:`is`,defaultValue:er,staticValue:!0,customRenderer:()=>(0,Q.jsx)(`span`,{children:`Featured`})};if(r)return[c,l];let u=[c,l,{key:`visibility`,label:`Access`,type:`select`,icon:(0,Q.jsx)(M,{className:`size-4`}),operators:vr,options:xr(Gn,Sr(a.visibility),`access`)}];return i||u.push({key:`author`,label:`Author`,type:`select`,icon:(0,Q.jsx)(H,{className:`size-4`}),operators:vr,searchable:!0,placeholder:`Search authors`,valueSource:t}),u.push({key:`tag`,label:`Tag`,type:`select`,icon:(0,Q.jsx)(A,{className:`size-4`}),operators:vr,searchable:!0,placeholder:`Search tags`,valueSource:n,className:`w-[320px]`}),u}function wr(e,t,n){return Cr({resource:e,authorValueSource:pr(),tagValueSource:_r(),isContributor:!!(t&&tt(t)),isAuthorOrContributor:!!(t&&$e(t)),params:n})}function Tr({resource:e,filters:t,params:n,currentUser:r,iconOnly:i=!1,viewActions:a,onFiltersChange:o}){let{isAdmin7:s}=S(),c=wr(e,r,n),l=t.length>0,u=l?(0,Q.jsxs)(K.Actions,{children:[(0,Q.jsx)(K.Action,{className:x(`hidden items-center lg:inline-flex`,!s&&`text-muted-foreground hover:text-foreground`),type:`button`,variant:s?`ghost`:`outline`,onClick:()=>o([]),children:`Clear`}),a]}):void 0;return(0,Q.jsx)(w,{align:`center`,className:x(!i&&`w-full`),"data-testid":`posts-filters`,gap:`sm`,children:(0,Q.jsx)(it,{addButton:(0,Q.jsx)(it.Trigger,{collapseLabel:i}),allowMultiple:!1,className:x(`[&>button]:order-last`,i?`w-auto`:`w-full`,l&&`sm:!pr-40`),clearButton:u,fields:c,filters:t,keyboardShortcut:`f`,popoverAlign:`start`,showClearButton:l,showSearchInput:!1,onChange:o})})}var Er=[`midgrey`,`blue`,`green`,`red`,`teal`,`purple`,`yellow`,`orange`,`pink`];function Dr(){return Er[Math.floor(Math.random()*Er.length)]}function Or(e){let t={};return D.forEach(n=>{let r=e[n];r!=null&&r!==``&&(t[n]=r)}),t}function kr(e,t,n){return{name:e.trim(),route:`posts`,color:n,filter:Or(t)}}function Ar({isAdmin:e,resource:t,params:n,isDefaultView:r}){return!e||t!==`posts`||r?!1:D.some(e=>!!n[e])}function jr(e,t){let n=Or(t);return e.find(e=>D.every(t=>(e.filter[t]??null)===(n[t]??null)))}var Mr=`Saved views could not be read, so nothing was changed`,Nr=`A view with this name already exists`,Pr=`Saved view could not be found`;function Fr(e){let t;try{t=JSON.parse(e)}catch{throw Error(Mr)}if(!Array.isArray(t))throw Error(Mr);return t}function Ir(e,t){return e.route===`posts`&&typeof e.name==`string`&&Y(e.name)===Y(t.name)}function Lr(e,t,n){let r=Y(t);return e.some((e,t)=>t!==n&&e.route===`posts`&&typeof e.name==`string`&&Y(e.name)===r)}function Rr(e,t,n,r,i){let a=Fr(e),o=kr(t,n,r),s=i?a.findIndex(e=>Ir(e,i)):-1;if(i&&s===-1)throw Error(Pr);if(Lr(a,o.name,s))throw Error(Nr);let c=s===-1?[...a,o]:a.map((e,t)=>t===s?o:e);return JSON.stringify(c)}function zr(e,t){let n=Fr(e),r=n.findIndex(e=>Ir(e,t));if(r===-1)throw Error(Pr);return JSON.stringify(n.filter((e,t)=>t!==r))}var Br=`Settings are still loading, so nothing was changed`;function Vr(e){if(e)return q(e.settings,`shared_views`)??`[]`}function Hr(){let{data:e}=J(),t=Vr(e);if(t===void 0)return[];let n=dt(t);return n.ok?n.views.filter(e=>e.route===`posts`):[]}function Ur(){let{data:e}=J(),{mutateAsync:t}=pt(),n=i();return(0,Z.useCallback)(async r=>{let i=Vr(e);if(i===void 0){let e=Error(Br);throw n(e,{withToast:!1}),e}let a=r(i);try{await t([{key:`shared_views`,value:a}])}catch(e){throw n(e,{withToast:!1}),e}},[e,t,n])}function Wr(){let e=Ur();return(0,Z.useCallback)(async(t,n,r,i)=>{await e(e=>Rr(e,t,n,r,i))},[e])}function Gr(){let e=Ur();return(0,Z.useCallback)(async t=>{await e(e=>zr(e,t))},[e])}function Kr(e){return Er.includes(e)}function qr({value:e,onChange:t}){return(0,Q.jsx)(w,{gap:`sm`,role:`radiogroup`,children:Er.map(n=>(0,Q.jsx)(`button`,{"aria-checked":n===e,"aria-label":n,className:x(`size-5 rounded-full border-2`,n===e?`border-foreground`:`border-transparent`),role:`radio`,style:{backgroundColor:gt(n)},type:`button`,onClick:()=>{t(n)}},n))})}function Jr({resource:e,params:t,activeView:n,onClose:r}){let[i,a]=(0,Z.useState)(n?.name??``),[o,s]=(0,Z.useState)(Kr(n?.color)?n.color:Dr()),[c,l]=(0,Z.useState)(``),[u,d]=(0,Z.useState)(!1),[f,p]=(0,Z.useState)(!1),m=Wr(),h=Gr(),g=y(),_=!!n,v=async()=>{if(u||f)return;let e=i.trim();if(!e){l(`Please enter a name`);return}d(!0);try{await m(e,t,o,n),r()}catch(e){l(e instanceof Error?e.message:`Failed to save view`)}finally{d(!1)}},b=async()=>{if(!(!n||u)){d(!0);try{await h(n),r(),g(`/${e}`)}catch(e){l(e instanceof Error?e.message:`Failed to delete view`)}finally{d(!1)}}};return(0,Q.jsxs)(T,{gap:`md`,children:[(0,Q.jsx)(We,{"aria-label":`View name`,placeholder:`Name this view`,value:i,autoFocus:!0,onChange:e=>{a(e.target.value),l(``)},onKeyDown:e=>{e.key===`Enter`&&v()}}),(0,Q.jsx)(qr,{value:o,onChange:s}),c&&(0,Q.jsx)(E,{className:`text-state-danger`,role:`alert`,size:`sm`,children:c}),f?(0,Q.jsxs)(w,{gap:`sm`,justify:`between`,children:[(0,Q.jsx)(E,{size:`sm`,tone:`secondary`,children:`Delete view?`}),(0,Q.jsxs)(w,{gap:`sm`,children:[(0,Q.jsx)(V,{disabled:u,size:`sm`,variant:`outline`,onClick:()=>p(!1),children:`Cancel`}),(0,Q.jsx)(V,{disabled:u,size:`sm`,variant:`destructive`,onClick:()=>void b(),children:u?`Deleting...`:`Delete`})]})]}):(0,Q.jsxs)(w,{gap:`sm`,justify:_?`between`:`end`,children:[_&&(0,Q.jsx)(V,{className:`text-destructive hover:bg-destructive/5 hover:text-destructive`,disabled:u,size:`sm`,variant:`ghost`,onClick:()=>p(!0),children:`Delete`}),(0,Q.jsxs)(w,{gap:`sm`,children:[_&&(0,Q.jsx)(V,{disabled:u,size:`sm`,variant:`outline`,onClick:r,children:`Cancel`}),(0,Q.jsx)(V,{disabled:u,size:`sm`,onClick:()=>void v(),children:_?`Save`:`Save view`})]})]})]})}function Yr({resource:e,params:t,activeView:n,inHeader:r=!1}){let[i,a]=(0,Z.useState)(!1),{isAdmin7:o}=S();return(0,Q.jsx)(Q.Fragment,{children:(0,Q.jsxs)(Pe,{open:i,onOpenChange:a,children:[(0,Q.jsx)(Me,{asChild:!0,children:r?(0,Q.jsxs)(G.Action,{"data-testid":`manage-post-view`,label:n?`Edit view`:`Save view`,children:[o&&(0,Q.jsx)(F,{className:`size-4`}),n?`Edit view`:`Save view`]}):(0,Q.jsx)(K.Action,{"data-testid":`manage-post-view`,variant:`outline`,children:n?`Edit view`:`Save view`})}),(0,Q.jsx)(Ne,{align:`end`,className:`w-72`,children:(0,Q.jsx)(Jr,{activeView:n,params:t,resource:e,onClose:()=>{a(!1)}},n?.name??`new`)})]})})}function Xr({order:e,onOrderChange:t}){return(0,Q.jsxs)(Xe,{value:e||`newest`,onValueChange:e=>t(e===`newest`?null:e),children:[(0,Q.jsxs)(G.SelectTrigger,{"aria-label":`Sort: ${Yn(e)}`,"data-testid":`posts-sort`,label:`Sort`,tooltip:!0,children:[(0,Q.jsx)(se,{className:`size-4`}),(0,Q.jsx)(Ye,{children:Yn(e)})]}),(0,Q.jsxs)(qe,{align:`end`,children:[(0,Q.jsx)(Ke,{value:`newest`,children:qn}),Kn.map(e=>(0,Q.jsx)(Ke,{value:e.value,children:e.label},e.value))]})]})}function Zr(e){return`'${[...e].join(`','`)}'`}function Qr(e,t){let{selectedIds:n,inverted:r}=e;return r?t?n.size===0?t:`(${t})+id:-[${Zr(n)}]`:n.size===0?``:`id:-[${Zr(n)}]`:n.size===0?`id:nothing`:`id:[${Zr(n)}]`}function $r(e,t,n){let r=e.indexOf(t),i=e.indexOf(n);return r===-1||i===-1||i===r?[]:i>r?e.slice(r+1,i+1):e.slice(i,r+1)}function ei(){return{selectedIds:new Set,inverted:!1,lastSelectedId:null,lastShiftGroup:new Set,transient:!1}}var ti=ei();function ni(e,t){return e.inverted?!e.selectedIds.has(t):e.selectedIds.has(t)}function ri(e){return!e.inverted&&e.selectedIds.size===1}function ii(e,t){return e.inverted?Math.max(t-e.selectedIds.size,1):e.selectedIds.size}function ai(e,t){let n=new Set(e.selectedIds),r=n.delete(t);r||n.add(t);let i=e.lastSelectedId;return!r||e.inverted?i=t:e.lastSelectedId===t&&(i=null),{selectedIds:n,inverted:e.inverted,lastSelectedId:i,lastShiftGroup:new Set,transient:!1}}function oi(e,t,n){if(e.lastSelectedId===null)return ai(e,t);let r=new Set(e.selectedIds);e.lastShiftGroup.forEach(t=>{e.inverted?r.add(t):r.delete(t)});let i=$r(n,e.lastSelectedId,t);return i.forEach(t=>{e.inverted?r.delete(t):r.add(t)}),{selectedIds:r,inverted:e.inverted,lastSelectedId:e.lastSelectedId,lastShiftGroup:new Set(i),transient:!1}}function si(e,t){switch(t.type){case`toggle`:return ai(e,t.id);case`shift`:return oi(e,t.id,t.orderedIds);case`selectAll`:return{selectedIds:new Set,inverted:!e.inverted,lastSelectedId:null,lastShiftGroup:new Set,transient:!1};case`contextMenu`:return ni(e,t.id)?e:{selectedIds:new Set([t.id]),inverted:!1,lastSelectedId:t.id,lastShiftGroup:new Set,transient:!0};case`keepOnly`:{if(e.inverted)return e;let n=new Set([...e.selectedIds].filter(e=>t.ids.has(e)));return{...e,selectedIds:n,lastShiftGroup:new Set}}case`closeContextMenu`:return e.transient?ei():e;case`clear`:return ei();default:return e}}function ci(){let e=window.getSelection();e&&(e.empty?e.empty():e.removeAllRanges&&e.removeAllRanges())}function li({orderedIds:e,allFilter:t,enabled:n,suspended:r=!1}){let[i,a]=(0,Z.useReducer)(si,ti),[o,s]=(0,Z.useState)(!1),c=(0,Z.useRef)({orderedIds:e,enabled:n,suspended:r});c.current={orderedIds:e,enabled:n,suspended:r};let l=(0,Z.useRef)(t);(0,Z.useEffect)(()=>{l.current!==t&&(l.current=t,a({type:`clear`}))},[t]),(0,Z.useEffect)(()=>{function e(e){if(e.defaultPrevented||!c.current.enabled||c.current.suspended)return;let t=e.target;if(!(t instanceof HTMLInputElement||t instanceof HTMLTextAreaElement||t?.isContentEditable===!0)){if((e.metaKey||e.ctrlKey)&&!e.shiftKey&&e.key.toLowerCase()===`a`){a({type:`selectAll`}),e.preventDefault();return}e.key===`Escape`&&a({type:`clear`})}}function t(e){s(e.metaKey||e.ctrlKey||e.shiftKey)}function n(){s(!1)}function r(e){!c.current.enabled||c.current.suspended||e.target?.closest(`[role="menu"], [role="dialog"], [role="alertdialog"], [role="listbox"]`)||!e.metaKey&&!e.ctrlKey&&a({type:`clear`})}return window.addEventListener(`keydown`,e),window.addEventListener(`keydown`,t),window.addEventListener(`keyup`,t),window.addEventListener(`click`,r),window.addEventListener(`click`,t),window.addEventListener(`blur`,n),()=>{window.removeEventListener(`keydown`,e),window.removeEventListener(`keydown`,t),window.removeEventListener(`keyup`,t),window.removeEventListener(`click`,r),window.removeEventListener(`click`,t),window.removeEventListener(`blur`,n)}},[]);let u=(0,Z.useCallback)((e,t)=>{if(c.current.enabled&&!e.target.closest(`[data-ignore-select]`)){if(e.ctrlKey||e.metaKey)a({type:`toggle`,id:t});else if(e.shiftKey)a({type:`shift`,id:t,orderedIds:c.current.orderedIds});else return;e.preventDefault(),e.stopPropagation(),ci()}},[]),d=(0,Z.useCallback)(e=>{c.current.enabled&&(e.target.closest(`[data-ignore-select]`)||!e.ctrlKey&&!e.metaKey&&!e.shiftKey||(e.preventDefault(),e.stopPropagation(),ci()))},[]),f=(0,Z.useCallback)((e,t)=>{c.current.enabled&&a(e?{type:`contextMenu`,id:t}:{type:`closeContextMenu`})},[]),p=(0,Z.useRef)(new Map),m=(0,Z.useCallback)(e=>{let t=p.current.get(e);if(t)return t;let n=t=>{f(t,e)};return p.current.set(e,n),n},[f]),h=(0,Z.useCallback)(e=>{a({type:`keepOnly`,ids:e})},[]);return{state:i,filter:(0,Z.useMemo)(()=>Qr(i,t),[i,t]),modifierHeld:n&&o,isSelected:(0,Z.useCallback)(e=>n&&ni(i,e),[n,i]),clear:(0,Z.useCallback)(()=>a({type:`clear`}),[]),keepOnly:h,onRowMouseDown:u,onRowClick:d,getContextMenuOpenHandler:m,enabled:n}}function ui({user:e,post:t}){if(!e||!t)return!1;let n=nt(e)||rt(e),r=t.status===`published`&&!!t.visibility&&t.visibility!==`public`;return n&&r}function di({wasPublished:e,type:t,emailOnly:n,postCount:r}){if(!e)return{primary:`All set!`,secondary:``};let i=typeof r==`number`,a=i?`Boom! It’s out there.`:`Your post is published.`;if(t===`page`)return{primary:a,secondary:`Your page is published.`};if(n)return{primary:a,secondary:`Your email has been sent.`};if(i){let e=r===1?`post`:`posts`;return{primary:a,secondary:`That’s ${b(r)} ${e} published.`}}return{primary:a,secondary:`Spread the word!`}}function fi({post:e,type:t,wasPublished:n,postCount:r,siteTitle:i,siteIcon:a,onClose:o}){let s=di({wasPublished:n,type:t,emailOnly:e.email_only===!0,postCount:r});return(0,Q.jsx)(bt,{author:e.authors?.[0]?.name??``,emailOnly:e.email_only===!0,faviconURL:a,featureImageURL:e.feature_image??``,postExcerpt:e.excerpt??e.custom_excerpt??``,postTitle:e.title,postURL:e.url,primaryTitle:s.primary,secondaryTitle:s.secondary,siteTitle:i,open:!0,onClose:o,onOpenChange:e=>{e||o()}})}var pi={published:`ghost-last-published-post`,scheduled:`ghost-last-scheduled-post`};function mi(){let e=localStorage.getItem(pi.published),t=localStorage.getItem(pi.scheduled);localStorage.removeItem(pi.published),localStorage.removeItem(pi.scheduled);let n=e??t;if(!n)return null;try{let t=JSON.parse(n);return typeof t?.id!=`string`||!t.id?null:{id:t.id,type:typeof t.type==`string`?t.type:`post`,wasPublished:e!==null}}catch{return null}}function hi(){let[e,t]=(0,Z.useState)(null),n=(0,Z.useRef)(!1);(0,Z.useEffect)(()=>{n.current||(n.current=!0,t(mi()))},[]);let r=e?.type===`page`,i={filter:`id:${e?.id??``}`,limit:`1`,include:`authors,newsletter,email`},{data:a}=f({searchParams:i,enabled:!!e&&!r}),{data:o}=ct({searchParams:i,enabled:!!e&&r}),{data:s}=f({searchParams:{filter:`status:published`,limit:`1`},enabled:e?.wasPublished===!0});return{celebration:e,post:r?o?.pages?.[0]:a?.posts?.[0],postCount:e?.wasPublished?s?.meta?.pagination.total:void 0,dismiss:()=>{t(null)}}}function gi({isRunning:e,onConfirm:t,onCancel:n}){let[r,i]=(0,Z.useState)([]),[a,o]=(0,Z.useState)(``);return(0,Q.jsx)(je,{open:!0,onOpenChange:e=>{e||n()},children:(0,Q.jsxs)(ke,{"data-testid":`add-tag-modal`,onEscapeKeyDown:e=>{(r.length>0||a.length>0)&&e.preventDefault()},children:[(0,Q.jsxs)(Oe,{children:[(0,Q.jsx)(Ae,{children:`Add tags`}),(0,Q.jsx)(De,{children:`Added to everything selected, on top of any tags already applied.`})]}),(0,Q.jsx)(Dt,{inputLabel:`Search tags`,selected:r,onAdd:e=>{i(t=>[...t,e])},onRemove:e=>{i(t=>t.filter(t=>Tt(t)!==e))},onSearchChange:o}),(0,Q.jsxs)(Ee,{children:[(0,Q.jsx)(V,{disabled:e,variant:`outline`,onClick:n,children:`Cancel`}),(0,Q.jsx)(V,{disabled:e||r.length===0,onClick:()=>{t(r)},children:e?`Adding`:`Add`})]})]})})}var _i={delete:{confirm:`Delete`,running:`Deleting`},unpublish:{confirm:`Unpublish`,running:`Unpublishing`},unschedule:{confirm:`Unschedule`,running:`Unscheduling`}};function vi(e,{count:t,resource:n,title:r,isSingle:i=t===1}){let a=n===`pages`?`page`:`post`,o=i?`this ${a}`:`these ${a}s`,s=i?r?`"${r}"`:`this ${a}`:`${t} ${a}s`,c=e===`delete`?`You’re about to delete ${s}. This is permanent! We warned you, k?`:`You’re about to revert ${s} to a private draft.`;return{title:`Are you sure you want to ${e} ${o}?`,body:c,confirmLabel:_i[e].confirm,runningLabel:_i[e].running}}function yi({count:e,resource:t,isSingle:n}){let r=t===`pages`?`page`:`post`;return n?`Change ${r} access`:`Change ${r} access for ${e} ${r}s`}var bi=[{value:`public`,label:`Public`},{value:`members`,label:`Members only`},{value:`paid`,label:`Paid-members only`},{value:`tiers`,label:`Specific tier(s)`}];function xi({resource:e,count:t,isSingle:n,currentVisibility:r,currentTiers:i,isRunning:a,onConfirm:o,onCancel:s}){let{data:c}=J(),l=q(c?.settings,`default_content_visibility`)??`public`,[u,d]=(0,Z.useState)(n&&r?r:l),[f,p]=(0,Z.useState)(n&&i?i.map(e=>e.id):[]),{data:m}=ut(),h=(m?.tiers??[]).filter(e=>e.type===`paid`&&e.active),g=u!==`tiers`||f.length>0;return(0,Q.jsx)(je,{open:!0,onOpenChange:e=>{e||s()},children:(0,Q.jsxs)(ke,{"data-testid":`change-access-modal`,children:[(0,Q.jsxs)(Oe,{children:[(0,Q.jsx)(Ae,{children:yi({count:t,resource:e,isSingle:n})}),(0,Q.jsxs)(De,{children:[`Controls who can read the selected`,` `,(e===`pages`?`page`:`post`)+(n?``:`s`),`.`]})]}),(0,Q.jsxs)(T,{gap:`md`,children:[(0,Q.jsxs)(Xe,{value:u,onValueChange:d,children:[(0,Q.jsx)(Je,{"aria-label":`Access`,children:(0,Q.jsx)(Ye,{})}),(0,Q.jsx)(qe,{children:bi.map(e=>(0,Q.jsx)(Ke,{value:e.value,children:e.label},e.value))})]}),u===`tiers`&&(0,Q.jsx)(T,{gap:`sm`,children:h.map(e=>(0,Q.jsxs)(w,{align:`center`,gap:`sm`,children:[(0,Q.jsx)(Te,{checked:f.includes(e.id),id:`tier-${e.id}`,onCheckedChange:t=>{p(n=>t?[...n,e.id]:n.filter(t=>t!==e.id))}}),(0,Q.jsx)(`label`,{className:`text-sm`,htmlFor:`tier-${e.id}`,children:e.name})]},e.id))})]}),(0,Q.jsxs)(Ee,{children:[(0,Q.jsx)(V,{disabled:a,variant:`outline`,onClick:s,children:`Cancel`}),(0,Q.jsx)(V,{disabled:a||!g,onClick:()=>{o({visibility:u,tiers:u===`tiers`?f.map(e=>({id:e})):[]})},children:a?`Saving`:`Save`})]})]})})}function Si({action:e,resource:t,count:n,title:r,isSingle:i,isRunning:a,onConfirm:o,onCancel:s}){let c=vi(e,{count:n,resource:t,title:r,isSingle:i});return(0,Q.jsx)(we,{open:!0,onOpenChange:e=>{e||s()},children:(0,Q.jsxs)(ye,{"data-testid":`bulk-${e}-modal`,onEscapeKeyDown:e=>{a&&e.preventDefault()},children:[(0,Q.jsxs)(Ce,{children:[(0,Q.jsx)(ve,{children:c.title}),(0,Q.jsx)(_e,{children:c.body})]}),(0,Q.jsxs)(xe,{children:[(0,Q.jsx)(Se,{disabled:a,children:`Cancel`}),(0,Q.jsx)(be,{className:`bg-destructive text-destructive-foreground hover:bg-destructive/90`,disabled:a,onClick:e=>{e.preventDefault(),o()},children:a?c.runningLabel:c.confirmLabel})]})]})})}var Ci=e(Mt(),1),wi=[{key:`primary_tag`,replacement:`tags.slug`,expansion:`posts_tags.sort_order:0+tags.visibility:public`},{key:`primary_author`,replacement:`authors.slug`,expansion:`posts_authors.sort_order:0+authors.visibility:public`},{key:`authors`,replacement:`authors.slug`},{key:`author`,replacement:`authors.slug`},{key:`tag`,replacement:`tags.slug`},{key:`tags`,replacement:`tags.slug`}];function Ti({posts:e,editedIds:t,filter:n}){let r=(0,Ci.default)(n,{expansions:wi});try{r.queryJSON({})}catch{return e}return e.filter(e=>t.has(e.id)?r.queryJSON(e):!0)}var Ei={unpublish:{action:`unpublish`,message:`unpublished`},unschedule:{action:`unschedule`,message:`unscheduled`},feature:{action:`feature`},unfeature:{action:`unfeature`}};function Di(e,t){switch(t){case`unpublish`:return e.status===`published`?{...e,status:`draft`}:e;case`unschedule`:return e.status===`scheduled`?{...e,status:`draft`,published_at:void 0}:e;case`feature`:return{...e,featured:!0};case`unfeature`:return{...e,featured:!1};default:return e}}function Oi(e){let t=e[1];if(typeof t!=`string`)return null;try{return new URL(t,window.location.origin).searchParams.get(`filter`)}catch{return null}}function ki({resource:e,onDeleted:t,onEdited:r}){let[i,a]=(0,Z.useState)(!1),o=n(),c=d(),u=st(),f=l(),p=at(),m=e===`pages`,h=m?`PagesResponseType`:`PostsResponseType`,g=(0,Z.useCallback)((e,t)=>{let n=new Set(e.posts.map(e=>e.id)),r=t===`delete`,i=new Set;for(let a of e.bucketFilters)o.setQueriesData({queryKey:[h],predicate:e=>Oi(e.queryKey)===a},o=>{if(!Array.isArray(o?.pageParams)||!o.pages)return o;let s=0,c=0,l=o.pages.map(e=>{let o=m?`pages`:`posts`,l=e[o]??[],u;return r?u=l.filter(e=>!n.has(e.id)):(u=Ti({posts:l.map(e=>n.has(e.id)?Di(e,t):e),editedIds:n,filter:a}),u.forEach(e=>{n.has(e.id)&&i.add(e.id)})),s+=l.length-u.length,c+=u.length,{...e,[o]:u}});return!r||s===0&&!e.inverted?{...o,pages:l}:{...o,pages:l.map(t=>typeof t.meta?.pagination?.total==`number`?{...t,meta:{...t.meta,pagination:{...t.meta.pagination,total:e.inverted?c:Math.max(0,t.meta.pagination.total-s)}}}:t)}});return i},[o,h,m]),_=(0,Z.useCallback)(async(t,n,i)=>{a(!0);try{let a=t===`add-tag`?{type:`addTag`,meta:i}:{type:`access`,meta:i};if(m?await u.mutateAsync({filter:n.filter,action:a}):await c.mutateAsync({filter:n.filter,action:a}),t===`change-access`)s.success(X(`accessUpdated`,{count:n.count,resource:e,isSingle:n.isSingle}));else{let t=`tags`in i?i.tags.length:1;s.success(X(t>1?`tagsAdded`:`tagAdded`,{count:n.count,resource:e,isSingle:n.isSingle}))}r?.(new Set(n.posts.map(e=>e.id))),o.invalidateQueries({queryKey:[h]}),t===`add-tag`&&o.invalidateQueries({queryKey:[`TagsResponseType`]})}catch(e){s.error(e instanceof Error&&e.message?e.message:`That action could not be completed.`)}finally{a(!1)}},[m,e,r,o,h,c,u]);return{run:(0,Z.useCallback)(async(n,i)=>{a(!0);try{if(n===`delete`){m?await p.mutateAsync({filter:i.filter}):await f.mutateAsync({filter:i.filter}),g(i,`delete`),o.invalidateQueries({queryKey:[h],refetchType:`none`}),s.success(X(`deleted`,{count:i.count,resource:e,isSingle:i.isSingle})),t?.();return}let a=Ei[n];if(!a)return;let l={filter:i.filter,action:{type:a.action}};m?await u.mutateAsync(l):await c.mutateAsync(l),a.message&&s.success(X(a.message,{count:i.count,resource:e,isSingle:i.isSingle}));let d=g(i,n);o.invalidateQueries({queryKey:[h],refetchType:`none`}),r?.(d)}catch(e){s.error(e instanceof Error&&e.message?e.message:`That action could not be completed.`)}finally{a(!1)}},[m,e,t,r,g,h,o,c,u,f,p]),runWithPayload:_,isRunning:i}}function Ai(e){return e.length===1}function ji(e,t){return e.some(e=>e.status===t)}function Mi(e){return e.filter(e=>e.featured).length<=e.length/2}function Ni(e){let{posts:t,resource:n,isAdmin:r,membersEnabled:i,canCopyGiftLink:a}=e;if(t.length===0)return[];let o=[],s=(e,t,n={})=>{o.push({key:e,label:t,separated:!1,...n})};return ji(t,`published`)?(Ai(t)&&s(`copy-link`,n===`pages`?`Copy link to page`:`Copy link to post`),a&&s(`gift-link`,`Share as a gift`),s(`unpublish`,`Unpublish`)):(Ai(t)&&s(`copy-preview`,`Copy preview link`),ji(t,`scheduled`)&&s(`unschedule`,`Unschedule`)),t.some(e=>e.status!==`sent`)&&(Mi(t)?s(`feature`,`Feature`):s(`unfeature`,`Unfeature`)),s(`add-tag`,`Add a tag`),i&&s(`change-access`,`Change access`),Ai(t)&&s(`duplicate`,`Duplicate`),r&&s(`delete`,`Delete`,{destructive:!0,separated:!0}),o}var Pi=`order`;function Fi(e){let t={};return Xn.forEach(n=>{t[n]=e.get(n)}),t.order=e.get(Pi),t}function Ii(e,t){let n=new URLSearchParams(e);return Object.entries(t).forEach(([e,t])=>{t==null||t===``?n.delete(e):n.set(e,t)}),n}function Li(){let[e,t]=_(),n=(0,Z.useMemo)(()=>Fi(e),[e]),r=(0,Z.useMemo)(()=>ir(n),[n]),i=n.order??null,a=(0,Z.useCallback)((e,{replace:n=!0}={})=>{t(t=>Ii(t,e),{replace:n})},[t]);return{filters:r,params:n,order:i,setFilters:(0,Z.useCallback)((e,t)=>{a(lr(e),t)},[a]),setOrder:(0,Z.useCallback)((e,t)=>{a({[Pi]:e},t)},[a]),clearFilters:(0,Z.useCallback)(e=>{a(lr([]),e)},[a]),hasFilters:r.length>0}}function Ri({items:e,webAnalyticsEnabled:t,membersTrackSources:n}){let r=(0,Z.useMemo)(()=>e.filter(e=>e.status===`published`),[e]),i=(0,Z.useMemo)(()=>r.map(e=>e.uuid).filter(e=>!!e),[r]),a=(0,Z.useMemo)(()=>r.map(e=>e.id),[r]),{data:o}=yt(i,{enabled:t}),{data:s}=vt(a,{enabled:n});return{visitorCounts:o,memberCounts:s}}var zi=()=>{};function Bi(e){let t=e.reduce((e,t)=>e+t.total,0),n=e.some(e=>e.isError);if(e.some(e=>e.isLoading))return{items:[],totalItems:t,hasNextPage:!1,isFetchingNextPage:!1,isLoading:!0,isError:n,fetchNextPage:zi};let r=[],i;for(let t of e){if(r.push(t),t.isError)break;if(t.hasNextPage){i=t;break}}return{items:r.flatMap(e=>e.items),totalItems:t,hasNextPage:!!i,isFetchingNextPage:i?.isFetchingNextPage??!1,isLoading:!1,isError:n,fetchNextPage:i?.fetchNextPage??zi}}function Vi(e,{resource:t,params:n,context:i},a){let o=Hn(e,n,i),s=u({searchParams:o,enabled:a&&t===`posts`,placeholderData:r}),c=ot({searchParams:o,enabled:a&&t===`pages`,placeholderData:r}),l=t===`pages`?c:s;return{bucket:e,items:(t===`pages`?c.data?.pages:s.data?.posts)??[],total:l.data?.meta?.pagination.total??0,hasNextPage:l.hasNextPage,isLoading:a&&l.isLoading,isFetchingNextPage:l.isFetchingNextPage,isError:l.isError,fetchNextPage:()=>{l.fetchNextPage()}}}function Hi(e){let t=Rn(e.params),n={scheduled:Vi(`scheduled`,e,t.includes(`scheduled`)),draft:Vi(`draft`,e,t.includes(`draft`)),publishedAndSent:Vi(`publishedAndSent`,e,t.includes(`publishedAndSent`))};return Bi(On.filter(e=>t.includes(e)).map(e=>n[e]))}var Ui=[`delete`,`unpublish`,`unschedule`],Wi=(0,Z.lazy)(()=>g(()=>import(`./gift-link-modal-uZtwRHzl.js`).then(e=>e.n),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69]),import.meta.url));function Gi({resource:e}){let t=En(e),n=(0,Z.useRef)(null),{params:r,filters:i,order:o,setFilters:s,setOrder:c,hasFilters:l,clearFilters:u}=Li(),{data:d}=a(),{data:f}=J(),p=ft(`improveSendingUI`),m=v();(0,Z.useEffect)(()=>{oe(e,m.search);let t=ae(e).split(`?`)[1];return ie(e,Object.fromEntries(new URLSearchParams(t)))},[e,m.search]);let h=q(f?.settings,`timezone`)??void 0,g=!!(d&&tt(d)),_=!!(d&&nt(d)),y=f?.settings??null,b=(0,Z.useMemo)(()=>({webAnalyticsEnabled:q(y,`web_analytics_enabled`)===!0,membersTrackSources:q(y,`members_track_sources`)===!0,emailTrackOpens:q(y,`email_track_opens`)===!0,emailTrackClicks:q(y,`email_track_clicks`)===!0,membersSignupAccess:q(y,`members_signup_access`)??`all`,isMembersInviteOnly:q(y,`members_signup_access`)===`invite`,isContributor:g}),[y,g]),ee=q(y,`paid_members_enabled`)===!0,te=Hr(),S=e===`posts`?jr(te,r):void 0,ne=Ar({isAdmin:_,resource:e,params:r,isDefaultView:mt.some(e=>jr([{...e,route:`posts`}],r))}),w=l,D=ne&&!w,O=!!(d&&$e(d)),k=d&&O?d.slug:null,{items:A,isLoading:j,isError:se,hasNextPage:ce,isFetchingNextPage:M,fetchNextPage:N,totalItems:P}=Hi({resource:e,params:r,context:{ownAuthorSlug:k}});Ct({parentRef:n,isLoading:j,resetOnNavigation:!0});let[F,I]=(0,Z.useState)(null),L=li({orderedIds:A.map(e=>e.id),allFilter:Ln(r,{ownAuthorSlug:k}),enabled:!!d&&!O,suspended:F!==null}),ue=(0,Z.useMemo)(()=>Rn(r).map(e=>Bn(e,r,{ownAuthorSlug:k})),[r,k]),R=L.state,z=(0,Z.useMemo)(()=>A.filter(e=>ni(R,e.id)),[A,R]),de=q(y,`members_signup_access`)!==`none`,fe=(0,Z.useMemo)(()=>Ni({posts:z,resource:e,isAdmin:_,membersEnabled:de,canCopyGiftLink:!0}),[z,e,_,de]),B=ri(R)?z[0]:void 0,V=B&&ui({user:d,post:B})?B.id:null,[pe,H]=(0,Z.useState)(null),U=hi(),{data:me}=ht(),W=ki({resource:e,onDeleted:()=>{I(null),L.clear()},onEdited:e=>{I(null),L.keepOnly(e)}}),he=(0,Z.useRef)(fe),ge=(0,Z.useRef)(()=>{});he.current=fe;let _e=(0,Z.useCallback)(()=>he.current,[]),ve=(0,Z.useCallback)(e=>ge.current(e),[]);ge.current=It({resource:e,posts:z,onShareAsGift:H,onBulkAction:(e,t)=>{if(e===`feature`||e===`unfeature`){W.run(e,t);return}I({key:e,snapshot:t})},selectionFilter:L.filter,bucketFilters:ue,isSingle:ri(R),inverted:R.inverted,count:ii(R,P)});let{visitorCounts:ye,memberCounts:be}=Ri({items:A,webAnalyticsEnabled:b.webAnalyticsEnabled,membersTrackSources:b.membersTrackSources});return(0,Q.jsx)(C,{ref:n,className:`size-full`,children:(0,Q.jsxs)(re,{className:`relative flex h-full flex-col`,size:`page`,children:[(0,Q.jsxs)(St,{"data-testid":`${e}-page`,children:[(0,Q.jsxs)(St.Header,{children:[(0,Q.jsxs)(G,{blurredBackground:!1,sticky:!1,children:[(0,Q.jsx)(G.Left,{children:(0,Q.jsx)(G.Title,{children:t.title})}),(0,Q.jsx)(G.Actions,{children:(0,Q.jsxs)(G.ActionGroup,{children:[!w&&(0,Q.jsx)(Tr,{currentUser:d,filters:i,iconOnly:!0,params:r,resource:e,onFiltersChange:s}),(0,Q.jsx)(Xr,{order:o,onOrderChange:c}),D&&(0,Q.jsx)(Yr,{activeView:S,params:r,resource:e,inHeader:!0}),(0,Q.jsx)(G.ActionGroup.Primary,{children:(0,Q.jsx)(G.Action,{fallbackVariant:`default`,label:t.newLabel,asChild:!0,primary:!0,children:(0,Q.jsxs)(`a`,{"aria-label":t.newLabel,className:`font-bold`,href:t.newHref,children:[(0,Q.jsx)(le,{className:`size-4`}),(0,Q.jsx)(`span`,{className:`hidden sm:inline`,children:t.newLabel})]})})})]})})]}),w&&(0,Q.jsx)(K,{children:(0,Q.jsx)(Tr,{currentUser:d,filters:i,params:r,resource:e,viewActions:ne&&(0,Q.jsx)(Yr,{activeView:S,params:r,resource:e}),onFiltersChange:s})})]}),(0,Q.jsx)(St.Body,{children:j?(0,Q.jsx)(T,{align:`center`,className:`flex-1`,justify:`center`,children:(0,Q.jsx)(Ge,{size:`lg`})}):se?(0,Q.jsx)(T,{align:`center`,className:`flex-1`,justify:`center`,children:(0,Q.jsxs)(E,{tone:`secondary`,children:[`Error loading `,t.title.toLowerCase()]})}):A.length===0?(0,Q.jsx)(T,{align:`center`,className:`flex-1`,justify:`center`,children:(0,Q.jsx)(Dn,{hasFilters:l,resource:e,onClearFilters:u})}):(0,Q.jsxs)(T,{gap:`md`,children:[(0,Q.jsx)(`ul`,{className:x(`border-t border-border-default`,L.modifierHeld&&[`cursor-default`,`[&_li_*]:pointer-events-none [&_li_*]:cursor-default`,`[&_li_[data-ignore-select]]:pointer-events-auto`,`[&_li_[data-ignore-select]]:cursor-pointer`]),"data-ctrl":L.modifierHeld?`true`:void 0,"data-selection":L.state.inverted?`inverted`:void 0,"data-testid":`posts-list`,children:A.map(t=>(0,Q.jsx)(wn,{getMenuItems:_e,hasAdminAccess:_,improveSendingUI:p,isContributor:g,isSelected:L.isSelected(t.id),memberCounts:be,menuEnabled:L.enabled,menuOnAction:ve,menuOnOpenChange:L.getContextMenuOpenHandler(t.id),metricsSettings:b,paidMembersEnabled:ee,post:t,resource:e,showGiftLink:V===t.id,timezone:h,visitorCounts:ye,onSelectClick:L.onRowClick,onSelectMouseDown:L.onRowMouseDown},t.id))}),ce&&(0,Q.jsx)(wt,{isLoading:M,onClick:N})]})})]}),F&&Ui.includes(F.key)&&(0,Q.jsx)(Si,{action:F.key,count:F.snapshot.count,isRunning:W.isRunning,isSingle:F.snapshot.isSingle,resource:e,title:F.snapshot.posts[0]?.title,onCancel:()=>{I(null)},onConfirm:()=>{W.run(F.key,F.snapshot)}}),F?.key===`add-tag`&&(0,Q.jsx)(gi,{isRunning:W.isRunning,onCancel:()=>{I(null)},onConfirm:e=>{W.runWithPayload(`add-tag`,F.snapshot,{tags:e})}}),F?.key===`change-access`&&(0,Q.jsx)(xi,{count:F.snapshot.count,currentTiers:F.snapshot.posts[0]?.tiers,currentVisibility:F.snapshot.posts[0]?.visibility,isRunning:W.isRunning,isSingle:F.snapshot.isSingle,resource:e,onCancel:()=>{I(null)},onConfirm:e=>{W.runWithPayload(`change-access`,F.snapshot,e)}}),U.celebration&&U.post&&(0,Q.jsx)(fi,{post:U.post,postCount:U.postCount,siteIcon:me?.site.icon,siteTitle:me?.site.title??``,type:U.celebration.type,wasPublished:U.celebration.wasPublished,onClose:U.dismiss}),pe&&(0,Q.jsx)(Z.Suspense,{fallback:null,children:(0,Q.jsx)(Wi,{postId:pe,resource:e,source:`context-menu`,open:!0,onOpenChange:e=>{e||H(null)}})})]})})}export{Gi as t};
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./gift-link-modal-CNE7dfPD.js","./react-C9lG_SsT.js","./hooks-0r7qxGEo.js","./framework-provider-CIvHFnik.js","./jsx-runtime-Bm2_KH-0.js","./dist-pogVoW2G.js","./react-dom-t7VxfrkA.js","./use-tinybird-query-BYbl5gKY.js","./use-tinybird-token-Dz37zvb7.js","./index-RuRs_qGS.js","./members-CH6KeXQc.js","./src-BwdakGcc.js","./users-CKJaAxEJ.js","./update-queries-sbOKc6_E.js","./config-CRAZ4Civ.js","./preload-helper-Ba4JejZL.js","./chunk-OB3PAWPO-D3muQBsq.js","./router-provider-Cf-bcYZr.js","./shade-provider-DvrXKKQZ.js","./stack-C3OmgpUv.js","./types-1riS5y4E.js","./feature-flag-overrides-context-o_oxK9Lh.js","./inline-Qoyy4r2g.js","./text-BnCSdzao.js","./lazy-component-DNJLzmpQ.js","./api-BFocMbDg.js","./button-CTHYSI-d.js","./list-return-state-B91WMz_J.js","./dist-xChRm5l0.js","./accordion-BB5V0RD1.js","./es2015-8TGMBpHz.js","./dist-DH_36i66.js","./routes-DKfpFMfF.js","./heading-Ch2Mb19A.js","./alert-dialog-CAPLqwVs.js","./avatar-YbECDnBI.js","./badge-DuMiqyUH.js","./dialog-BO1lcy8A.js","./popover-r_3DwMi9.js","./overlay-escape-DzyuD9tc.js","./dist-sRp1p0JK.js","./hover-card-Bt4FXKiL.js","./input-BHb2A_DU.js","./input-surface-DoDPknjt.js","./skeleton-C1s6yr9e.js","./loading-indicator-DaRyGrxv.js","./no-value-label-CKNmidLC.js","./use-navigate-with-base-path-pweMCFf6.js","./content-formatters-C08JJbUJ.js","./use-activity-pub-queries-BgR1USeY.js","./onboarding-bMq3R8jB.js","./onboarding-Bpo1yTzA.js","./index.module-CnPepLB9.js","./empty-indicator-BhVwqSVH.js","./input-group-DL5EFP5r.js","./label-picker-DaivLdMw.js","./posts-CftunZgV.js","./tags-OlmRJ6Ps.js","./multi-select-combobox-BzBMUFst.js","./labels-BCj6D_nl.js","./pages-Bm-zFXyP.js","./tiers-DlvS8D6_.js","./schemas-21VB7GGY.js","./iso-B3K0cJod.js","./themes-CPJSMo_W.js","./reload-D0fnKoCm.js","./index-B02LJqc8.css","./analytics-CDjjaA4a.js","./share-modal-CdHbFNEw.js","./gift-links-lQ7H_D8Z.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]=`9eb17370-65f2-4d57-b237-f4c8ce4c476f`,e._sentryDebugIdIdentifier=`sentry-dbid-9eb17370-65f2-4d57-b237-f4c8ce4c476f`)}catch{}})();import{s as e,t}from"./react-C9lG_SsT.js";import{i as n,m as r}from"./framework-provider-CIvHFnik.js";import{g as i,o as a}from"./hooks-0r7qxGEo.js";import{t as o}from"./jsx-runtime-Bm2_KH-0.js";import{n as s}from"./dist-pogVoW2G.js";import{t as c}from"./src-BwdakGcc.js";import{a as l,i as u,o as d,r as f,s as p,t as m}from"./posts-CftunZgV.js";import{r as h}from"./tags-OlmRJ6Ps.js";import{t as g}from"./preload-helper-Ba4JejZL.js";import{_,u as v}from"./chunk-OB3PAWPO-D3muQBsq.js";import{a as y}from"./router-provider-Cf-bcYZr.js";import{H as b,L as x,a as ee,i as te,r as S,s as ne}from"./shade-provider-DvrXKKQZ.js";import{t as C}from"./box-BOIwAOVT.js";import{t as re}from"./container-DakAbO79.js";import{t as w}from"./inline-Qoyy4r2g.js";import{t as T}from"./stack-C3OmgpUv.js";import{t as E}from"./text-BnCSdzao.js";import{_ as ie,i as ae,o as oe,s as D}from"./api-BFocMbDg.js";import{D as O,H as k,I as A,Jt as j,Mr as se,On as ce,Qt as M,V as N,b as P,br as F,bt as I,c as L,dt as le,et as ue,g as R,jr as z,kt as de,mr as fe,nn as B,t as V,tt as pe,u as H,ur as U,vn as me,xt as W,yn as he,zn as ge}from"./button-CTHYSI-d.js";import{a as _e,c as ve,i as ye,n as be,o as xe,r as Se,s as Ce,t as we}from"./alert-dialog-CAPLqwVs.js";import{t as Te}from"./checkbox-DN_wUAjb.js";import{a as Ee,i as De,o as Oe,r as ke,s as Ae,t as je}from"./dialog-BO1lcy8A.js";import{a as Me,i as Ne,t as Pe}from"./popover-r_3DwMi9.js";import{a as Fe,i as Ie,n as Le,r as Re,t as ze}from"./context-menu-BxGXsgQO.js";import{t as Be}from"./empty-indicator-BhVwqSVH.js";import{n as Ve,r as He,t as Ue}from"./hover-card-Bt4FXKiL.js";import{t as We}from"./input-BHb2A_DU.js";import{n as Ge}from"./loading-indicator-DaRyGrxv.js";import{t as G}from"./page-header-CxTb0je5.js";import{i as Ke,n as qe,o as Je,s as Ye,t as Xe}from"./select-DeloOYCg.js";import{c as Ze,l as Qe}from"./label-picker-DaivLdMw.js";import{c as $e,f as et,l as tt,o as nt,u as rt}from"./users-CKJaAxEJ.js";import{a as it,s as K}from"./filters-Dr3vMnjZ.js";import{a as at,i as ot,o as st,r as ct,s as lt}from"./pages-Bm-zFXyP.js";import{a as ut}from"./tiers-DlvS8D6_.js";import{A as dt,B as ft,Ht as q,Jt as pt,Kt as J,a as mt,g as ht,k as Y,o as gt,st as _t}from"./index-RuRs_qGS.js";import{c as vt,d as yt}from"./stats-BL_FJ7Ns.js";import{t as bt}from"./post-share-modal-Z_oAYgWz.js";import{t as xt}from"./feature-image-placeholder-moUV4yhR.js";import{t as St}from"./list-page-BnOuLOBb.js";import{n as Ct,t as wt}from"./virtual-list-qPFukjyT.js";import{c as Tt,r as Et,t as Dt}from"./tag-picker-Ct6NeqWK.js";import{t as Ot}from"./use-email-sending-status-7kopNcza.js";import{i as kt,n as At,t as jt}from"./use-sending-eta-gE-2B0Zw.js";import{t as Mt}from"./nql-Cjj71Bsg.js";var Nt={deleted:{single:`{Type} deleted`,multiple:`{count} {type}s deleted`},unpublished:{single:`{Type} reverted to a draft`,multiple:`{count} {type}s reverted to drafts`},unscheduled:{single:`{Type} unscheduled`,multiple:`{count} {type}s unscheduled`},accessUpdated:{single:`{Type} access updated`,multiple:`{Type} access updated for {count} {type}s`},tagsAdded:{single:`Tags added`,multiple:`Tags added to {count} {type}s`},tagAdded:{single:`Tag added`,multiple:`Tag added to {count} {type}s`},duplicated:{single:`{Type} duplicated`,multiple:`{count} {type}s duplicated`},copiedPostUrl:{single:`Post link copied`},copiedPreviewUrl:{single:`Preview link copied`}};function X(e,{count:t,resource:n,isSingle:r=t===1}){let i=Nt[e],a=(r?i.single:i.multiple)??i.single,o=n===`pages`?`page`:`post`;return a.replace(/\{Type\}/g,o.charAt(0).toUpperCase()+o.slice(1)).replace(/\{type\}/g,o).replace(/\{count\}/g,String(t))}function Pt(e,t){return e.uuid?`${t.replace(/\/$/,``)}/p/${e.uuid}/`:``}var Z=e(t(),1),Ft=new Set([`copy-link`,`copy-preview`,`duplicate`,`gift-link`,`delete`,`unpublish`,`unschedule`,`feature`,`unfeature`,`add-tag`,`change-access`]);function It({resource:e,posts:t,onShareAsGift:r,count:i,onBulkAction:a,selectionFilter:o,bucketFilters:c,isSingle:l,inverted:u}){let{data:d}=ht(),f=d?.site.url??``,m=p(),h=lt(),g=n();return(0,Z.useCallback)(async n=>{let d=t[0];if(!d)return;let p=t=>{s.success(X(t,{count:i,resource:e,isSingle:l}))};try{switch(n){case`copy-link`:await navigator.clipboard.writeText(d.url),p(`copiedPostUrl`);break;case`copy-preview`:await navigator.clipboard.writeText(Pt(d,f)),p(`copiedPreviewUrl`);break;case`duplicate`:{e===`pages`?await h.mutateAsync(d.id):await m.mutateAsync(d.id);let t=e===`pages`?`PagesResponseType`:`PostsResponseType`;g.invalidateQueries({queryKey:[t]}),p(`duplicated`);break}case`gift-link`:r?.(d.id);break;default:a?.(n,{filter:o,posts:t,count:i,bucketFilters:c,isSingle:l,inverted:u});break}}catch(t){s.error(t instanceof Error&&t.message?t.message:`Could not complete that action on this ${e===`pages`?`page`:`post`}.`)}},[t,e,f,m,h,g,r,i,a,o,c,l,u])}var Q=o(),Lt={"copy-link":B,"copy-preview":B,"gift-link":he,unpublish:P,unschedule:fe,feature:N,unfeature:k,"add-tag":A,"change-access":M,duplicate:ge,delete:O};function Rt({children:e,getItems:t,showGiftLink:n,enabled:r,onOpenChange:i,onAction:a}){if(!r)return(0,Q.jsx)(Q.Fragment,{children:e});let o=n?t():t().filter(e=>e.key!==`gift-link`);return(0,Q.jsxs)(ze,{onOpenChange:i,children:[(0,Q.jsx)(Fe,{asChild:!0,children:e}),(0,Q.jsx)(Le,{children:o.map((e,t)=>{let n=Lt[e.key];return(0,Q.jsxs)(Z.Fragment,{children:[t>0&&(e.separated||o[t-1].key===`gift-link`)&&(0,Q.jsx)(Ie,{}),(0,Q.jsxs)(Re,{"data-testid":`post-menu-${e.key}`,disabled:!Ft.has(e.key),variant:e.destructive?`destructive`:void 0,onSelect:()=>{a(e.key)},children:[(0,Q.jsx)(n,{}),e.label]})]},e.key)})})]})}function zt(e){return e.charAt(0).toUpperCase()+e.slice(1)}function Bt(e,t){return t===1?e:`${e}s`}function Vt(e,t){let n=RegExp(`${t}s:\\[(.*?)\\]`).exec(e);if(n)return n[1].split(`,`);let r=[...e.matchAll(RegExp(`${t}:(.*?)(?:,|$)`,`g`))].map(([,e])=>e).filter(Boolean);return r.length?r:null}function Ht(e=``){let t=e.split(`,`);if(t.includes(`status:free`)&&t.includes(`status:-free`))return`All subscribers`;let n=[];t.includes(`status:free`)?n.push(`Free subscribers`):t.includes(`status:-free`)&&n.push(`Paid subscribers`);let r=Vt(e,`label`);r&&n.push(`${Bt(`Label`,r.length)}: ${r.map(zt).join(`, `)}`);let i=Vt(e,`product`);return i&&n.push(`${Bt(`Product`,i.length)}: ${i.map(zt).join(`, `)}`),n.length?n.join(` & `):e}function $(e){return e.status??`draft`}function Ut(e,t=`posts`){let n=$(e);return t===`posts`&&(n===`published`||n===`sent`)&&e.email?.status===`failed`}function Wt(e){return e.email?.status===`failed`}function Gt(e,t=`posts`){let n=$(e);return t===`posts`&&(n===`published`||n===`sent`)&&!!e.email&&!Wt(e)}function Kt(e){return(e.authors??[]).map(e=>e.name||e.email).filter(Boolean).join(`, `)}function qt(e){let t=$(e);return t===`draft`||t===`scheduled`?`updated_at`:`published_at`}function Jt(e){return(qt(e)===`updated_at`?e.updated_at:e.published_at)??void 0}function Yt(e){let t=Kt(e);return{byline:t?`By ${t}`:null,primaryTagName:e.primary_tag?.name??null}}function Xt(e,{timezone:t,now:n}={}){let{byline:r,primaryTagName:i}=Yt(e),a=Jt(e);return[r,i?`in ${i}`:null,a?Et(a,{timezone:t,absolute:!0,short:!0,now:n}):null].filter(e=>!!e)}function Zt(e,{timezone:t,now:n}={}){let r=Jt(e);if(r)return`${qt(e)===`updated_at`?`Updated`:`Published`} ${Et(r,{timezone:t,absolute:!0,now:n})}`}function Qt(e,t=`posts`){switch($(e)){case`scheduled`:return`Scheduled`;case`published`:return Ut(e,t)?`Published but failed to send newsletter`:Gt(e,t)?`Published and sent`:`Published`;case`sent`:return Ut(e,t)?`Failed to send newsletter`:`Sent`;default:return`Draft`}}function $t(e,{timezone:t,now:n,resource:r=`posts`}={}){if($(e)===`scheduled`){let r=Et(e.published_at,{timezone:t,scheduled:!0,now:n}),i=e.email_segment?`to ${Ht(e.email_segment)}`:null;return[e.email_only?`to be sent`:`to be published${e.newsletter?` and sent`:``}`,r,e.email_only||e.newsletter?i:null].filter(Boolean).join(` `)}if(Gt(e,r)){let t=e.email?.email_count??0;return`to ${b(t)} ${t===1?`member`:`members`}`}return null}var en={visitors:{label:`Visitors`,tab:`web`},opens:{label:`Opens`,tab:`newsletter`},clicks:{label:`Clicks`,tab:`newsletter`},sent:{label:`Sent`,tab:`newsletter`},members:{label:`Members`,tab:`growth`}};function tn(e,t){return t===`posts`&&(e.status===`published`||e.status===`sent`)&&!!e.email&&e.email?.status!==`failed`}function nn(e,t,n){return tn(e,n)&&!t.isContributor&&t.membersSignupAccess!==`none`&&t.emailTrackOpens&&e.email?.track_opens===!0}function rn(e,t,n){return tn(e,n)&&!t.isContributor&&t.membersSignupAccess!==`none`&&t.emailTrackClicks&&e.email?.track_clicks===!0}function an(e,t,n){return(n===`pages`||!e.email_only)&&e.status===`published`&&t.membersTrackSources&&!t.isMembersInviteOnly&&!t.isContributor}function on(e,t,n){let r=[],i=e.status===`published`;if(t.webAnalyticsEnabled&&i&&r.push(`visitors`),e.email){let i=nn(e,t,n),a=rn(e,t,n);i&&r.push(`opens`),a&&r.push(`clicks`),!i&&!a&&r.push(`sent`)}return t.membersTrackSources&&i&&r.push(`members`),r.map(e=>({key:e,...en[e]}))}function sn(e){let t=e.email?.email_count,n=e.count?.clicks;return!t||!n?0:Math.round(n/t*100)}function cn(e){let t=e.email?.email_count,n=e.email?.opened_count;return!t||!n?0:Math.round(n/t*100)}function ln(e,t,n,r){return n!==`posts`||!r?!1:nn(e,t,n)||rn(e,t,n)||an(e,t,n)}var un={visitors:me,opens:j,clicks:de,sent:ue,members:R,free:H,paid:L};function dn({title:e,rows:t,children:n}){return(0,Q.jsxs)(Ue,{closeDelay:0,openDelay:0,children:[(0,Q.jsx)(He,{asChild:!0,children:n}),(0,Q.jsx)(Ve,{className:`pointer-events-none w-48 p-3`,"data-testid":`post-metric-panel`,side:`top`,children:(0,Q.jsxs)(T,{gap:`xs`,children:[(0,Q.jsx)(E,{size:`sm`,weight:`semibold`,children:e}),(0,Q.jsx)(_t,{className:`my-1 bg-border-default`}),t.map(e=>{let t=un[e.icon];return(0,Q.jsxs)(w,{gap:`md`,justify:`between`,children:[(0,Q.jsxs)(w,{align:`center`,gap:`xs`,children:[(0,Q.jsx)(t,{className:`size-3.5 shrink-0 text-muted-foreground`,strokeWidth:1.5}),(0,Q.jsx)(E,{size:`sm`,tone:`secondary`,children:e.label})]}),(0,Q.jsx)(E,{className:`font-mono`,size:`sm`,children:b(e.value)})]},e.label)})]})})]})}function fn(e,t,n){return e===`visitors`?{title:`Web traffic`,rows:[{label:`Unique visitors`,value:n.visitors??0,icon:`visitors`}]}:e===`opens`||e===`clicks`||e===`sent`?{title:`Newsletter performance`,rows:[{label:`Sent`,value:t.email?.email_count??0,icon:`sent`},...n.showOpens?[{label:`Opens`,value:t.email?.opened_count??0,icon:`opens`}]:[],...n.showClicks?[{label:`Clicks`,value:t.count?.clicks??0,icon:`clicks`}]:[]]}:{title:`New members`,rows:[{label:`Free`,value:n.freeMembers??0,icon:`free`},...n.paidMembersEnabled?[{label:`Paid`,value:n.paidMembers??0,icon:`paid`}]:[]]}}var pn=[`opens`,`clicks`,`sent`];function mn(e,t,n,r){switch(e.key){case`visitors`:return b(n?.[t.uuid??``]??0);case`opens`:return`${cn(t)}%`;case`clicks`:return`${sn(t)}%`;case`sent`:return b(t.email?.email_count??0);case`members`:{let e=r?.[t.id];return b((e?.free??0)+(e?.paid??0))}default:return``}}function hn({post:e,settings:t,resource:n,visitorCounts:r,memberCounts:i,paidMembersEnabled:a,className:o,hideEmailMetrics:s}){let c=on(e,t,n).filter(e=>!(s&&pn.includes(e.key))),l=new Set(c.map(e=>e.key)),u=i?.[e.id];if(c.length===0)return null;let d=[];return c.forEach(e=>{let t=d[d.length-1];pn.includes(e.key)&&t!==void 0&&pn.includes(t[0].key)?t.push(e):d.push([e])}),(0,Q.jsx)(w,{align:`center`,className:x(`shrink-0 max-[1200px]:hidden`,o),gap:`md`,children:d.map(t=>{let o=fn(t[0].key,e,{visitors:r?.[e.uuid??``],freeMembers:u?.free,paidMembers:u?.paid,paidMembersEnabled:a,showOpens:l.has(`opens`),showClicks:l.has(`clicks`)});return(0,Q.jsx)(dn,{rows:o.rows,title:o.title,children:(0,Q.jsx)(w,{align:`center`,gap:`md`,children:t.map(t=>{let a=un[t.key],o=mn(t,e,r,i),s=(0,Q.jsxs)(w,{align:`center`,gap:`xs`,justify:`end`,children:[(0,Q.jsx)(a,{className:`size-4 shrink-0 text-muted-foreground`,strokeWidth:1.5}),(0,Q.jsx)(E,{className:`font-mono`,size:`sm`,children:o})]});return n===`pages`?(0,Q.jsx)(`span`,{"aria-label":`${t.label}: ${o}`,className:`min-w-16`,title:t.label,"data-ignore-select":!0,children:s},t.key):(0,Q.jsx)(`a`,{"aria-label":`${t.label}: ${o}`,className:`min-w-16 no-underline`,href:`#/posts/analytics/${e.id}/${t.tab}`,title:t.label,"data-ignore-select":!0,children:s},t.key)})})},t[0].key)})})}var gn={status:`settled`};function _n(e,t,n){return!!(n&&t===`posts`&&(e.status===`published`||e.status===`sent`)&&e.email?.id&&(e.email.status===`pending`||e.email.status===`submitting`))}function vn({post:e,children:t}){let r=n(),i=e.email?.id,a=e.email?.status,o=Ot({emailId:i,emailStatus:a,enabled:!0}),s=o.status,c=s?.sending,l=c?.status,u=jt(s),[d,f]=(0,Z.useState)(null);if((0,Z.useEffect)(()=>{if(!(!i||!l)){if(l!==`submitted`&&f(e=>e===i?null:e),l===`failed`){r.invalidateQueries({queryKey:[m]});return}if(l===`submitted`){let e=!1;return r.invalidateQueries({queryKey:[m]}).then(()=>{e||f(i)}),()=>{e=!0}}}},[i,r,l]),o.isUnsupported)return(0,Q.jsx)(Q.Fragment,{children:t(gn)});if(c?.status===`failed`)return(0,Q.jsx)(Q.Fragment,{children:t({status:`failed`})});let p=!!(i&&c?.status===`submitted`&&d!==i);return c&&(c.status!==`submitted`||p)?(0,Q.jsx)(Q.Fragment,{children:t({status:`sending`,line:kt(c,{estimate:u})})}):!c&&(a===`pending`||a===`submitting`)?(0,Q.jsx)(Q.Fragment,{children:t({status:`sending`,line:kt({status:a===`pending`?`preparing`:`submitting`})})}):(0,Q.jsx)(Q.Fragment,{children:t(gn)})}function yn(e,t){if(t)return`text-state-danger`;switch(e.status){case`draft`:return`text-pink`;case`scheduled`:return`text-green`;default:return`text-muted-foreground`}}var bn=`aspect-[16/10] w-[80px] shrink-0 rounded-sm lg:w-[100px]`;function xn({post:e}){return e.feature_image?(0,Q.jsx)(`div`,{className:x(bn,`bg-muted bg-cover bg-center`),role:`presentation`,style:{backgroundImage:`url(${JSON.stringify(e.feature_image)})`}}):(0,Q.jsx)(xt,{className:x(bn,`p-0 group-hover:brightness-95`)})}var Sn=(0,Z.forwardRef)(function({post:e,resource:t,timezone:n,isContributor:r,hasAdminAccess:i,paidMembersEnabled:a,isSelected:o,onSelectMouseDown:s,onSelectClick:c,getMenuItems:l,showGiftLink:u,menuEnabled:d,menuOnOpenChange:f,menuOnAction:p,metricsSettings:m,visitorCounts:h,memberCounts:g,improveSendingUI:_,emailSendingState:v,...y},b){let{isAdmin7:C}=S(),[re,ie]=(0,Z.useState)(!1),ae=Xt(e,{timezone:n}),oe=Zt(e,{timezone:n}),D=Qt(e,t),O=$t(e,{timezone:n,resource:t}),k=Ut(e,t),A=v.status===`failed`?{...e,email:{...e.email,status:`failed`}}:e,j=v.status===`failed`||k,se=v.status===`failed`?Qt(A,t):D,ce=e.status===`published`,M=t===`pages`?`page`:`post`,P=!!(r&&ce),F=P?e.url:`#/editor/${M}/${e.id}`,L=ln(e,m,t,!!i)?{href:`#/posts/analytics/${e.id}`,label:`Post analytics`,external:!1,Icon:U}:P?{href:e.url,label:`View post`,external:!0,Icon:z}:{href:F,label:`Edit`,external:!1,Icon:I},le=(0,Q.jsx)(`li`,{ref:b,...y,className:x(`group border-b border-border-default`,o?`bg-table-row-selected select-none`:`hover:bg-table-row-hover`),"data-selected":o?`true`:void 0,"data-testid":`posts-list-item`,onClickCapture:c,onMouseDownCapture:t=>{s?.(t,e.id)},onMouseEnter:()=>{ie(!0)},onMouseLeave:()=>{ie(!1)},children:(0,Q.jsxs)(w,{align:`center`,className:`pr-4`,gap:`md`,children:[(0,Q.jsxs)(`a`,{className:`flex min-w-0 flex-1 items-start gap-4 py-4 pl-4 no-underline focus-visible:ring-1 focus-visible:ring-focus-ring focus-visible:outline-hidden focus-visible:ring-inset`,"data-testid":`post-list-item-link`,href:F,rel:P?`noopener noreferrer`:void 0,target:P?`_blank`:void 0,children:[(0,Q.jsx)(xn,{post:e}),(0,Q.jsxs)(T,{className:`min-w-0 flex-1`,gap:`xs`,children:[(0,Q.jsxs)(w,{align:`center`,gap:`xs`,children:[e.featured&&(0,Q.jsx)(N,{"aria-label":`Featured`,className:`size-4 shrink-0 fill-state-warning text-state-warning`,"data-testid":`post-featured`}),(0,Q.jsx)(E,{as:`h3`,className:`truncate tracking-normal`,weight:`semibold`,children:e.title})]}),ae.length>0&&(0,Q.jsx)(E,{className:`truncate`,size:`sm`,title:oe,tone:`secondary`,children:ae.join(` - `)}),v.status===`sending`?(0,Q.jsx)(At,{announce:!1,className:`text-sm`,line:v.line}):(0,Q.jsxs)(E,{className:yn(A,j),size:`sm`,weight:j||e.status===`draft`||e.status===`scheduled`?`medium`:`regular`,children:[se,v.status!==`failed`&&re&&O&&(0,Q.jsxs)(`span`,{children:[` `,O]})]})]})]}),(0,Q.jsx)(hn,{className:`py-4`,hideEmailMetrics:v.status===`sending`,memberCounts:g,paidMembersEnabled:a,post:e,resource:t,settings:m,visitorCounts:h}),(0,Q.jsxs)(te,{delayDuration:1e3,children:[(0,Q.jsx)(ne,{asChild:!0,children:(0,Q.jsx)(V,{className:x(`my-4 shrink-0`,C?`ms-8`:`ms-2`,C?`text-muted-foreground hover:bg-background hover:text-foreground`:`bg-control-surface px-4`,C&&re&&`bg-background`),size:C?`icon`:void 0,variant:C?re?`outline`:`ghost`:`outline`,asChild:!0,children:(0,Q.jsx)(`a`,{"aria-label":L.label,"data-testid":`post-list-item-action`,href:L.href,rel:L.external?`noopener noreferrer`:void 0,target:L.external?`_blank`:void 0,"data-ignore-select":!0,children:(0,Q.jsx)(L.Icon,{})})})}),(0,Q.jsx)(ee,{variant:`white`,children:L.label})]})]})});return(0,Q.jsx)(Rt,{enabled:d??!1,getItems:l,showGiftLink:u??!1,onAction:p??(()=>{}),onOpenChange:f??(()=>{}),children:le})}),Cn=(0,Z.forwardRef)(function(e,t){return _n(e.post,e.resource,e.improveSendingUI??!1)?(0,Q.jsx)(vn,{post:e.post,children:n=>(0,Q.jsx)(Sn,{ref:t,...e,emailSendingState:n})}):(0,Q.jsx)(Sn,{ref:t,...e,emailSendingState:gn})}),wn=(0,Z.memo)(Cn),Tn={posts:{title:`Posts`,plural:`posts`,newLabel:`New post`,newHref:`#/editor/post`,emptyTitle:`Start creating content.`,emptyAction:`Write a new post`},pages:{title:`Pages`,plural:`pages`,newLabel:`New page`,newHref:`#/editor/page`,emptyTitle:`Tell the world about yourself.`,emptyAction:`Create a new page`}};function En(e){return Tn[e]}function Dn({resource:e,hasFilters:t,onClearFilters:n}){let r=En(e);return t?(0,Q.jsx)(Be,{actions:(0,Q.jsxs)(V,{variant:`outline`,onClick:n,children:[`Show all `,r.plural]}),"data-testid":`posts-empty-filtered`,title:`No ${r.plural} match the current filter`,children:(0,Q.jsx)(pe,{})}):(0,Q.jsx)(Be,{actions:(0,Q.jsx)(V,{asChild:!0,children:(0,Q.jsx)(`a`,{href:r.newHref,children:r.emptyAction})}),"data-testid":`posts-empty-cold`,title:r.emptyTitle,children:(0,Q.jsx)(W,{})})}var On=[`scheduled`,`draft`,`publishedAndSent`],kn=[`draft`,`scheduled`,`published`,`sent`],An=`featured`;function jn(e){return(e??``).split(`,`).map(e=>e.trim()).filter(Boolean)}function Mn(e){let t=jn(e),n=kn.filter(e=>t.includes(e));return n.length>0?n:[...kn]}function Nn(e){return e.featured===`true`||e.featured===`false`?e.featured:jn(e.type).includes(`featured`)?`true`:null}function Pn(e){return e.length===1?e[0]:`[${e.join(`,`)}]`}function Fn(e){return e.filter(e=>{let t=e[1];return t!=null&&t.trim()!==``}).map(([e,t])=>`${e}:${t}`).join(`+`)}function In(e,t,{ownAuthorSlug:n}){return[[`tag`,e.tag],[`visibility`,e.visibility],[`status`,Pn(t)],[`featured`,Nn(e)],[`authors`,n||e.author]]}function Ln(e,t={}){return Fn(In(e,Mn(e.type),t))}function Rn(e){let t=Mn(e.type);return On.filter(e=>e===`publishedAndSent`?t.includes(`published`)||t.includes(`sent`):t.includes(e))}function zn(e,t){return e===`publishedAndSent`?Mn(t.type).filter(e=>e===`published`||e===`sent`):[e]}function Bn(e,t,n={}){return Fn(In(t,zn(e,t),n))}function Vn(e,t){return t||(e===`draft`?`updated_at desc`:`published_at desc`)}function Hn(e,t,n={}){return{filter:Bn(e,t,n),order:Vn(e,t.order),limit:`30`}}var Un=[{value:`draft`,label:`Draft posts`},{value:`published`,label:`Published posts`},{value:`sent`,label:`Email only posts`},{value:`scheduled`,label:`Scheduled posts`}],Wn=[{value:`draft`,label:`Draft pages`},{value:`published`,label:`Published pages`},{value:`scheduled`,label:`Scheduled pages`}],Gn=[{value:`public`,label:`Public`},{value:`members`,label:`Members-only`},{value:`[paid,tiers]`,label:`Paid members-only`}],Kn=[{value:`published_at asc`,label:`Oldest first`},{value:`updated_at desc`,label:`Recently updated`}],qn=`Newest first`;function Jn(e){return e===`pages`?Wn:Un}function Yn(e){return e?Kn.find(t=>t.value===e)?.label??e:qn}var Xn=[`type`,`featured`,`visibility`,`author`,`tag`],Zn={type:null,featured:null,visibility:null,author:null,tag:null},Qn=`is`,$n=`is_any_of`,er=`true`,tr=`is_not`,nr=Jn(`posts`).map(e=>e.value);function rr(e){return Xn.includes(e)}function ir(e){return Xn.flatMap((t,n)=>{let r=ar(e,t);if(r.length===0)return[];let i=`${t}:${n+1}`;return t===`featured`?[{id:i,field:t,operator:r[0]===`false`?tr:Qn,values:[er]}]:[{id:i,field:t,operator:t===`type`?$n:Qn,values:r}]})}function ar(e,t){if(t===`type`)return jn(e.type).filter(e=>e!==An);let n=t===`featured`?Nn(e):e[t];return n==null||n.trim()===``?[]:[n]}function or(e){let t=nr.indexOf(e);return t===-1?nr.length:t}function sr(e){let t=[...new Set(e.map(cr).filter(e=>e!==null))];return t.sort((e,t)=>or(e)-or(t)),t.length>0?t.join(`,`):null}function cr(e){return typeof e==`string`?e===``?null:e:typeof e==`number`||typeof e==`boolean`?String(e):null}function lr(e){let t={...Zn};return e.forEach(e=>{if(rr(e.field)){if(e.field===`featured`){t.featured=e.operator===`is_not`?`false`:`true`;return}t[e.field]=e.field===`type`?sr(e.values):cr(e.values[0])}}),t}var ur=`100`;function dr(e){return{value:e.slug,label:e.name||e.email,metadata:{id:e.id}}}var fr=Ze({id:`posts.authors`,buildBrowseSearchParams:e=>({limit:ur,order:`name asc`,...e?{filter:`name:~${c(e)}`}:{}}),buildHydrateFilter:e=>Qe(`slug`,e),buildHydrateSearchParams:e=>({filter:e,order:`name asc`}),getMissingSelectedOption:e=>({value:e,label:`Unknown author`}),selectItems:e=>e?.users,useQuery:({enabled:e,searchParams:t})=>et({enabled:e,placeholderData:r,searchParams:t}),toOption:dr,debounceMs:250});function pr(){return fr()}var mr=`100`;function hr(e){return{value:e.slug,label:e.name,detail:e.slug,metadata:{id:e.id}}}var gr=Ze({id:`posts.tags`,buildBrowseSearchParams:e=>({limit:mr,order:`name asc`,...e?{filter:`tags.name:~${c(e)}`}:{}}),buildHydrateFilter:e=>Qe(`slug`,e),buildHydrateSearchParams:e=>({filter:e,order:`name asc`}),getMissingSelectedOption:e=>({value:e,label:`Unknown tag`}),selectItems:e=>e?.tags,useQuery:({enabled:e,searchParams:t})=>h({filter:{},enabled:e,placeholderData:r,searchParams:t}),toOption:hr,debounceMs:250});function _r(){return gr()}var vr=[{value:`is`,label:`is`}],yr=[{value:$n,label:`is any of`}],br=[{value:`is`,label:`is`},{value:tr,label:`is not`}];function xr(e,t,n){let r=t.filter(t=>!e.some(e=>e.value===t));return[...e,...r.map(e=>({value:e,label:`Unknown ${n}`}))]}function Sr(e){return e?[e]:[]}function Cr({resource:e,authorValueSource:t,tagValueSource:n,isContributor:r=!1,isAuthorOrContributor:i=!1,params:a={}}){let o=e===`pages`?`Page`:`Post`,s=jn(a.type).filter(e=>e!==An),c={key:`type`,label:`${o} type`,type:`multiselect`,icon:(0,Q.jsx)(ce,{className:`size-4`}),operators:yr,defaultOperator:$n,options:xr(Jn(e),s,`type`)},l={key:`featured`,label:`Featured`,pillLabel:o,type:`custom`,icon:(0,Q.jsx)(N,{className:`size-4`}),operators:br,defaultOperator:`is`,defaultValue:er,staticValue:!0,customRenderer:()=>(0,Q.jsx)(`span`,{children:`Featured`})};if(r)return[c,l];let u=[c,l,{key:`visibility`,label:`Access`,type:`select`,icon:(0,Q.jsx)(M,{className:`size-4`}),operators:vr,options:xr(Gn,Sr(a.visibility),`access`)}];return i||u.push({key:`author`,label:`Author`,type:`select`,icon:(0,Q.jsx)(H,{className:`size-4`}),operators:vr,searchable:!0,placeholder:`Search authors`,valueSource:t}),u.push({key:`tag`,label:`Tag`,type:`select`,icon:(0,Q.jsx)(A,{className:`size-4`}),operators:vr,searchable:!0,placeholder:`Search tags`,valueSource:n,className:`w-[320px]`}),u}function wr(e,t,n){return Cr({resource:e,authorValueSource:pr(),tagValueSource:_r(),isContributor:!!(t&&tt(t)),isAuthorOrContributor:!!(t&&$e(t)),params:n})}function Tr({resource:e,filters:t,params:n,currentUser:r,iconOnly:i=!1,viewActions:a,onFiltersChange:o}){let{isAdmin7:s}=S(),c=wr(e,r,n),l=t.length>0,u=l?(0,Q.jsxs)(K.Actions,{children:[(0,Q.jsx)(K.Action,{className:x(`hidden items-center lg:inline-flex`,!s&&`text-muted-foreground hover:text-foreground`),type:`button`,variant:s?`ghost`:`outline`,onClick:()=>o([]),children:`Clear`}),a]}):void 0;return(0,Q.jsx)(w,{align:`center`,className:x(!i&&`w-full`),"data-testid":`posts-filters`,gap:`sm`,children:(0,Q.jsx)(it,{addButton:(0,Q.jsx)(it.Trigger,{collapseLabel:i}),allowMultiple:!1,className:x(`[&>button]:order-last`,i?`w-auto`:`w-full`,l&&`sm:!pr-40`),clearButton:u,fields:c,filters:t,keyboardShortcut:`f`,popoverAlign:`start`,showClearButton:l,showSearchInput:!1,onChange:o})})}var Er=[`midgrey`,`blue`,`green`,`red`,`teal`,`purple`,`yellow`,`orange`,`pink`];function Dr(){return Er[Math.floor(Math.random()*Er.length)]}function Or(e){let t={};return D.forEach(n=>{let r=e[n];r!=null&&r!==``&&(t[n]=r)}),t}function kr(e,t,n){return{name:e.trim(),route:`posts`,color:n,filter:Or(t)}}function Ar({isAdmin:e,resource:t,params:n,isDefaultView:r}){return!e||t!==`posts`||r?!1:D.some(e=>!!n[e])}function jr(e,t){let n=Or(t);return e.find(e=>D.every(t=>(e.filter[t]??null)===(n[t]??null)))}var Mr=`Saved views could not be read, so nothing was changed`,Nr=`A view with this name already exists`,Pr=`Saved view could not be found`;function Fr(e){let t;try{t=JSON.parse(e)}catch{throw Error(Mr)}if(!Array.isArray(t))throw Error(Mr);return t}function Ir(e,t){return e.route===`posts`&&typeof e.name==`string`&&Y(e.name)===Y(t.name)}function Lr(e,t,n){let r=Y(t);return e.some((e,t)=>t!==n&&e.route===`posts`&&typeof e.name==`string`&&Y(e.name)===r)}function Rr(e,t,n,r,i){let a=Fr(e),o=kr(t,n,r),s=i?a.findIndex(e=>Ir(e,i)):-1;if(i&&s===-1)throw Error(Pr);if(Lr(a,o.name,s))throw Error(Nr);let c=s===-1?[...a,o]:a.map((e,t)=>t===s?o:e);return JSON.stringify(c)}function zr(e,t){let n=Fr(e),r=n.findIndex(e=>Ir(e,t));if(r===-1)throw Error(Pr);return JSON.stringify(n.filter((e,t)=>t!==r))}var Br=`Settings are still loading, so nothing was changed`;function Vr(e){if(e)return q(e.settings,`shared_views`)??`[]`}function Hr(){let{data:e}=J(),t=Vr(e);if(t===void 0)return[];let n=dt(t);return n.ok?n.views.filter(e=>e.route===`posts`):[]}function Ur(){let{data:e}=J(),{mutateAsync:t}=pt(),n=i();return(0,Z.useCallback)(async r=>{let i=Vr(e);if(i===void 0){let e=Error(Br);throw n(e,{withToast:!1}),e}let a=r(i);try{await t([{key:`shared_views`,value:a}])}catch(e){throw n(e,{withToast:!1}),e}},[e,t,n])}function Wr(){let e=Ur();return(0,Z.useCallback)(async(t,n,r,i)=>{await e(e=>Rr(e,t,n,r,i))},[e])}function Gr(){let e=Ur();return(0,Z.useCallback)(async t=>{await e(e=>zr(e,t))},[e])}function Kr(e){return Er.includes(e)}function qr({value:e,onChange:t}){return(0,Q.jsx)(w,{gap:`sm`,role:`radiogroup`,children:Er.map(n=>(0,Q.jsx)(`button`,{"aria-checked":n===e,"aria-label":n,className:x(`size-5 rounded-full border-2`,n===e?`border-foreground`:`border-transparent`),role:`radio`,style:{backgroundColor:gt(n)},type:`button`,onClick:()=>{t(n)}},n))})}function Jr({resource:e,params:t,activeView:n,onClose:r}){let[i,a]=(0,Z.useState)(n?.name??``),[o,s]=(0,Z.useState)(Kr(n?.color)?n.color:Dr()),[c,l]=(0,Z.useState)(``),[u,d]=(0,Z.useState)(!1),[f,p]=(0,Z.useState)(!1),m=Wr(),h=Gr(),g=y(),_=!!n,v=async()=>{if(u||f)return;let e=i.trim();if(!e){l(`Please enter a name`);return}d(!0);try{await m(e,t,o,n),r()}catch(e){l(e instanceof Error?e.message:`Failed to save view`)}finally{d(!1)}},b=async()=>{if(!(!n||u)){d(!0);try{await h(n),r(),g(`/${e}`)}catch(e){l(e instanceof Error?e.message:`Failed to delete view`)}finally{d(!1)}}};return(0,Q.jsxs)(T,{gap:`md`,children:[(0,Q.jsx)(We,{"aria-label":`View name`,placeholder:`Name this view`,value:i,autoFocus:!0,onChange:e=>{a(e.target.value),l(``)},onKeyDown:e=>{e.key===`Enter`&&v()}}),(0,Q.jsx)(qr,{value:o,onChange:s}),c&&(0,Q.jsx)(E,{className:`text-state-danger`,role:`alert`,size:`sm`,children:c}),f?(0,Q.jsxs)(w,{gap:`sm`,justify:`between`,children:[(0,Q.jsx)(E,{size:`sm`,tone:`secondary`,children:`Delete view?`}),(0,Q.jsxs)(w,{gap:`sm`,children:[(0,Q.jsx)(V,{disabled:u,size:`sm`,variant:`outline`,onClick:()=>p(!1),children:`Cancel`}),(0,Q.jsx)(V,{disabled:u,size:`sm`,variant:`destructive`,onClick:()=>void b(),children:u?`Deleting...`:`Delete`})]})]}):(0,Q.jsxs)(w,{gap:`sm`,justify:_?`between`:`end`,children:[_&&(0,Q.jsx)(V,{className:`text-destructive hover:bg-destructive/5 hover:text-destructive`,disabled:u,size:`sm`,variant:`ghost`,onClick:()=>p(!0),children:`Delete`}),(0,Q.jsxs)(w,{gap:`sm`,children:[_&&(0,Q.jsx)(V,{disabled:u,size:`sm`,variant:`outline`,onClick:r,children:`Cancel`}),(0,Q.jsx)(V,{disabled:u,size:`sm`,onClick:()=>void v(),children:_?`Save`:`Save view`})]})]})]})}function Yr({resource:e,params:t,activeView:n,inHeader:r=!1}){let[i,a]=(0,Z.useState)(!1),{isAdmin7:o}=S();return(0,Q.jsx)(Q.Fragment,{children:(0,Q.jsxs)(Pe,{open:i,onOpenChange:a,children:[(0,Q.jsx)(Me,{asChild:!0,children:r?(0,Q.jsxs)(G.Action,{"data-testid":`manage-post-view`,label:n?`Edit view`:`Save view`,children:[o&&(0,Q.jsx)(F,{className:`size-4`}),n?`Edit view`:`Save view`]}):(0,Q.jsx)(K.Action,{"data-testid":`manage-post-view`,variant:`outline`,children:n?`Edit view`:`Save view`})}),(0,Q.jsx)(Ne,{align:`end`,className:`w-72`,children:(0,Q.jsx)(Jr,{activeView:n,params:t,resource:e,onClose:()=>{a(!1)}},n?.name??`new`)})]})})}function Xr({order:e,onOrderChange:t}){return(0,Q.jsxs)(Xe,{value:e||`newest`,onValueChange:e=>t(e===`newest`?null:e),children:[(0,Q.jsxs)(G.SelectTrigger,{"aria-label":`Sort: ${Yn(e)}`,"data-testid":`posts-sort`,label:`Sort`,tooltip:!0,children:[(0,Q.jsx)(se,{className:`size-4`}),(0,Q.jsx)(Ye,{children:Yn(e)})]}),(0,Q.jsxs)(qe,{align:`end`,children:[(0,Q.jsx)(Ke,{value:`newest`,children:qn}),Kn.map(e=>(0,Q.jsx)(Ke,{value:e.value,children:e.label},e.value))]})]})}function Zr(e){return`'${[...e].join(`','`)}'`}function Qr(e,t){let{selectedIds:n,inverted:r}=e;return r?t?n.size===0?t:`(${t})+id:-[${Zr(n)}]`:n.size===0?``:`id:-[${Zr(n)}]`:n.size===0?`id:nothing`:`id:[${Zr(n)}]`}function $r(e,t,n){let r=e.indexOf(t),i=e.indexOf(n);return r===-1||i===-1||i===r?[]:i>r?e.slice(r+1,i+1):e.slice(i,r+1)}function ei(){return{selectedIds:new Set,inverted:!1,lastSelectedId:null,lastShiftGroup:new Set,transient:!1}}var ti=ei();function ni(e,t){return e.inverted?!e.selectedIds.has(t):e.selectedIds.has(t)}function ri(e){return!e.inverted&&e.selectedIds.size===1}function ii(e,t){return e.inverted?Math.max(t-e.selectedIds.size,1):e.selectedIds.size}function ai(e,t){let n=new Set(e.selectedIds),r=n.delete(t);r||n.add(t);let i=e.lastSelectedId;return!r||e.inverted?i=t:e.lastSelectedId===t&&(i=null),{selectedIds:n,inverted:e.inverted,lastSelectedId:i,lastShiftGroup:new Set,transient:!1}}function oi(e,t,n){if(e.lastSelectedId===null)return ai(e,t);let r=new Set(e.selectedIds);e.lastShiftGroup.forEach(t=>{e.inverted?r.add(t):r.delete(t)});let i=$r(n,e.lastSelectedId,t);return i.forEach(t=>{e.inverted?r.delete(t):r.add(t)}),{selectedIds:r,inverted:e.inverted,lastSelectedId:e.lastSelectedId,lastShiftGroup:new Set(i),transient:!1}}function si(e,t){switch(t.type){case`toggle`:return ai(e,t.id);case`shift`:return oi(e,t.id,t.orderedIds);case`selectAll`:return{selectedIds:new Set,inverted:!e.inverted,lastSelectedId:null,lastShiftGroup:new Set,transient:!1};case`contextMenu`:return ni(e,t.id)?e:{selectedIds:new Set([t.id]),inverted:!1,lastSelectedId:t.id,lastShiftGroup:new Set,transient:!0};case`keepOnly`:{if(e.inverted)return e;let n=new Set([...e.selectedIds].filter(e=>t.ids.has(e)));return{...e,selectedIds:n,lastShiftGroup:new Set}}case`closeContextMenu`:return e.transient?ei():e;case`clear`:return ei();default:return e}}function ci(){let e=window.getSelection();e&&(e.empty?e.empty():e.removeAllRanges&&e.removeAllRanges())}function li({orderedIds:e,allFilter:t,enabled:n,suspended:r=!1}){let[i,a]=(0,Z.useReducer)(si,ti),[o,s]=(0,Z.useState)(!1),c=(0,Z.useRef)({orderedIds:e,enabled:n,suspended:r});c.current={orderedIds:e,enabled:n,suspended:r};let l=(0,Z.useRef)(t);(0,Z.useEffect)(()=>{l.current!==t&&(l.current=t,a({type:`clear`}))},[t]),(0,Z.useEffect)(()=>{function e(e){if(e.defaultPrevented||!c.current.enabled||c.current.suspended)return;let t=e.target;if(!(t instanceof HTMLInputElement||t instanceof HTMLTextAreaElement||t?.isContentEditable===!0)){if((e.metaKey||e.ctrlKey)&&!e.shiftKey&&e.key.toLowerCase()===`a`){a({type:`selectAll`}),e.preventDefault();return}e.key===`Escape`&&a({type:`clear`})}}function t(e){s(e.metaKey||e.ctrlKey||e.shiftKey)}function n(){s(!1)}function r(e){!c.current.enabled||c.current.suspended||e.target?.closest(`[role="menu"], [role="dialog"], [role="alertdialog"], [role="listbox"]`)||!e.metaKey&&!e.ctrlKey&&a({type:`clear`})}return window.addEventListener(`keydown`,e),window.addEventListener(`keydown`,t),window.addEventListener(`keyup`,t),window.addEventListener(`click`,r),window.addEventListener(`click`,t),window.addEventListener(`blur`,n),()=>{window.removeEventListener(`keydown`,e),window.removeEventListener(`keydown`,t),window.removeEventListener(`keyup`,t),window.removeEventListener(`click`,r),window.removeEventListener(`click`,t),window.removeEventListener(`blur`,n)}},[]);let u=(0,Z.useCallback)((e,t)=>{if(c.current.enabled&&!e.target.closest(`[data-ignore-select]`)){if(e.ctrlKey||e.metaKey)a({type:`toggle`,id:t});else if(e.shiftKey)a({type:`shift`,id:t,orderedIds:c.current.orderedIds});else return;e.preventDefault(),e.stopPropagation(),ci()}},[]),d=(0,Z.useCallback)(e=>{c.current.enabled&&(e.target.closest(`[data-ignore-select]`)||!e.ctrlKey&&!e.metaKey&&!e.shiftKey||(e.preventDefault(),e.stopPropagation(),ci()))},[]),f=(0,Z.useCallback)((e,t)=>{c.current.enabled&&a(e?{type:`contextMenu`,id:t}:{type:`closeContextMenu`})},[]),p=(0,Z.useRef)(new Map),m=(0,Z.useCallback)(e=>{let t=p.current.get(e);if(t)return t;let n=t=>{f(t,e)};return p.current.set(e,n),n},[f]),h=(0,Z.useCallback)(e=>{a({type:`keepOnly`,ids:e})},[]);return{state:i,filter:(0,Z.useMemo)(()=>Qr(i,t),[i,t]),modifierHeld:n&&o,isSelected:(0,Z.useCallback)(e=>n&&ni(i,e),[n,i]),clear:(0,Z.useCallback)(()=>a({type:`clear`}),[]),keepOnly:h,onRowMouseDown:u,onRowClick:d,getContextMenuOpenHandler:m,enabled:n}}function ui({user:e,post:t}){if(!e||!t)return!1;let n=nt(e)||rt(e),r=t.status===`published`&&!!t.visibility&&t.visibility!==`public`;return n&&r}function di({wasPublished:e,type:t,emailOnly:n,postCount:r}){if(!e)return{primary:`All set!`,secondary:``};let i=typeof r==`number`,a=i?`Boom! It’s out there.`:`Your post is published.`;if(t===`page`)return{primary:a,secondary:`Your page is published.`};if(n)return{primary:a,secondary:`Your email has been sent.`};if(i){let e=r===1?`post`:`posts`;return{primary:a,secondary:`That’s ${b(r)} ${e} published.`}}return{primary:a,secondary:`Spread the word!`}}function fi({post:e,type:t,wasPublished:n,postCount:r,siteTitle:i,siteIcon:a,onClose:o}){let s=di({wasPublished:n,type:t,emailOnly:e.email_only===!0,postCount:r});return(0,Q.jsx)(bt,{author:e.authors?.[0]?.name??``,emailOnly:e.email_only===!0,faviconURL:a,featureImageURL:e.feature_image??``,postExcerpt:e.excerpt??e.custom_excerpt??``,postTitle:e.title,postURL:e.url,primaryTitle:s.primary,secondaryTitle:s.secondary,siteTitle:i,open:!0,onClose:o,onOpenChange:e=>{e||o()}})}var pi={published:`ghost-last-published-post`,scheduled:`ghost-last-scheduled-post`};function mi(){let e=localStorage.getItem(pi.published),t=localStorage.getItem(pi.scheduled);localStorage.removeItem(pi.published),localStorage.removeItem(pi.scheduled);let n=e??t;if(!n)return null;try{let t=JSON.parse(n);return typeof t?.id!=`string`||!t.id?null:{id:t.id,type:typeof t.type==`string`?t.type:`post`,wasPublished:e!==null}}catch{return null}}function hi(){let[e,t]=(0,Z.useState)(null),n=(0,Z.useRef)(!1);(0,Z.useEffect)(()=>{n.current||(n.current=!0,t(mi()))},[]);let r=e?.type===`page`,i={filter:`id:${e?.id??``}`,limit:`1`,include:`authors,newsletter,email`},{data:a}=f({searchParams:i,enabled:!!e&&!r}),{data:o}=ct({searchParams:i,enabled:!!e&&r}),{data:s}=f({searchParams:{filter:`status:published`,limit:`1`},enabled:e?.wasPublished===!0});return{celebration:e,post:r?o?.pages?.[0]:a?.posts?.[0],postCount:e?.wasPublished?s?.meta?.pagination.total:void 0,dismiss:()=>{t(null)}}}function gi({isRunning:e,onConfirm:t,onCancel:n}){let[r,i]=(0,Z.useState)([]),[a,o]=(0,Z.useState)(``);return(0,Q.jsx)(je,{open:!0,onOpenChange:e=>{e||n()},children:(0,Q.jsxs)(ke,{"data-testid":`add-tag-modal`,onEscapeKeyDown:e=>{(r.length>0||a.length>0)&&e.preventDefault()},children:[(0,Q.jsxs)(Oe,{children:[(0,Q.jsx)(Ae,{children:`Add tags`}),(0,Q.jsx)(De,{children:`Added to everything selected, on top of any tags already applied.`})]}),(0,Q.jsx)(Dt,{inputLabel:`Search tags`,selected:r,onAdd:e=>{i(t=>[...t,e])},onRemove:e=>{i(t=>t.filter(t=>Tt(t)!==e))},onSearchChange:o}),(0,Q.jsxs)(Ee,{children:[(0,Q.jsx)(V,{disabled:e,variant:`outline`,onClick:n,children:`Cancel`}),(0,Q.jsx)(V,{disabled:e||r.length===0,onClick:()=>{t(r)},children:e?`Adding`:`Add`})]})]})})}var _i={delete:{confirm:`Delete`,running:`Deleting`},unpublish:{confirm:`Unpublish`,running:`Unpublishing`},unschedule:{confirm:`Unschedule`,running:`Unscheduling`}};function vi(e,{count:t,resource:n,title:r,isSingle:i=t===1}){let a=n===`pages`?`page`:`post`,o=i?`this ${a}`:`these ${a}s`,s=i?r?`"${r}"`:`this ${a}`:`${t} ${a}s`,c=e===`delete`?`You’re about to delete ${s}. This is permanent! We warned you, k?`:`You’re about to revert ${s} to a private draft.`;return{title:`Are you sure you want to ${e} ${o}?`,body:c,confirmLabel:_i[e].confirm,runningLabel:_i[e].running}}function yi({count:e,resource:t,isSingle:n}){let r=t===`pages`?`page`:`post`;return n?`Change ${r} access`:`Change ${r} access for ${e} ${r}s`}var bi=[{value:`public`,label:`Public`},{value:`members`,label:`Members only`},{value:`paid`,label:`Paid-members only`},{value:`tiers`,label:`Specific tier(s)`}];function xi({resource:e,count:t,isSingle:n,currentVisibility:r,currentTiers:i,isRunning:a,onConfirm:o,onCancel:s}){let{data:c}=J(),l=q(c?.settings,`default_content_visibility`)??`public`,[u,d]=(0,Z.useState)(n&&r?r:l),[f,p]=(0,Z.useState)(n&&i?i.map(e=>e.id):[]),{data:m}=ut(),h=(m?.tiers??[]).filter(e=>e.type===`paid`&&e.active),g=u!==`tiers`||f.length>0;return(0,Q.jsx)(je,{open:!0,onOpenChange:e=>{e||s()},children:(0,Q.jsxs)(ke,{"data-testid":`change-access-modal`,children:[(0,Q.jsxs)(Oe,{children:[(0,Q.jsx)(Ae,{children:yi({count:t,resource:e,isSingle:n})}),(0,Q.jsxs)(De,{children:[`Controls who can read the selected`,` `,(e===`pages`?`page`:`post`)+(n?``:`s`),`.`]})]}),(0,Q.jsxs)(T,{gap:`md`,children:[(0,Q.jsxs)(Xe,{value:u,onValueChange:d,children:[(0,Q.jsx)(Je,{"aria-label":`Access`,children:(0,Q.jsx)(Ye,{})}),(0,Q.jsx)(qe,{children:bi.map(e=>(0,Q.jsx)(Ke,{value:e.value,children:e.label},e.value))})]}),u===`tiers`&&(0,Q.jsx)(T,{gap:`sm`,children:h.map(e=>(0,Q.jsxs)(w,{align:`center`,gap:`sm`,children:[(0,Q.jsx)(Te,{checked:f.includes(e.id),id:`tier-${e.id}`,onCheckedChange:t=>{p(n=>t?[...n,e.id]:n.filter(t=>t!==e.id))}}),(0,Q.jsx)(`label`,{className:`text-sm`,htmlFor:`tier-${e.id}`,children:e.name})]},e.id))})]}),(0,Q.jsxs)(Ee,{children:[(0,Q.jsx)(V,{disabled:a,variant:`outline`,onClick:s,children:`Cancel`}),(0,Q.jsx)(V,{disabled:a||!g,onClick:()=>{o({visibility:u,tiers:u===`tiers`?f.map(e=>({id:e})):[]})},children:a?`Saving`:`Save`})]})]})})}function Si({action:e,resource:t,count:n,title:r,isSingle:i,isRunning:a,onConfirm:o,onCancel:s}){let c=vi(e,{count:n,resource:t,title:r,isSingle:i});return(0,Q.jsx)(we,{open:!0,onOpenChange:e=>{e||s()},children:(0,Q.jsxs)(ye,{"data-testid":`bulk-${e}-modal`,onEscapeKeyDown:e=>{a&&e.preventDefault()},children:[(0,Q.jsxs)(Ce,{children:[(0,Q.jsx)(ve,{children:c.title}),(0,Q.jsx)(_e,{children:c.body})]}),(0,Q.jsxs)(xe,{children:[(0,Q.jsx)(Se,{disabled:a,children:`Cancel`}),(0,Q.jsx)(be,{className:`bg-destructive text-destructive-foreground hover:bg-destructive/90`,disabled:a,onClick:e=>{e.preventDefault(),o()},children:a?c.runningLabel:c.confirmLabel})]})]})})}var Ci=e(Mt(),1),wi=[{key:`primary_tag`,replacement:`tags.slug`,expansion:`posts_tags.sort_order:0+tags.visibility:public`},{key:`primary_author`,replacement:`authors.slug`,expansion:`posts_authors.sort_order:0+authors.visibility:public`},{key:`authors`,replacement:`authors.slug`},{key:`author`,replacement:`authors.slug`},{key:`tag`,replacement:`tags.slug`},{key:`tags`,replacement:`tags.slug`}];function Ti({posts:e,editedIds:t,filter:n}){let r=(0,Ci.default)(n,{expansions:wi});try{r.queryJSON({})}catch{return e}return e.filter(e=>t.has(e.id)?r.queryJSON(e):!0)}var Ei={unpublish:{action:`unpublish`,message:`unpublished`},unschedule:{action:`unschedule`,message:`unscheduled`},feature:{action:`feature`},unfeature:{action:`unfeature`}};function Di(e,t){switch(t){case`unpublish`:return e.status===`published`?{...e,status:`draft`}:e;case`unschedule`:return e.status===`scheduled`?{...e,status:`draft`,published_at:void 0}:e;case`feature`:return{...e,featured:!0};case`unfeature`:return{...e,featured:!1};default:return e}}function Oi(e){let t=e[1];if(typeof t!=`string`)return null;try{return new URL(t,window.location.origin).searchParams.get(`filter`)}catch{return null}}function ki({resource:e,onDeleted:t,onEdited:r}){let[i,a]=(0,Z.useState)(!1),o=n(),c=d(),u=st(),f=l(),p=at(),m=e===`pages`,h=m?`PagesResponseType`:`PostsResponseType`,g=(0,Z.useCallback)((e,t)=>{let n=new Set(e.posts.map(e=>e.id)),r=t===`delete`,i=new Set;for(let a of e.bucketFilters)o.setQueriesData({queryKey:[h],predicate:e=>Oi(e.queryKey)===a},o=>{if(!Array.isArray(o?.pageParams)||!o.pages)return o;let s=0,c=0,l=o.pages.map(e=>{let o=m?`pages`:`posts`,l=e[o]??[],u;return r?u=l.filter(e=>!n.has(e.id)):(u=Ti({posts:l.map(e=>n.has(e.id)?Di(e,t):e),editedIds:n,filter:a}),u.forEach(e=>{n.has(e.id)&&i.add(e.id)})),s+=l.length-u.length,c+=u.length,{...e,[o]:u}});return!r||s===0&&!e.inverted?{...o,pages:l}:{...o,pages:l.map(t=>typeof t.meta?.pagination?.total==`number`?{...t,meta:{...t.meta,pagination:{...t.meta.pagination,total:e.inverted?c:Math.max(0,t.meta.pagination.total-s)}}}:t)}});return i},[o,h,m]),_=(0,Z.useCallback)(async(t,n,i)=>{a(!0);try{let a=t===`add-tag`?{type:`addTag`,meta:i}:{type:`access`,meta:i};if(m?await u.mutateAsync({filter:n.filter,action:a}):await c.mutateAsync({filter:n.filter,action:a}),t===`change-access`)s.success(X(`accessUpdated`,{count:n.count,resource:e,isSingle:n.isSingle}));else{let t=`tags`in i?i.tags.length:1;s.success(X(t>1?`tagsAdded`:`tagAdded`,{count:n.count,resource:e,isSingle:n.isSingle}))}r?.(new Set(n.posts.map(e=>e.id))),o.invalidateQueries({queryKey:[h]}),t===`add-tag`&&o.invalidateQueries({queryKey:[`TagsResponseType`]})}catch(e){s.error(e instanceof Error&&e.message?e.message:`That action could not be completed.`)}finally{a(!1)}},[m,e,r,o,h,c,u]);return{run:(0,Z.useCallback)(async(n,i)=>{a(!0);try{if(n===`delete`){m?await p.mutateAsync({filter:i.filter}):await f.mutateAsync({filter:i.filter}),g(i,`delete`),o.invalidateQueries({queryKey:[h],refetchType:`none`}),s.success(X(`deleted`,{count:i.count,resource:e,isSingle:i.isSingle})),t?.();return}let a=Ei[n];if(!a)return;let l={filter:i.filter,action:{type:a.action}};m?await u.mutateAsync(l):await c.mutateAsync(l),a.message&&s.success(X(a.message,{count:i.count,resource:e,isSingle:i.isSingle}));let d=g(i,n);o.invalidateQueries({queryKey:[h],refetchType:`none`}),r?.(d)}catch(e){s.error(e instanceof Error&&e.message?e.message:`That action could not be completed.`)}finally{a(!1)}},[m,e,t,r,g,h,o,c,u,f,p]),runWithPayload:_,isRunning:i}}function Ai(e){return e.length===1}function ji(e,t){return e.some(e=>e.status===t)}function Mi(e){return e.filter(e=>e.featured).length<=e.length/2}function Ni(e){let{posts:t,resource:n,isAdmin:r,membersEnabled:i,canCopyGiftLink:a}=e;if(t.length===0)return[];let o=[],s=(e,t,n={})=>{o.push({key:e,label:t,separated:!1,...n})};return ji(t,`published`)?(Ai(t)&&s(`copy-link`,n===`pages`?`Copy link to page`:`Copy link to post`),a&&s(`gift-link`,`Share as a gift`),s(`unpublish`,`Unpublish`)):(Ai(t)&&s(`copy-preview`,`Copy preview link`),ji(t,`scheduled`)&&s(`unschedule`,`Unschedule`)),t.some(e=>e.status!==`sent`)&&(Mi(t)?s(`feature`,`Feature`):s(`unfeature`,`Unfeature`)),s(`add-tag`,`Add a tag`),i&&s(`change-access`,`Change access`),Ai(t)&&s(`duplicate`,`Duplicate`),r&&s(`delete`,`Delete`,{destructive:!0,separated:!0}),o}var Pi=`order`;function Fi(e){let t={};return Xn.forEach(n=>{t[n]=e.get(n)}),t.order=e.get(Pi),t}function Ii(e,t){let n=new URLSearchParams(e);return Object.entries(t).forEach(([e,t])=>{t==null||t===``?n.delete(e):n.set(e,t)}),n}function Li(){let[e,t]=_(),n=(0,Z.useMemo)(()=>Fi(e),[e]),r=(0,Z.useMemo)(()=>ir(n),[n]),i=n.order??null,a=(0,Z.useCallback)((e,{replace:n=!0}={})=>{t(t=>Ii(t,e),{replace:n})},[t]);return{filters:r,params:n,order:i,setFilters:(0,Z.useCallback)((e,t)=>{a(lr(e),t)},[a]),setOrder:(0,Z.useCallback)((e,t)=>{a({[Pi]:e},t)},[a]),clearFilters:(0,Z.useCallback)(e=>{a(lr([]),e)},[a]),hasFilters:r.length>0}}function Ri({items:e,webAnalyticsEnabled:t,membersTrackSources:n}){let r=(0,Z.useMemo)(()=>e.filter(e=>e.status===`published`),[e]),i=(0,Z.useMemo)(()=>r.map(e=>e.uuid).filter(e=>!!e),[r]),a=(0,Z.useMemo)(()=>r.map(e=>e.id),[r]),{data:o}=yt(i,{enabled:t}),{data:s}=vt(a,{enabled:n});return{visitorCounts:o,memberCounts:s}}var zi=()=>{};function Bi(e){let t=e.reduce((e,t)=>e+t.total,0),n=e.some(e=>e.isError);if(e.some(e=>e.isLoading))return{items:[],totalItems:t,hasNextPage:!1,isFetchingNextPage:!1,isLoading:!0,isError:n,fetchNextPage:zi};let r=[],i;for(let t of e){if(r.push(t),t.isError)break;if(t.hasNextPage){i=t;break}}return{items:r.flatMap(e=>e.items),totalItems:t,hasNextPage:!!i,isFetchingNextPage:i?.isFetchingNextPage??!1,isLoading:!1,isError:n,fetchNextPage:i?.fetchNextPage??zi}}function Vi(e,{resource:t,params:n,context:i},a){let o=Hn(e,n,i),s=u({searchParams:o,enabled:a&&t===`posts`,placeholderData:r}),c=ot({searchParams:o,enabled:a&&t===`pages`,placeholderData:r}),l=t===`pages`?c:s;return{bucket:e,items:(t===`pages`?c.data?.pages:s.data?.posts)??[],total:l.data?.meta?.pagination.total??0,hasNextPage:l.hasNextPage,isLoading:a&&l.isLoading,isFetchingNextPage:l.isFetchingNextPage,isError:l.isError,fetchNextPage:()=>{l.fetchNextPage()}}}function Hi(e){let t=Rn(e.params),n={scheduled:Vi(`scheduled`,e,t.includes(`scheduled`)),draft:Vi(`draft`,e,t.includes(`draft`)),publishedAndSent:Vi(`publishedAndSent`,e,t.includes(`publishedAndSent`))};return Bi(On.filter(e=>t.includes(e)).map(e=>n[e]))}var Ui=[`delete`,`unpublish`,`unschedule`],Wi=(0,Z.lazy)(()=>g(()=>import(`./gift-link-modal-CNE7dfPD.js`).then(e=>e.n),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69]),import.meta.url));function Gi({resource:e}){let t=En(e),n=(0,Z.useRef)(null),{params:r,filters:i,order:o,setFilters:s,setOrder:c,hasFilters:l,clearFilters:u}=Li(),{data:d}=a(),{data:f}=J(),p=ft(`improveSendingUI`),m=v();(0,Z.useEffect)(()=>{oe(e,m.search);let t=ae(e).split(`?`)[1];return ie(e,Object.fromEntries(new URLSearchParams(t)))},[e,m.search]);let h=q(f?.settings,`timezone`)??void 0,g=!!(d&&tt(d)),_=!!(d&&nt(d)),y=f?.settings??null,b=(0,Z.useMemo)(()=>({webAnalyticsEnabled:q(y,`web_analytics_enabled`)===!0,membersTrackSources:q(y,`members_track_sources`)===!0,emailTrackOpens:q(y,`email_track_opens`)===!0,emailTrackClicks:q(y,`email_track_clicks`)===!0,membersSignupAccess:q(y,`members_signup_access`)??`all`,isMembersInviteOnly:q(y,`members_signup_access`)===`invite`,isContributor:g}),[y,g]),ee=q(y,`paid_members_enabled`)===!0,te=Hr(),S=e===`posts`?jr(te,r):void 0,ne=Ar({isAdmin:_,resource:e,params:r,isDefaultView:mt.some(e=>jr([{...e,route:`posts`}],r))}),w=l,D=ne&&!w,O=!!(d&&$e(d)),k=d&&O?d.slug:null,{items:A,isLoading:j,isError:se,hasNextPage:ce,isFetchingNextPage:M,fetchNextPage:N,totalItems:P}=Hi({resource:e,params:r,context:{ownAuthorSlug:k}});Ct({parentRef:n,isLoading:j,resetOnNavigation:!0});let[F,I]=(0,Z.useState)(null),L=li({orderedIds:A.map(e=>e.id),allFilter:Ln(r,{ownAuthorSlug:k}),enabled:!!d&&!O,suspended:F!==null}),ue=(0,Z.useMemo)(()=>Rn(r).map(e=>Bn(e,r,{ownAuthorSlug:k})),[r,k]),R=L.state,z=(0,Z.useMemo)(()=>A.filter(e=>ni(R,e.id)),[A,R]),de=q(y,`members_signup_access`)!==`none`,fe=(0,Z.useMemo)(()=>Ni({posts:z,resource:e,isAdmin:_,membersEnabled:de,canCopyGiftLink:!0}),[z,e,_,de]),B=ri(R)?z[0]:void 0,V=B&&ui({user:d,post:B})?B.id:null,[pe,H]=(0,Z.useState)(null),U=hi(),{data:me}=ht(),W=ki({resource:e,onDeleted:()=>{I(null),L.clear()},onEdited:e=>{I(null),L.keepOnly(e)}}),he=(0,Z.useRef)(fe),ge=(0,Z.useRef)(()=>{});he.current=fe;let _e=(0,Z.useCallback)(()=>he.current,[]),ve=(0,Z.useCallback)(e=>ge.current(e),[]);ge.current=It({resource:e,posts:z,onShareAsGift:H,onBulkAction:(e,t)=>{if(e===`feature`||e===`unfeature`){W.run(e,t);return}I({key:e,snapshot:t})},selectionFilter:L.filter,bucketFilters:ue,isSingle:ri(R),inverted:R.inverted,count:ii(R,P)});let{visitorCounts:ye,memberCounts:be}=Ri({items:A,webAnalyticsEnabled:b.webAnalyticsEnabled,membersTrackSources:b.membersTrackSources});return(0,Q.jsx)(C,{ref:n,className:`size-full`,children:(0,Q.jsxs)(re,{className:`relative flex h-full flex-col`,size:`page`,children:[(0,Q.jsxs)(St,{"data-testid":`${e}-page`,children:[(0,Q.jsxs)(St.Header,{children:[(0,Q.jsxs)(G,{blurredBackground:!1,sticky:!1,children:[(0,Q.jsx)(G.Left,{children:(0,Q.jsx)(G.Title,{children:t.title})}),(0,Q.jsx)(G.Actions,{children:(0,Q.jsxs)(G.ActionGroup,{children:[!w&&(0,Q.jsx)(Tr,{currentUser:d,filters:i,iconOnly:!0,params:r,resource:e,onFiltersChange:s}),(0,Q.jsx)(Xr,{order:o,onOrderChange:c}),D&&(0,Q.jsx)(Yr,{activeView:S,params:r,resource:e,inHeader:!0}),(0,Q.jsx)(G.ActionGroup.Primary,{children:(0,Q.jsx)(G.Action,{fallbackVariant:`default`,label:t.newLabel,asChild:!0,primary:!0,children:(0,Q.jsxs)(`a`,{"aria-label":t.newLabel,className:`font-bold`,href:t.newHref,children:[(0,Q.jsx)(le,{className:`size-4`}),(0,Q.jsx)(`span`,{className:`hidden sm:inline`,children:t.newLabel})]})})})]})})]}),w&&(0,Q.jsx)(K,{children:(0,Q.jsx)(Tr,{currentUser:d,filters:i,params:r,resource:e,viewActions:ne&&(0,Q.jsx)(Yr,{activeView:S,params:r,resource:e}),onFiltersChange:s})})]}),(0,Q.jsx)(St.Body,{children:j?(0,Q.jsx)(T,{align:`center`,className:`flex-1`,justify:`center`,children:(0,Q.jsx)(Ge,{size:`lg`})}):se?(0,Q.jsx)(T,{align:`center`,className:`flex-1`,justify:`center`,children:(0,Q.jsxs)(E,{tone:`secondary`,children:[`Error loading `,t.title.toLowerCase()]})}):A.length===0?(0,Q.jsx)(T,{align:`center`,className:`flex-1`,justify:`center`,children:(0,Q.jsx)(Dn,{hasFilters:l,resource:e,onClearFilters:u})}):(0,Q.jsxs)(T,{gap:`md`,children:[(0,Q.jsx)(`ul`,{className:x(`border-t border-border-default`,L.modifierHeld&&[`cursor-default`,`[&_li_*]:pointer-events-none [&_li_*]:cursor-default`,`[&_li_[data-ignore-select]]:pointer-events-auto`,`[&_li_[data-ignore-select]]:cursor-pointer`]),"data-ctrl":L.modifierHeld?`true`:void 0,"data-selection":L.state.inverted?`inverted`:void 0,"data-testid":`posts-list`,children:A.map(t=>(0,Q.jsx)(wn,{getMenuItems:_e,hasAdminAccess:_,improveSendingUI:p,isContributor:g,isSelected:L.isSelected(t.id),memberCounts:be,menuEnabled:L.enabled,menuOnAction:ve,menuOnOpenChange:L.getContextMenuOpenHandler(t.id),metricsSettings:b,paidMembersEnabled:ee,post:t,resource:e,showGiftLink:V===t.id,timezone:h,visitorCounts:ye,onSelectClick:L.onRowClick,onSelectMouseDown:L.onRowMouseDown},t.id))}),ce&&(0,Q.jsx)(wt,{isLoading:M,onClick:N})]})})]}),F&&Ui.includes(F.key)&&(0,Q.jsx)(Si,{action:F.key,count:F.snapshot.count,isRunning:W.isRunning,isSingle:F.snapshot.isSingle,resource:e,title:F.snapshot.posts[0]?.title,onCancel:()=>{I(null)},onConfirm:()=>{W.run(F.key,F.snapshot)}}),F?.key===`add-tag`&&(0,Q.jsx)(gi,{isRunning:W.isRunning,onCancel:()=>{I(null)},onConfirm:e=>{W.runWithPayload(`add-tag`,F.snapshot,{tags:e})}}),F?.key===`change-access`&&(0,Q.jsx)(xi,{count:F.snapshot.count,currentTiers:F.snapshot.posts[0]?.tiers,currentVisibility:F.snapshot.posts[0]?.visibility,isRunning:W.isRunning,isSingle:F.snapshot.isSingle,resource:e,onCancel:()=>{I(null)},onConfirm:e=>{W.runWithPayload(`change-access`,F.snapshot,e)}}),U.celebration&&U.post&&(0,Q.jsx)(fi,{post:U.post,postCount:U.postCount,siteIcon:me?.site.icon,siteTitle:me?.site.title??``,type:U.celebration.type,wasPublished:U.celebration.wasPublished,onClose:U.dismiss}),pe&&(0,Q.jsx)(Z.Suspense,{fallback:null,children:(0,Q.jsx)(Wi,{postId:pe,resource:e,source:`context-menu`,open:!0,onOpenChange:e=>{e||H(null)}})})]})})}export{Gi as t};
@@ -0,0 +1 @@
1
+ (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]=`648fceda-4c31-4e74-9d2c-3b6d3c86e9c0`,e._sentryDebugIdIdentifier=`sentry-dbid-648fceda-4c31-4e74-9d2c-3b6d3c86e9c0`)}catch{}})();import{t as e}from"./jsx-runtime-Bm2_KH-0.js";import{t}from"./posts-list-screen-CwXmvY68.js";var n=e();function r(){return(0,n.jsx)(t,{resource:`posts`})}export{r as default};