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 @@
1
+ import{i as e,r as t}from"./react-BXwhMTuc.js";var n=e({DateTime:()=>$,Duration:()=>X,FixedOffsetZone:()=>U,IANAZone:()=>V,Info:()=>Q,Interval:()=>ri,InvalidZone:()=>qn,Settings:()=>W,SystemZone:()=>jn,VERSION:()=>bi,Zone:()=>B});function r(e){let t=Mn.get(e);return t===void 0&&(t=new Intl.DateTimeFormat(`en-US`,{hour12:!1,timeZone:e,year:`numeric`,month:`2-digit`,day:`2-digit`,hour:`2-digit`,minute:`2-digit`,second:`2-digit`,era:`short`}),Mn.set(e,t)),t}function i(e,t){let n=e.format(t).replace(/\u200E/g,``),[,r,i,a,o,s,c,l]=/(\d+)\/(\d+)\/(\d+) (AD|BC),? (\d+):(\d+):(\d+)/.exec(n);return[a,r,i,o,s,c,l]}function a(e,t){let n=e.formatToParts(t),r=[];for(let e=0;e<n.length;e++){let{type:t,value:i}=n[e],a=Nn[t];t===`era`?r[a]=i:x(a)||(r[a]=parseInt(i,10))}return r}function o(e,t={}){let n=JSON.stringify([e,t]),r=Fn[n];return r||(r=new Intl.ListFormat(e,t),Fn[n]=r),r}function s(e,t={}){let n=JSON.stringify([e,t]),r=In.get(n);return r===void 0&&(r=new Intl.DateTimeFormat(e,t),In.set(n,r)),r}function c(e,t={}){let n=JSON.stringify([e,t]),r=Ln.get(n);return r===void 0&&(r=new Intl.NumberFormat(e,t),Ln.set(n,r)),r}function l(e,t={}){let{base:n,...r}=t,i=JSON.stringify([e,r]),a=Rn.get(i);return a===void 0&&(a=new Intl.RelativeTimeFormat(e,t),Rn.set(i,a)),a}function u(){return zn||(zn=new Intl.DateTimeFormat().resolvedOptions().locale,zn)}function d(e){let t=Bn.get(e);return t===void 0&&(t=new Intl.DateTimeFormat(e).resolvedOptions(),Bn.set(e,t)),t}function f(e){let t=Vn.get(e);if(!t){let n=new Intl.Locale(e);t=`getWeekInfo`in n?n.getWeekInfo():n.weekInfo,`minimalDays`in t||(t={...Gn,...t}),Vn.set(e,t)}return t}function p(e){let t=e.indexOf(`-x-`);t!==-1&&(e=e.substring(0,t));let n=e.indexOf(`-u-`);if(n===-1)return[e];{let t,r;try{t=s(e).resolvedOptions(),r=e}catch{let i=e.substring(0,n);t=s(i).resolvedOptions(),r=i}let{numberingSystem:i,calendar:a}=t;return[r,i,a]}}function m(e,t,n){return n||t?(e.includes(`-u-`)||(e+=`-u`),n&&(e+=`-ca-${n}`),t&&(e+=`-nu-${t}`),e):e}function h(e){let t=[];for(let n=1;n<=12;n++){let r=$.utc(2009,n,1);t.push(e(r))}return t}function ee(e){let t=[];for(let n=1;n<=7;n++){let r=$.utc(2016,11,13+n);t.push(e(r))}return t}function g(e,t,n,r){let i=e.listingMode();return i===`error`?null:i===`en`?n(t):r(t)}function te(e){return e.numberingSystem&&e.numberingSystem!==`latn`?!1:e.numberingSystem===`latn`||!e.locale||e.locale.startsWith(`en`)||d(e.locale).numberingSystem===`latn`}function _(e,t){if(x(e)||e===null)return t;if(e instanceof B)return e;if(_e(e)){let n=e.toLowerCase();return n==="default"?t:n===`local`||n===`system`?jn.instance:n===`utc`||n===`gmt`?U.utcInstance:U.parseSpecifier(n)||V.create(e)}else if(S(e))return U.instance(e);else if(typeof e==`object`&&`offset`in e&&typeof e.offset==`function`)return e;else return new qn(e)}function ne(e){let t=parseInt(e,10);if(isNaN(t)){t=``;for(let n=0;n<e.length;n++){let r=e.charCodeAt(n);if(e[n].search(Jn.hanidec)!==-1)t+=Xn.indexOf(e[n]);else for(let e in Yn){let[n,i]=Yn[e];r>=n&&r<=i&&(t+=r-n)}}return parseInt(t,10)}else return t}function re(){Zn.clear()}function v({numberingSystem:e},t=``){let n=e||`latn`,r=Zn.get(n);r===void 0&&(r=new Map,Zn.set(n,r));let i=r.get(t);return i===void 0&&(i=RegExp(`${Jn[n]}${t}`),r.set(t,i)),i}function y(e,t){return new G(`unit out of range`,`you specified ${t} (of type ${typeof t}) as a ${e}, which is invalid`)}function b(e,t,n){let r=new Date(Date.UTC(e,t-1,n));e<100&&e>=0&&r.setUTCFullYear(r.getUTCFullYear()-1900);let i=r.getUTCDay();return i===0?7:i}function ie(e,t,n){return n+(ke(e)?sr:or)[t-1]}function ae(e,t){let n=ke(e)?sr:or,r=n.findIndex(e=>e<t),i=t-n[r];return{month:r+1,day:i}}function oe(e,t){return(e-t+7)%7+1}function se(e,t=4,n=1){let{year:r,month:i,day:a}=e,o=ie(r,i,a),s=oe(b(r,i,a),n),c=Math.floor((o-s+14-t)/7),l;return c<1?(l=r-1,c=Pe(l,t,n)):c>Pe(r,t,n)?(l=r+1,c=1):l=r,{weekYear:l,weekNumber:c,weekday:s,...Ve(e)}}function ce(e,t=4,n=1){let{weekYear:r,weekNumber:i,weekday:a}=e,o=oe(b(r,1,t),n),s=Ae(r),c=i*7+a-o-7+t,l;c<1?(l=r-1,c+=Ae(l)):c>s?(l=r+1,c-=Ae(r)):l=r;let{month:u,day:d}=ae(l,c);return{year:l,month:u,day:d,...Ve(e)}}function le(e){let{year:t,month:n,day:r}=e;return{year:t,ordinal:ie(t,n,r),...Ve(e)}}function ue(e){let{year:t,ordinal:n}=e,{month:r,day:i}=ae(t,n);return{year:t,month:r,day:i,...Ve(e)}}function de(e,t){if(!x(e.localWeekday)||!x(e.localWeekNumber)||!x(e.localWeekYear)){if(!x(e.weekday)||!x(e.weekNumber)||!x(e.weekYear))throw new P(`Cannot mix locale-based week fields with ISO-based week fields`);return x(e.localWeekday)||(e.weekday=e.localWeekday),x(e.localWeekNumber)||(e.weekNumber=e.localWeekNumber),x(e.localWeekYear)||(e.weekYear=e.localWeekYear),delete e.localWeekday,delete e.localWeekNumber,delete e.localWeekYear,{minDaysInFirstWeek:t.getMinDaysInFirstWeek(),startOfWeek:t.getStartOfWeek()}}else return{minDaysInFirstWeek:4,startOfWeek:1}}function fe(e,t=4,n=1){let r=ge(e.weekYear),i=C(e.weekNumber,1,Pe(e.weekYear,t,n)),a=C(e.weekday,1,7);return r?i?a?!1:y(`weekday`,e.weekday):y(`week`,e.weekNumber):y(`weekYear`,e.weekYear)}function pe(e){let t=ge(e.year),n=C(e.ordinal,1,Ae(e.year));return t?n?!1:y(`ordinal`,e.ordinal):y(`year`,e.year)}function me(e){let t=ge(e.year),n=C(e.month,1,12),r=C(e.day,1,je(e.year,e.month));return t?n?r?!1:y(`day`,e.day):y(`month`,e.month):y(`year`,e.year)}function he(e){let{hour:t,minute:n,second:r,millisecond:i}=e,a=C(t,0,23)||t===24&&n===0&&r===0&&i===0,o=C(n,0,59),s=C(r,0,59),c=C(i,0,999);return a?o?s?c?!1:y(`millisecond`,i):y(`second`,r):y(`minute`,n):y(`hour`,t)}function x(e){return e===void 0}function S(e){return typeof e==`number`}function ge(e){return typeof e==`number`&&e%1==0}function _e(e){return typeof e==`string`}function ve(e){return Object.prototype.toString.call(e)===`[object Date]`}function ye(){try{return typeof Intl<`u`&&!!Intl.RelativeTimeFormat}catch{return!1}}function be(){try{return typeof Intl<`u`&&!!Intl.Locale&&(`weekInfo`in Intl.Locale.prototype||`getWeekInfo`in Intl.Locale.prototype)}catch{return!1}}function xe(e){return Array.isArray(e)?e:[e]}function Se(e,t,n){if(e.length!==0)return e.reduce((e,r)=>{let i=[t(r),r];return e&&n(e[0],i[0])===e[0]?e:i},null)[1]}function Ce(e,t){return t.reduce((t,n)=>(t[n]=e[n],t),{})}function we(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function Te(e){if(e==null)return null;if(typeof e!=`object`)throw new F(`Week settings must be an object`);if(!C(e.firstDay,1,7)||!C(e.minimalDays,1,7)||!Array.isArray(e.weekend)||e.weekend.some(e=>!C(e,1,7)))throw new F(`Invalid week settings`);return{firstDay:e.firstDay,minimalDays:e.minimalDays,weekend:Array.from(e.weekend)}}function C(e,t,n){return ge(e)&&e>=t&&e<=n}function Ee(e,t){return e-t*Math.floor(e/t)}function w(e,t=2){let n=e<0,r;return r=n?`-`+(``+-e).padStart(t,`0`):(``+e).padStart(t,`0`),r}function T(e){if(!(x(e)||e===null||e===``))return parseInt(e,10)}function E(e){if(!(x(e)||e===null||e===``))return parseFloat(e)}function De(e){if(!(x(e)||e===null||e===``)){let t=parseFloat(`0.`+e)*1e3;return Math.floor(t)}}function Oe(e,t,n=`round`){let r=10**t;switch(n){case`expand`:return e>0?Math.ceil(e*r)/r:Math.floor(e*r)/r;case`trunc`:return Math.trunc(e*r)/r;case`round`:return Math.round(e*r)/r;case`floor`:return Math.floor(e*r)/r;case`ceil`:return Math.ceil(e*r)/r;default:throw RangeError(`Value rounding ${n} is out of range`)}}function ke(e){return e%4==0&&(e%100!=0||e%400==0)}function Ae(e){return ke(e)?366:365}function je(e,t){let n=Ee(t-1,12)+1,r=e+(t-n)/12;return n===2?ke(r)?29:28:[31,null,31,30,31,30,31,31,30,31,30,31][n-1]}function Me(e){let t=Date.UTC(e.year,e.month-1,e.day,e.hour,e.minute,e.second,e.millisecond);return e.year<100&&e.year>=0&&(t=new Date(t),t.setUTCFullYear(e.year,e.month-1,e.day)),+t}function Ne(e,t,n){return-oe(b(e,1,t),n)+t-1}function Pe(e,t=4,n=1){let r=Ne(e,t,n),i=Ne(e+1,t,n);return(Ae(e)-r+i)/7}function Fe(e){return e>99?e:e>W.twoDigitCutoffYear?1900+e:2e3+e}function Ie(e,t,n,r=null){let i=new Date(e),a={hourCycle:`h23`,year:`numeric`,month:`2-digit`,day:`2-digit`,hour:`2-digit`,minute:`2-digit`};r&&(a.timeZone=r);let o={timeZoneName:t,...a},s=new Intl.DateTimeFormat(n,o).formatToParts(i).find(e=>e.type.toLowerCase()===`timezonename`);return s?s.value:null}function Le(e,t){let n=parseInt(e,10);Number.isNaN(n)&&(n=0);let r=parseInt(t,10)||0,i=n<0||Object.is(n,-0)?-r:r;return n*60+i}function Re(e){let t=Number(e);if(typeof e==`boolean`||e===``||!Number.isFinite(t))throw new F(`Invalid unit value ${e}`);return t}function ze(e,t){let n={};for(let r in e)if(we(e,r)){let i=e[r];if(i==null)continue;n[t(r)]=Re(i)}return n}function Be(e,t){let n=Math.trunc(Math.abs(e/60)),r=Math.trunc(Math.abs(e%60)),i=e>=0?`+`:`-`;switch(t){case`short`:return`${i}${w(n,2)}:${w(r,2)}`;case`narrow`:return`${i}${n}${r>0?`:${r}`:``}`;case`techie`:return`${i}${w(n,2)}${w(r,2)}`;default:throw RangeError(`Value format ${t} is out of range for property format`)}}function Ve(e){return Ce(e,[`hour`,`minute`,`second`,`millisecond`])}function He(e){switch(e){case`narrow`:return[...ur];case`short`:return[...lr];case`long`:return[...cr];case`numeric`:return[`1`,`2`,`3`,`4`,`5`,`6`,`7`,`8`,`9`,`10`,`11`,`12`];case`2-digit`:return[`01`,`02`,`03`,`04`,`05`,`06`,`07`,`08`,`09`,`10`,`11`,`12`];default:return null}}function Ue(e){switch(e){case`narrow`:return[...pr];case`short`:return[...fr];case`long`:return[...dr];case`numeric`:return[`1`,`2`,`3`,`4`,`5`,`6`,`7`];default:return null}}function We(e){switch(e){case`narrow`:return[..._r];case`short`:return[...gr];case`long`:return[...hr];default:return null}}function Ge(e){return mr[e.hour<12?0:1]}function Ke(e,t){return Ue(t)[e.weekday-1]}function qe(e,t){return He(t)[e.month-1]}function Je(e,t){return We(t)[e.year<0?0:1]}function Ye(e,t,n=`always`,r=!1){let i={years:[`year`,`yr.`],quarters:[`quarter`,`qtr.`],months:[`month`,`mo.`],weeks:[`week`,`wk.`],days:[`day`,`day`,`days`],hours:[`hour`,`hr.`],minutes:[`minute`,`min.`],seconds:[`second`,`sec.`]},a=[`hours`,`minutes`,`seconds`].indexOf(e)===-1;if(n===`auto`&&a){let n=e===`days`;switch(t){case 1:return n?`tomorrow`:`next ${i[e][0]}`;case-1:return n?`yesterday`:`last ${i[e][0]}`;case 0:return n?`today`:`this ${i[e][0]}`}}let o=Object.is(t,-0)||t<0,s=Math.abs(t),c=s===1,l=i[e],u=r?c?l[1]:l[2]||l[1]:c?i[e][0]:e;return o?`${s} ${u} ago`:`in ${s} ${u}`}function Xe(e,t){let n=``;for(let r of e)r.literal?n+=r.val:n+=t(r.val);return n}function D(...e){let t=e.reduce((e,t)=>e+t.source,``);return RegExp(`^${t}$`)}function O(...e){return t=>e.reduce(([e,n,r],i)=>{let[a,o,s]=i(t,r);return[{...e,...a},o||n,s]},[{},null,1]).slice(0,2)}function Ze(e,...t){if(e==null)return[null,null];for(let[n,r]of t){let t=n.exec(e);if(t)return r(t)}return[null,null]}function Qe(...e){return(t,n)=>{let r={},i;for(i=0;i<e.length;i++)r[e[i]]=T(t[n+i]);return[r,null,n+i]}}function $e(e,t,n){let r=e[t];return x(r)?n:T(r)}function et(e,t){return[{year:$e(e,t),month:$e(e,t+1,1),day:$e(e,t+2,1)},null,t+3]}function tt(e,t){return[{hours:$e(e,t,0),minutes:$e(e,t+1,0),seconds:$e(e,t+2,0),milliseconds:De(e[t+3])},null,t+4]}function nt(e,t){let n=!e[t]&&!e[t+1],r=Le(e[t+1],e[t+2]);return[{},n?null:U.instance(r),t+3]}function rt(e,t){return[{},e[t]?V.create(e[t]):null,t+1]}function it(e){let[t,n,r,i,a,o,s,c,l]=e,u=t[0]===`-`,d=c&&c[0]===`-`,f=(e,t=!1)=>e!==void 0&&(t||e&&u)?-e:e;return[{years:f(E(n)),months:f(E(r)),weeks:f(E(i)),days:f(E(a)),hours:f(E(o)),minutes:f(E(s)),seconds:f(E(c),c===`-0`),milliseconds:f(De(l),d)}]}function at(e,t,n,r,i,a,o){let s={year:t.length===2?Fe(T(t)):T(t),month:lr.indexOf(n)+1,day:T(r),hour:T(i),minute:T(a)};return o&&(s.second=T(o)),e&&(s.weekday=e.length>3?dr.indexOf(e)+1:fr.indexOf(e)+1),s}function ot(e){let[,t,n,r,i,a,o,s,c,l,u,d]=e,f=at(t,i,r,n,a,o,s),p;return p=c?Fr[c]:l?0:Le(u,d),[f,new U(p)]}function st(e){return e.replace(/\([^()]*\)|[\n\t]/g,` `).replace(/(\s\s+)/g,` `).trim()}function ct(e){let[,t,n,r,i,a,o,s]=e;return[at(t,i,r,n,a,o,s),U.utcInstance]}function lt(e){let[,t,n,r,i,a,o,s]=e;return[at(t,s,n,r,i,a,o),U.utcInstance]}function ut(e){return Ze(e,[Br,Wr],[Vr,Gr],[Hr,Kr],[Ur,qr])}function dt(e){return Ze(st(e),[Ir,ot])}function ft(e){return Ze(e,[Lr,ct],[Rr,ct],[zr,lt])}function pt(e){return Ze(e,[Pr,it])}function mt(e){return Ze(e,[Nr,Jr])}function ht(e){return Ze(e,[Yr,Wr],[Xr,Zr])}function k(e,t,n=!1){let r={values:n?t.values:{...e.values,...t.values||{}},loc:e.loc.clone(t.loc),conversionAccuracy:t.conversionAccuracy||e.conversionAccuracy,matrix:t.matrix||e.matrix};return new X(r)}function gt(e,t){let n=t.milliseconds??0;for(let r of ni.slice(1))t[r]&&(n+=t[r]*e[r].milliseconds);return n}function _t(e,t){let n=gt(e,t)<0?-1:1;Y.reduceRight((r,i)=>{if(x(t[i]))return r;if(r){let a=t[r]*n,o=e[i][r],s=Math.floor(a/o);t[i]+=s*n,t[r]-=s*o*n}return i},null),Y.reduce((n,r)=>{if(x(t[r]))return n;if(n){let i=t[n]%1;t[n]-=i,t[r]+=i*e[n][r]}return r},null)}function vt(e){let t={};for(let[n,r]of Object.entries(e))r!==0&&(t[n]=r);return t}function yt(e,t){return!e||!e.isValid?ri.invalid(`missing or invalid start`):!t||!t.isValid?ri.invalid(`missing or invalid end`):t<e?ri.invalid(`end before start`,`The end of an interval must be after its start, but you had start=${e.toISO()} and end=${t.toISO()}`):null}function bt(e,t){let n=e=>e.toUTC(0,{keepLocalTime:!0}).startOf(`day`).valueOf(),r=n(t)-n(e);return Math.floor(X.fromMillis(r).as(`days`))}function xt(e,t,n){let r=[[`years`,(e,t)=>t.year-e.year],[`quarters`,(e,t)=>t.quarter-e.quarter+(t.year-e.year)*4],[`months`,(e,t)=>t.month-e.month+(t.year-e.year)*12],[`weeks`,(e,t)=>{let n=bt(e,t);return(n-n%7)/7}],[`days`,bt]],i={},a=e,o,s;for(let[c,l]of r)n.indexOf(c)>=0&&(o=c,i[c]=l(e,t),s=a.plus(i),s>t?(i[c]--,e=a.plus(i),e>t&&(s=e,i[c]--,e=a.plus(i))):e=s);return[e,i,s,o]}function St(e,t,n,r){let[i,a,o,s]=xt(e,t,n),c=t-i,l=n.filter(e=>[`hours`,`minutes`,`seconds`,`milliseconds`].indexOf(e)>=0);l.length===0&&(o<t&&(o=i.plus({[s]:1})),o!==i&&(a[s]=(a[s]||0)+c/(o-i)));let u=X.fromObject(a,r);return l.length>0?X.fromMillis(c,r).shiftTo(...l).plus(u):u}function A(e,t=e=>e){return{regex:e,deser:([e])=>t(ne(e))}}function Ct(e){return e.replace(/\./g,`\\.?`).replace(oi,ai)}function wt(e){return e.replace(/\./g,``).replace(oi,` `).toLowerCase()}function j(e,t){return e===null?null:{regex:RegExp(e.map(Ct).join(`|`)),deser:([n])=>e.findIndex(e=>wt(n)===wt(e))+t}}function Tt(e,t){return{regex:e,deser:([,e,t])=>Le(e,t),groups:t}}function Et(e){return{regex:e,deser:([e])=>e}}function Dt(e){return e.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,`\\$&`)}function Ot(e,t){let n=v(t),r=v(t,`{2}`),i=v(t,`{3}`),a=v(t,`{4}`),o=v(t,`{6}`),s=v(t,`{1,2}`),c=v(t,`{1,3}`),l=v(t,`{1,6}`),u=v(t,`{1,9}`),d=v(t,`{2,4}`),f=v(t,`{4,6}`),p=e=>({regex:RegExp(Dt(e.val)),deser:([e])=>e,literal:!0}),m=(m=>{if(e.literal)return p(m);switch(m.val){case`G`:return j(t.eras(`short`),0);case`GG`:return j(t.eras(`long`),0);case`y`:return A(l);case`yy`:return A(d,Fe);case`yyyy`:return A(a);case`yyyyy`:return A(f);case`yyyyyy`:return A(o);case`M`:return A(s);case`MM`:return A(r);case`MMM`:return j(t.months(`short`,!0),1);case`MMMM`:return j(t.months(`long`,!0),1);case`L`:return A(s);case`LL`:return A(r);case`LLL`:return j(t.months(`short`,!1),1);case`LLLL`:return j(t.months(`long`,!1),1);case`d`:return A(s);case`dd`:return A(r);case`o`:return A(c);case`ooo`:return A(i);case`HH`:return A(r);case`H`:return A(s);case`hh`:return A(r);case`h`:return A(s);case`mm`:return A(r);case`m`:return A(s);case`q`:return A(s);case`qq`:return A(r);case`s`:return A(s);case`ss`:return A(r);case`S`:return A(c);case`SSS`:return A(i);case`u`:return Et(u);case`uu`:return Et(s);case`uuu`:return A(n);case`a`:return j(t.meridiems(),0);case`kkkk`:return A(a);case`kk`:return A(d,Fe);case`W`:return A(s);case`WW`:return A(r);case`E`:case`c`:return A(n);case`EEE`:return j(t.weekdays(`short`,!1),1);case`EEEE`:return j(t.weekdays(`long`,!1),1);case`ccc`:return j(t.weekdays(`short`,!0),1);case`cccc`:return j(t.weekdays(`long`,!0),1);case`Z`:case`ZZ`:return Tt(RegExp(`([+-]${s.source})(?::(${r.source}))?`),2);case`ZZZ`:return Tt(RegExp(`([+-]${s.source})(${r.source})?`),2);case`z`:return Et(/[a-z_+-/]{1,256}?/i);case` `:return Et(/[^\S\n\r]/);default:return p(m)}})(e)||{invalidReason:ii};return m.token=e,m}function kt(e,t,n){let{type:r,value:i}=e;if(r===`literal`){let e=/^\s+$/.test(i);return{literal:!e,val:e?` `:i}}let a=t[r],o=r;r===`hour`&&(o=t.hour12==null?t.hourCycle==null?n.hour12?`hour12`:`hour24`:t.hourCycle===`h11`||t.hourCycle===`h12`?`hour12`:`hour24`:t.hour12?`hour12`:`hour24`);let s=si[o];if(typeof s==`object`&&(s=s[a]),s)return{literal:!1,val:s}}function At(e){return[`^${e.map(e=>e.regex).reduce((e,t)=>`${e}(${t.source})`,``)}$`,e]}function jt(e,t,n){let r=e.match(t);if(r){let e={},t=1;for(let i in n)if(we(n,i)){let a=n[i],o=a.groups?a.groups+1:1;!a.literal&&a.token&&(e[a.token.val[0]]=a.deser(r.slice(t,t+o))),t+=o}return[r,e]}else return[r,{}]}function Mt(e){let t=e=>{switch(e){case`S`:return`millisecond`;case`s`:return`second`;case`m`:return`minute`;case`h`:case`H`:return`hour`;case`d`:return`day`;case`o`:return`ordinal`;case`L`:case`M`:return`month`;case`y`:return`year`;case`E`:case`c`:return`weekday`;case`W`:return`weekNumber`;case`k`:return`weekYear`;case`q`:return`quarter`;default:return null}},n=null,r;return x(e.z)||(n=V.create(e.z)),x(e.Z)||(n||=new U(e.Z),r=e.Z),x(e.q)||(e.M=(e.q-1)*3+1),x(e.h)||(e.h<12&&e.a===1?e.h+=12:e.h===12&&e.a===0&&(e.h=0)),e.G===0&&e.y&&(e.y=-e.y),x(e.u)||(e.S=De(e.u)),[Object.keys(e).reduce((n,r)=>{let i=t(r);return i&&(n[i]=e[r]),n},{}),n,r]}function Nt(){return ci||=$.fromMillis(1555555555555),ci}function Pt(e,t){if(e.literal)return e;let n=Rt(K.macroTokenToFormatOpts(e.val),t);return n==null||n.includes(void 0)?e:n}function Ft(e,t){return Array.prototype.concat(...e.map(e=>Pt(e,t)))}function It(e,t,n){return new li(e,n).explainFromTokens(t)}function Lt(e,t,n){let{result:r,zone:i,specificOffset:a,invalidReason:o}=It(e,t,n);return[r,i,a,o]}function Rt(e,t){if(!e)return null;let n=K.create(t,e).dtFormatter(Nt()),r=n.formatToParts(),i=n.resolvedOptions();return r.map(t=>kt(t,e,i))}function zt(e){return new G(`unsupported zone`,`the zone "${e.name}" is not supported`)}function Bt(e){return e.weekData===null&&(e.weekData=se(e.c)),e.weekData}function Vt(e){return e.localWeekData===null&&(e.localWeekData=se(e.c,e.loc.getMinDaysInFirstWeek(),e.loc.getStartOfWeek())),e.localWeekData}function M(e,t){let n={ts:e.ts,zone:e.zone,c:e.c,o:e.o,loc:e.loc,invalid:e.invalid};return new $({...n,...t,old:n})}function Ht(e,t,n){let r=e-t*60*1e3,i=n.offset(r);if(t===i)return[r,t];r-=(i-t)*60*1e3;let a=n.offset(r);return i===a?[r,i]:[e-Math.min(i,a)*60*1e3,Math.max(i,a)]}function Ut(e,t){e+=t*60*1e3;let n=new Date(e);return{year:n.getUTCFullYear(),month:n.getUTCMonth()+1,day:n.getUTCDate(),hour:n.getUTCHours(),minute:n.getUTCMinutes(),second:n.getUTCSeconds(),millisecond:n.getUTCMilliseconds()}}function Wt(e,t,n){return Ht(Me(e),t,n)}function Gt(e,t){let n=e.o,r=e.c.year+Math.trunc(t.years),i=e.c.month+Math.trunc(t.months)+Math.trunc(t.quarters)*3,a={...e.c,year:r,month:i,day:Math.min(e.c.day,je(r,i))+Math.trunc(t.days)+Math.trunc(t.weeks)*7},o=X.fromObject({years:t.years-Math.trunc(t.years),quarters:t.quarters-Math.trunc(t.quarters),months:t.months-Math.trunc(t.months),weeks:t.weeks-Math.trunc(t.weeks),days:t.days-Math.trunc(t.days),hours:t.hours,minutes:t.minutes,seconds:t.seconds,milliseconds:t.milliseconds}).as(`milliseconds`),[s,c]=Ht(Me(a),n,e.zone);return o!==0&&(s+=o,c=e.zone.offset(s)),{ts:s,o:c}}function Kt(e,t,n,r,i,a){let{setZone:o,zone:s}=n;if(e&&Object.keys(e).length!==0||t){let r=t||s,i=$.fromObject(e,{...n,zone:r,specificOffset:a});return o?i:i.setZone(s)}else return $.invalid(new G(`unparsable`,`the input "${i}" can't be parsed as ${r}`))}function qt(e,t,n=!0){return e.isValid?K.create(H.create(`en-US`),{allowZ:n,forceSimple:!0}).formatDateTimeFromString(e,t):null}function Jt(e,t,n){let r=e.c.year>9999||e.c.year<0,i=``;if(r&&e.c.year>=0&&(i+=`+`),i+=w(e.c.year,r?6:4),n===`year`)return i;if(t){if(i+=`-`,i+=w(e.c.month),n===`month`)return i;i+=`-`}else if(i+=w(e.c.month),n===`month`)return i;return i+=w(e.c.day),i}function Yt(e,t,n,r,i,a,o){let s=!n||e.c.millisecond!==0||e.c.second!==0,c=``;switch(o){case`day`:case`month`:case`year`:break;default:if(c+=w(e.c.hour),o===`hour`)break;if(t){if(c+=`:`,c+=w(e.c.minute),o===`minute`)break;s&&(c+=`:`,c+=w(e.c.second))}else{if(c+=w(e.c.minute),o===`minute`)break;s&&(c+=w(e.c.second))}if(o===`second`)break;s&&(!r||e.c.millisecond!==0)&&(c+=`.`,c+=w(e.c.millisecond,3))}return i&&(e.isOffsetFixed&&e.offset===0&&!a?c+=`Z`:e.o<0?(c+=`-`,c+=w(Math.trunc(-e.o/60)),c+=`:`,c+=w(Math.trunc(-e.o%60))):(c+=`+`,c+=w(Math.trunc(e.o/60)),c+=`:`,c+=w(Math.trunc(e.o%60)))),a&&(c+=`[`+e.zone.ianaName+`]`),c}function Xt(e){let t={year:`year`,years:`year`,month:`month`,months:`month`,day:`day`,days:`day`,hour:`hour`,hours:`hour`,minute:`minute`,minutes:`minute`,quarter:`quarter`,quarters:`quarter`,second:`second`,seconds:`second`,millisecond:`millisecond`,milliseconds:`millisecond`,weekday:`weekday`,weekdays:`weekday`,weeknumber:`weekNumber`,weeksnumber:`weekNumber`,weeknumbers:`weekNumber`,weekyear:`weekYear`,weekyears:`weekYear`,ordinal:`ordinal`}[e.toLowerCase()];if(!t)throw new sn(e);return t}function Zt(e){switch(e.toLowerCase()){case`localweekday`:case`localweekdays`:return`localWeekday`;case`localweeknumber`:case`localweeknumbers`:return`localWeekNumber`;case`localweekyear`:case`localweekyears`:return`localWeekYear`;default:return Xt(e)}}function Qt(e){if(vi===void 0&&(vi=W.now()),e.type!==`iana`)return e.offset(vi);let t=e.name,n=yi.get(t);return n===void 0&&(n=e.offset(vi),yi.set(t,n)),n}function $t(e,t){let n=_(t.zone,W.defaultZone);if(!n.isValid)return $.invalid(zt(n));let r=H.fromObject(t),i,a;if(x(e.year))i=W.now();else{for(let t of hi)x(e[t])&&(e[t]=fi[t]);let t=me(e)||he(e);if(t)return $.invalid(t);let r=Qt(n);[i,a]=Wt(e,r,n)}return new $({ts:i,zone:n,loc:r,o:a})}function en(e,t,n){let r=x(n.round)?!0:n.round,i=x(n.rounding)?`trunc`:n.rounding,a=(e,a)=>(e=Oe(e,r||n.calendary?0:2,n.calendary?`round`:i),t.loc.clone(n).relFormatter(n).format(e,a)),o=r=>n.calendary?t.hasSame(e,r)?0:t.startOf(r).diff(e.startOf(r),r).get(r):t.diff(e,r).get(r);if(n.unit)return a(o(n.unit),n.unit);for(let e of n.units){let t=o(e);if(Math.abs(t)>=1)return a(t,e)}return a(e>t?-0:0,n.units[n.units.length-1])}function tn(e){let t={},n;return e.length>0&&typeof e[e.length-1]==`object`?(t=e[e.length-1],n=Array.from(e).slice(0,e.length-1)):n=Array.from(e),[t,n]}function nn(e){if($.isDateTime(e))return e;if(e&&e.valueOf&&S(e.valueOf()))return $.fromJSDate(e);if(e&&typeof e==`object`)return $.fromObject(e);throw new F(`Unknown datetime argument: ${e}, of type ${typeof e}`)}var N,rn,an,on,P,sn,F,I,L,R,z,cn,ln,un,dn,fn,pn,mn,hn,gn,_n,vn,yn,bn,xn,Sn,Cn,wn,Tn,En,Dn,On,kn,B,An,jn,Mn,Nn,Pn,V,Fn,In,Ln,Rn,zn,Bn,Vn,Hn,Un,Wn,Gn,H,Kn,U,qn,Jn,Yn,Xn,Zn,Qn,$n,er,tr,nr,rr,ir,ar,W,G,or,sr,cr,lr,ur,dr,fr,pr,mr,hr,gr,_r,vr,K,yr,br,xr,Sr,Cr,wr,Tr,Er,Dr,Or,kr,Ar,jr,Mr,Nr,Pr,Fr,Ir,Lr,Rr,zr,Br,Vr,Hr,Ur,Wr,Gr,Kr,qr,Jr,Yr,Xr,Zr,Qr,$r,ei,q,J,ti,Y,ni,X,Z,ri,Q,ii,ai,oi,si,ci,li,ui,di,fi,pi,mi,hi,gi,_i,vi,yi,$,bi,xi=t((()=>{N=class extends Error{},rn=class extends N{constructor(e){super(`Invalid DateTime: ${e.toMessage()}`)}},an=class extends N{constructor(e){super(`Invalid Interval: ${e.toMessage()}`)}},on=class extends N{constructor(e){super(`Invalid Duration: ${e.toMessage()}`)}},P=class extends N{},sn=class extends N{constructor(e){super(`Invalid unit ${e}`)}},F=class extends N{},I=class extends N{constructor(){super(`Zone is an abstract class`)}},L=`numeric`,R=`short`,z=`long`,cn={year:L,month:L,day:L},ln={year:L,month:R,day:L},un={year:L,month:R,day:L,weekday:R},dn={year:L,month:z,day:L},fn={year:L,month:z,day:L,weekday:z},pn={hour:L,minute:L},mn={hour:L,minute:L,second:L},hn={hour:L,minute:L,second:L,timeZoneName:R},gn={hour:L,minute:L,second:L,timeZoneName:z},_n={hour:L,minute:L,hourCycle:`h23`},vn={hour:L,minute:L,second:L,hourCycle:`h23`},yn={hour:L,minute:L,second:L,hourCycle:`h23`,timeZoneName:R},bn={hour:L,minute:L,second:L,hourCycle:`h23`,timeZoneName:z},xn={year:L,month:L,day:L,hour:L,minute:L},Sn={year:L,month:L,day:L,hour:L,minute:L,second:L},Cn={year:L,month:R,day:L,hour:L,minute:L},wn={year:L,month:R,day:L,hour:L,minute:L,second:L},Tn={year:L,month:R,day:L,weekday:R,hour:L,minute:L},En={year:L,month:z,day:L,hour:L,minute:L,timeZoneName:R},Dn={year:L,month:z,day:L,hour:L,minute:L,second:L,timeZoneName:R},On={year:L,month:z,day:L,weekday:z,hour:L,minute:L,timeZoneName:z},kn={year:L,month:z,day:L,weekday:z,hour:L,minute:L,second:L,timeZoneName:z},B=class{get type(){throw new I}get name(){throw new I}get ianaName(){return this.name}get isUniversal(){throw new I}offsetName(e,t){throw new I}formatOffset(e,t){throw new I}offset(e){throw new I}equals(e){throw new I}get isValid(){throw new I}},An=null,jn=class e extends B{static get instance(){return An===null&&(An=new e),An}get type(){return`system`}get name(){return new Intl.DateTimeFormat().resolvedOptions().timeZone}get isUniversal(){return!1}offsetName(e,{format:t,locale:n}){return Ie(e,t,n)}formatOffset(e,t){return Be(this.offset(e),t)}offset(e){return-new Date(e).getTimezoneOffset()}equals(e){return e.type===`system`}get isValid(){return!0}},Mn=new Map,Nn={year:0,month:1,day:2,era:3,hour:4,minute:5,second:6},Pn=new Map,V=class e extends B{static create(t){let n=Pn.get(t);return n===void 0&&Pn.set(t,n=new e(t)),n}static resetCache(){Pn.clear(),Mn.clear()}static isValidSpecifier(e){return this.isValidZone(e)}static isValidZone(e){if(!e)return!1;try{return new Intl.DateTimeFormat(`en-US`,{timeZone:e}).format(),!0}catch{return!1}}constructor(t){super(),this.zoneName=t,this.valid=e.isValidZone(t)}get type(){return`iana`}get name(){return this.zoneName}get isUniversal(){return!1}offsetName(e,{format:t,locale:n}){return Ie(e,t,n,this.name)}formatOffset(e,t){return Be(this.offset(e),t)}offset(e){if(!this.valid)return NaN;let t=new Date(e);if(isNaN(t))return NaN;let n=r(this.name),[o,s,c,l,u,d,f]=n.formatToParts?a(n,t):i(n,t);l===`BC`&&(o=-Math.abs(o)+1);let p=Me({year:o,month:s,day:c,hour:u===24?0:u,minute:d,second:f,millisecond:0}),m=+t,h=m%1e3;return m-=h>=0?h:1e3+h,(p-m)/(60*1e3)}equals(e){return e.type===`iana`&&e.name===this.name}get isValid(){return this.valid}},Fn={},In=new Map,Ln=new Map,Rn=new Map,zn=null,Bn=new Map,Vn=new Map,Hn=class{constructor(e,t,n){this.padTo=n.padTo||0,this.floor=n.floor||!1;let{padTo:r,floor:i,...a}=n;if(!t||Object.keys(a).length>0){let t={useGrouping:!1,...n};n.padTo>0&&(t.minimumIntegerDigits=n.padTo),this.inf=c(e,t)}}format(e){if(this.inf){let t=this.floor?Math.floor(e):e;return this.inf.format(t)}else return w(this.floor?Math.floor(e):Oe(e,3),this.padTo)}},Un=class{constructor(e,t,n){this.opts=n,this.originalZone=void 0;let r;if(this.opts.timeZone)this.dt=e;else if(e.zone.type===`fixed`){let t=-1*(e.offset/60),n=t>=0?`Etc/GMT+${t}`:`Etc/GMT${t}`;e.offset!==0&&V.create(n).valid?(r=n,this.dt=e):(r=`UTC`,this.dt=e.offset===0?e:e.setZone(`UTC`).plus({minutes:e.offset}),this.originalZone=e.zone)}else e.zone.type===`system`?this.dt=e:e.zone.type===`iana`?(this.dt=e,r=e.zone.name):(r=`UTC`,this.dt=e.setZone(`UTC`).plus({minutes:e.offset}),this.originalZone=e.zone);let i={...this.opts};i.timeZone=i.timeZone||r,this.dtf=s(t,i)}format(){return this.originalZone?this.formatToParts().map(({value:e})=>e).join(``):this.dtf.format(this.dt.toJSDate())}formatToParts(){let e=this.dtf.formatToParts(this.dt.toJSDate());return this.originalZone?e.map(e=>{if(e.type===`timeZoneName`){let t=this.originalZone.offsetName(this.dt.ts,{locale:this.dt.locale,format:this.opts.timeZoneName});return{...e,value:t}}else return e}):e}resolvedOptions(){return this.dtf.resolvedOptions()}},Wn=class{constructor(e,t,n){this.opts={style:`long`,...n},!t&&ye()&&(this.rtf=l(e,n))}format(e,t){return this.rtf?this.rtf.format(e,t):Ye(t,e,this.opts.numeric,this.opts.style!==`long`)}formatToParts(e,t){return this.rtf?this.rtf.formatToParts(e,t):[]}},Gn={firstDay:1,minimalDays:4,weekend:[6,7]},H=class e{static fromOpts(t){return e.create(t.locale,t.numberingSystem,t.outputCalendar,t.weekSettings,t.defaultToEN)}static create(t,n,r,i,a=!1){let o=t||W.defaultLocale,s=o||(a?`en-US`:u()),c=n||W.defaultNumberingSystem,l=r||W.defaultOutputCalendar,d=Te(i)||W.defaultWeekSettings;return new e(s,c,l,d,o)}static resetCache(){zn=null,In.clear(),Ln.clear(),Rn.clear(),Bn.clear(),Vn.clear()}static fromObject({locale:t,numberingSystem:n,outputCalendar:r,weekSettings:i}={}){return e.create(t,n,r,i)}constructor(e,t,n,r,i){let[a,o,s]=p(e);this.locale=a,this.numberingSystem=t||o||null,this.outputCalendar=n||s||null,this.weekSettings=r,this.intl=m(this.locale,this.numberingSystem,this.outputCalendar),this.weekdaysCache={format:{},standalone:{}},this.monthsCache={format:{},standalone:{}},this.meridiemCache=null,this.eraCache={},this.specifiedLocale=i,this.fastNumbersCached=null}get fastNumbers(){return this.fastNumbersCached??=te(this),this.fastNumbersCached}listingMode(){let e=this.isEnglish(),t=(this.numberingSystem===null||this.numberingSystem===`latn`)&&(this.outputCalendar===null||this.outputCalendar===`gregory`);return e&&t?`en`:`intl`}clone(t){return!t||Object.getOwnPropertyNames(t).length===0?this:e.create(t.locale||this.specifiedLocale,t.numberingSystem||this.numberingSystem,t.outputCalendar||this.outputCalendar,Te(t.weekSettings)||this.weekSettings,t.defaultToEN||!1)}redefaultToEN(e={}){return this.clone({...e,defaultToEN:!0})}redefaultToSystem(e={}){return this.clone({...e,defaultToEN:!1})}months(e,t=!1){return g(this,e,He,()=>{let n=this.intl===`ja`||this.intl.startsWith(`ja-`);t&=!n;let r=t?{month:e,day:`numeric`}:{month:e},i=t?`format`:`standalone`;if(!this.monthsCache[i][e]){let t=n?e=>this.dtFormatter(e,r).format():e=>this.extract(e,r,`month`);this.monthsCache[i][e]=h(t)}return this.monthsCache[i][e]})}weekdays(e,t=!1){return g(this,e,Ue,()=>{let n=t?{weekday:e,year:`numeric`,month:`long`,day:`numeric`}:{weekday:e},r=t?`format`:`standalone`;return this.weekdaysCache[r][e]||(this.weekdaysCache[r][e]=ee(e=>this.extract(e,n,`weekday`))),this.weekdaysCache[r][e]})}meridiems(){return g(this,void 0,()=>mr,()=>{if(!this.meridiemCache){let e={hour:`numeric`,hourCycle:`h12`};this.meridiemCache=[$.utc(2016,11,13,9),$.utc(2016,11,13,19)].map(t=>this.extract(t,e,`dayperiod`))}return this.meridiemCache})}eras(e){return g(this,e,We,()=>{let t={era:e};return this.eraCache[e]||(this.eraCache[e]=[$.utc(-40,1,1),$.utc(2017,1,1)].map(e=>this.extract(e,t,`era`))),this.eraCache[e]})}extract(e,t,n){let r=this.dtFormatter(e,t).formatToParts().find(e=>e.type.toLowerCase()===n);return r?r.value:null}numberFormatter(e={}){return new Hn(this.intl,e.forceSimple||this.fastNumbers,e)}dtFormatter(e,t={}){return new Un(e,this.intl,t)}relFormatter(e={}){return new Wn(this.intl,this.isEnglish(),e)}listFormatter(e={}){return o(this.intl,e)}isEnglish(){return this.locale===`en`||this.locale.toLowerCase()===`en-us`||d(this.intl).locale.startsWith(`en-us`)}getWeekSettings(){return this.weekSettings?this.weekSettings:be()?f(this.locale):Gn}getStartOfWeek(){return this.getWeekSettings().firstDay}getMinDaysInFirstWeek(){return this.getWeekSettings().minimalDays}getWeekendDays(){return this.getWeekSettings().weekend}equals(e){return this.locale===e.locale&&this.numberingSystem===e.numberingSystem&&this.outputCalendar===e.outputCalendar}toString(){return`Locale(${this.locale}, ${this.numberingSystem}, ${this.outputCalendar})`}},Kn=null,U=class e extends B{static get utcInstance(){return Kn===null&&(Kn=new e(0)),Kn}static instance(t){return t===0?e.utcInstance:new e(t)}static parseSpecifier(t){if(t){let n=t.match(/^utc(?:([+-]\d{1,2})(?::(\d{2}))?)?$/i);if(n)return new e(Le(n[1],n[2]))}return null}constructor(e){super(),this.fixed=e}get type(){return`fixed`}get name(){return this.fixed===0?`UTC`:`UTC${Be(this.fixed,`narrow`)}`}get ianaName(){return this.fixed===0?`Etc/UTC`:`Etc/GMT${Be(-this.fixed,`narrow`)}`}offsetName(){return this.name}formatOffset(e,t){return Be(this.fixed,t)}get isUniversal(){return!0}offset(){return this.fixed}equals(e){return e.type===`fixed`&&e.fixed===this.fixed}get isValid(){return!0}},qn=class extends B{constructor(e){super(),this.zoneName=e}get type(){return`invalid`}get name(){return this.zoneName}get isUniversal(){return!1}offsetName(){return null}formatOffset(){return``}offset(){return NaN}equals(){return!1}get isValid(){return!1}},Jn={arab:`[٠-٩]`,arabext:`[۰-۹]`,bali:`[᭐-᭙]`,beng:`[০-৯]`,deva:`[०-९]`,fullwide:`[0-9]`,gujr:`[૦-૯]`,hanidec:`[〇|一|二|三|四|五|六|七|八|九]`,khmr:`[០-៩]`,knda:`[೦-೯]`,laoo:`[໐-໙]`,limb:`[᥆-᥏]`,mlym:`[൦-൯]`,mong:`[᠐-᠙]`,mymr:`[၀-၉]`,orya:`[୦-୯]`,tamldec:`[௦-௯]`,telu:`[౦-౯]`,thai:`[๐-๙]`,tibt:`[༠-༩]`,latn:`\\d`},Yn={arab:[1632,1641],arabext:[1776,1785],bali:[6992,7001],beng:[2534,2543],deva:[2406,2415],fullwide:[65296,65303],gujr:[2790,2799],khmr:[6112,6121],knda:[3302,3311],laoo:[3792,3801],limb:[6470,6479],mlym:[3430,3439],mong:[6160,6169],mymr:[4160,4169],orya:[2918,2927],tamldec:[3046,3055],telu:[3174,3183],thai:[3664,3673],tibt:[3872,3881]},Xn=Jn.hanidec.replace(/[\[|\]]/g,``).split(``),Zn=new Map,Qn=()=>Date.now(),$n=`system`,er=null,tr=null,nr=null,rr=60,ar=null,W=class{static get now(){return Qn}static set now(e){Qn=e}static set defaultZone(e){$n=e}static get defaultZone(){return _($n,jn.instance)}static get defaultLocale(){return er}static set defaultLocale(e){er=e}static get defaultNumberingSystem(){return tr}static set defaultNumberingSystem(e){tr=e}static get defaultOutputCalendar(){return nr}static set defaultOutputCalendar(e){nr=e}static get defaultWeekSettings(){return ar}static set defaultWeekSettings(e){ar=Te(e)}static get twoDigitCutoffYear(){return rr}static set twoDigitCutoffYear(e){rr=e%100}static get throwOnInvalid(){return ir}static set throwOnInvalid(e){ir=e}static resetCaches(){H.resetCache(),V.resetCache(),$.resetCache(),re()}},G=class{constructor(e,t){this.reason=e,this.explanation=t}toMessage(){return this.explanation?`${this.reason}: ${this.explanation}`:this.reason}},or=[0,31,59,90,120,151,181,212,243,273,304,334],sr=[0,31,60,91,121,152,182,213,244,274,305,335],cr=[`January`,`February`,`March`,`April`,`May`,`June`,`July`,`August`,`September`,`October`,`November`,`December`],lr=[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`],ur=[`J`,`F`,`M`,`A`,`M`,`J`,`J`,`A`,`S`,`O`,`N`,`D`],dr=[`Monday`,`Tuesday`,`Wednesday`,`Thursday`,`Friday`,`Saturday`,`Sunday`],fr=[`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`,`Sun`],pr=[`M`,`T`,`W`,`T`,`F`,`S`,`S`],mr=[`AM`,`PM`],hr=[`Before Christ`,`Anno Domini`],gr=[`BC`,`AD`],_r=[`B`,`A`],vr={D:cn,DD:ln,DDD:dn,DDDD:fn,t:pn,tt:mn,ttt:hn,tttt:gn,T:_n,TT:vn,TTT:yn,TTTT:bn,f:xn,ff:Cn,fff:En,ffff:On,F:Sn,FF:wn,FFF:Dn,FFFF:kn},K=class e{static create(t,n={}){return new e(t,n)}static parseFormat(e){let t=null,n=``,r=!1,i=[];for(let a=0;a<e.length;a++){let o=e.charAt(a);o===`'`?((n.length>0||r)&&i.push({literal:r||/^\s+$/.test(n),val:n===``?`'`:n}),t=null,n=``,r=!r):r||o===t?n+=o:(n.length>0&&i.push({literal:/^\s+$/.test(n),val:n}),n=o,t=o)}return n.length>0&&i.push({literal:r||/^\s+$/.test(n),val:n}),i}static macroTokenToFormatOpts(e){return vr[e]}constructor(e,t){this.opts=t,this.loc=e,this.systemLoc=null}formatWithSystemDefault(e,t){return this.systemLoc===null&&(this.systemLoc=this.loc.redefaultToSystem()),this.systemLoc.dtFormatter(e,{...this.opts,...t}).format()}dtFormatter(e,t={}){return this.loc.dtFormatter(e,{...this.opts,...t})}formatDateTime(e,t){return this.dtFormatter(e,t).format()}formatDateTimeParts(e,t){return this.dtFormatter(e,t).formatToParts()}formatInterval(e,t){return this.dtFormatter(e.start,t).dtf.formatRange(e.start.toJSDate(),e.end.toJSDate())}resolvedOptions(e,t){return this.dtFormatter(e,t).resolvedOptions()}num(e,t=0,n=void 0){if(this.opts.forceSimple)return w(e,t);let r={...this.opts};return t>0&&(r.padTo=t),n&&(r.signDisplay=n),this.loc.numberFormatter(r).format(e)}formatDateTimeFromString(t,n){let r=this.loc.listingMode()===`en`,i=this.loc.outputCalendar&&this.loc.outputCalendar!==`gregory`,a=(e,n)=>this.loc.extract(t,e,n),o=e=>t.isOffsetFixed&&t.offset===0&&e.allowZ?`Z`:t.isValid?t.zone.formatOffset(t.ts,e.format):``,s=()=>r?Ge(t):a({hour:`numeric`,hourCycle:`h12`},`dayperiod`),c=(e,n)=>r?qe(t,e):a(n?{month:e}:{month:e,day:`numeric`},`month`),l=(e,n)=>r?Ke(t,e):a(n?{weekday:e}:{weekday:e,month:`long`,day:`numeric`},`weekday`),u=n=>{let r=e.macroTokenToFormatOpts(n);return r?this.formatWithSystemDefault(t,r):n},d=e=>r?Je(t,e):a({era:e},`era`);return Xe(e.parseFormat(n),e=>{switch(e){case`S`:return this.num(t.millisecond);case`u`:case`SSS`:return this.num(t.millisecond,3);case`s`:return this.num(t.second);case`ss`:return this.num(t.second,2);case`uu`:return this.num(Math.floor(t.millisecond/10),2);case`uuu`:return this.num(Math.floor(t.millisecond/100));case`m`:return this.num(t.minute);case`mm`:return this.num(t.minute,2);case`h`:return this.num(t.hour%12==0?12:t.hour%12);case`hh`:return this.num(t.hour%12==0?12:t.hour%12,2);case`H`:return this.num(t.hour);case`HH`:return this.num(t.hour,2);case`Z`:return o({format:`narrow`,allowZ:this.opts.allowZ});case`ZZ`:return o({format:`short`,allowZ:this.opts.allowZ});case`ZZZ`:return o({format:`techie`,allowZ:this.opts.allowZ});case`ZZZZ`:return t.zone.offsetName(t.ts,{format:`short`,locale:this.loc.locale});case`ZZZZZ`:return t.zone.offsetName(t.ts,{format:`long`,locale:this.loc.locale});case`z`:return t.zoneName;case`a`:return s();case`d`:return i?a({day:`numeric`},`day`):this.num(t.day);case`dd`:return i?a({day:`2-digit`},`day`):this.num(t.day,2);case`c`:return this.num(t.weekday);case`ccc`:return l(`short`,!0);case`cccc`:return l(`long`,!0);case`ccccc`:return l(`narrow`,!0);case`E`:return this.num(t.weekday);case`EEE`:return l(`short`,!1);case`EEEE`:return l(`long`,!1);case`EEEEE`:return l(`narrow`,!1);case`L`:return i?a({month:`numeric`,day:`numeric`},`month`):this.num(t.month);case`LL`:return i?a({month:`2-digit`,day:`numeric`},`month`):this.num(t.month,2);case`LLL`:return c(`short`,!0);case`LLLL`:return c(`long`,!0);case`LLLLL`:return c(`narrow`,!0);case`M`:return i?a({month:`numeric`},`month`):this.num(t.month);case`MM`:return i?a({month:`2-digit`},`month`):this.num(t.month,2);case`MMM`:return c(`short`,!1);case`MMMM`:return c(`long`,!1);case`MMMMM`:return c(`narrow`,!1);case`y`:return i?a({year:`numeric`},`year`):this.num(t.year);case`yy`:return i?a({year:`2-digit`},`year`):this.num(t.year.toString().slice(-2),2);case`yyyy`:return i?a({year:`numeric`},`year`):this.num(t.year,4);case`yyyyyy`:return i?a({year:`numeric`},`year`):this.num(t.year,6);case`G`:return d(`short`);case`GG`:return d(`long`);case`GGGGG`:return d(`narrow`);case`kk`:return this.num(t.weekYear.toString().slice(-2),2);case`kkkk`:return this.num(t.weekYear,4);case`W`:return this.num(t.weekNumber);case`WW`:return this.num(t.weekNumber,2);case`n`:return this.num(t.localWeekNumber);case`nn`:return this.num(t.localWeekNumber,2);case`ii`:return this.num(t.localWeekYear.toString().slice(-2),2);case`iiii`:return this.num(t.localWeekYear,4);case`o`:return this.num(t.ordinal);case`ooo`:return this.num(t.ordinal,3);case`q`:return this.num(t.quarter);case`qq`:return this.num(t.quarter,2);case`X`:return this.num(Math.floor(t.ts/1e3));case`x`:return this.num(t.ts);default:return u(e)}})}formatDurationFromString(t,n){let r=this.opts.signMode===`negativeLargestOnly`?-1:1,i=e=>{switch(e[0]){case`S`:return`milliseconds`;case`s`:return`seconds`;case`m`:return`minutes`;case`h`:return`hours`;case`d`:return`days`;case`w`:return`weeks`;case`M`:return`months`;case`y`:return`years`;default:return null}},a=(e,t)=>n=>{let a=i(n);if(a){let i=t.isNegativeDuration&&a!==t.largestUnit?r:1,o;return o=this.opts.signMode===`negativeLargestOnly`&&a!==t.largestUnit?`never`:this.opts.signMode===`all`?`always`:`auto`,this.num(e.get(a)*i,n.length,o)}else return n},o=e.parseFormat(n),s=o.reduce((e,{literal:t,val:n})=>t?e:e.concat(n),[]),c=t.shiftTo(...s.map(i).filter(e=>e));return Xe(o,a(c,{isNegativeDuration:c<0,largestUnit:Object.keys(c.values)[0]}))}},yr=/[A-Za-z_+-]{1,256}(?::?\/[A-Za-z0-9_+-]{1,256}(?:\/[A-Za-z0-9_+-]{1,256})?)?/,br=/(?:([Zz])|([+-]\d\d)(?::?(\d\d))?)/,xr=`(?:${br.source}?(?:\\[(${yr.source})\\])?)?`,Sr=/(\d\d)(?::?(\d\d)(?::?(\d\d)(?:[.,](\d{1,30}))?)?)?/,Cr=RegExp(`${Sr.source}${xr}`),wr=RegExp(`(?:[Tt]${Cr.source})?`),Tr=/([+-]\d{6}|\d{4})(?:-?(\d\d)(?:-?(\d\d))?)?/,Er=/(\d{4})-?W(\d\d)(?:-?(\d))?/,Dr=/(\d{4})-?(\d{3})/,Or=Qe(`weekYear`,`weekNumber`,`weekDay`),kr=Qe(`year`,`ordinal`),Ar=/(\d{4})-(\d\d)-(\d\d)/,jr=RegExp(`${Sr.source} ?(?:${br.source}|(${yr.source}))?`),Mr=RegExp(`(?: ${jr.source})?`),Nr=RegExp(`^T?${Sr.source}$`),Pr=/^-?P(?:(?:(-?\d{1,20}(?:\.\d{1,20})?)Y)?(?:(-?\d{1,20}(?:\.\d{1,20})?)M)?(?:(-?\d{1,20}(?:\.\d{1,20})?)W)?(?:(-?\d{1,20}(?:\.\d{1,20})?)D)?(?:T(?:(-?\d{1,20}(?:\.\d{1,20})?)H)?(?:(-?\d{1,20}(?:\.\d{1,20})?)M)?(?:(-?\d{1,20})(?:[.,](-?\d{1,20}))?S)?)?)$/,Fr={GMT:0,EDT:-240,EST:-300,CDT:-300,CST:-360,MDT:-360,MST:-420,PDT:-420,PST:-480},Ir=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|(?:([+-]\d\d)(\d\d)))$/,Lr=/^(Mon|Tue|Wed|Thu|Fri|Sat|Sun), (\d\d) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) (\d{4}) (\d\d):(\d\d):(\d\d) GMT$/,Rr=/^(Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday), (\d\d)-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)-(\d\d) (\d\d):(\d\d):(\d\d) GMT$/,zr=/^(Mon|Tue|Wed|Thu|Fri|Sat|Sun) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) ( \d|\d\d) (\d\d):(\d\d):(\d\d) (\d{4})$/,Br=D(Tr,wr),Vr=D(Er,wr),Hr=D(Dr,wr),Ur=D(Cr),Wr=O(et,tt,nt,rt),Gr=O(Or,tt,nt,rt),Kr=O(kr,tt,nt,rt),qr=O(tt,nt,rt),Jr=O(tt),Yr=D(Ar,Mr),Xr=D(jr),Zr=O(tt,nt,rt),Qr=`Invalid Duration`,$r={weeks:{days:7,hours:168,minutes:10080,seconds:10080*60,milliseconds:10080*60*1e3},days:{hours:24,minutes:1440,seconds:1440*60,milliseconds:1440*60*1e3},hours:{minutes:60,seconds:3600,milliseconds:3600*1e3},minutes:{seconds:60,milliseconds:60*1e3},seconds:{milliseconds:1e3}},ei={years:{quarters:4,months:12,weeks:52,days:365,hours:365*24,minutes:365*24*60,seconds:365*24*60*60,milliseconds:365*24*60*60*1e3},quarters:{months:3,weeks:13,days:91,hours:2184,minutes:2184*60,seconds:2184*60*60,milliseconds:2184*60*60*1e3},months:{weeks:4,days:30,hours:720,minutes:720*60,seconds:720*60*60,milliseconds:720*60*60*1e3},...$r},q=146097/400,J=146097/4800,ti={years:{quarters:4,months:12,weeks:q/7,days:q,hours:q*24,minutes:q*24*60,seconds:q*24*60*60,milliseconds:q*24*60*60*1e3},quarters:{months:3,weeks:q/28,days:q/4,hours:q*24/4,minutes:q*24*60/4,seconds:q*24*60*60/4,milliseconds:q*24*60*60*1e3/4},months:{weeks:J/7,days:J,hours:J*24,minutes:J*24*60,seconds:J*24*60*60,milliseconds:J*24*60*60*1e3},...$r},Y=[`years`,`quarters`,`months`,`weeks`,`days`,`hours`,`minutes`,`seconds`,`milliseconds`],ni=Y.slice(0).reverse(),X=class e{constructor(e){let t=e.conversionAccuracy===`longterm`||!1,n=t?ti:ei;e.matrix&&(n=e.matrix),this.values=e.values,this.loc=e.loc||H.create(),this.conversionAccuracy=t?`longterm`:`casual`,this.invalid=e.invalid||null,this.matrix=n,this.isLuxonDuration=!0}static fromMillis(t,n){return e.fromObject({milliseconds:t},n)}static fromObject(t,n={}){if(typeof t!=`object`||!t)throw new F(`Duration.fromObject: argument expected to be an object, got ${t===null?`null`:typeof t}`);return new e({values:ze(t,e.normalizeUnit),loc:H.fromObject(n),conversionAccuracy:n.conversionAccuracy,matrix:n.matrix})}static fromDurationLike(t){if(S(t))return e.fromMillis(t);if(e.isDuration(t))return t;if(typeof t==`object`)return e.fromObject(t);throw new F(`Unknown duration argument ${t} of type ${typeof t}`)}static fromISO(t,n){let[r]=pt(t);return r?e.fromObject(r,n):e.invalid(`unparsable`,`the input "${t}" can't be parsed as ISO 8601`)}static fromISOTime(t,n){let[r]=mt(t);return r?e.fromObject(r,n):e.invalid(`unparsable`,`the input "${t}" can't be parsed as ISO 8601`)}static invalid(t,n=null){if(!t)throw new F(`need to specify a reason the Duration is invalid`);let r=t instanceof G?t:new G(t,n);if(W.throwOnInvalid)throw new on(r);return new e({invalid:r})}static normalizeUnit(e){let t={year:`years`,years:`years`,quarter:`quarters`,quarters:`quarters`,month:`months`,months:`months`,week:`weeks`,weeks:`weeks`,day:`days`,days:`days`,hour:`hours`,hours:`hours`,minute:`minutes`,minutes:`minutes`,second:`seconds`,seconds:`seconds`,millisecond:`milliseconds`,milliseconds:`milliseconds`}[e&&e.toLowerCase()];if(!t)throw new sn(e);return t}static isDuration(e){return e&&e.isLuxonDuration||!1}get locale(){return this.isValid?this.loc.locale:null}get numberingSystem(){return this.isValid?this.loc.numberingSystem:null}toFormat(e,t={}){let n={...t,floor:t.round!==!1&&t.floor!==!1};return this.isValid?K.create(this.loc,n).formatDurationFromString(this,e):Qr}toHuman(e={}){if(!this.isValid)return Qr;let t=e.showZeros!==!1,n=Y.map(n=>{let r=this.values[n];return x(r)||r===0&&!t?null:this.loc.numberFormatter({style:`unit`,unitDisplay:`long`,...e,unit:n.slice(0,-1)}).format(r)}).filter(e=>e);return this.loc.listFormatter({type:`conjunction`,style:e.listStyle||`narrow`,...e}).format(n)}toObject(){return this.isValid?{...this.values}:{}}toISO(){if(!this.isValid)return null;let e=`P`;return this.years!==0&&(e+=this.years+`Y`),(this.months!==0||this.quarters!==0)&&(e+=this.months+this.quarters*3+`M`),this.weeks!==0&&(e+=this.weeks+`W`),this.days!==0&&(e+=this.days+`D`),(this.hours!==0||this.minutes!==0||this.seconds!==0||this.milliseconds!==0)&&(e+=`T`),this.hours!==0&&(e+=this.hours+`H`),this.minutes!==0&&(e+=this.minutes+`M`),(this.seconds!==0||this.milliseconds!==0)&&(e+=Oe(this.seconds+this.milliseconds/1e3,3)+`S`),e===`P`&&(e+=`T0S`),e}toISOTime(e={}){if(!this.isValid)return null;let t=this.toMillis();return t<0||t>=864e5?null:(e={suppressMilliseconds:!1,suppressSeconds:!1,includePrefix:!1,format:`extended`,...e,includeOffset:!1},$.fromMillis(t,{zone:`UTC`}).toISOTime(e))}toJSON(){return this.toISO()}toString(){return this.toISO()}[Symbol.for(`nodejs.util.inspect.custom`)](){return this.isValid?`Duration { values: ${JSON.stringify(this.values)} }`:`Duration { Invalid, reason: ${this.invalidReason} }`}toMillis(){return this.isValid?gt(this.matrix,this.values):NaN}valueOf(){return this.toMillis()}plus(t){if(!this.isValid)return this;let n=e.fromDurationLike(t),r={};for(let e of Y)(we(n.values,e)||we(this.values,e))&&(r[e]=n.get(e)+this.get(e));return k(this,{values:r},!0)}minus(t){if(!this.isValid)return this;let n=e.fromDurationLike(t);return this.plus(n.negate())}mapUnits(e){if(!this.isValid)return this;let t={};for(let n of Object.keys(this.values))t[n]=Re(e(this.values[n],n));return k(this,{values:t},!0)}get(t){return this[e.normalizeUnit(t)]}set(t){if(!this.isValid)return this;let n={...this.values,...ze(t,e.normalizeUnit)};return k(this,{values:n})}reconfigure({locale:e,numberingSystem:t,conversionAccuracy:n,matrix:r}={}){let i={loc:this.loc.clone({locale:e,numberingSystem:t}),matrix:r,conversionAccuracy:n};return k(this,i)}as(e){return this.isValid?this.shiftTo(e).get(e):NaN}normalize(){if(!this.isValid)return this;let e=this.toObject();return _t(this.matrix,e),k(this,{values:e},!0)}rescale(){if(!this.isValid)return this;let e=vt(this.normalize().shiftToAll().toObject());return k(this,{values:e},!0)}shiftTo(...t){if(!this.isValid||t.length===0)return this;t=t.map(t=>e.normalizeUnit(t));let n={},r={},i=this.toObject(),a;for(let e of Y)if(t.indexOf(e)>=0){a=e;let t=0;for(let n in r)t+=this.matrix[n][e]*r[n],r[n]=0;S(i[e])&&(t+=i[e]);let o=Math.trunc(t);n[e]=o,r[e]=(t*1e3-o*1e3)/1e3}else S(i[e])&&(r[e]=i[e]);for(let e in r)r[e]!==0&&(n[a]+=e===a?r[e]:r[e]/this.matrix[a][e]);return _t(this.matrix,n),k(this,{values:n},!0)}shiftToAll(){return this.isValid?this.shiftTo(`years`,`months`,`weeks`,`days`,`hours`,`minutes`,`seconds`,`milliseconds`):this}negate(){if(!this.isValid)return this;let e={};for(let t of Object.keys(this.values))e[t]=this.values[t]===0?0:-this.values[t];return k(this,{values:e},!0)}removeZeros(){if(!this.isValid)return this;let e=vt(this.values);return k(this,{values:e},!0)}get years(){return this.isValid?this.values.years||0:NaN}get quarters(){return this.isValid?this.values.quarters||0:NaN}get months(){return this.isValid?this.values.months||0:NaN}get weeks(){return this.isValid?this.values.weeks||0:NaN}get days(){return this.isValid?this.values.days||0:NaN}get hours(){return this.isValid?this.values.hours||0:NaN}get minutes(){return this.isValid?this.values.minutes||0:NaN}get seconds(){return this.isValid?this.values.seconds||0:NaN}get milliseconds(){return this.isValid?this.values.milliseconds||0:NaN}get isValid(){return this.invalid===null}get invalidReason(){return this.invalid?this.invalid.reason:null}get invalidExplanation(){return this.invalid?this.invalid.explanation:null}equals(e){if(!this.isValid||!e.isValid||!this.loc.equals(e.loc))return!1;function t(e,t){return e===void 0||e===0?t===void 0||t===0:e===t}for(let n of Y)if(!t(this.values[n],e.values[n]))return!1;return!0}},Z=`Invalid Interval`,ri=class e{constructor(e){this.s=e.start,this.e=e.end,this.invalid=e.invalid||null,this.isLuxonInterval=!0}static invalid(t,n=null){if(!t)throw new F(`need to specify a reason the Interval is invalid`);let r=t instanceof G?t:new G(t,n);if(W.throwOnInvalid)throw new an(r);return new e({invalid:r})}static fromDateTimes(t,n){let r=nn(t),i=nn(n);return yt(r,i)??new e({start:r,end:i})}static after(t,n){let r=X.fromDurationLike(n),i=nn(t);return e.fromDateTimes(i,i.plus(r))}static before(t,n){let r=X.fromDurationLike(n),i=nn(t);return e.fromDateTimes(i.minus(r),i)}static fromISO(t,n){let[r,i]=(t||``).split(`/`,2);if(r&&i){let t,a;try{t=$.fromISO(r,n),a=t.isValid}catch{a=!1}let o,s;try{o=$.fromISO(i,n),s=o.isValid}catch{s=!1}if(a&&s)return e.fromDateTimes(t,o);if(a){let r=X.fromISO(i,n);if(r.isValid)return e.after(t,r)}else if(s){let t=X.fromISO(r,n);if(t.isValid)return e.before(o,t)}}return e.invalid(`unparsable`,`the input "${t}" can't be parsed as ISO 8601`)}static isInterval(e){return e&&e.isLuxonInterval||!1}get start(){return this.isValid?this.s:null}get end(){return this.isValid?this.e:null}get lastDateTime(){return this.isValid&&this.e?this.e.minus(1):null}get isValid(){return this.invalidReason===null}get invalidReason(){return this.invalid?this.invalid.reason:null}get invalidExplanation(){return this.invalid?this.invalid.explanation:null}length(e=`milliseconds`){return this.isValid?this.toDuration(e).get(e):NaN}count(e=`milliseconds`,t){if(!this.isValid)return NaN;let n=this.start.startOf(e,t),r;return r=t?.useLocaleWeeks?this.end.reconfigure({locale:n.locale}):this.end,r=r.startOf(e,t),Math.floor(r.diff(n,e).get(e))+(r.valueOf()!==this.end.valueOf())}hasSame(e){return this.isValid?this.isEmpty()||this.e.minus(1).hasSame(this.s,e):!1}isEmpty(){return this.s.valueOf()===this.e.valueOf()}isAfter(e){return this.isValid?this.s>e:!1}isBefore(e){return this.isValid?this.e<=e:!1}contains(e){return this.isValid?this.s<=e&&this.e>e:!1}set({start:t,end:n}={}){return this.isValid?e.fromDateTimes(t||this.s,n||this.e):this}splitAt(...t){if(!this.isValid)return[];let n=t.map(nn).filter(e=>this.contains(e)).sort((e,t)=>e.toMillis()-t.toMillis()),r=[],{s:i}=this,a=0;for(;i<this.e;){let t=n[a]||this.e,o=+t>+this.e?this.e:t;r.push(e.fromDateTimes(i,o)),i=o,a+=1}return r}splitBy(t){let n=X.fromDurationLike(t);if(!this.isValid||!n.isValid||n.as(`milliseconds`)===0)return[];let{s:r}=this,i=1,a,o=[];for(;r<this.e;){let t=this.start.plus(n.mapUnits(e=>e*i));a=+t>+this.e?this.e:t,o.push(e.fromDateTimes(r,a)),r=a,i+=1}return o}divideEqually(e){return this.isValid?this.splitBy(this.length()/e).slice(0,e):[]}overlaps(e){return this.e>e.s&&this.s<e.e}abutsStart(e){return this.isValid?+this.e==+e.s:!1}abutsEnd(e){return this.isValid?+e.e==+this.s:!1}engulfs(e){return this.isValid?this.s<=e.s&&this.e>=e.e:!1}equals(e){return!this.isValid||!e.isValid?!1:this.s.equals(e.s)&&this.e.equals(e.e)}intersection(t){if(!this.isValid)return this;let n=this.s>t.s?this.s:t.s,r=this.e<t.e?this.e:t.e;return n>=r?null:e.fromDateTimes(n,r)}union(t){if(!this.isValid)return this;let n=this.s<t.s?this.s:t.s,r=this.e>t.e?this.e:t.e;return e.fromDateTimes(n,r)}static merge(e){let[t,n]=e.sort((e,t)=>e.s-t.s).reduce(([e,t],n)=>t?t.overlaps(n)||t.abutsStart(n)?[e,t.union(n)]:[e.concat([t]),n]:[e,n],[[],null]);return n&&t.push(n),t}static xor(t){let n=null,r=0,i=[],a=t.map(e=>[{time:e.s,type:`s`},{time:e.e,type:`e`}]),o=Array.prototype.concat(...a).sort((e,t)=>e.time-t.time);for(let t of o)r+=t.type===`s`?1:-1,r===1?n=t.time:(n&&+n!=+t.time&&i.push(e.fromDateTimes(n,t.time)),n=null);return e.merge(i)}difference(...t){return e.xor([this].concat(t)).map(e=>this.intersection(e)).filter(e=>e&&!e.isEmpty())}toString(){return this.isValid?`[${this.s.toISO()} – ${this.e.toISO()})`:Z}[Symbol.for(`nodejs.util.inspect.custom`)](){return this.isValid?`Interval { start: ${this.s.toISO()}, end: ${this.e.toISO()} }`:`Interval { Invalid, reason: ${this.invalidReason} }`}toLocaleString(e=cn,t={}){return this.isValid?K.create(this.s.loc.clone(t),e).formatInterval(this):Z}toISO(e){return this.isValid?`${this.s.toISO(e)}/${this.e.toISO(e)}`:Z}toISODate(){return this.isValid?`${this.s.toISODate()}/${this.e.toISODate()}`:Z}toISOTime(e){return this.isValid?`${this.s.toISOTime(e)}/${this.e.toISOTime(e)}`:Z}toFormat(e,{separator:t=` – `}={}){return this.isValid?`${this.s.toFormat(e)}${t}${this.e.toFormat(e)}`:Z}toDuration(e,t){return this.isValid?this.e.diff(this.s,e,t):X.invalid(this.invalidReason)}mapEndpoints(t){return e.fromDateTimes(t(this.s),t(this.e))}},Q=class{static hasDST(e=W.defaultZone){let t=$.now().setZone(e).set({month:12});return!e.isUniversal&&t.offset!==t.set({month:6}).offset}static isValidIANAZone(e){return V.isValidZone(e)}static normalizeZone(e){return _(e,W.defaultZone)}static getStartOfWeek({locale:e=null,locObj:t=null}={}){return(t||H.create(e)).getStartOfWeek()}static getMinimumDaysInFirstWeek({locale:e=null,locObj:t=null}={}){return(t||H.create(e)).getMinDaysInFirstWeek()}static getWeekendWeekdays({locale:e=null,locObj:t=null}={}){return(t||H.create(e)).getWeekendDays().slice()}static months(e=`long`,{locale:t=null,numberingSystem:n=null,locObj:r=null,outputCalendar:i=`gregory`}={}){return(r||H.create(t,n,i)).months(e)}static monthsFormat(e=`long`,{locale:t=null,numberingSystem:n=null,locObj:r=null,outputCalendar:i=`gregory`}={}){return(r||H.create(t,n,i)).months(e,!0)}static weekdays(e=`long`,{locale:t=null,numberingSystem:n=null,locObj:r=null}={}){return(r||H.create(t,n,null)).weekdays(e)}static weekdaysFormat(e=`long`,{locale:t=null,numberingSystem:n=null,locObj:r=null}={}){return(r||H.create(t,n,null)).weekdays(e,!0)}static meridiems({locale:e=null}={}){return H.create(e).meridiems()}static eras(e=`short`,{locale:t=null}={}){return H.create(t,null,`gregory`).eras(e)}static features(){return{relative:ye(),localeWeek:be()}}},ii=`missing Intl.DateTimeFormat.formatToParts support`,ai=`[ \xA0]`,oi=new RegExp(ai,`g`),si={year:{"2-digit":`yy`,numeric:`yyyyy`},month:{numeric:`M`,"2-digit":`MM`,short:`MMM`,long:`MMMM`},day:{numeric:`d`,"2-digit":`dd`},weekday:{short:`EEE`,long:`EEEE`},dayperiod:`a`,dayPeriod:`a`,hour12:{numeric:`h`,"2-digit":`hh`},hour24:{numeric:`H`,"2-digit":`HH`},minute:{numeric:`m`,"2-digit":`mm`},second:{numeric:`s`,"2-digit":`ss`},timeZoneName:{long:`ZZZZZ`,short:`ZZZ`}},ci=null,li=class{constructor(e,t){if(this.locale=e,this.format=t,this.tokens=Ft(K.parseFormat(t),e),this.units=this.tokens.map(t=>Ot(t,e)),this.disqualifyingUnit=this.units.find(e=>e.invalidReason),!this.disqualifyingUnit){let[e,t]=At(this.units);this.regex=RegExp(e,`i`),this.handlers=t}}explainFromTokens(e){if(this.isValid){let[t,n]=jt(e,this.regex,this.handlers),[r,i,a]=n?Mt(n):[null,null,void 0];if(we(n,`a`)&&we(n,`H`))throw new P(`Can't include meridiem when specifying 24-hour format`);return{input:e,tokens:this.tokens,regex:this.regex,rawMatches:t,matches:n,result:r,zone:i,specificOffset:a}}else return{input:e,tokens:this.tokens,invalidReason:this.invalidReason}}get isValid(){return!this.disqualifyingUnit}get invalidReason(){return this.disqualifyingUnit?this.disqualifyingUnit.invalidReason:null}},ui=`Invalid DateTime`,di=864e13,fi={month:1,day:1,hour:0,minute:0,second:0,millisecond:0},pi={weekNumber:1,weekday:1,hour:0,minute:0,second:0,millisecond:0},mi={ordinal:1,hour:0,minute:0,second:0,millisecond:0},hi=[`year`,`month`,`day`,`hour`,`minute`,`second`,`millisecond`],gi=[`weekYear`,`weekNumber`,`weekday`,`hour`,`minute`,`second`,`millisecond`],_i=[`year`,`ordinal`,`hour`,`minute`,`second`,`millisecond`],yi=new Map,$=class e{constructor(e){let t=e.zone||W.defaultZone,n=e.invalid||(Number.isNaN(e.ts)?new G(`invalid input`):null)||(t.isValid?null:zt(t));this.ts=x(e.ts)?W.now():e.ts;let r=null,i=null;if(!n)if(e.old&&e.old.ts===this.ts&&e.old.zone.equals(t))[r,i]=[e.old.c,e.old.o];else{let a=S(e.o)&&!e.old?e.o:t.offset(this.ts);r=Ut(this.ts,a),n=Number.isNaN(r.year)?new G(`invalid input`):null,r=n?null:r,i=n?null:a}this._zone=t,this.loc=e.loc||H.create(),this.invalid=n,this.weekData=null,this.localWeekData=null,this.c=r,this.o=i,this.isLuxonDateTime=!0}static now(){return new e({})}static local(){let[e,t]=tn(arguments),[n,r,i,a,o,s,c]=t;return $t({year:n,month:r,day:i,hour:a,minute:o,second:s,millisecond:c},e)}static utc(){let[e,t]=tn(arguments),[n,r,i,a,o,s,c]=t;return e.zone=U.utcInstance,$t({year:n,month:r,day:i,hour:a,minute:o,second:s,millisecond:c},e)}static fromJSDate(t,n={}){let r=ve(t)?t.valueOf():NaN;if(Number.isNaN(r))return e.invalid(`invalid input`);let i=_(n.zone,W.defaultZone);return i.isValid?new e({ts:r,zone:i,loc:H.fromObject(n)}):e.invalid(zt(i))}static fromMillis(t,n={}){if(!S(t))throw new F(`fromMillis requires a numerical input, but received a ${typeof t} with value ${t}`);return t<-864e13||t>di?e.invalid(`Timestamp out of range`):new e({ts:t,zone:_(n.zone,W.defaultZone),loc:H.fromObject(n)})}static fromSeconds(t,n={}){if(S(t))return new e({ts:t*1e3,zone:_(n.zone,W.defaultZone),loc:H.fromObject(n)});throw new F(`fromSeconds requires a numerical input`)}static fromObject(t,n={}){t||={};let r=_(n.zone,W.defaultZone);if(!r.isValid)return e.invalid(zt(r));let i=H.fromObject(n),a=ze(t,Zt),{minDaysInFirstWeek:o,startOfWeek:s}=de(a,i),c=W.now(),l=x(n.specificOffset)?r.offset(c):n.specificOffset,u=!x(a.ordinal),d=!x(a.year),f=!x(a.month)||!x(a.day),p=d||f,m=a.weekYear||a.weekNumber;if((p||u)&&m)throw new P(`Can't mix weekYear/weekNumber units with year/month/day or ordinals`);if(f&&u)throw new P(`Can't mix ordinal dates with month/day`);let h=m||a.weekday&&!p,ee,g,te=Ut(c,l);h?(ee=gi,g=pi,te=se(te,o,s)):u?(ee=_i,g=mi,te=le(te)):(ee=hi,g=fi);let ne=!1;for(let e of ee){let t=a[e];x(t)?ne?a[e]=g[e]:a[e]=te[e]:ne=!0}let re=(h?fe(a,o,s):u?pe(a):me(a))||he(a);if(re)return e.invalid(re);let[v,y]=Wt(h?ce(a,o,s):u?ue(a):a,l,r),b=new e({ts:v,zone:r,o:y,loc:i});return a.weekday&&p&&t.weekday!==b.weekday?e.invalid(`mismatched weekday`,`you can't specify both a weekday of ${a.weekday} and a date of ${b.toISO()}`):b.isValid?b:e.invalid(b.invalid)}static fromISO(e,t={}){let[n,r]=ut(e);return Kt(n,r,t,`ISO 8601`,e)}static fromRFC2822(e,t={}){let[n,r]=dt(e);return Kt(n,r,t,`RFC 2822`,e)}static fromHTTP(e,t={}){let[n,r]=ft(e);return Kt(n,r,t,`HTTP`,t)}static fromFormat(t,n,r={}){if(x(t)||x(n))throw new F(`fromFormat requires an input string and a format`);let{locale:i=null,numberingSystem:a=null}=r,[o,s,c,l]=Lt(H.fromOpts({locale:i,numberingSystem:a,defaultToEN:!0}),t,n);return l?e.invalid(l):Kt(o,s,r,`format ${n}`,t,c)}static fromString(t,n,r={}){return e.fromFormat(t,n,r)}static fromSQL(e,t={}){let[n,r]=ht(e);return Kt(n,r,t,`SQL`,e)}static invalid(t,n=null){if(!t)throw new F(`need to specify a reason the DateTime is invalid`);let r=t instanceof G?t:new G(t,n);if(W.throwOnInvalid)throw new rn(r);return new e({invalid:r})}static isDateTime(e){return e&&e.isLuxonDateTime||!1}static parseFormatForOpts(e,t={}){let n=Rt(e,H.fromObject(t));return n?n.map(e=>e?e.val:null).join(``):null}static expandFormat(e,t={}){return Ft(K.parseFormat(e),H.fromObject(t)).map(e=>e.val).join(``)}static resetCache(){vi=void 0,yi.clear()}get(e){return this[e]}get isValid(){return this.invalid===null}get invalidReason(){return this.invalid?this.invalid.reason:null}get invalidExplanation(){return this.invalid?this.invalid.explanation:null}get locale(){return this.isValid?this.loc.locale:null}get numberingSystem(){return this.isValid?this.loc.numberingSystem:null}get outputCalendar(){return this.isValid?this.loc.outputCalendar:null}get zone(){return this._zone}get zoneName(){return this.isValid?this.zone.name:null}get year(){return this.isValid?this.c.year:NaN}get quarter(){return this.isValid?Math.ceil(this.c.month/3):NaN}get month(){return this.isValid?this.c.month:NaN}get day(){return this.isValid?this.c.day:NaN}get hour(){return this.isValid?this.c.hour:NaN}get minute(){return this.isValid?this.c.minute:NaN}get second(){return this.isValid?this.c.second:NaN}get millisecond(){return this.isValid?this.c.millisecond:NaN}get weekYear(){return this.isValid?Bt(this).weekYear:NaN}get weekNumber(){return this.isValid?Bt(this).weekNumber:NaN}get weekday(){return this.isValid?Bt(this).weekday:NaN}get isWeekend(){return this.isValid&&this.loc.getWeekendDays().includes(this.weekday)}get localWeekday(){return this.isValid?Vt(this).weekday:NaN}get localWeekNumber(){return this.isValid?Vt(this).weekNumber:NaN}get localWeekYear(){return this.isValid?Vt(this).weekYear:NaN}get ordinal(){return this.isValid?le(this.c).ordinal:NaN}get monthShort(){return this.isValid?Q.months(`short`,{locObj:this.loc})[this.month-1]:null}get monthLong(){return this.isValid?Q.months(`long`,{locObj:this.loc})[this.month-1]:null}get weekdayShort(){return this.isValid?Q.weekdays(`short`,{locObj:this.loc})[this.weekday-1]:null}get weekdayLong(){return this.isValid?Q.weekdays(`long`,{locObj:this.loc})[this.weekday-1]:null}get offset(){return this.isValid?+this.o:NaN}get offsetNameShort(){return this.isValid?this.zone.offsetName(this.ts,{format:`short`,locale:this.locale}):null}get offsetNameLong(){return this.isValid?this.zone.offsetName(this.ts,{format:`long`,locale:this.locale}):null}get isOffsetFixed(){return this.isValid?this.zone.isUniversal:null}get isInDST(){return this.isOffsetFixed?!1:this.offset>this.set({month:1,day:1}).offset||this.offset>this.set({month:5}).offset}getPossibleOffsets(){if(!this.isValid||this.isOffsetFixed)return[this];let e=864e5,t=6e4,n=Me(this.c),r=this.zone.offset(n-e),i=this.zone.offset(n+e),a=this.zone.offset(n-r*t),o=this.zone.offset(n-i*t);if(a===o)return[this];let s=n-a*t,c=n-o*t,l=Ut(s,a),u=Ut(c,o);return l.hour===u.hour&&l.minute===u.minute&&l.second===u.second&&l.millisecond===u.millisecond?[M(this,{ts:s}),M(this,{ts:c})]:[this]}get isInLeapYear(){return ke(this.year)}get daysInMonth(){return je(this.year,this.month)}get daysInYear(){return this.isValid?Ae(this.year):NaN}get weeksInWeekYear(){return this.isValid?Pe(this.weekYear):NaN}get weeksInLocalWeekYear(){return this.isValid?Pe(this.localWeekYear,this.loc.getMinDaysInFirstWeek(),this.loc.getStartOfWeek()):NaN}resolvedLocaleOptions(e={}){let{locale:t,numberingSystem:n,calendar:r}=K.create(this.loc.clone(e),e).resolvedOptions(this);return{locale:t,numberingSystem:n,outputCalendar:r}}toUTC(e=0,t={}){return this.setZone(U.instance(e),t)}toLocal(){return this.setZone(W.defaultZone)}setZone(t,{keepLocalTime:n=!1,keepCalendarTime:r=!1}={}){if(t=_(t,W.defaultZone),t.equals(this.zone))return this;if(t.isValid){let e=this.ts;if(n||r){let n=t.offset(this.ts),r=this.toObject();[e]=Wt(r,n,t)}return M(this,{ts:e,zone:t})}else return e.invalid(zt(t))}reconfigure({locale:e,numberingSystem:t,outputCalendar:n}={}){let r=this.loc.clone({locale:e,numberingSystem:t,outputCalendar:n});return M(this,{loc:r})}setLocale(e){return this.reconfigure({locale:e})}set(e){if(!this.isValid)return this;let t=ze(e,Zt),{minDaysInFirstWeek:n,startOfWeek:r}=de(t,this.loc),i=!x(t.weekYear)||!x(t.weekNumber)||!x(t.weekday),a=!x(t.ordinal),o=!x(t.year),s=!x(t.month)||!x(t.day),c=o||s,l=t.weekYear||t.weekNumber;if((c||a)&&l)throw new P(`Can't mix weekYear/weekNumber units with year/month/day or ordinals`);if(s&&a)throw new P(`Can't mix ordinal dates with month/day`);let u;i?u=ce({...se(this.c,n,r),...t},n,r):x(t.ordinal)?(u={...this.toObject(),...t},x(t.day)&&(u.day=Math.min(je(u.year,u.month),u.day))):u=ue({...le(this.c),...t});let[d,f]=Wt(u,this.o,this.zone);return M(this,{ts:d,o:f})}plus(e){if(!this.isValid)return this;let t=X.fromDurationLike(e);return M(this,Gt(this,t))}minus(e){if(!this.isValid)return this;let t=X.fromDurationLike(e).negate();return M(this,Gt(this,t))}startOf(e,{useLocaleWeeks:t=!1}={}){if(!this.isValid)return this;let n={},r=X.normalizeUnit(e);switch(r){case`years`:n.month=1;case`quarters`:case`months`:n.day=1;case`weeks`:case`days`:n.hour=0;case`hours`:n.minute=0;case`minutes`:n.second=0;case`seconds`:n.millisecond=0;break}if(r===`weeks`)if(t){let e=this.loc.getStartOfWeek(),{weekday:t}=this;t<e&&(n.weekNumber=this.weekNumber-1),n.weekday=e}else n.weekday=1;return r===`quarters`&&(n.month=(Math.ceil(this.month/3)-1)*3+1),this.set(n)}endOf(e,t){return this.isValid?this.plus({[e]:1}).startOf(e,t).minus(1):this}toFormat(e,t={}){return this.isValid?K.create(this.loc.redefaultToEN(t)).formatDateTimeFromString(this,e):ui}toLocaleString(e=cn,t={}){return this.isValid?K.create(this.loc.clone(t),e).formatDateTime(this):ui}toLocaleParts(e={}){return this.isValid?K.create(this.loc.clone(e),e).formatDateTimeParts(this):[]}toISO({format:e=`extended`,suppressSeconds:t=!1,suppressMilliseconds:n=!1,includeOffset:r=!0,extendedZone:i=!1,precision:a=`milliseconds`}={}){if(!this.isValid)return null;a=Xt(a);let o=e===`extended`,s=Jt(this,o,a);return hi.indexOf(a)>=3&&(s+=`T`),s+=Yt(this,o,t,n,r,i,a),s}toISODate({format:e=`extended`,precision:t=`day`}={}){return this.isValid?Jt(this,e===`extended`,Xt(t)):null}toISOWeekDate(){return qt(this,`kkkk-'W'WW-c`)}toISOTime({suppressMilliseconds:e=!1,suppressSeconds:t=!1,includeOffset:n=!0,includePrefix:r=!1,extendedZone:i=!1,format:a=`extended`,precision:o=`milliseconds`}={}){return this.isValid?(o=Xt(o),(r&&hi.indexOf(o)>=3?`T`:``)+Yt(this,a===`extended`,t,e,n,i,o)):null}toRFC2822(){return qt(this,`EEE, dd LLL yyyy HH:mm:ss ZZZ`,!1)}toHTTP(){return qt(this.toUTC(),`EEE, dd LLL yyyy HH:mm:ss 'GMT'`)}toSQLDate(){return this.isValid?Jt(this,!0):null}toSQLTime({includeOffset:e=!0,includeZone:t=!1,includeOffsetSpace:n=!0}={}){let r=`HH:mm:ss.SSS`;return(t||e)&&(n&&(r+=` `),t?r+=`z`:e&&(r+=`ZZ`)),qt(this,r,!0)}toSQL(e={}){return this.isValid?`${this.toSQLDate()} ${this.toSQLTime(e)}`:null}toString(){return this.isValid?this.toISO():ui}[Symbol.for(`nodejs.util.inspect.custom`)](){return this.isValid?`DateTime { ts: ${this.toISO()}, zone: ${this.zone.name}, locale: ${this.locale} }`:`DateTime { Invalid, reason: ${this.invalidReason} }`}valueOf(){return this.toMillis()}toMillis(){return this.isValid?this.ts:NaN}toSeconds(){return this.isValid?this.ts/1e3:NaN}toUnixInteger(){return this.isValid?Math.floor(this.ts/1e3):NaN}toJSON(){return this.toISO()}toBSON(){return this.toJSDate()}toObject(e={}){if(!this.isValid)return{};let t={...this.c};return e.includeConfig&&(t.outputCalendar=this.outputCalendar,t.numberingSystem=this.loc.numberingSystem,t.locale=this.loc.locale),t}toJSDate(){return new Date(this.isValid?this.ts:NaN)}diff(e,t=`milliseconds`,n={}){if(!this.isValid||!e.isValid)return X.invalid(`created by diffing an invalid DateTime`);let r={locale:this.locale,numberingSystem:this.numberingSystem,...n},i=xe(t).map(X.normalizeUnit),a=e.valueOf()>this.valueOf(),o=St(a?this:e,a?e:this,i,r);return a?o.negate():o}diffNow(t=`milliseconds`,n={}){return this.diff(e.now(),t,n)}until(e){return this.isValid?ri.fromDateTimes(this,e):this}hasSame(e,t,n){if(!this.isValid)return!1;let r=e.valueOf(),i=this.setZone(e.zone,{keepLocalTime:!0});return i.startOf(t,n)<=r&&r<=i.endOf(t,n)}equals(e){return this.isValid&&e.isValid&&this.valueOf()===e.valueOf()&&this.zone.equals(e.zone)&&this.loc.equals(e.loc)}toRelative(t={}){if(!this.isValid)return null;let n=t.base||e.fromObject({},{zone:this.zone}),r=t.padding?this<n?-t.padding:t.padding:0,i=[`years`,`months`,`days`,`hours`,`minutes`,`seconds`],a=t.unit;return Array.isArray(t.unit)&&(i=t.unit,a=void 0),en(n,this.plus(r),{...t,numeric:`always`,units:i,unit:a})}toRelativeCalendar(t={}){return this.isValid?en(t.base||e.fromObject({},{zone:this.zone}),this,{...t,numeric:`auto`,units:[`years`,`months`,`days`],calendary:!0}):null}static min(...t){if(!t.every(e.isDateTime))throw new F(`min requires all arguments be DateTimes`);return Se(t,e=>e.valueOf(),Math.min)}static max(...t){if(!t.every(e.isDateTime))throw new F(`max requires all arguments be DateTimes`);return Se(t,e=>e.valueOf(),Math.max)}static fromFormatExplain(e,t,n={}){let{locale:r=null,numberingSystem:i=null}=n;return It(H.fromOpts({locale:r,numberingSystem:i,defaultToEN:!0}),e,t)}static fromStringExplain(t,n,r={}){return e.fromFormatExplain(t,n,r)}static buildFormatParser(e,t={}){let{locale:n=null,numberingSystem:r=null}=t,i=H.fromOpts({locale:n,numberingSystem:r,defaultToEN:!0});return new li(i,e)}static fromFormatParser(t,n,r={}){if(x(t)||x(n))throw new F(`fromFormatParser requires an input string and a format parser`);let{locale:i=null,numberingSystem:a=null}=r,o=H.fromOpts({locale:i,numberingSystem:a,defaultToEN:!0});if(!o.equals(n.locale))throw new F(`fromFormatParser called with a locale of ${o}, but the format parser was created for ${n.locale}`);let{result:s,zone:c,specificOffset:l,invalidReason:u}=n.explainFromTokens(t);return u?e.invalid(u):Kt(s,c,r,`format ${n.format}`,t,l)}static get DATE_SHORT(){return cn}static get DATE_MED(){return ln}static get DATE_MED_WITH_WEEKDAY(){return un}static get DATE_FULL(){return dn}static get DATE_HUGE(){return fn}static get TIME_SIMPLE(){return pn}static get TIME_WITH_SECONDS(){return mn}static get TIME_WITH_SHORT_OFFSET(){return hn}static get TIME_WITH_LONG_OFFSET(){return gn}static get TIME_24_SIMPLE(){return _n}static get TIME_24_WITH_SECONDS(){return vn}static get TIME_24_WITH_SHORT_OFFSET(){return yn}static get TIME_24_WITH_LONG_OFFSET(){return bn}static get DATETIME_SHORT(){return xn}static get DATETIME_SHORT_WITH_SECONDS(){return Sn}static get DATETIME_MED(){return Cn}static get DATETIME_MED_WITH_SECONDS(){return wn}static get DATETIME_MED_WITH_WEEKDAY(){return Tn}static get DATETIME_FULL(){return En}static get DATETIME_FULL_WITH_SECONDS(){return Dn}static get DATETIME_HUGE(){return On}static get DATETIME_HUGE_WITH_SECONDS(){return kn}},bi=`3.7.2`}));export{xi as n,n as r,$ as t};
@@ -0,0 +1 @@
1
+ import{s as e,t}from"./react-BXwhMTuc.js";import{m as n}from"./hooks-DYfTEQLk.js";import{t as r}from"./jsx-runtime-BlNNh7jY.js";import{s as i}from"./config-BPljH6wF.js";import{i as a,r as o}from"./currency-Dy4Tc2R2.js";import{_ as s,n as c}from"./chunk-KS7C4IRE-DhOcHQOU.js";import{_ as l,l as u,m as d,x as f}from"./dist-BXHrDV19.js";import{t as p}from"./box-CZ_LSVSy.js";import{t as ee}from"./container-DAimjOF_.js";import{t as m}from"./grid-5vplBYri.js";import{t as h}from"./inline-B8H6NzIw.js";import{t as g}from"./stack-BURz77VS.js";import{Pr as _,Y as v,an as y,nr as b,qt as x,t as S,tn as C}from"./button-DvIh2Bq-.js";import{a as w,o as T,r as E,s as D,t as O}from"./command-DlLrCm9V.js";import{a as te,i as ne,n as re,o as ie,r as ae,t as oe}from"./breadcrumb-Chn1Ip_q.js";import{t as k}from"./empty-indicator-L4Ql5Db7.js";import{t as A}from"./input-group-CLIN2ykI.js";import{t as j}from"./preview-chrome-C2lQgZBZ.js";import{a as M,c as se,n as ce,r as N,s as le,t as ue}from"./table-dE4GTIRT.js";import{n as P,t as F}from"./toggle-group-D2p4okmJ.js";import{r as de}from"./newsletters-Dz77m__5.js";import{Ar as fe,F as I,Kn as L,N as R,Or as pe,Sr as me,T as z,Xn as B,_ as he,br as ge,cr as V,fr as H,ht as U,li as W,mr as _e,pi as ve,s as ye,sr as be,ui as xe,ur as Se,vr as Ce,w as we,xr as Te}from"./index-DDd-zhNL.js";import{t as G}from"./page-header-B-G_g42C.js";import{a as Ee}from"./tiers-6mPzCXlM.js";import{t as K}from"./list-page-DLMP0PxC.js";import{t as De}from"./email-previews-Bs-JDhIw.js";import{t as Oe}from"./clean-tracked-url-dkN05vOf.js";import{i as ke,r as Ae,t as je}from"./member-activity-feed-BQY5Rwaj.js";var q=e(t(),1),J={minimumFractionDigits:0,maximumFractionDigits:2};function Y(e,t){if(!(typeof e!=`number`||!Number.isFinite(e)||typeof t!=`string`||!/^[a-z]{3}$/i.test(t)))return{value:o(e),symbol:a(t)}}function Me(e,t){let n=Y(e.data.mrr_delta,e.data.currency);if(!n||n.value===0)return;let r=`${n.symbol}${d(Math.abs(n.value),J)}`;return e.data.type===`created`?`${t.hasMultipleTiers&&typeof e.data.tierName==`string`&&e.data.tierName.trim()?e.data.tierName:`Paid`} ${n.value<0?`-`:``}${r}/month`:`MRR ${n.value>0?`+`:`-`}${r}`}function Ne(e){let t=Y(e.data.amount,e.data.currency),{tier_name:n,duration:r,cadence:i}=e.data;if(!t||typeof n!=`string`||!n.trim()||typeof r!=`number`||!Number.isInteger(r)||r<=0||typeof i!=`string`||!i.trim())return`Purchased gift subscription`;let a=`${t.symbol}${d(t.value,J)}`,o=r===1?i:`${i}s`;return`Purchased gift subscription for ${a} (${n}, ${d(r)} ${o})`}function Pe(e,t){let n=ke(e.type===`gift_purchase_event`?{...e,data:{...e.data,amount:void 0}}:e,t);if(e.type===`subscription_event`&&(n.info=Me(e,t)),e.type===`donation_event`){let t=Y(e.data.amount,e.data.currency);n.info=t?`${t.symbol}${d(t.value,J)}`:void 0}return e.type===`gift_purchase_event`&&(n.action=Ne(e),n.actionTitle=n.action),e.type===`click_event`&&(n.description=typeof n.description==`string`?Oe(n.description,!0):void 0),n}function X(e){return typeof e==`object`&&e&&!Array.isArray(e)?e:void 0}function Z(e){return typeof e==`string`?e:void 0}function Fe(e){let t=X(e),n=X(t?.email),r=[t,n].find(e=>Z(e?.html)&&typeof e?.subject==`string`),i=X(t?.newsletter)??X(n?.newsletter),a=Z(t?.post_id)||Z(n?.post_id)||(typeof t?.title==`string`?Z(t.id):void 0);return{stored:r?{html:Z(r.html),subject:Z(r.subject)}:void 0,postId:a,newsletter:i?{sender_name:Z(i.sender_name),sender_email:Z(i.sender_email)}:void 0}}function Ie(e,t,n){let r=n?.hostSettings?.managedEmail;return r?.enabled&&(!r.sendingDomain||e?.split(`@`)[1]!==r.sendingDomain)?t||``:e||t||``}function Le(e){let t=new DOMParser().parseFromString(e,`text/html`);t.querySelectorAll(`a, area`).forEach(e=>{e.removeAttribute(`href`),e.removeAttribute(`target`)}),t.querySelectorAll(`base, meta[http-equiv], form`).forEach(e=>e.remove());let n=t.createElement(`style`);return n.textContent=`html { scrollbar-width: none; } html::-webkit-scrollbar { display: none; }`,t.head.append(n),`<!DOCTYPE html>${t.documentElement.outerHTML}`}var Q=r();function Re({email:e,onClose:t}){let[n,r]=(0,q.useState)(`desktop`),[a]=(0,q.useState)(()=>window.document.activeElement),o=Fe(e),s=!o.stored&&!!o.postId,c=De(o.postId??``,{enabled:s}),l=de({enabled:!o.newsletter,searchParams:{filter:`status:active`,limit:`1`}}),d=ve(),f=i(),[p,ee]=xe(d.data?.settings??[],[`title`,`default_email_address`]),_=o.newsletter??l.data?.newsletters[0],b=_?.sender_name||p,C=Ie(_?.sender_email??void 0,ee,f.data?.config),w=o.stored??(s&&!c.isError?c.data?.email_previews[0]:void 0),T=(0,q.useMemo)(()=>w?Le(w.html):void 0,[w?.html]),E=d.isError||f.isError||!o.newsletter&&l.isError,D=d.isLoading||f.isLoading||!o.newsletter&&l.isLoading,O=s&&c.isLoading;return(0,Q.jsx)(H,{open:!0,onOpenChange:e=>{e||t()},children:(0,Q.jsxs)(_e,{"aria-describedby":void 0,className:`top-0 left-0 h-dvh w-full max-w-none translate-0 grid-rows-[auto_1fr] gap-0 rounded-none border-0 p-0 shadow-none sm:rounded-none`,"data-testid":`activity-email-preview`,onCloseAutoFocus:e=>{a instanceof HTMLElement&&a.isConnected&&(e.preventDefault(),a.focus())},onInteractOutside:e=>e.preventDefault(),children:[(0,Q.jsxs)(m,{align:`center`,className:`border-b border-border-default p-4`,columns:3,gap:`md`,children:[(0,Q.jsx)(Ce,{children:`Email preview`}),(0,Q.jsxs)(F,{className:`justify-self-center`,type:`single`,value:n,onValueChange:e=>{(e===`desktop`||e===`mobile`)&&r(e)},children:[(0,Q.jsx)(P,{"aria-label":`Desktop`,value:`desktop`,children:(0,Q.jsx)(y,{})}),(0,Q.jsx)(P,{"aria-label":`Mobile`,value:`mobile`,children:(0,Q.jsx)(v,{})})]}),(0,Q.jsx)(S,{className:`justify-self-end`,onClick:t,children:`Close`})]}),(0,Q.jsx)(h,{align:`start`,className:`min-h-0 overflow-auto bg-muted p-3 sm:p-6`,gap:`none`,justify:`center`,children:(0,Q.jsx)(j,{className:u(`max-w-full shrink-0`,n===`desktop`?`max-w-[740px] px-0 [&>div]:rounded-2xl [&>div]:shadow-2xl`:`shadow-2xl`),"data-device":n,device:n,children:(0,Q.jsxs)(g,{className:`size-full bg-background`,gap:`none`,children:[(0,Q.jsxs)(g,{className:`border-b border-border-default p-4 text-[13px]`,gap:`xs`,children:[(0,Q.jsx)(`p`,{className:`font-semibold break-words`,children:w?.subject}),(0,Q.jsxs)(`p`,{children:[(0,Q.jsx)(`span`,{className:`text-muted-foreground`,children:`From: `}),D?`Loading sender…`:E?`Sender unavailable`:(0,Q.jsxs)(Q.Fragment,{children:[b,C&&` <${C}>`]})]}),(0,Q.jsxs)(`p`,{children:[(0,Q.jsx)(`span`,{className:`text-muted-foreground`,children:`To: `}),`Jamie Larson <jamie@example.com>`]}),E&&(0,Q.jsxs)(h,{gap:`sm`,children:[(0,Q.jsx)(`p`,{role:`alert`,children:`Couldn’t load sender details.`}),(0,Q.jsx)(S,{size:`sm`,variant:`outline`,onClick:()=>{d.refetch(),f.refetch(),o.newsletter||l.refetch()},children:`Retry sender details`})]})]}),O?(0,Q.jsx)(h,{"aria-label":`Loading email preview`,className:`grow`,gap:`none`,justify:`center`,role:`status`,children:(0,Q.jsx)(B,{size:`md`})}):w?(0,Q.jsx)(`iframe`,{className:`min-h-0 grow border-0`,sandbox:``,srcDoc:T,title:`Email content`}):(0,Q.jsx)(k,{actions:s?(0,Q.jsx)(S,{variant:`outline`,onClick:()=>void c.refetch(),children:`Retry`}):void 0,className:`grow justify-center`,description:s?`The email preview could not be loaded.`:`The original email content is no longer available.`,role:`alert`,title:`Couldn’t load the email preview`,children:(0,Q.jsx)(x,{})})]})})})]})})}function ze({onSelect:e}){let[t,n]=(0,q.useState)(!1),r=(0,q.useRef)(null),[i,a]=(0,q.useState)(``),[o]=U(i,300),{data:s,isFetching:c,isError:l,refetch:u}=ye({enabled:t&&!!o.trim(),searchParams:{search:o,limit:`20`},defaultErrorHandler:!1}),d=c||i!==o;return(0,Q.jsx)(O,{className:`h-auto w-60 max-w-full min-w-0 overflow-visible`,shouldFilter:!1,children:(0,Q.jsxs)(be,{open:t&&!!i.trim(),onOpenChange:n,children:[(0,Q.jsx)(V,{asChild:!0,children:(0,Q.jsx)(p,{ref:r,children:(0,Q.jsx)(A,{className:`[&_[cmdk-input-wrapper]]:w-full [&_[cmdk-input-wrapper]]:border-0`,children:(0,Q.jsx)(w,{"aria-expanded":t&&!!i.trim(),"aria-label":`Search members`,className:`h-(--control-height) min-w-0 py-0`,"data-slot":`input-group-control`,placeholder:`Search members...`,value:i,onClick:()=>n(!!i.trim()),onFocus:()=>n(!!i.trim()),onValueChange:e=>{a(e),n(!!e.trim())}})})})}),(0,Q.jsx)(Se,{align:`end`,className:`w-(--radix-popover-trigger-width) max-w-[calc(100vw-2rem)] p-0`,onCloseAutoFocus:e=>e.preventDefault(),onInteractOutside:e=>{r.current?.contains(e.target)&&e.preventDefault()},onOpenAutoFocus:e=>e.preventDefault(),children:(0,Q.jsx)(D,{children:d?(0,Q.jsx)(h,{"aria-label":`Loading members`,className:`p-4`,justify:`center`,role:`status`,children:(0,Q.jsx)(B,{size:`sm`})}):l?(0,Q.jsxs)(g,{className:`p-4`,gap:`sm`,children:[(0,Q.jsx)(`p`,{className:`text-sm text-muted-foreground`,role:`alert`,children:`Couldn’t load members`}),(0,Q.jsx)(S,{variant:`outline`,onClick:()=>void u(),children:`Retry`})]}):(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(E,{children:`No members found`}),s?.members.map(t=>(0,Q.jsxs)(T,{value:t.id,onSelect:()=>{e(t.id),n(!1),a(``)},children:[(0,Q.jsx)(L,{...I(t),src:t.avatar_image}),(0,Q.jsxs)(g,{className:`min-w-0`,gap:`none`,children:[(0,Q.jsx)(`span`,{className:`truncate font-medium`,title:R(t),children:R(t)}),t.name?.trim()&&(0,Q.jsx)(`span`,{className:`truncate text-sm text-muted-foreground`,title:t.email,children:t.email})]})]},t.id))]})})})]})})}var Be=e(f(),1);function Ve(e){if(!e||typeof e!=`object`)return;let t=`subject`in e?e.subject:void 0;return typeof t==`string`&&t.trim()?t:`email`in e&&e.email&&typeof e.email==`object`?Ve(e.email):`Email`}function He({event:e,memberHref:t,hideMember:n,onPreview:r}){let i=typeof e.subject==`string`&&e.subject?e.subject:`Unknown member`,a=(0,Q.jsxs)(h,{gap:`md`,children:[(0,Q.jsx)(L,{...I(e.member),className:`[&_span]:text-[13px]`,src:e.member?.avatar_image}),(0,Q.jsxs)(g,{className:`min-w-0`,gap:`none`,children:[(0,Q.jsx)(`span`,{className:u(`truncate font-medium`,t&&`group-hover/member:underline`),children:i}),e.member?.name&&(0,Q.jsx)(`span`,{className:`truncate text-muted-foreground`,children:e.member.email})]})]}),o=Ae(e.route)?e.route:Ae(e.url)?e.url:void 0,s=!!e.object&&!!o,l=!s&&Ve(e.email),d=e.action?e.action[0].toUpperCase()+e.action.slice(1):`Unknown activity`,f=e.timestamp?(0,Be.default)(e.timestamp).local():void 0;return(0,Q.jsxs)(se,{children:[!n&&(0,Q.jsx)(N,{className:`group/member w-1/3 max-w-72 min-w-40 py-4`,children:t?(0,Q.jsx)(c,{className:`block hover:no-underline`,to:t,children:a}):a}),(0,Q.jsx)(N,{className:`min-w-48 py-4`,children:(0,Q.jsxs)(h,{gap:`md`,children:[(0,Q.jsx)(h,{className:`size-8 shrink-0 rounded-full bg-muted`,gap:`none`,justify:`center`,children:(0,Q.jsx)(je,{iconName:e.icon})}),(0,Q.jsxs)(g,{className:`min-w-0`,gap:`xs`,children:[(0,Q.jsxs)(`p`,{className:`leading-relaxed`,children:[(0,Q.jsx)(`span`,{title:e.actionTitle,children:d}),e.info&&(0,Q.jsxs)(`span`,{className:`ml-1 text-muted-foreground`,children:[`(`,e.info,`)`]}),s&&(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`span`,{className:`mx-1 text-muted-foreground`,children:e.join}),o.startsWith(`#/`)?(0,Q.jsx)(z,{className:`font-medium hover:underline`,to:o.slice(1),children:e.object}):(0,Q.jsx)(`a`,{className:`font-medium hover:underline`,href:o,rel:`noopener noreferrer`,target:`_blank`,children:e.object})]}),l&&(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`span`,{className:`mx-1 text-muted-foreground`,children:e.join}),(0,Q.jsx)(`button`,{className:`cursor-pointer text-left font-medium hover:underline`,type:`button`,onClick:()=>r(e.email),children:l})]})]}),e.description&&(0,Q.jsx)(`p`,{className:`break-all text-muted-foreground`,title:e.description,children:e.description})]})]})}),(0,Q.jsx)(N,{className:`w-40 py-4 text-left whitespace-nowrap text-muted-foreground`,children:f?.isValid()?(0,Q.jsx)(`time`,{dateTime:f.toISOString(),children:f.format(`DD MMM YYYY HH:mm`)}):`—`})]})}var Ue=[`email_sent_event`,`email_delivered_event`,`email_opened_event`,`email_failed_event`,`email_complaint_event`],We=[{event:`signup_event`,name:`Signups`,group:`auth`,icon:`event-signed-up`},{event:`login_event`,name:`Logins`,group:`auth`,icon:`event-logged-in`},{event:`subscription_event`,name:`Paid subscriptions`,group:`payments`,icon:`event-subscriptions`},{event:`payment_event`,name:`Payments`,group:`payments`,icon:`event-subscriptions`},{event:`newsletter_event`,name:`Email subscriptions`,group:`emails`,icon:`event-subscribed-to-email`},{event:`email_opened_event`,name:`Email opened`,group:`emails`,icon:`event-opened-email`},{event:`email_delivered_event`,name:`Email received`,group:`emails`,icon:`event-received-email`},{event:`email_complaint_event`,name:`Email flagged as spam`,group:`emails`,icon:`event-email-delivery-spam`},{event:`email_failed_event`,name:`Email bounced`,group:`emails`,icon:`event-email-delivery-failed`},{event:`email_change_event`,name:`Email address changed`,group:`emails`,icon:`event-email-changed`},{event:`automated_email_sent_event`,name:`Welcome email received`,group:`emails`,icon:`event-sent-email`},{event:`feedback_event`,name:`Feedback`,group:`others`,icon:`event-more-like-this`}];function $(e){return[...new Set((e??``).split(`,`).filter(e=>/^[a-z_]+$/.test(e)))]}function Ge(e,t){let n=[`aggregated_click_event`];return(!t||e.editorDefaultEmailRecipients===`disabled`)&&n.push(...Ue),e.editorDefaultEmailRecipients===`disabled`&&n.push(`newsletter_event`),n}function Ke(e,t){let n=[...We];e.commentsEnabled!==`off`&&n.push({event:`comment_event`,name:`Comments`,group:`others`,icon:`event-comment`}),e.emailTrackClicks&&n.push({event:`click_event`,name:`Clicked link in email`,group:`others`,icon:`event-click`});let r=new Set(Ge(e,t));return n.filter(({event:e})=>!r.has(e))}function qe(e,t){let n=new Set($(t)),r=e===`subscription_event`?[e,`gift_redemption_event`,`gift_ended_event`]:e===`payment_event`?[e,`donation_event`,`gift_purchase_event`]:[e],i=n.has(e);for(let e of r)i?n.delete(e):n.add(e);return[...n].join(`,`)}function Je({settings:e,memberId:t,excluded:n}){let r=new Set([...$(n),...Ge(e,t)]);return r.has(`email_complaint_event`)&&r.add(`email_complained_event`),e.commentsEnabled===`off`&&r.add(`comment_event`),{memberId:t,excludedEvents:[...r]}}function Ye(){let[e,t]=s(),r=e.get(`member`)||void 0,i=e.get(`excludedEvents`),[a,o]=(0,q.useState)(null),u=(0,q.useRef)(null),f=ve({defaultErrorHandler:!1}),m=f.data?.settings??[],v={editorDefaultEmailRecipients:W(m,`editor_default_email_recipients`)??void 0,commentsEnabled:W(m,`comments_enabled`)??void 0,emailTrackClicks:W(m,`email_track_clicks`)??void 0},y=W(m,`paid_members_enabled`)??!1,x=he(r??``,{enabled:!!r,defaultErrorHandler:!1}),w=x.data?.members[0],T=!!r&&(x.error instanceof n&&x.error.response?.status===404||x.isSuccess&&!w),E=!!r&&x.isError&&!T,D=de({searchParams:{filter:`status:active`,limit:`1`}}),O=Ee({searchParams:{filter:`type:paid+active:true`,limit:`all`},enabled:y}),A=we({...Je({settings:v,memberId:r,excluded:i}),enabled:!!f.data&&!f.isError&&(!r||!!w),defaultErrorHandler:!1}),j=A.data?.events??[],N=Ke(v,r),P=$(i),F=N.filter(({event:e})=>!P.includes(e)),z=F.length===N.length?`All events`:F.length===1?F[0].name:F.length===0?`No events selected`:`${d(F.length)} events`,V=f.isLoading||!!r&&x.isLoading||A.isLoading,H=(n,r)=>{let i=new URLSearchParams(e);r?i.set(n,r):i.delete(n),t(i)};(0,q.useEffect)(()=>{let e=u.current;if(!e||!A.hasNextPage||A.isFetching||A.isError)return;let t=new IntersectionObserver(e=>{e.some(e=>e.isIntersecting)&&A.fetchNextPage()},{root:l(e),rootMargin:`250px`});return t.observe(e),()=>t.disconnect()},[A.hasNextPage,A.isFetching,A.isError,A.fetchNextPage]);let U=!!r||P.length>0;return(0,Q.jsxs)(p,{className:`size-full`,children:[(0,Q.jsx)(ee,{className:`relative h-full`,size:`page`,children:(0,Q.jsxs)(K,{"data-testid":`member-activity-page`,children:[(0,Q.jsx)(K.Header,{children:(0,Q.jsxs)(G,{blurredBackground:!1,sticky:!1,children:[(0,Q.jsx)(G.Left,{children:r?(0,Q.jsx)(oe,{children:(0,Q.jsxs)(ne,{children:[(0,Q.jsx)(re,{children:(0,Q.jsx)(ae,{asChild:!0,children:(0,Q.jsx)(c,{to:`/members-activity`,children:`Member activity`})})}),(0,Q.jsx)(ie,{}),(0,Q.jsx)(re,{children:(0,Q.jsx)(te,{className:`truncate`,children:w?R(w):`Member`})})]})}):(0,Q.jsx)(G.Title,{children:`Member activity`})}),(0,Q.jsx)(G.Actions,{className:`max-w-full min-w-0`,children:(0,Q.jsxs)(h,{className:`max-w-full min-w-0`,gap:`md`,wrap:!0,children:[!r&&(0,Q.jsx)(ze,{onSelect:e=>H(`member`,e)}),(0,Q.jsxs)(ge,{children:[(0,Q.jsx)(fe,{asChild:!0,children:(0,Q.jsxs)(S,{"aria-label":`Filter events`,variant:`outline`,children:[(0,Q.jsx)(C,{className:`size-4`}),z,(0,Q.jsx)(b,{className:`size-4 opacity-50`})]})}),(0,Q.jsx)(me,{align:`end`,className:`max-h-[70vh] w-64 max-w-[calc(100vw-2rem)] overflow-y-auto`,children:N.map((e,t)=>(0,Q.jsxs)(q.Fragment,{children:[t>0&&e.group!==N[t-1].group&&(0,Q.jsx)(pe,{}),(0,Q.jsxs)(Te,{checked:!P.includes(e.event),className:`gap-2 pr-8 pl-2 [&>span:first-child]:right-2 [&>span:first-child]:left-auto`,onCheckedChange:()=>H(`excludedEvents`,qe(e.event,i)),onSelect:e=>e.preventDefault(),children:[(0,Q.jsx)(je,{iconName:e.icon}),e.name]})]},e.event))})]})]})})]})}),(0,Q.jsxs)(K.Body,{children:[w&&(0,Q.jsxs)(h,{className:`py-6`,gap:`lg`,children:[(0,Q.jsx)(L,{...I(w),className:`size-12 min-w-12 [&_span]:text-lg`,src:w.avatar_image}),(0,Q.jsxs)(g,{className:`min-w-0`,gap:`none`,children:[(0,Q.jsx)(`h2`,{className:`truncate text-xl font-semibold`,children:R(w)}),w.name?.trim()&&(0,Q.jsx)(`p`,{className:`truncate text-muted-foreground`,children:w.email}),(0,Q.jsx)(c,{className:`mt-0.5 text-sm font-medium hover:underline`,to:`/members/${encodeURIComponent(w.id)}`,children:`View member profile →`})]})]}),f.isError?(0,Q.jsx)(k,{actions:(0,Q.jsx)(S,{variant:`outline`,onClick:()=>void f.refetch(),children:`Retry`}),role:`alert`,title:`Couldn’t load activity settings`}):T?(0,Q.jsx)(k,{actions:(0,Q.jsx)(S,{variant:`outline`,onClick:()=>H(`member`),children:`Clear member`}),description:`This member may have been deleted.`,role:`alert`,title:`Member not found`}):E?(0,Q.jsx)(k,{actions:(0,Q.jsx)(S,{variant:`outline`,onClick:()=>void x.refetch(),children:`Retry`}),role:`alert`,title:`Couldn’t load member`}):V?(0,Q.jsx)(h,{"aria-label":`Loading member activity`,className:`grow py-10`,justify:`center`,role:`status`,children:(0,Q.jsx)(B,{size:`lg`})}):(0,Q.jsxs)(Q.Fragment,{children:[j.length>0?(0,Q.jsx)(p,{className:`shrink-0 overflow-x-auto`,children:(0,Q.jsxs)(ue,{"aria-label":`Member activity`,className:`text-[13px]`,children:[(0,Q.jsx)(le,{children:(0,Q.jsxs)(se,{children:[!r&&(0,Q.jsx)(M,{className:`text-[13px]`,scope:`col`,children:`Member`}),(0,Q.jsx)(M,{className:`text-[13px]`,scope:`col`,children:`Event`}),(0,Q.jsx)(M,{className:`text-[13px]`,scope:`col`,children:`Time`})]})}),(0,Q.jsx)(ce,{children:j.map((t,n)=>{let i=Pe(t,{hasMultipleNewsletters:D.isError||(D.data?.meta?.pagination.total??0)>1,hasMultipleTiers:(O.data?.tiers.length??0)>1,paidMembersEnabled:y}),a=new URLSearchParams(e);return i.member?.id&&a.set(`member`,i.member.id),(0,Q.jsx)(He,{event:i,hideMember:!!r,memberHref:i.member?.id?`/members-activity?${a}`:void 0,onPreview:o},`${t.type}:${i.id??n}`)})})]})}):!A.isError&&(0,Q.jsx)(k,{actions:U?(0,Q.jsx)(S,{variant:`outline`,asChild:!0,children:(0,Q.jsx)(c,{to:`/members-activity`,children:`Show all activity`})}):void 0,className:`grow`,title:U?`No activities match the current filter`:`No member activity yet`,children:(0,Q.jsx)(_,{})}),A.isError&&(0,Q.jsx)(k,{actions:(0,Q.jsx)(S,{variant:`outline`,onClick:()=>void(A.isFetchNextPageError?A.fetchNextPage():A.refetch()),children:`Retry`}),role:`alert`,title:j.length?`Couldn’t load more activity`:`Couldn’t load member activity`}),A.isFetchingNextPage&&(0,Q.jsx)(h,{"aria-label":`Loading more activity`,className:`py-6`,justify:`center`,role:`status`,children:(0,Q.jsx)(B,{size:`md`})}),(0,Q.jsx)(p,{ref:u,className:`h-px`})]})]})]})}),!!a&&(0,Q.jsx)(Re,{email:a,onClose:()=>o(null)})]})}export{Ye as default};
@@ -0,0 +1 @@
1
+ import{s as e,t}from"./react-BXwhMTuc.js";import{t as n}from"./jsx-runtime-BlNNh7jY.js";import{x as r}from"./dist-BXHrDV19.js";import{A as i,At as a,Gt as o,It as s,Jn as c,Jt as l,Kt as u,Pr as d,Qt as f,Rn as p,Xt as m,Yt as h,et as g,g as _,k as v,qt as y,wr as b,yn as x}from"./button-DvIh2Bq-.js";import{t as S}from"./skeleton-DwCva0-b.js";import{n as C,t as w}from"./card-FHQ4D10L.js";import{t as T}from"./empty-indicator-L4Ql5Db7.js";import{v as E}from"./index-DDd-zhNL.js";t();var D=e(r(),1),O=new Set([`bif`,`clp`,`djf`,`gnf`,`jpy`,`kmf`,`krw`,`mga`,`pyg`,`rwf`,`ugx`,`vnd`,`vuv`,`xaf`,`xof`,`xpf`]);function k(e,t){let n=O.has(t.toLowerCase())?e:e/100,r=n%1==0;try{return new Intl.NumberFormat(`en-US`,{style:`currency`,currency:t.toUpperCase(),minimumFractionDigits:r?0:2,maximumFractionDigits:r?0:2}).format(n)}catch{return`${n}`}}function A(e){return e?.trim()||null}function j(e){let t;return e.type===`login_event`&&(t=`logged-in`),e.type===`payment_event`&&(t=`subscriptions`),e.type===`newsletter_event`&&(t=e.data.subscribed?`subscribed-to-email`:`unsubscribed-from-email`),e.type===`subscription_event`&&(t=`subscriptions`,e.data.type===`canceled`&&(t=`canceled-subscription`)),(e.type===`signup_event`||e.type===`subscription_event`&&e.data.type===`created`&&e.data.signup)&&(t=`signed-up`),e.type===`email_opened_event`&&(t=`opened-email`),(e.type===`email_sent_event`||e.type===`automated_email_sent_event`)&&(t=`sent-email`),e.type===`email_delivered_event`&&(t=`received-email`),e.type===`email_failed_event`&&(t=`email-delivery-failed`),e.type===`email_complaint_event`&&(t=`email-delivery-spam`),e.type===`comment_event`&&(t=`comment`),(e.type===`click_event`||e.type===`aggregated_click_event`)&&(t=`click`),e.type===`feedback_event`&&(t=e.data.score===1?`more-like-this`:`less-like-this`),e.type===`donation_event`&&(t=`subscriptions`),(e.type===`gift_purchase_event`||e.type===`gift_redemption_event`||e.type===`gift_ended_event`)&&(t=`gift`),e.type===`email_change_event`&&(t=`email-changed`),`event-${t}`}function M(e,t){if(e.type===`signup_event`||e.type===`subscription_event`&&e.data.type===`created`&&e.data.signup)return`signed up`;if(e.type===`login_event`)return`logged in`;if(e.type===`payment_event`)return`made payment`;if(e.type===`newsletter_event`){let n=e.data.newsletter,r=t&&n?.name?n.name:`newsletter`;return e.data.subscribed?`subscribed to ${r}`:`unsubscribed from ${r}`}if(e.type===`subscription_event`){let t=e.data.type;return t===`created`?`started paid subscription`:t===`canceled`?`canceled paid subscription`:t===`reactivated`?`reactivated paid subscription`:t===`expired`?`ended paid subscription`:`changed paid subscription`}if(e.type===`email_opened_event`)return`opened email`;if(e.type===`email_sent_event`)return`sent email`;if(e.type===`automated_email_sent_event`){let t=e.data.automatedEmail;if(t?.source!==`automation_action_revision`)return`received welcome email (${(t?.slug||``).includes(`paid`)?`Paid`:`Free`})`;let n=A(t.subject);return n?`received automated email: ${n}`:`received automated email`}if(e.type===`email_delivered_event`)return`received email`;if(e.type===`email_failed_event`)return`bounced email`;if(e.type===`email_complaint_event`)return`email flagged as spam`;if(e.type===`comment_event`)return e.data.parent?`replied to comment`:`commented`;if(e.type===`click_event`)return`clicked link in email`;if(e.type===`aggregated_click_event`){let t=e.data.count?.clicks??1;return t<=1?`clicked link in email`:`clicked ${t} links in email`}if(e.type===`feedback_event`)return e.data.score===1?`more like this`:`less like this`;if(e.type===`email_change_event`)return e.data.from_email&&e.data.to_email?`Email address changed from ${e.data.from_email} to ${e.data.to_email}`:`Email address changed`;if(e.type===`donation_event`)return`Made a one-time payment`;if(e.type===`gift_purchase_event`){let t=e.data.amount,n=e.data.currency,r=e.data.tier_name,i=e.data.duration,a=e.data.cadence;return typeof t==`number`&&n&&r&&typeof i==`number`&&a?`Purchased gift subscription for ${k(t,n)} (${r}, ${i} ${i===1?a:`${a}s`})`:`Purchased gift subscription`}if(e.type===`gift_redemption_event`)return`started gift subscription`;if(e.type===`gift_ended_event`)return`gift subscription expired`}function N(e,t){if(e.type===`automated_email_sent_event`){let t=e.data.automatedEmail;if(t?.source===`automation_action_revision`){let e=A(t.subject);return e?`received automated email: ${e}`:`received automated email`}}return M(e,t)}function P(e){if(e.type===`signup_event`||e.type===`subscription_event`||e.type===`donation_event`){let t=e.data.attribution;if(t?.title)return t.title}if(e.type===`comment_event`||e.type===`click_event`||e.type===`feedback_event`){let t=e.data.post;if(t?.title)return t.title}return``}function F(e){let t=e.data.attribution;return t?.referrer_source?{name:t.referrer_source,url:t.referrer_url??null}:null}function I(e,t){if(e.type===`signup_event`&&t.paidMembersEnabled){let t=e.data.created_with_status;return t&&t!==`free`?null:`Free`}if(e.type===`gift_redemption_event`)return e.data.tier_name??void 0}function L(e){if(e.type===`click_event`)return e.data.link?.to}function R(e){if(e.type===`comment_event`||e.type===`click_event`||e.type===`feedback_event`){let t=e.data.post;if(t?.url)return t.url}if(e.type===`signup_event`||e.type===`subscription_event`||e.type===`donation_event`){let t=e.data.attribution;if(t?.url)return t.url}}function z(e){if(e.type===`click_event`||e.type===`feedback_event`){let t=e.data.post;if(t?.id)return`#/posts/analytics/${t.id}`}if((e.type===`signup_event`||e.type===`subscription_event`)&&e.data.attribution_type===`post`&&e.data.attribution_id)return`#/posts/analytics/${e.data.attribution_id}`}function B(e,t){let n=A(e.data.member?.name),r=e.data.member?n||e.data.member.email||``:e.data.name||e.data.email||``,i=e.data.member?{...e.data.member,name:n??void 0}:e.data.member;return{id:e.data.id,memberId:e.data.member_id??e.data.member?.id,member:i,emailId:e.data.email_id,email:e.data.email,icon:j(e),subject:r,action:M(e,t.hasMultipleNewsletters),actionTitle:N(e,t.hasMultipleNewsletters),join:`–`,object:P(e),source:F(e),info:I(e,t),description:L(e),url:R(e),route:z(e),timestamp:e.data.created_at}}function V(e){return e?/^(https?:\/\/|\/|#\/)/i.test(e):!1}var H=n(),U=({iconName:e})=>{let t={className:`shrink-0 text-muted-foreground`,size:16};switch(e){case`event-signed-up`:return(0,H.jsx)(_,{...t});case`event-logged-in`:return(0,H.jsx)(f,{...t});case`event-subscriptions`:return(0,H.jsx)(p,{...t});case`event-canceled-subscription`:return(0,H.jsx)(c,{...t});case`event-subscribed-to-email`:return(0,H.jsx)(l,{...t});case`event-unsubscribed-from-email`:return(0,H.jsx)(m,{...t});case`event-opened-email`:return(0,H.jsx)(h,{...t});case`event-received-email`:return(0,H.jsx)(o,{...t});case`event-sent-email`:return(0,H.jsx)(g,{...t});case`event-email-delivery-failed`:return(0,H.jsx)(u,{...t});case`event-email-delivery-spam`:return(0,H.jsx)(y,{...t});case`event-email-changed`:return(0,H.jsx)(b,{...t});case`event-comment`:return(0,H.jsx)(s,{...t});case`event-click`:return(0,H.jsx)(a,{...t});case`event-more-like-this`:return(0,H.jsx)(v,{...t});case`event-less-like-this`:return(0,H.jsx)(i,{...t});case`event-gift`:return(0,H.jsx)(x,{...t});default:return(0,H.jsx)(d,{...t})}},W=({memberId:e})=>(0,H.jsx)(`a`,{className:`block pt-3 font-medium text-primary hover:underline`,"data-testid":`member-activity-view-all`,href:`#/members-activity?member=${e}`,children:`View all member activity →`}),G=`All events related to this member will be shown here.`,K=e=>e?e.charAt(0).toUpperCase()+e.slice(1):``;function q(e){if(e&&typeof e==`object`){let t=e.subject;return t?`“${t}”`:`Email`}}var J=({event:e})=>{if(!e.action)return null;let t=q(e.email),n=e.object&&(e.route||V(e.url)),r=!n&&t,i=e.timestamp?(0,D.default)(e.timestamp).fromNow():`—`;return(0,H.jsxs)(`div`,{className:`flex items-start gap-3 py-3`,"data-testid":`member-activity-event`,children:[(0,H.jsx)(`div`,{className:`flex size-8 shrink-0 items-center justify-center rounded-full bg-muted`,children:(0,H.jsx)(U,{iconName:e.icon})}),(0,H.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-0.5`,children:[(0,H.jsxs)(`div`,{className:`text-sm leading-snug`,children:[(0,H.jsx)(`span`,{"data-testid":`member-activity-action`,children:K(e.action)}),e.info&&(0,H.jsxs)(`span`,{className:`ml-1 text-muted-foreground`,children:[`(`,e.info,`)`]}),n&&(0,H.jsxs)(H.Fragment,{children:[(0,H.jsx)(`span`,{className:`mx-1 text-muted-foreground`,children:e.join}),e.route?(0,H.jsx)(`a`,{className:`hover:underline`,href:e.route,children:e.object}):(0,H.jsx)(`a`,{className:`hover:underline`,href:e.url,rel:`noopener noreferrer`,target:`_blank`,children:e.object})]}),r&&(0,H.jsxs)(H.Fragment,{children:[(0,H.jsx)(`span`,{className:`mx-1 text-muted-foreground`,children:e.join}),(0,H.jsx)(`span`,{className:`text-muted-foreground`,children:t})]})]}),e.description&&(0,H.jsx)(`div`,{className:`truncate text-xs text-muted-foreground`,children:e.description}),(0,H.jsx)(`div`,{className:`text-xs text-muted-foreground`,children:i})]})]})},Y=({memberId:e,hasMultipleNewsletters:t,hasMultipleTiers:n,paidMembersEnabled:r})=>{let{data:i,isLoading:a}=E(e??``,{limit:`5`,enabled:!!e}),o=(i?.events??[]).map(e=>B(e,{hasMultipleNewsletters:t,hasMultipleTiers:n,paidMembersEnabled:r})),s=new Set;return e?(0,H.jsxs)(`section`,{"aria-labelledby":`member-activity-heading`,className:`flex flex-col gap-3`,children:[(0,H.jsx)(`h3`,{className:`text-base font-semibold`,id:`member-activity-heading`,children:`Activity`}),(0,H.jsx)(w,{children:(0,H.jsxs)(C,{className:`pt-3`,children:[a?(0,H.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,H.jsx)(S,{className:`h-10`}),(0,H.jsx)(S,{className:`h-10`}),(0,H.jsx)(S,{className:`h-10`})]}):o.length===0?(0,H.jsx)(`p`,{className:`py-4 text-center text-sm text-muted-foreground`,"data-testid":`member-activity-empty`,children:`No activity yet`}):(0,H.jsx)(`div`,{className:`divide-y divide-border`,children:o.map(e=>{let t=e.id||`${e.timestamp??`?`}-${e.icon}-${e.action}`,n=t,r=1;for(;s.has(n);)n=`${t}#${r}`,r+=1;return s.add(n),(0,H.jsx)(J,{event:e},n)})}),!a&&o.length>0&&(0,H.jsx)(W,{memberId:e})]})})]}):(0,H.jsxs)(`section`,{"aria-labelledby":`member-activity-heading`,className:`flex flex-col gap-3`,children:[(0,H.jsx)(`h3`,{className:`text-base font-semibold`,id:`member-activity-heading`,children:`Activity`}),(0,H.jsx)(w,{children:(0,H.jsx)(C,{className:`pt-6`,children:(0,H.jsx)(`div`,{className:`flex flex-col items-center gap-3 py-4`,children:(0,H.jsx)(T,{description:G,title:`Activity`,children:(0,H.jsx)(d,{})})})})})]})};export{B as i,Y as n,V as r,U as t};
@@ -0,0 +1 @@
1
+ import{n as e,r as t}from"./hooks-DYfTEQLk.js";import{c as n,g as r,m as i,p as a,t as o}from"./schemas-BoYdB6YU.js";var s=[`short_text`,`long_text`,`address`],c={short_text:null,long_text:null,address:{line1:`short_text`,line2:`short_text`,city:`short_text`,state:`short_text`,postal_code:`postal_code`,country:`country_code`}};function l(e){let t=c[e];return t?Object.keys(t):null}function u(e){let t=c[e];return t?{...t}:null}o(s),o([`none`,`read`,`write`]);var d=65535,f=e=>new TextEncoder().encode(e).length,p=()=>i({error:`Enter text.`}).trim(),m=()=>p().refine(e=>f(e)<=d,{error:`This text is too long to save. Shorten it a little.`}),h={short_text:p().max(255,{error:`Use 255 characters or fewer.`}),postal_code:p().max(32,{error:`Use 32 characters or fewer.`}),country_code:p().regex(/^[A-Za-z]{2}$/,{error:`Enter a 2-letter country code, like US.`}).toUpperCase()},g=h,_=e=>p().pipe(r([n(``),e])).optional();function v(e){return e}function y(e,{error:t}){let n=c[e];return{kind:`record`,value:a(Object.fromEntries(Object.entries(n).map(([e,t])=>[e,_(g[t])]))).refine(e=>Object.values(e).some(e=>typeof e==`string`),{error:t})}}var b=v({short_text:{kind:`text`,value:h.short_text},long_text:{kind:`text`,value:m()},address:y(`address`,{error:`Enter at least one part of the address.`})});b.address.value;var x=`metafields`,S=/^[a-z0-9_]+$/;function C({namespace:e,key:t,partPath:n}){let r=`${e}.${t}`;return n?`${r}.${n}`:r}function w(e){let[t,n,...r]=e.split(`.`);return t===void 0||n===void 0||![t,n,...r].every(e=>S.test(e))?null:{namespace:t,key:n,partPath:r.length>0?r.join(`.`):null}}var T=`${x}.`;function E(e){return C({namespace:e.namespace,key:e.key,partPath:null})}function D(e){let t=`${T}${E(e)}`,n=l(e.type);return n?n.map(e=>({column:`${t}.${e}`,subField:e})):[{column:t,subField:null}]}function O(e){return e===`metafields`||e.startsWith(T)}var k=[{value:`none`,label:`Only staff`,description:`Members never see this field or what you record in it`},{value:`read`,label:`Members can view`,description:`Shown in their account, but only staff can change it`},{value:`write`,label:`Members can edit`,description:`Members fill this in and keep it up to date themselves`}],A=e=>k.find(t=>t.value===e)?.label??e,j={short_text:{label:`Short text`,input:`text`},long_text:{label:`Long text`,input:`textarea`},address:{label:`Address`,input:`address`,subFields:{line1:`Address line 1`,line2:`Address line 2`,city:`City`,state:`State`,postal_code:`Postal code`,country:`Country`}}},M=e=>j[e]?.subFields??{},N=s.map(e=>({id:e,...j[e]})),P=e=>N.find(t=>t.id===e)||N[0],F=e=>P(e.type),I=e=>e.flatMap(e=>{let t=M(e.type);return D({namespace:e.namespace,key:e.key,type:e.type}).map(({column:n,subField:r})=>{let i=r===null?void 0:t[r];return{value:n,fieldName:e.name,...i===void 0?{}:{partLabel:i},label:i===void 0?e.name:`${e.name} (${i})`,type:e.type}})}),L=e=>{let t=l(e),n=u(e);if(!t||!n)return null;let r=M(e);return t.map(e=>({key:e,label:r[e],type:n[e]}))},R=e=>typeof e==`object`&&!!e&&!Array.isArray(e),z={address:[[`state`,`postal_code`]]};function B(e){let t=l(e);if(!t)return[];let n=new Map;(z[e]??[]).forEach((e,t)=>{e.forEach(e=>n.set(e,t))});let r=[],i;for(let e of t){let t=n.get(e);if(t!==void 0&&t===i){r[r.length-1].push(e);continue}r.push([e]),i=t}return r}var V=Object.fromEntries(s.map(e=>[e,B(e)])),H=(e,t)=>l(e)===null?typeof t==`string`?t:``:R(t)?(V[e]??[]).map(e=>e.map(e=>t[e]).filter(e=>typeof e==`string`&&e!==``).join(` `)).filter(Boolean).join(`, `):``,U=e=>b[e].kind,W=`MemberCustomFieldsResponseType`,G=W,K=t({dataType:W,path:`/members/metafields/custom/`,returnData:e=>e.members_metafields}),q=e=>K({...e,searchParams:{filter:`status:[active,archived]`}}),J=e({method:`POST`,path:()=>`/members/metafields/custom/`,body:e=>({members_metafields:[e]}),invalidateQueries:{dataType:W},updateQueries:{dataType:W,emberUpdateType:`skip`,update:(e,t)=>{let n=t;if(!n?.members_metafields)return t;let r=e.members_metafields.filter(e=>!n.members_metafields.some(t=>t.key===e.key));return{...n,members_metafields:[...n.members_metafields,...r]}}}}),Y=e({method:`PUT`,path:e=>`/members/metafields/custom/${e.key}/`,body:({key:e,...t})=>({members_metafields:[t]}),invalidateQueries:{dataType:W}}),X=e({method:`PUT`,path:()=>`/members/metafields/custom/`,body:e=>({members_metafields:e.map(({key:e})=>({key:e}))}),updateQueries:{dataType:W,emberUpdateType:`skip`,update:(e,t)=>{let n=t;if(!n?.members_metafields)return t;let r=e.members_metafields.map(({key:e})=>e);return{...n,members_metafields:Z(r,n.members_metafields)}}}}),Z=(e,t)=>{let n=new Map(e.map((e,t)=>[e,t]));return[...t].sort((e,t)=>(n.get(e.key)??1/0)-(n.get(t.key)??1/0))},Q=e({method:`DELETE`,path:e=>`/members/metafields/custom/${e}/`,invalidateQueries:{dataType:W}});export{P as _,I as a,w as b,N as c,q as d,J as f,F as g,X as h,A as i,G as l,Y as m,H as n,U as o,Q as p,Z as r,L as s,k as t,K as u,O as v,b as x,C as y};
@@ -0,0 +1 @@
1
+ import{s as e,t}from"./react-BXwhMTuc.js";import{s as n}from"./framework-provider-DB-svAju.js";import{o as r}from"./hooks-DYfTEQLk.js";import{t as i}from"./jsx-runtime-BlNNh7jY.js";import{n as a}from"./dist-DziNzWI2.js";import{i as o}from"./currency-Dy4Tc2R2.js";import{h as s,n as c,u as l}from"./chunk-KS7C4IRE-DhOcHQOU.js";import{a as u}from"./router-provider-CU87qxXw.js";import{l as d,x as f}from"./dist-BXHrDV19.js";import{t as p}from"./box-CZ_LSVSy.js";import{t as m}from"./container-DAimjOF_.js";import{Kt as h,On as g,Pn as _,Rn as v,Rt as y,Ut as ee,ft as te,g as b,jn as ne,nr as x,t as S,vn as re,xt as ie}from"./button-DvIh2Bq-.js";import{t as C}from"./switch-zfUUy9Jh.js";import{i as ae,n as oe,o as se,s as w,t as T}from"./select-CKaC4ggu.js";import{t as ce}from"./skeleton-DwCva0-b.js";import{t as E}from"./badge-qP06OT7C.js";import{a as le,i as ue,n as de,o as fe,r as pe,t as me}from"./breadcrumb-Chn1Ip_q.js";import{n as D,t as O}from"./card-FHQ4D10L.js";import{t as k}from"./empty-indicator-L4Ql5Db7.js";import{t as A}from"./label-CgeBxy4o.js";import{n as he,o as j,t as ge}from"./input-group-CLIN2ykI.js";import{t as _e}from"./textarea-B4FffFmE.js";import{i as ve}from"./users-C60_hpn6.js";import{r as ye}from"./newsletters-Dz77m__5.js";import{Ar as M,C as be,F as xe,Kn as Se,N as Ce,Or as N,Qn as P,S as F,Sr as we,Xn as I,Zn as L,_ as Te,_r as R,ar as z,b as Ee,bi as B,br as De,d as Oe,er as ke,f as Ae,fr as V,gr as H,h as je,hr as U,ir as Me,li as Ne,m as Pe,mr as W,nr as Fe,o as Ie,p as G,pi as Le,rr as Re,tr as ze,vr as K,wr as q,y as Be,yi as Ve}from"./index-DDd-zhNL.js";import{t as He}from"./page-header-B-G_g42C.js";import{t as Ue}from"./dirty-confirm-dialog-DWwxREGh.js";import{a as We}from"./tiers-6mPzCXlM.js";import{t as J}from"./detail-page-QpLIL-EO.js";import{t as Ge}from"./validator-DlFQP70j.js";import{n as Ke,t as qe}from"./use-unsaved-changes-guard-CKVPWz_F.js";import{n as Je,r as Ye}from"./member-activity-feed-BQY5Rwaj.js";import{g as Xe,n as Ze,s as Qe,x as $e}from"./member-custom-fields-Dd_ie1zG.js";import{i as et,n as tt,r as nt}from"./label-picker-DGDp4Vwr.js";var Y=e(t(),1),rt=new Set([`active`,`trialing`,`unpaid`,`past_due`]);function it(e){return(e.subscriptions??[]).some(e=>rt.has(e.status))}function at(e){return e?`Delete member + Cancel subscription`:`Delete member`}var X=i(),ot=({open:e,onOpenChange:t,member:n,allowLeaveWithUnsavedChanges:r})=>{let i=u(),o=Oe(),[s,c]=Y.useState(!1);Y.useEffect(()=>{e&&c(!1)},[e]);let l=it(n),d=n.email||n.name||`this member`,f=async()=>{try{let e=l&&s;await o.mutateAsync({id:n.id,cancel:e}),a.success(e?`${d} was deleted and their Stripe subscription was cancelled.`:`${d} was deleted.`),t(!1),r(),i(`/members`)}catch{a.error(`Couldn’t delete the member. Please try again.`)}};return(0,X.jsx)(V,{open:e,onOpenChange:e=>{o.isPending||t(e)},children:(0,X.jsxs)(W,{"data-testid":`delete-member-modal`,children:[(0,X.jsxs)(R,{children:[(0,X.jsx)(K,{children:`Delete member account`}),(0,X.jsxs)(U,{children:[`Permanently delete `,(0,X.jsx)(`strong`,{children:d}),` from Ghost.`]})]}),l&&(0,X.jsxs)(`div`,{className:`flex items-start justify-between gap-4`,children:[(0,X.jsxs)(`div`,{className:`flex flex-col gap-0.5`,children:[(0,X.jsx)(`h4`,{className:`text-sm font-medium`,children:`Also cancel subscription in Stripe`}),(0,X.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`If disabled, the member’s premium subscription will continue`})]}),(0,X.jsx)(C,{"aria-label":`Also cancel subscription in Stripe`,checked:s,"data-testid":`delete-member-cancel-stripe`,disabled:o.isPending,onCheckedChange:c})]}),(0,X.jsxs)(H,{children:[(0,X.jsx)(S,{"data-testid":`cancel-delete-member`,disabled:o.isPending,variant:`outline`,onClick:()=>t(!1),children:`Cancel`}),(0,X.jsx)(S,{"data-testid":`confirm-delete-member`,disabled:o.isPending,variant:`destructive`,onClick:()=>void f(),children:o.isPending?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(I,{size:`sm`}),(0,X.jsx)(`span`,{className:`sr-only`,children:`Deleting`})]}):at(s&&l)})]})]})})},st=`Disabled from member settings`,ct=({open:e,onOpenChange:t,member:n})=>{let r=Ae(),[i,o]=Y.useState(!1);Y.useEffect(()=>{e&&o(!1)},[e]);let s=n.name||n.email||`this member`,c=async()=>{try{await r.mutateAsync({id:n.id,reason:st,hideComments:i})}catch{a.error(`Couldn’t disable commenting. Please try again.`);return}a.success(`Commenting has been disabled for ${s}.`),t(!1)};return(0,X.jsx)(V,{open:e,onOpenChange:e=>{r.isPending||t(e)},children:(0,X.jsxs)(W,{"data-testid":`disable-commenting-modal`,children:[(0,X.jsxs)(R,{children:[(0,X.jsx)(K,{children:`Disable commenting`}),(0,X.jsxs)(U,{children:[(0,X.jsx)(`strong`,{children:s}),` won’t be able to comment in the future. You can re-enable commenting anytime.`]})]}),(0,X.jsxs)(`div`,{className:`flex items-start justify-between gap-4`,children:[(0,X.jsx)(`div`,{className:`flex flex-col gap-0.5`,children:(0,X.jsx)(`h4`,{className:`text-sm font-medium`,children:`Hide all previous comments`})}),(0,X.jsx)(C,{"aria-label":`Hide all previous comments`,checked:i,"data-testid":`disable-commenting-hide-comments`,disabled:r.isPending,onCheckedChange:o})]}),(0,X.jsxs)(H,{children:[(0,X.jsx)(S,{"data-testid":`cancel-disable-commenting`,disabled:r.isPending,variant:`outline`,onClick:()=>t(!1),children:`Cancel`}),(0,X.jsx)(S,{"data-testid":`confirm-disable-commenting`,disabled:r.isPending,onClick:()=>void c(),children:r.isPending?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(I,{size:`sm`}),(0,X.jsx)(`span`,{className:`sr-only`,children:`Disabling`})]}):`Disable commenting`})]})]})})},lt=({open:e,onOpenChange:t,memberId:r})=>{let i=n();Y.useEffect(()=>{e&&i.removeQueries({queryKey:[`MemberSigninUrlResponseType`]})},[e,i]);let{data:o,isFetching:s,isError:c}=Ee(r,{enabled:e,defaultErrorHandler:!1}),l=o?.url??``,u=c||!s&&!c&&!l,[d,f]=Y.useState(!1),p=Y.useRef(null),m=Y.useCallback(()=>{p.current!==null&&(clearTimeout(p.current),p.current=null)},[]);Y.useEffect(()=>{e||(m(),f(!1))},[e,m]),Y.useEffect(()=>m,[m]);let h=async()=>{try{await navigator.clipboard.writeText(l),f(!0),m(),p.current=setTimeout(()=>{f(!1),p.current=null},1e3)}catch{a.error(`Couldn’t copy the impersonation link`)}};return(0,X.jsx)(V,{open:e,onOpenChange:t,children:(0,X.jsxs)(W,{"data-testid":`impersonate-modal`,children:[(0,X.jsxs)(R,{children:[(0,X.jsx)(K,{children:`Impersonate member`}),(0,X.jsx)(U,{children:`A single-use signin link that works for 24 hours. Anyone with the link can sign in as this member.`})]}),(0,X.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,X.jsx)(A,{htmlFor:`member-signin-url`,children:`Signin link`}),(0,X.jsx)(L,{"data-testid":`member-signin-url`,id:`member-signin-url`,value:s?`Generating link…`:u?`Failed to generate link`:l,readOnly:!0})]}),(0,X.jsxs)(H,{children:[(0,X.jsx)(S,{variant:`outline`,onClick:()=>t(!1),children:`Close`}),(0,X.jsx)(S,{disabled:s||u||!l,onClick:()=>void h(),children:s?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(I,{size:`sm`}),(0,X.jsx)(`span`,{className:`sr-only`,children:`Generating link`})]}):d?`Copied`:`Copy link`})]})]})})},ut=({open:e,onOpenChange:t,member:n})=>{let r=Be(),i=n.name||n.email||`This member`,o=async()=>{try{await r.mutateAsync({id:n.id}),a.success(`${i} has been signed out from all devices.`),t(!1)}catch{a.error(`Couldn’t sign the member out. Please try again.`)}};return(0,X.jsx)(P,{open:e,onOpenChange:e=>{r.isPending||t(e)},children:(0,X.jsxs)(ze,{"data-testid":`logout-member-modal`,children:[(0,X.jsxs)(Me,{children:[(0,X.jsx)(z,{children:`Sign out member from all devices?`}),(0,X.jsxs)(Fe,{children:[(0,X.jsx)(`strong`,{children:i}),` will be signed out of all active sessions, and will need to sign in again upon return.`]})]}),(0,X.jsxs)(Re,{children:[(0,X.jsx)(ke,{disabled:r.isPending,children:`Cancel`}),(0,X.jsx)(S,{"data-testid":`confirm-logout-member`,disabled:r.isPending,variant:`destructive`,onClick:()=>void o(),children:r.isPending?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(I,{size:`sm`}),(0,X.jsx)(`span`,{className:`sr-only`,children:`Signing out`})]}):`Sign out`})]})]})})};function dt(e){return e.can_comment===!1}function ft(e){return dt(e)?`Enable commenting`:`Disable commenting`}var pt=({member:e,allowLeaveWithUnsavedChanges:t})=>{let{data:n}=r(),[i,o]=Y.useState(!1),[s,c]=Y.useState(!1),[l,u]=Y.useState(!1),[d,f]=Y.useState(!1),p=je(),m=F(),h=p.isPending||p.isSuccess&&m,g=dt(e),v=ft(e),y=e.name||e.email||`this member`;if(!n||!ve(n))return null;let ee=async()=>{if(!g){u(!0);return}try{await p.mutateAsync({id:e.id}),a.success(`Commenting has been enabled for ${y}.`)}catch{a.error(`Couldn’t enable commenting. Please try again.`)}};return(0,X.jsxs)(X.Fragment,{children:[(0,X.jsxs)(De,{children:[(0,X.jsx)(M,{asChild:!0,children:(0,X.jsx)(S,{"aria-label":`Actions`,className:`size-(--control-height)`,"data-testid":`member-actions`,size:`icon`,variant:`outline`,children:(0,X.jsx)(_,{size:16})})}),(0,X.jsxs)(we,{align:`end`,children:[(0,X.jsx)(q,{"data-testid":`member-actions-impersonate`,onSelect:()=>o(!0),children:`Impersonate`}),(0,X.jsx)(q,{"data-testid":`member-actions-logout`,onSelect:()=>c(!0),children:`Sign out of all devices`}),(0,X.jsx)(q,{"data-testid":`member-actions-commenting`,disabled:h,onSelect:()=>void ee(),children:v}),(0,X.jsx)(N,{}),(0,X.jsx)(q,{className:`text-destructive focus:text-destructive`,"data-testid":`member-actions-delete`,onSelect:()=>f(!0),children:`Delete member`})]})]}),(0,X.jsx)(lt,{memberId:e.id,open:i,onOpenChange:o}),(0,X.jsx)(ut,{member:e,open:s,onOpenChange:c}),(0,X.jsx)(ct,{member:e,open:l,onOpenChange:u}),(0,X.jsx)(ot,{allowLeaveWithUnsavedChanges:t,member:e,open:d,onOpenChange:f})]})},Z=e(f(),1),mt=e(Ge(),1),ht=Qe(`address`)??[];function Q(e){return{name:(e.name??``).trim(),email:(e.email??``).trim(),note:e.note??``,labels:(e.labels??[]).map(e=>({name:e.name,slug:e.slug})).sort((e,t)=>e.slug<t.slug?-1:+(e.slug>t.slug)),newsletters:(e.newsletters??[]).map(e=>e.id).sort()}}function gt(e){let t={};for(let[n,r]of Object.entries(e??{}))for(let[e,i]of Object.entries(r??{}))t[`${n}.${e}`]=i;let n={};for(let[e,r]of Object.entries(t))if(typeof r==`string`&&r.trim()!==``)n[e]=r.trim();else if(typeof r==`object`&&r&&!Array.isArray(r)){let t=vt(r);t&&(n[e]=t)}return n}function _t(e){let t={};for(let{key:n}of ht){let r=e[n];typeof r==`string`&&(t[n]=r.trim())}return Object.values(t).some(e=>e!==``)?t:void 0}function vt(e){let t={};for(let{key:n}of ht){let r=e[n];typeof r==`string`&&r.trim()!==``&&(t[n]=r.trim())}return Object.keys(t).length?t:void 0}function yt(e,t){return e.includes(t)?e.filter(e=>e!==t):[...e,t].sort()}function bt(e,t){let n=e.trim();return t!==void 0&&n===t.trim()?!0:mt.default.isEmail(n)}function xt(e,t,n){return t?e.trim()===``?`Email is required.`:bt(e,n)?null:`Invalid email.`:null}function St(e){if(!e?.suppressed)return null;let t=e.info;if(!t)return{label:null};let{reason:n,timestamp:r}=t,i=(0,Z.default)(new Date(r)).format(`D MMM YYYY`);switch(n){case`fail`:return{reason:n,label:`Bounced on ${i}`};case`spam`:return{reason:n,label:`Flagged as spam on ${i}`};default:return{reason:n,label:`Email disabled on ${i}`}}}function Ct(e){return e?e.filter(e=>e.subscribe_on_signup===!0&&e.visibility===`members`).map(e=>e.id):[]}function wt(e){return 500-[...e].length}function Tt(e,t,n){let r=jt(t),i={id:e,name:r.name,email:r.email,note:r.note,labels:r.labels};return Ke(r.newsletters,n.newsletters)||(i.newsletters=r.newsletters.map(e=>({id:e}))),i}function Et(e){return typeof e==`string`?e.trim()||void 0:_t(e)}function Dt(e,t,n){return{id:e,metafields:{[t.namespace]:{[t.key]:Et(n)??null}}}}function Ot(e,t){let n={};for(let r of t){let t=e[r.key],i=t===void 0?void 0:Et(t);if(i===void 0)continue;let a=$e[r.type];if(!a)continue;let o=a.value.safeParse(i);if(!o.success)for(let e of o.error.issues){let t=[r.key,...e.path].join(`.`);n[t]??=e.message}}return n}function kt(e){let t=e?.data,n={};for(let e of t?.errors??[])e.property?.startsWith(`metafields.`)&&(n[e.property.slice(11)]=e.context||e.message||`Invalid value.`);return Object.keys(n).length?n:void 0}function At(e,t){return e.map(e=>t.get(e)??{name:e,slug:e})}function jt(e){return{name:e.name.trim(),email:e.email.trim(),note:e.note,labels:e.labels,newsletters:e.newsletters}}function Mt(e,t){return!e||!!t&&Ke(jt(e),t)}var Nt=({message:e})=>e?(0,X.jsx)(`p`,{className:`text-sm text-destructive`,role:`alert`,children:e}):null,Pt=({inputId:e,value:t,errors:n,disabled:r,onChange:i})=>(0,X.jsx)(`div`,{className:`grid gap-x-4 gap-y-3 md:grid-cols-2`,children:ht.map(({key:a,label:o})=>{let s=`${e}-${a}`,c=n?.[a];return(0,X.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,X.jsx)(A,{htmlFor:s,children:o}),(0,X.jsx)(L,{"aria-invalid":c?!0:void 0,disabled:r,id:s,value:t[a]??``,onChange:e=>i({...t,[a]:e.target.value})}),(0,X.jsx)(Nt,{message:c})]},a)})});function Ft(e){return null}var It=({field:e,inputId:t,value:n,errors:r,disabled:i,onChange:a})=>{let o=r?.[``],{input:s}=Xe(e);switch(s){case`text`:return(0,X.jsx)(L,{"aria-invalid":o?!0:void 0,disabled:i,id:t,value:typeof n==`string`?n:``,onChange:e=>a(e.target.value)});case`textarea`:return(0,X.jsx)(_e,{"aria-invalid":o?!0:void 0,className:`max-w-full resize-y`,disabled:i,id:t,value:typeof n==`string`?n:``,onChange:e=>a(e.target.value)});case`address`:return(0,X.jsx)(Pt,{disabled:i,errors:r,inputId:t,value:typeof n==`object`&&n?n:{},onChange:a});default:return Ft(s)}},Lt=({memberId:e,field:t,initialValue:n,onClose:r})=>{let i=Xe(t).input===`address`,[o,s]=Y.useState(n??(i?{}:``)),[c,l]=Y.useState(!1),[u,d]=Y.useState(),f=G(),p=Ot({[t.key]:o},[t]),m={...c?p:{},...u},h=Object.fromEntries(Object.entries(m).map(([e,n])=>[e===`${t.namespace}.${t.key}`?``:e.slice(`${t.namespace}.${t.key}`.length+1),n])),g=`member-custom-field-${t.key}`,_=!Ke(gt({[t.namespace]:{[t.key]:o}}),gt({[t.namespace]:{[t.key]:n}}));return(0,X.jsx)(V,{open:!0,onOpenChange:e=>{!e&&!f.isPending&&r()},children:(0,X.jsxs)(W,{"data-testid":`member-custom-field-edit-modal`,onEscapeKeyDown:e=>{(_||f.isPending)&&e.preventDefault()},onInteractOutside:e=>{(_||f.isPending)&&e.preventDefault()},children:[(0,X.jsx)(R,{children:(0,X.jsx)(K,{children:t.name})}),(0,X.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[!i&&(0,X.jsx)(A,{className:`sr-only`,htmlFor:g,children:t.name}),(0,X.jsx)(It,{disabled:f.isPending,errors:h,field:t,inputId:g,value:o,onChange:e=>{d(void 0),s(e)}}),(0,X.jsx)(Nt,{message:h[``]})]}),(0,X.jsxs)(H,{children:[(0,X.jsx)(S,{disabled:f.isPending,variant:`outline`,onClick:r,children:`Cancel`}),(0,X.jsx)(S,{className:`min-w-16`,disabled:f.isPending,onClick:()=>{if(!f.isPending){if(!_){r();return}if(Object.keys(p).length>0){l(!0);return}f.mutate(Dt(e,t,o),{onSuccess:()=>{a.success(`${t.name} saved`),r()},onError:e=>{let n=kt(e);d(n),n||a.error(`${t.name} couldn’t be saved`)}})}},children:f.isPending?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(I,{size:`sm`}),(0,X.jsx)(`span`,{className:`sr-only`,children:`Saving`})]}):`Save`})]})]})})},Rt=({memberId:e,metafields:t,disabled:n})=>{let{data:r,isLoading:i}=et(),a=r??[],o=gt(t),[s,c]=Y.useState(null);return i||a.length===0?null:(0,X.jsxs)(`section`,{"aria-labelledby":`member-custom-fields-heading`,className:`flex flex-col gap-3`,"data-testid":`member-custom-fields-field`,children:[(0,X.jsx)(`h3`,{className:`text-base font-semibold`,id:`member-custom-fields-heading`,children:`Custom fields`}),(0,X.jsx)(O,{children:(0,X.jsx)(D,{className:`px-6 py-4`,children:(0,X.jsx)(`ul`,{children:a.map(e=>{let t=Ze(e.type,o[`${e.namespace}.${e.key}`])||null;return(0,X.jsx)(`li`,{className:`border-b border-border transition-colors last:border-b-0 hover:border-b-transparent [&:has(+li:hover)]:border-b-transparent`,children:(0,X.jsxs)(`button`,{"aria-label":t?`Edit ${e.name}: ${t}`:`Edit ${e.name}`,className:`group -mx-3 flex w-[calc(100%+1.5rem)] items-center justify-between gap-4 rounded-md p-3 text-left transition-colors hover:bg-table-row-hover disabled:cursor-not-allowed disabled:opacity-50`,disabled:n,type:`button`,onClick:()=>{window.getSelection()?.toString()||c(e)},children:[(0,X.jsxs)(`span`,{className:`min-w-0`,children:[(0,X.jsx)(`span`,{className:`block text-sm text-muted-foreground`,children:e.name}),t?(0,X.jsx)(`span`,{className:`block break-words select-text`,children:t}):(0,X.jsx)(`span`,{className:`block text-muted-foreground`,children:`–`})]}),(0,X.jsx)(ie,{"aria-hidden":`true`,className:`shrink-0 text-muted-foreground opacity-0 transition-all group-hover:opacity-100 group-focus-visible:opacity-100`,size:16})]})},e.key)})})})}),s&&(0,X.jsx)(Lt,{field:s,initialValue:o[`${s.namespace}.${s.key}`],memberId:e,onClose:()=>c(null)},s.key)]})},zt=({labels:e,disabled:t,onChange:n})=>{let r=e.map(e=>e.slug),i=Y.useRef(e);i.current=e;let a=Y.useRef(new Map),o=e=>{for(let t of e)a.current.set(t.slug,{name:t.name,slug:t.slug})};o(e);let s=tt({selectedSlugs:r,onSelectionChange:e=>n(At(e,a.current))});o(s.labels);let c=async e=>{let t=await s.createLabel(e);if(t){let e={name:t.name,slug:t.slug};a.current.set(t.slug,e),n([...i.current.filter(e=>e.slug!==t.slug),e])}return t};return(0,X.jsx)(`div`,{className:t?`pointer-events-none opacity-60`:void 0,"data-testid":`member-labels-field`,...t?{inert:``}:{},children:(0,X.jsx)(nt,{isCreating:s.isCreating,labels:s.labels,optionSource:s.optionSource,placeholder:``,resolvedSelectedLabels:s.resolvedSelectedLabels,selectedSlugs:r,onCreate:c,onDelete:s.deleteLabel,onEdit:s.editLabel,onToggle:s.toggleLabel})})},Bt=({draft:e,emailError:t,disabled:n,onChange:r,onEmailBlur:i,onNameBlur:a})=>{let o=wt(e.note),s=500-o,c=o<0?`text-destructive`:s>=500*.8?`text-state-warning`:`text-state-success`;return(0,X.jsxs)(`div`,{className:`grid items-stretch gap-6 md:grid-cols-2`,"data-testid":`member-detail-form`,children:[(0,X.jsxs)(`div`,{className:`flex flex-col gap-5`,children:[(0,X.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,X.jsx)(A,{htmlFor:`member-name`,children:`Name`}),(0,X.jsx)(L,{disabled:n,id:`member-name`,value:e.name,onBlur:a,onChange:e=>r({name:e.target.value})})]}),(0,X.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,X.jsx)(A,{htmlFor:`member-email`,children:`Email`}),(0,X.jsx)(L,{"aria-invalid":!!t,disabled:n,id:`member-email`,type:`email`,value:e.email,onBlur:i,onChange:e=>r({email:e.target.value})}),t&&(0,X.jsx)(`p`,{className:`text-sm text-destructive`,children:t})]}),(0,X.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,X.jsx)(A,{children:`Labels`}),(0,X.jsx)(zt,{disabled:n,labels:e.labels,onChange:e=>r({labels:e})})]})]}),(0,X.jsxs)(`div`,{className:`flex min-h-0 flex-col gap-1.5`,children:[(0,X.jsxs)(A,{htmlFor:`member-note`,children:[`Note `,(0,X.jsx)(`span`,{className:`font-normal text-muted-foreground`,children:`(not visible to member)`})]}),(0,X.jsxs)(ge,{className:`flex-1`,children:[(0,X.jsx)(j,{className:`h-full`,disabled:n,id:`member-note`,value:e.note,onChange:e=>r({note:e.target.value})}),(0,X.jsx)(he,{align:`block-end`,className:`justify-end`,children:(0,X.jsxs)(`span`,{className:`text-sm text-muted-foreground`,children:[`Maximum: `,(0,X.jsx)(`span`,{className:`font-semibold text-foreground`,children:500}),` `,`characters. You’ve used`,` `,(0,X.jsx)(`span`,{className:d(`font-semibold`,c),children:s})]})})]})]})]})};function Vt(e){if(!e)return null;try{let t=JSON.parse(e);return t&&typeof t==`object`&&!Array.isArray(t)?t:null}catch{return null}}function Ht(e){let t=Vt(e);return t?t.country_code===`US`&&t.region?`${t.region}, US`:t.country||`Unknown location`:`Unknown location`}function Ut(e){let t=e?.referrer_source;return!t||t===`Created manually`?null:t}var Wt=e=>Z.default.utc(e).format(`D MMM YYYY`),$=({icon:e,children:t})=>(0,X.jsxs)(`p`,{className:`flex items-center gap-2 text-muted-foreground`,children:[(0,X.jsx)(`span`,{className:`shrink-0 text-muted-foreground`,children:e}),(0,X.jsx)(`span`,{className:`min-w-0 truncate`,children:t})]}),Gt=e=>e.split(` `)[0]||``,Kt=({member:e,draftName:t,draftEmail:n,engagementEnabled:r})=>{let i=(t??e?.name??``).trim(),a=(n??e?.email??``).trim(),o=i||a||`New member`,s=!e;return(0,X.jsxs)(`aside`,{className:`flex w-full shrink-0 flex-col gap-6 lg:w-80`,"data-testid":`member-detail-sidebar`,children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-3 py-4`,children:[(0,X.jsx)(Se,{className:`size-12 min-w-12 [&_span]:text-lg`,...xe({name:i,email:a}),src:e?.avatar_image}),(0,X.jsxs)(`div`,{className:`min-w-0`,children:[(0,X.jsx)(`h2`,{className:`truncate text-xl font-semibold`,children:o}),i&&a&&(0,X.jsx)(`a`,{className:`block truncate text-muted-foreground hover:underline`,href:`mailto:${a}`,children:a}),!i&&a&&(0,X.jsx)(`span`,{className:`block truncate text-muted-foreground`,children:a})]})]}),!s&&e&&(0,X.jsxs)(X.Fragment,{children:[(0,X.jsxs)(`div`,{className:`flex flex-col gap-2 text-sm`,children:[(0,X.jsx)($,{icon:(0,X.jsx)(ee,{size:16}),children:(0,X.jsx)(`span`,{"data-testid":`member-detail-location`,children:Ht(e.geolocation)})}),(0,X.jsx)($,{icon:(0,X.jsx)(ne,{size:16}),children:e.last_seen_at?`Last seen on ${Wt(e.last_seen_at)}`:`Not seen yet`}),e.can_comment===!1&&(0,X.jsx)($,{icon:(0,X.jsx)(y,{size:16}),children:`Comments disabled`})]}),(0,X.jsxs)(`div`,{className:`mt-4 flex flex-col gap-3 text-sm`,children:[(0,X.jsx)(`h3`,{className:`border-b border-border pb-2 text-base font-semibold`,children:`Signup info`}),(0,X.jsxs)($,{icon:(0,X.jsx)(b,{size:16}),children:[`Created — `,(0,X.jsx)(`span`,{className:`text-foreground`,children:Wt(e.created_at)})]}),(()=>{let t=Ut(e.attribution);return t?(0,X.jsxs)($,{icon:(0,X.jsx)(re,{size:16}),children:[`Source —`,` `,(0,X.jsx)(`span`,{className:`text-foreground`,title:t,children:t})]}):null})(),e.attribution?.title&&(0,X.jsxs)($,{icon:(0,X.jsx)(g,{size:16}),children:[`Page —`,` `,Ye(e.attribution.url)?(0,X.jsx)(`a`,{className:`truncate text-foreground hover:underline`,href:e.attribution.url,rel:`noopener noreferrer`,target:`_blank`,title:e.attribution.title,children:e.attribution.title}):(0,X.jsx)(`span`,{className:`truncate text-foreground`,title:e.attribution.title,children:e.attribution.title})]})]}),r&&(0,X.jsxs)(`section`,{className:`mt-4 flex flex-col gap-3 text-sm`,"data-testid":`member-detail-engagement`,children:[(0,X.jsx)(`h4`,{className:`border-b border-border pb-2 text-base font-semibold`,children:`Engagement`}),(e.email_count??0)===0?(0,X.jsx)(`p`,{className:`text-muted-foreground`,children:i?`We’ll show ${Gt(i)}’s email stats here once they receive their first newsletter.`:`We’ll show this member’s email stats here once they receive their first newsletter.`}):(0,X.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,X.jsxs)(`div`,{className:`flex flex-col gap-0.5`,children:[(0,X.jsx)(`p`,{className:`text-muted-foreground`,children:`Emails received`}),(0,X.jsx)(`p`,{className:`text-2xl font-semibold`,children:e.email_count})]}),(0,X.jsxs)(`div`,{className:`flex flex-col gap-0.5`,children:[(0,X.jsx)(`p`,{className:`text-muted-foreground`,children:`Emails opened`}),(0,X.jsx)(`p`,{className:`text-2xl font-semibold`,children:e.email_opened_count??0})]}),(0,X.jsxs)(`div`,{className:`flex flex-col gap-0.5`,children:[(0,X.jsx)(`p`,{className:`text-muted-foreground`,children:`Average open rate`}),e.email_open_rate===null||e.email_open_rate===void 0?(0,X.jsx)(`p`,{className:`text-muted-foreground`,children:`This metric is calculated once a member has received 5 newsletters.`}):(0,X.jsxs)(`p`,{className:`text-2xl font-semibold`,children:[e.email_open_rate,(0,X.jsx)(`span`,{className:`text-base font-normal text-muted-foreground`,children:`%`})]})]})]})]})]})]})},qt=({memberId:e,emailSuppression:t,subscribedIds:n,disabled:r,onChange:i})=>{let o=e?St(t):null,s=be(),{data:c,isLoading:l}=ye({searchParams:{filter:`status:active`,limit:`50`}}),u=c?.newsletters??[],d=F(),f=s.isPending||s.isSuccess&&d;return!o&&(l||u.length===0)?null:(0,X.jsxs)(`section`,{"aria-labelledby":`member-newsletters-heading`,className:`flex flex-col gap-3`,"data-testid":`member-newsletters-field`,children:[(0,X.jsx)(`h3`,{className:`text-base font-semibold`,id:`member-newsletters-heading`,children:`Newsletters`}),(0,X.jsx)(O,{children:(0,X.jsx)(D,{className:`p-6`,children:o?(0,X.jsxs)(`div`,{className:`flex items-center justify-between gap-4`,"data-testid":`member-suppression-banner`,children:[(0,X.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,X.jsx)(h,{className:`mt-0.5 shrink-0 text-muted-foreground`,size:20}),(0,X.jsxs)(`div`,{className:`min-w-0`,children:[(0,X.jsx)(`div`,{className:`font-medium`,children:`Email disabled`}),o.label&&(0,X.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:o.label}),(0,X.jsx)(`a`,{className:`text-sm text-muted-foreground hover:underline`,href:`https://ghost.org/help/disabled-emails`,rel:`noopener noreferrer`,target:`_blank`,children:`Learn more`})]})]}),(0,X.jsx)(S,{disabled:r||f,onClick:()=>{e&&s.mutate({id:e},{onSuccess:()=>a.success(`Email re-enabled successfully`),onError:()=>a.error(`Failed to re-enable email. Please try again.`)})},children:f?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(I,{size:`sm`}),(0,X.jsx)(`span`,{className:`sr-only`,children:`Re-enabling email`})]}):`Re-enable email`})]}):(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(`ul`,{className:`divide-y divide-border`,children:u.map(e=>{let t=n.includes(e.id);return(0,X.jsxs)(`li`,{className:`flex items-center justify-between gap-4 py-3 first:pt-0 last:pb-0`,children:[(0,X.jsxs)(`div`,{className:`min-w-0`,children:[(0,X.jsx)(`div`,{className:`font-medium`,children:e.name}),e.description&&(0,X.jsx)(`p`,{className:`truncate text-sm text-muted-foreground`,children:e.description})]}),(0,X.jsx)(C,{"aria-label":`Subscribe to ${e.name}`,checked:t,"data-testid":`member-subscription-toggle`,disabled:r,onCheckedChange:()=>i(yt(n,e.id))})]},e.id)})}),(0,X.jsxs)(`p`,{className:`mt-4 text-sm text-muted-foreground`,children:[`If disabled, member will `,(0,X.jsx)(`em`,{children:`not`}),` receive newsletter emails`]})]})})})]})},Jt=`complimentary`,Yt=`gift subscription`;function Xt(e){if(e.id)return`paid`;let t=e.plan?.nickname?.toLowerCase()??``;return t===Jt?`complimentary`:t===Yt?`gift`:`paid`}function Zt(e){return e===`year`?`yearly`:`monthly`}function Qt(e){if(e.trial_end_at&&(0,Z.default)(e.trial_end_at).isAfter(new Date,`day`))return`Free trial`;let t=e.price?.nickname;return t&&t!==`Monthly`&&t!==`Yearly`?t:null}function $t(e){return e.status===`canceled`||e.cancel_at_period_end?`Canceled`:`Active`}var en=e=>e?(0,Z.default)(new Date(e)).format(`D MMM YYYY`):``,tn=e=>e?(0,Z.default)(e).utc().format(`D MMM YYYY`):``;function nn(e){let t=Xt(e);if(t===`complimentary`||t===`gift`){let t=tn(e.tier?.expiry_at);return t?`Expires ${t}`:``}let n=e.status===`canceled`&&!e.cancel_at_period_end?``:en(e.current_period_end);return e.status===`canceled`?n?`Ended ${n}`:``:e.cancel_at_period_end?n?`Has access until ${n}`:``:e.trial_end_at&&(0,Z.default)(e.trial_end_at).isAfter(new Date,`day`)?`Ends ${en(e.trial_end_at)}`:n?`Renews ${n}`:``}function rn(e){let t=[],n=new Map;for(let r of e){if(!r.price)continue;let e=r.tier??r.price.tier;if(!e?.id)continue;let i=n.get(e.id);i||(i={tier:e,subscriptions:[]},n.set(e.id,i),t.push(i)),i.subscriptions.push(r)}return t}var an=[`forever`,`week`,`month`,`half-year`,`year`,`custom`];function on(e){return an.includes(e)}function sn(e,t){switch(e){case`forever`:return null;case`week`:return Z.default.utc().add(7,`days`).startOf(`day`).toISOString();case`month`:return Z.default.utc().add(1,`month`).startOf(`day`).toISOString();case`half-year`:return Z.default.utc().add(6,`months`).startOf(`day`).toISOString();case`year`:return Z.default.utc().add(1,`year`).startOf(`day`).toISOString();case`custom`:return t?(0,Z.default)(t,`YYYY-MM-DD`).startOf(`day`).endOf(`day`).set(`millisecond`,0).add((0,Z.default)().utcOffset(),`minutes`).toISOString():null}}var cn=new Set([`active`,`trialing`,`unpaid`,`past_due`]),ln=[{value:`forever`,label:`Forever`},{value:`week`,label:`1 Week`},{value:`month`,label:`1 Month`},{value:`half-year`,label:`6 Months`},{value:`year`,label:`1 Year`},{value:`custom`,label:`Custom`}],un=({open:e,onOpenChange:t,member:n})=>{let{data:r,isLoading:i}=We({searchParams:{filter:`type:paid+active:true`,limit:`all`}}),o=r?.tiers??[],[s,c]=Y.useState(``),[l,u]=Y.useState(`forever`),[d,f]=Y.useState(``);Y.useEffect(()=>{e&&(c(``),u(`forever`),f(``))},[e]);let p=Pe(),m=G(),[h,g]=Y.useState(!1),_=(n.subscriptions??[]).filter(e=>Xt(e)===`paid`&&cn.has(e.status)),v=(0,Z.default)().format(`YYYY-MM-DD`),y=!!s&&!h&&(l!==`custom`||!!d),ee=async()=>{if(y){g(!0);try{for(let e of _)await p.mutateAsync({memberId:n.id,subscriptionId:e.id,status:`canceled`});let e=sn(l,l===`custom`?d:null),r=e?{id:s,expiry_at:e}:{id:s};await m.mutateAsync({id:n.id,...n.email?{email:n.email}:{},tiers:[r]}),a.success(`Complimentary subscription added`),t(!1)}catch{a.error(`Couldn’t add complimentary subscription`)}finally{g(!1)}}};return(0,X.jsx)(V,{open:e,onOpenChange:e=>{h||t(e)},children:(0,X.jsxs)(W,{"data-testid":`add-comp-modal`,children:[(0,X.jsxs)(R,{children:[(0,X.jsx)(K,{children:`Add complimentary subscription`}),(0,X.jsx)(U,{children:`Grants this member access to a paid tier for the chosen duration. Any active paid subscription is canceled first.`})]}),(0,X.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,X.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,X.jsx)(A,{htmlFor:`comp-tier`,children:`Tier`}),(0,X.jsxs)(T,{value:s,onValueChange:c,children:[(0,X.jsx)(se,{"data-testid":`comp-tier-select`,disabled:i||h,id:`comp-tier`,children:(0,X.jsx)(w,{placeholder:i?`Loading tiers…`:`Select a tier`})}),(0,X.jsx)(oe,{children:o.map(e=>(0,X.jsx)(ae,{"data-tier-id":e.id,value:e.id,children:e.name},e.id))})]})]}),(0,X.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,X.jsx)(A,{htmlFor:`comp-duration`,children:`Duration`}),(0,X.jsxs)(T,{value:l,onValueChange:e=>{on(e)&&u(e)},children:[(0,X.jsx)(se,{"data-testid":`comp-duration-select`,disabled:h,id:`comp-duration`,children:(0,X.jsx)(w,{})}),(0,X.jsx)(oe,{children:ln.map(e=>(0,X.jsx)(ae,{value:e.value,children:e.label},e.value))})]})]}),l===`custom`&&(0,X.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,X.jsx)(A,{htmlFor:`comp-custom-date`,children:`Expires on`}),(0,X.jsx)(L,{"data-testid":`comp-custom-date`,disabled:h,id:`comp-custom-date`,min:v,type:`date`,value:d,onChange:e=>f(e.target.value)})]})]}),(0,X.jsxs)(H,{children:[(0,X.jsx)(S,{disabled:h,variant:`outline`,onClick:()=>t(!1),children:`Cancel`}),(0,X.jsx)(S,{"data-testid":`comp-add-confirm`,disabled:!y,onClick:()=>void ee(),children:h?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(I,{size:`sm`}),(0,X.jsx)(`span`,{className:`sr-only`,children:`Adding`})]}):`Add subscription`})]})]})})},dn=({memberId:e,subscription:t})=>{let n=Pe(),r=F(),i=n.isPending||n.isSuccess&&r,o=t.status===`canceled`,s=t.cancel_at_period_end,c=(r,i,o)=>{n.mutate({memberId:e,subscriptionId:t.id,cancelAtPeriodEnd:r},{onSuccess:()=>a.success(i),onError:()=>a.error(o)})};return(0,X.jsxs)(De,{children:[(0,X.jsx)(M,{asChild:!0,children:(0,X.jsx)(S,{"aria-label":`Subscription menu`,"data-testid":`subscription-actions`,disabled:i,size:`sm`,variant:`outline`,children:i?(0,X.jsx)(I,{size:`sm`}):(0,X.jsx)(_,{})})}),(0,X.jsxs)(we,{align:`end`,children:[(0,X.jsx)(q,{asChild:!0,children:(0,X.jsx)(`a`,{href:`https://dashboard.stripe.com/customers/${t.customer.id}`,rel:`noopener noreferrer`,target:`_blank`,children:`View Stripe customer`})}),(0,X.jsx)(N,{}),(0,X.jsx)(q,{asChild:!0,children:(0,X.jsx)(`a`,{href:`https://dashboard.stripe.com/subscriptions/${t.id}`,rel:`noopener noreferrer`,target:`_blank`,children:`View Stripe subscription`})}),!o&&(s?(0,X.jsx)(q,{"data-testid":`continue-subscription`,onSelect:()=>c(!1,`Subscription continued`,`Couldn’t continue subscription`),children:`Continue subscription`}):(0,X.jsx)(q,{className:`text-destructive focus:text-destructive`,"data-testid":`cancel-subscription`,onSelect:()=>c(!0,`Subscription canceled`,`Couldn’t cancel subscription`),children:`Cancel subscription`}))]})]})},fn=({member:e,tierId:t})=>{let n=G(),[r,i]=Y.useState(!1),o=F(),s=n.isPending||n.isSuccess&&o;return(0,X.jsxs)(X.Fragment,{children:[(0,X.jsxs)(De,{children:[(0,X.jsx)(M,{asChild:!0,children:(0,X.jsx)(S,{"aria-label":`Subscription menu`,"data-testid":`subscription-actions`,disabled:s,size:`sm`,variant:`outline`,children:s?(0,X.jsx)(I,{size:`sm`}):(0,X.jsx)(_,{})})}),(0,X.jsx)(we,{align:`end`,children:(0,X.jsx)(q,{className:`text-destructive focus:text-destructive`,"data-testid":`remove-complimentary`,onSelect:()=>i(!0),children:`Remove complimentary subscription`})})]}),(0,X.jsx)(P,{open:r,onOpenChange:e=>{n.isPending||i(e)},children:(0,X.jsxs)(ze,{children:[(0,X.jsxs)(Me,{children:[(0,X.jsx)(z,{children:`Remove complimentary subscription?`}),(0,X.jsx)(Fe,{children:`The member will lose access to this tier immediately.`})]}),(0,X.jsxs)(Re,{children:[(0,X.jsx)(ke,{disabled:n.isPending,children:`Cancel`}),(0,X.jsx)(S,{"data-testid":`confirm-remove-complimentary`,disabled:n.isPending,variant:`destructive`,onClick:()=>{let r=(e.tiers??[]).filter(e=>e.id!==t).map(e=>({id:e.id,expiry_at:e.expiry_at??null}));n.mutate({id:e.id,email:e.email,tiers:r},{onSuccess:()=>{a.success(`Complimentary subscription removed`),i(!1)},onError:()=>a.error(`Couldn’t remove complimentary subscription`)})},children:n.isPending?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(I,{size:`sm`}),(0,X.jsx)(`span`,{className:`sr-only`,children:`Removing`})]}):`Remove`})]})]})})]})},pn=e=>{let t=e/100;return t.toLocaleString(void 0,t%1==0?void 0:{minimumFractionDigits:2,maximumFractionDigits:2})},mn=({sub:e,kind:t})=>{if(t===`complimentary`||t===`gift`)return(0,X.jsx)(`div`,{className:`flex size-20 shrink-0 items-center justify-center rounded-lg bg-muted text-center text-sm font-medium text-muted-foreground`,children:t===`complimentary`?`Comp`:`Gift`});let n=o(e.price.currency),r=pn(e.price.amount),i=Zt(e.price.interval);return(0,X.jsxs)(`div`,{className:`flex size-20 shrink-0 flex-col items-center justify-center rounded-lg bg-muted text-foreground`,children:[(0,X.jsxs)(`div`,{className:`flex items-start leading-none`,children:[(0,X.jsx)(`span`,{className:`mt-1 text-sm font-semibold`,children:n}),(0,X.jsx)(`span`,{className:`text-3xl font-semibold tracking-tight`,children:r})]}),(0,X.jsx)(`div`,{className:`mt-1 text-xs text-muted-foreground`,children:i})]})},hn=e=>e?Z.default.utc(e).format(`D MMM YYYY`):``,gn=({sub:e})=>{let t=hn(e.start_date),n=e.attribution?.referrer_source,r=n&&n!==`Unknown`,i=e.attribution?.title?{title:e.attribution.title,url:e.attribution.url??null}:null;return(0,X.jsxs)(`div`,{className:`mt-3 space-y-1 border-t border-border pt-3 text-sm text-muted-foreground`,children:[t&&(0,X.jsxs)(`p`,{children:[`Created — `,(0,X.jsx)(`span`,{className:`text-foreground`,children:t})]}),r&&(0,X.jsxs)(`p`,{children:[`Source — `,(0,X.jsx)(`span`,{className:`text-foreground`,children:n})]}),i&&(0,X.jsxs)(`p`,{children:[`Page —`,` `,Ye(i.url)?(0,X.jsx)(`a`,{className:`text-foreground hover:underline`,href:i.url,rel:`noopener noreferrer`,target:`_blank`,children:i.title}):(0,X.jsx)(`span`,{className:`text-foreground`,children:i.title})]})]})},_n=({member:e,sub:t,showDivider:n})=>{let[r,i]=Y.useState(!1),a=Xt(t),o=$t(t),s=nn(t),c=Qt(t);return(0,X.jsxs)(`div`,{className:d(`flex items-start justify-between gap-4 py-5 first:pt-0 last:pb-0`,n&&`border-t border-border`),"data-testid":`member-subscription`,children:[(0,X.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-start gap-4`,children:[(0,X.jsx)(mn,{kind:a,sub:t}),(0,X.jsxs)(`div`,{className:`min-w-0 flex-1 pt-2`,children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,X.jsx)(`span`,{className:`min-w-0 truncate font-semibold`,"data-testid":`member-subscription-tier`,children:t.tier?.name??`Subscription`}),(0,X.jsx)(E,{"data-testid":`member-subscription-status`,variant:o===`Canceled`?`secondary`:`success`,children:o})]}),(c||s)&&(0,X.jsxs)(`div`,{className:`mt-1 text-sm`,children:[c&&(0,X.jsx)(`span`,{className:`font-semibold text-foreground`,children:c}),c&&s&&(0,X.jsx)(`span`,{className:`text-muted-foreground`,children:` – `}),s&&(0,X.jsx)(`span`,{className:`text-muted-foreground`,children:s})]}),(0,X.jsxs)(`button`,{"aria-expanded":r,className:`mt-1 inline-flex items-center gap-1 text-sm font-medium text-primary hover:underline`,"data-testid":`member-subscription-details-toggle`,type:`button`,onClick:()=>i(e=>!e),children:[`Details`,(0,X.jsx)(x,{className:d(`transition-transform`,r&&`rotate-180`),size:14})]}),r&&(0,X.jsx)(gn,{sub:t})]})]}),a===`paid`&&(0,X.jsx)(dn,{memberId:e.id,subscription:t}),a===`complimentary`&&t.tier?.id&&(0,X.jsx)(fn,{member:e,tierId:t.tier.id})]})},vn=({member:e,canAddComp:t})=>{let[n,r]=Y.useState(!1);if(!e)return(0,X.jsx)(O,{"data-testid":`member-subscriptions`,children:(0,X.jsx)(D,{className:`pt-6`,children:(0,X.jsx)(`div`,{className:`flex flex-col items-center gap-3 py-4`,children:(0,X.jsx)(k,{title:`No subscriptions`,children:(0,X.jsx)(v,{})})})})});let i=rn(e.subscriptions??[]),a=i.length>0,o=t&&(e.tiers?.length??0)===0,s=o?(0,X.jsxs)(S,{"data-testid":`add-complimentary`,variant:`outline`,onClick:()=>r(!0),children:[(0,X.jsx)(te,{className:`mr-1`,size:16}),`Add complimentary subscription`]}):null;return(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(O,{"data-testid":`member-subscriptions`,children:(0,X.jsx)(D,{className:`pt-6`,children:a?(0,X.jsxs)(X.Fragment,{children:[i.map(t=>(0,X.jsxs)(`div`,{className:`flex flex-col`,children:[t.subscriptions.map((n,r)=>(0,X.jsx)(_n,{member:e,showDivider:r>0,sub:n},n.id||`${t.tier.id}-${r}`)),t.subscriptions.length>1&&(0,X.jsxs)(`div`,{className:`pt-3 text-sm text-muted-foreground`,children:[t.subscriptions.length,` subscriptions`]})]},t.tier.id)),s&&(0,X.jsx)(`div`,{className:`mt-4 flex justify-center border-t border-border pt-4`,children:s})]}):(0,X.jsxs)(`div`,{className:`flex flex-col items-center gap-3 py-4`,children:[(0,X.jsx)(k,{title:`No subscriptions`,children:(0,X.jsx)(v,{})}),s]})})}),o&&(0,X.jsx)(un,{member:e,open:n,onOpenChange:r})]})};function yn(e){let t=new URLSearchParams(e),n=t.get(`back`);if(n&&n.startsWith(`/members`))return n;let r=t.get(`post`);return r?`/members?post=${encodeURIComponent(r)}`:`/members`}var bn=`new`,xn=({paidMembersEnabled:e,newslettersUiEnabled:t,engagementEnabled:n})=>{let{member_id:r=``}=s(),i=l(),o=u(),d=yn(i.search),f=r===bn,{data:h,isLoading:g,error:_,refetch:v}=Te(r,{enabled:!!r&&!f,searchParams:{include:`tiers`},defaultErrorHandler:!1}),y=h?.members?.[0],ee=!f&&!g&&!!_,te=!f&&!g&&!_&&!y,b=G(),ne=Ie(),x=f?ne:b,{data:re}=We({searchParams:{filter:`type:paid+active:true`,limit:`all`},enabled:e}),ie=(re?.tiers?.length??0)>0,{data:C}=ye({searchParams:{filter:`status:active`,limit:`50`}}),ae=C!==void 0,oe=(C?.newsletters?.length??0)>1,se=(re?.tiers?.length??0)>1,[w,T]=Y.useState(void 0),E=Y.useRef(void 0),k=Y.useRef(void 0),A=Y.useRef(!1);Y.useEffect(()=>{if(f){if(E.current!==bn){E.current=bn,A.current=!1;let e=Q({});k.current=e,T(e)}return}if(!y)return;let e=Q(y);if(E.current!==y.id){E.current=y.id,k.current=e,T(e);return}let t=k.current;k.current=e,T(n=>Mt(n,t)?e:n)},[y,f]),Y.useEffect(()=>{if(!f||A.current||!C?.newsletters)return;A.current=!0;let e=Ct(C.newsletters);if(e.length===0)return;let t={...k.current??Q({}),newsletters:[...e].sort()};k.current=t,T(t=>t&&{...t,newsletters:[...e].sort()})},[f,C]);let he=f?k.current:y?Q(y):void 0,j=!!w&&!!he&&!Ke(jt(w),he),{dialogProps:ge,bypassNextNavigation:_e}=qe({when:j,confirmUnloadWhen:x.isPending||j}),ve=!!w&&bt(w.email,y?.email??void 0),[M,be]=Y.useState(!1);Y.useEffect(()=>{be(!1)},[y?.id,f]);let xe=w?xt(w.email,M,y?.email??void 0):null,[Se,N]=Y.useState({name:``,email:``});Y.useEffect(()=>{if(f){N({name:``,email:``});return}y&&N({name:y.name??``,email:y.email??``})},[y?.id,y?.name,y?.email,f]);let P=()=>{w&&N({name:w.name,email:w.email})},F=e=>{x.isError&&x.reset(),T(t=>t&&{...t,...e})},we=()=>{if(!(!w||!j||!ve||x.isPending)){if(P(),f){ne.mutate({email:w.email.trim(),name:w.name.trim()||void 0,note:w.note.trim()||void 0,labels:w.labels.length?w.labels:void 0,newsletters:A.current?w.newsletters.map(e=>({id:e})):void 0},{onSuccess:e=>{let t=e.members?.[0];if(!t){a.error(`Member couldn’t be created`);return}_e(),a.success(`Member created`),o(`/members/${t.id}`,{replace:!0})},onError:()=>{a.error(`Member couldn’t be created`)}});return}!y||E.current!==y.id||b.mutate(Tt(y.id,w,Q(y)),{onSuccess:e=>{let t=e.members?.[0];if(t){let e=Q(t);k.current=e,T(e)}a.success(`Member updated`)},onError:()=>{a.error(`Member couldn’t be saved`)}})}},L=`Save`,R=`default`,z=!0;x.isPending?L=(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(I,{size:`sm`}),(0,X.jsx)(`span`,{className:`sr-only`,children:`Saving`})]}):j?(L=x.isError?`Retry`:`Save`,R=x.isError?`destructive`:`default`,z=!ve):!f&&b.isSuccess&&(L=`Saved`);let Ee=!!w&&(f||!!y),B=`Member`;return f?B=`New member`:y?B=Ce(y):te&&(B=`Member not found`),(0,X.jsx)(p,{className:`size-full`,children:(0,X.jsx)(m,{className:`relative flex h-full flex-col`,size:`page`,children:(0,X.jsxs)(J,{"data-testid":`member-detail`,children:[(0,X.jsx)(J.Header,{children:(0,X.jsxs)(He,{blurredBackground:!1,sticky:!1,children:[(0,X.jsx)(He.Left,{children:(0,X.jsx)(me,{children:(0,X.jsxs)(ue,{children:[(0,X.jsx)(de,{children:(0,X.jsx)(pe,{asChild:!0,children:(0,X.jsx)(c,{"data-test-link":`members-back`,to:d,children:`Members`})})}),(0,X.jsx)(fe,{}),(0,X.jsx)(de,{children:!f&&g?(0,X.jsx)(ce,{className:`h-4 w-40`}):(0,X.jsx)(le,{className:`truncate`,"data-testid":`member-detail-title`,children:B})})]})})}),(f||y)&&(0,X.jsx)(He.Actions,{children:(0,X.jsxs)(He.ActionGroup,{children:[y&&!f&&(0,X.jsx)(pt,{allowLeaveWithUnsavedChanges:_e,member:y},y.id),(0,X.jsx)(S,{className:`min-w-16`,disabled:z,variant:R,onClick:we,children:L})]})})]})}),(0,X.jsxs)(J.Body,{children:[ee&&(0,X.jsxs)(`div`,{className:`flex flex-1 flex-col items-center justify-center gap-3`,"data-testid":`member-detail-load-error`,children:[(0,X.jsx)(`p`,{className:`text-muted-foreground`,children:`Couldn’t load this member.`}),(0,X.jsx)(S,{variant:`outline`,onClick:()=>void v(),children:`Retry`})]}),te&&(0,X.jsx)(`div`,{className:`flex flex-1 items-center justify-center`,children:(0,X.jsx)(`p`,{className:`text-muted-foreground`,children:`This member couldn’t be found.`})}),Ee&&w&&(0,X.jsxs)(`div`,{className:`flex flex-1 flex-col gap-8 lg:flex-row lg:items-start lg:gap-12`,children:[(0,X.jsx)(Kt,{draftEmail:Se.email,draftName:Se.name,engagementEnabled:n,member:y}),(0,X.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-8`,children:[(0,X.jsx)(O,{children:(0,X.jsx)(D,{className:`p-6`,children:(0,X.jsx)(Bt,{disabled:x.isPending,draft:w,emailError:xe,onChange:F,onEmailBlur:()=>{be(!0),P()},onNameBlur:P})})}),y&&(0,X.jsx)(Rt,{disabled:x.isPending,memberId:y.id,metafields:y.metafields}),t&&(f||y)&&(0,X.jsx)(qt,{disabled:x.isPending,emailSuppression:y?.email_suppression,memberId:y?.id,subscribedIds:w.newsletters,onChange:e=>F({newsletters:e})}),e&&(0,X.jsxs)(`section`,{"aria-labelledby":`member-subscriptions-heading`,className:`flex flex-col gap-3`,children:[(0,X.jsx)(`h3`,{className:`text-base font-semibold`,id:`member-subscriptions-heading`,children:`Subscriptions`}),(0,X.jsx)(vn,{canAddComp:ie,member:y})]}),(f||y&&ae)&&(0,X.jsx)(Je,{hasMultipleNewsletters:oe,hasMultipleTiers:se,memberId:y?.id,paidMembersEnabled:e})]})]})]}),(0,X.jsx)(Ue,{...ge})]})})})},Sn=()=>{let{data:e,isLoading:t}=Le({}),n=B(),r=Ve();if(t||!e?.settings)return(0,X.jsx)(p,{className:`size-full`,children:(0,X.jsx)(m,{className:`relative flex h-full flex-col`,size:`page`,children:(0,X.jsx)(J,{children:(0,X.jsx)(J.Body,{children:(0,X.jsx)(`div`,{className:`flex flex-1 items-center justify-center`,children:(0,X.jsx)(I,{size:`lg`})})})})})});let i=Ne(e.settings,`members_signup_access`);return(0,X.jsx)(xn,{engagementEnabled:i!==`none`&&r===!0,newslettersUiEnabled:r===!0,paidMembersEnabled:n===!0})};export{Sn as default};