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 +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]=`485d53b9-9246-422f-8ace-de240fa75684`,e._sentryDebugIdIdentifier=`sentry-dbid-485d53b9-9246-422f-8ace-de240fa75684`)}catch{}})();import{s as e,t}from"./react-C9lG_SsT.js";import{c as n,u as r}from"./hooks-C-BDQ6Hs.js";import{t as i}from"./src-BwdakGcc.js";var a=e(t(),1),o=(e=[],t,n)=>!e||!n?e:e.filter(e=>e[t]?.toLowerCase().includes(n.toLowerCase())),s=({path:e,filterKey:t,responseKey:s,limit:c=20})=>{let l=r(),u=(0,a.useRef)({}),d=async r=>{if((u.current.allLoaded||u.current.lastInput===r)&&u.current.data)return o(u.current.data,t,r);let a=await l(n(e,{filter:r?`${t}:~${i(r)}`:``,limit:c.toString()}));return u.current.data=a[s],u.current.allLoaded=!r&&!a.meta?.pagination.next,u.current.lastInput=r,o(a[s],t,r)};return{loadData:d,loadInitialValues:async(t,r)=>{await d(``);let i=[...u.current.data||[]],a=t.filter(e=>!u.current.data?.find(t=>t[r]===e));if(a.length){let t=await l(n(e,{filter:`${r}:[${a.join(`,`)}]`,limit:`100`}));i.push(...t[s])}return t.map(e=>i.find(t=>t[r]===e))}}};export{s as t};
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]=`485d53b9-9246-422f-8ace-de240fa75684`,e._sentryDebugIdIdentifier=`sentry-dbid-485d53b9-9246-422f-8ace-de240fa75684`)}catch{}})();import{s as e,t}from"./react-C9lG_SsT.js";import{c as n,u as r}from"./hooks-0r7qxGEo.js";import{t as i}from"./src-BwdakGcc.js";var a=e(t(),1),o=(e=[],t,n)=>!e||!n?e:e.filter(e=>e[t]?.toLowerCase().includes(n.toLowerCase())),s=({path:e,filterKey:t,responseKey:s,limit:c=20})=>{let l=r(),u=(0,a.useRef)({}),d=async r=>{if((u.current.allLoaded||u.current.lastInput===r)&&u.current.data)return o(u.current.data,t,r);let a=await l(n(e,{filter:r?`${t}:~${i(r)}`:``,limit:c.toString()}));return u.current.data=a[s],u.current.allLoaded=!r&&!a.meta?.pagination.next,u.current.lastInput=r,o(a[s],t,r)};return{loadData:d,loadInitialValues:async(t,r)=>{await d(``);let i=[...u.current.data||[]],a=t.filter(e=>!u.current.data?.find(t=>t[r]===e));if(a.length){let t=await l(n(e,{filter:`${r}:[${a.join(`,`)}]`,limit:`100`}));i.push(...t[s])}return t.map(e=>i.find(t=>t[r]===e))}}};export{s as t};
@@ -1 +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]=`7691ffe3-88f5-4734-aaf7-8cb9fee22ffe`,e._sentryDebugIdIdentifier=`sentry-dbid-7691ffe3-88f5-4734-aaf7-8cb9fee22ffe`)}catch{}})();import{s as e,t}from"./react-C9lG_SsT.js";import{i as n}from"./currency-DgOqjQBh.js";import{H as r,U as i,X as a,Y as o}from"./shade-provider-DvrXKKQZ.js";import{i as s,p as c,r as l}from"./stats-CHOikfoP.js";import{a as u,n as d}from"./chart-helpers-D-3N170i.js";a();var f=e(t(),1),p=(e,t,n,r)=>{if(!e.length)return{totalMembers:0,freeMembers:0,paidMembers:0,mrr:0,percentChanges:{total:`0%`,free:`0%`,paid:`0%`,mrr:`0%`},directions:{total:`same`,free:`same`,paid:`same`,mrr:`same`}};let a=r||e[e.length-1],s=e.length>0?e[e.length-1]:{free:0,paid:0,comped:0,gift:0},c=t.length>0?t[t.length-1]:{mrr:0},l=a.free+a.paid+a.comped+(a.gift??0),u=c.mrr,d={total:`0%`,free:`0%`,paid:`0%`,mrr:`0%`},f={total:`same`,free:`same`,paid:`same`,mrr:`same`};if(e.length>1){let t=e[0],n=t.free+t.paid+t.comped+(t.gift??0);if(n>0){let e=(l-n)/n*100;d.total=i(e/100),f.total=e>0?`up`:e<0?`down`:`same`}if(t.free>0){let e=(s.free-t.free)/t.free*100;d.free=i(e/100),f.free=e>0?`up`:e<0?`down`:`same`}let r=t.paid+t.comped+(t.gift??0),a=s.paid+s.comped+(s.gift??0);if(r>0){let e=(a-r)/r*100;d.paid=i(e/100),f.paid=e>0?`up`:e<0?`down`:`same`}}if(t.length>1){let e=o(n).format(`YYYY-MM-DD`),r=t.find(t=>o(t.date).isSameOrAfter(e)),a=o(n).isSame(o().startOf(`year`),`day`)||o(n).year()<o().year(),s=0;if(s=r&&o(r.date).isSame(e,`day`)?r.mrr:a?0:u,s>=0){let e=s===0?u>0?100:0:(u-s)/s*100;d.mrr=i(e/100),f.mrr=e>0?`up`:e<0?`down`:`same`}}return{totalMembers:l,freeMembers:a.free,paidMembers:a.paid+a.comped+(a.gift??0),mrr:u,percentChanges:d,directions:f}},m=(e,t)=>{let n=[...e].sort((e,t)=>new Date(e.date).getTime()-new Date(t.date).getTime()),i=[...t].sort((e,t)=>new Date(e.date).getTime()-new Date(t.date).getTime()),a=n.map(e=>e.date),o=i.map(e=>e.date),s=[...new Set([...a,...o])].sort((e,t)=>new Date(e).getTime()-new Date(t).getTime()),c=null,l=null,u=new Map(n.map(e=>[e.date,e])),d=new Map(i.map(e=>[e.date,e]));return s.map(e=>{let t=u.get(e);t&&(c=t);let n=d.get(e);n&&(l=n);let i=c?.free??0,a=c?.paid??0,o=c?.comped??0,s=c?.gift??0,f=a+o+s,p=i+f;return{date:e,value:p,free:i,paid:f,comped:o,gift:s,mrr:l?.mrr??0,paid_subscribed:c?.paid_subscribed??0,paid_canceled:c?.paid_canceled??0,formattedValue:r(p),label:`Total members`}})},h=e=>{let{startDate:t,endDate:r}=(0,f.useMemo)(()=>u(e),[e]),i=d(t),a=e===1?o(i).subtract(1,`day`).format(`YYYY-MM-DD`):i,{data:h,isLoading:g}=l({searchParams:{date_from:a}}),{data:_,isLoading:v}=s({searchParams:{date_from:a}}),{data:y,isLoading:b}=c(),x=(0,f.useMemo)(()=>{let t=[];if(h?.stats?t=h.stats:Array.isArray(h)&&(t=h),e===1&&t.length>=2){let e=t[t.length-2],n=t[t.length-1],r=o(i).format(`YYYY-MM-DD`),a=o(i).add(1,`day`).format(`YYYY-MM-DD`);return[{...e,date:r},{...n,date:a}]}return t},[h,e,i]),{mrrData:S,selectedCurrency:C}=(0,f.useMemo)(()=>{let t=o(i),n=e===1?o().endOf(`day`):o().startOf(`day`);if(_?.stats&&_?.meta?.totals){let r=_.meta.totals,i=r[0];if(!i)return{mrrData:[],selectedCurrency:`usd`};for(let e of r)e.mrr>i.mrr&&(i=e);let a=i.currency,s=_.stats.filter(e=>e.currency===a),c=s.filter(e=>o(e.date).isSameOrAfter(t)),l=[...s].sort((e,t)=>new Date(t.date).getTime()-new Date(e.date).getTime()),u=[...c];if(!u.some(e=>o(e.date).isSame(t,`day`))){let e=l.find(e=>o(e.date).isBefore(t));if(e)u.unshift({...e,date:t.format(`YYYY-MM-DD`)});else if(u.length>0){let e=[...u].sort((e,t)=>new Date(e.date).getTime()-new Date(t.date).getTime())[0];u.unshift({...e,date:t.format(`YYYY-MM-DD`)})}}let d=e===1?o().startOf(`day`):n;if(!u.some(e=>o(e.date).isSame(d,`day`))&&u.length>0){let e=[...u].sort((e,t)=>new Date(t.date).getTime()-new Date(e.date).getTime())[0];u.push({...e,date:d.format(`YYYY-MM-DD`)})}return{mrrData:u.sort((e,t)=>new Date(e.date).getTime()-new Date(t.date).getTime()),selectedCurrency:a}}return{mrrData:[],selectedCurrency:`usd`}},[_,i,e]),w=(0,f.useMemo)(()=>p(x,S,i,h?.meta?.totals),[x,S,i,h?.meta?.totals]),T=(0,f.useMemo)(()=>m(x,S),[x,S]),E=(0,f.useMemo)(()=>n(C),[C]);return{isLoading:(0,f.useMemo)(()=>g||v||b,[g,v,b]),memberData:x,mrrData:S,dateFrom:i,endDate:r,totals:w,chartData:T,subscriptionData:(0,f.useMemo)(()=>{if(!y?.stats)return[];let e=y.stats.reduce((e,t)=>{let n=t.date;return e[n]||(e[n]={date:n,signups:0,cancellations:0}),e[n].signups+=t.signups,e[n].cancellations+=t.cancellations,e},{}),t=Object.values(e).sort((e,t)=>new Date(e.date).getTime()-new Date(t.date).getTime()),n=o(i),a=o(r);return t.filter(e=>{let t=o(e.date);return t.isSameOrAfter(n)&&t.isSameOrBefore(a)})},[y,i,r]),selectedCurrency:C,currencySymbol:E}};export{h as t};
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]=`7691ffe3-88f5-4734-aaf7-8cb9fee22ffe`,e._sentryDebugIdIdentifier=`sentry-dbid-7691ffe3-88f5-4734-aaf7-8cb9fee22ffe`)}catch{}})();import{s as e,t}from"./react-C9lG_SsT.js";import{i as n}from"./currency-DgOqjQBh.js";import{H as r,U as i,X as a,Y as o}from"./shade-provider-DvrXKKQZ.js";import{i as s,p as c,r as l}from"./stats-BL_FJ7Ns.js";import{a as u,n as d}from"./chart-helpers-BSuFLd6-.js";a();var f=e(t(),1),p=(e,t,n,r)=>{if(!e.length)return{totalMembers:0,freeMembers:0,paidMembers:0,mrr:0,percentChanges:{total:`0%`,free:`0%`,paid:`0%`,mrr:`0%`},directions:{total:`same`,free:`same`,paid:`same`,mrr:`same`}};let a=r||e[e.length-1],s=e.length>0?e[e.length-1]:{free:0,paid:0,comped:0,gift:0},c=t.length>0?t[t.length-1]:{mrr:0},l=a.free+a.paid+a.comped+(a.gift??0),u=c.mrr,d={total:`0%`,free:`0%`,paid:`0%`,mrr:`0%`},f={total:`same`,free:`same`,paid:`same`,mrr:`same`};if(e.length>1){let t=e[0],n=t.free+t.paid+t.comped+(t.gift??0);if(n>0){let e=(l-n)/n*100;d.total=i(e/100),f.total=e>0?`up`:e<0?`down`:`same`}if(t.free>0){let e=(s.free-t.free)/t.free*100;d.free=i(e/100),f.free=e>0?`up`:e<0?`down`:`same`}let r=t.paid+t.comped+(t.gift??0),a=s.paid+s.comped+(s.gift??0);if(r>0){let e=(a-r)/r*100;d.paid=i(e/100),f.paid=e>0?`up`:e<0?`down`:`same`}}if(t.length>1){let e=o(n).format(`YYYY-MM-DD`),r=t.find(t=>o(t.date).isSameOrAfter(e)),a=o(n).isSame(o().startOf(`year`),`day`)||o(n).year()<o().year(),s=0;if(s=r&&o(r.date).isSame(e,`day`)?r.mrr:a?0:u,s>=0){let e=s===0?u>0?100:0:(u-s)/s*100;d.mrr=i(e/100),f.mrr=e>0?`up`:e<0?`down`:`same`}}return{totalMembers:l,freeMembers:a.free,paidMembers:a.paid+a.comped+(a.gift??0),mrr:u,percentChanges:d,directions:f}},m=(e,t)=>{let n=[...e].sort((e,t)=>new Date(e.date).getTime()-new Date(t.date).getTime()),i=[...t].sort((e,t)=>new Date(e.date).getTime()-new Date(t.date).getTime()),a=n.map(e=>e.date),o=i.map(e=>e.date),s=[...new Set([...a,...o])].sort((e,t)=>new Date(e).getTime()-new Date(t).getTime()),c=null,l=null,u=new Map(n.map(e=>[e.date,e])),d=new Map(i.map(e=>[e.date,e]));return s.map(e=>{let t=u.get(e);t&&(c=t);let n=d.get(e);n&&(l=n);let i=c?.free??0,a=c?.paid??0,o=c?.comped??0,s=c?.gift??0,f=a+o+s,p=i+f;return{date:e,value:p,free:i,paid:f,comped:o,gift:s,mrr:l?.mrr??0,paid_subscribed:c?.paid_subscribed??0,paid_canceled:c?.paid_canceled??0,formattedValue:r(p),label:`Total members`}})},h=e=>{let{startDate:t,endDate:r}=(0,f.useMemo)(()=>u(e),[e]),i=d(t),a=e===1?o(i).subtract(1,`day`).format(`YYYY-MM-DD`):i,{data:h,isLoading:g}=l({searchParams:{date_from:a}}),{data:_,isLoading:v}=s({searchParams:{date_from:a}}),{data:y,isLoading:b}=c(),x=(0,f.useMemo)(()=>{let t=[];if(h?.stats?t=h.stats:Array.isArray(h)&&(t=h),e===1&&t.length>=2){let e=t[t.length-2],n=t[t.length-1],r=o(i).format(`YYYY-MM-DD`),a=o(i).add(1,`day`).format(`YYYY-MM-DD`);return[{...e,date:r},{...n,date:a}]}return t},[h,e,i]),{mrrData:S,selectedCurrency:C}=(0,f.useMemo)(()=>{let t=o(i),n=e===1?o().endOf(`day`):o().startOf(`day`);if(_?.stats&&_?.meta?.totals){let r=_.meta.totals,i=r[0];if(!i)return{mrrData:[],selectedCurrency:`usd`};for(let e of r)e.mrr>i.mrr&&(i=e);let a=i.currency,s=_.stats.filter(e=>e.currency===a),c=s.filter(e=>o(e.date).isSameOrAfter(t)),l=[...s].sort((e,t)=>new Date(t.date).getTime()-new Date(e.date).getTime()),u=[...c];if(!u.some(e=>o(e.date).isSame(t,`day`))){let e=l.find(e=>o(e.date).isBefore(t));if(e)u.unshift({...e,date:t.format(`YYYY-MM-DD`)});else if(u.length>0){let e=[...u].sort((e,t)=>new Date(e.date).getTime()-new Date(t.date).getTime())[0];u.unshift({...e,date:t.format(`YYYY-MM-DD`)})}}let d=e===1?o().startOf(`day`):n;if(!u.some(e=>o(e.date).isSame(d,`day`))&&u.length>0){let e=[...u].sort((e,t)=>new Date(t.date).getTime()-new Date(e.date).getTime())[0];u.push({...e,date:d.format(`YYYY-MM-DD`)})}return{mrrData:u.sort((e,t)=>new Date(e.date).getTime()-new Date(t.date).getTime()),selectedCurrency:a}}return{mrrData:[],selectedCurrency:`usd`}},[_,i,e]),w=(0,f.useMemo)(()=>p(x,S,i,h?.meta?.totals),[x,S,i,h?.meta?.totals]),T=(0,f.useMemo)(()=>m(x,S),[x,S]),E=(0,f.useMemo)(()=>n(C),[C]);return{isLoading:(0,f.useMemo)(()=>g||v||b,[g,v,b]),memberData:x,mrrData:S,dateFrom:i,endDate:r,totals:w,chartData:T,subscriptionData:(0,f.useMemo)(()=>{if(!y?.stats)return[];let e=y.stats.reduce((e,t)=>{let n=t.date;return e[n]||(e[n]={date:n,signups:0,cancellations:0}),e[n].signups+=t.signups,e[n].cancellations+=t.cancellations,e},{}),t=Object.values(e).sort((e,t)=>new Date(e.date).getTime()-new Date(t.date).getTime()),n=o(i),a=o(r);return t.filter(e=>{let t=o(e.date);return t.isSameOrAfter(n)&&t.isSameOrBefore(a)})},[y,i,r]),selectedCurrency:C,currencySymbol:E}};export{h as t};
@@ -1 +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]=`14251d9b-623e-4c44-a33d-91d2c8cce4b2`,e._sentryDebugIdIdentifier=`sentry-dbid-14251d9b-623e-4c44-a33d-91d2c8cce4b2`)}catch{}})();import{s as e}from"./config-B3HuCo0y.js";var t=()=>{let{data:t}=e({refetchOnMount:!1});return t?.config.hostSettings?.limits};export{t};
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]=`14251d9b-623e-4c44-a33d-91d2c8cce4b2`,e._sentryDebugIdIdentifier=`sentry-dbid-14251d9b-623e-4c44-a33d-91d2c8cce4b2`)}catch{}})();import{s as e}from"./config-CRAZ4Civ.js";var t=()=>{let{data:t}=e({refetchOnMount:!1});return t?.config.hostSettings?.limits};export{t};
@@ -1,4 +1,4 @@
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]=`a9ec49c8-b858-4144-961e-a2b8580cfc1c`,e._sentryDebugIdIdentifier=`sentry-dbid-a9ec49c8-b858-4144-961e-a2b8580cfc1c`)}catch{}})();import{i as e,n as t,s as n,t as r}from"./react-C9lG_SsT.js";import{c as i,n as a,r as o,t as s,u as c,y as l}from"./hooks-C-BDQ6Hs.js";import{i as u}from"./members-Cj_BUZUL.js";import{n as d,t as f}from"./update-queries-sbOKc6_E.js";import{s as p}from"./config-B3HuCo0y.js";import{A as m,C as h,_ as g,a as _,c as v,i as y,j as b,m as x,n as S,r as C,s as w,t as T,v as E}from"./_baseAssignValue-cSgMM8MI.js";import{f as D}from"./users-CzgQKbfO.js";import{r as O}from"./newsletters-BMEgeL2l.js";import{n as k,t as A}from"./luxon-DQA_K_Nr.js";var j=t(((e,t)=>{function n(e,t){for(var n=-1,r=e==null?0:e.length;++n<r&&t(e[n],n,e)!==!1;);return e}t.exports=n})),M=t(((e,t)=>{var n=T(),r=h(),i=Object.prototype.hasOwnProperty;function a(e,t,a){var o=e[t];(!(i.call(e,t)&&r(o,a))||a===void 0&&!(t in e))&&n(e,t,a)}t.exports=a})),N=t(((e,t)=>{var n=M(),r=T();function i(e,t,i,a){var o=!i;i||={};for(var s=-1,c=t.length;++s<c;){var l=t[s],u=a?a(i[l],e[l],l,i,e):void 0;u===void 0&&(u=e[l]),o?r(i,l,u):n(i,l,u)}return i}t.exports=i})),P=n(r(),1),F=`InvitesResponseType`,I=s({dataType:F,path:`/invites/`,permissions:[`Owner`,`Administrator`],defaultSearchParams:{limit:`100`,include:`roles`},defaultNextPageParams:(e,t)=>({...t,page:(e.meta?.pagination.next||1).toString()}),returnData:e=>{let{pages:t}=e,n=t.flatMap(e=>e.invites),r=t[t.length-1].meta;return{invites:n,meta:r,isEnd:r?r.pagination.pages===r.pagination.page:!0}}}),L=a({method:`POST`,path:()=>`/invites/`,body:({email:e,roleId:t})=>({invites:[{email:e,role_id:t,expires:null,status:null,token:null}]}),updateQueries:{dataType:F,emberUpdateType:`createOrUpdate`,update:d(`invites`)}}),R=a({path:e=>`/invites/${e}/`,method:`DELETE`,updateQueries:{dataType:F,emberUpdateType:`delete`,update:f(`invites`)}}),z=o({dataType:`RolesResponseType`,path:`/roles/`,defaultSearchParams:{limit:`100`}}),B=globalThis.crypto,V=[];for(let e=0;e<256;e+=1)V.push((e+256).toString(16).slice(1));function ee(){let e=new Uint8Array(16);return B.getRandomValues(e),e[6]=e[6]&15|64,e[8]=e[8]&63|128,V[e[0]]+V[e[1]]+V[e[2]]+V[e[3]]+`-`+V[e[4]]+V[e[5]]+`-`+V[e[6]]+V[e[7]]+`-`+V[e[8]]+V[e[9]]+`-`+V[e[10]]+V[e[11]]+V[e[12]]+V[e[13]]+V[e[14]]+V[e[15]]}function te(){if(B?.randomUUID)return B.randomUUID();if(B?.getRandomValues)return ee();throw Error(`No secure random number generator available to generate a UUID`)}function ne(e,t){let n=(e.stack?.split(/\n/g)||[])[1],[r,...i]=t.stack?.split(/\n/g)||[];return[r,n,...i].join(`
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]=`a9ec49c8-b858-4144-961e-a2b8580cfc1c`,e._sentryDebugIdIdentifier=`sentry-dbid-a9ec49c8-b858-4144-961e-a2b8580cfc1c`)}catch{}})();import{i as e,n as t,s as n,t as r}from"./react-C9lG_SsT.js";import{c as i,n as a,r as o,t as s,u as c,y as l}from"./hooks-0r7qxGEo.js";import{i as u}from"./members-CH6KeXQc.js";import{n as d,t as f}from"./update-queries-sbOKc6_E.js";import{s as p}from"./config-CRAZ4Civ.js";import{A as m,C as h,_ as g,a as _,c as v,i as y,j as b,m as x,n as S,r as C,s as w,t as T,v as E}from"./_baseAssignValue-cSgMM8MI.js";import{f as D}from"./users-CKJaAxEJ.js";import{r as O}from"./newsletters-CACa0VCx.js";import{n as k,t as A}from"./luxon-DQA_K_Nr.js";var j=t(((e,t)=>{function n(e,t){for(var n=-1,r=e==null?0:e.length;++n<r&&t(e[n],n,e)!==!1;);return e}t.exports=n})),M=t(((e,t)=>{var n=T(),r=h(),i=Object.prototype.hasOwnProperty;function a(e,t,a){var o=e[t];(!(i.call(e,t)&&r(o,a))||a===void 0&&!(t in e))&&n(e,t,a)}t.exports=a})),N=t(((e,t)=>{var n=M(),r=T();function i(e,t,i,a){var o=!i;i||={};for(var s=-1,c=t.length;++s<c;){var l=t[s],u=a?a(i[l],e[l],l,i,e):void 0;u===void 0&&(u=e[l]),o?r(i,l,u):n(i,l,u)}return i}t.exports=i})),P=n(r(),1),F=`InvitesResponseType`,I=s({dataType:F,path:`/invites/`,permissions:[`Owner`,`Administrator`],defaultSearchParams:{limit:`100`,include:`roles`},defaultNextPageParams:(e,t)=>({...t,page:(e.meta?.pagination.next||1).toString()}),returnData:e=>{let{pages:t}=e,n=t.flatMap(e=>e.invites),r=t[t.length-1].meta;return{invites:n,meta:r,isEnd:r?r.pagination.pages===r.pagination.page:!0}}}),L=a({method:`POST`,path:()=>`/invites/`,body:({email:e,roleId:t})=>({invites:[{email:e,role_id:t,expires:null,status:null,token:null}]}),updateQueries:{dataType:F,emberUpdateType:`createOrUpdate`,update:d(`invites`)}}),R=a({path:e=>`/invites/${e}/`,method:`DELETE`,updateQueries:{dataType:F,emberUpdateType:`delete`,update:f(`invites`)}}),z=o({dataType:`RolesResponseType`,path:`/roles/`,defaultSearchParams:{limit:`100`}}),B=globalThis.crypto,V=[];for(let e=0;e<256;e+=1)V.push((e+256).toString(16).slice(1));function ee(){let e=new Uint8Array(16);return B.getRandomValues(e),e[6]=e[6]&15|64,e[8]=e[8]&63|128,V[e[0]]+V[e[1]]+V[e[2]]+V[e[3]]+`-`+V[e[4]]+V[e[5]]+`-`+V[e[6]]+V[e[7]]+`-`+V[e[8]]+V[e[9]]+`-`+V[e[10]]+V[e[11]]+V[e[12]]+V[e[13]]+V[e[14]]+V[e[15]]}function te(){if(B?.randomUUID)return B.randomUUID();if(B?.getRandomValues)return ee();throw Error(`No secure random number generator available to generate a UUID`)}function ne(e,t){let n=(e.stack?.split(/\n/g)||[])[1],[r,...i]=t.stack?.split(/\n/g)||[];return[r,n,...i].join(`
2
2
  `)}var re=Object.defineProperty,ie=(e,t,n)=>t in e?re(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,H=(e,t,n)=>ie(e,typeof t==`symbol`?t:t+``,n),U=class extends Error{constructor(e={}){super(),H(this,`statusCode`),H(this,`errorType`),H(this,`level`),H(this,`id`),H(this,`context`),H(this,`help`),H(this,`errorDetails`),H(this,`code`),H(this,`property`),H(this,`redirect`),H(this,`hideStack`),this.statusCode=500,this.errorType=`InternalServerError`,this.level=`normal`,this.message=`The server has encountered an error.`,this.id=te(),this.id=e.id||this.id,this.statusCode=e.statusCode||this.statusCode,this.level=e.level||this.level,this.context=e.context,this.help=e.help,this.errorType=this.name=e.errorType||this.errorType,this.errorDetails=e.errorDetails,this.code=e.code||null,this.property=e.property||null,this.redirect=e.redirect||null,this.message=e.message||this.message,this.hideStack=e.hideStack||!1,e.err&&(typeof e.err==`string`&&(e.err=Error(e.err)),Object.getOwnPropertyNames(e.err).forEach(t=>{if([`errorType`,`name`,`statusCode`,`message`,`level`].indexOf(t)===-1){if(t===`code`){this[t]=this[t]||e.err[t];return}if(t===`stack`&&!this.hideStack){this[t]=ne(this,e.err);return}this[t]=e.err[t]||this[t]}}))}},ae=e({BadRequestError:()=>le,ConflictError:()=>Ne,DataExportError:()=>Se,DataImportError:()=>Ce,DisabledFeatureError:()=>Ee,EmailError:()=>we,HelperWarning:()=>ke,HostLimitError:()=>Oe,IncorrectUsageError:()=>se,InternalServerError:()=>oe,MaintenanceError:()=>he,MethodNotAllowedError:()=>ge,MigrationError:()=>Pe,NoContentError:()=>Me,NoPermissionError:()=>de,NotFoundError:()=>ce,PasswordResetRequiredError:()=>Ae,RangeNotSatisfiableError:()=>ve,RequestEntityTooLargeError:()=>ye,RequestNotAcceptableError:()=>_e,ThemeValidationError:()=>Te,TokenRevocationError:()=>be,TooManyRequestsError:()=>me,UnauthorizedError:()=>ue,UnhandledJobError:()=>je,UnsupportedMediaTypeError:()=>pe,UpdateCollisionError:()=>De,ValidationError:()=>fe,VersionMismatchError:()=>xe}),W=(e,t)=>{let n={...t};return Object.keys(e).forEach(t=>{e[t]!==void 0&&(n[t]=e[t])}),n},oe=class extends U{constructor(e={}){super(W(e,{statusCode:500,level:`critical`,errorType:`InternalServerError`,message:`The server has encountered an error.`}))}},se=class extends U{constructor(e={}){super(W(e,{statusCode:400,level:`critical`,errorType:`IncorrectUsageError`,message:`We detected a misuse. Please read the stack trace.`}))}},ce=class extends U{constructor(e={}){super(W(e,{statusCode:404,errorType:`NotFoundError`,message:`Resource could not be found.`,hideStack:!0}))}},le=class extends U{constructor(e={}){super(W(e,{statusCode:400,errorType:`BadRequestError`,message:`The request could not be understood.`}))}},ue=class extends U{constructor(e={}){super(W(e,{statusCode:401,errorType:`UnauthorizedError`,message:`You are not authorised to make this request.`}))}},de=class extends U{constructor(e={}){super(W(e,{statusCode:403,errorType:`NoPermissionError`,message:`You do not have permission to perform this request.`}))}},fe=class extends U{constructor(e={}){super(W(e,{statusCode:422,errorType:`ValidationError`,message:`The request failed validation.`}))}},pe=class extends U{constructor(e={}){super(W(e,{statusCode:415,errorType:`UnsupportedMediaTypeError`,message:`The media in the request is not supported by the server.`}))}},me=class extends U{constructor(e={}){super(W(e,{statusCode:429,errorType:`TooManyRequestsError`,message:`Server has received too many similar requests in a short space of time.`}))}},he=class extends U{constructor(e={}){super(W(e,{statusCode:503,errorType:`MaintenanceError`,message:`The server is temporarily down for maintenance.`}))}},ge=class extends U{constructor(e={}){super(W(e,{statusCode:405,errorType:`MethodNotAllowedError`,message:`Method not allowed for resource.`}))}},_e=class extends U{constructor(e={}){super(W(e,{statusCode:406,errorType:`RequestNotAcceptableError`,message:`Request not acceptable for provided Accept-Version header.`,hideStack:!0}))}},ve=class extends U{constructor(e={}){super(W(e,{statusCode:416,errorType:`RangeNotSatisfiableError`,message:`Range not satisfiable for provided Range header.`,hideStack:!0}))}},ye=class extends U{constructor(e={}){super(W(e,{statusCode:413,errorType:`RequestEntityTooLargeError`,message:`Request was too big for the server to handle.`}))}},be=class extends U{constructor(e={}){super(W(e,{statusCode:503,errorType:`TokenRevocationError`,message:`Token is no longer available.`}))}},xe=class extends U{constructor(e={}){super(W(e,{statusCode:400,errorType:`VersionMismatchError`,message:`Requested version does not match server version.`}))}},Se=class extends U{constructor(e={}){super(W(e,{statusCode:500,errorType:`DataExportError`,message:`The server encountered an error whilst exporting data.`}))}},Ce=class extends U{constructor(e={}){super(W(e,{statusCode:500,errorType:`DataImportError`,message:`The server encountered an error whilst importing data.`}))}},we=class extends U{constructor(e={}){super(W(e,{statusCode:500,errorType:`EmailError`,message:`The server encountered an error whilst sending email.`}))}},Te=class extends U{constructor(e={}){super(W(e,{statusCode:422,errorType:`ThemeValidationError`,message:`The theme has a validation error.`,errorDetails:{}}))}},Ee=class extends U{constructor(e={}){super(W(e,{statusCode:409,errorType:`DisabledFeatureError`,message:`Unable to complete the request, this feature is disabled.`}))}},De=class extends U{constructor(e={}){super(W(e,{statusCode:409,errorType:`UpdateCollisionError`,message:`Unable to complete the request, there was a conflict.`}))}},Oe=class extends U{constructor(e={}){super(W(e,{errorType:`HostLimitError`,hideStack:!0,statusCode:403,message:`Unable to complete the request, this resource is limited.`}))}},ke=class extends U{constructor(e={}){super(W(e,{errorType:`HelperWarning`,hideStack:!0,statusCode:400,message:`A theme helper has done something unexpected.`}))}},Ae=class extends U{constructor(e={}){super(W(e,{errorType:`PasswordResetRequiredError`,statusCode:401,message:`For security, you need to create a new password. An email has been sent to you with instructions!`}))}},je=class extends U{constructor(e={}){super(W(e,{errorType:`UnhandledJobError`,message:`Processed job threw an unhandled error`,level:`critical`}))}},Me=class extends U{constructor(e={}){super(W(e,{errorType:`NoContentError`,statusCode:204,hideStack:!0}))}},Ne=class extends U{constructor(e={}){super(W(e,{errorType:`ConflictError`,statusCode:409,message:`The server has encountered an conflict.`}))}},Pe=class extends U{constructor(e={}){super(W(e,{errorType:`MigrationError`,message:`An error has occurred applying a database migration.`,level:`critical`}))}},G=ae,Fe=t(((e,t)=>{var n=g(),r=x();function i(e){return r(n(e).toLowerCase())}t.exports=i})),Ie=t(((e,t)=>{function n(e,t,n,r){var i=-1,a=e==null?0:e.length;for(r&&a&&(n=e[++i]);++i<a;)n=t(n,e[i],i,e);return n}t.exports=n})),K=t(((e,t)=>{function n(e){return function(t){return e?.[t]}}t.exports=n})),Le=t(((e,t)=>{t.exports=K()({À:`A`,Á:`A`,Â:`A`,Ã:`A`,Ä:`A`,Å:`A`,à:`a`,á:`a`,â:`a`,ã:`a`,ä:`a`,å:`a`,Ç:`C`,ç:`c`,Ð:`D`,ð:`d`,È:`E`,É:`E`,Ê:`E`,Ë:`E`,è:`e`,é:`e`,ê:`e`,ë:`e`,Ì:`I`,Í:`I`,Î:`I`,Ï:`I`,ì:`i`,í:`i`,î:`i`,ï:`i`,Ñ:`N`,ñ:`n`,Ò:`O`,Ó:`O`,Ô:`O`,Õ:`O`,Ö:`O`,Ø:`O`,ò:`o`,ó:`o`,ô:`o`,õ:`o`,ö:`o`,ø:`o`,Ù:`U`,Ú:`U`,Û:`U`,Ü:`U`,ù:`u`,ú:`u`,û:`u`,ü:`u`,Ý:`Y`,ý:`y`,ÿ:`y`,Æ:`Ae`,æ:`ae`,Þ:`Th`,þ:`th`,ß:`ss`,Ā:`A`,Ă:`A`,Ą:`A`,ā:`a`,ă:`a`,ą:`a`,Ć:`C`,Ĉ:`C`,Ċ:`C`,Č:`C`,ć:`c`,ĉ:`c`,ċ:`c`,č:`c`,Ď:`D`,Đ:`D`,ď:`d`,đ:`d`,Ē:`E`,Ĕ:`E`,Ė:`E`,Ę:`E`,Ě:`E`,ē:`e`,ĕ:`e`,ė:`e`,ę:`e`,ě:`e`,Ĝ:`G`,Ğ:`G`,Ġ:`G`,Ģ:`G`,ĝ:`g`,ğ:`g`,ġ:`g`,ģ:`g`,Ĥ:`H`,Ħ:`H`,ĥ:`h`,ħ:`h`,Ĩ:`I`,Ī:`I`,Ĭ:`I`,Į:`I`,İ:`I`,ĩ:`i`,ī:`i`,ĭ:`i`,į:`i`,ı:`i`,Ĵ:`J`,ĵ:`j`,Ķ:`K`,ķ:`k`,ĸ:`k`,Ĺ:`L`,Ļ:`L`,Ľ:`L`,Ŀ:`L`,Ł:`L`,ĺ:`l`,ļ:`l`,ľ:`l`,ŀ:`l`,ł:`l`,Ń:`N`,Ņ:`N`,Ň:`N`,Ŋ:`N`,ń:`n`,ņ:`n`,ň:`n`,ŋ:`n`,Ō:`O`,Ŏ:`O`,Ő:`O`,ō:`o`,ŏ:`o`,ő:`o`,Ŕ:`R`,Ŗ:`R`,Ř:`R`,ŕ:`r`,ŗ:`r`,ř:`r`,Ś:`S`,Ŝ:`S`,Ş:`S`,Š:`S`,ś:`s`,ŝ:`s`,ş:`s`,š:`s`,Ţ:`T`,Ť:`T`,Ŧ:`T`,ţ:`t`,ť:`t`,ŧ:`t`,Ũ:`U`,Ū:`U`,Ŭ:`U`,Ů:`U`,Ű:`U`,Ų:`U`,ũ:`u`,ū:`u`,ŭ:`u`,ů:`u`,ű:`u`,ų:`u`,Ŵ:`W`,ŵ:`w`,Ŷ:`Y`,ŷ:`y`,Ÿ:`Y`,Ź:`Z`,Ż:`Z`,Ž:`Z`,ź:`z`,ż:`z`,ž:`z`,IJ:`IJ`,ij:`ij`,Œ:`Oe`,œ:`oe`,ʼn:`'n`,ſ:`s`})})),Re=t(((e,t)=>{var n=Le(),r=g(),i=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,a=RegExp(`[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]`,`g`);function o(e){return e=r(e),e&&e.replace(i,n).replace(a,``)}t.exports=o})),ze=t(((e,t)=>{var n=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g;function r(e){return e.match(n)||[]}t.exports=r})),Be=t(((e,t)=>{var n=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/;function r(e){return n.test(e)}t.exports=r})),Ve=t(((e,t)=>{var n=`\\ud800-\\udfff`,r=`\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff`,i=`\\u2700-\\u27bf`,a=`a-z\\xdf-\\xf6\\xf8-\\xff`,o=`\\xac\\xb1\\xd7\\xf7`,s=`\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf`,c=`\\u2000-\\u206f`,l=` \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000`,u=`A-Z\\xc0-\\xd6\\xd8-\\xde`,d=`\\ufe0e\\ufe0f`,f=o+s+c+l,p=`['’]`,m=`[`+f+`]`,h=`[`+r+`]`,g=`\\d+`,_=`[`+i+`]`,v=`[`+a+`]`,y=`[^`+n+f+g+i+a+u+`]`,b=`(?:`+h+`|\\ud83c[\\udffb-\\udfff])`,x=`[^`+n+`]`,S=`(?:\\ud83c[\\udde6-\\uddff]){2}`,C=`[\\ud800-\\udbff][\\udc00-\\udfff]`,w=`[`+u+`]`,T=`\\u200d`,E=`(?:`+v+`|`+y+`)`,D=`(?:`+w+`|`+y+`)`,O=`(?:`+p+`(?:d|ll|m|re|s|t|ve))?`,k=`(?:`+p+`(?:D|LL|M|RE|S|T|VE))?`,A=b+`?`,j=`[`+d+`]?`,M=`(?:`+T+`(?:`+[x,S,C].join(`|`)+`)`+j+A+`)*`,N=`\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])`,P=`\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])`,F=j+A+M,I=`(?:`+[_,S,C].join(`|`)+`)`+F,L=RegExp([w+`?`+v+`+`+O+`(?=`+[m,w,`$`].join(`|`)+`)`,D+`+`+k+`(?=`+[m,w+E,`$`].join(`|`)+`)`,w+`?`+E+`+`+O,w+`+`+k,P,N,g,I].join(`|`),`g`);function R(e){return e.match(L)||[]}t.exports=R})),He=t(((e,t)=>{var n=ze(),r=Be(),i=g(),a=Ve();function o(e,t,o){return e=i(e),t=o?void 0:t,t===void 0?r(e)?a(e):n(e):e.match(t)||[]}t.exports=o})),q=t(((e,t)=>{var n=Ie(),r=Re(),i=He(),a=RegExp(`['’]`,`g`);function o(e){return function(t){return n(i(r(t).replace(a,``)),e,``)}}t.exports=o})),Ue=t(((e,t)=>{var n=Fe();t.exports=q()(function(e,t,r){return t=t.toLowerCase(),e+(r?n(t):t)})})),We=t(((e,t)=>{var n=Object.prototype.hasOwnProperty;function r(e,t){return e!=null&&n.call(e,t)}t.exports=r})),Ge=t(((e,t)=>{var n=We(),r=w();function i(e,t){return e!=null&&r(e,t,n)}t.exports=i})),J=n(Ue(),1),Y=n(Ge(),1),X={members:{currentCountQuery:async e=>(await e(`members`).count(`id`,{as:`count`}).first()).count},newsletters:{currentCountQuery:async e=>(await e(`newsletters`).count(`id`,{as:`count`}).where(`status`,`=`,`active`).first()).count},emails:{currentCountQuery:async(e,t)=>(await e(`emails`).sum(`email_count`,{as:`count`}).where(`created_at`,`>=`,t).first()).count},staff:{currentCountQuery:async e=>(await e(`users`).select(`users.id`).leftJoin(`roles_users`,`users.id`,`roles_users.user_id`).leftJoin(`roles`,`roles_users.role_id`,`roles.id`).whereNot(`roles.name`,`Contributor`).andWhereNot(`users.status`,`inactive`).union([e(`invites`).select(`invites.id`).leftJoin(`roles`,`invites.role_id`,`roles.id`).whereNot(`roles.name`,`Contributor`)])).length},customIntegrations:{},customThemes:{},uploads:{currentCountQuery:()=>void 0,formatter:e=>`${Number(e)/1e6}MB`},limitStripeConnect:{},limitAnalytics:{},limitSocialWeb:{},limitCustomFields:{},publicSiteAccess:{}},Ke=t(((e,t)=>{t.exports=q()(function(e,t,n){return e+(n?` `:``)+t.toLowerCase()})})),qe=t(((e,t)=>{var n=y(),r=C();function i(e){return n(function(t,n){var i=-1,a=n.length,o=a>1?n[a-1]:void 0,s=a>2?n[2]:void 0;for(o=e.length>3&&typeof o==`function`?(a--,o):void 0,s&&r(n[0],n[1],s)&&(o=a<3?void 0:o,a=1),t=Object(t);++i<a;){var c=n[i];c&&e(t,c,i,o)}return t})}t.exports=i})),Je=t(((e,t)=>{var n=N(),r=qe(),i=v();t.exports=r(function(e,t,r,a){n(t,i(t),e,a)})})),Ye=t(((e,t)=>{var n=b(),r=m(),i=S(),a=`[object DOMException]`,o=`[object Error]`;function s(e){if(!r(e))return!1;var t=n(e);return t==o||t==a||typeof e.message==`string`&&typeof e.name==`string`&&!i(e)}t.exports=s})),Xe=t(((e,t)=>{var n=_(),r=y(),i=Ye();t.exports=r(function(e,t){try{return n(e,void 0,t)}catch(e){return i(e)?e:Error(e)}})})),Ze=t(((e,t)=>{var n=E();function r(e,t){return n(t,function(t){return e[t]})}t.exports=r})),Qe=t(((e,t)=>{var n=h(),r=Object.prototype,i=r.hasOwnProperty;function a(e,t,a,o){return e===void 0||n(e,r[a])&&!i.call(o,a)?t:e}t.exports=a})),$e=t(((e,t)=>{var n={"\\":`\\`,"'":`'`,"\n":`n`,"\r":`r`,"\u2028":`u2028`,"\u2029":`u2029`};function r(e){return`\\`+n[e]}t.exports=r})),et=t(((e,t)=>{t.exports=/<%=([\s\S]+?)%>/g})),tt=t(((e,t)=>{t.exports=K()({"&":`&amp;`,"<":`&lt;`,">":`&gt;`,'"':`&quot;`,"'":`&#39;`})})),nt=t(((e,t)=>{var n=tt(),r=g(),i=/[&<>"']/g,a=RegExp(i.source);function o(e){return e=r(e),e&&a.test(e)?e.replace(i,n):e}t.exports=o})),rt=t(((e,t)=>{t.exports=/<%-([\s\S]+?)%>/g})),it=t(((e,t)=>{t.exports=/<%([\s\S]+?)%>/g})),at=t(((e,t)=>{var n=nt();t.exports={escape:rt(),evaluate:it(),interpolate:et(),variable:``,imports:{_:{escape:n}}}})),ot=t(((e,t)=>{var n=j(),r=Je(),i=Xe(),a=Ze(),o=Qe(),s=$e(),c=Ye(),l=C(),u=v(),d=et(),f=at(),p=g(),m="Invalid `variable` option passed into `_.template`",h="Invalid `imports` option passed into `_.template`",_=/\b__p \+= '';/g,y=/\b(__p \+=) '' \+/g,b=/(__e\(.*?\)|\b__t\)) \+\n'';/g,x=/[()=,{}\[\]\/\s]/,S=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,w=/($^)/,T=/['\n\r\u2028\u2029\\]/g,E=Object.prototype.hasOwnProperty;function D(e,t,g){var v=f.imports._.templateSettings||f;g&&l(e,t,g)&&(t=void 0),e=p(e),t=r({},t,v,o);var C=r({},t.imports,v.imports,o),D=u(C),O=a(C,D);n(D,function(e){if(x.test(e))throw Error(h)});var k,A,j=0,M=t.interpolate||w,N=`__p += '`,P=RegExp((t.escape||w).source+`|`+M.source+`|`+(M===d?S:w).source+`|`+(t.evaluate||w).source+`|$`,`g`),F=E.call(t,`sourceURL`)?`//# sourceURL=`+(t.sourceURL+``).replace(/\s/g,` `)+`
3
3
  `:``;e.replace(P,function(t,n,r,i,a,o){return r||=i,N+=e.slice(j,o).replace(T,s),n&&(k=!0,N+=`' +
4
4
  __e(`+n+`) +
@@ -1 +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]=`9e1704ba-2f16-4c44-9dcb-012d5f9bc41b`,e._sentryDebugIdIdentifier=`sentry-dbid-9e1704ba-2f16-4c44-9dcb-012d5f9bc41b`)}catch{}})();import{s as e,t}from"./react-C9lG_SsT.js";import{m as n}from"./hooks-C-BDQ6Hs.js";import{s as r}from"./config-B3HuCo0y.js";import{Kt as i,Ut as a}from"./index-CuDhPtkB.js";var o=e(t(),1),s=e=>{if(e!=null){if(typeof e==`string`)return e;throw TypeError(`Expected value to be null, undefined, or a string`)}},c=e=>{if(e.startsWith(`/`)){let{adminRoot:t}=n();return window.location.origin+t.replace(/\/$/,``)+e}return e};function l({requestOptions:e}={}){let{data:t}=r({requestOptions:e}),{data:n}=i({requestOptions:e}),l=t?.config?.pintura,[u,d,f]=a(n?.settings??null,[`pintura`,`pintura_js_url`,`pintura_css_url`]),p,m;return u&&(p=l?.js||s(d),m=l?.css||s(f)),(0,o.useMemo)(()=>!p||!m?null:{jsUrl:c(p),cssUrl:c(m)},[p,m])}export{l as t};
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]=`9e1704ba-2f16-4c44-9dcb-012d5f9bc41b`,e._sentryDebugIdIdentifier=`sentry-dbid-9e1704ba-2f16-4c44-9dcb-012d5f9bc41b`)}catch{}})();import{s as e,t}from"./react-C9lG_SsT.js";import{m as n}from"./hooks-0r7qxGEo.js";import{s as r}from"./config-CRAZ4Civ.js";import{Kt as i,Ut as a}from"./index-RuRs_qGS.js";var o=e(t(),1),s=e=>{if(e!=null){if(typeof e==`string`)return e;throw TypeError(`Expected value to be null, undefined, or a string`)}},c=e=>{if(e.startsWith(`/`)){let{adminRoot:t}=n();return window.location.origin+t.replace(/\/$/,``)+e}return e};function l({requestOptions:e}={}){let{data:t}=r({requestOptions:e}),{data:n}=i({requestOptions:e}),l=t?.config?.pintura,[u,d,f]=a(n?.settings??null,[`pintura`,`pintura_js_url`,`pintura_css_url`]),p,m;return u&&(p=l?.js||s(d),m=l?.css||s(f)),(0,o.useMemo)(()=>!p||!m?null:{jsUrl:c(p),cssUrl:c(m)},[p,m])}export{l as t};
@@ -1 +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]=`3003e92f-cf93-4a1a-b778-c50c15e6368d`,e._sentryDebugIdIdentifier=`sentry-dbid-3003e92f-cf93-4a1a-b778-c50c15e6368d`)}catch{}})();import{s as e,t}from"./react-C9lG_SsT.js";import{N as n,P as r}from"./framework-provider-CIvHFnik.js";import{g as i,m as a}from"./hooks-C-BDQ6Hs.js";import{t as o}from"./preload-helper-Ba4JejZL.js";import{Ut as s}from"./index-CuDhPtkB.js";import{n as c}from"./global-data-context-ogIy0FUG.js";var l=e(t(),1);function u(){let{config:e,settings:t}=c(),u=i(),[d]=s(t,[`pintura`]),[f,p]=(0,l.useState)(!1),[m,h]=(0,l.useState)(!1),[g,_]=(0,l.useState)(!1),v=(0,l.useRef)(!1),[y]=s(t,[`pintura_js_url`]),[b]=s(t,[`pintura_css_url`]),x=d&&f&&m||!1,S=e?.pintura;(0,l.useEffect)(()=>{let e=S?.js?S?.js:y||null;if(e){if(e.startsWith(`/`)){let{adminRoot:t}=a();e=window.location.origin+t.replace(/\/$/,``)+e}if(window.pintura){p(!0);return}try{let t=new URL(e),r=`${t.protocol}//${t.host}${t.pathname}`;o(()=>import(r),[],import.meta.url).then(()=>{p(!0)}).catch(e=>{n(e)})}catch(e){n(e)}}},[y,S?.js]),(0,l.useEffect)(()=>{let e=S?.css?S?.css:b||null;if(e){if(e.startsWith(`/`)){let{adminRoot:t}=a();e=window.location.origin+t.replace(/\/$/,``)+e}try{if(document.querySelector(`link[href="${e}"]`))h(!0);else{let t=document.createElement(`link`);t.rel=`stylesheet`,t.type=`text/css`,t.href=e,t.onload=()=>{h(!0)},document.head.appendChild(t)}}catch(e){n(e)}}},[b,S?.css]);let C=(0,l.useCallback)(({image:e,handleSave:t})=>{if(e&&x){let n=new URL(e);n.searchParams.has(`v`)||n.searchParams.set(`v`,Date.now().toString());let i=n.href,a=window.pintura.openDefaultEditor({src:i,enableTransparencyGrid:!0,util:`crop`,utils:[`crop`,`filter`,`finetune`,`redact`,`annotate`,`trim`,`frame`,`resize`],frameOptions:[[void 0,e=>e.labelNone],[`solidSharp`,e=>e.frameLabelMatSharp],[`solidRound`,e=>e.frameLabelMatRound],[`lineSingle`,e=>e.frameLabelLineSingle],[`hook`,e=>e.frameLabelCornerHooks],[`polaroid`,e=>e.frameLabelPolaroid]],cropSelectPresetFilter:`landscape`,cropSelectPresetOptions:[[void 0,`Custom`],[1,`Square`],[2/1,`2:1`],[3/2,`3:2`],[4/3,`4:3`],[16/10,`16:10`],[16/9,`16:9`],[1/2,`1:2`],[2/3,`2:3`],[3/4,`3:4`],[10/16,`10:16`],[9/16,`9:16`]],locale:{labelButtonExport:`Save and close`},previewPad:!0,willClose:()=>v.current?(_(!1),!0):!1});a.on(`loaderror`,()=>{r(`Pintura editor failed to load`)}),a.on(`process`,e=>{Promise.resolve(t(e.dest)).catch(u)}),_(!0)}},[u,x]);return(0,l.useEffect)(()=>{let e=e=>{e.key===`Escape`&&e.stopPropagation()};if(!g)return;let t=e=>{e.target instanceof Element&&e.target.closest(`.PinturaModal button[title="Close"]`)&&(v.current=!0)};return window.addEventListener(`click`,t,{capture:!0}),window.addEventListener(`keydown`,e,{capture:!0}),()=>{window.removeEventListener(`click`,t,{capture:!0}),window.removeEventListener(`keydown`,e,{capture:!0})}},[g]),{isEnabled:x,openEditor:C}}export{u as t};
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]=`2fc19042-04f3-4e4a-a82d-ae61233a1e1c`,e._sentryDebugIdIdentifier=`sentry-dbid-2fc19042-04f3-4e4a-a82d-ae61233a1e1c`)}catch{}})();import{s as e,t}from"./react-C9lG_SsT.js";import{N as n,P as r}from"./framework-provider-CIvHFnik.js";import{g as i,m as a}from"./hooks-0r7qxGEo.js";import{t as o}from"./preload-helper-Ba4JejZL.js";import{Ut as s}from"./index-RuRs_qGS.js";import{n as c}from"./global-data-context-ogIy0FUG.js";var l=e(t(),1);function u(){let{config:e,settings:t}=c(),u=i(),[d]=s(t,[`pintura`]),[f,p]=(0,l.useState)(!1),[m,h]=(0,l.useState)(!1),[g,_]=(0,l.useState)(!1),v=(0,l.useRef)(!1),[y]=s(t,[`pintura_js_url`]),[b]=s(t,[`pintura_css_url`]),x=d&&f&&m||!1,S=e?.pintura;(0,l.useEffect)(()=>{let e=S?.js?S?.js:y||null;if(e){if(e.startsWith(`/`)){let{adminRoot:t}=a();e=window.location.origin+t.replace(/\/$/,``)+e}if(window.pintura){p(!0);return}try{let t=new URL(e),r=`${t.protocol}//${t.host}${t.pathname}`;o(()=>import(r),[],import.meta.url).then(()=>{p(!0)}).catch(e=>{n(e)})}catch(e){n(e)}}},[y,S?.js]),(0,l.useEffect)(()=>{let e=S?.css?S?.css:b||null;if(e){if(e.startsWith(`/`)){let{adminRoot:t}=a();e=window.location.origin+t.replace(/\/$/,``)+e}try{if(document.querySelector(`link[href="${e}"]`))h(!0);else{let t=document.createElement(`link`);t.rel=`stylesheet`,t.type=`text/css`,t.href=e,t.onload=()=>{h(!0)},document.head.appendChild(t)}}catch(e){n(e)}}},[b,S?.css]);let C=(0,l.useCallback)(({image:e,handleSave:t})=>{if(e&&x){let n=new URL(e);n.searchParams.has(`v`)||n.searchParams.set(`v`,Date.now().toString());let i=n.href,a=window.pintura.openDefaultEditor({src:i,enableTransparencyGrid:!0,util:`crop`,utils:[`crop`,`filter`,`finetune`,`redact`,`annotate`,`trim`,`frame`,`resize`],frameOptions:[[void 0,e=>e.labelNone],[`solidSharp`,e=>e.frameLabelMatSharp],[`solidRound`,e=>e.frameLabelMatRound],[`lineSingle`,e=>e.frameLabelLineSingle],[`hook`,e=>e.frameLabelCornerHooks],[`polaroid`,e=>e.frameLabelPolaroid]],cropSelectPresetFilter:`landscape`,cropSelectPresetOptions:[[void 0,`Custom`],[1,`Square`],[2/1,`2:1`],[3/2,`3:2`],[4/3,`4:3`],[16/10,`16:10`],[16/9,`16:9`],[1/2,`1:2`],[2/3,`2:3`],[3/4,`3:4`],[10/16,`10:16`],[9/16,`9:16`]],locale:{labelButtonExport:`Save and close`},previewPad:!0,willClose:()=>v.current?(_(!1),!0):!1});a.on(`loaderror`,()=>{r(`Pintura editor failed to load`)}),a.on(`process`,e=>{Promise.resolve(t(e.dest)).catch(u)}),_(!0)}},[u,x]);return(0,l.useEffect)(()=>{let e=e=>{e.key===`Escape`&&e.stopPropagation()};if(!g)return;let t=e=>{e.target instanceof Element&&e.target.closest(`.PinturaModal button[title="Close"]`)&&(v.current=!0)};return window.addEventListener(`click`,t,{capture:!0}),window.addEventListener(`keydown`,e,{capture:!0}),()=>{window.removeEventListener(`click`,t,{capture:!0}),window.removeEventListener(`keydown`,e,{capture:!0})}},[g]),{isEnabled:x,openEditor:C}}export{u as t};
@@ -1 +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]=`59bb030d-799a-427c-afed-74c16269c525`,e._sentryDebugIdIdentifier=`sentry-dbid-59bb030d-799a-427c-afed-74c16269c525`)}catch{}})();import{s as e,t}from"./react-C9lG_SsT.js";import{i as n}from"./currency-DgOqjQBh.js";import{i as r,l as i,s as a}from"./stats-CHOikfoP.js";var o=e(t(),1),s=e=>{let{data:t,isLoading:s}=i(e),{data:c,isLoading:l}=a(e),{data:u,isLoading:d}=r(),f=(0,o.useMemo)(()=>t?.stats||[],[t]),p=(0,o.useMemo)(()=>c?.stats.length===0?{free_members:0,paid_members:0,mrr:0}:c?.stats[0],[c]),{selectedCurrency:m,currencySymbol:h}=(0,o.useMemo)(()=>{if(u?.stats&&u?.meta?.totals){let e=u.meta.totals,t=e[0];if(!t)return{selectedCurrency:`usd`,currencySymbol:n(`usd`)};for(let n of e)n.mrr>t.mrr&&(t=n);let r=t.currency;return{selectedCurrency:r,currencySymbol:n(r)}}return{selectedCurrency:`usd`,currencySymbol:n(`usd`)}},[u]);return{isLoading:(0,o.useMemo)(()=>s||l||d,[s,l,d]),stats:f,totals:p,selectedCurrency:m,currencySymbol:h}};export{s as t};
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]=`59bb030d-799a-427c-afed-74c16269c525`,e._sentryDebugIdIdentifier=`sentry-dbid-59bb030d-799a-427c-afed-74c16269c525`)}catch{}})();import{s as e,t}from"./react-C9lG_SsT.js";import{i as n}from"./currency-DgOqjQBh.js";import{i as r,l as i,s as a}from"./stats-BL_FJ7Ns.js";var o=e(t(),1),s=e=>{let{data:t,isLoading:s}=i(e),{data:c,isLoading:l}=a(e),{data:u,isLoading:d}=r(),f=(0,o.useMemo)(()=>t?.stats||[],[t]),p=(0,o.useMemo)(()=>c?.stats.length===0?{free_members:0,paid_members:0,mrr:0}:c?.stats[0],[c]),{selectedCurrency:m,currencySymbol:h}=(0,o.useMemo)(()=>{if(u?.stats&&u?.meta?.totals){let e=u.meta.totals,t=e[0];if(!t)return{selectedCurrency:`usd`,currencySymbol:n(`usd`)};for(let n of e)n.mrr>t.mrr&&(t=n);let r=t.currency;return{selectedCurrency:r,currencySymbol:n(r)}}return{selectedCurrency:`usd`,currencySymbol:n(`usd`)}},[u]);return{isLoading:(0,o.useMemo)(()=>s||l||d,[s,l,d]),stats:f,totals:p,selectedCurrency:m,currencySymbol:h}};export{s as t};
@@ -1 +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]=`e0a588be-b15e-4dea-95cf-4318f4fb95ef`,e._sentryDebugIdIdentifier=`sentry-dbid-e0a588be-b15e-4dea-95cf-4318f4fb95ef`)}catch{}})();import{s as e,t}from"./react-C9lG_SsT.js";import{t as n}from"./jsx-runtime-Bm2_KH-0.js";import{L as r,U as i}from"./shade-provider-DvrXKKQZ.js";import{Wt as a}from"./button-CTHYSI-d.js";import{S as o,i as s,n as c,r as l,x as u}from"./chart-DnWIZbyZ.js";import{n as d,t as f}from"./PolarAngleAxis-DQPGiC26.js";import{n as p,t as m}from"./RadialBarChart-DRBFj-Lg.js";import{t as h}from"./empty-indicator-BhVwqSVH.js";import{Yt as g}from"./index-CuDhPtkB.js";import{t as _}from"./clean-tracked-url-iZ-wi2Sn.js";import{n as v}from"./email-sending-status-context-7yrRlgjQ.js";import{r as y}from"./links-jD8AkkIu.js";import{n as b}from"./post-analytics-context-v4FXmVDC.js";import{t as x}from"./email-stats-polling-DCLzZSEX.js";var S=n(),C=({children:e,className:t,description:n,failedDescription:r=`There is no newsletter performance data for this post`,failedTitle:i=`No newsletter data available`,title:o})=>{let{isNewsletterDataHidden:s,newsletterDataHiddenReason:c}=v();return s?(0,S.jsx)(h,{className:`py-20`,description:c===`failed`?r:n,title:c===`failed`?i:o,children:(0,S.jsx)(a,{strokeWidth:1.5})}):e?(0,S.jsx)(`div`,{className:t,children:e}):null},w=({config:e,data:t,percentageValue:n,percentageLabel:a,className:h,tooltip:g=!0,size:_=`responsive`})=>{let v=e=>{if(typeof e==`number`)return e;if(typeof e==`string`){let t=Number(e);return Number.isFinite(t)?t:0}return 0},y=(()=>{switch(_){case`sm`:return{barWidth:28,innerRadiusStart:t.length>1?42:56,fontSize:{percentage:`1.2rem`,label:`0.8rem`}};case`md`:return{barWidth:36,innerRadiusStart:t.length>1?60:72,fontSize:{percentage:`1.4rem`,label:`0.9rem`}};case`lg`:return{barWidth:46,innerRadiusStart:t.length>1?72:94,fontSize:{percentage:`1.6rem`,label:`1rem`}};default:return{barWidth:46,innerRadiusStart:t.length>1?72:94,fontSize:{percentage:`1.6rem`,label:`1rem`}}}})(),b={innerRadius:y.innerRadiusStart,outerRadius:y.innerRadiusStart+y.barWidth,startAngle:90,endAngle:-270};return(0,S.jsx)(c,{className:r(`mx-auto`,h),config:e,children:(0,S.jsxs)(m,{data:t,endAngle:b.endAngle,innerRadius:b.innerRadius,outerRadius:b.outerRadius,startAngle:b.startAngle,children:[(0,S.jsxs)(`defs`,{children:[(0,S.jsxs)(`radialGradient`,{cx:`30%`,cy:`30%`,id:`gradientPurple`,r:`70%`,children:[(0,S.jsx)(`stop`,{offset:`0%`,stopColor:`var(--chart-purple)`,stopOpacity:.5}),(0,S.jsx)(`stop`,{offset:`100%`,stopColor:`var(--chart-purple)`,stopOpacity:1})]}),(0,S.jsxs)(`radialGradient`,{cx:`30%`,cy:`30%`,id:`gradientBlue`,r:`70%`,children:[(0,S.jsx)(`stop`,{offset:`0%`,stopColor:`var(--chart-blue)`,stopOpacity:.5}),(0,S.jsx)(`stop`,{offset:`100%`,stopColor:`var(--chart-blue)`,stopOpacity:1})]}),(0,S.jsxs)(`radialGradient`,{cx:`30%`,cy:`30%`,id:`gradientTeal`,r:`70%`,children:[(0,S.jsx)(`stop`,{offset:`0%`,stopColor:`var(--chart-teal)`,stopOpacity:.5}),(0,S.jsx)(`stop`,{offset:`100%`,stopColor:`var(--chart-teal)`,stopOpacity:1})]}),(0,S.jsxs)(`radialGradient`,{cx:`30%`,cy:`30%`,id:`gradientGray`,r:`70%`,children:[(0,S.jsx)(`stop`,{offset:`0%`,stopColor:`var(--chart-gray)`,stopOpacity:.5}),(0,S.jsx)(`stop`,{offset:`100%`,stopColor:`var(--chart-gray)`,stopOpacity:1})]})]}),(0,S.jsx)(f,{angleAxisId:0,domain:[0,1],tick:!1,type:`number`}),(0,S.jsx)(p,{cornerRadius:10,dataKey:`value`,minPointSize:-2,background:!0,children:t.length>1&&(0,S.jsx)(u,{className:`fill-foreground opacity-60`,dataKey:`datatype`,fontSize:11,position:`insideStart`})}),(0,S.jsx)(d,{axisLine:!1,tick:!1,tickLine:!1,children:(0,S.jsx)(o,{content:({viewBox:e})=>{if(e&&`cx`in e&&`cy`in e)return(0,S.jsxs)(`text`,{dominantBaseline:`middle`,textAnchor:`middle`,x:e.cx,y:e.cy,children:[n&&(0,S.jsx)(`tspan`,{className:`fill-foreground text-[1.6rem] font-semibold tracking-tight`,x:e.cx,y:(e.cy||0)-6,children:n}),a&&(0,S.jsx)(`tspan`,{className:`fill-muted-foreground font-medium`,x:e.cx,y:(e.cy||0)+14,children:a})]})}})}),g&&(0,S.jsx)(l,{content:(0,S.jsx)(s,{formatter:(e,t,n)=>{let r=n.payload;return(0,S.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,S.jsx)(`div`,{className:`size-2 rounded-full opacity-50`,style:{backgroundColor:r?.color}}),(0,S.jsx)(`div`,{className:`text-xs text-muted-foreground`,children:r?.datatype}),(0,S.jsx)(`div`,{className:`ml-3 font-mono text-xs`,children:i(v(e))})]})},nameKey:`datatype`,hideLabel:!0}),cursor:!1,isAnimationActive:!1})]})})},T=(e,t)=>e.find(e=>e.link.link_id===t),E=e=>{let t=(e?.links.map(e=>({link:e.link,count:e.count?.clicks||0}))||[]).map(e=>({...e,link:{...e.link,originalTo:e.link.to,to:_(e.link.to,!1),title:_(e.link.to,!0)}})).reduce((e,t)=>(e[t.link.title]?(e[t.link.title].count||(e[t.link.title].count=0),e[t.link.title].count+=t.count??0):e[t.link.title]=t,e),{});return Object.values(t).sort((e,t)=>{let n=e.count||0;return(t.count||0)-n})},D=e(t(),1),O=({pausePolling:e=!1}={})=>{let{post:t,postId:n}=b(),{isNewsletterDataHidden:r}=v(),i=g(),{data:a,isLoading:o,refetch:s}=y({...e?{}:x(()=>t?.email),enabled:!!i&&!r,searchParams:{filter:`post_id:'${n}'`}});return{topLinks:(0,D.useMemo)(()=>E(a),[a]),isLoading:o,refetch:s}};export{C as i,T as n,w as r,O as t};
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]=`2f478ab0-ce7a-4199-9b13-ae59b003a867`,e._sentryDebugIdIdentifier=`sentry-dbid-2f478ab0-ce7a-4199-9b13-ae59b003a867`)}catch{}})();import{s as e,t}from"./react-C9lG_SsT.js";import{t as n}from"./jsx-runtime-Bm2_KH-0.js";import{L as r,U as i}from"./shade-provider-DvrXKKQZ.js";import{Wt as a}from"./button-CTHYSI-d.js";import{S as o,i as s,n as c,r as l,x as u}from"./chart-DnWIZbyZ.js";import{n as d,t as f}from"./PolarAngleAxis-DQPGiC26.js";import{n as p,t as m}from"./RadialBarChart-DRBFj-Lg.js";import{t as h}from"./empty-indicator-BhVwqSVH.js";import{Yt as g}from"./index-RuRs_qGS.js";import{t as _}from"./clean-tracked-url-iZ-wi2Sn.js";import{n as v}from"./email-sending-status-context-7yrRlgjQ.js";import{r as y}from"./links-C8RnEJVJ.js";import{n as b}from"./post-analytics-context-v4FXmVDC.js";import{t as x}from"./email-stats-polling-DCLzZSEX.js";var S=n(),C=({children:e,className:t,description:n,failedDescription:r=`There is no newsletter performance data for this post`,failedTitle:i=`No newsletter data available`,title:o})=>{let{isNewsletterDataHidden:s,newsletterDataHiddenReason:c}=v();return s?(0,S.jsx)(h,{className:`py-20`,description:c===`failed`?r:n,title:c===`failed`?i:o,children:(0,S.jsx)(a,{strokeWidth:1.5})}):e?(0,S.jsx)(`div`,{className:t,children:e}):null},w=({config:e,data:t,percentageValue:n,percentageLabel:a,className:h,tooltip:g=!0,size:_=`responsive`})=>{let v=e=>{if(typeof e==`number`)return e;if(typeof e==`string`){let t=Number(e);return Number.isFinite(t)?t:0}return 0},y=(()=>{switch(_){case`sm`:return{barWidth:28,innerRadiusStart:t.length>1?42:56,fontSize:{percentage:`1.2rem`,label:`0.8rem`}};case`md`:return{barWidth:36,innerRadiusStart:t.length>1?60:72,fontSize:{percentage:`1.4rem`,label:`0.9rem`}};case`lg`:return{barWidth:46,innerRadiusStart:t.length>1?72:94,fontSize:{percentage:`1.6rem`,label:`1rem`}};default:return{barWidth:46,innerRadiusStart:t.length>1?72:94,fontSize:{percentage:`1.6rem`,label:`1rem`}}}})(),b={innerRadius:y.innerRadiusStart,outerRadius:y.innerRadiusStart+y.barWidth,startAngle:90,endAngle:-270};return(0,S.jsx)(c,{className:r(`mx-auto`,h),config:e,children:(0,S.jsxs)(m,{data:t,endAngle:b.endAngle,innerRadius:b.innerRadius,outerRadius:b.outerRadius,startAngle:b.startAngle,children:[(0,S.jsxs)(`defs`,{children:[(0,S.jsxs)(`radialGradient`,{cx:`30%`,cy:`30%`,id:`gradientPurple`,r:`70%`,children:[(0,S.jsx)(`stop`,{offset:`0%`,stopColor:`var(--chart-purple)`,stopOpacity:.5}),(0,S.jsx)(`stop`,{offset:`100%`,stopColor:`var(--chart-purple)`,stopOpacity:1})]}),(0,S.jsxs)(`radialGradient`,{cx:`30%`,cy:`30%`,id:`gradientBlue`,r:`70%`,children:[(0,S.jsx)(`stop`,{offset:`0%`,stopColor:`var(--chart-blue)`,stopOpacity:.5}),(0,S.jsx)(`stop`,{offset:`100%`,stopColor:`var(--chart-blue)`,stopOpacity:1})]}),(0,S.jsxs)(`radialGradient`,{cx:`30%`,cy:`30%`,id:`gradientTeal`,r:`70%`,children:[(0,S.jsx)(`stop`,{offset:`0%`,stopColor:`var(--chart-teal)`,stopOpacity:.5}),(0,S.jsx)(`stop`,{offset:`100%`,stopColor:`var(--chart-teal)`,stopOpacity:1})]}),(0,S.jsxs)(`radialGradient`,{cx:`30%`,cy:`30%`,id:`gradientGray`,r:`70%`,children:[(0,S.jsx)(`stop`,{offset:`0%`,stopColor:`var(--chart-gray)`,stopOpacity:.5}),(0,S.jsx)(`stop`,{offset:`100%`,stopColor:`var(--chart-gray)`,stopOpacity:1})]})]}),(0,S.jsx)(f,{angleAxisId:0,domain:[0,1],tick:!1,type:`number`}),(0,S.jsx)(p,{cornerRadius:10,dataKey:`value`,minPointSize:-2,background:!0,children:t.length>1&&(0,S.jsx)(u,{className:`fill-foreground opacity-60`,dataKey:`datatype`,fontSize:11,position:`insideStart`})}),(0,S.jsx)(d,{axisLine:!1,tick:!1,tickLine:!1,children:(0,S.jsx)(o,{content:({viewBox:e})=>{if(e&&`cx`in e&&`cy`in e)return(0,S.jsxs)(`text`,{dominantBaseline:`middle`,textAnchor:`middle`,x:e.cx,y:e.cy,children:[n&&(0,S.jsx)(`tspan`,{className:`fill-foreground text-[1.6rem] font-semibold tracking-tight`,x:e.cx,y:(e.cy||0)-6,children:n}),a&&(0,S.jsx)(`tspan`,{className:`fill-muted-foreground font-medium`,x:e.cx,y:(e.cy||0)+14,children:a})]})}})}),g&&(0,S.jsx)(l,{content:(0,S.jsx)(s,{formatter:(e,t,n)=>{let r=n.payload;return(0,S.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,S.jsx)(`div`,{className:`size-2 rounded-full opacity-50`,style:{backgroundColor:r?.color}}),(0,S.jsx)(`div`,{className:`text-xs text-muted-foreground`,children:r?.datatype}),(0,S.jsx)(`div`,{className:`ml-3 font-mono text-xs`,children:i(v(e))})]})},nameKey:`datatype`,hideLabel:!0}),cursor:!1,isAnimationActive:!1})]})})},T=(e,t)=>e.find(e=>e.link.link_id===t),E=e=>{let t=(e?.links.map(e=>({link:e.link,count:e.count?.clicks||0}))||[]).map(e=>({...e,link:{...e.link,originalTo:e.link.to,to:_(e.link.to,!1),title:_(e.link.to,!0)}})).reduce((e,t)=>(e[t.link.title]?(e[t.link.title].count||(e[t.link.title].count=0),e[t.link.title].count+=t.count??0):e[t.link.title]=t,e),{});return Object.values(t).sort((e,t)=>{let n=e.count||0;return(t.count||0)-n})},D=e(t(),1),O=({pausePolling:e=!1}={})=>{let{post:t,postId:n}=b(),{isNewsletterDataHidden:r}=v(),i=g(),{data:a,isLoading:o,refetch:s}=y({...e?{}:x(()=>t?.email),enabled:!!i&&!r,searchParams:{filter:`post_id:'${n}'`}});return{topLinks:(0,D.useMemo)(()=>E(a),[a]),isLoading:o,refetch:s}};export{C as i,T as n,w as r,O as t};
@@ -1 +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]=`dd26a42f-af63-490c-95dc-d7b0e74c2dcc`,e._sentryDebugIdIdentifier=`sentry-dbid-dd26a42f-af63-490c-95dc-d7b0e74c2dcc`)}catch{}})();import{s as e,t}from"./react-C9lG_SsT.js";import{t as n}from"./jsx-runtime-Bm2_KH-0.js";import{E as r,t as i}from"./button-CTHYSI-d.js";import{c as a}from"./routes-DrnhmKTT.js";import{n as o}from"./loading-indicator-DaRyGrxv.js";import{l as s,u as c}from"./content-formatters-VqvNA7Pv.js";import{G as l,U as u,k as d}from"./use-activity-pub-queries-Gy9_locM.js";var f=e(t(),1),p=n(),m=({object:e,onReply:t,onReplyError:n,className:r,...i})=>{let{data:o}=u(`index`),[l,d]=(0,f.useState)(!1);if(!o)return null;let m=e.attributedTo,h=`Reply...`;return m?.preferredUsername&&m?.id&&(h=`Reply to ${c(m)}...`),(0,p.jsxs)(p.Fragment,{children:[(0,p.jsxs)(`div`,{className:`flex w-full cursor-pointer gap-x-3 py-6 ${r||``}`,onClick:()=>d(!0),...i,children:[(0,p.jsx)(s,{author:o}),(0,p.jsx)(`div`,{className:`flex w-full items-center`,children:(0,p.jsx)(`div`,{className:`w-full text-[1.5rem] text-gray-500 transition-colors dark:text-gray-700`,children:h})})]}),l&&(0,p.jsx)(a,{open:l,replyTo:{object:e,actor:e.attributedTo},onOpenChange:e=>{d(e)},onReply:()=>{t?.(),d(!1)},onReplyError:()=>{n?.()}})]})},h=({last:e})=>(0,p.jsxs)(`div`,{className:`relative mt-[-5px] py-5`,children:[(0,p.jsxs)(`div`,{className:`flex h-12 grow items-center gap-2 rounded-lg border border-gray-200 p-2 px-[10px] text-gray-600`,children:[(0,p.jsx)(r,{size:18,strokeWidth:1.25}),`This post has been deleted`]}),!e&&(0,p.jsx)(`div`,{className:`absolute top-[70px] bottom-0 left-[18px] z-0 mb-[-13px] w-[2px] rounded-sm bg-gray-200`})]}),g=({count:e,onClick:t,variant:n=`default`,preserveScroll:r=!0,loading:a=!1})=>{let s=(0,f.useRef)(null),c=()=>{if(e&&e>0)return`Show ${e} more ${e===1?`reply`:`replies`}`;switch(n){case`expand`:return`Show replies`;case`loadMore`:return`Show more replies`;default:return`Show replies`}},l=()=>{if(r){let e=document.querySelector(`[data-scrollable-container]`),n=e?e.scrollTop:window.scrollY;t(),setTimeout(()=>{e?e.scrollTop=n:window.scrollTo(0,n)},0)}else t()};return(0,p.jsxs)(`div`,{ref:s,className:`mt-[-7px] flex items-center pb-3`,children:[(0,p.jsxs)(`div`,{className:`flex w-10 flex-col items-center justify-center gap-1`,children:[(0,p.jsx)(`div`,{className:`size-0.5 rounded-sm bg-gray-300`}),(0,p.jsx)(`div`,{className:`size-0.5 rounded-sm bg-gray-300`}),(0,p.jsx)(`div`,{className:`size-0.5 rounded-sm bg-gray-300`})]}),(0,p.jsx)(i,{className:`text-sm font-medium text-blue-600 hover:text-blue-800`,variant:`ghost`,onClick:e=>{e.preventDefault(),e.stopPropagation(),e.target.blur(),l()},children:a?(0,p.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,p.jsx)(o,{size:`sm`}),(0,p.jsx)(`span`,{children:`Loading...`})]}):c()})]})};function _(e,t={}){let{includeAncestors:n=!1}=t,{data:r,isLoading:i,loadMoreChildren:a,loadMoreChildReplies:o,hasMoreChildren:s,hasMoreChildReplies:c}=d(`index`,e);return{threadParents:n&&r?.ancestors?.chain?.map(l)||[],post:r?.post?l(r.post):void 0,processedReplies:(r?.children??[]).map(e=>({mainReply:l(e.post),chain:e.chain?e.chain.map(l):[]})),isLoading:i,loadMoreChildren:a,loadMoreChildReplies:o,hasMoreChildren:s,hasMoreChildReplies:c}}export{m as i,g as n,h as r,_ as t};
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]=`dd26a42f-af63-490c-95dc-d7b0e74c2dcc`,e._sentryDebugIdIdentifier=`sentry-dbid-dd26a42f-af63-490c-95dc-d7b0e74c2dcc`)}catch{}})();import{s as e,t}from"./react-C9lG_SsT.js";import{t as n}from"./jsx-runtime-Bm2_KH-0.js";import{E as r,t as i}from"./button-CTHYSI-d.js";import{c as a}from"./routes-DKfpFMfF.js";import{n as o}from"./loading-indicator-DaRyGrxv.js";import{l as s,u as c}from"./content-formatters-C08JJbUJ.js";import{G as l,U as u,k as d}from"./use-activity-pub-queries-BgR1USeY.js";var f=e(t(),1),p=n(),m=({object:e,onReply:t,onReplyError:n,className:r,...i})=>{let{data:o}=u(`index`),[l,d]=(0,f.useState)(!1);if(!o)return null;let m=e.attributedTo,h=`Reply...`;return m?.preferredUsername&&m?.id&&(h=`Reply to ${c(m)}...`),(0,p.jsxs)(p.Fragment,{children:[(0,p.jsxs)(`div`,{className:`flex w-full cursor-pointer gap-x-3 py-6 ${r||``}`,onClick:()=>d(!0),...i,children:[(0,p.jsx)(s,{author:o}),(0,p.jsx)(`div`,{className:`flex w-full items-center`,children:(0,p.jsx)(`div`,{className:`w-full text-[1.5rem] text-gray-500 transition-colors dark:text-gray-700`,children:h})})]}),l&&(0,p.jsx)(a,{open:l,replyTo:{object:e,actor:e.attributedTo},onOpenChange:e=>{d(e)},onReply:()=>{t?.(),d(!1)},onReplyError:()=>{n?.()}})]})},h=({last:e})=>(0,p.jsxs)(`div`,{className:`relative mt-[-5px] py-5`,children:[(0,p.jsxs)(`div`,{className:`flex h-12 grow items-center gap-2 rounded-lg border border-gray-200 p-2 px-[10px] text-gray-600`,children:[(0,p.jsx)(r,{size:18,strokeWidth:1.25}),`This post has been deleted`]}),!e&&(0,p.jsx)(`div`,{className:`absolute top-[70px] bottom-0 left-[18px] z-0 mb-[-13px] w-[2px] rounded-sm bg-gray-200`})]}),g=({count:e,onClick:t,variant:n=`default`,preserveScroll:r=!0,loading:a=!1})=>{let s=(0,f.useRef)(null),c=()=>{if(e&&e>0)return`Show ${e} more ${e===1?`reply`:`replies`}`;switch(n){case`expand`:return`Show replies`;case`loadMore`:return`Show more replies`;default:return`Show replies`}},l=()=>{if(r){let e=document.querySelector(`[data-scrollable-container]`),n=e?e.scrollTop:window.scrollY;t(),setTimeout(()=>{e?e.scrollTop=n:window.scrollTo(0,n)},0)}else t()};return(0,p.jsxs)(`div`,{ref:s,className:`mt-[-7px] flex items-center pb-3`,children:[(0,p.jsxs)(`div`,{className:`flex w-10 flex-col items-center justify-center gap-1`,children:[(0,p.jsx)(`div`,{className:`size-0.5 rounded-sm bg-gray-300`}),(0,p.jsx)(`div`,{className:`size-0.5 rounded-sm bg-gray-300`}),(0,p.jsx)(`div`,{className:`size-0.5 rounded-sm bg-gray-300`})]}),(0,p.jsx)(i,{className:`text-sm font-medium text-blue-600 hover:text-blue-800`,variant:`ghost`,onClick:e=>{e.preventDefault(),e.stopPropagation(),e.target.blur(),l()},children:a?(0,p.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,p.jsx)(o,{size:`sm`}),(0,p.jsx)(`span`,{children:`Loading...`})]}):c()})]})};function _(e,t={}){let{includeAncestors:n=!1}=t,{data:r,isLoading:i,loadMoreChildren:a,loadMoreChildReplies:o,hasMoreChildren:s,hasMoreChildReplies:c}=d(`index`,e);return{threadParents:n&&r?.ancestors?.chain?.map(l)||[],post:r?.post?l(r.post):void 0,processedReplies:(r?.children??[]).map(e=>({mainReply:l(e.post),chain:e.chain?e.chain.map(l):[]})),isLoading:i,loadMoreChildren:a,loadMoreChildReplies:o,hasMoreChildren:s,hasMoreChildReplies:c}}export{m as i,g as n,h as r,_ 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]=`8053d1fd-e7ea-40db-8f49-b0312ce5a623`,e._sentryDebugIdIdentifier=`sentry-dbid-8053d1fd-e7ea-40db-8f49-b0312ce5a623`)}catch{}})();import{s as e,t}from"./react-C9lG_SsT.js";import{t as n}from"./jsx-runtime-Bm2_KH-0.js";import{H as r,L as i}from"./shade-provider-DvrXKKQZ.js";import{t as a}from"./grid-BYJO9x_v.js";import{t as o}from"./inline-Qoyy4r2g.js";function s({status:e,progress:t},{estimate:n=null,preparingProgress:i=`count`}={}){let a=e===`preparing`?`preparing`:`submitting`,o=t?.completed??0,s=t?.total??0,c=null;if(s>0){let e=Math.min(100,Math.floor(o/s*100));c=a===`preparing`&&i===`percentage`?[e>0&&`${r(e)}% complete`,`${r(s)} total`].filter(Boolean).join(` · `):`${r(o)} of ${r(s)}`}return{phase:a,fractionComplete:s>0?o/s:null,text:[a===`preparing`?`Preparing emails`:`Sending emails`,c,n].filter(Boolean).join(` · `)}}var c=n(),l=6,u=2*Math.PI*l,d=({className:e,...t})=>(0,c.jsx)(`circle`,{className:i(`stroke-current`,e),cx:`8`,cy:`8`,r:l,strokeWidth:`2`,...t});function f({phase:e,fractionComplete:t,className:n}){if(e===`preparing`)return(0,c.jsxs)(`span`,{"aria-hidden":`true`,className:i(`relative size-3.5 shrink-0 text-chart-purple`,n),children:[(0,c.jsx)(`svg`,{className:`absolute inset-0 size-full`,fill:`none`,viewBox:`0 0 16 16`,children:(0,c.jsx)(d,{className:`opacity-25`})}),(0,c.jsx)(`svg`,{className:`absolute inset-0 size-full animate-spin [mask-image:conic-gradient(transparent_25%,#000)] [animation-duration:1.5s] motion-reduce:animate-none`,fill:`none`,viewBox:`0 0 16 16`,children:(0,c.jsx)(d,{})})]});let r=Math.min(1,Math.max(0,t??0));return(0,c.jsxs)(`svg`,{"aria-hidden":`true`,className:i(`size-3.5 shrink-0 -rotate-90 text-chart-purple`,n),fill:`none`,viewBox:`0 0 16 16`,children:[(0,c.jsx)(d,{className:`opacity-25`}),(0,c.jsx)(d,{strokeDasharray:u,strokeDashoffset:u*(1-r)})]})}var p=e(t(),1);function m(e,t=!0){let[n,r]=(0,p.useState)(null),[i,a]=(0,p.useState)(0);return t&&(n===null||n.value!==e)&&(n!==null&&a(i+1),r({value:e})),i}var h=`animate-in fade-in-0 slide-in-from-bottom-1 duration-300 ease-out motion-reduce:animate-none`,g=(e,t)=>e?.phase===t?.phase&&e?.fractionComplete===t?.fractionComplete&&e?.text===t?.text;function _({line:e,appear:t=!1,ready:n=!0,announce:r=!0,className:s,"data-testid":l}){let[u,d]=(0,p.useState)(e);e&&!g(e,u)&&d(e);let _=!e&&u!==null,v=m(u?.phase??null,n);return(0,p.useEffect)(()=>{if(!_)return;let e=setTimeout(()=>d(null),600);return()=>clearTimeout(e)},[_]),u?(0,c.jsx)(a,{className:i(`[transition:opacity_250ms_ease-out,grid-template-rows_400ms_cubic-bezier(0.4,0,0.2,1)_150ms] motion-reduce:transition-none`,_?`grid-rows-[0fr] opacity-0`:`grid-rows-[1fr]`,s),gap:`none`,role:r?`status`:void 0,children:(0,c.jsx)(`div`,{className:i(`min-h-0 overflow-hidden`,(t||v>0)&&h),children:(0,c.jsxs)(o,{className:`leading-[1.65em]`,"data-testid":l,gap:`xs`,children:[(0,c.jsx)(f,{fractionComplete:u.fractionComplete,phase:u.phase}),(0,c.jsx)(`span`,{className:`email-sending-shimmer font-medium tabular-nums`,children:u.text})]})},v)}):null}var v=10,y=e=>e<=40?0:Math.round(e/60);function b(e,t){return t!==null&&y(e-v)<=t&&t<=y(e+v)?t:y(e)}function x(e){let t=e?.sending,n=e?`${e.id}:${e.sending.status}`:null,i=t?.status===`submitting`?t.progress.estimated_seconds_remaining:null,[a,o]=(0,p.useState)({key:null,minutes:null}),s=i===null?null:b(i,a.key===n?a.minutes:null);return(a.key!==n||a.minutes!==s)&&o({key:n,minutes:s}),s===null?null:s===0?`Less than 1 minute left`:`About ${r(s)} ${s===1?`minute`:`minutes`} left`}export{s as i,_ as n,m as r,x as t};
@@ -1 +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]=`6f0a72a5-dde2-4eb5-a9eb-cf8ac05688db`,e._sentryDebugIdIdentifier=`sentry-dbid-6f0a72a5-dde2-4eb5-a9eb-cf8ac05688db`)}catch{}})();import{s as e,t}from"./react-C9lG_SsT.js";import{g as n}from"./hooks-C-BDQ6Hs.js";import{t as r}from"./use-form-ElCUnbKi.js";import{P as i}from"./shade-provider-DvrXKKQZ.js";import{Jt as a}from"./index-CuDhPtkB.js";import{n as o}from"./global-data-context-ogIy0FUG.js";var s=e(t(),1),c=({savingDelay:e,onValidate:t}={})=>{let c=(0,s.useRef)(null),{siteData:l,settings:u}=o(),{mutateAsync:d}=a(),f=n(),[p,m]=(0,s.useState)(!1),{formState:h,saveState:g,handleSave:_,updateForm:v,setFormState:y,reset:b,validate:x,errors:S,clearError:C,okProps:w}=r({initialState:u||[],savingDelay:e,onSave:async()=>{await d?.(E())},onSaveError:f,onValidate:t}),{setGlobalDirtyState:T}=i();(0,s.useEffect)(()=>{T(h.some(e=>e.dirty))},[h,T]),(0,s.useEffect)(()=>{p&&c.current&&c.current.focus()},[p]),(0,s.useEffect)(()=>{(!p||g===`saving`)&&y(()=>u)},[u]);let E=()=>h?.filter(e=>e.dirty)?.map(e=>({key:e.key,value:e.value}));return{localSettings:h,isEditing:p,saveState:g,focusRef:c,siteData:l,handleSave:async()=>{let e=await _();return e&&m(!1),e},handleCancel:()=>{b(),m(!1)},updateSetting:(0,s.useCallback)((e,t)=>{v(n=>n.some(t=>t.key===e)?n.map(n=>n.key===e?{...n,value:t,dirty:!0}:n):[...n,{key:e,value:t,dirty:!0}])},[v]),handleEditingChange:e=>{m(e)},validate:x,errors:S,clearError:C,okProps:w}};export{c as t};
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]=`fa9e9f54-0bd4-4507-97ed-9d74ed70b1db`,e._sentryDebugIdIdentifier=`sentry-dbid-fa9e9f54-0bd4-4507-97ed-9d74ed70b1db`)}catch{}})();import{s as e,t}from"./react-C9lG_SsT.js";import{g as n}from"./hooks-0r7qxGEo.js";import{t as r}from"./use-form-ElCUnbKi.js";import{P as i}from"./shade-provider-DvrXKKQZ.js";import{Jt as a}from"./index-RuRs_qGS.js";import{n as o}from"./global-data-context-ogIy0FUG.js";var s=e(t(),1),c=({savingDelay:e,onValidate:t}={})=>{let c=(0,s.useRef)(null),{siteData:l,settings:u}=o(),{mutateAsync:d}=a(),f=n(),[p,m]=(0,s.useState)(!1),{formState:h,saveState:g,handleSave:_,updateForm:v,setFormState:y,reset:b,validate:x,errors:S,clearError:C,okProps:w}=r({initialState:u||[],savingDelay:e,onSave:async()=>{await d?.(E())},onSaveError:f,onValidate:t}),{setGlobalDirtyState:T}=i();(0,s.useEffect)(()=>{T(h.some(e=>e.dirty))},[h,T]),(0,s.useEffect)(()=>{p&&c.current&&c.current.focus()},[p]),(0,s.useEffect)(()=>{(!p||g===`saving`)&&y(()=>u)},[u]);let E=()=>h?.filter(e=>e.dirty)?.map(e=>({key:e.key,value:e.value}));return{localSettings:h,isEditing:p,saveState:g,focusRef:c,siteData:l,handleSave:async()=>{let e=await _();return e&&m(!1),e},handleCancel:()=>{b(),m(!1)},updateSetting:(0,s.useCallback)((e,t)=>{v(n=>n.some(t=>t.key===e)?n.map(n=>n.key===e?{...n,value:t,dirty:!0}:n):[...n,{key:e,value:t,dirty:!0}])},[v]),handleEditingChange:e=>{m(e)},validate:x,errors:S,clearError:C,okProps:w}};export{c as t};
@@ -1 +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]=`0aa9c9e1-b745-41d4-a747-626576c95826`,e._sentryDebugIdIdentifier=`sentry-dbid-0aa9c9e1-b745-41d4-a747-626576c95826`)}catch{}})();import{s as e,t}from"./react-C9lG_SsT.js";import{t as n}from"./jsx-runtime-Bm2_KH-0.js";import{L as r,N as i}from"./shade-provider-DvrXKKQZ.js";import{t as a}from"./grid-BYJO9x_v.js";import{t as o}from"./inline-Qoyy4r2g.js";import{t as s}from"./stack-C3OmgpUv.js";import{t as c}from"./text-BnCSdzao.js";import{i as l,n as u}from"./use-limiter-DPKxoO1_.js";import{f as d}from"./users-CzgQKbfO.js";import{t as f}from"./validator-DgUCXsE8.js";import{n as p}from"./global-data-context-ogIy0FUG.js";var m=e(t(),1),h=n(),g=i(`group/setting-group relative flex flex-col gap-6 rounded-xl text-card-foreground transition-all`,{variants:{variant:{outline:`border border-border-default bg-card p-5 hover:shadow-sm md:p-7`,plain:`bg-transparent`},highlighted:{true:`shadow-sm`,false:``}},defaultVariants:{variant:`outline`,highlighted:!1}}),_=m.forwardRef(({className:e,variant:t,highlighted:n,editing:i=!1,...a},o)=>(0,h.jsx)(`div`,{ref:o,className:r(g({variant:t,highlighted:n,className:e})),"data-editing":i,...a}));_.displayName=`SettingGroup`;var v=m.forwardRef(({className:e,...t},n)=>(0,h.jsx)(o,{ref:n,align:`start`,as:`div`,className:r(`relative z-10 w-full`,e),gap:`lg`,justify:`between`,...t}));v.displayName=`SettingGroupHeader`;var y=m.forwardRef(({className:e,...t},n)=>(0,h.jsx)(s,{ref:n,className:r(`min-w-0`,e),gap:`xs`,...t}));y.displayName=`SettingGroupDetails`;var b=m.forwardRef(({className:e,...t},n)=>(0,h.jsx)(c,{ref:n,as:`h5`,className:r(`md:text-lg`,e),leading:`supertight`,weight:`semibold`,...t}));b.displayName=`SettingGroupTitle`;var x=m.forwardRef(({className:e,...t},n)=>(0,h.jsx)(c,{ref:n,className:r(`mr-5 hidden text-pretty group-data-[editing=false]/setting-group:block md:block`,e),...t}));x.displayName=`SettingGroupDescription`;var S=m.forwardRef(({className:e,...t},n)=>(0,h.jsx)(`div`,{ref:n,className:r(`shrink-0 [&_button]:text-control!`,e),...t}));S.displayName=`SettingGroupActions`;var C=m.forwardRef(({children:e,className:t,columns:n=1,...i},o)=>n===2?(0,h.jsx)(a,{ref:o,className:r(`grid-cols-1 gap-x-8 gap-y-6 md:grid-cols-2`,t),columns:1,gap:`none`,...i,children:e}):(0,h.jsx)(s,{ref:o,className:r(`gap-y-7`,t),gap:`none`,...i,children:e}));C.displayName=`SettingGroupContent`;var w=m.forwardRef(({className:e,...t},n)=>(0,h.jsx)(s,{ref:n,className:e,gap:`none`,...t}));w.displayName=`SettingGroupValue`;var T=m.forwardRef(({className:e,...t},n)=>(0,h.jsx)(c,{ref:n,as:`h6`,className:r(`text-base`,e),weight:`semibold`,...t}));T.displayName=`SettingGroupValueTitle`;var E=m.forwardRef(({className:e,...t},n)=>(0,h.jsx)(o,{ref:n,as:`div`,className:e,gap:`none`,...t}));E.displayName=`SettingGroupValueContent`;var D=e(f(),1),ee=e=>e.replace(/[\\\]^-]/g,`\\$&`),te=e=>e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`),O=e=>{if(e.patterns){let t=e.patterns;return e=>t.some(t=>t.test(e))}let t=`a-zA-Z0-9${e.unicode?`\\p{L}\\p{M}\\p{N}`:``}${ee(e.extra??``)}`,n=RegExp(`^[${t}]+$`,`u`),r=e.min??1,i=e.max??100;return t=>{let[a,...o]=e.nestedSegments?t.split(`/`):[t];if(!n.test(a))return!1;let s=[...a].length;if(s<r||s>i)return!1;for(let t of e.notAtBoundary??``)if(a.startsWith(t)||a.endsWith(t))return!1;for(let t of e.notConsecutive??``)if(a.includes(t+t))return!1;return o.every(e=>e===``||n.test(e))}},ne=e=>{try{return decodeURIComponent(e)}catch{return e}},k=e=>{let{domains:t,www:n,regionalSubdomain:r,pathTypes:i,fullPath:a,transformUsername:o,errors:s}=e,c=i.map(e=>({...e,check:O(e.rule)})),l=[...c].sort((e,t)=>t.urlPrefix.length-e.urlPrefix.length),u=c.flatMap(e=>[e.storagePrefix,...e.handleAliases??[]].filter(e=>e!==``).map(t=>({prefix:t,pathType:e}))).sort((e,t)=>t.prefix.length-e.prefix.length),d=t.map(e=>te(e)).join(`|`),f=`${r?`(?:(?<region>${r})\\.)?`:``}(?:[a-zA-Z0-9-]+\\.)*`,p=RegExp(`^(?:(?:https?:)?\\/\\/)?${f}(?:${d})\\/(?<rest>[\\s\\S]*)$`,`i`),m=RegExp(`^${f}(?:${d})(?:\\/|$)`,`i`),h=e=>/^(?:https?:\/\/|\/\/|www\.)/i.test(e)||m.test(e),g=(e,t)=>{let n=t?e:e.replace(/^@/,``);return n=n.replace(/\/$/,``),a||(n=ne(n)),n=n.normalize(`NFC`),o?o(n):n},_=e=>{let t=e.replace(/^\//,``),n=u.find(({prefix:e})=>t.startsWith(e));return n?{pathType:n.pathType,rawUsername:t.slice(n.prefix.length),atPrefixConsumed:!n.pathType.tolerateLeadingAt}:{pathType:c[0],rawUsername:t,atPrefixConsumed:!1}},v=e=>{if(!h(e))return _(e);let t=e.match(p);if(!t?.groups)throw Error(s.invalidUrl);let{region:n,rest:r}=t.groups,i=l.find(e=>r.startsWith(e.urlPrefix));if(!i||r.length<=i.urlPrefix.length)throw Error(s.invalidUrl);let o=r.slice(i.urlPrefix.length),c=!a&&!i.rule.nestedSegments?o.split(`/`)[0]:o;if(!a&&/[?#]/.test(c))throw Error(s.invalidUsername);return{region:n,pathType:i,rawUsername:c,atPrefixConsumed:i.urlPrefix!==``&&!i.tolerateLeadingAt}},y=(e,t)=>{if(!e.check(t))throw Error(s.invalidUsername)},b=(e,r,i)=>{let a=`https://${i?`${i.toLowerCase()}.`:n?`www.`:``}${t[0]}/${e.urlPrefix}${r}`;if(!D.default.isURL(a))throw Error(s.invalidUrl);return a};return{validate:e=>{if(!e)return``;let{region:t,pathType:n,rawUsername:r,atPrefixConsumed:i}=v(e.trim()),a=g(r,i);return y(n,a),b(n,a,t)},handleToUrl:e=>{if(!e)throw Error(s.invalidUsername);let{pathType:t,rawUsername:n,atPrefixConsumed:r}=_(e.trim()),i=g(n,r);return y(t,i),b(t,i)},urlToHandle:e=>{if(!e||!h(e.trim()))return null;try{let{pathType:t,rawUsername:n,atPrefixConsumed:r}=v(e.trim()),i=g(n,r);return y(t,i),`${t.storagePrefix}${i}`}catch{return null}}}},A=`The URL must be in a format like https://www.facebook.com/yourPage`,j=k({domains:[`facebook.com`],www:!0,fullPath:!0,pathTypes:[{urlPrefix:``,storagePrefix:``,rule:{patterns:[/^\S+$/]}}],errors:{invalidUrl:A,invalidUsername:A}}),M=j.validate,re=j.handleToUrl,ie=j.urlToHandle,N=k({domains:[`x.com`,`twitter.com`],www:!1,pathTypes:[{urlPrefix:``,storagePrefix:`@`,rule:{extra:`_`,min:1,max:15}}],errors:{invalidUrl:`The URL must be in a format like https://x.com/yourUsername`,invalidUsername:`Your Username is not a valid Twitter Username`}}),ae=N.validate,oe=N.handleToUrl,se=N.urlToHandle,P={extra:`._`,min:1,max:30,notAtBoundary:`.`,notConsecutive:`.`},F=k({domains:[`instagram.com`],www:!0,pathTypes:[{urlPrefix:``,storagePrefix:``,rule:P}],errors:{invalidUrl:`The URL must be in a format like https://www.instagram.com/yourUsername`,invalidUsername:`Your Username is not a valid Instagram Username`}}),ce=F.validate,le=F.handleToUrl,ue=F.urlToHandle,I=k({domains:[`threads.net`,`threads.com`],www:!0,pathTypes:[{urlPrefix:`@`,storagePrefix:`@`,rule:P},{urlPrefix:``,storagePrefix:`@`,rule:P}],errors:{invalidUrl:`The URL must be in a format like https://www.threads.net/@yourUsername`,invalidUsername:`The URL must be in a format like https://www.threads.net/@yourUsername`}}),L=I.validate,R=I.handleToUrl,z=I.urlToHandle,B=k({domains:[`bsky.app`],www:!1,pathTypes:[{urlPrefix:`profile/`,storagePrefix:``,tolerateLeadingAt:!0,rule:{patterns:[/^did:plc:[a-z2-7]{24}$/,/^[a-zA-Z0-9._]{1,15}$/,/^(?=.{1,191}$)[a-zA-Z0-9._-]+\.[a-zA-Z0-9._-]+$/]}}],transformUsername:e=>/^did:plc:/i.test(e)?e.toLowerCase():e,errors:{invalidUrl:`The URL must be in a format like https://bsky.app/profile/yourUsername`,invalidUsername:`Your Username is not a valid Bluesky Username`}}),V=B.validate,H=B.handleToUrl,U=B.urlToHandle,W={unicode:!0,extra:`-`,min:3,max:100},G={...W,extra:`-_`},K=k({domains:[`linkedin.com`],www:!0,regionalSubdomain:`[a-z]{2}`,pathTypes:[{urlPrefix:`in/`,storagePrefix:``,handleAliases:[`in/`],rule:W},{urlPrefix:`pub/`,storagePrefix:`pub/`,rule:{...W,nestedSegments:!0}},{urlPrefix:`company/`,storagePrefix:`company/`,rule:G},{urlPrefix:`school/`,storagePrefix:`school/`,rule:G}],errors:{invalidUrl:`The URL must be in a format like https://www.linkedin.com/in/yourUsername`,invalidUsername:`Your Username is not a valid LinkedIn Username`}}),de=K.validate,fe=K.handleToUrl,pe=K.urlToHandle,q=k({domains:[`youtube.com`],www:!0,pathTypes:[{urlPrefix:`@`,storagePrefix:`@`,rule:{unicode:!0,extra:`._-`,min:3,max:30,notAtBoundary:`._-`,notConsecutive:`.`}},{urlPrefix:`user/`,storagePrefix:`user/`,rule:{extra:`._-`,min:1,max:50}},{urlPrefix:`channel/`,storagePrefix:`channel/`,rule:{patterns:[/^UC[a-zA-Z0-9_-]{22}$/]}}],errors:{invalidUrl:`The URL must be in a format like https://www.youtube.com/@yourUsername, https://www.youtube.com/user/yourUsername, or https://www.youtube.com/channel/yourChannelId`,invalidUsername:`Your Username is not a valid YouTube Username`}}),me=q.validate,he=q.handleToUrl,ge=q.urlToHandle,J=k({domains:[`tiktok.com`],www:!0,pathTypes:[{urlPrefix:`@`,storagePrefix:`@`,rule:{extra:`._`,min:2,max:24,notAtBoundary:`.`,notConsecutive:`.`}}],errors:{invalidUrl:`The URL must be in a format like https://www.tiktok.com/@yourUsername`,invalidUsername:`Your Username is not a valid TikTok Username`}}),_e=J.validate,ve=J.handleToUrl,ye=J.urlToHandle;function be(e){let t=`The URL must be in a format like @username@instance.tld or https://instance.tld/@username or https://website.com/@username@instance.tld`;if(!e)return``;let n=e;if(n=n.replace(/^https?:\/\//,``),n.match(/^@[^@]+@[^/]+$/)){let[e,r]=n.split(`@`).slice(1);if(!D.default.isFQDN(r))throw Error(t);return`https://${r}/@${e}`}if(n.match(/^[^/]+\.[^/]+\/@[^/]+(@[^/]+)?$/)){let[e,r]=n.split(`/@`);if(!D.default.isFQDN(e))throw Error(t);if(r.includes(`@`)){let[,e]=r.split(`@`);if(!D.default.isFQDN(e))throw Error(t)}return`https://${n}`}throw Error(t)}var xe=e=>{let t=`Your Username is not a valid Mastodon Username`;if(!e)throw Error(t);if(e.match(/^@[^@]+@[^/]+$/)){let[n,r]=e.split(`@`).slice(1);if(!D.default.isFQDN(r))throw Error(t);return`https://${r}/@${n}`}if(e.match(/^[^/]+\.[^/]+\/@[^/]+(@[^/]+)?$/)){let[n,r]=e.split(`/@`);if(!D.default.isFQDN(n))throw Error(t);if(r.includes(`@`)){let[,e]=r.split(`@`);if(!D.default.isFQDN(e))throw Error(t)}return`https://${e}`}throw Error(t)},Se=e=>e.replace(/^https?:\/\//,``),Ce=[`twitter`,`facebook`,`linkedin`,`bluesky`,`threads`,`mastodon`,`tiktok`,`youtube`,`instagram`],Y=(e,t)=>{if(!e)return``;try{return t(e)}catch{return e}},X=[{key:`twitter`,staffTitle:`X`,publicationTitle:`X`,placeholder:`https://x.com/username`,testId:`x-input`,validate:ae,toDisplayValue:e=>Y(e,oe),toStoredValue:e=>se(e)},{key:`facebook`,staffTitle:`Facebook`,publicationTitle:`Facebook`,placeholder:`https://www.facebook.com/username`,testId:`facebook-input`,validate:M,toDisplayValue:e=>Y(e,re),toStoredValue:e=>ie(e)},{key:`linkedin`,staffTitle:`LinkedIn`,publicationTitle:`LinkedIn`,placeholder:`https://www.linkedin.com/in/username`,testId:`linkedin-input`,validate:de,toDisplayValue:e=>Y(e,fe),toStoredValue:e=>pe(e)},{key:`bluesky`,staffTitle:`Bluesky`,publicationTitle:`Bluesky`,placeholder:`https://bsky.app/profile/username`,testId:`bluesky-input`,validate:V,toDisplayValue:e=>Y(e,H),toStoredValue:e=>U(e)},{key:`threads`,staffTitle:`Threads`,publicationTitle:`Threads`,placeholder:`https://threads.net/@username`,testId:`threads-input`,validate:L,toDisplayValue:e=>Y(e,R),toStoredValue:e=>z(e)},{key:`mastodon`,staffTitle:`Mastodon`,publicationTitle:`Mastodon`,placeholder:`https://mastodon.social/@username`,testId:`mastodon-input`,validate:be,toDisplayValue:e=>Y(e,xe),toStoredValue:e=>e?Se(e):null},{key:`tiktok`,staffTitle:`TikTok`,publicationTitle:`TikTok`,placeholder:`https://www.tiktok.com/@username`,testId:`tiktok-input`,validate:_e,toDisplayValue:e=>Y(e,ve),toStoredValue:e=>ye(e)},{key:`youtube`,staffTitle:`YouTube`,publicationTitle:`YouTube`,placeholder:`https://www.youtube.com/@channel`,testId:`youtube-input`,validate:me,toDisplayValue:e=>Y(e,he),toStoredValue:e=>ge(e)},{key:`instagram`,staffTitle:`Instagram`,publicationTitle:`Instagram`,placeholder:`https://www.instagram.com/username`,testId:`instagram-input`,validate:ce,toDisplayValue:e=>Y(e,le),toStoredValue:e=>ue(e)}],Z=Object.fromEntries(X.map(e=>[e.key,e])),we=(e,t)=>{let n=Z[e],r=n.validate(t),i=r?n.toStoredValue(r):null;return{displayValue:n.toDisplayValue(i),storedValue:i}},Q=(e,t)=>{try{return Z[e].validate(t||``),``}catch(e){return e instanceof Error?e.message:``}};function $(e,t){return e.filter(e=>e.roles.find(e=>e.name===t))}function Te(e,t){return e.filter(e=>e.roles.find(e=>t.includes(e.name)))}function Ee(e){return $(e,`Owner`)[0]}var De=()=>{let{currentUser:e}=p(),{data:{users:t,meta:n,isEnd:r}={users:[]},isLoading:i,fetchNextPage:a}=d(),{data:{invites:o,meta:s,isEnd:c}={invites:[]},isLoading:f,fetchNextPage:h}=l(),{data:{roles:g}={},isLoading:_}=u(),v=(0,m.useMemo)(()=>Ee(t),[t]),y=(0,m.useMemo)(()=>$(t,`Administrator`),[t]),b=(0,m.useMemo)(()=>Te(t,[`Editor`,`Super Editor`]),[t]),x=(0,m.useMemo)(()=>$(t,`Author`),[t]),S=(0,m.useMemo)(()=>$(t,`Contributor`),[t]),C=(0,m.useMemo)(()=>o.map(e=>{let t=g?.find(t=>e.role_id===t.id);return{...e,role:t?.name}}),[o,g]);return{totalUsers:n?.pagination.total||0,totalInvites:s?.pagination.total||0,users:t,ownerUser:v,adminUsers:y,editorUsers:b,authorUsers:x,contributorUsers:S,currentUser:e,invites:C,isLoading:i||f||_,hasNextPage:r===!1,invitesHasNextPage:c===!1,fetchNextPage:a,fetchNextInvitePage:h}};export{we as a,C as c,v as d,b as f,T as h,Q as i,x as l,E as m,X as n,_ as o,w as p,Ce as r,S as s,De as t,y as u};
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]=`49c7193e-a6d3-49d9-ab7b-93a26dbb1197`,e._sentryDebugIdIdentifier=`sentry-dbid-49c7193e-a6d3-49d9-ab7b-93a26dbb1197`)}catch{}})();import{s as e,t}from"./react-C9lG_SsT.js";import{t as n}from"./jsx-runtime-Bm2_KH-0.js";import{L as r,N as i}from"./shade-provider-DvrXKKQZ.js";import{t as a}from"./grid-BYJO9x_v.js";import{t as o}from"./inline-Qoyy4r2g.js";import{t as s}from"./stack-C3OmgpUv.js";import{t as c}from"./text-BnCSdzao.js";import{i as l,n as u}from"./use-limiter-gF219BEg.js";import{f as d}from"./users-CKJaAxEJ.js";import{t as f}from"./validator-DgUCXsE8.js";import{n as p}from"./global-data-context-ogIy0FUG.js";var m=e(t(),1),h=n(),g=i(`group/setting-group relative flex flex-col gap-6 rounded-xl text-card-foreground transition-all`,{variants:{variant:{outline:`border border-border-default bg-card p-5 hover:shadow-sm md:p-7`,plain:`bg-transparent`},highlighted:{true:`shadow-sm`,false:``}},defaultVariants:{variant:`outline`,highlighted:!1}}),_=m.forwardRef(({className:e,variant:t,highlighted:n,editing:i=!1,...a},o)=>(0,h.jsx)(`div`,{ref:o,className:r(g({variant:t,highlighted:n,className:e})),"data-editing":i,...a}));_.displayName=`SettingGroup`;var v=m.forwardRef(({className:e,...t},n)=>(0,h.jsx)(o,{ref:n,align:`start`,as:`div`,className:r(`relative z-10 w-full`,e),gap:`lg`,justify:`between`,...t}));v.displayName=`SettingGroupHeader`;var y=m.forwardRef(({className:e,...t},n)=>(0,h.jsx)(s,{ref:n,className:r(`min-w-0`,e),gap:`xs`,...t}));y.displayName=`SettingGroupDetails`;var b=m.forwardRef(({className:e,...t},n)=>(0,h.jsx)(c,{ref:n,as:`h5`,className:r(`md:text-lg`,e),leading:`supertight`,weight:`semibold`,...t}));b.displayName=`SettingGroupTitle`;var x=m.forwardRef(({className:e,...t},n)=>(0,h.jsx)(c,{ref:n,className:r(`mr-5 hidden text-pretty group-data-[editing=false]/setting-group:block md:block`,e),...t}));x.displayName=`SettingGroupDescription`;var S=m.forwardRef(({className:e,...t},n)=>(0,h.jsx)(`div`,{ref:n,className:r(`shrink-0 [&_button]:text-control!`,e),...t}));S.displayName=`SettingGroupActions`;var C=m.forwardRef(({children:e,className:t,columns:n=1,...i},o)=>n===2?(0,h.jsx)(a,{ref:o,className:r(`grid-cols-1 gap-x-8 gap-y-6 md:grid-cols-2`,t),columns:1,gap:`none`,...i,children:e}):(0,h.jsx)(s,{ref:o,className:r(`gap-y-7`,t),gap:`none`,...i,children:e}));C.displayName=`SettingGroupContent`;var w=m.forwardRef(({className:e,...t},n)=>(0,h.jsx)(s,{ref:n,className:e,gap:`none`,...t}));w.displayName=`SettingGroupValue`;var T=m.forwardRef(({className:e,...t},n)=>(0,h.jsx)(c,{ref:n,as:`h6`,className:r(`text-base`,e),weight:`semibold`,...t}));T.displayName=`SettingGroupValueTitle`;var E=m.forwardRef(({className:e,...t},n)=>(0,h.jsx)(o,{ref:n,as:`div`,className:e,gap:`none`,...t}));E.displayName=`SettingGroupValueContent`;var D=e(f(),1),ee=e=>e.replace(/[\\\]^-]/g,`\\$&`),te=e=>e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`),O=e=>{if(e.patterns){let t=e.patterns;return e=>t.some(t=>t.test(e))}let t=`a-zA-Z0-9${e.unicode?`\\p{L}\\p{M}\\p{N}`:``}${ee(e.extra??``)}`,n=RegExp(`^[${t}]+$`,`u`),r=e.min??1,i=e.max??100;return t=>{let[a,...o]=e.nestedSegments?t.split(`/`):[t];if(!n.test(a))return!1;let s=[...a].length;if(s<r||s>i)return!1;for(let t of e.notAtBoundary??``)if(a.startsWith(t)||a.endsWith(t))return!1;for(let t of e.notConsecutive??``)if(a.includes(t+t))return!1;return o.every(e=>e===``||n.test(e))}},ne=e=>{try{return decodeURIComponent(e)}catch{return e}},k=e=>{let{domains:t,www:n,regionalSubdomain:r,pathTypes:i,fullPath:a,transformUsername:o,errors:s}=e,c=i.map(e=>({...e,check:O(e.rule)})),l=[...c].sort((e,t)=>t.urlPrefix.length-e.urlPrefix.length),u=c.flatMap(e=>[e.storagePrefix,...e.handleAliases??[]].filter(e=>e!==``).map(t=>({prefix:t,pathType:e}))).sort((e,t)=>t.prefix.length-e.prefix.length),d=t.map(e=>te(e)).join(`|`),f=`${r?`(?:(?<region>${r})\\.)?`:``}(?:[a-zA-Z0-9-]+\\.)*`,p=RegExp(`^(?:(?:https?:)?\\/\\/)?${f}(?:${d})\\/(?<rest>[\\s\\S]*)$`,`i`),m=RegExp(`^${f}(?:${d})(?:\\/|$)`,`i`),h=e=>/^(?:https?:\/\/|\/\/|www\.)/i.test(e)||m.test(e),g=(e,t)=>{let n=t?e:e.replace(/^@/,``);return n=n.replace(/\/$/,``),a||(n=ne(n)),n=n.normalize(`NFC`),o?o(n):n},_=e=>{let t=e.replace(/^\//,``),n=u.find(({prefix:e})=>t.startsWith(e));return n?{pathType:n.pathType,rawUsername:t.slice(n.prefix.length),atPrefixConsumed:!n.pathType.tolerateLeadingAt}:{pathType:c[0],rawUsername:t,atPrefixConsumed:!1}},v=e=>{if(!h(e))return _(e);let t=e.match(p);if(!t?.groups)throw Error(s.invalidUrl);let{region:n,rest:r}=t.groups,i=l.find(e=>r.startsWith(e.urlPrefix));if(!i||r.length<=i.urlPrefix.length)throw Error(s.invalidUrl);let o=r.slice(i.urlPrefix.length),c=!a&&!i.rule.nestedSegments?o.split(`/`)[0]:o;if(!a&&/[?#]/.test(c))throw Error(s.invalidUsername);return{region:n,pathType:i,rawUsername:c,atPrefixConsumed:i.urlPrefix!==``&&!i.tolerateLeadingAt}},y=(e,t)=>{if(!e.check(t))throw Error(s.invalidUsername)},b=(e,r,i)=>{let a=`https://${i?`${i.toLowerCase()}.`:n?`www.`:``}${t[0]}/${e.urlPrefix}${r}`;if(!D.default.isURL(a))throw Error(s.invalidUrl);return a};return{validate:e=>{if(!e)return``;let{region:t,pathType:n,rawUsername:r,atPrefixConsumed:i}=v(e.trim()),a=g(r,i);return y(n,a),b(n,a,t)},handleToUrl:e=>{if(!e)throw Error(s.invalidUsername);let{pathType:t,rawUsername:n,atPrefixConsumed:r}=_(e.trim()),i=g(n,r);return y(t,i),b(t,i)},urlToHandle:e=>{if(!e||!h(e.trim()))return null;try{let{pathType:t,rawUsername:n,atPrefixConsumed:r}=v(e.trim()),i=g(n,r);return y(t,i),`${t.storagePrefix}${i}`}catch{return null}}}},A=`The URL must be in a format like https://www.facebook.com/yourPage`,j=k({domains:[`facebook.com`],www:!0,fullPath:!0,pathTypes:[{urlPrefix:``,storagePrefix:``,rule:{patterns:[/^\S+$/]}}],errors:{invalidUrl:A,invalidUsername:A}}),M=j.validate,re=j.handleToUrl,ie=j.urlToHandle,N=k({domains:[`x.com`,`twitter.com`],www:!1,pathTypes:[{urlPrefix:``,storagePrefix:`@`,rule:{extra:`_`,min:1,max:15}}],errors:{invalidUrl:`The URL must be in a format like https://x.com/yourUsername`,invalidUsername:`Your Username is not a valid Twitter Username`}}),ae=N.validate,oe=N.handleToUrl,se=N.urlToHandle,P={extra:`._`,min:1,max:30,notAtBoundary:`.`,notConsecutive:`.`},F=k({domains:[`instagram.com`],www:!0,pathTypes:[{urlPrefix:``,storagePrefix:``,rule:P}],errors:{invalidUrl:`The URL must be in a format like https://www.instagram.com/yourUsername`,invalidUsername:`Your Username is not a valid Instagram Username`}}),ce=F.validate,le=F.handleToUrl,ue=F.urlToHandle,I=k({domains:[`threads.net`,`threads.com`],www:!0,pathTypes:[{urlPrefix:`@`,storagePrefix:`@`,rule:P},{urlPrefix:``,storagePrefix:`@`,rule:P}],errors:{invalidUrl:`The URL must be in a format like https://www.threads.net/@yourUsername`,invalidUsername:`The URL must be in a format like https://www.threads.net/@yourUsername`}}),L=I.validate,R=I.handleToUrl,z=I.urlToHandle,B=k({domains:[`bsky.app`],www:!1,pathTypes:[{urlPrefix:`profile/`,storagePrefix:``,tolerateLeadingAt:!0,rule:{patterns:[/^did:plc:[a-z2-7]{24}$/,/^[a-zA-Z0-9._]{1,15}$/,/^(?=.{1,191}$)[a-zA-Z0-9._-]+\.[a-zA-Z0-9._-]+$/]}}],transformUsername:e=>/^did:plc:/i.test(e)?e.toLowerCase():e,errors:{invalidUrl:`The URL must be in a format like https://bsky.app/profile/yourUsername`,invalidUsername:`Your Username is not a valid Bluesky Username`}}),V=B.validate,H=B.handleToUrl,U=B.urlToHandle,W={unicode:!0,extra:`-`,min:3,max:100},G={...W,extra:`-_`},K=k({domains:[`linkedin.com`],www:!0,regionalSubdomain:`[a-z]{2}`,pathTypes:[{urlPrefix:`in/`,storagePrefix:``,handleAliases:[`in/`],rule:W},{urlPrefix:`pub/`,storagePrefix:`pub/`,rule:{...W,nestedSegments:!0}},{urlPrefix:`company/`,storagePrefix:`company/`,rule:G},{urlPrefix:`school/`,storagePrefix:`school/`,rule:G}],errors:{invalidUrl:`The URL must be in a format like https://www.linkedin.com/in/yourUsername`,invalidUsername:`Your Username is not a valid LinkedIn Username`}}),de=K.validate,fe=K.handleToUrl,pe=K.urlToHandle,q=k({domains:[`youtube.com`],www:!0,pathTypes:[{urlPrefix:`@`,storagePrefix:`@`,rule:{unicode:!0,extra:`._-`,min:3,max:30,notAtBoundary:`._-`,notConsecutive:`.`}},{urlPrefix:`user/`,storagePrefix:`user/`,rule:{extra:`._-`,min:1,max:50}},{urlPrefix:`channel/`,storagePrefix:`channel/`,rule:{patterns:[/^UC[a-zA-Z0-9_-]{22}$/]}}],errors:{invalidUrl:`The URL must be in a format like https://www.youtube.com/@yourUsername, https://www.youtube.com/user/yourUsername, or https://www.youtube.com/channel/yourChannelId`,invalidUsername:`Your Username is not a valid YouTube Username`}}),me=q.validate,he=q.handleToUrl,ge=q.urlToHandle,J=k({domains:[`tiktok.com`],www:!0,pathTypes:[{urlPrefix:`@`,storagePrefix:`@`,rule:{extra:`._`,min:2,max:24,notAtBoundary:`.`,notConsecutive:`.`}}],errors:{invalidUrl:`The URL must be in a format like https://www.tiktok.com/@yourUsername`,invalidUsername:`Your Username is not a valid TikTok Username`}}),_e=J.validate,ve=J.handleToUrl,ye=J.urlToHandle;function be(e){let t=`The URL must be in a format like @username@instance.tld or https://instance.tld/@username or https://website.com/@username@instance.tld`;if(!e)return``;let n=e;if(n=n.replace(/^https?:\/\//,``),n.match(/^@[^@]+@[^/]+$/)){let[e,r]=n.split(`@`).slice(1);if(!D.default.isFQDN(r))throw Error(t);return`https://${r}/@${e}`}if(n.match(/^[^/]+\.[^/]+\/@[^/]+(@[^/]+)?$/)){let[e,r]=n.split(`/@`);if(!D.default.isFQDN(e))throw Error(t);if(r.includes(`@`)){let[,e]=r.split(`@`);if(!D.default.isFQDN(e))throw Error(t)}return`https://${n}`}throw Error(t)}var xe=e=>{let t=`Your Username is not a valid Mastodon Username`;if(!e)throw Error(t);if(e.match(/^@[^@]+@[^/]+$/)){let[n,r]=e.split(`@`).slice(1);if(!D.default.isFQDN(r))throw Error(t);return`https://${r}/@${n}`}if(e.match(/^[^/]+\.[^/]+\/@[^/]+(@[^/]+)?$/)){let[n,r]=e.split(`/@`);if(!D.default.isFQDN(n))throw Error(t);if(r.includes(`@`)){let[,e]=r.split(`@`);if(!D.default.isFQDN(e))throw Error(t)}return`https://${e}`}throw Error(t)},Se=e=>e.replace(/^https?:\/\//,``),Ce=[`twitter`,`facebook`,`linkedin`,`bluesky`,`threads`,`mastodon`,`tiktok`,`youtube`,`instagram`],Y=(e,t)=>{if(!e)return``;try{return t(e)}catch{return e}},X=[{key:`twitter`,staffTitle:`X`,publicationTitle:`X`,placeholder:`https://x.com/username`,testId:`x-input`,validate:ae,toDisplayValue:e=>Y(e,oe),toStoredValue:e=>se(e)},{key:`facebook`,staffTitle:`Facebook`,publicationTitle:`Facebook`,placeholder:`https://www.facebook.com/username`,testId:`facebook-input`,validate:M,toDisplayValue:e=>Y(e,re),toStoredValue:e=>ie(e)},{key:`linkedin`,staffTitle:`LinkedIn`,publicationTitle:`LinkedIn`,placeholder:`https://www.linkedin.com/in/username`,testId:`linkedin-input`,validate:de,toDisplayValue:e=>Y(e,fe),toStoredValue:e=>pe(e)},{key:`bluesky`,staffTitle:`Bluesky`,publicationTitle:`Bluesky`,placeholder:`https://bsky.app/profile/username`,testId:`bluesky-input`,validate:V,toDisplayValue:e=>Y(e,H),toStoredValue:e=>U(e)},{key:`threads`,staffTitle:`Threads`,publicationTitle:`Threads`,placeholder:`https://threads.net/@username`,testId:`threads-input`,validate:L,toDisplayValue:e=>Y(e,R),toStoredValue:e=>z(e)},{key:`mastodon`,staffTitle:`Mastodon`,publicationTitle:`Mastodon`,placeholder:`https://mastodon.social/@username`,testId:`mastodon-input`,validate:be,toDisplayValue:e=>Y(e,xe),toStoredValue:e=>e?Se(e):null},{key:`tiktok`,staffTitle:`TikTok`,publicationTitle:`TikTok`,placeholder:`https://www.tiktok.com/@username`,testId:`tiktok-input`,validate:_e,toDisplayValue:e=>Y(e,ve),toStoredValue:e=>ye(e)},{key:`youtube`,staffTitle:`YouTube`,publicationTitle:`YouTube`,placeholder:`https://www.youtube.com/@channel`,testId:`youtube-input`,validate:me,toDisplayValue:e=>Y(e,he),toStoredValue:e=>ge(e)},{key:`instagram`,staffTitle:`Instagram`,publicationTitle:`Instagram`,placeholder:`https://www.instagram.com/username`,testId:`instagram-input`,validate:ce,toDisplayValue:e=>Y(e,le),toStoredValue:e=>ue(e)}],Z=Object.fromEntries(X.map(e=>[e.key,e])),we=(e,t)=>{let n=Z[e],r=n.validate(t),i=r?n.toStoredValue(r):null;return{displayValue:n.toDisplayValue(i),storedValue:i}},Q=(e,t)=>{try{return Z[e].validate(t||``),``}catch(e){return e instanceof Error?e.message:``}};function $(e,t){return e.filter(e=>e.roles.find(e=>e.name===t))}function Te(e,t){return e.filter(e=>e.roles.find(e=>t.includes(e.name)))}function Ee(e){return $(e,`Owner`)[0]}var De=()=>{let{currentUser:e}=p(),{data:{users:t,meta:n,isEnd:r}={users:[]},isLoading:i,fetchNextPage:a}=d(),{data:{invites:o,meta:s,isEnd:c}={invites:[]},isLoading:f,fetchNextPage:h}=l(),{data:{roles:g}={},isLoading:_}=u(),v=(0,m.useMemo)(()=>Ee(t),[t]),y=(0,m.useMemo)(()=>$(t,`Administrator`),[t]),b=(0,m.useMemo)(()=>Te(t,[`Editor`,`Super Editor`]),[t]),x=(0,m.useMemo)(()=>$(t,`Author`),[t]),S=(0,m.useMemo)(()=>$(t,`Contributor`),[t]),C=(0,m.useMemo)(()=>o.map(e=>{let t=g?.find(t=>e.role_id===t.id);return{...e,role:t?.name}}),[o,g]);return{totalUsers:n?.pagination.total||0,totalInvites:s?.pagination.total||0,users:t,ownerUser:v,adminUsers:y,editorUsers:b,authorUsers:x,contributorUsers:S,currentUser:e,invites:C,isLoading:i||f||_,hasNextPage:r===!1,invitesHasNextPage:c===!1,fetchNextPage:a,fetchNextInvitePage:h}};export{we as a,C as c,v as d,b as f,T as h,Q as i,x as l,E as m,X as n,_ as o,w as p,Ce as r,S as s,De as t,y as u};
@@ -1 +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]=`fcc8e5c6-82cc-4c42-8be1-a5737890142c`,e._sentryDebugIdIdentifier=`sentry-dbid-fcc8e5c6-82cc-4c42-8be1-a5737890142c`)}catch{}})();import{N as e}from"./hooks-C-BDQ6Hs.js";import{t}from"./use-tinybird-token-DVNHuhu_.js";import{nn as n}from"./index-CuDhPtkB.js";var r=(e,t,n=``)=>{if(!e)return``;let r;r=e.local?.enabled?e.local.endpoint||``:e.endpointBrowser?e.endpointBrowser:e.endpoint||``;let i=e.version?`${t}_${e.version}`:t;return`${r}/v0/pipes/${i}.json?${n}`},i=60*1e3,a=(e,t)=>{if(!e)return;let n;try{n=new URL(e)}catch{return}for(let[e,r]of Object.entries(t))n.searchParams.set(e,r);return n.searchParams.set(`ghost_client`,`admin`),n.toString()},o=async({url:e,token:t,refreshToken:n,signal:r})=>{let i=t=>fetch(e,{credentials:`omit`,headers:{Authorization:`Bearer ${t}`},signal:r}),a=await i(t);if(a.status===401||a.status===403){let e=await n();e&&e!==t&&(a=await i(e))}if(!a.ok){let e=await a.text();throw Error(`Tinybird request failed (${a.status}): ${e||a.statusText}`)}return s(await a.json())},s=e=>{if(typeof e!=`object`||!e||Array.isArray(e))throw Error(`Tinybird returned an unexpected response shape`);let{data:t,meta:n}=e,r=e=>Array.isArray(e)&&e.every(e=>typeof e==`object`&&!!e);if(t!=null&&!r(t)||n!=null&&!r(n))throw Error(`Tinybird returned an unexpected response shape`);return e},c=s=>{let{statsConfig:c,endpoint:l,params:u,enabled:d=!0,refetchInterval:f,refetchIntervalInBackground:p}=s,m=n(),h=!!(d&&m&&c&&l),g=t({enabled:h}),_=a(h&&c?r(c,l):void 0,u),v=g.token,y=g.refetch,b=e({queryKey:[`tinybird`,_],enabled:!!(h&&_&&v),staleTime:i,retry:!1,refetchOnWindowFocus:!0,refetchInterval:f,refetchIntervalInBackground:p,queryFn:({signal:e})=>o({url:_,token:v,refreshToken:y,signal:e})});return{data:h?b.data?.data??null:null,meta:h?b.data?.meta??null:null,loading:h?g.isLoading||b.isLoading:!1,error:h?b.error??g.error:null}};export{c as t};
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]=`fcc8e5c6-82cc-4c42-8be1-a5737890142c`,e._sentryDebugIdIdentifier=`sentry-dbid-fcc8e5c6-82cc-4c42-8be1-a5737890142c`)}catch{}})();import{N as e}from"./hooks-0r7qxGEo.js";import{t}from"./use-tinybird-token-Dz37zvb7.js";import{nn as n}from"./index-RuRs_qGS.js";var r=(e,t,n=``)=>{if(!e)return``;let r;r=e.local?.enabled?e.local.endpoint||``:e.endpointBrowser?e.endpointBrowser:e.endpoint||``;let i=e.version?`${t}_${e.version}`:t;return`${r}/v0/pipes/${i}.json?${n}`},i=60*1e3,a=(e,t)=>{if(!e)return;let n;try{n=new URL(e)}catch{return}for(let[e,r]of Object.entries(t))n.searchParams.set(e,r);return n.searchParams.set(`ghost_client`,`admin`),n.toString()},o=async({url:e,token:t,refreshToken:n,signal:r})=>{let i=t=>fetch(e,{credentials:`omit`,headers:{Authorization:`Bearer ${t}`},signal:r}),a=await i(t);if(a.status===401||a.status===403){let e=await n();e&&e!==t&&(a=await i(e))}if(!a.ok){let e=await a.text();throw Error(`Tinybird request failed (${a.status}): ${e||a.statusText}`)}return s(await a.json())},s=e=>{if(typeof e!=`object`||!e||Array.isArray(e))throw Error(`Tinybird returned an unexpected response shape`);let{data:t,meta:n}=e,r=e=>Array.isArray(e)&&e.every(e=>typeof e==`object`&&!!e);if(t!=null&&!r(t)||n!=null&&!r(n))throw Error(`Tinybird returned an unexpected response shape`);return e},c=s=>{let{statsConfig:c,endpoint:l,params:u,enabled:d=!0,refetchInterval:f,refetchIntervalInBackground:p}=s,m=n(),h=!!(d&&m&&c&&l),g=t({enabled:h}),_=a(h&&c?r(c,l):void 0,u),v=g.token,y=g.refetch,b=e({queryKey:[`tinybird`,_],enabled:!!(h&&_&&v),staleTime:i,retry:!1,refetchOnWindowFocus:!0,refetchInterval:f,refetchIntervalInBackground:p,queryFn:({signal:e})=>o({url:_,token:v,refreshToken:y,signal:e})});return{data:h?b.data?.data??null:null,meta:h?b.data?.meta??null:null,loading:h?g.isLoading||b.isLoading:!1,error:h?b.error??g.error:null}};export{c as t};
@@ -1 +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]=`cb1f07f4-c303-400e-913a-efc2974f8b61`,e._sentryDebugIdIdentifier=`sentry-dbid-cb1f07f4-c303-400e-913a-efc2974f8b61`)}catch{}})();import{s as e,t}from"./react-C9lG_SsT.js";import{r as n}from"./hooks-C-BDQ6Hs.js";import{nn as r}from"./index-CuDhPtkB.js";var i=e(t(),1),a=`TinybirdTokenResponseType`,o={refetchInterval:7200*1e3,refetchIntervalInBackground:!0,staleTime:6600*1e3},s=n({dataType:a,path:`/tinybird/token/`}),c=(e={})=>s({...o,...e}),l=!1,u=(e={})=>{let{enabled:t=!0}=e,n=r(),a=t&&n,o=c({enabled:a}),s=o.refetch,u=(0,i.useCallback)(async()=>{let e=(await s()).data?.tinybird?.token;return typeof e==`string`&&e?e:void 0},[s]);if(!a)return{token:void 0,isLoading:!1,error:null,refetch:u};let d=o.data?.tinybird?.token,f=o.error;return!o.isLoading&&o.data&&!d&&!l&&(console.warn(`Tinybird analytics: No valid token received. Check your Tinybird configuration (workspaceId and adminToken must be non-empty strings).`),l=!0),{token:d&&typeof d==`string`?d:void 0,isLoading:o.isLoading,error:f,refetch:u}};export{u as t};
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]=`cb1f07f4-c303-400e-913a-efc2974f8b61`,e._sentryDebugIdIdentifier=`sentry-dbid-cb1f07f4-c303-400e-913a-efc2974f8b61`)}catch{}})();import{s as e,t}from"./react-C9lG_SsT.js";import{r as n}from"./hooks-0r7qxGEo.js";import{nn as r}from"./index-RuRs_qGS.js";var i=e(t(),1),a=`TinybirdTokenResponseType`,o={refetchInterval:7200*1e3,refetchIntervalInBackground:!0,staleTime:6600*1e3},s=n({dataType:a,path:`/tinybird/token/`}),c=(e={})=>s({...o,...e}),l=!1,u=(e={})=>{let{enabled:t=!0}=e,n=r(),a=t&&n,o=c({enabled:a}),s=o.refetch,u=(0,i.useCallback)(async()=>{let e=(await s()).data?.tinybird?.token;return typeof e==`string`&&e?e:void 0},[s]);if(!a)return{token:void 0,isLoading:!1,error:null,refetch:u};let d=o.data?.tinybird?.token,f=o.error;return!o.isLoading&&o.data&&!d&&!l&&(console.warn(`Tinybird analytics: No valid token received. Check your Tinybird configuration (workspaceId and adminToken must be non-empty strings).`),l=!0),{token:d&&typeof d==`string`?d:void 0,isLoading:o.isLoading,error:f,refetch:u}};export{u as t};
@@ -1 +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]=`5a53c3e3-8412-4e6f-8969-56e16bca2648`,e._sentryDebugIdIdentifier=`sentry-dbid-5a53c3e3-8412-4e6f-8969-56e16bca2648`)}catch{}})();import{s as e,t}from"./react-C9lG_SsT.js";import{n,t as r}from"./use-router-history-entry-CUGq_dQN.js";import{l as i,t as a,u as o}from"./chunk-OB3PAWPO-D3muQBsq.js";import{n as s,t as c}from"./index-CuDhPtkB.js";var l=Object.prototype.hasOwnProperty;function u(e,t,n){for(n of e.keys())if(d(n,t))return n}function d(e,t){var n,r,i;if(e===t)return!0;if(e&&t&&(n=e.constructor)===t.constructor){if(n===Date)return e.getTime()===t.getTime();if(n===RegExp)return e.toString()===t.toString();if(n===Array){if((r=e.length)===t.length)for(;r--&&d(e[r],t[r]););return r===-1}if(n===Set){if(e.size!==t.size)return!1;for(r of e)if(i=r,i&&typeof i==`object`&&(i=u(t,i),!i)||!t.has(i))return!1;return!0}if(n===Map){if(e.size!==t.size)return!1;for(r of e)if(i=r[0],i&&typeof i==`object`&&(i=u(t,i),!i)||!d(r[1],t.get(i)))return!1;return!0}if(n===ArrayBuffer)e=new Uint8Array(e),t=new Uint8Array(t);else if(n===DataView){if((r=e.byteLength)===t.byteLength)for(;r--&&e.getInt8(r)===t.getInt8(r););return r===-1}if(ArrayBuffer.isView(e)){if((r=e.byteLength)===t.byteLength)for(;r--&&e[r]===t[r];);return r===-1}if(!n||typeof e==`object`){for(n in r=0,e)if(l.call(e,n)&&++r&&!l.call(t,n)||!(n in t)||!d(e[n],t[n]))return!1;return Object.keys(t).length===r}}return e!==e&&t!==t}var f=e(t(),1);function p(e,t){let[n,r]=f.useState(null),i=f.useRef(null),a=f.useRef(e);a.current=e;let o=f.useRef(t);return o.current=t,f.useEffect(()=>{let e=e=>{if(!a.current||e.defaultPrevented||e.metaKey||e.ctrlKey||e.shiftKey||e.altKey||e.button!==0)return;let t=e.target.closest?.(`a[href^="#/"]`);if(!t||t.hasAttribute(`data-discover`)||(e.preventDefault(),e.stopPropagation(),!o.current()))return;let n=t.getAttribute(`href`);i.current=n,r(n)};return document.addEventListener(`click`,e,!0),()=>document.removeEventListener(`click`,e,!0)},[]),{blockedHref:n,isBlocked:n!==null,proceed:()=>{let e=i.current;e&&(i.current=null,r(null),window.location.hash=e)},reset:()=>{i.current=null,r(null)}}}function m({when:e,confirmUnloadWhen:t,isSaving:l=!1,interceptNavigation:u,guardHistoryPops:d=!1}){let m=o(),h=f.useRef(!1),g=f.useRef(!1),_=f.useRef(!1),v=f.useRef(!1),y=f.useRef(!1),b=f.useRef(u);b.current=u,n(t??e);let x=i(t=>{if(t.historyAction===a.Pop&&!r())return!1;if(h.current)return h.current=!1,!1;if(b.current?.(t))return y.current=!0,!0;y.current=!1;let n=e&&s(t.currentLocation.pathname)!==s(t.nextLocation.pathname);return n&&(g.current=!0),n}),S=()=>g.current?!1:(g.current=!0,!0),C=p(e,S),w=c(e&&d,S,()=>g.current),T=x.state===`blocked`&&y.current,E=x.state===`blocked`&&!y.current||C.isBlocked||w.isBlocked,D=()=>{w.release(),C.isBlocked?C.proceed():w.isBlocked?(h.current=!0,w.proceed()):x.proceed?.()};f.useEffect(()=>{h.current=!1,g.current=!1,_.current=!1,v.current=!1},[m.pathname]),f.useEffect(()=>{!_.current||l||!E||(_.current=!1,g.current=!1,D())},[l,E,D]);let O=f.useCallback(()=>{h.current=!0},[]),k=f.useCallback(()=>g.current,[]),A=f.useCallback(()=>g.current?(_.current=!0,!0):!1,[]);return{isBlocked:E,hasBlockedNavigation:k,dialogProps:{open:E&&!l,onConfirm:()=>{v.current=!0,g.current=!1,_.current=!1,D()},onOpenChange:e=>{if(!e){if(v.current){v.current=!1;return}E&&(g.current=!1,_.current=!1,x.reset?.(),C.reset(),w.reset())}}},bypassNextNavigation:O,resumeBlockedNavigationAfterSave:A,interceptedNavigation:{isBlocked:T,proceed:()=>x.proceed?.(),reset:()=>x.reset?.()}}}export{d as n,m as t};
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]=`5a53c3e3-8412-4e6f-8969-56e16bca2648`,e._sentryDebugIdIdentifier=`sentry-dbid-5a53c3e3-8412-4e6f-8969-56e16bca2648`)}catch{}})();import{s as e,t}from"./react-C9lG_SsT.js";import{n,t as r}from"./use-router-history-entry-CUGq_dQN.js";import{l as i,t as a,u as o}from"./chunk-OB3PAWPO-D3muQBsq.js";import{n as s,t as c}from"./index-RuRs_qGS.js";var l=Object.prototype.hasOwnProperty;function u(e,t,n){for(n of e.keys())if(d(n,t))return n}function d(e,t){var n,r,i;if(e===t)return!0;if(e&&t&&(n=e.constructor)===t.constructor){if(n===Date)return e.getTime()===t.getTime();if(n===RegExp)return e.toString()===t.toString();if(n===Array){if((r=e.length)===t.length)for(;r--&&d(e[r],t[r]););return r===-1}if(n===Set){if(e.size!==t.size)return!1;for(r of e)if(i=r,i&&typeof i==`object`&&(i=u(t,i),!i)||!t.has(i))return!1;return!0}if(n===Map){if(e.size!==t.size)return!1;for(r of e)if(i=r[0],i&&typeof i==`object`&&(i=u(t,i),!i)||!d(r[1],t.get(i)))return!1;return!0}if(n===ArrayBuffer)e=new Uint8Array(e),t=new Uint8Array(t);else if(n===DataView){if((r=e.byteLength)===t.byteLength)for(;r--&&e.getInt8(r)===t.getInt8(r););return r===-1}if(ArrayBuffer.isView(e)){if((r=e.byteLength)===t.byteLength)for(;r--&&e[r]===t[r];);return r===-1}if(!n||typeof e==`object`){for(n in r=0,e)if(l.call(e,n)&&++r&&!l.call(t,n)||!(n in t)||!d(e[n],t[n]))return!1;return Object.keys(t).length===r}}return e!==e&&t!==t}var f=e(t(),1);function p(e,t){let[n,r]=f.useState(null),i=f.useRef(null),a=f.useRef(e);a.current=e;let o=f.useRef(t);return o.current=t,f.useEffect(()=>{let e=e=>{if(!a.current||e.defaultPrevented||e.metaKey||e.ctrlKey||e.shiftKey||e.altKey||e.button!==0)return;let t=e.target.closest?.(`a[href^="#/"]`);if(!t||t.hasAttribute(`data-discover`)||(e.preventDefault(),e.stopPropagation(),!o.current()))return;let n=t.getAttribute(`href`);i.current=n,r(n)};return document.addEventListener(`click`,e,!0),()=>document.removeEventListener(`click`,e,!0)},[]),{blockedHref:n,isBlocked:n!==null,proceed:()=>{let e=i.current;e&&(i.current=null,r(null),window.location.hash=e)},reset:()=>{i.current=null,r(null)}}}function m({when:e,confirmUnloadWhen:t,isSaving:l=!1,interceptNavigation:u,guardHistoryPops:d=!1}){let m=o(),h=f.useRef(!1),g=f.useRef(!1),_=f.useRef(!1),v=f.useRef(!1),y=f.useRef(!1),b=f.useRef(u);b.current=u,n(t??e);let x=i(t=>{if(t.historyAction===a.Pop&&!r())return!1;if(h.current)return h.current=!1,!1;if(b.current?.(t))return y.current=!0,!0;y.current=!1;let n=e&&s(t.currentLocation.pathname)!==s(t.nextLocation.pathname);return n&&(g.current=!0),n}),S=()=>g.current?!1:(g.current=!0,!0),C=p(e,S),w=c(e&&d,S,()=>g.current),T=x.state===`blocked`&&y.current,E=x.state===`blocked`&&!y.current||C.isBlocked||w.isBlocked,D=()=>{w.release(),C.isBlocked?C.proceed():w.isBlocked?(h.current=!0,w.proceed()):x.proceed?.()};f.useEffect(()=>{h.current=!1,g.current=!1,_.current=!1,v.current=!1},[m.pathname]),f.useEffect(()=>{!_.current||l||!E||(_.current=!1,g.current=!1,D())},[l,E,D]);let O=f.useCallback(()=>{h.current=!0},[]),k=f.useCallback(()=>g.current,[]),A=f.useCallback(()=>g.current?(_.current=!0,!0):!1,[]);return{isBlocked:E,hasBlockedNavigation:k,dialogProps:{open:E&&!l,onConfirm:()=>{v.current=!0,g.current=!1,_.current=!1,D()},onOpenChange:e=>{if(!e){if(v.current){v.current=!1;return}E&&(g.current=!1,_.current=!1,x.reset?.(),C.reset(),w.reset())}}},bypassNextNavigation:O,resumeBlockedNavigationAfterSave:A,interceptedNavigation:{isBlocked:T,proceed:()=>x.proceed?.(),reset:()=>x.reset?.()}}}export{d as n,m as t};
@@ -1 +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]=`f1cc31f1-9ad8-4d0d-bba4-879972183c0e`,e._sentryDebugIdIdentifier=`sentry-dbid-f1cc31f1-9ad8-4d0d-bba4-879972183c0e`)}catch{}})();import{o as e}from"./config-B3HuCo0y.js";import{n as t}from"./global-data-context-ogIy0FUG.js";function n(){let{config:n}=t();return e(n)}export{n as t};
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]=`34da1d0b-94a7-4a79-8d76-48482a92876e`,e._sentryDebugIdIdentifier=`sentry-dbid-34da1d0b-94a7-4a79-8d76-48482a92876e`)}catch{}})();import{o as e}from"./config-CRAZ4Civ.js";import{n as t}from"./global-data-context-ogIy0FUG.js";function n(){let{config:n}=t();return e(n)}export{n as t};
@@ -1 +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]=`a588f30f-c5f1-43bd-a42f-dd37695ab9ab`,e._sentryDebugIdIdentifier=`sentry-dbid-a588f30f-c5f1-43bd-a42f-dd37695ab9ab`)}catch{}})();import{s as e,t}from"./react-C9lG_SsT.js";import{t as n}from"./jsx-runtime-Bm2_KH-0.js";import{L as r}from"./shade-provider-DvrXKKQZ.js";import{Bt as i}from"./button-CTHYSI-d.js";import{a,i as o,n as s,o as c,p as l,s as u,t as d,u as f}from"./sortable.esm-ERukM7Vc.js";import{st as p}from"./index-CuDhPtkB.js";import{t as m}from"./format-url-BlDIp2kF.js";var h=e(t(),1),g=n(),_=({isDragging:e,dragHandleAttributes:t,dragHandleListeners:n,dragHandleClass:a,dragHandleLabel:o,className:s,...c})=>(0,g.jsx)(`button`,{"aria-label":o||`Reorder`,className:r(`inline-flex items-center justify-center text-muted-foreground opacity-50 transition-opacity group-hover:opacity-100`,e?`cursor-grabbing`:`cursor-grab`,a,s),type:`button`,...t,...n,...c,children:(0,g.jsx)(i,{"aria-hidden":`true`,className:`size-4`})}),v=({setRef:e,isDragging:t,style:n,separator:i,children:a,...o})=>(0,g.jsxs)(`div`,{ref:e,className:r(`group flex w-full items-center gap-3 bg-background py-1`,i&&`border-b border-border`,t&&`opacity-75`),style:n,children:[(0,g.jsx)(_,{className:`h-7`,isDragging:t,...o}),a]}),y=({id:e,children:t,separator:n,dragHandleClass:r,dragHandleLabel:i,container:a})=>{let{attributes:s,listeners:c,setNodeRef:u,transform:d,transition:f}=o({id:e});return a({id:e,setRef:u,isDragging:!1,separator:n,dragHandleClass:r,dragHandleLabel:i,dragHandleAttributes:s,dragHandleListeners:c,style:{transform:l.Transform.toString(d),transition:f},children:t})},b=({title:e,titleSeparator:t,hint:n,items:i,itemSeparator:o=!0,dragHandleClass:s,getDragHandleLabel:l,onMove:m,renderItem:_,container:b=e=>(0,g.jsx)(v,{...e}),wrapper:x=h.Fragment,dragOverlayWrapper:S,className:C,...w})=>{let[T,E]=(0,h.useState)(null),D=i.find(({id:e})=>e===T);return i.length?(0,g.jsxs)(`div`,{className:r(`w-full`,C),...w,children:[e&&(0,g.jsxs)(`div`,{className:r(`mb-2`,t&&`space-y-1`),children:[(0,g.jsx)(`h6`,{className:`text-base font-semibold text-muted-foreground`,children:e}),t&&(0,g.jsx)(p,{})]}),(0,g.jsxs)(c,{collisionDetection:f,onDragCancel:()=>E(null),onDragEnd:e=>{e.over&&m(String(e.active.id),String(e.over.id)),E(null)},onDragStart:e=>E(String(e.active.id)),children:[(0,g.jsx)(x,{children:(0,g.jsx)(d,{items:i,strategy:a,children:i.map(e=>(0,g.jsx)(y,{container:b,dragHandleClass:s,dragHandleLabel:l?.(e),id:e.id,separator:o,children:_(e)},e.id))})}),(0,g.jsx)(u,{wrapperElement:S,children:D?b({id:D.id,isDragging:!0,dragHandleLabel:l?.(D),children:_(D)}):null})]}),n&&(0,g.jsxs)(`div`,{className:`space-y-1 pt-1 text-sm text-muted-foreground`,children:[!o&&(0,g.jsx)(p,{}),n]})]}):null},x=e=>JSON.stringify(e,(e,t)=>t&&typeof t==`object`&&!Array.isArray(t)?Object.keys(t).sort().reduce((e,n)=>(e[n]=t[n],e),{}):t),S=({items:e,setItems:t,blank:n,canAddNewItem:r})=>{let[i,a]=(0,h.useState)(e.map((e,t)=>({item:e,id:t.toString()}))),o=(0,h.useRef)(i),c=e=>{o.current=e,a(e)},[l,u]=(0,h.useState)(n);return(0,h.useEffect)(()=>{let n=i.map(({item:e})=>e);r(l)&&n.push(l),x(n)!==x(e)&&t(n)},[i,l,e,t,r]),{items:i,updateItem:(e,n)=>{let r=o.current.map(t=>t.id===e?{...t,item:typeof n==`function`?n(t.item):n}:t);c(r),t(r.map(e=>e.item))},addItem:()=>{if(r(l)){let e=o.current,r=e.reduce((e,t)=>Math.max(e,parseInt(t.id)),0),i=e.concat({item:l,id:(r+1).toString()});c(i),t(i.map(e=>e.item)),u(n)}},removeItem:e=>{let n=o.current.filter(t=>t.id!==e);c(n),t(n.map(e=>e.item))},moveItem:(e,n)=>{if(e!==n){let r=o.current,i=s(r,r.findIndex(t=>t.id===e),n?r.findIndex(e=>e.id===n):0);c(i),t(i.map(e=>e.item))}},newItem:l,setNewItem:u}},C=({baseUrl:e,nullable:t,transformPathWithoutSlash:n,value:r,onChange:i})=>{let[a,o]=(0,h.useState)(``),s=(0,h.useRef)(void 0);(0,h.useEffect)(()=>{s.current!==void 0&&r===s.current||(s.current=void 0,o(m(r||``,e,t).display))},[e,t,r]);let c=(0,h.useCallback)(r=>{let i=m(r,e,t);if(n&&!i.display.includes(`//`)&&(r||!t)){let n=m(`/${r}`,e,t);n.display.includes(`//`)&&(i=n)}return i},[e,t,n]),l=(0,h.useCallback)(()=>{let e=c(a);o(e.display),e.save!==r&&i(e.save)},[a,i,c,r]),u=(0,h.useCallback)(e=>{o(e);let{save:t}=c(e);t!==r&&(s.current=t,i(t))},[i,c,r]);return{commitValue:l,displayValue:a,handleFocus:(0,h.useCallback)(t=>{a===e&&setTimeout(()=>t.target.setSelectionRange(t.target.value.length,t.target.value.length))},[e,a]),handleKeyDown:(0,h.useCallback)(t=>{a===e&&[`Backspace`,`Delete`].includes(t.key)&&o(``)},[e,a]),setDisplayValue:o,setDraftValue:u}};export{b as i,S as n,_ as r,C as t};
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]=`5c9c6a36-eddb-4cf7-90ec-72a838186c1f`,e._sentryDebugIdIdentifier=`sentry-dbid-5c9c6a36-eddb-4cf7-90ec-72a838186c1f`)}catch{}})();import{s as e,t}from"./react-C9lG_SsT.js";import{t as n}from"./jsx-runtime-Bm2_KH-0.js";import{L as r}from"./shade-provider-DvrXKKQZ.js";import{Bt as i}from"./button-CTHYSI-d.js";import{a,i as o,n as s,o as c,p as l,s as u,t as d,u as f}from"./sortable.esm-ERukM7Vc.js";import{st as p}from"./index-RuRs_qGS.js";import{t as m}from"./format-url-BlDIp2kF.js";var h=e(t(),1),g=n(),_=({isDragging:e,dragHandleAttributes:t,dragHandleListeners:n,dragHandleClass:a,dragHandleLabel:o,className:s,...c})=>(0,g.jsx)(`button`,{"aria-label":o||`Reorder`,className:r(`inline-flex items-center justify-center text-muted-foreground opacity-50 transition-opacity group-hover:opacity-100`,e?`cursor-grabbing`:`cursor-grab`,a,s),type:`button`,...t,...n,...c,children:(0,g.jsx)(i,{"aria-hidden":`true`,className:`size-4`})}),v=({setRef:e,isDragging:t,style:n,separator:i,children:a,...o})=>(0,g.jsxs)(`div`,{ref:e,className:r(`group flex w-full items-center gap-3 bg-background py-1`,i&&`border-b border-border`,t&&`opacity-75`),style:n,children:[(0,g.jsx)(_,{className:`h-7`,isDragging:t,...o}),a]}),y=({id:e,children:t,separator:n,dragHandleClass:r,dragHandleLabel:i,container:a})=>{let{attributes:s,listeners:c,setNodeRef:u,transform:d,transition:f}=o({id:e});return a({id:e,setRef:u,isDragging:!1,separator:n,dragHandleClass:r,dragHandleLabel:i,dragHandleAttributes:s,dragHandleListeners:c,style:{transform:l.Transform.toString(d),transition:f},children:t})},b=({title:e,titleSeparator:t,hint:n,items:i,itemSeparator:o=!0,dragHandleClass:s,getDragHandleLabel:l,onMove:m,renderItem:_,container:b=e=>(0,g.jsx)(v,{...e}),wrapper:x=h.Fragment,dragOverlayWrapper:S,className:C,...w})=>{let[T,E]=(0,h.useState)(null),D=i.find(({id:e})=>e===T);return i.length?(0,g.jsxs)(`div`,{className:r(`w-full`,C),...w,children:[e&&(0,g.jsxs)(`div`,{className:r(`mb-2`,t&&`space-y-1`),children:[(0,g.jsx)(`h6`,{className:`text-base font-semibold text-muted-foreground`,children:e}),t&&(0,g.jsx)(p,{})]}),(0,g.jsxs)(c,{collisionDetection:f,onDragCancel:()=>E(null),onDragEnd:e=>{e.over&&m(String(e.active.id),String(e.over.id)),E(null)},onDragStart:e=>E(String(e.active.id)),children:[(0,g.jsx)(x,{children:(0,g.jsx)(d,{items:i,strategy:a,children:i.map(e=>(0,g.jsx)(y,{container:b,dragHandleClass:s,dragHandleLabel:l?.(e),id:e.id,separator:o,children:_(e)},e.id))})}),(0,g.jsx)(u,{wrapperElement:S,children:D?b({id:D.id,isDragging:!0,dragHandleLabel:l?.(D),children:_(D)}):null})]}),n&&(0,g.jsxs)(`div`,{className:`space-y-1 pt-1 text-sm text-muted-foreground`,children:[!o&&(0,g.jsx)(p,{}),n]})]}):null},x=e=>JSON.stringify(e,(e,t)=>t&&typeof t==`object`&&!Array.isArray(t)?Object.keys(t).sort().reduce((e,n)=>(e[n]=t[n],e),{}):t),S=({items:e,setItems:t,blank:n,canAddNewItem:r})=>{let[i,a]=(0,h.useState)(e.map((e,t)=>({item:e,id:t.toString()}))),o=(0,h.useRef)(i),c=e=>{o.current=e,a(e)},[l,u]=(0,h.useState)(n);return(0,h.useEffect)(()=>{let n=i.map(({item:e})=>e);r(l)&&n.push(l),x(n)!==x(e)&&t(n)},[i,l,e,t,r]),{items:i,updateItem:(e,n)=>{let r=o.current.map(t=>t.id===e?{...t,item:typeof n==`function`?n(t.item):n}:t);c(r),t(r.map(e=>e.item))},addItem:()=>{if(r(l)){let e=o.current,r=e.reduce((e,t)=>Math.max(e,parseInt(t.id)),0),i=e.concat({item:l,id:(r+1).toString()});c(i),t(i.map(e=>e.item)),u(n)}},removeItem:e=>{let n=o.current.filter(t=>t.id!==e);c(n),t(n.map(e=>e.item))},moveItem:(e,n)=>{if(e!==n){let r=o.current,i=s(r,r.findIndex(t=>t.id===e),n?r.findIndex(e=>e.id===n):0);c(i),t(i.map(e=>e.item))}},newItem:l,setNewItem:u}},C=({baseUrl:e,nullable:t,transformPathWithoutSlash:n,value:r,onChange:i})=>{let[a,o]=(0,h.useState)(``),s=(0,h.useRef)(void 0);(0,h.useEffect)(()=>{s.current!==void 0&&r===s.current||(s.current=void 0,o(m(r||``,e,t).display))},[e,t,r]);let c=(0,h.useCallback)(r=>{let i=m(r,e,t);if(n&&!i.display.includes(`//`)&&(r||!t)){let n=m(`/${r}`,e,t);n.display.includes(`//`)&&(i=n)}return i},[e,t,n]),l=(0,h.useCallback)(()=>{let e=c(a);o(e.display),e.save!==r&&i(e.save)},[a,i,c,r]),u=(0,h.useCallback)(e=>{o(e);let{save:t}=c(e);t!==r&&(s.current=t,i(t))},[i,c,r]);return{commitValue:l,displayValue:a,handleFocus:(0,h.useCallback)(t=>{a===e&&setTimeout(()=>t.target.setSelectionRange(t.target.value.length,t.target.value.length))},[e,a]),handleKeyDown:(0,h.useCallback)(t=>{a===e&&[`Backspace`,`Delete`].includes(t.key)&&o(``)},[e,a]),setDisplayValue:o,setDraftValue:u}};export{b as i,S as n,_ as r,C as t};
@@ -1 +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]=`c7c5b1b7-039b-4b0e-a35b-7e1b352c8dbc`,e._sentryDebugIdIdentifier=`sentry-dbid-c7c5b1b7-039b-4b0e-a35b-7e1b352c8dbc`)}catch{}})();import{s as e,t}from"./react-C9lG_SsT.js";import{O as n,_ as r,g as i,n as a,r as o,y as s}from"./hooks-C-BDQ6Hs.js";import{t as c}from"./jsx-runtime-Bm2_KH-0.js";import{n as l}from"./dist-pogVoW2G.js";import{t as u}from"./use-form-ElCUnbKi.js";import{h as d,u as f}from"./chunk-OB3PAWPO-D3muQBsq.js";import{a as p}from"./router-provider-Cf-bcYZr.js";import{H as m,Z as h,r as g}from"./shade-provider-DvrXKKQZ.js";import{t as _}from"./text-BnCSdzao.js";import{D as v,Pn as y,g as b,t as x,yt as S}from"./button-CTHYSI-d.js";import{n as C,t as w}from"./use-limiter-DPKxoO1_.js";import{t as ee}from"./dropzone-C0p6KEsa.js";import{i as T,n as E,o as D,r as O,t as k}from"./field-DCPPrQDr.js";import{a as te,c as ne,i as re,l as A,n as ie,o as ae,r as oe,s as se,t as ce}from"./images-BSUWxquu.js";import{t as j}from"./input-BHb2A_DU.js";import{i as le,n as M,o as N,s as ue,t as P}from"./select-DeloOYCg.js";import{t as F}from"./switch-BppWscjz.js";import{i as I,n as L,r as de,t as fe}from"./tabs-CDb_TceL.js";import{t as R}from"./textarea-B_rfKtjs.js";import{_ as z,c as pe,d as B,g as me,h as he,m as ge,o as V,p as _e,s as ve,t as ye,u as be}from"./users-CzgQKbfO.js";import{a as xe,c as H,i as Se,n as U,o as W,r as Ce,t as we}from"./use-staff-users-CcQzTHqH.js";import{t as Te}from"./settings-modal-3x4v8abr.js";import{B as G,Vt as Ee,ct as De,ft as K,h as Oe,ut as ke,vt as Ae}from"./index-CuDhPtkB.js";import{t as je}from"./validator-DgUCXsE8.js";import{t as Me}from"./use-settings-navigation-CO2nUqDW.js";import{n as Ne}from"./confirmation-context-By_jX_cA.js";import{n as q}from"./global-data-context-ogIy0FUG.js";import{t as Pe}from"./use-upgrade-route-Bsxw9ZLN.js";import{t as J}from"./api-keys-COZMaKEL.js";import{t as Fe}from"./use-pintura-editor-B5VBPbiO.js";var Y=c(),X=({user:e,setUserData:t})=>{let{config:n,settings:r}=q(),i=Ee(r||[],n||{});return(0,Y.jsxs)(H,{children:[(0,Y.jsxs)(`div`,{children:[(0,Y.jsx)(`span`,{className:`text-sm font-medium tracking-wide text-gray-700 uppercase`,children:`Engagement`}),(0,Y.jsxs)(`div`,{className:`mt-3 flex flex-col gap-4`,children:[(0,Y.jsxs)(k,{orientation:`horizontal`,children:[(0,Y.jsxs)(E,{children:[(0,Y.jsx)(D,{htmlFor:`comment-notifications`,children:`Comments`}),(0,Y.jsx)(O,{children:`Every time a member comments on one of your posts`})]}),(0,Y.jsx)(F,{checked:!!e.comment_notifications,id:`comment-notifications`,onCheckedChange:n=>t({...e,comment_notifications:n})})]}),V(e)&&(0,Y.jsxs)(k,{orientation:`horizontal`,children:[(0,Y.jsxs)(E,{children:[(0,Y.jsx)(D,{htmlFor:`recommendation-notifications`,children:`Recommendations`}),(0,Y.jsx)(O,{children:`Every time another publisher recommends you to their audience`})]}),(0,Y.jsx)(F,{checked:!!e.recommendation_notifications,id:`recommendation-notifications`,onCheckedChange:n=>t({...e,recommendation_notifications:n})})]})]})]}),V(e)&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(`div`,{children:[(0,Y.jsx)(`span`,{className:`text-sm font-medium tracking-wide text-gray-700 uppercase`,children:`Members`}),(0,Y.jsxs)(`div`,{className:`mt-3 flex flex-col gap-4`,children:[(0,Y.jsxs)(k,{orientation:`horizontal`,children:[(0,Y.jsxs)(E,{children:[(0,Y.jsx)(D,{htmlFor:`free-member-signup-notifications`,children:`New signups`}),(0,Y.jsx)(O,{children:`Every time a new free member signs up`})]}),(0,Y.jsx)(F,{checked:!!e.free_member_signup_notification,id:`free-member-signup-notifications`,onCheckedChange:n=>t({...e,free_member_signup_notification:n})})]}),i&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(k,{orientation:`horizontal`,children:[(0,Y.jsxs)(E,{children:[(0,Y.jsx)(D,{htmlFor:`paid-subscription-started-notifications`,children:`New paid members`}),(0,Y.jsx)(O,{children:`Every time a member starts a new paid subscription`})]}),(0,Y.jsx)(F,{checked:!!e.paid_subscription_started_notification,id:`paid-subscription-started-notifications`,onCheckedChange:n=>t({...e,paid_subscription_started_notification:n})})]}),(0,Y.jsxs)(k,{orientation:`horizontal`,children:[(0,Y.jsxs)(E,{children:[(0,Y.jsx)(D,{htmlFor:`paid-subscription-canceled-notifications`,children:`Paid member cancellations`}),(0,Y.jsx)(O,{children:`Every time a member cancels their paid subscription`})]}),(0,Y.jsx)(F,{checked:!!e.paid_subscription_canceled_notification,id:`paid-subscription-canceled-notifications`,onCheckedChange:n=>t({...e,paid_subscription_canceled_notification:n})})]})]})]})]}),(0,Y.jsxs)(`div`,{children:[(0,Y.jsx)(`span`,{className:`text-sm font-medium tracking-wide text-gray-700 uppercase`,children:`Revenue`}),(0,Y.jsxs)(`div`,{className:`mt-3 flex flex-col gap-4`,children:[(0,Y.jsxs)(k,{orientation:`horizontal`,children:[(0,Y.jsxs)(E,{children:[(0,Y.jsx)(D,{htmlFor:`milestone-notifications`,children:`Milestones`}),(0,Y.jsx)(O,{children:i?`Occasional summaries of your audience & revenue growth`:`Occasional summaries of your audience growth`})]}),(0,Y.jsx)(F,{checked:!!e.milestone_notifications,id:`milestone-notifications`,onCheckedChange:n=>t({...e,milestone_notifications:n})})]}),i&&(0,Y.jsxs)(k,{orientation:`horizontal`,children:[(0,Y.jsxs)(E,{children:[(0,Y.jsx)(D,{htmlFor:`donation-notifications`,children:`Tips & donations`}),(0,Y.jsx)(O,{children:`Every time you receive a one-time payment`})]}),(0,Y.jsx)(F,{checked:!!e.donation_notifications,id:`donation-notifications`,onCheckedChange:n=>t({...e,donation_notifications:n})})]}),i&&(0,Y.jsxs)(k,{orientation:`horizontal`,children:[(0,Y.jsxs)(E,{children:[(0,Y.jsx)(D,{htmlFor:`gift-subscription-notifications`,children:`Gift subscriptions`}),(0,Y.jsx)(O,{children:`Every time someone purchases or redeems a gift subscription`})]}),(0,Y.jsx)(F,{checked:!!e.gift_subscription_notifications,id:`gift-subscription-notifications`,onCheckedChange:n=>t({...e,gift_subscription_notifications:n})})]})]})]})]})]})},Ie=({user:e,setUserData:t})=>(0,Y.jsx)(W,{variant:`plain`,children:(0,Y.jsx)(X,{setUserData:t,user:e})}),Z=e(t(),1),Le=[`1234567890`,`qwertyuiop`,`qwertzuiop`,`asdfghjkl;`,`abcdefghij`,`0987654321`,`1q2w3e4r5t`,`12345asdfg`],Re=[`ghost`,`password`,`passw0rd`],ze=e=>{let t={},n=!0,r=e.length/2;for(let n=0;n<e.length;n+=1)t[e[n]]?t[e[n]]+=1:t[e[n]]=1;for(let e in t)if(t[e]>=r)return n=!1,n;return n},Be=({user:e})=>{let{currentUser:t,config:r,siteData:a}=q(),{isAdmin7:o}=g(),[s,c]=(0,Z.useState)(!1),[u,d]=(0,Z.useState)(``),[f,p]=(0,Z.useState)(``),[m,h]=(0,Z.useState)(``),[_,v]=(0,Z.useState)(``),[y,b]=(0,Z.useState)({}),S=(0,Z.useRef)(null),C=(0,Z.useRef)(null),w=(0,Z.useRef)(null),{mutateAsync:ee}=z(),E=i(),O=e.id===t.id,te=({password:t,confirmPassword:n})=>{if(O&&!u)return{oldPassword:`Your current password is required to set a new one`};if(t!==n)return{newPassword:`Your new passwords do not match`,confirmNewPassword:`Your new passwords do not match`};let i=r.blogUrl||window.location.host,o=a.title;i=i.replace(/^http(s?):\/\//,``);let s=i.match(/\/$/)?i:`${i}/`;if(o&&=o.trim().toLowerCase(),t.length<10)return{newPassword:`Password must be at least 10 characters long.`};t=t.toString();for(let e of Le)if(e===t)return{newPassword:`Sorry, you cannot use an insecure password.`};if(t.toLowerCase()===e.email.toLowerCase())return{newPassword:`Sorry, you cannot use an insecure password.`};for(let e of Re)if(t.toLowerCase().indexOf(e)>=0)return{newPassword:`Sorry, you cannot use an insecure password.`};return t.toLowerCase()===o||t.toLowerCase()===i||t.toLowerCase()===s||!ze(t)?{newPassword:`Sorry, you cannot use an insecure password.`}:{}};(0,Z.useEffect)(()=>{_===`saved`&&setTimeout(()=>{v(``),c(!1)},2500)},[_]),(0,Z.useEffect)(()=>{s&&setTimeout(()=>{O?w.current?.focus():S.current?.focus()},100)},[s,O]);let ne=()=>{c(!0)},re=async()=>{v(`saving`);let t=te({password:f,confirmPassword:m});if(b(t),Object.keys(t).length>0){v(``);return}try{await ee({newPassword:f,confirmNewPassword:m,oldPassword:u,userId:e?.id}),v(`saved`)}catch(e){v(``),l.error(e instanceof n?e.message:`Couldn't update password. Please try again.`),E(e,{withToast:!1})}},A=`Save password`;_===`saving`?A=`Saving...`:_===`saved`&&(A=`Saved`);let ie=(0,Y.jsxs)(Y.Fragment,{children:[O&&(0,Y.jsxs)(k,{"data-invalid":!!y.oldPassword||void 0,children:[(0,Y.jsx)(D,{htmlFor:`old-password`,children:`Old password`}),(0,Y.jsx)(j,{ref:w,"aria-invalid":!!y.oldPassword||void 0,"data-testid":`old-password`,id:`old-password`,type:`password`,value:u,onChange:e=>d(e.target.value)}),y.oldPassword&&(0,Y.jsx)(T,{children:y.oldPassword})]}),(0,Y.jsxs)(k,{"data-invalid":!!y.newPassword||void 0,children:[(0,Y.jsx)(D,{htmlFor:`new-password`,children:`New password`}),(0,Y.jsx)(j,{ref:S,"aria-invalid":!!y.newPassword||void 0,"data-testid":`new-password`,id:`new-password`,type:`password`,value:f,onChange:e=>p(e.target.value)}),y.newPassword&&(0,Y.jsx)(T,{children:y.newPassword})]}),(0,Y.jsxs)(k,{"data-invalid":!!y.confirmNewPassword||void 0,children:[(0,Y.jsx)(D,{htmlFor:`confirm-password`,children:`Confirm new password`}),(0,Y.jsx)(j,{ref:C,"aria-invalid":!!y.confirmNewPassword||void 0,"data-testid":`confirm-password`,id:`confirm-password`,type:`password`,value:m,onChange:e=>h(e.target.value)}),y.confirmNewPassword&&(0,Y.jsx)(T,{children:y.confirmNewPassword})]}),(0,Y.jsxs)(`div`,{className:`mt-1 flex items-center justify-end gap-3`,children:[(0,Y.jsx)(x,{type:`button`,variant:`outline`,onClick:()=>{c(!1),d(``),p(``),h(``),b({})},children:`Cancel`}),(0,Y.jsx)(x,{"data-testid":`save-password-button`,type:`button`,onClick:()=>void re(),children:A})]})]});return(0,Y.jsx)(Y.Fragment,{children:s?ie:(0,Y.jsxs)(`div`,{className:`relative flex flex-col`,children:[(0,Y.jsxs)(k,{className:`grow`,"data-disabled":!0,children:[(0,Y.jsx)(D,{htmlFor:`current-password`,children:`Password`}),(0,Y.jsx)(j,{id:`current-password`,type:`password`,value:`••••••••••••`,disabled:!0})]}),(0,Y.jsx)(x,{className:o?`absolute -top-1 right-0`:`absolute top-0 right-0 h-auto p-0 hover:bg-transparent`,"data-testid":`change-password-button`,size:`sm`,type:`button`,variant:`ghost`,onClick:ne,children:`Change`})]})})},Q=({user:e,setUserData:t})=>{let{data:{roles:n}={}}=C(),r=G(`superEditors`),i=[{hint:`Can write and edit their own posts, but cannot publish them.`,label:`Contributor`,value:`contributor`},{hint:`Can create, edit and publish their own posts, but can’t modify others.`,label:`Author`,value:`author`},{hint:`Can edit and publish any posts, and manage Authors and Contributors.`,label:`Editor`,value:`editor`},{hint:`Trusted user who has full access to all content, settings, and user management.`,label:`Administrator`,value:`administrator`}];if(r&&(i=i.map(e=>e.value===`editor`?{...e,label:`Editor (beta mode)`,value:`super editor`,hint:`Can invite and manage other Authors and Contributors, as well as edit and publish any posts on the site. Can manage members and moderate comments.`}:e)),B(e)){let e={label:`Owner`,value:`owner`};return(0,Y.jsxs)(k,{children:[(0,Y.jsx)(D,{children:`Role`}),(0,Y.jsxs)(P,{value:e.value,disabled:!0,children:[(0,Y.jsx)(N,{"aria-label":`Role`,children:(0,Y.jsx)(ue,{})}),(0,Y.jsx)(M,{children:(0,Y.jsx)(le,{value:e.value,children:e.label})})]}),(0,Y.jsxs)(O,{children:[`This user is the owner of the site.`,` `,(0,Y.jsx)(`a`,{href:`https://ghost.org/help/transfer-publication-ownership/`,rel:`noopener noreferrer`,target:`_blank`,children:`Transfer ownership`}),` `,`first to change their role.`]})]})}let a=e.roles[0].name.toLowerCase(),o=i.find(e=>e.value.toLowerCase()===a)?.label;return(0,Y.jsxs)(k,{children:[(0,Y.jsx)(D,{children:`Role`}),(0,Y.jsxs)(P,{value:a,onValueChange:r=>{let i=n?.find(e=>e.name.toLowerCase()===r.toLowerCase());i&&t?.({...e,roles:[i]})},children:[(0,Y.jsx)(N,{"aria-label":`Role`,"data-testid":`role-select`,children:(0,Y.jsx)(ue,{children:o})}),(0,Y.jsx)(M,{children:i.map(e=>(0,Y.jsx)(le,{value:e.value,children:(0,Y.jsxs)(`span`,{className:`flex flex-col`,children:[(0,Y.jsx)(`span`,{children:e.label}),(0,Y.jsx)(`span`,{className:`text-sm text-muted-foreground`,children:e.hint})]})},e.value))})]})]})},Ve=o({dataType:`StaffTokenResponseType`,path:`/users/me/token/`}),$=a({path:()=>`/users/me/token/`,method:`PUT`}),He=()=>{let{refetch:e}=Ve({enabled:!1}),t=i(),{confirm:n}=Ne(),[r,a]=(0,Z.useState)(``),{mutateAsync:o}=$();return(0,Z.useEffect)(()=>{(async()=>{let t=await e();t?.data?.apiKey&&a(`${t.data.apiKey.id}:${t.data.apiKey.secret}`)})()},[e]),(0,Y.jsxs)(`div`,{children:[(0,Y.jsx)(_,{as:`h6`,className:`mb-2 text-base`,weight:`semibold`,children:`Staff access token`}),(0,Y.jsx)(J,{hasLabel:!1,keys:[{id:`staff-access-token`,text:r||``,onRegenerate:()=>{n({title:`Regenerate your Staff Access Token`,prompt:`You can regenerate your Staff Access Token any time, but any scripts or applications using it will need to be updated.`,okLabel:`Regenerate your Staff Access Token`,okVariant:`destructive`,onOk:async e=>{try{let t=await o([]);a(`${t.apiKey.id}:${t.apiKey.secret}`),e?.remove()}catch(e){t(e)}}})}}]})]})},Ue=({errors:e,clearError:t,user:n,setUserData:r})=>{let{currentUser:i,siteData:a}=q(),o=Oe(a);return(0,Y.jsxs)(H,{children:[(0,Y.jsxs)(k,{"data-invalid":!!e?.email||void 0,children:[(0,Y.jsx)(D,{htmlFor:`staff-email`,children:`Email`}),(0,Y.jsx)(j,{"aria-invalid":!!e?.email||void 0,id:`staff-email`,maxLength:191,value:n.email,onChange:e=>r({...n,email:e.target.value}),onKeyDown:()=>t(`email`)}),e?.email?(0,Y.jsx)(T,{children:e.email}):(0,Y.jsx)(O,{children:`Used for notifications`})]}),(0,Y.jsx)(Be,{user:n}),V(i)&&(0,Y.jsx)(Q,{setUserData:r,user:n}),(0,Y.jsxs)(k,{"data-invalid":!!e?.name||void 0,children:[(0,Y.jsx)(D,{htmlFor:`staff-name`,children:`Full name`}),(0,Y.jsx)(j,{"aria-invalid":!!e?.name||void 0,id:`staff-name`,maxLength:191,value:n.name,onChange:e=>r({...n,name:e.target.value}),onKeyDown:()=>t(`name`)}),e?.name?(0,Y.jsx)(T,{children:e.name}):(0,Y.jsx)(O,{children:`Use your real name so people can recognize you`})]}),(0,Y.jsxs)(k,{children:[(0,Y.jsx)(D,{htmlFor:`staff-slug`,children:`Slug`}),(0,Y.jsx)(j,{id:`staff-slug`,maxLength:191,value:n.slug,onChange:e=>r({...n,slug:e.target.value})}),(0,Y.jsxs)(O,{children:[o,`author/`,n.slug]})]}),(0,Y.jsxs)(k,{"data-invalid":!!e?.location||void 0,children:[(0,Y.jsx)(D,{htmlFor:`staff-location`,children:`Location`}),(0,Y.jsx)(j,{"aria-invalid":!!e?.location||void 0,id:`staff-location`,maxLength:65535,value:n.location||``,onChange:e=>r({...n,location:e.target.value}),onKeyDown:()=>t(`location`)}),e?.location?(0,Y.jsx)(T,{children:e.location}):(0,Y.jsx)(O,{children:`Where in the world do you live?`})]}),(0,Y.jsxs)(k,{"data-invalid":!!e?.bio||void 0,children:[(0,Y.jsx)(D,{htmlFor:`staff-bio`,children:`Bio`}),(0,Y.jsx)(R,{"aria-invalid":!!e?.bio||void 0,id:`staff-bio`,maxLength:65535,value:n.bio||``,onChange:e=>{r({...n,bio:e.target.value})},onKeyDown:()=>t(`bio`)}),e?.bio?(0,Y.jsx)(T,{children:e.bio}):(0,Y.jsxs)(O,{children:[`Recommended: `,m(250),` characters. You‘ve used`,` `,(0,Y.jsx)(`span`,{className:`font-bold`,children:m(n.bio?.length||0)})]})]}),n.id===i.id&&(0,Y.jsx)(He,{})]})},We=e=>(0,Y.jsx)(W,{variant:`plain`,children:(0,Y.jsx)(Ue,{...e})}),Ge=({errors:e,clearError:t,validateField:n,user:r,setUserData:i})=>{let[a,o]=(0,Z.useState)(()=>Object.fromEntries(U.map(e=>{let t=r[e.key];return[e.key,e.toDisplayValue(t)]})));return(0,Y.jsxs)(H,{children:[(0,Y.jsxs)(k,{"data-invalid":!!e?.website||void 0,children:[(0,Y.jsx)(D,{htmlFor:`staff-website`,children:`Website`}),(0,Y.jsx)(j,{"aria-invalid":!!e?.website||void 0,"data-testid":`website-input`,id:`staff-website`,maxLength:2e3,placeholder:`https://example.com`,value:r.website||``,onChange:e=>{i({...r,website:e.target.value})},onKeyDown:()=>t(`website`)}),e?.website&&(0,Y.jsx)(T,{children:e.website})]}),U.map(s=>(0,Y.jsxs)(k,{"data-invalid":!!e?.[s.key]||void 0,children:[(0,Y.jsx)(D,{htmlFor:`staff-${s.key}`,children:s.staffTitle}),(0,Y.jsx)(j,{"aria-invalid":!!e?.[s.key]||void 0,"data-testid":s.testId,id:`staff-${s.key}`,maxLength:2e3,placeholder:s.placeholder,value:a[s.key],onBlur:e=>{if(n(s.key,e.target.value)){let{displayValue:t,storedValue:n}=xe(s.key,e.target.value);o(e=>({...e,[s.key]:t})),i({...r,[s.key]:n})}},onChange:e=>{o(t=>({...t,[s.key]:e.target.value}))},onKeyDown:()=>t(s.key)}),e?.[s.key]&&(0,Y.jsx)(T,{children:e[s.key]})]},s.key))]})},Ke=e=>(0,Y.jsx)(W,{variant:`plain`,children:(0,Y.jsx)(Ge,{...e})}),qe=e(je(),1),Je={name:({name:e})=>{let t=``;return e||(t=`Name is required`),e&&e.length>191&&(t=`Name is too long`),t},email:({email:e})=>qe.default.isEmail(e||``)?``:`Enter a valid email address`,url:({url:e})=>!e||qe.default.isURL(e,{require_tld:!1})?``:`Enter a valid URL`,bio:({bio:e})=>!e||e.length<=250?``:`Bio is too long`,location:({location:e})=>!e||e.length<=150?``:`Location is too long`,website:({website:e})=>!e||qe.default.isURL(e)&&e.length<=2e3?``:`Enter a valid URL`,...Object.fromEntries(U.map(e=>[e.key,t=>Se(e.key,t[e.key])]))},Ye=({user:e,onDeletingUserChange:t})=>{let{isAdmin7:n}=g(),{updateRoute:r}=Me(),a=p(),o=Pe(),c=f(),d=e=>{let t=e.split(`/`).pop()||``;return t===`social-links`||t===`email-notifications`?t:`profile`},{ownerUser:m}=we(),{currentUser:C}=q(),T=i(),{confirm:E,showLimit:D}=Ne(),{formState:O,setFormState:k,saveState:j,handleSave:le,updateForm:M,errors:N,setErrors:ue,clearError:P,okProps:F}=u({initialState:e,savingDelay:500,savedDelay:500,onValidate:t=>Object.entries(Je).reduce((n,[r,i])=>{if(Ce.includes(r)&&t[r]===e[r])return n;let a=i(t);return a&&(n[r]=a),n},{}),onSave:async t=>{let n=(await xe?.(t))?.users?.[0];if(n&&(k(()=>n),n.slug!==e.slug)){let e=d(c.pathname),t=e===`profile`?``:`/${e}`;r({route:`staff/${n.slug}${t}`,replace:!0})}},onSaveError:T}),R=e=>M(()=>e),z=(e,t)=>{let n=Je[e]?.({[e]:t});return n?(ue({...N,[e]:n}),!1):(P(e),!0)},{mutateAsync:he}=ie(),{mutateAsync:xe}=ge(),{mutateAsync:H}=_e(),{mutateAsync:Se}=me(),U=w(),W=Fe(),G=(0,Z.useCallback)(()=>{ye(C)?r(`staff`):a(`/`)},[C,a,r]),Ee=async e=>{if(e.status===`inactive`&&e.roles[0].name!==`Contributor`)try{await U?.errorIfWouldGoOverLimit(`staff`)}catch(e){if(e instanceof s){D({formSheet:!0,prompt:e.message||`Your current plan doesn't support more users.`,onOk:()=>r({route:o,isExternal:!0})});return}else throw e}let t=`This user will no longer be able to log in but their posts will be kept.`;e.status===`inactive`&&(t=`This user will be able to log in again and will have the same permissions they had previously.`),E({title:`Are you sure you want to suspend this user?`,prompt:(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`strong`,{children:`WARNING:`}),` `,t]}),okLabel:e.status===`inactive`?`Un-suspend`:`Suspend`,okRunningLabel:e.status===`inactive`?`Un-suspending...`:`Suspending...`,okVariant:`destructive`,onOk:async t=>{let n={...e,status:e.status===`inactive`?`active`:`inactive`};try{await xe(n),k(()=>n),t?.remove(),l.success(e.status===`inactive`?`User un-suspended`:`User suspended`)}catch(e){T(e)}}})},Oe=(n,{owner:r})=>{E({title:`Are you sure you want to delete this user?`,prompt:(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(`p`,{className:`mb-3`,children:[(0,Y.jsx)(`span`,{className:`font-bold`,children:n.name||n.email}),` will be permanently deleted and all their posts will be automatically assigned to`,` `,(0,Y.jsx)(`span`,{className:`font-bold`,children:r.name}),`.`]}),(0,Y.jsxs)(`p`,{children:[`To make these easy to find in the future, each post will be given an internal tag of`,` `,(0,Y.jsxs)(`span`,{className:`font-bold`,children:[`#`,e.slug]})]})]}),okLabel:`Delete user`,okVariant:`destructive`,onOk:async e=>{t(!0);try{await H(n?.id),e?.remove(),G(),setTimeout(()=>l.success(`User deleted`),100)}catch(e){t(!1),T(e)}}})},je=()=>{E({title:`Transfer Ownership`,prompt:`Are you sure you want to transfer the ownership of this blog? You will not be able to undo this action.`,okLabel:`Yep — I'm sure`,okVariant:`destructive`,onOk:async t=>{try{await Se(e.id),t?.remove(),l.success(`Ownership transferred`)}catch(e){T(e)}}})},J=async(e,t)=>{try{let n=ce(await he({file:t}));switch(e){case`cover_image`:M(e=>({...e,cover_image:n}));break;case`profile_image`:M(e=>({...e,profile_image:n}));break}}catch(e){let t=e;t.response.status===415&&(t.message=`Unsupported file type`),T(t)}},X=e=>{switch(e){case`cover_image`:M(e=>({...e,cover_image:``}));break;case`profile_image`:M(e=>({...e,profile_image:``}));break}},Le=V(C)||be(C)&&pe(e),Re=B(C)&&ve(O)&&O.status!==`inactive`,ze=O.id!==C.id&&(V(C)&&!B(e)||be(C)&&pe(e)),Be=O.status===`inactive`?`Un-suspend user`:`Suspend user`,Q=h(`h-8 px-3 opacity-80 hover:opacity-100`,A(n)),Ve=O.status===`inactive`?` (Suspended)`:``,$=!ye(C),He=`mx-auto w-full max-w-[536px]`,[Ue,Ge]=(0,Z.useState)(d(c.pathname));return(0,Y.jsx)(Te,{animate:!$,backDrop:!$,buttonsDisabled:F.disabled,cancelLabel:`Close`,dirty:j===`unsaved`,footerClassName:$?`mx-auto w-full max-w-[calc(536px+5rem)]`:void 0,hideXOnMobile:!0,okLabel:F.label||`Save`,okVariant:F.variant,size:$?`bleed`:`md`,stickyFooter:!0,testId:`user-detail-modal`,width:$?`full`:600,onClose:G,onOk:async()=>{await le({fakeWhenUnchanged:!0})},children:(0,Y.jsxs)(`div`,{children:[(0,Y.jsx)(`div`,{className:`relative ${$?`-mx-10 -mt-10`:`-mx-8 -mt-8 rounded-t`}`,children:(0,Y.jsx)(`div`,{className:h(`flex flex-wrap items-end justify-between gap-8 p-8`,O.cover_image&&`bg-cover bg-center`,$&&O.cover_image&&`min-h-[30vmin]`),style:{backgroundImage:O.cover_image?`url(${O.cover_image})`:`none`},children:(0,Y.jsxs)(`div`,{className:h(`flex w-full flex-col gap-2`,$&&He),children:[(0,Y.jsxs)(`div`,{className:`flex flex-nowrap items-start justify-between gap-3`,children:[(0,Y.jsx)(`div`,{children:(0,Y.jsx)(oe,{className:`-ml-1 size-20 overflow-visible rounded-full`,children:O.profile_image?(0,Y.jsxs)(ne,{className:`rounded-full`,children:[(0,Y.jsx)(se,{"data-testid":`profile-image-preview`,id:`avatar`,src:O.profile_image}),(0,Y.jsxs)(te,{className:`top-1 right-1`,children:[W.isEnabled&&(0,Y.jsx)(re,{"aria-label":`Edit profile image`,className:`rounded-full`,onClick:()=>W.openEditor({image:O.profile_image||``,handleSave:async e=>J(`profile_image`,e)}),children:(0,Y.jsx)(S,{})}),(0,Y.jsx)(re,{"aria-label":`Remove profile image`,className:`rounded-full`,onClick:()=>X(`profile_image`),children:(0,Y.jsx)(v,{})})]})]}):(0,Y.jsx)(ae,{className:`rounded-full bg-surface-inverse text-surface-inverse-foreground opacity-80 hover:opacity-100`,inputId:`avatar`,inputTestId:`profile-image-upload`,onDropAccepted:e=>void J(`profile_image`,e[0]),children:(0,Y.jsx)(b,{className:`size-8 text-surface-inverse-foreground`})})})}),(0,Y.jsxs)(`div`,{className:`flex flex-nowrap items-start gap-3`,children:[O.cover_image?(0,Y.jsxs)(`div`,{className:`flex flex-nowrap items-end justify-end gap-4`,children:[(0,Y.jsx)(`img`,{alt:``,className:`hidden`,"data-testid":`cover-image-preview`,src:O.cover_image}),W.isEnabled&&(0,Y.jsx)(x,{className:Q,type:`button`,onClick:()=>W.openEditor({image:O.cover_image||``,handleSave:async e=>J(`cover_image`,e)}),children:`Edit cover image`}),(0,Y.jsx)(x,{className:Q,type:`button`,onClick:()=>X(`cover_image`),children:`Delete cover image`})]}):(0,Y.jsx)(ee,{className:`h-8`,inputId:`cover-image`,inputTestId:`cover-image-upload`,variant:`button`,onDropAccepted:e=>void J(`cover_image`,e[0]),children:`Upload cover image`}),Le&&(0,Y.jsx)(`div`,{className:`z-10`,children:(0,Y.jsxs)(De,{children:[(0,Y.jsx)(Ae,{asChild:!0,children:n?(0,Y.jsx)(x,{"aria-label":`Actions`,className:O.cover_image?h(Q,`p-0`):void 0,size:`icon`,type:`button`,variant:`outline`,children:(0,Y.jsx)(y,{})}):(0,Y.jsxs)(`button`,{className:h(`flex h-8 cursor-pointer items-center justify-center rounded px-3`,O.cover_image?`bg-[rgba(0,0,0,0.75)] opacity-80 hover:opacity-100`:`border border-gray-300 bg-transparent text-black dark:border-gray-800 dark:text-white`),type:`button`,children:[(0,Y.jsx)(`span`,{className:`sr-only`,children:`Actions`}),(0,Y.jsx)(y,{className:h(`size-5`,O.cover_image&&`text-white`)})]})}),(0,Y.jsxs)(ke,{align:`end`,className:`z-[9999]`,children:[Re&&(0,Y.jsx)(K,{onSelect:je,children:`Make owner`}),(0,Y.jsx)(K,{onSelect:()=>{r(`history/view/${O.id}`)},children:`View user activity`}),ze&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(K,{onSelect:()=>{Ee(O)},children:Be}),(0,Y.jsx)(K,{className:`text-destructive focus:text-destructive`,onSelect:()=>{Oe(e,{owner:m})},children:`Delete user`})]})]})]})})]})]}),(0,Y.jsxs)(`div`,{children:[(0,Y.jsxs)(_,{as:`h3`,className:h(`break-words md:text-2xl md:break-normal`,O.cover_image?`text-white`:`text-foreground`),leading:`heading`,size:`xl`,weight:`bold`,children:[e.name,Ve]}),(0,Y.jsx)(`span`,{className:h(`text-md font-medium capitalize`,O.cover_image?`text-white`:`text-black dark:text-white`),children:e.roles[0].name.toLowerCase()})]})]})})}),(0,Y.jsx)(`div`,{className:h(`mt-6 flex flex-col`,$&&He),children:(0,Y.jsxs)(fe,{value:Ue,variant:`underline`,onValueChange:t=>{let n=t===`profile`?``:`/${t}`;r(`staff/${e.slug}${n}`),Ge(t)},children:[(0,Y.jsxs)(de,{children:[(0,Y.jsx)(I,{title:`Profile`,value:`profile`,children:`Profile`}),(0,Y.jsx)(I,{title:`Social Links`,value:`social-links`,children:`Social Links`}),(0,Y.jsx)(I,{title:`Email Notifications`,value:`email-notifications`,children:`Email Notifications`})]}),(0,Y.jsx)(L,{className:`pt-4`,value:`profile`,children:(0,Y.jsx)(We,{clearError:P,errors:N,setUserData:R,user:O,validateField:z})}),(0,Y.jsx)(L,{className:`pt-4`,value:`social-links`,children:(0,Y.jsx)(Ke,{clearError:P,errors:N,setUserData:R,user:O,validateField:z})}),(0,Y.jsx)(L,{className:`pt-4`,value:`email-notifications`,children:(0,Y.jsx)(Ie,{setUserData:R,user:O})})]})})]})})},Xe=()=>{let{slug:e}=d(),{currentUser:t}=q(),{updateRoute:n}=Me(),a=p(),o=i(),[s,c]=(0,Z.useState)(!1),u=t.slug===e,{data:f,error:m}=he(e||``,{enabled:!u&&!!e,defaultErrorHandler:!1}),h=u?t:f?.users?.[0],g=m instanceof r&&m.response?.status===404;(0,Z.useEffect)(()=>{m&&!g&&o(m)},[m,g,o]);let _=!u&&!!e&&!h&&(g||f!==void 0),v=(0,Z.useRef)(void 0);h&&(v.current=h);let y=h||(_?void 0:v.current),b=_?e??null:null,x=(0,Z.useRef)(null);return(0,Z.useEffect)(()=>{!b||s||x.current===b||(x.current=b,l.error(`User not found`),ye(t)?n({route:`staff`,replace:!0}):a(`/`))},[b,s,t,a,n]),y?(0,Y.jsx)(Ye,{user:y,onDeletingUserChange:c}):null};export{Xe as default};
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]=`4ea7518e-b7d3-4d66-a61b-8dc383268674`,e._sentryDebugIdIdentifier=`sentry-dbid-4ea7518e-b7d3-4d66-a61b-8dc383268674`)}catch{}})();import{s as e,t}from"./react-C9lG_SsT.js";import{O as n,_ as r,g as i,n as a,r as o,y as s}from"./hooks-0r7qxGEo.js";import{t as c}from"./jsx-runtime-Bm2_KH-0.js";import{n as l}from"./dist-pogVoW2G.js";import{t as u}from"./use-form-ElCUnbKi.js";import{h as d,u as f}from"./chunk-OB3PAWPO-D3muQBsq.js";import{a as p}from"./router-provider-Cf-bcYZr.js";import{H as m,Z as h,r as g}from"./shade-provider-DvrXKKQZ.js";import{t as _}from"./text-BnCSdzao.js";import{D as v,Pn as y,g as b,t as x,yt as S}from"./button-CTHYSI-d.js";import{n as C,t as w}from"./use-limiter-gF219BEg.js";import{t as ee}from"./dropzone-C0p6KEsa.js";import{i as T,n as E,o as D,r as O,t as k}from"./field-DCPPrQDr.js";import{a as te,c as ne,i as re,l as A,n as ie,o as ae,r as oe,s as se,t as ce}from"./images-DTZtaIAr.js";import{t as j}from"./input-BHb2A_DU.js";import{i as le,n as M,o as N,s as ue,t as P}from"./select-DeloOYCg.js";import{t as F}from"./switch-BppWscjz.js";import{i as I,n as L,r as de,t as fe}from"./tabs-fHs3A8WC.js";import{t as R}from"./textarea-B_rfKtjs.js";import{_ as z,c as pe,d as B,g as me,h as he,m as ge,o as V,p as _e,s as ve,t as ye,u as be}from"./users-CKJaAxEJ.js";import{a as xe,c as H,i as Se,n as U,o as W,r as Ce,t as we}from"./use-staff-users-CnwfdSx1.js";import{t as Te}from"./settings-modal-3x4v8abr.js";import{B as G,Vt as Ee,ct as De,ft as K,h as Oe,ut as ke,vt as Ae}from"./index-RuRs_qGS.js";import{t as je}from"./validator-DgUCXsE8.js";import{t as Me}from"./use-settings-navigation-CO2nUqDW.js";import{n as Ne}from"./confirmation-context-By_jX_cA.js";import{n as q}from"./global-data-context-ogIy0FUG.js";import{t as Pe}from"./use-upgrade-route-C-V-Xfak.js";import{t as J}from"./api-keys-COZMaKEL.js";import{t as Fe}from"./use-pintura-editor-D_4zhlGE.js";var Y=c(),X=({user:e,setUserData:t})=>{let{config:n,settings:r}=q(),i=Ee(r||[],n||{});return(0,Y.jsxs)(H,{children:[(0,Y.jsxs)(`div`,{children:[(0,Y.jsx)(`span`,{className:`text-sm font-medium tracking-wide text-gray-700 uppercase`,children:`Engagement`}),(0,Y.jsxs)(`div`,{className:`mt-3 flex flex-col gap-4`,children:[(0,Y.jsxs)(k,{orientation:`horizontal`,children:[(0,Y.jsxs)(E,{children:[(0,Y.jsx)(D,{htmlFor:`comment-notifications`,children:`Comments`}),(0,Y.jsx)(O,{children:`Every time a member comments on one of your posts`})]}),(0,Y.jsx)(F,{checked:!!e.comment_notifications,id:`comment-notifications`,onCheckedChange:n=>t({...e,comment_notifications:n})})]}),V(e)&&(0,Y.jsxs)(k,{orientation:`horizontal`,children:[(0,Y.jsxs)(E,{children:[(0,Y.jsx)(D,{htmlFor:`recommendation-notifications`,children:`Recommendations`}),(0,Y.jsx)(O,{children:`Every time another publisher recommends you to their audience`})]}),(0,Y.jsx)(F,{checked:!!e.recommendation_notifications,id:`recommendation-notifications`,onCheckedChange:n=>t({...e,recommendation_notifications:n})})]})]})]}),V(e)&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(`div`,{children:[(0,Y.jsx)(`span`,{className:`text-sm font-medium tracking-wide text-gray-700 uppercase`,children:`Members`}),(0,Y.jsxs)(`div`,{className:`mt-3 flex flex-col gap-4`,children:[(0,Y.jsxs)(k,{orientation:`horizontal`,children:[(0,Y.jsxs)(E,{children:[(0,Y.jsx)(D,{htmlFor:`free-member-signup-notifications`,children:`New signups`}),(0,Y.jsx)(O,{children:`Every time a new free member signs up`})]}),(0,Y.jsx)(F,{checked:!!e.free_member_signup_notification,id:`free-member-signup-notifications`,onCheckedChange:n=>t({...e,free_member_signup_notification:n})})]}),i&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(k,{orientation:`horizontal`,children:[(0,Y.jsxs)(E,{children:[(0,Y.jsx)(D,{htmlFor:`paid-subscription-started-notifications`,children:`New paid members`}),(0,Y.jsx)(O,{children:`Every time a member starts a new paid subscription`})]}),(0,Y.jsx)(F,{checked:!!e.paid_subscription_started_notification,id:`paid-subscription-started-notifications`,onCheckedChange:n=>t({...e,paid_subscription_started_notification:n})})]}),(0,Y.jsxs)(k,{orientation:`horizontal`,children:[(0,Y.jsxs)(E,{children:[(0,Y.jsx)(D,{htmlFor:`paid-subscription-canceled-notifications`,children:`Paid member cancellations`}),(0,Y.jsx)(O,{children:`Every time a member cancels their paid subscription`})]}),(0,Y.jsx)(F,{checked:!!e.paid_subscription_canceled_notification,id:`paid-subscription-canceled-notifications`,onCheckedChange:n=>t({...e,paid_subscription_canceled_notification:n})})]})]})]})]}),(0,Y.jsxs)(`div`,{children:[(0,Y.jsx)(`span`,{className:`text-sm font-medium tracking-wide text-gray-700 uppercase`,children:`Revenue`}),(0,Y.jsxs)(`div`,{className:`mt-3 flex flex-col gap-4`,children:[(0,Y.jsxs)(k,{orientation:`horizontal`,children:[(0,Y.jsxs)(E,{children:[(0,Y.jsx)(D,{htmlFor:`milestone-notifications`,children:`Milestones`}),(0,Y.jsx)(O,{children:i?`Occasional summaries of your audience & revenue growth`:`Occasional summaries of your audience growth`})]}),(0,Y.jsx)(F,{checked:!!e.milestone_notifications,id:`milestone-notifications`,onCheckedChange:n=>t({...e,milestone_notifications:n})})]}),i&&(0,Y.jsxs)(k,{orientation:`horizontal`,children:[(0,Y.jsxs)(E,{children:[(0,Y.jsx)(D,{htmlFor:`donation-notifications`,children:`Tips & donations`}),(0,Y.jsx)(O,{children:`Every time you receive a one-time payment`})]}),(0,Y.jsx)(F,{checked:!!e.donation_notifications,id:`donation-notifications`,onCheckedChange:n=>t({...e,donation_notifications:n})})]}),i&&(0,Y.jsxs)(k,{orientation:`horizontal`,children:[(0,Y.jsxs)(E,{children:[(0,Y.jsx)(D,{htmlFor:`gift-subscription-notifications`,children:`Gift subscriptions`}),(0,Y.jsx)(O,{children:`Every time someone purchases or redeems a gift subscription`})]}),(0,Y.jsx)(F,{checked:!!e.gift_subscription_notifications,id:`gift-subscription-notifications`,onCheckedChange:n=>t({...e,gift_subscription_notifications:n})})]})]})]})]})]})},Ie=({user:e,setUserData:t})=>(0,Y.jsx)(W,{variant:`plain`,children:(0,Y.jsx)(X,{setUserData:t,user:e})}),Z=e(t(),1),Le=[`1234567890`,`qwertyuiop`,`qwertzuiop`,`asdfghjkl;`,`abcdefghij`,`0987654321`,`1q2w3e4r5t`,`12345asdfg`],Re=[`ghost`,`password`,`passw0rd`],ze=e=>{let t={},n=!0,r=e.length/2;for(let n=0;n<e.length;n+=1)t[e[n]]?t[e[n]]+=1:t[e[n]]=1;for(let e in t)if(t[e]>=r)return n=!1,n;return n},Be=({user:e})=>{let{currentUser:t,config:r,siteData:a}=q(),{isAdmin7:o}=g(),[s,c]=(0,Z.useState)(!1),[u,d]=(0,Z.useState)(``),[f,p]=(0,Z.useState)(``),[m,h]=(0,Z.useState)(``),[_,v]=(0,Z.useState)(``),[y,b]=(0,Z.useState)({}),S=(0,Z.useRef)(null),C=(0,Z.useRef)(null),w=(0,Z.useRef)(null),{mutateAsync:ee}=z(),E=i(),O=e.id===t.id,te=({password:t,confirmPassword:n})=>{if(O&&!u)return{oldPassword:`Your current password is required to set a new one`};if(t!==n)return{newPassword:`Your new passwords do not match`,confirmNewPassword:`Your new passwords do not match`};let i=r.blogUrl||window.location.host,o=a.title;i=i.replace(/^http(s?):\/\//,``);let s=i.match(/\/$/)?i:`${i}/`;if(o&&=o.trim().toLowerCase(),t.length<10)return{newPassword:`Password must be at least 10 characters long.`};t=t.toString();for(let e of Le)if(e===t)return{newPassword:`Sorry, you cannot use an insecure password.`};if(t.toLowerCase()===e.email.toLowerCase())return{newPassword:`Sorry, you cannot use an insecure password.`};for(let e of Re)if(t.toLowerCase().indexOf(e)>=0)return{newPassword:`Sorry, you cannot use an insecure password.`};return t.toLowerCase()===o||t.toLowerCase()===i||t.toLowerCase()===s||!ze(t)?{newPassword:`Sorry, you cannot use an insecure password.`}:{}};(0,Z.useEffect)(()=>{_===`saved`&&setTimeout(()=>{v(``),c(!1)},2500)},[_]),(0,Z.useEffect)(()=>{s&&setTimeout(()=>{O?w.current?.focus():S.current?.focus()},100)},[s,O]);let ne=()=>{c(!0)},re=async()=>{v(`saving`);let t=te({password:f,confirmPassword:m});if(b(t),Object.keys(t).length>0){v(``);return}try{await ee({newPassword:f,confirmNewPassword:m,oldPassword:u,userId:e?.id}),v(`saved`)}catch(e){v(``),l.error(e instanceof n?e.message:`Couldn't update password. Please try again.`),E(e,{withToast:!1})}},A=`Save password`;_===`saving`?A=`Saving...`:_===`saved`&&(A=`Saved`);let ie=(0,Y.jsxs)(Y.Fragment,{children:[O&&(0,Y.jsxs)(k,{"data-invalid":!!y.oldPassword||void 0,children:[(0,Y.jsx)(D,{htmlFor:`old-password`,children:`Old password`}),(0,Y.jsx)(j,{ref:w,"aria-invalid":!!y.oldPassword||void 0,"data-testid":`old-password`,id:`old-password`,type:`password`,value:u,onChange:e=>d(e.target.value)}),y.oldPassword&&(0,Y.jsx)(T,{children:y.oldPassword})]}),(0,Y.jsxs)(k,{"data-invalid":!!y.newPassword||void 0,children:[(0,Y.jsx)(D,{htmlFor:`new-password`,children:`New password`}),(0,Y.jsx)(j,{ref:S,"aria-invalid":!!y.newPassword||void 0,"data-testid":`new-password`,id:`new-password`,type:`password`,value:f,onChange:e=>p(e.target.value)}),y.newPassword&&(0,Y.jsx)(T,{children:y.newPassword})]}),(0,Y.jsxs)(k,{"data-invalid":!!y.confirmNewPassword||void 0,children:[(0,Y.jsx)(D,{htmlFor:`confirm-password`,children:`Confirm new password`}),(0,Y.jsx)(j,{ref:C,"aria-invalid":!!y.confirmNewPassword||void 0,"data-testid":`confirm-password`,id:`confirm-password`,type:`password`,value:m,onChange:e=>h(e.target.value)}),y.confirmNewPassword&&(0,Y.jsx)(T,{children:y.confirmNewPassword})]}),(0,Y.jsxs)(`div`,{className:`mt-1 flex items-center justify-end gap-3`,children:[(0,Y.jsx)(x,{type:`button`,variant:`outline`,onClick:()=>{c(!1),d(``),p(``),h(``),b({})},children:`Cancel`}),(0,Y.jsx)(x,{"data-testid":`save-password-button`,type:`button`,onClick:()=>void re(),children:A})]})]});return(0,Y.jsx)(Y.Fragment,{children:s?ie:(0,Y.jsxs)(`div`,{className:`relative flex flex-col`,children:[(0,Y.jsxs)(k,{className:`grow`,"data-disabled":!0,children:[(0,Y.jsx)(D,{htmlFor:`current-password`,children:`Password`}),(0,Y.jsx)(j,{id:`current-password`,type:`password`,value:`••••••••••••`,disabled:!0})]}),(0,Y.jsx)(x,{className:o?`absolute -top-1 right-0`:`absolute top-0 right-0 h-auto p-0 hover:bg-transparent`,"data-testid":`change-password-button`,size:`sm`,type:`button`,variant:`ghost`,onClick:ne,children:`Change`})]})})},Q=({user:e,setUserData:t})=>{let{data:{roles:n}={}}=C(),r=G(`superEditors`),i=[{hint:`Can write and edit their own posts, but cannot publish them.`,label:`Contributor`,value:`contributor`},{hint:`Can create, edit and publish their own posts, but can’t modify others.`,label:`Author`,value:`author`},{hint:`Can edit and publish any posts, and manage Authors and Contributors.`,label:`Editor`,value:`editor`},{hint:`Trusted user who has full access to all content, settings, and user management.`,label:`Administrator`,value:`administrator`}];if(r&&(i=i.map(e=>e.value===`editor`?{...e,label:`Editor (beta mode)`,value:`super editor`,hint:`Can invite and manage other Authors and Contributors, as well as edit and publish any posts on the site. Can manage members and moderate comments.`}:e)),B(e)){let e={label:`Owner`,value:`owner`};return(0,Y.jsxs)(k,{children:[(0,Y.jsx)(D,{children:`Role`}),(0,Y.jsxs)(P,{value:e.value,disabled:!0,children:[(0,Y.jsx)(N,{"aria-label":`Role`,children:(0,Y.jsx)(ue,{})}),(0,Y.jsx)(M,{children:(0,Y.jsx)(le,{value:e.value,children:e.label})})]}),(0,Y.jsxs)(O,{children:[`This user is the owner of the site.`,` `,(0,Y.jsx)(`a`,{href:`https://ghost.org/help/transfer-publication-ownership/`,rel:`noopener noreferrer`,target:`_blank`,children:`Transfer ownership`}),` `,`first to change their role.`]})]})}let a=e.roles[0].name.toLowerCase(),o=i.find(e=>e.value.toLowerCase()===a)?.label;return(0,Y.jsxs)(k,{children:[(0,Y.jsx)(D,{children:`Role`}),(0,Y.jsxs)(P,{value:a,onValueChange:r=>{let i=n?.find(e=>e.name.toLowerCase()===r.toLowerCase());i&&t?.({...e,roles:[i]})},children:[(0,Y.jsx)(N,{"aria-label":`Role`,"data-testid":`role-select`,children:(0,Y.jsx)(ue,{children:o})}),(0,Y.jsx)(M,{children:i.map(e=>(0,Y.jsx)(le,{value:e.value,children:(0,Y.jsxs)(`span`,{className:`flex flex-col`,children:[(0,Y.jsx)(`span`,{children:e.label}),(0,Y.jsx)(`span`,{className:`text-sm text-muted-foreground`,children:e.hint})]})},e.value))})]})]})},Ve=o({dataType:`StaffTokenResponseType`,path:`/users/me/token/`}),$=a({path:()=>`/users/me/token/`,method:`PUT`}),He=()=>{let{refetch:e}=Ve({enabled:!1}),t=i(),{confirm:n}=Ne(),[r,a]=(0,Z.useState)(``),{mutateAsync:o}=$();return(0,Z.useEffect)(()=>{(async()=>{let t=await e();t?.data?.apiKey&&a(`${t.data.apiKey.id}:${t.data.apiKey.secret}`)})()},[e]),(0,Y.jsxs)(`div`,{children:[(0,Y.jsx)(_,{as:`h6`,className:`mb-2 text-base`,weight:`semibold`,children:`Staff access token`}),(0,Y.jsx)(J,{hasLabel:!1,keys:[{id:`staff-access-token`,text:r||``,onRegenerate:()=>{n({title:`Regenerate your Staff Access Token`,prompt:`You can regenerate your Staff Access Token any time, but any scripts or applications using it will need to be updated.`,okLabel:`Regenerate your Staff Access Token`,okVariant:`destructive`,onOk:async e=>{try{let t=await o([]);a(`${t.apiKey.id}:${t.apiKey.secret}`),e?.remove()}catch(e){t(e)}}})}}]})]})},Ue=({errors:e,clearError:t,user:n,setUserData:r})=>{let{currentUser:i,siteData:a}=q(),o=Oe(a);return(0,Y.jsxs)(H,{children:[(0,Y.jsxs)(k,{"data-invalid":!!e?.email||void 0,children:[(0,Y.jsx)(D,{htmlFor:`staff-email`,children:`Email`}),(0,Y.jsx)(j,{"aria-invalid":!!e?.email||void 0,id:`staff-email`,maxLength:191,value:n.email,onChange:e=>r({...n,email:e.target.value}),onKeyDown:()=>t(`email`)}),e?.email?(0,Y.jsx)(T,{children:e.email}):(0,Y.jsx)(O,{children:`Used for notifications`})]}),(0,Y.jsx)(Be,{user:n}),V(i)&&(0,Y.jsx)(Q,{setUserData:r,user:n}),(0,Y.jsxs)(k,{"data-invalid":!!e?.name||void 0,children:[(0,Y.jsx)(D,{htmlFor:`staff-name`,children:`Full name`}),(0,Y.jsx)(j,{"aria-invalid":!!e?.name||void 0,id:`staff-name`,maxLength:191,value:n.name,onChange:e=>r({...n,name:e.target.value}),onKeyDown:()=>t(`name`)}),e?.name?(0,Y.jsx)(T,{children:e.name}):(0,Y.jsx)(O,{children:`Use your real name so people can recognize you`})]}),(0,Y.jsxs)(k,{children:[(0,Y.jsx)(D,{htmlFor:`staff-slug`,children:`Slug`}),(0,Y.jsx)(j,{id:`staff-slug`,maxLength:191,value:n.slug,onChange:e=>r({...n,slug:e.target.value})}),(0,Y.jsxs)(O,{children:[o,`author/`,n.slug]})]}),(0,Y.jsxs)(k,{"data-invalid":!!e?.location||void 0,children:[(0,Y.jsx)(D,{htmlFor:`staff-location`,children:`Location`}),(0,Y.jsx)(j,{"aria-invalid":!!e?.location||void 0,id:`staff-location`,maxLength:65535,value:n.location||``,onChange:e=>r({...n,location:e.target.value}),onKeyDown:()=>t(`location`)}),e?.location?(0,Y.jsx)(T,{children:e.location}):(0,Y.jsx)(O,{children:`Where in the world do you live?`})]}),(0,Y.jsxs)(k,{"data-invalid":!!e?.bio||void 0,children:[(0,Y.jsx)(D,{htmlFor:`staff-bio`,children:`Bio`}),(0,Y.jsx)(R,{"aria-invalid":!!e?.bio||void 0,id:`staff-bio`,maxLength:65535,value:n.bio||``,onChange:e=>{r({...n,bio:e.target.value})},onKeyDown:()=>t(`bio`)}),e?.bio?(0,Y.jsx)(T,{children:e.bio}):(0,Y.jsxs)(O,{children:[`Recommended: `,m(250),` characters. You‘ve used`,` `,(0,Y.jsx)(`span`,{className:`font-bold`,children:m(n.bio?.length||0)})]})]}),n.id===i.id&&(0,Y.jsx)(He,{})]})},We=e=>(0,Y.jsx)(W,{variant:`plain`,children:(0,Y.jsx)(Ue,{...e})}),Ge=({errors:e,clearError:t,validateField:n,user:r,setUserData:i})=>{let[a,o]=(0,Z.useState)(()=>Object.fromEntries(U.map(e=>{let t=r[e.key];return[e.key,e.toDisplayValue(t)]})));return(0,Y.jsxs)(H,{children:[(0,Y.jsxs)(k,{"data-invalid":!!e?.website||void 0,children:[(0,Y.jsx)(D,{htmlFor:`staff-website`,children:`Website`}),(0,Y.jsx)(j,{"aria-invalid":!!e?.website||void 0,"data-testid":`website-input`,id:`staff-website`,maxLength:2e3,placeholder:`https://example.com`,value:r.website||``,onChange:e=>{i({...r,website:e.target.value})},onKeyDown:()=>t(`website`)}),e?.website&&(0,Y.jsx)(T,{children:e.website})]}),U.map(s=>(0,Y.jsxs)(k,{"data-invalid":!!e?.[s.key]||void 0,children:[(0,Y.jsx)(D,{htmlFor:`staff-${s.key}`,children:s.staffTitle}),(0,Y.jsx)(j,{"aria-invalid":!!e?.[s.key]||void 0,"data-testid":s.testId,id:`staff-${s.key}`,maxLength:2e3,placeholder:s.placeholder,value:a[s.key],onBlur:e=>{if(n(s.key,e.target.value)){let{displayValue:t,storedValue:n}=xe(s.key,e.target.value);o(e=>({...e,[s.key]:t})),i({...r,[s.key]:n})}},onChange:e=>{o(t=>({...t,[s.key]:e.target.value}))},onKeyDown:()=>t(s.key)}),e?.[s.key]&&(0,Y.jsx)(T,{children:e[s.key]})]},s.key))]})},Ke=e=>(0,Y.jsx)(W,{variant:`plain`,children:(0,Y.jsx)(Ge,{...e})}),qe=e(je(),1),Je={name:({name:e})=>{let t=``;return e||(t=`Name is required`),e&&e.length>191&&(t=`Name is too long`),t},email:({email:e})=>qe.default.isEmail(e||``)?``:`Enter a valid email address`,url:({url:e})=>!e||qe.default.isURL(e,{require_tld:!1})?``:`Enter a valid URL`,bio:({bio:e})=>!e||e.length<=250?``:`Bio is too long`,location:({location:e})=>!e||e.length<=150?``:`Location is too long`,website:({website:e})=>!e||qe.default.isURL(e)&&e.length<=2e3?``:`Enter a valid URL`,...Object.fromEntries(U.map(e=>[e.key,t=>Se(e.key,t[e.key])]))},Ye=({user:e,onDeletingUserChange:t})=>{let{isAdmin7:n}=g(),{updateRoute:r}=Me(),a=p(),o=Pe(),c=f(),d=e=>{let t=e.split(`/`).pop()||``;return t===`social-links`||t===`email-notifications`?t:`profile`},{ownerUser:m}=we(),{currentUser:C}=q(),T=i(),{confirm:E,showLimit:D}=Ne(),{formState:O,setFormState:k,saveState:j,handleSave:le,updateForm:M,errors:N,setErrors:ue,clearError:P,okProps:F}=u({initialState:e,savingDelay:500,savedDelay:500,onValidate:t=>Object.entries(Je).reduce((n,[r,i])=>{if(Ce.includes(r)&&t[r]===e[r])return n;let a=i(t);return a&&(n[r]=a),n},{}),onSave:async t=>{let n=(await xe?.(t))?.users?.[0];if(n&&(k(()=>n),n.slug!==e.slug)){let e=d(c.pathname),t=e===`profile`?``:`/${e}`;r({route:`staff/${n.slug}${t}`,replace:!0})}},onSaveError:T}),R=e=>M(()=>e),z=(e,t)=>{let n=Je[e]?.({[e]:t});return n?(ue({...N,[e]:n}),!1):(P(e),!0)},{mutateAsync:he}=ie(),{mutateAsync:xe}=ge(),{mutateAsync:H}=_e(),{mutateAsync:Se}=me(),U=w(),W=Fe(),G=(0,Z.useCallback)(()=>{ye(C)?r(`staff`):a(`/`)},[C,a,r]),Ee=async e=>{if(e.status===`inactive`&&e.roles[0].name!==`Contributor`)try{await U?.errorIfWouldGoOverLimit(`staff`)}catch(e){if(e instanceof s){D({formSheet:!0,prompt:e.message||`Your current plan doesn't support more users.`,onOk:()=>r({route:o,isExternal:!0})});return}else throw e}let t=`This user will no longer be able to log in but their posts will be kept.`;e.status===`inactive`&&(t=`This user will be able to log in again and will have the same permissions they had previously.`),E({title:`Are you sure you want to suspend this user?`,prompt:(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`strong`,{children:`WARNING:`}),` `,t]}),okLabel:e.status===`inactive`?`Un-suspend`:`Suspend`,okRunningLabel:e.status===`inactive`?`Un-suspending...`:`Suspending...`,okVariant:`destructive`,onOk:async t=>{let n={...e,status:e.status===`inactive`?`active`:`inactive`};try{await xe(n),k(()=>n),t?.remove(),l.success(e.status===`inactive`?`User un-suspended`:`User suspended`)}catch(e){T(e)}}})},Oe=(n,{owner:r})=>{E({title:`Are you sure you want to delete this user?`,prompt:(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(`p`,{className:`mb-3`,children:[(0,Y.jsx)(`span`,{className:`font-bold`,children:n.name||n.email}),` will be permanently deleted and all their posts will be automatically assigned to`,` `,(0,Y.jsx)(`span`,{className:`font-bold`,children:r.name}),`.`]}),(0,Y.jsxs)(`p`,{children:[`To make these easy to find in the future, each post will be given an internal tag of`,` `,(0,Y.jsxs)(`span`,{className:`font-bold`,children:[`#`,e.slug]})]})]}),okLabel:`Delete user`,okVariant:`destructive`,onOk:async e=>{t(!0);try{await H(n?.id),e?.remove(),G(),setTimeout(()=>l.success(`User deleted`),100)}catch(e){t(!1),T(e)}}})},je=()=>{E({title:`Transfer Ownership`,prompt:`Are you sure you want to transfer the ownership of this blog? You will not be able to undo this action.`,okLabel:`Yep — I'm sure`,okVariant:`destructive`,onOk:async t=>{try{await Se(e.id),t?.remove(),l.success(`Ownership transferred`)}catch(e){T(e)}}})},J=async(e,t)=>{try{let n=ce(await he({file:t}));switch(e){case`cover_image`:M(e=>({...e,cover_image:n}));break;case`profile_image`:M(e=>({...e,profile_image:n}));break}}catch(e){let t=e;t.response.status===415&&(t.message=`Unsupported file type`),T(t)}},X=e=>{switch(e){case`cover_image`:M(e=>({...e,cover_image:``}));break;case`profile_image`:M(e=>({...e,profile_image:``}));break}},Le=V(C)||be(C)&&pe(e),Re=B(C)&&ve(O)&&O.status!==`inactive`,ze=O.id!==C.id&&(V(C)&&!B(e)||be(C)&&pe(e)),Be=O.status===`inactive`?`Un-suspend user`:`Suspend user`,Q=h(`h-8 px-3 opacity-80 hover:opacity-100`,A(n)),Ve=O.status===`inactive`?` (Suspended)`:``,$=!ye(C),He=`mx-auto w-full max-w-[536px]`,[Ue,Ge]=(0,Z.useState)(d(c.pathname));return(0,Y.jsx)(Te,{animate:!$,backDrop:!$,buttonsDisabled:F.disabled,cancelLabel:`Close`,dirty:j===`unsaved`,footerClassName:$?`mx-auto w-full max-w-[calc(536px+5rem)]`:void 0,hideXOnMobile:!0,okLabel:F.label||`Save`,okVariant:F.variant,size:$?`bleed`:`md`,stickyFooter:!0,testId:`user-detail-modal`,width:$?`full`:600,onClose:G,onOk:async()=>{await le({fakeWhenUnchanged:!0})},children:(0,Y.jsxs)(`div`,{children:[(0,Y.jsx)(`div`,{className:`relative ${$?`-mx-10 -mt-10`:`-mx-8 -mt-8 rounded-t`}`,children:(0,Y.jsx)(`div`,{className:h(`flex flex-wrap items-end justify-between gap-8 p-8`,O.cover_image&&`bg-cover bg-center`,$&&O.cover_image&&`min-h-[30vmin]`),style:{backgroundImage:O.cover_image?`url(${O.cover_image})`:`none`},children:(0,Y.jsxs)(`div`,{className:h(`flex w-full flex-col gap-2`,$&&He),children:[(0,Y.jsxs)(`div`,{className:`flex flex-nowrap items-start justify-between gap-3`,children:[(0,Y.jsx)(`div`,{children:(0,Y.jsx)(oe,{className:`-ml-1 size-20 overflow-visible rounded-full`,children:O.profile_image?(0,Y.jsxs)(ne,{className:`rounded-full`,children:[(0,Y.jsx)(se,{"data-testid":`profile-image-preview`,id:`avatar`,src:O.profile_image}),(0,Y.jsxs)(te,{className:`top-1 right-1`,children:[W.isEnabled&&(0,Y.jsx)(re,{"aria-label":`Edit profile image`,className:`rounded-full`,onClick:()=>W.openEditor({image:O.profile_image||``,handleSave:async e=>J(`profile_image`,e)}),children:(0,Y.jsx)(S,{})}),(0,Y.jsx)(re,{"aria-label":`Remove profile image`,className:`rounded-full`,onClick:()=>X(`profile_image`),children:(0,Y.jsx)(v,{})})]})]}):(0,Y.jsx)(ae,{className:`rounded-full bg-surface-inverse text-surface-inverse-foreground opacity-80 hover:opacity-100`,inputId:`avatar`,inputTestId:`profile-image-upload`,onDropAccepted:e=>void J(`profile_image`,e[0]),children:(0,Y.jsx)(b,{className:`size-8 text-surface-inverse-foreground`})})})}),(0,Y.jsxs)(`div`,{className:`flex flex-nowrap items-start gap-3`,children:[O.cover_image?(0,Y.jsxs)(`div`,{className:`flex flex-nowrap items-end justify-end gap-4`,children:[(0,Y.jsx)(`img`,{alt:``,className:`hidden`,"data-testid":`cover-image-preview`,src:O.cover_image}),W.isEnabled&&(0,Y.jsx)(x,{className:Q,type:`button`,onClick:()=>W.openEditor({image:O.cover_image||``,handleSave:async e=>J(`cover_image`,e)}),children:`Edit cover image`}),(0,Y.jsx)(x,{className:Q,type:`button`,onClick:()=>X(`cover_image`),children:`Delete cover image`})]}):(0,Y.jsx)(ee,{className:`h-8`,inputId:`cover-image`,inputTestId:`cover-image-upload`,variant:`button`,onDropAccepted:e=>void J(`cover_image`,e[0]),children:`Upload cover image`}),Le&&(0,Y.jsx)(`div`,{className:`z-10`,children:(0,Y.jsxs)(De,{children:[(0,Y.jsx)(Ae,{asChild:!0,children:n?(0,Y.jsx)(x,{"aria-label":`Actions`,className:O.cover_image?h(Q,`p-0`):void 0,size:`icon`,type:`button`,variant:`outline`,children:(0,Y.jsx)(y,{})}):(0,Y.jsxs)(`button`,{className:h(`flex h-8 cursor-pointer items-center justify-center rounded px-3`,O.cover_image?`bg-[rgba(0,0,0,0.75)] opacity-80 hover:opacity-100`:`border border-gray-300 bg-transparent text-black dark:border-gray-800 dark:text-white`),type:`button`,children:[(0,Y.jsx)(`span`,{className:`sr-only`,children:`Actions`}),(0,Y.jsx)(y,{className:h(`size-5`,O.cover_image&&`text-white`)})]})}),(0,Y.jsxs)(ke,{align:`end`,className:`z-[9999]`,children:[Re&&(0,Y.jsx)(K,{onSelect:je,children:`Make owner`}),(0,Y.jsx)(K,{onSelect:()=>{r(`history/view/${O.id}`)},children:`View user activity`}),ze&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(K,{onSelect:()=>{Ee(O)},children:Be}),(0,Y.jsx)(K,{className:`text-destructive focus:text-destructive`,onSelect:()=>{Oe(e,{owner:m})},children:`Delete user`})]})]})]})})]})]}),(0,Y.jsxs)(`div`,{children:[(0,Y.jsxs)(_,{as:`h3`,className:h(`break-words md:text-2xl md:break-normal`,O.cover_image?`text-white`:`text-foreground`),leading:`heading`,size:`xl`,weight:`bold`,children:[e.name,Ve]}),(0,Y.jsx)(`span`,{className:h(`text-md font-medium capitalize`,O.cover_image?`text-white`:`text-black dark:text-white`),children:e.roles[0].name.toLowerCase()})]})]})})}),(0,Y.jsx)(`div`,{className:h(`mt-6 flex flex-col`,$&&He),children:(0,Y.jsxs)(fe,{value:Ue,variant:`underline`,onValueChange:t=>{let n=t===`profile`?``:`/${t}`;r(`staff/${e.slug}${n}`),Ge(t)},children:[(0,Y.jsxs)(de,{children:[(0,Y.jsx)(I,{title:`Profile`,value:`profile`,children:`Profile`}),(0,Y.jsx)(I,{title:`Social Links`,value:`social-links`,children:`Social Links`}),(0,Y.jsx)(I,{title:`Email Notifications`,value:`email-notifications`,children:`Email Notifications`})]}),(0,Y.jsx)(L,{className:`pt-4`,value:`profile`,children:(0,Y.jsx)(We,{clearError:P,errors:N,setUserData:R,user:O,validateField:z})}),(0,Y.jsx)(L,{className:`pt-4`,value:`social-links`,children:(0,Y.jsx)(Ke,{clearError:P,errors:N,setUserData:R,user:O,validateField:z})}),(0,Y.jsx)(L,{className:`pt-4`,value:`email-notifications`,children:(0,Y.jsx)(Ie,{setUserData:R,user:O})})]})})]})})},Xe=()=>{let{slug:e}=d(),{currentUser:t}=q(),{updateRoute:n}=Me(),a=p(),o=i(),[s,c]=(0,Z.useState)(!1),u=t.slug===e,{data:f,error:m}=he(e||``,{enabled:!u&&!!e,defaultErrorHandler:!1}),h=u?t:f?.users?.[0],g=m instanceof r&&m.response?.status===404;(0,Z.useEffect)(()=>{m&&!g&&o(m)},[m,g,o]);let _=!u&&!!e&&!h&&(g||f!==void 0),v=(0,Z.useRef)(void 0);h&&(v.current=h);let y=h||(_?void 0:v.current),b=_?e??null:null,x=(0,Z.useRef)(null);return(0,Z.useEffect)(()=>{!b||s||x.current===b||(x.current=b,l.error(`User not found`),ye(t)?n({route:`staff`,replace:!0}):a(`/`))},[b,s,t,a,n]),y?(0,Y.jsx)(Ye,{user:y,onDeletingUserChange:c}):null};export{Xe as default};
@@ -1 +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]=`f2e4d048-8ee5-4993-8d1d-aa8510c7a532`,e._sentryDebugIdIdentifier=`sentry-dbid-f2e4d048-8ee5-4993-8d1d-aa8510c7a532`)}catch{}})();import{i as e,n as t,s as n,t as r}from"./hooks-C-BDQ6Hs.js";import{r as i,t as a}from"./update-queries-sbOKc6_E.js";var o=n,s=r({dataType:o,path:`/users/`,defaultSearchParams:{limit:`100`,include:`roles`},defaultNextPageParams:(e,t)=>{if(e.meta?.pagination.next)return{...t,page:e.meta.pagination.next.toString()}},returnData:e=>{let{pages:t}=e,n=t.flatMap(e=>e.users),r=t[t.length-1].meta;return{users:n,meta:r,isEnd:r?r.pagination.pages===r.pagination.page:!0}}}),c=e({dataType:o,path:e=>`/users/slug/${e}/`,defaultSearchParams:{include:`roles`}}),l=t({method:`PUT`,path:e=>`/users/${e.id}/`,body:e=>({users:[e]}),searchParams:()=>({include:`roles`}),updateQueries:{dataType:o,emberUpdateType:`createOrUpdate`,update:i(`users`)}}),u=t({method:`DELETE`,path:e=>`/users/${e}/`,updateQueries:{dataType:o,emberUpdateType:`delete`,update:a(`users`)}}),d=t({method:`PUT`,path:()=>`/users/password/`,body:({newPassword:e,confirmNewPassword:t,userId:n,oldPassword:r})=>({password:[{user_id:n,oldPassword:r||``,newPassword:e,ne2Password:t}]})}),f=t({method:`PUT`,path:()=>`/users/owner/`,body:e=>({owner:[{id:e}]}),updateQueries:{dataType:o,emberUpdateType:`createOrUpdate`,update:i(`users`)}});function p(e){return e.roles.some(e=>e.name===`Owner`)}function m(e){return e.roles.some(e=>e.name===`Administrator`)}function h(e){return e.roles.some(e=>e.name===`Editor`)||e.roles.some(e=>e.name===`Super Editor`)}function g(e){return e.roles.some(e=>e.name===`Super Editor`)}function _(e){return e.roles.some(e=>e.name===`Author`)}function v(e){return e.roles.some(e=>e.name===`Contributor`)}function y(e){return _(e)||v(e)}function b(e){return p(e)||m(e)||h(e)}function x(e){return p(e)||m(e)||g(e)}function S(e){return p(e)||m(e)||h(e)}function C(e){return p(e)||m(e)||h(e)}function w(e){return p(e)||m(e)}function T(e){return p(e)||m(e)}export{d as _,S as a,y as c,p as d,s as f,f as g,c as h,x as i,v as l,l as m,T as n,w as o,u as p,C as r,m as s,b as t,h as u};
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]=`f2e4d048-8ee5-4993-8d1d-aa8510c7a532`,e._sentryDebugIdIdentifier=`sentry-dbid-f2e4d048-8ee5-4993-8d1d-aa8510c7a532`)}catch{}})();import{i as e,n as t,s as n,t as r}from"./hooks-0r7qxGEo.js";import{r as i,t as a}from"./update-queries-sbOKc6_E.js";var o=n,s=r({dataType:o,path:`/users/`,defaultSearchParams:{limit:`100`,include:`roles`},defaultNextPageParams:(e,t)=>{if(e.meta?.pagination.next)return{...t,page:e.meta.pagination.next.toString()}},returnData:e=>{let{pages:t}=e,n=t.flatMap(e=>e.users),r=t[t.length-1].meta;return{users:n,meta:r,isEnd:r?r.pagination.pages===r.pagination.page:!0}}}),c=e({dataType:o,path:e=>`/users/slug/${e}/`,defaultSearchParams:{include:`roles`}}),l=t({method:`PUT`,path:e=>`/users/${e.id}/`,body:e=>({users:[e]}),searchParams:()=>({include:`roles`}),updateQueries:{dataType:o,emberUpdateType:`createOrUpdate`,update:i(`users`)}}),u=t({method:`DELETE`,path:e=>`/users/${e}/`,updateQueries:{dataType:o,emberUpdateType:`delete`,update:a(`users`)}}),d=t({method:`PUT`,path:()=>`/users/password/`,body:({newPassword:e,confirmNewPassword:t,userId:n,oldPassword:r})=>({password:[{user_id:n,oldPassword:r||``,newPassword:e,ne2Password:t}]})}),f=t({method:`PUT`,path:()=>`/users/owner/`,body:e=>({owner:[{id:e}]}),updateQueries:{dataType:o,emberUpdateType:`createOrUpdate`,update:i(`users`)}});function p(e){return e.roles.some(e=>e.name===`Owner`)}function m(e){return e.roles.some(e=>e.name===`Administrator`)}function h(e){return e.roles.some(e=>e.name===`Editor`)||e.roles.some(e=>e.name===`Super Editor`)}function g(e){return e.roles.some(e=>e.name===`Super Editor`)}function _(e){return e.roles.some(e=>e.name===`Author`)}function v(e){return e.roles.some(e=>e.name===`Contributor`)}function y(e){return _(e)||v(e)}function b(e){return p(e)||m(e)||h(e)}function x(e){return p(e)||m(e)||g(e)}function S(e){return p(e)||m(e)||h(e)}function C(e){return p(e)||m(e)||h(e)}function w(e){return p(e)||m(e)}function T(e){return p(e)||m(e)}export{d as _,S as a,y as c,p as d,s as f,f as g,c as h,x as i,v as l,l as m,T as n,w as o,u as p,C as r,m as s,b as t,h as u};
@@ -1 +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]=`53b153a3-8b5c-4c45-90a6-6a4cae3d7645`,e._sentryDebugIdIdentifier=`sentry-dbid-53b153a3-8b5c-4c45-90a6-6a4cae3d7645`)}catch{}})();import{s as e,t}from"./react-C9lG_SsT.js";import{t as n}from"./jsx-runtime-Bm2_KH-0.js";import{u as r}from"./chunk-OB3PAWPO-D3muQBsq.js";import{g as i}from"./index-CuDhPtkB.js";var a=e(t(),1),o=n();function s(e,t){let n=new URL(e.replace(/\/?$/,`/`));return n.searchParams.set(`v`,String(t)),n.searchParams.set(`admin`,`1`),n.searchParams.set(`admin_toolbar`,`0`),n.href}function c({siteUrl:e}){let[t]=(0,a.useState)(()=>s(e,Date.now()));return(0,o.jsx)(`div`,{className:`relative size-full`,children:(0,o.jsx)(`iframe`,{className:`absolute inset-0 size-full border-0`,"data-view-site-preview":``,src:t,title:`Site preview`})})}var l=()=>{let{data:e}=i(),{key:t}=r(),n=e?.site.url;return n?(0,o.jsx)(c,{siteUrl:n},t):null};export{l as default};
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]=`53b153a3-8b5c-4c45-90a6-6a4cae3d7645`,e._sentryDebugIdIdentifier=`sentry-dbid-53b153a3-8b5c-4c45-90a6-6a4cae3d7645`)}catch{}})();import{s as e,t}from"./react-C9lG_SsT.js";import{t as n}from"./jsx-runtime-Bm2_KH-0.js";import{u as r}from"./chunk-OB3PAWPO-D3muQBsq.js";import{g as i}from"./index-RuRs_qGS.js";var a=e(t(),1),o=n();function s(e,t){let n=new URL(e.replace(/\/?$/,`/`));return n.searchParams.set(`v`,String(t)),n.searchParams.set(`admin`,`1`),n.searchParams.set(`admin_toolbar`,`0`),n.href}function c({siteUrl:e}){let[t]=(0,a.useState)(()=>s(e,Date.now()));return(0,o.jsx)(`div`,{className:`relative size-full`,children:(0,o.jsx)(`iframe`,{className:`absolute inset-0 size-full border-0`,"data-view-site-preview":``,src:t,title:`Site preview`})})}var l=()=>{let{data:e}=i(),{key:t}=r(),n=e?.site.url;return n?(0,o.jsx)(c,{siteUrl:n},t):null};export{l as default};