ghost 5.53.4 → 5.54.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 (291) hide show
  1. package/README.md +1 -1
  2. package/components/tryghost-adapter-cache-memory-ttl-5.54.1.tgz +0 -0
  3. package/components/tryghost-adapter-cache-redis-5.54.1.tgz +0 -0
  4. package/components/{tryghost-adapter-manager-5.53.4.tgz → tryghost-adapter-manager-5.54.1.tgz} +0 -0
  5. package/components/tryghost-announcement-bar-settings-5.54.1.tgz +0 -0
  6. package/components/{tryghost-api-framework-5.53.4.tgz → tryghost-api-framework-5.54.1.tgz} +0 -0
  7. package/components/{tryghost-api-version-compatibility-service-5.53.4.tgz → tryghost-api-version-compatibility-service-5.54.1.tgz} +0 -0
  8. package/components/tryghost-audience-feedback-5.54.1.tgz +0 -0
  9. package/components/tryghost-bootstrap-socket-5.54.1.tgz +0 -0
  10. package/components/tryghost-collections-5.54.1.tgz +0 -0
  11. package/components/tryghost-constants-5.54.1.tgz +0 -0
  12. package/components/tryghost-custom-theme-settings-service-5.54.1.tgz +0 -0
  13. package/components/{tryghost-data-generator-5.53.4.tgz → tryghost-data-generator-5.54.1.tgz} +0 -0
  14. package/components/tryghost-domain-events-5.54.1.tgz +0 -0
  15. package/components/tryghost-dynamic-routing-events-5.54.1.tgz +0 -0
  16. package/components/tryghost-email-analytics-provider-mailgun-5.54.1.tgz +0 -0
  17. package/components/tryghost-email-analytics-service-5.54.1.tgz +0 -0
  18. package/components/tryghost-email-content-generator-5.54.1.tgz +0 -0
  19. package/components/tryghost-email-events-5.54.1.tgz +0 -0
  20. package/components/tryghost-email-service-5.54.1.tgz +0 -0
  21. package/components/tryghost-email-suppression-list-5.54.1.tgz +0 -0
  22. package/components/tryghost-event-aware-cache-wrapper-5.54.1.tgz +0 -0
  23. package/components/tryghost-express-dynamic-redirects-5.54.1.tgz +0 -0
  24. package/components/tryghost-external-media-inliner-5.54.1.tgz +0 -0
  25. package/components/{tryghost-extract-api-key-5.53.4.tgz → tryghost-extract-api-key-5.54.1.tgz} +0 -0
  26. package/components/{tryghost-html-to-plaintext-5.53.4.tgz → tryghost-html-to-plaintext-5.54.1.tgz} +0 -0
  27. package/components/tryghost-i18n-5.54.1.tgz +0 -0
  28. package/components/{tryghost-importer-handler-content-files-5.53.4.tgz → tryghost-importer-handler-content-files-5.54.1.tgz} +0 -0
  29. package/components/tryghost-importer-revue-5.54.1.tgz +0 -0
  30. package/components/tryghost-in-memory-repository-5.54.1.tgz +0 -0
  31. package/components/{tryghost-job-manager-5.53.4.tgz → tryghost-job-manager-5.54.1.tgz} +0 -0
  32. package/components/tryghost-link-redirects-5.54.1.tgz +0 -0
  33. package/components/tryghost-link-replacer-5.54.1.tgz +0 -0
  34. package/components/{tryghost-link-tracking-5.53.4.tgz → tryghost-link-tracking-5.54.1.tgz} +0 -0
  35. package/components/{tryghost-magic-link-5.53.4.tgz → tryghost-magic-link-5.54.1.tgz} +0 -0
  36. package/components/tryghost-mail-events-5.54.1.tgz +0 -0
  37. package/components/tryghost-mailgun-client-5.54.1.tgz +0 -0
  38. package/components/tryghost-member-attribution-5.54.1.tgz +0 -0
  39. package/components/tryghost-member-events-5.54.1.tgz +0 -0
  40. package/components/tryghost-members-api-5.54.1.tgz +0 -0
  41. package/components/tryghost-members-csv-5.54.1.tgz +0 -0
  42. package/components/{tryghost-members-events-service-5.53.4.tgz → tryghost-members-events-service-5.54.1.tgz} +0 -0
  43. package/components/tryghost-members-importer-5.54.1.tgz +0 -0
  44. package/components/tryghost-members-offers-5.54.1.tgz +0 -0
  45. package/components/tryghost-members-payments-5.54.1.tgz +0 -0
  46. package/components/tryghost-members-ssr-5.54.1.tgz +0 -0
  47. package/components/tryghost-members-stripe-service-5.54.1.tgz +0 -0
  48. package/components/tryghost-mentions-email-report-5.54.1.tgz +0 -0
  49. package/components/tryghost-milestones-5.54.1.tgz +0 -0
  50. package/components/tryghost-minifier-5.54.1.tgz +0 -0
  51. package/components/tryghost-model-to-domain-event-interceptor-5.54.1.tgz +0 -0
  52. package/components/tryghost-mw-api-version-mismatch-5.54.1.tgz +0 -0
  53. package/components/tryghost-mw-cache-control-5.54.1.tgz +0 -0
  54. package/components/{tryghost-mw-error-handler-5.53.4.tgz → tryghost-mw-error-handler-5.54.1.tgz} +0 -0
  55. package/components/tryghost-mw-session-from-token-5.54.1.tgz +0 -0
  56. package/components/tryghost-mw-update-user-last-seen-5.54.1.tgz +0 -0
  57. package/components/tryghost-mw-version-match-5.54.1.tgz +0 -0
  58. package/components/tryghost-mw-vhost-5.54.1.tgz +0 -0
  59. package/components/tryghost-oembed-service-5.54.1.tgz +0 -0
  60. package/components/{tryghost-package-json-5.53.4.tgz → tryghost-package-json-5.54.1.tgz} +0 -0
  61. package/components/tryghost-post-revisions-5.54.1.tgz +0 -0
  62. package/components/tryghost-posts-service-5.54.1.tgz +0 -0
  63. package/components/tryghost-referrers-5.54.1.tgz +0 -0
  64. package/components/{tryghost-security-5.53.4.tgz → tryghost-security-5.54.1.tgz} +0 -0
  65. package/components/tryghost-session-service-5.54.1.tgz +0 -0
  66. package/components/tryghost-settings-path-manager-5.54.1.tgz +0 -0
  67. package/components/tryghost-slack-notifications-5.54.1.tgz +0 -0
  68. package/components/tryghost-staff-service-5.54.1.tgz +0 -0
  69. package/components/{tryghost-stats-service-5.53.4.tgz → tryghost-stats-service-5.54.1.tgz} +0 -0
  70. package/components/{tryghost-tiers-5.53.4.tgz → tryghost-tiers-5.54.1.tgz} +0 -0
  71. package/components/tryghost-update-check-service-5.54.1.tgz +0 -0
  72. package/components/{tryghost-verification-trigger-5.53.4.tgz → tryghost-verification-trigger-5.54.1.tgz} +0 -0
  73. package/components/tryghost-version-notifications-data-service-5.54.1.tgz +0 -0
  74. package/components/{tryghost-webmentions-5.53.4.tgz → tryghost-webmentions-5.54.1.tgz} +0 -0
  75. package/content/themes/casper/assets/built/global.css +1 -1
  76. package/content/themes/casper/assets/built/global.css.map +1 -1
  77. package/content/themes/casper/assets/built/screen.css +1 -1
  78. package/content/themes/casper/assets/built/screen.css.map +1 -1
  79. package/content/themes/casper/assets/css/global.css +1 -13
  80. package/content/themes/casper/assets/css/screen.css +18 -0
  81. package/content/themes/casper/default.hbs +4 -0
  82. package/content/themes/casper/package.json +1 -1
  83. package/content/themes/casper/page.hbs +26 -24
  84. package/core/boot.js +0 -8
  85. package/core/frontend/services/apps/loader.js +4 -4
  86. package/core/frontend/services/data/entry-lookup.js +0 -1
  87. package/core/frontend/services/data/fetch-data.js +15 -10
  88. package/core/frontend/services/proxy.js +3 -0
  89. package/core/frontend/services/rendering/format-response.js +27 -1
  90. package/core/frontend/services/rendering/render-entry.js +1 -1
  91. package/core/frontend/services/routing/controllers/static.js +10 -8
  92. package/core/frontend/services/rss/generate-feed.js +0 -1
  93. package/core/frontend/src/cards/css/signup.css +4 -4
  94. package/core/server/adapters/storage/LocalStorageBase.js +0 -1
  95. package/core/server/api/endpoints/authentication.js +0 -1
  96. package/core/server/api/endpoints/authors-public.js +0 -1
  97. package/core/server/api/endpoints/db.js +5 -5
  98. package/core/server/api/endpoints/invites.js +0 -1
  99. package/core/server/api/endpoints/labels.js +0 -1
  100. package/core/server/api/endpoints/mail.js +0 -1
  101. package/core/server/api/endpoints/session.js +0 -1
  102. package/core/server/api/endpoints/snippets.js +0 -1
  103. package/core/server/api/endpoints/tags-public.js +0 -1
  104. package/core/server/api/endpoints/tags.js +0 -1
  105. package/core/server/api/endpoints/users.js +0 -1
  106. package/core/server/api/endpoints/utils/permissions.js +0 -1
  107. package/core/server/api/endpoints/utils/serializers/output/mappers/posts.js +1 -1
  108. package/core/server/api/endpoints/utils/serializers/output/roles.js +17 -12
  109. package/core/server/api/endpoints/utils/serializers/output/utils/clean.js +4 -0
  110. package/core/server/api/endpoints/utils/validators/input/invitations.js +0 -1
  111. package/core/server/api/endpoints/utils/validators/input/invites.js +0 -1
  112. package/core/server/api/endpoints/utils/validators/input/oembed.js +0 -1
  113. package/core/server/api/endpoints/utils/validators/input/password_reset.js +0 -1
  114. package/core/server/api/endpoints/utils/validators/input/settings.js +0 -1
  115. package/core/server/api/endpoints/utils/validators/input/users.js +0 -1
  116. package/core/server/data/importer/importers/data/PostsImporter.js +2 -2
  117. package/core/server/data/migrations/hooks/init/before.js +0 -1
  118. package/core/server/data/migrations/hooks/migrate/afterEach.js +0 -1
  119. package/core/server/data/migrations/hooks/migrate/beforeEach.js +0 -1
  120. package/core/server/data/migrations/versions/5.54/2023-07-07-11-57-add-show-title-and-feature-image-column-to-posts.js +7 -0
  121. package/core/server/data/schema/commands.js +0 -1
  122. package/core/server/data/schema/schema.js +1 -0
  123. package/core/server/data/schema/validator.js +0 -2
  124. package/core/server/lib/image/BlogIcon.js +2 -3
  125. package/core/server/lib/image/Gravatar.js +0 -1
  126. package/core/server/lib/image/ImageSize.js +6 -7
  127. package/core/server/models/base/listeners.js +3 -3
  128. package/core/server/models/base/utils.js +0 -1
  129. package/core/server/models/invite.js +0 -1
  130. package/core/server/models/post.js +2 -2
  131. package/core/server/models/role.js +0 -1
  132. package/core/server/models/user.js +7 -8
  133. package/core/server/models/webhook.js +0 -1
  134. package/core/server/services/collections/intercept-events.js +10 -0
  135. package/core/server/services/collections/service.js +7 -7
  136. package/core/server/services/notifications/Notifications.js +0 -1
  137. package/core/server/services/permissions/can-this.js +0 -1
  138. package/core/server/services/permissions/providers.js +0 -1
  139. package/core/server/services/route-settings/DefaultSettingsManager.js +0 -1
  140. package/core/server/services/route-settings/RouteSettings.js +3 -2
  141. package/core/server/services/webhooks/payload.js +0 -1
  142. package/core/server/web/shared/middleware/api/spam-prevention.js +1 -1
  143. package/core/shared/labs.js +5 -2
  144. package/package.json +181 -161
  145. package/yarn.lock +1739 -3319
  146. package/components/tryghost-adapter-cache-memory-ttl-5.53.4.tgz +0 -0
  147. package/components/tryghost-adapter-cache-redis-5.53.4.tgz +0 -0
  148. package/components/tryghost-announcement-bar-settings-5.53.4.tgz +0 -0
  149. package/components/tryghost-audience-feedback-5.53.4.tgz +0 -0
  150. package/components/tryghost-bootstrap-socket-5.53.4.tgz +0 -0
  151. package/components/tryghost-collections-5.53.4.tgz +0 -0
  152. package/components/tryghost-constants-5.53.4.tgz +0 -0
  153. package/components/tryghost-custom-theme-settings-service-5.53.4.tgz +0 -0
  154. package/components/tryghost-domain-events-5.53.4.tgz +0 -0
  155. package/components/tryghost-dynamic-routing-events-5.53.4.tgz +0 -0
  156. package/components/tryghost-email-analytics-provider-mailgun-5.53.4.tgz +0 -0
  157. package/components/tryghost-email-analytics-service-5.53.4.tgz +0 -0
  158. package/components/tryghost-email-content-generator-5.53.4.tgz +0 -0
  159. package/components/tryghost-email-events-5.53.4.tgz +0 -0
  160. package/components/tryghost-email-service-5.53.4.tgz +0 -0
  161. package/components/tryghost-email-suppression-list-5.53.4.tgz +0 -0
  162. package/components/tryghost-event-aware-cache-wrapper-5.53.4.tgz +0 -0
  163. package/components/tryghost-express-dynamic-redirects-5.53.4.tgz +0 -0
  164. package/components/tryghost-external-media-inliner-5.53.4.tgz +0 -0
  165. package/components/tryghost-i18n-5.53.4.tgz +0 -0
  166. package/components/tryghost-importer-revue-5.53.4.tgz +0 -0
  167. package/components/tryghost-in-memory-repository-5.53.4.tgz +0 -0
  168. package/components/tryghost-link-redirects-5.53.4.tgz +0 -0
  169. package/components/tryghost-link-replacer-5.53.4.tgz +0 -0
  170. package/components/tryghost-mail-events-5.53.4.tgz +0 -0
  171. package/components/tryghost-mailgun-client-5.53.4.tgz +0 -0
  172. package/components/tryghost-member-attribution-5.53.4.tgz +0 -0
  173. package/components/tryghost-member-events-5.53.4.tgz +0 -0
  174. package/components/tryghost-members-api-5.53.4.tgz +0 -0
  175. package/components/tryghost-members-csv-5.53.4.tgz +0 -0
  176. package/components/tryghost-members-importer-5.53.4.tgz +0 -0
  177. package/components/tryghost-members-offers-5.53.4.tgz +0 -0
  178. package/components/tryghost-members-payments-5.53.4.tgz +0 -0
  179. package/components/tryghost-members-ssr-5.53.4.tgz +0 -0
  180. package/components/tryghost-members-stripe-service-5.53.4.tgz +0 -0
  181. package/components/tryghost-mentions-email-report-5.53.4.tgz +0 -0
  182. package/components/tryghost-milestones-5.53.4.tgz +0 -0
  183. package/components/tryghost-minifier-5.53.4.tgz +0 -0
  184. package/components/tryghost-mw-api-version-mismatch-5.53.4.tgz +0 -0
  185. package/components/tryghost-mw-cache-control-5.53.4.tgz +0 -0
  186. package/components/tryghost-mw-session-from-token-5.53.4.tgz +0 -0
  187. package/components/tryghost-mw-update-user-last-seen-5.53.4.tgz +0 -0
  188. package/components/tryghost-mw-version-match-5.53.4.tgz +0 -0
  189. package/components/tryghost-mw-vhost-5.53.4.tgz +0 -0
  190. package/components/tryghost-oembed-service-5.53.4.tgz +0 -0
  191. package/components/tryghost-post-revisions-5.53.4.tgz +0 -0
  192. package/components/tryghost-posts-service-5.53.4.tgz +0 -0
  193. package/components/tryghost-referrers-5.53.4.tgz +0 -0
  194. package/components/tryghost-session-service-5.53.4.tgz +0 -0
  195. package/components/tryghost-settings-path-manager-5.53.4.tgz +0 -0
  196. package/components/tryghost-slack-notifications-5.53.4.tgz +0 -0
  197. package/components/tryghost-staff-service-5.53.4.tgz +0 -0
  198. package/components/tryghost-update-check-service-5.53.4.tgz +0 -0
  199. package/components/tryghost-version-notifications-data-service-5.53.4.tgz +0 -0
  200. package/core/built/admin/assets/chunk.143.f2d9c8138f58822ff602.js +0 -35
  201. package/core/built/admin/assets/chunk.178.61bd07fdecafaa04e917.js +0 -11
  202. package/core/built/admin/assets/chunk.976.64982d690133b4ba977b.js +0 -12712
  203. package/core/built/admin/assets/chunk.976.64982d690133b4ba977b.js.LICENSE.txt +0 -250
  204. package/core/built/admin/assets/codemirror/codemirror-31d641cdd0cb3388688402609608cb10.js +0 -1440
  205. package/core/built/admin/assets/fonts/Inter-italic.var.woff2 +0 -0
  206. package/core/built/admin/assets/fonts/Inter-roman.var.woff2 +0 -0
  207. package/core/built/admin/assets/ghost-69a3b39781fc4aca282abd2ebf232e60.js +0 -6643
  208. package/core/built/admin/assets/ghost-7ed28c8f2ec8aaa157a0d8e693c4173d.css +0 -1
  209. package/core/built/admin/assets/ghost-dark-d8ff14f0db8a03f04d342792d7126348.css +0 -1
  210. package/core/built/admin/assets/img/404-ghost-e112dbfadde79cf30dbca8e8cfe7a21a.png +0 -0
  211. package/core/built/admin/assets/img/404-ghost@2x-34c1119ed15cc3ea71e4406f80c8e810.png +0 -0
  212. package/core/built/admin/assets/img/amp-d7b72aae3315fda95921fb575dfca100.svg +0 -4
  213. package/core/built/admin/assets/img/apple-touch-icon-74680e326a7e87b159d366c7d4fb3d4b.png +0 -0
  214. package/core/built/admin/assets/img/buffer-db31f6b5dc27a298050e16312619c586.png +0 -0
  215. package/core/built/admin/assets/img/community-background-3f501ff1d764d0cb81f7c2cbacfc6503.jpg +0 -0
  216. package/core/built/admin/assets/img/disqus-43503a3fa4f38dc8c61c7358b811f343.svg +0 -4
  217. package/core/built/admin/assets/img/favicon-a9c6dbdcdc3ae568f4e0dad92149a0e3.ico +0 -0
  218. package/core/built/admin/assets/img/firstpromoter-ce8b5219e5b5ebda463bd60396c6ab81.png +0 -0
  219. package/core/built/admin/assets/img/footer-marketplace-bg-572b6c6486a7e26316954d599eaa9f30.png +0 -0
  220. package/core/built/admin/assets/img/github-c3a739c59df26fed12c10ffb00b33bd4.svg +0 -4
  221. package/core/built/admin/assets/img/google-analytics-e05fc1327377939663407200d4978eba.png +0 -0
  222. package/core/built/admin/assets/img/google-docs-1e42cc272fc088da49e4b0ddfb01b006.svg +0 -6
  223. package/core/built/admin/assets/img/large-ac90af7c93a4b47e8d956fa9fef31d9d.png +0 -0
  224. package/core/built/admin/assets/img/latest-posts-1-ea1e669b275f2c7dfa23abd4be8d7ad5.png +0 -0
  225. package/core/built/admin/assets/img/latest-posts-2-e6b0809353ac31642839a6f3bab0d4e8.png +0 -0
  226. package/core/built/admin/assets/img/latest-posts-3-ac8c2e95dd9adecb9029a7b037ed7f15.png +0 -0
  227. package/core/built/admin/assets/img/loadingcat-5f501b7a8c7bd54b253463e261c99634.gif +0 -0
  228. package/core/built/admin/assets/img/logos/ghost-logo-black-1-fb561a374422b405ec90fa586b05ebdf.png +0 -0
  229. package/core/built/admin/assets/img/logos/orb-black-1-32b72766be2164fdea6ab2565fb1c137.png +0 -0
  230. package/core/built/admin/assets/img/logos/orb-black-2-4b0baef1ec34816af6f3fbede7ab191d.png +0 -0
  231. package/core/built/admin/assets/img/logos/orb-black-3-9780c5e9991b69ed2303b526aa3e3252.png +0 -0
  232. package/core/built/admin/assets/img/logos/orb-black-4-d9c3caacb8d2ba98a52517ff2971433c.png +0 -0
  233. package/core/built/admin/assets/img/logos/orb-black-5-063a200f749e09c587b9443ffd2c4cfa.png +0 -0
  234. package/core/built/admin/assets/img/logos/orb-pink-3-a66abc6df2b6ab64d1459a6535b725cd.png +0 -0
  235. package/core/built/admin/assets/img/mailchimp-f22b1e130aac764965b9306d7265a6b2.svg +0 -8
  236. package/core/built/admin/assets/img/marketing/analytics-1-aa2d72c4e7347a3cb5666d07916b92aa.jpg +0 -0
  237. package/core/built/admin/assets/img/marketing/analytics-2-389d53f80041ff98111cce79facf66b8.jpg +0 -0
  238. package/core/built/admin/assets/img/marketing/members-1-8b89a1f48fe7b336754e91a429531f65.jpg +0 -0
  239. package/core/built/admin/assets/img/marketing/members-2-791205c82d5cf221f8c99a74f9ee1739.jpg +0 -0
  240. package/core/built/admin/assets/img/marketing/offers-1-f2e1b653c4d5bb90eea9d7a2862530f9.jpg +0 -0
  241. package/core/built/admin/assets/img/marketing/offers-2-28a225d34cc39d133748431536961d00.jpg +0 -0
  242. package/core/built/admin/assets/img/marketing/offers-3-2094c91ab21a16c37fbe6ec16c140160.jpg +0 -0
  243. package/core/built/admin/assets/img/medium-fef07013cffd5c45a655a250912a0ad7.png +0 -0
  244. package/core/built/admin/assets/img/mentions-background-fa39b7597e875c165b12190eda606993.png +0 -0
  245. package/core/built/admin/assets/img/orb-squircle-645fd62e92a80557905c0cb60874b699.png +0 -0
  246. package/core/built/admin/assets/img/patreon-b19a5e6418a72977a16b30039d374d04.svg +0 -7
  247. package/core/built/admin/assets/img/paypal-38e9448ce7549ea4caf8e7753ae661d6.svg +0 -8
  248. package/core/built/admin/assets/img/pintura-75cf0fd7cbc6ca3c8fbdb3f1b31f730b.png +0 -0
  249. package/core/built/admin/assets/img/pintura-screenshot-7668975389aac80607ec489b48b75e0f.png +0 -0
  250. package/core/built/admin/assets/img/plausible-1b754a95e19a6d935e0bc8bf6790ba56.png +0 -0
  251. package/core/built/admin/assets/img/resource-1-722f202795856e4a5596c8a3b7bedc43.jpg +0 -0
  252. package/core/built/admin/assets/img/slackicon-406aadea8994ca2ddee9c1d7157208db.png +0 -0
  253. package/core/built/admin/assets/img/small-b90396925485f17b2ca82c31be42de5f.png +0 -0
  254. package/core/built/admin/assets/img/stripe-3af79c77413d7e58d0322c1de5bfdb8e.svg +0 -1
  255. package/core/built/admin/assets/img/themes/Alto-0dfe76694ed222d6d96fc9c8db979a38.png +0 -0
  256. package/core/built/admin/assets/img/themes/Bulletin-d66dec818ad0ba2965dd7eb3130c621c.png +0 -0
  257. package/core/built/admin/assets/img/themes/Casper-9a0ce71df3a1c589c1414ad2aa5b8aeb.png +0 -0
  258. package/core/built/admin/assets/img/themes/Dawn-302fbfdbc352098a256137159bd83dd8.png +0 -0
  259. package/core/built/admin/assets/img/themes/Digest-698e78d8e8481daff8ae4a8647528dc9.png +0 -0
  260. package/core/built/admin/assets/img/themes/Dope-d099dfca697adae16baa76f89520c5b3.png +0 -0
  261. package/core/built/admin/assets/img/themes/Ease-7075f809892f10c58892e15a57a4aae4.png +0 -0
  262. package/core/built/admin/assets/img/themes/Edge-1e5e0eec6941d7bdca02cebb66187357.png +0 -0
  263. package/core/built/admin/assets/img/themes/Edition-10111a2b8458168dcff81b7fb151be70.png +0 -0
  264. package/core/built/admin/assets/img/themes/Episode-e4c86d1f75ef1d8a77791d7fd519fdd4.png +0 -0
  265. package/core/built/admin/assets/img/themes/Headline-f70eaf49b9fcae1ddfe3d4496d8be54d.png +0 -0
  266. package/core/built/admin/assets/img/themes/Journal-07d35b2311501d2738bad1907ba2f7e1.png +0 -0
  267. package/core/built/admin/assets/img/themes/London-4e042390da16fecef947f3a7001d03db.png +0 -0
  268. package/core/built/admin/assets/img/themes/Ruby-b896885448e0f28ca62c6dcd56c732aa.png +0 -0
  269. package/core/built/admin/assets/img/themes/Solo-0292eb9ae0ca7b578cff50824d40cc86.png +0 -0
  270. package/core/built/admin/assets/img/themes/Taste-a24d2a786900d9caff7e773ca0040991.png +0 -0
  271. package/core/built/admin/assets/img/themes/Wave-b98fadfd3ed16e8b2e383dd8e8e5dca2.png +0 -0
  272. package/core/built/admin/assets/img/touch-icon-ipad-2e78629d62ad05746f980f14623dfadb.png +0 -0
  273. package/core/built/admin/assets/img/touch-icon-iphone-93ed4382d391be9180093fd77ce8f410.png +0 -0
  274. package/core/built/admin/assets/img/twitter-7a7a0ba12d9b5bfb8a2058764a827c31.svg +0 -4
  275. package/core/built/admin/assets/img/typeform-9f23f8712d776a7515594676285266f5.svg +0 -7
  276. package/core/built/admin/assets/img/ulysses-3c66b59fb45c285bf336b4b613dc86e4.png +0 -0
  277. package/core/built/admin/assets/img/unsplash-404-71ab3705c9920a9706bb822c3d7e34d1.png +0 -0
  278. package/core/built/admin/assets/img/unsplash-5b329eef0b11447b4117eaf817ebad6f.svg +0 -4
  279. package/core/built/admin/assets/img/user-cover-e8f42b12b5fcba292a8b5dfa81e13dd2.png +0 -0
  280. package/core/built/admin/assets/img/user-image-639a88b784fb5f10964be8b975ca9fdf.png +0 -0
  281. package/core/built/admin/assets/img/zapier-bf93bc440a3fd43b73489a63c215cdc7.svg +0 -4
  282. package/core/built/admin/assets/img/zapier-logo-a125f24313dfe01ef49af01fc90061fb.svg +0 -4
  283. package/core/built/admin/assets/img/zero-bounce-ee799eddb1f88e33ab8c462858cbfed9.png +0 -0
  284. package/core/built/admin/assets/simplemde/simplemde-d16ff9bcc5bf6ad4916fb0034a30adb1.js +0 -1874
  285. package/core/built/admin/assets/vendor-3e6947aa681f0fb82b193090e520dc73.css +0 -1512
  286. package/core/built/admin/assets/vendor-c85ef50819caa584c404a0e3dcaa4e69.js +0 -14096
  287. package/core/built/admin/assets/videos/logo-loader.mp4 +0 -0
  288. package/core/built/admin/index.html +0 -64
  289. package/core/frontend/public/ghost.min.css +0 -1
  290. package/core/server/services/collections/PostsDataRepositoryBookshelf.js +0 -23
  291. package/core/server/services/collections/model-to-domain-events-bridge.js +0 -74
@@ -1,5 +1,4 @@
1
1
  const _ = require('lodash');
2
- const Promise = require('bluebird');
3
2
  const validator = require('@tryghost/validator');
4
3
  const ObjectId = require('bson-objectid').default;
5
4
  const ghostBookshelf = require('./base');
@@ -204,7 +203,7 @@ User = ghostBookshelf.Model.extend({
204
203
 
205
204
  // If the user's email is set & has changed & we are not importing
206
205
  if (self.hasChanged('email') && self.get('email') && !options.importing) {
207
- tasks.gravatar = (function lookUpGravatar() {
206
+ tasks.push((function lookUpGravatar() {
208
207
  const {gravatar} = require('../lib/image');
209
208
 
210
209
  return gravatar.lookup({
@@ -214,11 +213,11 @@ User = ghostBookshelf.Model.extend({
214
213
  self.set('profile_image', response.image);
215
214
  }
216
215
  });
217
- })();
216
+ })());
218
217
  }
219
218
 
220
219
  if (this.hasChanged('slug') || !this.get('slug')) {
221
- tasks.slug = (function generateSlug() {
220
+ tasks.push((function generateSlug() {
222
221
  return ghostBookshelf.Model.generateSlug(
223
222
  User,
224
223
  self.get('slug') || self.get('name'),
@@ -230,7 +229,7 @@ User = ghostBookshelf.Model.extend({
230
229
  .then(function then(slug) {
231
230
  self.set({slug: slug});
232
231
  });
233
- })();
232
+ })());
234
233
  }
235
234
 
236
235
  /**
@@ -274,15 +273,15 @@ User = ghostBookshelf.Model.extend({
274
273
  }
275
274
  }
276
275
 
277
- tasks.hashPassword = (function hashPassword() {
276
+ tasks.push((function hashPassword() {
278
277
  return security.password.hash(self.get('password'))
279
278
  .then(function (hash) {
280
279
  self.set('password', hash);
281
280
  });
282
- })();
281
+ })());
283
282
  }
284
283
 
285
- return Promise.props(tasks);
284
+ return Promise.all(tasks);
286
285
  },
287
286
 
288
287
  toJSON: function toJSON(unfilteredOptions) {
@@ -1,4 +1,3 @@
1
- const Promise = require('bluebird');
2
1
  const ghostBookshelf = require('./base');
3
2
  const ghostVersion = require('@tryghost/version');
4
3
  let Webhook;
@@ -0,0 +1,10 @@
1
+ module.exports = () => {
2
+ const DomainEvents = require('@tryghost/domain-events/lib/DomainEvents');
3
+ const {ModelToDomainEventInterceptor} = require('@tryghost/model-to-domain-event-interceptor');
4
+ const events = require('../../lib/common/events');
5
+ const eventInterceptor = new ModelToDomainEventInterceptor({
6
+ ModelEvents: events,
7
+ DomainEvents: DomainEvents
8
+ });
9
+ eventInterceptor.init();
10
+ };
@@ -1,7 +1,7 @@
1
1
  const {
2
- CollectionsService,
3
- CollectionsRepositoryInMemory
2
+ CollectionsService
4
3
  } = require('@tryghost/collections');
4
+ const BookshelfCollectionsRepository = require('./BookshelfCollectionsRepository');
5
5
  const labs = require('../../../shared/labs');
6
6
 
7
7
  class CollectionsServiceWrapper {
@@ -9,9 +9,10 @@ class CollectionsServiceWrapper {
9
9
  api;
10
10
 
11
11
  constructor() {
12
- const postsRepository = require('./PostsRepository').getInstance();
13
- const collectionsRepositoryInMemory = new CollectionsRepositoryInMemory();
14
12
  const DomainEvents = require('@tryghost/domain-events');
13
+ const postsRepository = require('./PostsRepository').getInstance();
14
+ const models = require('../../models');
15
+ const collectionsRepositoryInMemory = new BookshelfCollectionsRepository(models.Collection);
15
16
 
16
17
  const collectionsService = new CollectionsService({
17
18
  collectionsRepository: collectionsRepositoryInMemory,
@@ -19,7 +20,7 @@ class CollectionsServiceWrapper {
19
20
  DomainEvents: DomainEvents,
20
21
  slugService: {
21
22
  async generate(input) {
22
- return input.toLowerCase().trim().replace(/^[^a-z0-9A-Z_]+/, '').replace(/[^a-z0-9A-Z_]+$/, '').replace(/[^a-z0-9A-Z_]+/g, '-');
23
+ return models.Collection.generateSlug(models.Collection, input, {});
23
24
  }
24
25
  }
25
26
  });
@@ -32,7 +33,6 @@ class CollectionsServiceWrapper {
32
33
  return;
33
34
  }
34
35
 
35
- const translateModelEventsToDomainEvents = require('./model-to-domain-events-bridge');
36
36
  const existingBuiltins = await this.api.getAll({filter: 'slug:featured'});
37
37
 
38
38
  if (!existingBuiltins.data.length) {
@@ -56,7 +56,7 @@ class CollectionsServiceWrapper {
56
56
  }
57
57
 
58
58
  this.api.subscribeToEvents();
59
- translateModelEventsToDomainEvents();
59
+ require('./intercept-events')();
60
60
  }
61
61
  }
62
62
 
@@ -1,6 +1,5 @@
1
1
  const moment = require('moment-timezone');
2
2
  const semver = require('semver');
3
- const Promise = require('bluebird');
4
3
  const _ = require('lodash');
5
4
  const errors = require('@tryghost/errors');
6
5
  const ghostVersion = require('@tryghost/version');
@@ -1,5 +1,4 @@
1
1
  const _ = require('lodash');
2
- const Promise = require('bluebird');
3
2
  const models = require('../../models');
4
3
  const errors = require('@tryghost/errors');
5
4
  const tpl = require('@tryghost/tpl');
@@ -1,5 +1,4 @@
1
1
  const _ = require('lodash');
2
- const Promise = require('bluebird');
3
2
  const models = require('../../models');
4
3
  const errors = require('@tryghost/errors');
5
4
  const tpl = require('@tryghost/tpl');
@@ -1,5 +1,4 @@
1
1
  const fs = require('fs-extra');
2
- const Promise = require('bluebird');
3
2
  const path = require('path');
4
3
  const debug = require('@tryghost/debug')('frontend:services:settings:ensure-settings');
5
4
  const tpl = require('@tryghost/tpl');
@@ -1,4 +1,3 @@
1
- const Promise = require('bluebird');
2
1
  const fs = require('fs-extra');
3
2
  const crypto = require('crypto');
4
3
  const urlService = require('../url');
@@ -120,7 +119,9 @@ class RouteSettings {
120
119
 
121
120
  function isBlogRunning() {
122
121
  debug('waiting for blog running');
123
- return Promise.delay(1000)
122
+ return new Promise((resolve) => {
123
+ setTimeout(resolve, 1000);
124
+ })
124
125
  .then(() => {
125
126
  debug('waited for blog running');
126
127
  if (!urlService.hasFinished()) {
@@ -1,5 +1,4 @@
1
1
  const serialize = require('./serialize');
2
- const Promise = require('bluebird');
3
2
 
4
3
  module.exports = (event, model) => {
5
4
  const payload = {};
@@ -202,7 +202,7 @@ const membersAuthEnumeration = () => {
202
202
  attachResetToRequest: true,
203
203
  failCallback(req, res, next, nextValidRequestDate) {
204
204
  return next(new errors.TooManyRequestsError({
205
- message: `Too many different sign-in attempts try again in ${moment(nextValidRequestDate).fromNow(true)}`,
205
+ message: `Too many different sign-in attempts, try again in ${moment(nextValidRequestDate).fromNow(true)}`,
206
206
  context: tpl(messages.tooManySigninAttempts.context),
207
207
  help: tpl(messages.tooManySigninAttempts.context)
208
208
  }));
@@ -1,5 +1,4 @@
1
1
  const _ = require('lodash');
2
- const Promise = require('bluebird');
3
2
  const errors = require('@tryghost/errors');
4
3
  const logging = require('@tryghost/logging');
5
4
  const tpl = require('@tryghost/tpl');
@@ -39,7 +38,11 @@ const ALPHA_FEATURES = [
39
38
  'emailCustomization',
40
39
  'collections',
41
40
  'adminXSettings',
42
- 'mailEvents'
41
+ 'pageImprovements',
42
+ 'flatUrls',
43
+ 'mailEvents',
44
+ 'collectionsCard',
45
+ 'headerUpgrade'
43
46
  ];
44
47
 
45
48
  module.exports.GA_KEYS = [...GA_FEATURES];