ghost 4.36.1 → 4.37.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 (52) hide show
  1. package/.c8rc.json +10 -0
  2. package/core/boot.js +7 -0
  3. package/core/bridge.js +2 -6
  4. package/core/built/assets/{ghost-dark-abde961aa8d00ab2696e3ceb0a2ca24b.css → ghost-dark-d54723f7267e66fa2595f897076e86c2.css} +1 -1
  5. package/core/built/assets/{ghost.min-46e075517808b53170b8d9ab0b96d796.css → ghost.min-02a5f8954bd85fe28817b8c8b111b8aa.css} +1 -1
  6. package/core/built/assets/{ghost.min-f10401ea8fdfee5dcc88cf4dff785a88.js → ghost.min-c1938f6ee696bf08bd6bf93cac341ea2.js} +196 -192
  7. package/core/built/assets/icons/event-changed-subscription.svg +6 -0
  8. package/core/built/assets/icons/get-started-import.svg +13 -0
  9. package/core/built/assets/icons/get-started-members.svg +5 -5
  10. package/core/built/assets/img/get-started-995c36b9ede90bb3777c83751e798ef7.jpg +0 -0
  11. package/core/built/assets/{vendor.min-3aa87b4d7b43675386a96b869ed00493.js → vendor.min-6dc30be68238b5c55df0cdc1f2dc8b8d.js} +63 -73
  12. package/core/frontend/helpers/excerpt.js +7 -4
  13. package/core/server/api/canary/authentication.js +2 -0
  14. package/core/server/api/canary/index.js +4 -0
  15. package/core/server/api/canary/tiers.js +123 -0
  16. package/core/server/api/canary/utils/serializers/input/index.js +4 -0
  17. package/core/server/api/canary/utils/serializers/input/tiers.js +36 -0
  18. package/core/server/api/canary/utils/serializers/output/index.js +4 -0
  19. package/core/server/api/canary/utils/serializers/output/members.js +5 -0
  20. package/core/server/api/canary/utils/serializers/output/tiers.js +210 -0
  21. package/core/server/api/canary/utils/validators/input/index.js +4 -0
  22. package/core/server/api/canary/utils/validators/input/tiers.js +6 -0
  23. package/core/server/api/v2/settings.js +2 -1
  24. package/core/server/data/migrations/init/1-create-tables.js +4 -1
  25. package/core/server/data/migrations/versions/4.37/2022-02-21-09-53-backfill-members-last-seen-at-column.js +31 -0
  26. package/core/server/data/schema/commands.js +19 -20
  27. package/core/server/data/schema/{default-settings.json → default-settings/default-settings.json} +0 -0
  28. package/core/server/data/schema/default-settings/index.js +6 -0
  29. package/core/server/services/auth/setup.js +12 -3
  30. package/core/server/services/members/config.js +0 -26
  31. package/core/server/services/members/middleware.js +1 -1
  32. package/core/server/services/members/service.js +8 -7
  33. package/core/server/services/route-settings/index.js +1 -1
  34. package/core/server/services/settings/index.js +2 -2
  35. package/core/server/services/stripe/config.js +37 -2
  36. package/core/server/web/admin/views/default-prod.html +4 -4
  37. package/core/server/web/admin/views/default.html +4 -4
  38. package/core/server/web/api/canary/admin/routes.js +7 -0
  39. package/core/shared/config/defaults.json +1 -0
  40. package/core/shared/config/overrides.json +1 -1
  41. package/core/shared/labs.js +4 -1
  42. package/package.json +35 -34
  43. package/yarn.lock +1039 -311
  44. package/core/built/assets/icons/event-filter-email-delivered.svg +0 -5
  45. package/core/built/assets/icons/event-filter-email-failed.svg +0 -6
  46. package/core/built/assets/icons/event-filter-email-opened.svg +0 -4
  47. package/core/built/assets/icons/event-filter-login.svg +0 -5
  48. package/core/built/assets/icons/event-filter-newsletter.svg +0 -4
  49. package/core/built/assets/icons/event-filter-payment.svg +0 -5
  50. package/core/built/assets/icons/event-filter-signup.svg +0 -4
  51. package/core/built/assets/icons/event-filter-subscription.svg +0 -7
  52. package/core/built/assets/icons/selected.svg +0 -3
package/.c8rc.json CHANGED
@@ -1,5 +1,15 @@
1
1
  {
2
2
  "all": true,
3
+ "check-coverage": true,
4
+ "reporter": [
5
+ "html",
6
+ "text-summary",
7
+ "cobertura"
8
+ ],
9
+ "statements": 56,
10
+ "branches": 85,
11
+ "functions": 51,
12
+ "lines": 56,
3
13
  "include": [
4
14
  "core/{*.js,frontend,server,shared}"
5
15
  ],
package/core/boot.js CHANGED
@@ -358,6 +358,13 @@ async function bootGhost({backend = true, frontend = true, server = true} = {})
358
358
  debug('End: Load logging');
359
359
 
360
360
  // At this point logging is required, so we can handle errors better
361
+
362
+ // Add a process handler to capture and log unhandled rejections
363
+ debug('Begin: Add unhandled rejection handler');
364
+ process.on('unhandledRejection', (error) => {
365
+ logging.error('Unhandled rejection:', error);
366
+ });
367
+ debug('End: Add unhandled rejection handler');
361
368
  } catch (error) {
362
369
  console.error(error); // eslint-disable-line no-console
363
370
  process.exit(1);
package/core/bridge.js CHANGED
@@ -12,7 +12,6 @@
12
12
 
13
13
  const debug = require('@tryghost/debug')('bridge');
14
14
  const errors = require('@tryghost/errors');
15
- const config = require('./shared/config');
16
15
  const logging = require('@tryghost/logging');
17
16
  const tpl = require('@tryghost/tpl');
18
17
  const themeEngine = require('./frontend/services/theme-engine');
@@ -83,11 +82,8 @@ class Bridge {
83
82
  }
84
83
 
85
84
  getFrontendApiVersion() {
86
- if (this.getActiveTheme()) {
87
- return this.getActiveTheme().engine('ghost-api');
88
- } else {
89
- return config.get('api:versions:default');
90
- }
85
+ // @NOTE: we've pinned the frontend to canary in a step towards removing API versions
86
+ return 'canary';
91
87
  }
92
88
 
93
89
  getCardAssetConfig() {