ghost 6.11.0 → 6.12.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 (435) hide show
  1. package/components/tryghost-i18n-6.12.0.tgz +0 -0
  2. package/core/boot.js +4 -2
  3. package/core/built/admin/assets/{_baseAssignValue-BX8EallQ.js → _baseAssignValue-hsL6ItjC.js} +1 -1
  4. package/core/built/admin/assets/{a-large-small-CKZJgscl.js → a-large-small-BPPu_Iy7.js} +1 -1
  5. package/core/built/admin/assets/admin-x-settings/admin-x-settings.js +1 -1
  6. package/core/built/admin/assets/admin-x-settings/{code-editor-view-n8DFeXbv.mjs → code-editor-view-Bq6l5arq.mjs} +2 -2
  7. package/core/built/admin/assets/admin-x-settings/{index-v6qQgUXt.mjs → index-CKaxer_o.mjs} +2 -2
  8. package/core/built/admin/assets/admin-x-settings/{index-CXL12uvO.mjs → index-CtYEAgeN.mjs} +2 -2
  9. package/core/built/admin/assets/admin-x-settings/{index-D4ye6uvI.mjs → index-D4NstoNQ.mjs} +11 -6
  10. package/core/built/admin/assets/admin-x-settings/{modals-CdsPaTfy.mjs → modals-BzljHVa7.mjs} +2 -2
  11. package/core/built/admin/assets/{at-sign-CqQzllfI.js → at-sign-CYnGzOFc.js} +1 -1
  12. package/core/built/admin/assets/{audience-select-DQD7iDOb.js → audience-select-DYoxiiwy.js} +1 -1
  13. package/core/built/admin/assets/{avatar-flipboard-uq7ptTxT.js → avatar-flipboard-C9-npfmZ.js} +1 -1
  14. package/core/built/admin/assets/{bluesky-sharing-qyIGv6Ny.js → bluesky-sharing-BGcmGcee.js} +1 -1
  15. package/core/built/admin/assets/{chart-DGA1MaFs.js → chart-CqJxisVP.js} +1 -1
  16. package/core/built/admin/assets/{chunk.524.1289543297329587cf8a.js → chunk.524.74a9629dd2ba0d21bbef.js} +7 -7
  17. package/core/built/admin/assets/{chunk.582.344ea0d0a16d671345cd.js → chunk.582.3846471396b3a7c46e66.js} +8 -8
  18. package/core/built/admin/assets/{code-editor-view-Bz6kXDiv.js → code-editor-view-C8l3gNnO.js} +1 -1
  19. package/core/built/admin/assets/{comments-C-lkEDkz.js → comments-CpHDoxov.js} +1 -1
  20. package/core/built/admin/assets/{copy-BFuV16bY.js → copy-DWiB-781.js} +1 -1
  21. package/core/built/admin/assets/{data-list-Bw1CQEZ9.js → data-list-yngXNZDF.js} +1 -1
  22. package/core/built/admin/assets/{deleted-feed-item-CmNbSYiO.js → deleted-feed-item-C0FcyLMN.js} +1 -1
  23. package/core/built/admin/assets/{edit-profile-DlIPB2km.js → edit-profile-BjtDkDAq.js} +1 -1
  24. package/core/built/admin/assets/{empty-indicator-DBrIZcFq.js → empty-indicator-BXWniwsl.js} +1 -1
  25. package/core/built/admin/assets/{en-BBc7b85q.js → en-B8qaJx-T.js} +1 -1
  26. package/core/built/admin/assets/{feed-B3XQzKZl.js → feed-DsCVb1SA.js} +1 -1
  27. package/core/built/admin/assets/{filters-DUFXZZnu.js → filters-jAXQSPq6.js} +1 -1
  28. package/core/built/admin/assets/{gh-chart-BV97-O7c.js → gh-chart-DwTCK8z_.js} +1 -1
  29. package/core/built/admin/assets/{ghost-9aa1e7c5992f122dba6932af78bf8e56.js → ghost-6367d022df9db9dacbcb9bfa30232ec7.js} +2 -2
  30. package/core/built/admin/assets/{growth-njR0GqK2.js → growth-DshcRqda.js} +1 -1
  31. package/core/built/admin/assets/{hash-CdH0ikFp.js → hash-p9dv0yuc.js} +1 -1
  32. package/core/built/admin/assets/{inbox-Bd0uf1Ez.js → inbox-CRoP9sy5.js} +1 -1
  33. package/core/built/admin/assets/{index-Kji6JKl7.js → index-6syrC9X1.js} +1 -1
  34. package/core/built/admin/assets/{index-C7M19LpB.js → index-BKtz3UH0.js} +1 -1
  35. package/core/built/admin/assets/{index-DWk7hKRR.js → index-BwY94Fb4.js} +1 -1
  36. package/core/built/admin/assets/{index-BFhECYgc.js → index-C3DF6aFe.js} +1 -1
  37. package/core/built/admin/assets/index-C6NCNp1B.js +1 -0
  38. package/core/built/admin/assets/{index-BYawr8p9.js → index-CJU9a2PB.js} +3 -3
  39. package/core/built/admin/assets/{index-CIE2_z5J.js → index-CUWE7aD1.js} +1 -1
  40. package/core/built/admin/assets/{index-DgRIbSpg.js → index-CuQ_II0e.js} +1 -1
  41. package/core/built/admin/assets/{index-Birw80cQ.js → index-DG8f-HuU.js} +1 -1
  42. package/core/built/admin/assets/{index-DziHC2du.js → index-DItZTRQ4.js} +1 -1
  43. package/core/built/admin/assets/{index-DG53N3Xt.js → index-eLx96SEn.js} +1 -1
  44. package/core/built/admin/assets/{index-DCw6JaEl.js → index-j2_Q-_8H.js} +1 -1
  45. package/core/built/admin/assets/{index-BZ21H0xH.js → index-qWpHJAMP.js} +1 -1
  46. package/core/built/admin/assets/{index-DXCu9e7c.js → index-sy6xRtoO.js} +1 -1
  47. package/core/built/admin/assets/{koenig-lexical-BDJVCHtm.js → koenig-lexical-DgAlBHHS.js} +1 -1
  48. package/core/built/admin/assets/{kpi-card-cv8roErt.js → kpi-card-CHZSLw4p.js} +1 -1
  49. package/core/built/admin/assets/{kpis-Dt4OFY3L.js → kpis-DzbAHfKK.js} +1 -1
  50. package/core/built/admin/assets/{links-08beB3Ij.js → links-BQHRbn46.js} +1 -1
  51. package/core/built/admin/assets/{lucide-react-DKlmxVQI.js → lucide-react-B7UnD_Dp.js} +1 -1
  52. package/core/built/admin/assets/{main-layout-Cl09wG7F.js → main-layout-9nmU5WlG.js} +1 -1
  53. package/core/built/admin/assets/{message-square-text-CaMVBVPr.js → message-square-text-CS3iRuPc.js} +1 -1
  54. package/core/built/admin/assets/{minus-2XwCoFJV.js → minus-emzwh6hq.js} +1 -1
  55. package/core/built/admin/assets/{modals-CIgzYQgv.js → modals-CumFuZ2d.js} +1 -1
  56. package/core/built/admin/assets/{moderation-FjlsSym6.js → moderation-DyfFc9m4.js} +1 -1
  57. package/core/built/admin/assets/{newsletter-BNOwZNlE.js → newsletter-BWul5IFc.js} +1 -1
  58. package/core/built/admin/assets/{newsletters-DUusEYSg.js → newsletters-N6bwI1OF.js} +1 -1
  59. package/core/built/admin/assets/{note-BpYwIDK6.js → note-CiBzkHzz.js} +1 -1
  60. package/core/built/admin/assets/{overview-Y5QYPClr.js → overview-D9gRvn7X.js} +1 -1
  61. package/core/built/admin/assets/{pagemenu-BMXHDXYy.js → pagemenu-aHubMPwB.js} +1 -1
  62. package/core/built/admin/assets/{post-analytics-UerFnJse.js → post-analytics-Bm9xH8nA.js} +1 -1
  63. package/core/built/admin/assets/{post-analytics-context-geHk7rOj.js → post-analytics-context-C7oW3aBz.js} +1 -1
  64. package/core/built/admin/assets/{post-analytics-header-DXfc4KeX.js → post-analytics-header-BjGFgN6A.js} +1 -1
  65. package/core/built/admin/assets/{post-share-modal-Dql4fYjR.js → post-share-modal-Su923uIc.js} +1 -1
  66. package/core/built/admin/assets/{posts-Bsvw11Zo.js → posts-BwP7BNcB.js} +1 -1
  67. package/core/built/admin/assets/{referrers-B8xJpCcR.js → referrers-n_ln9DqI.js} +1 -1
  68. package/core/built/admin/assets/{repeat-COP-3g8d.js → repeat-ms5ocvE0.js} +1 -1
  69. package/core/built/admin/assets/{reply-JE8tmvOn.js → reply-BvO85IDn.js} +1 -1
  70. package/core/built/admin/assets/{select-BhvNY3I-.js → select-B4QhMW5f.js} +1 -1
  71. package/core/built/admin/assets/{settings-BJwVfuWG.js → settings-D5rGcWJ7.js} +4 -4
  72. package/core/built/admin/assets/{settings-C6ZUZQe4.js → settings-QtZ6a2TL.js} +1 -1
  73. package/core/built/admin/assets/{sort-button-iOtR-vQ1.js → sort-button-84sYUZMN.js} +1 -1
  74. package/core/built/admin/assets/{source-icon-C2iFWMlV.js → source-icon-Bzw-AU8p.js} +1 -1
  75. package/core/built/admin/assets/{sprout-BW9HFVU8.js → sprout-C2R5CbXV.js} +1 -1
  76. package/core/built/admin/assets/{square-BCNGSZhW.js → square-DT1uWkxs.js} +1 -1
  77. package/core/built/admin/assets/stats/{audience-select-DNAWmT7R.mjs → audience-select-fTCiZ9MT.mjs} +3 -3
  78. package/core/built/admin/assets/stats/{index-DbGvSTMe.mjs → index-BKgioyC7.mjs} +5 -5
  79. package/core/built/admin/assets/stats/{index-s19ZmxbX.mjs → index-CR2t5Xd-.mjs} +5 -5
  80. package/core/built/admin/assets/stats/index-DEkYwR7C.mjs +739 -0
  81. package/core/built/admin/assets/stats/{index-BS3KMSy9.mjs → index-Djwey97a.mjs} +5 -5
  82. package/core/built/admin/assets/stats/{index-MOQSSYwT.mjs → index-FiU_XgEe.mjs} +6 -6
  83. package/core/built/admin/assets/stats/{sort-button-D76rcldr.mjs → sort-button-Bvi1wfa7.mjs} +3 -3
  84. package/core/built/admin/assets/stats/{stats-CJ7fhUyT.mjs → stats-Bbm6yWZq.mjs} +2 -2
  85. package/core/built/admin/assets/stats/stats.js +1 -1
  86. package/core/built/admin/assets/stats/{tabs-CkbxYgOE.mjs → tabs-BKwH5k-q.mjs} +3 -3
  87. package/core/built/admin/assets/stats/{url-helpers-DICtqCrE.mjs → url-helpers-DmHnUIGc.mjs} +9 -9
  88. package/core/built/admin/assets/stats/{use-growth-stats-DzO7zEy4.mjs → use-growth-stats-BVj3j1hb.mjs} +3 -3
  89. package/core/built/admin/assets/{stats-r0Bphuvi.js → stats-B1mhlQSp.js} +1 -1
  90. package/core/built/admin/assets/{stats-view-DzZxrBDz.js → stats-view-C6MTCwRW.js} +1 -1
  91. package/core/built/admin/assets/{step-1-CUoUOyMm.js → step-1-CzQmZJ93.js} +1 -1
  92. package/core/built/admin/assets/{step-2-CpAkPD8D.js → step-2-DXGDWSQo.js} +1 -1
  93. package/core/built/admin/assets/{step-3-Ci6oJDmK.js → step-3-CYuxXKac.js} +1 -1
  94. package/core/built/admin/assets/{table-DeBuf80X.js → table-mjAkKNdb.js} +1 -1
  95. package/core/built/admin/assets/{tabs-C2sFfNcp.js → tabs-BwQ-i6MY.js} +1 -1
  96. package/core/built/admin/assets/{tags-Bl6G5rvf.js → tags-BkUqCuvX.js} +1 -1
  97. package/core/built/admin/assets/{tags-BL_N4nn2.js → tags-DXDZbfxp.js} +1 -1
  98. package/core/built/admin/assets/{toggle-group-B2X-8giI.js → toggle-group-CqDO3Kkx.js} +1 -1
  99. package/core/built/admin/assets/{topic-filter-DeqMID_s.js → topic-filter-DnuJJBAE.js} +1 -1
  100. package/core/built/admin/assets/{trash-BglGemAb.js → trash-CZ3EXwTL.js} +1 -1
  101. package/core/built/admin/assets/{url-helpers-84icqAuE.js → url-helpers-BE3VXr__.js} +1 -1
  102. package/core/built/admin/assets/{use-growth-stats-DF-7tL8g.js → use-growth-stats-CiuWWM6O.js} +1 -1
  103. package/core/built/admin/assets/{use-infinite-virtual-scroll-BHH7oscK.js → use-infinite-virtual-scroll-BjATkxBj.js} +1 -1
  104. package/core/built/admin/assets/{use-simple-pagination-BsvYfixw.js → use-simple-pagination-C9cb7dDz.js} +1 -1
  105. package/core/built/admin/assets/{user-round-check-BjHbfXKY.js → user-round-check-D3ihrrKL.js} +1 -1
  106. package/core/built/admin/assets/{wallet-cards-KaTkgqvi.js → wallet-cards-Do7nPf3f.js} +1 -1
  107. package/core/built/admin/assets/{web-CUWbpFil.js → web-BEwI2Gfy.js} +1 -1
  108. package/core/built/admin/index-forward.html +4 -4
  109. package/core/built/admin/index.html +3 -3
  110. package/core/frontend/web/middleware/index.js +1 -0
  111. package/core/frontend/web/middleware/serve-indexnow-key.js +66 -0
  112. package/core/frontend/web/site.js +3 -0
  113. package/core/server/api/endpoints/authentication.js +1 -1
  114. package/core/server/api/endpoints/pages.js +1 -1
  115. package/core/server/api/endpoints/posts-public.js +1 -1
  116. package/core/server/api/endpoints/posts.js +1 -1
  117. package/core/server/api/endpoints/search-index-public.js +1 -1
  118. package/core/server/api/endpoints/search-index.js +1 -1
  119. package/core/server/api/endpoints/users.js +1 -1
  120. package/core/server/api/endpoints/utils/serializers/input/settings.js +2 -1
  121. package/core/server/api/endpoints/utils/serializers/output/mappers/posts.js +1 -1
  122. package/core/server/api/endpoints/utils/validators/input/settings.js +1 -1
  123. package/core/server/data/exporter/table-lists.js +2 -1
  124. package/core/server/data/migrations/versions/6.12/2026-01-08-11-48-16-add-indexnow-api-key-setting.js +9 -0
  125. package/core/server/data/schema/default-settings/default-settings.json +6 -0
  126. package/core/server/lib/lexical.js +1 -1
  127. package/core/server/models/settings.js +2 -1
  128. package/core/server/services/activitypub/{ActivityPubServiceWrapper.js → activity-pub-service-wrapper.js} +1 -1
  129. package/core/server/services/activitypub/{ActivityPubService.ts → activity-pub-service.ts} +1 -1
  130. package/core/server/services/activitypub/index.js +1 -1
  131. package/core/server/services/adapter-manager/index.js +1 -1
  132. package/core/server/services/announcement-bar-service/{AnnouncementBarSettings.js → announcement-bar-settings.js} +1 -1
  133. package/core/server/services/announcement-bar-service/index.js +1 -1
  134. package/core/server/services/audience-feedback/{AudienceFeedbackController.js → audience-feedback-controller.js} +3 -3
  135. package/core/server/services/audience-feedback/index.js +4 -4
  136. package/core/server/services/auth/session/express-session.js +1 -1
  137. package/core/server/services/comments/{CommentsController.js → comments-controller.js} +2 -2
  138. package/core/server/services/comments/{CommentsServiceEmails.js → comments-service-emails.js} +1 -1
  139. package/core/server/services/comments/{CommentsService.js → comments-service.js} +1 -1
  140. package/core/server/services/comments/index.js +3 -3
  141. package/core/server/services/custom-redirects/index.js +2 -2
  142. package/core/server/services/donations/{DonationBookshelfRepository.ts → donation-bookshelf-repository.ts} +1 -1
  143. package/core/server/services/donations/{DonationServiceWrapper.js → donation-service-wrapper.js} +1 -1
  144. package/core/server/services/donations/index.js +1 -1
  145. package/core/server/services/email-address/{EmailAddressServiceWrapper.js → email-address-service-wrapper.js} +2 -2
  146. package/core/server/services/email-address/{EmailAddressService.js → email-address-service.js} +4 -4
  147. package/core/server/services/email-address/{EmailAddressService.ts → email-address-service.ts} +1 -1
  148. package/core/server/services/email-address/index.js +1 -1
  149. package/core/server/services/email-analytics/{EmailAnalyticsProviderMailgun.js → email-analytics-provider-mailgun.js} +1 -1
  150. package/core/server/services/email-analytics/{EmailAnalyticsServiceWrapper.js → email-analytics-service-wrapper.js} +5 -5
  151. package/core/server/services/email-analytics/{EmailAnalyticsService.js → email-analytics-service.js} +2 -2
  152. package/core/server/services/email-analytics/index.js +1 -1
  153. package/core/server/services/email-analytics/jobs/fetch-latest/index.js +1 -1
  154. package/core/server/services/email-service/{BatchSendingService.js → batch-sending-service.js} +8 -8
  155. package/core/server/services/email-service/{EmailEventProcessor.js → email-event-processor.js} +6 -6
  156. package/core/server/services/email-service/{EmailEventStorage.js → email-event-storage.js} +1 -1
  157. package/core/server/services/email-service/{EmailRenderer.js → email-renderer.js} +1 -1
  158. package/core/server/services/email-service/{EmailServiceWrapper.js → email-service-wrapper.js} +9 -9
  159. package/core/server/services/email-service/{EmailService.js → email-service.js} +13 -13
  160. package/core/server/services/email-service/index.js +1 -1
  161. package/core/server/services/email-service/{MailgunEmailProvider.js → mailgun-email-provider.js} +1 -1
  162. package/core/server/services/email-service/{SendingService.js → sending-service.js} +6 -6
  163. package/core/server/services/email-suppression-list/{InMemoryEmailSuppressionList.js → in-memory-email-suppression-list.js} +1 -1
  164. package/core/server/services/email-suppression-list/{MailgunEmailSuppressionList.js → mailgun-email-suppression-list.js} +3 -3
  165. package/core/server/services/email-suppression-list/service.js +2 -2
  166. package/core/server/services/explore/index.js +2 -2
  167. package/core/server/services/explore-ping/index.js +2 -2
  168. package/core/server/services/frontend-data-service/index.js +1 -1
  169. package/core/server/services/identity-tokens/{IdentityTokenServiceWrapper.js → identity-token-service-wrapper.js} +1 -1
  170. package/core/server/services/identity-tokens/index.js +1 -1
  171. package/core/server/services/indexnow.js +212 -0
  172. package/core/server/services/invites/index.js +1 -1
  173. package/core/server/services/link-redirection/index.js +2 -2
  174. package/core/server/services/link-redirection/{LinkRedirectRepository.js → link-redirect-repository.js} +1 -1
  175. package/core/server/services/link-redirection/{LinkRedirectsService.js → link-redirects-service.js} +2 -2
  176. package/core/server/services/link-redirection/{RedirectEvent.js → redirect-event.js} +1 -1
  177. package/core/server/services/link-tracking/index.js +3 -3
  178. package/core/server/services/link-tracking/{LinkClickRepository.js → link-click-repository.js} +1 -1
  179. package/core/server/services/link-tracking/{LinkClickTrackingService.js → link-click-tracking-service.js} +4 -4
  180. package/core/server/services/link-tracking/{PostLinkRepository.js → post-link-repository.js} +7 -7
  181. package/core/server/services/mail/{GhostMailer.js → ghost-mailer.js} +1 -1
  182. package/core/server/services/mail/index.js +2 -2
  183. package/core/server/services/media-inliner/service.js +1 -1
  184. package/core/server/services/member-attribution/README.md +6 -6
  185. package/core/server/services/member-attribution/{AttributionBuilder.js → attribution-builder.js} +4 -4
  186. package/core/server/services/member-attribution/index.js +5 -5
  187. package/core/server/services/member-attribution/{MemberAttributionService.js → member-attribution-service.js} +9 -9
  188. package/core/server/services/member-attribution/{ReferrerTranslator.js → referrer-translator.js} +1 -1
  189. package/core/server/services/member-attribution/{UrlTranslator.js → url-translator.js} +1 -1
  190. package/core/server/services/member-welcome-emails/constants.js +22 -1
  191. package/core/server/services/member-welcome-emails/service.js +23 -5
  192. package/core/server/services/members/api.js +1 -1
  193. package/core/server/services/members/importer/index.js +3 -3
  194. package/core/server/services/members/importer/{MembersCSVImporter.js → members-csv-importer.js} +2 -2
  195. package/core/server/services/members/members-api/members-api.js +14 -14
  196. package/core/server/services/members/members-api/repositories/{MemberRepository.js → member-repository.js} +17 -8
  197. package/core/server/services/members/members-api/services/{MemberBREADService.js → member-bread-service.js} +1 -1
  198. package/core/server/services/members/members-api/services/{PaymentsService.js → payments-service.js} +12 -12
  199. package/core/server/services/members/service.js +4 -4
  200. package/core/server/services/members-events/index.js +3 -3
  201. package/core/server/services/members-events/{LastSeenAtUpdater.js → last-seen-at-updater.js} +2 -2
  202. package/core/server/services/mentions/{BookshelfMentionRepository.js → bookshelf-mention-repository.js} +9 -9
  203. package/core/server/services/mentions/{InMemoryMentionRepository.js → in-memory-mention-repository.js} +4 -4
  204. package/core/server/services/mentions/{MentionController.js → mention-controller.js} +5 -5
  205. package/core/server/services/mentions/{MentionCreatedEvent.js → mention-created-event.js} +1 -1
  206. package/core/server/services/mentions/{Mention.js → mention.js} +1 -1
  207. package/core/server/services/mentions/{MentionsAPI.js → mentions-api.js} +1 -1
  208. package/core/server/services/mentions/{ResourceService.js → resource-service.js} +2 -2
  209. package/core/server/services/mentions/{RoutingService.js → routing-service.js} +2 -2
  210. package/core/server/services/mentions/service.js +11 -11
  211. package/core/server/services/mentions/{WebmentionMetadata.js → webmention-metadata.js} +1 -1
  212. package/core/server/services/mentions-email-report/job.js +1 -1
  213. package/core/server/services/mentions-email-report/{MentionEmailReportJob.js → mention-email-report-job.js} +1 -1
  214. package/core/server/services/mentions-email-report/service.js +2 -2
  215. package/core/server/services/milestones/{BookshelfMilestoneRepository.js → bookshelf-milestone-repository.js} +2 -2
  216. package/core/server/services/milestones/{InMemoryMilestoneRepository.js → in-memory-milestone-repository.js} +2 -2
  217. package/core/server/services/milestones/{Milestone.js → milestone.js} +1 -1
  218. package/core/server/services/milestones/{MilestonesService.js → milestones-service.js} +1 -1
  219. package/core/server/services/milestones/service.js +4 -4
  220. package/core/server/services/newsletters/index.js +2 -2
  221. package/core/server/services/newsletters/{NewslettersService.js → newsletters-service.js} +1 -1
  222. package/core/server/services/notifications/index.js +1 -1
  223. package/core/server/services/oembed/service.js +3 -3
  224. package/core/server/services/offers/application/{OfferMapper.js → offer-mapper.js} +1 -1
  225. package/core/server/services/offers/application/{OffersAPI.js → offers-api.js} +9 -9
  226. package/core/server/services/offers/application/{UniqueChecker.js → unique-checker.js} +2 -2
  227. package/core/server/services/offers/domain/events/{OfferCodeChangeEvent.js → offer-code-change-event.js} +1 -1
  228. package/core/server/services/offers/domain/events/{OfferCreatedEvent.js → offer-created-event.js} +1 -1
  229. package/core/server/services/offers/domain/models/{OfferAmount.js → offer-amount.js} +1 -1
  230. package/core/server/services/offers/domain/models/{OfferCadence.js → offer-cadence.js} +1 -1
  231. package/core/server/services/offers/domain/models/{OfferCode.js → offer-code.js} +1 -1
  232. package/core/server/services/offers/domain/models/{OfferCreatedAt.js → offer-created-at.js} +1 -1
  233. package/core/server/services/offers/domain/models/{OfferCurrency.js → offer-currency.js} +1 -1
  234. package/core/server/services/offers/domain/models/{OfferDescription.js → offer-description.js} +1 -1
  235. package/core/server/services/offers/domain/models/{OfferDuration.js → offer-duration.js} +1 -1
  236. package/core/server/services/offers/domain/models/{OfferName.js → offer-name.js} +1 -1
  237. package/core/server/services/offers/domain/models/{OfferStatus.js → offer-status.js} +1 -1
  238. package/core/server/services/offers/domain/models/{OfferTitle.js → offer-title.js} +1 -1
  239. package/core/server/services/offers/domain/models/{OfferType.js → offer-type.js} +1 -1
  240. package/core/server/services/offers/domain/models/{Offer.js → offer.js} +14 -14
  241. package/core/server/services/offers/domain/models/{StripeCoupon.js → stripe-coupon.js} +1 -1
  242. package/core/server/services/offers/{OfferBookshelfRepository.js → offer-bookshelf-repository.js} +6 -6
  243. package/core/server/services/offers/{OffersModule.js → offers-module.js} +4 -4
  244. package/core/server/services/offers/service.js +3 -3
  245. package/core/server/services/outbox/index.js +2 -2
  246. package/core/server/services/outbox/jobs/outbox-job.js +2 -2
  247. package/core/server/services/posts/posts-service-instance.js +47 -0
  248. package/core/server/services/posts/posts-service.js +572 -45
  249. package/core/server/services/recommendations/index.js +1 -1
  250. package/core/server/services/recommendations/{RecommendationEnablerService.js → recommendation-enabler-service.js} +2 -2
  251. package/core/server/services/recommendations/{RecommendationServiceWrapper.js → recommendation-service-wrapper.js} +2 -2
  252. package/core/server/services/recommendations/service/{BookshelfClickEventRepository.js → bookshelf-click-event-repository.js} +4 -4
  253. package/core/server/services/recommendations/service/{BookshelfClickEventRepository.ts → bookshelf-click-event-repository.ts} +2 -2
  254. package/core/server/services/recommendations/service/{BookshelfRecommendationRepository.js → bookshelf-recommendation-repository.js} +4 -4
  255. package/core/server/services/recommendations/service/{BookshelfRecommendationRepository.ts → bookshelf-recommendation-repository.ts} +3 -3
  256. package/core/server/services/recommendations/service/{BookshelfSubscribeEventRepository.js → bookshelf-subscribe-event-repository.js} +4 -4
  257. package/core/server/services/recommendations/service/{BookshelfSubscribeEventRepository.ts → bookshelf-subscribe-event-repository.ts} +2 -2
  258. package/core/server/services/recommendations/service/{InMemoryRecommendationRepository.js → in-memory-recommendation-repository.js} +2 -2
  259. package/core/server/services/recommendations/service/{InMemoryRecommendationRepository.ts → in-memory-recommendation-repository.ts} +3 -3
  260. package/core/server/services/recommendations/service/{IncomingRecommendationController.js → incoming-recommendation-controller.js} +2 -2
  261. package/core/server/services/recommendations/service/{IncomingRecommendationController.ts → incoming-recommendation-controller.ts} +3 -3
  262. package/core/server/services/recommendations/service/{IncomingRecommendationEmailRenderer.ts → incoming-recommendation-email-renderer.ts} +2 -2
  263. package/core/server/services/recommendations/service/{IncomingRecommendationService.ts → incoming-recommendation-service.ts} +2 -2
  264. package/core/server/services/recommendations/service/index.js +15 -15
  265. package/core/server/services/recommendations/service/index.ts +15 -15
  266. package/core/server/services/recommendations/service/{RecommendationController.js → recommendation-controller.js} +13 -13
  267. package/core/server/services/recommendations/service/{RecommendationController.ts → recommendation-controller.ts} +4 -4
  268. package/core/server/services/recommendations/service/{RecommendationRepository.ts → recommendation-repository.ts} +3 -3
  269. package/core/server/services/recommendations/service/{RecommendationService.js → recommendation-service.js} +6 -6
  270. package/core/server/services/recommendations/service/{RecommendationService.ts → recommendation-service.ts} +8 -8
  271. package/core/server/services/recommendations/service/{Recommendation.js → recommendation.js} +4 -4
  272. package/core/server/services/recommendations/service/{Recommendation.ts → recommendation.ts} +1 -1
  273. package/core/server/services/recommendations/service/{WellknownService.ts → well-known-service.ts} +1 -1
  274. package/core/server/services/route-settings/index.js +4 -4
  275. package/core/server/services/settings/{SettingsBREADService.js → settings-bread-service.js} +1 -1
  276. package/core/server/services/settings/settings-service.js +2 -2
  277. package/core/server/services/settings-helpers/index.js +1 -1
  278. package/core/server/services/settings-helpers/{SettingsHelpers.js → settings-helpers.js} +5 -5
  279. package/core/server/services/slack-notifications/service.js +4 -4
  280. package/core/server/services/slack-notifications/{SlackNotificationsService.js → slack-notifications-service.js} +2 -2
  281. package/core/server/services/slack-notifications/{SlackNotifications.js → slack-notifications.js} +2 -2
  282. package/core/server/services/staff/index.js +1 -1
  283. package/core/server/services/staff/{StaffServiceEmails.js → staff-service-emails.js} +2 -2
  284. package/core/server/services/staff/{StaffService.js → staff-service.js} +2 -2
  285. package/core/server/services/stats/{PostsStatsService.js → posts-stats-service.js} +25 -25
  286. package/core/server/services/stats/{ReferrersStatsService.js → referrers-stats-service.js} +3 -3
  287. package/core/server/services/stats/service.js +1 -1
  288. package/core/server/services/stats/{StatsService.js → stats-service.js} +23 -23
  289. package/core/server/services/stripe/events/index.js +2 -2
  290. package/core/server/services/stripe/service.js +1 -1
  291. package/core/server/services/stripe/services/webhook/{CheckoutSessionEventService.js → checkout-session-event-service.js} +2 -2
  292. package/core/server/services/stripe/{StripeMigrations.js → stripe-migrations.js} +1 -1
  293. package/core/server/services/stripe/{StripeService.js → stripe-service.js} +8 -8
  294. package/core/server/services/stripe/{WebhookController.js → webhook-controller.js} +4 -4
  295. package/core/server/services/stripe/{WebhookManager.js → webhook-manager.js} +5 -5
  296. package/core/server/services/themes/storage.js +1 -1
  297. package/core/server/services/tiers/{InMemoryTierRepository.js → in-memory-tier-repository.js} +1 -1
  298. package/core/server/services/tiers/service.js +2 -2
  299. package/core/server/services/tiers/{TierActivatedEvent.js → tier-activated-event.js} +1 -1
  300. package/core/server/services/tiers/{TierArchivedEvent.js → tier-archived-event.js} +1 -1
  301. package/core/server/services/tiers/{TierCreatedEvent.js → tier-created-event.js} +1 -1
  302. package/core/server/services/tiers/{TierNameChangeEvent.js → tier-name-change-event.js} +1 -1
  303. package/core/server/services/tiers/{TierPriceChangeEvent.js → tier-price-change-event.js} +1 -1
  304. package/core/server/services/tiers/{TierRepository.js → tier-repository.js} +7 -7
  305. package/core/server/services/tiers/{Tier.js → tier.js} +5 -5
  306. package/core/server/services/tiers/{TiersAPI.js → tiers-api.js} +1 -1
  307. package/core/server/services/tinybird/index.js +1 -1
  308. package/core/server/services/tinybird/{TinybirdServiceWrapper.js → tinybird-service-wrapper.js} +2 -2
  309. package/core/server/services/update-check/index.js +1 -1
  310. package/core/server/services/url/index.js +2 -2
  311. package/core/server/services/url/{Resources.js → resources.js} +1 -1
  312. package/core/server/services/url/{UrlGenerator.js → url-generator.js} +1 -1
  313. package/core/server/services/url/{UrlService.js → url-service.js} +4 -4
  314. package/core/server/services/url/{Urls.js → urls.js} +1 -1
  315. package/core/server/services/webhooks/listen.js +1 -1
  316. package/core/shared/labs.js +2 -1
  317. package/package.json +3 -3
  318. package/tsconfig.tsbuildinfo +1 -1
  319. package/components/tryghost-i18n-6.11.0.tgz +0 -0
  320. package/core/built/admin/assets/index-Cr_YX9yU.js +0 -1
  321. package/core/built/admin/assets/stats/index-BBCJ2EZo.mjs +0 -733
  322. package/core/server/services/posts/PostsService.js +0 -574
  323. /package/core/server/{GhostServer.js → ghost-server.js} +0 -0
  324. /package/core/server/services/activitypub/{ActivityPubService.js → activity-pub-service.js} +0 -0
  325. /package/core/server/services/adapter-manager/{AdapterManager.js → adapter-manager.js} +0 -0
  326. /package/core/server/services/announcement-bar-service/{AnnouncementVisibilityValues.js → announcement-visibility-values.js} +0 -0
  327. /package/core/server/services/audience-feedback/{AudienceFeedbackService.js → audience-feedback-service.js} +0 -0
  328. /package/core/server/services/audience-feedback/{FeedbackRepository.js → feedback-repository.js} +0 -0
  329. /package/core/server/services/audience-feedback/{Feedback.js → feedback.js} +0 -0
  330. /package/core/server/services/auth/session/{SessionStore.js → session-store.js} +0 -0
  331. /package/core/server/services/comments/{CommentsServiceEmailRenderer.js → comments-service-email-renderer.js} +0 -0
  332. /package/core/server/services/comments/{CommentsStatsService.js → comments-stats-service.js} +0 -0
  333. /package/core/server/services/custom-redirects/{CustomRedirectsAPI.js → custom-redirects-api.js} +0 -0
  334. /package/core/server/services/donations/{DonationBookshelfRepository.js → donation-bookshelf-repository.js} +0 -0
  335. /package/core/server/services/donations/{DonationPaymentEvent.js → donation-payment-event.js} +0 -0
  336. /package/core/server/services/donations/{DonationPaymentEvent.ts → donation-payment-event.ts} +0 -0
  337. /package/core/server/services/email-address/{EmailAddressParser.js → email-address-parser.js} +0 -0
  338. /package/core/server/services/email-address/{EmailAddressParser.js.d.ts → email-address-parser.js.d.ts} +0 -0
  339. /package/core/server/services/email-analytics/{EventProcessingResult.js → event-processing-result.js} +0 -0
  340. /package/core/server/services/email-analytics/events/{StartEmailAnalyticsJobEvent.js → start-email-analytics-job-event.js} +0 -0
  341. /package/core/server/services/email-service/{DomainWarmingService.js → domain-warming-service.js} +0 -0
  342. /package/core/server/services/email-service/{DomainWarmingService.ts → domain-warming-service.ts} +0 -0
  343. /package/core/server/services/email-service/{EmailBodyCache.js → email-body-cache.js} +0 -0
  344. /package/core/server/services/email-service/{EmailController.js → email-controller.js} +0 -0
  345. /package/core/server/services/email-service/{EmailSegmenter.js → email-segmenter.js} +0 -0
  346. /package/core/server/services/email-service/events/{EmailBouncedEvent.js → email-bounced-event.js} +0 -0
  347. /package/core/server/services/email-service/events/{EmailDeliveredEvent.js → email-delivered-event.js} +0 -0
  348. /package/core/server/services/email-service/events/{EmailOpenedEvent.js → email-opened-event.js} +0 -0
  349. /package/core/server/services/email-service/events/{EmailTemporaryBouncedEvent.js → email-temporary-bounced-event.js} +0 -0
  350. /package/core/server/services/email-service/events/{EmailUnsubscribedEvent.js → email-unsubscribed-event.js} +0 -0
  351. /package/core/server/services/email-service/events/{SpamComplaintEvent.js → spam-complaint-event.js} +0 -0
  352. /package/core/server/services/email-suppression-list/{EmailSuppressionList.js → email-suppression-list.js} +0 -0
  353. /package/core/server/services/explore/{ExploreService.js → explore-service.js} +0 -0
  354. /package/core/server/services/explore-ping/{ExplorePingService.js → explore-ping-service.js} +0 -0
  355. /package/core/server/services/frontend-data-service/{FrontendDataService.js → front-end-data-service.js} +0 -0
  356. /package/core/server/services/identity-tokens/{IdentityTokenService.js → identity-token-service.js} +0 -0
  357. /package/core/server/services/identity-tokens/{IdentityTokenService.ts → identity-token-service.ts} +0 -0
  358. /package/core/server/services/invites/{Invites.js → invites.js} +0 -0
  359. /package/core/server/services/lib/{DynamicRedirectManager.js → dynamic-redirect-manager.js} +0 -0
  360. /package/core/server/services/lib/{EmailContentGenerator.js → email-content-generator.js} +0 -0
  361. /package/core/server/services/lib/{InMemoryRepository.js → in-memory-repository.js} +0 -0
  362. /package/core/server/services/lib/{InMemoryRepository.ts → in-memory-repository.ts} +0 -0
  363. /package/core/server/services/lib/magic-link/{MagicLink.js → magic-link.js} +0 -0
  364. /package/core/server/services/lib/{MailgunClient.js → mailgun-client.js} +0 -0
  365. /package/core/server/services/link-redirection/{LinkRedirect.js → link-redirect.js} +0 -0
  366. /package/core/server/services/link-tracking/{ClickEvent.js → click-event.js} +0 -0
  367. /package/core/server/services/link-tracking/{FullPostLink.js → full-post-link.js} +0 -0
  368. /package/core/server/services/link-tracking/{PostLink.js → post-link.js} +0 -0
  369. /package/core/server/services/media-inliner/{ExternalMediaInliner.js → external-media-inliner.js} +0 -0
  370. /package/core/server/services/member-attribution/{OutboundLinkTagger.js → outbound-link-tagger.js} +0 -0
  371. /package/core/server/services/member-attribution/{UrlHistory.js → url-history.js} +0 -0
  372. /package/core/server/services/member-welcome-emails/{MemberWelcomeEmailRenderer.js → member-welcome-email-renderer.js} +0 -0
  373. /package/core/server/services/members/importer/{MembersCSVImporterStripeUtils.js → members-csv-importer-stripe-utils.js} +0 -0
  374. /package/core/server/services/members/members-api/controllers/{MemberController.js → member-controller.js} +0 -0
  375. /package/core/server/services/members/members-api/controllers/{RouterController.js → router-controller.js} +0 -0
  376. /package/core/server/services/members/members-api/controllers/{WellKnownController.js → well-known-controller.js} +0 -0
  377. /package/core/server/services/members/members-api/repositories/{EventRepository.js → event-repository.js} +0 -0
  378. /package/core/server/services/members/members-api/repositories/{ProductRepository.js → product-repository.js} +0 -0
  379. /package/core/server/services/members/members-api/services/{GeolocationService.js → geolocation-service.js} +0 -0
  380. /package/core/server/services/members/members-api/services/{TokenService.js → token-service.js} +0 -0
  381. /package/core/server/services/members/{MembersConfigProvider.js → members-config-provider.js} +0 -0
  382. /package/core/server/services/members/{RequestIntegrityTokenProvider.js → request-integrity-token-provider.js} +0 -0
  383. /package/core/server/services/members/{SingleUseTokenProvider.js → single-use-token-provider.js} +0 -0
  384. /package/core/server/services/members/stats/{MembersStats.js → members-stats.js} +0 -0
  385. /package/core/server/services/members-events/{EventStorage.js → event-storage.js} +0 -0
  386. /package/core/server/services/members-events/{LastSeenAtCache.js → last-seen-at-cache.js} +0 -0
  387. /package/core/server/services/mentions/{MentionDiscoveryService.js → mention-discovery-service.js} +0 -0
  388. /package/core/server/services/mentions/{MentionSendingService.js → mention-sending-service.js} +0 -0
  389. /package/core/server/services/mentions-email-report/{StartMentionEmailReportJob.js → start-mention-email-report-job.js} +0 -0
  390. /package/core/server/services/milestones/{MilestoneCreatedEvent.js → milestone-created-event.js} +0 -0
  391. /package/core/server/services/milestones/{MilestoneQueries.js → milestone-queries.js} +0 -0
  392. /package/core/server/services/notifications/{Notifications.js → notifications.js} +0 -0
  393. /package/core/server/services/oembed/{NFTOEmbedProvider.js → nft-oembed-provider.js} +0 -0
  394. /package/core/server/services/oembed/{OEmbedService.js → oembed-service.js} +0 -0
  395. /package/core/server/services/oembed/{TwitterOEmbedProvider.js → twitter-oembed-provider.js} +0 -0
  396. /package/core/server/services/offers/domain/models/shared/{ValueObject.js → value-object.js} +0 -0
  397. /package/core/server/services/outbox/events/{StartOutboxProcessingEvent.js → start-outbox-processing-event.js} +0 -0
  398. /package/core/server/services/posts/{PostsExporter.js → posts-exporter.js} +0 -0
  399. /package/core/server/services/posts/stats/{PostStats.js → post-stats.js} +0 -0
  400. /package/core/server/services/recommendations/service/{BookshelfRepository.js → bookshelf-repository.js} +0 -0
  401. /package/core/server/services/recommendations/service/{BookshelfRepository.ts → bookshelf-repository.ts} +0 -0
  402. /package/core/server/services/recommendations/service/{ClickEvent.js → click-event.js} +0 -0
  403. /package/core/server/services/recommendations/service/{ClickEvent.ts → click-event.ts} +0 -0
  404. /package/core/server/services/recommendations/service/{IncomingRecommendationEmailRenderer.js → incoming-recommendation-email-renderer.js} +0 -0
  405. /package/core/server/services/recommendations/service/{IncomingRecommendationService.js → incoming-recommendation-service.js} +0 -0
  406. /package/core/server/services/recommendations/service/{RecommendationMetadataService.js → recommendation-metadata-service.js} +0 -0
  407. /package/core/server/services/recommendations/service/{RecommendationMetadataService.ts → recommendation-metadata-service.ts} +0 -0
  408. /package/core/server/services/recommendations/service/{RecommendationRepository.js → recommendation-repository.js} +0 -0
  409. /package/core/server/services/recommendations/service/{SubscribeEvent.js → subscribe-event.js} +0 -0
  410. /package/core/server/services/recommendations/service/{SubscribeEvent.ts → subscribe-event.ts} +0 -0
  411. /package/core/server/services/recommendations/service/{UnsafeData.js → unsafe-data.js} +0 -0
  412. /package/core/server/services/recommendations/service/{UnsafeData.ts → unsafe-data.ts} +0 -0
  413. /package/core/server/services/recommendations/service/{WellknownService.js → well-known-service.js} +0 -0
  414. /package/core/server/services/route-settings/{DefaultSettingsManager.js → default-settings-manager.js} +0 -0
  415. /package/core/server/services/route-settings/{RouteSettings.js → route-settings.js} +0 -0
  416. /package/core/server/services/route-settings/{SettingsLoader.js → settings-loader.js} +0 -0
  417. /package/core/server/services/route-settings/{SettingsPathManager.js → settings-path-manager.js} +0 -0
  418. /package/core/server/services/stats/{ContentStatsService.js → content-stats-service.js} +0 -0
  419. /package/core/server/services/stats/{MembersStatsService.js → members-stats-service.js} +0 -0
  420. /package/core/server/services/stats/{MrrStatsService.js → mrr-stats-service.js} +0 -0
  421. /package/core/server/services/stats/{SubscriptionStatsService.js → subscription-stats-service.js} +0 -0
  422. /package/core/server/services/stripe/events/{StripeLiveDisabledEvent.js → stripe-live-disabled-event.js} +0 -0
  423. /package/core/server/services/stripe/events/{StripeLiveEnabledEvent.js → stripe-live-enabled-event.js} +0 -0
  424. /package/core/server/services/stripe/services/webhook/{InvoiceEventService.js → invoice-event-service.js} +0 -0
  425. /package/core/server/services/stripe/services/webhook/{SubscriptionEventService.js → subscription-event-service.js} +0 -0
  426. /package/core/server/services/stripe/{StripeAPI.js → stripe-api.js} +0 -0
  427. /package/core/server/services/themes/{ThemeStorage.js → theme-storage.js} +0 -0
  428. /package/core/server/services/tinybird/{TinybirdService.js → tinybird-service.js} +0 -0
  429. /package/core/server/services/update-check/{UpdateCheckService.js → update-check-service.js} +0 -0
  430. /package/core/server/services/url/{LocalFileCache.js → local-file-cache.js} +0 -0
  431. /package/core/server/services/url/{Queue.js → queue.js} +0 -0
  432. /package/core/server/services/url/{Resource.js → resource.js} +0 -0
  433. /package/core/server/services/{Users.js → users.js} +0 -0
  434. /package/core/server/services/{VerificationTrigger.js → verification-trigger.js} +0 -0
  435. /package/core/server/services/webhooks/{WebhookTrigger.js → webhook-trigger.js} +0 -0
@@ -1,13 +1,13 @@
1
1
  const logging = require('@tryghost/logging');
2
2
 
3
3
  /**
4
- * @typedef {import('./MentionsAPI')} MentionsAPI
5
- * @typedef {import('./Mention')} Mention
4
+ * @typedef {import('./mentions-api')} MentionsAPI
5
+ * @typedef {import('./mention')} Mention
6
6
  */
7
7
 
8
8
  /**
9
9
  * @template Model
10
- * @typedef {import('./MentionsAPI').Page<Model>} Page<Model>
10
+ * @typedef {import('./mentions-api').Page<Model>} Page<Model>
11
11
  */
12
12
 
13
13
  /**
@@ -33,7 +33,7 @@ const logging = require('@tryghost/logging');
33
33
  */
34
34
 
35
35
  module.exports = class MentionController {
36
- /** @type {import('./MentionsAPI')} */
36
+ /** @type {import('./mentions-api')} */
37
37
  #api;
38
38
 
39
39
  /** @type {IJobService} */
@@ -44,7 +44,7 @@ module.exports = class MentionController {
44
44
 
45
45
  /**
46
46
  * @param {object} deps
47
- * @param {import('./MentionsAPI')} deps.api
47
+ * @param {import('./mentions-api')} deps.api
48
48
  * @param {IJobService} deps.jobService
49
49
  * @param {IMentionResourceService} deps.mentionResourceService
50
50
  */
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @typedef {object} MentionCreatedEventData
3
- * @property {import('./Mention')} mention
3
+ * @property {import('./mention')} mention
4
4
  */
5
5
 
6
6
  module.exports = class MentionCreatedEvent {
@@ -1,6 +1,6 @@
1
1
  const ObjectID = require('bson-objectid').default;
2
2
  const {ValidationError} = require('@tryghost/errors');
3
- const MentionCreatedEvent = require('./MentionCreatedEvent');
3
+ const MentionCreatedEvent = require('./mention-created-event');
4
4
 
5
5
  module.exports = class Mention {
6
6
  /** @type {Array} */
@@ -1,6 +1,6 @@
1
1
  const errors = require('@tryghost/errors');
2
2
  const logging = require('@tryghost/logging');
3
- const Mention = require('./Mention');
3
+ const Mention = require('./mention');
4
4
 
5
5
  /**
6
6
  * @template Model
@@ -1,7 +1,7 @@
1
1
  const ObjectID = require('bson-objectid').default;
2
2
 
3
3
  /**
4
- * @typedef {import('./MentionsAPI').IResourceService} IResourceService
4
+ * @typedef {import('./mentions-api').IResourceService} IResourceService
5
5
  */
6
6
 
7
7
  /**
@@ -26,7 +26,7 @@ module.exports = class ResourceService {
26
26
 
27
27
  /**
28
28
  * @param {URL} url
29
- * @returns {Promise<import('./MentionsAPI').ResourceResult>}
29
+ * @returns {Promise<import('./mentions-api').ResourceResult>}
30
30
  */
31
31
  async getByURL(url) {
32
32
  const path = this.#urlUtils.absoluteToRelative(url.href, {withoutSubdirectory: true});
@@ -1,8 +1,8 @@
1
1
  const logging = require('@tryghost/logging');
2
2
 
3
3
  /**
4
- * @typedef {import('./MentionsAPI').IRoutingService} IRoutingService
5
- * @typedef {import('./MentionsAPI').IResourceService} IResourceService
4
+ * @typedef {import('./mentions-api').IRoutingService} IRoutingService
5
+ * @typedef {import('./mentions-api').IResourceService} IResourceService
6
6
  */
7
7
 
8
8
  /**
@@ -1,11 +1,11 @@
1
- const MentionController = require('./MentionController');
2
- const WebmentionMetadata = require('./WebmentionMetadata');
3
- const MentionsAPI = require('./MentionsAPI');
4
- const MentionSendingService = require('./MentionSendingService');
5
- const MentionDiscoveryService = require('./MentionDiscoveryService');
6
- const BookshelfMentionRepository = require('./BookshelfMentionRepository');
7
- const ResourceService = require('./ResourceService');
8
- const RoutingService = require('./RoutingService');
1
+ const MentionController = require('./mention-controller');
2
+ const WebmentionMetadata = require('./webmention-metadata');
3
+ const MentionsAPI = require('./mentions-api');
4
+ const MentionSendingService = require('./mention-sending-service');
5
+ const MentionDiscoveryService = require('./mention-discovery-service');
6
+ const BookshelfMentionRepository = require('./bookshelf-mention-repository');
7
+ const ResourceService = require('./resource-service');
8
+ const RoutingService = require('./routing-service');
9
9
  const models = require('../../models');
10
10
  const events = require('../../lib/common/events');
11
11
  const externalRequest = require('../../../server/lib/request-external.js');
@@ -23,13 +23,13 @@ function getPostUrl(post) {
23
23
  }
24
24
 
25
25
  module.exports = {
26
- /** @type {import('./MentionsAPI')} */
26
+ /** @type {import('./mentions-api')} */
27
27
  api: null,
28
- /** @type {import('./BookshelfMentionRepository')} */
28
+ /** @type {import('./bookshelf-mention-repository')} */
29
29
  repository: null,
30
30
  controller: new MentionController(),
31
31
  metadata: new WebmentionMetadata(),
32
- /** @type {import('./MentionSendingService')} */
32
+ /** @type {import('./mention-sending-service')} */
33
33
  sendingService: null,
34
34
  didInit: false,
35
35
  async init() {
@@ -30,7 +30,7 @@ module.exports = class WebmentionMetadata {
30
30
 
31
31
  /**
32
32
  * @param {URL} url
33
- * @returns {Promise<import('./MentionsAPI').WebmentionMetadata>}
33
+ * @returns {Promise<import('./mentions-api').WebmentionMetadata>}
34
34
  */
35
35
  async fetch(url) {
36
36
  const mappedUrl = this.#getMappedUrl(url);
@@ -1,5 +1,5 @@
1
1
  const {parentPort} = require('worker_threads');
2
- const StartMentionEmailReportJob = require('./StartMentionEmailReportJob');
2
+ const StartMentionEmailReportJob = require('./start-mention-email-report-job');
3
3
 
4
4
  if (parentPort) {
5
5
  parentPort.postMessage({
@@ -90,7 +90,7 @@ module.exports = class MentionEmailReportJob {
90
90
  */
91
91
 
92
92
  /**
93
- * @typedef {import('../mentions/MentionsAPI').MentionReport} MentionReport
93
+ * @typedef {import('../mentions/mentions-api').MentionReport} MentionReport
94
94
  */
95
95
 
96
96
  /**
@@ -1,4 +1,4 @@
1
- const MentionEmailReportJob = require('./MentionEmailReportJob');
1
+ const MentionEmailReportJob = require('./mention-email-report-job');
2
2
 
3
3
  /**
4
4
  * @typedef {MentionEmailReportJob.MentionReport} MentionReport
@@ -140,7 +140,7 @@ module.exports = {
140
140
  const mentionsJobs = require('../mentions-jobs');
141
141
 
142
142
  const DomainEvents = require('@tryghost/domain-events');
143
- const StartMentionEmailReportJob = require('./StartMentionEmailReportJob');
143
+ const StartMentionEmailReportJob = require('./start-mention-email-report-job');
144
144
 
145
145
  const labs = require('../../../shared/labs');
146
146
  DomainEvents.subscribe(StartMentionEmailReportJob, () => {
@@ -1,7 +1,7 @@
1
- const Milestone = require('./Milestone');
1
+ const Milestone = require('./milestone');
2
2
 
3
3
  /**
4
- * @typedef {import('./MilestonesService').IMilestoneRepository} IMilestoneRepository
4
+ * @typedef {import('./milestones-service').IMilestoneRepository} IMilestoneRepository
5
5
  */
6
6
 
7
7
  /**
@@ -1,6 +1,6 @@
1
1
  /**
2
- * @typedef {import('./Milestone')} Milestone
3
- * @typedef {import('./MilestonesService').IMilestoneRepository} IMilestoneRepository
2
+ * @typedef {import('./milestone')} Milestone
3
+ * @typedef {import('./milestones-service').IMilestoneRepository} IMilestoneRepository
4
4
  */
5
5
 
6
6
  /**
@@ -1,6 +1,6 @@
1
1
  const ObjectID = require('bson-objectid').default;
2
2
  const {ValidationError} = require('@tryghost/errors');
3
- const MilestoneCreatedEvent = require('./MilestoneCreatedEvent');
3
+ const MilestoneCreatedEvent = require('./milestone-created-event');
4
4
 
5
5
  module.exports = class Milestone {
6
6
  /** @type {Array} */
@@ -1,4 +1,4 @@
1
- const Milestone = require('./Milestone');
1
+ const Milestone = require('./milestone');
2
2
 
3
3
  /**
4
4
  * @typedef {object} IMilestoneRepository
@@ -1,7 +1,7 @@
1
1
  const DomainEvents = require('@tryghost/domain-events');
2
2
  const logging = require('@tryghost/logging');
3
3
  const models = require('../../models');
4
- const BookshelfMilestoneRepository = require('./BookshelfMilestoneRepository');
4
+ const BookshelfMilestoneRepository = require('./bookshelf-milestone-repository');
5
5
 
6
6
  const JOB_TIMEOUT = 1000 * 60 * 60 * 24 * (Math.floor(Math.random() * 4)); // 0 - 4 days;
7
7
 
@@ -23,7 +23,7 @@ const getStripeLiveEnabled = () => {
23
23
  };
24
24
 
25
25
  module.exports = {
26
- /** @type {import('./MilestonesService')} */
26
+ /** @type {import('./milestones-service')} */
27
27
  api: null,
28
28
 
29
29
  /**
@@ -32,9 +32,9 @@ module.exports = {
32
32
  async init() {
33
33
  if (!this.api) {
34
34
  const db = require('../../data/db');
35
- const MilestoneQueries = require('./MilestoneQueries');
35
+ const MilestoneQueries = require('./milestone-queries');
36
36
 
37
- const MilestonesService = require('./MilestonesService');
37
+ const MilestonesService = require('./milestones-service');
38
38
  const config = require('../../../shared/config');
39
39
  const milestonesConfig = config.get('milestones');
40
40
 
@@ -1,5 +1,5 @@
1
- const NewslettersService = require('./NewslettersService.js');
2
- const SingleUseTokenProvider = require('../members/SingleUseTokenProvider');
1
+ const NewslettersService = require('./newsletters-service.js');
2
+ const SingleUseTokenProvider = require('../members/single-use-token-provider');
3
3
  const mail = require('../mail');
4
4
  const models = require('../../models');
5
5
  const urlUtils = require('../../../shared/url-utils');
@@ -6,7 +6,7 @@ const tpl = require('@tryghost/tpl');
6
6
  const errors = require('@tryghost/errors');
7
7
 
8
8
  const sentry = require('../../../shared/sentry');
9
- const MagicLink = require('../lib/magic-link/MagicLink');
9
+ const MagicLink = require('../lib/magic-link/magic-link');
10
10
 
11
11
  const messages = {
12
12
  nameAlreadyExists: 'A newsletter with the same name already exists',
@@ -1,5 +1,5 @@
1
1
  const settingsCache = require('../../../shared/settings-cache');
2
- const Notifications = require('./Notifications');
2
+ const Notifications = require('./notifications');
3
3
  const models = require('../../models');
4
4
 
5
5
  module.exports.notifications = new Notifications({
@@ -2,17 +2,17 @@ const config = require('../../../shared/config');
2
2
  const storage = require('../../adapters/storage');
3
3
  const externalRequest = require('../../lib/request-external');
4
4
 
5
- const OEmbedService = require('./OEmbedService');
5
+ const OEmbedService = require('./oembed-service');
6
6
  const oembed = new OEmbedService({config, externalRequest, storage});
7
7
 
8
- const NFT = require('./NFTOEmbedProvider');
8
+ const NFT = require('./nft-oembed-provider');
9
9
  const nft = new NFT({
10
10
  config: {
11
11
  apiKey: config.get('opensea').privateReadOnlyApiKey
12
12
  }
13
13
  });
14
14
 
15
- const Twitter = require('./TwitterOEmbedProvider');
15
+ const Twitter = require('./twitter-oembed-provider');
16
16
  const twitter = new Twitter({
17
17
  config: {
18
18
  bearerToken: config.get('twitter').privateReadOnlyToken
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @typedef {import('../domain/models/Offer')} Offer
2
+ * @typedef {import('../domain/models/offer')} Offer
3
3
  */
4
4
 
5
5
  /**
@@ -1,11 +1,11 @@
1
- const Offer = require('../domain/models/Offer');
2
- const OfferName = require('../domain/models/OfferName');
3
- const OfferCode = require('../domain/models/OfferCode');
4
- const OfferTitle = require('../domain/models/OfferTitle');
5
- const OfferDescription = require('../domain/models/OfferDescription');
6
- const OfferStatus = require('../domain/models/OfferStatus');
7
- const OfferMapper = require('./OfferMapper');
8
- const UniqueChecker = require('./UniqueChecker');
1
+ const Offer = require('../domain/models/offer');
2
+ const OfferName = require('../domain/models/offer-name');
3
+ const OfferCode = require('../domain/models/offer-code');
4
+ const OfferTitle = require('../domain/models/offer-title');
5
+ const OfferDescription = require('../domain/models/offer-description');
6
+ const OfferStatus = require('../domain/models/offer-status');
7
+ const OfferMapper = require('./offer-mapper');
8
+ const UniqueChecker = require('./unique-checker');
9
9
  const errors = require('@tryghost/errors');
10
10
  const logging = require('@tryghost/logging');
11
11
  const tpl = require('@tryghost/tpl');
@@ -16,7 +16,7 @@ const messages = {
16
16
 
17
17
  class OffersAPI {
18
18
  /**
19
- * @param {import('../OfferBookshelfRepository')} repository
19
+ * @param {import('../offer-bookshelf-repository')} repository
20
20
  */
21
21
  constructor(repository) {
22
22
  this.repository = repository;
@@ -11,7 +11,7 @@ class UniqueChecker {
11
11
  }
12
12
 
13
13
  /**
14
- * @param {import('../domain/models/OfferCode')} code
14
+ * @param {import('../domain/models/offer-code')} code
15
15
  * @returns {Promise<boolean>}
16
16
  */
17
17
  async isUniqueCode(code) {
@@ -20,7 +20,7 @@ class UniqueChecker {
20
20
  }
21
21
 
22
22
  /**
23
- * @param {import('../domain/models/OfferName')} name
23
+ * @param {import('../domain/models/offer-name')} name
24
24
  * @returns {Promise<boolean>}
25
25
  */
26
26
  async isUniqueName(name) {
@@ -1,4 +1,4 @@
1
- /** @typedef {import('../models/OfferCode')} OfferCode */
1
+ /** @typedef {import('../models/offer-code')} OfferCode */
2
2
 
3
3
  /**
4
4
  * @typedef {object} OfferCodeChangeEventData
@@ -1,4 +1,4 @@
1
- /** @typedef {import('../models/Offer')} Offer */
1
+ /** @typedef {import('../models/offer')} Offer */
2
2
 
3
3
  /**
4
4
  * @typedef {object} OfferCreatedEventData
@@ -1,4 +1,4 @@
1
- const ValueObject = require('./shared/ValueObject');
1
+ const ValueObject = require('./shared/value-object');
2
2
  const InvalidOfferAmount = require('../errors').InvalidOfferAmount;
3
3
 
4
4
  /** @extends ValueObject<number> */
@@ -1,4 +1,4 @@
1
- const ValueObject = require('./shared/ValueObject');
1
+ const ValueObject = require('./shared/value-object');
2
2
  const InvalidOfferCadence = require('../errors').InvalidOfferCadence;
3
3
 
4
4
  /**
@@ -1,5 +1,5 @@
1
1
  const {slugify} = require('@tryghost/string');
2
- const ValueObject = require('./shared/ValueObject');
2
+ const ValueObject = require('./shared/value-object');
3
3
 
4
4
  const InvalidOfferCode = require('../errors').InvalidOfferCode;
5
5
 
@@ -1,4 +1,4 @@
1
- const ValueObject = require('./shared/ValueObject');
1
+ const ValueObject = require('./shared/value-object');
2
2
  const InvalidOfferCreatedAt = require('../errors').InvalidOfferCreatedAt;
3
3
 
4
4
  /** @extends ValueObject<string> */
@@ -1,4 +1,4 @@
1
- const ValueObject = require('./shared/ValueObject');
1
+ const ValueObject = require('./shared/value-object');
2
2
  const InvalidOfferCurrency = require('../errors').InvalidOfferCurrency;
3
3
 
4
4
  /** @extends ValueObject<string> */
@@ -1,4 +1,4 @@
1
- const ValueObject = require('./shared/ValueObject');
1
+ const ValueObject = require('./shared/value-object');
2
2
  const InvalidOfferDescription = require('../errors').InvalidOfferDescription;
3
3
 
4
4
  /** @extends ValueObject<string> */
@@ -1,4 +1,4 @@
1
- const ValueObject = require('./shared/ValueObject');
1
+ const ValueObject = require('./shared/value-object');
2
2
  const InvalidOfferDuration = require('../errors').InvalidOfferDuration;
3
3
 
4
4
  /**
@@ -1,4 +1,4 @@
1
- const ValueObject = require('./shared/ValueObject');
1
+ const ValueObject = require('./shared/value-object');
2
2
  const InvalidOfferName = require('../errors').InvalidOfferName;
3
3
 
4
4
  /** @extends ValueObject<string> */
@@ -1,4 +1,4 @@
1
- const ValueObject = require('./shared/ValueObject');
1
+ const ValueObject = require('./shared/value-object');
2
2
  const InvalidOfferStatus = require('../errors').InvalidOfferStatus;
3
3
 
4
4
  /** @extends ValueObject<'active'|'archived'> */
@@ -1,4 +1,4 @@
1
- const ValueObject = require('./shared/ValueObject');
1
+ const ValueObject = require('./shared/value-object');
2
2
  const InvalidOfferTitle = require('../errors').InvalidOfferTitle;
3
3
 
4
4
  /** @extends ValueObject<string> */
@@ -1,4 +1,4 @@
1
- const ValueObject = require('./shared/ValueObject');
1
+ const ValueObject = require('./shared/value-object');
2
2
  const InvalidOfferType = require('../errors').InvalidOfferType;
3
3
 
4
4
  /** @extends ValueObject<'fixed'|'percent'|'trial'> */
@@ -1,20 +1,20 @@
1
1
  const errors = require('../errors');
2
2
  const ObjectID = require('bson-objectid').default;
3
3
 
4
- const OfferName = require('./OfferName');
5
- const OfferCode = require('./OfferCode');
6
- const OfferAmount = require('./OfferAmount');
7
- const OfferTitle = require('./OfferTitle');
8
- const OfferDescription = require('./OfferDescription');
9
- const OfferCadence = require('./OfferCadence');
10
- const OfferType = require('./OfferType');
11
- const OfferDuration = require('./OfferDuration');
12
- const OfferCurrency = require('./OfferCurrency');
13
- const OfferStatus = require('./OfferStatus');
14
- const OfferCreatedEvent = require('../events/OfferCreatedEvent');
15
- const OfferCodeChangeEvent = require('../events/OfferCodeChangeEvent');
16
- const OfferCreatedAt = require('./OfferCreatedAt');
17
- const StripeCoupon = require('./StripeCoupon');
4
+ const OfferName = require('./offer-name');
5
+ const OfferCode = require('./offer-code');
6
+ const OfferAmount = require('./offer-amount');
7
+ const OfferTitle = require('./offer-title');
8
+ const OfferDescription = require('./offer-description');
9
+ const OfferCadence = require('./offer-cadence');
10
+ const OfferType = require('./offer-type');
11
+ const OfferDuration = require('./offer-duration');
12
+ const OfferCurrency = require('./offer-currency');
13
+ const OfferStatus = require('./offer-status');
14
+ const OfferCreatedEvent = require('../events/offer-created-event');
15
+ const OfferCodeChangeEvent = require('../events/offer-code-change-event');
16
+ const OfferCreatedAt = require('./offer-created-at');
17
+ const StripeCoupon = require('./stripe-coupon');
18
18
 
19
19
  /**
20
20
  * @typedef {object} OfferProps
@@ -1,4 +1,4 @@
1
- const ValueObject = require('./shared/ValueObject');
1
+ const ValueObject = require('./shared/value-object');
2
2
 
3
3
  const InvalidStripeCoupon = require('../errors').InvalidStripeCoupon;
4
4
 
@@ -1,7 +1,7 @@
1
1
  const {flowRight} = require('lodash');
2
2
  const {mapKeyValues, mapQuery} = require('@tryghost/mongo-utils');
3
3
  const DomainEvents = require('@tryghost/domain-events');
4
- const Offer = require('./domain/models/Offer');
4
+ const Offer = require('./domain/models/offer');
5
5
  const sentry = require('../../../shared/sentry');
6
6
  const logger = require('@tryghost/logging');
7
7
 
@@ -93,7 +93,7 @@ class OfferBookshelfRepository {
93
93
  * @private
94
94
  * @param {import('bookshelf').Model<any>} model
95
95
  * @param {BaseOptions} options
96
- * @returns {Promise<import('./domain/models/Offer')>}
96
+ * @returns {Promise<import('./domain/models/offer')>}
97
97
  */
98
98
  async mapToOffer(model, options) {
99
99
  const json = model.toJSON();
@@ -141,7 +141,7 @@ class OfferBookshelfRepository {
141
141
  /**
142
142
  * @param {string} id
143
143
  * @param {BaseOptions} [options]
144
- * @returns {Promise<import('./domain/models/Offer')>}
144
+ * @returns {Promise<import('./domain/models/offer')>}
145
145
  */
146
146
  async getById(id, options) {
147
147
  const model = await this.OfferModel.findOne({id}, {
@@ -159,7 +159,7 @@ class OfferBookshelfRepository {
159
159
  /**
160
160
  * @param {string} id stripe_coupon_id
161
161
  * @param {BaseOptions} [options]
162
- * @returns {Promise<import('./domain/models/Offer')>}
162
+ * @returns {Promise<import('./domain/models/offer')>}
163
163
  */
164
164
  async getByStripeCouponId(id, options) {
165
165
  const model = await this.OfferModel.findOne({stripe_coupon_id: id}, {
@@ -176,7 +176,7 @@ class OfferBookshelfRepository {
176
176
 
177
177
  /**
178
178
  * @param {ListOptions} options
179
- * @returns {Promise<import('./domain/models/Offer')[]>}
179
+ * @returns {Promise<import('./domain/models/offer')[]>}
180
180
  */
181
181
  async getAll(options) {
182
182
  const models = await this.OfferModel.findAll({
@@ -195,7 +195,7 @@ class OfferBookshelfRepository {
195
195
  }
196
196
 
197
197
  /**
198
- * @param {import('./domain/models/Offer')} offer
198
+ * @param {import('./domain/models/offer')} offer
199
199
  * @param {BaseOptions} [options]
200
200
  * @returns {Promise<void>}
201
201
  */
@@ -2,10 +2,10 @@
2
2
  // @TODO: Reduce file length and remove the line above
3
3
 
4
4
  const DomainEvents = require('@tryghost/domain-events');
5
- const OfferCodeChangeEvent = require('./domain/events/OfferCodeChangeEvent');
6
- const OfferCreatedEvent = require('./domain/events/OfferCreatedEvent');
7
- const Offer = require('./domain/models/Offer');
8
- const OffersAPI = require('./application/OffersAPI');
5
+ const OfferCodeChangeEvent = require('./domain/events/offer-code-change-event');
6
+ const OfferCreatedEvent = require('./domain/events/offer-created-event');
7
+ const Offer = require('./domain/models/offer');
8
+ const OffersAPI = require('./application/offers-api');
9
9
 
10
10
  class OffersModule {
11
11
  /**
@@ -1,9 +1,9 @@
1
- const DynamicRedirectManager = require('../lib/DynamicRedirectManager');
1
+ const DynamicRedirectManager = require('../lib/dynamic-redirect-manager');
2
2
  const config = require('../../../shared/config');
3
3
  const urlUtils = require('../../../shared/url-utils');
4
4
  const models = require('../../models');
5
- const OfferBookshelfRepository = require('./OfferBookshelfRepository');
6
- const OffersModule = require('./OffersModule');
5
+ const OfferBookshelfRepository = require('./offer-bookshelf-repository');
6
+ const OffersModule = require('./offers-module');
7
7
 
8
8
  let redirectManager;
9
9
 
@@ -1,6 +1,6 @@
1
1
  const logging = require('@tryghost/logging');
2
2
  const jobs = require('./jobs');
3
- const StartOutboxProcessingEvent = require('./events/StartOutboxProcessingEvent');
3
+ const StartOutboxProcessingEvent = require('./events/start-outbox-processing-event');
4
4
  const domainEvents = require('@tryghost/domain-events');
5
5
  const processOutbox = require('./jobs/lib/process-outbox');
6
6
  const {OUTBOX_LOG_KEY} = require('./jobs/lib/constants');
@@ -40,4 +40,4 @@ class OutboxServiceWrapper {
40
40
  }
41
41
  }
42
42
 
43
- module.exports = new OutboxServiceWrapper();
43
+ module.exports = new OutboxServiceWrapper();
@@ -1,5 +1,5 @@
1
1
  const {parentPort} = require('worker_threads');
2
- const StartOutboxProcessingEvent = require('../events/StartOutboxProcessingEvent');
2
+ const StartOutboxProcessingEvent = require('../events/start-outbox-processing-event');
3
3
 
4
4
  function cancel() {
5
5
  if (parentPort) {
@@ -33,4 +33,4 @@ if (parentPort) {
33
33
  process.exit(0);
34
34
  }, 1000);
35
35
  }
36
- })();
36
+ })();