ghost 6.58.0 → 6.59.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 (453) hide show
  1. package/components/tryghost-adapter-base-scheduling-0.2.2.tgz +0 -0
  2. package/components/tryghost-adapter-base-sso-0.1.2.tgz +0 -0
  3. package/components/tryghost-i18n-0.0.0.tgz +0 -0
  4. package/components/tryghost-kg-default-nodes-2.2.0.tgz +0 -0
  5. package/components/tryghost-kg-html-to-lexical-1.4.0.tgz +0 -0
  6. package/components/tryghost-kg-lexical-html-renderer-1.5.0.tgz +0 -0
  7. package/content/themes/casper/.github/workflows/test.yml +11 -1
  8. package/content/themes/casper/AGENTS.md +25 -0
  9. package/content/themes/casper/assets/built/screen.css +1 -1
  10. package/content/themes/casper/assets/css/screen.css +15 -1
  11. package/content/themes/casper/gulpfile.js +3 -0
  12. package/content/themes/casper/package.json +8 -8
  13. package/content/themes/source/.gitattributes +5 -0
  14. package/content/themes/source/.github/workflows/test.yml +39 -0
  15. package/content/themes/source/AGENTS.md +25 -0
  16. package/content/themes/source/README.md +33 -4
  17. package/content/themes/source/assets/built/screen.css +1 -1
  18. package/content/themes/source/assets/css/screen.css +15 -0
  19. package/content/themes/source/gulpfile.js +6 -3
  20. package/content/themes/source/package.json +13 -10
  21. package/content/themes/source/pnpm-workspace.yaml +3 -0
  22. package/core/boot.js +11 -4
  23. package/core/built/admin/assets/Combination-BCm9FL4o.js +41 -0
  24. package/core/built/admin/assets/about-BdSCpjXG.js +1 -0
  25. package/core/built/admin/assets/account-migration-BpKAqo8k.js +1 -0
  26. package/core/built/admin/assets/activitypub/{account-migration-BpDeIF3G.js → account-migration-DVnYS1XG.js} +8 -8
  27. package/core/built/admin/assets/activitypub/activitypub.js +2 -2
  28. package/core/built/admin/assets/activitypub/{bluesky-sharing-aPMtrS3L.js → bluesky-sharing-DLVeE9ii.js} +31 -31
  29. package/core/built/admin/assets/activitypub/{content-formatters-BORfuA9G.js → content-formatters-DCsVic-t.js} +2 -2
  30. package/core/built/admin/assets/activitypub/{dist-ByFmDSNP2.js → dist-ByFmDSNP.js} +1 -1
  31. package/core/built/admin/assets/activitypub/{domain-CPdiB27_.js → domain-rrvDLfnK.js} +8 -8
  32. package/core/built/admin/assets/activitypub/{edit-profile-BY2PawIe.js → edit-profile-VT-piVxq.js} +23 -23
  33. package/core/built/admin/assets/activitypub/{explore-Sp9bgAwq.js → explore-DZg3m48P.js} +14 -14
  34. package/core/built/admin/assets/activitypub/{feed-BjtF4ohL.js → feed-BJqQvDMI.js} +41 -41
  35. package/core/built/admin/assets/activitypub/{field-BDOYVTg6.js → field-BezS4-1J.js} +2 -2
  36. package/core/built/admin/assets/activitypub/inbox-Uf0GVrI_.js +1284 -0
  37. package/core/built/admin/assets/activitypub/{label-1jhN-qhD.js → label-CZ6if4zK.js} +2 -2
  38. package/core/built/admin/assets/activitypub/layout-DNuYT4Gu.js +1 -0
  39. package/core/built/admin/assets/activitypub/moderation-CP6mDVky.js +340 -0
  40. package/core/built/admin/assets/activitypub/{note-nr_m_5yb.js → note-BlFkye2g.js} +16 -16
  41. package/core/built/admin/assets/activitypub/{notifications-BdcyivbT.js → notifications-GGTrGEdu.js} +163 -126
  42. package/core/built/admin/assets/activitypub/{preferences-CNqy1x9C.js → preferences-CjZXrZqr.js} +1550 -1551
  43. package/core/built/admin/assets/activitypub/{profile-DlY4rhbO.js → profile-CcXYxydm.js} +248 -248
  44. package/core/built/admin/assets/activitypub/{routes-CEHdEZzS.js → routes-nHCKlZl-.js} +1971 -1747
  45. package/core/built/admin/assets/activitypub/settings-pDzybcb3.js +315 -0
  46. package/core/built/admin/assets/activitypub/{site-CtBUCPBz.js → site-BZF0F8LN.js} +101 -101
  47. package/core/built/admin/assets/activitypub/{step-1-D9jGWyAy.js → step-1-C-Ns1Tfg.js} +3 -3
  48. package/core/built/admin/assets/activitypub/{step-3-KpUqpGWi.js → step-3-rDMNGmLg.js} +8 -8
  49. package/core/built/admin/assets/activitypub/{tabs-DvlsxTCI.js → tabs-CDjh3_Jp.js} +198 -198
  50. package/core/built/admin/assets/activitypub/{topic-filter-CIN1E2jg.js → topic-filter-CmTc8hpN.js} +2 -2
  51. package/core/built/admin/assets/activitypub/{use-activity-pub-queries-CATFd6YV.js → use-activity-pub-queries-DUDEdSdR.js} +286 -243
  52. package/core/built/admin/assets/activitypub/{use-reply-chain-data-DJ0vhA8V.js → use-reply-chain-data-TunGtmJl.js} +14 -14
  53. package/core/built/admin/assets/add-integration-modal-CXRQi1x0.js +1 -0
  54. package/core/built/admin/assets/add-newsletter-modal-t447KRYz.js +1 -0
  55. package/core/built/admin/assets/add-recommendation-modal-D882MdnR.js +1 -0
  56. package/core/built/admin/assets/{analytics-BC2oR8ay.js → analytics-Dj-WlzPf.js} +1 -1
  57. package/core/built/admin/assets/announcement-bar-modal-CwHKKw-a.js +1 -0
  58. package/core/built/admin/assets/api-keys-Boy5pLbD.js +1 -0
  59. package/core/built/admin/assets/audience-Cc40y7zQ.js +1 -0
  60. package/core/built/admin/assets/automations-DNLK5Udr.js +1 -0
  61. package/core/built/admin/assets/bluesky-sharing-Cm4aFaOl.js +1 -0
  62. package/core/built/admin/assets/breadcrumb-CcFr_ltt.js +1 -0
  63. package/core/built/admin/assets/button-BshWPHvn.js +1 -0
  64. package/core/built/admin/assets/chart-helpers-BsbzoWhK.js +1 -0
  65. package/core/built/admin/assets/{checkbox-LmClhqcS.js → checkbox-1G6KfK2q.js} +1 -1
  66. package/core/built/admin/assets/chunk-KS7C4IRE-DCsL4i4D.js +4 -0
  67. package/core/built/admin/assets/{chunk.408.1a258af360eb8d905508.js → chunk.301.5673a0caf7c49bb00212.js} +3 -3
  68. package/core/built/admin/assets/{chunk.524.4c693c3a00ac91df34fa.js → chunk.524.86db0d945468c852374b.js} +4 -4
  69. package/core/built/admin/assets/{chunk.582.20b600e329e58d12d7c2.js → chunk.582.c2f6216d3c4af303e236.js} +6 -6
  70. package/core/built/admin/assets/{code-editor-view-DqTOUnbM.js → code-editor-view-BVjtWyst.js} +1 -1
  71. package/core/built/admin/assets/{code-editor-view-bA0lfxUL.js → code-editor-view-y_zVfmCa.js} +1 -1
  72. package/core/built/admin/assets/color-picker-XEMPgNJE.js +3 -0
  73. package/core/built/admin/assets/{color-picker-field-Cv9GOJQZ.js → color-picker-field-BhplXcy5.js} +1 -1
  74. package/core/built/admin/assets/combobox-CRMJrvcQ.js +1 -0
  75. package/core/built/admin/assets/command-151T2eRx.js +1 -0
  76. package/core/built/admin/assets/comments-Bjbl9toF.js +1 -0
  77. package/core/built/admin/assets/confirmation-context-QmFxSjWy.js +1 -0
  78. package/core/built/admin/assets/{content-api-modal-BOFWRUkC.js → content-api-modal-CpeABXne.js} +1 -1
  79. package/core/built/admin/assets/{copy-field-8biQvNMD.js → copy-field-CglgRZyG.js} +1 -1
  80. package/core/built/admin/assets/custom-field-type-option-DSyJw4T4.js +1 -0
  81. package/core/built/admin/assets/custom-integration-modal-DWB9bRVp.js +1 -0
  82. package/core/built/admin/assets/date-range-select-kaKtab5O.js +1 -0
  83. package/core/built/admin/assets/design-and-theme-modal-86s2AaZ-.js +23 -0
  84. package/core/built/admin/assets/dirty-confirm-dialog-CTFdXXy7.js +1 -0
  85. package/core/built/admin/assets/disabled-sources-indicator-BFyCxUOx.js +1 -0
  86. package/core/built/admin/assets/dist-C1-Oy3Db.js +1 -0
  87. package/core/built/admin/assets/dist-CJJqYPep.js +1 -0
  88. package/core/built/admin/assets/dist-CNlMj7ML.js +1 -0
  89. package/core/built/admin/assets/dist-Kll2twSG.js +1 -0
  90. package/core/built/admin/assets/domain-BOoMvBG3.js +1 -0
  91. package/core/built/admin/assets/{dropzone-B21Entqz.js → dropzone-B6KWzsrb.js} +2 -2
  92. package/core/built/admin/assets/edit-profile-BagrYOrN.js +1 -0
  93. package/core/built/admin/assets/editor-AaJjqbpk.js +8 -0
  94. package/core/built/admin/assets/embed-signup-form-modal-B8L95KwR.js +8 -0
  95. package/core/built/admin/assets/explore-xbykZTlO.js +1 -0
  96. package/core/built/admin/assets/feed-BAHSipWv.js +1 -0
  97. package/core/built/admin/assets/{field-BQqLTgHM.js → field-kJYZ2T3C.js} +1 -1
  98. package/core/built/admin/assets/{filter-sources-FgqoUIL7.js → filter-sources-QeqFGNRB.js} +1 -1
  99. package/core/built/admin/assets/{filters-D0uIMD8n.js → filters-By5KQeV6.js} +1 -1
  100. package/core/built/admin/assets/filters-DtYpAkDd.js +1 -0
  101. package/core/built/admin/assets/first-promoter-modal-8A02oyjA.js +1 -0
  102. package/core/built/admin/assets/{ghost-ba408063a5922b458b4a8f216cf23251.js → ghost-f110822e67868c9fdf9a6c23754b2559.js} +9 -8
  103. package/core/built/admin/assets/gift-link-modal-DbYCyuhF.js +1 -0
  104. package/core/built/admin/assets/global-data-context-gAMDH9u1.js +1 -0
  105. package/core/built/admin/assets/growth-BSOxJGey.js +3 -0
  106. package/core/built/admin/assets/growth-BZTjURq5.js +1 -0
  107. package/core/built/admin/assets/history-modal-CCgWtlZE.js +1 -0
  108. package/core/built/admin/assets/html-field-BQC7XyLA.js +1 -0
  109. package/core/built/admin/assets/iframe-buffering-DnOlWTD4.js +1 -0
  110. package/core/built/admin/assets/{images-3cQgwfTD.js → images-D5UKr2SG.js} +1 -1
  111. package/core/built/admin/assets/{inbox-Dz_JblyJ.js → inbox-DvN15_YH.js} +45 -39
  112. package/core/built/admin/assets/index-BJz9Zlsc.js +67 -0
  113. package/core/built/admin/assets/index-Dg8cdR8E.css +1 -0
  114. package/core/built/admin/assets/{input-group-DpogNUIt.js → input-group-BPAxETpQ.js} +1 -1
  115. package/core/built/admin/assets/invite-user-modal-jcUaaNkW.js +1 -0
  116. package/core/built/admin/assets/{koenig-lexical-2KuqRwZI.js → koenig-lexical-CfXTYeli.js} +1 -1
  117. package/core/built/admin/assets/koenig-loader-DktFM3Uh.js +1 -0
  118. package/core/built/admin/assets/{kpi-card-Ck3tT2Wg.js → kpi-card-fUHZlzBX.js} +1 -1
  119. package/core/built/admin/assets/{kpi-card-DDIxptaS.js → kpi-card-o0urVtNL.js} +1 -1
  120. package/core/built/admin/assets/kpi-helpers-2FTF4a3-.js +1 -0
  121. package/core/built/admin/assets/kpi-tabs-B8-_k2dQ.js +1 -0
  122. package/core/built/admin/assets/{label-DodDsMzn.js → label-CiRS3i_f.js} +1 -1
  123. package/core/built/admin/assets/label-picker-ao7tuPaK.js +1 -0
  124. package/core/built/admin/assets/layout-DC6QGDaw.js +1 -0
  125. package/core/built/admin/assets/member-custom-fields-BW756-EV.js +1 -0
  126. package/core/built/admin/assets/member-detail-CGGgUTSl.js +1 -0
  127. package/core/built/admin/assets/members-ZcPthwG0.js +11 -0
  128. package/core/built/admin/assets/moderation-24bElWs3.js +1 -0
  129. package/core/built/admin/assets/multi-select-combobox-CZPrgz-Z.js +1 -0
  130. package/core/built/admin/assets/navigation-modal-BiTP4U_J.js +1 -0
  131. package/core/built/admin/assets/newsletter-B3Ihwizp.js +1 -0
  132. package/core/built/admin/assets/newsletter-detail-modal-CYsu4qhl.js +1 -0
  133. package/core/built/admin/assets/newsletter-emails-CDPR4-SP.js +1 -0
  134. package/core/built/admin/assets/newsletters-bJiYLJWl.js +1 -0
  135. package/core/built/admin/assets/note-7f6urVVA.js +1 -0
  136. package/core/built/admin/assets/notifications-rosQCyXH.js +1 -0
  137. package/core/built/admin/assets/offers-container-modal-J2j6NpDL.js +1 -0
  138. package/core/built/admin/assets/onboarding-route-DTjcThKl.js +1 -0
  139. package/core/built/admin/assets/overview-BxvWzGaf.js +1 -0
  140. package/core/built/admin/assets/overview-D6JG0hkZ.js +1 -0
  141. package/core/built/admin/assets/{page-header-VLPJfj_d.js → page-header-l7vXmLIw.js} +1 -1
  142. package/core/built/admin/assets/pintura-modal-BGHmudVB.js +1 -0
  143. package/core/built/admin/assets/portal-frame-DVc4VHX_.js +1 -0
  144. package/core/built/admin/assets/portal-modal-BCOcdiRi.js +1 -0
  145. package/core/built/admin/assets/{post-analytics-Gv81eN_g.js → post-analytics-CTSZMK6I.js} +1 -1
  146. package/core/built/admin/assets/post-analytics-header-Dt4RQGq0.js +1 -0
  147. package/core/built/admin/assets/{post-analytics-provider-O2YjZMhN.js → post-analytics-provider-C4ydiboO.js} +1 -1
  148. package/core/built/admin/assets/post-share-modal-DjH_a_1L.js +1 -0
  149. package/core/built/admin/assets/preferences-BLo6VJUS.js +5 -0
  150. package/core/built/admin/assets/preview-modal-BOgjgsJL.js +1 -0
  151. package/core/built/admin/assets/profile-DG6iCdRH.js +1 -0
  152. package/core/built/admin/assets/radio-group-ChHD4EQJ.js +1 -0
  153. package/core/built/admin/assets/router-provider-Bexg1t-V.js +1 -0
  154. package/core/built/admin/assets/select-ChxknEcT.js +1 -0
  155. package/core/built/admin/assets/settings-B0VDAhgV.js +1 -0
  156. package/core/built/admin/assets/settings-Dwo3CeAD.js +4 -0
  157. package/core/built/admin/assets/settings-breadcrumbs-sLDNedBW.js +1 -0
  158. package/core/built/admin/assets/share-modal-BDb2nacg.js +1 -0
  159. package/core/built/admin/assets/skeleton-D7hwjdry.js +1 -0
  160. package/core/built/admin/assets/slack-modal-CwNAD69x.js +1 -0
  161. package/core/built/admin/assets/sort-button-DhqpxkrO.js +1 -0
  162. package/core/built/admin/assets/source-icon-BPsD5ees.js +1 -0
  163. package/core/built/admin/assets/stats-WdDJ8c_1.js +1 -0
  164. package/core/built/admin/assets/stats-view-J3PI2eT_.js +1 -0
  165. package/core/built/admin/assets/step-1-2q1SjerQ.js +1 -0
  166. package/core/built/admin/assets/step-2-D5mJB3Uu.js +1 -0
  167. package/core/built/admin/assets/step-3-BpAuYTGZ.js +2 -0
  168. package/core/built/admin/assets/{stripe-button-Bh4p6Wud.js → stripe-button-DDoUKN5a.js} +1 -1
  169. package/core/built/admin/assets/stripe-connect-modal-pMdF3t4S.js +1 -0
  170. package/core/built/admin/assets/switch-B_1yU3Aw.js +1 -0
  171. package/core/built/admin/assets/{table-DghJxZMH.js → table-CrqQtkR2.js} +1 -1
  172. package/core/built/admin/assets/tabs-BhzVdh5p.js +1 -0
  173. package/core/built/admin/assets/tag-detail-CwJhI4qg.js +2 -0
  174. package/core/built/admin/assets/tags-CvJ0PgrB.js +1 -0
  175. package/core/built/admin/assets/testimonials-modal-CV82IAnI.js +1 -0
  176. package/core/built/admin/assets/tier-detail-modal-pLzCOfeg.js +1 -0
  177. package/core/built/admin/assets/toggle-group-BW_T4yn6.js +1 -0
  178. package/core/built/admin/assets/topic-filter-DkXjDejV.js +1 -0
  179. package/core/built/admin/assets/transistor-modal-TMRvHZ6B.js +1 -0
  180. package/core/built/admin/assets/unsplash-modal-CV92RdPw.js +1 -0
  181. package/core/built/admin/assets/{use-analytics-data-IxJcSjc9.js → use-analytics-data-BM_uV9SU.js} +1 -1
  182. package/core/built/admin/assets/use-check-theme-limit-error-DkBnXMSY.js +1 -0
  183. package/core/built/admin/assets/use-confirm-unload-SzlkOIpm.js +1 -0
  184. package/core/built/admin/assets/use-feature-flag-cahOlMva.js +1 -0
  185. package/core/built/admin/assets/use-filter-params-BX5qf0Cg.js +1 -0
  186. package/core/built/admin/assets/{use-growth-stats-1NW-8eEZ.js → use-growth-stats-D0LlWBe6.js} +1 -1
  187. package/core/built/admin/assets/{use-hash-link-navigation-guard-B9j6HIrV.js → use-hash-link-navigation-guard-B_Y3FhYH.js} +1 -1
  188. package/core/built/admin/assets/use-limiter-D3DHSoAj.js +2 -0
  189. package/core/built/admin/assets/{use-pintura-config-BjFChXV1.js → use-pintura-config-D63Xu0SG.js} +1 -1
  190. package/core/built/admin/assets/use-pintura-editor-Z51aFnC8.js +1 -0
  191. package/core/built/admin/assets/{use-post-referrers-Dp1BnTAK.js → use-post-referrers-Cvymr3gt.js} +1 -1
  192. package/core/built/admin/assets/use-query-params-BfzuqbcD.js +1 -0
  193. package/core/built/admin/assets/use-reply-chain-data-Dc18Ujqo.js +1 -0
  194. package/core/built/admin/assets/use-setting-group-DYRIzqC0.js +1 -0
  195. package/core/built/admin/assets/use-settings-navigation-aDSLtmEl.js +1 -0
  196. package/core/built/admin/assets/{use-simple-pagination-DsEGSJhe.js → use-simple-pagination-B2TdNX67.js} +1 -1
  197. package/core/built/admin/assets/{use-tinybird-query-Ci_DiPkX.js → use-tinybird-query-BvQIVuRc.js} +1 -1
  198. package/core/built/admin/assets/{use-tinybird-token-CsUwc722.js → use-tinybird-token-COQTPIwL.js} +1 -1
  199. package/core/built/admin/assets/use-upgrade-route-BZf1g59m.js +1 -0
  200. package/core/built/admin/assets/{use-url-input-BEZJpVgN.js → use-url-input-PcqZadXa.js} +1 -1
  201. package/core/built/admin/assets/user-detail-modal-DeO3SAZq.js +1 -0
  202. package/core/built/admin/assets/{virtual-list-D5ugXyZY.js → virtual-list-D3MfPNOh.js} +1 -1
  203. package/core/built/admin/assets/web-CDdyG7z1.js +2 -0
  204. package/core/built/admin/assets/web-CwQ8_QUc.js +1 -0
  205. package/core/built/admin/assets/zapier-modal-a7t75iNI.js +1 -0
  206. package/core/built/admin/index.html +15 -12
  207. package/core/frontend/apps/private-blogging/lib/helpers/input_password.js +2 -1
  208. package/core/frontend/helpers/body_class.js +2 -1
  209. package/core/frontend/helpers/cancel_link.js +2 -1
  210. package/core/frontend/helpers/color_to_rgba.js +2 -1
  211. package/core/frontend/helpers/content_api_key.js +2 -1
  212. package/core/frontend/helpers/content_api_url.js +2 -1
  213. package/core/frontend/helpers/contrast_text_color.js +2 -1
  214. package/core/frontend/helpers/facebook_url.js +2 -1
  215. package/core/frontend/helpers/ghost_foot.js +2 -1
  216. package/core/frontend/helpers/ghost_head.js +2 -1
  217. package/core/frontend/helpers/has.js +4 -2
  218. package/core/frontend/helpers/link_class.js +2 -1
  219. package/core/frontend/helpers/meta_description.js +2 -1
  220. package/core/frontend/helpers/meta_title.js +2 -1
  221. package/core/frontend/helpers/navigation.js +113 -22
  222. package/core/frontend/helpers/page_url.js +2 -1
  223. package/core/frontend/helpers/post_class.js +2 -1
  224. package/core/frontend/helpers/reading_time.js +2 -1
  225. package/core/frontend/helpers/social_accounts.js +2 -1
  226. package/core/frontend/helpers/social_url.js +2 -1
  227. package/core/frontend/helpers/total_members.js +2 -1
  228. package/core/frontend/helpers/total_paid_members.js +2 -1
  229. package/core/frontend/helpers/tpl/navigation.hbs +1 -1
  230. package/core/frontend/helpers/twitter_url.js +2 -1
  231. package/core/frontend/public/cards.manifest.json +1 -1
  232. package/core/server/api/endpoints/posts.js +7 -4
  233. package/core/server/api/endpoints/utils/permissions.js +2 -1
  234. package/core/server/api/endpoints/utils/validators/input/settings.js +83 -1
  235. package/core/server/data/exporter/table-lists.js +1 -0
  236. package/core/server/data/importer/handlers/json.js +2 -1
  237. package/core/server/data/migrations/versions/5.19/2022-09-02-20-52-backfill-new-product-columns.js +2 -1
  238. package/core/server/data/migrations/versions/5.21/2022-10-26-04-50-member-subscription-created-batch-id.js +4 -2
  239. package/core/server/data/migrations/versions/5.22/2022-10-31-12-03-backfill-new-product-columns.js +2 -1
  240. package/core/server/data/migrations/versions/6.58/2026-08-11-21-22-48-rename-email-batches-provider-id.js +1 -1
  241. package/core/server/data/migrations/versions/6.59/2026-08-18-17-06-46-add-gift-delivery-fields-to-gifts.js +26 -0
  242. package/core/server/data/migrations/versions/6.59/2026-08-18-17-07-01-add-gift-deliveries.js +20 -0
  243. package/core/server/data/schema/commands.js +48 -24
  244. package/core/server/data/schema/schema.js +28 -7
  245. package/core/server/data/seeders/importers/automation-action-revisions-importer.js +3 -36
  246. package/core/server/data/seeders/importers/automation-actions-importer.js +5 -41
  247. package/core/server/data/seeders/importers/automation-run-steps-importer.js +3 -36
  248. package/core/server/data/seeders/importers/automation-runs-importer.js +7 -42
  249. package/core/server/data/seeders/importers/automations-importer.js +3 -36
  250. package/core/server/data/seeders/importers/comment-reports-importer.js +5 -5
  251. package/core/server/data/seeders/importers/comments-importer.js +5 -5
  252. package/core/server/data/seeders/importers/email-batches-importer.js +5 -4
  253. package/core/server/data/seeders/importers/email-recipients-importer.js +12 -20
  254. package/core/server/data/seeders/importers/emails-importer.js +6 -6
  255. package/core/server/data/seeders/importers/labels-importer.js +3 -3
  256. package/core/server/data/seeders/importers/members-click-events-importer.js +5 -5
  257. package/core/server/data/seeders/importers/members-created-events-importer.js +13 -12
  258. package/core/server/data/seeders/importers/members-feedback-importer.js +7 -7
  259. package/core/server/data/seeders/importers/members-importer.js +4 -4
  260. package/core/server/data/seeders/importers/members-login-events-importer.js +3 -3
  261. package/core/server/data/seeders/importers/members-products-importer.js +2 -2
  262. package/core/server/data/seeders/importers/members-status-events-importer.js +4 -3
  263. package/core/server/data/seeders/importers/members-stripe-customers-importer.js +2 -2
  264. package/core/server/data/seeders/importers/members-stripe-customers-subscriptions-importer.js +7 -7
  265. package/core/server/data/seeders/importers/members-subscribe-events-importer.js +3 -3
  266. package/core/server/data/seeders/importers/members-subscription-created-events-importer.js +3 -3
  267. package/core/server/data/seeders/importers/offer-redemptions-importer.js +7 -7
  268. package/core/server/data/seeders/importers/offers-importer.js +3 -3
  269. package/core/server/data/seeders/importers/posts-importer.js +4 -4
  270. package/core/server/data/seeders/importers/table-importer.js +2 -35
  271. package/core/server/data/seeders/importers/tags-importer.js +2 -2
  272. package/core/server/data/seeders/importers/users-importer.js +2 -2
  273. package/core/server/data/seeders/importers/web-mentions-importer.js +2 -2
  274. package/core/server/data/seeders/utils/random.js +7 -0
  275. package/core/server/ghost-server.js +19 -5
  276. package/core/server/lib/db-date.js +72 -3
  277. package/core/server/models/gift-delivery.js +23 -0
  278. package/core/server/models/gift.js +9 -0
  279. package/core/server/models/index.js +3 -2
  280. package/core/server/models/settings.js +43 -4
  281. package/core/server/services/automations/database-automations-repository.js +38 -31
  282. package/core/server/services/automations/poll.js +1 -1
  283. package/core/server/services/content-import/csv/index.js +8 -0
  284. package/core/server/services/content-import/csv/parse.js +60 -0
  285. package/core/server/services/content-import/import/importer.js +222 -0
  286. package/core/server/services/content-import/import/post-data.js +52 -0
  287. package/core/server/services/content-import/import/reader.js +15 -0
  288. package/core/server/services/content-import/import/row.js +50 -0
  289. package/core/server/services/content-import/import/store.js +71 -0
  290. package/core/server/services/content-import/index.js +67 -0
  291. package/core/server/services/email-analytics/automation-email-analytics-batch-processor.js +1 -1
  292. package/core/server/services/email-analytics/index.js +3 -1
  293. package/core/server/services/email-analytics/jobs/index.js +2 -2
  294. package/core/server/services/email-service/email-service-wrapper.js +1 -1
  295. package/core/server/services/email-suppression-list/email-suppression-list.js +4 -2
  296. package/core/server/services/gifts/CONTEXT.md +27 -3
  297. package/core/server/services/gifts/README.md +8 -4
  298. package/core/server/services/gifts/constants.js +2 -1
  299. package/core/server/services/gifts/email-templates/gift-delivery.hbs +20 -0
  300. package/core/server/services/gifts/email-templates/gift-delivery.js +39 -0
  301. package/core/server/services/gifts/email-templates/gift-purchase-confirmation.hbs +2 -2
  302. package/core/server/services/gifts/email-templates/gift-purchase-confirmation.js +19 -4
  303. package/core/server/services/gifts/events/send-gift-delivery-event.js +15 -0
  304. package/core/server/services/gifts/gift-bookshelf-repository.js +23 -3
  305. package/core/server/services/gifts/gift-checkout-adapter.js +5 -3
  306. package/core/server/services/gifts/gift-codec.js +8 -0
  307. package/core/server/services/gifts/gift-delivery-bookshelf-repository.js +107 -0
  308. package/core/server/services/gifts/gift-delivery-codec.js +12 -0
  309. package/core/server/services/gifts/gift-delivery-schema.js +15 -0
  310. package/core/server/services/gifts/gift-delivery-service.js +209 -0
  311. package/core/server/services/gifts/gift-email-renderer.js +13 -1
  312. package/core/server/services/gifts/gift-email-service.js +97 -17
  313. package/core/server/services/gifts/gift-schema.js +10 -6
  314. package/core/server/services/gifts/gift-service.js +259 -34
  315. package/core/server/services/gifts/gift.js +59 -5
  316. package/core/server/services/gifts/index.js +69 -3
  317. package/core/server/services/lib/mailgun-client.js +5 -2
  318. package/core/server/services/mail/ghost-mailer.js +9 -1
  319. package/core/server/services/member-welcome-emails/service.js +6 -1
  320. package/core/server/services/members/members-api/controllers/router-controller.js +26 -8
  321. package/core/server/services/stripe/services/webhook/checkout-session-event-service.js +100 -12
  322. package/core/server/services/stripe/stripe-api.js +3 -2
  323. package/core/server/services/stripe/webhook-controller.js +6 -3
  324. package/core/server/services/stripe/webhook-manager.js +2 -0
  325. package/core/shared/labs.js +1 -0
  326. package/package.json +9 -8
  327. package/pnpm-lock.yaml +26 -11
  328. package/pnpm-workspace.yaml +5 -6
  329. package/content/themes/source/yarn.lock +0 -6232
  330. package/core/built/admin/assets/Combination-BDvCdg1t.js +0 -41
  331. package/core/built/admin/assets/about-B_BvSyLF.js +0 -1
  332. package/core/built/admin/assets/account-migration-oJUGxnzT.js +0 -1
  333. package/core/built/admin/assets/activitypub/dist-Dqggkccr.js +0 -215
  334. package/core/built/admin/assets/activitypub/inbox-z1o2j1Tb.js +0 -1221
  335. package/core/built/admin/assets/activitypub/layout-BRMezuty.js +0 -1
  336. package/core/built/admin/assets/activitypub/moderation-CZudJi8N.js +0 -160
  337. package/core/built/admin/assets/activitypub/settings-CrSV1cux.js +0 -107
  338. package/core/built/admin/assets/add-integration-modal-BW23PDYs.js +0 -1
  339. package/core/built/admin/assets/add-newsletter-modal-M0ls8BKO.js +0 -1
  340. package/core/built/admin/assets/add-recommendation-modal-B0NeBMzl.js +0 -1
  341. package/core/built/admin/assets/announcement-bar-modal-pXBqjQE_.js +0 -1
  342. package/core/built/admin/assets/api-keys-Df6uv1dT.js +0 -1
  343. package/core/built/admin/assets/audience-BY8od8If.js +0 -1
  344. package/core/built/admin/assets/automations-DCs6Wady.js +0 -1
  345. package/core/built/admin/assets/bluesky-sharing-D0P42Cws.js +0 -1
  346. package/core/built/admin/assets/breadcrumb-MTj_cKLb.js +0 -1
  347. package/core/built/admin/assets/chart-helpers-DcO3k_vA.js +0 -1
  348. package/core/built/admin/assets/chunk-KS7C4IRE-DG9HTHQ3.js +0 -4
  349. package/core/built/admin/assets/color-picker-CBlJMv3y.js +0 -3
  350. package/core/built/admin/assets/combobox-BbPJzjCp.js +0 -1
  351. package/core/built/admin/assets/command-BrhXIlDr.js +0 -1
  352. package/core/built/admin/assets/comments-Cu4rD1aJ.js +0 -1
  353. package/core/built/admin/assets/confirmation-provider-BEdrnHns.js +0 -1
  354. package/core/built/admin/assets/custom-field-type-option-CNhAgHbJ.js +0 -1
  355. package/core/built/admin/assets/custom-integration-modal-CrGOI8IB.js +0 -1
  356. package/core/built/admin/assets/date-range-select-Bsh4gIek.js +0 -1
  357. package/core/built/admin/assets/design-and-theme-modal-DWZguwWX.js +0 -23
  358. package/core/built/admin/assets/dirty-confirm-dialog-DmdMpgyN.js +0 -1
  359. package/core/built/admin/assets/disabled-sources-indicator-BLnmyWgt.js +0 -1
  360. package/core/built/admin/assets/dist-DMFGvqqU.js +0 -1
  361. package/core/built/admin/assets/dist-DlCyLrOC.js +0 -1
  362. package/core/built/admin/assets/dist-j1xxxnY8.js +0 -1
  363. package/core/built/admin/assets/domain-Dp9TRrFp.js +0 -1
  364. package/core/built/admin/assets/edit-profile-DG6lpMsr.js +0 -1
  365. package/core/built/admin/assets/editor-CPQOrhrn.js +0 -8
  366. package/core/built/admin/assets/embed-signup-form-modal-CgWniDha.js +0 -9
  367. package/core/built/admin/assets/explore-C3rzONJv.js +0 -1
  368. package/core/built/admin/assets/feed-DpUwS1cU.js +0 -1
  369. package/core/built/admin/assets/filters-DZJT29GW.js +0 -1
  370. package/core/built/admin/assets/first-promoter-modal-DJhQQheG.js +0 -1
  371. package/core/built/admin/assets/gift-link-modal-sdFLjND9.js +0 -1
  372. package/core/built/admin/assets/global-data-provider-CixmTX00.js +0 -1
  373. package/core/built/admin/assets/growth-0YYkBEeS.js +0 -1
  374. package/core/built/admin/assets/growth-DpjAPeQT.js +0 -3
  375. package/core/built/admin/assets/history-modal-BWJ4-cJ0.js +0 -1
  376. package/core/built/admin/assets/html-field-C-oa5DEl.js +0 -1
  377. package/core/built/admin/assets/iframe-buffering-Ba9sDpi2.js +0 -1
  378. package/core/built/admin/assets/index-BOJzlYiz.js +0 -67
  379. package/core/built/admin/assets/index-Bid6LAyc.css +0 -1
  380. package/core/built/admin/assets/invite-user-modal-DCiQSiuD.js +0 -1
  381. package/core/built/admin/assets/koenig-editor-base-BApy8Q7C.js +0 -1
  382. package/core/built/admin/assets/kpi-helpers-ssbuy-hD.js +0 -1
  383. package/core/built/admin/assets/kpi-tabs-BqoIM6bI.js +0 -1
  384. package/core/built/admin/assets/label-picker-Cvvbmzb5.js +0 -1
  385. package/core/built/admin/assets/layout-DkkGyev2.js +0 -1
  386. package/core/built/admin/assets/member-custom-fields-CvGcpaiW.js +0 -1
  387. package/core/built/admin/assets/member-detail-CMCMZ47_.js +0 -1
  388. package/core/built/admin/assets/members-sRl6fNfq.js +0 -11
  389. package/core/built/admin/assets/moderation-KhKwGqI1.js +0 -1
  390. package/core/built/admin/assets/multi-select-combobox-nhCff0_K.js +0 -1
  391. package/core/built/admin/assets/navigation-modal-MDJExWDJ.js +0 -1
  392. package/core/built/admin/assets/newsletter-BIBHumfV.js +0 -1
  393. package/core/built/admin/assets/newsletter-detail-modal-CfjBMH3v.js +0 -1
  394. package/core/built/admin/assets/newsletter-emails-ClDL-7dA.js +0 -1
  395. package/core/built/admin/assets/newsletters-CBe-IPzK.js +0 -1
  396. package/core/built/admin/assets/note-HnNUOt4d.js +0 -1
  397. package/core/built/admin/assets/notifications-Cj5e-258.js +0 -1
  398. package/core/built/admin/assets/offers-container-modal-BHwHtixC.js +0 -1
  399. package/core/built/admin/assets/onboarding-route-D_4jp7Nq.js +0 -1
  400. package/core/built/admin/assets/overview-CezDdg-F.js +0 -1
  401. package/core/built/admin/assets/overview-D5mM51Lj.js +0 -1
  402. package/core/built/admin/assets/pintura-modal-BXXJ8Iaa.js +0 -1
  403. package/core/built/admin/assets/portal-frame-BLCvF8f-.js +0 -1
  404. package/core/built/admin/assets/portal-modal-DN80tAcy.js +0 -1
  405. package/core/built/admin/assets/post-analytics-header-_ydSY8qO.js +0 -1
  406. package/core/built/admin/assets/post-share-modal-CzYak_a5.js +0 -1
  407. package/core/built/admin/assets/preferences-gneLb6LV.js +0 -5
  408. package/core/built/admin/assets/preview-modal-Bkq-tgVm.js +0 -1
  409. package/core/built/admin/assets/profile-CzXmCNTC.js +0 -1
  410. package/core/built/admin/assets/radio-group-Dsq5ZEbV.js +0 -1
  411. package/core/built/admin/assets/router-provider-CkB_ArLF.js +0 -1
  412. package/core/built/admin/assets/select-xuZAuDyS.js +0 -1
  413. package/core/built/admin/assets/settings-Ct8pabhr.js +0 -1
  414. package/core/built/admin/assets/settings-KSWWQanQ.js +0 -4
  415. package/core/built/admin/assets/settings-breadcrumbs-DbPGu-Tu.js +0 -1
  416. package/core/built/admin/assets/share-modal-CdiUx9WM.js +0 -1
  417. package/core/built/admin/assets/slack-modal-BP--Z3jE.js +0 -1
  418. package/core/built/admin/assets/sort-button-CjfKdlsL.js +0 -1
  419. package/core/built/admin/assets/source-icon-DHj1h6Ts.js +0 -1
  420. package/core/built/admin/assets/stats-C615kulJ.js +0 -1
  421. package/core/built/admin/assets/stats-view-BSMRdYiN.js +0 -1
  422. package/core/built/admin/assets/step-1-pSdGYtIF.js +0 -1
  423. package/core/built/admin/assets/step-2-T9Uy4eBD.js +0 -1
  424. package/core/built/admin/assets/step-3-D4uXe_XG.js +0 -2
  425. package/core/built/admin/assets/stripe-connect-modal-C2vTvepi.js +0 -1
  426. package/core/built/admin/assets/switch-CE2NuMn-.js +0 -1
  427. package/core/built/admin/assets/tabs-l9c7FjzI.js +0 -1
  428. package/core/built/admin/assets/tag-detail-DBw_M2-p.js +0 -2
  429. package/core/built/admin/assets/tags-DoWsAG6l.js +0 -1
  430. package/core/built/admin/assets/testimonials-modal-BZKePE2T.js +0 -1
  431. package/core/built/admin/assets/tier-detail-modal-D65pVWsN.js +0 -1
  432. package/core/built/admin/assets/toggle-group-uJnl42w3.js +0 -1
  433. package/core/built/admin/assets/topic-filter-BM7hz0kW.js +0 -1
  434. package/core/built/admin/assets/transistor-modal-VZOGN3od.js +0 -1
  435. package/core/built/admin/assets/unsplash-modal-CKGfACxF.js +0 -1
  436. package/core/built/admin/assets/use-check-theme-limit-error-CGp3CGT5.js +0 -1
  437. package/core/built/admin/assets/use-feature-flag-CSq2Lwzt.js +0 -1
  438. package/core/built/admin/assets/use-filter-params-0hcJJuEJ.js +0 -1
  439. package/core/built/admin/assets/use-limiter-ffwpsZPp.js +0 -2
  440. package/core/built/admin/assets/use-pintura-editor-Cb41oJyL.js +0 -1
  441. package/core/built/admin/assets/use-query-params-DHhhu8wi.js +0 -1
  442. package/core/built/admin/assets/use-reply-chain-data-C0ZUTkfk.js +0 -1
  443. package/core/built/admin/assets/use-setting-group-Bx8M6FL2.js +0 -1
  444. package/core/built/admin/assets/use-settings-navigation-BOZcat_V.js +0 -1
  445. package/core/built/admin/assets/use-upgrade-route-B3_DUiuT.js +0 -1
  446. package/core/built/admin/assets/user-detail-modal-595z1N5r.js +0 -1
  447. package/core/built/admin/assets/web-CAta3lRE.js +0 -1
  448. package/core/built/admin/assets/web-Ds9_wWJK.js +0 -2
  449. package/core/built/admin/assets/zapier-modal-CcfDZY53.js +0 -1
  450. package/core/server/data/seeders/utils/database-date.js +0 -28
  451. package/core/server/services/automations/database-date.js +0 -59
  452. /package/core/built/admin/assets/{dist-CqO2lWS02.js → dist-CqO2lWS0.js} +0 -0
  453. /package/core/server/services/{automations → lib}/mailgun-message-id.js +0 -0
@@ -0,0 +1 @@
1
+ import{o as e,r as t}from"./rolldown-runtime-DAXXjFlN.js";import{t as n}from"./react-Bb3IsNbi.js";import{t as r}from"./jsx-runtime-DX3WBWVO.js";import{c as i,o as a}from"./dist-Cb5RSHSg.js";import{Kn as o,Qn as s,Qt as c,Xn as l,Yn as u,Zn as d,a as f,ar as p,dt as m,n as h,t as g}from"./button-BshWPHvn.js";import{a as _,c as v,i as y,o as b,r as x,s as S,t as ee}from"./command-151T2eRx.js";import{t as te}from"./switch-B_1yU3Aw.js";import{$r as C,Dr as ne,Er as re,Ir as w,Lr as T,Yr as ie,Zr as ae,ai as oe,wr as se,zr as ce}from"./index-BJz9Zlsc.js";function E(e,t,n=`long`){return new Intl.DateTimeFormat(`en-US`,{hour:`numeric`,timeZone:e,timeZoneName:n}).format(t).split(/\s/g).slice(2).join(` `)}var D={},O={};function k(e,t){try{let n=(D[e]||=new Intl.DateTimeFormat(`en-US`,{timeZone:e,timeZoneName:`longOffset`}).format)(t).split(`GMT`)[1];return n in O?O[n]:ue(n,n.split(`:`))}catch{if(e in O)return O[e];let t=e?.match(le);return t?ue(e,t.slice(1)):NaN}}var le=/([+-]\d\d):?(\d\d)?/;function ue(e,t){let n=+(t[0]||0),r=+(t[1]||0),i=(t[2]||0)/60;return O[e]=n*60+r>0?n*60+r+i:n*60-r-i}var A=class e extends Date{constructor(...e){super(),e.length>1&&typeof e[e.length-1]==`string`&&(this.timeZone=e.pop()),this.internal=new Date,isNaN(k(this.timeZone,this))?this.setTime(NaN):e.length?typeof e[0]==`number`&&(e.length===1||e.length===2&&typeof e[1]!=`number`)?this.setTime(e[0]):typeof e[0]==`string`?this.setTime(+new Date(e[0])):e[0]instanceof Date?this.setTime(+e[0]):(this.setTime(+new Date(...e)),fe(this,e)):this.setTime(Date.now())}static tz(t,...n){return n.length?new e(...n,t):new e(Date.now(),t)}withTimeZone(t){return new e(+this,t)}getTimezoneOffset(){let e=-k(this.timeZone,this);return e>0?Math.floor(e):Math.ceil(e)}setTime(e){return Date.prototype.setTime.apply(this,arguments),M(this),+this}[Symbol.for(`constructDateFrom`)](t){return new e(+new Date(t),this.timeZone)}},j=/^(get|set)(?!UTC)/;Object.getOwnPropertyNames(Date.prototype).forEach(e=>{if(!j.test(e))return;let t=e.replace(j,`$1UTC`);A.prototype[t]&&(e.startsWith(`get`)?A.prototype[e]=function(){return this.internal[t]()}:(A.prototype[e]=function(){return Date.prototype[t].apply(this.internal,arguments),de(this),+this},A.prototype[t]=function(){return Date.prototype[t].apply(this,arguments),M(this),+this}))});function M(e){e.internal.setTime(+e),e.internal.setUTCSeconds(e.internal.getUTCSeconds()-Math.round(-k(e.timeZone,e)*60))}function de(e){Date.prototype.setFullYear.call(e,e.internal.getUTCFullYear(),e.internal.getUTCMonth(),e.internal.getUTCDate()),Date.prototype.setHours.call(e,e.internal.getUTCHours(),e.internal.getUTCMinutes(),e.internal.getUTCSeconds(),e.internal.getUTCMilliseconds()),fe(e)}function fe(e,t){let n=Array.isArray(t)?pe(t):+e.internal,r=k(e.timeZone,e),i=r>0?Math.floor(r):Math.ceil(r),a=new Date(+e);a.setUTCHours(a.getUTCHours()-1);let o=-new Date(+e).getTimezoneOffset(),s=-new Date(+a).getTimezoneOffset(),c=o-s,l=o;if(c&&o!==i&&Date.prototype.getHours.apply(e)!==(Array.isArray(t)?t[3]||0:e.internal.getUTCHours())){let t=new Date(+e),n=o-i;n&&t.setUTCMinutes(t.getUTCMinutes()+n);let r=k(e.timeZone,t);(r>0?Math.floor(r):Math.ceil(r))===i&&(l=s)}let u=l-i;u&&Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+u);let d=new Date(+e);d.setUTCSeconds(0);let f=o>0?d.getSeconds():(d.getSeconds()-60)%60,p=Math.round(-(k(e.timeZone,e)*60))%60;(p||f)&&Date.prototype.setUTCSeconds.call(e,Date.prototype.getUTCSeconds.call(e)+p+f);let m=k(e.timeZone,e),h=m>0?Math.floor(m):Math.ceil(m),g=-new Date(+e).getTimezoneOffset()-h,_=h!==i,v=g-u,y=h-i,b=n-h*60*1e3,x=y>0&&me(e)-n===y*60*1e3&&me(e,b)!==n;if(_&&v&&!x){Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+v);let t=k(e.timeZone,e),n=h-(t>0?Math.floor(t):Math.ceil(t));n&&v<0&&Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+n)}M(e);let S=(t?n:n+p*1e3)-+e.internal;S&&Math.abs(S)<1800*1e3&&(Date.prototype.setTime.call(e,+e+S),M(e))}function pe(e){return Date.UTC(e[0],e.length>1?e[1]:0,e.length>2?e[2]:1,...e.slice(3))}function me(e,t){let n=new Date(t??+e);return n.setUTCSeconds(n.getUTCSeconds()-Math.round(-k(e.timeZone,n)*60)),+n}var N=class e extends A{static tz(t,...n){return n.length?new e(...n,t):new e(Date.now(),t)}toISOString(){let[e,t,n]=this.tzComponents(),r=`${e}${t}:${n}`;return this.internal.toISOString().slice(0,-1)+r}toString(){return`${this.toDateString()} ${this.toTimeString()}`}toDateString(){let[e,t,n,r]=this.internal.toUTCString().split(` `);return`${e?.slice(0,-1)} ${n} ${t} ${r}`}toTimeString(){let e=this.internal.toUTCString().split(` `)[4],[t,n,r]=this.tzComponents();return`${e} GMT${t}${n}${r} (${E(this.timeZone,this)})`}toLocaleString(e,t){return Date.prototype.toLocaleString.call(this,e,{...t,timeZone:t?.timeZone||this.timeZone})}toLocaleDateString(e,t){return Date.prototype.toLocaleDateString.call(this,e,{...t,timeZone:t?.timeZone||this.timeZone})}toLocaleTimeString(e,t){return Date.prototype.toLocaleTimeString.call(this,e,{...t,timeZone:t?.timeZone||this.timeZone})}tzComponents(){let e=this.getTimezoneOffset();return[e>0?`-`:`+`,String(Math.floor(Math.abs(e)/60)).padStart(2,`0`),String(Math.abs(e)%60).padStart(2,`0`)]}withTimeZone(t){return new e(+this,t)}[Symbol.for(`constructDateFrom`)](t){return new e(+new Date(t),this.timeZone)}},he=365.2425,P=6048e5,ge=864e5,F=3600*24;F*7,F*he/12*3;var _e=Symbol.for(`constructDateFrom`);function I(e,t){return typeof e==`function`?e(t):e&&typeof e==`object`&&_e in e?e[_e](t):e instanceof Date?new e.constructor(t):new Date(t)}function L(e,t){return I(t||e,e)}function ve(e,t,n){let r=L(e,n?.in);return isNaN(t)?I(n?.in||e,NaN):(t&&r.setDate(r.getDate()+t),r)}function ye(e,t,n){let r=L(e,n?.in);if(isNaN(t))return I(n?.in||e,NaN);if(!t)return r;let i=r.getDate(),a=I(n?.in||e,r.getTime());return a.setMonth(r.getMonth()+t+1,0),i>=a.getDate()?a:(r.setFullYear(a.getFullYear(),a.getMonth(),i),r)}var be={};function xe(){return be}function R(e,t){let n=xe(),r=t?.weekStartsOn??t?.locale?.options?.weekStartsOn??n.weekStartsOn??n.locale?.options?.weekStartsOn??0,i=L(e,t?.in),a=i.getDay(),o=(a<r?7:0)+a-r;return i.setDate(i.getDate()-o),i.setHours(0,0,0,0),i}function Se(e,t){return R(e,{...t,weekStartsOn:1})}function Ce(e,t){let n=L(e,t?.in),r=n.getFullYear(),i=I(n,0);i.setFullYear(r+1,0,4),i.setHours(0,0,0,0);let a=Se(i),o=I(n,0);o.setFullYear(r,0,4),o.setHours(0,0,0,0);let s=Se(o);return n.getTime()>=a.getTime()?r+1:n.getTime()>=s.getTime()?r:r-1}function we(e){let t=L(e),n=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()));return n.setUTCFullYear(t.getFullYear()),e-+n}function Te(e,...t){let n=I.bind(null,e||t.find(e=>typeof e==`object`));return t.map(n)}function Ee(e,t){let n=L(e,t?.in);return n.setHours(0,0,0,0),n}function De(e,t,n){let[r,i]=Te(n?.in,e,t),a=Ee(r),o=Ee(i),s=+a-we(a),c=+o-we(o);return Math.round((s-c)/ge)}function Oe(e,t){let n=Ce(e,t),r=I(t?.in||e,0);return r.setFullYear(n,0,4),r.setHours(0,0,0,0),Se(r)}function ke(e,t,n){return ve(e,t*7,n)}function Ae(e,t,n){return ye(e,t*12,n)}function je(e,t){let n,r=t?.in;return e.forEach(e=>{!r&&typeof e==`object`&&(r=I.bind(null,e));let t=L(e,r);(!n||n<t||isNaN(+t))&&(n=t)}),I(r,n||NaN)}function Me(e,t){let n,r=t?.in;return e.forEach(e=>{!r&&typeof e==`object`&&(r=I.bind(null,e));let t=L(e,r);(!n||n>t||isNaN(+t))&&(n=t)}),I(r,n||NaN)}function Ne(e,t,n){let[r,i]=Te(n?.in,e,t);return+Ee(r)==+Ee(i)}function Pe(e){return e instanceof Date||typeof e==`object`&&Object.prototype.toString.call(e)===`[object Date]`}function Fe(e){return!(!Pe(e)&&typeof e!=`number`||isNaN(+L(e)))}function Ie(e,t,n){let[r,i]=Te(n?.in,e,t),a=r.getFullYear()-i.getFullYear(),o=r.getMonth()-i.getMonth();return a*12+o}function Le(e,t){let n=L(e,t?.in),r=n.getMonth();return n.setFullYear(n.getFullYear(),r+1,0),n.setHours(23,59,59,999),n}function Re(e,t){let[n,r]=Te(e,t.start,t.end);return{start:n,end:r}}function ze(e,t){let{start:n,end:r}=Re(t?.in,e),i=+n>+r,a=i?+n:+r,o=i?r:n;o.setHours(0,0,0,0),o.setDate(1);let s=t?.step??1;if(!s)return[];s<0&&(s=-s,i=!i);let c=[];for(;+o<=a;)c.push(I(n,o)),o.setMonth(o.getMonth()+s);return i?c.reverse():c}function Be(e,t){let n=L(e,t?.in);return n.setDate(1),n.setHours(0,0,0,0),n}function Ve(e,t){let n=L(e,t?.in),r=n.getFullYear();return n.setFullYear(r+1,0,0),n.setHours(23,59,59,999),n}function He(e,t){let n=L(e,t?.in);return n.setFullYear(n.getFullYear(),0,1),n.setHours(0,0,0,0),n}function Ue(e,t){let{start:n,end:r}=Re(t?.in,e),i=+n>+r,a=i?+n:+r,o=i?r:n;o.setHours(0,0,0,0),o.setMonth(0,1);let s=t?.step??1;if(!s)return[];s<0&&(s=-s,i=!i);let c=[];for(;+o<=a;)c.push(I(n,o)),o.setFullYear(o.getFullYear()+s);return i?c.reverse():c}function We(e,t){let n=xe(),r=t?.weekStartsOn??t?.locale?.options?.weekStartsOn??n.weekStartsOn??n.locale?.options?.weekStartsOn??0,i=L(e,t?.in),a=i.getDay(),o=(a<r?-7:0)+6-(a-r);return i.setDate(i.getDate()+o),i.setHours(23,59,59,999),i}function Ge(e,t){return We(e,{...t,weekStartsOn:1})}var Ke={lessThanXSeconds:{one:`less than a second`,other:`less than {{count}} seconds`},xSeconds:{one:`1 second`,other:`{{count}} seconds`},halfAMinute:`half a minute`,lessThanXMinutes:{one:`less than a minute`,other:`less than {{count}} minutes`},xMinutes:{one:`1 minute`,other:`{{count}} minutes`},aboutXHours:{one:`about 1 hour`,other:`about {{count}} hours`},xHours:{one:`1 hour`,other:`{{count}} hours`},xDays:{one:`1 day`,other:`{{count}} days`},aboutXWeeks:{one:`about 1 week`,other:`about {{count}} weeks`},xWeeks:{one:`1 week`,other:`{{count}} weeks`},aboutXMonths:{one:`about 1 month`,other:`about {{count}} months`},xMonths:{one:`1 month`,other:`{{count}} months`},aboutXYears:{one:`about 1 year`,other:`about {{count}} years`},xYears:{one:`1 year`,other:`{{count}} years`},overXYears:{one:`over 1 year`,other:`over {{count}} years`},almostXYears:{one:`almost 1 year`,other:`almost {{count}} years`}},qe=(e,t,n)=>{let r,i=Ke[e];return r=typeof i==`string`?i:t===1?i.one:i.other.replace(`{{count}}`,t.toString()),n?.addSuffix?n.comparison&&n.comparison>0?`in `+r:r+` ago`:r};function Je(e){return(t={})=>{let n=t.width?String(t.width):e.defaultWidth;return e.formats[n]||e.formats[e.defaultWidth]}}var Ye={date:Je({formats:{full:`EEEE, MMMM do, y`,long:`MMMM do, y`,medium:`MMM d, y`,short:`MM/dd/yyyy`},defaultWidth:`full`}),time:Je({formats:{full:`h:mm:ss a zzzz`,long:`h:mm:ss a z`,medium:`h:mm:ss a`,short:`h:mm a`},defaultWidth:`full`}),dateTime:Je({formats:{full:`{{date}} 'at' {{time}}`,long:`{{date}} 'at' {{time}}`,medium:`{{date}}, {{time}}`,short:`{{date}}, {{time}}`},defaultWidth:`full`})},Xe={lastWeek:`'last' eeee 'at' p`,yesterday:`'yesterday at' p`,today:`'today at' p`,tomorrow:`'tomorrow at' p`,nextWeek:`eeee 'at' p`,other:`P`},Ze=(e,t,n,r)=>Xe[e];function Qe(e){return(t,n)=>{let r=n?.context?String(n.context):`standalone`,i;if(r===`formatting`&&e.formattingValues){let t=e.defaultFormattingWidth||e.defaultWidth,r=n?.width?String(n.width):t;i=e.formattingValues[r]||e.formattingValues[t]}else{let t=e.defaultWidth,r=n?.width?String(n.width):e.defaultWidth;i=e.values[r]||e.values[t]}let a=e.argumentCallback?e.argumentCallback(t):t;return i[a]}}var $e={ordinalNumber:(e,t)=>{let n=Number(e),r=n%100;if(r>20||r<10)switch(r%10){case 1:return n+`st`;case 2:return n+`nd`;case 3:return n+`rd`}return n+`th`},era:Qe({values:{narrow:[`B`,`A`],abbreviated:[`BC`,`AD`],wide:[`Before Christ`,`Anno Domini`]},defaultWidth:`wide`}),quarter:Qe({values:{narrow:[`1`,`2`,`3`,`4`],abbreviated:[`Q1`,`Q2`,`Q3`,`Q4`],wide:[`1st quarter`,`2nd quarter`,`3rd quarter`,`4th quarter`]},defaultWidth:`wide`,argumentCallback:e=>e-1}),month:Qe({values:{narrow:[`J`,`F`,`M`,`A`,`M`,`J`,`J`,`A`,`S`,`O`,`N`,`D`],abbreviated:[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`],wide:[`January`,`February`,`March`,`April`,`May`,`June`,`July`,`August`,`September`,`October`,`November`,`December`]},defaultWidth:`wide`}),day:Qe({values:{narrow:[`S`,`M`,`T`,`W`,`T`,`F`,`S`],short:[`Su`,`Mo`,`Tu`,`We`,`Th`,`Fr`,`Sa`],abbreviated:[`Sun`,`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`],wide:[`Sunday`,`Monday`,`Tuesday`,`Wednesday`,`Thursday`,`Friday`,`Saturday`]},defaultWidth:`wide`}),dayPeriod:Qe({values:{narrow:{am:`a`,pm:`p`,midnight:`mi`,noon:`n`,morning:`morning`,afternoon:`afternoon`,evening:`evening`,night:`night`},abbreviated:{am:`AM`,pm:`PM`,midnight:`midnight`,noon:`noon`,morning:`morning`,afternoon:`afternoon`,evening:`evening`,night:`night`},wide:{am:`a.m.`,pm:`p.m.`,midnight:`midnight`,noon:`noon`,morning:`morning`,afternoon:`afternoon`,evening:`evening`,night:`night`}},defaultWidth:`wide`,formattingValues:{narrow:{am:`a`,pm:`p`,midnight:`mi`,noon:`n`,morning:`in the morning`,afternoon:`in the afternoon`,evening:`in the evening`,night:`at night`},abbreviated:{am:`AM`,pm:`PM`,midnight:`midnight`,noon:`noon`,morning:`in the morning`,afternoon:`in the afternoon`,evening:`in the evening`,night:`at night`},wide:{am:`a.m.`,pm:`p.m.`,midnight:`midnight`,noon:`noon`,morning:`in the morning`,afternoon:`in the afternoon`,evening:`in the evening`,night:`at night`}},defaultFormattingWidth:`wide`})};function et(e){return(t,n={})=>{let r=n.width,i=r&&e.matchPatterns[r]||e.matchPatterns[e.defaultMatchWidth],a=t.match(i);if(!a)return null;let o=a[0],s=r&&e.parsePatterns[r]||e.parsePatterns[e.defaultParseWidth],c=Array.isArray(s)?nt(s,e=>e.test(o)):tt(s,e=>e.test(o)),l;l=e.valueCallback?e.valueCallback(c):c,l=n.valueCallback?n.valueCallback(l):l;let u=t.slice(o.length);return{value:l,rest:u}}}function tt(e,t){for(let n in e)if(Object.prototype.hasOwnProperty.call(e,n)&&t(e[n]))return n}function nt(e,t){for(let n=0;n<e.length;n++)if(t(e[n]))return n}function rt(e){return(t,n={})=>{let r=t.match(e.matchPattern);if(!r)return null;let i=r[0],a=t.match(e.parsePattern);if(!a)return null;let o=e.valueCallback?e.valueCallback(a[0]):a[0];o=n.valueCallback?n.valueCallback(o):o;let s=t.slice(i.length);return{value:o,rest:s}}}var it={code:`en-US`,formatDistance:qe,formatLong:Ye,formatRelative:Ze,localize:$e,match:{ordinalNumber:rt({matchPattern:/^(\d+)(th|st|nd|rd)?/i,parsePattern:/\d+/i,valueCallback:e=>parseInt(e,10)}),era:et({matchPatterns:{narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},defaultMatchWidth:`wide`,parsePatterns:{any:[/^b/i,/^(a|c)/i]},defaultParseWidth:`any`}),quarter:et({matchPatterns:{narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},defaultMatchWidth:`wide`,parsePatterns:{any:[/1/i,/2/i,/3/i,/4/i]},defaultParseWidth:`any`,valueCallback:e=>e+1}),month:et({matchPatterns:{narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},defaultMatchWidth:`wide`,parsePatterns:{narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},defaultParseWidth:`any`}),day:et({matchPatterns:{narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},defaultMatchWidth:`wide`,parsePatterns:{narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},defaultParseWidth:`any`}),dayPeriod:et({matchPatterns:{narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},defaultMatchWidth:`any`,parsePatterns:{any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},defaultParseWidth:`any`})},options:{weekStartsOn:0,firstWeekContainsDate:1}};function at(e,t){let n=L(e,t?.in);return De(n,He(n))+1}function ot(e,t){let n=L(e,t?.in),r=Se(n)-+Oe(n);return Math.round(r/P)+1}function st(e,t){let n=L(e,t?.in),r=n.getFullYear(),i=xe(),a=t?.firstWeekContainsDate??t?.locale?.options?.firstWeekContainsDate??i.firstWeekContainsDate??i.locale?.options?.firstWeekContainsDate??1,o=I(t?.in||e,0);o.setFullYear(r+1,0,a),o.setHours(0,0,0,0);let s=R(o,t),c=I(t?.in||e,0);c.setFullYear(r,0,a),c.setHours(0,0,0,0);let l=R(c,t);return+n>=+s?r+1:+n>=+l?r:r-1}function ct(e,t){let n=xe(),r=t?.firstWeekContainsDate??t?.locale?.options?.firstWeekContainsDate??n.firstWeekContainsDate??n.locale?.options?.firstWeekContainsDate??1,i=st(e,t),a=I(t?.in||e,0);return a.setFullYear(i,0,r),a.setHours(0,0,0,0),R(a,t)}function lt(e,t){let n=L(e,t?.in),r=R(n,t)-+ct(n,t);return Math.round(r/P)+1}function z(e,t){return(e<0?`-`:``)+Math.abs(e).toString().padStart(t,`0`)}var ut={y(e,t){let n=e.getFullYear(),r=n>0?n:1-n;return z(t===`yy`?r%100:r,t.length)},M(e,t){let n=e.getMonth();return t===`M`?String(n+1):z(n+1,2)},d(e,t){return z(e.getDate(),t.length)},a(e,t){let n=e.getHours()/12>=1?`pm`:`am`;switch(t){case`a`:case`aa`:return n.toUpperCase();case`aaa`:return n;case`aaaaa`:return n[0];default:return n===`am`?`a.m.`:`p.m.`}},h(e,t){return z(e.getHours()%12||12,t.length)},H(e,t){return z(e.getHours(),t.length)},m(e,t){return z(e.getMinutes(),t.length)},s(e,t){return z(e.getSeconds(),t.length)},S(e,t){let n=t.length,r=e.getMilliseconds();return z(Math.trunc(r*10**(n-3)),t.length)}},dt={am:`am`,pm:`pm`,midnight:`midnight`,noon:`noon`,morning:`morning`,afternoon:`afternoon`,evening:`evening`,night:`night`},ft={G:function(e,t,n){let r=+(e.getFullYear()>0);switch(t){case`G`:case`GG`:case`GGG`:return n.era(r,{width:`abbreviated`});case`GGGGG`:return n.era(r,{width:`narrow`});default:return n.era(r,{width:`wide`})}},y:function(e,t,n){if(t===`yo`){let t=e.getFullYear(),r=t>0?t:1-t;return n.ordinalNumber(r,{unit:`year`})}return ut.y(e,t)},Y:function(e,t,n,r){let i=st(e,r),a=i>0?i:1-i;return t===`YY`?z(a%100,2):t===`Yo`?n.ordinalNumber(a,{unit:`year`}):z(a,t.length)},R:function(e,t){return z(Ce(e),t.length)},u:function(e,t){return z(e.getFullYear(),t.length)},Q:function(e,t,n){let r=Math.ceil((e.getMonth()+1)/3);switch(t){case`Q`:return String(r);case`QQ`:return z(r,2);case`Qo`:return n.ordinalNumber(r,{unit:`quarter`});case`QQQ`:return n.quarter(r,{width:`abbreviated`,context:`formatting`});case`QQQQQ`:return n.quarter(r,{width:`narrow`,context:`formatting`});default:return n.quarter(r,{width:`wide`,context:`formatting`})}},q:function(e,t,n){let r=Math.ceil((e.getMonth()+1)/3);switch(t){case`q`:return String(r);case`qq`:return z(r,2);case`qo`:return n.ordinalNumber(r,{unit:`quarter`});case`qqq`:return n.quarter(r,{width:`abbreviated`,context:`standalone`});case`qqqqq`:return n.quarter(r,{width:`narrow`,context:`standalone`});default:return n.quarter(r,{width:`wide`,context:`standalone`})}},M:function(e,t,n){let r=e.getMonth();switch(t){case`M`:case`MM`:return ut.M(e,t);case`Mo`:return n.ordinalNumber(r+1,{unit:`month`});case`MMM`:return n.month(r,{width:`abbreviated`,context:`formatting`});case`MMMMM`:return n.month(r,{width:`narrow`,context:`formatting`});default:return n.month(r,{width:`wide`,context:`formatting`})}},L:function(e,t,n){let r=e.getMonth();switch(t){case`L`:return String(r+1);case`LL`:return z(r+1,2);case`Lo`:return n.ordinalNumber(r+1,{unit:`month`});case`LLL`:return n.month(r,{width:`abbreviated`,context:`standalone`});case`LLLLL`:return n.month(r,{width:`narrow`,context:`standalone`});default:return n.month(r,{width:`wide`,context:`standalone`})}},w:function(e,t,n,r){let i=lt(e,r);return t===`wo`?n.ordinalNumber(i,{unit:`week`}):z(i,t.length)},I:function(e,t,n){let r=ot(e);return t===`Io`?n.ordinalNumber(r,{unit:`week`}):z(r,t.length)},d:function(e,t,n){return t===`do`?n.ordinalNumber(e.getDate(),{unit:`date`}):ut.d(e,t)},D:function(e,t,n){let r=at(e);return t===`Do`?n.ordinalNumber(r,{unit:`dayOfYear`}):z(r,t.length)},E:function(e,t,n){let r=e.getDay();switch(t){case`E`:case`EE`:case`EEE`:return n.day(r,{width:`abbreviated`,context:`formatting`});case`EEEEE`:return n.day(r,{width:`narrow`,context:`formatting`});case`EEEEEE`:return n.day(r,{width:`short`,context:`formatting`});default:return n.day(r,{width:`wide`,context:`formatting`})}},e:function(e,t,n,r){let i=e.getDay(),a=(i-r.weekStartsOn+8)%7||7;switch(t){case`e`:return String(a);case`ee`:return z(a,2);case`eo`:return n.ordinalNumber(a,{unit:`day`});case`eee`:return n.day(i,{width:`abbreviated`,context:`formatting`});case`eeeee`:return n.day(i,{width:`narrow`,context:`formatting`});case`eeeeee`:return n.day(i,{width:`short`,context:`formatting`});default:return n.day(i,{width:`wide`,context:`formatting`})}},c:function(e,t,n,r){let i=e.getDay(),a=(i-r.weekStartsOn+8)%7||7;switch(t){case`c`:return String(a);case`cc`:return z(a,t.length);case`co`:return n.ordinalNumber(a,{unit:`day`});case`ccc`:return n.day(i,{width:`abbreviated`,context:`standalone`});case`ccccc`:return n.day(i,{width:`narrow`,context:`standalone`});case`cccccc`:return n.day(i,{width:`short`,context:`standalone`});default:return n.day(i,{width:`wide`,context:`standalone`})}},i:function(e,t,n){let r=e.getDay(),i=r===0?7:r;switch(t){case`i`:return String(i);case`ii`:return z(i,t.length);case`io`:return n.ordinalNumber(i,{unit:`day`});case`iii`:return n.day(r,{width:`abbreviated`,context:`formatting`});case`iiiii`:return n.day(r,{width:`narrow`,context:`formatting`});case`iiiiii`:return n.day(r,{width:`short`,context:`formatting`});default:return n.day(r,{width:`wide`,context:`formatting`})}},a:function(e,t,n){let r=e.getHours()/12>=1?`pm`:`am`;switch(t){case`a`:case`aa`:return n.dayPeriod(r,{width:`abbreviated`,context:`formatting`});case`aaa`:return n.dayPeriod(r,{width:`abbreviated`,context:`formatting`}).toLowerCase();case`aaaaa`:return n.dayPeriod(r,{width:`narrow`,context:`formatting`});default:return n.dayPeriod(r,{width:`wide`,context:`formatting`})}},b:function(e,t,n){let r=e.getHours(),i;switch(i=r===12?dt.noon:r===0?dt.midnight:r/12>=1?`pm`:`am`,t){case`b`:case`bb`:return n.dayPeriod(i,{width:`abbreviated`,context:`formatting`});case`bbb`:return n.dayPeriod(i,{width:`abbreviated`,context:`formatting`}).toLowerCase();case`bbbbb`:return n.dayPeriod(i,{width:`narrow`,context:`formatting`});default:return n.dayPeriod(i,{width:`wide`,context:`formatting`})}},B:function(e,t,n){let r=e.getHours(),i;switch(i=r>=17?dt.evening:r>=12?dt.afternoon:r>=4?dt.morning:dt.night,t){case`B`:case`BB`:case`BBB`:return n.dayPeriod(i,{width:`abbreviated`,context:`formatting`});case`BBBBB`:return n.dayPeriod(i,{width:`narrow`,context:`formatting`});default:return n.dayPeriod(i,{width:`wide`,context:`formatting`})}},h:function(e,t,n){if(t===`ho`){let t=e.getHours()%12;return t===0&&(t=12),n.ordinalNumber(t,{unit:`hour`})}return ut.h(e,t)},H:function(e,t,n){return t===`Ho`?n.ordinalNumber(e.getHours(),{unit:`hour`}):ut.H(e,t)},K:function(e,t,n){let r=e.getHours()%12;return t===`Ko`?n.ordinalNumber(r,{unit:`hour`}):z(r,t.length)},k:function(e,t,n){let r=e.getHours();return r===0&&(r=24),t===`ko`?n.ordinalNumber(r,{unit:`hour`}):z(r,t.length)},m:function(e,t,n){return t===`mo`?n.ordinalNumber(e.getMinutes(),{unit:`minute`}):ut.m(e,t)},s:function(e,t,n){return t===`so`?n.ordinalNumber(e.getSeconds(),{unit:`second`}):ut.s(e,t)},S:function(e,t){return ut.S(e,t)},X:function(e,t,n){let r=e.getTimezoneOffset();if(r===0)return`Z`;switch(t){case`X`:return mt(r);case`XXXX`:case`XX`:return ht(r);default:return ht(r,`:`)}},x:function(e,t,n){let r=e.getTimezoneOffset();switch(t){case`x`:return mt(r);case`xxxx`:case`xx`:return ht(r);default:return ht(r,`:`)}},O:function(e,t,n){let r=e.getTimezoneOffset();switch(t){case`O`:case`OO`:case`OOO`:return`GMT`+pt(r,`:`);default:return`GMT`+ht(r,`:`)}},z:function(e,t,n){let r=e.getTimezoneOffset();switch(t){case`z`:case`zz`:case`zzz`:return`GMT`+pt(r,`:`);default:return`GMT`+ht(r,`:`)}},t:function(e,t,n){return z(Math.trunc(e/1e3),t.length)},T:function(e,t,n){return z(+e,t.length)}};function pt(e,t=``){let n=e>0?`-`:`+`,r=Math.abs(e),i=Math.trunc(r/60),a=r%60;return a===0?n+String(i):n+String(i)+t+z(a,2)}function mt(e,t){return e%60==0?(e>0?`-`:`+`)+z(Math.abs(e)/60,2):ht(e,t)}function ht(e,t=``){let n=e>0?`-`:`+`,r=Math.abs(e),i=z(Math.trunc(r/60),2),a=z(r%60,2);return n+i+t+a}var gt=(e,t)=>{switch(e){case`P`:return t.date({width:`short`});case`PP`:return t.date({width:`medium`});case`PPP`:return t.date({width:`long`});default:return t.date({width:`full`})}},_t=(e,t)=>{switch(e){case`p`:return t.time({width:`short`});case`pp`:return t.time({width:`medium`});case`ppp`:return t.time({width:`long`});default:return t.time({width:`full`})}},vt={p:_t,P:(e,t)=>{let n=e.match(/(P+)(p+)?/)||[],r=n[1],i=n[2];if(!i)return gt(e,t);let a;switch(r){case`P`:a=t.dateTime({width:`short`});break;case`PP`:a=t.dateTime({width:`medium`});break;case`PPP`:a=t.dateTime({width:`long`});break;default:a=t.dateTime({width:`full`});break}return a.replace(`{{date}}`,gt(r,t)).replace(`{{time}}`,_t(i,t))}},yt=/^D+$/,bt=/^Y+$/,xt=[`D`,`DD`,`YY`,`YYYY`];function St(e){return yt.test(e)}function Ct(e){return bt.test(e)}function wt(e,t,n){let r=Tt(e,t,n);if(console.warn(r),xt.includes(e))throw RangeError(r)}function Tt(e,t,n){let r=e[0]===`Y`?`years`:`days of the month`;return`Use \`${e.toLowerCase()}\` instead of \`${e}\` (in \`${t}\`) for formatting ${r} to the input \`${n}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`}var Et=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,Dt=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,Ot=/^'([^]*?)'?$/,kt=/''/g,At=/[a-zA-Z]/;function jt(e,t,n){let r=xe(),i=n?.locale??r.locale??it,a=n?.firstWeekContainsDate??n?.locale?.options?.firstWeekContainsDate??r.firstWeekContainsDate??r.locale?.options?.firstWeekContainsDate??1,o=n?.weekStartsOn??n?.locale?.options?.weekStartsOn??r.weekStartsOn??r.locale?.options?.weekStartsOn??0,s=L(e,n?.in);if(!Fe(s))throw RangeError(`Invalid time value`);let c=t.match(Dt).map(e=>{let t=e[0];if(t===`p`||t===`P`){let n=vt[t];return n(e,i.formatLong)}return e}).join(``).match(Et).map(e=>{if(e===`''`)return{isToken:!1,value:`'`};let t=e[0];if(t===`'`)return{isToken:!1,value:Mt(e)};if(ft[t])return{isToken:!0,value:e};if(t.match(At))throw RangeError("Format string contains an unescaped latin alphabet character `"+t+"`");return{isToken:!1,value:e}});i.localize.preprocessor&&(c=i.localize.preprocessor(s,c));let l={firstWeekContainsDate:a,weekStartsOn:o,locale:i};return c.map(r=>{if(!r.isToken)return r.value;let a=r.value;(!n?.useAdditionalWeekYearTokens&&Ct(a)||!n?.useAdditionalDayOfYearTokens&&St(a))&&wt(a,t,String(e));let o=ft[a[0]];return o(s,a,i.localize,l)}).join(``)}function Mt(e){let t=e.match(Ot);return t?t[1].replace(kt,`'`):e}function Nt(e,t){let n=L(e,t?.in),r=n.getFullYear(),i=n.getMonth(),a=I(n,0);return a.setFullYear(r,i+1,0),a.setHours(0,0,0,0),a.getDate()}function Pt(e,t){return L(e,t?.in).getMonth()}function Ft(e,t){return L(e,t?.in).getFullYear()}function It(e,t){return+L(e)>+L(t)}function Lt(e,t){return+L(e)<+L(t)}function Rt(e,t,n){let[r,i]=Te(n?.in,e,t);return r.getFullYear()===i.getFullYear()&&r.getMonth()===i.getMonth()}function zt(e,t,n){let[r,i]=Te(n?.in,e,t);return r.getFullYear()===i.getFullYear()}function Bt(e,t,n){let r=L(e,n?.in),i=r.getFullYear(),a=r.getDate(),o=I(n?.in||e,0);o.setFullYear(i,t,15),o.setHours(0,0,0,0);let s=Nt(o);return r.setMonth(t,Math.min(a,s)),r}function Vt(e,t,n){let r=L(e,n?.in);return isNaN(+r)?I(n?.in||e,NaN):(r.setFullYear(t),r)}var Ht=5,Ut=4;function Wt(e,t){let n=t.startOfMonth(e),r=n.getDay()>0?n.getDay():7,i=t.addDays(e,-r+1),a=t.addDays(i,Ht*7-1);return t.getMonth(e)===t.getMonth(a)?Ht:Ut}function Gt(e,t){let n=t.startOfMonth(e),r=n.getDay();return r===1?n:r===0?t.addDays(n,-6):t.addDays(n,-1*(r-1))}function Kt(e,t){let n=Gt(e,t),r=Wt(e,t);return t.addDays(n,r*7-1)}var qt={...it,labels:{labelDayButton:(e,t,n,r)=>{let i;i=r&&typeof r.format==`function`?r.format.bind(r):(e,t)=>jt(e,t,{locale:it,...n});let a=i(e,`PPPP`);return t.today&&(a=`Today, ${a}`),t.selected&&(a=`${a}, selected`),a},labelMonthDropdown:`Choose the Month`,labelNext:`Go to the Next Month`,labelPrevious:`Go to the Previous Month`,labelWeekNumber:e=>`Week ${e}`,labelYearDropdown:`Choose the Year`,labelGrid:(e,t,n)=>{let r;return r=n&&typeof n.format==`function`?n.format.bind(n):(e,n)=>jt(e,n,{locale:it,...t}),r(e,`LLLL yyyy`)},labelGridcell:(e,t,n,r)=>{let i;i=r&&typeof r.format==`function`?r.format.bind(r):(e,t)=>jt(e,t,{locale:it,...n});let a=i(e,`PPPP`);return t?.today&&(a=`Today, ${a}`),a},labelNav:`Navigation bar`,labelWeekNumberHeader:`Week Number`,labelWeekday:(e,t,n)=>{let r;return r=n&&typeof n.format==`function`?n.format.bind(n):(e,n)=>jt(e,n,{locale:it,...t}),r(e,`cccc`)}}},B=class e{constructor(e,t){this.Date=Date,this.today=()=>this.overrides?.today?this.overrides.today():this.options.timeZone?N.tz(this.options.timeZone):new this.Date,this.newDate=(e,t,n)=>this.overrides?.newDate?this.overrides.newDate(e,t,n):this.options.timeZone?new N(e,t,n,this.options.timeZone):new Date(e,t,n),this.addDays=(e,t)=>this.overrides?.addDays?this.overrides.addDays(e,t):ve(e,t),this.addMonths=(e,t)=>this.overrides?.addMonths?this.overrides.addMonths(e,t):ye(e,t),this.addWeeks=(e,t)=>this.overrides?.addWeeks?this.overrides.addWeeks(e,t):ke(e,t),this.addYears=(e,t)=>this.overrides?.addYears?this.overrides.addYears(e,t):Ae(e,t),this.differenceInCalendarDays=(e,t)=>this.overrides?.differenceInCalendarDays?this.overrides.differenceInCalendarDays(e,t):De(e,t),this.differenceInCalendarMonths=(e,t)=>this.overrides?.differenceInCalendarMonths?this.overrides.differenceInCalendarMonths(e,t):Ie(e,t),this.eachMonthOfInterval=e=>this.overrides?.eachMonthOfInterval?this.overrides.eachMonthOfInterval(e):ze(e),this.eachYearOfInterval=e=>{let t=this.overrides?.eachYearOfInterval?this.overrides.eachYearOfInterval(e):Ue(e),n=new Set(t.map(e=>this.getYear(e)));if(n.size===t.length)return t;let r=[];return n.forEach(e=>{r.push(new Date(e,0,1))}),r},this.endOfBroadcastWeek=e=>this.overrides?.endOfBroadcastWeek?this.overrides.endOfBroadcastWeek(e):Kt(e,this),this.endOfISOWeek=e=>this.overrides?.endOfISOWeek?this.overrides.endOfISOWeek(e):Ge(e),this.endOfMonth=e=>this.overrides?.endOfMonth?this.overrides.endOfMonth(e):Le(e),this.endOfWeek=(e,t)=>this.overrides?.endOfWeek?this.overrides.endOfWeek(e,t):We(e,this.options),this.endOfYear=e=>this.overrides?.endOfYear?this.overrides.endOfYear(e):Ve(e),this.format=(e,t,n)=>{let r=this.overrides?.format?this.overrides.format(e,t,this.options):jt(e,t,this.options);return this.options.numerals&&this.options.numerals!==`latn`?this.replaceDigits(r):r},this.getISOWeek=e=>this.overrides?.getISOWeek?this.overrides.getISOWeek(e):ot(e),this.getMonth=(e,t)=>this.overrides?.getMonth?this.overrides.getMonth(e,this.options):Pt(e,this.options),this.getYear=(e,t)=>this.overrides?.getYear?this.overrides.getYear(e,this.options):Ft(e,this.options),this.getWeek=(e,t)=>this.overrides?.getWeek?this.overrides.getWeek(e,this.options):lt(e,this.options),this.isAfter=(e,t)=>this.overrides?.isAfter?this.overrides.isAfter(e,t):It(e,t),this.isBefore=(e,t)=>this.overrides?.isBefore?this.overrides.isBefore(e,t):Lt(e,t),this.isDate=e=>this.overrides?.isDate?this.overrides.isDate(e):Pe(e),this.isSameDay=(e,t)=>this.overrides?.isSameDay?this.overrides.isSameDay(e,t):Ne(e,t),this.isSameMonth=(e,t)=>this.overrides?.isSameMonth?this.overrides.isSameMonth(e,t):Rt(e,t),this.isSameYear=(e,t)=>this.overrides?.isSameYear?this.overrides.isSameYear(e,t):zt(e,t),this.max=e=>this.overrides?.max?this.overrides.max(e):je(e),this.min=e=>this.overrides?.min?this.overrides.min(e):Me(e),this.setMonth=(e,t)=>this.overrides?.setMonth?this.overrides.setMonth(e,t):Bt(e,t),this.setYear=(e,t)=>this.overrides?.setYear?this.overrides.setYear(e,t):Vt(e,t),this.startOfBroadcastWeek=(e,t)=>this.overrides?.startOfBroadcastWeek?this.overrides.startOfBroadcastWeek(e,this):Gt(e,this),this.startOfDay=e=>this.overrides?.startOfDay?this.overrides.startOfDay(e):Ee(e),this.startOfISOWeek=e=>this.overrides?.startOfISOWeek?this.overrides.startOfISOWeek(e):Se(e),this.startOfMonth=e=>this.overrides?.startOfMonth?this.overrides.startOfMonth(e):Be(e),this.startOfWeek=(e,t)=>this.overrides?.startOfWeek?this.overrides.startOfWeek(e,this.options):R(e,this.options),this.startOfYear=e=>this.overrides?.startOfYear?this.overrides.startOfYear(e):He(e),this.options={locale:qt,...e},this.overrides=t}getDigitMap(){let{numerals:e=`latn`}=this.options,t=new Intl.NumberFormat(`en-US`,{numberingSystem:e}),n={};for(let e=0;e<10;e++)n[e.toString()]=t.format(e);return n}replaceDigits(e){let t=this.getDigitMap();return e.replace(/\d/g,e=>t[e]||e)}formatNumber(e){return this.replaceDigits(e.toString())}getMonthYearOrder(){let t=this.options.locale?.code;return t&&e.yearFirstLocales.has(t)?`year-first`:`month-first`}formatMonthYear(t){let{locale:n,timeZone:r,numerals:i}=this.options,a=n?.code;if(a&&e.yearFirstLocales.has(a))try{return new Intl.DateTimeFormat(a,{month:`long`,year:`numeric`,timeZone:r,numberingSystem:i}).format(t)}catch{}let o=this.getMonthYearOrder()===`year-first`?`y LLLL`:`LLLL y`;return this.format(t,o)}};B.yearFirstLocales=new Set([`eu`,`hu`,`ja`,`ja-Hira`,`ja-JP`,`ko`,`ko-KR`,`lt`,`lt-LT`,`lv`,`lv-LV`,`mn`,`mn-MN`,`zh`,`zh-CN`,`zh-HK`,`zh-TW`]);var V=new B,Jt=class{constructor(e,t,n=V){this.date=e,this.displayMonth=t,this.outside=!!(t&&!n.isSameMonth(e,t)),this.dateLib=n,this.isoDate=n.format(e,`yyyy-MM-dd`),this.displayMonthId=n.format(t,`yyyy-MM`),this.dateMonthId=n.format(e,`yyyy-MM`)}isEqualTo(e){return this.dateLib.isSameDay(e.date,this.date)&&this.dateLib.isSameMonth(e.displayMonth,this.displayMonth)}},Yt=class{constructor(e,t){this.date=e,this.weeks=t}},Xt=class{constructor(e,t){this.days=t,this.weekNumber=e}},H=e(n(),1);function Zt(e){return H.createElement(`button`,{...e})}function Qt(e){return H.createElement(`span`,{...e})}function $t(e){let{size:t=24,orientation:n=`left`,className:r}=e;return H.createElement(`svg`,{className:r,width:t,height:t,viewBox:`0 0 24 24`},n===`up`&&H.createElement(`polygon`,{points:`6.77 17 12.5 11.43 18.24 17 20 15.28 12.5 8 5 15.28`}),n===`down`&&H.createElement(`polygon`,{points:`6.77 8 12.5 13.57 18.24 8 20 9.72 12.5 17 5 9.72`}),n===`left`&&H.createElement(`polygon`,{points:`16 18.112 9.81111111 12 16 5.87733333 14.0888889 4 6 12 14.0888889 20`}),n===`right`&&H.createElement(`polygon`,{points:`8 18.112 14.18888889 12 8 5.87733333 9.91111111 4 18 12 9.91111111 20`}))}function en(e){let{day:t,modifiers:n,...r}=e;return H.createElement(`td`,{...r})}function tn(e){let{day:t,modifiers:n,...r}=e,i=H.useRef(null);return H.useEffect(()=>{n.focused&&i.current?.focus()},[n.focused]),H.createElement(`button`,{ref:i,...r})}var U;(function(e){e.Root=`root`,e.Chevron=`chevron`,e.Day=`day`,e.DayButton=`day_button`,e.CaptionLabel=`caption_label`,e.Dropdowns=`dropdowns`,e.Dropdown=`dropdown`,e.DropdownRoot=`dropdown_root`,e.Footer=`footer`,e.MonthGrid=`month_grid`,e.MonthCaption=`month_caption`,e.MonthsDropdown=`months_dropdown`,e.Month=`month`,e.Months=`months`,e.Nav=`nav`,e.NextMonthButton=`button_next`,e.PreviousMonthButton=`button_previous`,e.Week=`week`,e.Weeks=`weeks`,e.Weekday=`weekday`,e.Weekdays=`weekdays`,e.WeekNumber=`week_number`,e.WeekNumberHeader=`week_number_header`,e.YearsDropdown=`years_dropdown`})(U||={});var W;(function(e){e.disabled=`disabled`,e.hidden=`hidden`,e.outside=`outside`,e.focused=`focused`,e.today=`today`})(W||={});var G;(function(e){e.range_end=`range_end`,e.range_middle=`range_middle`,e.range_start=`range_start`,e.selected=`selected`})(G||={});var K;(function(e){e.weeks_before_enter=`weeks_before_enter`,e.weeks_before_exit=`weeks_before_exit`,e.weeks_after_enter=`weeks_after_enter`,e.weeks_after_exit=`weeks_after_exit`,e.caption_after_enter=`caption_after_enter`,e.caption_after_exit=`caption_after_exit`,e.caption_before_enter=`caption_before_enter`,e.caption_before_exit=`caption_before_exit`})(K||={});function nn(e){let{options:t,className:n,components:r,classNames:i,...a}=e,o=[i[U.Dropdown],n].join(` `),s=t?.find(({value:e})=>e===a.value);return H.createElement(`span`,{"data-disabled":a.disabled,className:i[U.DropdownRoot]},H.createElement(r.Select,{className:o,...a},t?.map(({value:e,label:t,disabled:n})=>H.createElement(r.Option,{key:e,value:e,disabled:n},t))),H.createElement(`span`,{className:i[U.CaptionLabel],"aria-hidden":!0},s?.label,H.createElement(r.Chevron,{orientation:`down`,size:18,className:i[U.Chevron]})))}function rn(e){return H.createElement(`div`,{...e})}function an(e){return H.createElement(`div`,{...e})}function on(e){let{calendarMonth:t,displayIndex:n,...r}=e;return H.createElement(`div`,{...r},e.children)}function sn(e){let{calendarMonth:t,displayIndex:n,...r}=e;return H.createElement(`div`,{...r})}function cn(e){return H.createElement(`table`,{...e})}function ln(e){return H.createElement(`div`,{...e})}var un=(0,H.createContext)(void 0);function dn(){let e=(0,H.useContext)(un);if(e===void 0)throw Error(`useDayPicker() must be used within a custom component.`);return e}function fn(e){let{components:t}=dn();return H.createElement(t.Dropdown,{...e})}function pn(e){let{onPreviousClick:t,onNextClick:n,previousMonth:r,nextMonth:i,...a}=e,{components:o,classNames:s,labels:{labelPrevious:c,labelNext:l}}=dn(),u=(0,H.useCallback)(e=>{i&&n?.(e)},[i,n]),d=(0,H.useCallback)(e=>{r&&t?.(e)},[r,t]);return H.createElement(`nav`,{...a},H.createElement(o.PreviousMonthButton,{type:`button`,className:s[U.PreviousMonthButton],tabIndex:r?void 0:-1,"aria-disabled":r?void 0:!0,"aria-label":c(r),onClick:d},H.createElement(o.Chevron,{disabled:r?void 0:!0,className:s[U.Chevron],orientation:`left`})),H.createElement(o.NextMonthButton,{type:`button`,className:s[U.NextMonthButton],tabIndex:i?void 0:-1,"aria-disabled":i?void 0:!0,"aria-label":l(i),onClick:u},H.createElement(o.Chevron,{disabled:i?void 0:!0,orientation:`right`,className:s[U.Chevron]})))}function mn(e){let{components:t}=dn();return H.createElement(t.Button,{...e})}function hn(e){return H.createElement(`option`,{...e})}function gn(e){let{components:t}=dn();return H.createElement(t.Button,{...e})}function _n(e){let{rootRef:t,...n}=e;return H.createElement(`div`,{...n,ref:t})}function vn(e){return H.createElement(`select`,{...e})}function yn(e){let{week:t,...n}=e;return H.createElement(`tr`,{...n})}function bn(e){return H.createElement(`th`,{...e})}function xn(e){return H.createElement(`thead`,{"aria-hidden":!0},H.createElement(`tr`,{...e}))}function Sn(e){let{week:t,...n}=e;return H.createElement(`th`,{...n})}function Cn(e){return H.createElement(`th`,{...e})}function wn(e){return H.createElement(`tbody`,{...e})}function Tn(e){let{components:t}=dn();return H.createElement(t.Dropdown,{...e})}var En=t({Button:()=>Zt,CaptionLabel:()=>Qt,Chevron:()=>$t,Day:()=>en,DayButton:()=>tn,Dropdown:()=>nn,DropdownNav:()=>rn,Footer:()=>an,Month:()=>on,MonthCaption:()=>sn,MonthGrid:()=>cn,Months:()=>ln,MonthsDropdown:()=>fn,Nav:()=>pn,NextMonthButton:()=>mn,Option:()=>hn,PreviousMonthButton:()=>gn,Root:()=>_n,Select:()=>vn,Week:()=>yn,WeekNumber:()=>Sn,WeekNumberHeader:()=>Cn,Weekday:()=>bn,Weekdays:()=>xn,Weeks:()=>wn,YearsDropdown:()=>Tn});function q(e,t,n=!1,r=V){let{from:i,to:a}=e,{differenceInCalendarDays:o,isSameDay:s}=r;return i&&a?(o(a,i)<0&&([i,a]=[a,i]),o(t,i)>=+!!n&&o(a,t)>=+!!n):!n&&a?s(a,t):!n&&i?s(i,t):!1}function Dn(e){return!!(e&&typeof e==`object`&&`before`in e&&`after`in e)}function On(e){return!!(e&&typeof e==`object`&&`from`in e)}function kn(e){return!!(e&&typeof e==`object`&&`after`in e)}function An(e){return!!(e&&typeof e==`object`&&`before`in e)}function jn(e){return!!(e&&typeof e==`object`&&`dayOfWeek`in e)}function Mn(e,t){return Array.isArray(e)&&e.every(t.isDate)}function J(e,t,n=V){let r=Array.isArray(t)?t:[t],{isSameDay:i,differenceInCalendarDays:a,isAfter:o}=n;return r.some(t=>{if(typeof t==`boolean`)return t;if(n.isDate(t))return i(e,t);if(Mn(t,n))return t.some(t=>i(e,t));if(On(t))return q(t,e,!1,n);if(jn(t))return Array.isArray(t.dayOfWeek)?t.dayOfWeek.includes(e.getDay()):t.dayOfWeek===e.getDay();if(Dn(t)){let n=a(t.before,e),r=a(t.after,e),i=n>0,s=r<0;return o(t.before,t.after)?s&&i:i||s}return kn(t)?a(e,t.after)>0:An(t)?a(t.before,e)>0:typeof t==`function`?t(e):!1})}function Nn(e,t,n,r,i){let{disabled:a,hidden:o,modifiers:s,showOutsideDays:c,broadcastCalendar:l,today:u=i.today()}=t,{isSameDay:d,isSameMonth:f,startOfMonth:p,isBefore:m,endOfMonth:h,isAfter:g}=i,_=n&&p(n),v=r&&h(r),y={[W.focused]:[],[W.outside]:[],[W.disabled]:[],[W.hidden]:[],[W.today]:[]},b={};for(let t of e){let{date:e,displayMonth:n}=t,r=!!(n&&!f(e,n)),p=!!(_&&m(e,_)),h=!!(v&&g(e,v)),x=!!(a&&J(e,a,i)),S=!!(o&&J(e,o,i))||p||h||!l&&!c&&r||l&&c===!1&&r,ee=d(e,u);r&&y.outside.push(t),x&&y.disabled.push(t),S&&y.hidden.push(t),ee&&y.today.push(t),s&&Object.keys(s).forEach(n=>{let r=s?.[n];r&&J(e,r,i)&&(b[n]?b[n].push(t):b[n]=[t])})}return e=>{let t={[W.focused]:!1,[W.disabled]:!1,[W.hidden]:!1,[W.outside]:!1,[W.today]:!1},n={};for(let n in y)t[n]=y[n].some(t=>t===e);for(let t in b)n[t]=b[t].some(t=>t===e);return{...t,...n}}}function Pn(e,t,n={}){return Object.entries(e).filter(([,e])=>e===!0).reduce((e,[r])=>(n[r]?e.push(n[r]):t[W[r]]?e.push(t[W[r]]):t[G[r]]&&e.push(t[G[r]]),e),[t[U.Day]])}function Fn(e){return{...En,...e}}function In(e){let t={"data-mode":e.mode??void 0,"data-required":`required`in e?e.required:void 0,"data-multiple-months":e.numberOfMonths&&e.numberOfMonths>1||void 0,"data-week-numbers":e.showWeekNumber||void 0,"data-broadcast-calendar":e.broadcastCalendar||void 0,"data-nav-layout":e.navLayout||void 0};return Object.entries(e).forEach(([e,n])=>{e.startsWith(`data-`)&&(t[e]=n)}),t}function Ln(){let e={};for(let t in U)e[U[t]]=`rdp-${U[t]}`;for(let t in W)e[W[t]]=`rdp-${W[t]}`;for(let t in G)e[G[t]]=`rdp-${G[t]}`;for(let t in K)e[K[t]]=`rdp-${K[t]}`;return e}function Rn(e,t,n){return(n??new B(t)).formatMonthYear(e)}var zn=Rn;function Bn(e,t,n){return(n??new B(t)).format(e,`d`)}function Vn(e,t=V){return t.format(e,`LLLL`)}function Hn(e,t,n){return(n??new B(t)).format(e,`cccccc`)}function Un(e,t=V){return e<10?t.formatNumber(`0${e.toLocaleString()}`):t.formatNumber(`${e.toLocaleString()}`)}function Wn(){return``}function Gn(e,t=V){return t.format(e,`yyyy`)}var Kn=Gn,qn=t({formatCaption:()=>Rn,formatDay:()=>Bn,formatMonthCaption:()=>zn,formatMonthDropdown:()=>Vn,formatWeekNumber:()=>Un,formatWeekNumberHeader:()=>Wn,formatWeekdayName:()=>Hn,formatYearCaption:()=>Kn,formatYearDropdown:()=>Gn});function Jn(e){return e?.formatMonthCaption&&!e.formatCaption&&(e.formatCaption=e.formatMonthCaption),e?.formatYearCaption&&!e.formatYearDropdown&&(e.formatYearDropdown=e.formatYearCaption),{...qn,...e}}function Yn(e,t,n,r){let i=(r??new B(n)).format(e,`PPPP`);return t.today&&(i=`Today, ${i}`),t.selected&&(i=`${i}, selected`),i}var Xn=Yn;function Zn(e,t,n){return(n??new B(t)).formatMonthYear(e)}var Qn=Zn;function $n(e,t,n,r){let i=(r??new B(n)).format(e,`PPPP`);return t?.today&&(i=`Today, ${i}`),i}function er(e){return`Choose the Month`}function tr(){return``}var nr=`Go to the Next Month`;function rr(e,t){return nr}function ir(e){return`Go to the Previous Month`}function ar(e,t,n){return(n??new B(t)).format(e,`cccc`)}function or(e,t){return`Week ${e}`}function sr(e){return`Week Number`}function cr(e){return`Choose the Year`}var lr=t({labelCaption:()=>Qn,labelDay:()=>Xn,labelDayButton:()=>Yn,labelGrid:()=>Zn,labelGridcell:()=>$n,labelMonthDropdown:()=>er,labelNav:()=>tr,labelNext:()=>rr,labelPrevious:()=>ir,labelWeekNumber:()=>or,labelWeekNumberHeader:()=>sr,labelWeekday:()=>ar,labelYearDropdown:()=>cr}),Y=(e,t,n)=>t||(n?typeof n==`function`?n:(...e)=>n:e);function ur(e,t){let n=t.locale?.labels??{};return{...lr,...e??{},labelDayButton:Y(Yn,e?.labelDayButton,n.labelDayButton),labelMonthDropdown:Y(er,e?.labelMonthDropdown,n.labelMonthDropdown),labelNext:Y(rr,e?.labelNext,n.labelNext),labelPrevious:Y(ir,e?.labelPrevious,n.labelPrevious),labelWeekNumber:Y(or,e?.labelWeekNumber,n.labelWeekNumber),labelYearDropdown:Y(cr,e?.labelYearDropdown,n.labelYearDropdown),labelGrid:Y(Zn,e?.labelGrid,n.labelGrid),labelGridcell:Y($n,e?.labelGridcell,n.labelGridcell),labelNav:Y(tr,e?.labelNav,n.labelNav),labelWeekNumberHeader:Y(sr,e?.labelWeekNumberHeader,n.labelWeekNumberHeader),labelWeekday:Y(ar,e?.labelWeekday,n.labelWeekday)}}function dr(e,t,n,r,i){let{startOfMonth:a,startOfYear:o,endOfYear:s,eachMonthOfInterval:c,getMonth:l}=i;return c({start:o(e),end:s(e)}).map(e=>{let o=r.formatMonthDropdown(e,i);return{value:l(e),label:o,disabled:t&&e<a(t)||n&&e>a(n)||!1}})}function fr(e,t={},n={}){let r={...t?.[U.Day]};return Object.entries(e).filter(([,e])=>e===!0).forEach(([e])=>{r={...r,...n?.[e]}}),r}function pr(e,t,n,r){let i=r??e.today(),a=n?e.startOfBroadcastWeek(i,e):t?e.startOfISOWeek(i):e.startOfWeek(i),o=[];for(let t=0;t<7;t++){let n=e.addDays(a,t);o.push(n)}return o}function mr(e,t,n,r,i=!1){if(!e||!t)return;let{startOfYear:a,endOfYear:o,eachYearOfInterval:s,getYear:c}=r,l=s({start:a(e),end:o(t)});return i&&l.reverse(),l.map(e=>{let t=n.formatYearDropdown(e,r);return{value:c(e),label:t,disabled:!1}})}function hr(e,t={}){let{weekStartsOn:n,locale:r}=t,i=n??r?.options?.weekStartsOn??0,a=t=>{let n=typeof t==`number`||typeof t==`string`?new Date(t):t;return new N(n.getFullYear(),n.getMonth(),n.getDate(),12,0,0,e)},o=e=>{let t=a(e);return new Date(t.getFullYear(),t.getMonth(),t.getDate(),0,0,0,0)};return{today:()=>a(N.tz(e)),newDate:(t,n,r)=>new N(t,n,r,12,0,0,e),startOfDay:e=>a(e),startOfWeek:(e,t)=>{let n=a(e),r=t?.weekStartsOn??i,o=(n.getDay()-r+7)%7;return n.setDate(n.getDate()-o),n},startOfISOWeek:e=>{let t=a(e),n=(t.getDay()-1+7)%7;return t.setDate(t.getDate()-n),t},startOfMonth:e=>{let t=a(e);return t.setDate(1),t},startOfYear:e=>{let t=a(e);return t.setMonth(0,1),t},endOfWeek:(e,t)=>{let n=a(e),r=(((t?.weekStartsOn??i)+6)%7-n.getDay()+7)%7;return n.setDate(n.getDate()+r),n},endOfISOWeek:e=>{let t=a(e),n=(7-t.getDay())%7;return t.setDate(t.getDate()+n),t},endOfMonth:e=>{let t=a(e);return t.setMonth(t.getMonth()+1,0),t},endOfYear:e=>{let t=a(e);return t.setMonth(11,31),t},eachMonthOfInterval:t=>{let n=a(t.start),r=a(t.end),i=[],o=new N(n.getFullYear(),n.getMonth(),1,12,0,0,e),s=r.getFullYear()*12+r.getMonth();for(;o.getFullYear()*12+o.getMonth()<=s;)i.push(new N(o,e)),o.setMonth(o.getMonth()+1,1);return i},addDays:(e,t)=>{let n=a(e);return n.setDate(n.getDate()+t),n},addWeeks:(e,t)=>{let n=a(e);return n.setDate(n.getDate()+t*7),n},addMonths:(e,t)=>{let n=a(e);return n.setMonth(n.getMonth()+t),n},addYears:(e,t)=>{let n=a(e);return n.setFullYear(n.getFullYear()+t),n},eachYearOfInterval:t=>{let n=a(t.start),r=a(t.end),i=[],o=new N(n.getFullYear(),0,1,12,0,0,e);for(;o.getFullYear()<=r.getFullYear();)i.push(new N(o,e)),o.setFullYear(o.getFullYear()+1,0,1);return i},getWeek:(e,t)=>lt(o(e),{weekStartsOn:t?.weekStartsOn??i,firstWeekContainsDate:t?.firstWeekContainsDate??r?.options?.firstWeekContainsDate??1}),getISOWeek:e=>ot(o(e)),differenceInCalendarDays:(e,t)=>De(o(e),o(t)),differenceInCalendarMonths:(e,t)=>Ie(o(e),o(t))}}var gr=e=>e instanceof HTMLElement?e:null,_r=e=>[...e.querySelectorAll(`[data-animated-month]`)??[]],vr=e=>gr(e.querySelector(`[data-animated-month]`)),yr=e=>gr(e.querySelector(`[data-animated-caption]`)),br=e=>gr(e.querySelector(`[data-animated-weeks]`)),xr=e=>gr(e.querySelector(`[data-animated-nav]`)),Sr=e=>gr(e.querySelector(`[data-animated-weekdays]`));function Cr(e,t,{classNames:n,months:r,focused:i,dateLib:a}){let o=(0,H.useRef)(null),s=(0,H.useRef)(r),c=(0,H.useRef)(!1);(0,H.useLayoutEffect)(()=>{let l=s.current;if(s.current=r,!t||!e.current||!(e.current instanceof HTMLElement)||r.length===0||l.length===0||r.length!==l.length)return;let u=a.isSameMonth(r[0].date,l[0].date),d=a.isAfter(r[0].date,l[0].date),f=d?n[K.caption_after_enter]:n[K.caption_before_enter],p=d?n[K.weeks_after_enter]:n[K.weeks_before_enter],m=o.current,h=e.current.cloneNode(!0);if(h instanceof HTMLElement?(_r(h).forEach(e=>{if(!(e instanceof HTMLElement))return;let t=vr(e);t&&e.contains(t)&&e.removeChild(t);let n=yr(e);n&&n.classList.remove(f);let r=br(e);r&&r.classList.remove(p)}),o.current=h):o.current=null,c.current||u||i)return;let g=m instanceof HTMLElement?_r(m):[],_=_r(e.current);if(_?.every(e=>e instanceof HTMLElement)&&g&&g.every(e=>e instanceof HTMLElement)){c.current=!0;let t=[];e.current.style.isolation=`isolate`;let r=xr(e.current);r&&(r.style.zIndex=`1`),_.forEach((i,a)=>{let o=g[a];if(!o)return;i.style.position=`relative`,i.style.overflow=`hidden`;let s=yr(i);s&&s.classList.add(f);let l=br(i);l&&l.classList.add(p);let u=()=>{c.current=!1,e.current&&(e.current.style.isolation=``),r&&(r.style.zIndex=``),s&&s.classList.remove(f),l&&l.classList.remove(p),i.style.position=``,i.style.overflow=``,i.contains(o)&&i.removeChild(o)};t.push(u),o.style.pointerEvents=`none`,o.style.position=`absolute`,o.style.overflow=`hidden`,o.setAttribute(`aria-hidden`,`true`);let m=Sr(o);m&&(m.style.opacity=`0`);let h=yr(o);h&&(h.classList.add(d?n[K.caption_before_exit]:n[K.caption_after_exit]),h.addEventListener(`animationend`,u));let _=br(o);_&&_.classList.add(d?n[K.weeks_before_exit]:n[K.weeks_after_exit]),i.insertBefore(o,i.firstChild)})}})}function wr(e,t,n,r){let i=e[0],a=e[e.length-1],{ISOWeek:o,fixedWeeks:s,broadcastCalendar:c}=n??{},{addDays:l,differenceInCalendarDays:u,differenceInCalendarMonths:d,endOfBroadcastWeek:f,endOfISOWeek:p,endOfMonth:m,endOfWeek:h,isAfter:g,startOfBroadcastWeek:_,startOfISOWeek:v,startOfWeek:y}=r,b=c?_(i,r):o?v(i):y(i),x=c?f(a):o?p(m(a)):h(m(a)),S=t&&(c?f(t):o?p(t):h(t)),ee=u(S&&g(x,S)?S:x,b),te=d(a,i)+1,C=[];for(let e=0;e<=ee;e++){let t=l(b,e);C.push(t)}let ne=(c?35:42)*te;if(s&&C.length<ne){let e=ne-C.length;for(let t=0;t<e;t++){let e=l(C[C.length-1],1);C.push(e)}}return C}function Tr(e){let t=[];return e.reduce((e,n)=>{let r=n.weeks.reduce((e,t)=>e.concat(t.days.slice()),t.slice());return e.concat(r.slice())},t.slice())}function Er(e,t,n,r){let{numberOfMonths:i=1}=n,a=[];for(let n=0;n<i;n++){let i=r.addMonths(e,n);if(t&&i>t)break;a.push(i)}return a}function Dr(e,t,n,r){let{month:i,defaultMonth:a,today:o=r.today(),numberOfMonths:s=1}=e,c=i||a||o,{differenceInCalendarMonths:l,addMonths:u,startOfMonth:d}=r;return n&&l(n,c)<s-1&&(c=u(n,-1*(s-1))),t&&l(c,t)<0&&(c=t),d(c)}function Or(e,t,n,r){let{addDays:i,endOfBroadcastWeek:a,endOfISOWeek:o,endOfMonth:s,endOfWeek:c,getISOWeek:l,getWeek:u,startOfBroadcastWeek:d,startOfISOWeek:f,startOfWeek:p}=r,m=e.reduce((e,m)=>{let h=n.broadcastCalendar?d(m,r):n.ISOWeek?f(m):p(m),g=n.broadcastCalendar?a(m):n.ISOWeek?o(s(m)):c(s(m)),_=t.filter(e=>e>=h&&e<=g),v=n.broadcastCalendar?35:42;if(n.fixedWeeks&&_.length<v){let e=t.filter(e=>{let t=v-_.length;return e>g&&e<=i(g,t)});_.push(...e)}let y=new Yt(m,_.reduce((e,t)=>{let i=n.ISOWeek?l(t):u(t),a=e.find(e=>e.weekNumber===i),o=new Jt(t,m,r);return a?a.days.push(o):e.push(new Xt(i,[o])),e},[]));return e.push(y),e},[]);return n.reverseMonths?m.reverse():m}function kr(e,t){let{startMonth:n,endMonth:r}=e,{startOfYear:i,startOfDay:a,startOfMonth:o,endOfMonth:s,addYears:c,endOfYear:l,newDate:u,today:d}=t,{fromYear:f,toYear:p,fromMonth:m,toMonth:h}=e;!n&&m&&(n=m),!n&&f&&(n=t.newDate(f,0,1)),!r&&h&&(r=h),!r&&p&&(r=u(p,11,31));let g=e.captionLayout===`dropdown`||e.captionLayout===`dropdown-years`;return n?n=o(n):f?n=u(f,0,1):!n&&g&&(n=i(c(e.today??d(),-100))),r?r=s(r):p?r=u(p,11,31):!r&&g&&(r=l(e.today??d())),[n&&a(n),r&&a(r)]}function Ar(e,t,n,r){if(n.disableNavigation)return;let{pagedNavigation:i,numberOfMonths:a=1}=n,{startOfMonth:o,addMonths:s,differenceInCalendarMonths:c}=r,l=i?a:1,u=o(e);if(!t||!(c(t,e)<a))return s(u,l)}function jr(e,t,n,r){if(n.disableNavigation)return;let{pagedNavigation:i,numberOfMonths:a}=n,{startOfMonth:o,addMonths:s,differenceInCalendarMonths:c}=r,l=i?a??1:1,u=o(e);if(!t||!(c(u,t)<=0))return s(u,-l)}function Mr(e){return e.reduce((e,t)=>e.concat(t.weeks.slice()),[].slice())}function Nr(e,t){let[n,r]=(0,H.useState)(e);return[t===void 0?n:t,r]}function Pr(e,t){let[n,r]=kr(e,t),{startOfMonth:i,endOfMonth:a}=t,o=Dr(e,n,r,t),[s,c]=Nr(o,e.month?o:void 0);(0,H.useEffect)(()=>{let i=Dr(e,n,r,t);c(i)},[e.timeZone]);let{months:l,weeks:u,days:d,previousMonth:f,nextMonth:p}=(0,H.useMemo)(()=>{let i=Er(s,r,{numberOfMonths:e.numberOfMonths},t),o=Or(i,wr(i,e.endMonth?a(e.endMonth):void 0,{ISOWeek:e.ISOWeek,fixedWeeks:e.fixedWeeks,broadcastCalendar:e.broadcastCalendar},t),{broadcastCalendar:e.broadcastCalendar,fixedWeeks:e.fixedWeeks,ISOWeek:e.ISOWeek,reverseMonths:e.reverseMonths},t);return{months:o,weeks:Mr(o),days:Tr(o),previousMonth:jr(s,n,e,t),nextMonth:Ar(s,r,e,t)}},[t,s.getTime(),r?.getTime(),n?.getTime(),e.disableNavigation,e.broadcastCalendar,e.endMonth?.getTime(),e.fixedWeeks,e.ISOWeek,e.numberOfMonths,e.pagedNavigation,e.reverseMonths]),{disableNavigation:m,onMonthChange:h}=e,g=e=>u.some(t=>t.days.some(t=>t.isEqualTo(e))),_=e=>{if(m)return;let t=i(e);n&&t<i(n)&&(t=i(n)),r&&t>i(r)&&(t=i(r)),c(t),h?.(t)};return{months:l,weeks:u,days:d,navStart:n,navEnd:r,previousMonth:f,nextMonth:p,goToMonth:_,goToDay:e=>{g(e)||_(e.date)}}}var Fr;(function(e){e[e.Today=0]=`Today`,e[e.Selected=1]=`Selected`,e[e.LastFocused=2]=`LastFocused`,e[e.FocusedModifier=3]=`FocusedModifier`})(Fr||={});function Ir(e){return!e[W.disabled]&&!e[W.hidden]&&!e[W.outside]}function Lr(e,t,n,r){let i,a=-1;for(let o of e){let e=t(o);Ir(e)&&(e[W.focused]&&a<Fr.FocusedModifier?(i=o,a=Fr.FocusedModifier):r?.isEqualTo(o)&&a<Fr.LastFocused?(i=o,a=Fr.LastFocused):n(o.date)&&a<Fr.Selected?(i=o,a=Fr.Selected):e[W.today]&&a<Fr.Today&&(i=o,a=Fr.Today))}return i||=e.find(e=>Ir(t(e))),i}function Rr(e,t,n,r,i,a,o){let{ISOWeek:s,broadcastCalendar:c}=a,{addDays:l,addMonths:u,addWeeks:d,addYears:f,endOfBroadcastWeek:p,endOfISOWeek:m,endOfWeek:h,max:g,min:_,startOfBroadcastWeek:v,startOfISOWeek:y,startOfWeek:b}=o,x={day:l,week:d,month:u,year:f,startOfWeek:e=>c?v(e,o):s?y(e):b(e),endOfWeek:e=>c?p(e):s?m(e):h(e)}[e](n,t===`after`?1:-1);return t===`before`&&r?x=g([r,x]):t===`after`&&i&&(x=_([i,x])),x}function zr(e,t,n,r,i,a,o,s=0){if(s>365)return;let c=Rr(e,t,n.date,r,i,a,o),l=!!(a.disabled&&J(c,a.disabled,o)),u=!!(a.hidden&&J(c,a.hidden,o)),d=new Jt(c,c,o);return!l&&!u?d:zr(e,t,d,r,i,a,o,s+1)}function Br(e,t,n,r,i){let{autoFocus:a}=e,[o,s]=(0,H.useState)(),c=Lr(t.days,n,r||(()=>!1),o),[l,u]=(0,H.useState)(a?c:void 0);return{isFocusTarget:e=>!!c?.isEqualTo(e),setFocused:u,focused:l,blur:()=>{s(l),u(void 0)},moveFocus:(n,r)=>{if(!l)return;let a=zr(n,r,l,t.navStart,t.navEnd,e,i);a&&(e.disableNavigation&&!t.days.some(e=>e.isEqualTo(a))||(t.goToDay(a),u(a)))}}}function Vr(e,t){let{selected:n,required:r,onSelect:i}=e,[a,o]=Nr(n,i?n:void 0),s=i?n:a,{isSameDay:c}=t,l=e=>s?.some(t=>c(t,e))??!1,{min:u,max:d}=e;return{selected:s,select:(e,t,n)=>{let a=[...s??[]];if(l(e)){if(s?.length===u||r&&s?.length===1)return;a=s?.filter(t=>!c(t,e))}else a=s?.length===d?[e]:[...a,e];return i||o(a),i?.(a,e,t,n),a},isSelected:l}}function Hr(e,t,n=0,r=0,i=!1,a=V){let{from:o,to:s}=t||{},{isSameDay:c,isAfter:l,isBefore:u}=a,d;if(!o&&!s)d={from:e,to:n>0?void 0:e};else if(o&&!s)d=c(o,e)?n===0?{from:o,to:e}:i?{from:o,to:void 0}:void 0:u(e,o)?{from:e,to:o}:{from:o,to:e};else if(o&&s)if(c(o,e)&&c(s,e))d=i?{from:o,to:s}:void 0;else if(c(o,e))d={from:o,to:n>0?void 0:e};else if(c(s,e))d={from:e,to:n>0?void 0:e};else if(u(e,o))d={from:e,to:s};else if(l(e,o))d={from:o,to:e};else if(l(e,s))d={from:o,to:e};else throw Error(`Invalid range`);if(d?.from&&d?.to){let t=a.differenceInCalendarDays(d.to,d.from);(r>0&&t>r||n>1&&t<n)&&(d={from:e,to:void 0})}return d}function Ur(e,t,n=V){let r=Array.isArray(t)?t:[t],i=e.from,a=n.differenceInCalendarDays(e.to,e.from),o=Math.min(a,6);for(let e=0;e<=o;e++){if(r.includes(i.getDay()))return!0;i=n.addDays(i,1)}return!1}function Wr(e,t,n=V){return q(e,t.from,!1,n)||q(e,t.to,!1,n)||q(t,e.from,!1,n)||q(t,e.to,!1,n)}function Gr(e,t,n=V){let r=Array.isArray(t)?t:[t];if(r.filter(e=>typeof e!=`function`).some(t=>typeof t==`boolean`?t:n.isDate(t)?q(e,t,!1,n):Mn(t,n)?t.some(t=>q(e,t,!1,n)):On(t)?t.from&&t.to?Wr(e,{from:t.from,to:t.to},n):!1:jn(t)?Ur(e,t.dayOfWeek,n):Dn(t)?n.isAfter(t.before,t.after)?Wr(e,{from:n.addDays(t.after,1),to:n.addDays(t.before,-1)},n):J(e.from,t,n)||J(e.to,t,n):kn(t)||An(t)?J(e.from,t,n)||J(e.to,t,n):!1))return!0;let i=r.filter(e=>typeof e==`function`);if(i.length){let t=e.from,r=n.differenceInCalendarDays(e.to,e.from);for(let e=0;e<=r;e++){if(i.some(e=>e(t)))return!0;t=n.addDays(t,1)}}return!1}function Kr(e,t){let{disabled:n,excludeDisabled:r,resetOnSelect:i,selected:a,required:o,onSelect:s}=e,[c,l]=Nr(a,s?a:void 0),u=s?a:c;return{selected:u,select:(a,c,d)=>{let{min:f,max:p}=e,m;if(a){let e=u?.from,n=u?.to,r=!!e&&!!n,s=!!e&&!!n&&t.isSameDay(e,n)&&t.isSameDay(a,e);m=i&&(r||!u?.from)?!o&&s?void 0:{from:a,to:void 0}:Hr(a,u,f,p,o,t)}return r&&n&&m?.from&&m.to&&Gr({from:m.from,to:m.to},n,t)&&(m.from=a,m.to=void 0),s||l(m),s?.(m,a,c,d),m},isSelected:e=>u&&q(u,e,!1,t)}}function qr(e,t){let{selected:n,required:r,onSelect:i}=e,[a,o]=Nr(n,i?n:void 0),s=i?n:a,{isSameDay:c}=t;return{selected:s,select:(e,t,n)=>{let a=e;return!r&&s&&s&&c(e,s)&&(a=void 0),i||o(a),i?.(a,e,t,n),a},isSelected:e=>s?c(s,e):!1}}function Jr(e,t){let n=qr(e,t),r=Vr(e,t),i=Kr(e,t);switch(e.mode){case`single`:return n;case`multiple`:return r;case`range`:return i;default:return}}function X(e,t){return e instanceof N&&e.timeZone===t?e:new N(e,t)}function Yr(e,t,n){if(!n)return X(e,t);let r=X(e,t),i=new N(r.getFullYear(),r.getMonth(),r.getDate(),12,0,0,t);return new Date(i.getTime())}function Xr(e,t,n){return typeof e==`boolean`||typeof e==`function`?e:e instanceof Date?Yr(e,t,n):Array.isArray(e)?e.map(e=>e instanceof Date?Yr(e,t,n):e):On(e)?{...e,from:e.from?X(e.from,t):e.from,to:e.to?X(e.to,t):e.to}:Dn(e)?{before:Yr(e.before,t,n),after:Yr(e.after,t,n)}:kn(e)?{after:Yr(e.after,t,n)}:An(e)?{before:Yr(e.before,t,n)}:e}function Zr(e,t,n){return e&&(Array.isArray(e)?e.map(e=>Xr(e,t,n)):Xr(e,t,n))}function Qr(e){let t=e,n=t.timeZone;if(n&&(t={...e,timeZone:n},t.today&&=X(t.today,n),t.month&&=X(t.month,n),t.defaultMonth&&=X(t.defaultMonth,n),t.startMonth&&=X(t.startMonth,n),t.endMonth&&=X(t.endMonth,n),t.mode===`single`&&t.selected?t.selected=X(t.selected,n):t.mode===`multiple`&&t.selected?t.selected=t.selected?.map(e=>X(e,n)):t.mode===`range`&&t.selected&&(t.selected={from:t.selected.from?X(t.selected.from,n):t.selected.from,to:t.selected.to?X(t.selected.to,n):t.selected.to}),t.disabled!==void 0&&(t.disabled=Zr(t.disabled,n)),t.hidden!==void 0&&(t.hidden=Zr(t.hidden,n)),t.modifiers)){let e={};Object.keys(t.modifiers).forEach(r=>{e[r]=Zr(t.modifiers?.[r],n)}),t.modifiers=e}let{components:r,formatters:i,labels:a,dateLib:o,locale:s,classNames:c}=(0,H.useMemo)(()=>{let e={...qt,...t.locale},n=t.broadcastCalendar?1:t.weekStartsOn,r=t.noonSafe&&t.timeZone?hr(t.timeZone,{weekStartsOn:n,locale:e}):void 0,i=t.dateLib&&r?{...r,...t.dateLib}:t.dateLib??r,a=new B({locale:e,weekStartsOn:n,firstWeekContainsDate:t.firstWeekContainsDate,useAdditionalWeekYearTokens:t.useAdditionalWeekYearTokens,useAdditionalDayOfYearTokens:t.useAdditionalDayOfYearTokens,timeZone:t.timeZone,numerals:t.numerals},i);return{dateLib:a,components:Fn(t.components),formatters:Jn(t.formatters),labels:ur(t.labels,a.options),locale:e,classNames:{...Ln(),...t.classNames}}},[t.locale,t.broadcastCalendar,t.weekStartsOn,t.firstWeekContainsDate,t.useAdditionalWeekYearTokens,t.useAdditionalDayOfYearTokens,t.timeZone,t.numerals,t.dateLib,t.noonSafe,t.components,t.formatters,t.labels,t.classNames]);t.today||(t={...t,today:o.today()});let{captionLayout:l,mode:u,navLayout:d,numberOfMonths:f=1,onDayBlur:p,onDayClick:m,onDayFocus:h,onDayKeyDown:g,onDayMouseEnter:_,onDayMouseLeave:v,onNextClick:y,onPrevClick:b,showWeekNumber:x,styles:S}=t,{formatCaption:ee,formatDay:te,formatMonthDropdown:C,formatWeekNumber:ne,formatWeekNumberHeader:re,formatWeekdayName:w,formatYearDropdown:T}=i,ie=Pr(t,o),{days:ae,months:oe,navStart:se,navEnd:ce,previousMonth:E,nextMonth:D,goToMonth:O}=ie,k=Nn(ae,t,se,ce,o),{isSelected:le,select:ue,selected:A}=Jr(t,o)??{},{blur:j,focused:M,isFocusTarget:de,moveFocus:fe,setFocused:pe}=Br(t,ie,k,le??(()=>!1),o),{labelDayButton:me,labelGridcell:N,labelGrid:he,labelMonthDropdown:P,labelNav:ge,labelPrevious:F,labelNext:_e,labelWeekday:I,labelWeekNumber:L,labelWeekNumberHeader:ve,labelYearDropdown:ye}=a,be=(0,H.useMemo)(()=>pr(o,t.ISOWeek,t.broadcastCalendar,t.today),[o,t.ISOWeek,t.broadcastCalendar,t.today]),xe=u!==void 0||m!==void 0,R=(0,H.useCallback)(()=>{E&&(O(E),b?.(E))},[E,O,b]),Se=(0,H.useCallback)(()=>{D&&(O(D),y?.(D))},[O,D,y]),Ce=(0,H.useCallback)((e,t)=>n=>{n.preventDefault(),n.stopPropagation(),pe(e),!t.disabled&&(ue?.(e.date,t,n),m?.(e.date,t,n))},[ue,m,pe]),we=(0,H.useCallback)((e,t)=>n=>{pe(e),h?.(e.date,t,n)},[h,pe]),Te=(0,H.useCallback)((e,t)=>n=>{j(),p?.(e.date,t,n)},[j,p]),Ee=(0,H.useCallback)((e,n)=>r=>{let i={ArrowLeft:[r.shiftKey?`month`:`day`,t.dir===`rtl`?`after`:`before`],ArrowRight:[r.shiftKey?`month`:`day`,t.dir===`rtl`?`before`:`after`],ArrowDown:[r.shiftKey?`year`:`week`,`after`],ArrowUp:[r.shiftKey?`year`:`week`,`before`],PageUp:[r.shiftKey?`year`:`month`,`before`],PageDown:[r.shiftKey?`year`:`month`,`after`],Home:[`startOfWeek`,`before`],End:[`endOfWeek`,`after`]};if(i[r.key]){r.preventDefault(),r.stopPropagation();let[e,t]=i[r.key];fe(e,t)}g?.(e.date,n,r)},[fe,g,t.dir]),De=(0,H.useCallback)((e,t)=>n=>{_?.(e.date,t,n)},[_]),Oe=(0,H.useCallback)((e,t)=>n=>{v?.(e.date,t,n)},[v]),ke=(0,H.useCallback)(e=>t=>{let n=Number(t.target.value),r=o.setMonth(o.startOfMonth(e),n);O(r)},[o,O]),Ae=(0,H.useCallback)(e=>t=>{let n=Number(t.target.value),r=o.setYear(o.startOfMonth(e),n);O(r)},[o,O]),{className:je,style:Me}=(0,H.useMemo)(()=>({className:[c[U.Root],t.className].filter(Boolean).join(` `),style:{...S?.[U.Root],...t.style}}),[c,t.className,t.style,S]),Ne=In(t),Pe=(0,H.useRef)(null);Cr(Pe,!!t.animate,{classNames:c,months:oe,focused:M,dateLib:o});let Fe={dayPickerProps:t,selected:A,select:ue,isSelected:le,months:oe,nextMonth:D,previousMonth:E,goToMonth:O,getModifiers:k,components:r,classNames:c,styles:S,labels:a,formatters:i};return H.createElement(un.Provider,{value:Fe},H.createElement(r.Root,{rootRef:t.animate?Pe:void 0,className:je,style:Me,dir:t.dir,id:t.id,lang:t.lang??s.code,nonce:t.nonce,title:t.title,role:t.role,"aria-label":t[`aria-label`],"aria-labelledby":t[`aria-labelledby`],...Ne},H.createElement(r.Months,{className:c[U.Months],style:S?.[U.Months]},!t.hideNavigation&&!d&&H.createElement(r.Nav,{"data-animated-nav":t.animate?`true`:void 0,className:c[U.Nav],style:S?.[U.Nav],"aria-label":ge(),onPreviousClick:R,onNextClick:Se,previousMonth:E,nextMonth:D}),oe.map((e,n)=>H.createElement(r.Month,{"data-animated-month":t.animate?`true`:void 0,className:c[U.Month],style:S?.[U.Month],key:n,displayIndex:n,calendarMonth:e},d===`around`&&!t.hideNavigation&&n===0&&H.createElement(r.PreviousMonthButton,{type:`button`,className:c[U.PreviousMonthButton],tabIndex:E?void 0:-1,"aria-disabled":E?void 0:!0,"aria-label":F(E),onClick:R,"data-animated-button":t.animate?`true`:void 0},H.createElement(r.Chevron,{disabled:E?void 0:!0,className:c[U.Chevron],orientation:t.dir===`rtl`?`right`:`left`})),H.createElement(r.MonthCaption,{"data-animated-caption":t.animate?`true`:void 0,className:c[U.MonthCaption],style:S?.[U.MonthCaption],calendarMonth:e,displayIndex:n},l?.startsWith(`dropdown`)?H.createElement(r.DropdownNav,{className:c[U.Dropdowns],style:S?.[U.Dropdowns]},(()=>{let n=l===`dropdown`||l===`dropdown-months`?H.createElement(r.MonthsDropdown,{key:`month`,className:c[U.MonthsDropdown],"aria-label":P(),classNames:c,components:r,disabled:!!t.disableNavigation,onChange:ke(e.date),options:dr(e.date,se,ce,i,o),style:S?.[U.Dropdown],value:o.getMonth(e.date)}):H.createElement(`span`,{key:`month`},C(e.date,o)),a=l===`dropdown`||l===`dropdown-years`?H.createElement(r.YearsDropdown,{key:`year`,className:c[U.YearsDropdown],"aria-label":ye(o.options),classNames:c,components:r,disabled:!!t.disableNavigation,onChange:Ae(e.date),options:mr(se,ce,i,o,!!t.reverseYears),style:S?.[U.Dropdown],value:o.getYear(e.date)}):H.createElement(`span`,{key:`year`},T(e.date,o));return o.getMonthYearOrder()===`year-first`?[a,n]:[n,a]})(),H.createElement(`span`,{role:`status`,"aria-live":`polite`,style:{border:0,clip:`rect(0 0 0 0)`,height:`1px`,margin:`-1px`,overflow:`hidden`,padding:0,position:`absolute`,width:`1px`,whiteSpace:`nowrap`,wordWrap:`normal`}},ee(e.date,o.options,o))):H.createElement(r.CaptionLabel,{className:c[U.CaptionLabel],role:`status`,"aria-live":`polite`},ee(e.date,o.options,o))),d===`around`&&!t.hideNavigation&&n===f-1&&H.createElement(r.NextMonthButton,{type:`button`,className:c[U.NextMonthButton],tabIndex:D?void 0:-1,"aria-disabled":D?void 0:!0,"aria-label":_e(D),onClick:Se,"data-animated-button":t.animate?`true`:void 0},H.createElement(r.Chevron,{disabled:D?void 0:!0,className:c[U.Chevron],orientation:t.dir===`rtl`?`left`:`right`})),n===f-1&&d===`after`&&!t.hideNavigation&&H.createElement(r.Nav,{"data-animated-nav":t.animate?`true`:void 0,className:c[U.Nav],style:S?.[U.Nav],"aria-label":ge(),onPreviousClick:R,onNextClick:Se,previousMonth:E,nextMonth:D}),H.createElement(r.MonthGrid,{role:`grid`,"aria-multiselectable":u===`multiple`||u===`range`,"aria-label":he(e.date,o.options,o)||void 0,className:c[U.MonthGrid],style:S?.[U.MonthGrid]},!t.hideWeekdays&&H.createElement(r.Weekdays,{"data-animated-weekdays":t.animate?`true`:void 0,className:c[U.Weekdays],style:S?.[U.Weekdays]},x&&H.createElement(r.WeekNumberHeader,{"aria-label":ve(o.options),className:c[U.WeekNumberHeader],style:S?.[U.WeekNumberHeader],scope:`col`},re()),be.map(e=>H.createElement(r.Weekday,{"aria-label":I(e,o.options,o),className:c[U.Weekday],key:String(e),style:S?.[U.Weekday],scope:`col`},w(e,o.options,o)))),H.createElement(r.Weeks,{"data-animated-weeks":t.animate?`true`:void 0,className:c[U.Weeks],style:S?.[U.Weeks]},e.weeks.map(e=>H.createElement(r.Week,{className:c[U.Week],key:e.weekNumber,style:S?.[U.Week],week:e},x&&H.createElement(r.WeekNumber,{week:e,style:S?.[U.WeekNumber],"aria-label":L(e.weekNumber,{locale:s}),className:c[U.WeekNumber],scope:`row`,role:`rowheader`},ne(e.weekNumber,o)),e.days.map(e=>{let{date:n}=e,i=k(e);if(i[W.focused]=!i.hidden&&!!M?.isEqualTo(e),i[G.selected]=le?.(n)||i.selected,On(A)){let{from:e,to:t}=A;i[G.range_start]=!!(e&&t&&o.isSameDay(n,e)),i[G.range_end]=!!(e&&t&&o.isSameDay(n,t)),i[G.range_middle]=q(A,n,!0,o)}let a=fr(i,S,t.modifiersStyles),s=Pn(i,c,t.modifiersClassNames),l=!xe&&!i.hidden?N(n,i,o.options,o):void 0;return H.createElement(r.Day,{key:`${e.isoDate}_${e.displayMonthId}`,day:e,modifiers:i,className:s.join(` `),style:a,role:`gridcell`,"aria-selected":i.selected||void 0,"aria-label":l,"data-day":e.isoDate,"data-month":e.outside?e.dateMonthId:void 0,"data-selected":i.selected||void 0,"data-disabled":i.disabled||void 0,"data-hidden":i.hidden||void 0,"data-outside":e.outside||void 0,"data-focused":i.focused||void 0,"data-today":i.today||void 0},!i.hidden&&xe?H.createElement(r.DayButton,{className:c[U.DayButton],style:S?.[U.DayButton],type:`button`,day:e,modifiers:i,disabled:!i.focused&&i.disabled||void 0,"aria-disabled":i.focused&&i.disabled||void 0,tabIndex:de(e)?0:-1,"aria-label":me(n,i,o.options,o),onClick:Ce(e,i),onBlur:Te(e,i),onFocus:we(e,i),onKeyDown:Ee(e,i),onMouseEnter:De(e,i),onMouseLeave:Oe(e,i)},te(n,o.options,o)):!i.hidden&&te(e.date,o.options,o))})))))))),t.footer&&H.createElement(r.Footer,{className:c[U.Footer],style:S?.[U.Footer],role:`status`,"aria-live":`polite`},t.footer)))}var Z=r();function $r({className:e,classNames:t,showOutsideDays:n=!0,captionLayout:r=`label`,buttonVariant:a=`ghost`,formatters:o,components:s,...c}){let f=Ln();return(0,Z.jsx)(Qr,{captionLayout:r,className:i(`group/calendar bg-background p-3 [--cell-size:--spacing(8)] [[data-slot=card-content]_&]:bg-transparent [[data-slot=popover-content]_&]:bg-transparent`,String.raw`rtl:**:[.rdp-button\_next>svg]:rotate-180`,String.raw`rtl:**:[.rdp-button\_previous>svg]:rotate-180`,e),classNames:{root:i(`w-fit`,f.root),months:i(`relative flex flex-col gap-4 md:flex-row`,f.months),month:i(`flex w-full flex-col gap-4`,f.month),nav:i(`absolute inset-x-0 top-0 flex w-full items-center justify-between gap-1`,f.nav),button_previous:i(h({variant:a}),`size-(--cell-size) p-0 select-none aria-disabled:opacity-50`,f.button_previous),button_next:i(h({variant:a}),`size-(--cell-size) p-0 select-none aria-disabled:opacity-50`,f.button_next),month_caption:i(`flex h-(--cell-size) w-full items-center justify-center px-(--cell-size)`,f.month_caption),dropdowns:i(`flex h-(--cell-size) w-full items-center justify-center gap-1.5 text-sm font-medium`,f.dropdowns),dropdown_root:i(`relative rounded-md border border-input shadow-xs has-focus:border-ring has-focus:ring-[3px] has-focus:ring-ring/50`,f.dropdown_root),dropdown:i(`absolute inset-0 bg-popover opacity-0`,f.dropdown),caption_label:i(`font-medium select-none`,r===`label`?`text-sm`:`flex h-8 items-center gap-1 rounded-md pr-1 pl-2 text-sm [&>svg]:size-3.5 [&>svg]:text-muted-foreground`,f.caption_label),table:`w-full border-collapse`,weekdays:i(`flex`,f.weekdays),weekday:i(`w-(--cell-size) rounded-md text-sm font-normal text-muted-foreground select-none`,f.weekday),week:i(`mt-2 flex w-full`,f.week),week_number_header:i(`w-(--cell-size) select-none`,f.week_number_header),week_number:i(`text-[0.8rem] text-muted-foreground select-none`,f.week_number),day:i(`group/day relative aspect-square size-full p-0 text-center select-none [&:first-child[data-selected=true]_button]:rounded-l-md [&:last-child[data-selected=true]_button]:rounded-r-md`,f.day),range_start:i(`rounded-l-md bg-accent`,f.range_start),range_middle:i(`rounded-none`,f.range_middle),range_end:i(`rounded-r-md bg-accent`,f.range_end),today:i(`rounded-md bg-accent text-accent-foreground data-[selected=true]:rounded-none`,f.today),outside:i(`text-muted-foreground aria-selected:text-muted-foreground`,f.outside),disabled:i(`text-muted-foreground opacity-50`,f.disabled),hidden:i(`invisible`,f.hidden),...t},components:{Root:({className:e,rootRef:t,...n})=>(0,Z.jsx)(`div`,{ref:t,className:i(e),"data-slot":`calendar`,...n}),Chevron:({className:e,orientation:t,...n})=>t===`left`?(0,Z.jsx)(l,{className:i(`size-4`,e),...n}):t===`right`?(0,Z.jsx)(u,{className:i(`size-4`,e),...n}):(0,Z.jsx)(d,{className:i(`size-4`,e),...n}),DayButton:ei,WeekNumber:({children:e,...t})=>(0,Z.jsx)(`td`,{...t,children:(0,Z.jsx)(`div`,{className:`flex size-(--cell-size) items-center justify-center text-center`,children:e})}),...s},formatters:{formatMonthDropdown:e=>e.toLocaleString(`default`,{month:`short`}),...o},showOutsideDays:n,...c})}$r.displayName=`Calendar`;function ei({className:e,day:t,modifiers:n,...r}){let a=Ln(),o=H.useRef(null);return H.useEffect(()=>{n.focused&&o.current?.focus()},[n.focused]),(0,Z.jsx)(g,{ref:o,className:i(`flex aspect-square size-auto w-full min-w-(--cell-size) flex-auto items-center justify-center gap-1 leading-none font-normal group-data-[focused=true]/day:relative group-data-[focused=true]/day:z-10 group-data-[focused=true]/day:border-ring group-data-[focused=true]/day:ring-[3px] group-data-[focused=true]/day:ring-ring/50 data-[range-end=true]:rounded-md data-[range-end=true]:rounded-r-md data-[range-end=true]:bg-primary data-[range-end=true]:text-primary-foreground data-[range-middle=true]:rounded-none data-[range-middle=true]:bg-accent data-[range-middle=true]:text-accent-foreground data-[range-start=true]:rounded-md data-[range-start=true]:rounded-l-md data-[range-start=true]:bg-primary data-[range-start=true]:text-primary-foreground data-[selected-single=true]:bg-primary data-[selected-single=true]:text-primary-foreground dark:hover:text-accent-foreground [&>span]:text-xs [&>span]:opacity-70`,a.day,e),"data-day":t.date.toLocaleDateString(),"data-range-end":n.range_end,"data-range-middle":n.range_middle,"data-range-start":n.range_start,"data-selected-single":n.selected&&!n.range_start&&!n.range_end&&!n.range_middle,size:`icon`,variant:`ghost`,...r})}ei.displayName=`CalendarDayButton`;var ti={addFilter:``,clearFilters:`Clear`,searchFields:`Search fields...`,noFieldsFound:`No fields found.`,noResultsFound:`No results found.`,loading:`Loading...`,loadMore:`Load more`,showMore:e=>`Show ${e} more`,select:`Select...`,true:`True`,false:`False`,min:`Min`,max:`Max`,to:`to`,typeAndPressEnter:`Type and press Enter to add tag`,selected:`selected`,selectedCount:`selected`,percent:`%`,defaultCurrency:`$`,defaultColor:`currentColor`,addFilterTitle:``,operators:{is:`is`,isNot:`is not`,isAnyOf:`is any of`,isNotAnyOf:`is not any of`,includesAll:`includes all`,excludesAll:`excludes all`,before:`before`,after:`after`,between:`between`,notBetween:`not between`,contains:`contains`,notContains:`does not contain`,startsWith:`starts with`,endsWith:`ends with`,isExactly:`is exactly`,equals:`equals`,notEquals:`not equals`,greaterThan:`greater than`,lessThan:`less than`,overlaps:`overlaps`,includes:`includes`,excludes:`excludes`,includesAllOf:`includes all of`,includesAnyOf:`includes any of`,empty:`is empty`,notEmpty:`is not empty`},placeholders:{enterField:e=>`Enter ${e}...`,selectField:`Select...`,searchField:e=>`Search ${e.toLowerCase()}...`,enterKey:`Enter key...`,enterValue:`Enter value...`},helpers:{formatOperator:e=>e.replace(/_/g,` `)},validation:{invalidEmail:`Invalid email format`,invalidUrl:`Invalid URL format`,invalidTel:`Invalid phone format`,invalid:`Invalid input format`}},ni=(0,H.createContext)({variant:`outline`,size:`md`,radius:`md`,i18n:ti,cursorPointer:!0,className:void 0,showAddButton:!0,addButtonText:void 0,addButtonIcon:void 0,addButtonClassName:void 0,addButton:void 0,showSearchInput:!0,trigger:void 0,allowMultiple:!0}),Q=()=>(0,H.useContext)(ni),ri=200,ii=a([`relative flex shrink-0 items-center text-foreground outline-hidden transition`,`has-[[data-slot=filters-input]:focus-visible]:ring-focus-ring/30`,`has-[[data-slot=filters-input]:focus-visible]:border-focus-ring`,`has-[[data-slot=filters-input]:focus-visible]:outline-hidden`,`has-[[data-slot=filters-input]:focus-visible]:ring-[3px]`,`has-[[data-slot=filters-input]:focus-visible]:z-1`,`has-[[data-slot=filters-input]:[aria-invalid=true]]:border`,`has-[[data-slot=filters-input]:[aria-invalid=true]]:border-solid`,`has-[[data-slot=filters-input]:[aria-invalid=true]]:border-destructive/60`,`has-[[data-slot=filters-input]:[aria-invalid=true]]:ring-destructive/10`,`dark:has-[[data-slot=filters-input]:[aria-invalid=true]]:border-destructive`,`dark:has-[[data-slot=filters-input]:[aria-invalid=true]]:ring-destructive/20`],{variants:{variant:{solid:`border-0 bg-secondary`,outline:`border border-border bg-background`},size:{lg:`h-10 px-2.5 text-sm has-[[data-slot=filters-prefix]]:ps-0 has-[[data-slot=filters-suffix]]:pe-0`,md:`h-(--control-height) px-2.5 has-[[data-slot=filters-prefix]]:ps-0 has-[[data-slot=filters-suffix]]:pe-0`,sm:`h-8 px-2 text-xs has-[[data-slot=filters-prefix]]:ps-0 has-[[data-slot=filters-suffix]]:pe-0`},cursorPointer:{true:`cursor-pointer`,false:``}},defaultVariants:{variant:`outline`,size:`md`,cursorPointer:!0}}),ai=a([`inline-flex shrink-0 items-center justify-center text-muted-foreground transition hover:text-foreground`,`focus-visible:ring-1 focus-visible:ring-focus-ring focus-visible:outline-hidden`],{variants:{variant:{solid:`bg-secondary`,outline:`border border-s-0 border-border hover:bg-secondary`},size:{lg:`size-10 [&_svg:not([class*=size-])]:size-4`,md:`size-(--control-height) [&_svg:not([class*=size-])]:size-3.5`,sm:`size-8 [&_svg:not([class*=size-])]:size-3`},cursorPointer:{true:`cursor-pointer`,false:``},radius:{md:`rounded-e-md`,full:`rounded-e-full`}},defaultVariants:{variant:`outline`,size:`md`,radius:`md`,cursorPointer:!0}}),oi=a([`inline-flex shrink-0 items-center justify-center text-foreground transition`,`[&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0 [&_svg]:stroke-[1.5px]`,`focus-visible:ring-1 focus-visible:ring-focus-ring focus-visible:outline-hidden`],{variants:{variant:{solid:`border border-input hover:bg-secondary/60`,outline:`border border-control-border hover:bg-interactive-hover dark:hover:bg-interactive-hover`},size:{lg:`h-10 gap-1.5 px-4 text-sm [&_svg:not([class*=size-])]:size-4`,md:`h-(--control-height) gap-1.5 px-2.5 text-base [&_svg:not([class*=size-])]:size-4`,sm:`h-8 gap-1.5 px-2.5 text-xs [&_svg:not([class*=size-])]:size-3.5`},radius:{md:`rounded-md`,full:`rounded-full`},cursorPointer:{true:`cursor-pointer`,false:``}},defaultVariants:{variant:`outline`,size:`md`,cursorPointer:!0}}),si=a([`relative flex shrink-0 items-center whitespace-nowrap text-muted-foreground transition hover:text-foreground focus-visible:z-1 data-[state=open]:text-foreground`,`focus-visible:ring-1 focus-visible:ring-focus-ring focus-visible:outline-hidden`],{variants:{variant:{solid:`bg-secondary`,outline:`border border-e-0 border-border bg-background hover:bg-secondary data-[state=open]:bg-secondary [&+[data-slot=filters-remove]]:border-s`},size:{lg:`h-10 gap-1.5 px-4 text-sm`,md:`h-(--control-height) gap-0.5 px-2.5`,sm:`h-8 gap-1 px-2.5 text-xs`},cursorPointer:{true:`cursor-pointer`,false:``},readOnly:{true:`pointer-events-none text-muted-foreground hover:text-muted-foreground`,false:``}},defaultVariants:{variant:`outline`,size:`md`,cursorPointer:!0,readOnly:!1}}),ci=a([`flex shrink-0 items-center gap-1.5 px-1.5 py-1 text-foreground`,`[&_svg:not([class*=size-])]:size-4`],{variants:{variant:{solid:`bg-secondary`,outline:`border border-e-0 border-border`},size:{lg:`h-10 gap-1.5 px-2 text-sm [&_svg:not([class*=size-])]:size-4`,md:`h-(--control-height) gap-1.5 px-2.5 [&_svg:not([class*=size-])]:size-4`,sm:`h-8 gap-0.5 px-2.5 text-xs [&_svg:not([class*=size-])]:size-3.5`},radius:{md:`rounded-s-md`,full:`rounded-s-full`}},defaultVariants:{variant:`outline`,size:`md`}}),li=a([`relative flex min-w-0 shrink items-center gap-1 text-foreground transition focus-visible:z-1`,`focus-visible:ring-1 focus-visible:ring-focus-ring focus-visible:outline-hidden`,`has-[[data-slot=filters-input]:focus-visible]:ring-focus-ring/30`,`has-[[data-slot=filters-input]:focus-visible]:border-focus-ring`,`has-[[data-slot=filters-input]:focus-visible]:outline-hidden`,`has-[[data-slot=filters-input]:focus-visible]:ring-[3px]`,`has-[[data-slot=filters-input]:focus-visible]:z-1`,`has-[[data-slot=filters-input][aria-invalid=true]]:border`,`has-[[data-slot=filters-input][aria-invalid=true]]:border-solid`,`has-[[data-slot=filters-input][aria-invalid=true]]:border-destructive/60`,`has-[[data-slot=filters-input][aria-invalid=true]]:ring-destructive/10`,`dark:has-[[data-slot=filters-input][aria-invalid=true]]:border-destructive`,`dark:has-[[data-slot=filters-input][aria-invalid=true]]:ring-destructive/20`],{variants:{variant:{solid:`bg-secondary`,outline:`border border-border bg-background hover:bg-secondary has-[[data-slot=switch]]:hover:bg-transparent has-[>[data-slot=filters-input-wrapper]]:hover:bg-background`},size:{lg:`h-10 gap-1.5 px-2 text-sm [&_svg:not([class*=size-])]:size-4`,md:`h-(--control-height) gap-1.5 px-2.5 [&_svg:not([class*=size-])]:size-4`,sm:`h-8 gap-0.5 px-2.5 text-xs [&_svg:not([class*=size-])]:size-3.5`},cursorPointer:{true:`cursor-pointer has-[[data-slot=switch]]:cursor-default has-[>[data-slot=filters-input-wrapper]]:cursor-text`,false:``},readOnly:{true:`pointer-events-none text-muted-foreground hover:bg-background`,false:``}},defaultVariants:{variant:`outline`,size:`md`,cursorPointer:!0,readOnly:!1}}),ui=a(`flex shrink-0 items-center justify-center text-foreground`,{variants:{variant:{solid:``,outline:``},size:{lg:`h-10 px-4 text-sm`,md:`h-(--control-height) px-2.5`,sm:`h-8 px-2.5 text-xs`}},defaultVariants:{variant:`outline`,size:`md`}}),di=a(`flex shrink-0 items-center text-muted-foreground`,{variants:{variant:{solid:`bg-secondary`,outline:`border border-x-0 border-border bg-background`},size:{lg:`h-10 px-4 text-sm`,md:`h-(--control-height) px-2.5`,sm:`h-8 px-2.5 text-xs`}},defaultVariants:{variant:`outline`,size:`md`}}),fi=a(`relative flex flex-wrap items-center`,{variants:{variant:{solid:`gap-2`,outline:``},size:{sm:`gap-1.5`,md:`gap-2.5`,lg:`gap-3.5`}},defaultVariants:{variant:`outline`,size:`md`}}),pi=a(`flex max-w-[calc(100vw-32px)] items-center`,{variants:{variant:{solid:`gap-px`,outline:``}},defaultVariants:{variant:`outline`}});function $({field:e,onChange:t,onBlur:n,onKeyDown:r,onInputChange:a,className:s,...c}){let l=Q(),[u,d]=(0,H.useState)(!0),[f,p]=(0,H.useState)(``),m=(e,t)=>!t||!e?!0:new RegExp(t).test(e),h=(e,t=!1)=>{if((e===`text`||e===`number`)&&t)return l.i18n.validation.invalid;switch(e){case`email`:return l.i18n.validation.invalidEmail;case`url`:return l.i18n.validation.invalidUrl;case`tel`:return l.i18n.validation.invalidTel;default:return l.i18n.validation.invalid}};return(0,Z.jsxs)(`div`,{className:i(`w-36`,ii({variant:l.variant,size:l.size}),s),"data-slot":`filters-input-wrapper`,children:[e?.prefix&&(0,Z.jsx)(`div`,{className:ui({variant:l.variant,size:l.size}),"data-slot":`filters-prefix`,children:e.prefix}),(0,Z.jsxs)(`div`,{className:`flex w-full items-stretch`,children:[(0,Z.jsx)(`input`,{"aria-describedby":!u&&f?`${e?.key||`input`}-error`:void 0,"aria-invalid":!u,autoComplete:`off`,className:`w-full bg-transparent outline-hidden dark:!bg-transparent`,"data-form-type":`other`,"data-lpignore":`true`,"data-slot":`filters-input`,"data-1p-ignore":!0,onBlur:t=>{let r=t.target.value,i=e?.pattern||c.pattern;if(r&&i){let t=!0;t=e?.validation?e.validation(r):m(r,i),d(t);let n=!!(e?.pattern||c.pattern);p(t?``:h(e?.type||``,n))}else d(!0),p(``);a&&a(t),n?.(t)},onChange:e=>{t?.(e)},onKeyDown:e=>{!u&&![`Tab`,`Escape`,`Enter`,`ArrowUp`,`ArrowDown`,`ArrowLeft`,`ArrowRight`].includes(e.key)&&(d(!0),p(``)),e.key===`Enter`&&a&&a({...e,target:e.target,currentTarget:e.currentTarget}),r?.(e)},...c}),!u&&f&&(0,Z.jsxs)(w,{children:[(0,Z.jsx)(ce,{asChild:!0,children:(0,Z.jsx)(`div`,{className:`absolute top-1/2 right-2 flex -translate-y-1/2 items-center`,children:(0,Z.jsx)(o,{className:`size-3.5 text-destructive`})})}),(0,Z.jsx)(T,{children:(0,Z.jsx)(`p`,{children:f})})]})]}),e?.suffix&&(0,Z.jsx)(`div`,{className:i(ui({variant:l.variant,size:l.size})),"data-slot":`filters-suffix`,children:e.suffix})]})}var mi=e=>{let t=/^(\d{4})-(\d{2})-(\d{2})$/.exec(e);if(!t)return;let[,n,r,i]=t,a=Number(n),o=Number(r),s=Number(i),c=new Date(a,o-1,s);if(!(c.getFullYear()!==a||c.getMonth()!==o-1||c.getDate()!==s))return c},hi=e=>e?`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,`0`)}-${String(e.getDate()).padStart(2,`0`)}`:``;function gi({field:e,value:t,onChange:n,className:r,embedded:a=!1}){let o=Q(),[s,c]=(0,H.useState)(!1),l=(0,H.useMemo)(()=>mi(t),[t]),[u,d]=(0,H.useState)(l),f=(0,H.useRef)(null),m=(0,H.useRef)(t),[h,g]=(0,H.useState)(t);(0,H.useEffect)(()=>{l&&d(l)},[l]),(0,H.useEffect)(()=>{t!==m.current&&document.activeElement!==f.current&&(g(t),m.current=t)},[t]);let _=(t,n=f.current)=>{!e?.onInputChange||!n||e.onInputChange({target:{...n,value:t},currentTarget:{...n,value:t}})};return(0,Z.jsxs)(`div`,{className:i(a?`flex w-full min-w-0 items-center`:i(`w-32`,ii({variant:o.variant,size:o.size,cursorPointer:!1})),r),"data-slot":`filters-input-wrapper`,children:[e?.prefix&&(0,Z.jsx)(`div`,{className:ui({variant:o.variant,size:o.size}),"data-slot":`filters-prefix`,children:e.prefix}),(0,Z.jsx)(`div`,{className:`flex w-full min-w-0 items-stretch`,children:(0,Z.jsx)(`input`,{ref:f,autoComplete:`off`,className:`w-full min-w-0 bg-transparent outline-hidden dark:!bg-transparent`,"data-slot":`filters-input`,inputMode:`numeric`,pattern:`\\d{4}-\\d{2}-\\d{2}`,placeholder:`YYYY-MM-DD`,type:`text`,value:h,onBlur:e=>{let r=e.target.value,i=mi(r),a=r&&!i?hi(new Date):r;i?d(i):a&&d(mi(a)),a!==r&&(f.current&&(f.current.value=a),g(a)),a!==t&&(m.current=a,n(a)),_(a,e.target)},onChange:e=>{g(e.target.value)}})}),(0,Z.jsxs)(se,{open:s,onOpenChange:c,children:[(0,Z.jsx)(ne,{asChild:!0,children:(0,Z.jsx)(`button`,{"aria-label":`Open calendar`,className:i(ui({variant:o.variant,size:o.size}),`cursor-pointer text-muted-foreground transition-colors hover:text-foreground`),"data-slot":`filters-suffix`,type:`button`,children:(0,Z.jsx)(p,{className:`size-3.5`})})}),(0,Z.jsx)(re,{align:`center`,className:`w-auto overflow-hidden p-0`,sideOffset:4,children:(0,Z.jsx)($r,{captionLayout:`dropdown-months`,mode:`single`,month:u,selected:l,onMonthChange:d,onSelect:e=>{if(!e){m.current=``,f.current&&(f.current.value=``),g(``),n(``),_(``);return}let t=hi(e);m.current=t,f.current&&(f.current.value=t),d(e),g(t),n(t),_(t),c(!1)}})})]})]})}function _i({className:e,icon:t=(0,Z.jsx)(f,{}),...n}){let r=Q();return(0,Z.jsx)(`button`,{className:i(ai({variant:r.variant,size:r.size,cursorPointer:r.cursorPointer,radius:r.radius}),e),"data-slot":`filters-remove`,...n,type:`button`,children:t})}var vi=e=>`fields`in e&&Array.isArray(e.fields),yi=e=>!!(e.group&&e.fields),bi=e=>e.reduce((e,t)=>vi(t)||yi(t)?[...e,...t.fields]:[...e,t],[]),xi=e=>bi(e).reduce((e,t)=>(t.key&&(e[t.key]=t),e),{}),Si=e=>({select:[{value:`is`,label:e.operators.is},{value:`is_not`,label:e.operators.isNot},{value:`empty`,label:e.operators.empty},{value:`not_empty`,label:e.operators.notEmpty}],multiselect:[{value:`is_any_of`,label:e.operators.isAnyOf},{value:`is_not_any_of`,label:e.operators.isNotAnyOf},{value:`includes_all`,label:e.operators.includesAll},{value:`excludes_all`,label:e.operators.excludesAll},{value:`empty`,label:e.operators.empty},{value:`not_empty`,label:e.operators.notEmpty}],date:[{value:`before`,label:e.operators.before},{value:`after`,label:e.operators.after},{value:`is`,label:e.operators.is},{value:`is_not`,label:e.operators.isNot},{value:`empty`,label:e.operators.empty},{value:`not_empty`,label:e.operators.notEmpty}],daterange:[{value:`between`,label:e.operators.between},{value:`not_between`,label:e.operators.notBetween},{value:`empty`,label:e.operators.empty},{value:`not_empty`,label:e.operators.notEmpty}],text:[{value:`contains`,label:e.operators.contains},{value:`not_contains`,label:e.operators.notContains},{value:`starts_with`,label:e.operators.startsWith},{value:`ends_with`,label:e.operators.endsWith},{value:`is`,label:e.operators.isExactly},{value:`empty`,label:e.operators.empty},{value:`not_empty`,label:e.operators.notEmpty}],number:[{value:`equals`,label:e.operators.equals},{value:`not_equals`,label:e.operators.notEquals},{value:`greater_than`,label:e.operators.greaterThan},{value:`less_than`,label:e.operators.lessThan},{value:`between`,label:e.operators.between},{value:`empty`,label:e.operators.empty},{value:`not_empty`,label:e.operators.notEmpty}],numberrange:[{value:`between`,label:e.operators.between},{value:`overlaps`,label:e.operators.overlaps},{value:`contains`,label:e.operators.contains},{value:`empty`,label:e.operators.empty},{value:`not_empty`,label:e.operators.notEmpty}],boolean:[{value:`is`,label:e.operators.is},{value:`is_not`,label:e.operators.isNot},{value:`empty`,label:e.operators.empty},{value:`not_empty`,label:e.operators.notEmpty}],email:[{value:`contains`,label:e.operators.contains},{value:`not_contains`,label:e.operators.notContains},{value:`starts_with`,label:e.operators.startsWith},{value:`ends_with`,label:e.operators.endsWith},{value:`is`,label:e.operators.isExactly},{value:`empty`,label:e.operators.empty},{value:`not_empty`,label:e.operators.notEmpty}],url:[{value:`contains`,label:e.operators.contains},{value:`not_contains`,label:e.operators.notContains},{value:`starts_with`,label:e.operators.startsWith},{value:`ends_with`,label:e.operators.endsWith},{value:`is`,label:e.operators.isExactly},{value:`empty`,label:e.operators.empty},{value:`not_empty`,label:e.operators.notEmpty}],tel:[{value:`contains`,label:e.operators.contains},{value:`not_contains`,label:e.operators.notContains},{value:`starts_with`,label:e.operators.startsWith},{value:`ends_with`,label:e.operators.endsWith},{value:`is`,label:e.operators.isExactly},{value:`empty`,label:e.operators.empty},{value:`not_empty`,label:e.operators.notEmpty}],time:[{value:`before`,label:e.operators.before},{value:`after`,label:e.operators.after},{value:`is`,label:e.operators.is},{value:`between`,label:e.operators.between},{value:`empty`,label:e.operators.empty},{value:`not_empty`,label:e.operators.notEmpty}],datetime:[{value:`before`,label:e.operators.before},{value:`after`,label:e.operators.after},{value:`is`,label:e.operators.is},{value:`between`,label:e.operators.between},{value:`empty`,label:e.operators.empty},{value:`not_empty`,label:e.operators.notEmpty}]});Si(ti);var Ci=(e,t,n)=>{if(e.operators)return e.operators;let r=Si(n),i=e.type||`select`;return i===`select`&&t.length>1&&(i=`multiselect`),i===`multiselect`||e.type===`multiselect`?r.multiselect:r[i]||r.select};function wi({trigger:e,options:t,value:n,onChange:r,readOnly:i,ariaLabel:a,testId:o}){let c=Q();return i?(0,Z.jsx)(`div`,{"aria-label":a,className:si({variant:c.variant,size:c.size,readOnly:!0}),"data-testid":o,children:e}):(0,Z.jsxs)(ie,{children:[(0,Z.jsx)(oe,{"aria-label":a,className:si({variant:c.variant,size:c.size}),"data-testid":o,children:e}),(0,Z.jsx)(ae,{align:`start`,className:`w-fit min-w-fit`,children:t.map(e=>(0,Z.jsxs)(C,{className:`flex items-center justify-between`,onClick:()=>r(e.value),children:[(0,Z.jsx)(`span`,{children:e.label}),(0,Z.jsx)(s,{className:`ms-auto text-primary ${e.value===n?`opacity-100`:`opacity-0`}`})]},e.value))})]})}function Ti({field:e,operator:t,values:n,onChange:r}){let i=Q(),a=Ci(e,n,i.i18n),o=a.find(e=>e.value===t)?.label||i.i18n.helpers.formatOperator(t);return(0,Z.jsx)(wi,{options:a,readOnly:e.readOnly||e.hideOperatorSelect,trigger:o,value:t,onChange:r})}function Ei({value:e,options:t,onChange:n,placeholder:r,ariaLabel:a,className:o,testId:s,readOnly:c}){let l=t.find(t=>t.value===e);return(0,Z.jsx)(wi,{ariaLabel:a,options:t,readOnly:c,testId:s,trigger:(0,Z.jsx)(`span`,{className:i(l?void 0:`text-muted-foreground`,o),children:l?l.label:r}),value:e,onChange:n})}function Di({value:e,onChange:t,placeholder:n,ariaLabel:r,className:a,testId:o,readOnly:s}){let c=Q();return(0,Z.jsx)(`div`,{className:i(`w-36`,ii({variant:c.variant,size:c.size}),a),"data-slot":`filters-input-wrapper`,children:s?(0,Z.jsx)(`span`,{"aria-label":r,className:`block w-full truncate text-muted-foreground`,"data-slot":`filters-input`,"data-testid":o,children:e||n}):(0,Z.jsx)(`input`,{"aria-label":r,autoComplete:`off`,className:`w-full bg-transparent outline-hidden`,"data-slot":`filters-input`,"data-testid":o,placeholder:n,value:e,onChange:e=>t(e.target.value)})})}function Oi({searchable:e,label:t,searchInput:n,isSearching:r,className:i,onSearchChange:a}){let o=Q();return e?(0,Z.jsxs)(`div`,{className:`relative`,children:[(0,Z.jsx)(_,{className:i,placeholder:o.i18n.placeholders.searchField(t||``),value:n,onValueChange:a}),r&&(0,Z.jsx)(c,{className:`pointer-events-none absolute top-1/2 right-3 size-4 -translate-y-1/2 animate-spin text-muted-foreground`})]}):null}function ki(e,t){let n=t.trim().toLowerCase();return n?e.filter(e=>e.label.toLowerCase().includes(n)||e.detail?.toLowerCase().includes(n)):e}function Ai({contextLabel:e,selectedOptions:t,unselectedOptions:n,isInitialLoad:r,isLoadingMore:i,hasMore:a,onLoadMore:o,onSelectSelected:l,onSelectUnselected:u}){let d=Q();return(0,Z.jsxs)(S,{className:`outline-hidden`,children:[r?(0,Z.jsxs)(`div`,{className:`flex items-center justify-center py-6 text-muted-foreground`,children:[(0,Z.jsx)(c,{className:`mr-2 size-4 animate-spin`}),d.i18n.loading]}):(0,Z.jsx)(x,{children:d.i18n.noResultsFound}),t.length>0&&(0,Z.jsx)(y,{heading:e,children:t.map(e=>(0,Z.jsxs)(b,{className:`group flex items-center gap-2`,onSelect:()=>l(e),children:[e.icon&&e.icon,(0,Z.jsxs)(`div`,{className:`flex flex-col overflow-hidden`,children:[(0,Z.jsx)(`span`,{className:`truncate text-accent-foreground`,title:e.label,children:e.label}),e.detail&&(0,Z.jsx)(`span`,{className:`truncate text-muted-foreground`,title:e.detail,children:e.detail})]}),(0,Z.jsx)(s,{className:`ms-auto text-primary`})]},String(e.value)))}),n.length>0&&(0,Z.jsxs)(Z.Fragment,{children:[t.length>0&&(0,Z.jsx)(v,{}),(0,Z.jsx)(y,{children:n.map(e=>(0,Z.jsxs)(b,{className:`group flex items-center gap-2`,value:e.label+(e.detail?` - ${e.detail}`:``),onSelect:()=>u(e),children:[e.icon&&e.icon,(0,Z.jsxs)(`div`,{className:`flex flex-col overflow-hidden`,children:[(0,Z.jsx)(`span`,{className:`truncate text-accent-foreground`,title:e.label,children:e.label}),e.detail&&(0,Z.jsx)(`span`,{className:`truncate text-muted-foreground`,title:e.detail,children:e.detail})]}),(0,Z.jsx)(s,{className:`ms-auto text-primary opacity-0`})]},String(e.value)))})]}),a&&(0,Z.jsxs)(Z.Fragment,{children:[(t.length>0||n.length>0)&&(0,Z.jsx)(v,{}),(0,Z.jsx)(`div`,{className:`p-1.5`,children:(0,Z.jsxs)(`button`,{className:`flex w-full items-center justify-center rounded-xs px-2.5 py-1.5 text-muted-foreground hover:bg-interactive-hover hover:text-accent-foreground disabled:opacity-50`,disabled:i,type:`button`,onClick:o,children:[i&&(0,Z.jsx)(c,{className:`mr-2 size-4 animate-spin`}),i?d.i18n.loading:d.i18n.loadMore]})})]})]})}function ji({field:e,values:t,onChange:n,onClose:r,inline:a=!1,searchInput:o,onSearchChange:s,shouldClientFilter:c,isInitialLoad:l,isSearching:u,isLoadingMore:d,hasMore:f,onLoadMore:p}){let[m,h]=(0,H.useState)(!1),[g,_]=(0,H.useState)([]),v=Q(),y=e.type===`multiselect`||t.length>1,b=(0,H.useMemo)(()=>e.value??t,[e.value,t]);(0,H.useEffect)(()=>{m&&e.searchable!==!1&&setTimeout(()=>{let e=document.querySelector(`[cmdk-input]`);e&&e.focus()},0)},[m,e.searchable]);let x=(0,H.useMemo)(()=>e.options?.filter(e=>b.includes(e.value))||[],[e.options,b]);(0,H.useEffect)(()=>{if(b.length===0){_([]);return}x.length>0&&_(e=>{let t=[];for(let n of b){let r=x.find(e=>e.value===n)??e.find(e=>e.value===n);r&&t.push(r)}return t})},[x,b]);let S=(0,H.useMemo)(()=>b.length===0?[]:g.length>0?g:x,[g,b.length,x]),te=(0,H.useMemo)(()=>ki(S,o),[o,S]),C=e.options?.filter(e=>!b.includes(e.value))||[],w=e=>{s(e)},T=()=>{h(!1),setTimeout(()=>s(``),ri),r?.()};return a?(0,Z.jsx)(`div`,{className:`w-full`,children:(0,Z.jsxs)(ee,{shouldFilter:c,children:[(0,Z.jsx)(Oi,{className:`h-(--control-height) pr-8`,isSearching:u,label:e.label,searchable:e.searchable!==!1,searchInput:o,onSearchChange:w}),(0,Z.jsx)(Ai,{contextLabel:e.label||`Selected`,hasMore:f,isInitialLoad:l,isLoadingMore:d,selectedOptions:te,unselectedOptions:C,onLoadMore:p,onSelectSelected:t=>{if(y){let r=b.filter(e=>e!==t.value);e.onValueChange?e.onValueChange(r):n(r)}else e.onValueChange?e.onValueChange([]):n([])},onSelectUnselected:t=>{if(y){let i=[...b,t.value];if(e.maxSelections&&i.length>e.maxSelections)return;e.onValueChange?e.onValueChange(i):n(i),e.autoCloseOnSelect&&r?.()}else e.onValueChange?e.onValueChange([t.value]):n([t.value]),r?.()}})]})}):(0,Z.jsxs)(se,{open:m,onOpenChange:e=>{h(e),e||setTimeout(()=>s(``),ri)},children:[(0,Z.jsx)(ne,{className:i(li({variant:v.variant,size:v.size,cursorPointer:v.cursorPointer}),e.triggerClassName??`max-w-60`),children:(0,Z.jsx)(`div`,{className:`flex min-w-0 items-center gap-1.5`,children:e.customValueRenderer?e.customValueRenderer(t,e.options||[]):(0,Z.jsxs)(Z.Fragment,{children:[S.length>0&&S.some(e=>e.icon)&&(0,Z.jsx)(`div`,{className:i(`flex shrink-0 items-center -space-x-0.5`,e.selectedOptionsClassName),children:S.slice(0,3).map(e=>(0,Z.jsx)(`div`,{children:e.icon},String(e.value)))}),S.length===1?(0,Z.jsx)(`span`,{className:`min-w-0 truncate text-accent-foreground`,title:S[0].detail?`${S[0].label} - ${S[0].detail}`:S[0].label,children:S[0].label}):S.length>1?`${S.length} ${v.i18n.selectedCount}`:v.i18n.select]})})}),(0,Z.jsx)(re,{align:`start`,className:i(`data-[state=closed]:animation-none! p-0 data-[state=closed]:duration-0!`,e.className||`w-[200px]`),children:(0,Z.jsxs)(ee,{shouldFilter:c,children:[(0,Z.jsx)(Oi,{className:`h-(--control-height) pr-8`,isSearching:u,label:e.label,searchable:e.searchable!==!1,searchInput:o,onSearchChange:w}),(0,Z.jsx)(Ai,{hasMore:f,isInitialLoad:l,isLoadingMore:d,selectedOptions:te,unselectedOptions:C,onLoadMore:p,onSelectSelected:e=>{n(y?t.filter(t=>t!==e.value):[]),y||(h(!1),T())},onSelectUnselected:r=>{if(y){let i=[...t,r.value];if(e.maxSelections&&i.length>e.maxSelections)return;n(i),e.autoCloseOnSelect&&T()}else n([r.value]),h(!1),T()}})]})})]})}function Mi({field:e,values:t,onChange:n,onClose:r,inline:i=!1,searchInput:a,onSearchChange:o}){let s=(0,H.useMemo)(()=>e.value??t,[e.value,t]),c=e.valueSource.useOptions({query:a,selectedValues:s});return(0,Z.jsx)(ji,{field:(0,H.useMemo)(()=>({...e,options:c.options}),[e,c.options]),hasMore:c.hasMore,inline:i,isInitialLoad:c.isInitialLoad,isLoadingMore:c.isLoadingMore,isSearching:c.isSearching,searchInput:a,shouldClientFilter:!1,values:t,onChange:n,onClose:r,onLoadMore:c.loadMore,onSearchChange:o})}function Ni({field:e,values:t,onChange:n,onClose:r,inline:i=!1}){let[a,o]=(0,H.useState)(``),s=e.options?.length??0;return e.valueSource?(0,Z.jsx)(Mi,{field:e,inline:i,searchInput:a,values:t,onChange:n,onClose:r,onSearchChange:o},e.valueSource.id):(0,Z.jsx)(ji,{field:e,hasMore:!1,inline:i,isInitialLoad:!!e.isLoading&&s===0,isLoadingMore:!1,isSearching:!!e.isLoading&&s>0,searchInput:a,shouldClientFilter:!0,values:t,onChange:n,onClose:r,onLoadMore:()=>{},onSearchChange:o})}function Pi({field:e,values:t,onChange:n,operator:r,onOperatorChange:a,readOnly:o}){let[c,l]=(0,H.useState)(!1),[u,d]=(0,H.useState)(``),f=Q();if((0,H.useEffect)(()=>{c&&e.searchable!==!1&&setTimeout(()=>{let e=document.querySelector(`[cmdk-input]`);e&&e.focus()},0)},[c,e.searchable]),r===`empty`||r===`not_empty`)return null;if(e.customRenderer)return e.renderOperatorInValue?(0,Z.jsx)(Z.Fragment,{children:e.customRenderer({field:e,values:t,onChange:n,operator:r,onOperatorChange:a,readOnly:o})}):(0,Z.jsx)(`div`,{className:li({variant:f.variant,size:f.size,cursorPointer:f.cursorPointer,readOnly:o}),children:e.customRenderer({field:e,values:t,onChange:n,operator:r,onOperatorChange:a,readOnly:o})});if(o)return(0,Z.jsx)(`div`,{className:li({variant:f.variant,size:f.size,cursorPointer:f.cursorPointer,readOnly:!0}),children:e.customValueRenderer?e.customValueRenderer(t,e.options??[]):t.map(t=>{let n=e.options?.find(e=>e.value===t);return n?n.label:String(t)}).filter(Boolean).join(`, `)});if(e.type===`boolean`){let r=t[0]===!0,i=e.onLabel||f.i18n.true,a=e.offLabel||f.i18n.false;return(0,Z.jsx)(`div`,{className:li({variant:f.variant,size:f.size,cursorPointer:f.cursorPointer}),children:(0,Z.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Z.jsx)(te,{checked:r,size:`sm`,onCheckedChange:e=>n([e])}),e.onLabel&&e.offLabel&&(0,Z.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:r?i:a})]})})}if(e.type===`time`){if(r===`between`){let r=t[0]||``,i=t[1]||``;return(0,Z.jsxs)(`div`,{className:`flex items-center`,"data-slot":`filters-item`,children:[(0,Z.jsx)($,{className:e.className,field:e,type:`time`,value:r,onChange:e=>n([e.target.value,i]),onInputChange:e.onInputChange}),(0,Z.jsx)(`div`,{className:di({variant:f.variant,size:f.size}),"data-slot":`filters-between`,children:f.i18n.to}),(0,Z.jsx)($,{className:e.className,field:e,type:`time`,value:i,onChange:e=>n([r,e.target.value]),onInputChange:e.onInputChange})]})}return(0,Z.jsx)($,{className:e.className,field:e,type:`time`,value:t[0]||``,onChange:e=>n([e.target.value]),onInputChange:e.onInputChange})}if(e.type===`datetime`){if(r===`between`){let r=t[0]||``,a=t[1]||``;return(0,Z.jsxs)(`div`,{className:`flex items-center`,"data-slot":`filters-item`,children:[(0,Z.jsx)($,{className:i(`w-36 max-w-full`,e.className),field:e,type:`datetime-local`,value:r,onChange:e=>n([e.target.value,a]),onInputChange:e.onInputChange}),(0,Z.jsx)(`div`,{className:di({variant:f.variant,size:f.size}),"data-slot":`filters-between`,children:f.i18n.to}),(0,Z.jsx)($,{className:i(`w-36 max-w-full`,e.className),field:e,type:`datetime-local`,value:a,onChange:e=>n([r,e.target.value]),onInputChange:e.onInputChange})]})}return(0,Z.jsx)($,{className:i(`w-36 max-w-full`,e.className),field:e,type:`datetime-local`,value:t[0]||``,onChange:e=>n([e.target.value]),onInputChange:e.onInputChange})}if([`email`,`url`,`tel`].includes(e.type||``))return(0,Z.jsx)($,{className:e.className,field:e,pattern:e.pattern||(()=>{switch(e.type){case`email`:return`^[^@\\s]+@[^@\\s]+\\.[^@\\s]+$`;case`url`:return`^https?:\\/\\/(www\\.)?[-a-zA-Z0-9@:%._\\+~#=]{1,256}\\.[a-zA-Z0-9()]{1,6}\\b([-a-zA-Z0-9()@:%_\\+.~#?&//=]*)$`;case`tel`:return`^[\\+]?[1-9][\\d]{0,15}$`;default:return}})(),placeholder:e.placeholder||f.i18n.placeholders.enterField(e.type||`text`),type:(()=>{switch(e.type){case`email`:return`email`;case`url`:return`url`;case`tel`:return`tel`;default:return`text`}})(),value:t[0]||``,onChange:e=>n([e.target.value]),onInputChange:e.onInputChange});if(e.type===`daterange`){let r=t[0]||``,a=t[1]||``;return(0,Z.jsxs)(`div`,{className:li({variant:f.variant,size:f.size,cursorPointer:f.cursorPointer}),children:[(0,Z.jsx)(gi,{className:i(`max-w-full`,e.className),field:e,value:r,onChange:e=>n([e,a])}),(0,Z.jsx)(`div`,{className:di({variant:f.variant,size:f.size}),"data-slot":`filters-between`,children:f.i18n.to}),(0,Z.jsx)(gi,{className:i(`max-w-full`,e.className),field:e,value:a,onChange:e=>n([r,e])})]})}if(e.type===`text`||e.type===`number`){if(e.type===`number`&&r===`between`){let r=t[0]||``,a=t[1]||``;return(0,Z.jsxs)(`div`,{className:`flex items-center`,"data-slot":`filters-item`,children:[(0,Z.jsx)($,{className:i(`w-16 max-w-full`,e.className),field:e,max:e.max,min:e.min,pattern:e.pattern,placeholder:f.i18n.min,step:e.step,type:`number`,value:r,onChange:e=>n([e.target.value,a]),onInputChange:e.onInputChange}),(0,Z.jsx)(`div`,{className:di({variant:f.variant,size:f.size}),"data-slot":`filters-between`,children:f.i18n.to}),(0,Z.jsx)($,{className:i(`w-16 max-w-full`,e.className),field:e,max:e.max,min:e.min,pattern:e.pattern,placeholder:f.i18n.max,step:e.step,type:`number`,value:a,onChange:e=>n([r,e.target.value]),onInputChange:e.onInputChange})]})}return(0,Z.jsx)(`div`,{className:`flex items-center`,"data-slot":`filters-item`,children:(0,Z.jsx)($,{className:i(`w-36`,e.className),field:e,max:e.type===`number`?e.max:void 0,min:e.type===`number`?e.min:void 0,pattern:e.pattern,placeholder:e.placeholder,step:e.type===`number`?e.step:void 0,type:e.type===`number`?`number`:`text`,value:t[0]||``,onChange:e=>n([e.target.value]),onInputChange:e.onInputChange})})}if(e.type===`date`)return(0,Z.jsx)(gi,{className:e.className,field:e,value:t[0]||``,onChange:e=>n([e])});if(e.type===`select`||e.type===`multiselect`)return(0,Z.jsx)(Ni,{field:e,values:t,onChange:n});let p=t.length>1,m=e.options?.filter(e=>t.includes(e.value))||[],h=e.options?.filter(e=>!t.includes(e.value))||[];return(0,Z.jsxs)(se,{open:c,onOpenChange:e=>{l(e),e||setTimeout(()=>d(``),ri)},children:[(0,Z.jsx)(ne,{className:li({variant:f.variant,size:f.size,cursorPointer:f.cursorPointer}),children:(0,Z.jsx)(`div`,{className:`flex w-full min-w-0 items-center gap-1.5`,children:e.customValueRenderer?e.customValueRenderer(t,e.options||[]):(0,Z.jsxs)(Z.Fragment,{children:[m.length>0&&(0,Z.jsx)(`div`,{className:`flex shrink-0 items-center -space-x-1.5`,children:m.slice(0,3).map(e=>(0,Z.jsx)(`div`,{children:e.icon},String(e.value)))}),m.length===1?(0,Z.jsx)(`span`,{className:`min-w-0 truncate text-accent-foreground`,title:m[0].detail?`${m[0].label} - ${m[0].detail}`:m[0].label,children:m[0].label}):m.length>1?`${m.length} ${f.i18n.selectedCount}`:f.i18n.select]})})}),(0,Z.jsx)(re,{className:i(`data-[state=closed]:animation-none! w-36 p-0 data-[state=closed]:duration-0!`,e.popoverContentClassName),children:(0,Z.jsxs)(ee,{children:[e.searchable!==!1&&(0,Z.jsx)(_,{className:`h-(--control-height)`,placeholder:f.i18n.placeholders.searchField(e.label||``),value:u,onValueChange:d}),(0,Z.jsxs)(S,{className:`outline-hidden`,children:[(0,Z.jsx)(x,{children:f.i18n.noResultsFound}),m.length>0&&(0,Z.jsx)(y,{children:m.map(e=>(0,Z.jsxs)(b,{className:`group flex items-center gap-2`,onSelect:()=>{n(p?t.filter(t=>t!==e.value):[]),p||l(!1)},children:[e.icon&&e.icon,(0,Z.jsx)(`span`,{className:`truncate text-accent-foreground`,children:e.label}),(0,Z.jsx)(s,{className:`ms-auto text-primary`})]},String(e.value)))}),h.length>0&&(0,Z.jsxs)(Z.Fragment,{children:[m.length>0&&(0,Z.jsx)(v,{}),(0,Z.jsx)(y,{children:h.map(r=>(0,Z.jsxs)(b,{className:`group flex items-center gap-2`,value:r.label,onSelect:()=>{if(p){let i=[...t,r.value];if(e.maxSelections&&i.length>e.maxSelections)return;n(i)}else n([r.value]),l(!1)},children:[r.icon&&r.icon,(0,Z.jsx)(`span`,{className:`truncate text-accent-foreground`,children:r.label}),(0,Z.jsx)(s,{className:`ms-auto text-primary opacity-0`})]},String(r.value)))})]})]})]})})]})}function Fi({filters:e,fields:t,onChange:n,className:r,showAddButton:a=!0,addButtonText:o,addButtonIcon:s,addButtonClassName:c,addButton:l,showClearButton:u=!1,clearButtonText:d,clearButtonIcon:p,clearButtonClassName:h,clearButton:g,onClear:te,variant:C=`outline`,size:w=`md`,radius:T=`md`,i18n:ie,showSearchInput:ae=!0,cursorPointer:oe=!0,trigger:ce,allowMultiple:E=!0,popoverContentClassName:D,popoverAlign:O=`start`,keyboardShortcut:k,onActiveFieldChange:le}){let[ue,A]=(0,H.useState)(!1),[j,M]=(0,H.useState)(null),[de,fe]=(0,H.useState)([]),[pe,me]=(0,H.useState)(``),[N,he]=(0,H.useState)(new Set);(0,H.useEffect)(()=>{le?.(j)},[j,le]),(0,H.useEffect)(()=>{if(!k)return;let e=e=>{let t=e.target;t.tagName===`INPUT`||t.tagName===`TEXTAREA`||t.isContentEditable||e.key.toLowerCase()===k.toLowerCase()&&!e.metaKey&&!e.ctrlKey&&!e.altKey&&(e.preventDefault(),A(e=>!e))};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[k]),(0,H.useEffect)(()=>{ue&&setTimeout(()=>{let e=document.querySelector(`[cmdk-input]`);if(e)e.focus();else{let e=document.querySelector(`[cmdk-root]`);e&&e.focus()}},0)},[ue,j,ae]);let P={...ti,...ie,operators:{...ti.operators,...ie?.operators},placeholders:{...ti.placeholders,...ie?.placeholders},validation:{...ti.validation,...ie?.validation}},ge=(0,H.useMemo)(()=>xi(t),[t]),F=j?ge[j]:null,_e=(0,H.useCallback)((t,r)=>{n(e.map(e=>{if(e.id===t){let t={...e,...r};return(r.operator===`empty`||r.operator===`not_empty`)&&(t.values=[]),t}return e}))},[e,n]),I=(0,H.useCallback)(t=>{n(e.filter(e=>e.id!==t))},[e,n]),L=(0,H.useCallback)(()=>{A(!1),M(null),fe([]),me(``),he(new Set)},[]),ve=(0,H.useCallback)(t=>{let r=ge[t];if(!r?.key)return;if(r.type===`select`||r.type===`multiselect`){M(r.key),fe([]);return}let i=r.defaultOperator||(r.type===`daterange`||r.type===`numberrange`?`between`:`is`),a=[];r.defaultValue===void 0?[`text`,`number`,`date`,`email`,`url`,`tel`,`time`,`datetime`].includes(r.type||``)?a=[``]:r.type===`daterange`?a=[``,``]:r.type===`numberrange`?a=[r.min||0,r.max||100]:r.type===`boolean`&&(a=[!1]):a=[r.defaultValue];let o=Ii(t,i,a);n([...e,o]),L()},[E,L,ge,e,n]),ye=(0,H.useCallback)((t,r)=>{if(!t.key)return;let i=t.defaultOperator||(t.type===`multiselect`?`is_any_of`:`is`),a=Ii(t.key,i,r);n([...e,a]),L()},[L,e,n]),be=(0,H.useCallback)(t=>t.readOnly?!1:E?!0:!e.some(e=>e.field===t.key),[E,e]),xe=(0,H.useMemo)(()=>bi(t).filter(e=>!e.key||e.type===`separator`?!1:be(e)),[t,be]),R=(e,t,n,r)=>{if(n.length===0)return null;let i=pe.trim().length>0,a=r!==void 0&&!i&&!N.has(e)&&n.length>r,o=a?n.slice(0,r):n,s=n.length-o.length;return(0,Z.jsxs)(y,{heading:t,children:[o.map((t,n)=>t.type===`separator`?(0,Z.jsx)(v,{},t.key??`${e}-separator-${n}`):(0,Z.jsxs)(b,{className:`min-w-0`,onSelect:()=>t.key&&ve(t.key),children:[t.icon,(0,Z.jsx)(`span`,{className:`truncate`,children:t.label})]},t.key??`${e}-field-${n}`)),a&&(0,Z.jsx)(b,{className:`min-w-0 text-muted-foreground`,value:`${e}-show-more`,onSelect:()=>he(t=>{let n=new Set(t);return n.add(e),n}),children:(0,Z.jsx)(`span`,{className:`truncate`,children:P.showMore(s)})})]},e)};return(0,Z.jsx)(ni.Provider,{value:{variant:C,size:w,radius:T,i18n:P,cursorPointer:oe,className:r,showAddButton:a,addButtonText:o,addButtonIcon:s,addButtonClassName:c,addButton:l,showSearchInput:ae,trigger:ce,allowMultiple:E},children:(0,Z.jsxs)(`div`,{className:i(fi({variant:C,size:w}),e.length>0&&`w-full`,u&&e.length>0&&`sm:pr-24`,r),children:[e.map(e=>{let t=ge[e.field];return t?(0,Z.jsxs)(`div`,{className:pi({variant:C}),"data-slot":`filter-item`,children:[(0,Z.jsxs)(`div`,{className:ci({variant:C,size:w,radius:T}),children:[t.icon,t.label]}),!t.renderOperatorInValue&&(0,Z.jsx)(Ti,{field:t,operator:e.operator,values:e.values,onChange:t=>_e(e.id,{operator:t})}),(0,Z.jsx)(Pi,{field:t,operator:e.operator,readOnly:t.readOnly,values:e.values,onChange:t=>_e(e.id,{values:t}),onOperatorChange:t=>_e(e.id,{operator:t})}),(0,Z.jsx)(_i,{onClick:()=>I(e.id)})]},e.id):null}),a&&xe.length>0&&(0,Z.jsxs)(se,{open:ue,onOpenChange:e=>{A(e),e||(M(null),fe([]),me(``),he(new Set))},children:[(0,Z.jsx)(ne,{asChild:!0,children:l||(0,Z.jsxs)(`button`,{className:i(oi({variant:C,size:w,cursorPointer:oe,radius:T}),c),title:P.addFilterTitle,type:`button`,children:[s||(0,Z.jsx)(m,{}),o||P.addFilter]})}),(0,Z.jsx)(re,{align:O,className:i(`data-[state=closed]:animation-none! p-0 data-[state=closed]:duration-0!`,F?.className||D||`w-[220px]`),children:F?(0,Z.jsx)(Ni,{field:F.type===`multiselect`?{...F,type:`select`}:F,inline:!0,values:de,onChange:e=>ye(F,e),onClose:L}):(0,Z.jsxs)(ee,{className:`outline-hidden`,tabIndex:ae?void 0:0,children:[ae&&(0,Z.jsx)(_,{className:`h-(--control-height)`,placeholder:P.searchFields,value:pe,onValueChange:me}),(0,Z.jsxs)(S,{className:`outline-hidden`,children:[(0,Z.jsx)(x,{children:P.noFieldsFound}),t.map((e,t)=>{if(vi(e)){let n=e.fields.filter(e=>e.type===`separator`?!0:be(e));return R(e.group||`group-${t}`,e.group||`Fields`,n,e.previewLimit)}if(yi(e)){let n=e.fields.filter(e=>e.type===`separator`?!0:be(e));return R(e.group||`group-${t}`,e.group||`Fields`,n,e.previewLimit)}let n=e;return n.type===`separator`?(0,Z.jsx)(v,{},n.key||`flat-separator-${n.label||t}`):be(n)?(0,Z.jsxs)(b,{className:`min-w-0`,onSelect:()=>n.key&&ve(n.key),children:[n.icon,(0,Z.jsx)(`span`,{className:`truncate`,children:n.label})]},n.key):null})]})]})})]}),u&&e.length>0&&(g||(0,Z.jsxs)(`button`,{className:i(oi({variant:C,size:w,cursorPointer:oe,radius:T}),`border-0 bg-transparent hover:bg-transparent hover:text-foreground`,`sm:absolute sm:top-0 sm:right-0`,h),type:`button`,onClick:()=>{te?te():n([])},children:[p||(0,Z.jsx)(f,{}),d||P.clearFilters]}))]})})}var Ii=(e,t,n=[])=>({id:`${Date.now()}-${Math.random().toString(36).substring(2,11)}`,field:e,operator:t||`is`,values:n});export{Ii as a,Fi as i,Di as n,Ei as r,gi as t};
@@ -0,0 +1 @@
1
+ import{o as e}from"./rolldown-runtime-DAXXjFlN.js";import{t}from"./react-Bb3IsNbi.js";import{t as n}from"./jsx-runtime-DX3WBWVO.js";import{m as r}from"./hooks-CJepWnbB.js";import{t as i}from"./switch-B_1yU3Aw.js";import{o as a,t as o}from"./use-settings-navigation-aDSLtmEl.js";import{a as s,c,n as l,o as u,r as d,t as f}from"./field-kJYZ2T3C.js";import{In as p,Vn as m,mr as h}from"./index-BJz9Zlsc.js";import{n as g}from"./global-data-context-gAMDH9u1.js";import{t as _}from"./integration-header-B4DyXV06.js";import{t as v}from"./brand-icon-09YqFZjV.js";var y=e(t(),1),b=n();function x(){let{updateRoute:e}=o(),{settings:t}=g(),{mutateAsync:n}=m(),x=r(),[S,C]=(0,y.useState)(``),[w]=p(t,[`firstpromoter`]),[T]=p(t,[`firstpromoter_id`]),[E,D]=(0,y.useState)(`Save`),[O,k]=(0,y.useState)(!!w);(0,y.useEffect)(()=>{k(w||!1),C(T||null)},[w,T]);let A=async()=>{let e=[{key:`firstpromoter`,value:O},{key:`firstpromoter_id`,value:S}];try{D(`Saving...`),await Promise.all([n(e),new Promise(e=>{setTimeout(e,1e3)})]),D(`Saved`)}catch(e){x(e)}finally{setTimeout(()=>D(`Save`),1e3)}};return(0,b.jsxs)(a,{cancelLabel:`Close`,dirty:O!==w||S!==T,okLabel:E,okVariant:`default`,testId:`firstpromoter-modal`,title:``,onClose:()=>{e(`integrations`)},onOk:async()=>{try{await A()}catch(e){x(e)}},children:[(0,b.jsx)(_,{detail:`Launch your own member referral program`,icon:(0,b.jsx)(v,{className:`-mt-2`,name:`firstpromoter`,size:56}),title:`FirstPromoter`}),(0,b.jsx)(c,{className:`gap-0`,children:(0,b.jsxs)(s,{className:`gap-8 rounded-sm border border-border-default p-4 md:p-7`,children:[(0,b.jsxs)(f,{orientation:`horizontal`,children:[(0,b.jsxs)(l,{children:[(0,b.jsx)(u,{htmlFor:`firstpromoter-enabled`,children:`Enable FirstPromoter`}),(0,b.jsxs)(d,{children:[`Enable `,(0,b.jsx)(`a`,{className:`text-green`,href:`https://firstpromoter.com/?fpr=ghost&fp_sid=admin`,rel:`noopener noreferrer`,target:`_blank`,children:`FirstPromoter`}),` for tracking referrals`]})]}),(0,b.jsx)(i,{checked:O,id:`firstpromoter-enabled`,onCheckedChange:k})]}),O&&(0,b.jsxs)(f,{children:[(0,b.jsx)(u,{htmlFor:`firstpromoter-account-id`,children:`FirstPromoter account ID`}),(0,b.jsx)(h,{id:`firstpromoter-account-id`,placeholder:`XXXXXXXX`,value:S||``,onChange:e=>C(e.target.value)}),(0,b.jsx)(d,{children:(0,b.jsxs)(b.Fragment,{children:[`Affiliate and referral tracking, find your ID `,(0,b.jsx)(`a`,{className:`text-green`,href:`https://ghost.org/help/firstpromoter-id/`,rel:`noopener noreferrer`,target:`_blank`,children:`here`})]})})]})]})})]})}export{x as default};
@@ -2387,9 +2387,9 @@ e.default=t.default.extend(i.default,{validationType:"member",name:(0,t.attr)("t
2387
2387
  e.removeObjects(t),t.invoke("deleteRecord")},fetchSigninUrl:(0,r.task)(function*(){let e=this.get("ghostPaths.url").api("members",this.id,"signin_urls")
2388
2388
  return(yield this.ajax.request(e)).member_signin_urls[0]}).drop(),logoutAllDevices:(0,r.task)(function*(){let e=this.get("ghostPaths.url").api("members",this.id,"signout")
2389
2389
  yield this.ajax.post(e)}).drop()})}),define("ghost-admin/models/navigation-item",["exports","ghost-admin/mixins/validation-engine"],function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
2390
- e.default=Ember.Object.extend(t.default,{label:"",url:"",isNew:!1,isSecondary:!1,validationType:"navItem",isComplete:Ember.computed("label","url",function(){let{label:e,url:t}=this
2391
- return!Ember.isBlank(e)&&!Ember.isBlank(t)}),isBlank:Ember.computed("label","url",function(){let{label:e,url:t}=this
2392
- return Ember.isBlank(e)&&Ember.isBlank(t)})})}),define("ghost-admin/models/newsletter",["exports","@ember-data/model","ghost-admin/mixins/validation-engine"],function(e,t,i){var r,n,a,s,o,l,u,c,d,p,m,h,b,g,f,v,y,w,E,P,_,k,O,j,T,z,x,S,C,M,D,A,I,L,R,N,U,F,B,H,V,q,$,Y,W,K,G,J,X,Q,Z,ee
2390
+ e.default=Ember.Object.extend(t.default,{label:"",url:"",icon:"",visibility:"public",isNew:!1,isSecondary:!1,validationType:"navItem",isComplete:Ember.computed("label","url","icon",function(){let{label:e,url:t,icon:i}=this
2391
+ return!(Ember.isBlank(e)&&Ember.isBlank(i)||Ember.isBlank(t))}),isBlank:Ember.computed("label","url","icon",function(){let{label:e,url:t,icon:i}=this
2392
+ return Ember.isBlank(e)&&Ember.isBlank(t)&&Ember.isBlank(i)})})}),define("ghost-admin/models/newsletter",["exports","@ember-data/model","ghost-admin/mixins/validation-engine"],function(e,t,i){var r,n,a,s,o,l,u,c,d,p,m,h,b,g,f,v,y,w,E,P,_,k,O,j,T,z,x,S,C,M,D,A,I,L,R,N,U,F,B,H,V,q,$,Y,W,K,G,J,X,Q,Z,ee
2393
2393
  function te(e,t,i,r){i&&Object.defineProperty(e,t,{enumerable:i.enumerable,configurable:i.configurable,writable:i.writable,value:i.initializer?i.initializer.call(r):void 0})}function ie(e,t,i){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e
2394
2394
  var i=e[Symbol.toPrimitive]
2395
2395
  if(void 0!==i){var r=i.call(e,t||"default")
@@ -3517,7 +3517,8 @@ class r extends t.default{deserialize(e){return e?(0,i.default)(e):e}serialize(e
3517
3517
  class r extends t.default{deserialize(e){return e?i.default.utc(e):e}serialize(e){if(e)try{return e.toJSON()}catch(t){return e}return e}}e.default=r}),define("ghost-admin/transforms/navigation-settings",["exports","ghost-admin/models/navigation-item","@ember-data/serializer/transform"],function(e,t,i){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
3518
3518
  class r extends i.default{deserialize(e,i){let r,n
3519
3519
  try{n=JSON.parse(e)||[]}catch(a){n=[]}return r=n.map(e=>(e.isSecondary=i&&i.isSecondary||!1,t.default.create(e))),Ember.A(r)}serialize(e){let t
3520
- return t=Ember.isArray(e)?e.map(e=>({label:e.label.trim(),url:e.url.trim()})).compact():[],JSON.stringify(t)}}e.default=r}),define("ghost-admin/transforms/number",["exports","@ember-data/serializer/-private"],function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.NumberTransform}})}),define("ghost-admin/transforms/raw",["exports","@ember-data/serializer/transform"],function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
3520
+ return t=Ember.isArray(e)?e.map(e=>{let t=e.label.trim(),i=e.url.trim(),r=e.icon&&e.icon.trim(),n=e.visibility||"public"
3521
+ return{label:t,url:i,...r?{icon:r}:{},..."public"!==n?{visibility:n}:{}}}).compact():[],JSON.stringify(t)}}e.default=r}),define("ghost-admin/transforms/number",["exports","@ember-data/serializer/-private"],function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.NumberTransform}})}),define("ghost-admin/transforms/raw",["exports","@ember-data/serializer/transform"],function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
3521
3522
  class i extends t.default{deserialize(e){return e}serialize(e){return e}}e.default=i}),define("ghost-admin/transforms/string",["exports","@ember-data/serializer/-private"],function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.StringTransform}})}),define("ghost-admin/transforms/tier-benefits",["exports","ghost-admin/models/tier-benefit-item","@ember-data/serializer/transform"],function(e,t,i){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
3522
3523
  class r extends i.default{deserialize(e){let i,r
3523
3524
  return r=e||[],i=r.map(e=>t.default.create({name:e})),Ember.A(i)}serialize(e){let t
@@ -3673,8 +3674,8 @@ for(let n in i)if(i[n]>=t)return r=!1,r
3673
3674
  return r},passwordValidation(e,n,a){let s,o=e.config?.blogUrl||window.location.host,l=e.blogTitle||e.config?.blogTitle
3674
3675
  if(n=n||e.password,a=a||"password",o=o.replace(/^http(s?):\/\//,""),s=o.match(/\/$/)?o:`${o}/`,l=l?l.trim().toLowerCase():l,!t.default.isLength(n||"",{min:10}))return e.errors.add(a,"Password must be at least 10 characters long."),this.invalidate()
3675
3676
  n=n.toString(),i.forEach(t=>{t===n&&(e.errors.add(a,"Sorry, you cannot use an insecure password."),this.invalidate())}),n.toLowerCase()===e.email.toLowerCase()&&(e.errors.add(a,"Sorry, you cannot use the email as your password."),this.invalidate()),r.forEach(t=>{n.toLowerCase().indexOf(t)>=0&&(e.errors.add(a,"Sorry, you cannot use a password including common phrases."),this.invalidate())}),n.toLowerCase()===l&&(e.errors.add(a,"Sorry, you cannot use the blog title as your password."),this.invalidate()),n.toLowerCase()!==o&&n.toLowerCase()!==s||(e.errors.add(a,"Sorry, you cannot use the blog URL as your password."),this.invalidate()),this._characterOccurance(n)||(e.errors.add(a,"Sorry, you cannot use an insecure password."),this.invalidate())}})}),define("ghost-admin/validators/nav-item",["exports","ghost-admin/validators/base","validator"],function(e,t,i){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
3676
- e.default=t.default.create({properties:["label","url"],label(e){let t=e.label,i=e.hasValidated
3677
- Ember.isBlank(t)&&(e.errors.add("label","You must specify a label"),this.invalidate()),i.addObject("label")},url(e){let t=e.url,r=e.hasValidated,n=new RegExp(/^(\/|#|[a-zA-Z0-9-]+:)/)
3677
+ e.default=t.default.create({properties:["label","url"],label(e){let t=e.label,i=e.icon,r=e.hasValidated
3678
+ Ember.isBlank(t)&&Ember.isBlank(i)&&(e.errors.add("label","You must specify a label or icon"),this.invalidate()),r.addObject("label")},url(e){let t=e.url,r=e.hasValidated,n=new RegExp(/^(\/|#|[a-zA-Z0-9-]+:)/)
3678
3679
  Ember.isBlank(t)?(e.errors.add("url","You must specify a URL or relative path"),this.invalidate()):(t.match(/\s/)||!i.default.isURL(t,{require_protocol:!0})&&!t.match(n))&&(e.errors.add("url","You must specify a valid URL or relative path"),this.invalidate()),r.addObject("url")}})}),define("ghost-admin/validators/new-user",["exports","ghost-admin/validators/base","ghost-admin/validators/mixins/password","validator"],function(e,t,i,r){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
3679
3680
  e.default=t.default.extend(i.default,{init(){this.properties=this.properties||["name","email","password"],this._super(...arguments)},name(e){let t=e.name
3680
3681
  r.default.isLength(t||"",{min:1})||(e.errors.add("name","Please enter a name."),e.hasValidated.addObject("email"),this.invalidate())},email(e){let t=e.email
@@ -3731,6 +3732,6 @@ e.default=n.create()}),define("ghost-admin/validators/webhook",["exports","ghost
3731
3732
  e.default=t.default.create({properties:["name","event","targetUrl","secret"],name(e){Ember.isBlank(e.name)?(e.errors.add("name","Please enter a name"),e.hasValidated.pushObject("name"),this.invalidate()):i.default.isLength(e.name,{max:191})||(e.errors.add("name","Name is too long, max 191 chars"),e.hasValidated.pushObject("name"),this.invalidate())},event(e){Ember.isBlank(e.event)&&(e.errors.add("event","Please select an event"),e.hasValidated.pushObject("event"),this.invalidate())},targetUrl(e){Ember.isBlank(e.targetUrl)?e.errors.add("targetUrl","Please enter a target URL"):i.default.isURL(e.targetUrl||"",{require_protocol:!1})?i.default.isLength(e.targetUrl,{max:2e3})||e.errors.add("targetUrl","Target URL is too long, max 2000 chars"):e.errors.add("targetUrl","Please enter a valid URL"),e.hasValidated.pushObject("targetUrl"),e.errors.has("targetUrl")&&this.invalidate()},secret(e){Ember.isBlank(e.secret)||i.default.isLength(e.secret,{max:191})||(e.errors.add("secret","Secret is too long, max 191 chars"),e.hasValidated.pushObject("secret"),this.invalidate())}})}),define("ghost-admin/views/application",["exports"],function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
3732
3733
  e.default=Ember.Component.extend({})}),define("ghost-admin/config/environment",[],function(){try{var e="ghost-admin/config/environment",t=document.querySelector('meta[name="'+e+'"]').getAttribute("content"),i={default:JSON.parse(decodeURIComponent(t))}
3733
3734
  return Object.defineProperty(i,"__esModule",{value:!0}),i}catch(r){throw new Error('Could not read config from meta tag with name "'+e+'".')}})
3734
- runningTests||require("ghost-admin/app").default.create({version:"6.58",name:"ghost-admin"})
3735
+ runningTests||require("ghost-admin/app").default.create({version:"6.59",name:"ghost-admin"})
3735
3736
 
3736
- //# sourceMappingURL=ghost-9d5c1c12ef5a44d42381d2c7f72c141f.map
3737
+ //# sourceMappingURL=ghost-1a193b1ed6f23ab71979c472ddbbf263.map
@@ -0,0 +1 @@
1
+ import{o as e,r as t}from"./rolldown-runtime-DAXXjFlN.js";import{t as n}from"./react-Bb3IsNbi.js";import{t as r}from"./jsx-runtime-DX3WBWVO.js";import{m as i}from"./hooks-CJepWnbB.js";import{t as a}from"./use-tinybird-query-BvQIVuRc.js";import{n as o}from"./posts-DgcUi2rc.js";import{t as s}from"./analytics-53FOa2wq.js";import{f as c}from"./dist-Cb5RSHSg.js";import{t as l}from"./button-BshWPHvn.js";import{Ar as u,Fn as d,Mr as f,Nr as p,Or as m,Pr as h,Ri as g,j as _,jr as v,sr as y,zn as b}from"./index-BJz9Zlsc.js";import{t as x}from"./share-modal-BDb2nacg.js";import{t as S}from"./pages-Gchxp5c7.js";import{n as C,r as w}from"./gift-links-D7BJ9qfe.js";var T=e(n(),1);function E(e,t){return!e||!t?``:`${e}?gift=${encodeURIComponent(t)}`}var D={members:`members-only`,paid:`paid-members-only`,tiers:`paid-members-only`};function O(e){return e&&D[e]||``}var k=({postUuid:e,token:t,tokenLoading:n=!1,tokenError:r=null,enabled:i=!0})=>{let{data:o,isLoading:s}=g(),c=o?.config?.stats,{data:l,isLoading:u}=b(),f=d(l?.settings??null,`web_analytics_enabled`)??!1,p=(0,T.useMemo)(()=>({site_uuid:c?.id||``,post_uuid:e||``,gift_link:t||``}),[c?.id,e,t]),{data:m,loading:h,error:_}=a({endpoint:`api_gift_link_visits`,statsConfig:c||{id:``},params:p,enabled:i&&f&&!!c?.id&&!!e&&!!t}),v=h||s||u||n,y=_||r||null;return{usage:(0,T.useMemo)(()=>{if(!f||!t||y||!Array.isArray(m))return;let e=m[0];return{visits:Number(e?.visits)||0,views:Number(e?.views)||0}},[m,t,y,f]),loading:v,error:y}},A=({postId:e,resource:t=`posts`,enabled:n=!0})=>{let r=t===`posts`,{data:i,isLoading:a}=o({searchParams:{filter:`id:${e}`,include:_},enabled:n&&r}),{data:s,isLoading:c}=S({searchParams:{filter:`id:${e}`},enabled:n&&!r});if(r){let e=i?.posts?.[0];return{post:e&&{url:e.url,title:e.title,visibility:e.visibility,uuid:e.uuid},isLoading:a}}let l=s?.pages?.[0];return{post:l&&{url:l.url,title:l.title,visibility:l.visibility,uuid:l.uuid},isLoading:c}},j=t({default:()=>P}),M=r();function N(e){return e===0?`No visitors yet`:`${c(e)} ${e===1?`visitor`:`visitors`}`}var P=({open:e,onOpenChange:t,postId:n,resource:r=`posts`,source:a})=>{let o=i(),{mutateAsync:c}=w(),{mutateAsync:d}=C(),{post:g}=A({postId:n,resource:r,enabled:e}),[_,b]=(0,T.useState)(void 0),[S,D]=(0,T.useState)(`idle`),[O,j]=(0,T.useState)(!1),[P,F]=(0,T.useState)(!1),I=(0,T.useRef)(null),L=(0,T.useRef)(null),{usage:R}=k({postUuid:g?.uuid,token:_,enabled:e});(0,T.useEffect)(()=>{if(!e){L.current=null,F(!1);return}let t=L.current;(t?.postId!==n||t.resource!==r)&&(t={postId:n,resource:r,request:c({id:n,resource:r})},L.current=t);let i=!1;return F(!0),t.request.then(e=>{i||b(e.gift_links[0]?.token)}).catch(e=>{i||o(e)}).finally(()=>{i||F(!1)}),()=>{i=!0}},[e,n,r,c,o]),(0,T.useEffect)(()=>{S===`confirm`&&I.current?.focus()},[S]);let z=r===`pages`?`page`:`post`,B=g?.visibility??`unknown`,V=(0,T.useRef)(!1);(0,T.useEffect)(()=>{if(!e){V.current=!1;return}V.current||!g||(V.current=!0,s(`Gift Link Modal Opened`,{postType:z,visibility:B,source:a}))},[e,g,z,B,a]);let H=E(g?.url,_),U=`Anyone you share this link with will be able to access this ${z} without becoming a ${g?.visibility===`members`?`member`:`paid member`}.`,W=(0,T.useCallback)(async()=>{if(!O){j(!0);try{let e=await d({id:n,resource:r});b(e.gift_links[0]?.token),D(`idle`),s(`Gift Link Reset`,{postType:z,visibility:B,source:a})}catch(e){o(e)}finally{j(!1)}}},[O,d,n,r,o,z,B,a]),G=(0,T.useCallback)(e=>{e||D(`idle`),t(e)},[t]);return(0,M.jsx)(m,{open:e,onOpenChange:G,children:(0,M.jsxs)(u,{className:`max-w-lg gap-5`,children:[S===`idle`&&(0,M.jsxs)(M.Fragment,{children:[(0,M.jsxs)(p,{className:`gap-3`,children:[(0,M.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,M.jsx)(h,{className:`text-xl leading-none`,children:`Gift link`}),R&&(0,M.jsx)(y,{"data-testid":`gift-link-views`,variant:`secondary`,children:N(R.visits)})]}),(0,M.jsx)(v,{className:`text-sm leading-5`,children:U})]}),(0,M.jsx)(x.CopyURLBox,{className:`w-full min-w-0`,copyURL:P?`Generating link…`:H,children:(0,M.jsx)(x.CopyButton,{className:`shrink-0`,copyURL:H,"data-testid":`copy-gift-link`,disabled:P||!H,icon:`link`,size:`sm`,onClick:()=>s(`Gift Link Copied`,{postType:z,visibility:B,source:a})})}),(0,M.jsxs)(f,{className:`sm:items-center sm:justify-between`,children:[(0,M.jsx)(l,{className:`border-destructive/20 text-destructive hover:border-destructive hover:bg-transparent hover:text-destructive dark:border-state-danger/50 dark:text-state-danger dark:hover:border-state-danger dark:hover:bg-transparent dark:hover:text-state-danger`,"data-testid":`reset-gift-link`,disabled:!H,variant:`outline`,onClick:()=>D(`confirm`),children:`Reset`}),(0,M.jsx)(l,{variant:`outline`,onClick:()=>G(!1),children:`Close`})]})]}),S===`confirm`&&(0,M.jsxs)(M.Fragment,{children:[(0,M.jsxs)(p,{children:[(0,M.jsx)(h,{children:`Reset gift link`}),(0,M.jsxs)(v,{children:[`Are you sure you want to reset this link? Anyone with the current link will lose access to this `,z,`.`]})]}),(0,M.jsxs)(f,{children:[(0,M.jsx)(l,{ref:I,disabled:O,variant:`outline`,onClick:()=>D(`idle`),children:`Cancel`}),(0,M.jsx)(l,{"data-testid":`confirm-reset-gift-link`,disabled:O,variant:`destructive`,onClick:()=>{W()},children:O?`Resetting`:`Reset link`})]})]})]})})};export{O as i,j as n,k as r,P as t};
@@ -0,0 +1 @@
1
+ import{o as e}from"./rolldown-runtime-DAXXjFlN.js";import{t}from"./react-Bb3IsNbi.js";var n=e(t(),1),r=(0,n.createContext)(void 0),i=()=>(0,n.useContext)(r);export{i as n,r as t};
@@ -0,0 +1,3 @@
1
+ import{o as e}from"./rolldown-runtime-DAXXjFlN.js";import{t}from"./react-Bb3IsNbi.js";import{t as n}from"./jsx-runtime-DX3WBWVO.js";import{d as r,g as i,l as a,n as o}from"./stats-WdDJ8c_1.js";import{t as s}from"./currency-CQsJu8iC.js";import{r as c,t as l}from"./source-icon-BPsD5ees.js";import{_ as u}from"./chunk-KS7C4IRE-DCsL4i4D.js";import{a as d}from"./router-provider-Bexg1t-V.js";import{b as f,f as p,l as m,x as h,y as g}from"./dist-Cb5RSHSg.js";import{L as _,ir as v,rr as y,t as b,tr as x,wn as S}from"./button-BshWPHvn.js";import{E as C}from"./_baseAssignValue-C_vooEQc.js";import{$ as w,C as ee,E as T,I as te,J as ne,K as E,P as D,Q as O,S as re,Y as ie,Z as ae,_ as oe,a as se,at as ce,b as le,ct as ue,dt as de,et as fe,g as pe,i as me,it as he,n as ge,nt as _e,ot as k,r as ve,st as ye,ut as be,w as xe,x as Se,y as Ce}from"./chart-BnXyfH11.js";import{n as we,t as Te}from"./PolarAngleAxis-C4qtHy1B.js";import{a as Ee,c as De,i as A,l as Oe,n as j,r as ke,t as Ae,u as je}from"./chart-helpers-BsbzoWhK.js";import{n as Me,t as M}from"./sort-button-DhqpxkrO.js";import{i as N,r as Ne,t as Pe}from"./tabs-BhzVdh5p.js";import{i as Fe,n as Ie,o as Le,s as Re,t as ze}from"./select-ChxknEcT.js";import{t as Be}from"./skeleton-D7hwjdry.js";import{a as Ve,n as He,o as Ue,r as We,t as Ge}from"./card-CiiE7QfM.js";import{t as P}from"./empty-indicator-WB1WgT9h.js";import{a as F,c as I,i as Ke,n as L,r as R,s as qe,t as Je}from"./table-CrqQtkR2.js";import{$r as Ye,Gn as Xe,Hr as z,Jn as Ze,Kn as Qe,Kr as $e,L as et,O as tt,P as B,Vr as V,Wr as H,Xn as nt,Yn as rt,Yr as it,Zr as at,ai as ot,fr as st,ir as ct,qn as lt,zi as ut}from"./index-BJz9Zlsc.js";import{i as dt,n as ft,r as pt,t as mt}from"./stats-view-J3PI2eT_.js";import{t as ht}from"./disabled-sources-indicator-BFyCxUOx.js";import{t as gt}from"./use-growth-stats-D0LlWBe6.js";import{n as _t,r as U,t as vt}from"./kpi-tabs-B8-_k2dQ.js";import{t as yt}from"./use-analytics-data-BM_uV9SU.js";import{n as bt}from"./audience-Cc40y7zQ.js";import{n as xt}from"./referrers-C3a2K8qB.js";import{a as St}from"./tiers-8iTFjJWg.js";import{i as Ct,r as wt,t as W}from"./content-helpers-CNBPrwsi.js";import{t as Tt}from"./url-helpers-CCyfRrKj.js";var G=e(t()),Et=e(de()),Dt=e(te()),K=e(be()),q=e(C()),Ot;function J(e){"@babel/helpers - typeof";return J=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},J(e)}function Y(){return Y=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Y.apply(this,arguments)}function kt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function X(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]==null?{}:arguments[t];t%2?kt(Object(n),!0).forEach(function(t){Z(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):kt(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function At(e,t){if(!(e instanceof t))throw TypeError(`Cannot call a class as a function`)}function jt(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,`value`in r&&(r.writable=!0),Object.defineProperty(e,Bt(r.key),r)}}function Mt(e,t,n){return t&&jt(e.prototype,t),n&&jt(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function Nt(e,t,n){return t=Lt(t),Pt(e,It()?Reflect.construct(t,n||[],Lt(e).constructor):t.apply(e,n))}function Pt(e,t){if(t&&(J(t)===`object`||typeof t==`function`))return t;if(t!==void 0)throw TypeError(`Derived constructors may only return object or undefined`);return Ft(e)}function Ft(e){if(e===void 0)throw ReferenceError(`this hasn't been initialised - super() hasn't been called`);return e}function It(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(It=function(){return!!e})()}function Lt(e){return Lt=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},Lt(e)}function Rt(e,t){if(typeof t!=`function`&&t!==null)throw TypeError(`Super expression must either be null or a function`);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&zt(e,t)}function zt(e,t){return zt=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},zt(e,t)}function Z(e,t,n){return t=Bt(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Bt(e){var t=Vt(e,`string`);return J(t)==`symbol`?t:t+``}function Vt(e,t){if(J(e)!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(J(r)!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}var Q=function(e){function t(e){var n;return At(this,t),n=Nt(this,t,[e]),Z(n,`pieRef`,null),Z(n,`sectorRefs`,[]),Z(n,`id`,ue(`recharts-pie-`)),Z(n,`handleAnimationEnd`,function(){var e=n.props.onAnimationEnd;n.setState({isAnimationFinished:!0}),(0,q.default)(e)&&e()}),Z(n,`handleAnimationStart`,function(){var e=n.props.onAnimationStart;n.setState({isAnimationFinished:!1}),(0,q.default)(e)&&e()}),n.state={isAnimationFinished:!e.isAnimationActive,prevIsAnimationActive:e.isAnimationActive,prevAnimationId:e.animationId,sectorToFocus:0},n}return Rt(t,e),Mt(t,[{key:`isActiveIndex`,value:function(e){var t=this.props.activeIndex;return Array.isArray(t)?t.indexOf(e)!==-1:e===t}},{key:`hasActiveIndex`,value:function(){var e=this.props.activeIndex;return Array.isArray(e)?e.length!==0:e||e===0}},{key:`renderLabels`,value:function(e){if(this.props.isAnimationActive&&!this.state.isAnimationFinished)return null;var n=this.props,r=n.label,i=n.labelLine,a=n.dataKey,o=n.valueKey,s=w(this.props,!1),c=w(r,!1),l=w(i,!1),u=r&&r.offsetRadius||20,d=e.map(function(e,n){var d=(e.startAngle+e.endAngle)/2,f=T(e.cx,e.cy,e.outerRadius+u,d),p=X(X(X(X({},s),e),{},{stroke:`none`},c),{},{index:n,textAnchor:t.getTextAnchor(f.x,e.cx)},f),m=X(X(X(X({},s),e),{},{fill:`none`,stroke:e.fill},l),{},{index:n,points:[T(e.cx,e.cy,e.outerRadius,d),f]}),h=a;return(0,K.default)(a)&&(0,K.default)(o)?h=`value`:(0,K.default)(a)&&(h=o),G.createElement(O,{key:`label-${e.startAngle}-${e.endAngle}-${e.midAngle}-${n}`},i&&t.renderLabelLineItem(i,m,`line`),t.renderLabelItem(r,p,D(e,h)))});return G.createElement(O,{className:`recharts-pie-labels`},d)}},{key:`renderSectorsStatically`,value:function(e){var t=this,n=this.props,r=n.activeShape,i=n.blendStroke,a=n.inactiveShape;return e.map(function(n,o){if(n?.startAngle===0&&n?.endAngle===0&&e.length!==1)return null;var s=t.isActiveIndex(o),c=a&&t.hasActiveIndex()?a:null,l=s?r:c,u=X(X({},n),{},{stroke:i?n.fill:n.stroke,tabIndex:-1});return G.createElement(O,Y({ref:function(e){e&&!t.sectorRefs.includes(e)&&t.sectorRefs.push(e)},tabIndex:-1,className:`recharts-pie-sector`},_e(t.props,n,o),{key:`sector-${n?.startAngle}-${n?.endAngle}-${n.midAngle}-${o}`}),G.createElement(oe,Y({option:l,isActive:s,shapeType:`sector`},u)))})}},{key:`renderSectorsWithAnimation`,value:function(){var e=this,t=this.props,n=t.sectors,r=t.isAnimationActive,i=t.animationBegin,a=t.animationDuration,o=t.animationEasing,s=t.animationId,c=this.state,l=c.prevSectors,u=c.prevIsAnimationActive;return G.createElement(Ce,{begin:i,duration:a,isActive:r,easing:o,from:{t:0},to:{t:1},key:`pie-${s}-${u}`,onAnimationStart:this.handleAnimationStart,onAnimationEnd:this.handleAnimationEnd},function(t){var r=t.t,i=[],a=(n&&n[0]).startAngle;return n.forEach(function(e,t){var n=l&&l[t],o=t>0?(0,Et.default)(e,`paddingAngle`,0):0;if(n){var s=ce(n.endAngle-n.startAngle,e.endAngle-e.startAngle),c=X(X({},e),{},{startAngle:a+o,endAngle:a+s(r)+o});i.push(c),a=c.endAngle}else{var u=e.endAngle,d=e.startAngle,f=ce(0,u-d)(r),p=X(X({},e),{},{startAngle:a+o,endAngle:a+f+o});i.push(p),a=p.endAngle}}),G.createElement(O,null,e.renderSectorsStatically(i))})}},{key:`attachKeyboardHandlers`,value:function(e){var t=this;e.onkeydown=function(e){if(!e.altKey)switch(e.key){case`ArrowLeft`:var n=++t.state.sectorToFocus%t.sectorRefs.length;t.sectorRefs[n].focus(),t.setState({sectorToFocus:n});break;case`ArrowRight`:var r=--t.state.sectorToFocus<0?t.sectorRefs.length-1:t.state.sectorToFocus%t.sectorRefs.length;t.sectorRefs[r].focus(),t.setState({sectorToFocus:r});break;case`Escape`:t.sectorRefs[t.state.sectorToFocus].blur(),t.setState({sectorToFocus:0});break;default:}}}},{key:`renderSectors`,value:function(){var e=this.props,t=e.sectors,n=e.isAnimationActive,r=this.state.prevSectors;return n&&t&&t.length&&(!r||!(0,Dt.default)(r,t))?this.renderSectorsWithAnimation():this.renderSectorsStatically(t)}},{key:`componentDidMount`,value:function(){this.pieRef&&this.attachKeyboardHandlers(this.pieRef)}},{key:`render`,value:function(){var e=this,t=this.props,n=t.hide,r=t.sectors,i=t.className,a=t.label,o=t.cx,s=t.cy,c=t.innerRadius,l=t.outerRadius,u=t.isAnimationActive,d=this.state.isAnimationFinished;if(n||!r||!r.length||!k(o)||!k(s)||!k(c)||!k(l))return null;var f=h(`recharts-pie`,i);return G.createElement(O,{tabIndex:this.props.rootTabIndex,className:f,ref:function(t){e.pieRef=t}},this.renderSectors(),a&&this.renderLabels(r),re.renderCallByParent(this.props,null,!1),(!u||d)&&Se.renderCallByParent(this.props,r,!1))}}],[{key:`getDerivedStateFromProps`,value:function(e,t){return t.prevIsAnimationActive===e.isAnimationActive?e.isAnimationActive&&e.animationId!==t.prevAnimationId?{prevAnimationId:e.animationId,curSectors:e.sectors,prevSectors:t.curSectors,isAnimationFinished:!0}:e.sectors===t.curSectors?null:{curSectors:e.sectors,isAnimationFinished:!0}:{prevIsAnimationActive:e.isAnimationActive,prevAnimationId:e.animationId,curSectors:e.sectors,prevSectors:[],isAnimationFinished:!0}}},{key:`getTextAnchor`,value:function(e,t){return e>t?`start`:e<t?`end`:`middle`}},{key:`renderLabelLineItem`,value:function(e,t,n){if(G.isValidElement(e))return G.cloneElement(e,t);if((0,q.default)(e))return e(t);var r=h(`recharts-pie-label-line`,typeof e==`boolean`?``:e.className);return G.createElement(le,Y({},t,{key:n,type:`linear`,className:r}))}},{key:`renderLabelItem`,value:function(e,t,n){if(G.isValidElement(e))return G.cloneElement(e,t);var r=n;if((0,q.default)(e)&&(r=e(t),G.isValidElement(r)))return r;var i=h(`recharts-pie-label-text`,typeof e!=`boolean`&&!(0,q.default)(e)?e.className:``);return G.createElement(E,Y({},t,{alignmentBaseline:`middle`,className:i}),r)}}])}(G.PureComponent);Ot=Q,Z(Q,`displayName`,`Pie`),Z(Q,`defaultProps`,{stroke:`#fff`,fill:`#808080`,legendType:`rect`,cx:`50%`,cy:`50%`,startAngle:0,endAngle:360,innerRadius:0,outerRadius:`80%`,paddingAngle:0,labelLine:!0,hide:!1,minAngle:0,isAnimationActive:!ie.isSsr,animationBegin:400,animationDuration:1500,animationEasing:`ease`,nameKey:`name`,blendStroke:!1,rootTabIndex:0}),Z(Q,`parseDeltaAngle`,function(e,t){return ye(t-e)*Math.min(Math.abs(t-e),360)}),Z(Q,`getRealPieData`,function(e){var t=e.data,n=e.children,r=w(e,!1),i=fe(n,ne);return t&&t.length?t.map(function(e,t){return X(X(X({payload:e},r),e),i&&i[t]&&i[t].props)}):i&&i.length?i.map(function(e){return X(X({},r),e.props)}):[]}),Z(Q,`parseCoordinateOfPie`,function(e,t){var n=t.top,r=t.left,i=t.width,a=t.height,o=xe(i,a);return{cx:r+he(e.cx,i,i/2),cy:n+he(e.cy,a,a/2),innerRadius:he(e.innerRadius,o,0),outerRadius:he(e.outerRadius,o,o*.8),maxRadius:e.maxRadius||Math.sqrt(i*i+a*a)/2}}),Z(Q,`getComposedData`,function(e){var t=e.item,n=e.offset,r=t.type.defaultProps===void 0?t.props:X(X({},t.type.defaultProps),t.props),i=Ot.getRealPieData(r);if(!i||!i.length)return null;var a=r.cornerRadius,o=r.startAngle,s=r.endAngle,c=r.paddingAngle,l=r.dataKey,u=r.nameKey,d=r.valueKey,f=r.tooltipType,p=Math.abs(r.minAngle),m=Ot.parseCoordinateOfPie(r,n),h=Ot.parseDeltaAngle(o,s),g=Math.abs(h),_=l;(0,K.default)(l)&&(0,K.default)(d)?(ae(!1,`Use "dataKey" to specify the value of pie,
2
+ the props "valueKey" will be deprecated in 1.1.0`),_=`value`):(0,K.default)(l)&&(ae(!1,`Use "dataKey" to specify the value of pie,
3
+ the props "valueKey" will be deprecated in 1.1.0`),_=d);var v=i.filter(function(e){return D(e,_,0)!==0}).length,y=(g>=360?v:v-1)*c,b=g-v*p-y,x=i.reduce(function(e,t){var n=D(t,_,0);return e+(k(n)?n:0)},0),S;if(x>0){var C;S=i.map(function(e,t){var n=D(e,_,0),r=D(e,u,t),i=(k(n)?n:0)/x,s=t?C.endAngle+ye(h)*c*(n===0?0:1):o,l=s+ye(h)*((n===0?0:p)+i*b),d=(s+l)/2,g=(m.innerRadius+m.outerRadius)/2;return C=X(X(X({percent:i,cornerRadius:a,name:r,tooltipPayload:[{name:r,value:n,payload:e,dataKey:_,type:f}],midAngle:d,middleRadius:g,tooltipPosition:T(m.cx,m.cy,g,d)},e),m),{},{value:D(e,_),startAngle:s,endAngle:l,payload:e,paddingAngle:ye(h)*c}),C})}return X(X({},m),{},{sectors:S,data:i})});var Ht=se({chartName:`PieChart`,GraphicalChild:Q,validateTooltipEventTypes:[`item`],defaultTooltipEventType:`item`,legendContent:`children`,axisComponents:[{axisType:`angleAxis`,AxisComp:Te},{axisType:`radiusAxis`,AxisComp:we}],formatAxisMap:ee,defaultProps:{layout:`centric`,startAngle:0,endAngle:360,cx:`50%`,cy:`50%`,innerRadius:0,outerRadius:`80%`}}),$=n(),Ut=e=>e===`total-members`||e===`free-members`||e===`paid-members`||e===`mrr`,Wt=({active:e,payload:t,range:n,color:r,showBreakdown:i})=>{if(!e||!t?.length)return null;let a=t[0].payload,{date:o,formattedValue:s,label:c,comped:l,gift:u}=a,d=a.value-(l||0)-(u||0);return(0,$.jsxs)(`div`,{className:`min-w-[200px] rounded-lg border bg-background px-3 py-2 shadow-lg`,children:[o&&(0,$.jsx)(`div`,{className:`mb-1 text-sm text-foreground`,children:z(o,n||0)}),(0,$.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[i&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`div`,{className:`flex items-center gap-2`,children:(0,$.jsxs)(`div`,{className:`flex grow items-center justify-between gap-5`,children:[(0,$.jsx)(`div`,{className:`text-sm text-muted-foreground`,children:`Paid subscriptions`}),(0,$.jsx)(`div`,{className:`font-mono text-xs`,children:p(d)})]})}),(0,$.jsx)(`div`,{className:`flex items-center gap-2`,children:(0,$.jsxs)(`div`,{className:`flex grow items-center justify-between gap-5`,children:[(0,$.jsx)(`div`,{className:`text-sm text-muted-foreground`,children:`Gift subscriptions`}),(0,$.jsx)(`div`,{className:`font-mono text-xs`,children:u!==void 0&&u>0?p(u):`0`})]})}),(0,$.jsx)(`div`,{className:`flex items-center gap-2`,children:(0,$.jsxs)(`div`,{className:`flex grow items-center justify-between gap-5`,children:[(0,$.jsx)(`div`,{className:`text-sm text-muted-foreground`,children:`Complimentary`}),(0,$.jsx)(`div`,{className:`font-mono text-xs`,children:l!==void 0&&l>0?p(l):`0`})]})}),(0,$.jsx)(ct,{})]}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(`span`,{className:`inline-block size-2 rounded-full opacity-50`,style:{backgroundColor:r||`var(--chart-purple)`}}),(0,$.jsxs)(`div`,{className:`flex grow items-center justify-between gap-5`,children:[c&&(0,$.jsx)(`div`,{className:`text-sm text-muted-foreground`,children:c}),(0,$.jsx)(`div`,{className:`font-mono font-medium`,children:s})]})]})]})]})},Gt=({chartData:e,totals:t,initialTab:n,currencySymbol:r,isLoading:i,onTabChange:a})=>{let o=Ut(n)?n:`total-members`,[s,c]=(0,G.useState)(o),{range:l}=et(),{appSettings:f}=ut(),m=d(),[h]=u();(0,G.useEffect)(()=>{c(o)},[o]);let g=e=>{c(e);let t=new URLSearchParams(h);t.set(`tab`,e),m(`?${t.toString()}`,{replace:!0}),a&&a(e)},{totalMembers:_,freeMembers:v,paidMembers:y,mrr:b,percentChanges:x,directions:S}=t,{chartData:C,chartRange:w}=(0,G.useMemo)(()=>{if(!e||e.length===0)return{chartData:[],chartRange:l};let t=[],n=`value`;switch(s){case`free-members`:n=`free`;break;case`paid-members`:n=`paid`;break;case`mrr`:n=`mrr`;break;default:n=`value`}t=A(e,l,n,`exact`);let i=[];switch(s){case`free-members`:i=t.map(e=>({...e,value:e.free,formattedValue:p(e.free),label:`Free members`}));break;case`paid-members`:i=t.map(e=>({...e,value:e.paid,formattedValue:p(e.paid),label:`Paid members`,comped:e.comped,gift:e.gift,paid_subscribed:e.paid_subscribed}));break;case`mrr`:i=t.map(e=>({...e,value:V(e.mrr),formattedValue:`${r}${p(V(e.mrr))}`,label:`MRR`}));break;default:i=t.map(e=>{let t=e.free+e.paid;return{...e,value:t,formattedValue:p(t),label:`Total members`}})}return{chartData:i,chartRange:Ae(l,e,{fieldName:n})}},[s,e,l,r]),ee={"total-members":{color:`var(--chart-darkblue)`},"free-members":{color:`var(--chart-blue)`},"paid-members":{color:`var(--chart-purple)`},mrr:{color:`var(--chart-teal)`}};return i?(0,$.jsx)(`div`,{className:`-mb-6 flex h-[calc(16vw+132px)] w-full items-start justify-center`,children:(0,$.jsx)(st,{})}):(0,$.jsxs)(Pe,{defaultValue:o,variant:`kpis`,children:[(0,$.jsxs)(Ne,{className:`-mx-6 ${f?.paidMembersEnabled?`hidden grid-cols-4 lg:visible! lg:grid!`:`grid grid-cols-4`}`,children:[(0,$.jsx)(_t,{className:f?.paidMembersEnabled?``:`cursor-auto after:hidden`,value:`total-members`,onClick:()=>{f?.paidMembersEnabled&&g(`total-members`)},children:(0,$.jsx)(U,{color:`var(--chart-darkblue)`,diffDirection:l===B.allTime.value?`hidden`:S.total,diffValue:x.total,label:`Total members`,value:p(_)})}),f?.paidMembersEnabled&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(_t,{value:`free-members`,onClick:()=>{g(`free-members`)},children:(0,$.jsx)(U,{color:`var(--chart-blue)`,diffDirection:l===B.allTime.value?`hidden`:S.free,diffValue:x.free,label:`Free members`,value:p(v)})}),(0,$.jsx)(_t,{value:`paid-members`,onClick:()=>{g(`paid-members`)},children:(0,$.jsx)(U,{color:`var(--chart-purple)`,diffDirection:l===B.allTime.value?`hidden`:S.paid,diffValue:x.paid,label:`Paid members`,value:p(y)})}),(0,$.jsx)(_t,{value:`mrr`,onClick:()=>{g(`mrr`)},children:(0,$.jsx)(U,{color:`var(--chart-teal)`,diffDirection:l===B.allTime.value?`hidden`:S.mrr,diffValue:x.mrr,label:`MRR`,value:`${r}${p(V(b))}`})})]})]}),f?.paidMembersEnabled&&(0,$.jsxs)(it,{children:[(0,$.jsx)(ot,{className:`lg:hidden`,asChild:!0,children:(0,$.jsxs)(vt,{children:[s===`total-members`&&(0,$.jsx)(U,{color:`var(--chart-darkblue)`,diffDirection:l===B.allTime.value?`hidden`:S.total,diffValue:x.total,label:`Total members`,value:p(_)}),s===`free-members`&&(0,$.jsx)(U,{color:`var(--chart-blue)`,diffDirection:l===B.allTime.value?`hidden`:S.free,diffValue:x.free,label:`Free members`,value:p(v)}),s===`paid-members`&&(0,$.jsx)(U,{color:`var(--chart-purple)`,diffDirection:l===B.allTime.value?`hidden`:S.paid,diffValue:x.paid,label:`Paid members`,value:p(y)}),s===`mrr`&&(0,$.jsx)(U,{color:`var(--chart-teal)`,diffDirection:l===B.allTime.value?`hidden`:S.mrr,diffValue:x.mrr,label:`MRR`,value:`${r}${p(V(b))}`})]})}),(0,$.jsxs)(at,{align:`end`,className:`w-56`,children:[(0,$.jsx)(Ye,{onClick:()=>g(`total-members`),children:`Total members`}),(0,$.jsx)(Ye,{onClick:()=>g(`free-members`),children:`Free members`}),(0,$.jsx)(Ye,{onClick:()=>g(`paid-members`),children:`Paid members`}),(0,$.jsx)(Ye,{onClick:()=>g(`mrr`),children:`MRR`})]})]}),(0,$.jsx)(`div`,{className:`my-4 [&_.recharts-cartesian-axis-tick-value]:fill-gray-500`,children:(0,$.jsx)(Ee,{className:`-mb-3 h-[16vw] max-h-[320px] w-full min-h-[180px]`,color:ee[s].color,data:C,dataFormatter:s===`mrr`?e=>`${r}${p(e)}`:p,id:s,range:w,tooltipContent:s===`paid-members`?(0,$.jsx)(Wt,{color:ee[`paid-members`].color,range:w,showBreakdown:!0}):void 0})})]})},Kt=(e,t=`signups desc`,n=50)=>{let{startDate:r,endDate:i,timezone:a}=$e(e),o={date_from:H(r),date_to:H(i),member_status:bt(tt),order:t,limit:n.toString()};return a&&(o.timezone=a),xt({searchParams:o})},qt=({data:e,currencySymbol:t,limit:n,defaultSourceIconUrl:r})=>{let i=n?e.slice(0,n):e,{appSettings:a}=ut();return(0,$.jsx)(L,{children:i.map(e=>(0,$.jsxs)(I,{className:`last:border-none`,children:[(0,$.jsx)(R,{className:`font-medium`,children:(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(l,{defaultSourceIconUrl:r,displayName:e.displayName,iconSrc:e.iconSrc}),e.linkUrl?(0,$.jsx)(`a`,{className:`hover:underline`,href:e.linkUrl,rel:`noreferrer`,target:`_blank`,children:e.displayName}):(0,$.jsx)(`span`,{children:e.displayName})]})}),(0,$.jsxs)(R,{className:`text-right font-mono text-sm`,children:[`+`,p(e.free_members)]}),a?.paidMembersEnabled&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(R,{className:`text-right font-mono text-sm`,children:[`+`,p(e.paid_members)]}),(0,$.jsxs)(R,{className:`text-right font-mono text-sm`,children:[`+`,t,p(V(e.mrr))]})]})]},e.source))})},Jt=({range:e,limit:t=20,showViewAll:n=!1,sortBy:r,setSortBy:i})=>{let{site:a}=yt(),{data:l}=o(),{appSettings:u}=ut(),[d,f]=(0,G.useState)(`free_members desc`),p=r||d,m=i||f,{data:h,isLoading:g}=Kt(e,p.replace(`free_members`,`signups`).replace(`paid_members`,`paid_conversions`),t),v=a.url,y=`https://www.google.com/s2/favicons?domain=ghost.org&sz=64`,x=G.useMemo(()=>{if(l?.stats&&l?.meta?.totals){let e=l.meta.totals,t=e[0];if(!t)return s(`usd`);for(let n of e)n.mrr>t.mrr&&(t=n);return s(t.currency)}return s(`usd`)},[l]),C=G.useMemo(()=>h?.stats?h.stats.map(e=>{let t=e.source||`Direct`,{domain:n}=c(t,v),r=n?`https://www.faviconextractor.com/favicon/${n}?larger=true`:y,i=n&&t!==`Direct`?`https://${n}`:void 0;return{source:t,free_members:e.signups,paid_members:e.paid_conversions,mrr:e.mrr,iconSrc:r,displayName:t,linkUrl:i}}):[],[h,v]),w=`Where did your growth come from ${j(e)}`;return u?.analytics.membersTrackSources?g?(0,$.jsx)(L,{children:(0,$.jsx)(I,{className:`last:border-none`,children:(0,$.jsx)(R,{className:`border-none py-2`,colSpan:1,children:(0,$.jsx)(Be,{containerClassName:`space-y-2`,count:5,maxWidth:75,randomize:!0})})})}):(0,$.jsxs)($.Fragment,{children:[C.length>0?(0,$.jsx)(qt,{currencySymbol:x,data:C,defaultSourceIconUrl:y,limit:t}):(0,$.jsx)(L,{children:(0,$.jsx)(I,{className:`last:border-none`,children:(0,$.jsx)(R,{className:`border-none py-12 group-hover:bg-transparent!`,colSpan:u?.paidMembersEnabled?4:2,children:(0,$.jsx)(P,{description:`Try adjusting your date range to see more data.`,title:`No conversions ${j(e)}`,children:(0,$.jsx)(S,{strokeWidth:1.5})})})})}),n&&C.length>t&&(0,$.jsx)(Ke,{className:`border-none bg-transparent hover:bg-transparent!`,children:(0,$.jsx)(I,{children:(0,$.jsx)(R,{className:`border-none bg-transparent px-0 pb-0 hover:bg-transparent!`,colSpan:4,children:(0,$.jsxs)(Xe,{children:[(0,$.jsx)(nt,{asChild:!0,children:(0,$.jsxs)(b,{variant:`outline`,children:[`View all `,(0,$.jsx)(_,{})]})}),(0,$.jsxs)(Qe,{className:`overflow-y-auto pt-0 sm:max-w-[420px]`,children:[(0,$.jsxs)(Ze,{className:`sticky top-0 z-40 -mx-6 bg-surface-elevated/60 p-6 backdrop-blur`,children:[(0,$.jsx)(rt,{children:`Top sources`}),(0,$.jsx)(lt,{children:w})]}),(0,$.jsx)(`div`,{className:`group/datalist`,children:(0,$.jsxs)(Je,{children:[(0,$.jsx)(qe,{children:(0,$.jsxs)(I,{children:[(0,$.jsx)(F,{children:`Source`}),(0,$.jsx)(F,{className:`w-[110px] text-right`,children:(0,$.jsx)(M,{activeSortBy:p,setSortBy:m,sortBy:`free_members desc`,children:`Free members`})}),u?.paidMembersEnabled&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(F,{className:`w-[110px] text-right`,children:(0,$.jsx)(M,{activeSortBy:p,setSortBy:m,sortBy:`paid_members desc`,children:`Paid members`})}),(0,$.jsx)(F,{className:`w-[110px] text-right`,children:(0,$.jsx)(M,{activeSortBy:p,setSortBy:m,sortBy:`mrr desc`,children:`MRR impact`})})]})]})}),(0,$.jsx)(qt,{currencySymbol:x,data:C,defaultSourceIconUrl:y})]})})]})]})})})})]}):(0,$.jsx)(L,{children:(0,$.jsx)(I,{className:`last:border-none`,children:(0,$.jsx)(R,{className:`border-none py-12 group-hover:bg-transparent!`,colSpan:u?.paidMembersEnabled?4:2,children:(0,$.jsx)(ht,{})})})})};f();var Yt=({active:e,payload:t})=>{if(e&&t&&t.length){let e=t[0];return(0,$.jsx)(`div`,{className:`rounded-lg border bg-background p-2 shadow-sm`,children:(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(`div`,{className:`size-2 rounded-full opacity-50`,style:{backgroundColor:e.payload.color}}),(0,$.jsx)(`span`,{className:`font-medium`,children:e.name}),(0,$.jsx)(`span`,{className:`font-mono`,children:p(e.value)})]})})}return null},Xt=({isLoading:e,range:t})=>{let{data:n}=a(),{data:{tiers:r=[]}={}}=St(),[i,o]=(0,G.useState)(`billing-period`),{startDate:s,endDate:c}=(0,G.useMemo)(()=>$e(t),[t]),l=(0,G.useMemo)(()=>H(s),[s]),u=(0,G.useMemo)(()=>H(c),[c]),d=(0,G.useMemo)(()=>r.filter(e=>e.type===`paid`&&e.active).map(e=>({id:e.id,name:e.name})),[r]),f=(0,G.useMemo)(()=>{if(!n?.stats)return[];let e=g(l),t=g(u),r=n.stats.filter(n=>{let r=g(n.date);return r.isSameOrAfter(e)&&r.isSameOrBefore(t)}).reduce((e,t)=>{let n=t.cadence;return e[n]||(e[n]=0),e[n]+=t.signups,e},{});return Object.entries(r).map(([e,t],n)=>{let r=e,i=`url(#gradientPurple)`,a=`var(--chart-purple)`;return e===`month`?(r=`Monthly`,i=`url(#gradientPurple)`,a=`var(--chart-purple)`):e===`year`&&(r=`Annual`,i=`url(#gradientTeal)`,a=`var(--chart-teal)`),{id:`cadence-${n}`,name:r,count:t,fill:i,color:a}})},[n,l,u]),m=(0,G.useMemo)(()=>{if(!n?.stats||d.length===0)return[];let e=g(l),t=g(u),r=n.stats.filter(n=>{let r=g(n.date);return r.isSameOrAfter(e)&&r.isSameOrBefore(t)}).reduce((e,t)=>{let n=t.tier;return e[n]||(e[n]=0),e[n]+=t.signups,e},{}),i=[{gradient:`url(#gradientPurple)`,solid:`var(--chart-purple)`},{gradient:`url(#gradientTeal)`,solid:`var(--chart-teal)`},{gradient:`url(#gradientBlue)`,solid:`var(--chart-blue)`},{gradient:`url(#gradientRose)`,solid:`var(--chart-rose)`},{gradient:`url(#gradientOrange)`,solid:`var(--chart-orange)`},{gradient:`url(#gradientGreen)`,solid:`var(--chart-green)`},{gradient:`url(#gradientAmber)`,solid:`var(--chart-amber)`},{gradient:`url(#gradientYellow)`,solid:`var(--chart-yellow)`},{gradient:`url(#gradientDarkblue)`,solid:`var(--chart-darkblue)`},{gradient:`url(#gradientGray)`,solid:`var(--chart-darkgray)`}];return[...d.map(e=>{let t=r[e.id]||0;return{id:e.id,name:e.name,count:t}})].sort((e,t)=>t.count-e.count).map((e,t)=>{let n=t%i.length;return{...e,fill:i[n].gradient,color:i[n].solid}})},[n,d,l,u]),h=i===`billing-period`?f:m,_=(0,G.useMemo)(()=>h.reduce((e,t)=>e+t.count,0),[h]),v=(0,G.useMemo)(()=>{let e={count:{label:`Subscriptions`}};return h.forEach(t=>{e[t.id]={label:t.name,color:t.color}}),e},[h]),y=(0,G.useMemo)(()=>_===0?[]:h.map(e=>({label:e.name,count:e.count,percentage:e.count/_*100,color:e.color})),[h,_]);if(e||!n?.stats)return null;let b=h.length>0&&_>0;return(0,$.jsxs)(Ge,{children:[(0,$.jsx)(Ve,{children:(0,$.jsxs)(`div`,{className:`flex items-start justify-between gap-1.5`,children:[(0,$.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,$.jsx)(Ue,{children:`Paid subscription breakdown`}),(0,$.jsxs)(We,{children:[`New paid subscriptions `,j(t)]})]}),d.length>1&&(0,$.jsx)(`div`,{children:(0,$.jsxs)(ze,{value:i,onValueChange:e=>o(e),children:[(0,$.jsx)(Le,{className:`w-full`,children:(0,$.jsx)(Re,{})}),(0,$.jsxs)(Ie,{align:`end`,children:[(0,$.jsx)(Fe,{value:`billing-period`,children:`Billing period`}),(0,$.jsx)(Fe,{value:`tiers`,children:`Tiers`})]})]})})]})}),(0,$.jsx)(He,{children:b?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(ge,{className:`mx-auto aspect-square h-[250px] min-h-[250px] w-full`,config:v,children:(0,$.jsxs)(Ht,{children:[(0,$.jsxs)(`defs`,{children:[(0,$.jsxs)(`linearGradient`,{id:`gradientPurple`,x1:`0`,x2:`0`,y1:`0`,y2:`1`,children:[(0,$.jsx)(`stop`,{offset:`0%`,stopColor:`var(--chart-purple)`,stopOpacity:.8}),(0,$.jsx)(`stop`,{offset:`100%`,stopColor:`var(--chart-purple)`,stopOpacity:.6})]}),(0,$.jsxs)(`linearGradient`,{id:`gradientTeal`,x1:`0`,x2:`0`,y1:`0`,y2:`1`,children:[(0,$.jsx)(`stop`,{offset:`0%`,stopColor:`var(--chart-teal)`,stopOpacity:.8}),(0,$.jsx)(`stop`,{offset:`100%`,stopColor:`var(--chart-teal)`,stopOpacity:.6})]}),(0,$.jsxs)(`linearGradient`,{id:`gradientRose`,x1:`0`,x2:`0`,y1:`0`,y2:`1`,children:[(0,$.jsx)(`stop`,{offset:`0%`,stopColor:`var(--chart-rose)`,stopOpacity:.8}),(0,$.jsx)(`stop`,{offset:`100%`,stopColor:`var(--chart-rose)`,stopOpacity:.6})]}),(0,$.jsxs)(`linearGradient`,{id:`gradientBlue`,x1:`0`,x2:`0`,y1:`0`,y2:`1`,children:[(0,$.jsx)(`stop`,{offset:`0%`,stopColor:`var(--chart-blue)`,stopOpacity:.8}),(0,$.jsx)(`stop`,{offset:`100%`,stopColor:`var(--chart-blue)`,stopOpacity:.6})]}),(0,$.jsxs)(`linearGradient`,{id:`gradientOrange`,x1:`0`,x2:`0`,y1:`0`,y2:`1`,children:[(0,$.jsx)(`stop`,{offset:`0%`,stopColor:`var(--chart-orange)`,stopOpacity:.8}),(0,$.jsx)(`stop`,{offset:`100%`,stopColor:`var(--chart-orange)`,stopOpacity:.6})]}),(0,$.jsxs)(`linearGradient`,{id:`gradientGreen`,x1:`0`,x2:`0`,y1:`0`,y2:`1`,children:[(0,$.jsx)(`stop`,{offset:`0%`,stopColor:`var(--chart-green)`,stopOpacity:.8}),(0,$.jsx)(`stop`,{offset:`100%`,stopColor:`var(--chart-green)`,stopOpacity:.6})]}),(0,$.jsxs)(`linearGradient`,{id:`gradientAmber`,x1:`0`,x2:`0`,y1:`0`,y2:`1`,children:[(0,$.jsx)(`stop`,{offset:`0%`,stopColor:`var(--chart-amber)`,stopOpacity:.8}),(0,$.jsx)(`stop`,{offset:`100%`,stopColor:`var(--chart-amber)`,stopOpacity:.6})]}),(0,$.jsxs)(`linearGradient`,{id:`gradientYellow`,x1:`0`,x2:`0`,y1:`0`,y2:`1`,children:[(0,$.jsx)(`stop`,{offset:`0%`,stopColor:`var(--chart-yellow)`,stopOpacity:.8}),(0,$.jsx)(`stop`,{offset:`100%`,stopColor:`var(--chart-yellow)`,stopOpacity:.6})]}),(0,$.jsxs)(`linearGradient`,{id:`gradientDarkblue`,x1:`0`,x2:`0`,y1:`0`,y2:`1`,children:[(0,$.jsx)(`stop`,{offset:`0%`,stopColor:`var(--chart-darkblue)`,stopOpacity:.8}),(0,$.jsx)(`stop`,{offset:`100%`,stopColor:`var(--chart-darkblue)`,stopOpacity:.6})]}),(0,$.jsxs)(`linearGradient`,{id:`gradientGray`,x1:`0`,x2:`0`,y1:`0`,y2:`1`,children:[(0,$.jsx)(`stop`,{offset:`0%`,stopColor:`var(--chart-darkgray)`,stopOpacity:.8}),(0,$.jsx)(`stop`,{offset:`100%`,stopColor:`var(--chart-darkgray)`,stopOpacity:.6})]})]}),(0,$.jsx)(ve,{content:(0,$.jsx)(Yt,{}),cursor:!1}),(0,$.jsx)(Q,{animationBegin:0,animationDuration:1e3,data:h,dataKey:`count`,innerRadius:70,nameKey:`name`,stroke:`var(--card)`,strokeWidth:5,children:(0,$.jsx)(re,{content:({viewBox:e})=>{if(e&&`cx`in e&&`cy`in e)return(0,$.jsxs)(`text`,{dominantBaseline:`middle`,textAnchor:`middle`,x:e.cx,y:e.cy,children:[(0,$.jsx)(`tspan`,{className:`fill-foreground text-2xl font-semibold tracking-tight`,x:e.cx,y:e.cy,children:p(_)}),(0,$.jsx)(`tspan`,{className:`fill-muted-foreground`,x:e.cx,y:(e.cy||0)+20,children:`Total`})]})}})})]})}),y.length>0&&(0,$.jsx)(`div`,{className:`mt-4 flex flex-wrap items-center justify-center gap-x-6 gap-y-1 text-sm text-muted-foreground`,children:y.map(e=>(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(`span`,{className:`size-2 rounded-full opacity-50`,style:{backgroundColor:e.color}}),(0,$.jsx)(`span`,{className:`max-w-[150px] truncate whitespace-nowrap`,title:e.label,children:e.label}),(0,$.jsxs)(`span`,{className:`font-medium text-foreground`,children:[Math.round(Number(e.percentage)||0),`%`]})]},e.label))})]}):(0,$.jsx)(`div`,{className:`py-12`,children:(0,$.jsx)(P,{description:`No new paid subscriptions ${j(t)}.`,title:`No new subscribers`,children:(0,$.jsx)(x,{strokeWidth:1.5})})})})]})};f();var Zt=(e,t,n)=>{if(t===1){let t=g().format(`YYYY-MM-DD`),n=e.find(e=>e.date===t);return[{date:t,signups:n?.signups||0,cancellations:n?.cancellations||0}]}let{startDate:r,endDate:i}=$e(t),a=g(r).format(`YYYY-MM-DD`),o=new Map(e.map(e=>[e.date,e])),s=[],c=new Set;if(n===`monthly`){let e=g(r).startOf(`month`),t=g(i).startOf(`month`);for(;e.isSameOrBefore(t);){let t=e.format(`YYYY-MM-DD`),n=t<a?a:t;if(!c.has(n)){c.add(n);let e=o.get(n);e?s.push(e):s.push({date:n,signups:0,cancellations:0})}e.add(1,`month`)}}else if(n===`weekly`){let e=g(r).startOf(`week`),t=g(i).startOf(`week`);for(;e.isSameOrBefore(t);){let t=e.format(`YYYY-MM-DD`),n=t<a?a:t;if(!c.has(n)){c.add(n);let e=o.get(n);e?s.push(e):s.push({date:n,signups:0,cancellations:0})}e.add(1,`week`)}}else{let e=g(r),t=g(i);for(;e.isSameOrBefore(t);){let t=e.format(`YYYY-MM-DD`),n=o.get(t);n?s.push(n):s.push({date:t,signups:0,cancellations:0}),e.add(1,`day`)}}return s},Qt=e=>{let t=ke(e);return t<30?[`daily`]:t>=91?[`weekly`,`monthly`]:[`daily`,`weekly`]},$t=e=>{let t=ke(e);return t<30?`daily`:t>=91?`monthly`:`weekly`},en=({subscriptionData:e,memberData:t,range:n,isLoading:r})=>{let[i,a]=(0,G.useState)(()=>$t(n));(0,G.useEffect)(()=>{a($t(n))},[n]);let o=(0,G.useMemo)(()=>Qt(n),[n]),s=(0,G.useMemo)(()=>{switch(i){case`daily`:return`none`;case`weekly`:return`weekly`;case`monthly`:return`monthly`}},[i]),c=(0,G.useMemo)(()=>Ae(n,[],{overrideStrategy:s}),[n,s]),l=(0,G.useMemo)(()=>{if(e&&e.length>0){if(n===1){let t=g().format(`YYYY-MM-DD`),r=e.find(e=>e.date===t);return[{date:z(t,n),rawDate:t,new:r?.signups||0,cancelled:-(r?.cancellations||0)}]}let t=A(e,n,`signups`,`sum`,s),r=A(e,n,`cancellations`,`sum`,s),i=new Map(r.map(e=>[e.date,e])),a=t.map(e=>({date:e.date,signups:e.signups||0,cancellations:i.get(e.date)?.cancellations||0})),o=new Set(a.map(e=>e.date));return r.forEach(e=>{o.has(e.date)||a.push({date:e.date,signups:0,cancellations:e.cancellations||0})}),a.sort((e,t)=>new Date(e.date).getTime()-new Date(t.date).getTime()),Zt(a,n,s).map(e=>({date:z(e.date,c),rawDate:e.date,new:e.signups||0,cancelled:-(e.cancellations||0)}))}else{if(!t||t.length===0)return[];if(n===1){let e=g().format(`YYYY-MM-DD`),r=t.find(t=>t.date===e);return[{date:z(e,n),rawDate:e,new:r?.paid_subscribed||0,cancelled:-(r?.paid_canceled||0)}]}let e=A(t,n,`paid_subscribed`,`sum`,s),r=A(t,n,`paid_canceled`,`sum`,s),i=new Map(r.map(e=>[e.date,e])),a=e.map(e=>({date:e.date,paid_subscribed:e.paid_subscribed||0,paid_canceled:i.get(e.date)?.paid_canceled||0})),o=new Set(a.map(e=>e.date));return r.forEach(e=>{o.has(e.date)||a.push({date:e.date,paid_subscribed:0,paid_canceled:e.paid_canceled||0})}),a.sort((e,t)=>new Date(e.date).getTime()-new Date(t.date).getTime()),a.map(e=>({date:z(e.date,c),rawDate:e.date,new:e.paid_subscribed||0,cancelled:-(e.paid_canceled||0)}))}},[t,e,n,s,c]),u={new:{label:`New`,color:`var(--chart-teal)`},cancelled:{label:`Cancelled`,color:`var(--chart-rose)`}},d=(0,G.useMemo)(()=>({new:l.reduce((e,t)=>e+t.new,0),cancelled:l.reduce((e,t)=>e+Math.abs(t.cancelled),0)}),[l]);if(r)return null;let f=l.length>0&&(d.new>0||d.cancelled>0),m=e=>e.charAt(0).toUpperCase()+e.slice(1);return(0,$.jsxs)(Ge,{"data-testid":`paid-members-change-card`,children:[(0,$.jsx)(Ve,{children:(0,$.jsxs)(`div`,{className:`flex items-start justify-between gap-1.5`,children:[(0,$.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,$.jsx)(Ue,{children:`Paid subscriptions`}),(0,$.jsxs)(We,{children:[`New and cancelled paid subscriptions `,j(n)]})]}),o.length>1&&(0,$.jsx)(`div`,{children:(0,$.jsxs)(ze,{value:i,onValueChange:e=>a(e),children:[(0,$.jsx)(Le,{className:`w-[110px]`,children:(0,$.jsx)(Re,{})}),(0,$.jsx)(Ie,{align:`end`,children:o.map(e=>(0,$.jsx)(Fe,{value:e,children:m(e)},e))})]})})]})}),(0,$.jsx)(He,{children:f?(0,$.jsxs)(`div`,{children:[(0,$.jsx)(ge,{className:`aspect-auto h-[200px] w-full md:h-[220px] xl:h-[260px]`,config:u,children:(0,$.jsxs)(Me,{data:l,stackOffset:`sign`,children:[(0,$.jsx)(`defs`,{children:(0,$.jsxs)(`linearGradient`,{id:`tealGradient`,x1:`0`,x2:`0`,y1:`0`,y2:`1`,children:[(0,$.jsx)(`stop`,{offset:`0%`,stopColor:`var(--color-new)`,stopOpacity:.8}),(0,$.jsx)(`stop`,{offset:`100%`,stopColor:`var(--color-new)`,stopOpacity:.6})]})}),(0,$.jsx)(`defs`,{children:(0,$.jsxs)(`linearGradient`,{id:`roseGradient`,x1:`0`,x2:`0`,y1:`0`,y2:`1`,children:[(0,$.jsx)(`stop`,{offset:`0%`,stopColor:`var(--color-cancelled)`,stopOpacity:.6}),(0,$.jsx)(`stop`,{offset:`100%`,stopColor:`var(--color-cancelled)`,stopOpacity:.8})]})}),(0,$.jsx)(je,{stroke:`var(--border)`,vertical:!1}),(0,$.jsx)(Oe,{axisLine:!1,dataKey:`date`,tickFormatter:()=>``,tickLine:!1,tickMargin:10}),(0,$.jsx)(De,{axisLine:!1,tickFormatter:e=>p(e<0?e*-1:e),tickLine:!1}),(0,$.jsx)(ve,{content:(0,$.jsx)(me,{className:`min-w-[120px]! px-3 py-2`,formatter:(e,t,n,r)=>{let i=Number(e),a=`0`;a=i===0?`0`:p(i<0?i*-1:i);let o=n?.payload,s=Number(o?.new||0)+Number(o?.cancelled||0),l=s===0?`0`:s>0?`+${p(s)}`:p(s),d=o?.date,f=o?.rawDate;return f&&(d=z(f,c)),(0,$.jsxs)(`div`,{className:`flex w-full flex-col`,children:[r===0&&(0,$.jsx)(`div`,{className:`mb-1 text-sm font-medium text-foreground`,children:d}),(0,$.jsxs)(`div`,{className:`flex w-full items-center justify-between gap-4`,children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,$.jsx)(`div`,{className:`size-2 shrink-0 rounded-full bg-[var(--color-bg)] opacity-50`,style:{"--color-bg":`var(--color-${t})`}}),(0,$.jsx)(`span`,{className:`text-sm text-muted-foreground`,children:u[t]?.label||t})]}),(0,$.jsx)(`div`,{className:`ml-auto flex items-baseline gap-0.5 font-mono font-medium text-foreground tabular-nums`,children:a})]}),r===1&&(0,$.jsxs)(`div`,{className:`mt-1 flex w-full items-center justify-between gap-4 border-t pt-1`,children:[(0,$.jsx)(`span`,{className:`text-sm text-muted-foreground`,children:`Net change`}),(0,$.jsx)(`div`,{className:`ml-auto flex items-baseline gap-0.5 font-mono font-medium text-foreground tabular-nums`,children:l})]})]})},hideLabel:!0}),cursor:!1,isAnimationActive:!1,position:{y:10}}),(0,$.jsx)(pe,{activeBar:{fillOpacity:1},dataKey:`new`,fill:`url(#tealGradient)`,fillOpacity:.75,maxBarSize:32,minPointSize:3,radius:[4,4,0,0],stackId:`a`}),(0,$.jsx)(pe,{activeBar:{fillOpacity:1},dataKey:`cancelled`,fill:`url(#roseGradient)`,fillOpacity:.75,maxBarSize:32,radius:[4,4,0,0],stackId:`a`})]})}),(0,$.jsxs)(`div`,{className:`mt-3 flex items-center justify-center gap-6 text-sm text-muted-foreground`,children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(`span`,{className:`size-2 rounded-full opacity-50`,style:{backgroundColor:u.new.color}}),(0,$.jsx)(`span`,{children:`New`}),(0,$.jsx)(`span`,{className:`font-medium text-foreground`,children:p(d.new)})]}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(`span`,{className:`size-2 rounded-full opacity-50`,style:{backgroundColor:u.cancelled.color}}),(0,$.jsx)(`span`,{children:`Cancelled`}),(0,$.jsx)(`span`,{className:`font-medium text-foreground`,children:p(d.cancelled)})]})]})]}):(0,$.jsx)(`div`,{className:`py-12`,children:(0,$.jsx)(P,{description:`No paid subscription changes ${j(n)}.`,title:`No paid member changes`,children:(0,$.jsx)(y,{strokeWidth:1.5})})})})]})},tn=(e,t,n)=>{let i=e??30,a=t??`mrr desc`,{startDate:o,endDate:s}=(0,G.useMemo)(()=>$e(i),[i]),c=(0,G.useMemo)(()=>{let e={date_from:H(o),date_to:H(s),order:a};return n===`posts`?e.post_type=`post`:n===`pages`&&(e.post_type=`page`),e},[o,s,a,n]);return r({searchParams:Object.fromEntries(Object.entries(c).filter(([,e])=>e!==void 0))})},nn=()=>{let{range:e}=et(),{site:t,settings:n}=yt(),r=String(n.find(e=>e.key===`timezone`)?.value||`Etc/UTC`),a=d(),[o,s]=(0,G.useState)(`free_members desc`),[c,l]=(0,G.useState)(W.POSTS_AND_PAGES),[f]=u(),{appSettings:h}=ut(),g=f.get(`tab`)||`total-members`,[_,y]=(0,G.useState)(g);(0,G.useEffect)(()=>{g!==_&&y(g)},[g]);let{isLoading:x,chartData:S,totals:C,currencySymbol:w,subscriptionData:ee}=gt(e),{data:T,isLoading:te}=tn(e,o,c),ne=(0,G.useMemo)(()=>{let e=(T?.stats||[]).reduce((e,t)=>{let n=t.post_id||(t.title&&t.title.trim()!==``?t.title:t.attribution_url);if(!n)return e;if(!e.has(n))e.set(n,t);else{let r=e.get(n);r.free_members+=t.free_members,r.paid_members+=t.paid_members,r.mrr+=t.mrr,e.set(n,r)}return e},new Map),t=Array.from(e.values()),n=t.reduce((e,t)=>e+t.free_members,0),r=t.reduce((e,t)=>e+t.paid_members,0),i=t.reduce((e,t)=>e+t.mrr,0);return t.map(e=>{let t=0;return o.includes(`free_members`)&&n>0?t=e.free_members/n:o.includes(`paid_members`)&&r>0?t=e.paid_members/r:o.includes(`mrr`)&&i>0&&(t=e.mrr/i),{title:e.title||e.attribution_url,post_id:e.post_id,attribution_url:e.attribution_url,attribution_type:e.attribution_type,attribution_id:e.attribution_id,free_members:e.free_members,paid_members:e.paid_members,mrr:e.mrr,percentage:t,published_at:e.published_at,url_exists:e.url_exists??!0}})},[T,o]),E=x,D=x||te;return(0,$.jsxs)(ft,{children:[(0,$.jsx)(pt,{children:(0,$.jsx)(i,{children:(0,$.jsx)(dt,{})})}),(0,$.jsxs)(mt,{data:E?void 0:S,isLoading:!1,loadingComponent:(0,$.jsx)($.Fragment,{}),children:[(0,$.jsx)(Ge,{"data-testid":`total-members-card`,children:(0,$.jsx)(He,{children:(0,$.jsx)(Gt,{chartData:S,currencySymbol:w,initialTab:g,isLoading:E,totals:C,onTabChange:y})})}),h?.paidMembersEnabled&&_===`paid-members`&&(0,$.jsxs)(`div`,{className:`grid grid-cols-1 gap-6 lg:grid-cols-2 xl:grid-cols-[2fr_minmax(460px,1fr)]`,children:[(0,$.jsx)(en,{isLoading:E,memberData:S,range:e,subscriptionData:ee}),(0,$.jsx)(Xt,{isLoading:E,range:e})]}),(0,$.jsxs)(Ge,{className:`w-full overflow-x-auto`,"data-testid":`top-content-card`,children:[(0,$.jsxs)(Ve,{children:[(0,$.jsx)(Ue,{children:wt(c)}),(0,$.jsx)(We,{children:Ct(c,e,j)})]}),(0,$.jsx)(He,{children:(0,$.jsxs)(Je,{children:[(0,$.jsx)(qe,{children:(0,$.jsxs)(I,{className:`[&>th]:h-auto [&>th]:pt-0 [&>th]:pb-2`,children:[(0,$.jsx)(F,{className:`min-w-[320px] pl-0`,children:(0,$.jsx)(Pe,{defaultValue:c,variant:`button-sm`,onValueChange:e=>{l(e)},children:(0,$.jsxs)(Ne,{children:[(0,$.jsx)(N,{value:W.POSTS_AND_PAGES,children:`Posts & pages`}),(0,$.jsx)(N,{value:W.POSTS,children:`Posts`}),(0,$.jsx)(N,{value:W.PAGES,children:`Pages`}),(0,$.jsx)(N,{value:W.SOURCES,children:`Sources`})]})})}),(0,$.jsx)(F,{className:`w-[140px] text-right`,children:h?.paidMembersEnabled?(0,$.jsx)(M,{activeSortBy:o,setSortBy:s,sortBy:`free_members desc`,children:`Free members`}):(0,$.jsx)($.Fragment,{children:`Free members`})}),h?.paidMembersEnabled&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(F,{className:`w-[140px] text-right`,children:(0,$.jsx)(M,{activeSortBy:o,setSortBy:s,sortBy:`paid_members desc`,children:`Paid members`})}),(0,$.jsx)(F,{className:`w-[140px] text-right`,children:(0,$.jsx)(M,{activeSortBy:o,setSortBy:s,sortBy:`mrr desc`,children:`MRR impact`})})]})]})}),c===W.SOURCES?(0,$.jsx)(Jt,{limit:20,range:e,setSortBy:e=>s(e),showViewAll:!0,sortBy:o}):(0,$.jsx)(L,{children:D?(0,$.jsx)(I,{className:`last:border-none`,children:(0,$.jsx)(R,{className:`border-none py-2`,colSpan:1,children:(0,$.jsx)(Be,{containerClassName:`space-y-2`,count:5,maxWidth:75,randomize:!0})})}):h?.analytics.membersTrackSources?ne.length>0?ne.map((e,n)=>(0,$.jsxs)(I,{className:`last:border-none`,children:[(0,$.jsx)(R,{children:(0,$.jsxs)(`div`,{className:`group/link inline-flex flex-col items-start gap-px`,children:[e.post_id&&e.attribution_type===`post`?(0,$.jsx)(b,{className:`h-auto p-0 text-left leading-tight font-medium whitespace-normal hover:underline!`,title:`View post analytics`,variant:`link`,onClick:Tt(e.attribution_url,e.post_id,t.url||``,a,e.attribution_type),children:e.title}):(0,$.jsx)(`span`,{className:`font-medium`,children:e.title}),e.published_at&&m&&new Date(e.published_at).getTime()>0&&(0,$.jsxs)(`span`,{className:`text-muted-foreground`,children:[`Published on `,m(e.published_at,r)]})]})}),(0,$.jsxs)(R,{className:`text-right font-mono text-sm`,children:[e.free_members>0&&`+`,p(e.free_members)]}),h?.paidMembersEnabled&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(R,{className:`text-right font-mono text-sm`,children:[e.paid_members>0&&`+`,p(e.paid_members)]}),(0,$.jsxs)(R,{className:`text-right font-mono text-sm`,children:[e.mrr>0&&`+`,w,p(V(e.mrr))]})]})]},`${c}-${e.post_id||`${e.title}-${n}`}`)):(0,$.jsx)(I,{className:`border-none`,children:(0,$.jsx)(R,{className:`py-12 group-hover:bg-transparent!`,colSpan:h?.paidMembersEnabled?4:2,children:(0,$.jsx)(P,{description:`Try adjusting your date range to see more data.`,title:`No conversions ${j(e)}`,children:(0,$.jsx)(v,{strokeWidth:1.5})})})}):(0,$.jsx)(I,{className:`last:border-none`,children:(0,$.jsx)(R,{className:`border-none py-12 group-hover:bg-transparent!`,colSpan:h?.paidMembersEnabled?4:2,children:(0,$.jsx)(ht,{})})})})]})})]})]})]})};export{nn as default};
@@ -0,0 +1 @@
1
+ import{o as e}from"./rolldown-runtime-DAXXjFlN.js";import{t}from"./react-Bb3IsNbi.js";import{t as n}from"./jsx-runtime-DX3WBWVO.js";import{i as r,n as i,t as a}from"./source-icon-BPsD5ees.js";import{h as o}from"./chunk-KS7C4IRE-DCsL4i4D.js";import{a as s}from"./router-provider-Bexg1t-V.js";import{c,f as l}from"./dist-Cb5RSHSg.js";import{Fn as u,L as d,c as f,g as p,t as m,u as h}from"./button-BshWPHvn.js";import{n as g,t as _}from"./skeleton-D7hwjdry.js";import{a as v,i as y,n as b,o as x,r as S,t as C}from"./card-CiiE7QfM.js";import{t as w}from"./empty-indicator-WB1WgT9h.js";import{a as T,c as E,n as D,r as O,s as k,t as A}from"./table-CrqQtkR2.js";import{Gn as ee,Jn as j,Kn as M,Xn as N,Yn as P,ir as F,qn as I,zi as L}from"./index-BJz9Zlsc.js";import{t as R}from"./disabled-sources-indicator-BFyCxUOx.js";import{t as z}from"./use-analytics-data-BM_uV9SU.js";import{t as B}from"./member-route-0Aa52Ntz.js";import{a as V,i as H,n as U,r as W,t as G}from"./kpi-card-fUHZlzBX.js";import{r as K,t as q}from"./post-analytics-header-Dt4RQGq0.js";import{n as J,t as Y}from"./use-post-referrers-Cvymr3gt.js";var X=e(t(),1),Z=n(),Q=`https://www.google.com/s2/favicons?domain=ghost.org&sz=64`,$=({headerStyle:e=`table`,children:t=`Source`,data:n,mode:r,defaultSourceIconUrl:i=Q})=>{let{appSettings:o}=L();if(r===`growth`)return(0,Z.jsxs)(A,{children:[(0,Z.jsx)(k,{children:(0,Z.jsxs)(E,{children:[(0,Z.jsx)(T,{className:`min-w-[320px]`,variant:e===`table`?`default`:`cardhead`,children:t}),(0,Z.jsx)(T,{className:`w-[110px] text-right`,children:`Free members`}),o?.paidMembersEnabled&&(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(T,{className:`w-[110px] text-right`,children:`Paid members`}),(0,Z.jsx)(T,{className:`w-[100px] text-right`,children:`MRR impact`})]})]})}),(0,Z.jsx)(D,{children:n?.map(e=>(0,Z.jsxs)(E,{className:`last:border-none`,children:[(0,Z.jsx)(O,{children:e.linkUrl?(0,Z.jsxs)(`a`,{className:`group flex items-center gap-2`,href:e.linkUrl,rel:`noreferrer`,target:`_blank`,children:[(0,Z.jsx)(a,{defaultSourceIconUrl:i,displayName:e.displayName,iconSrc:e.iconSrc}),(0,Z.jsx)(`span`,{className:`group-hover:underline`,children:e.displayName})]}):(0,Z.jsxs)(`span`,{className:`flex items-center gap-2`,children:[(0,Z.jsx)(a,{defaultSourceIconUrl:i,displayName:e.displayName,iconSrc:e.iconSrc}),(0,Z.jsx)(`span`,{children:e.displayName})]})}),(0,Z.jsxs)(O,{className:`text-right font-mono text-sm`,children:[`+`,l(e.free_members||0)]}),o?.paidMembersEnabled&&(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsxs)(O,{className:`text-right font-mono text-sm`,children:[`+`,l(e.paid_members||0)]}),(0,Z.jsxs)(O,{className:`text-right font-mono text-sm`,children:[`+$`,l((e=>Math.round(e/100))(e.mrr||0))]})]})]},e.source))})]})},te=({title:e=`Top sources`,description:t,data:n,mode:a=`visits`,range:o=30,totalVisitors:s=0,siteUrl:l,siteIcon:u,defaultSourceIconUrl:f=Q,getPeriodText:h,className:g})=>{let{appSettings:_}=L(),T=X.useMemo(()=>r({data:n,mode:a,siteUrl:l,siteIcon:u,defaultSourceIconUrl:f}),[n,l,u,a,f]),E=X.useMemo(()=>i({processedData:T,totalVisitors:s,mode:a}),[T,s,a]),D=E.slice(0,10),O=t||(a===`growth`?`Where did your growth come from?`:`How readers found your ${o?`site`:`post`}${o&&h?` ${h(o)}`:``}`),k=a===`growth`?`Sources`:`Top sources`,A=a===`growth`?`Where did your growth come from?`:`How readers found your ${o?`site`:`post`}${o&&h?` ${h(o)}`:``}`;return(0,Z.jsxs)(C,{className:c(`group/datalist w-full max-w-[calc(100vw-64px)] overflow-x-auto sidebar:max-w-[calc(100vw-64px-280px)]`,g),"data-testid":`top-sources-card`,children:[D.length<=0&&(0,Z.jsxs)(v,{children:[(0,Z.jsx)(x,{children:e}),(0,Z.jsx)(S,{children:O})]}),(0,Z.jsx)(b,{children:a===`growth`&&!_?.analytics.membersTrackSources?(0,Z.jsx)(R,{className:`py-10`}):D.length>0?(0,Z.jsx)($,{data:D,defaultSourceIconUrl:f,getPeriodText:h,headerStyle:`card`,mode:a,range:o,children:(0,Z.jsxs)(v,{children:[(0,Z.jsx)(x,{children:e}),(0,Z.jsx)(S,{children:O})]})}):(0,Z.jsx)(`div`,{className:`py-20 text-center text-sm text-gray-700`,children:(0,Z.jsx)(w,{className:`h-full`,description:a===`growth`&&`Once someone signs up on this post, sources will show here`,title:`No sources data available ${h?h(o):``}`,children:(0,Z.jsx)(p,{strokeWidth:1.5})})})}),E.length>10&&(0,Z.jsx)(y,{children:(0,Z.jsxs)(ee,{children:[(0,Z.jsx)(N,{asChild:!0,children:(0,Z.jsxs)(m,{variant:`outline`,children:[`View all `,(0,Z.jsx)(d,{})]})}),(0,Z.jsxs)(M,{className:`overflow-y-auto pt-0 sm:max-w-[420px]`,children:[(0,Z.jsxs)(j,{className:`sticky top-0 z-40 -mx-6 bg-surface-elevated/60 p-6 backdrop-blur`,children:[(0,Z.jsx)(P,{children:k}),(0,Z.jsx)(I,{children:A})]}),(0,Z.jsx)(`div`,{className:`group/datalist`,children:(0,Z.jsx)($,{data:E,defaultSourceIconUrl:f,getPeriodText:h,mode:a,range:o})})]})]})})]})},ne=()=>{let{site:e}=z(),{postId:t}=o(),{stats:n,totals:r,isLoading:i,currencySymbol:a}=Y(t||``),{appSettings:c}=L(),d=s(),p=e=>d(B({filter:e})),m=e.url,y=e.icon,w=`flex flex-col items-stretch gap-6`,T=``;return c?.paidMembersEnabled||(w=`grid grid-cols-1 border rounded-md`,T=`border-none hover:shadow-none`),(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(q,{currentTab:`Growth`}),(0,Z.jsx)(K,{children:i?(0,Z.jsxs)(`div`,{className:w,children:[(0,Z.jsx)(C,{className:T,children:(0,Z.jsx)(b,{className:`grid grid-cols-3 p-0`,children:Array.from({length:3},(e,t)=>(0,Z.jsxs)(`div`,{className:`h-[98px] gap-1 border-r px-6 py-5 last:border-r-0`,children:[(0,Z.jsx)(_,{className:`w-2/3`}),(0,Z.jsx)(_,{className:`h-7 w-12`})]},t))})}),(0,Z.jsxs)(C,{className:T,children:[(0,Z.jsxs)(v,{children:[(0,Z.jsx)(x,{children:`Top sources`}),(0,Z.jsx)(S,{children:`Where did your growth come from?`})]}),(0,Z.jsxs)(b,{children:[(0,Z.jsx)(F,{}),(0,Z.jsx)(g,{className:`pt-6`})]})]})]}):(0,Z.jsxs)(`div`,{className:w,children:[(0,Z.jsxs)(C,{className:T,"data-testid":`members-card`,children:[(0,Z.jsxs)(v,{className:`hidden`,children:[(0,Z.jsx)(x,{children:`Newsletters`}),(0,Z.jsx)(S,{children:`How did this post perform`})]}),(0,Z.jsx)(b,{className:`p-0`,children:(0,Z.jsxs)(`div`,{className:`flex flex-col md:grid md:items-stretch ${c?.paidMembersEnabled?`md:grid-cols-3`:`md:grid-cols-1`}`,children:[(0,Z.jsxs)(G,{className:`grow`,children:[(0,Z.jsx)(H,{onClick:()=>{p(`signup:'${t}'+conversion:-'${t}'`)},children:`View members →`}),(0,Z.jsxs)(W,{onClick:()=>{p(`signup:'${t}'+conversion:-'${t}'`)},children:[(0,Z.jsx)(h,{strokeWidth:1.5}),`Free members`]}),(0,Z.jsx)(U,{children:(0,Z.jsx)(V,{children:l(r?.free_members||0)})})]}),c?.paidMembersEnabled&&(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsxs)(G,{className:`grow`,children:[(0,Z.jsx)(H,{onClick:()=>{p(`conversion:'${t}'`)},children:`View members →`}),(0,Z.jsxs)(W,{onClick:()=>{p(`conversion:'${t}'`)},children:[(0,Z.jsx)(f,{strokeWidth:1.5}),`Paid members`]}),(0,Z.jsx)(U,{children:(0,Z.jsx)(V,{children:l(r?.paid_members||0)})})]}),(0,Z.jsxs)(G,{className:`grow`,children:[(0,Z.jsxs)(W,{children:[(0,Z.jsx)(u,{strokeWidth:1.5}),`MRR`]}),(0,Z.jsx)(U,{children:(0,Z.jsxs)(V,{children:[`+`,a,J(r?.mrr||0)]})})]})]})]})})]}),!c?.paidMembersEnabled&&(0,Z.jsx)(F,{}),(0,Z.jsx)(te,{className:T,data:n,mode:`growth`,siteIcon:y,siteUrl:m})]})})]})};export{ne as default};
@@ -0,0 +1 @@
1
+ import{o as e}from"./rolldown-runtime-DAXXjFlN.js";import{t}from"./react-Bb3IsNbi.js";import{t as n}from"./jsx-runtime-DX3WBWVO.js";import{g as r}from"./framework-provider-CFLwK5uS.js";import{t as i}from"./hooks-CJepWnbB.js";import{t as a}from"./use-filterable-api-CQBtVG-l.js";import{h as o}from"./chunk-KS7C4IRE-DCsL4i4D.js";import{f as s}from"./dist-Cb5RSHSg.js";import{t as c}from"./inline-Cw-gigDW.js";import{t as l}from"./stack-CIfOAAVf.js";import{D as u,Zn as d,a as f,bt as p,dn as m,dt as h,t as g}from"./button-BshWPHvn.js";import{t as _}from"./switch-B_1yU3Aw.js";import{t as v}from"./input-surface-BdOe4KzO.js";import{o as y,t as b}from"./use-settings-navigation-aDSLtmEl.js";import{i as x,n as S,t as C}from"./action-list-lGzZLHc8.js";import{o as w,t as T}from"./field-kJYZ2T3C.js";import{t as E}from"./multi-select-combobox-CZPrgz-Z.js";import{Dr as D,Er as O,Qn as k,Zn as A,lr as j,pr as M,wr as N}from"./index-BJz9Zlsc.js";var P=e(t(),1),F=n(),I=({offset:e,onTrigger:t})=>{let n=(0,P.useRef)(null);return(0,P.useEffect)(()=>{let e=new IntersectionObserver(e=>{e[0].intersectionRatio<=0||t()});return n.current&&e.observe(n.current),()=>e.disconnect()},[t]),(0,F.jsx)(`div`,{ref:n,className:`absolute w-full`,style:{bottom:e}})},L=`ActionsResponseType`,R=(e,t)=>{let n=e=>e.event===`edited`&&typeof e.context?.action_name==`string`?e.context.action_name:``;return e.resource_id===t.resource_id&&e.resource_type===t.resource_type&&e.event===t.event&&n(e)===n(t)},z=i({dataType:L,path:`/actions/`,returnData:e=>{let{pages:t}=e,n=t.flatMap(e=>e.actions.map(({context:e,...t})=>({...t,context:JSON.parse(e)})));n=n.reverse();let r=1;n.forEach((e,t)=>{let i=n[t+1];i&&R(e,i)?(e.skip=!0,r+=1):r>1&&(e.count=r,r=1)});let i=t[t.length-1].meta;return{actions:n.reverse(),meta:i,isEnd:i?i.pagination.pages===i.pagination.page:!0}}}),B=e=>{let t=e.resource_type;if(e.event!==`deleted`)switch(e.resource_type){case`page`:case`post`:return!e.resource||!e.resource.id?void 0:(t===`post`&&e.context?.type&&(t=e.context?.type),{isExternal:!0,route:`editor/${t}/${e.resource.id}`,models:[t,e.resource.id]});case`integration`:return!e.resource||!e.resource.id?void 0:{route:`integrations/${e.resource.id}`};case`offer`:return!e.resource||!e.resource.id?void 0:{isExternal:!0,route:`offers/${e.resource.id}`,models:[e.resource.id]};case`tag`:return!e.resource||!e.resource.slug?void 0:{isExternal:!0,route:`tag`,models:[e.resource.slug]};case`product`:return{route:`tiers`};case`user`:return!e.resource||!e.resource.slug?void 0:{route:`staff/${e.resource.slug}`}}},V=e=>{let t=e.resource_type;t===`api_key`?t=`API key`:t===`setting`?t=`settings`:t===`product`?t=`tier`:t===`gift_link`?t=`gift link`:t===`security_action`?t=`security action`:t===`member_custom_field`&&(t=`custom field`),t===`post`&&e.context?.type&&(t=e.context?.type);let n=e.event;return e.event===`edited`&&e.context?.action_name&&(n=e.context?.action_name),n===`reset_authentication`?n=`reset authentication`:n===`custom_fields_edited`&&(n=`custom fields edited`),e.context?.count&&e.context?.count>1?`${e.context?.count} ${t}s ${n}`:`${t.slice(0,1).toUpperCase()}${t.slice(1)} ${n}`},H=e=>{if(e.resource_type===`setting`&&e.context?.group&&e.context?.key)return{group:e.context?.group,key:e.context?.key}},U=e=>typeof e.context?.count==`number`&&e.context?.count>1,W=({action:e})=>{let t=p;switch(e.event){case`added`:t=h;break;case`deleted`:t=u;break}return(0,F.jsx)(t,{className:`size-3`})},G=({action:e})=>(0,F.jsxs)(`div`,{className:`relative shrink-0`,children:[(0,F.jsx)(j,{className:`size-10`,name:e.actor?.name||e.actor?.slug,src:e.actor?.image}),(0,F.jsx)(`div`,{className:`absolute -right-1 -bottom-1 z-30 flex items-center justify-center rounded-full border border-border-default bg-background p-1 shadow-sm`,children:(0,F.jsx)(W,{action:e})})]}),K=({label:e,item:t,excludedItems:n,toggleItem:r})=>{let i=(0,P.useId)();return(0,F.jsxs)(T,{orientation:`horizontal`,children:[(0,F.jsx)(w,{htmlFor:i,children:e}),(0,F.jsx)(_,{checked:!n.includes(t),id:i,onCheckedChange:e=>r(t,e)})]})},q=({userId:e,excludedEvents:t,excludedResources:n,toggleEventType:r,toggleResourceType:i})=>{let{updateRoute:o}=b(),s=a({path:`/users/`,filterKey:`name`,responseKey:`users`}),[u,p]=(0,P.useState)([]),[m,h]=(0,P.useState)(),[_,y]=(0,P.useState)(!1),[x,S]=(0,P.useState)(!1),C=(0,P.useRef)(0),w=(0,P.useRef)(null),T=(0,P.useRef)(s);T.current=s;let k=(0,P.useCallback)(async(e,t)=>{try{let n=await T.current.loadData(e);t===C.current&&p(n.map(e=>({label:e.name,value:e.id})))}catch{t===C.current&&p([])}finally{t===C.current&&S(!1)}},[]),A=(0,P.useCallback)((e,t=!1)=>{C.current+=1;let n=C.current;S(!0),w.current&&clearTimeout(w.current),t?w.current=setTimeout(()=>void k(e,n),500):k(e,n)},[k]);(0,P.useEffect)(()=>(A(``),()=>{C.current+=1,w.current&&clearTimeout(w.current)}),[A]),(0,P.useEffect)(()=>{let t=!1;if(!e){h(null);return}return T.current.loadInitialValues([e],`id`).then(([e])=>{if(!t&&e){let t={label:e.name,value:e.id};h(t),p(e=>e.some(e=>e.value===t.value)?e:[t,...e])}}).catch(()=>{t||h(null)}),()=>{t=!0}},[e]);let j=()=>{h(null)};return(0,F.jsxs)(c,{align:`center`,gap:`md`,children:[(0,F.jsxs)(N,{children:[(0,F.jsx)(D,{asChild:!0,children:(0,F.jsx)(g,{type:`button`,variant:`outline`,children:`Filter`})}),(0,F.jsx)(O,{align:`end`,className:`z-[9999] w-[220px]`,"data-testid":`history-filters`,children:(0,F.jsxs)(l,{gap:`2xl`,children:[(0,F.jsxs)(l,{gap:`md`,children:[(0,F.jsx)(K,{excludedItems:t,item:`added`,label:`Added`,toggleItem:r}),(0,F.jsx)(K,{excludedItems:t,item:`edited`,label:`Edited`,toggleItem:r}),(0,F.jsx)(K,{excludedItems:t,item:`deleted`,label:`Deleted`,toggleItem:r})]}),(0,F.jsxs)(l,{gap:`md`,children:[(0,F.jsx)(K,{excludedItems:n,item:`post`,label:`Posts`,toggleItem:i}),(0,F.jsx)(K,{excludedItems:n,item:`page`,label:`Pages`,toggleItem:i}),(0,F.jsx)(K,{excludedItems:n,item:`tag`,label:`Tags`,toggleItem:i}),(0,F.jsx)(K,{excludedItems:n,item:`offer,product`,label:`Tiers & offers`,toggleItem:i}),(0,F.jsx)(K,{excludedItems:n,item:`api_key,integration,setting,user,webhook`,label:`Settings & staff`,toggleItem:i})]})]})})]}),(0,F.jsx)(`div`,{className:`w-[200px]`,children:(0,F.jsxs)(c,{className:`${v(`within`)} relative h-(--control-height) overflow-hidden`,gap:`none`,children:[(0,F.jsxs)(N,{open:_,onOpenChange:e=>{y(e),e&&A(``)},children:[(0,F.jsx)(D,{asChild:!0,children:(0,F.jsxs)(`button`,{"aria-label":`Staff`,className:`flex min-w-0 flex-1 items-center justify-between px-3 text-control`,"data-testid":`history-staff-filter`,role:`combobox`,type:`button`,children:[(0,F.jsx)(`span`,{className:m?`truncate pr-8`:`truncate pr-8 text-muted-foreground`,children:m?.label??`Search staff`}),(0,F.jsx)(d,{className:`ml-2 size-4 shrink-0 opacity-50`})]})}),(0,F.jsx)(O,{align:`start`,className:`z-[9999] w-72 p-0`,children:(0,F.jsx)(E,{i18n:{searchPlaceholder:`Search staff`},isLoading:x,isMultiSelect:!1,options:m&&!u.some(e=>e.value===m.value)?[m,...u]:u,shouldFilter:!1,values:m?[m.value]:[],autoCloseOnSelect:!0,onChange:e=>{let t=u.find(t=>t.value===e[0]);t&&(h(t),o(`history/view/${t.value}`))},onClose:()=>y(!1),onSearchChange:e=>A(e,!0)})})]}),m&&(0,F.jsx)(`button`,{"aria-label":`Clear selection`,className:`absolute top-1/2 right-10 z-10 flex size-8 -translate-y-1/2 items-center justify-center text-muted-foreground hover:text-foreground`,type:`button`,onClick:()=>{j(),o(`history/view`)},children:(0,F.jsx)(f,{className:`size-4`})})]})})]})},J=({action:e})=>{let{updateRoute:t}=b(),n=H(e);if(e.resource_type===`security_action`&&e.context?.action_name===`reset_authentication`){let t=typeof e.context.api_keys_rotated==`number`?e.context.api_keys_rotated:null,n=typeof e.context.users_locked==`number`?e.context.users_locked:null,r=[t===null?null:`${s(t)} API ${t===1?`key`:`keys`} rotated`,n===null?null:`${s(n)} ${n===1?`user`:`users`} locked`].filter(Boolean);return(0,F.jsx)(F.Fragment,{children:r.length?r.join(`, `):`Authentication reset`})}else if(n){let{group:e,key:t}=n;return(0,F.jsxs)(F.Fragment,{children:[e.slice(0,1).toUpperCase(),e.slice(1),e!==t&&(0,F.jsxs)(`span`,{children:[` `,(0,F.jsxs)(`code`,{className:`mb-1 bg-white text-grey-800 dark:bg-grey-900 dark:text-white`,children:[`(`,t,`)`]})]})]})}else if(e.resource?.title||e.resource?.name||e.context?.primary_name){let n=B(e);return n?(0,F.jsx)(`a`,{className:`cursor-pointer font-bold`,onClick:e=>{e.preventDefault(),t(n)},children:e.resource?.title||e.resource?.name}):(0,F.jsx)(F.Fragment,{children:e.resource?.title||e.resource?.name||e.context?.primary_name})}else return(0,F.jsx)(`span`,{className:`text-grey-500`,children:`(unknown)`})},Y=e=>{let t=new Intl.DateTimeFormat(`en-US`,{year:`numeric`,month:`2-digit`,day:`2-digit`,hour:`2-digit`,minute:`2-digit`,second:`2-digit`}).formatToParts(e).reduce((e,{type:t,value:n})=>({...e,[t]:n}),{});return`${t.year}-${t.month}-${t.day} ${t.hour}:${t.minute}:${t.second}`},X=200;function Z(){let{userId:e}=o(),{updateRoute:t}=b(),[n,i]=(0,P.useState)([]),[a,c]=(0,P.useState)([`label`]),{data:l,fetchNextPage:u,isFetchingNextPage:d}=z({searchParams:{include:`actor,resource`,limit:X.toString(),filter:[n.length&&`event:-[${n.join(`,`)}]`,a.length&&`resource_type:-[${a.join(`,`)}]`,e&&`actor_id:'${e}'`].filter(Boolean).join(`+`)},getNextPageParams:(e,t)=>({...t,filter:[t.filter,e.actions.length&&`created_at:<'${Y(new Date(e.actions[e.actions.length-1].created_at))}'`].join(`+`)}),placeholderData:r}),f=(0,P.useCallback)(()=>{l?.isEnd||u()},[l?.isEnd,u]),p=(e,t,n)=>{e(e=>n?e.concat(t):e.filter(e=>e!==t))},h=n.length>0||a.length>0||e;return(0,F.jsx)(y,{cancelLabel:``,okLabel:`Close`,scrolling:!0,size:`md`,stickyFooter:!0,stickyHeader:!0,testId:`history-modal`,title:`History`,topRightContent:(0,F.jsx)(q,{excludedEvents:n,excludedResources:a,toggleEventType:(e,t)=>p(i,e,!t),toggleResourceType:(e,t)=>p(c,e,!t),userId:e}),onClose:()=>{t(`history`)},onOk:()=>{t(`history`)},children:(0,F.jsx)(`div`,{className:`relative mt-6`,children:(0,F.jsxs)(C,{children:[l?.actions?l.actions.length>0?(0,F.jsxs)(F.Fragment,{children:[(0,F.jsx)(I,{offset:250,onTrigger:f}),l.actions.map(e=>!e.skip&&(0,F.jsx)(S,{children:(0,F.jsxs)(x,{className:`flex items-center gap-3 py-3`,children:[(0,F.jsx)(G,{action:e}),(0,F.jsxs)(`div`,{className:`min-w-0 grow`,children:[(0,F.jsxs)(`div`,{children:[V(e),U(e)?``:`: `,!U(e)&&(0,F.jsx)(J,{action:e}),e.count?(0,F.jsxs)(F.Fragment,{children:[` `,s(e.count),` times`]}):null,(0,F.jsxs)(`span`,{children:[` — by `,e.actor?.name||e.actor?.slug]})]}),(0,F.jsx)(`div`,{className:`text-sm text-muted-foreground`,children:[new Date(e.created_at).toLocaleDateString(`default`,{year:`numeric`,month:`short`,day:`2-digit`}),new Date(e.created_at).toLocaleTimeString(`default`,{hour:`2-digit`,minute:`2-digit`,second:`2-digit`})].join(` | `)})]})]})},e.id)),d&&(0,F.jsx)(`div`,{className:`flex items-center justify-center p-5`,children:(0,F.jsx)(M,{size:`md`})})]}):(0,F.jsxs)(A,{children:[(0,F.jsx)(k,{children:(0,F.jsx)(m,{})}),h?`No entries match your current filters.`:`No history entries found.`]}):l===void 0?(0,F.jsx)(`div`,{className:`flex items-center justify-center px-5 pt-12 pb-10`,children:(0,F.jsx)(`div`,{className:`flex h-64 items-center justify-center`,children:(0,F.jsx)(M,{size:`lg`})})}):(0,F.jsx)(A,{children:`No entries found.`}),l?.isEnd&&l.actions.length>0&&(0,F.jsx)(`div`,{className:`border-t border-border pt-2 text-sm text-muted-foreground`,children:`End of history log`})]})})})}export{Z as default};
@@ -0,0 +1 @@
1
+ import{o as e}from"./rolldown-runtime-DAXXjFlN.js";import{t}from"./react-Bb3IsNbi.js";import{t as n}from"./jsx-runtime-DX3WBWVO.js";import{r}from"./framework-provider-CFLwK5uS.js";import{x as i}from"./dist-Cb5RSHSg.js";import{t as a}from"./stack-CIfOAAVf.js";import{r as o}from"./shade-app-B3heOAfz-BhQXxNkT.js";import{t as s}from"./input-surface-BdOe4KzO.js";import{o as c,r as l}from"./field-kJYZ2T3C.js";import{n as u,t as d}from"./koenig-loader-DktFM3Uh.js";var f=e(t(),1),p=n(),m=({editor:e,onBlur:t,placeholder:n,nodes:i,emojiPicker:a=!0,darkMode:s=!1,singleParagraph:c=!1,children:l,initialEditorState:u,onChange:d,fileUploader:m,cardConfig:h,registerAPI:g})=>{let _=(0,f.useCallback)(e=>{try{r({error:e,tags:{lexical:!0},contexts:{koenig:{version:window[`@tryghost/koenig-lexical`]?.version}}})}catch(e){console.error(e)}console.error(e)},[]),{setFocusState:v}=o(),y=()=>{t&&t(),v(!1)},b=()=>{v(!0)},x=(0,f.useMemo)(()=>new Proxy({},{get:(t,n)=>e.read()[n]}),[e]),S={DEFAULT_NODES:x.DEFAULT_TRANSFORMERS,BASIC_NODES:x.BASIC_TRANSFORMERS,MINIMAL_NODES:x.MINIMAL_TRANSFORMERS,EMAIL_NODES:x.EMAIL_TRANSFORMERS,EMAIL_EDITOR_NODES:x.EMAIL_TRANSFORMERS},C=i||`DEFAULT_NODES`;return(0,p.jsx)(x.KoenigComposer,{cardConfig:h,darkMode:s,fileUploader:m,initialEditorState:u,nodes:x[C],onError:_,children:(0,p.jsxs)(x.KoenigComposableEditor,{className:`koenig-lexical koenig-lexical-editor-input`,isSnippetsEnabled:!1,markdownTransformers:S[C],placeholderClassName:`koenig-lexical-editor-input-placeholder line-clamp-1`,placeholderText:n,registerAPI:g,singleParagraph:c,onBlur:y,onChange:d,onFocus:b,children:[l(x),a?(0,p.jsx)(x.EmojiPickerPlugin,{}):null]})})},h=({className:e,children:t,initialEditorState:n,onChange:r,inheritFontStyles:i=!0,loadingFallback:a,...s})=>{let{fetchKoenigLexical:c,darkMode:l}=o(),h=(0,f.useMemo)(()=>{if(!c)throw Error(`Koenig Lexical loader is not available`);return d(c)},[c]);return(0,p.jsx)(`div`,{className:e||`w-full`,children:(0,p.jsx)(`div`,{className:`koenig-react-editor w-full ${i?`[&_*]:font-inherit! [&_*]:[font-size:inherit]!`:``}`,children:(0,p.jsx)(u,{name:`editor`,children:(0,p.jsx)(f.Suspense,{fallback:a||(0,p.jsx)(`p`,{className:`koenig-react-editor-loading`,children:`Loading editor...`}),children:(0,p.jsx)(m,{...s,darkMode:l,editor:h,initialEditorState:n,onChange:r,children:t})})})})})},g=({value:e,onChange:t,singleParagraph:n=!0,...r})=>{let i=(0,f.useCallback)(n=>{let r=new DOMParser().parseFromString(n,`text/html`);r.querySelectorAll(`*`).forEach(e=>{e.style.removeProperty(`white-space`),e.getAttribute(`style`)||e.removeAttribute(`style`)}),r.body.innerHTML!==e&&t?.(r.body.innerHTML)},[e,t]);return(0,p.jsx)(h,{...r,singleParagraph:n,children:t=>(0,p.jsx)(t.HtmlOutputPlugin,{html:e,setHtml:i})})},_=({title:e,hideTitle:t,error:n,hint:r,value:o,clearBg:u=!1,className:d=``,containerClassName:f=``,hintClassName:m=``,unstyled:h=!1,..._})=>{let v=h?``:i(s(`within`),`flex min-h-8 items-center py-1.5 md:min-h-[var(--control-height)]`,u?`bg-transparent`:`px-3`,n&&`border-destructive`,e&&!t&&!u&&`mt-2`,d);return(0,p.jsxs)(a,{className:f,gap:`none`,children:[e&&(0,p.jsx)(c,{className:t?`sr-only`:void 0,children:e}),(0,p.jsx)(`div`,{className:v,children:(0,p.jsx)(g,{..._,value:o})}),r&&(0,p.jsx)(l,{className:i(`last:mt-2`,n&&`text-destructive`,m),children:r})]})};export{_ as t};
@@ -0,0 +1 @@
1
+ import{o as e}from"./rolldown-runtime-DAXXjFlN.js";import{t}from"./react-Bb3IsNbi.js";import{t as n}from"./jsx-runtime-DX3WBWVO.js";import{r}from"./framework-provider-CFLwK5uS.js";import{t as i}from"./debounce-pscB46sW.js";var a=e(t(),1),o=n(),s=({generateContent:e,updateContent:t,className:n,height:s,width:c,parentClassName:l,testId:u,addDelay:d=!1})=>{let[f,p]=(0,a.useState)(0),m=[(0,a.useRef)(null),(0,a.useRef)(null)],[h,g]=(0,a.useState)(0);return(0,a.useEffect)(()=>{let t=+(f===0),n=m[t].current;if(n){e(n);let r=()=>{d?setTimeout(()=>{p(t)},500):p(t)};return n.addEventListener(`load`,r),()=>{n.removeEventListener(`load`,r)}}},[e]),(0,a.useEffect)(()=>{let e=m[f].current,t=i(()=>{g(e?.contentWindow?.scrollY||0)},250);return e?.contentWindow?.addEventListener(`scroll`,t),()=>{e?.contentWindow?.removeEventListener(`scroll`,t)}},[f,m]),(0,a.useEffect)(()=>{let e=m[f].current;if(e)try{e.contentWindow?.scrollTo(0,h)}catch(e){r(e)}},[h,f,m]),(0,a.useEffect)(()=>{t&&m.forEach(({current:e})=>{e&&t(e)})},[t]),(0,o.jsxs)(`div`,{className:l,"data-testid":u,children:[(0,o.jsx)(`iframe`,{ref:m[0],className:`${n} ${f===0?`z-20 opacity-100`:`z-10 opacity-0`}`,"data-visible":f===0,frameBorder:`0`,height:s,title:`Buffered Preview 1`,width:c}),(0,o.jsx)(`iframe`,{ref:m[1],className:`${n} ${f===1?`z-20 opacity-100`:`z-10 opacity-0`}`,"data-visible":f===1,frameBorder:`0`,height:s,title:`Buffered Preview 2`,width:c})]})};export{s as t};
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-DAXXjFlN.js";import{t}from"./react-Bb3IsNbi.js";import{t as n}from"./jsx-runtime-DX3WBWVO.js";import{n as r}from"./hooks-CJepWnbB.js";import{c as i,o as a}from"./dist-Cb5RSHSg.js";import{t as o}from"./dropzone-B21Entqz.js";import{Pr as s}from"./index-BOJzlYiz.js";var c=e(t(),1),l=n(),u=c.forwardRef(({className:e,...t},n)=>(0,l.jsx)(`div`,{ref:n,className:i(`relative overflow-hidden rounded-md`,e),"data-slot":`image-upload`,...t}));u.displayName=`ImageUpload`;var d=c.forwardRef(({className:e,variant:t=`filled`,...n},r)=>(0,l.jsx)(o,{ref:r,className:i(`size-full text-foreground`,e),"data-slot":`image-upload-dropzone`,variant:t,...n}));d.displayName=`ImageUploadDropzone`;var f=a(`group relative flex size-full items-center justify-center overflow-hidden rounded-md bg-muted`,{variants:{background:{default:``,checkerboard:`[background-image:repeating-conic-gradient(var(--border-default)_0%_25%,var(--surface-elevated)_0%_50%)] [background-size:16px_16px]`}},defaultVariants:{background:`default`}}),p=c.forwardRef(({background:e,className:t,...n},r)=>(0,l.jsx)(`div`,{ref:r,className:i(f({background:e}),t),"data-slot":`image-upload-preview`,"data-testid":`image-upload-container`,...n}));p.displayName=`ImageUploadPreview`;var m=c.forwardRef(({alt:e=``,className:t,...n},r)=>(0,l.jsx)(`img`,{ref:r,alt:e,className:i(`size-full object-cover`,t),"data-slot":`image-upload-image`,...n}));m.displayName=`ImageUploadImage`;var h=c.forwardRef(({className:e,...t},n)=>(0,l.jsx)(`div`,{ref:n,className:i(`absolute top-2 right-2 flex gap-1 opacity-0 transition-opacity group-focus-within:opacity-100 group-hover:opacity-100 [@media(hover:none)]:opacity-100`,e),"data-slot":`image-upload-actions`,...t}));h.displayName=`ImageUploadActions`;var g=c.forwardRef(({className:e,size:t=`icon`,variant:n=`ghost`,...r},a)=>(0,l.jsx)(s,{ref:a,className:i(`size-8 bg-surface-inverse text-surface-inverse-foreground hover:bg-surface-inverse/90 hover:text-surface-inverse-foreground`,e),"data-slot":`image-upload-action`,size:t,variant:n,...r}));g.displayName=`ImageUploadAction`;var _=r({method:`POST`,path:()=>`/images/upload/`,body:({file:e})=>{let t=new FormData;return t.append(`file`,e),t.append(`purpose`,`image`),t}}),v=e=>e.images[0].url;export{h as a,p as c,g as i,_ as n,d as o,u as r,m as s,v as t};
1
+ import{o as e}from"./rolldown-runtime-DAXXjFlN.js";import{t}from"./react-Bb3IsNbi.js";import{t as n}from"./jsx-runtime-DX3WBWVO.js";import{n as r}from"./hooks-CJepWnbB.js";import{c as i,o as a}from"./dist-Cb5RSHSg.js";import{t as o}from"./button-BshWPHvn.js";import{t as s}from"./dropzone-B6KWzsrb.js";var c=e(t(),1),l=n(),u=c.forwardRef(({className:e,...t},n)=>(0,l.jsx)(`div`,{ref:n,className:i(`relative overflow-hidden rounded-md`,e),"data-slot":`image-upload`,...t}));u.displayName=`ImageUpload`;var d=c.forwardRef(({className:e,variant:t=`filled`,...n},r)=>(0,l.jsx)(s,{ref:r,className:i(`size-full text-foreground`,e),"data-slot":`image-upload-dropzone`,variant:t,...n}));d.displayName=`ImageUploadDropzone`;var f=a(`group relative flex size-full items-center justify-center overflow-hidden rounded-md bg-muted`,{variants:{background:{default:``,checkerboard:`[background-image:repeating-conic-gradient(var(--border-default)_0%_25%,var(--surface-elevated)_0%_50%)] [background-size:16px_16px]`}},defaultVariants:{background:`default`}}),p=c.forwardRef(({background:e,className:t,...n},r)=>(0,l.jsx)(`div`,{ref:r,className:i(f({background:e}),t),"data-slot":`image-upload-preview`,"data-testid":`image-upload-container`,...n}));p.displayName=`ImageUploadPreview`;var m=c.forwardRef(({alt:e=``,className:t,...n},r)=>(0,l.jsx)(`img`,{ref:r,alt:e,className:i(`size-full object-cover`,t),"data-slot":`image-upload-image`,...n}));m.displayName=`ImageUploadImage`;var h=c.forwardRef(({className:e,...t},n)=>(0,l.jsx)(`div`,{ref:n,className:i(`absolute top-2 right-2 flex gap-1 opacity-0 transition-opacity group-focus-within:opacity-100 group-hover:opacity-100 [@media(hover:none)]:opacity-100`,e),"data-slot":`image-upload-actions`,...t}));h.displayName=`ImageUploadActions`;var g=c.forwardRef(({className:e,size:t=`icon`,variant:n=`ghost`,...r},a)=>(0,l.jsx)(o,{ref:a,className:i(`size-8 bg-surface-inverse text-surface-inverse-foreground hover:bg-surface-inverse/90 hover:text-surface-inverse-foreground`,e),"data-slot":`image-upload-action`,size:t,variant:n,...r}));g.displayName=`ImageUploadAction`;var _=r({method:`POST`,path:()=>`/images/upload/`,body:({file:e})=>{let t=new FormData;return t.append(`file`,e),t.append(`purpose`,`image`),t}}),v=e=>e.images[0].url;export{h as a,p as c,g as i,_ as n,d as o,u as r,m as s,v as t};