ghost 6.55.0 → 6.56.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 (280) hide show
  1. package/components/tryghost-custom-field-types-0.0.0.tgz +0 -0
  2. package/components/tryghost-kg-default-cards-10.3.3.tgz +0 -0
  3. package/components/tryghost-kg-default-nodes-2.1.4.tgz +0 -0
  4. package/components/tryghost-kg-default-transforms-1.3.3.tgz +0 -0
  5. package/components/tryghost-kg-html-to-lexical-1.3.3.tgz +0 -0
  6. package/components/tryghost-kg-lexical-html-renderer-1.4.3.tgz +0 -0
  7. package/components/tryghost-nql-string-0.0.0.tgz +0 -0
  8. package/core/built/admin/assets/{Combination-CJG7Flp-.js → Combination-BCm9FL4o.js} +1 -1
  9. package/core/built/admin/assets/{PolarAngleAxis-BGjf7sBu.js → PolarAngleAxis-C4qtHy1B.js} +1 -1
  10. package/core/built/admin/assets/{RadialBarChart-zeFf9mBz.js → RadialBarChart-Bh09Stsj.js} +1 -1
  11. package/core/built/admin/assets/{account-migration-sjHLx5dy.js → account-migration-D3O_yVck.js} +1 -1
  12. package/core/built/admin/assets/activitypub/{account-migration-DoYXtnZ8.js → account-migration-D8FbP-Z-.js} +7 -7
  13. package/core/built/admin/assets/activitypub/activitypub.js +6 -6
  14. package/core/built/admin/assets/activitypub/{avatar-B3DEDB1l.js → avatar-11EA1VSs.js} +2 -2
  15. package/core/built/admin/assets/activitypub/{avatar-flipboard-Cqrg0XMx.js → avatar-flipboard-jfbLG-xe.js} +2 -2
  16. package/core/built/admin/assets/activitypub/{bluesky-sharing-Bxeh6MKW.js → bluesky-sharing-f1jTQe2P.js} +16 -16
  17. package/core/built/admin/assets/activitypub/{content-formatters-BpQARh28.js → content-formatters-nmTOPY9M.js} +3 -3
  18. package/core/built/admin/assets/activitypub/{copy-D9UWIAan.js → copy-BCwo9ep3.js} +2 -2
  19. package/core/built/admin/assets/activitypub/{dist-D8sFfdpC.js → dist-BEfX-0aW.js} +12 -12
  20. package/core/built/admin/assets/activitypub/{domain-CWueFW6q.js → domain-AaDlZlrA.js} +9 -9
  21. package/core/built/admin/assets/activitypub/{edit-profile-BGxPU7N5.js → edit-profile-DPi8Tl5M.js} +945 -945
  22. package/core/built/admin/assets/activitypub/{explore-DBK-u0Ch.js → explore-CxTzjILQ.js} +8 -8
  23. package/core/built/admin/assets/activitypub/{feed-Bcir5RQZ.js → feed-DPv5x2MX.js} +33 -33
  24. package/core/built/admin/assets/activitypub/{field-BV-CIT3d.js → field-DbgA8lat.js} +3 -3
  25. package/core/built/admin/assets/activitypub/{hash-BC9Q0N4c.js → hash-BWuZoYkA.js} +2 -2
  26. package/core/built/admin/assets/activitypub/{inbox-DQ4ZnC1m.js → inbox-35VDQ2K2.js} +2 -2
  27. package/core/built/admin/assets/activitypub/{inbox-yC0nfvzl.js → inbox-DSrF_i1O.js} +85 -85
  28. package/core/built/admin/assets/activitypub/{label-DTRS9TDk.js → label-CPjFBbo7.js} +3 -3
  29. package/core/built/admin/assets/activitypub/layout-CTgrezN7.js +1 -0
  30. package/core/built/admin/assets/activitypub/{moderation-Dwl9t0pb.js → moderation-BkDC1XVZ.js} +11 -11
  31. package/core/built/admin/assets/activitypub/{note-B-zKsZ7r.js → note-xEyH4xT-.js} +7 -7
  32. package/core/built/admin/assets/activitypub/{notifications-DjJZD54t.js → notifications-DClaL3ui.js} +9 -9
  33. package/core/built/admin/assets/activitypub/{preferences-CoU8vs6d.js → preferences-DpnOa-4Z.js} +20 -20
  34. package/core/built/admin/assets/activitypub/{profile-BAsaJekx.js → profile-Dvi9mz-6.js} +237 -237
  35. package/core/built/admin/assets/activitypub/{reply-CpdMeAO5.js → reply-Cs9ySd6Z.js} +2 -2
  36. package/core/built/admin/assets/activitypub/{routes-CLH3OVTP.js → routes-DFBeTnfn.js} +1139 -1150
  37. package/core/built/admin/assets/activitypub/{separator-BI1FLsYM.js → separator-C5u_VjzY.js} +3 -3
  38. package/core/built/admin/assets/activitypub/{settings-DA6pNJ-Q.js → settings-CV2fFu6D.js} +13 -13
  39. package/core/built/admin/assets/activitypub/{site-CQD42Pw5.js → site-_TgDd_EM.js} +81 -81
  40. package/core/built/admin/assets/activitypub/{step-1-DIDg4aHb.js → step-1-BfnNL2oF.js} +5 -5
  41. package/core/built/admin/assets/activitypub/{step-2-BfGe8BYt.js → step-2-DLndZkO-.js} +6 -6
  42. package/core/built/admin/assets/activitypub/{step-3-mE9spAqw.js → step-3-A-PZTtRE.js} +10 -10
  43. package/core/built/admin/assets/activitypub/{tabs-Cg0saow1.js → tabs-BUbz7tea.js} +317 -315
  44. package/core/built/admin/assets/activitypub/{topic-filter-DLHBZT93.js → topic-filter-BdX_xYYT.js} +3 -3
  45. package/core/built/admin/assets/activitypub/{use-activity-pub-queries-VzbN99u_.js → use-activity-pub-queries-EwuRemHh.js} +2 -2
  46. package/core/built/admin/assets/activitypub/{use-navigate-with-base-path-CAwXTmqH.js → use-navigate-with-base-path-cy4ACBc4.js} +92 -90
  47. package/core/built/admin/assets/activitypub/{use-reply-chain-data-Br4aOWOh.js → use-reply-chain-data-CyFcGfan.js} +5 -5
  48. package/core/built/admin/assets/activitypub/{x-C8tAnXly.js → x-7zk8mV2p.js} +2 -2
  49. package/core/built/admin/assets/{audience-DjEWNhp3.js → audience-CkBb2LlO.js} +1 -1
  50. package/core/built/admin/assets/{automated-emails-DRy7qY-J.js → automated-emails-6t2bIRWf.js} +1 -1
  51. package/core/built/admin/assets/{automations-Bx3VcFIL.js → automations-cMllU545.js} +1 -1
  52. package/core/built/admin/assets/{bluesky-sharing-ClMd0-Ft.js → bluesky-sharing-DPGpyD-G.js} +1 -1
  53. package/core/built/admin/assets/{box-BWbhXh21.js → box-By_EgGtm.js} +1 -1
  54. package/core/built/admin/assets/{breadcrumb-BD0U2ygg.js → breadcrumb-DIfcF5ow.js} +1 -1
  55. package/core/built/admin/assets/build-CsiH26uS.js +1 -0
  56. package/core/built/admin/assets/{card-DGoDJzrn.js → card-aUHX0hyR.js} +1 -1
  57. package/core/built/admin/assets/{chart-BuRT2Y6p.js → chart-BnXyfH11.js} +1 -1
  58. package/core/built/admin/assets/{chart-helpers-fjQKRVyY.js → chart-helpers-DV0FkdcD.js} +1 -1
  59. package/core/built/admin/assets/{checkbox-CWa28lgO.js → checkbox-BIl077a0.js} +1 -1
  60. package/core/built/admin/assets/{chunk.481.6c7395a49484bb4583aa.js → chunk.332.05991a101d67f732dec3.js} +43 -42
  61. package/core/built/admin/assets/chunk.524.87b52f4fada529df2c4c.js +25 -0
  62. package/core/built/admin/assets/chunk.582.340bcca873e806cbd4bb.js +27 -0
  63. package/core/built/admin/assets/{code-editor-view-CCr0rBWS.js → code-editor-view-C0aWNwdl.js} +1 -1
  64. package/core/built/admin/assets/comments-qwhIjH3c.js +1 -0
  65. package/core/built/admin/assets/{container-BYz2Ed39.js → container-LiZf3XdY.js} +1 -1
  66. package/core/built/admin/assets/{data-list-16rkJYYi.js → data-list-CupF7bjM.js} +1 -1
  67. package/core/built/admin/assets/{date-range-select-BFp58EMk.js → date-range-select-dXc-GsVe.js} +1 -1
  68. package/core/built/admin/assets/{disabled-sources-indicator-CUxMfiPa.js → disabled-sources-indicator-DYAXW-6V.js} +1 -1
  69. package/core/built/admin/assets/dist-BUKmD51u.js +1 -0
  70. package/core/built/admin/assets/{dist-2Tnz2Yfq.js → dist-CNlMj7ML.js} +1 -1
  71. package/core/built/admin/assets/{dist-DGzPJ_bO.js → dist-Cb5RSHSg.js} +1 -1
  72. package/core/built/admin/assets/{dist-P_ohUlTi.js → dist-CqO2lWS0.js} +1 -1
  73. package/core/built/admin/assets/domain-B5ogXUBa.js +1 -0
  74. package/core/built/admin/assets/{dropzone-DlK-K2DQ.js → dropzone-BnFG7dDP.js} +1 -1
  75. package/core/built/admin/assets/{edit-profile-BKT-REJw.js → edit-profile-B07jCZy9.js} +1 -1
  76. package/core/built/admin/assets/editor-DDYSOXGN.js +8 -0
  77. package/core/built/admin/assets/{empty-indicator-oX1u1Pkn.js → empty-indicator-WB1WgT9h.js} +1 -1
  78. package/core/built/admin/assets/{explore-ClUpJZOp.js → explore-Ca1y8HW_.js} +1 -1
  79. package/core/built/admin/assets/{feed-DF92dUMP.js → feed-x4iFMBP4.js} +1 -1
  80. package/core/built/admin/assets/{field-Do7lieBA.js → field-ChCAabZg.js} +1 -1
  81. package/core/built/admin/assets/filter-sources-LdtH1e-T.js +1 -0
  82. package/core/built/admin/assets/filters-CLehPo_D.js +1 -0
  83. package/core/built/admin/assets/filters-CjVKRP8U.js +1 -0
  84. package/core/built/admin/assets/{ghost-c4057474943effc568c5659ccc4909d7.js → ghost-7f01131115186d1af84ead76e79646dd.js} +149 -129
  85. package/core/built/admin/assets/{ghost-a9c788f6f0b1ea6cf0f14ca4b13f4496.css → ghost-d38c30b866e59f2e06a357b5eb844fe5.css} +1 -1
  86. package/core/built/admin/assets/{ghost-dark-db36d795d21c61426837df40af270966.css → ghost-dark-1bffd5099ba7a749303133efacf8480b.css} +1 -1
  87. package/core/built/admin/assets/{gift-link-modal-f9VIMNDv.js → gift-link-modal-Buqh2vXh.js} +1 -1
  88. package/core/built/admin/assets/{growth-B3I6gNLm.js → growth-DajOBdN0.js} +1 -1
  89. package/core/built/admin/assets/{growth-CVw1My4S.js → growth-Dy2UOSay.js} +2 -2
  90. package/core/built/admin/assets/{inbox-CFBSu4Ed.js → inbox-BUOLDoji.js} +12 -12
  91. package/core/built/admin/assets/index-08n05-rc.js +67 -0
  92. package/core/built/admin/assets/index-DgUzgFvS.css +1 -0
  93. package/core/built/admin/assets/{inline-EMAm3okk.js → inline-Cw-gigDW.js} +1 -1
  94. package/core/built/admin/assets/input-group-uSK3XT7b.js +1 -0
  95. package/core/built/admin/assets/{input-surface-BpAjZXY5.js → input-surface-BdOe4KzO.js} +1 -1
  96. package/core/built/admin/assets/koenig-lexical/koenig-lexical.js +9535 -9527
  97. package/core/built/admin/assets/koenig-lexical/koenig-lexical.umd.js +124 -124
  98. package/core/built/admin/assets/{koenig-lexical-f8vHRYvz.js → koenig-lexical-BFc4yFed.js} +86 -86
  99. package/core/built/admin/assets/{kpi-card-DSap9rAy.js → kpi-card-BN-E6WYX.js} +1 -1
  100. package/core/built/admin/assets/{kpi-card-DU0rn9Cj.js → kpi-card-CCt-qeWD.js} +1 -1
  101. package/core/built/admin/assets/{kpi-helpers-Dz33AV6h.js → kpi-helpers-DlxTbTs4.js} +1 -1
  102. package/core/built/admin/assets/{kpi-tabs-BtTTrKvJ.js → kpi-tabs-BlcUttpn.js} +1 -1
  103. package/core/built/admin/assets/{label-DS8Mi6G5.js → label-AVrxwmsz.js} +1 -1
  104. package/core/built/admin/assets/{label-picker-1DvSuLA1.js → label-picker-DVnpu_IF.js} +1 -1
  105. package/core/built/admin/assets/labels-DAIqKed7.js +1 -0
  106. package/core/built/admin/assets/layout-B0YLh7R9.js +1 -0
  107. package/core/built/admin/assets/link-helpers-D9LsDOkG.js +1 -0
  108. package/core/built/admin/assets/{list-page-B6ANtzkd.js → list-page-CdsnQR9N.js} +1 -1
  109. package/core/built/admin/assets/member-custom-fields-C8NpZYza.js +1 -0
  110. package/core/built/admin/assets/member-detail-CIVAdKXf.js +1 -0
  111. package/core/built/admin/assets/{members-CQpVFJu4.js → members-oLPiSkXD.js} +2 -2
  112. package/core/built/admin/assets/modals-CB7v-k3T.js +31 -0
  113. package/core/built/admin/assets/{moderation-DySbgyUS.js → moderation-CQ3urTFE.js} +1 -1
  114. package/core/built/admin/assets/newsletter-rbeDX9Wk.js +1 -0
  115. package/core/built/admin/assets/newsletters-vt3Ni1Ov.js +1 -0
  116. package/core/built/admin/assets/{note-C8kxrz6w.js → note-Dk877BTv.js} +1 -1
  117. package/core/built/admin/assets/{notifications-CgtSfX7t.js → notifications-CPlLjPxO.js} +1 -1
  118. package/core/built/admin/assets/{onboarding-route-4qtziA9d.js → onboarding-route-DdStOtjy.js} +1 -1
  119. package/core/built/admin/assets/{overview-Bf2sbznq.js → overview--4V-kx9c.js} +1 -1
  120. package/core/built/admin/assets/overview-DSLv30oz.js +1 -0
  121. package/core/built/admin/assets/{page-header-B3Wb9Jqv.js → page-header-pp4dWmOS.js} +1 -1
  122. package/core/built/admin/assets/{post-analytics-We-ko5Cb.js → post-analytics-BMJrI81R.js} +1 -1
  123. package/core/built/admin/assets/post-analytics-header-pU2m9ZuV.js +1 -0
  124. package/core/built/admin/assets/{post-analytics-provider-B6UynTGb.js → post-analytics-provider-Btml5vJI.js} +1 -1
  125. package/core/built/admin/assets/{post-share-modal-DFfO93_0.js → post-share-modal-AcUZkbfL.js} +1 -1
  126. package/core/built/admin/assets/preferences-Ru4CRPHC.js +5 -0
  127. package/core/built/admin/assets/profile-BNb1oj7D.js +1 -0
  128. package/core/built/admin/assets/{router-provider-C1R4AZ2o.js → router-provider-BmEZf6c6.js} +1 -1
  129. package/core/built/admin/assets/select-B0HteHrp.js +1 -0
  130. package/core/built/admin/assets/settings-B1C9Q3wo.js +4 -0
  131. package/core/built/admin/assets/{settings-WXNeWyU1.js → settings-BGgk7oCI.js} +1 -1
  132. package/core/built/admin/assets/{shade-app-B3heOAfz-CGXQwWeO.js → shade-app-B3heOAfz-BhQXxNkT.js} +1 -1
  133. package/core/built/admin/assets/{share-modal-DsgW3wbg.js → share-modal-BeuydaBf.js} +1 -1
  134. package/core/built/admin/assets/social-urls-DA2lXrhW.js +8 -0
  135. package/core/built/admin/assets/{sort-button-Bb_FCl7e.js → sort-button-Df4t2AL8.js} +1 -1
  136. package/core/built/admin/assets/{source-icon-BeaRxUn9.js → source-icon-ajoaKb41.js} +1 -1
  137. package/core/built/admin/assets/{stack-xiN0eQ6Z.js → stack-CIfOAAVf.js} +1 -1
  138. package/core/built/admin/assets/{stats-Bjj_kmJ1.js → stats-C_lfxZAw.js} +1 -1
  139. package/core/built/admin/assets/{stats-view-BxPbW6K1.js → stats-view-Cxot1iD8.js} +1 -1
  140. package/core/built/admin/assets/{step-1-B1e3-1F8.js → step-1-ogAA4lDr.js} +1 -1
  141. package/core/built/admin/assets/{step-2-C5WaeBJo.js → step-2-C5Xini-7.js} +1 -1
  142. package/core/built/admin/assets/{step-3-B46iVPwu.js → step-3-CZv1FV81.js} +2 -2
  143. package/core/built/admin/assets/{switch-z5Y6Uzt6.js → switch-CyQcwMAv.js} +1 -1
  144. package/core/built/admin/assets/{table-CB-4_HBJ.js → table-DFj1wiYv.js} +1 -1
  145. package/core/built/admin/assets/{tabs-CCEgKYzq.js → tabs-D4y1gqUd.js} +1 -1
  146. package/core/built/admin/assets/{tags-Cg2VJGmG.js → tags-Dmft-Y4O.js} +1 -1
  147. package/core/built/admin/assets/{text-DwtjwGkh.js → text-DU9Hv33_.js} +1 -1
  148. package/core/built/admin/assets/textarea-d9qEkMOP.js +1 -0
  149. package/core/built/admin/assets/{toggle-group-b3IlxvhV.js → toggle-group-R2QMFvXW.js} +1 -1
  150. package/core/built/admin/assets/{topic-filter-DAFT87tQ.js → topic-filter-DGDxDalo.js} +1 -1
  151. package/core/built/admin/assets/{use-analytics-data-S0FTd43s.js → use-analytics-data-C76v4LIp.js} +1 -1
  152. package/core/built/admin/assets/use-filter-params-WrdhAISv.js +1 -0
  153. package/core/built/admin/assets/{use-growth-stats-CIaiHOVb.js → use-growth-stats-aNXJOmQr.js} +1 -1
  154. package/core/built/admin/assets/{use-post-referrers-Cq2vBPrA.js → use-post-referrers-CG0SZioj.js} +1 -1
  155. package/core/built/admin/assets/{use-reply-chain-data-DBDRtGu-.js → use-reply-chain-data-RLdPKRmS.js} +1 -1
  156. package/core/built/admin/assets/{use-simple-pagination-CjYNxdwe.js → use-simple-pagination-DgcF69KI.js} +1 -1
  157. package/core/built/admin/assets/{use-tinybird-query-falHAtuK.js → use-tinybird-query-C1R_Kbmy.js} +1 -1
  158. package/core/built/admin/assets/{use-tinybird-token-D7-8ND1y.js → use-tinybird-token-C9fPjVM_.js} +1 -1
  159. package/core/built/admin/assets/{virtual-list-CvnC9zF2.js → virtual-list-BmTUzeoF.js} +1 -1
  160. package/core/built/admin/assets/{web-B_5GZRvH.js → web-BqW0b0_C.js} +1 -1
  161. package/core/built/admin/assets/web-Cy5GKMWM.js +2 -0
  162. package/core/built/admin/index.html +16 -16
  163. package/core/frontend/services/data/fetch-data.js +10 -5
  164. package/core/frontend/services/routing/api-adapter.js +115 -0
  165. package/core/frontend/services/routing/api-adapter.ts +157 -0
  166. package/core/frontend/services/routing/collection-router.js +5 -3
  167. package/core/frontend/services/routing/controllers/index.js +1 -1
  168. package/core/frontend/services/routing/controllers/rss.js +26 -31
  169. package/core/frontend/services/routing/controllers/rss.ts +66 -0
  170. package/core/frontend/services/routing/controllers/static.js +8 -7
  171. package/core/frontend/services/routing/parent-router.js +17 -4
  172. package/core/frontend/services/routing/permalink-adapter.js +26 -0
  173. package/core/frontend/services/routing/permalink-adapter.ts +23 -0
  174. package/core/frontend/services/routing/registry.js +59 -33
  175. package/core/frontend/services/routing/router-manager.js +9 -13
  176. package/core/frontend/services/routing/static-routes-router.js +4 -4
  177. package/core/frontend/services/routing/taxonomy-router.js +6 -2
  178. package/core/server/data/migrations/versions/6.56/2026-08-03-19-27-51-add-automation-run-step-id-to-automated-email-recipients.js +8 -0
  179. package/core/server/data/migrations/versions/6.56/2026-08-04-14-42-39-restrict-notification-add-permission-to-administrators.js +12 -0
  180. package/core/server/data/schema/fixtures/fixtures.json +2 -2
  181. package/core/server/data/schema/schema.js +1 -0
  182. package/core/server/models/post.js +10 -1
  183. package/core/server/services/automations/automations-repository.ts +3 -1
  184. package/core/server/services/automations/database-automations-repository.js +33 -14
  185. package/core/server/services/automations/database-automations-repository.ts +41 -15
  186. package/core/server/services/automations/get-scheduler-idempotency-key.js +13 -0
  187. package/core/server/services/automations/get-scheduler-idempotency-key.ts +8 -0
  188. package/core/server/services/automations/poll.js +3 -1
  189. package/core/server/services/automations/poll.ts +4 -1
  190. package/core/server/services/automations/service.js +5 -1
  191. package/core/server/services/automations/service.ts +5 -1
  192. package/core/server/services/gift-links/CONTEXT.md +9 -0
  193. package/core/server/services/gifts/CONTEXT.md +55 -0
  194. package/core/server/services/gifts/README.md +28 -0
  195. package/core/server/services/gifts/gift-bookshelf-repository.js +65 -45
  196. package/core/server/services/gifts/gift-bookshelf-repository.ts +203 -74
  197. package/core/server/services/gifts/gift-checkout-adapter.js +59 -0
  198. package/core/server/services/gifts/gift-checkout-offer.js +74 -0
  199. package/core/server/services/gifts/gift-checkout-offer.ts +127 -0
  200. package/core/server/services/gifts/gift-codec.js +63 -0
  201. package/core/server/services/gifts/gift-codec.ts +62 -0
  202. package/core/server/services/gifts/gift-controller.js +6 -31
  203. package/core/server/services/gifts/gift-controller.ts +6 -69
  204. package/core/server/services/gifts/gift-email-service.ts +3 -2
  205. package/core/server/services/gifts/gift-schema.js +34 -0
  206. package/core/server/services/gifts/gift-schema.ts +39 -0
  207. package/core/server/services/gifts/gift-service-wrapper.js +13 -11
  208. package/core/server/services/gifts/gift-service.js +265 -52
  209. package/core/server/services/gifts/gift-service.ts +431 -97
  210. package/core/server/services/gifts/gift.ts +16 -39
  211. package/core/server/services/link-tracking/link-click-repository.js +6 -1
  212. package/core/server/services/link-tracking/link-click-tracking-service.js +12 -3
  213. package/core/server/services/member-welcome-emails/member-welcome-email-renderer.js +4 -3
  214. package/core/server/services/member-welcome-emails/service.js +7 -3
  215. package/core/server/services/members/api.js +1 -2
  216. package/core/server/services/members/import-export/import/importer.ts +3 -2
  217. package/core/server/services/members/import-export/index.js +10 -2
  218. package/core/server/services/members/import-export/index.ts +14 -4
  219. package/core/server/services/members/members-api/controllers/router-controller.js +38 -36
  220. package/core/server/services/members/members-api/members-api.js +13 -7
  221. package/core/server/services/members/members-api/repositories/event-repository.js +4 -94
  222. package/core/server/services/members/members-api/services/member-bread-service.js +3 -3
  223. package/core/server/services/members/members-api/services/payments-service.js +6 -68
  224. package/core/server/services/members-custom-fields/schema.js +8 -1
  225. package/core/server/services/members-custom-fields/schema.ts +8 -0
  226. package/core/server/services/members-custom-fields/values-service.js +118 -2
  227. package/core/server/services/members-custom-fields/values-service.ts +134 -4
  228. package/core/server/services/oembed/oembed-service.js +44 -3
  229. package/core/server/services/posts/posts-service.js +11 -0
  230. package/core/server/services/route-settings/dynamic-routing-service.js +1 -3
  231. package/core/server/services/route-settings/route-settings-parser.js +25 -25
  232. package/core/server/services/route-settings/route-settings-parser.ts +27 -27
  233. package/core/server/services/route-settings/validation-errors.js +68 -4
  234. package/core/server/services/route-settings/validation-errors.ts +79 -4
  235. package/core/server/services/stats/posts-stats-service.js +27 -23
  236. package/core/server/services/stripe/services/webhook/charge-refunded-event-service.js +1 -1
  237. package/core/server/services/stripe/services/webhook/checkout-session-event-service.js +16 -4
  238. package/core/server/services/stripe/stripe-api.js +10 -0
  239. package/core/server/web/gift-preview/controller.js +10 -25
  240. package/core/shared/labs.js +2 -2
  241. package/package.json +10 -9
  242. package/pnpm-lock.yaml +28 -18
  243. package/pnpm-workspace.yaml +5 -4
  244. package/components/tryghost-kg-default-nodes-2.1.3.tgz +0 -0
  245. package/core/built/admin/assets/activitypub/layout-qx-bUL1k.js +0 -1
  246. package/core/built/admin/assets/chunk.524.cffd399783a519e404a9.js +0 -25
  247. package/core/built/admin/assets/chunk.582.eebf0d0b2d202bb746a5.js +0 -27
  248. package/core/built/admin/assets/comments-DyUSMUdj.js +0 -1
  249. package/core/built/admin/assets/dist-CjY-f5Z1.js +0 -1
  250. package/core/built/admin/assets/domain-C0bV2UV8.js +0 -1
  251. package/core/built/admin/assets/editor-Dp865O-4.js +0 -8
  252. package/core/built/admin/assets/filter-sources-BV2rnpfA.js +0 -1
  253. package/core/built/admin/assets/filters-CUXJ2Nm9.js +0 -1
  254. package/core/built/admin/assets/filters-DfbIWc_l.js +0 -1
  255. package/core/built/admin/assets/index-9Cw8z3rA.css +0 -1
  256. package/core/built/admin/assets/index-BGG7NckO.js +0 -67
  257. package/core/built/admin/assets/input-group-BSgG_lVw.js +0 -1
  258. package/core/built/admin/assets/labels-CDSUt4J_.js +0 -1
  259. package/core/built/admin/assets/layout-yQEi2qDM.js +0 -1
  260. package/core/built/admin/assets/link-helpers-7EYqvvHs.js +0 -1
  261. package/core/built/admin/assets/member-custom-fields-yOMHyAg9.js +0 -1
  262. package/core/built/admin/assets/member-detail-BAq7gDaa.js +0 -1
  263. package/core/built/admin/assets/modals-ReORvWnu.js +0 -31
  264. package/core/built/admin/assets/newsletter-CJQvtHqN.js +0 -1
  265. package/core/built/admin/assets/newsletters-B3QQXfGT.js +0 -1
  266. package/core/built/admin/assets/nql-BsgFMd93.js +0 -1
  267. package/core/built/admin/assets/overview-CBfePxcr.js +0 -1
  268. package/core/built/admin/assets/post-analytics-header-Bmc9su6q.js +0 -1
  269. package/core/built/admin/assets/preferences-DJPfHEGu.js +0 -5
  270. package/core/built/admin/assets/profile-DqBQp-gT.js +0 -1
  271. package/core/built/admin/assets/select-C5_xEt5b.js +0 -1
  272. package/core/built/admin/assets/settings-BwiVIXau.js +0 -4
  273. package/core/built/admin/assets/social-urls-BQPFEk1_.js +0 -8
  274. package/core/built/admin/assets/textarea-Bjccvh_E.js +0 -1
  275. package/core/built/admin/assets/use-filter-params-Gpoq2E1L.js +0 -1
  276. package/core/built/admin/assets/web-jFYWCKDn.js +0 -2
  277. package/core/server/services/gifts/gift-repository.js +0 -2
  278. package/core/server/services/gifts/gift-repository.ts +0 -29
  279. package/core/server/services/route-settings/activation-bridge.js +0 -174
  280. package/core/server/services/route-settings/activation-bridge.ts +0 -250
@@ -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-CmtnPXIT.js";import{i,n as a,t as o}from"./hooks-CixO01lL.js";import{t as s}from"./build-CsiH26uS.js";import{g as c,t as l}from"./chunk-KS7C4IRE-DG9HTHQ3.js";import{c as u,f as d,m as f}from"./dist-Cb5RSHSg.js";import{t as p}from"./box-By_EgGtm.js";import{t as m}from"./container-LiZf3XdY.js";import{i as h,n as g,r as _,t as v}from"./tabs-D4y1gqUd.js";import{n as y,r as b}from"./filters-CLehPo_D.js";import{t as x}from"./checkbox-BIl077a0.js";import{t as S}from"./empty-indicator-WB1WgT9h.js";import{t as C}from"./label-AVrxwmsz.js";import{$i as w,$n as T,Ar as E,Bo as D,Cr as O,Do as ee,Dr as te,Er as k,Fn as ne,Fo as re,Ga as A,In as ie,Io as ae,Ir as j,Ja as oe,Jn as se,Jo as ce,Jr as le,Ka as ue,Lo as de,Ma as M,Mo as fe,O as pe,Or as N,Pi as me,Qi as he,Qn as ge,Qr as P,Rn as _e,Ro as ve,Sa as ye,Sr as be,To as xe,Vr as F,Xr as Se,Ya as Ce,Zn as we,br as I,ds as Te,es as Ee,ii as De,j as Oe,ja as ke,jo as L,ki as Ae,kn as je,kr as R,m as Me,rr as z,rs as Ne,wr as B,xo as Pe,xr as V,zn as Fe}from"./index-08n05-rc.js";import{t as H}from"./page-header-pp4dWmOS.js";import{S as Ie,T as Le,_ as Re,a as ze,b as Be,c as Ve,f as U,g as He,h as Ue,i as We,l as Ge,m as Ke,n as qe,o as Je,r as Ye,s as Xe,t as Ze,u as Qe,v as $e,w as et,x as tt,y as nt}from"./filters-CjVKRP8U.js";import{t as W}from"./list-page-CdsnQR9N.js";import{n as rt,r as it}from"./filter-sources-LdtH1e-T.js";import{i as at,n as ot,r as st,t as ct}from"./virtual-list-BmTUzeoF.js";import{t as lt}from"./get-site-timezone-HgL0jI_F.js";var G=e(t(),1),K=Ze({status:{operators:[`is`],ui:{label:`Status`,type:`select`,searchable:!1,hideOperatorSelect:!0},options:[{value:`published`,label:`Published`},{value:`hidden`,label:`Hidden`}],codec:U()},created_at:et({operators:He,ui:{label:`Date`,defaultOperator:$e,type:`date`},codec:Qe()}),body:{operators:[`contains`,`does-not-contain`],parseKeys:[`html`],ui:{label:`Text`,type:`text`,placeholder:`Search comment text...`,defaultOperator:`contains`,className:`w-full max-w-48`,popoverContentClassName:`w-full max-w-48`},codec:Ke({field:`html`})},post:{operators:[`is`,`is-not`],parseKeys:[`post_id`],ui:{label:`Post`,type:`select`,searchable:!0,className:`w-full max-w-80`,popoverContentClassName:`w-full max-w-[calc(100vw-32px)] max-w-80`},codec:U({field:`post_id`})},author:{operators:[`is`,`is-not`],parseKeys:[`member_id`],ui:{label:`Author`,type:`select`,searchable:!0,className:`w-80`,popoverContentClassName:`w-80`},codec:U({field:`member_id`})},reported:{operators:[`is`],parseKeys:[`count.reports`],ui:{label:`Reported`,type:`select`,searchable:!1,hideOperatorSelect:!0},options:[{value:`true`,label:`Yes`},{value:`false`,label:`No`}],codec:{parse(e,t){let n=nt(e);return!n||n.field!==`count.reports`?null:n.operator===`$eq`&&n.value===0?{field:t.key,operator:`is`,values:[`false`]}:n.operator===`$gt`&&n.value===0?{field:t.key,operator:`is`,values:[`true`]}:null},serialize(e){let t=e.values[0];return e.operator===`is`?t===`true`?[`count.reports:>0`]:t===`false`?[`count.reports:0`]:null:null}}}}),ut=[`author`,`post`,`body`,`status`,`reported`,`created_at`],dt={...Re,...tt};function ft(e){switch(e){case`author`:return G.createElement(me,{className:`size-4`});case`post`:return G.createElement(fe,{className:`size-4`});case`body`:return G.createElement(ue,{className:`size-4`});case`status`:return G.createElement(ce,{className:`size-4`});case`reported`:return G.createElement(L,{className:`size-4`});case`created_at`:return G.createElement(Te,{className:`size-4`});default:return}}function pt({postValueSource:e,memberValueSource:t,siteTimezone:n=`UTC`}){return(0,G.useMemo)(()=>{let r=Ue(n);return ut.map(n=>{let i=K[n],a=n===`created_at`?{defaultValue:r,...Ie(i)?{customRenderer:Be(r)}:{}}:{};return{key:n,...i.ui,icon:ft(n),operators:Ge(i.operators,{labels:dt}),...`options`in i&&i.options?{options:i.options}:{},...a,...n===`author`?{valueSource:t}:{},...n===`post`?{valueSource:e}:{}}})},[t,e,n])}var q=n(),mt=({filters:e,siteTimezone:t,onFiltersChange:n})=>{let r=rt(),i=pt({memberValueSource:it(),postValueSource:r,siteTimezone:t}),a=e.length>0;return(0,q.jsx)(y,{addButtonIcon:a?(0,q.jsx)(ee,{}):(0,q.jsx)(xe,{}),addButtonText:a?`Add filter`:`Filter`,allowMultiple:!1,className:`[&>button]:order-last ${a?`[&>button]:border-none`:`w-auto`}`,clearButtonClassName:`font-normal text-muted-foreground`,clearButtonIcon:(0,q.jsx)(Ae,{}),clearButtonText:`Clear`,fields:i,filters:e,keyboardShortcut:`f`,popoverAlign:a?`start`:`end`,showClearButton:a,showSearchInput:!1,onChange:n})},J=`CommentsResponseType`,ht=`count.dislikes`,Y=e=>[`member`,`post`,`count.replies`,`count.direct_replies`,`count.likes`,...e?[ht]:[],`count.reports`,`parent`,`in_reply_to`].join(`,`),gt=e=>[`member`,`post`,`count.direct_replies`,`count.likes`,...e?[ht]:[],`count.reports`,`parent`,`in_reply_to`].join(`,`),_t=o({dataType:J,path:`/comments/`,defaultNextPageParams:(e,t)=>e.meta?.pagination.next?{...t,page:(e.meta?.pagination.next||1).toString()}:void 0,returnData:e=>{let{pages:t}=e,n=t.flatMap(e=>e.comments),r=t[t.length-1].meta;return{comments:n,meta:r,isEnd:r?r.pagination.pages===r.pagination.page:!0}}}),vt=e=>_t({...e,searchParams:{limit:`100`,order:`created_at desc`,include:`member,post,parent`,...e?.searchParams}}),yt=a({method:`PUT`,path:({id:e})=>`/comments/${e}/`,body:({id:e})=>({comments:[{id:e,status:`hidden`}]}),invalidateQueries:{dataType:J}}),bt=a({method:`PUT`,path:({id:e})=>`/comments/${e}/`,body:({id:e})=>({comments:[{id:e,status:`published`}]}),invalidateQueries:{dataType:J}});a({method:`PUT`,path:({id:e})=>`/comments/${e}/`,body:({id:e})=>({comments:[{id:e,status:`deleted`}]}),invalidateQueries:{dataType:J}});var xt=a({method:`PUT`,path:({id:e})=>`/comments/${e}/`,body:({id:e})=>({comments:[{id:e,pinned:!0}]}),invalidateQueries:{dataType:J}}),X=a({method:`PUT`,path:({id:e})=>`/comments/${e}/`,body:({id:e})=>({comments:[{id:e,pinned:!1}]}),invalidateQueries:{dataType:J}});i({dataType:J,path:e=>`/comments/${e}/replies/`,defaultSearchParams:{include:`member,post,count.replies,count.likes,count.reports,parent`,limit:`100`}});var St=i({dataType:J,path:e=>`/comments/${e}/`,defaultSearchParams:{include:Y(!1)}}),Ct=(e,t)=>{let{dislikesEnabled:n=!1,searchParams:r,...i}=t||{};return St(e,{...i,searchParams:{include:Y(n),...r}})},wt=i({dataType:`CommentReportsResponseType`,path:e=>`/comments/${e}/reports/`}),Tt=(e,t)=>wt(e,{...t}),Et=i({dataType:`CommentLikesResponseType`,path:e=>`/comments/${e}/likes/`,defaultSearchParams:{include:`member`,limit:`100`,order:`created_at desc`}}),Dt=(e,t)=>Et(e,{...t}),Ot=i({dataType:`CommentDislikesResponseType`,path:e=>`/comments/${e}/dislikes/`,defaultSearchParams:{include:`member`,limit:`100`,order:`created_at desc`}}),kt=(e,t)=>Ot(e,{...t}),At=(e,t)=>{let{dislikesEnabled:n=!1,...r}=t||{};return vt({...r,searchParams:{filter:`(parent_id:${e}+in_reply_to_id:null),in_reply_to_id:${e}`,order:`created_at asc`,include:gt(n),limit:`100`}})};function jt({onClick:e,expanded:t}){return(0,q.jsxs)(j,{className:`shrink-0 gap-0.5 self-start p-0 text-base hover:bg-transparent`,variant:`ghost`,onClick:e,children:[t?`Show less`:`Show more`,t?(0,q.jsx)(Ee,{}):(0,q.jsx)(Ne,{})]})}function Mt({item:e}){let t=(0,G.useRef)(null),[n,r]=(0,G.useState)(!1),[i,a]=(0,G.useState)(!1);return(0,G.useEffect)(()=>{if(i)return;let e=()=>{t.current&&r(t.current.scrollHeight>t.current.clientHeight)};return e(),window.addEventListener(`resize`,e),()=>window.removeEventListener(`resize`,e)},[e.html,i]),(0,q.jsx)(`div`,{className:`mt-2 flex flex-col gap-2`,children:(0,q.jsxs)(`div`,{className:`flex max-w-full flex-col items-start ${e.status===`hidden`&&`opacity-50`}`,children:[(0,q.jsx)(`div`,{dangerouslySetInnerHTML:{__html:e.html||``},ref:t,className:u(`prose balance max-w-[80ch] flex-1 text-base leading-[1.5em] [&_*]:text-base [&_*]:leading-[1.5em] [&_*]:font-normal [&_a]:underline [&_blockquote]:border-l-[3px] [&_blockquote]:border-foreground [&_blockquote]:p-0 [&_blockquote]:pl-3 [&_blockquote_p]:mt-0`,i?`-mb-1 [&_p]:mb-[0.85em]`:`mb-1 line-clamp-2 [&_blockquote+p]:mt-1 [&_p]:m-0`)}),n&&(0,q.jsx)(jt,{expanded:i,onClick:()=>a(!i)})]})})}function Nt(e){let t=new Date(e);return new Intl.DateTimeFormat(`en-US`,{month:`short`,day:`numeric`,year:`numeric`,hour:`numeric`,minute:`numeric`}).format(t).replace(/(\d+),(\s+\d{4})/,`$1$2`)}var Pt=u(ge({variant:`warning`}),`gap-1 hover:bg-state-warning/30`);function Ft({memberName:e,memberId:t,createdAt:n,isHidden:r,canComment:i,isPinned:a,onAuthorClick:o,postTitle:s,onPostClick:c,onUnpinClick:l,className:d}){return(0,q.jsxs)(`div`,{className:u(`flex items-center gap-2`,d),children:[(0,q.jsxs)(`div`,{className:u(`flex min-w-0 items-center gap-x-1`,r&&`opacity-50`),children:[(0,q.jsx)(`div`,{className:`whitespace-nowrap`,children:t&&o?(0,q.jsx)(j,{className:`flex h-auto items-center gap-1.5 truncate p-0 text-md font-semibold text-primary hover:opacity-70`,variant:`link`,onClick:o,children:e||`Unknown`}):(0,q.jsx)(`span`,{className:`block truncate font-semibold`,children:e||`Unknown`})}),i===!1&&(0,q.jsxs)(I,{children:[(0,q.jsx)(O,{asChild:!0,children:(0,q.jsx)(`span`,{"data-testid":`commenting-disabled-indicator`,children:(0,q.jsx)(Ce,{className:`size-3.5 text-muted-foreground`})})}),(0,q.jsx)(V,{children:`Comments disabled`})]}),(0,q.jsx)(D,{className:`shrink-0 text-muted-foreground/50`,size:16}),(0,q.jsx)(`div`,{className:`shrink-0 whitespace-nowrap`,children:n&&(0,q.jsxs)(I,{children:[(0,q.jsx)(O,{asChild:!0,children:(0,q.jsx)(`span`,{className:`cursor-default text-sm text-muted-foreground`,children:f(n)})}),(0,q.jsx)(V,{children:Nt(n)})]})}),s&&(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(`div`,{className:`shrink-0 text-muted-foreground`,children:`on`}),(0,q.jsx)(`div`,{className:`min-w-0 truncate`,children:c?(0,q.jsx)(j,{className:`block h-auto w-full cursor-pointer truncate p-0 text-left font-medium text-gray-800 hover:opacity-70 dark:text-gray-400`,variant:`link`,onClick:c,children:s}):(0,q.jsx)(`span`,{className:`font-medium text-gray-800 dark:text-gray-400`,children:s})})]})]}),r&&(0,q.jsx)(we,{variant:`secondary`,children:`Hidden`}),a&&(l?(0,q.jsxs)(`button`,{"aria-label":`Unpin comment`,className:u(`group`,Pt),type:`button`,onClick:e=>{e.stopPropagation(),l?.()},children:[(0,q.jsxs)(`span`,{className:`grid size-3 shrink-0`,children:[(0,q.jsx)(M,{className:`col-start-1 row-start-1 size-3 group-hover:opacity-0 group-focus-visible:opacity-0`}),(0,q.jsx)(ke,{className:`col-start-1 row-start-1 size-3 opacity-0 group-hover:opacity-100 group-focus-visible:opacity-100`})]}),(0,q.jsxs)(`span`,{className:`grid justify-items-start text-left`,children:[(0,q.jsx)(`span`,{className:`col-start-1 row-start-1 group-hover:opacity-0 group-focus-visible:opacity-0`,children:`Pinned`}),(0,q.jsx)(`span`,{className:`col-start-1 row-start-1 opacity-0 group-hover:opacity-100 group-focus-visible:opacity-100`,children:`Unpin`})]})]}):(0,q.jsxs)(we,{className:`gap-1`,variant:`warning`,children:[(0,q.jsx)(M,{className:`size-3`}),`Pinned`]}))]})}function It({open:e,memberName:t,onOpenChange:n,onConfirm:r}){let[i,a]=(0,G.useState)(!1),o=e=>{e||a(!1),n(e)};return(0,q.jsx)(B,{open:e,onOpenChange:o,children:(0,q.jsxs)(k,{className:`gap-5`,children:[(0,q.jsxs)(R,{children:[(0,q.jsx)(E,{children:`Disable comments`}),(0,q.jsxs)(te,{children:[t||`This member`,` won't be able to comment in the future. You can re-enable commenting anytime.`]})]}),(0,q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,q.jsx)(x,{checked:i,id:`hide-comments`,onCheckedChange:e=>a(e===!0)}),(0,q.jsx)(C,{htmlFor:`hide-comments`,children:`Hide all previous comments`})]}),(0,q.jsxs)(N,{children:[(0,q.jsx)(j,{variant:`outline`,onClick:()=>o(!1),children:`Cancel`}),(0,q.jsx)(j,{onClick:()=>{r(i),a(!1)},children:`Disable comments`})]})]})})}var Z=()=>Me(`commentsPinning`);function Lt({comment:e}){let{mutate:t}=pe(),{mutate:n}=Oe(),{mutate:r}=xt(),{mutate:i}=X(),[a,o]=(0,G.useState)(!1),s=Z(),{id:c,post:l,member:u}=e,d=l?.url,f=u?.id,p=u?.can_comment,m=s&&!e.parent_id&&e.status!==`deleted`;return(0,q.jsxs)(q.Fragment,{children:[(0,q.jsxs)(le,{children:[(0,q.jsx)(De,{asChild:!0,children:(0,q.jsx)(j,{className:`relative z-10 text-gray-800 hover:bg-secondary [&_svg]:size-4`,size:`sm`,variant:`ghost`,children:(0,q.jsx)(ve,{})})}),(0,q.jsxs)(Se,{align:`start`,children:[d&&(0,q.jsx)(P,{asChild:!0,children:(0,q.jsxs)(`a`,{href:`${d}#ghost-comments-${c}`,rel:`noopener noreferrer`,target:`_blank`,children:[(0,q.jsx)(de,{className:`size-4`}),`View on post`]})}),f&&(0,q.jsx)(P,{asChild:!0,children:(0,q.jsxs)(`a`,{href:`#/members/${f}`,children:[(0,q.jsx)(me,{className:`size-4`}),`View member`]})}),m&&(e.pinned?(0,q.jsxs)(P,{onClick:()=>i({id:c}),children:[(0,q.jsx)(ke,{className:`size-4`}),`Unpin comment`]}):(0,q.jsxs)(P,{onClick:()=>r({id:c}),children:[(0,q.jsx)(M,{className:`size-4`}),`Pin comment`]})),f&&(p===!1?(0,q.jsxs)(P,{onClick:()=>{f&&n({id:f})},children:[(0,q.jsx)(oe,{className:`size-4`}),`Enable commenting`]}):(0,q.jsxs)(P,{onClick:()=>o(!0),children:[(0,q.jsx)(Ce,{className:`size-4`}),`Disable commenting`]}))]})]}),(0,q.jsx)(It,{memberName:u?.name,open:a,onConfirm:e=>{f&&(t({id:f,reason:`Disabled from comment ${c}`,hideComments:e}),o(!1))},onOpenChange:o})]})}function Rt({comment:e,dislikesEnabled:t,open:n,defaultTab:r=`likes`,onOpenChange:i}){let{data:a,isLoading:o}=Dt(e.id,{enabled:n}),{data:s,isLoading:c}=kt(e.id,{enabled:n&&t}),l=a?.comment_likes??[],u=t?s?.comment_dislikes??[]:[],p=e.count?.likes??0,m=t?e.count?.dislikes??0:0,y=Math.max(0,p-l.length),b=Math.max(0,m-u.length);return(0,q.jsx)(B,{open:n,onOpenChange:i,children:(0,q.jsxs)(k,{"aria-describedby":void 0,children:[(0,q.jsx)(R,{children:(0,q.jsx)(E,{children:t?(0,q.jsxs)(q.Fragment,{children:[d(p),` `,p===1?`like`:`likes`,` and `,d(m),` `,m===1?`dislike`:`dislikes`]}):(0,q.jsxs)(q.Fragment,{children:[d(p),` `,p===1?`like`:`likes`]})})}),(0,q.jsx)(`div`,{className:`overflow-hidden rounded-md border p-3`,children:(0,q.jsxs)(`div`,{className:`flex min-w-0 items-start gap-3`,children:[(0,q.jsx)(T,{className:`shrink-0`,email:e.member?.email,name:e.member?.name,src:e.member?.avatar_image}),(0,q.jsxs)(`div`,{className:`flex min-w-0 flex-col overflow-hidden`,children:[(0,q.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1 text-sm`,children:[(0,q.jsx)(`span`,{className:`shrink-0 font-semibold`,children:e.member?F(e.member):`Deleted member`}),(0,q.jsx)(D,{className:`shrink-0 text-muted-foreground/50`,size:16}),(0,q.jsx)(`span`,{className:`shrink-0 text-muted-foreground`,children:e.created_at&&f(e.created_at)}),(0,q.jsx)(`span`,{className:`shrink-0 text-muted-foreground`,children:`on`}),(0,q.jsx)(`span`,{className:`min-w-0 truncate font-medium text-gray-800 dark:text-gray-400`,children:e.post?.title||`Unknown post`})]}),(0,q.jsx)(`div`,{dangerouslySetInnerHTML:{__html:e.html||``},className:`prose mt-2 line-clamp-2 text-sm [&_*]:text-sm [&_*]:leading-[1.5em] [&_p]:m-0`})]})]})}),t?(0,q.jsxs)(v,{defaultValue:r,variant:`segmented`,children:[(0,q.jsxs)(_,{className:`grid w-full grid-cols-2`,children:[(0,q.jsx)(h,{value:`likes`,children:`Likes`}),(0,q.jsx)(h,{value:`dislikes`,children:`Dislikes`})]}),(0,q.jsx)(g,{className:`mt-4`,value:`likes`,children:(0,q.jsx)(`div`,{className:`-mx-1 max-h-64 overflow-y-auto px-1`,children:o?(0,q.jsx)(`div`,{className:`flex justify-center py-4`,children:(0,q.jsx)(z,{size:`md`})}):l.length===0?(0,q.jsx)(`div`,{className:`py-4 text-center text-sm text-muted-foreground`,children:`No likes yet`}):(0,q.jsxs)(`div`,{className:`flex flex-col gap-3 pb-1`,children:[l.map(e=>(0,q.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,q.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,q.jsxs)(`div`,{className:`relative shrink-0`,children:[(0,q.jsx)(T,{email:e.member?.email,name:e.member?.name,src:e.member?.avatar_image}),(0,q.jsx)(`div`,{className:`absolute -right-0.5 -bottom-0.5 flex size-4 items-center justify-center rounded-full bg-gray-500 text-white`,children:(0,q.jsx)(he,{className:`size-2.5`,fill:`currentColor`})})]}),(0,q.jsx)(`span`,{className:`font-medium`,children:e.member?F(e.member):`Deleted member`})]}),(0,q.jsx)(`span`,{className:`shrink-0 text-sm text-muted-foreground`,children:f(e.created_at)})]},e.id)),y>0&&(0,q.jsxs)(`div`,{className:`pt-1 text-center text-sm text-muted-foreground`,children:[`and `,d(y),` more`]})]})})}),(0,q.jsx)(g,{className:`mt-4`,value:`dislikes`,children:(0,q.jsx)(`div`,{className:`-mx-1 max-h-64 overflow-y-auto px-1`,children:c?(0,q.jsx)(`div`,{className:`flex justify-center py-4`,children:(0,q.jsx)(z,{size:`md`})}):u.length===0?(0,q.jsx)(`div`,{className:`py-4 text-center text-sm text-muted-foreground`,children:`No dislikes yet`}):(0,q.jsxs)(`div`,{className:`flex flex-col gap-3 pb-1`,children:[u.map(e=>(0,q.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,q.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,q.jsxs)(`div`,{className:`relative shrink-0`,children:[(0,q.jsx)(T,{email:e.member?.email,name:e.member?.name,src:e.member?.avatar_image}),(0,q.jsx)(`div`,{className:`absolute -right-0.5 -bottom-0.5 flex size-4 items-center justify-center rounded-full bg-gray-500 text-white`,children:(0,q.jsx)(w,{className:`size-2.5`,fill:`currentColor`})})]}),(0,q.jsx)(`span`,{className:`font-medium`,children:e.member?F(e.member):`Deleted member`})]}),(0,q.jsx)(`span`,{className:`shrink-0 text-sm text-muted-foreground`,children:f(e.created_at)})]},e.id)),b>0&&(0,q.jsxs)(`div`,{className:`pt-1 text-center text-sm text-muted-foreground`,children:[`and `,d(b),` more`]})]})})})]}):(0,q.jsx)(`div`,{className:`-mx-1 max-h-64 overflow-y-auto px-1`,children:o?(0,q.jsx)(`div`,{className:`flex justify-center py-4`,children:(0,q.jsx)(z,{size:`md`})}):(0,q.jsxs)(`div`,{className:`flex flex-col gap-3 pb-1`,children:[l.map(e=>(0,q.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,q.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,q.jsxs)(`div`,{className:`relative shrink-0`,children:[(0,q.jsx)(T,{email:e.member?.email,name:e.member?.name,src:e.member?.avatar_image}),(0,q.jsx)(`div`,{className:`absolute -right-0.5 -bottom-0.5 flex size-4 items-center justify-center rounded-full bg-pink-500 text-white`,children:(0,q.jsx)(Pe,{className:`size-2.5`,fill:`currentColor`})})]}),(0,q.jsx)(`span`,{className:`font-medium`,children:e.member?F(e.member):`Deleted member`})]}),(0,q.jsx)(`span`,{className:`shrink-0 text-sm text-muted-foreground`,children:f(e.created_at)})]},e.id)),y>0&&(0,q.jsxs)(`div`,{className:`pt-1 text-center text-sm text-muted-foreground`,children:[`and `,d(y),` more`]})]})}),(0,q.jsx)(N,{children:(0,q.jsx)(j,{onClick:()=>i(!1),children:`OK`})})]})})}function zt({comment:e,open:t,onOpenChange:n}){let{data:r,isLoading:i}=Tt(e.id,{enabled:t}),a=r?.comment_reports??[],o=e.count?.reports??a.length;return(0,q.jsx)(B,{open:t,onOpenChange:n,children:(0,q.jsxs)(k,{"aria-describedby":void 0,children:[(0,q.jsx)(R,{children:(0,q.jsxs)(E,{children:[o,` `,o===1?`report`:`reports`]})}),(0,q.jsx)(`div`,{className:`overflow-hidden rounded-md border p-3`,children:(0,q.jsxs)(`div`,{className:`flex min-w-0 items-start gap-3`,children:[(0,q.jsx)(T,{className:`shrink-0`,email:e.member?.email,name:e.member?.name,src:e.member?.avatar_image}),(0,q.jsxs)(`div`,{className:`flex min-w-0 flex-col overflow-hidden`,children:[(0,q.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1 text-sm`,children:[(0,q.jsx)(`span`,{className:`shrink-0 font-semibold`,children:e.member?F(e.member):`Deleted member`}),(0,q.jsx)(D,{className:`shrink-0 text-muted-foreground/50`,size:16}),(0,q.jsx)(`span`,{className:`shrink-0 text-muted-foreground`,children:e.created_at&&f(e.created_at)}),(0,q.jsx)(`span`,{className:`shrink-0 text-muted-foreground`,children:`on`}),(0,q.jsx)(`span`,{className:`min-w-0 truncate font-medium text-gray-800 dark:text-gray-400`,children:e.post?.title||`Unknown post`})]}),(0,q.jsx)(`div`,{dangerouslySetInnerHTML:{__html:e.html||``},className:`prose mt-2 line-clamp-2 text-sm [&_*]:text-sm [&_*]:leading-[1.5em] [&_p]:m-0`})]})]})}),(0,q.jsx)(`div`,{className:`-mx-1 max-h-64 overflow-y-auto px-1`,children:i?(0,q.jsx)(`div`,{className:`flex justify-center py-4`,children:(0,q.jsx)(z,{size:`md`})}):(0,q.jsx)(`div`,{className:`flex flex-col gap-3 pb-1`,children:a.map(e=>(0,q.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,q.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,q.jsxs)(`div`,{className:`relative shrink-0`,children:[(0,q.jsx)(T,{email:e.member?.email,name:e.member?.name,src:e.member?.avatar_image}),(0,q.jsx)(`div`,{className:`absolute -right-0.5 -bottom-0.5 flex size-4 items-center justify-center rounded-full bg-red text-white`,children:(0,q.jsx)(L,{className:`size-2.5`,fill:`currentColor`})})]}),(0,q.jsx)(`span`,{className:`font-medium`,children:e.member?F(e.member):`Deleted member`})]}),(0,q.jsx)(`span`,{className:`shrink-0 text-sm text-muted-foreground`,children:f(e.created_at)})]},e.id))})}),(0,q.jsx)(N,{children:(0,q.jsx)(j,{onClick:()=>n(!1),children:`OK`})})]})})}function Bt(e,t){if(!t)return;let n=new URLSearchParams(e);return n.set(`thread`,`is:${t}`),`?${n.toString()}`}function Q({icon:e,count:t,label:n,to:r,onClick:i,className:a,testId:o}){let s=u(`flex items-center gap-1 text-xs text-gray-800`,a),c=(0,q.jsxs)(q.Fragment,{children:[e,(0,q.jsx)(`span`,{children:d(t)})]}),f=r||i;return(0,q.jsxs)(I,{children:[(0,q.jsx)(O,{asChild:!0,children:r?(0,q.jsx)(l,{className:u(s,`cursor-pointer hover:opacity-70`),"data-testid":o,to:r,onClick:e=>{e.stopPropagation()},children:c}):i?(0,q.jsx)(`button`,{className:u(s,`cursor-pointer hover:opacity-70`),"data-testid":o,type:`button`,onClick:e=>{e.stopPropagation(),i()},children:c}):(0,q.jsx)(`div`,{className:s,"data-testid":o,children:c})}),(0,q.jsx)(V,{children:f?`View ${n.toLowerCase()}`:n})]})}function Vt({comment:e,dislikesEnabled:t,className:n}){let[r]=c(),[i,a]=(0,G.useState)(!1),[o,s]=(0,G.useState)(`likes`),[l,d]=(0,G.useState)(!1),f=Bt(r,e.id),p=e.count?.direct_replies??e.replies?.length??0,m=e.count?.likes??0,h=t?e.count?.dislikes??0:0,g=e.count?.reports??0,_=p>0,v=m>0,y=h>0,b=g>0;return(0,q.jsxs)(q.Fragment,{children:[(0,q.jsxs)(`div`,{className:u(`flex items-center gap-6`,n),children:[(0,q.jsx)(Q,{count:p,icon:(0,q.jsx)(ye,{size:16,strokeWidth:1.5}),label:`Replies`,testId:`replies-metric`,to:_?f:void 0}),t?(0,q.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,q.jsx)(Q,{count:m,icon:(0,q.jsx)(he,{size:16,strokeWidth:1.5}),label:`Likes`,testId:`likes-metric`,onClick:v?()=>{s(`likes`),a(!0)}:void 0}),(0,q.jsx)(Q,{count:h,icon:(0,q.jsx)(w,{size:16,strokeWidth:1.5}),label:`Dislikes`,testId:`dislikes-metric`,onClick:y?()=>{s(`dislikes`),a(!0)}:void 0})]}):(0,q.jsx)(Q,{count:m,icon:(0,q.jsx)(Pe,{size:16,strokeWidth:1.5}),label:`Likes`,onClick:v?()=>a(!0):void 0}),(0,q.jsx)(Q,{className:b?`font-semibold text-red`:void 0,count:g,icon:(0,q.jsx)(L,{size:16,strokeWidth:1.5}),label:`Reports`,onClick:b?()=>d(!0):void 0})]}),(0,q.jsx)(Rt,{comment:e,defaultTab:o,dislikesEnabled:t,open:i,onOpenChange:a}),(0,q.jsx)(zt,{comment:e,open:l,onOpenChange:d})]})}function Ht({hasReplies:e}){return e?(0,q.jsx)(`div`,{className:`mb-2 h-full w-px grow rounded bg-gradient-to-b from-muted-foreground/20 from-70% to-transparent`,"data-testid":`replies-line`}):null}function Ut({comment:e,dislikesEnabled:t,isReply:n=!1,isSelectedComment:r=!1,selectedCommentId:i}){let[a]=c(),{mutate:o}=yt(),{mutate:s}=bt(),{mutate:d}=X(),f=Z(),p=(e.replies?.length??0)>0||(e.count?.direct_replies??e.count?.replies??0)>0;return(0,q.jsxs)(`div`,{className:`flex w-full flex-row ${!p||n?`mb-7`:`mb-0`}`,children:[(0,q.jsxs)(`div`,{className:`mr-2 flex shrink-0 flex-col items-center justify-start md:mr-3`,children:[(0,q.jsx)(T,{className:u(`mb-3 size-6 md:mb-4 md:size-8`,e.status===`hidden`&&`opacity-50`),email:e.member?.email,name:e.member?.name,src:e.member?.avatar_image}),(0,q.jsx)(Ht,{hasReplies:p&&!n})]}),(0,q.jsx)(`div`,{className:`grow`,children:(0,q.jsxs)(`div`,{className:`w-full`,"data-testid":`comment-thread-row-${e.id}`,children:[(0,q.jsxs)(`div`,{className:`flex min-w-0 flex-col`,children:[(0,q.jsx)(Ft,{canComment:e.member?.can_comment,createdAt:e.created_at,isHidden:e.status===`hidden`,isPinned:f&&e.pinned,memberId:e.member?.id,memberName:e.member?.name,onUnpinClick:f?()=>d({id:e.id}):void 0}),e.in_reply_to_snippet&&r&&(0,q.jsxs)(`div`,{className:`mb-1 line-clamp-1 text-sm ${e.status===`hidden`&&`opacity-50`}`,children:[(0,q.jsx)(`span`,{className:`text-muted-foreground`,children:`Replied to:`}),`\xA0`,(0,q.jsx)(l,{className:`text-sm font-normal text-muted-foreground hover:text-foreground`,"data-testid":`replied-to-link`,to:Bt(a,e.in_reply_to_id||e.parent_id)||``,onClick:e=>{e.stopPropagation()},children:e.in_reply_to_snippet})]}),(0,q.jsx)(Mt,{item:e}),(0,q.jsxs)(`div`,{className:`mt-4 flex flex-row flex-wrap items-center gap-3`,children:[e.status===`published`&&(0,q.jsxs)(j,{className:`text-gray-800`,size:`sm`,variant:`outline`,onClick:()=>o({id:e.id}),children:[(0,q.jsx)(ae,{}),(0,q.jsx)(`span`,{className:`max-md:hidden`,children:`Hide`})]}),e.status===`hidden`&&(0,q.jsxs)(j,{className:`text-gray-800`,size:`sm`,variant:`outline`,onClick:()=>s({id:e.id}),children:[(0,q.jsx)(re,{}),(0,q.jsx)(`span`,{className:`max-md:hidden`,children:`Show`})]}),(0,q.jsx)(Vt,{comment:e,dislikesEnabled:t}),(0,q.jsx)(Lt,{comment:e})]})]}),p&&e.replies&&(0,q.jsx)(`div`,{className:`mt-7 mb-4 -ml-2 pl-2 md:mt-8 md:mb-0 md:-ml-3 md:pl-3`,children:e.replies.map(e=>(0,q.jsx)(Ut,{comment:e,dislikesEnabled:t,isReply:!0,selectedCommentId:i},e.id))})]})})]})}var Wt=({selectedComment:e,dislikesEnabled:t,replies:n,selectedCommentId:r,fetchNextPage:i,hasNextPage:a,isFetchingNextPage:o})=>(0,q.jsxs)(`div`,{className:`flex flex-col`,"data-testid":`comment-thread-list`,children:[(0,q.jsx)(Ut,{comment:{...e,replies:n},dislikesEnabled:t,isSelectedComment:!0,selectedCommentId:r}),a&&(0,q.jsx)(`div`,{className:`flex justify-center pb-4`,children:(0,q.jsx)(j,{disabled:o,variant:`outline`,onClick:()=>i(),children:o?(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(z,{size:`sm`}),`Loading...`]}):`Load more replies`})})]}),Gt=({commentId:e,dislikesEnabled:t,open:n,onOpenChange:r})=>{let{data:i,isLoading:a,isError:o,fetchNextPage:s,hasNextPage:c,isFetchingNextPage:l}=At(e??``,{dislikesEnabled:t,enabled:n&&!!e}),{data:u,isLoading:d,isError:f}=Ct(e??``,{dislikesEnabled:t,enabled:n&&!!e}),p=a||d,m=f||o&&!u,h=u?.comments?.[0],g=i?.comments||[];return(0,q.jsx)(ne,{open:n,onOpenChange:r,children:(0,q.jsxs)(ie,{className:`overflow-y-auto px-6 pt-0 sm:max-w-[420px]`,children:[(0,q.jsx)(_e,{className:`sticky top-0 z-40 -mx-6 bg-surface-elevated/60 p-6 backdrop-blur`,children:(0,q.jsx)(Fe,{className:`text-md`,children:`Thread`})}),h?.post&&(0,q.jsxs)(q.Fragment,{children:[(0,q.jsxs)(`div`,{className:`flex items-center gap-4`,children:[(0,q.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,q.jsx)(`h3`,{className:`line-clamp-1 text-xl font-semibold text-foreground`,children:h.post.title}),h.post.excerpt&&(0,q.jsx)(`p`,{className:`mt-1 line-clamp-2 text-sm text-muted-foreground`,children:h.post.excerpt})]}),h.post.feature_image&&(0,q.jsx)(`img`,{alt:h.post.title||`Post feature image`,className:`hidden aspect-video h-18 shrink-0 rounded object-cover lg:block`,src:h.post.feature_image})]}),(0,q.jsx)(se,{className:`-mx-6 my-6 w-auto`})]}),(0,q.jsx)(`div`,{children:p?(0,q.jsx)(`div`,{className:`flex h-full items-center justify-center py-8`,children:(0,q.jsx)(z,{size:`lg`})}):m||!h?(0,q.jsx)(`div`,{className:`flex h-full items-center justify-center py-8`,children:(0,q.jsx)(S,{actions:(0,q.jsx)(j,{variant:`outline`,onClick:()=>r(!1),children:`Back to comments`}),description:`This thread may have been deleted or doesn't exist.`,title:`Thread not found`,children:(0,q.jsx)(A,{})})}):(0,q.jsx)(Wt,{dislikesEnabled:t,fetchNextPage:()=>void s(),hasNextPage:c,isFetchingNextPage:l,replies:g,selectedComment:h,selectedCommentId:e??``})})]})})},Kt=({height:e})=>(0,q.jsx)(`div`,{"aria-hidden":`true`,className:`flex`,children:(0,q.jsx)(`div`,{className:`flex`,style:{height:e}})}),qt=(0,G.forwardRef)(function(e,t){return(0,q.jsx)(`div`,{ref:t,...e,"aria-hidden":`true`,className:`relative flex flex-col`,children:(0,q.jsx)(`div`,{className:`relative z-10 h-24 animate-pulse`,children:(0,q.jsx)(`div`,{className:`h-full rounded-md bg-muted`,"data-testid":`loading-placeholder`})})})});function Jt({items:e,totalItems:t,hasNextPage:n,isFetchingNextPage:r,fetchNextPage:i,resetKey:a,onAddFilter:o,isLoading:s,dislikesEnabled:d}){let f=(0,G.useRef)(null),{visibleItemCount:p,canLoadMore:m,loadMore:h}=st(t,{resetKey:a}),[g,_]=c(),[v,y]=(0,G.useState)(!1),[b,x]=(0,G.useState)(null),{mutate:S}=yt(),{mutate:C}=bt(),{mutate:w}=X(),E=Z(),D=e=>{if(y(e),!e){let e=new URLSearchParams(g);e.delete(`thread`),_(e,{replace:!0})}};(0,G.useEffect)(()=>{let e=g.get(`thread`);if(e){let t=e.match(/^is:(.+)$/);if(t&&t[1]){let e=t[1];x(e),y(!0)}else y(!1),x(null)}else y(!1),x(null)},[g]),ot({parentRef:f,isLoading:s});let{visibleItems:O,spaceBefore:ee,spaceAfter:te}=at({items:e,totalItems:p,hasNextPage:n,isFetchingNextPage:r,fetchNextPage:i,parentRef:f});return(0,q.jsx)(be,{children:(0,q.jsxs)(`div`,{ref:f,className:`overflow-hidden border-t`,children:[(0,q.jsx)(`div`,{className:`flex flex-col`,"data-testid":`comments-list`,children:(0,q.jsxs)(`div`,{className:`flex flex-col`,children:[(0,q.jsx)(Kt,{height:ee}),O.map(({key:t,virtualItem:n,item:r,props:i})=>n.index>e.length-1?(0,q.jsx)(qt,{...i},t):(0,q.jsxs)(`div`,{...i,className:`grid w-full grid-cols-1 items-start justify-between gap-4 border-b p-3 hover:bg-table-row-hover md:p-5 lg:grid-cols-[minmax(0,1fr)_144px]`,"data-testid":`comment-list-row`,onClick:()=>{v&&D(!1)},children:[(0,q.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,q.jsx)(T,{className:u(`mt-0.5 size-6 md:size-8`,r.status===`hidden`&&`opacity-50`),email:r.member?.email,name:r.member?.name,src:r.member?.avatar_image}),(0,q.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-3`,children:[(0,q.jsxs)(`div`,{children:[(0,q.jsx)(Ft,{canComment:r.member?.can_comment,createdAt:r.created_at,isHidden:r.status===`hidden`,isPinned:E&&r.pinned,memberId:r.member?.id,memberName:r.member?.name,postTitle:r.post?.title,onAuthorClick:r.member?.id?()=>o(`author`,r.member.id):void 0,onPostClick:r.post?.id?()=>o(`post`,r.post.id):void 0,onUnpinClick:E?()=>w({id:r.id}):void 0}),r.in_reply_to_snippet&&(0,q.jsxs)(`div`,{className:`mb-1 line-clamp-1 max-w-3xl ${r.status===`hidden`&&`opacity-50`}`,children:[(0,q.jsx)(`span`,{className:`text-muted-foreground`,children:`Replied to:`}),`\xA0`,(0,q.jsx)(l,{className:`text-sm font-normal text-muted-foreground hover:text-foreground`,"data-testid":`replied-to-link`,to:Bt(g,r.in_reply_to_id||r.parent_id)||``,onClick:e=>{e.stopPropagation()},children:r.in_reply_to_snippet})]})]}),(0,q.jsx)(Mt,{item:r}),(0,q.jsxs)(`div`,{className:`flex flex-row flex-nowrap items-center gap-3`,children:[r.status===`published`&&(0,q.jsxs)(j,{className:`text-foreground`,size:`sm`,variant:`outline`,onClick:()=>S({id:r.id}),children:[(0,q.jsx)(ae,{}),`Hide`]}),r.status===`hidden`&&(0,q.jsxs)(j,{className:`text-foreground`,size:`sm`,variant:`outline`,onClick:()=>C({id:r.id}),children:[(0,q.jsx)(re,{}),`Show`]}),(0,q.jsx)(Vt,{className:`ml-2`,comment:r,dislikesEnabled:d}),(0,q.jsx)(Lt,{comment:r})]})]})]}),(0,q.jsx)(`div`,{children:r.post?.feature_image?(0,q.jsx)(`img`,{alt:r.post.title||`Post feature image`,className:`hidden aspect-video w-36 rounded object-cover lg:block ${r.status===`hidden`&&`opacity-50`}`,src:r.post.feature_image}):null})]},t)),(0,q.jsx)(Kt,{height:te})]})}),m&&(0,q.jsx)(ct,{isLoading:r,onClick:h}),(0,q.jsx)(Gt,{commentId:b,dislikesEnabled:d,open:v,onOpenChange:D})]})})}var Yt=Ye(K,`date`);function Xt(e){return Ve(K,e.field,`UTC`)?.definition.operators.includes(e.operator)??!1}function Zt(e,t){return Array.isArray(e.$and)?e.$and.flatMap(e=>Zt(e,t)):qe([e],K,t)}function Qt(e,t){let n=ze(e??``);return n?Xe(Zt(n,t).filter(Xt)):[]}function $t(e){let t=ze(e??``);return t?We(t,Yt):!1}function $(e,t){return Je(e.filter(Xt),K,t)}var en=[`status`,`created_at`,`body`,`post`,`author`,`reported`],tn={is_not:`is-not`,not_contains:`does-not-contain`,before:`is-less`,after:`is-greater`,on_or_before:`is-or-less`,on_or_after:`is-or-greater`};function nn(e){let t=e.indexOf(`:`);if(t<=0)return null;let n=e.substring(0,t),r=e.substring(t+1);return r?{operator:tn[n]??n,value:r}:null}function rn(e){let t=[];for(let[n,r]of e.entries()){if(!en.includes(n))continue;let e=nn(r);e&&t.push({id:`${n}:${t.length+1}`,field:n,operator:e.operator,values:[e.value]})}return t}function an(e){en.forEach(t=>e.delete(t))}function on(e,t,n){let r=new URLSearchParams(e),i=$(t,n);return r.delete(`filter`),an(r),i&&r.set(`filter`,i),r}function sn(e,t,n=!t){return!!e&&n&&!t&&$t(e)}function cn(e){let[t,n]=c(),r=(0,G.useRef)(null),i=(0,G.useMemo)(()=>t.get(`filter`)??void 0,[t]),a=(0,G.useMemo)(()=>t.toString(),[t]),o=(0,G.useMemo)(()=>i===void 0?rn(t):Qt(i,e),[i,t,e]),[s,l]=(0,G.useState)(o),u=(0,G.useMemo)(()=>$(s,e),[s,e]);return(0,G.useEffect)(()=>{a!==r.current&&(l(o),r.current=a)},[a,o]),(0,G.useEffect)(()=>{if(r.current!==null&&a!==r.current)return;let i=on(t,s,e),o=i.toString();o!==a&&(r.current=o,n(i,{replace:!0}))},[a,s,t,n,e]),{filters:s,nql:u,setFilters:(0,G.useCallback)((i,a={})=>{let o=typeof i==`function`?i(s):i,c=on(t,o,e),u=a.replace??!0;l(o),r.current=c.toString(),n(c,{replace:u})},[s,t,n,e]),clearFilters:(0,G.useCallback)(({replace:e=!0}={})=>{let i=new URLSearchParams(t);i.delete(`filter`),an(i),l([]),r.current=i.toString(),n(i,{replace:e})},[t,n])}}function ln(e){return e.get(`id`)?.match(/^is:(.+)$/)?.[1]}var un=({timezone:e,singleCommentId:t})=>{let[n,i]=c(),{filters:a,nql:o,setFilters:l}=cn(e),u=(0,G.useCallback)((r,o,s=`is`)=>{let c=[...a.filter(e=>e.field!==r),b(r,s,[o])];if(!t){l(c,{replace:!1});return}let u=new URLSearchParams(n),d=$(c,e);u.delete(`id`),u.delete(`filter`),d&&u.set(`filter`,d),i(u,{replace:!1})},[a,n,l,i,t,e]),d=(0,G.useMemo)(()=>t?`id:${s(t)}`:o,[o,t]),f=(0,G.useCallback)(()=>{i(new URLSearchParams,{replace:!1})},[i]),{data:h,isError:g,isFetching:_,isFetchingNextPage:v,isRefetching:y,fetchNextPage:x,hasNextPage:C}=vt({searchParams:{include:Y(!0),...d?{filter:d}:{}},placeholderData:r}),w=_&&!v&&!y,T=d??``,E=a.length>0;return(0,q.jsx)(p,{className:`size-full`,children:(0,q.jsx)(m,{className:`relative flex h-full flex-col`,size:`page`,children:(0,q.jsxs)(W,{"data-testid":`comments-page`,children:[(0,q.jsxs)(W.Header,{children:[(0,q.jsxs)(H,{blurredBackground:!1,sticky:!1,children:[(0,q.jsx)(H.Left,{children:(0,q.jsx)(H.Title,{children:`Comments`})}),!t&&!E&&(0,q.jsx)(H.Actions,{children:(0,q.jsx)(H.ActionGroup,{children:(0,q.jsx)(mt,{filters:a,siteTimezone:e,onFiltersChange:l})})})]}),!t&&E&&(0,q.jsx)(Le,{children:(0,q.jsx)(mt,{filters:a,siteTimezone:e,onFiltersChange:l})})]}),(0,q.jsx)(W.Body,{children:w?(0,q.jsx)(`div`,{className:`flex flex-1 items-center justify-center`,children:(0,q.jsx)(z,{size:`lg`})}):g?(0,q.jsxs)(`div`,{className:`flex flex-1 flex-col items-center justify-center`,children:[(0,q.jsx)(`h2`,{className:`mb-2 text-xl font-medium`,children:`Error loading comments`}),(0,q.jsx)(`p`,{className:`mb-4 text-muted-foreground`,children:`Please reload the page to try again`}),(0,q.jsx)(j,{onClick:()=>window.location.reload(),children:`Reload page`})]}):h?.comments.length?(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(Jt,{dislikesEnabled:!0,fetchNextPage:()=>void x(),hasNextPage:C,isFetchingNextPage:v,isLoading:_&&!v,items:h?.comments??[],resetKey:T,totalItems:h?.meta?.pagination?.total??0,onAddFilter:u}),t&&(0,q.jsx)(`div`,{className:`flex justify-center py-8`,children:(0,q.jsx)(j,{variant:`outline`,onClick:f,children:`Show all comments`})})]}):(0,q.jsx)(`div`,{className:`flex flex-1 items-center justify-center`,children:t?(0,q.jsxs)(`div`,{className:`flex flex-col items-center`,children:[(0,q.jsx)(S,{title:`Comment not found`,children:(0,q.jsx)(A,{})}),(0,q.jsx)(j,{className:`mt-4`,variant:`outline`,onClick:f,children:`Show all comments`})]}):(0,q.jsx)(S,{title:`No comments yet`,children:(0,q.jsx)(A,{})})})})]})})})},dn=()=>{let[e]=c(),{data:t,isLoading:n}=je({}),r=(0,G.useMemo)(()=>ln(e),[e]),i=e.get(`filter`)??void 0;if(!r&&sn(i,!!t,n))return(0,q.jsx)(p,{className:`size-full`,children:(0,q.jsx)(m,{className:`relative flex h-full flex-col`,size:`page`,children:(0,q.jsxs)(W,{children:[(0,q.jsx)(W.Header,{children:(0,q.jsx)(H,{blurredBackground:!1,sticky:!1,children:(0,q.jsx)(H.Left,{children:(0,q.jsx)(H.Title,{children:`Comments`})})})}),(0,q.jsx)(W.Body,{children:(0,q.jsx)(`div`,{className:`flex flex-1 items-center justify-center`,children:(0,q.jsx)(z,{size:`lg`})})})]})})});let a=lt(t?.settings??[]);return(0,q.jsx)(un,{singleCommentId:r,timezone:a})};export{dn as default};
@@ -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{c as r}from"./dist-DGzPJ_bO.js";import{a as i}from"./types-uYQ1HgqL.js";var a=e(t(),1),o=n(),s={xs:`max-w-xs`,sm:`max-w-sm`,md:`max-w-md`,lg:`max-w-lg`,xl:`max-w-xl`,"2xl":`max-w-2xl`,"3xl":`max-w-3xl`,"4xl":`max-w-4xl`,"5xl":`max-w-5xl`,"6xl":`max-w-6xl`,"7xl":`max-w-7xl`,"8xl":`max-w-8xl`,"9xl":`max-w-9xl`,prose:`max-w-prose`,page:`max-w-page`,"page-with-sidebar":`max-w-pageminsidebar`},c=a.forwardRef(function({className:e,size:t=`page`,centered:n=!0,paddingX:a,...c},l){return(0,o.jsx)(`div`,{ref:l,className:r(`w-full`,s[t],n&&`mx-auto`,a&&i[a],e),...c})});c.displayName=`Container`;export{c 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{c as r}from"./dist-Cb5RSHSg.js";import{a as i}from"./types-uYQ1HgqL.js";var a=e(t(),1),o=n(),s={xs:`max-w-xs`,sm:`max-w-sm`,md:`max-w-md`,lg:`max-w-lg`,xl:`max-w-xl`,"2xl":`max-w-2xl`,"3xl":`max-w-3xl`,"4xl":`max-w-4xl`,"5xl":`max-w-5xl`,"6xl":`max-w-6xl`,"7xl":`max-w-7xl`,"8xl":`max-w-8xl`,"9xl":`max-w-9xl`,prose:`max-w-prose`,page:`max-w-page`,"page-with-sidebar":`max-w-pageminsidebar`},c=a.forwardRef(function({className:e,size:t=`page`,centered:n=!0,paddingX:a,...c},l){return(0,o.jsx)(`div`,{ref:l,className:r(`w-full`,s[t],n&&`mx-auto`,a&&i[a],e),...c})});c.displayName=`Container`;export{c 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{c as r}from"./dist-DGzPJ_bO.js";var i=e(t(),1),a=n(),o=i.forwardRef(({children:e,className:t,...n},i)=>(0,a.jsx)(`div`,{ref:i,className:r(`flex flex-col items-stretch`,t),...n,children:e}));o.displayName=`DataList`;var s=i.forwardRef(({children:e,className:t,...n},i)=>(0,a.jsx)(`div`,{ref:i,className:r(`flex items-center justify-between gap-2 border-b p-2 text-xs font-medium tracking-wide text-muted-foreground uppercase`,t),...n,children:e}));s.displayName=`DataListHeader`;var c=i.forwardRef(({children:e,className:t,...n},i)=>(0,a.jsx)(`div`,{ref:i,className:r(``,t),...n,children:e}));c.displayName=`DataListHead`;var l=i.forwardRef(({children:e,className:t,...n},i)=>(0,a.jsx)(`div`,{ref:i,className:r(`flex flex-col items-stretch pt-1.5`,t),...n,children:e}));l.displayName=`DataListBody`;var u=i.forwardRef(({children:e,className:t,...n},i)=>(0,a.jsx)(`div`,{ref:i,className:r(`group/row relative flex items-center justify-between gap-3 py-0.5 before:absolute before:-inset-x-0.5 before:inset-y-0.5 before:z-0 before:rounded-[6px] before:bg-muted/60 before:opacity-0 hover:before:opacity-100`,t),...n,children:e}));u.displayName=`DataListRow`;var d=i.forwardRef(({children:e,className:t,...n},i)=>(0,a.jsx)(`div`,{ref:i,className:r(`absolute inset-x-0 inset-y-1 z-0 origin-left rounded-[4px] bg-state-info/10 transition-all group-hover/row:bg-state-info/25 dark:bg-state-info/20 dark:group-hover/row:bg-state-info/35`,t),...n,children:e}));d.displayName=`DataListBar`;var f=i.forwardRef(({children:e,className:t,...n},i)=>(0,a.jsx)(`div`,{ref:i,className:r(`relative z-10 flex max-w-[calc(100%-32px)] min-w-0 items-center p-2 text-sm font-medium transition-[max-width] duration-300 ease-in-out group-hover/datalist:max-w-[calc(100%-100px)]`,t),...n,children:e}));f.displayName=`DataListItemContent`;var p=i.forwardRef(({children:e,className:t,...n},o)=>{let s=i.Children.toArray(e).length>1;return(0,a.jsx)(`div`,{ref:o,className:r(`z-10 flex items-center`,s&&`[&>[data-type="value-abs"]]:transition-transform [&>[data-type="value-abs"]]:duration-300 [&>[data-type="value-abs"]]:group-hover/datalist:-translate-x-14`,s&&`[&>[data-type="value-perc"]]:invisible [&>[data-type="value-perc"]]:absolute [&>[data-type="value-perc"]]:right-0 [&>[data-type="value-perc"]]:translate-x-14 [&>[data-type="value-perc"]]:opacity-0 [&>[data-type="value-perc"]]:transition-all [&>[data-type="value-perc"]]:duration-300 [&>[data-type="value-perc"]]:group-hover/datalist:visible [&>[data-type="value-perc"]]:group-hover/datalist:translate-x-0 [&>[data-type="value-perc"]]:group-hover/datalist:opacity-100`,t),...n,children:e})});p.displayName=`DataListItemValue`;var m=i.forwardRef(({children:e,className:t,...n},i)=>(0,a.jsx)(`div`,{ref:i,className:r(`z-10 px-2 font-mono text-sm`,t),"data-type":`value-abs`,...n,children:e}));m.displayName=`DataListItemValueAbs`;var h=i.forwardRef(({children:e,className:t,...n},i)=>(0,a.jsx)(`div`,{ref:i,className:r(`px-3 font-mono text-sm text-muted-foreground`,t),"data-type":`value-perc`,...n,children:e}));h.displayName=`DataListItemValuePerc`;export{s as a,m as c,c as i,h as l,d as n,f as o,l as r,p as s,o as t,u};
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{c as r}from"./dist-Cb5RSHSg.js";var i=e(t(),1),a=n(),o=i.forwardRef(({children:e,className:t,...n},i)=>(0,a.jsx)(`div`,{ref:i,className:r(`flex flex-col items-stretch`,t),...n,children:e}));o.displayName=`DataList`;var s=i.forwardRef(({children:e,className:t,...n},i)=>(0,a.jsx)(`div`,{ref:i,className:r(`flex items-center justify-between gap-2 border-b p-2 text-xs font-medium tracking-wide text-muted-foreground uppercase`,t),...n,children:e}));s.displayName=`DataListHeader`;var c=i.forwardRef(({children:e,className:t,...n},i)=>(0,a.jsx)(`div`,{ref:i,className:r(``,t),...n,children:e}));c.displayName=`DataListHead`;var l=i.forwardRef(({children:e,className:t,...n},i)=>(0,a.jsx)(`div`,{ref:i,className:r(`flex flex-col items-stretch pt-1.5`,t),...n,children:e}));l.displayName=`DataListBody`;var u=i.forwardRef(({children:e,className:t,...n},i)=>(0,a.jsx)(`div`,{ref:i,className:r(`group/row relative flex items-center justify-between gap-3 py-0.5 before:absolute before:-inset-x-0.5 before:inset-y-0.5 before:z-0 before:rounded-[6px] before:bg-muted/60 before:opacity-0 hover:before:opacity-100`,t),...n,children:e}));u.displayName=`DataListRow`;var d=i.forwardRef(({children:e,className:t,...n},i)=>(0,a.jsx)(`div`,{ref:i,className:r(`absolute inset-x-0 inset-y-1 z-0 origin-left rounded-[4px] bg-state-info/10 transition-all group-hover/row:bg-state-info/25 dark:bg-state-info/20 dark:group-hover/row:bg-state-info/35`,t),...n,children:e}));d.displayName=`DataListBar`;var f=i.forwardRef(({children:e,className:t,...n},i)=>(0,a.jsx)(`div`,{ref:i,className:r(`relative z-10 flex max-w-[calc(100%-32px)] min-w-0 items-center p-2 text-sm font-medium transition-[max-width] duration-300 ease-in-out group-hover/datalist:max-w-[calc(100%-100px)]`,t),...n,children:e}));f.displayName=`DataListItemContent`;var p=i.forwardRef(({children:e,className:t,...n},o)=>{let s=i.Children.toArray(e).length>1;return(0,a.jsx)(`div`,{ref:o,className:r(`z-10 flex items-center`,s&&`[&>[data-type="value-abs"]]:transition-transform [&>[data-type="value-abs"]]:duration-300 [&>[data-type="value-abs"]]:group-hover/datalist:-translate-x-14`,s&&`[&>[data-type="value-perc"]]:invisible [&>[data-type="value-perc"]]:absolute [&>[data-type="value-perc"]]:right-0 [&>[data-type="value-perc"]]:translate-x-14 [&>[data-type="value-perc"]]:opacity-0 [&>[data-type="value-perc"]]:transition-all [&>[data-type="value-perc"]]:duration-300 [&>[data-type="value-perc"]]:group-hover/datalist:visible [&>[data-type="value-perc"]]:group-hover/datalist:translate-x-0 [&>[data-type="value-perc"]]:group-hover/datalist:opacity-100`,t),...n,children:e})});p.displayName=`DataListItemValue`;var m=i.forwardRef(({children:e,className:t,...n},i)=>(0,a.jsx)(`div`,{ref:i,className:r(`z-10 px-2 font-mono text-sm`,t),"data-type":`value-abs`,...n,children:e}));m.displayName=`DataListItemValueAbs`;var h=i.forwardRef(({children:e,className:t,...n},i)=>(0,a.jsx)(`div`,{ref:i,className:r(`px-3 font-mono text-sm text-muted-foreground`,t),"data-type":`value-perc`,...n,children:e}));h.displayName=`DataListItemValuePerc`;export{s as a,m as c,c as i,h as l,d as n,f as o,l as r,p as s,o as t,u};
@@ -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{a as r,i,n as a,o,r as s,s as c,t as l}from"./select-C5_xEt5b.js";import{d as u,u as d,us as f}from"./index-BGG7NckO.js";var p=e(t(),1),m=n(),h=({range:e,onRangeChange:t,excludeRanges:n=[]})=>{let h=n.map(e=>d[e].value),g=u.filter(e=>!h.includes(e.value));return(0,p.useEffect)(()=>{if(h.includes(e)&&g.length>0){let e=g.find(e=>e.value===d.last7Days.value);t(e?e.value:g[0].value)}},[e,h,g,t]),(0,m.jsxs)(l,{value:`${e}`,onValueChange:e=>{t(Number(e))},children:[(0,m.jsxs)(o,{className:`w-auto`,children:[(0,m.jsx)(f,{className:`mr-2`,size:16,strokeWidth:1.5}),(0,m.jsx)(c,{placeholder:`Select a period`})]}),(0,m.jsx)(a,{align:`end`,children:(0,m.jsxs)(s,{children:[(0,m.jsx)(r,{children:`Period`}),g.map(e=>(0,m.jsx)(i,{value:`${e.value}`,children:e.name},e.value))]})})]})};export{h 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{a as r,i,n as a,o,r as s,s as c,t as l}from"./select-B0HteHrp.js";import{d as u,ds as d,u as f}from"./index-08n05-rc.js";var p=e(t(),1),m=n(),h=({range:e,onRangeChange:t,excludeRanges:n=[]})=>{let h=n.map(e=>f[e].value),g=u.filter(e=>!h.includes(e.value));return(0,p.useEffect)(()=>{if(h.includes(e)&&g.length>0){let e=g.find(e=>e.value===f.last7Days.value);t(e?e.value:g[0].value)}},[e,h,g,t]),(0,m.jsxs)(l,{value:`${e}`,onValueChange:e=>{t(Number(e))},children:[(0,m.jsxs)(o,{className:`w-auto`,children:[(0,m.jsx)(d,{className:`mr-2`,size:16,strokeWidth:1.5}),(0,m.jsx)(c,{placeholder:`Select a period`})]}),(0,m.jsx)(a,{align:`end`,children:(0,m.jsxs)(s,{children:[(0,m.jsx)(r,{children:`Period`}),g.map(e=>(0,m.jsx)(i,{value:`${e.value}`,children:e.name},e.value))]})})]})};export{h as t};
@@ -1 +1 @@
1
- import"./rolldown-runtime-DAXXjFlN.js";import{t as e}from"./react-Bb3IsNbi.js";import{t}from"./jsx-runtime-DX3WBWVO.js";import{a as n}from"./router-provider-C1R4AZ2o.js";import{t as r}from"./empty-indicator-oX1u1Pkn.js";import{Ir as i,Os as a}from"./index-BGG7NckO.js";e();var o=t(),s=({className:e})=>{let t=n();return(0,o.jsx)(r,{actions:(0,o.jsx)(i,{variant:`outline`,onClick:()=>t(`/settings/analytics`,{crossApp:!0}),children:`Open settings`}),className:e,description:`Enable member source tracking in settings to see which content drives member growth.`,title:`Member sources have been disabled`,children:(0,o.jsx)(a,{})})};export{s as t};
1
+ import"./rolldown-runtime-DAXXjFlN.js";import{t as e}from"./react-Bb3IsNbi.js";import{t}from"./jsx-runtime-DX3WBWVO.js";import{a as n}from"./router-provider-BmEZf6c6.js";import{t as r}from"./empty-indicator-WB1WgT9h.js";import{Ir as i,ks as a}from"./index-08n05-rc.js";e();var o=t(),s=({className:e})=>{let t=n();return(0,o.jsx)(r,{actions:(0,o.jsx)(i,{variant:`outline`,onClick:()=>t(`/settings/analytics`,{crossApp:!0}),children:`Open settings`}),className:e,description:`Enable member source tracking in settings to see which content drives member growth.`,title:`Member sources have been disabled`,children:(0,o.jsx)(a,{})})};export{s as t};
@@ -0,0 +1 @@
1
+ import{o as e}from"./rolldown-runtime-DAXXjFlN.js";import{t}from"./react-Bb3IsNbi.js";import{n,t as r}from"./jsx-runtime-DX3WBWVO.js";import{a as i}from"./dist-Cb5RSHSg.js";import{n as a,r as o,t as s}from"./dist-CQJY6SVY.js";import{t as c}from"./dist-CqO2lWS0.js";var l=(e,t)=>{t?.(e),e.defaultPrevented||e.stopPropagation()},u=e(t(),1),d=[`top`,`right`,`bottom`,`left`],f=Math.min,p=Math.max,m=Math.round,h=Math.floor,g=e=>({x:e,y:e}),_={left:`right`,right:`left`,bottom:`top`,top:`bottom`};function v(e,t,n){return p(e,f(t,n))}function y(e,t){return typeof e==`function`?e(t):e}function b(e){return e.split(`-`)[0]}function x(e){return e.split(`-`)[1]}function S(e){return e===`x`?`y`:`x`}function C(e){return e===`y`?`height`:`width`}function w(e){let t=e[0];return t===`t`||t===`b`?`y`:`x`}function T(e){return S(w(e))}function ee(e,t,n){n===void 0&&(n=!1);let r=x(e),i=T(e),a=C(i),o=i===`x`?r===(n?`end`:`start`)?`right`:`left`:r===`start`?`bottom`:`top`;return t.reference[a]>t.floating[a]&&(o=P(o)),[o,P(o)]}function E(e){let t=P(e);return[D(e),t,D(t)]}function D(e){return e.includes(`start`)?e.replace(`start`,`end`):e.replace(`end`,`start`)}var O=[`left`,`right`],k=[`right`,`left`],A=[`top`,`bottom`],j=[`bottom`,`top`];function M(e,t,n){switch(e){case`top`:case`bottom`:return n?t?k:O:t?O:k;case`left`:case`right`:return t?A:j;default:return[]}}function N(e,t,n,r){let i=x(e),a=M(b(e),n===`start`,r);return i&&(a=a.map(e=>e+`-`+i),t&&(a=a.concat(a.map(D)))),a}function P(e){let t=b(e);return _[t]+e.slice(t.length)}function F(e){return{top:0,right:0,bottom:0,left:0,...e}}function I(e){return typeof e==`number`?{top:e,right:e,bottom:e,left:e}:F(e)}function L(e){let{x:t,y:n,width:r,height:i}=e;return{width:r,height:i,top:n,left:t,right:t+r,bottom:n+i,x:t,y:n}}function R(e,t,n){let{reference:r,floating:i}=e,a=w(t),o=T(t),s=C(o),c=b(t),l=a===`y`,u=r.x+r.width/2-i.width/2,d=r.y+r.height/2-i.height/2,f=r[s]/2-i[s]/2,p;switch(c){case`top`:p={x:u,y:r.y-i.height};break;case`bottom`:p={x:u,y:r.y+r.height};break;case`right`:p={x:r.x+r.width,y:d};break;case`left`:p={x:r.x-i.width,y:d};break;default:p={x:r.x,y:r.y}}switch(x(t)){case`start`:p[o]-=f*(n&&l?-1:1);break;case`end`:p[o]+=f*(n&&l?-1:1);break}return p}async function z(e,t){t===void 0&&(t={});let{x:n,y:r,platform:i,rects:a,elements:o,strategy:s}=e,{boundary:c=`clippingAncestors`,rootBoundary:l=`viewport`,elementContext:u=`floating`,altBoundary:d=!1,padding:f=0}=y(t,e),p=I(f),m=o[d?u===`floating`?`reference`:`floating`:u],h=L(await i.getClippingRect({element:await(i.isElement==null?void 0:i.isElement(m))??!0?m:m.contextElement||await(i.getDocumentElement==null?void 0:i.getDocumentElement(o.floating)),boundary:c,rootBoundary:l,strategy:s})),g=u===`floating`?{x:n,y:r,width:a.floating.width,height:a.floating.height}:a.reference,_=await(i.getOffsetParent==null?void 0:i.getOffsetParent(o.floating)),v=await(i.isElement==null?void 0:i.isElement(_))&&await(i.getScale==null?void 0:i.getScale(_))||{x:1,y:1},b=L(i.convertOffsetParentRelativeRectToViewportRelativeRect?await i.convertOffsetParentRelativeRectToViewportRelativeRect({elements:o,rect:g,offsetParent:_,strategy:s}):g);return{top:(h.top-b.top+p.top)/v.y,bottom:(b.bottom-h.bottom+p.bottom)/v.y,left:(h.left-b.left+p.left)/v.x,right:(b.right-h.right+p.right)/v.x}}var te=50,ne=async(e,t,n)=>{let{placement:r=`bottom`,strategy:i=`absolute`,middleware:a=[],platform:o}=n,s=o.detectOverflow?o:{...o,detectOverflow:z},c=await(o.isRTL==null?void 0:o.isRTL(t)),l=await o.getElementRects({reference:e,floating:t,strategy:i}),{x:u,y:d}=R(l,r,c),f=r,p=0,m={};for(let n=0;n<a.length;n++){let h=a[n];if(!h)continue;let{name:g,fn:_}=h,{x:v,y,data:b,reset:x}=await _({x:u,y:d,initialPlacement:r,placement:f,strategy:i,middlewareData:m,rects:l,platform:s,elements:{reference:e,floating:t}});u=v??u,d=y??d,m[g]={...m[g],...b},x&&p<te&&(p++,typeof x==`object`&&(x.placement&&(f=x.placement),x.rects&&(l=x.rects===!0?await o.getElementRects({reference:e,floating:t,strategy:i}):x.rects),{x:u,y:d}=R(l,f,c)),n=-1)}return{x:u,y:d,placement:f,strategy:i,middlewareData:m}},re=e=>({name:`arrow`,options:e,async fn(t){let{x:n,y:r,placement:i,rects:a,platform:o,elements:s,middlewareData:c}=t,{element:l,padding:u=0}=y(e,t)||{};if(l==null)return{};let d=I(u),p={x:n,y:r},m=T(i),h=C(m),g=await o.getDimensions(l),_=m===`y`,b=_?`top`:`left`,S=_?`bottom`:`right`,w=_?`clientHeight`:`clientWidth`,ee=a.reference[h]+a.reference[m]-p[m]-a.floating[h],E=p[m]-a.reference[m],D=await(o.getOffsetParent==null?void 0:o.getOffsetParent(l)),O=D?D[w]:0;(!O||!await(o.isElement==null?void 0:o.isElement(D)))&&(O=s.floating[w]||a.floating[h]);let k=ee/2-E/2,A=O/2-g[h]/2-1,j=f(d[b],A),M=f(d[S],A),N=j,P=O-g[h]-M,F=O/2-g[h]/2+k,L=v(N,F,P),R=!c.arrow&&x(i)!=null&&F!==L&&a.reference[h]/2-(F<N?j:M)-g[h]/2<0,z=R?F<N?F-N:F-P:0;return{[m]:p[m]+z,data:{[m]:L,centerOffset:F-L-z,...R&&{alignmentOffset:z}},reset:R}}}),ie=function(e){return e===void 0&&(e={}),{name:`flip`,options:e,async fn(t){var n;let{placement:r,middlewareData:i,rects:a,initialPlacement:o,platform:s,elements:c}=t,{mainAxis:l=!0,crossAxis:u=!0,fallbackPlacements:d,fallbackStrategy:f=`bestFit`,fallbackAxisSideDirection:p=`none`,flipAlignment:m=!0,...h}=y(e,t);if((n=i.arrow)!=null&&n.alignmentOffset)return{};let g=b(r),_=w(o),v=b(o)===o,x=await(s.isRTL==null?void 0:s.isRTL(c.floating)),S=d||(v||!m?[P(o)]:E(o)),C=p!==`none`;!d&&C&&S.push(...N(o,m,p,x));let T=[o,...S],D=await s.detectOverflow(t,h),O=[],k=i.flip?.overflows||[];if(l&&O.push(D[g]),u){let e=ee(r,a,x);O.push(D[e[0]],D[e[1]])}if(k=[...k,{placement:r,overflows:O}],!O.every(e=>e<=0)){let e=(i.flip?.index||0)+1,t=T[e];if(t&&(!(u===`alignment`&&_!==w(t))||k.every(e=>w(e.placement)===_?e.overflows[0]>0:!0)))return{data:{index:e,overflows:k},reset:{placement:t}};let n=k.filter(e=>e.overflows[0]<=0).sort((e,t)=>e.overflows[1]-t.overflows[1])[0]?.placement;if(!n)switch(f){case`bestFit`:{let e=k.filter(e=>{if(C){let t=w(e.placement);return t===_||t===`y`}return!0}).map(e=>[e.placement,e.overflows.filter(e=>e>0).reduce((e,t)=>e+t,0)]).sort((e,t)=>e[1]-t[1])[0]?.[0];e&&(n=e);break}case`initialPlacement`:n=o;break}if(r!==n)return{reset:{placement:n}}}return{}}}};function ae(e,t){return{top:e.top-t.height,right:e.right-t.width,bottom:e.bottom-t.height,left:e.left-t.width}}function oe(e){return d.some(t=>e[t]>=0)}var se=function(e){return e===void 0&&(e={}),{name:`hide`,options:e,async fn(t){let{rects:n,platform:r}=t,{strategy:i=`referenceHidden`,...a}=y(e,t);switch(i){case`referenceHidden`:{let e=ae(await r.detectOverflow(t,{...a,elementContext:`reference`}),n.reference);return{data:{referenceHiddenOffsets:e,referenceHidden:oe(e)}}}case`escaped`:{let e=ae(await r.detectOverflow(t,{...a,altBoundary:!0}),n.floating);return{data:{escapedOffsets:e,escaped:oe(e)}}}default:return{}}}}},ce=new Set([`left`,`top`]);async function le(e,t){let{placement:n,platform:r,elements:i}=e,a=await(r.isRTL==null?void 0:r.isRTL(i.floating)),o=b(n),s=x(n),c=w(n)===`y`,l=ce.has(o)?-1:1,u=a&&c?-1:1,d=y(t,e),{mainAxis:f,crossAxis:p,alignmentAxis:m}=typeof d==`number`?{mainAxis:d,crossAxis:0,alignmentAxis:null}:{mainAxis:d.mainAxis||0,crossAxis:d.crossAxis||0,alignmentAxis:d.alignmentAxis};return s&&typeof m==`number`&&(p=s===`end`?m*-1:m),c?{x:p*u,y:f*l}:{x:f*l,y:p*u}}var ue=function(e){return e===void 0&&(e=0),{name:`offset`,options:e,async fn(t){var n;let{x:r,y:i,placement:a,middlewareData:o}=t,s=await le(t,e);return a===o.offset?.placement&&(n=o.arrow)!=null&&n.alignmentOffset?{}:{x:r+s.x,y:i+s.y,data:{...s,placement:a}}}}},de=function(e){return e===void 0&&(e={}),{name:`shift`,options:e,async fn(t){let{x:n,y:r,placement:i,platform:a}=t,{mainAxis:o=!0,crossAxis:s=!1,limiter:c={fn:e=>{let{x:t,y:n}=e;return{x:t,y:n}}},...l}=y(e,t),u={x:n,y:r},d=await a.detectOverflow(t,l),f=w(b(i)),p=S(f),m=u[p],h=u[f];if(o){let e=p===`y`?`top`:`left`,t=p===`y`?`bottom`:`right`,n=m+d[e],r=m-d[t];m=v(n,m,r)}if(s){let e=f===`y`?`top`:`left`,t=f===`y`?`bottom`:`right`,n=h+d[e],r=h-d[t];h=v(n,h,r)}let g=c.fn({...t,[p]:m,[f]:h});return{...g,data:{x:g.x-n,y:g.y-r,enabled:{[p]:o,[f]:s}}}}}},fe=function(e){return e===void 0&&(e={}),{options:e,fn(t){let{x:n,y:r,placement:i,rects:a,middlewareData:o}=t,{offset:s=0,mainAxis:c=!0,crossAxis:l=!0}=y(e,t),u={x:n,y:r},d=w(i),f=S(d),p=u[f],m=u[d],h=y(s,t),g=typeof h==`number`?{mainAxis:h,crossAxis:0}:{mainAxis:0,crossAxis:0,...h};if(c){let e=f===`y`?`height`:`width`,t=a.reference[f]-a.floating[e]+g.mainAxis,n=a.reference[f]+a.reference[e]-g.mainAxis;p<t?p=t:p>n&&(p=n)}if(l){let e=f===`y`?`width`:`height`,t=ce.has(b(i)),n=a.reference[d]-a.floating[e]+(t&&o.offset?.[d]||0)+(t?0:g.crossAxis),r=a.reference[d]+a.reference[e]+(t?0:o.offset?.[d]||0)-(t?g.crossAxis:0);m<n?m=n:m>r&&(m=r)}return{[f]:p,[d]:m}}}},pe=function(e){return e===void 0&&(e={}),{name:`size`,options:e,async fn(t){var n,r;let{placement:i,rects:a,platform:o,elements:s}=t,{apply:c=()=>{},...l}=y(e,t),u=await o.detectOverflow(t,l),d=b(i),m=x(i),h=w(i)===`y`,{width:g,height:_}=a.floating,v,S;d===`top`||d===`bottom`?(v=d,S=m===(await(o.isRTL==null?void 0:o.isRTL(s.floating))?`start`:`end`)?`left`:`right`):(S=d,v=m===`end`?`top`:`bottom`);let C=_-u.top-u.bottom,T=g-u.left-u.right,ee=f(_-u[v],C),E=f(g-u[S],T),D=!t.middlewareData.shift,O=ee,k=E;if((n=t.middlewareData.shift)!=null&&n.enabled.x&&(k=T),(r=t.middlewareData.shift)!=null&&r.enabled.y&&(O=C),D&&!m){let e=p(u.left,0),t=p(u.right,0),n=p(u.top,0),r=p(u.bottom,0);h?k=g-2*(e!==0||t!==0?e+t:p(u.left,u.right)):O=_-2*(n!==0||r!==0?n+r:p(u.top,u.bottom))}await c({...t,availableWidth:k,availableHeight:O});let A=await o.getDimensions(s.floating);return g!==A.width||_!==A.height?{reset:{rects:!0}}:{}}}};function me(){return typeof window<`u`}function B(e){return he(e)?(e.nodeName||``).toLowerCase():`#document`}function V(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function H(e){return((he(e)?e.ownerDocument:e.document)||window.document)?.documentElement}function he(e){return me()?e instanceof Node||e instanceof V(e).Node:!1}function U(e){return me()?e instanceof Element||e instanceof V(e).Element:!1}function W(e){return me()?e instanceof HTMLElement||e instanceof V(e).HTMLElement:!1}function ge(e){return!me()||typeof ShadowRoot>`u`?!1:e instanceof ShadowRoot||e instanceof V(e).ShadowRoot}function G(e){let{overflow:t,overflowX:n,overflowY:r,display:i}=J(e);return/auto|scroll|overlay|hidden|clip/.test(t+r+n)&&i!==`inline`&&i!==`contents`}function _e(e){return/^(table|td|th)$/.test(B(e))}function ve(e){try{if(e.matches(`:popover-open`))return!0}catch{}try{return e.matches(`:modal`)}catch{return!1}}var ye=/transform|translate|scale|rotate|perspective|filter/,be=/paint|layout|strict|content/,K=e=>!!e&&e!==`none`,xe;function Se(e){let t=U(e)?J(e):e;return K(t.transform)||K(t.translate)||K(t.scale)||K(t.rotate)||K(t.perspective)||!we()&&(K(t.backdropFilter)||K(t.filter))||ye.test(t.willChange||``)||be.test(t.contain||``)}function Ce(e){let t=Y(e);for(;W(t)&&!q(t);){if(Se(t))return t;if(ve(t))return null;t=Y(t)}return null}function we(){return xe??=typeof CSS<`u`&&CSS.supports&&CSS.supports(`-webkit-backdrop-filter`,`none`),xe}function q(e){return/^(html|body|#document)$/.test(B(e))}function J(e){return V(e).getComputedStyle(e)}function Te(e){return U(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function Y(e){if(B(e)===`html`)return e;let t=e.assignedSlot||e.parentNode||ge(e)&&e.host||H(e);return ge(t)?t.host:t}function Ee(e){let t=Y(e);return q(t)?e.ownerDocument?e.ownerDocument.body:e.body:W(t)&&G(t)?t:Ee(t)}function X(e,t,n){t===void 0&&(t=[]),n===void 0&&(n=!0);let r=Ee(e),i=r===e.ownerDocument?.body,a=V(r);if(i){let e=De(a);return t.concat(a,a.visualViewport||[],G(r)?r:[],e&&n?X(e):[])}else return t.concat(r,X(r,[],n))}function De(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function Oe(e){let t=J(e),n=parseFloat(t.width)||0,r=parseFloat(t.height)||0,i=W(e),a=i?e.offsetWidth:n,o=i?e.offsetHeight:r,s=m(n)!==a||m(r)!==o;return s&&(n=a,r=o),{width:n,height:r,$:s}}function ke(e){return U(e)?e:e.contextElement}function Z(e){let t=ke(e);if(!W(t))return g(1);let n=t.getBoundingClientRect(),{width:r,height:i,$:a}=Oe(t),o=(a?m(n.width):n.width)/r,s=(a?m(n.height):n.height)/i;return(!o||!Number.isFinite(o))&&(o=1),(!s||!Number.isFinite(s))&&(s=1),{x:o,y:s}}var Ae=g(0);function je(e){let t=V(e);return!we()||!t.visualViewport?Ae:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function Me(e,t,n){return t===void 0&&(t=!1),!n||t&&n!==V(e)?!1:t}function Q(e,t,n,r){t===void 0&&(t=!1),n===void 0&&(n=!1);let i=e.getBoundingClientRect(),a=ke(e),o=g(1);t&&(r?U(r)&&(o=Z(r)):o=Z(e));let s=Me(a,n,r)?je(a):g(0),c=(i.left+s.x)/o.x,l=(i.top+s.y)/o.y,u=i.width/o.x,d=i.height/o.y;if(a){let e=V(a),t=r&&U(r)?V(r):r,n=e,i=De(n);for(;i&&r&&t!==n;){let e=Z(i),t=i.getBoundingClientRect(),r=J(i),a=t.left+(i.clientLeft+parseFloat(r.paddingLeft))*e.x,o=t.top+(i.clientTop+parseFloat(r.paddingTop))*e.y;c*=e.x,l*=e.y,u*=e.x,d*=e.y,c+=a,l+=o,n=V(i),i=De(n)}}return L({width:u,height:d,x:c,y:l})}function Ne(e,t){let n=Te(e).scrollLeft;return t?t.left+n:Q(H(e)).left+n}function Pe(e,t){let n=e.getBoundingClientRect();return{x:n.left+t.scrollLeft-Ne(e,n),y:n.top+t.scrollTop}}function Fe(e){let{elements:t,rect:n,offsetParent:r,strategy:i}=e,a=i===`fixed`,o=H(r),s=t?ve(t.floating):!1;if(r===o||s&&a)return n;let c={scrollLeft:0,scrollTop:0},l=g(1),u=g(0),d=W(r);if((d||!d&&!a)&&((B(r)!==`body`||G(o))&&(c=Te(r)),d)){let e=Q(r);l=Z(r),u.x=e.x+r.clientLeft,u.y=e.y+r.clientTop}let f=o&&!d&&!a?Pe(o,c):g(0);return{width:n.width*l.x,height:n.height*l.y,x:n.x*l.x-c.scrollLeft*l.x+u.x+f.x,y:n.y*l.y-c.scrollTop*l.y+u.y+f.y}}function Ie(e){return Array.from(e.getClientRects())}function Le(e){let t=H(e),n=Te(e),r=e.ownerDocument.body,i=p(t.scrollWidth,t.clientWidth,r.scrollWidth,r.clientWidth),a=p(t.scrollHeight,t.clientHeight,r.scrollHeight,r.clientHeight),o=-n.scrollLeft+Ne(e),s=-n.scrollTop;return J(r).direction===`rtl`&&(o+=p(t.clientWidth,r.clientWidth)-i),{width:i,height:a,x:o,y:s}}var Re=25;function ze(e,t){let n=V(e),r=H(e),i=n.visualViewport,a=r.clientWidth,o=r.clientHeight,s=0,c=0;if(i){a=i.width,o=i.height;let e=we();(!e||e&&t===`fixed`)&&(s=i.offsetLeft,c=i.offsetTop)}let l=Ne(r);if(l<=0){let e=r.ownerDocument,t=e.body,n=getComputedStyle(t),i=e.compatMode===`CSS1Compat`&&parseFloat(n.marginLeft)+parseFloat(n.marginRight)||0,o=Math.abs(r.clientWidth-t.clientWidth-i);o<=Re&&(a-=o)}else l<=Re&&(a+=l);return{width:a,height:o,x:s,y:c}}function Be(e,t){let n=Q(e,!0,t===`fixed`),r=n.top+e.clientTop,i=n.left+e.clientLeft,a=W(e)?Z(e):g(1);return{width:e.clientWidth*a.x,height:e.clientHeight*a.y,x:i*a.x,y:r*a.y}}function Ve(e,t,n){let r;if(t===`viewport`)r=ze(e,n);else if(t===`document`)r=Le(H(e));else if(U(t))r=Be(t,n);else{let n=je(e);r={x:t.x-n.x,y:t.y-n.y,width:t.width,height:t.height}}return L(r)}function He(e,t){let n=Y(e);return n===t||!U(n)||q(n)?!1:J(n).position===`fixed`||He(n,t)}function Ue(e,t){let n=t.get(e);if(n)return n;let r=X(e,[],!1).filter(e=>U(e)&&B(e)!==`body`),i=null,a=J(e).position===`fixed`,o=a?Y(e):e;for(;U(o)&&!q(o);){let t=J(o),n=Se(o);!n&&t.position===`fixed`&&(i=null),(a?!n&&!i:!n&&t.position===`static`&&i&&(i.position===`absolute`||i.position===`fixed`)||G(o)&&!n&&He(e,o))?r=r.filter(e=>e!==o):i=t,o=Y(o)}return t.set(e,r),r}function We(e){let{element:t,boundary:n,rootBoundary:r,strategy:i}=e,a=[...n===`clippingAncestors`?ve(t)?[]:Ue(t,this._c):[].concat(n),r],o=Ve(t,a[0],i),s=o.top,c=o.right,l=o.bottom,u=o.left;for(let e=1;e<a.length;e++){let n=Ve(t,a[e],i);s=p(n.top,s),c=f(n.right,c),l=f(n.bottom,l),u=p(n.left,u)}return{width:c-u,height:l-s,x:u,y:s}}function Ge(e){let{width:t,height:n}=Oe(e);return{width:t,height:n}}function Ke(e,t,n){let r=W(t),i=H(t),a=n===`fixed`,o=Q(e,!0,a,t),s={scrollLeft:0,scrollTop:0},c=g(0);function l(){c.x=Ne(i)}if(r||!r&&!a)if((B(t)!==`body`||G(i))&&(s=Te(t)),r){let e=Q(t,!0,a,t);c.x=e.x+t.clientLeft,c.y=e.y+t.clientTop}else i&&l();a&&!r&&i&&l();let u=i&&!r&&!a?Pe(i,s):g(0);return{x:o.left+s.scrollLeft-c.x-u.x,y:o.top+s.scrollTop-c.y-u.y,width:o.width,height:o.height}}function qe(e){return J(e).position===`static`}function Je(e,t){if(!W(e)||J(e).position===`fixed`)return null;if(t)return t(e);let n=e.offsetParent;return H(e)===n&&(n=n.ownerDocument.body),n}function Ye(e,t){let n=V(e);if(ve(e))return n;if(!W(e)){let t=Y(e);for(;t&&!q(t);){if(U(t)&&!qe(t))return t;t=Y(t)}return n}let r=Je(e,t);for(;r&&_e(r)&&qe(r);)r=Je(r,t);return r&&q(r)&&qe(r)&&!Se(r)?n:r||Ce(e)||n}var Xe=async function(e){let t=this.getOffsetParent||Ye,n=this.getDimensions,r=await n(e.floating);return{reference:Ke(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:r.width,height:r.height}}};function Ze(e){return J(e).direction===`rtl`}var Qe={convertOffsetParentRelativeRectToViewportRelativeRect:Fe,getDocumentElement:H,getClippingRect:We,getOffsetParent:Ye,getElementRects:Xe,getClientRects:Ie,getDimensions:Ge,getScale:Z,isElement:U,isRTL:Ze};function $e(e,t){return e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height}function et(e,t){let n=null,r,i=H(e);function a(){var e;clearTimeout(r),(e=n)==null||e.disconnect(),n=null}function o(s,c){s===void 0&&(s=!1),c===void 0&&(c=1),a();let l=e.getBoundingClientRect(),{left:u,top:d,width:m,height:g}=l;if(s||t(),!m||!g)return;let _=h(d),v=h(i.clientWidth-(u+m)),y=h(i.clientHeight-(d+g)),b=h(u),x={rootMargin:-_+`px `+-v+`px `+-y+`px `+-b+`px`,threshold:p(0,f(1,c))||1},S=!0;function C(t){let n=t[0].intersectionRatio;if(n!==c){if(!S)return o();n?o(!1,n):r=setTimeout(()=>{o(!1,1e-7)},1e3)}n===1&&!$e(l,e.getBoundingClientRect())&&o(),S=!1}try{n=new IntersectionObserver(C,{...x,root:i.ownerDocument})}catch{n=new IntersectionObserver(C,x)}n.observe(e)}return o(!0),a}function tt(e,t,n,r){r===void 0&&(r={});let{ancestorScroll:i=!0,ancestorResize:a=!0,elementResize:o=typeof ResizeObserver==`function`,layoutShift:s=typeof IntersectionObserver==`function`,animationFrame:c=!1}=r,l=ke(e),u=i||a?[...l?X(l):[],...t?X(t):[]]:[];u.forEach(e=>{i&&e.addEventListener(`scroll`,n,{passive:!0}),a&&e.addEventListener(`resize`,n)});let d=l&&s?et(l,n):null,f=-1,p=null;o&&(p=new ResizeObserver(e=>{let[r]=e;r&&r.target===l&&p&&t&&(p.unobserve(t),cancelAnimationFrame(f),f=requestAnimationFrame(()=>{var e;(e=p)==null||e.observe(t)})),n()}),l&&!c&&p.observe(l),t&&p.observe(t));let m,h=c?Q(e):null;c&&g();function g(){let t=Q(e);h&&!$e(h,t)&&n(),h=t,m=requestAnimationFrame(g)}return n(),()=>{var e;u.forEach(e=>{i&&e.removeEventListener(`scroll`,n),a&&e.removeEventListener(`resize`,n)}),d?.(),(e=p)==null||e.disconnect(),p=null,c&&cancelAnimationFrame(m)}}var nt=ue,rt=de,it=ie,at=pe,ot=se,st=re,ct=fe,lt=(e,t,n)=>{let r=new Map,i={platform:Qe,...n},a={...i.platform,_c:r};return ne(e,t,{...i,platform:a})},ut=e(n(),1),dt=typeof document<`u`?u.useLayoutEffect:function(){};function ft(e,t){if(e===t)return!0;if(typeof e!=typeof t)return!1;if(typeof e==`function`&&e.toString()===t.toString())return!0;let n,r,i;if(e&&t&&typeof e==`object`){if(Array.isArray(e)){if(n=e.length,n!==t.length)return!1;for(r=n;r--!==0;)if(!ft(e[r],t[r]))return!1;return!0}if(i=Object.keys(e),n=i.length,n!==Object.keys(t).length)return!1;for(r=n;r--!==0;)if(!{}.hasOwnProperty.call(t,i[r]))return!1;for(r=n;r--!==0;){let n=i[r];if(!(n===`_owner`&&e.$$typeof)&&!ft(e[n],t[n]))return!1}return!0}return e!==e&&t!==t}function pt(e){return typeof window>`u`?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function mt(e,t){let n=pt(e);return Math.round(t*n)/n}function ht(e){let t=u.useRef(e);return dt(()=>{t.current=e}),t}function gt(e){e===void 0&&(e={});let{placement:t=`bottom`,strategy:n=`absolute`,middleware:r=[],platform:i,elements:{reference:a,floating:o}={},transform:s=!0,whileElementsMounted:c,open:l}=e,[d,f]=u.useState({x:0,y:0,strategy:n,placement:t,middlewareData:{},isPositioned:!1}),[p,m]=u.useState(r);ft(p,r)||m(r);let[h,g]=u.useState(null),[_,v]=u.useState(null),y=u.useCallback(e=>{e!==C.current&&(C.current=e,g(e))},[]),b=u.useCallback(e=>{e!==w.current&&(w.current=e,v(e))},[]),x=a||h,S=o||_,C=u.useRef(null),w=u.useRef(null),T=u.useRef(d),ee=c!=null,E=ht(c),D=ht(i),O=ht(l),k=u.useCallback(()=>{if(!C.current||!w.current)return;let e={placement:t,strategy:n,middleware:p};D.current&&(e.platform=D.current),lt(C.current,w.current,e).then(e=>{let t={...e,isPositioned:O.current!==!1};A.current&&!ft(T.current,t)&&(T.current=t,ut.flushSync(()=>{f(t)}))})},[p,t,n,D,O]);dt(()=>{l===!1&&T.current.isPositioned&&(T.current.isPositioned=!1,f(e=>({...e,isPositioned:!1})))},[l]);let A=u.useRef(!1);dt(()=>(A.current=!0,()=>{A.current=!1}),[]),dt(()=>{if(x&&(C.current=x),S&&(w.current=S),x&&S){if(E.current)return E.current(x,S,k);k()}},[x,S,k,E,ee]);let j=u.useMemo(()=>({reference:C,floating:w,setReference:y,setFloating:b}),[y,b]),M=u.useMemo(()=>({reference:x,floating:S}),[x,S]),N=u.useMemo(()=>{let e={position:n,left:0,top:0};if(!M.floating)return e;let t=mt(M.floating,d.x),r=mt(M.floating,d.y);return s?{...e,transform:`translate(`+t+`px, `+r+`px)`,...pt(M.floating)>=1.5&&{willChange:`transform`}}:{position:n,left:t,top:r}},[n,s,M.floating,d.x,d.y]);return u.useMemo(()=>({...d,update:k,refs:j,elements:M,floatingStyles:N}),[d,k,j,M,N])}var _t=e=>{function t(e){return{}.hasOwnProperty.call(e,`current`)}return{name:`arrow`,options:e,fn(n){let{element:r,padding:i}=typeof e==`function`?e(n):e;return r&&t(r)?r.current==null?{}:st({element:r.current,padding:i}).fn(n):r?st({element:r,padding:i}).fn(n):{}}}},vt=(e,t)=>{let n=nt(e);return{name:n.name,fn:n.fn,options:[e,t]}},yt=(e,t)=>{let n=rt(e);return{name:n.name,fn:n.fn,options:[e,t]}},bt=(e,t)=>({fn:ct(e).fn,options:[e,t]}),xt=(e,t)=>{let n=it(e);return{name:n.name,fn:n.fn,options:[e,t]}},St=(e,t)=>{let n=at(e);return{name:n.name,fn:n.fn,options:[e,t]}},Ct=(e,t)=>{let n=ot(e);return{name:n.name,fn:n.fn,options:[e,t]}},wt=(e,t)=>{let n=_t(e);return{name:n.name,fn:n.fn,options:[e,t]}},$=r(),Tt=`Arrow`,Et=u.forwardRef((e,t)=>{let{children:n,width:r=10,height:i=5,...a}=e;return(0,$.jsx)(c.svg,{...a,ref:t,width:r,height:i,viewBox:`0 0 30 10`,preserveAspectRatio:`none`,children:e.asChild?n:(0,$.jsx)(`polygon`,{points:`0,0 30,0 15,10`})})});Et.displayName=Tt;var Dt=Et;function Ot(e){let[t,n]=u.useState(void 0);return a(()=>{if(e){n({width:e.offsetWidth,height:e.offsetHeight});let t=new ResizeObserver(t=>{if(!Array.isArray(t)||!t.length)return;let r=t[0],i,a;if(`borderBoxSize`in r){let e=r.borderBoxSize,t=Array.isArray(e)?e[0]:e;i=t.inlineSize,a=t.blockSize}else i=e.offsetWidth,a=e.offsetHeight;n({width:i,height:a})});return t.observe(e,{box:`border-box`}),()=>t.unobserve(e)}else n(void 0)},[e]),t}var kt=`Popper`,[At,jt]=o(kt),[Mt,Nt]=At(kt),Pt=e=>{let{__scopePopper:t,children:n}=e,[r,i]=u.useState(null),[a,o]=u.useState(void 0);return(0,$.jsx)(Mt,{scope:t,anchor:r,onAnchorChange:i,placementState:a,setPlacementState:o,children:n})};Pt.displayName=kt;var Ft=`PopperAnchor`,It=u.forwardRef((e,t)=>{let{__scopePopper:n,virtualRef:r,...a}=e,o=Nt(Ft,n),s=u.useRef(null),l=o.onAnchorChange,d=i(t,u.useCallback(e=>{s.current=e,e&&l(e)},[l])),f=u.useRef(null);u.useEffect(()=>{if(!r)return;let e=f.current;f.current=r.current,e!==f.current&&l(f.current)});let p=o.placementState&&Kt(o.placementState),m=p?.[0],h=p?.[1];return r?null:(0,$.jsx)(c.div,{"data-radix-popper-side":m,"data-radix-popper-align":h,...a,ref:d})});It.displayName=Ft;var Lt=`PopperContent`,[Rt,zt]=At(Lt),Bt=u.forwardRef((e,t)=>{let{__scopePopper:n,side:r=`bottom`,sideOffset:o=0,align:l=`center`,alignOffset:d=0,arrowPadding:f=0,avoidCollisions:p=!0,collisionBoundary:m=[],collisionPadding:h=0,sticky:g=`partial`,hideWhenDetached:_=!1,updatePositionStrategy:v=`optimized`,onPlaced:y,...b}=e,x=Nt(Lt,n),[S,C]=u.useState(null),w=i(t,C),[T,ee]=u.useState(null),E=Ot(T),D=E?.width??0,O=E?.height??0,k=r+(l===`center`?``:`-`+l),A=typeof h==`number`?h:{top:0,right:0,bottom:0,left:0,...h},j=Array.isArray(m)?m:[m],M=j.length>0,N={padding:A,boundary:j.filter(Wt),altBoundary:M},{refs:P,floatingStyles:F,placement:I,isPositioned:L,middlewareData:R}=gt({strategy:`fixed`,placement:k,whileElementsMounted:(...e)=>tt(...e,{animationFrame:v===`always`}),elements:{reference:x.anchor},middleware:[vt({mainAxis:o+O,alignmentAxis:d}),p&&yt({mainAxis:!0,crossAxis:!1,limiter:g===`partial`?bt():void 0,...N}),p&&xt({...N}),St({...N,apply:({elements:e,rects:t,availableWidth:n,availableHeight:r})=>{let{width:i,height:a}=t.reference,o=e.floating.style;o.setProperty(`--radix-popper-available-width`,`${n}px`),o.setProperty(`--radix-popper-available-height`,`${r}px`),o.setProperty(`--radix-popper-anchor-width`,`${i}px`),o.setProperty(`--radix-popper-anchor-height`,`${a}px`)}}),T&&wt({element:T,padding:f}),Gt({arrowWidth:D,arrowHeight:O}),_&&Ct({strategy:`referenceHidden`,...N,boundary:M?N.boundary:void 0})]}),z=x.setPlacementState;a(()=>(z(I),()=>{z(void 0)}),[I,z]);let[te,ne]=Kt(I),re=s(y);a(()=>{L&&re?.()},[L,re]);let ie=R.arrow?.x,ae=R.arrow?.y,oe=R.arrow?.centerOffset!==0,[se,ce]=u.useState();return a(()=>{S&&ce(window.getComputedStyle(S).zIndex)},[S]),(0,$.jsx)(`div`,{ref:P.setFloating,"data-radix-popper-content-wrapper":``,style:{...F,transform:L?F.transform:`translate(0, -200%)`,minWidth:`max-content`,zIndex:se,"--radix-popper-transform-origin":[R.transformOrigin?.x,R.transformOrigin?.y].join(` `),...R.hide?.referenceHidden&&{visibility:`hidden`,pointerEvents:`none`}},dir:e.dir,children:(0,$.jsx)(Rt,{scope:n,placedSide:te,placedAlign:ne,onArrowChange:ee,arrowX:ie,arrowY:ae,shouldHideArrow:oe,children:(0,$.jsx)(c.div,{"data-side":te,"data-align":ne,...b,ref:w,style:{...b.style,animation:L?void 0:`none`}})})})});Bt.displayName=Lt;var Vt=`PopperArrow`,Ht={top:`bottom`,right:`left`,bottom:`top`,left:`right`},Ut=u.forwardRef(function(e,t){let{__scopePopper:n,...r}=e,i=zt(Vt,n),a=Ht[i.placedSide];return(0,$.jsx)(`span`,{ref:i.onArrowChange,style:{position:`absolute`,left:i.arrowX,top:i.arrowY,[a]:0,transformOrigin:{top:``,right:`0 0`,bottom:`center 0`,left:`100% 0`}[i.placedSide],transform:{top:`translateY(100%)`,right:`translateY(50%) rotate(90deg) translateX(-50%)`,bottom:`rotate(180deg)`,left:`translateY(50%) rotate(-90deg) translateX(50%)`}[i.placedSide],visibility:i.shouldHideArrow?`hidden`:void 0},children:(0,$.jsx)(Dt,{...r,ref:t,style:{...r.style,display:`block`}})})});Ut.displayName=Vt;function Wt(e){return e!==null}var Gt=e=>({name:`transformOrigin`,options:e,fn(t){let{placement:n,rects:r,middlewareData:i}=t,a=i.arrow?.centerOffset!==0,o=a?0:e.arrowWidth,s=a?0:e.arrowHeight,[c,l]=Kt(n),u={start:`0%`,center:`50%`,end:`100%`}[l],d=(i.arrow?.x??0)+o/2,f=(i.arrow?.y??0)+s/2,p=``,m=``;return c===`bottom`?(p=a?u:`${d}px`,m=`${-s}px`):c===`top`?(p=a?u:`${d}px`,m=`${r.floating.height+s}px`):c===`right`?(p=`${-s}px`,m=a?u:`${f}px`):c===`left`&&(p=`${r.floating.width+s}px`,m=a?u:`${f}px`),{data:{x:p,y:m}}}});function Kt(e){let[t,n=`center`]=e.split(`-`);return[t,n]}var qt=Pt,Jt=It,Yt=Bt,Xt=Ut;export{jt as a,qt as i,Xt as n,Ot as o,Yt as r,l as s,Jt 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{t as r}from"./dist-P_ohUlTi.js";var i=e(t(),1),a=n(),o=Object.freeze({position:`absolute`,border:0,width:1,height:1,padding:0,margin:-1,overflow:`hidden`,clip:`rect(0, 0, 0, 0)`,whiteSpace:`nowrap`,wordWrap:`normal`}),s=`VisuallyHidden`,c=i.forwardRef((e,t)=>(0,a.jsx)(r.span,{...e,ref:t,style:{...o,...e.style}}));c.displayName=s;var l=c;export{o as n,l 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{t as r}from"./dist-CqO2lWS0.js";var i=e(t(),1),a=n(),o=Object.freeze({position:`absolute`,border:0,width:1,height:1,padding:0,margin:-1,overflow:`hidden`,clip:`rect(0, 0, 0, 0)`,whiteSpace:`nowrap`,wordWrap:`normal`}),s=`VisuallyHidden`,c=i.forwardRef((e,t)=>(0,a.jsx)(r.span,{...e,ref:t,style:{...o,...e.style}}));c.displayName=s;var l=c;export{o as n,l as t};