ghost 6.62.0 → 6.64.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 (766) hide show
  1. package/bin/lib/duplicate-deps.js +204 -0
  2. package/bin/validate-adapters.js +50 -6
  3. package/components/tryghost-adapter-base-jobs-0.0.0.tgz +0 -0
  4. package/components/tryghost-adapter-base-scheduling-0.2.3.tgz +0 -0
  5. package/components/tryghost-adapter-base-sso-0.1.3.tgz +0 -0
  6. package/components/tryghost-admin-api-schema-0.0.0.tgz +0 -0
  7. package/components/tryghost-api-framework-0.0.0.tgz +0 -0
  8. package/components/tryghost-checkout-0.0.0.tgz +0 -0
  9. package/components/tryghost-i18n-0.0.0.tgz +0 -0
  10. package/components/tryghost-kg-card-factory-5.2.4.tgz +0 -0
  11. package/components/tryghost-kg-clean-basic-html-4.3.4.tgz +0 -0
  12. package/components/tryghost-kg-converters-1.2.5.tgz +0 -0
  13. package/components/tryghost-kg-default-cards-10.3.6.tgz +0 -0
  14. package/components/tryghost-kg-default-nodes-2.2.1.tgz +0 -0
  15. package/components/tryghost-kg-default-transforms-1.3.4.tgz +0 -0
  16. package/components/tryghost-kg-html-to-lexical-1.4.0.tgz +0 -0
  17. package/components/tryghost-kg-lexical-html-renderer-1.5.1.tgz +0 -0
  18. package/components/tryghost-kg-markdown-html-renderer-7.2.4.tgz +0 -0
  19. package/components/tryghost-kg-utils-1.1.4.tgz +0 -0
  20. package/components/tryghost-limit-service-0.0.0.tgz +0 -0
  21. package/components/tryghost-metafield-types-0.0.0.tgz +0 -0
  22. package/content/themes/source/assets/built/screen.css +1 -1
  23. package/content/themes/source/assets/css/screen.css +1 -1
  24. package/content/themes/source/package.json +7 -7
  25. package/content/themes/source/partials/post-card.hbs +1 -1
  26. package/core/boot.js +17 -9
  27. package/core/built/admin/assets/Combination-DWfJPcz9.js +41 -0
  28. package/core/built/admin/assets/{PolarAngleAxis-pkMyqz8g.js → PolarAngleAxis-a81ieQUO.js} +2 -2
  29. package/core/built/admin/assets/RadialBarChart-CHRBhiBN.js +1 -0
  30. package/core/built/admin/assets/_baseAssignValue-DcPokYW8.js +1 -0
  31. package/core/built/admin/assets/about-39CAfroa.js +1 -0
  32. package/core/built/admin/assets/accordion-CJmRaqK7.js +1 -0
  33. package/core/built/admin/assets/account-migration-DYf7skbb.js +1 -0
  34. package/core/built/admin/assets/action-list-Crnh-_UI.js +1 -0
  35. package/core/built/admin/assets/activitypub/{account-migration-By69CgCp.js → account-migration-KA6Jjf9L.js} +7 -7
  36. package/core/built/admin/assets/activitypub/activitypub.js +3 -3
  37. package/core/built/admin/assets/activitypub/{avatar-DLPL3Abs.js → avatar-DVJF5bxP.js} +2 -2
  38. package/core/built/admin/assets/activitypub/{avatar-flipboard-C9iDY-QV.js → avatar-flipboard-csQaNeYK.js} +2 -2
  39. package/core/built/admin/assets/activitypub/{bluesky-sharing-BJcPMrDd.js → bluesky-sharing-C7nTDMvw.js} +9 -9
  40. package/core/built/admin/assets/activitypub/{content-formatters-3rTHg3mp.js → content-formatters-CLcjaBwV.js} +4 -4
  41. package/core/built/admin/assets/activitypub/{copy-DIAOQoCZ.js → copy-DcOh8kXw.js} +2 -2
  42. package/core/built/admin/assets/activitypub/{domain-DUR4xSkV.js → domain-fZ-X8i4-.js} +9 -9
  43. package/core/built/admin/assets/activitypub/{edit-profile-BqtfzxCp.js → edit-profile-BqMLQV88.js} +6 -6
  44. package/core/built/admin/assets/activitypub/{explore-BxuJd-J4.js → explore-B4yPoP8E.js} +10 -10
  45. package/core/built/admin/assets/activitypub/{feed-BM1TcksA.js → feed-BRC_mvAe.js} +9 -9
  46. package/core/built/admin/assets/activitypub/{field-Dn7HHx2-.js → field-COacNgOt.js} +3 -3
  47. package/core/built/admin/assets/activitypub/{hash-Bm3WxYN4.js → hash-C7u-irQQ.js} +2 -2
  48. package/core/built/admin/assets/activitypub/{inbox-CCjkuow2.js → inbox-BW-yvUoN.js} +10 -10
  49. package/core/built/admin/assets/activitypub/{inbox-d8oJRTf4.js → inbox-CbTTdDQ3.js} +2 -2
  50. package/core/built/admin/assets/activitypub/{label-1AA_s9Fa.js → label-kPMmYI7l.js} +3 -3
  51. package/core/built/admin/assets/activitypub/layout-BL4_jtuV.js +1 -0
  52. package/core/built/admin/assets/activitypub/{moderation-CnmxEB8w.js → moderation-CuidJzc0.js} +10 -10
  53. package/core/built/admin/assets/activitypub/{note-ZKc_Bnba.js → note-CAMRRSqD.js} +7 -7
  54. package/core/built/admin/assets/activitypub/{notifications-CB2tJZau.js → notifications-BmNlXGgp.js} +9 -9
  55. package/core/built/admin/assets/activitypub/{onboarding-BsJ9E5qf.js → onboarding-Bqg7fh_L.js} +2 -2
  56. package/core/built/admin/assets/activitypub/{onboarding-CSUJJIlh.js → onboarding-Dmun9jr_.js} +2 -2
  57. package/core/built/admin/assets/activitypub/{preferences-0-JZnUkI.js → preferences--oH19wf9.js} +11 -11
  58. package/core/built/admin/assets/activitypub/{profile-C35cFIhM.js → profile-DH_tQx2D.js} +14 -14
  59. package/core/built/admin/assets/activitypub/{reply-DYK5vVqb.js → reply-Cap9PxSH.js} +2 -2
  60. package/core/built/admin/assets/activitypub/{routes-BD4vscyc.js → routes-DdyY9uFF.js} +30 -30
  61. package/core/built/admin/assets/activitypub/{separator-BbQqTm-p.js → separator-CAxxu8VV.js} +3 -3
  62. package/core/built/admin/assets/activitypub/{settings-BsMROdqh.js → settings-B6EEcVkW.js} +6 -6
  63. package/core/built/admin/assets/activitypub/{site-O0RL9YCN.js → site-BYps63oh.js} +2 -2
  64. package/core/built/admin/assets/activitypub/{step-1-BMSx7c_X.js → step-1-CKjR2KAm.js} +6 -6
  65. package/core/built/admin/assets/activitypub/{step-2-DtPQzlTH.js → step-2-B6PKfOUQ.js} +6 -6
  66. package/core/built/admin/assets/activitypub/{step-3-CLlOZTyt.js → step-3-C-qBbcUo.js} +11 -11
  67. package/core/built/admin/assets/activitypub/{tabs-Dxk-b9M-.js → tabs-DLhZtVde.js} +6 -6
  68. package/core/built/admin/assets/activitypub/{topic-filter-5yZH6tId.js → topic-filter-DsUOuu0k.js} +3 -3
  69. package/core/built/admin/assets/activitypub/{use-activity-pub-queries-CV50qe03.js → use-activity-pub-queries-CX9snsLs.js} +3 -3
  70. package/core/built/admin/assets/activitypub/{use-navigate-with-base-path-Bmk5h4lW.js → use-navigate-with-base-path-DsJTGDSS.js} +988 -959
  71. package/core/built/admin/assets/activitypub/{use-reply-chain-data-Cbvzgjzd.js → use-reply-chain-data-AJi9zkzm.js} +5 -5
  72. package/core/built/admin/assets/activitypub/{users-BjcoP_HC.js → users-inweyKL5.js} +186 -160
  73. package/core/built/admin/assets/activitypub/{x-DbQZOLiI.js → x-DR8AT3-4.js} +2 -2
  74. package/core/built/admin/assets/add-integration-modal-B12oRifD.js +1 -0
  75. package/core/built/admin/assets/add-newsletter-modal-CTvXiIqY.js +1 -0
  76. package/core/built/admin/assets/add-recommendation-modal-CJf92edY.js +1 -0
  77. package/core/built/admin/assets/analytics-PHR1Fggi.js +1 -0
  78. package/core/built/admin/assets/announcement-bar-modal-Bql0CXdp.js +1 -0
  79. package/core/built/admin/assets/api-keys-CubH-7_H.js +1 -0
  80. package/core/built/admin/assets/{api-keys-3-0vJC3Y.js → api-keys-omLA6iYn.js} +1 -1
  81. package/core/built/admin/assets/{audience-CtbA54Sn.js → audience-6GXevic-.js} +1 -1
  82. package/core/built/admin/assets/automated-emails-DJQ4uNZo.js +1 -0
  83. package/core/built/admin/assets/automations-DcZSLFDU.js +1 -0
  84. package/core/built/admin/assets/automations-hDVcRPjh.js +1 -0
  85. package/core/built/admin/assets/avatar-flipboard-DiAGgshK.js +1 -0
  86. package/core/built/admin/assets/badge-qP06OT7C.js +1 -0
  87. package/core/built/admin/assets/bluesky-sharing-CJw4d4Mf.js +1 -0
  88. package/core/built/admin/assets/box-CZ_LSVSy.js +1 -0
  89. package/core/built/admin/assets/brand-icon-D3ffDYaC.js +1 -0
  90. package/core/built/admin/assets/breadcrumb-Chn1Ip_q.js +1 -0
  91. package/core/built/admin/assets/button-DvIh2Bq-.js +1 -0
  92. package/core/built/admin/assets/calendar-1QGoStFM.js +1 -0
  93. package/core/built/admin/assets/card-FHQ4D10L.js +1 -0
  94. package/core/built/admin/assets/chart-helpers-CNpA7re_.js +1 -0
  95. package/core/built/admin/assets/{chart-BrhA41Zi.js → chart-jVz9Nf9t.js} +9 -9
  96. package/core/built/admin/assets/checkbox-DKht9xMl.js +1 -0
  97. package/core/built/admin/assets/{chunk-KS7C4IRE-DCsL4i4D.js → chunk-KS7C4IRE-DhOcHQOU.js} +1 -1
  98. package/core/built/admin/assets/chunk.368.22ce1b732c0b40abd3f1.js +479 -0
  99. package/core/built/admin/assets/chunk.524.cc9be98e44890cedc8c8.js +25 -0
  100. package/core/built/admin/assets/{chunk.582.5ed5d124cfca9c259b9c.js → chunk.582.e6fe742b3217207b11a6.js} +23 -30
  101. package/core/built/admin/assets/{chunk.492.f24d855d7e3f3aad261c.js → chunk.972.4b8c97f93d66db15e751.js} +13582 -11017
  102. package/core/built/admin/assets/clean-tracked-url-dkN05vOf.js +1 -0
  103. package/core/built/admin/assets/code-editor-view-BLQIV85-.js +1 -0
  104. package/core/built/admin/assets/code-editor-view-Cg5eJxcr.js +1 -0
  105. package/core/built/admin/assets/color-picker-DQoghc0t.js +3 -0
  106. package/core/built/admin/assets/color-picker-field-BbeK5RRs.js +1 -0
  107. package/core/built/admin/assets/combobox-weO4FBbv.js +1 -0
  108. package/core/built/admin/assets/command-DlLrCm9V.js +1 -0
  109. package/core/built/admin/assets/comments-BjTitLmP.js +1 -0
  110. package/core/built/admin/assets/components-CwL6a6As-CCRaoCeP.js +1 -0
  111. package/core/built/admin/assets/{config-DOMQDZGZ.js → config-BPljH6wF.js} +1 -1
  112. package/core/built/admin/assets/confirmation-context-IyqoXVk-.js +1 -0
  113. package/core/built/admin/assets/container-DAimjOF_.js +1 -0
  114. package/core/built/admin/assets/content-api-modal-0ZjuLcQ8.js +1 -0
  115. package/core/built/admin/assets/context-menu-BtioYFrg.js +1 -0
  116. package/core/built/admin/assets/copy-field-C6ujqJlP.js +1 -0
  117. package/core/built/admin/assets/create-ghost-browse-value-source-DAZMWZNq.js +1 -0
  118. package/core/built/admin/assets/custom-integration-modal-Dm8QI_J4.js +1 -0
  119. package/core/built/admin/assets/data-list-C0CKkeWW.js +1 -0
  120. package/core/built/admin/assets/date-range-select-DrjHQdgz.js +1 -0
  121. package/core/built/admin/assets/design-and-theme-modal-CXVOzBWu.js +2 -0
  122. package/core/built/admin/assets/detail-page-QpLIL-EO.js +1 -0
  123. package/core/built/admin/assets/dirty-confirm-dialog-DWwxREGh.js +1 -0
  124. package/core/built/admin/assets/disabled-sources-indicator-CLZhMv8J.js +1 -0
  125. package/core/built/admin/assets/dist-BRQkNYN1.js +11 -0
  126. package/core/built/admin/assets/{dist-B3keLvjj.js → dist-BXHrDV19.js} +2 -2
  127. package/core/built/admin/assets/dist-Bf-HQtVL.js +1 -0
  128. package/core/built/admin/assets/dist-Bm-PB47a.js +6 -0
  129. package/core/built/admin/assets/{dist-B6bJuxL3.js → dist-C2lYC76d.js} +1 -1
  130. package/core/built/admin/assets/dist-CUwte9v_.js +1 -0
  131. package/core/built/admin/assets/dist-Cm2qbZKL.js +1 -0
  132. package/core/built/admin/assets/{dist-BtaTA7Ii.js → dist-D7yMk931.js} +1 -1
  133. package/core/built/admin/assets/{dist-zwwGt8Yf.js → dist-DNAdeRyr.js} +1 -1
  134. package/core/built/admin/assets/dist-DS6zpxid.js +1 -0
  135. package/core/built/admin/assets/dist-DVVKsyPh.js +23 -0
  136. package/core/built/admin/assets/dist-DxfQlAmn.js +1 -0
  137. package/core/built/admin/assets/dist-DziNzWI2.js +1 -0
  138. package/core/built/admin/assets/dist-FEQQAwTe.js +1 -0
  139. package/core/built/admin/assets/dist-nmRzULcD.js +1 -0
  140. package/core/built/admin/assets/domain-DBrBic6q.js +1 -0
  141. package/core/built/admin/assets/dropzone-D61QVcEY.js +5 -0
  142. package/core/built/admin/assets/edit-profile-jCqJBxqw.js +1 -0
  143. package/core/built/admin/assets/editor-8Fm4UBEd.js +8 -0
  144. package/core/built/admin/assets/editor-screen-BSX_uC2B.js +27 -0
  145. package/core/built/admin/assets/email-previews-Bs-JDhIw.js +1 -0
  146. package/core/built/admin/assets/email-sending-status-context-C76KYL1V.js +1 -0
  147. package/core/built/admin/assets/email-sending-status-provider-DnNhlIvt.js +1 -0
  148. package/core/built/admin/assets/emails-CgvIIz3q.js +1 -0
  149. package/core/built/admin/assets/{embed-signup-form-modal-Ds6mPEi5.js → embed-signup-form-modal-DqtBs1WE.js} +1 -1
  150. package/core/built/admin/assets/empty-indicator-L4Ql5Db7.js +1 -0
  151. package/core/built/admin/assets/en-Cx75dJv5.js +1 -0
  152. package/core/built/admin/assets/esm--rhhUGIG.js +2 -0
  153. package/core/built/admin/assets/explore-DXhDCtKw.js +1 -0
  154. package/core/built/admin/assets/feature-flag-overrides-context-CrcQKm9Z.js +1 -0
  155. package/core/built/admin/assets/feature-image-placeholder-e2q6TcH6.js +1 -0
  156. package/core/built/admin/assets/feed-mmt4noNL.js +1 -0
  157. package/core/built/admin/assets/feedback-BTPBQLT5.js +1 -0
  158. package/core/built/admin/assets/field-p7KnP98B.js +1 -0
  159. package/core/built/admin/assets/filter-bar-CiIKBg3D.js +1 -0
  160. package/core/built/admin/assets/filter-sources-I-dRaQxl.js +1 -0
  161. package/core/built/admin/assets/filters-1injvyxJ.js +1 -0
  162. package/core/built/admin/assets/filters-DnpO6GWX.js +1 -0
  163. package/core/built/admin/assets/first-promoter-modal-wr73Dldc.js +1 -0
  164. package/core/built/admin/assets/focus-koenig-editor-on-bottom-click-CkFA8EkI.js +1 -0
  165. package/core/built/admin/assets/framework-provider-DB-svAju.js +4 -0
  166. package/core/built/admin/assets/{ghost-8eabfc1ece81b03cf7b90780d31487e8.css → ghost-8fd5bb799356bbefb254210ba7e1236d.css} +1 -1
  167. package/core/built/admin/assets/{ghost-c2848508292937415f20f5a830eea59e.js → ghost-a1e6e172c6917e8ef8fa6b0007756d9b.js} +71 -46
  168. package/core/built/admin/assets/{ghost-dark-a7bebe2c561f55369dcf29f4c820f7ff.css → ghost-dark-cac0cb2d5bb78e9bd14d8d1c2768ed45.css} +1 -1
  169. package/core/built/admin/assets/gift-link-modal-C3H7YFXO.js +1 -0
  170. package/core/built/admin/assets/{gift-links-DLDS7ljO.js → gift-links-D8gl_yJS.js} +1 -1
  171. package/core/built/admin/assets/global-data-context-3MItMry2.js +1 -0
  172. package/core/built/admin/assets/grid-5vplBYri.js +1 -0
  173. package/core/built/admin/assets/growth-B1og1kQp.js +1 -0
  174. package/core/built/admin/assets/growth-Bf6OHZlK.js +3 -0
  175. package/core/built/admin/assets/heading-BB21QAbb.js +1 -0
  176. package/core/built/admin/assets/history-modal-t_qEnxPx.js +1 -0
  177. package/core/built/admin/assets/hooks-DYfTEQLk.js +2 -0
  178. package/core/built/admin/assets/html-field-COLQbV4r.js +1 -0
  179. package/core/built/admin/assets/iframe-buffering-Bq1el-gw.js +1 -0
  180. package/core/built/admin/assets/images-4mvoc3lB.js +1 -0
  181. package/core/built/admin/assets/{inbox-Mcp4DXZN.js → inbox-DgSZ6w2p.js} +34 -34
  182. package/core/built/admin/assets/index-B3HZU2i8.css +2 -0
  183. package/core/built/admin/assets/index-DDd-zhNL.js +4 -0
  184. package/core/built/admin/assets/index.es-Ct5XQNSj.js +1 -0
  185. package/core/built/admin/assets/inline-B8H6NzIw.js +1 -0
  186. package/core/built/admin/assets/input-group-CLIN2ykI.js +1 -0
  187. package/core/built/admin/assets/{input-surface-BsrIZeSF.js → input-surface-wSO5CRy5.js} +1 -1
  188. package/core/built/admin/assets/integration-header-CKGrXNVP.js +1 -0
  189. package/core/built/admin/assets/{integrations-Bjbu86Z0.js → integrations-DnJrZnHv.js} +1 -1
  190. package/core/built/admin/assets/invite-user-modal-BaN2mdhI.js +1 -0
  191. package/core/built/admin/assets/jsx-runtime-BlNNh7jY.js +1 -0
  192. package/core/built/admin/assets/koenig-lexical/koenig-lexical.js +4 -4
  193. package/core/built/admin/assets/koenig-lexical/koenig-lexical.umd.js +2 -2
  194. package/core/built/admin/assets/{koenig-lexical-DBSqAuiI.js → koenig-lexical-CXVgQFUk.js} +2 -2
  195. package/core/built/admin/assets/koenig-loader-B1XPPY5C.js +2 -0
  196. package/core/built/admin/assets/kpi-card-CRLPVlFW.js +1 -0
  197. package/core/built/admin/assets/kpi-card-CRPbW8NZ.js +1 -0
  198. package/core/built/admin/assets/kpi-helpers-D7zT96bp.js +1 -0
  199. package/core/built/admin/assets/kpi-tabs-DE_yh9Go.js +1 -0
  200. package/core/built/admin/assets/label-CgeBxy4o.js +1 -0
  201. package/core/built/admin/assets/label-picker-DGDp4Vwr.js +1 -0
  202. package/core/built/admin/assets/labels-KMkFoRG6.js +1 -0
  203. package/core/built/admin/assets/layout-DWnOMly4.js +1 -0
  204. package/core/built/admin/assets/lib-_QYaUU89.js +2 -0
  205. package/core/built/admin/assets/link-helpers-8J7ixADV.js +1 -0
  206. package/core/built/admin/assets/links-FwNCVyVe.js +1 -0
  207. package/core/built/admin/assets/list-page-DLMP0PxC.js +1 -0
  208. package/core/built/admin/assets/luxon-BXCsmep3.js +1 -0
  209. package/core/built/admin/assets/member-activity-ClMWFyvN.js +1 -0
  210. package/core/built/admin/assets/member-activity-feed-BQY5Rwaj.js +1 -0
  211. package/core/built/admin/assets/member-custom-fields-Dd_ie1zG.js +1 -0
  212. package/core/built/admin/assets/member-detail-DjwkGVne.js +1 -0
  213. package/core/built/admin/assets/members--N9lhk1N.js +4 -0
  214. package/core/built/admin/assets/modal-page-Dz-9TP4E.js +1 -0
  215. package/core/built/admin/assets/moderation-DfYBKq9s.js +1 -0
  216. package/core/built/admin/assets/multi-select-combobox-BcBEzUW_.js +1 -0
  217. package/core/built/admin/assets/navigation-modal-Cd-scywg.js +1 -0
  218. package/core/built/admin/assets/newsletter-detail-modal-CFRY6vg_.js +1 -0
  219. package/core/built/admin/assets/newsletter-emails-4ntck1AC.js +1 -0
  220. package/core/built/admin/assets/newsletter-o6eCJtab.js +1 -0
  221. package/core/built/admin/assets/newsletters-Bmlv0edG.js +1 -0
  222. package/core/built/admin/assets/newsletters-Dz77m__5.js +1 -0
  223. package/core/built/admin/assets/note-CWs3LF-0.js +1 -0
  224. package/core/built/admin/assets/notifications-BjSvTJqh.js +1 -0
  225. package/core/built/admin/assets/{nql-BLpCn7qX.js → nql-DnDc7UuU.js} +1 -1
  226. package/core/built/admin/assets/nql-lang-CeTB_Bhv.js +19 -0
  227. package/core/built/admin/assets/{offers-9J1CSiLy.js → offers-ByWSK0rR.js} +1 -1
  228. package/core/built/admin/assets/offers-container-modal-Bc9A196w.js +1 -0
  229. package/core/built/admin/assets/onboarding-B4hfBi9a.js +1 -0
  230. package/core/built/admin/assets/onboarding-DV_XbHts.js +1 -0
  231. package/core/built/admin/assets/onboarding-route-Di1LJYEE.js +1 -0
  232. package/core/built/admin/assets/overview-DE7NHZQN.js +1 -0
  233. package/core/built/admin/assets/overview-DEF-ZY6x.js +1 -0
  234. package/core/built/admin/assets/page-header-B-G_g42C.js +1 -0
  235. package/core/built/admin/assets/pagemenu-CnkTDO71.js +1 -0
  236. package/core/built/admin/assets/pages-DZ_YGB1D.js +1 -0
  237. package/core/built/admin/assets/pages-route-VT7r7YhG.js +1 -0
  238. package/core/built/admin/assets/papaparse.min-BlhnCUXn.js +10 -0
  239. package/core/built/admin/assets/pintura-modal-BljM7hf8.js +1 -0
  240. package/core/built/admin/assets/portal-frame-D9V8iq5x.js +1 -0
  241. package/core/built/admin/assets/portal-modal-B5OOR9ZD.js +1 -0
  242. package/core/built/admin/assets/post-analytics-context-bt2YTBAC.js +1 -0
  243. package/core/built/admin/assets/post-analytics-header-J0WciLx6.js +1 -0
  244. package/core/built/admin/assets/post-analytics-provider-CgreZDjS.js +1 -0
  245. package/core/built/admin/assets/post-analytics-rGb-PgD-.js +1 -0
  246. package/core/built/admin/assets/post-helpers-C88JBa4D.js +1 -0
  247. package/core/built/admin/assets/post-share-modal-D0BbTo4W.js +1 -0
  248. package/core/built/admin/assets/post-utils-DKF4mfuo.js +1 -0
  249. package/core/built/admin/assets/posts-list-screen-CO5jAWoU.js +2 -0
  250. package/core/built/admin/assets/posts-route-DV-CXWK9.js +1 -0
  251. package/core/built/admin/assets/posts-tcoO3iRG.js +1 -0
  252. package/core/built/admin/assets/preferences-Tac29oG6.js +5 -0
  253. package/core/built/admin/assets/preview-chrome-C2lQgZBZ.js +1 -0
  254. package/core/built/admin/assets/preview-modal-CjRbBr8U.js +1 -0
  255. package/core/built/admin/assets/profile-yiM1f_Og.js +1 -0
  256. package/core/built/admin/assets/prop-types-6lTeqvom.js +1 -0
  257. package/core/built/admin/assets/radio-group-CKROWsw4.js +1 -0
  258. package/core/built/admin/assets/react-BXwhMTuc.js +1 -0
  259. package/core/built/admin/assets/{jsx-runtime-DX3WBWVO.js → react-dom-CMOtJ5MH.js} +2 -2
  260. package/core/built/admin/assets/{referrers-CnhCMWCs.js → referrers-1R8bPpoV.js} +1 -1
  261. package/core/built/admin/assets/router-provider-CU87qxXw.js +1 -0
  262. package/core/built/admin/assets/schemas-BoYdB6YU.js +64 -0
  263. package/core/built/admin/assets/select-CKaC4ggu.js +1 -0
  264. package/core/built/admin/assets/settings-81kxUa28.js +1 -0
  265. package/core/built/admin/assets/settings-BVXFqBVK.js +4 -0
  266. package/core/built/admin/assets/settings-breadcrumbs-czGRx-iu.js +1 -0
  267. package/core/built/admin/assets/{shade-app-CcS3f8MZ-vwURazk8.js → shade-app-CcS3f8MZ-D5BnfHck.js} +1 -1
  268. package/core/built/admin/assets/share-modal-BL-16PiB.js +1 -0
  269. package/core/built/admin/assets/skeleton-DwCva0-b.js +1 -0
  270. package/core/built/admin/assets/slack-modal-D7W_fNON.js +1 -0
  271. package/core/built/admin/assets/sort-button-Dquc83jY.js +1 -0
  272. package/core/built/admin/assets/source-icon-CQboPZQ3.js +1 -0
  273. package/core/built/admin/assets/stack-BURz77VS.js +1 -0
  274. package/core/built/admin/assets/stats-Cvp8Ep5m.js +1 -0
  275. package/core/built/admin/assets/stats-view-NDja_g96.js +1 -0
  276. package/core/built/admin/assets/step-1-BKhjy0PV.js +1 -0
  277. package/core/built/admin/assets/step-2-PxA1OM7R.js +1 -0
  278. package/core/built/admin/assets/step-3-BJbAiq16.js +2 -0
  279. package/core/built/admin/assets/stripe-button-C3cfCAou.js +1 -0
  280. package/core/built/admin/assets/stripe-connect-modal-FyE3Ey2c.js +1 -0
  281. package/core/built/admin/assets/style-Wd9nQubI.css +1 -0
  282. package/core/built/admin/assets/switch-zfUUy9Jh.js +1 -0
  283. package/core/built/admin/assets/table-dE4GTIRT.js +1 -0
  284. package/core/built/admin/assets/tabs-B3XK93sR.js +1 -0
  285. package/core/built/admin/assets/tag-detail-D4P-tZdM.js +2 -0
  286. package/core/built/admin/assets/tag-picker-BNSZ6Qxw.js +1 -0
  287. package/core/built/admin/assets/tags-BsZcaJ6h.js +1 -0
  288. package/core/built/admin/assets/{tags-zTFiKRpb.js → tags-NwZ7BPK6.js} +1 -1
  289. package/core/built/admin/assets/testimonials-modal-Dkt6ODLW.js +1 -0
  290. package/core/built/admin/assets/text-DC-ot6u2.js +1 -0
  291. package/core/built/admin/assets/textarea-B4FffFmE.js +1 -0
  292. package/core/built/admin/assets/themes-DtcEFQWm.js +1 -0
  293. package/core/built/admin/assets/tier-detail-modal-a77Z2VMH.js +1 -0
  294. package/core/built/admin/assets/tiers-6mPzCXlM.js +1 -0
  295. package/core/built/admin/assets/toggle-group-D2p4okmJ.js +1 -0
  296. package/core/built/admin/assets/topic-filter-DVOe3D-b.js +1 -0
  297. package/core/built/admin/assets/transistor-modal-C8RMkhOD.js +1 -0
  298. package/core/built/admin/assets/trend-badge-B9v7kMF8.js +1 -0
  299. package/core/built/admin/assets/unsplash-modal-DXt7Brum.js +1 -0
  300. package/core/built/admin/assets/use-analytics-data-ChHqiZXv.js +1 -0
  301. package/core/built/admin/assets/use-availability-hPdeG76y.js +1 -0
  302. package/core/built/admin/assets/{use-check-theme-limit-error-Cw3WQHy8.js → use-check-theme-limit-error-JD-J5aaZ.js} +2 -2
  303. package/core/built/admin/assets/use-email-sending-status-DNMtL5B9.js +1 -0
  304. package/core/built/admin/assets/use-filter-params-BSFigDIn.js +1 -0
  305. package/core/built/admin/assets/use-filterable-api-CEMSAYPg.js +1 -0
  306. package/core/built/admin/assets/use-form-DJKZJhQh.js +1 -0
  307. package/core/built/admin/assets/use-growth-stats-CqqdnESN.js +1 -0
  308. package/core/built/admin/assets/use-host-limits-mpTkZIq8.js +1 -0
  309. package/core/built/admin/assets/use-limiter-DBGjYqu7.js +19 -0
  310. package/core/built/admin/assets/use-navigate-with-base-path-88EQpw2k.js +1 -0
  311. package/core/built/admin/assets/use-pintura-config-BmU45Ruy.js +1 -0
  312. package/core/built/admin/assets/use-pintura-editor-Bz2bZ4iT.js +1 -0
  313. package/core/built/admin/assets/use-post-referrers-DyPjyBSN.js +1 -0
  314. package/core/built/admin/assets/use-query-params-DlOHCo-R.js +1 -0
  315. package/core/built/admin/assets/use-reply-chain-data-DmD2yX5D.js +1 -0
  316. package/core/built/admin/assets/use-router-history-entry-CKx9LhqD.js +1 -0
  317. package/core/built/admin/assets/use-sending-eta-CQeG6OP_.js +1 -0
  318. package/core/built/admin/assets/use-setting-group-Dza6bQ7W.js +1 -0
  319. package/core/built/admin/assets/use-settings-navigation-BIjI5mL3.js +1 -0
  320. package/core/built/admin/assets/use-simple-pagination-DwVxe-Lo.js +1 -0
  321. package/core/built/admin/assets/use-staff-users-i_Mq9OGR.js +1 -0
  322. package/core/built/admin/assets/{use-tinybird-query-CSnGXzZh.js → use-tinybird-query-DXoF74NM.js} +1 -1
  323. package/core/built/admin/assets/use-tinybird-token-Lk1RSn0t.js +1 -0
  324. package/core/built/admin/assets/use-unsaved-changes-guard-CKVPWz_F.js +1 -0
  325. package/core/built/admin/assets/use-upgrade-route-CVjDlNSs.js +1 -0
  326. package/core/built/admin/assets/{use-url-input-DFr8lCbS.js → use-url-input-DpmbDppC.js} +1 -1
  327. package/core/built/admin/assets/user-detail-modal-BU4QCHE7.js +1 -0
  328. package/core/built/admin/assets/{users-Cg-OeGzC.js → users-C60_hpn6.js} +1 -1
  329. package/core/built/admin/assets/{validator-Cr0sMKuW.js → validator-DlFQP70j.js} +1 -1
  330. package/core/built/admin/assets/{vendor-5753232c7d6ffb3c44e1eb0a02133953.js → vendor-2dd263291938d407802568d3357ec69e.js} +19 -17
  331. package/core/built/admin/assets/virtual-list-DScLNuU8.js +1 -0
  332. package/core/built/admin/assets/web-BZS-t4H0.js +1 -0
  333. package/core/built/admin/assets/web-DxAUxnK3.js +2 -0
  334. package/core/built/admin/assets/zapier-modal-BafLUO4R.js +1 -0
  335. package/core/built/admin/index.html +38 -34
  336. package/core/cli/command.js +17 -2
  337. package/core/frontend/meta/asset-url.js +1 -16
  338. package/core/frontend/services/asset-hash/index.js +32 -2
  339. package/core/frontend/services/routing/controllers/unsubscribe.js +2 -1
  340. package/core/frontend/services/rss/generate-feed.js +1 -1
  341. package/core/frontend/services/theme-engine/active.js +2 -4
  342. package/core/frontend/services/theme-engine/i18n/i18n.js +11 -1
  343. package/core/frontend/services/theme-engine/i18next/theme-i18n.js +1 -1
  344. package/core/frontend/web/middleware/llms-discovery.js +34 -43
  345. package/core/server/adapters/jobs/InMemoryJobsBackend.js +74 -29
  346. package/core/server/adapters/route-settings/S3RouteSettingsStore.js +1 -1
  347. package/core/server/adapters/storage/LocalFilesStorage.js +12 -2
  348. package/core/server/adapters/storage/LocalStorageBase.js +13 -0
  349. package/core/server/api/endpoints/actions.js +2 -1
  350. package/core/server/api/endpoints/authentication.js +1 -2
  351. package/core/server/api/endpoints/authors-public.js +15 -5
  352. package/core/server/api/endpoints/automated-emails.js +3 -2
  353. package/core/server/api/endpoints/automations.js +77 -49
  354. package/core/server/api/endpoints/emails.js +21 -3
  355. package/core/server/api/endpoints/index.js +9 -1
  356. package/core/server/api/endpoints/invites.js +2 -1
  357. package/core/server/api/endpoints/labels.js +6 -2
  358. package/core/server/api/endpoints/member-metafields-members.js +23 -0
  359. package/core/server/api/endpoints/member-metafields.js +34 -21
  360. package/core/server/api/endpoints/members-account.js +42 -0
  361. package/core/server/api/endpoints/members.js +22 -6
  362. package/core/server/api/endpoints/newsletters-public.js +10 -1
  363. package/core/server/api/endpoints/pages-public.js +15 -5
  364. package/core/server/api/endpoints/pages.js +2 -6
  365. package/core/server/api/endpoints/posts-public.js +15 -5
  366. package/core/server/api/endpoints/posts.js +3 -11
  367. package/core/server/api/endpoints/snippets.js +2 -1
  368. package/core/server/api/endpoints/tags-public.js +22 -3
  369. package/core/server/api/endpoints/tags.js +6 -2
  370. package/core/server/api/endpoints/tiers-checkout-config.js +2 -2
  371. package/core/server/api/endpoints/tiers-public.js +38 -1
  372. package/core/server/api/endpoints/users.js +4 -8
  373. package/core/server/api/endpoints/utils/api-filter-utils.js +232 -6
  374. package/core/server/api/endpoints/utils/public-cache-keys.js +3 -0
  375. package/core/server/api/endpoints/utils/serializers/input/authors.js +2 -0
  376. package/core/server/api/endpoints/utils/serializers/input/members.js +16 -2
  377. package/core/server/api/endpoints/utils/serializers/input/pages.js +2 -0
  378. package/core/server/api/endpoints/utils/serializers/input/posts.js +2 -0
  379. package/core/server/api/endpoints/utils/serializers/input/tags.js +2 -0
  380. package/core/server/api/endpoints/utils/serializers/output/emails.js +7 -0
  381. package/core/server/api/endpoints/utils/serializers/output/index.js +4 -0
  382. package/core/server/api/endpoints/utils/serializers/output/member-metafields.js +3 -3
  383. package/core/server/api/endpoints/utils/serializers/output/members-account.js +19 -0
  384. package/core/server/api/endpoints/utils/serializers/output/members-csv-transform.js +1 -1
  385. package/core/server/api/endpoints/utils/serializers/output/tiers.js +10 -2
  386. package/core/server/api/endpoints/utils/serializers/output/users.js +0 -10
  387. package/core/server/api/endpoints/utils/serializers/output/utils/clean.js +2 -0
  388. package/core/server/api/endpoints/utils/serializers/output/utils/extra-attrs.js +3 -0
  389. package/core/server/api/endpoints/utils/validators/input/settings.js +15 -1
  390. package/core/server/data/exporter/exporter.js +2 -1
  391. package/core/server/data/exporter/table-lists.js +6 -8
  392. package/core/server/data/importer/importers/data/settings-importer.js +8 -2
  393. package/core/server/data/migrations/versions/6.53/2026-07-15-20-22-53-add-members-custom-field-values.js +1 -1
  394. package/core/server/data/migrations/versions/6.57/2026-08-04-18-00-00-store-custom-field-values-as-leaf-rows.js +10 -1
  395. package/core/server/data/migrations/versions/6.63/2026-09-03-10-07-03-rename-custom-field-tables-to-metafields.js +169 -0
  396. package/core/server/data/migrations/versions/6.63/2026-09-03-11-03-31-remove-member-custom-field-read-permissions.js +30 -0
  397. package/core/server/data/migrations/versions/6.64/2026-09-03-15-40-25-add-member-access-to-members-metafields.js +12 -0
  398. package/core/server/data/migrations/versions/6.64/2026-09-08-11-01-12-add-posts-auto-excerpt-and-reading-time-columns.js +17 -0
  399. package/core/server/data/migrations/versions/6.64/2026-09-09-13-56-18-add-automation-run-updated-at-indexes.js +6 -0
  400. package/core/server/data/migrations/versions/6.64/2026-09-09-13-56-18-add-tinybird-syncs-table.js +10 -0
  401. package/core/server/data/schema/fixtures/fixtures.json +0 -11
  402. package/core/server/data/schema/lib/default-index-name.js +8 -11
  403. package/core/server/data/schema/schema.js +46 -20
  404. package/core/server/data/seeders/README.md +48 -0
  405. package/core/server/data/seeders/importers/automations-importer.js +0 -1
  406. package/core/server/data/seeders/importers/comments-importer.js +1 -1
  407. package/core/server/data/seeders/importers/email-recipients-importer.js +1 -1
  408. package/core/server/data/seeders/importers/emails-importer.js +1 -1
  409. package/core/server/data/seeders/importers/members-importer.js +1 -1
  410. package/core/server/data/seeders/importers/members-login-events-importer.js +1 -1
  411. package/core/server/data/seeders/importers/members-stripe-customers-subscriptions-importer.js +1 -1
  412. package/core/server/data/seeders/utils/blog-info.js +4 -3
  413. package/core/server/data/seeders/utils/event-generator.js +72 -46
  414. package/core/server/data/tinybird/datasources/_mv_automation_run_steps.datasource +10 -0
  415. package/core/server/data/tinybird/datasources/_mv_automation_runs.datasource +10 -0
  416. package/core/server/data/tinybird/datasources/_mv_pending_automation_runs.datasource +10 -0
  417. package/core/server/data/tinybird/datasources/automation_run_events.datasource +12 -0
  418. package/core/server/data/tinybird/datasources/automation_run_step_events.datasource +12 -0
  419. package/core/server/data/tinybird/endpoints/api_automation_browse_stats.pipe +43 -0
  420. package/core/server/data/tinybird/fixtures/automation_run_events.ndjson +7 -0
  421. package/core/server/data/tinybird/fixtures/automation_run_step_events.ndjson +8 -0
  422. package/core/server/data/tinybird/pipes/mv_automation_run_steps.pipe +13 -0
  423. package/core/server/data/tinybird/pipes/mv_automation_runs.pipe +15 -0
  424. package/core/server/data/tinybird/pipes/mv_hits.pipe +86 -50
  425. package/core/server/data/tinybird/pipes/mv_pending_automation_runs.pipe +7 -0
  426. package/core/server/data/tinybird/tests/api_automation_browse_stats.yaml +18 -0
  427. package/core/server/ghost-server.js +3 -3
  428. package/core/server/lib/db-types/count.js +16 -0
  429. package/core/server/lib/generate-password.js +54 -0
  430. package/core/server/lib/public-jwk.js +77 -0
  431. package/core/server/lib/validate-password.js +81 -120
  432. package/core/server/models/action.js +4 -4
  433. package/core/server/models/base/plugins/filtered-collection.js +16 -0
  434. package/core/server/models/member.js +6 -6
  435. package/core/server/models/user.js +12 -10
  436. package/core/server/services/adapter-manager/base-classes.js +21 -3
  437. package/core/server/services/automations/automations-api.js +46 -1
  438. package/core/server/services/automations/database-automations-repository.js +11 -4
  439. package/core/server/services/automations/tinybird-automation-stats.js +56 -0
  440. package/core/server/services/content-import/import/media.js +1 -1
  441. package/core/server/services/email-analytics/email-analytics-service-wrapper.js +15 -29
  442. package/core/server/services/email-analytics/email-analytics-service.js +19 -3
  443. package/core/server/services/email-analytics/index.js +9 -4
  444. package/core/server/services/email-rendering/finalize.js +7 -2
  445. package/core/server/services/email-service/CONTEXT.md +37 -0
  446. package/core/server/services/email-service/README.md +45 -0
  447. package/core/server/services/email-service/batch-sending-service.js +2 -0
  448. package/core/server/services/email-service/email-controller.js +18 -2
  449. package/core/server/services/email-service/email-renderer.js +7 -2
  450. package/core/server/services/email-service/email-service-wrapper.js +4 -1
  451. package/core/server/services/email-service/email-service.js +43 -34
  452. package/core/server/services/email-service/sending-status-schema.js +21 -0
  453. package/core/server/services/email-service/sending-status-serializers.js +33 -0
  454. package/core/server/services/email-service/sending-status-service.js +47 -0
  455. package/core/server/services/email-service/sending-status.js +117 -0
  456. package/core/server/services/email-suppression-list/email-suppression-list.js +0 -33
  457. package/core/server/services/email-suppression-list/mailgun-email-suppression-list.js +6 -7
  458. package/core/server/services/gifts/README.md +2 -2
  459. package/core/server/services/gifts/constants.js +1 -1
  460. package/core/server/services/gifts/gift-email-service.js +10 -3
  461. package/core/server/services/gifts/gift-service.js +19 -57
  462. package/core/server/services/gifts/index.js +1 -2
  463. package/core/server/services/i18n.js +1 -1
  464. package/core/server/services/identity-tokens/identity-token-service-wrapper.js +3 -4
  465. package/core/server/services/jobs-service/index.js +8 -0
  466. package/core/server/services/jobs-service/jobs-service.js +52 -3
  467. package/core/server/services/jobs-service/register-job-handlers.js +13 -2
  468. package/core/server/services/limits.js +17 -1
  469. package/core/server/services/member-welcome-emails/service.js +1 -1
  470. package/core/server/services/members/account-service.js +98 -0
  471. package/core/server/services/members/api.js +4 -4
  472. package/core/server/services/members/import-export/export/exporter.js +20 -20
  473. package/core/server/services/members/import-export/import/completion-email.js +6 -6
  474. package/core/server/services/members/import-export/import/importer.js +13 -13
  475. package/core/server/services/members/import-export/index.js +10 -9
  476. package/core/server/services/members/members-api/controllers/router-controller.js +7 -2
  477. package/core/server/services/members/members-api/controllers/well-known-controller.js +2 -1
  478. package/core/server/services/members/members-api/members-api.js +26 -6
  479. package/core/server/services/members/members-api/repositories/event-repository.js +4 -0
  480. package/core/server/services/members/members-api/repositories/member-repository.js +4 -4
  481. package/core/server/services/members/members-api/services/member-bread-service.js +57 -48
  482. package/core/server/services/members/members-api/services/token-service.js +11 -12
  483. package/core/server/services/members/members-ssr.js +18 -0
  484. package/core/server/services/members/middleware.js +104 -83
  485. package/core/server/services/members/request-integrity-token-provider.js +2 -1
  486. package/core/server/services/members/service.js +70 -42
  487. package/core/server/services/members/utils.js +9 -0
  488. package/core/server/services/members-metafields/access.js +39 -0
  489. package/core/server/services/{members-custom-fields → members-metafields}/actions.js +6 -5
  490. package/core/server/services/members-metafields/bindings-service.js +147 -0
  491. package/core/server/services/members-metafields/codec.js +21 -0
  492. package/core/server/services/{members-custom-fields → members-metafields}/config.js +1 -1
  493. package/core/server/services/{members-custom-fields → members-metafields}/definitions-service.js +71 -67
  494. package/core/server/services/{members-custom-fields → members-metafields}/filter.js +9 -9
  495. package/core/server/services/{members-custom-fields → members-metafields}/index.js +16 -7
  496. package/core/server/services/{members-custom-fields → members-metafields}/key.js +1 -1
  497. package/core/server/services/{members-custom-fields → members-metafields}/models.js +6 -4
  498. package/core/server/services/members-metafields/namespaces.js +34 -0
  499. package/core/server/services/members-metafields/queries.js +60 -0
  500. package/core/server/services/{members-custom-fields → members-metafields}/schema.js +18 -12
  501. package/core/server/services/{members-custom-fields → members-metafields}/serializers.js +7 -6
  502. package/core/server/services/{members-custom-fields → members-metafields}/values-service.js +46 -27
  503. package/core/server/services/mentions/mention-discovery-service.js +1 -1
  504. package/core/server/services/mentions/mention-sending-service.js +27 -10
  505. package/core/server/services/mentions/mention.js +1 -1
  506. package/core/server/services/mentions/send-webmentions-job.js +18 -0
  507. package/core/server/services/mentions/service.js +1 -31
  508. package/core/server/services/oembed/oembed-service.js +36 -11
  509. package/core/server/services/posts/post-scheduling.js +20 -0
  510. package/core/server/services/staff/staff-service-emails.js +5 -1
  511. package/core/server/services/stats/stats-service.js +12 -3
  512. package/core/server/services/stripe/services/webhook/checkout-session-event-service.js +2 -2
  513. package/core/server/services/stripe/stripe-service.js +4 -4
  514. package/core/server/services/tier-checkout-config/codec.js +2 -2
  515. package/core/server/services/tier-checkout-config/index.js +2 -1
  516. package/core/server/services/tier-checkout-config/models.js +2 -2
  517. package/core/server/services/tier-checkout-config/queries.js +8 -8
  518. package/core/server/services/tier-checkout-config/serializers.js +57 -0
  519. package/core/server/services/tier-checkout-config/service.js +18 -2
  520. package/core/server/services/tiers/service.js +3 -3
  521. package/core/server/services/tinybird/tinybird-service.js +1 -0
  522. package/core/server/services/tinybird-sync/get-ingest-config.js +39 -0
  523. package/core/server/services/tinybird-sync/index.js +28 -0
  524. package/core/server/services/tinybird-sync/sync-table-to-tinybird.js +149 -0
  525. package/core/server/services/tinybird-sync/tinybird-sync-service.js +62 -0
  526. package/core/server/services/url/router-filter.js +8 -10
  527. package/core/server/services/users.js +1 -19
  528. package/core/server/web/api/endpoints/admin/routes.js +34 -34
  529. package/core/server/web/members/account/index.js +2 -0
  530. package/core/server/web/members/account/routes.js +46 -0
  531. package/core/server/web/members/app.js +4 -18
  532. package/core/server/web/well-known.js +12 -16
  533. package/core/shared/config/defaults.json +2 -3
  534. package/core/shared/{flush-logs.js → flush.js} +7 -3
  535. package/core/shared/labs.js +6 -2
  536. package/core/shared/timing-safe-string-equal.js +26 -0
  537. package/package.json +46 -46
  538. package/patches/@elastic__elasticsearch@8.19.2.patch +67 -0
  539. package/patches/juice@11.1.1.patch +46 -0
  540. package/pnpm-lock.yaml +750 -1742
  541. package/pnpm-workspace.yaml +37 -24
  542. package/scripts/prune.mts +70 -3
  543. package/components/tryghost-custom-field-types-0.0.0.tgz +0 -0
  544. package/components/tryghost-kg-default-cards-10.3.5.tgz +0 -0
  545. package/components/tryghost-kg-lexical-html-renderer-1.5.0.tgz +0 -0
  546. package/core/built/admin/assets/Combination-B0l4MKVh.js +0 -41
  547. package/core/built/admin/assets/RadialBarChart-JAKoS4KT.js +0 -1
  548. package/core/built/admin/assets/_baseAssignValue-C_vooEQc.js +0 -1
  549. package/core/built/admin/assets/about-Dyae_UT6.js +0 -1
  550. package/core/built/admin/assets/account-migration-CESa0mnX.js +0 -1
  551. package/core/built/admin/assets/action-list-C4v0-du8.js +0 -1
  552. package/core/built/admin/assets/activitypub/layout-2-0bw6HN.js +0 -1
  553. package/core/built/admin/assets/add-integration-modal-BlF6rs_f.js +0 -1
  554. package/core/built/admin/assets/add-newsletter-modal-CglVQqah.js +0 -1
  555. package/core/built/admin/assets/add-recommendation-modal-wz7BsuaG.js +0 -1
  556. package/core/built/admin/assets/analytics-C4HE1gBg.js +0 -1
  557. package/core/built/admin/assets/announcement-bar-modal-Ci4zz8jO.js +0 -1
  558. package/core/built/admin/assets/api-keys-Ck-Yteiv.js +0 -1
  559. package/core/built/admin/assets/automated-emails-D5VVMND9.js +0 -1
  560. package/core/built/admin/assets/automations-CzKt5fb8.js +0 -1
  561. package/core/built/admin/assets/automations-sAcJ1334.js +0 -1
  562. package/core/built/admin/assets/avatar-flipboard-C6Kj3Awu.js +0 -1
  563. package/core/built/admin/assets/bluesky-sharing-BEtJ_gL_.js +0 -1
  564. package/core/built/admin/assets/box-CdfQAP_F.js +0 -1
  565. package/core/built/admin/assets/brand-icon-CrIGOA3Z.js +0 -1
  566. package/core/built/admin/assets/breadcrumb-zUrZrBtW.js +0 -1
  567. package/core/built/admin/assets/build-CsiH26uS.js +0 -1
  568. package/core/built/admin/assets/button-eNMKQWXr.js +0 -1
  569. package/core/built/admin/assets/card--VNbfgo3.js +0 -1
  570. package/core/built/admin/assets/chart-helpers-CfBKt0vT.js +0 -1
  571. package/core/built/admin/assets/checkbox-CgOn_tKW.js +0 -1
  572. package/core/built/admin/assets/chunk.524.a697dee88db67fdf6021.js +0 -32
  573. package/core/built/admin/assets/chunk.598.7e056fabb47ce7dbd73f.js +0 -366
  574. package/core/built/admin/assets/code-editor-view-BYNoAoNV.js +0 -1
  575. package/core/built/admin/assets/code-editor-view-K2wI-I5f.js +0 -1
  576. package/core/built/admin/assets/color-picker-Ddw80xX6.js +0 -3
  577. package/core/built/admin/assets/color-picker-field-D9nUhvA7.js +0 -1
  578. package/core/built/admin/assets/combobox-w9j8PPQT.js +0 -1
  579. package/core/built/admin/assets/command-BfpHORBv.js +0 -1
  580. package/core/built/admin/assets/comments-BLmCmyCs.js +0 -1
  581. package/core/built/admin/assets/components-CwL6a6As-B0E0-NBJ.js +0 -1
  582. package/core/built/admin/assets/confirmation-context-CBM8G0Vj.js +0 -1
  583. package/core/built/admin/assets/container-BuQG1wuP.js +0 -1
  584. package/core/built/admin/assets/content-api-modal-TXRz3U7S.js +0 -1
  585. package/core/built/admin/assets/context-menu-_QMdd3kp.js +0 -1
  586. package/core/built/admin/assets/copy-field-6N01S07E.js +0 -1
  587. package/core/built/admin/assets/create-ghost-browse-value-source-qIBymvvf.js +0 -1
  588. package/core/built/admin/assets/custom-field-type-option-BddFlJFa.js +0 -1
  589. package/core/built/admin/assets/custom-integration-modal-DmNquxUV.js +0 -1
  590. package/core/built/admin/assets/data-list-CA2jYGPq.js +0 -1
  591. package/core/built/admin/assets/date-range-select-uvz_DtPh.js +0 -1
  592. package/core/built/admin/assets/design-and-theme-modal-BSmo12Op.js +0 -2
  593. package/core/built/admin/assets/detail-page-Dnv-CdR1.js +0 -1
  594. package/core/built/admin/assets/dirty-confirm-dialog-BZ1iytEd.js +0 -1
  595. package/core/built/admin/assets/disabled-sources-indicator-DMRrxsiJ.js +0 -1
  596. package/core/built/admin/assets/dist-4m6pHdc0.js +0 -23
  597. package/core/built/admin/assets/dist-8YJUlf3B.js +0 -1
  598. package/core/built/admin/assets/dist-CZgIBXQN.js +0 -1
  599. package/core/built/admin/assets/dist-CiHx7vA5.js +0 -6
  600. package/core/built/admin/assets/dist-DIC8yz5C.js +0 -1
  601. package/core/built/admin/assets/dist-Dcsslyo72.js +0 -1
  602. package/core/built/admin/assets/dist-Dgt2cr6a.js +0 -1
  603. package/core/built/admin/assets/dist-ECAUrdGc.js +0 -1
  604. package/core/built/admin/assets/dist-JLOy8o0Q.js +0 -1
  605. package/core/built/admin/assets/dist-Ndy-PuGN.js +0 -1
  606. package/core/built/admin/assets/dist-Z97pCNqS.js +0 -11
  607. package/core/built/admin/assets/domain-BNYrt0aD.js +0 -1
  608. package/core/built/admin/assets/dropzone-D7nFdAe5.js +0 -5
  609. package/core/built/admin/assets/edit-profile-C5Asm4LA.js +0 -1
  610. package/core/built/admin/assets/editor-REokrzci.js +0 -8
  611. package/core/built/admin/assets/empty-indicator-D9QdpuNX.js +0 -1
  612. package/core/built/admin/assets/en-B1jX3WMs.js +0 -1
  613. package/core/built/admin/assets/esm-CXo5SEPy.js +0 -2
  614. package/core/built/admin/assets/explore-UY10Egsp.js +0 -1
  615. package/core/built/admin/assets/feature-image-placeholder-D1iF_8bc.js +0 -1
  616. package/core/built/admin/assets/feed-81C8mJWR.js +0 -1
  617. package/core/built/admin/assets/field-Dihp5p18.js +0 -1
  618. package/core/built/admin/assets/filter-bar-Da1qxybu.js +0 -1
  619. package/core/built/admin/assets/filter-sources-BO9xUPj7.js +0 -1
  620. package/core/built/admin/assets/filters-CRUWecfY.js +0 -1
  621. package/core/built/admin/assets/filters-DirqNXjH.js +0 -1
  622. package/core/built/admin/assets/first-promoter-modal-CT6MxYZb.js +0 -1
  623. package/core/built/admin/assets/framework-provider-DqI25epG.js +0 -4
  624. package/core/built/admin/assets/gift-link-modal-CQVAye17.js +0 -1
  625. package/core/built/admin/assets/global-data-context-gAMDH9u1.js +0 -1
  626. package/core/built/admin/assets/grid-Dj29PY05.js +0 -1
  627. package/core/built/admin/assets/growth-BWIu-6xj.js +0 -3
  628. package/core/built/admin/assets/growth-DU29oxeA.js +0 -1
  629. package/core/built/admin/assets/heading-Dh5SFVjL.js +0 -1
  630. package/core/built/admin/assets/history-modal-CFd1Hvx6.js +0 -1
  631. package/core/built/admin/assets/hooks-CuEZV2-q.js +0 -2
  632. package/core/built/admin/assets/html-field-CJBCLTvv.js +0 -1
  633. package/core/built/admin/assets/iframe-buffering-B2OKJzbz.js +0 -1
  634. package/core/built/admin/assets/images-scfkWZiK.js +0 -1
  635. package/core/built/admin/assets/index-6MkPdCtr.js +0 -4
  636. package/core/built/admin/assets/index-Bn7QhcZu.css +0 -2
  637. package/core/built/admin/assets/index.es-CNnuNH0d.js +0 -1
  638. package/core/built/admin/assets/inline-BWSs_VzR.js +0 -1
  639. package/core/built/admin/assets/input-group-CMhe2DvY.js +0 -1
  640. package/core/built/admin/assets/integration-header-Bm6IDb1A.js +0 -1
  641. package/core/built/admin/assets/invite-user-modal-DfheMXs0.js +0 -1
  642. package/core/built/admin/assets/koenig-loader-aFQNlJlD.js +0 -2
  643. package/core/built/admin/assets/kpi-card-DBRMfGOW.js +0 -1
  644. package/core/built/admin/assets/kpi-card-DFafD1qq.js +0 -1
  645. package/core/built/admin/assets/kpi-helpers-Cv8i8hns.js +0 -1
  646. package/core/built/admin/assets/kpi-tabs-BJItvLYm.js +0 -1
  647. package/core/built/admin/assets/label-BnSCvffu.js +0 -1
  648. package/core/built/admin/assets/label-picker-KVoo91sh.js +0 -1
  649. package/core/built/admin/assets/labels-CH3Kn8RV.js +0 -1
  650. package/core/built/admin/assets/layout-Bjv2Ll-5.js +0 -1
  651. package/core/built/admin/assets/limit-service-BhiEvqcP.js +0 -20
  652. package/core/built/admin/assets/link-helpers-MVDdnFCY.js +0 -1
  653. package/core/built/admin/assets/list-page-BucXJ0hi.js +0 -1
  654. package/core/built/admin/assets/luxon-D1RVjjpq.js +0 -1
  655. package/core/built/admin/assets/member-custom-fields-DDQV6QeG.js +0 -1
  656. package/core/built/admin/assets/member-detail-CdJF6Agw.js +0 -1
  657. package/core/built/admin/assets/members-DjQbq9Z2.js +0 -4
  658. package/core/built/admin/assets/modal-page-xCivTMvI.js +0 -1
  659. package/core/built/admin/assets/moderation-AgCIEso4.js +0 -1
  660. package/core/built/admin/assets/multi-select-combobox-BcITkUVr.js +0 -1
  661. package/core/built/admin/assets/navigation-modal-BkT7b1M2.js +0 -1
  662. package/core/built/admin/assets/newsletter-BMMAuvgq.js +0 -1
  663. package/core/built/admin/assets/newsletter-detail-modal-0SCJ7Zpm.js +0 -1
  664. package/core/built/admin/assets/newsletter-emails-DKzwafuh.js +0 -1
  665. package/core/built/admin/assets/newsletters-BRBb_uQC.js +0 -1
  666. package/core/built/admin/assets/newsletters-DhNigJUh.js +0 -1
  667. package/core/built/admin/assets/note-DyGHtS9a.js +0 -1
  668. package/core/built/admin/assets/notifications-ZgWniKna.js +0 -1
  669. package/core/built/admin/assets/nql-lang-CaWrLesS.js +0 -19
  670. package/core/built/admin/assets/offers-container-modal-B-E8TIWr.js +0 -1
  671. package/core/built/admin/assets/onboarding-CzIsre-d.js +0 -1
  672. package/core/built/admin/assets/onboarding-qg8Akovm.js +0 -1
  673. package/core/built/admin/assets/onboarding-route-CaavZulg.js +0 -1
  674. package/core/built/admin/assets/overview-BW8GLeYi.js +0 -1
  675. package/core/built/admin/assets/overview-BkXZNzaZ.js +0 -1
  676. package/core/built/admin/assets/page-header-De0VzKBi.js +0 -1
  677. package/core/built/admin/assets/pagemenu-B5KKCpbA.js +0 -1
  678. package/core/built/admin/assets/pages-jgaFm69d.js +0 -1
  679. package/core/built/admin/assets/pages-route-CIUAQxtY.js +0 -1
  680. package/core/built/admin/assets/papaparse.min-cQwnxGCG.js +0 -10
  681. package/core/built/admin/assets/pintura-modal-BZ2J9w3n.js +0 -1
  682. package/core/built/admin/assets/portal-frame-B6Hr9wHc.js +0 -1
  683. package/core/built/admin/assets/portal-modal-D4ceei3t.js +0 -1
  684. package/core/built/admin/assets/post-analytics-context-D0Mw-Pmv.js +0 -1
  685. package/core/built/admin/assets/post-analytics-header-BYCsT0GP.js +0 -1
  686. package/core/built/admin/assets/post-analytics-ot7f6pih.js +0 -1
  687. package/core/built/admin/assets/post-analytics-provider-Bo1gmYaP.js +0 -1
  688. package/core/built/admin/assets/post-helpers-C5OQMBoi.js +0 -1
  689. package/core/built/admin/assets/post-share-modal-C-PaYZ_e.js +0 -1
  690. package/core/built/admin/assets/posts-DuGazgTb.js +0 -1
  691. package/core/built/admin/assets/posts-list-screen-CBGGgjjj.js +0 -2
  692. package/core/built/admin/assets/posts-route-D6xmS7Vf.js +0 -1
  693. package/core/built/admin/assets/preferences-C5YJLp74.js +0 -5
  694. package/core/built/admin/assets/preview-chrome-BljUBlOk.js +0 -1
  695. package/core/built/admin/assets/preview-modal-BfeFqi5y.js +0 -1
  696. package/core/built/admin/assets/profile-B8mx2yAu.js +0 -1
  697. package/core/built/admin/assets/prop-types-DeUPn3oD.js +0 -1
  698. package/core/built/admin/assets/radio-group-DczlLKOn.js +0 -1
  699. package/core/built/admin/assets/react-Bb3IsNbi.js +0 -1
  700. package/core/built/admin/assets/rolldown-runtime-DAXXjFlN.js +0 -1
  701. package/core/built/admin/assets/router-provider-B0gZyiGJ.js +0 -1
  702. package/core/built/admin/assets/schemas-DppqmpeJ.js +0 -64
  703. package/core/built/admin/assets/select-cb0t_TAJ.js +0 -1
  704. package/core/built/admin/assets/settings-DZqxR0Da.js +0 -1
  705. package/core/built/admin/assets/settings-DvfTNdHQ.js +0 -4
  706. package/core/built/admin/assets/settings-breadcrumbs-DLzbRRSt.js +0 -1
  707. package/core/built/admin/assets/share-modal-D2-Bz1_I.js +0 -1
  708. package/core/built/admin/assets/skeleton-Ce9GgUpf.js +0 -1
  709. package/core/built/admin/assets/slack-modal-DYDTUria.js +0 -1
  710. package/core/built/admin/assets/sort-button-VVeQjjbu.js +0 -1
  711. package/core/built/admin/assets/source-icon-Ck5_5Kgq.js +0 -1
  712. package/core/built/admin/assets/stack-B2eszIiq.js +0 -1
  713. package/core/built/admin/assets/stats-Rjmk5owg.js +0 -1
  714. package/core/built/admin/assets/stats-view-BGGmkmgv.js +0 -1
  715. package/core/built/admin/assets/step-1-CsaBjeN4.js +0 -1
  716. package/core/built/admin/assets/step-2-D2vnxOOM.js +0 -1
  717. package/core/built/admin/assets/step-3-wBoLdGEb.js +0 -2
  718. package/core/built/admin/assets/stripe-button-CDgLz0S0.js +0 -1
  719. package/core/built/admin/assets/stripe-connect-modal-CSjMJetP.js +0 -1
  720. package/core/built/admin/assets/switch-CI4gLWqb.js +0 -1
  721. package/core/built/admin/assets/table-Do6iQ83Q.js +0 -1
  722. package/core/built/admin/assets/tabs-D2yWLMp_.js +0 -1
  723. package/core/built/admin/assets/tag-detail-BhXlOsCa.js +0 -2
  724. package/core/built/admin/assets/tags-ldukRApe.js +0 -1
  725. package/core/built/admin/assets/testimonials-modal-CtnZBJKl.js +0 -1
  726. package/core/built/admin/assets/text-BQDSDsKs.js +0 -1
  727. package/core/built/admin/assets/textarea-DJ1Q5V39.js +0 -1
  728. package/core/built/admin/assets/tier-detail-modal-BOs8e_G8.js +0 -1
  729. package/core/built/admin/assets/tiers-Nd_z4BZY.js +0 -1
  730. package/core/built/admin/assets/toggle-group-ByUJsxwD.js +0 -1
  731. package/core/built/admin/assets/topic-filter-BgC3g5_v.js +0 -1
  732. package/core/built/admin/assets/transistor-modal-Drr0SNfo.js +0 -1
  733. package/core/built/admin/assets/trend-badge-6ye93YAW.js +0 -1
  734. package/core/built/admin/assets/unsplash-modal-p6AoQoWp.js +0 -1
  735. package/core/built/admin/assets/use-analytics-data-CWCMAESo.js +0 -1
  736. package/core/built/admin/assets/use-filter-params-BIni9taJ.js +0 -1
  737. package/core/built/admin/assets/use-filterable-api-CzXcpUh8.js +0 -1
  738. package/core/built/admin/assets/use-form-vRjI0Kwk.js +0 -1
  739. package/core/built/admin/assets/use-growth-stats-DCVG3s9w.js +0 -1
  740. package/core/built/admin/assets/use-host-limits-DZtR08oa.js +0 -1
  741. package/core/built/admin/assets/use-limiter-D2WRRx0H.js +0 -2
  742. package/core/built/admin/assets/use-navigate-with-base-path-BHPA228f.js +0 -1
  743. package/core/built/admin/assets/use-pintura-config-h-J0Lvta.js +0 -1
  744. package/core/built/admin/assets/use-pintura-editor-BfN1UwzH.js +0 -1
  745. package/core/built/admin/assets/use-post-referrers-Czg47m8s.js +0 -1
  746. package/core/built/admin/assets/use-query-params-BfzuqbcD.js +0 -1
  747. package/core/built/admin/assets/use-reply-chain-data-ns0caK8k.js +0 -1
  748. package/core/built/admin/assets/use-router-history-entry-uldn7zJO.js +0 -1
  749. package/core/built/admin/assets/use-setting-group-DpcuCUDg.js +0 -1
  750. package/core/built/admin/assets/use-settings-navigation-CZjGrhsp.js +0 -1
  751. package/core/built/admin/assets/use-simple-pagination-DzJWobPR.js +0 -1
  752. package/core/built/admin/assets/use-staff-users-Csipb-O0.js +0 -1
  753. package/core/built/admin/assets/use-tinybird-token-DTOKRR7e.js +0 -1
  754. package/core/built/admin/assets/use-unsaved-changes-guard-CBzs-KPi.js +0 -1
  755. package/core/built/admin/assets/use-upgrade-route-DhRSo7at.js +0 -1
  756. package/core/built/admin/assets/user-detail-modal-B_iUClI6.js +0 -1
  757. package/core/built/admin/assets/virtual-list-BW-padMe.js +0 -1
  758. package/core/built/admin/assets/web-C1v33ehA.js +0 -2
  759. package/core/built/admin/assets/web-C4BKzn2T.js +0 -1
  760. package/core/built/admin/assets/zapier-modal-BBFfI6Ml.js +0 -1
  761. package/core/server/services/email-suppression-list/in-memory-email-suppression-list.js +0 -39
  762. package/core/server/services/members-custom-fields/bindings-service.js +0 -120
  763. package/core/server/services/members-custom-fields/codec.js +0 -14
  764. package/core/server/services/members-custom-fields/queries.js +0 -32
  765. /package/core/built/admin/assets/{chunk.492.f24d855d7e3f3aad261c.js.LICENSE.txt → chunk.972.4b8c97f93d66db15e751.js.LICENSE.txt} +0 -0
  766. /package/core/server/services/{members-custom-fields → members-metafields}/storage.js +0 -0
@@ -0,0 +1,479 @@
1
+ (globalThis.webpackChunk_ember_auto_import_=globalThis.webpackChunk_ember_auto_import_||[]).push([[368],{25305(e,t){"use strict"
2
+ Object.defineProperty(t,"__esModule",{value:!0}),t.cleanBasicHtml=function(e="",t={}){const r=Object.assign({},{},t)
3
+ if(!r.createDocument){const e="undefined"!=typeof DOMParser&&DOMParser||"undefined"!=typeof window&&window.DOMParser
4
+ if(!e)throw new Error("cleanBasicHtml() must be passed a `createDocument` function as an option when used in a non-browser environment")
5
+ r.createDocument=function(t){return(new e).parseFromString(t,"text/html")}}let s=e
6
+ if(r.allowBr&&"<br>"!==s||(s=s.replace(/<br\s?\/?>/g," ")),r.removeCodeWrappers&&(s=function(e){return e.replace(/<code\b[^>]*>((.*?){.*?}(.*?))<\/code>/gi,"$1")}(s)),s=s.replace(/(\s|&nbsp;){2,}/g," ").trim().replace(/^&nbsp;|&nbsp$/g,"").trim(),s){const e=r.createDocument(s)
7
+ if(""===e.body.textContent)return""
8
+ e.body.querySelectorAll("*").forEach(t=>{if(!t.textContent?.trim().replace(/\u200c+/g,"")){if(r.allowBr&&"BR"===t.tagName)return
9
+ if(r.allowBr&&t.querySelector("br"))return t.replaceWith(e.createElement("br"))
10
+ if(t.textContent&&t.textContent.length>0){const r=e.createTextNode(" ")
11
+ return t.replaceWith(r)}return t.remove()}}),s=r.firstChildInnerContent&&e.body.firstElementChild?e.body.firstElementChild.innerHTML.trim():e.body.innerHTML.trim()}return s}},27929(e,t,r){"use strict"
12
+ Object.defineProperty(t,"__esModule",{value:!0}),t.cleanBasicHtml=void 0
13
+ var s=r(25305)
14
+ Object.defineProperty(t,"cleanBasicHtml",{enumerable:!0,get:function(){return s.cleanBasicHtml}})},90724(e,t,r){"use strict"
15
+ Object.defineProperty(t,"__esModule",{value:!0}),t.mobiledocToLexical=t.lexicalToMobiledoc=void 0
16
+ var s=r(34104)
17
+ Object.defineProperty(t,"lexicalToMobiledoc",{enumerable:!0,get:function(){return s.lexicalToMobiledoc}}),Object.defineProperty(t,"mobiledocToLexical",{enumerable:!0,get:function(){return s.mobiledocToLexical}})},34104(e,t,r){"use strict"
18
+ Object.defineProperty(t,"__esModule",{value:!0}),t.mobiledocToLexical=t.lexicalToMobiledoc=void 0
19
+ const s=r(52217)
20
+ Object.defineProperty(t,"lexicalToMobiledoc",{enumerable:!0,get:function(){return s.lexicalToMobiledoc}})
21
+ const a=r(22297)
22
+ Object.defineProperty(t,"mobiledocToLexical",{enumerable:!0,get:function(){return a.mobiledocToLexical}})},52217(e,t){"use strict"
23
+ Object.defineProperty(t,"__esModule",{value:!0}),t.lexicalToMobiledoc=function(e){if(null==e||""===e)return JSON.stringify(a)
24
+ const t=JSON.parse(e)
25
+ if(!t.root)return JSON.stringify(a)
26
+ const n={version:r,ghostVersion:s,atoms:[],cards:[],markups:[],sections:[]}
27
+ return t.root.children?.forEach(e=>function(e,t){"paragraph"===e.type&&p(e,t),i.includes(e.type)&&p(e,t,e.tag),"quote"===e.type&&p(e,t,"blockquote"),"aside"===e.type&&p(e,t,"aside"),"list"===e.type&&function(e,t,r="ul"){const s=function(e,t){const r=[]
28
+ return function(e){const t=[];(function e(r){r.children?.forEach(r=>{r.children?.forEach(t=>{"list"===t.type&&(e(t),r.children.splice(r.children.indexOf(t),1))}),"listitem"===r.type&&r.children?.length&&t.push(r)})})(e),e.children=t}(e),e.children?.forEach(e=>{if("listitem"===e.type){const s=m(e,t)
29
+ r.push(s)}}),r}(e,t),a=[3,r,s]
30
+ t.sections.push(a)}(e,t,e.tag),l.includes(e.type)&&function(e,t){const r=e.type
31
+ let s=e.type
32
+ u[s]&&(s=u[s])
33
+ const a={}
34
+ for(const o of Object.keys(e))"type"!==o&&(a[o]=e[o])
35
+ if(c[r]){const e=c[r]
36
+ for(const[t,r]of Object.entries(e))a[r]=a[t],delete a[t]}const n=[s,a]
37
+ t.cards.push(n)
38
+ const i=[10,t.cards.length-1]
39
+ t.sections.push(i)}(e,t)}(e,n)),JSON.stringify(n)}
40
+ const r="0.3.1",s="4.0",a={version:r,ghostVersion:s,markups:[],atoms:[],cards:[],sections:[[1,"p",[[0,[],0,""]]]]},n=new Map([[1,"strong"],[2,"em"],[4,"s"],[8,"u"],[16,"code"],[32,"sub"],[64,"sup"]]),i=["heading","extended-heading"],o=["text","extended-text"],l=["audio","bookmark","button","callout","codeblock","email-cta","email","embed","file","gallery","header","horizontalrule","html","image","markdown","paywall","product","signup","toggle","video"],u={codeblock:"code",horizontalrule:"hr"},c={embed:{embedType:"type"}}
41
+ function d(e,t){let r=t.markups.findIndex(t=>t[0]===e)
42
+ return-1===r&&(t.markups.push([e]),r=t.markups.length-1),r}function p(e,t,r="p"){const s=[1,r,m(e,t)]
43
+ t.sections.push(s)}function m(e,t){const r=[]
44
+ if(e.children?.length){let s=[]
45
+ e.children.forEach((a,n)=>{if(o.includes(a.type))if(0!==a.format){const i=[]
46
+ let l=0
47
+ if(h(a.format).forEach(e=>{s.includes(e)||(s.push(e),i.push(e))}),e.children[n+1]&&o.includes(e.children[n+1].type)){const t=h(e.children[n+1].format),r=s.findIndex(e=>!t.includes(e));-1!==r&&(l=s.slice(r).length,s=s.slice(0,r))}else l=s.length,s=[]
48
+ const u=i.map(e=>d(e,t))
49
+ r.push([0,u,l,a.text])}else{const e=s.length
50
+ s=[],r.push([0,[],e,a.text])}if("link"===a.type){const e=["a",["href",a.url]],n=t.markups.push(e)-1
51
+ a.children?.forEach((i,o)=>{if(0!==i.format){const l=[],u=[]
52
+ 0===o&&(s.push(e),l.push(n))
53
+ let c=0
54
+ if(h(i.format).forEach(e=>{s.includes(e)||(s.push(e),u.push(e))}),a.children[o+1]){const t=h(a.children[o+1].format),r=s.findIndex(r=>!(JSON.stringify(r)===JSON.stringify(e)||t.includes(r)));-1!==r&&(c=s.slice(r).length,s=s.slice(0,r))}else c=s.length,s=[]
55
+ l.push(...u.map(e=>d(e,t))),r.push([0,l,c,i.text])}else{const t=[]
56
+ 0===o&&(s.push(e),t.push(n))
57
+ let l=s.length-1
58
+ a.children[o+1]||(l+=1,s=[]),r.push([0,t,l,i.text])}})}if("linebreak"===a.type){const e=function(e,t){let r=t.atoms.findIndex(t=>t===e)
59
+ return-1===r&&(t.atoms.push(e),r=t.atoms.length-1),r}(["soft-return","",{}],t)
60
+ r.push([1,[],0,e])}})}else r.push([0,[],0,""])
61
+ return r}function h(e){const t=[]
62
+ return n.forEach((r,s)=>{0!==(e&s)&&t.push(r)}),t}},22297(e,t){"use strict"
63
+ Object.defineProperty(t,"__esModule",{value:!0}),t.mobiledocToLexical=function(e){if(null==e||""===e)return JSON.stringify(r)
64
+ const t=JSON.parse(e)
65
+ if(!t.sections)return JSON.stringify(r)
66
+ const s={root:{children:[],direction:null,format:"",indent:0,type:"root",version:1}}
67
+ return t.sections.forEach(e=>function(e,t,r){const s=e[0]
68
+ if(1===s){const s=function(e,t){const r=e[1],s=e[2],a=d(r)
69
+ return u(a,s,t),a}(e,t)
70
+ r.root.children.push(s),s.children&&s.children.length>0&&(r.root.direction="ltr")}else if(2===s);else if(3===s){const s=function(e,t){const r=e[1],s=e[2],a=d(r,{tag:r,type:"list",listType:"ul"===r?"bullet":"number",start:1,direction:"ltr"})
71
+ return s?.forEach((e,r)=>{const s=d("li",{type:"listitem",value:r+1,direction:"ltr"})
72
+ u(s,e,t),a.children.push(s)}),a}(e,t)
73
+ r.root.children.push(s),r.root.direction="ltr"}else if(10===s){const s=function(e,t){const r=e[1]
74
+ let[s,a]=t.cards[r]
75
+ if(s=i[s]||s,o[s]){const e=o[s]
76
+ for(const[t,r]of Object.entries(e))a[r]=a[t],delete a[t]}return l[s]&&(a=l[s](a)),delete a.type,{type:s,...a}}(e,t)
77
+ r.root.children.push(s)}}(e,t,s)),JSON.stringify(s)}
78
+ const r={root:{children:[],direction:null,format:"",indent:0,type:"root",version:1}},s={p:{type:"paragraph"},h1:{type:"heading",tag:"h1"},h2:{type:"heading",tag:"h2"},h3:{type:"heading",tag:"h3"},h4:{type:"heading",tag:"h4"},h5:{type:"heading",tag:"h5"},h6:{type:"heading",tag:"h6"},blockquote:{type:"quote"},aside:{type:"aside"},a:{type:"link",rel:null,target:null,title:null,url:null}},a={"soft-return":{type:"linebreak",version:1}},n={strong:1,b:1,em:2,i:2,s:4,u:8,code:16,sub:32,sup:64},i={code:"codeblock",hr:"horizontalrule"},o={embed:{type:"embedType"}},l={callout:e=>(e.backgroundColor&&!e.backgroundColor.match(/^[a-zA-Z\d-]+$/)&&(e.backgroundColor="white"),e)}
79
+ function u(e,t,r){const s=r.markups,n=r.atoms,i=[]
80
+ let o,l,u,h=!1
81
+ for(let f=0;f<t.length;f++){const[r,g,y,b]=t[f]
82
+ if("atom"==(0===r?"markup":"atom")){const t=n[b][0]
83
+ p(e,a[t])
84
+ continue}if(g.forEach(e=>{const t=s[e]
85
+ if("a"===t[0]){h=!0
86
+ const e=t[1]
87
+ e&&"href"===e[0]&&(l=e[1]),e&&"rel"===e[2]&&(u=e[3])}i.push(t)}),void 0!==b){const t=m(i)
88
+ h?(o=void 0!==o?o:d("a",{url:l,rel:u||null}),p(o,c(b,t))):p(e,c(b,t))}for(let t=0;t<y;t++){const t=i.pop()
89
+ t&&"a"===t[0]&&(p(e,o),h=!1,l=void 0,o=void 0)}}}function c(e,t){return{detail:0,format:t,mode:"normal",style:"",text:e,type:"text",version:1}}function d(e,t={}){const r=s[e]
90
+ return{children:[],direction:"ltr",format:"",indent:0,...r,...t,type:r?.type||t.type||e,version:1}}function p(e,t){t&&(e.children.push(t),t&&"text"in t&&t.text&&(e.direction="ltr"))}function m(e){let t=0
91
+ return e.forEach(e=>{const r=e[0]
92
+ r in n&&(t|=n[r])}),t}},54551(e,t,r){var s={"./af":1199,"./af.js":1199,"./ar":36347,"./ar-dz":77230,"./ar-dz.js":77230,"./ar-kw":63390,"./ar-kw.js":63390,"./ar-ly":65283,"./ar-ly.js":65283,"./ar-ma":30570,"./ar-ma.js":30570,"./ar-ps":15505,"./ar-ps.js":15505,"./ar-sa":94112,"./ar-sa.js":94112,"./ar-tn":20386,"./ar-tn.js":20386,"./ar.js":36347,"./az":2067,"./az.js":2067,"./be":2405,"./be.js":2405,"./bg":77091,"./bg.js":77091,"./bm":36429,"./bm.js":36429,"./bn":88548,"./bn-bd":62919,"./bn-bd.js":62919,"./bn.js":88548,"./bo":94219,"./bo.js":94219,"./br":89248,"./br.js":89248,"./bs":30551,"./bs.js":30551,"./ca":36e3,"./ca.js":36e3,"./cs":46330,"./cs.js":46330,"./cv":32805,"./cv.js":32805,"./cy":51096,"./cy.js":51096,"./da":96035,"./da.js":96035,"./de":3015,"./de-at":30917,"./de-at.js":30917,"./de-ch":24475,"./de-ch.js":24475,"./de.js":3015,"./dv":29706,"./dv.js":29706,"./el":95637,"./el.js":95637,"./en-au":33146,"./en-au.js":33146,"./en-ca":45800,"./en-ca.js":45800,"./en-gb":2053,"./en-gb.js":2053,"./en-ie":86274,"./en-ie.js":86274,"./en-il":53993,"./en-il.js":53993,"./en-in":2663,"./en-in.js":2663,"./en-nz":38060,"./en-nz.js":38060,"./en-sg":95022,"./en-sg.js":95022,"./eo":14060,"./eo.js":14060,"./es":44920,"./es-do":98508,"./es-do.js":98508,"./es-mx":22604,"./es-mx.js":22604,"./es-us":75269,"./es-us.js":75269,"./es.js":44920,"./et":85773,"./et.js":85773,"./eu":75598,"./eu.js":75598,"./fa":17933,"./fa.js":17933,"./fi":83909,"./fi.js":83909,"./fil":80893,"./fil.js":80893,"./fo":24455,"./fo.js":24455,"./fr":49940,"./fr-ca":53317,"./fr-ca.js":53317,"./fr-ch":77678,"./fr-ch.js":77678,"./fr.js":49940,"./fy":53429,"./fy.js":53429,"./ga":96692,"./ga.js":96692,"./gd":72511,"./gd.js":72511,"./gl":82103,"./gl.js":82103,"./gom-deva":33906,"./gom-deva.js":33906,"./gom-latn":96893,"./gom-latn.js":96893,"./gu":55896,"./gu.js":55896,"./he":98755,"./he.js":98755,"./hi":46639,"./hi.js":46639,"./hr":9130,"./hr.js":9130,"./hu":29171,"./hu.js":29171,"./hy-am":26406,"./hy-am.js":26406,"./id":74694,"./id.js":74694,"./is":24220,"./is.js":24220,"./it":72681,"./it-ch":40757,"./it-ch.js":40757,"./it.js":72681,"./ja":33649,"./ja.js":33649,"./jv":75572,"./jv.js":75572,"./ka":14824,"./ka.js":14824,"./kk":81770,"./kk.js":81770,"./km":35724,"./km.js":35724,"./kn":94005,"./kn.js":94005,"./ko":65814,"./ko.js":65814,"./ku":17028,"./ku-kmr":25683,"./ku-kmr.js":25683,"./ku.js":17028,"./ky":23984,"./ky.js":23984,"./lb":21038,"./lb.js":21038,"./lo":4009,"./lo.js":4009,"./lt":27208,"./lt.js":27208,"./lv":53970,"./lv.js":53970,"./me":13030,"./me.js":13030,"./mi":51413,"./mi.js":51413,"./mk":85336,"./mk.js":85336,"./ml":26189,"./ml.js":26189,"./mn":17227,"./mn.js":17227,"./mr":1975,"./mr.js":1975,"./ms":12256,"./ms-my":87323,"./ms-my.js":87323,"./ms.js":12256,"./mt":36053,"./mt.js":36053,"./my":1042,"./my.js":1042,"./nb":1228,"./nb.js":1228,"./ne":60057,"./ne.js":60057,"./nl":31442,"./nl-be":17014,"./nl-be.js":17014,"./nl.js":31442,"./nn":46152,"./nn.js":46152,"./oc-lnc":62100,"./oc-lnc.js":62100,"./pa-in":41771,"./pa-in.js":41771,"./pl":6300,"./pl.js":6300,"./pt":88340,"./pt-br":20645,"./pt-br.js":20645,"./pt.js":88340,"./ro":15195,"./ro.js":15195,"./ru":75813,"./ru.js":75813,"./sd":62339,"./sd.js":62339,"./se":6876,"./se.js":6876,"./si":41176,"./si.js":41176,"./sk":52930,"./sk.js":52930,"./sl":38891,"./sl.js":38891,"./sq":91392,"./sq.js":91392,"./sr":28025,"./sr-cyrl":50808,"./sr-cyrl.js":50808,"./sr.js":28025,"./ss":38538,"./ss.js":38538,"./sv":50773,"./sv.js":50773,"./sw":22582,"./sw.js":22582,"./ta":23155,"./ta.js":23155,"./te":27863,"./te.js":27863,"./tet":29464,"./tet.js":29464,"./tg":58425,"./tg.js":58425,"./th":9492,"./th.js":9492,"./tk":21341,"./tk.js":21341,"./tl-ph":37317,"./tl-ph.js":37317,"./tlh":59394,"./tlh.js":59394,"./tr":15622,"./tr.js":15622,"./tzl":26952,"./tzl.js":26952,"./tzm":61567,"./tzm-latn":83753,"./tzm-latn.js":83753,"./tzm.js":61567,"./ug-cn":34856,"./ug-cn.js":34856,"./uk":40816,"./uk.js":40816,"./ur":25695,"./ur.js":25695,"./uz":51639,"./uz-latn":15521,"./uz-latn.js":15521,"./uz.js":51639,"./vi":80885,"./vi.js":80885,"./x-pseudo":97765,"./x-pseudo.js":97765,"./yo":93592,"./yo.js":93592,"./zh-cn":71922,"./zh-cn.js":71922,"./zh-hk":37406,"./zh-hk.js":37406,"./zh-mo":81043,"./zh-mo.js":81043,"./zh-tw":72998,"./zh-tw.js":72998}
93
+ function a(e){var t=n(e)
94
+ return r(t)}function n(e){if(!r.o(s,e)){var t=new Error("Cannot find module '"+e+"'")
95
+ throw t.code="MODULE_NOT_FOUND",t}return s[e]}a.keys=function(){return Object.keys(s)},a.resolve=n,e.exports=a,a.id=54551},86147(){},21901(){},62358(e,t){window._eai_r=require,window._eai_d=define},82211(e,t,r){Object.defineProperty(t,Symbol.toStringTag,{value:"Module"})
96
+ var s="ConfigResponseType",a=s,n=r(90665).createQuery({dataType:s,path:"/config/"}),i="/pro"
97
+ t.DEFAULT_UPGRADE_ROUTE=i,t.configDataType=a,t.hasSendingDomain=e=>{const t=e?.hostSettings?.managedEmail?.sendingDomain
98
+ return"string"==typeof t&&t.length>0},t.isManagedEmail=e=>!!e?.hostSettings?.managedEmail?.enabled,t.sendingDomain=e=>e?.hostSettings?.managedEmail?.sendingDomain,t.upgradeRoute=e=>{const t=e?.hostSettings?.billing?.upgradeUrl
99
+ return t?t.replace(/^#/,""):i},t.useBrowseConfig=n},48808(e,t,r){Object.defineProperty(t,Symbol.toStringTag,{value:"Module"})
100
+ const s=r(51184),a=r(79522)
101
+ let n=r(6841),i=r(80576)
102
+ var o="UsersResponseType",l=a.apiUrl("/users/me/",{include:"roles"}),u=[o,l]
103
+ t.currentUserQueryKey=u,t.useCurrentUser=({requestOptions:e}={})=>{const t=a.useFetchApi(),r=s(),o=(0,n.useQuery)({queryKey:u,queryFn:()=>t(l,e),select:e=>e.users[0]})
104
+ return(0,i.useEffect)(()=>{o.error&&r(o.error)},[r,o.error]),o},t.usersDataType=o},16757(e,t,r){Object.defineProperty(t,Symbol.toStringTag,{value:"Module"})
105
+ const s=r(90665),a=r(72215)
106
+ var n="InvitesResponseType",i=s.createInfiniteQuery({dataType:n,path:"/invites/",permissions:["Owner","Administrator"],defaultSearchParams:{limit:"100",include:"roles"},defaultNextPageParams:(e,t)=>({...t,page:(e.meta?.pagination.next||1).toString()}),returnData:e=>{const{pages:t}=e,r=t.flatMap(e=>e.invites),s=t[t.length-1].meta
107
+ return{invites:r,meta:s,isEnd:!s||s.pagination.pages===s.pagination.page}}}),o=s.createMutation({method:"POST",path:()=>"/invites/",body:({email:e,roleId:t})=>({invites:[{email:e,role_id:t,expires:null,status:null,token:null}]}),updateQueries:{dataType:n,emberUpdateType:"createOrUpdate",update:a.insertToQueryCache("invites")}}),l=s.createMutation({path:e=>`/invites/${e}/`,method:"DELETE",updateQueries:{dataType:n,emberUpdateType:"delete",update:a.deleteFromQueryCache("invites")}})
108
+ t.useAddInvite=o,t.useBrowseInvites=i,t.useDeleteInvite=l},19476(e,t,r){Object.defineProperty(t,Symbol.toStringTag,{value:"Module"})
109
+ let s=r(26031)
110
+ var a=e=>`${e.type}:${e.data.id}`,n=e=>"email_complaint_event"===e?["email_complaint_event","email_complained_event"]:[e]
111
+ function i(e){const t=e.data.created_at
112
+ if(!t||!Number.isFinite(Date.parse(t)))throw new Error("Member activity returned an event without a valid timestamp.")
113
+ return new Date(t).toISOString().replace("T"," ").replace(/(?:\.000)?Z$/,"")}function o(e,t){const r=e.meta?.pagination.total
114
+ return"number"==typeof r?r>e.events.length:e.events.length>=t}t.loadMemberActivityPage=async function({read:e,filter:t="",limit:r,cursor:l={kind:"older"},signal:u}){if(!Number.isInteger(r)||r<1)throw new Error("Member activity page size must be a positive integer.")
115
+ let c="boundary"===l.kind?{...l,seen:[...l.seen],completedTypes:[...l.completedTypes]}:{...l}
116
+ const d=[],p=async(r,s)=>{u?.throwIfAborted()
117
+ const a=await e({filter:[t,...r].filter(Boolean).join("+"),limit:String(s)})
118
+ if(u?.throwIfAborted(),function(e){for(const t of e)if(i(t),"string"!=typeof t.data.id||!t.data.id||!t.type)throw new Error("Member activity returned an event without a valid identity.")}(a.events),a.events.length>s||!a.events.length&&o(a,s))throw new Error("Member activity pagination did not make progress.")
119
+ return a}
120
+ for(;d.length<r;){const e=r-d.length
121
+ if("older"===c.kind){const t=c.before,n=await p(t?[`data.created_at:<${(0,s.escapeNqlString)(t)}`]:[],e)
122
+ if(t&&n.events.some(e=>i(e)>=t))throw new Error("Member activity returned events outside the requested time range.")
123
+ if(d.push(...n.events),!o(n,e))return{events:d,meta:n.meta}
124
+ const l=i(n.events[n.events.length-1])
125
+ if(c={kind:"boundary",timestamp:l,seen:n.events.filter(e=>i(e)===l).map(a),completedTypes:[]},d.length===r)return{events:d,meta:n.meta,nextCursor:c}
126
+ continue}const t=`data.created_at:${(0,s.escapeNqlString)(c.timestamp)}`
127
+ if(!c.currentType){const e=await p([t,...c.completedTypes.length?[`type:-[${c.completedTypes.flatMap(n).map(s.escapeNqlString).join(",")}]`]:[]],1),r=e.events[0]
128
+ if(!r||!c.completedTypes.length&&e.meta?.pagination.total===c.seen.length){c={kind:"older",before:c.timestamp}
129
+ continue}if(i(r)!==c.timestamp||c.completedTypes.includes(r.type))throw new Error("Member activity returned events outside the requested type or timestamp.")
130
+ c.currentType=r.type}const l=c.beforeId,u=c.currentType,m=c.timestamp,h=await p([t,`type:[${n(u).map(s.escapeNqlString).join(",")}]`,...l?[`id:<${(0,s.escapeNqlString)(l)}`]:[]],e)
131
+ if(h.events.some(e=>e.type!==u||i(e)!==m||l&&String(e.data.id)>=l))throw new Error("Member activity returned events outside the requested cursor.")
132
+ const f=new Set(c.seen)
133
+ d.push(...h.events.filter(e=>!f.has(a(e)))),o(h,e)?c.beforeId=h.events.map(e=>String(e.data.id)).sort()[0]:(c.completedTypes.push(c.currentType),c.currentType=void 0,c.beforeId=void 0)}return{events:d,nextCursor:c}}},10411(e,t,r){Object.defineProperty(t,Symbol.toStringTag,{value:"Module"})
134
+ const s=r(51184),a=r(79522),n=r(19476)
135
+ let i=r(6841),o=r(80576),l=r(26031)
136
+ t.useBrowseMemberActivityFeed=function({memberId:e,excludedEvents:t=[],limit:r=50,enabled:u=!0,defaultErrorHandler:c=!0}={}){const d=a.useFetchApi(),p=s(),m=[t.length&&`type:-[${t.map(l.escapeNqlString).join(",")}]`,e&&`data.member_id:${(0,l.escapeNqlString)(e)}`].filter(Boolean).join("+"),h=(0,i.useInfiniteQuery)({queryKey:["MemberActivityFeedResponseType",a.apiUrl("/members/events/",{filter:m,limit:String(r)}),"timeline"],enabled:u,initialPageParam:{kind:"older"},queryFn:({pageParam:e,signal:t})=>n.loadMemberActivityPage({read:e=>d(a.apiUrl("/members/events/",e)),filter:m,limit:r,cursor:e,signal:t}),getNextPageParam:e=>e.nextCursor}),f=(0,o.useMemo)(()=>h.data&&{events:h.data.pages.flatMap(e=>e.events),meta:h.data.pages[0]?.meta,isEnd:!h.data.pages[h.data.pages.length-1]?.nextCursor},[h.data])
137
+ return(0,o.useEffect)(()=>{h.error&&c&&p(h.error)},[h.error,p,c]),{...h,data:f}}},77898(e,t,r){Object.defineProperty(t,Symbol.toStringTag,{value:"Module"})
138
+ const s=r(79522),a=r(48808),n=r(90665)
139
+ r(25904)
140
+ const i=r(28091),o=r(10411)
141
+ let l=r(6841),u=r(80576)
142
+ var c="MembersResponseType",d="/members/",p={limit:"1"},m=()=>[c,s.apiUrl(d,p)],h=n.createQuery({dataType:c,path:d}),f=n.createQuery({dataType:c,path:d,defaultSearchParams:p}),g=()=>Promise.resolve(),y=n.createQuery({dataType:c,path:d})
143
+ function b(e,t){return`${e.toLocaleString()} ${1===e?t:`${t}s`}`}var v=n.createMutation({method:"POST",path:()=>"/members/",body:e=>({members:[e]}),invalidateQueries:{dataType:c}}),w=n.createMutation({method:"POST",retry:!1,path:()=>"/members/upload/",body:function({file:e,labels:t=[],mapping:r={}}){const s=new FormData
144
+ s.append("membersfile",e)
145
+ for(const a of t)s.append("labels",a)
146
+ for(const[a,n]of Object.entries(r))"string"==typeof n&&s.append(`mapping[${a}]`,n)
147
+ return s},invalidateQueries:{dataType:c}}),E=n.createQueryWithId({dataType:c,path:e=>`/members/${e}/`}),T=n.createMutation({method:"POST",path:({id:e})=>`/members/${e}/commenting/disable`,body:({reason:e,hideComments:t})=>({reason:e,hide_comments:t}),invalidateQueries:{dataType:["CommentsResponseType",c]}}),P=n.createMutation({method:"POST",path:({id:e})=>`/members/${e}/commenting/enable`,body:()=>({}),invalidateQueries:{dataType:["CommentsResponseType",c]}}),S=n.createInfiniteQuery({dataType:c,path:d,defaultSearchParams:{include:"labels,tiers",limit:"100",order:"created_at desc"},defaultNextPageParams:(e,t)=>{if(e.meta?.pagination.next)return{...t,page:e.meta.pagination.next.toString()}},returnData:e=>{const{pages:t}=e,r=t.flatMap(e=>e.members),s=t[t.length-1].meta
148
+ return{members:r,meta:s,isEnd:!s||s.pagination.pages===s.pagination.page}}})
149
+ function j({filter:e,search:t,all:r}){if(!r&&!e&&!t)throw new Error("Bulk operation requires a filter, search, or all flag")
150
+ const s={}
151
+ return r&&(s.all="true"),e&&(s.filter=e),t&&(s.search=t),s}var _=n.createMutation({method:"PUT",path:()=>"/members/bulk/",body:({action:e})=>({bulk:{action:e.type,meta:e.meta||{},newsletter:e.newsletter}}),searchParams:j,invalidateQueries:{dataType:c}}),M=n.createMutation({method:"DELETE",path:()=>"/members/",searchParams:j,invalidateQueries:{dataType:c}}),x=n.createMutation({method:"PUT",path:({id:e})=>`/members/${e}/`,searchParams:()=>({include:"tiers,metafields"}),body:({id:e,...t})=>({members:[{id:e,...t}]}),invalidateQueries:{dataType:c}}),O=n.createMutation({method:"DELETE",path:({id:e})=>`/members/${e}/`,searchParams:({cancel:e})=>({cancel:e?"true":"false"}),invalidateQueries:{dataType:c}}),k=n.createQueryWithId({dataType:"MemberSigninUrlResponseType",path:e=>`/members/${e}/signin_urls/`,returnData:e=>e.member_signin_urls?.[0]??{member_id:"",url:""}}),L=n.createMutation({method:"DELETE",path:({id:e})=>`/members/${e}/sessions/`,invalidateQueries:{dataType:c}}),C=n.createMutation({method:"PUT",path:({memberId:e,subscriptionId:t})=>`/members/${e}/subscriptions/${t}/`,body:({cancelAtPeriodEnd:e,status:t})=>({...void 0!==e?{cancel_at_period_end:e}:{},...t?{status:t}:{}}),invalidateQueries:{dataType:c}}),U=n.createMutation({method:"DELETE",path:({id:e})=>`/members/${e}/suppression/`,invalidateQueries:{dataType:c}}),I="20"
152
+ function A(e){return`data.member_id:'${e}'`}var Q=n.createInfiniteQuery({dataType:"MemberActivityFeedResponseType",path:"/members/events/",defaultSearchParams:{limit:I},defaultNextPageParams:(e,t)=>{const r=Number(t.limit??I),s=function(e){const t=e[e.length-1]?.data?.created_at
153
+ if(t)return new Date(t).toISOString().slice(0,19).replace("T"," ")}(e.events)
154
+ if(s&&!(e.events.length<r))return{...t,filter:`data.created_at:<'${s}'+${t.filter??""}`}},returnData:e=>{const{pages:t}=e,r=t.flatMap(e=>e.events),s=t[t.length-1],a=s?.meta?.pagination?.limit,n="number"==typeof a?a:Number(I)
155
+ return{events:r,meta:s?.meta,isEnd:(s?.events.length??0)<n}}})
156
+ t.getMemberCountQueryKey=m,t.isImportMembersCompleteResponse=function(e){return"number"==typeof e.meta?.stats?.imported},t.membersCountString=function(e="",{count:t,newsletter:r,hasMultipleNewsletters:s=!1}={}){const a=r&&s?"subscriber":"member",n=`${a}s`,i=r&&s?` of ${r.name}`:"",o=(r?e.replace(r.recipientFilter,"").replace(/^\+\((.*)\)$/,"$1"):e).split(","),l=1===o.length&&"status:free"===o[0],u=1===o.length&&"status:-free"===o[0],c=!e||o.includes("status:free")&&o.includes("status:-free")
157
+ return null==t?l?`all free ${n}${i}`:u?`all paid ${n}${i}`:c?`all ${n}${i}`:"a custom members segment":l?b(t,`free ${a}`)+i:u?b(t,`paid ${a}`)+i:b(t,a)+i},t.useAddMember=v,t.useBrowseMemberActivityFeed=o.useBrowseMemberActivityFeed,t.useBrowseMembers=h,t.useBrowseMembersInfinite=function(e={}){const t=S(e)
158
+ return function(e,t){const r=(0,l.useQueryClient)(),s=e.data?.meta?.pagination?.total,a=function(e){return!e?.filter&&!e?.search}(t);(0,u.useEffect)(()=>{if(!a||e.isError||e.isPlaceholderData||"number"!=typeof s)return
159
+ const t=m(),n=r.getQueryState(t),i=n?.data,o=i?.meta?.pagination
160
+ if(!n||!i||!o)return
161
+ const l=o.total===s,u=n.dataUpdatedAt<=e.dataUpdatedAt
162
+ !l&&u&&r.setQueryData(t,{...i,meta:{...i.meta,pagination:{...o,total:s}}},{updatedAt:e.dataUpdatedAt})},[r,a,s,e.dataUpdatedAt,e.isError,e.isPlaceholderData])}(t,e.searchParams),t},t.useBulkDeleteMembers=M,t.useBulkEditMembers=_,t.useDeleteMember=O,t.useDisableMemberCommenting=T,t.useEditMember=x,t.useEditMemberSubscription=C,t.useEnableMemberCommenting=P,t.useImportMembers=w,t.useMember=E,t.useMemberActivityFeed=function(e,t={}){const{limit:r=I,enabled:s}=t
163
+ return Q({searchParams:{filter:A(e),limit:r},...void 0!==s?{enabled:s}:{}})},t.useMemberCount=function(){const{data:e}=a.useCurrentUser(),{data:t}=f({enabled:Boolean(e&&i.canManageMembers(e))})
164
+ return t?.meta?.pagination.total},t.useMemberLogout=L,t.useMemberSigninUrl=k,t.useMembersCount=function(e,{requestOptions:t}={}){const r=a.useCurrentUser({requestOptions:t}),{data:s}=r,n=Boolean(s&&i.canManageMembers(s)),o=n&&null!=e,l=y({searchParams:{filter:e??"",order:"id",limit:"1",page:"1"},staleTime:6e4,enabled:o,defaultErrorHandler:!1,requestOptions:t})
165
+ return r.isError?{count:null,isLoading:!1,isFetching:r.isFetching,error:r.error,refetch:async()=>{const t=await r.refetch()
166
+ return t.isSuccess&&t.data&&i.canManageMembers(t.data)&&null!=e?l.refetch():t}}:void 0===s?{count:null,isLoading:!0,isFetching:!1,error:null,refetch:g}:o?l.isError?{count:null,isLoading:!1,isFetching:l.isFetching,error:l.error,refetch:l.refetch}:{count:l.data?.meta?.pagination.total??null,isLoading:l.isLoading,isFetching:l.isFetching,error:l.error,refetch:l.refetch}:{count:n?0:null,isLoading:!1,isFetching:!1,error:null,refetch:g}},t.useMembersFetching=()=>(0,l.useIsFetching)({queryKey:[c]})>0,t.useRemoveMemberEmailSuppression=U},93147(e,t,r){Object.defineProperty(t,Symbol.toStringTag,{value:"Module"})
167
+ const s=r(90665),a=r(72215)
168
+ let n=r(74937)
169
+ var i=n.z.object({id:n.z.string(),uuid:n.z.string(),name:n.z.string(),description:n.z.string().nullable(),feedback_enabled:n.z.boolean(),slug:n.z.string(),sender_name:n.z.string().nullable(),sender_email:n.z.string().nullable(),sender_reply_to:n.z.string(),status:n.z.string(),visibility:n.z.string(),subscribe_on_signup:n.z.boolean(),sort_order:n.z.number(),header_image:n.z.string().nullable(),show_header_icon:n.z.boolean(),show_header_title:n.z.boolean(),title_font_category:n.z.string(),title_font_weight:n.z.string(),title_alignment:n.z.string(),show_excerpt:n.z.boolean(),show_feature_image:n.z.boolean(),body_font_category:n.z.string(),footer_content:n.z.string().nullable(),show_badge:n.z.boolean(),show_header_name:n.z.boolean(),show_post_title_section:n.z.boolean(),show_comment_cta:n.z.boolean(),show_share_button:n.z.boolean(),show_subscription_details:n.z.boolean(),show_latest_posts:n.z.boolean(),background_color:n.z.string(),header_background_color:n.z.string(),button_color:n.z.string().nullable(),link_color:n.z.string().nullable(),post_title_color:n.z.string().nullable(),section_title_color:n.z.string().nullable(),divider_color:n.z.string().nullable(),button_corners:n.z.string().nullable(),button_style:n.z.string().nullable(),image_corners:n.z.string().nullable(),link_style:n.z.string().nullable(),divider_style:n.z.string().nullish(),created_at:n.z.string(),updated_at:n.z.string().nullable(),count:n.z.object({posts:n.z.number().optional(),active_members:n.z.number().optional()}).optional()}),o=n.z.object({capabilities:n.z.object({dislikes:n.z.boolean().optional()}).optional(),pagination:n.z.object({page:n.z.number(),limit:n.z.union([n.z.number(),n.z.literal("all")]),pages:n.z.number(),total:n.z.number(),next:n.z.number().nullable(),prev:n.z.number().nullable()})}),l=n.z.object({meta:o.optional(),newsletters:n.z.array(i)}),u="NewslettersResponseType",c=u,d=s.createInfiniteQuery({dataType:u,path:"/newsletters/",parseResponse:e=>l.parse(e),defaultSearchParams:{include:"count.active_members,count.posts",limit:"50"},defaultNextPageParams:(e,t)=>{const r=e.meta?.pagination.next
170
+ if(r)return{...t,page:r.toString()}},returnData:e=>{const{pages:t}=e,r=t.flatMap(e=>e.newsletters),s=t[t.length-1].meta
171
+ return{newsletters:r,meta:s,isEnd:!s||s.pagination.pages===s.pagination.page}}}),p=s.createMutation({method:"POST",path:()=>"/newsletters/",body:({opt_in_existing:e,...t})=>({newsletters:[t]}),searchParams:e=>({opt_in_existing:e.opt_in_existing.toString(),include:"count.active_members,count.posts"}),updateQueries:{dataType:u,emberUpdateType:"createOrUpdate",update:a.insertToQueryCache("newsletters")}}),m=s.createMutation({method:"PUT",path:e=>`/newsletters/${e.id}/`,body:e=>({newsletters:[e]}),defaultSearchParams:{include:"count.active_members,count.posts"},updateQueries:{dataType:u,emberUpdateType:"createOrUpdate",update:a.updateQueryCache("newsletters")}}),h=s.createMutation({method:"PUT",path:()=>"/newsletters/verifications/",body:({token:e})=>({token:e}),defaultSearchParams:{include:"count.active_members,count.posts"},updateQueries:{dataType:u,emberUpdateType:"createOrUpdate",update:a.updateQueryCache("newsletters")}})
172
+ t.NewsletterSchema=i,t.NewslettersResponseSchema=l,t.newslettersDataType=c,t.useAddNewsletter=p,t.useBrowseNewsletters=d,t.useEditNewsletter=m,t.useVerifyNewsletterEmail=h},37380(e,t,r){Object.defineProperty(t,Symbol.toStringTag,{value:"Module"})
173
+ const s=r(90665),a=r(72215)
174
+ let n=r(6841)
175
+ var i="OffersResponseType",o=s.createQuery({dataType:i,path:"/offers/",defaultSearchParams:{}}),l=s.createQueryWithId({dataType:i,path:e=>`/offers/${e}/`}),u=s.createMutation({method:"PUT",path:e=>`/offers/${e.id}/`,body:e=>({offers:[e]}),updateQueries:{dataType:i,emberUpdateType:"createOrUpdate",update:a.updateQueryCache("offers")}}),c=s.createMutation({method:"POST",path:()=>"/offers/",body:e=>({offers:[e]}),updateQueries:{dataType:i,emberUpdateType:"createOrUpdate",update:a.insertToQueryCache("offers")}})
176
+ t.useAddOffer=c,t.useBrowseOffers=o,t.useBrowseOffersById=l,t.useEditOffer=u,t.useInvalidateOffers=()=>{const e=(0,n.useQueryClient)()
177
+ return()=>e.invalidateQueries({queryKey:[i]})}},59198(e,t){Object.defineProperty(t,Symbol.toStringTag,{value:"Module"})
178
+ var r=["tags","authors","authors.roles","email","tiers","newsletter","count.clicks","post_revisions","post_revisions.author"].join(","),s="mobiledoc,lexical",a=["author_id","uuid","url","send_email_when_published","email_recipient_filter","email","newsletter","post_revisions","author"],n=["email_subject","email_only","email_id"]
179
+ t.ALL_POST_INCLUDES=r,t.POST_FORMATS=s,t.buildPageWriteParams=function(e={}){const t={formats:s}
180
+ return e.source&&(t.source=e.source),e.saveRevision&&(t.save_revision="true"),e.convertToLexical&&(t.convert_to_lexical="true"),t.include=r,t},t.buildPostEditorReadParams=function(){return{formats:s,include:r}},t.buildPostReadParams=function(){return{formats:s}},t.buildPostWriteParams=function(e={}){const t={formats:s}
181
+ return e.source&&(t.source=e.source),e.newsletter&&(t.newsletter=e.newsletter,e.emailSegment&&(t.email_segment="status:free,status:-free"===e.emailSegment?"all":e.emailSegment)),e.saveRevision&&(t.save_revision="true"),e.convertToLexical&&(t.convert_to_lexical="true"),t.include=r,t},t.serializePostPayload=function(e,t="post"){const r={...e}
182
+ for(const s of a)delete r[s]
183
+ if("page"===t)for(const s of n)delete r[s]
184
+ else delete r.show_title_and_feature_image
185
+ return null===r.visibility&&(delete r.visibility,delete r.visibility_filter,delete r.tiers),"tiers"===r.visibility&&delete r.visibility_filter,"tiers"!==r.visibility||r.tiers?.length||(delete r.visibility,delete r.tiers),r}},42262(e,t,r){Object.defineProperty(t,Symbol.toStringTag,{value:"Module"})
186
+ const s=r(90665),a=r(59198)
187
+ var n="PostsResponseType",i=n,o=s.createQuery({dataType:n,path:"/posts/"}),l=s.createInfiniteQuery({dataType:n,path:"/posts/",defaultNextPageParams:(e,t)=>{if(e.meta?.pagination.next)return{...t,page:e.meta.pagination.next.toString()}},returnData:e=>{const{pages:t}=e,r=t.flatMap(e=>e.posts),s=t[t.length-1].meta
188
+ return{posts:r,meta:s,isEnd:!s||s.pagination.pages===s.pagination.page}}}),u=s.createQueryWithId({dataType:n,path:e=>`/posts/${e}/`}),c=s.createQueryWithId({dataType:n,path:e=>`/posts/${e}/`}),d=s.createMutation({method:"POST",path:()=>"/posts/",searchParams:({options:e})=>a.buildPostWriteParams(e),body:({post:e})=>({posts:[a.serializePostPayload(e)]}),requestOptions:({sessionExpiryRedirect:e})=>({sessionExpiryRedirect:e}),invalidateQueries:{dataType:n}}),p=s.createMutation({method:"PUT",path:({post:e})=>`/posts/${e.id}/`,searchParams:({options:e})=>a.buildPostWriteParams(e),body:({post:e})=>({posts:[a.serializePostPayload(e)]}),requestOptions:({sessionExpiryRedirect:e})=>({sessionExpiryRedirect:e}),invalidateQueries:{dataType:n}}),m=s.createMutation({method:"DELETE",path:({id:e})=>`/posts/${e}/`,requestOptions:({sessionExpiryRedirect:e})=>({sessionExpiryRedirect:e})}),h=s.createMutation({method:"PUT",path:()=>"/posts/bulk/",searchParams:({filter:e})=>({filter:e}),body:({action:e})=>({bulk:{action:e.type,meta:"meta"in e?e.meta:{}}})}),f=s.createMutation({method:"DELETE",path:()=>"/posts/",searchParams:({filter:e})=>({filter:e})}),g=s.createMutation({method:"POST",path:e=>`/posts/${e}/copy/`}),y=s.createMutation({method:"POST",retry:!1,path:()=>"/posts/upload/",body:({file:e,mapping:t})=>{const r=new FormData
189
+ r.append("postsfile",e)
190
+ for(const[s,a]of Object.entries(t))r.append(`mapping[${s}]`,a)
191
+ return r}})
192
+ t.postsDataType=i,t.useAddPost=d,t.useBrowsePosts=o,t.useBrowsePostsInfinite=l,t.useBulkDeletePosts=f,t.useBulkEditPosts=h,t.useCopyPost=g,t.useDeletePost=m,t.useEditPost=p,t.useEditorPost=(e,t={})=>{const{searchParams:r,...s}=t
193
+ return c(e,{...s,searchParams:{...r,...a.buildPostEditorReadParams()}})},t.useImportContentCSV=y,t.usePost=(e,t={})=>{const{searchParams:r,...s}=t
194
+ return u(e,{...s,searchParams:{...a.buildPostReadParams(),...r}})}},80916(e,t,r){Object.defineProperty(t,Symbol.toStringTag,{value:"Module"})
195
+ var s=r(90665).createQuery({dataType:"RolesResponseType",path:"/roles/",defaultSearchParams:{limit:"100"}})
196
+ t.useBrowseRoles=s},12098(e,t,r){Object.defineProperty(t,Symbol.toStringTag,{value:"Module"})
197
+ const s=r(90665)
198
+ var a="SettingsResponseType",n=s.createQuery({dataType:a,path:"/settings/",defaultSearchParams:{group:"site,theme,private,members,portal,newsletter,email,labs,slack,unsplash,views,firstpromoter,editor,comments,analytics,announcement,pintura,donations,security,social_web,explore,transistor"}}),i=s.createMutation({method:"PUT",path:()=>"/settings/",body:e=>({settings:e.map(({key:e,value:t})=>({key:e,value:t}))}),updateQueries:{dataType:a,emberUpdateType:"createOrUpdate",update:e=>({...e,settings:e.settings})},invalidateQueries:{filters:{predicate:e=>e.queryKey[0]!==a}}}),o=s.createMutation({method:"POST",path:()=>"/settings/access_code/regenerate/",updateQueries:{dataType:a,emberUpdateType:"createOrUpdate",update:e=>({...e,settings:e.settings})},invalidateQueries:{filters:{predicate:e=>e.queryKey[0]!==a}}}),l=s.createMutation({method:"DELETE",path:()=>"/settings/stripe/connect/",invalidateQueries:{dataType:a}}),u=s.createMutation({method:"POST",path:()=>"/slack/test/"})
199
+ function c(e,t){return e&&e.find(e=>e.key===t)?.value||null}function d({requestOptions:e}={}){const{data:t}=n({requestOptions:e})
200
+ return t?.settings}t.checkStripeEnabled=function(e,t){const r=t=>e.some(e=>e.key===t&&e.value),s=r("stripe_secret_key")&&r("stripe_publishable_key"),a=r("stripe_connect_secret_key")&&r("stripe_connect_publishable_key")
201
+ return t.stripeDirect?s:a||s},t.getSettingValue=c,t.getSettingValues=function(e,t){return t.map(t=>e?.find(e=>e.key===t)?.value)},t.humanizeSettingKey=function(e){return e.replace(/^[a-z]/,e=>e.toUpperCase()).replace(/_/g," ").replace(new RegExp(`\\b(${["API","CTA","RSS"].join("|")})\\b`,"ig"),e=>e.toUpperCase())},t.isSettingReadOnly=function(e,t){if(e)return e.find(e=>e.key===t)?.is_read_only||!1},t.useBrowseSettings=n,t.useDeleteStripeSettings=l,t.useEditSettings=i,t.useEmailTrackClicks=function(){const e=d()
202
+ if(e)return c(e,"email_track_clicks")??!1},t.useEmailTrackOpens=function(){const e=d()
203
+ if(e)return c(e,"email_track_opens")??!1},t.useMembersTrackSources=function(){const e=d()
204
+ if(e)return c(e,"members_track_sources")??!1},t.useNewslettersEnabled=function(e){const t=d(e)
205
+ if(t)return"disabled"!==c(t,"editor_default_email_recipients")},t.usePaidMembersEnabled=function(e){const t=d(e)
206
+ if(t)return c(t,"paid_members_enabled")??!1},t.useRegenerateAccessCode=o,t.useTestSlack=u,t.useWebAnalyticsEnabled=function(){const e=d()
207
+ return!!e&&!0===c(e,"web_analytics_enabled")}},28091(e,t,r){Object.defineProperty(t,Symbol.toStringTag,{value:"Module"})
208
+ const s=r(48808),a=r(90665),n=r(72215)
209
+ var i=s.usersDataType,o=a.createInfiniteQuery({dataType:i,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=>{const{pages:t}=e,r=t.flatMap(e=>e.users),s=t[t.length-1].meta
210
+ return{users:r,meta:s,isEnd:!s||s.pagination.pages===s.pagination.page}}}),l=a.createQueryWithId({dataType:i,path:e=>`/users/slug/${e}/`,defaultSearchParams:{include:"roles"}}),u=a.createMutation({method:"PUT",path:e=>`/users/${e.id}/`,body:e=>({users:[e]}),searchParams:()=>({include:"roles"}),updateQueries:{dataType:i,emberUpdateType:"createOrUpdate",update:n.updateQueryCache("users")}}),c=a.createMutation({method:"DELETE",path:e=>`/users/${e}/`,updateQueries:{dataType:i,emberUpdateType:"delete",update:n.deleteFromQueryCache("users")}}),d=a.createMutation({method:"PUT",path:()=>"/users/password/",body:({newPassword:e,confirmNewPassword:t,userId:r,oldPassword:s})=>({password:[{user_id:r,oldPassword:s||"",newPassword:e,ne2Password:t}]})}),p=a.createMutation({method:"PUT",path:()=>"/users/owner/",body:e=>({owner:[{id:e}]}),updateQueries:{dataType:i,emberUpdateType:"createOrUpdate",update:n.updateQueryCache("users")}})
211
+ function m(e){return e.roles.some(e=>"Owner"===e.name)}function h(e){return e.roles.some(e=>"Administrator"===e.name)}function f(e){return e.roles.some(e=>"Editor"===e.name)||e.roles.some(e=>"Super Editor"===e.name)}function g(e){return e.roles.some(e=>"Super Editor"===e.name)}function y(e){return e.roles.some(e=>"Author"===e.name)}function b(e){return e.roles.some(e=>"Contributor"===e.name)}t.canAccessSettings=function(e){return m(e)||h(e)||f(e)},t.canManageAutomations=function(e){return m(e)||h(e)},t.canManageGiftLinks=function(e){return m(e)||h(e)||f(e)},t.canManageMembers=function(e){return m(e)||h(e)||g(e)},t.canManageTags=function(e){return m(e)||h(e)||f(e)},t.hasAdminAccess=function(e){return m(e)||h(e)},t.isAdminUser=h,t.isAuthorOrContributor=function(e){return y(e)||b(e)},t.isAuthorUser=y,t.isContributorUser=b,t.isEditorUser=f,t.isOwnerUser=m,t.isSuperEditorUser=g,t.useBrowseUsers=o,t.useDeleteUser=c,t.useEditUser=u,t.useGetUserBySlug=l,t.useMakeOwner=p,t.useUpdatePassword=d},88950(e,t,r){Object.defineProperty(t,Symbol.toStringTag,{value:"Module"})
212
+ const s=r(51184),a=r(79522),n=r(20031),i=r(27057),o=r(48078),l=r(99767),u=r(77699),c=r(26781),d=r(26322),p=r(4418),m=r(64573),h=r(99489)
213
+ t.koenigFileUploadTypes=l.koenigFileUploadTypes,t.useConfirmUnload=n.useConfirmUnload,t.useFeatureFlag=d.useFeatureFlag,t.useFetchApi=a.useFetchApi,t.useFilterableApi=o,t.useForm=i,t.useHandleError=s,t.useHostLimits=p.useHostLimits,t.useKoenigFetchEmbed=u.useKoenigFetchEmbed,t.useKoenigFileUpload=l.useKoenigFileUpload,t.useKoenigLinkSuggestions=c.useKoenigLinkSuggestions,t.useLimiter=m.useLimiter,t.usePinturaConfig=h.usePinturaConfig},20031(e,t,r){Object.defineProperty(t,Symbol.toStringTag,{value:"Module"})
214
+ const s=r(2940)
215
+ let a=r(80576)
216
+ a=s.__toESM(a,1),t.useConfirmUnload=function(e){a.useEffect(()=>{if(!e)return
217
+ const t=e=>{e.preventDefault(),e.returnValue=""}
218
+ return window.addEventListener("beforeunload",t),()=>{window.removeEventListener("beforeunload",t)}},[e])}},26322(e,t,r){Object.defineProperty(t,Symbol.toStringTag,{value:"Module"})
219
+ const s=r(82211),a=r(39112)
220
+ t.useFeatureFlag=(e,{requestOptions:t,defaultErrorHandler:r}={})=>{const{data:n}=s.useBrowseConfig({defaultErrorHandler:r,refetchOnMount:!1,requestOptions:t}),{enabledFlags:i}=a.useFeatureFlagOverrides()
221
+ return!0===n?.config.labs?.[e]||i.includes(e)}},48078(e,t,r){const s=r(79522)
222
+ let a=r(80576),n=r(26031)
223
+ var i=(e=[],t,r)=>e&&r?e.filter(e=>e[t]?.toLowerCase().includes(r.toLowerCase())):e
224
+ e.exports=({path:e,filterKey:t,responseKey:r,limit:o=20})=>{const l=s.useFetchApi(),u=(0,a.useRef)({}),c=async a=>{if((u.current.allLoaded||u.current.lastInput===a)&&u.current.data)return i(u.current.data,t,a)
225
+ const c=await l(s.apiUrl(e,{filter:a?`${t}:~${(0,n.escapeNqlString)(a)}`:"",limit:o.toString()}))
226
+ return u.current.data=c[r],u.current.allLoaded=!a&&!c.meta?.pagination.next,u.current.lastInput=a,i(c[r],t,a)}
227
+ return{loadData:c,loadInitialValues:async(t,a)=>{await c("")
228
+ const n=[...u.current.data||[]],i=t.filter(e=>!u.current.data?.find(t=>t[a]===e))
229
+ if(i.length){const t=await l(s.apiUrl(e,{filter:`${a}:[${i.join(",")}]`,limit:"100"}))
230
+ n.push(...t[r])}return t.map(e=>n.find(t=>t[a]===e))}}}},27057(e,t,r){let s=r(80576)
231
+ e.exports=({initialState:e,savingDelay:t,savedDelay:r=2e3,onSave:a,onSaveError:n,onSavedStateReset:i,onValidate:o})=>{const[l,u]=(0,s.useState)(e),[c,d]=(0,s.useState)(""),[p,m]=(0,s.useState)({});(0,s.useEffect)(()=>{"saved"===c&&setTimeout(()=>{i?.(),d(e=>"saved"===e?"":e)},r)},[c,r])
232
+ const h=e=>0===Object.values(e).filter(Boolean).length,f=(0,s.useCallback)(()=>{if(!o)return!0
233
+ const e=o(l)
234
+ return m(e),h(e)},[l,o]),g=(0,s.useCallback)(async(e={})=>{if(!f())return d("error"),!1
235
+ if("unsaved"!==c&&!e.force&&!e.fakeWhenUnchanged)return!0
236
+ const r=Date.now()
237
+ d("saving")
238
+ try{("unsaved"===c||e.force)&&await a(l)
239
+ const s=Date.now()-r
240
+ return t&&s<t&&await new Promise(e=>{setTimeout(e,t-s)}),d("saved"),!0}catch(e){throw await(n?.(e)),d("unsaved"),e}},[l,c,t,a,n,f]),y=(0,s.useCallback)(e=>{u(e),d("unsaved")},[])
241
+ let b="default"
242
+ "saved"===c?b="default":"error"===c&&(b="destructive")
243
+ let v=""
244
+ "saved"===c?v="Saved":"saving"===c?v="Saving...":"error"===c&&(v="Retry")
245
+ const w={disabled:"saving"===c,variant:b,label:v||void 0}
246
+ return{formState:l,saveState:c,handleSave:g,updateForm:y,setFormState:u,reset(){u(e),d("")},validate:f,isValid:h(p),clearError:e=>{m(t=>({...t,[e]:""}))},errors:p,setErrors:m,okProps:w}}},51184(e,t,r){const s=r(2940),a=r(85089),n=r(27621)
247
+ let i=r(28219)
248
+ i=s.__toESM(i,1)
249
+ let o=r(80576),l=r(89860)
250
+ function u(e){l.toast.dismiss(),l.toast.error(e)}e.exports=()=>{const{sentryDSN:e}=a.useFramework()
251
+ return(0,o.useCallback)((t,{withToast:r=!0}={})=>{console.error(t),!e||t instanceof n.SessionExpiredError||i.withScope(e=>{t instanceof n.APIError&&t.response&&(e.setTag("api_url",t.response.url),e.setTag("api_response_status",t.response.status)),i.captureException(t)}),r&&(t instanceof n.APIError&&418===t.response?.status||t instanceof n.SessionExpiredError?l.toast.dismiss():t instanceof n.APIError?u(n.getErrorMessage(t,t.message)):u("Something went wrong, please try again."))},[e])}},4418(e,t,r){Object.defineProperty(t,Symbol.toStringTag,{value:"Module"})
252
+ const s=r(82211)
253
+ t.useHostLimits=()=>{const{data:e}=s.useBrowseConfig({refetchOnMount:!1})
254
+ return e?.config.hostSettings?.limits}},77699(e,t,r){Object.defineProperty(t,Symbol.toStringTag,{value:"Module"})
255
+ const s=r(65955),a=r(79522)
256
+ let n=r(80576)
257
+ var i={}
258
+ t.useKoenigFetchEmbed=(e=i)=>{const t=a.useFetchApi()
259
+ return(0,n.useCallback)(async(r,{type:a}={})=>{const n=new URL(`${s.getGhostPaths().apiRoot}/oembed/`,window.location.origin)
260
+ return n.searchParams.set("url",r),a&&n.searchParams.set("type",a),await t(n,e)},[t,e])}},99767(e,t,r){Object.defineProperty(t,Symbol.toStringTag,{value:"Module"})
261
+ const s=r(65955),a=r(79522)
262
+ let n=r(80576)
263
+ var i={image:{mimeTypes:["image/gif","image/jpg","image/jpeg","image/png","image/svg+xml","image/webp"],extensions:["gif","jpg","jpeg","png","svg","svgz","webp"],endpoint:"/images/upload/",requestMethod:"post",resourceName:"images"},video:{mimeTypes:["video/mp4","video/webm","video/ogg"],extensions:["mp4","webm","ogv"],endpoint:"/media/upload/",requestMethod:"post",resourceName:"media"},audio:{mimeTypes:["audio/mp3","audio/mpeg","audio/ogg","audio/wav","audio/vnd.wav","audio/wave","audio/x-wav","audio/mp4","audio/x-m4a"],extensions:["mp3","wav","ogg","m4a"],endpoint:"/media/upload/",requestMethod:"post",resourceName:"media"},mediaThumbnail:{mimeTypes:["image/gif","image/jpg","image/jpeg","image/png","image/webp"],extensions:["gif","jpg","jpeg","png","webp"],endpoint:"/media/thumbnail/upload/",requestMethod:"put",resourceName:"media"},file:{extensions:[],endpoint:"/files/upload/",requestMethod:"post",resourceName:"files"}},o={},l=(e,t)=>{let r=e
264
+ for(const s of t){if(!r||"object"!=typeof r||!(s in r))return null
265
+ r=r[s]}return"string"==typeof r?r:null}
266
+ t.koenigFileUploadTypes=i,t.useKoenigFileUpload=(e="image",t=o)=>{const[r,u]=(0,n.useState)(0),[c,d]=(0,n.useState)(!1),[p,m]=(0,n.useState)([]),[h,f]=(0,n.useState)(0),g=(0,n.useRef)(new Map),y=a.useFetchApi()
267
+ function b(){if(0===g.current.size)return void u(0)
268
+ let e=0
269
+ g.current.forEach(t=>{e+=t}),u(Math.round(e/g.current.size))}const v=t=>{if("file"===e)return!0
270
+ const r=i[e].extensions,[,s]=/(?:\.([^.]+))?$/.exec(t.name)??[]
271
+ return!r||!(!s||-1===r.indexOf(s.toLowerCase()))||`The file type you uploaded is not supported. Please use .${r.join(", .").toUpperCase()}`},w=async(r,{formData:a={}}={})=>{g.current.set(r,0)
272
+ const n=new FormData
273
+ n.append("file",r,r.name),Object.keys(a).forEach(e=>{n.append(e,a[e])})
274
+ const o=`${s.getGhostPaths().apiRoot}${i[e].endpoint}`
275
+ try{const s=await y(o,{...t,method:i[e].requestMethod,body:n,onUploadProgress(e){g.current.set(r,e),b()}})
276
+ let a
277
+ if(g.current.set(r,100),b(),s){const t=s[i[e].resourceName]
278
+ t&&Array.isArray(t)&&t[0]&&(a=t[0].url)}return{url:a,fileName:r.name}}catch(e){console.error(e)
279
+ const s=l(e,["data","errors",0,"context"])||"",a=l(e,["data","errors",0,"message"])||l(e,["message"])||""
280
+ throw{message:s||a,context:s,fileName:r.name}}}
281
+ return{progress:r,isLoading:c,upload:async(e=[],t={})=>{f(e.length),d(!0),m([])
282
+ const r=((e=[])=>{const t=[]
283
+ for(let r=0;r<e.length;r+=1){const s=e[r],a=v(s)
284
+ !0!==a&&t.push({fileName:s.name,message:a})}return t})(e)
285
+ if(r.length)return m(r),d(!1),u(100),null
286
+ const s=[]
287
+ for(let a=0;a<e.length;a+=1){const r=e[a]
288
+ s.push(w(r,t))}try{const e=await Promise.all(s)
289
+ return u(100),g.current.clear(),d(!1),m([]),e}catch(e){return console.error(e),m([e]),d(!1),u(100),g.current.clear(),null}},errors:p,filesNumber:h}}},26781(e,t,r){Object.defineProperty(t,Symbol.toStringTag,{value:"Module"})
290
+ const s=r(48078),a=r(37380),n=r(42262)
291
+ let i=r(80576)
292
+ t.useKoenigLinkSuggestions=({siteUrl:e,membersSignupAccess:t,donationsEnabled:r,recommendationsEnabled:o,includeShareLink:l=!1,shareLinkLabel:u="Share"})=>{const{data:c}=a.useBrowseOffers(),{data:d}=n.useBrowsePosts({searchParams:{filter:"status:published",fields:"id,url,title,visibility,published_at",order:"published_at desc",limit:"5"}}),p=s({path:"/search-index/posts/",filterKey:"title",responseKey:"posts"}),m=s({path:"/search-index/pages/",filterKey:"title",responseKey:"pages"}),h=(0,i.useMemo)(()=>[{label:"Latest posts",items:(d?.posts||[]).map(e=>({id:e.id,title:e.title,url:e.url,visibility:e.visibility,publishedAt:e.published_at??void 0}))}],[d?.posts])
293
+ return{fetchAutocompleteLinks:(0,i.useCallback)(async()=>[{label:"Homepage",value:e},{label:"Free signup",value:"#/portal/signup/free"},..."all"===t?[{label:"Paid signup",value:"#/portal/signup"},{label:"Upgrade or change plan",value:"#/portal/account/plans"}]:[],...r?[{label:"Tips and donations",value:"#/portal/support"}]:[],...l?[{label:u,value:"#/share"}]:[],...o?[{label:"Recommendations",value:"#/portal/recommendations"}]:[],...(c?.offers||[]).filter(e=>"active"===e.status&&"signup"===e.redemption_type).map(t=>({label:`Offer - ${t.name}`,value:new URL(t.code,e).toString()}))],[r,l,t,c?.offers,o,u,e]),searchLinks:(0,i.useCallback)(async e=>{if(!e)return h
294
+ const[t,r]=await Promise.all([p.loadData(e),m.loadData(e)])
295
+ return[{label:"Posts",items:t.filter(e=>"published"===e.status).map(e=>({id:e.id,title:e.title,url:e.url,visibility:e.visibility,publishedAt:e.published_at}))},{label:"Pages",items:r.filter(e=>"published"===e.status).map(e=>({id:e.id,title:e.title,url:e.url,visibility:e.visibility,publishedAt:e.published_at}))}].filter(e=>e.items.length>0)},[h,m,p])}}},64573(e,t,r){Object.defineProperty(t,Symbol.toStringTag,{value:"Module"})
296
+ const s=r(27621),a=r(82211),n=r(16757),i=r(28091),o=r(77898),l=r(93147),u=r(80916)
297
+ let c=r(80576),d=r(27944)
298
+ var p=class extends Error{constructor({message:e}){super(e)}}
299
+ t.useLimiter=()=>{const{data:e}=a.useBrowseConfig({refetchOnMount:!1}),t=e?.config,{data:{users:r}={users:[]},isLoading:m}=i.useBrowseUsers(),{data:{invites:h}={invites:[]},isLoading:f}=n.useBrowseInvites(),{data:{roles:g}={},isLoading:y}=u.useBrowseRoles(),b=m||f||y,{refetch:v}=o.useBrowseMembers({searchParams:{limit:"1"},enabled:!1}),{refetch:w}=l.useBrowseNewsletters({searchParams:{filter:"status:active",limit:"1"},enabled:!1}),E=(0,c.useMemo)(()=>!0===t?.hostSettings?.billing?.enabled&&t.hostSettings.billing.url?t.hostSettings.billing.url:"https://ghost.org/help/",[t?.hostSettings?.billing])
300
+ return(0,c.useMemo)(()=>{const e={isLimited:()=>!1,isDisabled:()=>!1,checkWouldGoOverLimit:()=>Promise.resolve(!1),errorIfWouldGoOverLimit:()=>Promise.resolve(),errorIfIsOverLimit:()=>Promise.resolve()}
301
+ if(!t?.hostSettings?.limits||b)return e
302
+ const a={...t.hostSettings.limits},n=new d.LimitService
303
+ return a.staff&&(a.staff.currentCountQuery=()=>{const e=r.filter(e=>"inactive"!==e.status&&!e.roles.some(e=>"Contributor"===e.name)),t=h.filter(e=>"Contributor"!==(g?.find(({id:t})=>t===e.role_id))?.name)
304
+ return Promise.resolve(e.length+t.length)}),a.members&&(a.members.currentCountQuery=async()=>{const{data:e}=await v()
305
+ return e?.meta?.pagination?.total||0}),a.newsletters&&(a.newsletters.currentCountQuery=async()=>{const{data:{pages:e}={pages:[]}}=await w()
306
+ return e[0].meta?.pagination.total||0}),n.loadLimits({limits:a,helpLink:E,errors:{HostLimitError:s.HostLimitError,IncorrectUsageError:p}}),{isLimited:e=>n.isLimited(e),isDisabled:e=>n.isDisabled(e)??!1,checkWouldGoOverLimit:async e=>await n.checkWouldGoOverLimit(e)??!1,errorIfWouldGoOverLimit:(e,t={})=>n.errorIfWouldGoOverLimit(e,t),errorIfIsOverLimit:e=>n.errorIfIsOverLimit(e)}},[t,v,w,E,h,b,g,r])}},63501(e,t,r){Object.defineProperty(t,Symbol.toStringTag,{value:"Module"})
307
+ const s=r(48808)
308
+ t.usePermission=(e,t)=>{const{data:r}=s.useCurrentUser(t)
309
+ if(!e||0===e.length)return!0
310
+ const a=r?.roles.map(e=>e.name)
311
+ return!!a&&e.some(e=>a.includes(e))}},99489(e,t,r){Object.defineProperty(t,Symbol.toStringTag,{value:"Module"})
312
+ const s=r(65955),a=r(12098),n=r(82211)
313
+ let i=r(80576)
314
+ var o=e=>{if(null!=e){if("string"==typeof e)return e
315
+ throw new TypeError("Expected value to be null, undefined, or a string")}},l=e=>{if(e.startsWith("/")){const{adminRoot:t}=s.getGhostPaths()
316
+ return window.location.origin+t.replace(/\/$/,"")+e}return e}
317
+ t.usePinturaConfig=function({requestOptions:e}={}){const{data:t}=n.useBrowseConfig({requestOptions:e}),{data:r}=a.useBrowseSettings({requestOptions:e}),s=(t?.config)?.pintura,[u,c,d]=a.getSettingValues(r?.settings??null,["pintura","pintura_js_url","pintura_css_url"])
318
+ let p,m
319
+ return u&&(p=s?.js||o(c),m=s?.css||o(d)),(0,i.useMemo)(()=>p&&m?{jsUrl:l(p),cssUrl:l(m)}:null,[p,m])}},39112(e,t,r){Object.defineProperty(t,Symbol.toStringTag,{value:"Module"})
320
+ let s=r(80576)
321
+ var a=(0,s.createContext)({enabledFlags:[]})
322
+ t.FeatureFlagOverridesContext=a,t.useFeatureFlagOverrides=()=>(0,s.useContext)(a)},85089(e,t,r){Object.defineProperty(t,Symbol.toStringTag,{value:"Module"})
323
+ const s=r(5852)
324
+ let a=r(28219),n=r(6841),i=r(80576),o=r(49628)
325
+ var l=(0,i.createContext)({ghostVersion:"",externalNavigate:()=>{},unsplashConfig:{Authorization:"","Accept-Version":"","Content-Type":"","App-Pragma":"","X-Unsplash-Cache":!0},sentryDSN:null,onUpdate:()=>{},onInvalidate:()=>{},onDelete:()=>{}})
326
+ t.FrameworkProvider=function({children:e,queryClient:t,...r}){return(0,o.jsx)(a.ErrorBoundary,{children:(0,o.jsx)(n.QueryClientProvider,{client:(0,i.useMemo)(()=>t||s,[t]),children:(0,o.jsx)(l.Provider,{value:r,children:e})})})},t.defaultUnsplashConfig={Authorization:"Client-ID 8672af113b0a8573edae3aa3713886265d9bb741d707f6c01a486cde8c278980","Accept-Version":"v1","Content-Type":"application/json","App-Pragma":"no-cache","X-Unsplash-Cache":!0},t.useFramework=()=>(0,i.useContext)(l)},2940(e,t){var r=Object.create,s=Object.defineProperty,a=Object.getOwnPropertyDescriptor,n=Object.getOwnPropertyNames,i=Object.getPrototypeOf,o=Object.prototype.hasOwnProperty,l=(e,t,l)=>(l=null!=e?r(i(e)):{},((e,t,r,i)=>{if(t&&"object"==typeof t||"function"==typeof t)for(var l,u=n(t),c=0,d=u.length;c<d;c++)l=u[c],o.call(e,l)||void 0===l||s(e,l,{get:(e=>t[e]).bind(null,l),enumerable:!(i=a(t,l))||i.enumerable})
327
+ return e})(!t&&e&&e.__esModule?l:s(l,"default",{value:e,enumerable:!0}),e))
328
+ Object.defineProperty(t,"__toESM",{enumerable:!0,get:function(){return l}})},79522(e,t,r){Object.defineProperty(t,Symbol.toStringTag,{value:"Module"})
329
+ const s=r(2940),a=r(85089),n=r(27621),i=r(65955),o=r(95167)
330
+ let l=r(28219)
331
+ l=s.__toESM(l,1)
332
+ let u=r(80576)
333
+ var c=e=>{const t=new Headers,r=e.getAllResponseHeaders()?.split("\r\n")||[]
334
+ for(const s of r){const e=s.indexOf(":")
335
+ if(-1===e)continue
336
+ const r=s.slice(0,e),a=s.slice(e+1).trim()
337
+ t.append(r,a)}return t},d=/\/ghost\/api\//,p=/\/ghost\/api\/admin\/session([/?#]|$)/,m=/^#\/(?:reset|setup|signin|signup)(?:[/?]|$)/,h=!1,f=e=>{const t=e.toString()
338
+ return d.test(t)&&!p.test(t)},g=()=>{const{adminRoot:e}=i.getGhostPaths()
339
+ h||(e=>window.location.pathname===e&&(!window.location.hash||"#/"===window.location.hash||m.test(window.location.hash)))(e)||(h=!0,window.location.replace(e))},y=(e,t,{method:r,headers:s,credentials:a,body:n,signal:i})=>new Promise((o,l)=>{const u=()=>{l(new DOMException("Aborted","AbortError"))}
340
+ if(i.aborted)return void u()
341
+ const d=new XMLHttpRequest
342
+ switch(d.open(r,t.toString(),!0),a){case"omit":throw new Error('"omit" credentials cannot be represented with legacy XMLHttpRequest. Consider "same-origin".')
343
+ case"same-origin":d.withCredentials=!1
344
+ break
345
+ case"include":d.withCredentials=!0
346
+ break
347
+ default:throw new Error(a)}d.responseType="arraybuffer"
348
+ for(const[e,t]of Object.entries(s))d.setRequestHeader(e,t)
349
+ d.upload.onprogress=t=>{t.lengthComputable&&e(t.loaded/t.total*100)},d.onload=()=>{o((e=>new Response(e.response,{status:e.status,statusText:e.statusText,headers:c(e)}))(d))},d.onerror=()=>{l(new TypeError("Network request failed"))},d.onabort=u
350
+ const p=()=>d.abort()
351
+ i.addEventListener("abort",p),d.onloadend=()=>{i.removeEventListener("abort",p)},d.send(n)}),{apiRoot:b}=i.getGhostPaths()
352
+ t.apiUrl=(e,t={})=>{const r=new URL(`${b}${e}`,window.location.origin)
353
+ return r.search=new URLSearchParams(t).toString(),r.toString()},t.useFetchApi=()=>{const{ghostVersion:e,sentryDSN:t}=a.useFramework()
354
+ return(0,u.useCallback)(async(r,{method:s="GET",headers:a={},body:i,credentials:u="include",timeout:c,retry:d=!0,responseType:p,sessionExpiryRedirect:m=!0,onUploadProgress:h}={})=>{const b=new AbortController,v={method:s,headers:{"app-pragma":"no-cache",...e?{"x-ghost-version":e}:{},..."string"==typeof i?{"content-type":"application/json"}:{},...a},credentials:u,mode:"cors",body:i,signal:b.signal}
355
+ let w=0,E=0
356
+ const T=Date.now(),P=[500,1e3],S=[n.ServerUnreachableError,n.MaintenanceError,TypeError],j=(e,t)=>{const s={errorName:e?.name,attempts:w,totalSeconds:E/1e3,endpoint:r.toString()}
357
+ return r.toString().includes("/ghost/api/")&&(s.server=t?.headers.get("server")),s},_=h?y.bind(null,h):fetch,M=c?setTimeout(()=>b.abort(),c):void 0
358
+ try{for(;0===w||d;)try{return await o(await _(r,v),{responseType:p})}catch(e){if(E=Date.now()-T,d&&S.some(t=>e instanceof t)&&E<=15e3){await new Promise(e=>{setTimeout(e,P[w]||P[P.length-1])}),w+=1
359
+ continue}if(0!==w&&t&&l.captureMessage("Request failed after multiple attempts",{extra:j()}),e&&"object"==typeof e&&"name"in e&&"AbortError"===e.name)throw new n.TimeoutError
360
+ if(e instanceof n.UnauthorizedError&&f(r))throw m&&g(),new n.SessionExpiredError(e.response,e.data,{cause:e})
361
+ let a=e
362
+ throw e instanceof n.APIError||(a=new n.ServerUnreachableError({cause:e})),a}}finally{clearTimeout(M)}},[e,t])}},95167(e,t,r){const s=r(27621)
363
+ e.exports=async(e,{responseType:t}={})=>{if(0===e.status)throw new s.ServerUnreachableError
364
+ if(503===e.status)throw new s.MaintenanceError(e,await e.text())
365
+ if(415===e.status)throw new s.UnsupportedMediaTypeError(e,await e.text())
366
+ if(413===e.status)throw new s.RequestEntityTooLargeError(e,await e.text())
367
+ if(401===e.status){if(e.headers.get("content-type")?.includes("json"))throw new s.UnauthorizedError(e,await e.json())
368
+ throw new s.UnauthorizedError(e,await e.text())}if(e.ok)return 204===e.status?void 0:"blob"===t?await e.blob():"arraybuffer"===t?await e.arrayBuffer():(r=e.headers.get("content-type"))&&(r.startsWith("text/")||r.includes("application/yaml"))?await e.text():await e.json()
369
+ {if(!e.headers.get("content-type")?.includes("json"))throw new s.APIError(e,await e.text())
370
+ const t=await e.json()
371
+ throw 403===e.status&&"Authorization failed"===t.errors?.[0]?.message?new s.UnauthorizedError(e,t):"VersionMismatchError"===t.errors?.[0]?.type?new s.VersionMismatchError(e,t):"ValidationError"===t.errors?.[0]?.type||"NoPermissionError"===t.errors?.[0]?.type?new s.ValidationError(e,t):"ThemeValidationError"===t.errors?.[0]?.type?new s.ThemeValidationError(e,t):"HostLimitError"===t.errors?.[0]?.type?new s.HostLimitError(e,t):"EmailError"===t.errors?.[0]?.type?new s.EmailError(e,t):new s.JSONError(e,t)}var r}},90665(e,t,r){Object.defineProperty(t,Symbol.toStringTag,{value:"Module"})
372
+ const s=r(85089),a=r(51184),n=r(79522),i=r(63501)
373
+ let o=r(6841),l=r(80576)
374
+ var u=e=>({searchParams:t,requestOptions:r,...s}={})=>{const u=n.apiUrl(e.path,t||e.defaultSearchParams),c=n.useFetchApi(),d=a(),p=i.usePermission(e.permissions,{requestOptions:r}),m=(0,o.useQuery)({...s,enabled:p&&(s.enabled??!0),queryKey:[e.dataType,u],queryFn:async()=>{if(e.parseResponse){const t=await c(u,{headers:e.headers,...r})
375
+ return e.parseResponse(t)}return c(u,{headers:e.headers,...r})}}),h=(0,l.useMemo)(()=>m.data&&e.returnData?e.returnData(m.data):m.data,[m.data])
376
+ return(0,l.useEffect)(()=>{m.error&&!1!==s.defaultErrorHandler&&d(m.error)},[d,m.error,s.defaultErrorHandler]),{...m,data:h}}
377
+ t.createInfiniteQuery=e=>({searchParams:t,requestOptions:r,getNextPageParams:s,...u}={})=>{const c=n.useFetchApi(),d=a(),p=i.usePermission(e.permissions,{requestOptions:r}),m=s||e.defaultNextPageParams||(()=>({})),h=(0,o.useInfiniteQuery)({...u,enabled:p&&(u.enabled??!0),queryKey:[e.dataType,n.apiUrl(e.path,t||e.defaultSearchParams)],queryFn:async({pageParam:s})=>{const a=n.apiUrl(e.path,s||t||e.defaultSearchParams)
378
+ if(e.parseResponse){const t=await c(a,{headers:e.headers,...r})
379
+ return e.parseResponse(t)}return c(a,{headers:e.headers,...r})},initialPageParam:void 0,getNextPageParam:r=>m(r,t||e.defaultSearchParams||{})}),f=(0,l.useMemo)(()=>h.data&&e.returnData(h.data),[h.data])
380
+ return(0,l.useEffect)(()=>{h.error&&!1!==u.defaultErrorHandler&&d(h.error)},[d,h.error,u.defaultErrorHandler]),{...h,data:f}},t.createMutation=({path:e,searchParams:t,defaultSearchParams:r,updateQueries:a,invalidateQueries:i,...u})=>()=>{const c=n.useFetchApi(),d=(0,o.useQueryClient)(),{onUpdate:p,onInvalidate:m,onDelete:h}=s.useFramework()
381
+ return(0,o.useMutation)({mutationFn:s=>(({fetchApi:e,path:t,payload:r,searchParams:s,options:a})=>{const{defaultSearchParams:i,body:o,requestOptions:l,...u}=a,c=n.apiUrl(t,s||i),d=r&&o?.(r)
382
+ let p
383
+ return d instanceof FormData?p=d:d&&(p=JSON.stringify(d)),e(c,{body:p,...u,...void 0===r?{}:l?.(r)})})({fetchApi:c,path:e(s),payload:s,searchParams:t?.(s)||r,options:u}),onSuccess:(0,l.useCallback)((e,t)=>{if(i&&"dataType"in i){const e=Array.isArray(i.dataType)?i.dataType:[i.dataType]
384
+ for(const t of e)d.invalidateQueries({queryKey:[t]}),m(t)}else i&&d.invalidateQueries(i.filters,i.options)
385
+ if(a)if(d.setQueriesData({queryKey:[a.dataType]},r=>a.update(e,r,t)),"createOrUpdate"===a.emberUpdateType)p(a.dataType,e)
386
+ else if("delete"===a.emberUpdateType){if("string"!=typeof t)throw new Error("Expected delete mutation to have a string (ID) payload. Either change the payload or update the createMutation hook")
387
+ h(a.dataType,t)}},[m,p,h,d])})},t.createQuery=u,t.createQueryWithId=e=>(t,{searchParams:r,...s}={})=>u({...e,path:e.path(t)})({searchParams:r||e.defaultSearchParams,...s})},72215(e,t){Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),t.deleteFromQueryCache=(e,t)=>(r,s,a)=>{if(!s)return s
388
+ const n=t?.(a)||[a]
389
+ if("object"==typeof s&&"pages"in s){const{pages:t}=s
390
+ return{...s,pages:t.map(t=>({...t,[e]:t[e].filter(e=>!n.includes(e.id))}))}}return{...s,[e]:s[e].filter(e=>!n.includes(e.id))}},t.insertToQueryCache=(e,t)=>(r,s)=>{if(!s)return s
391
+ const a=t||(t=>t[e])
392
+ if("object"==typeof s&&"pages"in s){const{pages:t}=s,n=t[t.length-1]
393
+ return{...s,pages:t.slice(0,-1).concat({...n,[e]:n[e].concat(a(r))})}}return{...s,[e]:s[e].concat(a(r))}},t.updateQueryCache=(e,t)=>(r,s)=>{if(!s)return s
394
+ const a=(t||(t=>t[e].reduce((e,t)=>({...e,[t.id]:t}),{})))(r)
395
+ if("object"==typeof s&&"pages"in s){const{pages:t}=s
396
+ return{...s,pages:t.map(t=>({...t,[e]:t[e].map(e=>a[e.id]||e)}))}}return{...s,[e]:s[e].map(e=>a[e.id]||e)}}},27621(e,t){Object.defineProperty(t,Symbol.toStringTag,{value:"Module"})
397
+ var r=class extends Error{response
398
+ data
399
+ constructor(e,t,r,s){!r&&e&&e.url.includes("/ghost/api/admin/")&&(r=`Something went wrong while loading ${e.url.replace(/.+\/ghost\/api\/admin\//,"").replace(/\W.*/,"").replace("_"," ")}, please try again.`),super(r||"Something went wrong, please try again.",s),this.response=e,this.data=t}},s=class extends r{data
400
+ constructor(e,t,r,s){super(e,t,r,s),this.data=t}},a=class extends r{constructor(e,t,r){super(e,t,"You are not authorised to make this request.",r)}},n=class extends s{constructor(e,t,r){super(e,t,"Theme is not compatible or contains errors.",r)}},i=class extends s{errorDetails
401
+ constructor(e,t,r){e instanceof Response?super(e,t,"A hosting plan limit was reached or exceeded.",r):(super(void 0,void 0,e.message||"A hosting plan limit was reached or exceeded."),this.errorDetails=e.errorDetails)}},o=class extends s{constructor(e,t,r){super(e,t,"Please verify your email settings",r)}},l=class extends s{constructor(e,t,r){super(e,t,t.errors[0].message,r)}},u=[l,n,i,o],c=class extends Error{constructor(e){super(e)}}
402
+ t.APIError=r,t.AlreadyExistsError=c,t.EmailError=o,t.HostLimitError=i,t.JSONError=s,t.MaintenanceError=class extends r{constructor(e,t,r){super(e,t,"Ghost is currently undergoing maintenance, please wait a moment then retry.",r)}},t.RequestEntityTooLargeError=class extends r{constructor(e,t,r){super(e,t,"Request is larger than the maximum file size the server allows",r)}},t.ServerUnreachableError=class extends r{constructor(e){super(void 0,void 0,"Something went wrong, please try again.",e)}},t.SessionExpiredError=class extends a{},t.ThemeValidationError=n,t.TimeoutError=class extends r{constructor(e){super(void 0,void 0,"Request timed out, please try again.",e)}},t.UnauthorizedError=a,t.UnsupportedMediaTypeError=class extends r{constructor(e,t,r){super(e,t,"Request contains an unknown or unsupported file type.",r)}},t.ValidationError=l,t.VersionMismatchError=class extends s{constructor(e,t,r){super(e,t,"API server is running a newer version of Ghost, please upgrade.",r)}},t.errorsWithMessage=u,t.getErrorMessage=function(e,t){const r=e instanceof s?e.data?.errors?.[0]:void 0
403
+ return r?.context||r?.message||t}},65955(e,t){function r(){const e=window.location.pathname,t=e.substr(0,e.search("/ghost/"))
404
+ return{subdir:t,adminRoot:`${t}/ghost/`,assetRoot:`${t}/ghost/assets/`,apiRoot:`${t}/ghost/api/admin`}}function s(e){let t=document.getElementById("iframeDownload")
405
+ t||(t=document.createElement("iframe"),t.id="iframeDownload",t.style.display="none",document.body.append(t)),t.setAttribute("src",e)}function a(e){if(!e)return
406
+ const t=e.match(/filename\*=([^;]+)/i)
407
+ if(t?.[1]){const e="'",r=t[1].trim(),s=r.indexOf(e),a=-1===s?-1:r.indexOf(e,s+1),n=-1===a?r:r.slice(a+1)
408
+ try{return decodeURIComponent(n.replace(/^["']|["']$/g,""))}catch{}}const r=e.match(/filename="([^"]*)"/i)
409
+ if(r?.[1])return r[1].trim()
410
+ const s=e.match(/filename=([^;]+)/i)
411
+ return s?.[1]?s[1].trim():void 0}async function n(e,t,{signal:r}={}){const s=await fetch(e,{method:"GET",signal:r})
412
+ if(!s.ok)throw new Error(`Download failed: ${s.status} ${s.statusText}`)
413
+ const n=a(s.headers.get("content-disposition"))??t??"download",i=await s.blob(),o=window.URL.createObjectURL(i),l=document.createElement("a")
414
+ l.href=o,l.download=n,document.body.appendChild(l),l.click(),l.remove(),window.URL.revokeObjectURL(o)}Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),t.blobDownload=n,t.blobDownloadFromEndpoint=async function(e,t,s={}){return n(`${r().apiRoot}${e}`,t,s)},t.downloadFile=s,t.downloadFromEndpoint=function(e){s(`${r().apiRoot}${e}`)},t.getFilenameFromContentDisposition=a,t.getGhostPaths=r},5852(e,t,r){let s=r(6841)
415
+ var a=window.adminXQueryClient||new s.QueryClient({defaultOptions:{queries:{refetchOnWindowFocus:!1,staleTime:3e5,gcTime:6e5,retry:!1,networkMode:"always"}}})
416
+ window.__TANSTACK_QUERY_CLIENT__=a,window.adminXQueryClient||(window.adminXQueryClient=a),e.exports=a},25904(e,t){Object.defineProperty(t,Symbol.toStringTag,{value:"Module"})
417
+ var r="status:free",s="status:-free",a=`${r},${s}`,n=[r,s]
418
+ t.EVERYONE_RECIPIENT_FILTER=a,t.FREE_SEGMENT=r,t.PAID_SEGMENT=s,t.buildRecipientFilter=function(e,{paidAvailable:t=!0}={}){const r=new Set([...e.base,...e.specific])
419
+ return t||r.delete(s),Array.from(r).join(",")||null},t.getFullRecipientFilter=function(e,t){let r=e
420
+ return t&&(r+=`+(${t})`),r},t.getNewsletterRecipientFilter=function({slug:e,visibility:t}){const r=[`newsletters.slug:${e}`,"email_disabled:0"]
421
+ return"paid"===t&&r.push(s),r.join("+")},t.getRecipientType=function(e){return e?"status:free"===e?"free":"status:-free"===e?"paid":e.includes("status:free")&&e.includes("status:-free")?"all":"specific":"none"},t.normalizeRecipientFilter=function(e){return"all"===e?a:e&&"none"!==e?e:null},t.parseRecipientFilter=function(e){const t=(e||"").split(","),a=[],i=[]
422
+ for(const r of t)n.includes(r.trim())?a.includes(r)||a.push(r):""!==r.trim()&&(i.includes(r)||i.push(r))
423
+ return{free:a.includes(r),paid:a.includes(s),base:a,specific:i}}},27944(e,t,r){"use strict"
424
+ r.r(t),r.d(t,{AllowlistLimit:()=>w,FlagLimit:()=>v,Limit:()=>g,LimitService:()=>T,MaxLimit:()=>y,MaxPeriodicLimit:()=>b,SUPPORTED_INTERVALS:()=>c,config:()=>i,default:()=>T,lastPeriodStart:()=>d})
425
+ var s=r(14445),a=r(74091),n=r(92213)
426
+ const i={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:()=>{},formatter:e=>Number(e)/1e6+"MB"},limitStripeConnect:{},limitAnalytics:{},limitSocialWeb:{},limitCustomFields:{},publicSiteAccess:{}}
427
+ var o=r(29560),l=r(27403),u=r(87553)
428
+ const c=["month"],d=(e,t)=>{if("month"===t){const t=u.c9.fromISO(e,{zone:"UTC"}),r=u.c9.now().setZone("UTC"),s=Math.floor(r.diff(t,"months").months)
429
+ return t.plus({months:s}).toISO()}throw new s.Ay.IncorrectUsageError({message:'Invalid interval specified. Only "month" value is accepted.'})}
430
+ function p(e,t,r){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e
431
+ var t=e[Symbol.toPrimitive]
432
+ if(void 0!==t){var r=t.call(e,"string")
433
+ if("object"!=typeof r)return r
434
+ throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e)
435
+ return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const m=/{{([\s\S]+?)}}/g,h=(e,t)=>Number("string"==typeof e?e+t:Number(e)+t),f=e=>(0,Intl.NumberFormat().format)(e)
436
+ class g{constructor({name:e,error:t,helpLink:r,db:s,errors:a}){p(this,"name",void 0),p(this,"error",void 0),p(this,"helpLink",void 0),p(this,"db",void 0),p(this,"errors",void 0),this.name=e,this.error=t,this.helpLink=r,this.db=s,this.errors=a}generateError(e){const t={errorDetails:{name:this.name}}
437
+ return this.helpLink&&(t.help=this.helpLink),t}}class y extends g{constructor({name:e,config:t,helpLink:r,db:s,errors:a}){if(super({name:e,error:t.error||"",helpLink:r,db:s,errors:a}),p(this,"currentCountQueryFn",void 0),p(this,"max",void 0),p(this,"formatter",void 0),p(this,"fallbackMessage",void 0),void 0===t.max)throw new a.IncorrectUsageError({message:"Attempted to setup a max limit without a limit"})
438
+ if(!t.currentCountQuery)throw new a.IncorrectUsageError({message:"Attempted to setup a max limit without a current count query"})
439
+ this.currentCountQueryFn=t.currentCountQuery,this.max=t.max,this.formatter=t.formatter,this.fallbackMessage=`This action would exceed the ${o(this.name)} limit on your current plan.`}generateError(e){const t=super.generateError()
440
+ if(t.message=this.fallbackMessage,this.error){const r=this.formatter||f
441
+ try{t.message=l(this.error,{interpolate:m})({max:r(this.max),count:r(e),name:this.name})}catch{t.message=this.fallbackMessage}}return t.errorDetails.limit=this.max,t.errorDetails.total=e,new this.errors.HostLimitError(t)}async currentCountQuery(e={}){return await this.currentCountQueryFn(e.transacting??this.db?.knex)}async errorIfWouldGoOverLimit(e={}){const{max:t,addedCount:r=1}=e,s=await this.currentCountQuery(e)
442
+ if(h(s,r)>(t||this.max))throw this.generateError(s)}async errorIfIsOverLimit(e={}){const t=e.currentCount||await this.currentCountQuery(e)
443
+ if(Number(t)>(e.max||this.max))throw this.generateError(t)}}class b extends g{constructor({name:e,config:t,helpLink:r,db:s,errors:a}){if(super({name:e,error:t.error||"",helpLink:r,db:s,errors:a}),p(this,"currentCountQueryFn",void 0),p(this,"maxPeriodic",void 0),p(this,"interval",void 0),p(this,"startDate",void 0),p(this,"fallbackMessage",void 0),void 0===t.maxPeriodic)throw new a.IncorrectUsageError({message:"Attempted to setup a periodic max limit without a limit"})
444
+ if(!t.currentCountQuery)throw new a.IncorrectUsageError({message:"Attempted to setup a periodic max limit without a current count query"})
445
+ if(!t.interval)throw new a.IncorrectUsageError({message:"Attempted to setup a periodic max limit without an interval"})
446
+ if(!c.includes(t.interval))throw new a.IncorrectUsageError({message:`Attempted to setup a periodic max limit without unsupported interval. Please specify one of: ${c}`})
447
+ if(!t.startDate)throw new a.IncorrectUsageError({message:"Attempted to setup a periodic max limit without a start date"})
448
+ this.currentCountQueryFn=t.currentCountQuery,this.maxPeriodic=t.maxPeriodic,this.interval=t.interval,this.startDate=t.startDate,this.fallbackMessage=`This action would exceed the ${o(this.name)} limit on your current plan.`}generateError(e){const t=super.generateError()
449
+ if(t.message=this.fallbackMessage,this.error)try{t.message=l(this.error,{interpolate:m})({max:f(this.maxPeriodic),count:f(e),name:this.name})}catch{t.message=this.fallbackMessage}return t.errorDetails.limit=this.maxPeriodic,t.errorDetails.total=e,new this.errors.HostLimitError(t)}async currentCountQuery(e={}){const t=d(this.startDate,this.interval)
450
+ return await this.currentCountQueryFn(e.transacting?e.transacting:this.db?this.db.knex:void 0,t)}async errorIfWouldGoOverLimit(e={}){const{max:t,addedCount:r=1}=e,s=await this.currentCountQuery(e)
451
+ if(h(s,r)>(t||this.maxPeriodic))throw this.generateError(s)}async errorIfIsOverLimit(e={}){const{max:t}=e,r=await this.currentCountQuery(e)
452
+ if(Number(r)>(t||this.maxPeriodic))throw this.generateError(r)}}class v extends g{constructor({name:e,config:t,helpLink:r,db:s,errors:a}){super({name:e,error:t.error||"",helpLink:r,db:s,errors:a}),p(this,"disabled",void 0),p(this,"fallbackMessage",void 0)
453
+ const n=o(e.replace(/^limit/,""))
454
+ this.disabled=t.disabled,this.fallbackMessage=`Your plan does not support ${n}. Please upgrade to enable ${n}.`}generateError(){const e=super.generateError()
455
+ return this.error?e.message=this.error:e.message=this.fallbackMessage,new this.errors.HostLimitError(e)}async errorIfWouldGoOverLimit(e){if(this.disabled)throw this.generateError()}async errorIfIsOverLimit(e){}isDisabled(){return!!this.disabled}}class w extends g{constructor({name:e,config:t,helpLink:r,errors:s}){if(super({name:e,error:t.error||"",helpLink:r,errors:s}),p(this,"allowlist",void 0),p(this,"fallbackMessage",void 0),!t.allowlist||!t.allowlist.length)throw new this.errors.IncorrectUsageError({message:"Attempted to setup an allowlist limit without an allowlist"})
456
+ this.allowlist=t.allowlist,this.fallbackMessage=`This action would exceed the ${o(this.name)} limit on your current plan.`}generateError(){const e=super.generateError()
457
+ return this.error?e.message=this.error:e.message=this.fallbackMessage,new this.errors.HostLimitError(e)}async errorIfWouldGoOverLimit(e){if(!e||!e.value)throw new this.errors.IncorrectUsageError({message:"Attempted to check an allowlist limit without a value"})
458
+ if(!this.allowlist.includes(e.value))throw this.generateError()}async errorIfIsOverLimit(e){if(!e||!e.value)throw new this.errors.IncorrectUsageError({message:"Attempted to check an allowlist limit without a value"})
459
+ if(!this.allowlist.includes(e.value))throw this.generateError()}}function E(e,t,r){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e
460
+ var t=e[Symbol.toPrimitive]
461
+ if(void 0!==t){var r=t.call(e,"string")
462
+ if("object"!=typeof r)return r
463
+ throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e)
464
+ return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}class T{constructor(){E(this,"limits",void 0),E(this,"errors",void 0),this.limits={}}loadLimits({limits:e={},subscription:t,helpLink:r,db:o,errors:l}){if(!l)throw new s.Ay.IncorrectUsageError({message:"Config Missing: 'errors' is required."})
465
+ this.errors=l,this.limits={},Object.keys(e).forEach(u=>{const c=a(u)
466
+ if(i[c]){const a=Object.assign({},i[c],e[c])
467
+ if(n(a,"allowlist"))this.limits[c]=new w({name:c,config:a,helpLink:r,errors:l})
468
+ else if(n(a,"max"))this.limits[c]=new y({name:c,config:a,helpLink:r,db:o,errors:l})
469
+ else if(n(a,"maxPeriodic")){if(void 0===t)throw new s.Ay.IncorrectUsageError({message:"Attempted to setup a periodic max limit without a subscription"})
470
+ const e=Object.assign({},a,t)
471
+ this.limits[c]=new b({name:c,config:e,helpLink:r,db:o,errors:l})}else this.limits[c]=new v({name:c,config:a,helpLink:r,errors:l})}})}isLimited(e){return!!this.limits[a(e)]}isDisabled(e){const t=this.limits[a(e)]
472
+ if(t){if("function"!=typeof t.isDisabled)throw new s.Ay.IncorrectUsageError({message:`Limit ${e} does not support .isDisabled()`})
473
+ return t.isDisabled()}}async checkIsOverLimit(e,t={}){if(this.isLimited(e))try{return await this.limits[e].errorIfIsOverLimit(t),!1}catch(e){if(e instanceof this.errors.HostLimitError)return!0
474
+ throw e}}async checkWouldGoOverLimit(e,t={}){if(this.isLimited(e))try{return await this.limits[e].errorIfWouldGoOverLimit(t),!1}catch(e){if(e instanceof this.errors.HostLimitError)return!0
475
+ throw e}}async errorIfIsOverLimit(e,t={}){this.isLimited(e)&&await this.limits[e].errorIfIsOverLimit(t)}async errorIfWouldGoOverLimit(e,t={}){this.isLimited(e)&&await this.limits[e].errorIfWouldGoOverLimit(t)}async checkIfAnyOverLimit(e={}){for(const t in this.limits)if(await this.checkIsOverLimit(t,e))return!0
476
+ return!1}}},26031(e,t,r){"use strict"
477
+ function s(e){return`'${e.replace(/(['"])/g,"\\$1")}'`}r.r(t),r.d(t,{escapeNqlString:()=>s})}}])
478
+
479
+ //# sourceMappingURL=chunk.368.22ce1b732c0b40abd3f1.map