ghost 6.57.0 → 6.57.1

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 (205) hide show
  1. package/components/tryghost-adapter-base-scheduling-0.2.1.tgz +0 -0
  2. package/components/tryghost-kg-converters-1.2.4.tgz +0 -0
  3. package/components/tryghost-kg-default-cards-10.3.4.tgz +0 -0
  4. package/components/tryghost-kg-default-nodes-2.1.5.tgz +0 -0
  5. package/components/tryghost-kg-default-transforms-1.3.3.tgz +0 -0
  6. package/components/tryghost-kg-html-to-lexical-1.3.3.tgz +0 -0
  7. package/components/tryghost-kg-lexical-html-renderer-1.4.3.tgz +0 -0
  8. package/core/built/admin/assets/{about-C7O-AgRZ.js → about-BNojRaxf.js} +1 -1
  9. package/core/built/admin/assets/{account-migration-Cv_ol1ko.js → account-migration-DMS8JsM-.js} +1 -1
  10. package/core/built/admin/assets/{add-integration-modal-m9Dv6f77.js → add-integration-modal-DU9ghGLS.js} +1 -1
  11. package/core/built/admin/assets/{add-newsletter-modal-CPSVZL2H.js → add-newsletter-modal-DFxuQrYu.js} +1 -1
  12. package/core/built/admin/assets/{add-recommendation-modal-Ci9Z5yat.js → add-recommendation-modal-D-3LOrdd.js} +1 -1
  13. package/core/built/admin/assets/{analytics-DqSCVV8U.js → analytics-DTIMRhWw.js} +1 -1
  14. package/core/built/admin/assets/{announcement-bar-modal-DU3avV7d.js → announcement-bar-modal-DGCcezB6.js} +1 -1
  15. package/core/built/admin/assets/{api-keys-BK0LylyK.js → api-keys-Dx4NeNpK.js} +1 -1
  16. package/core/built/admin/assets/{audience-DTJtXXWY.js → audience-DkknNqhZ.js} +1 -1
  17. package/core/built/admin/assets/{automations-dtQ_MRZ7.js → automations-DvSU7QhW.js} +1 -1
  18. package/core/built/admin/assets/{bluesky-sharing-B8Es3AuV.js → bluesky-sharing-yZ9A_jL8.js} +1 -1
  19. package/core/built/admin/assets/{breadcrumb-tg5zL--z.js → breadcrumb-CjOH7LCU.js} +1 -1
  20. package/core/built/admin/assets/{chart-helpers-CZElTGYL.js → chart-helpers-DGxvWnBT.js} +1 -1
  21. package/core/built/admin/assets/{checkbox-Cyo-x7mC.js → checkbox-BSUcnNq_.js} +1 -1
  22. package/core/built/admin/assets/{chunk.873.b8fc05a8ab877fb819ed.js → chunk.424.4a27628efdade15c2dab.js} +3 -3
  23. package/core/built/admin/assets/chunk.524.dce1c51e0bc30fb2718e.js +25 -0
  24. package/core/built/admin/assets/{chunk.211.6f7328d63c41536451b3.js → chunk.571.40f093ed6d883993714e.js} +5 -5
  25. package/core/built/admin/assets/chunk.582.3a430d5c6a744fd475b6.js +27 -0
  26. package/core/built/admin/assets/{code-editor-view-Dq1rQ4tS.js → code-editor-view-BcyKABrG.js} +1 -1
  27. package/core/built/admin/assets/{color-picker-field-BonBgxhU.js → color-picker-field-8NoSnhNI.js} +1 -1
  28. package/core/built/admin/assets/{color-utils-BsrwXuDz.js → color-utils-Dzeeuj1F.js} +1 -1
  29. package/core/built/admin/assets/{combobox-uX5r_paI.js → combobox-5rdgDrDV.js} +1 -1
  30. package/core/built/admin/assets/{command-DxwBO2pF.js → command-BOYMbZa_.js} +1 -1
  31. package/core/built/admin/assets/{comments-Dn-RO-nU.js → comments-BhNM5CYl.js} +1 -1
  32. package/core/built/admin/assets/{confirmation-modal-B6D6mk6R.js → confirmation-modal-CYD7x3UQ.js} +1 -1
  33. package/core/built/admin/assets/{content-api-modal-BxQ-7T6u.js → content-api-modal-BtW4Z1-1.js} +1 -1
  34. package/core/built/admin/assets/{copy-field-BAxL4Zqn.js → copy-field-CEp_XieW.js} +1 -1
  35. package/core/built/admin/assets/{custom-integration-modal---d_l7lc.js → custom-integration-modal-bk3lNEuQ.js} +1 -1
  36. package/core/built/admin/assets/{date-range-select-PB2n1HZf.js → date-range-select-B3Ij1Rqg.js} +1 -1
  37. package/core/built/admin/assets/{debounce-Dg2fW5Rg.js → debounce-Cx5B_9OI.js} +1 -1
  38. package/core/built/admin/assets/{design-and-theme-modal-DYRT207a.js → design-and-theme-modal-B2xYKS1I.js} +3 -3
  39. package/core/built/admin/assets/{dirty-confirm-dialog-BnDJ39ao.js → dirty-confirm-dialog-YE9L21gY.js} +1 -1
  40. package/core/built/admin/assets/{disabled-sources-indicator-iMHrkyV3.js → disabled-sources-indicator-uIzbWL7K.js} +1 -1
  41. package/core/built/admin/assets/{dist-D5vhMdXf.js → dist-ARN6XTcR.js} +1 -1
  42. package/core/built/admin/assets/{dist-cFzKLG7y.js → dist-Bg8bSvLA.js} +1 -1
  43. package/core/built/admin/assets/{dist-WeOIvSYM.js → dist-CsvXCJSe.js} +1 -1
  44. package/core/built/admin/assets/{domain-BR8FIdjD.js → domain-DzrOAPY8.js} +1 -1
  45. package/core/built/admin/assets/{dropzone-hNxmUvwD.js → dropzone-CzhP33wa.js} +1 -1
  46. package/core/built/admin/assets/{edit-profile-CENrkY0l.js → edit-profile-oufs4R4n.js} +1 -1
  47. package/core/built/admin/assets/{editor-B18D0lm8.js → editor-BBKrunMK.js} +3 -3
  48. package/core/built/admin/assets/{embed-signup-form-modal-BsCYUMvQ.js → embed-signup-form-modal-Ch3s6lqA.js} +1 -1
  49. package/core/built/admin/assets/{explore-BmrnljWw.js → explore-CA-R01Br.js} +1 -1
  50. package/core/built/admin/assets/{feed-Dy4li6i8.js → feed-ClC8_Gld.js} +1 -1
  51. package/core/built/admin/assets/{field-Dh_lwk13.js → field-B3OPenbP.js} +1 -1
  52. package/core/built/admin/assets/{filter-sources-D2zDuJH5.js → filter-sources-CiPLnG9A.js} +1 -1
  53. package/core/built/admin/assets/{filters-3JBQcNtJ.js → filters-Bz0HsRie.js} +1 -1
  54. package/core/built/admin/assets/{filters-CFt_BDe4.js → filters-yFvybRMe.js} +1 -1
  55. package/core/built/admin/assets/{first-promoter-modal-D6Rjxugw.js → first-promoter-modal-BC0UpYCD.js} +1 -1
  56. package/core/built/admin/assets/{gift-link-modal-zMtlJhLQ.js → gift-link-modal-BKRuqo-k.js} +1 -1
  57. package/core/built/admin/assets/{global-data-provider-B949LDXJ.js → global-data-provider-RzW6Bnlf.js} +1 -1
  58. package/core/built/admin/assets/{growth-CFws67_i.js → growth-ClNAldfL.js} +1 -1
  59. package/core/built/admin/assets/{growth-C38Xtp8D.js → growth-Dz8OSG06.js} +1 -1
  60. package/core/built/admin/assets/{history-modal-ILAOkbxH.js → history-modal-DIVuQ5Ct.js} +1 -1
  61. package/core/built/admin/assets/{html-field-9a9Id_2q.js → html-field-CVZ2sMxw.js} +1 -1
  62. package/core/built/admin/assets/{images-CrQKVc9Q.js → images-Ok8FFJ3A.js} +1 -1
  63. package/core/built/admin/assets/{inbox-BrSRzyvz.js → inbox-CMUVI6qb.js} +1 -1
  64. package/core/built/admin/assets/{index-BHy2DZX-.js → index-DUXM0NlS.js} +2 -2
  65. package/core/built/admin/assets/{input-group-6vEPvX9S.js → input-group-2XU-iuh_.js} +1 -1
  66. package/core/built/admin/assets/{invite-user-modal-5xDCEw90.js → invite-user-modal-DrZ7xxrZ.js} +1 -1
  67. package/core/built/admin/assets/{koenig-editor-base-BWLEB9Vf.js → koenig-editor-base-BPj4S760.js} +1 -1
  68. package/core/built/admin/assets/koenig-lexical/koenig-lexical.js +9254 -9251
  69. package/core/built/admin/assets/koenig-lexical/koenig-lexical.umd.js +124 -124
  70. package/core/built/admin/assets/{koenig-lexical-Cj62r_y9.js → koenig-lexical-Cdjv-m3_.js} +98 -98
  71. package/core/built/admin/assets/{kpi-card-IHDo8Q56.js → kpi-card-J8Mj1sDX.js} +1 -1
  72. package/core/built/admin/assets/{kpi-card-DOUnkZcN.js → kpi-card-awos0BMH.js} +1 -1
  73. package/core/built/admin/assets/{kpi-helpers-CjUdECAK.js → kpi-helpers-SEhvH-8E.js} +1 -1
  74. package/core/built/admin/assets/{kpi-tabs-X3DkOYbI.js → kpi-tabs-R6BjsKhd.js} +1 -1
  75. package/core/built/admin/assets/{label-Dq6QaOuS.js → label-BMC3dzLI.js} +1 -1
  76. package/core/built/admin/assets/{label-picker-8YlhS2U3.js → label-picker-Bnlru5tO.js} +1 -1
  77. package/core/built/admin/assets/layout-yR9rlvEw.js +1 -0
  78. package/core/built/admin/assets/{limit-modal-BRPsit_B.js → limit-modal-COmLevuY.js} +1 -1
  79. package/core/built/admin/assets/{member-custom-fields-CmvsuuV_.js → member-custom-fields-BvFKEpxJ.js} +1 -1
  80. package/core/built/admin/assets/{member-detail-DCvRrkmJ.js → member-detail-CWdPAe3p.js} +1 -1
  81. package/core/built/admin/assets/{members-DxbSKngD.js → members-Bnt0ih2R.js} +1 -1
  82. package/core/built/admin/assets/{moderation-Da5lhhWh.js → moderation-mPjYHgZW.js} +1 -1
  83. package/core/built/admin/assets/{multi-select-combobox-CYdkH7KQ.js → multi-select-combobox-CsoyHAiX.js} +1 -1
  84. package/core/built/admin/assets/{navigation-modal-BIoTwtMy.js → navigation-modal-D_c0badj.js} +1 -1
  85. package/core/built/admin/assets/{newsletter-BptlVoJm.js → newsletter-DR49NyGS.js} +1 -1
  86. package/core/built/admin/assets/{newsletter-detail-modal-BIvxqE0N.js → newsletter-detail-modal-B45pL1pb.js} +1 -1
  87. package/core/built/admin/assets/{newsletter-emails-Bf8IZLsP.js → newsletter-emails-B-OLfrvr.js} +1 -1
  88. package/core/built/admin/assets/{newsletters-BgrIZk0V.js → newsletters-DGs5BaKH.js} +1 -1
  89. package/core/built/admin/assets/{note-DYcLOmDb.js → note-CSVsUKBm.js} +1 -1
  90. package/core/built/admin/assets/{notifications-B2SPFIV9.js → notifications-DV9FRtDw.js} +1 -1
  91. package/core/built/admin/assets/{offers-container-modal-BZnZITMw.js → offers-container-modal-B0hFS8nk.js} +1 -1
  92. package/core/built/admin/assets/{onboarding-route-DgdfxkQh.js → onboarding-route--jL5KLPD.js} +1 -1
  93. package/core/built/admin/assets/{overview-Dt2_mR6U.js → overview-B-ZPNqMo.js} +1 -1
  94. package/core/built/admin/assets/{overview-BYQJXSog.js → overview-D96iwoJi.js} +1 -1
  95. package/core/built/admin/assets/{page-header-CpmxJj5B.js → page-header-DAvDYKO9.js} +1 -1
  96. package/core/built/admin/assets/{pintura-modal-B4MuBuuO.js → pintura-modal-jiUCxX0Q.js} +1 -1
  97. package/core/built/admin/assets/{portal-frame-BF0NBIji.js → portal-frame-D4D4nEO6.js} +1 -1
  98. package/core/built/admin/assets/{portal-modal-DMVbm0oy.js → portal-modal-BLFdYeDH.js} +1 -1
  99. package/core/built/admin/assets/{post-analytics-CXWBOGyP.js → post-analytics-BhAtiFJp.js} +1 -1
  100. package/core/built/admin/assets/{post-analytics-header-ChzjXVPt.js → post-analytics-header-DK27VjJm.js} +1 -1
  101. package/core/built/admin/assets/{post-analytics-provider-Cgw4U_fw.js → post-analytics-provider-DGg0FUqs.js} +1 -1
  102. package/core/built/admin/assets/{post-share-modal-B9Vmk_XM.js → post-share-modal-DtFAC132.js} +1 -1
  103. package/core/built/admin/assets/{preferences-BfzJmnsd.js → preferences-CuWLISHa.js} +1 -1
  104. package/core/built/admin/assets/{preview-modal-Dw_HtD6S.js → preview-modal-DctYx20m.js} +1 -1
  105. package/core/built/admin/assets/{profile-BT5vtv9b.js → profile-BsKYYtuL.js} +1 -1
  106. package/core/built/admin/assets/{radio-group-I7ou7PoJ.js → radio-group-CI5_Kf_d.js} +1 -1
  107. package/core/built/admin/assets/{select-D9oU1IoM.js → select-CkXqNJDJ.js} +1 -1
  108. package/core/built/admin/assets/settings-B4vM-rgV.js +4 -0
  109. package/core/built/admin/assets/{settings-CpvHWix7.js → settings-ZCj-W56o.js} +1 -1
  110. package/core/built/admin/assets/{settings-breadcrumbs-K0USP2nw.js → settings-breadcrumbs-DIq31FwA.js} +1 -1
  111. package/core/built/admin/assets/{share-modal-ClIyPzc5.js → share-modal-BNj14g79.js} +1 -1
  112. package/core/built/admin/assets/{slack-modal-1XXqOfiw.js → slack-modal-C6SpMQ-q.js} +1 -1
  113. package/core/built/admin/assets/{sort-button-CdBsm40v.js → sort-button-B-k54ow2.js} +1 -1
  114. package/core/built/admin/assets/{source-icon-CEYmVLXR.js → source-icon-Cej3sZM6.js} +1 -1
  115. package/core/built/admin/assets/{stats-D8nZCTy5.js → stats-B2KW8E2y.js} +1 -1
  116. package/core/built/admin/assets/{stats-view-CugFVf0g.js → stats-view-CVzU2-p5.js} +1 -1
  117. package/core/built/admin/assets/{step-1-DOYjrORn.js → step-1-Dbn1iIMU.js} +1 -1
  118. package/core/built/admin/assets/{step-2-vA6RsarH.js → step-2-BahnSuN6.js} +1 -1
  119. package/core/built/admin/assets/{step-3-BtIBxMId.js → step-3-CW04e2ZJ.js} +1 -1
  120. package/core/built/admin/assets/{stripe-button-UFP4QRXd.js → stripe-button-BkBZqaGG.js} +1 -1
  121. package/core/built/admin/assets/{stripe-connect-modal-C_L3uM6n.js → stripe-connect-modal-CYDDrSJm.js} +1 -1
  122. package/core/built/admin/assets/{table-TMCgCQK7.js → table-BtLcEi1M.js} +1 -1
  123. package/core/built/admin/assets/{tabs-Dd6oOKbv.js → tabs-BaWRfg8j.js} +1 -1
  124. package/core/built/admin/assets/{tag-detail-D3l-UJPR.js → tag-detail-CmqiC32L.js} +1 -1
  125. package/core/built/admin/assets/{tags-WdKQGWR8.js → tags-BbygUvNB.js} +1 -1
  126. package/core/built/admin/assets/{testimonials-modal-CqWp-xXJ.js → testimonials-modal--bdzppyh.js} +1 -1
  127. package/core/built/admin/assets/{tier-detail-modal-BkcR2u0A.js → tier-detail-modal-BZmAsIy4.js} +1 -1
  128. package/core/built/admin/assets/{toggle-group-Guorw93z.js → toggle-group-CVl-Xigr.js} +1 -1
  129. package/core/built/admin/assets/{topic-filter-CbgoWIHn.js → topic-filter-BoRHRbL1.js} +1 -1
  130. package/core/built/admin/assets/{transistor-modal-DuNnnpal.js → transistor-modal-CBPDqEGy.js} +1 -1
  131. package/core/built/admin/assets/{unsplash-modal-y2bVwTHH.js → unsplash-modal-CixoRAO2.js} +1 -1
  132. package/core/built/admin/assets/{use-analytics-data-B-b4wNSC.js → use-analytics-data-BiWvcf1u.js} +1 -1
  133. package/core/built/admin/assets/{use-check-theme-limit-error-m09J38Mq.js → use-check-theme-limit-error-B14lZukR.js} +1 -1
  134. package/core/built/admin/assets/use-feature-flag-BmJoc5WN.js +1 -0
  135. package/core/built/admin/assets/{use-filter-params-BnbBDc7T.js → use-filter-params-ChoV72Hw.js} +1 -1
  136. package/core/built/admin/assets/{use-growth-stats-DPU5rt3W.js → use-growth-stats-Dom8xVzo.js} +1 -1
  137. package/core/built/admin/assets/{use-limiter-BkN3E4gw.js → use-limiter-Dwg8ivgQ.js} +1 -1
  138. package/core/built/admin/assets/{use-pintura-config-C_z8HTG2.js → use-pintura-config-Bj4QmiVk.js} +1 -1
  139. package/core/built/admin/assets/{use-pintura-editor-DNgbkhGp.js → use-pintura-editor-DvrslmPE.js} +1 -1
  140. package/core/built/admin/assets/{use-post-referrers-C2mXyrp-.js → use-post-referrers-pxIHTXFs.js} +1 -1
  141. package/core/built/admin/assets/{use-reply-chain-data-DaK8q2qQ.js → use-reply-chain-data-CmFe0N6F.js} +1 -1
  142. package/core/built/admin/assets/{use-setting-group-YlYcoNyP.js → use-setting-group-Cmp_sy-d.js} +1 -1
  143. package/core/built/admin/assets/{use-settings-navigation-Bf1g1rEh.js → use-settings-navigation-BmROPrls.js} +1 -1
  144. package/core/built/admin/assets/{use-simple-pagination-D9ckKo5-.js → use-simple-pagination-D5rL3YwO.js} +1 -1
  145. package/core/built/admin/assets/{use-tinybird-query-GSa32hVw.js → use-tinybird-query-DP2dMaq7.js} +1 -1
  146. package/core/built/admin/assets/{use-tinybird-token-CKLOZFsw.js → use-tinybird-token-DrK_skPQ.js} +1 -1
  147. package/core/built/admin/assets/{use-url-input-z-p0Kewm.js → use-url-input-ChrUZBFf.js} +1 -1
  148. package/core/built/admin/assets/{user-detail-modal-BMxOA4Sv.js → user-detail-modal-XODpOqNC.js} +1 -1
  149. package/core/built/admin/assets/{virtual-list-RHeEL05L.js → virtual-list-Dnoafqbk.js} +1 -1
  150. package/core/built/admin/assets/{web-xJtcwMy4.js → web-D71mjB2r.js} +1 -1
  151. package/core/built/admin/assets/{web-Bw2QMO5u.js → web-z71lA1Y3.js} +1 -1
  152. package/core/built/admin/assets/{zapier-modal-BP2f4-vY.js → zapier-modal-Bp507Um7.js} +1 -1
  153. package/core/built/admin/index.html +5 -5
  154. package/core/frontend/web/middleware/admin-toolbar.js +1 -1
  155. package/core/frontend/web/middleware/serve-indexnow-key.js +1 -7
  156. package/core/server/api/endpoints/index.js +2 -2
  157. package/core/server/api/endpoints/themes.js +6 -1
  158. package/core/server/models/base/plugins/overrides.js +7 -5
  159. package/core/server/services/adapter-manager/adapter-paths.js +16 -12
  160. package/core/server/services/adapter-manager/adapter-paths.ts +17 -12
  161. package/core/server/services/audience-feedback/audience-feedback-controller.js +10 -1
  162. package/core/server/services/audience-feedback/feedback-repository.js +4 -1
  163. package/core/server/services/auth/session/session-service.js +18 -3
  164. package/core/server/services/automations/database-automations-repository.js +5 -5
  165. package/core/server/services/automations/database-automations-repository.ts +12 -12
  166. package/core/server/services/automations/database-date.js +52 -3
  167. package/core/server/services/automations/database-date.ts +23 -2
  168. package/core/server/services/email-analytics/email-analytics-service-wrapper.js +1 -1
  169. package/core/server/services/email-analytics/email-analytics-service.js +3 -2
  170. package/core/server/services/email-analytics/index.js +2 -3
  171. package/core/server/services/email-analytics/index.ts +1 -2
  172. package/core/server/services/email-analytics/lib/queries.js +91 -124
  173. package/core/server/services/email-analytics/lib/queries.ts +341 -0
  174. package/core/server/services/indexnow-ping/index.js +0 -2
  175. package/core/server/services/indexnow-ping/index.ts +0 -2
  176. package/core/server/services/indexnow-ping/indexnow-ping-service.js +5 -7
  177. package/core/server/services/indexnow-ping/indexnow-ping-service.ts +7 -13
  178. package/core/server/services/members/members-api/repositories/member-repository.js +51 -0
  179. package/core/server/services/slack-notifications/slack-notifications.js +2 -2
  180. package/core/server/services/slack-ping/index.js +1 -1
  181. package/core/server/services/slack-ping/index.ts +1 -1
  182. package/core/server/services/slack-ping/slack-ping-service.js +1 -0
  183. package/core/server/services/slack-ping/slack-ping-service.ts +1 -0
  184. package/core/server/services/stats/members-stats-service.js +0 -7
  185. package/core/server/services/themes/storage.js +19 -2
  186. package/core/server/services/webhooks/serialize.js +10 -1
  187. package/core/server/web/api/endpoints/admin/routes.js +2 -2
  188. package/core/shared/custom-theme-settings-cache/custom-theme-settings-bread-service.js +4 -0
  189. package/core/shared/custom-theme-settings-cache/custom-theme-settings-service.js +39 -0
  190. package/core/shared/labs.js +1 -1
  191. package/package.json +11 -11
  192. package/pnpm-lock.yaml +41 -41
  193. package/pnpm-workspace.yaml +18 -18
  194. package/components/tryghost-adapter-base-scheduling-0.2.0.tgz +0 -0
  195. package/components/tryghost-kg-converters-1.2.3.tgz +0 -0
  196. package/components/tryghost-kg-default-cards-10.3.3.tgz +0 -0
  197. package/components/tryghost-kg-default-nodes-2.1.4.tgz +0 -0
  198. package/core/built/admin/assets/chunk.524.cd5498dd4e195f679266.js +0 -25
  199. package/core/built/admin/assets/chunk.582.6f92ec1f03734bf2ea3f.js +0 -27
  200. package/core/built/admin/assets/layout-TMj4P-vv.js +0 -1
  201. package/core/built/admin/assets/settings-CfZFbyu_.js +0 -4
  202. package/core/built/admin/assets/use-feature-flag-ud0Qz8vt.js +0 -1
  203. package/core/server/services/email-analytics/jobs/update-member-email-analytics/index.js +0 -14
  204. /package/core/built/admin/assets/{chunk.211.6f7328d63c41536451b3.js.LICENSE.txt → chunk.571.40f093ed6d883993714e.js.LICENSE.txt} +0 -0
  205. /package/core/server/api/endpoints/{gift-reminders.js → gifts.js} +0 -0
@@ -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{g as r}from"./framework-provider-CmtnPXIT.js";import{t as i}from"./hooks-D6EE7BIt.js";import{t as a}from"./use-filterable-api-iMpDZBxD.js";import{m as o}from"./chunk-KS7C4IRE-DG9HTHQ3.js";import{f as s}from"./dist-Cb5RSHSg.js";import{t as c}from"./inline-Cw-gigDW.js";import{t as l}from"./stack-CIfOAAVf.js";import{t as u}from"./switch-CE2NuMn-.js";import{t as d}from"./input-surface-BdOe4KzO.js";import{o as f,t as p}from"./use-settings-navigation-Bf1g1rEh.js";import{i as m,n as h,t as g}from"./action-list-lGzZLHc8.js";import{o as _,t as v}from"./field-Dh_lwk13.js";import{t as y}from"./multi-select-combobox-CYdkH7KQ.js";import{Da as b,Fa as x,Oi as S,Pr as C,Un as w,Wn as T,Yi as E,ar as D,br as O,ns as k,tr as A,vr as j,xr as M,yo as N}from"./index-BHy2DZX-.js";var P=e(t(),1),F=n(),I=({offset:e,onTrigger:t})=>{let n=(0,P.useRef)(null);return(0,P.useEffect)(()=>{let e=new IntersectionObserver(e=>{e[0].intersectionRatio<=0||t()});return n.current&&e.observe(n.current),()=>e.disconnect()},[t]),(0,F.jsx)(`div`,{ref:n,className:`absolute w-full`,style:{bottom:e}})},L=`ActionsResponseType`,R=(e,t)=>{let n=e=>e.event===`edited`&&typeof e.context?.action_name==`string`?e.context.action_name:``;return e.resource_id===t.resource_id&&e.resource_type===t.resource_type&&e.event===t.event&&n(e)===n(t)},z=i({dataType:L,path:`/actions/`,returnData:e=>{let{pages:t}=e,n=t.flatMap(e=>e.actions.map(({context:e,...t})=>({...t,context:JSON.parse(e)})));n=n.reverse();let r=1;n.forEach((e,t)=>{let i=n[t+1];i&&R(e,i)?(e.skip=!0,r+=1):r>1&&(e.count=r,r=1)});let i=t[t.length-1].meta;return{actions:n.reverse(),meta:i,isEnd:i?i.pagination.pages===i.pagination.page:!0}}}),B=e=>{let t=e.resource_type;if(e.event!==`deleted`)switch(e.resource_type){case`page`:case`post`:return!e.resource||!e.resource.id?void 0:(t===`post`&&e.context?.type&&(t=e.context?.type),{isExternal:!0,route:`editor/${t}/${e.resource.id}`,models:[t,e.resource.id]});case`integration`:return!e.resource||!e.resource.id?void 0:{route:`integrations/${e.resource.id}`};case`offer`:return!e.resource||!e.resource.id?void 0:{isExternal:!0,route:`offers/${e.resource.id}`,models:[e.resource.id]};case`tag`:return!e.resource||!e.resource.slug?void 0:{isExternal:!0,route:`tag`,models:[e.resource.slug]};case`product`:return{route:`tiers`};case`user`:return!e.resource||!e.resource.slug?void 0:{route:`staff/${e.resource.slug}`}}},V=e=>{let t=e.resource_type;t===`api_key`?t=`API key`:t===`setting`?t=`settings`:t===`product`?t=`tier`:t===`gift_link`?t=`gift link`:t===`security_action`?t=`security action`:t===`member_custom_field`&&(t=`custom field`),t===`post`&&e.context?.type&&(t=e.context?.type);let n=e.event;return e.event===`edited`&&e.context?.action_name&&(n=e.context?.action_name),n===`reset_authentication`?n=`reset authentication`:n===`custom_fields_edited`&&(n=`custom fields edited`),e.context?.count&&e.context?.count>1?`${e.context?.count} ${t}s ${n}`:`${t.slice(0,1).toUpperCase()}${t.slice(1)} ${n}`},H=e=>{if(e.resource_type===`setting`&&e.context?.group&&e.context?.key)return{group:e.context?.group,key:e.context?.key}},U=e=>typeof e.context?.count==`number`&&e.context?.count>1,W=({action:e})=>{let t=x;switch(e.event){case`added`:t=b;break;case`deleted`:t=E;break}return(0,F.jsx)(t,{className:`size-3`})},G=({action:e})=>(0,F.jsxs)(`div`,{className:`relative shrink-0`,children:[(0,F.jsx)(A,{className:`size-10`,name:e.actor?.name||e.actor?.slug,src:e.actor?.image}),(0,F.jsx)(`div`,{className:`absolute -right-1 -bottom-1 z-30 flex items-center justify-center rounded-full border border-border-default bg-background p-1 shadow-sm`,children:(0,F.jsx)(W,{action:e})})]}),K=({label:e,item:t,excludedItems:n,toggleItem:r})=>{let i=(0,P.useId)();return(0,F.jsxs)(v,{orientation:`horizontal`,children:[(0,F.jsx)(_,{htmlFor:i,children:e}),(0,F.jsx)(u,{checked:!n.includes(t),id:i,onCheckedChange:e=>r(t,e)})]})},q=({userId:e,excludedEvents:t,excludedResources:n,toggleEventType:r,toggleResourceType:i})=>{let{updateRoute:o}=p(),s=a({path:`/users/`,filterKey:`name`,responseKey:`users`}),[u,f]=(0,P.useState)([]),[m,h]=(0,P.useState)(),[g,_]=(0,P.useState)(!1),[v,b]=(0,P.useState)(!1),x=(0,P.useRef)(0),w=(0,P.useRef)(null),T=(0,P.useRef)(s);T.current=s;let E=(0,P.useCallback)(async(e,t)=>{try{let n=await T.current.loadData(e);t===x.current&&f(n.map(e=>({label:e.name,value:e.id})))}catch{t===x.current&&f([])}finally{t===x.current&&b(!1)}},[]),D=(0,P.useCallback)((e,t=!1)=>{x.current+=1;let n=x.current;b(!0),w.current&&clearTimeout(w.current),t?w.current=setTimeout(()=>void E(e,n),500):E(e,n)},[E]);(0,P.useEffect)(()=>(D(``),()=>{x.current+=1,w.current&&clearTimeout(w.current)}),[D]),(0,P.useEffect)(()=>{let t=!1;if(!e){h(null);return}return T.current.loadInitialValues([e],`id`).then(([e])=>{if(!t&&e){let t={label:e.name,value:e.id};h(t),f(e=>e.some(e=>e.value===t.value)?e:[t,...e])}}).catch(()=>{t||h(null)}),()=>{t=!0}},[e]);let A=()=>{h(null)};return(0,F.jsxs)(c,{align:`center`,gap:`md`,children:[(0,F.jsxs)(j,{children:[(0,F.jsx)(M,{asChild:!0,children:(0,F.jsx)(C,{type:`button`,variant:`outline`,children:`Filter`})}),(0,F.jsx)(O,{align:`end`,className:`z-[9999] w-[220px]`,"data-testid":`history-filters`,children:(0,F.jsxs)(l,{gap:`2xl`,children:[(0,F.jsxs)(l,{gap:`md`,children:[(0,F.jsx)(K,{excludedItems:t,item:`added`,label:`Added`,toggleItem:r}),(0,F.jsx)(K,{excludedItems:t,item:`edited`,label:`Edited`,toggleItem:r}),(0,F.jsx)(K,{excludedItems:t,item:`deleted`,label:`Deleted`,toggleItem:r})]}),(0,F.jsxs)(l,{gap:`md`,children:[(0,F.jsx)(K,{excludedItems:n,item:`post`,label:`Posts`,toggleItem:i}),(0,F.jsx)(K,{excludedItems:n,item:`page`,label:`Pages`,toggleItem:i}),(0,F.jsx)(K,{excludedItems:n,item:`tag`,label:`Tags`,toggleItem:i}),(0,F.jsx)(K,{excludedItems:n,item:`offer,product`,label:`Tiers & offers`,toggleItem:i}),(0,F.jsx)(K,{excludedItems:n,item:`api_key,integration,setting,user,webhook`,label:`Settings & staff`,toggleItem:i})]})]})})]}),(0,F.jsx)(`div`,{className:`w-[200px]`,children:(0,F.jsxs)(c,{className:`${d(`within`)} relative h-(--control-height) overflow-hidden`,gap:`none`,children:[(0,F.jsxs)(j,{open:g,onOpenChange:e=>{_(e),e&&D(``)},children:[(0,F.jsx)(M,{asChild:!0,children:(0,F.jsxs)(`button`,{"aria-label":`Staff`,className:`flex min-w-0 flex-1 items-center justify-between px-3 text-control`,"data-testid":`history-staff-filter`,role:`combobox`,type:`button`,children:[(0,F.jsx)(`span`,{className:m?`truncate pr-8`:`truncate pr-8 text-muted-foreground`,children:m?.label??`Search staff`}),(0,F.jsx)(k,{className:`ml-2 size-4 shrink-0 opacity-50`})]})}),(0,F.jsx)(O,{align:`start`,className:`z-[9999] w-72 p-0`,children:(0,F.jsx)(y,{i18n:{searchPlaceholder:`Search staff`},isLoading:v,isMultiSelect:!1,options:m&&!u.some(e=>e.value===m.value)?[m,...u]:u,shouldFilter:!1,values:m?[m.value]:[],autoCloseOnSelect:!0,onChange:e=>{let t=u.find(t=>t.value===e[0]);t&&(h(t),o(`history/view/${t.value}`))},onClose:()=>_(!1),onSearchChange:e=>D(e,!0)})})]}),m&&(0,F.jsx)(`button`,{"aria-label":`Clear selection`,className:`absolute top-1/2 right-10 z-10 flex size-8 -translate-y-1/2 items-center justify-center text-muted-foreground hover:text-foreground`,type:`button`,onClick:()=>{A(),o(`history/view`)},children:(0,F.jsx)(S,{className:`size-4`})})]})})]})},J=({action:e})=>{let{updateRoute:t}=p(),n=H(e);if(e.resource_type===`security_action`&&e.context?.action_name===`reset_authentication`){let t=typeof e.context.api_keys_rotated==`number`?e.context.api_keys_rotated:null,n=typeof e.context.users_locked==`number`?e.context.users_locked:null,r=[t===null?null:`${s(t)} API ${t===1?`key`:`keys`} rotated`,n===null?null:`${s(n)} ${n===1?`user`:`users`} locked`].filter(Boolean);return(0,F.jsx)(F.Fragment,{children:r.length?r.join(`, `):`Authentication reset`})}else if(n){let{group:e,key:t}=n;return(0,F.jsxs)(F.Fragment,{children:[e.slice(0,1).toUpperCase(),e.slice(1),e!==t&&(0,F.jsxs)(`span`,{children:[` `,(0,F.jsxs)(`code`,{className:`mb-1 bg-white text-grey-800 dark:bg-grey-900 dark:text-white`,children:[`(`,t,`)`]})]})]})}else if(e.resource?.title||e.resource?.name||e.context?.primary_name){let n=B(e);return n?(0,F.jsx)(`a`,{className:`cursor-pointer font-bold`,onClick:e=>{e.preventDefault(),t(n)},children:e.resource?.title||e.resource?.name}):(0,F.jsx)(F.Fragment,{children:e.resource?.title||e.resource?.name||e.context?.primary_name})}else return(0,F.jsx)(`span`,{className:`text-grey-500`,children:`(unknown)`})},Y=e=>{let t=new Intl.DateTimeFormat(`en-US`,{year:`numeric`,month:`2-digit`,day:`2-digit`,hour:`2-digit`,minute:`2-digit`,second:`2-digit`}).formatToParts(e).reduce((e,{type:t,value:n})=>({...e,[t]:n}),{});return`${t.year}-${t.month}-${t.day} ${t.hour}:${t.minute}:${t.second}`},X=200;function Z(){let{userId:e}=o(),{updateRoute:t}=p(),[n,i]=(0,P.useState)([]),[a,c]=(0,P.useState)([`label`]),{data:l,fetchNextPage:u,isFetchingNextPage:d}=z({searchParams:{include:`actor,resource`,limit:X.toString(),filter:[n.length&&`event:-[${n.join(`,`)}]`,a.length&&`resource_type:-[${a.join(`,`)}]`,e&&`actor_id:'${e}'`].filter(Boolean).join(`+`)},getNextPageParams:(e,t)=>({...t,filter:[t.filter,e.actions.length&&`created_at:<'${Y(new Date(e.actions[e.actions.length-1].created_at))}'`].join(`+`)}),placeholderData:r}),_=(0,P.useCallback)(()=>{l?.isEnd||u()},[l?.isEnd,u]),v=(e,t,n)=>{e(e=>n?e.concat(t):e.filter(e=>e!==t))},y=n.length>0||a.length>0||e;return(0,F.jsx)(f,{cancelLabel:``,okLabel:`Close`,scrolling:!0,size:`md`,stickyFooter:!0,stickyHeader:!0,testId:`history-modal`,title:`History`,topRightContent:(0,F.jsx)(q,{excludedEvents:n,excludedResources:a,toggleEventType:(e,t)=>v(i,e,!t),toggleResourceType:(e,t)=>v(c,e,!t),userId:e}),onClose:()=>{t(`history`)},onOk:()=>{t(`history`)},children:(0,F.jsx)(`div`,{className:`relative mt-6`,children:(0,F.jsxs)(g,{children:[l?.actions?l.actions.length>0?(0,F.jsxs)(F.Fragment,{children:[(0,F.jsx)(I,{offset:250,onTrigger:_}),l.actions.map(e=>!e.skip&&(0,F.jsx)(h,{children:(0,F.jsxs)(m,{className:`flex items-center gap-3 py-3`,children:[(0,F.jsx)(G,{action:e}),(0,F.jsxs)(`div`,{className:`min-w-0 grow`,children:[(0,F.jsxs)(`div`,{children:[V(e),U(e)?``:`: `,!U(e)&&(0,F.jsx)(J,{action:e}),e.count?(0,F.jsxs)(F.Fragment,{children:[` `,s(e.count),` times`]}):null,(0,F.jsxs)(`span`,{children:[` — by `,e.actor?.name||e.actor?.slug]})]}),(0,F.jsx)(`div`,{className:`text-sm text-muted-foreground`,children:[new Date(e.created_at).toLocaleDateString(`default`,{year:`numeric`,month:`short`,day:`2-digit`}),new Date(e.created_at).toLocaleTimeString(`default`,{hour:`2-digit`,minute:`2-digit`,second:`2-digit`})].join(` | `)})]})]})},e.id)),d&&(0,F.jsx)(`div`,{className:`flex items-center justify-center p-5`,children:(0,F.jsx)(D,{size:`md`})})]}):(0,F.jsxs)(w,{children:[(0,F.jsx)(T,{children:(0,F.jsx)(N,{})}),y?`No entries match your current filters.`:`No history entries found.`]}):l===void 0?(0,F.jsx)(`div`,{className:`flex items-center justify-center px-5 pt-12 pb-10`,children:(0,F.jsx)(`div`,{className:`flex h-64 items-center justify-center`,children:(0,F.jsx)(D,{size:`lg`})})}):(0,F.jsx)(w,{children:`No entries found.`}),l?.isEnd&&l.actions.length>0&&(0,F.jsx)(`div`,{className:`border-t border-border pt-2 text-sm text-muted-foreground`,children:`End of history log`})]})})})}export{Z as default};
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{t as i}from"./hooks-D6EE7BIt.js";import{t as a}from"./use-filterable-api-iMpDZBxD.js";import{m as o}from"./chunk-KS7C4IRE-DG9HTHQ3.js";import{f as s}from"./dist-Cb5RSHSg.js";import{t as c}from"./inline-Cw-gigDW.js";import{t as l}from"./stack-CIfOAAVf.js";import{t as u}from"./switch-CE2NuMn-.js";import{t as d}from"./input-surface-BdOe4KzO.js";import{o as f,t as p}from"./use-settings-navigation-BmROPrls.js";import{i as m,n as h,t as g}from"./action-list-lGzZLHc8.js";import{o as _,t as v}from"./field-B3OPenbP.js";import{t as y}from"./multi-select-combobox-CsoyHAiX.js";import{Da as b,Fa as x,Oi as S,Pr as C,Un as w,Wn as T,Yi as E,ar as D,br as O,ns as k,tr as A,vr as j,xr as M,yo as N}from"./index-DUXM0NlS.js";var P=e(t(),1),F=n(),I=({offset:e,onTrigger:t})=>{let n=(0,P.useRef)(null);return(0,P.useEffect)(()=>{let e=new IntersectionObserver(e=>{e[0].intersectionRatio<=0||t()});return n.current&&e.observe(n.current),()=>e.disconnect()},[t]),(0,F.jsx)(`div`,{ref:n,className:`absolute w-full`,style:{bottom:e}})},L=`ActionsResponseType`,R=(e,t)=>{let n=e=>e.event===`edited`&&typeof e.context?.action_name==`string`?e.context.action_name:``;return e.resource_id===t.resource_id&&e.resource_type===t.resource_type&&e.event===t.event&&n(e)===n(t)},z=i({dataType:L,path:`/actions/`,returnData:e=>{let{pages:t}=e,n=t.flatMap(e=>e.actions.map(({context:e,...t})=>({...t,context:JSON.parse(e)})));n=n.reverse();let r=1;n.forEach((e,t)=>{let i=n[t+1];i&&R(e,i)?(e.skip=!0,r+=1):r>1&&(e.count=r,r=1)});let i=t[t.length-1].meta;return{actions:n.reverse(),meta:i,isEnd:i?i.pagination.pages===i.pagination.page:!0}}}),B=e=>{let t=e.resource_type;if(e.event!==`deleted`)switch(e.resource_type){case`page`:case`post`:return!e.resource||!e.resource.id?void 0:(t===`post`&&e.context?.type&&(t=e.context?.type),{isExternal:!0,route:`editor/${t}/${e.resource.id}`,models:[t,e.resource.id]});case`integration`:return!e.resource||!e.resource.id?void 0:{route:`integrations/${e.resource.id}`};case`offer`:return!e.resource||!e.resource.id?void 0:{isExternal:!0,route:`offers/${e.resource.id}`,models:[e.resource.id]};case`tag`:return!e.resource||!e.resource.slug?void 0:{isExternal:!0,route:`tag`,models:[e.resource.slug]};case`product`:return{route:`tiers`};case`user`:return!e.resource||!e.resource.slug?void 0:{route:`staff/${e.resource.slug}`}}},V=e=>{let t=e.resource_type;t===`api_key`?t=`API key`:t===`setting`?t=`settings`:t===`product`?t=`tier`:t===`gift_link`?t=`gift link`:t===`security_action`?t=`security action`:t===`member_custom_field`&&(t=`custom field`),t===`post`&&e.context?.type&&(t=e.context?.type);let n=e.event;return e.event===`edited`&&e.context?.action_name&&(n=e.context?.action_name),n===`reset_authentication`?n=`reset authentication`:n===`custom_fields_edited`&&(n=`custom fields edited`),e.context?.count&&e.context?.count>1?`${e.context?.count} ${t}s ${n}`:`${t.slice(0,1).toUpperCase()}${t.slice(1)} ${n}`},H=e=>{if(e.resource_type===`setting`&&e.context?.group&&e.context?.key)return{group:e.context?.group,key:e.context?.key}},U=e=>typeof e.context?.count==`number`&&e.context?.count>1,W=({action:e})=>{let t=x;switch(e.event){case`added`:t=b;break;case`deleted`:t=E;break}return(0,F.jsx)(t,{className:`size-3`})},G=({action:e})=>(0,F.jsxs)(`div`,{className:`relative shrink-0`,children:[(0,F.jsx)(A,{className:`size-10`,name:e.actor?.name||e.actor?.slug,src:e.actor?.image}),(0,F.jsx)(`div`,{className:`absolute -right-1 -bottom-1 z-30 flex items-center justify-center rounded-full border border-border-default bg-background p-1 shadow-sm`,children:(0,F.jsx)(W,{action:e})})]}),K=({label:e,item:t,excludedItems:n,toggleItem:r})=>{let i=(0,P.useId)();return(0,F.jsxs)(v,{orientation:`horizontal`,children:[(0,F.jsx)(_,{htmlFor:i,children:e}),(0,F.jsx)(u,{checked:!n.includes(t),id:i,onCheckedChange:e=>r(t,e)})]})},q=({userId:e,excludedEvents:t,excludedResources:n,toggleEventType:r,toggleResourceType:i})=>{let{updateRoute:o}=p(),s=a({path:`/users/`,filterKey:`name`,responseKey:`users`}),[u,f]=(0,P.useState)([]),[m,h]=(0,P.useState)(),[g,_]=(0,P.useState)(!1),[v,b]=(0,P.useState)(!1),x=(0,P.useRef)(0),w=(0,P.useRef)(null),T=(0,P.useRef)(s);T.current=s;let E=(0,P.useCallback)(async(e,t)=>{try{let n=await T.current.loadData(e);t===x.current&&f(n.map(e=>({label:e.name,value:e.id})))}catch{t===x.current&&f([])}finally{t===x.current&&b(!1)}},[]),D=(0,P.useCallback)((e,t=!1)=>{x.current+=1;let n=x.current;b(!0),w.current&&clearTimeout(w.current),t?w.current=setTimeout(()=>void E(e,n),500):E(e,n)},[E]);(0,P.useEffect)(()=>(D(``),()=>{x.current+=1,w.current&&clearTimeout(w.current)}),[D]),(0,P.useEffect)(()=>{let t=!1;if(!e){h(null);return}return T.current.loadInitialValues([e],`id`).then(([e])=>{if(!t&&e){let t={label:e.name,value:e.id};h(t),f(e=>e.some(e=>e.value===t.value)?e:[t,...e])}}).catch(()=>{t||h(null)}),()=>{t=!0}},[e]);let A=()=>{h(null)};return(0,F.jsxs)(c,{align:`center`,gap:`md`,children:[(0,F.jsxs)(j,{children:[(0,F.jsx)(M,{asChild:!0,children:(0,F.jsx)(C,{type:`button`,variant:`outline`,children:`Filter`})}),(0,F.jsx)(O,{align:`end`,className:`z-[9999] w-[220px]`,"data-testid":`history-filters`,children:(0,F.jsxs)(l,{gap:`2xl`,children:[(0,F.jsxs)(l,{gap:`md`,children:[(0,F.jsx)(K,{excludedItems:t,item:`added`,label:`Added`,toggleItem:r}),(0,F.jsx)(K,{excludedItems:t,item:`edited`,label:`Edited`,toggleItem:r}),(0,F.jsx)(K,{excludedItems:t,item:`deleted`,label:`Deleted`,toggleItem:r})]}),(0,F.jsxs)(l,{gap:`md`,children:[(0,F.jsx)(K,{excludedItems:n,item:`post`,label:`Posts`,toggleItem:i}),(0,F.jsx)(K,{excludedItems:n,item:`page`,label:`Pages`,toggleItem:i}),(0,F.jsx)(K,{excludedItems:n,item:`tag`,label:`Tags`,toggleItem:i}),(0,F.jsx)(K,{excludedItems:n,item:`offer,product`,label:`Tiers & offers`,toggleItem:i}),(0,F.jsx)(K,{excludedItems:n,item:`api_key,integration,setting,user,webhook`,label:`Settings & staff`,toggleItem:i})]})]})})]}),(0,F.jsx)(`div`,{className:`w-[200px]`,children:(0,F.jsxs)(c,{className:`${d(`within`)} relative h-(--control-height) overflow-hidden`,gap:`none`,children:[(0,F.jsxs)(j,{open:g,onOpenChange:e=>{_(e),e&&D(``)},children:[(0,F.jsx)(M,{asChild:!0,children:(0,F.jsxs)(`button`,{"aria-label":`Staff`,className:`flex min-w-0 flex-1 items-center justify-between px-3 text-control`,"data-testid":`history-staff-filter`,role:`combobox`,type:`button`,children:[(0,F.jsx)(`span`,{className:m?`truncate pr-8`:`truncate pr-8 text-muted-foreground`,children:m?.label??`Search staff`}),(0,F.jsx)(k,{className:`ml-2 size-4 shrink-0 opacity-50`})]})}),(0,F.jsx)(O,{align:`start`,className:`z-[9999] w-72 p-0`,children:(0,F.jsx)(y,{i18n:{searchPlaceholder:`Search staff`},isLoading:v,isMultiSelect:!1,options:m&&!u.some(e=>e.value===m.value)?[m,...u]:u,shouldFilter:!1,values:m?[m.value]:[],autoCloseOnSelect:!0,onChange:e=>{let t=u.find(t=>t.value===e[0]);t&&(h(t),o(`history/view/${t.value}`))},onClose:()=>_(!1),onSearchChange:e=>D(e,!0)})})]}),m&&(0,F.jsx)(`button`,{"aria-label":`Clear selection`,className:`absolute top-1/2 right-10 z-10 flex size-8 -translate-y-1/2 items-center justify-center text-muted-foreground hover:text-foreground`,type:`button`,onClick:()=>{A(),o(`history/view`)},children:(0,F.jsx)(S,{className:`size-4`})})]})})]})},J=({action:e})=>{let{updateRoute:t}=p(),n=H(e);if(e.resource_type===`security_action`&&e.context?.action_name===`reset_authentication`){let t=typeof e.context.api_keys_rotated==`number`?e.context.api_keys_rotated:null,n=typeof e.context.users_locked==`number`?e.context.users_locked:null,r=[t===null?null:`${s(t)} API ${t===1?`key`:`keys`} rotated`,n===null?null:`${s(n)} ${n===1?`user`:`users`} locked`].filter(Boolean);return(0,F.jsx)(F.Fragment,{children:r.length?r.join(`, `):`Authentication reset`})}else if(n){let{group:e,key:t}=n;return(0,F.jsxs)(F.Fragment,{children:[e.slice(0,1).toUpperCase(),e.slice(1),e!==t&&(0,F.jsxs)(`span`,{children:[` `,(0,F.jsxs)(`code`,{className:`mb-1 bg-white text-grey-800 dark:bg-grey-900 dark:text-white`,children:[`(`,t,`)`]})]})]})}else if(e.resource?.title||e.resource?.name||e.context?.primary_name){let n=B(e);return n?(0,F.jsx)(`a`,{className:`cursor-pointer font-bold`,onClick:e=>{e.preventDefault(),t(n)},children:e.resource?.title||e.resource?.name}):(0,F.jsx)(F.Fragment,{children:e.resource?.title||e.resource?.name||e.context?.primary_name})}else return(0,F.jsx)(`span`,{className:`text-grey-500`,children:`(unknown)`})},Y=e=>{let t=new Intl.DateTimeFormat(`en-US`,{year:`numeric`,month:`2-digit`,day:`2-digit`,hour:`2-digit`,minute:`2-digit`,second:`2-digit`}).formatToParts(e).reduce((e,{type:t,value:n})=>({...e,[t]:n}),{});return`${t.year}-${t.month}-${t.day} ${t.hour}:${t.minute}:${t.second}`},X=200;function Z(){let{userId:e}=o(),{updateRoute:t}=p(),[n,i]=(0,P.useState)([]),[a,c]=(0,P.useState)([`label`]),{data:l,fetchNextPage:u,isFetchingNextPage:d}=z({searchParams:{include:`actor,resource`,limit:X.toString(),filter:[n.length&&`event:-[${n.join(`,`)}]`,a.length&&`resource_type:-[${a.join(`,`)}]`,e&&`actor_id:'${e}'`].filter(Boolean).join(`+`)},getNextPageParams:(e,t)=>({...t,filter:[t.filter,e.actions.length&&`created_at:<'${Y(new Date(e.actions[e.actions.length-1].created_at))}'`].join(`+`)}),placeholderData:r}),_=(0,P.useCallback)(()=>{l?.isEnd||u()},[l?.isEnd,u]),v=(e,t,n)=>{e(e=>n?e.concat(t):e.filter(e=>e!==t))},y=n.length>0||a.length>0||e;return(0,F.jsx)(f,{cancelLabel:``,okLabel:`Close`,scrolling:!0,size:`md`,stickyFooter:!0,stickyHeader:!0,testId:`history-modal`,title:`History`,topRightContent:(0,F.jsx)(q,{excludedEvents:n,excludedResources:a,toggleEventType:(e,t)=>v(i,e,!t),toggleResourceType:(e,t)=>v(c,e,!t),userId:e}),onClose:()=>{t(`history`)},onOk:()=>{t(`history`)},children:(0,F.jsx)(`div`,{className:`relative mt-6`,children:(0,F.jsxs)(g,{children:[l?.actions?l.actions.length>0?(0,F.jsxs)(F.Fragment,{children:[(0,F.jsx)(I,{offset:250,onTrigger:_}),l.actions.map(e=>!e.skip&&(0,F.jsx)(h,{children:(0,F.jsxs)(m,{className:`flex items-center gap-3 py-3`,children:[(0,F.jsx)(G,{action:e}),(0,F.jsxs)(`div`,{className:`min-w-0 grow`,children:[(0,F.jsxs)(`div`,{children:[V(e),U(e)?``:`: `,!U(e)&&(0,F.jsx)(J,{action:e}),e.count?(0,F.jsxs)(F.Fragment,{children:[` `,s(e.count),` times`]}):null,(0,F.jsxs)(`span`,{children:[` — by `,e.actor?.name||e.actor?.slug]})]}),(0,F.jsx)(`div`,{className:`text-sm text-muted-foreground`,children:[new Date(e.created_at).toLocaleDateString(`default`,{year:`numeric`,month:`short`,day:`2-digit`}),new Date(e.created_at).toLocaleTimeString(`default`,{hour:`2-digit`,minute:`2-digit`,second:`2-digit`})].join(` | `)})]})]})},e.id)),d&&(0,F.jsx)(`div`,{className:`flex items-center justify-center p-5`,children:(0,F.jsx)(D,{size:`md`})})]}):(0,F.jsxs)(w,{children:[(0,F.jsx)(T,{children:(0,F.jsx)(N,{})}),y?`No entries match your current filters.`:`No history entries found.`]}):l===void 0?(0,F.jsx)(`div`,{className:`flex items-center justify-center px-5 pt-12 pb-10`,children:(0,F.jsx)(`div`,{className:`flex h-64 items-center justify-center`,children:(0,F.jsx)(D,{size:`lg`})})}):(0,F.jsx)(w,{children:`No entries found.`}),l?.isEnd&&l.actions.length>0&&(0,F.jsx)(`div`,{className:`border-t border-border pt-2 text-sm text-muted-foreground`,children:`End of history log`})]})})})}export{Z as default};
@@ -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{x as r}from"./dist-Cb5RSHSg.js";import{t as i}from"./stack-CIfOAAVf.js";import{t as a}from"./input-surface-BdOe4KzO.js";import{o,r as s}from"./field-Dh_lwk13.js";import{t as c}from"./koenig-editor-base-BWLEB9Vf.js";var l=e(t(),1),u=n(),d=({value:e,onChange:t,singleParagraph:n=!0,...r})=>{let i=(0,l.useCallback)(n=>{let r=new DOMParser().parseFromString(n,`text/html`);r.querySelectorAll(`*`).forEach(e=>{e.style.removeProperty(`white-space`),e.getAttribute(`style`)||e.removeAttribute(`style`)}),r.body.innerHTML!==e&&t?.(r.body.innerHTML)},[e,t]);return(0,u.jsx)(c,{...r,singleParagraph:n,children:t=>(0,u.jsx)(t.HtmlOutputPlugin,{html:e,setHtml:i})})},f=({title:e,hideTitle:t,error:n,hint:c,value:l,clearBg:f=!1,className:p=``,containerClassName:m=``,hintClassName:h=``,unstyled:g=!1,..._})=>{let v=g?``:r(a(`within`),`flex min-h-8 items-center py-1.5 md:min-h-[var(--control-height)]`,f?`bg-transparent`:`px-3`,n&&`border-destructive`,e&&!t&&!f&&`mt-2`,p);return(0,u.jsxs)(i,{className:m,gap:`none`,children:[e&&(0,u.jsx)(o,{className:t?`sr-only`:void 0,children:e}),(0,u.jsx)(`div`,{className:v,children:(0,u.jsx)(d,{..._,value:l})}),c&&(0,u.jsx)(s,{className:r(`last:mt-2`,n&&`text-destructive`,h),children:c})]})};export{f 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{x as r}from"./dist-Cb5RSHSg.js";import{t as i}from"./stack-CIfOAAVf.js";import{t as a}from"./input-surface-BdOe4KzO.js";import{o,r as s}from"./field-B3OPenbP.js";import{t as c}from"./koenig-editor-base-BPj4S760.js";var l=e(t(),1),u=n(),d=({value:e,onChange:t,singleParagraph:n=!0,...r})=>{let i=(0,l.useCallback)(n=>{let r=new DOMParser().parseFromString(n,`text/html`);r.querySelectorAll(`*`).forEach(e=>{e.style.removeProperty(`white-space`),e.getAttribute(`style`)||e.removeAttribute(`style`)}),r.body.innerHTML!==e&&t?.(r.body.innerHTML)},[e,t]);return(0,u.jsx)(c,{...r,singleParagraph:n,children:t=>(0,u.jsx)(t.HtmlOutputPlugin,{html:e,setHtml:i})})},f=({title:e,hideTitle:t,error:n,hint:c,value:l,clearBg:f=!1,className:p=``,containerClassName:m=``,hintClassName:h=``,unstyled:g=!1,..._})=>{let v=g?``:r(a(`within`),`flex min-h-8 items-center py-1.5 md:min-h-[var(--control-height)]`,f?`bg-transparent`:`px-3`,n&&`border-destructive`,e&&!t&&!f&&`mt-2`,p);return(0,u.jsxs)(i,{className:m,gap:`none`,children:[e&&(0,u.jsx)(o,{className:t?`sr-only`:void 0,children:e}),(0,u.jsx)(`div`,{className:v,children:(0,u.jsx)(d,{..._,value:l})}),c&&(0,u.jsx)(s,{className:r(`last:mt-2`,n&&`text-destructive`,h),children:c})]})};export{f as t};
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-DAXXjFlN.js";import{t}from"./react-Bb3IsNbi.js";import{t as n}from"./jsx-runtime-DX3WBWVO.js";import{n as r}from"./hooks-D6EE7BIt.js";import{c as i,o as a}from"./dist-Cb5RSHSg.js";import{t as o}from"./dropzone-hNxmUvwD.js";import{Pr as s}from"./index-BHy2DZX-.js";var c=e(t(),1),l=n(),u=c.forwardRef(({className:e,...t},n)=>(0,l.jsx)(`div`,{ref:n,className:i(`relative overflow-hidden rounded-md`,e),"data-slot":`image-upload`,...t}));u.displayName=`ImageUpload`;var d=c.forwardRef(({className:e,variant:t=`filled`,...n},r)=>(0,l.jsx)(o,{ref:r,className:i(`size-full text-foreground`,e),"data-slot":`image-upload-dropzone`,variant:t,...n}));d.displayName=`ImageUploadDropzone`;var f=a(`group relative flex size-full items-center justify-center overflow-hidden rounded-md bg-muted`,{variants:{background:{default:``,checkerboard:`[background-image:repeating-conic-gradient(var(--border-default)_0%_25%,var(--surface-elevated)_0%_50%)] [background-size:16px_16px]`}},defaultVariants:{background:`default`}}),p=c.forwardRef(({background:e,className:t,...n},r)=>(0,l.jsx)(`div`,{ref:r,className:i(f({background:e}),t),"data-slot":`image-upload-preview`,"data-testid":`image-upload-container`,...n}));p.displayName=`ImageUploadPreview`;var m=c.forwardRef(({alt:e=``,className:t,...n},r)=>(0,l.jsx)(`img`,{ref:r,alt:e,className:i(`size-full object-cover`,t),"data-slot":`image-upload-image`,...n}));m.displayName=`ImageUploadImage`;var h=c.forwardRef(({className:e,...t},n)=>(0,l.jsx)(`div`,{ref:n,className:i(`absolute top-2 right-2 flex gap-1 opacity-0 transition-opacity group-focus-within:opacity-100 group-hover:opacity-100 [@media(hover:none)]:opacity-100`,e),"data-slot":`image-upload-actions`,...t}));h.displayName=`ImageUploadActions`;var g=c.forwardRef(({className:e,size:t=`icon`,variant:n=`ghost`,...r},a)=>(0,l.jsx)(s,{ref:a,className:i(`size-8 bg-surface-inverse text-surface-inverse-foreground hover:bg-surface-inverse/90 hover:text-surface-inverse-foreground`,e),"data-slot":`image-upload-action`,size:t,variant:n,...r}));g.displayName=`ImageUploadAction`;var _=r({method:`POST`,path:()=>`/images/upload/`,body:({file:e})=>{let t=new FormData;return t.append(`file`,e),t.append(`purpose`,`image`),t}}),v=e=>e.images[0].url;export{h as a,p as c,g as i,_ as n,d as o,u as r,m as s,v as t};
1
+ import{o as e}from"./rolldown-runtime-DAXXjFlN.js";import{t}from"./react-Bb3IsNbi.js";import{t as n}from"./jsx-runtime-DX3WBWVO.js";import{n as r}from"./hooks-D6EE7BIt.js";import{c as i,o as a}from"./dist-Cb5RSHSg.js";import{t as o}from"./dropzone-CzhP33wa.js";import{Pr as s}from"./index-DUXM0NlS.js";var c=e(t(),1),l=n(),u=c.forwardRef(({className:e,...t},n)=>(0,l.jsx)(`div`,{ref:n,className:i(`relative overflow-hidden rounded-md`,e),"data-slot":`image-upload`,...t}));u.displayName=`ImageUpload`;var d=c.forwardRef(({className:e,variant:t=`filled`,...n},r)=>(0,l.jsx)(o,{ref:r,className:i(`size-full text-foreground`,e),"data-slot":`image-upload-dropzone`,variant:t,...n}));d.displayName=`ImageUploadDropzone`;var f=a(`group relative flex size-full items-center justify-center overflow-hidden rounded-md bg-muted`,{variants:{background:{default:``,checkerboard:`[background-image:repeating-conic-gradient(var(--border-default)_0%_25%,var(--surface-elevated)_0%_50%)] [background-size:16px_16px]`}},defaultVariants:{background:`default`}}),p=c.forwardRef(({background:e,className:t,...n},r)=>(0,l.jsx)(`div`,{ref:r,className:i(f({background:e}),t),"data-slot":`image-upload-preview`,"data-testid":`image-upload-container`,...n}));p.displayName=`ImageUploadPreview`;var m=c.forwardRef(({alt:e=``,className:t,...n},r)=>(0,l.jsx)(`img`,{ref:r,alt:e,className:i(`size-full object-cover`,t),"data-slot":`image-upload-image`,...n}));m.displayName=`ImageUploadImage`;var h=c.forwardRef(({className:e,...t},n)=>(0,l.jsx)(`div`,{ref:n,className:i(`absolute top-2 right-2 flex gap-1 opacity-0 transition-opacity group-focus-within:opacity-100 group-hover:opacity-100 [@media(hover:none)]:opacity-100`,e),"data-slot":`image-upload-actions`,...t}));h.displayName=`ImageUploadActions`;var g=c.forwardRef(({className:e,size:t=`icon`,variant:n=`ghost`,...r},a)=>(0,l.jsx)(s,{ref:a,className:i(`size-8 bg-surface-inverse text-surface-inverse-foreground hover:bg-surface-inverse/90 hover:text-surface-inverse-foreground`,e),"data-slot":`image-upload-action`,size:t,variant:n,...r}));g.displayName=`ImageUploadAction`;var _=r({method:`POST`,path:()=>`/images/upload/`,body:({file:e})=>{let t=new FormData;return t.append(`file`,e),t.append(`purpose`,`image`),t}}),v=e=>e.images[0].url;export{h as a,p as c,g as i,_ as n,d as o,u as r,m as s,v as t};
@@ -1,4 +1,4 @@
1
- import{o as e,r as t}from"./rolldown-runtime-DAXXjFlN.js";import{t as n}from"./react-Bb3IsNbi.js";import{t as r}from"./jsx-runtime-DX3WBWVO.js";import{m as i}from"./chunk-KS7C4IRE-DG9HTHQ3.js";import{s as a}from"./router-provider-DSQfprxH.js";import{a as o}from"./shade-app-B3heOAfz-BhQXxNkT.js";import{t as s}from"./empty-indicator-WB1WgT9h.js";import{$ as c,B as l,Da as u,Dr as d,Gt as f,H as p,Ha as m,It as h,Jt as ee,Kt as g,L as _,Or as v,Pr as y,Sr as te,Tr as b,Tt as x,Wt as S,Xn as ne,Z as C,ar as w,at as T,br as E,ct as D,dt as O,et as k,ft as A,ho as j,it as M,kt as re,nt as ie,or as N,ot as P,qt as ae,rt as oe,st as F,tt as se,vr as I,wr as L,xr as R}from"./index-BHy2DZX-.js";import"./layout-TMj4P-vv.js";import{t as z}from"./topic-filter-CbgoWIHn.js";import{i as ce,n as le,r as ue,t as de}from"./use-reply-chain-data-DaK8q2qQ.js";var B=e(n(),1),V=r(),H=[`1.5rem`,`1.6rem`,`1.7rem`,`1.8rem`,`2rem`],U={BACKGROUND_COLOR:`ghost-ap-background-color`,FONT_SIZE:`ghost-ap-font-size`,FONT_FAMILY:`ghost-ap-font-family`,FONT_STYLE:`ghost-ap-font-style`},W={SYSTEM:{id:`system`,color:`#fff`,background:`bg-white dark:bg-black`,button:`bg-white dark:bg-black`,border:`border-black/[8%] dark:border-gray-950`},SEPIA:{id:`sepia`,color:`#FCF8F1`,background:`bg-[#FCF8F1]`,button:`bg-[#FCF8F1] hover:bg-black/[3%] text-black hover:text-black`,border:`border-black/[8%]`},LIGHT:{id:`light`,color:`#fff`,background:`bg-white`,button:`hover:bg-black/[3%] text-black hover:text-black`,border:`border-black/[8%] dark:border-gray-950`},DARK:{id:`dark`,color:`#15171a`,background:`bg-black`,button:`text-white dark:bg-black dark:hover:bg-gray-900`,border:`border-black/[8%] dark:border-gray-950`}},fe=()=>{let[e,t]=(0,B.useState)(()=>localStorage.getItem(U.BACKGROUND_COLOR)?.toUpperCase()||`SYSTEM`),[n,r]=(0,B.useState)(()=>{let e=localStorage.getItem(U.FONT_SIZE);return e?parseInt(e):2}),[i,a]=(0,B.useState)(()=>localStorage.getItem(U.FONT_STYLE)||`sans`);return(0,B.useEffect)(()=>{localStorage.setItem(U.FONT_SIZE,n.toString())},[n]),(0,B.useEffect)(()=>{localStorage.setItem(U.FONT_STYLE,i)},[i]),{backgroundColor:e,currentFontSizeIndex:n,fontStyle:i,handleColorChange:e=>{t(e),localStorage.setItem(U.BACKGROUND_COLOR,W[e].id)},setFontStyle:a,increaseFontSize:()=>{r(e=>Math.min(e+1,H.length-1))},decreaseFontSize:()=>{r(e=>Math.max(e-1,0))},resetFontSize:()=>r(2),fontSize:H[n]}},pe=({backgroundColor:e,currentFontSizeIndex:t,fontStyle:n,onColorChange:r,onFontStyleChange:i,onDecreaseFontSize:a,onIncreaseFontSize:o,onResetFontSize:s,onOpenChange:c})=>(0,V.jsx)(G,{backgroundColor:e,currentFontSizeIndex:t,fontStyle:n,isActiveColor:t=>e===t,isActiveFont:e=>n===e,onColorChange:r,onDecreaseFontSize:a,onFontStyleChange:i,onIncreaseFontSize:o,onOpenChange:c,onResetFontSize:s}),G=({backgroundColor:e,isActiveColor:t,isActiveFont:n,onColorChange:r,onFontStyleChange:i,currentFontSizeIndex:a,onDecreaseFontSize:s,onIncreaseFontSize:c,onResetFontSize:l,onOpenChange:d})=>(0,V.jsxs)(I,{modal:!1,onOpenChange:d,children:[(0,V.jsx)(R,{asChild:!0,children:(0,V.jsx)(y,{className:`size-9 rounded-full ${W[e].button}`,variant:`ghost`,children:(0,V.jsx)(o.Typography,{className:`size-[18px]!`})})}),(0,V.jsx)(E,{align:`end`,className:`w-[224px]`,onCloseAutoFocus:e=>e.preventDefault(),onOpenAutoFocus:e=>e.preventDefault(),children:(0,V.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,V.jsxs)(`div`,{className:`flex items-center justify-between gap-[6px]`,children:[(0,V.jsx)(y,{className:`h-7 flex-1 rounded-[6px] bg-gray-200 p-0 text-[1.1rem] text-black hover:bg-gray-300 dark:bg-gray-950 dark:text-white dark:hover:bg-gray-900 [&_svg]:size-[14px] ${t(`SYSTEM`)?`outline-2 outline-green`:``}`,variant:`secondary`,onClick:()=>r(`SYSTEM`),children:`Auto`}),(0,V.jsx)(y,{className:`h-7 flex-1 rounded-[6px] bg-[#ece6d9] p-0 hover:bg-[#ece6d9] ${t(`SEPIA`)?`outline-2 outline-green`:`border border-[#ece6d9]`}`,onClick:()=>r(`SEPIA`)}),(0,V.jsx)(y,{className:`h-7 flex-1 rounded-[6px] bg-white p-0 hover:bg-white ${t(`LIGHT`)?`outline-2 outline-green`:`border border-gray-200`}`,onClick:()=>r(`LIGHT`)}),(0,V.jsx)(y,{className:`h-7 flex-1 rounded-[6px] bg-black p-0 hover:bg-black dark:border dark:border-gray-950 ${t(`DARK`)?`outline-2 outline-green`:``}`,onClick:()=>r(`DARK`)})]}),(0,V.jsxs)(`div`,{className:`flex gap-2`,children:[(0,V.jsxs)(y,{className:`flex h-auto w-full flex-col gap-1 rounded-[6px] bg-gray-200 text-black hover:bg-gray-300 dark:bg-gray-950 dark:text-white dark:hover:bg-gray-900 ${n(`sans`)&&`outline-2 outline-green`}`,variant:`secondary`,onClick:()=>i(`sans`),children:[(0,V.jsx)(`span`,{className:`text-[2rem] leading-none font-bold`,children:`Aa`}),(0,V.jsx)(`span`,{className:`text-[1.1rem]`,children:`System`})]}),(0,V.jsxs)(y,{className:`flex h-auto w-full flex-col gap-1 rounded-[6px] bg-gray-200 text-black hover:bg-gray-300 dark:bg-gray-950 dark:text-white dark:hover:bg-gray-900 ${n(`serif`)&&`outline-2 outline-green`}`,variant:`secondary`,onClick:()=>i(`serif`),children:[(0,V.jsx)(`span`,{className:`pt-1 font-serif text-[2rem] leading-none font-bold`,children:`Aa`}),(0,V.jsx)(`span`,{className:`font-serif text-[1.2rem]`,children:`Serif`})]})]}),(0,V.jsxs)(`div`,{className:`flex gap-2`,children:[(0,V.jsx)(y,{className:`h-8 w-full rounded-[6px] bg-gray-200 text-black hover:bg-gray-300 dark:bg-gray-950 dark:text-white dark:hover:bg-gray-900 [&_svg]:size-[14px]`,disabled:a===0,variant:`secondary`,onClick:s,children:(0,V.jsx)(m,{})}),(0,V.jsx)(y,{className:`h-8 w-full rounded-[6px] bg-gray-200 text-black hover:bg-gray-300 dark:bg-gray-950 dark:text-white dark:hover:bg-gray-900`,variant:`secondary`,onClick:l,children:(0,V.jsx)(`span`,{className:`text-[1.6rem] font-bold`,children:`Aa`})}),(0,V.jsx)(y,{className:`h-8 w-full rounded-[6px] bg-gray-200 text-black hover:bg-gray-300 dark:bg-gray-950 dark:text-white dark:hover:bg-gray-900 [&_svg]:size-[14px]`,disabled:a===H.length-1,variant:`secondary`,onClick:c,children:(0,V.jsx)(u,{})})]})]})})]}),me=({tocItems:e,iframeElement:t,modalRef:n,className:r=`visible! absolute inset-y-0 right-7 z-40 hidden lg:block!`,onOpenChange:i})=>{let[a,o]=(0,B.useState)(null),s=B.useRef(!1);return(0,B.useEffect)(()=>{if(!t?.contentDocument||e.length<=1)return;let r=n.current;if(!r)return;let i=()=>{if(s.current)return;let n=t.contentDocument;if(!n)return;let i=r.scrollTop,a=e.map(e=>n.getElementById(e.id)).filter(e=>e!==null).map(e=>({id:e.id,top:e.offsetTop}));if(!a.length)return;let c=a.reduce((e,t)=>t.top-100<=i?t:e);o(c?.id||null)},a=()=>{requestAnimationFrame(i)};return r.addEventListener(`scroll`,a),i(),()=>{r.removeEventListener(`scroll`,a)}},[t,e,n]),e.length<=1?null:(0,V.jsx)(`div`,{className:r,children:(0,V.jsx)(`div`,{className:`sticky top-1/2 -translate-y-1/2`,children:(0,V.jsx)(K,{activeHeading:a||``,items:e,onItemClick:e=>{if(!t?.contentDocument)return;let r=t.contentDocument.getElementById(e);r&&n.current&&(s.current=!0,o(e),n.current.scrollTo({top:r.offsetTop-20,behavior:`smooth`}),setTimeout(()=>{s.current=!1},1e3))},onOpenChange:i})})})},he={1:`w-3`,2:`w-2`,3:`w-1`},ge={1:`pl-2`,2:`pl-6`,3:`pl-10`},K=({items:e,activeHeading:t,onItemClick:n,onOpenChange:r})=>{let[i,a]=(0,B.useState)(!1),o=B.useRef();if(B.useEffect(()=>()=>{o.current&&clearTimeout(o.current)},[]),e.length===0)return null;let s=e=>Math.min(e,3),c=e=>he[s(e)],l=e=>ge[s(e)],u=()=>{o.current&&clearTimeout(o.current),a(!0),r?.(!0)},d=()=>{o.current=setTimeout(()=>{a(!1),r?.(!1)},100)};return(0,V.jsxs)(I,{modal:!1,open:i,onOpenChange:a,children:[(0,V.jsx)(R,{asChild:!0,children:(0,V.jsx)(`div`,{className:`absolute top-1/2 right-2 flex -translate-y-1/2 flex-col items-end gap-2 rounded-md p-2 text-base dark:bg-black`,onMouseEnter:u,onMouseLeave:d,children:e.map(e=>(0,V.jsx)(`div`,{className:`h-[2px] rounded-sm ${t===e.id?`bg-black dark:bg-white`:`bg-gray-400 dark:bg-gray-700`} pr-1 transition-all ${c(e.level)}`},e.id))})}),(0,V.jsx)(E,{align:`center`,className:`w-[240px] p-2`,side:`left`,sideOffset:-28,onCloseAutoFocus:e=>e.preventDefault(),onMouseEnter:u,onMouseLeave:d,onOpenAutoFocus:e=>e.preventDefault(),children:(0,V.jsx)(`nav`,{"aria-label":`Table of contents navigation`,className:`max-h-[60vh] overflow-y-auto`,role:`navigation`,children:e.map(e=>(0,V.jsx)(`button`,{className:`line-clamp-2 block w-full cursor-pointer rounded py-1 text-left text-sm leading-tight ${t===e.id?`text-black dark:text-white`:`text-gray-700 dark:text-gray-600`} hover:bg-gray-100 hover:text-gray-900 dark:hover:bg-grey-950 dark:hover:text-white ${l(e.level)}`,type:`button`,onClick:()=>n(e.id),children:(0,V.jsx)(`span`,{className:`line-clamp-2`,children:e.text})},e.id))})})]})},_e=()=>`<style>
1
+ import{o as e,r as t}from"./rolldown-runtime-DAXXjFlN.js";import{t as n}from"./react-Bb3IsNbi.js";import{t as r}from"./jsx-runtime-DX3WBWVO.js";import{m as i}from"./chunk-KS7C4IRE-DG9HTHQ3.js";import{s as a}from"./router-provider-DSQfprxH.js";import{a as o}from"./shade-app-B3heOAfz-BhQXxNkT.js";import{t as s}from"./empty-indicator-WB1WgT9h.js";import{$ as c,B as l,Da as u,Dr as d,Gt as f,H as p,Ha as m,It as h,Jt as ee,Kt as g,L as _,Or as v,Pr as y,Sr as te,Tr as b,Tt as x,Wt as S,Xn as ne,Z as C,ar as w,at as T,br as E,ct as D,dt as O,et as k,ft as A,ho as j,it as M,kt as re,nt as ie,or as N,ot as P,qt as ae,rt as oe,st as F,tt as se,vr as I,wr as L,xr as R}from"./index-DUXM0NlS.js";import"./layout-yR9rlvEw.js";import{t as z}from"./topic-filter-BoRHRbL1.js";import{i as ce,n as le,r as ue,t as de}from"./use-reply-chain-data-CmFe0N6F.js";var B=e(n(),1),V=r(),H=[`1.5rem`,`1.6rem`,`1.7rem`,`1.8rem`,`2rem`],U={BACKGROUND_COLOR:`ghost-ap-background-color`,FONT_SIZE:`ghost-ap-font-size`,FONT_FAMILY:`ghost-ap-font-family`,FONT_STYLE:`ghost-ap-font-style`},W={SYSTEM:{id:`system`,color:`#fff`,background:`bg-white dark:bg-black`,button:`bg-white dark:bg-black`,border:`border-black/[8%] dark:border-gray-950`},SEPIA:{id:`sepia`,color:`#FCF8F1`,background:`bg-[#FCF8F1]`,button:`bg-[#FCF8F1] hover:bg-black/[3%] text-black hover:text-black`,border:`border-black/[8%]`},LIGHT:{id:`light`,color:`#fff`,background:`bg-white`,button:`hover:bg-black/[3%] text-black hover:text-black`,border:`border-black/[8%] dark:border-gray-950`},DARK:{id:`dark`,color:`#15171a`,background:`bg-black`,button:`text-white dark:bg-black dark:hover:bg-gray-900`,border:`border-black/[8%] dark:border-gray-950`}},fe=()=>{let[e,t]=(0,B.useState)(()=>localStorage.getItem(U.BACKGROUND_COLOR)?.toUpperCase()||`SYSTEM`),[n,r]=(0,B.useState)(()=>{let e=localStorage.getItem(U.FONT_SIZE);return e?parseInt(e):2}),[i,a]=(0,B.useState)(()=>localStorage.getItem(U.FONT_STYLE)||`sans`);return(0,B.useEffect)(()=>{localStorage.setItem(U.FONT_SIZE,n.toString())},[n]),(0,B.useEffect)(()=>{localStorage.setItem(U.FONT_STYLE,i)},[i]),{backgroundColor:e,currentFontSizeIndex:n,fontStyle:i,handleColorChange:e=>{t(e),localStorage.setItem(U.BACKGROUND_COLOR,W[e].id)},setFontStyle:a,increaseFontSize:()=>{r(e=>Math.min(e+1,H.length-1))},decreaseFontSize:()=>{r(e=>Math.max(e-1,0))},resetFontSize:()=>r(2),fontSize:H[n]}},pe=({backgroundColor:e,currentFontSizeIndex:t,fontStyle:n,onColorChange:r,onFontStyleChange:i,onDecreaseFontSize:a,onIncreaseFontSize:o,onResetFontSize:s,onOpenChange:c})=>(0,V.jsx)(G,{backgroundColor:e,currentFontSizeIndex:t,fontStyle:n,isActiveColor:t=>e===t,isActiveFont:e=>n===e,onColorChange:r,onDecreaseFontSize:a,onFontStyleChange:i,onIncreaseFontSize:o,onOpenChange:c,onResetFontSize:s}),G=({backgroundColor:e,isActiveColor:t,isActiveFont:n,onColorChange:r,onFontStyleChange:i,currentFontSizeIndex:a,onDecreaseFontSize:s,onIncreaseFontSize:c,onResetFontSize:l,onOpenChange:d})=>(0,V.jsxs)(I,{modal:!1,onOpenChange:d,children:[(0,V.jsx)(R,{asChild:!0,children:(0,V.jsx)(y,{className:`size-9 rounded-full ${W[e].button}`,variant:`ghost`,children:(0,V.jsx)(o.Typography,{className:`size-[18px]!`})})}),(0,V.jsx)(E,{align:`end`,className:`w-[224px]`,onCloseAutoFocus:e=>e.preventDefault(),onOpenAutoFocus:e=>e.preventDefault(),children:(0,V.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,V.jsxs)(`div`,{className:`flex items-center justify-between gap-[6px]`,children:[(0,V.jsx)(y,{className:`h-7 flex-1 rounded-[6px] bg-gray-200 p-0 text-[1.1rem] text-black hover:bg-gray-300 dark:bg-gray-950 dark:text-white dark:hover:bg-gray-900 [&_svg]:size-[14px] ${t(`SYSTEM`)?`outline-2 outline-green`:``}`,variant:`secondary`,onClick:()=>r(`SYSTEM`),children:`Auto`}),(0,V.jsx)(y,{className:`h-7 flex-1 rounded-[6px] bg-[#ece6d9] p-0 hover:bg-[#ece6d9] ${t(`SEPIA`)?`outline-2 outline-green`:`border border-[#ece6d9]`}`,onClick:()=>r(`SEPIA`)}),(0,V.jsx)(y,{className:`h-7 flex-1 rounded-[6px] bg-white p-0 hover:bg-white ${t(`LIGHT`)?`outline-2 outline-green`:`border border-gray-200`}`,onClick:()=>r(`LIGHT`)}),(0,V.jsx)(y,{className:`h-7 flex-1 rounded-[6px] bg-black p-0 hover:bg-black dark:border dark:border-gray-950 ${t(`DARK`)?`outline-2 outline-green`:``}`,onClick:()=>r(`DARK`)})]}),(0,V.jsxs)(`div`,{className:`flex gap-2`,children:[(0,V.jsxs)(y,{className:`flex h-auto w-full flex-col gap-1 rounded-[6px] bg-gray-200 text-black hover:bg-gray-300 dark:bg-gray-950 dark:text-white dark:hover:bg-gray-900 ${n(`sans`)&&`outline-2 outline-green`}`,variant:`secondary`,onClick:()=>i(`sans`),children:[(0,V.jsx)(`span`,{className:`text-[2rem] leading-none font-bold`,children:`Aa`}),(0,V.jsx)(`span`,{className:`text-[1.1rem]`,children:`System`})]}),(0,V.jsxs)(y,{className:`flex h-auto w-full flex-col gap-1 rounded-[6px] bg-gray-200 text-black hover:bg-gray-300 dark:bg-gray-950 dark:text-white dark:hover:bg-gray-900 ${n(`serif`)&&`outline-2 outline-green`}`,variant:`secondary`,onClick:()=>i(`serif`),children:[(0,V.jsx)(`span`,{className:`pt-1 font-serif text-[2rem] leading-none font-bold`,children:`Aa`}),(0,V.jsx)(`span`,{className:`font-serif text-[1.2rem]`,children:`Serif`})]})]}),(0,V.jsxs)(`div`,{className:`flex gap-2`,children:[(0,V.jsx)(y,{className:`h-8 w-full rounded-[6px] bg-gray-200 text-black hover:bg-gray-300 dark:bg-gray-950 dark:text-white dark:hover:bg-gray-900 [&_svg]:size-[14px]`,disabled:a===0,variant:`secondary`,onClick:s,children:(0,V.jsx)(m,{})}),(0,V.jsx)(y,{className:`h-8 w-full rounded-[6px] bg-gray-200 text-black hover:bg-gray-300 dark:bg-gray-950 dark:text-white dark:hover:bg-gray-900`,variant:`secondary`,onClick:l,children:(0,V.jsx)(`span`,{className:`text-[1.6rem] font-bold`,children:`Aa`})}),(0,V.jsx)(y,{className:`h-8 w-full rounded-[6px] bg-gray-200 text-black hover:bg-gray-300 dark:bg-gray-950 dark:text-white dark:hover:bg-gray-900 [&_svg]:size-[14px]`,disabled:a===H.length-1,variant:`secondary`,onClick:c,children:(0,V.jsx)(u,{})})]})]})})]}),me=({tocItems:e,iframeElement:t,modalRef:n,className:r=`visible! absolute inset-y-0 right-7 z-40 hidden lg:block!`,onOpenChange:i})=>{let[a,o]=(0,B.useState)(null),s=B.useRef(!1);return(0,B.useEffect)(()=>{if(!t?.contentDocument||e.length<=1)return;let r=n.current;if(!r)return;let i=()=>{if(s.current)return;let n=t.contentDocument;if(!n)return;let i=r.scrollTop,a=e.map(e=>n.getElementById(e.id)).filter(e=>e!==null).map(e=>({id:e.id,top:e.offsetTop}));if(!a.length)return;let c=a.reduce((e,t)=>t.top-100<=i?t:e);o(c?.id||null)},a=()=>{requestAnimationFrame(i)};return r.addEventListener(`scroll`,a),i(),()=>{r.removeEventListener(`scroll`,a)}},[t,e,n]),e.length<=1?null:(0,V.jsx)(`div`,{className:r,children:(0,V.jsx)(`div`,{className:`sticky top-1/2 -translate-y-1/2`,children:(0,V.jsx)(K,{activeHeading:a||``,items:e,onItemClick:e=>{if(!t?.contentDocument)return;let r=t.contentDocument.getElementById(e);r&&n.current&&(s.current=!0,o(e),n.current.scrollTo({top:r.offsetTop-20,behavior:`smooth`}),setTimeout(()=>{s.current=!1},1e3))},onOpenChange:i})})})},he={1:`w-3`,2:`w-2`,3:`w-1`},ge={1:`pl-2`,2:`pl-6`,3:`pl-10`},K=({items:e,activeHeading:t,onItemClick:n,onOpenChange:r})=>{let[i,a]=(0,B.useState)(!1),o=B.useRef();if(B.useEffect(()=>()=>{o.current&&clearTimeout(o.current)},[]),e.length===0)return null;let s=e=>Math.min(e,3),c=e=>he[s(e)],l=e=>ge[s(e)],u=()=>{o.current&&clearTimeout(o.current),a(!0),r?.(!0)},d=()=>{o.current=setTimeout(()=>{a(!1),r?.(!1)},100)};return(0,V.jsxs)(I,{modal:!1,open:i,onOpenChange:a,children:[(0,V.jsx)(R,{asChild:!0,children:(0,V.jsx)(`div`,{className:`absolute top-1/2 right-2 flex -translate-y-1/2 flex-col items-end gap-2 rounded-md p-2 text-base dark:bg-black`,onMouseEnter:u,onMouseLeave:d,children:e.map(e=>(0,V.jsx)(`div`,{className:`h-[2px] rounded-sm ${t===e.id?`bg-black dark:bg-white`:`bg-gray-400 dark:bg-gray-700`} pr-1 transition-all ${c(e.level)}`},e.id))})}),(0,V.jsx)(E,{align:`center`,className:`w-[240px] p-2`,side:`left`,sideOffset:-28,onCloseAutoFocus:e=>e.preventDefault(),onMouseEnter:u,onMouseLeave:d,onOpenAutoFocus:e=>e.preventDefault(),children:(0,V.jsx)(`nav`,{"aria-label":`Table of contents navigation`,className:`max-h-[60vh] overflow-y-auto`,role:`navigation`,children:e.map(e=>(0,V.jsx)(`button`,{className:`line-clamp-2 block w-full cursor-pointer rounded py-1 text-left text-sm leading-tight ${t===e.id?`text-black dark:text-white`:`text-gray-700 dark:text-gray-600`} hover:bg-gray-100 hover:text-gray-900 dark:hover:bg-grey-950 dark:hover:text-white ${l(e.level)}`,type:`button`,onClick:()=>n(e.id),children:(0,V.jsx)(`span`,{className:`line-clamp-2`,children:e.text})},e.id))})})]})},_e=()=>`<style>
2
2
 
3
3
  /* Variables */
4
4