ghost 5.99.0 → 5.100.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 (206) hide show
  1. package/components/tryghost-activitypub-5.100.0.tgz +0 -0
  2. package/components/tryghost-adapter-cache-memory-ttl-5.100.0.tgz +0 -0
  3. package/components/tryghost-adapter-cache-redis-5.100.0.tgz +0 -0
  4. package/components/tryghost-adapter-manager-5.100.0.tgz +0 -0
  5. package/components/tryghost-announcement-bar-settings-5.100.0.tgz +0 -0
  6. package/components/tryghost-api-framework-5.100.0.tgz +0 -0
  7. package/components/tryghost-api-version-compatibility-service-5.100.0.tgz +0 -0
  8. package/components/tryghost-audience-feedback-5.100.0.tgz +0 -0
  9. package/components/tryghost-bookshelf-repository-5.100.0.tgz +0 -0
  10. package/components/tryghost-bootstrap-socket-5.100.0.tgz +0 -0
  11. package/components/tryghost-collections-5.100.0.tgz +0 -0
  12. package/components/tryghost-constants-5.100.0.tgz +0 -0
  13. package/components/tryghost-custom-fonts-5.100.0.tgz +0 -0
  14. package/components/tryghost-custom-theme-settings-service-5.100.0.tgz +0 -0
  15. package/components/{tryghost-data-generator-5.99.0.tgz → tryghost-data-generator-5.100.0.tgz} +0 -0
  16. package/components/tryghost-domain-events-5.100.0.tgz +0 -0
  17. package/components/tryghost-donations-5.100.0.tgz +0 -0
  18. package/components/tryghost-dynamic-routing-events-5.100.0.tgz +0 -0
  19. package/components/tryghost-email-addresses-5.100.0.tgz +0 -0
  20. package/components/tryghost-email-analytics-provider-mailgun-5.100.0.tgz +0 -0
  21. package/components/tryghost-email-analytics-service-5.100.0.tgz +0 -0
  22. package/components/tryghost-email-content-generator-5.100.0.tgz +0 -0
  23. package/components/tryghost-email-events-5.100.0.tgz +0 -0
  24. package/components/{tryghost-email-service-5.99.0.tgz → tryghost-email-service-5.100.0.tgz} +0 -0
  25. package/components/tryghost-email-suppression-list-5.100.0.tgz +0 -0
  26. package/components/tryghost-express-dynamic-redirects-5.100.0.tgz +0 -0
  27. package/components/tryghost-external-media-inliner-5.100.0.tgz +0 -0
  28. package/components/tryghost-extract-api-key-5.100.0.tgz +0 -0
  29. package/components/tryghost-ghost-5.100.0.tgz +0 -0
  30. package/components/tryghost-html-to-plaintext-5.100.0.tgz +0 -0
  31. package/components/tryghost-i18n-5.100.0.tgz +0 -0
  32. package/components/tryghost-identity-token-service-5.100.0.tgz +0 -0
  33. package/components/tryghost-importer-handler-content-files-5.100.0.tgz +0 -0
  34. package/components/tryghost-importer-revue-5.100.0.tgz +0 -0
  35. package/components/tryghost-in-memory-repository-5.100.0.tgz +0 -0
  36. package/components/tryghost-job-manager-5.100.0.tgz +0 -0
  37. package/components/tryghost-link-redirects-5.100.0.tgz +0 -0
  38. package/components/tryghost-link-replacer-5.100.0.tgz +0 -0
  39. package/components/tryghost-link-tracking-5.100.0.tgz +0 -0
  40. package/components/{tryghost-magic-link-5.99.0.tgz → tryghost-magic-link-5.100.0.tgz} +0 -0
  41. package/components/tryghost-mail-events-5.100.0.tgz +0 -0
  42. package/components/tryghost-mailgun-client-5.100.0.tgz +0 -0
  43. package/components/tryghost-member-attribution-5.100.0.tgz +0 -0
  44. package/components/tryghost-member-events-5.100.0.tgz +0 -0
  45. package/components/{tryghost-members-api-5.99.0.tgz → tryghost-members-api-5.100.0.tgz} +0 -0
  46. package/components/tryghost-members-csv-5.100.0.tgz +0 -0
  47. package/components/tryghost-members-events-service-5.100.0.tgz +0 -0
  48. package/components/tryghost-members-importer-5.100.0.tgz +0 -0
  49. package/components/tryghost-members-offers-5.100.0.tgz +0 -0
  50. package/components/tryghost-members-payments-5.100.0.tgz +0 -0
  51. package/components/tryghost-members-ssr-5.100.0.tgz +0 -0
  52. package/components/tryghost-members-stripe-service-5.100.0.tgz +0 -0
  53. package/components/tryghost-mentions-email-report-5.100.0.tgz +0 -0
  54. package/components/tryghost-milestones-5.100.0.tgz +0 -0
  55. package/components/tryghost-minifier-5.100.0.tgz +0 -0
  56. package/components/tryghost-model-to-domain-event-interceptor-5.100.0.tgz +0 -0
  57. package/components/tryghost-mw-api-version-mismatch-5.100.0.tgz +0 -0
  58. package/components/tryghost-mw-cache-control-5.100.0.tgz +0 -0
  59. package/components/tryghost-mw-error-handler-5.100.0.tgz +0 -0
  60. package/components/tryghost-mw-session-from-token-5.100.0.tgz +0 -0
  61. package/components/tryghost-mw-update-user-last-seen-5.100.0.tgz +0 -0
  62. package/components/tryghost-mw-version-match-5.100.0.tgz +0 -0
  63. package/components/tryghost-mw-vhost-5.100.0.tgz +0 -0
  64. package/components/tryghost-nql-filter-expansions-5.100.0.tgz +0 -0
  65. package/components/tryghost-oembed-service-5.100.0.tgz +0 -0
  66. package/components/tryghost-package-json-5.100.0.tgz +0 -0
  67. package/components/tryghost-post-events-5.100.0.tgz +0 -0
  68. package/components/tryghost-post-revisions-5.100.0.tgz +0 -0
  69. package/components/tryghost-posts-service-5.100.0.tgz +0 -0
  70. package/components/tryghost-prometheus-metrics-5.100.0.tgz +0 -0
  71. package/components/tryghost-recommendations-5.100.0.tgz +0 -0
  72. package/components/tryghost-referrers-5.100.0.tgz +0 -0
  73. package/components/tryghost-security-5.100.0.tgz +0 -0
  74. package/components/tryghost-session-service-5.100.0.tgz +0 -0
  75. package/components/tryghost-settings-path-manager-5.100.0.tgz +0 -0
  76. package/components/tryghost-slack-notifications-5.100.0.tgz +0 -0
  77. package/components/tryghost-staff-service-5.100.0.tgz +0 -0
  78. package/components/tryghost-stats-service-5.100.0.tgz +0 -0
  79. package/components/tryghost-tiers-5.100.0.tgz +0 -0
  80. package/components/tryghost-update-check-service-5.100.0.tgz +0 -0
  81. package/components/tryghost-verification-trigger-5.100.0.tgz +0 -0
  82. package/components/tryghost-version-notifications-data-service-5.100.0.tgz +0 -0
  83. package/components/tryghost-webmentions-5.100.0.tgz +0 -0
  84. package/core/boot.js +16 -5
  85. package/core/built/admin/assets/admin-x-activitypub/admin-x-activitypub.js +2 -2
  86. package/core/built/admin/assets/admin-x-activitypub/{index-696e3897.mjs → index-ab50c736.mjs} +147 -141
  87. package/core/built/admin/assets/admin-x-activitypub/{modals-dc93ce65.mjs → modals-2e6f9c05.mjs} +2 -2
  88. package/core/built/admin/assets/admin-x-demo/admin-x-demo.js +1 -1
  89. package/core/built/admin/assets/admin-x-settings/{CodeEditorView-e6f6e0b3.mjs → CodeEditorView-26137e6e.mjs} +2 -2
  90. package/core/built/admin/assets/admin-x-settings/admin-x-settings.js +3 -3
  91. package/core/built/admin/assets/admin-x-settings/{index-2a9ec06c.mjs → index-cdf09c6d.mjs} +2 -2
  92. package/core/built/admin/assets/admin-x-settings/{index-8ede56c6.mjs → index-f6338b55.mjs} +579 -571
  93. package/core/built/admin/assets/admin-x-settings/{modals-e3497e68.mjs → modals-15249255.mjs} +5657 -5622
  94. package/core/built/admin/assets/{chunk.524.85082593cb84282804e5.js → chunk.524.0982f6745ca0f52945b1.js} +5 -5
  95. package/core/built/admin/assets/{chunk.582.a756882ecb6d421c862c.js → chunk.582.d97692c812575ab051a9.js} +6 -6
  96. package/core/built/admin/assets/{ghost-fefa2e99b7dc389dfd6579049cdd2066.js → ghost-7ab268fc7cd7884eef525145d5fbb501.js} +13 -13
  97. package/core/built/admin/index.html +3 -3
  98. package/core/frontend/helpers/ghost_head.js +2 -1
  99. package/core/server/api/endpoints/comments-members.js +0 -1
  100. package/core/server/api/endpoints/identities.js +5 -31
  101. package/core/server/api/endpoints/utils/serializers/output/mappers/comments.js +9 -2
  102. package/core/server/data/migrations/versions/5.100/2024-10-31-15-27-42-add-jobs-queue-columns.js +14 -0
  103. package/core/server/data/migrations/versions/5.100/2024-11-05-14-48-08-add-comments-in-reply-to-id.js +10 -0
  104. package/core/server/data/migrations/versions/5.100/2024-11-06-04-45-15-add-activitypub-integration.js +40 -0
  105. package/core/server/data/migrations/versions/5.55/2023-07-10-05-16-55-add-built-in-collection-posts.js +1 -1
  106. package/core/server/data/migrations/versions/5.65/2023-09-22-06-42-55-repopulate-built-in-featured-collection-posts.js +1 -1
  107. package/core/server/data/migrations/versions/5.89/2024-07-30-19-51-06-backfill-offer-redemptions.js +1 -1
  108. package/core/server/data/schema/fixtures/fixtures.json +7 -0
  109. package/core/server/data/schema/schema.js +4 -1
  110. package/core/server/models/comment.js +17 -33
  111. package/core/server/services/activitypub/ActivityPubServiceWrapper.js +42 -0
  112. package/core/server/services/activitypub/index.js +1 -0
  113. package/core/server/services/comments/CommentsController.js +3 -1
  114. package/core/server/services/comments/CommentsService.js +24 -2
  115. package/core/server/services/comments/CommentsServiceEmails.js +7 -2
  116. package/core/server/services/email-analytics/EmailAnalyticsServiceWrapper.js +18 -2
  117. package/core/server/services/email-analytics/jobs/update-member-email-analytics/index.js +13 -0
  118. package/core/server/services/email-service/EmailServiceWrapper.js +20 -1
  119. package/core/server/services/identity-tokens/IdentityTokenServiceWrapper.js +28 -0
  120. package/core/server/services/identity-tokens/index.js +1 -0
  121. package/core/server/services/jobs/job-service.js +3 -2
  122. package/core/server/services/mentions-jobs/job-service.js +2 -2
  123. package/core/server/services/offers/OfferBookshelfRepository.js +3 -1
  124. package/core/shared/config/defaults.json +1 -1
  125. package/core/shared/config/env/config.testing.json +0 -3
  126. package/core/shared/labs.js +1 -1
  127. package/core/shared/prometheus-client.js +8 -31
  128. package/package.json +156 -153
  129. package/yarn.lock +176 -26
  130. package/components/tryghost-adapter-cache-memory-ttl-5.99.0.tgz +0 -0
  131. package/components/tryghost-adapter-cache-redis-5.99.0.tgz +0 -0
  132. package/components/tryghost-adapter-manager-5.99.0.tgz +0 -0
  133. package/components/tryghost-announcement-bar-settings-5.99.0.tgz +0 -0
  134. package/components/tryghost-api-framework-5.99.0.tgz +0 -0
  135. package/components/tryghost-api-version-compatibility-service-5.99.0.tgz +0 -0
  136. package/components/tryghost-audience-feedback-5.99.0.tgz +0 -0
  137. package/components/tryghost-bookshelf-repository-5.99.0.tgz +0 -0
  138. package/components/tryghost-bootstrap-socket-5.99.0.tgz +0 -0
  139. package/components/tryghost-collections-5.99.0.tgz +0 -0
  140. package/components/tryghost-constants-5.99.0.tgz +0 -0
  141. package/components/tryghost-custom-fonts-5.99.0.tgz +0 -0
  142. package/components/tryghost-custom-theme-settings-service-5.99.0.tgz +0 -0
  143. package/components/tryghost-domain-events-5.99.0.tgz +0 -0
  144. package/components/tryghost-donations-5.99.0.tgz +0 -0
  145. package/components/tryghost-dynamic-routing-events-5.99.0.tgz +0 -0
  146. package/components/tryghost-email-addresses-5.99.0.tgz +0 -0
  147. package/components/tryghost-email-analytics-provider-mailgun-5.99.0.tgz +0 -0
  148. package/components/tryghost-email-analytics-service-5.99.0.tgz +0 -0
  149. package/components/tryghost-email-content-generator-5.99.0.tgz +0 -0
  150. package/components/tryghost-email-events-5.99.0.tgz +0 -0
  151. package/components/tryghost-email-suppression-list-5.99.0.tgz +0 -0
  152. package/components/tryghost-express-dynamic-redirects-5.99.0.tgz +0 -0
  153. package/components/tryghost-external-media-inliner-5.99.0.tgz +0 -0
  154. package/components/tryghost-extract-api-key-5.99.0.tgz +0 -0
  155. package/components/tryghost-ghost-5.99.0.tgz +0 -0
  156. package/components/tryghost-html-to-plaintext-5.99.0.tgz +0 -0
  157. package/components/tryghost-i18n-5.99.0.tgz +0 -0
  158. package/components/tryghost-importer-handler-content-files-5.99.0.tgz +0 -0
  159. package/components/tryghost-importer-revue-5.99.0.tgz +0 -0
  160. package/components/tryghost-in-memory-repository-5.99.0.tgz +0 -0
  161. package/components/tryghost-job-manager-5.99.0.tgz +0 -0
  162. package/components/tryghost-link-redirects-5.99.0.tgz +0 -0
  163. package/components/tryghost-link-replacer-5.99.0.tgz +0 -0
  164. package/components/tryghost-link-tracking-5.99.0.tgz +0 -0
  165. package/components/tryghost-mail-events-5.99.0.tgz +0 -0
  166. package/components/tryghost-mailgun-client-5.99.0.tgz +0 -0
  167. package/components/tryghost-member-attribution-5.99.0.tgz +0 -0
  168. package/components/tryghost-member-events-5.99.0.tgz +0 -0
  169. package/components/tryghost-members-csv-5.99.0.tgz +0 -0
  170. package/components/tryghost-members-events-service-5.99.0.tgz +0 -0
  171. package/components/tryghost-members-importer-5.99.0.tgz +0 -0
  172. package/components/tryghost-members-offers-5.99.0.tgz +0 -0
  173. package/components/tryghost-members-payments-5.99.0.tgz +0 -0
  174. package/components/tryghost-members-ssr-5.99.0.tgz +0 -0
  175. package/components/tryghost-members-stripe-service-5.99.0.tgz +0 -0
  176. package/components/tryghost-mentions-email-report-5.99.0.tgz +0 -0
  177. package/components/tryghost-metrics-server-5.99.0.tgz +0 -0
  178. package/components/tryghost-milestones-5.99.0.tgz +0 -0
  179. package/components/tryghost-minifier-5.99.0.tgz +0 -0
  180. package/components/tryghost-model-to-domain-event-interceptor-5.99.0.tgz +0 -0
  181. package/components/tryghost-mw-api-version-mismatch-5.99.0.tgz +0 -0
  182. package/components/tryghost-mw-cache-control-5.99.0.tgz +0 -0
  183. package/components/tryghost-mw-error-handler-5.99.0.tgz +0 -0
  184. package/components/tryghost-mw-session-from-token-5.99.0.tgz +0 -0
  185. package/components/tryghost-mw-update-user-last-seen-5.99.0.tgz +0 -0
  186. package/components/tryghost-mw-version-match-5.99.0.tgz +0 -0
  187. package/components/tryghost-mw-vhost-5.99.0.tgz +0 -0
  188. package/components/tryghost-nql-filter-expansions-5.99.0.tgz +0 -0
  189. package/components/tryghost-oembed-service-5.99.0.tgz +0 -0
  190. package/components/tryghost-package-json-5.99.0.tgz +0 -0
  191. package/components/tryghost-post-events-5.99.0.tgz +0 -0
  192. package/components/tryghost-post-revisions-5.99.0.tgz +0 -0
  193. package/components/tryghost-posts-service-5.99.0.tgz +0 -0
  194. package/components/tryghost-recommendations-5.99.0.tgz +0 -0
  195. package/components/tryghost-referrers-5.99.0.tgz +0 -0
  196. package/components/tryghost-security-5.99.0.tgz +0 -0
  197. package/components/tryghost-session-service-5.99.0.tgz +0 -0
  198. package/components/tryghost-settings-path-manager-5.99.0.tgz +0 -0
  199. package/components/tryghost-slack-notifications-5.99.0.tgz +0 -0
  200. package/components/tryghost-staff-service-5.99.0.tgz +0 -0
  201. package/components/tryghost-stats-service-5.99.0.tgz +0 -0
  202. package/components/tryghost-tiers-5.99.0.tgz +0 -0
  203. package/components/tryghost-update-check-service-5.99.0.tgz +0 -0
  204. package/components/tryghost-verification-trigger-5.99.0.tgz +0 -0
  205. package/components/tryghost-version-notifications-data-service-5.99.0.tgz +0 -0
  206. package/components/tryghost-webmentions-5.99.0.tgz +0 -0
package/core/boot.js CHANGED
@@ -257,7 +257,7 @@ async function initExpressApps({frontend, backend, config}) {
257
257
  * Initialize prometheus client
258
258
  */
259
259
  function initPrometheusClient({config}) {
260
- if (config.get('metrics_server:enabled')) {
260
+ if (config.get('prometheus:enabled')) {
261
261
  debug('Begin: initPrometheusClient');
262
262
  const prometheusClient = require('./shared/prometheus-client');
263
263
  debug('End: initPrometheusClient');
@@ -272,11 +272,11 @@ function initPrometheusClient({config}) {
272
272
  */
273
273
  async function initMetricsServer({prometheusClient, ghostServer, config}) {
274
274
  debug('Begin: initMetricsServer');
275
- if (ghostServer && config.get('metrics_server:enabled')) {
276
- const {MetricsServer} = require('@tryghost/metrics-server');
275
+ if (ghostServer && config.get('prometheus:metrics_server:enabled')) {
276
+ const {MetricsServer} = require('@tryghost/prometheus-metrics');
277
277
  const serverConfig = {
278
- host: config.get('metrics_server:host') || '127.0.0.1',
279
- port: config.get('metrics_server:port') || 9416
278
+ host: config.get('prometheus:metrics_server:host') || '127.0.0.1',
279
+ port: config.get('prometheus:metrics_server:port') || 9416
280
280
  };
281
281
  const handler = prometheusClient.handleMetricsRequest.bind(prometheusClient);
282
282
  const metricsServer = new MetricsServer({serverConfig, handler});
@@ -333,6 +333,7 @@ async function initServices() {
333
333
  debug('Begin: initServices');
334
334
 
335
335
  debug('Begin: Services');
336
+ const identityTokens = require('./server/services/identity-tokens');
336
337
  const stripe = require('./server/services/stripe');
337
338
  const members = require('./server/services/members');
338
339
  const tiers = require('./server/services/tiers');
@@ -380,6 +381,7 @@ async function initServices() {
380
381
  await emailAddressService.init(),
381
382
 
382
383
  await Promise.all([
384
+ identityTokens.init(),
383
385
  memberAttribution.init(),
384
386
  mentionsService.init(),
385
387
  mentionsEmailReport.init(),
@@ -472,6 +474,8 @@ async function initBackgroundServices({config}) {
472
474
  return;
473
475
  }
474
476
 
477
+ const activitypub = require('./server/services/activitypub');
478
+ await activitypub.init();
475
479
  // Load email analytics recurring jobs
476
480
  if (config.get('backgroundJobs:emailAnalytics')) {
477
481
  const emailAnalyticsJobs = require('./server/services/email-analytics/jobs');
@@ -564,6 +568,13 @@ async function bootGhost({backend = true, frontend = true, server = true} = {})
564
568
  ghostServer = new GhostServer({url: config.getSiteUrl(), env: config.get('env'), serverConfig: config.get('server')});
565
569
  await ghostServer.start(rootApp);
566
570
  bootLogger.log('server started');
571
+
572
+ // Ensure the prometheus client is stopped when the server shuts down
573
+ ghostServer.registerCleanupTask(async () => {
574
+ if (prometheusClient) {
575
+ prometheusClient.stop();
576
+ }
577
+ });
567
578
  debug('End: load server + minimal app');
568
579
  }
569
580