ghost 4.23.0 → 4.26.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 (175) hide show
  1. package/.eslintrc.js +39 -0
  2. package/content/themes/casper/assets/built/casper.js +1 -1
  3. package/content/themes/casper/assets/built/casper.js.map +1 -1
  4. package/content/themes/casper/assets/built/global.css +1 -1
  5. package/content/themes/casper/assets/built/global.css.map +1 -1
  6. package/content/themes/casper/assets/built/screen.css +1 -1
  7. package/content/themes/casper/assets/built/screen.css.map +1 -1
  8. package/content/themes/casper/assets/css/global.css +6 -1
  9. package/content/themes/casper/assets/css/screen.css +50 -215
  10. package/content/themes/casper/default.hbs +2 -2
  11. package/content/themes/casper/package.json +3 -2
  12. package/content/themes/casper/post.hbs +1 -1
  13. package/content/themes/casper/yarn.lock +173 -123
  14. package/core/app.js +20 -5
  15. package/core/boot.js +77 -36
  16. package/core/bridge.js +10 -10
  17. package/core/built/assets/ghost-dark-ef86e3bc7f0fb83d39d3d6a49bff8dd5.css +1 -0
  18. package/core/built/assets/ghost.min-57c1e677f42d596942d317ce93e8a62c.css +1 -0
  19. package/core/built/assets/{ghost.min-cccc107e881b74c7aaf1a73e1e5e0dee.js → ghost.min-f3c6886e191d34450e9ffca0c8fa056e.js} +543 -618
  20. package/core/built/assets/icons/audio-upload.svg +8 -0
  21. package/core/built/assets/{vendor.min-c9002845b6c30ac978abdadde9f33d7c.js → vendor.min-b6b8d2a31d61830c2d8f65c5ba54236a.js} +2656 -2118
  22. package/core/frontend/apps/amp/lib/helpers/amp_content.js +2 -2
  23. package/core/frontend/apps/amp/lib/views/amp.hbs +75 -0
  24. package/core/frontend/apps/private-blogging/index.js +1 -1
  25. package/core/frontend/helpers/url.js +18 -1
  26. package/core/frontend/services/apps/index.js +1 -1
  27. package/core/frontend/services/apps/loader.js +3 -3
  28. package/core/frontend/services/card-assets/index.js +0 -12
  29. package/core/frontend/services/card-assets/service.js +22 -21
  30. package/core/frontend/services/helpers/handlebars.js +1 -1
  31. package/core/frontend/services/theme-engine/middleware/ensure-active-theme.js +34 -0
  32. package/core/frontend/services/theme-engine/middleware/index.js +6 -0
  33. package/core/frontend/services/theme-engine/middleware/update-global-template-options.js +116 -0
  34. package/core/frontend/services/theme-engine/middleware/update-local-template-data.js +9 -0
  35. package/core/frontend/services/theme-engine/middleware/update-local-template-options.js +57 -0
  36. package/core/frontend/src/cards/css/audio.css +186 -0
  37. package/core/frontend/src/cards/css/blockquote.css +27 -0
  38. package/core/frontend/src/cards/css/bookmark.css +7 -0
  39. package/core/frontend/src/cards/css/button.css +4 -0
  40. package/core/frontend/src/cards/css/callout.css +23 -15
  41. package/core/frontend/src/cards/css/gallery.css +13 -3
  42. package/core/frontend/src/cards/css/toggle.css +48 -15
  43. package/core/frontend/src/cards/js/audio.js +137 -0
  44. package/core/frontend/web/middleware/error-handler.js +93 -0
  45. package/core/frontend/web/middleware/handle-image-sizes.js +3 -6
  46. package/core/frontend/web/middleware/index.js +1 -0
  47. package/core/frontend/web/middleware/serve-public-file.js +25 -8
  48. package/core/frontend/web/site.js +2 -5
  49. package/core/server/adapters/scheduling/SchedulingDefault.js +2 -2
  50. package/core/server/adapters/storage/LocalStorageBase.js +2 -2
  51. package/core/server/api/canary/db.js +2 -2
  52. package/core/server/api/canary/media.js +3 -2
  53. package/core/server/api/canary/oembed.js +16 -1
  54. package/core/server/api/canary/session.js +1 -1
  55. package/core/server/api/canary/slugs.js +1 -1
  56. package/core/server/api/canary/utils/permissions.js +2 -2
  57. package/core/server/api/canary/utils/serializers/output/config.js +2 -6
  58. package/core/server/api/v2/db.js +2 -2
  59. package/core/server/api/v2/session.js +1 -1
  60. package/core/server/api/v2/slugs.js +1 -1
  61. package/core/server/api/v2/utils/permissions.js +2 -2
  62. package/core/server/api/v3/db.js +2 -2
  63. package/core/server/api/v3/session.js +1 -1
  64. package/core/server/api/v3/slugs.js +1 -1
  65. package/core/server/api/v3/utils/permissions.js +2 -2
  66. package/core/server/data/db/state-manager.js +4 -4
  67. package/core/server/data/exporter/export-filename.js +1 -1
  68. package/core/server/data/importer/handlers/json.js +1 -1
  69. package/core/server/data/importer/import-manager.js +1 -1
  70. package/core/server/data/importer/importers/data/base.js +1 -1
  71. package/core/server/data/migrations/utils.js +2 -2
  72. package/core/server/data/migrations/versions/1.25/1-update-koenig-beta-html.js +1 -0
  73. package/core/server/data/migrations/versions/3.1/08-add-uuid-values-to-members.js +1 -0
  74. package/core/server/data/migrations/versions/3.22/02-settings-key-renames.js +2 -0
  75. package/core/server/data/migrations/versions/3.22/05-migrate-members-subscription-settings.js +3 -0
  76. package/core/server/data/migrations/versions/3.22/06-migrate-stripe-connect-settings.js +2 -0
  77. package/core/server/data/migrations/versions/3.23/01-migrate-bulk-email-settings.js +1 -0
  78. package/core/server/data/migrations/versions/3.29/01-remove-duplicate-subscriptions.js +2 -0
  79. package/core/server/data/migrations/versions/3.29/02-remove-duplicate-customers.js +2 -0
  80. package/core/server/data/migrations/versions/3.38/04-populate-recipient-filter-column.js +2 -0
  81. package/core/server/data/migrations/versions/4.0/01-update-mobiledoc.js +2 -0
  82. package/core/server/data/migrations/versions/4.0/03-populate-status-column-for-members.js +4 -0
  83. package/core/server/data/migrations/versions/4.0/06-populate-members-subscribe-events-table.js +1 -0
  84. package/core/server/data/migrations/versions/4.0/17-populate-members-status-events-table.js +1 -0
  85. package/core/server/data/migrations/versions/4.0/18-transform-urls-absolute-to-transform-ready.js +5 -0
  86. package/core/server/data/migrations/versions/4.0/22-solve-orphaned-webhooks.js +1 -0
  87. package/core/server/data/migrations/versions/4.0/23-regenerate-posts-html.js +1 -0
  88. package/core/server/data/migrations/versions/4.0/25-populate-members-paid-subscription-events-table.js +2 -1
  89. package/core/server/data/migrations/versions/4.12/02-fix-member-statuses.js +1 -0
  90. package/core/server/data/migrations/versions/4.14/01-fix-comped-member-statuses.js +3 -0
  91. package/core/server/data/migrations/versions/4.14/02-fix-free-members-status-events.js +1 -0
  92. package/core/server/data/migrations/versions/4.20/05-remove-not-null-constraint-from-portal-title.js +2 -0
  93. package/core/server/data/migrations/versions/4.23/01-truncate-offer-names.js +1 -0
  94. package/core/server/data/migrations/versions/4.3/04-attach-members-to-product.js +1 -0
  95. package/core/server/data/migrations/versions/4.4/01-restore-free-members-signup-setting-from-backup.js +1 -0
  96. package/core/server/data/migrations/versions/4.6/01-remove-comped-status.js +1 -0
  97. package/core/server/data/migrations/versions/4.8/04-migrate-show-newsletter-header-setting.js +1 -0
  98. package/core/server/data/migrations/versions/4.9/05-fix-missed-mobiledoc-url-transforms.js +1 -0
  99. package/core/server/data/migrations/versions/4.9/06-add-comped-status.js +1 -0
  100. package/core/server/data/migrations/versions/4.9/07-update-comped-members-status-events.js +1 -0
  101. package/core/server/data/schema/commands.js +2 -2
  102. package/core/server/ghost-server.js +2 -2
  103. package/core/server/lib/image/image-size.js +2 -2
  104. package/core/server/models/base/listeners.js +2 -2
  105. package/core/server/models/member-email-change-event.js +2 -2
  106. package/core/server/models/member-login-event.js +2 -2
  107. package/core/server/models/member-paid-subscription-event.js +3 -3
  108. package/core/server/models/member-payment-event.js +3 -3
  109. package/core/server/models/member-product-event.js +6 -6
  110. package/core/server/models/member-status-event.js +5 -3
  111. package/core/server/models/member-subscribe-event.js +9 -3
  112. package/core/server/models/relations/authors.js +1 -1
  113. package/core/server/models/settings.js +1 -1
  114. package/core/server/notify.js +1 -2
  115. package/core/server/services/auth/passwordreset.js +1 -1
  116. package/core/server/services/auth/setup.js +1 -1
  117. package/core/server/services/email-analytics/jobs/index.js +1 -1
  118. package/core/server/services/mega/mega.js +6 -4
  119. package/core/server/services/mega/template.js +47 -17
  120. package/core/server/services/members/api.js +22 -0
  121. package/core/server/services/members/config.js +1 -1
  122. package/core/server/services/members/emails/signup-paid.js +168 -0
  123. package/core/server/services/members/service.js +6 -2
  124. package/core/server/services/members/stripe-connect.js +4 -2
  125. package/core/server/services/nft-oembed.js +7 -2
  126. package/core/server/services/oembed.js +15 -3
  127. package/core/server/services/permissions/can-this.js +1 -1
  128. package/core/server/services/redirects/api.js +20 -25
  129. package/core/server/services/redirects/index.js +18 -10
  130. package/core/server/services/redirects/utils.js +14 -0
  131. package/core/server/services/redirects/validation.js +10 -0
  132. package/core/server/services/route-settings/default-settings-manager.js +1 -1
  133. package/core/server/services/route-settings/index.js +40 -17
  134. package/core/server/services/route-settings/route-settings.js +120 -115
  135. package/core/server/services/route-settings/settings-loader.js +18 -36
  136. package/core/server/services/route-settings/yaml-parser.js +1 -1
  137. package/core/server/services/slack.js +1 -1
  138. package/core/server/services/themes/activation-bridge.js +3 -3
  139. package/core/server/services/themes/storage.js +2 -2
  140. package/core/server/services/twitter-embed.js +81 -0
  141. package/core/server/services/url/LocalFileCache.js +75 -0
  142. package/core/server/services/url/UrlService.js +15 -47
  143. package/core/server/services/url/index.js +17 -4
  144. package/core/server/services/xmlrpc.js +2 -2
  145. package/core/server/web/admin/app.js +2 -5
  146. package/core/server/web/admin/controller.js +35 -12
  147. package/core/server/web/admin/middleware/redirect-admin-urls.js +15 -0
  148. package/core/server/web/admin/views/default-prod.html +4 -4
  149. package/core/server/web/admin/views/default.html +4 -4
  150. package/core/server/web/api/canary/admin/app.js +0 -3
  151. package/core/server/web/api/canary/admin/middleware.js +1 -1
  152. package/core/server/web/api/canary/content/app.js +0 -3
  153. package/core/server/web/api/v2/admin/app.js +0 -3
  154. package/core/server/web/api/v2/admin/middleware.js +1 -1
  155. package/core/server/web/api/v2/content/app.js +0 -3
  156. package/core/server/web/api/v3/admin/app.js +0 -3
  157. package/core/server/web/api/v3/admin/middleware.js +1 -1
  158. package/core/server/web/api/v3/content/app.js +0 -3
  159. package/core/server/web/members/app.js +0 -3
  160. package/core/server/web/oauth/app.js +0 -4
  161. package/core/server/web/parent/app.js +2 -13
  162. package/core/server/web/parent/backend.js +2 -0
  163. package/core/server/web/shared/middleware/error-handler.js +57 -162
  164. package/core/server/web/shared/middleware/index.js +0 -4
  165. package/core/shared/config/defaults.json +7 -1
  166. package/core/shared/express.js +1 -1
  167. package/core/shared/labs.js +12 -7
  168. package/core/shared/sentry.js +1 -1
  169. package/package.json +41 -40
  170. package/yarn.lock +799 -948
  171. package/content/themes/casper/assets/js/gallery-card.js +0 -24
  172. package/core/built/assets/ghost-dark-42cf6e0c730578940ec069bda45aea41.css +0 -1
  173. package/core/built/assets/ghost.min-fcf6a0738421f86c47c55f20d00c5ba9.css +0 -1
  174. package/core/frontend/services/theme-engine/middleware.js +0 -209
  175. package/core/server/web/shared/middleware/maintenance.js +0 -25
@@ -7,98 +7,138 @@
7
7
  resolved "https://registry.yarnpkg.com/@csstools/convert-colors/-/convert-colors-1.4.0.tgz#ad495dc41b12e75d588c6db8b9834f08fa131eb7"
8
8
  integrity sha512-5a6wqoJV/xEdbRNKVo6I4hO3VjyDq//8q2f9I6PBAvMesJHFauXDorcNCsr9RzvsZnaWi5NYCcfyqP1QeFHFbw==
9
9
 
10
- "@elastic/elasticsearch@^7.10.0":
11
- version "7.11.0"
12
- resolved "https://registry.yarnpkg.com/@elastic/elasticsearch/-/elasticsearch-7.11.0.tgz#e196243d0ed026742fc160d72cc5b4b5b6c7807d"
13
- integrity sha512-AFVVuANIdbV1qYjuOi4hnsX/DehWYG+bbhQO4amq9K4/NnzU7mpGWOPgVlRQTiX+vBfBkx7SL6h4QEjIlM3ztA==
10
+ "@elastic/elasticsearch@^7.15.0":
11
+ version "7.15.0"
12
+ resolved "https://registry.yarnpkg.com/@elastic/elasticsearch/-/elasticsearch-7.15.0.tgz#4b009a87e0b11b8cfd2e4f378f0292574bc17300"
13
+ integrity sha512-FUKvjV2IKtIiWsvBy7D+wLbSEONsmNR15RRN7P/Sb30g4ObZRHH2qGOP5PPnzxdntEkzZ8HzY7nKKXFS+3Du1g==
14
14
  dependencies:
15
- debug "^4.1.1"
15
+ debug "^4.3.1"
16
16
  hpagent "^0.1.1"
17
- ms "^2.1.1"
18
- pump "^3.0.0"
19
- secure-json-parse "^2.1.0"
20
-
21
- "@sentry/core@6.13.3":
22
- version "6.13.3"
23
- resolved "https://registry.yarnpkg.com/@sentry/core/-/core-6.13.3.tgz#5cbbb995128e793ebebcbf1d3b7514e0e5e8b221"
24
- integrity sha512-obm3SjgCk8A7nB37b2AU1eq1q7gMoJRrGMv9VRIyfcG0Wlz/5lJ9O3ohUk+YZaaVfZMxXn6hFtsBiOWmlv7IIA==
25
- dependencies:
26
- "@sentry/hub" "6.13.3"
27
- "@sentry/minimal" "6.13.3"
28
- "@sentry/types" "6.13.3"
29
- "@sentry/utils" "6.13.3"
17
+ ms "^2.1.3"
18
+ secure-json-parse "^2.4.0"
19
+
20
+ "@sentry/core@6.15.0":
21
+ version "6.15.0"
22
+ resolved "https://registry.yarnpkg.com/@sentry/core/-/core-6.15.0.tgz#5e877042fe18452f2273247126b32e139d5f907c"
23
+ integrity sha512-mCbKyqvD1G3Re6gv6N8tRkBz84gvVWDfLtC6d1WBArIopzter6ktEbvq0cMT6EOvGI2OLXuJ6mtHA93/Q0gGpw==
24
+ dependencies:
25
+ "@sentry/hub" "6.15.0"
26
+ "@sentry/minimal" "6.15.0"
27
+ "@sentry/types" "6.15.0"
28
+ "@sentry/utils" "6.15.0"
30
29
  tslib "^1.9.3"
31
30
 
32
- "@sentry/hub@6.13.3":
33
- version "6.13.3"
34
- resolved "https://registry.yarnpkg.com/@sentry/hub/-/hub-6.13.3.tgz#cc09623a69b5343315fdb61c7fdd0be74b72299f"
35
- integrity sha512-eYppBVqvhs5cvm33snW2sxfcw6G20/74RbBn+E4WDo15hozis89kU7ZCJDOPkXuag3v1h9igns/kM6PNBb41dw==
31
+ "@sentry/hub@6.15.0":
32
+ version "6.15.0"
33
+ resolved "https://registry.yarnpkg.com/@sentry/hub/-/hub-6.15.0.tgz#fb8a91d12fdd2726a884374ea7242f6bbd081d69"
34
+ integrity sha512-cUbHPeG6kKpGBaEMgbTWeU03Y1Up5T3urGF+cgtrn80PmPYYSUPvVvWlZQWPb8CJZ1yQ0gySWo5RUTatBFrEHA==
36
35
  dependencies:
37
- "@sentry/types" "6.13.3"
38
- "@sentry/utils" "6.13.3"
36
+ "@sentry/types" "6.15.0"
37
+ "@sentry/utils" "6.15.0"
39
38
  tslib "^1.9.3"
40
39
 
41
- "@sentry/minimal@6.13.3":
42
- version "6.13.3"
43
- resolved "https://registry.yarnpkg.com/@sentry/minimal/-/minimal-6.13.3.tgz#a675a79bcc830142e4f95e6198a2efde2cd3901e"
44
- integrity sha512-63MlYYRni3fs5Bh8XBAfVZ+ctDdWg0fapSTP1ydIC37fKvbE+5zhyUqwrEKBIiclEApg1VKX7bkKxVdu/vsFdw==
40
+ "@sentry/minimal@6.15.0":
41
+ version "6.15.0"
42
+ resolved "https://registry.yarnpkg.com/@sentry/minimal/-/minimal-6.15.0.tgz#fcc083ba901cfe57d25303d0b5fa8cd13e164466"
43
+ integrity sha512-7RJIvZsjBa1qFUfMrAzQsWdfZT6Gm4t6ZTYfkpsXPBA35hkzglKbBrhhsUvkxGIhUGw/PiCUqxBUjcmzQP0vfg==
45
44
  dependencies:
46
- "@sentry/hub" "6.13.3"
47
- "@sentry/types" "6.13.3"
45
+ "@sentry/hub" "6.15.0"
46
+ "@sentry/types" "6.15.0"
48
47
  tslib "^1.9.3"
49
48
 
50
- "@sentry/node@6.13.3":
51
- version "6.13.3"
52
- resolved "https://registry.yarnpkg.com/@sentry/node/-/node-6.13.3.tgz#94c646c31fd240ab68ee8b85aa663e65eb499d06"
53
- integrity sha512-ZeZSw+TcPcf4e0j7iEqNMtoVmz+WFW/TEoGokXIwysZqSgchKdAXDHqn+CqUqFan7d76JcJmzztAUK2JruQ2Kg==
49
+ "@sentry/node@6.15.0":
50
+ version "6.15.0"
51
+ resolved "https://registry.yarnpkg.com/@sentry/node/-/node-6.15.0.tgz#d7b911e5667a3459a807a2ae0464558e872504d4"
52
+ integrity sha512-V1GeupWi9ClmoMy5eBWdVTv3k+Yx/JpddT4zCzzYY9QfjYtEvQI7R3SWFtlgXuaQQaZNU0WUoE2UgJV2N/vS8g==
54
53
  dependencies:
55
- "@sentry/core" "6.13.3"
56
- "@sentry/hub" "6.13.3"
57
- "@sentry/tracing" "6.13.3"
58
- "@sentry/types" "6.13.3"
59
- "@sentry/utils" "6.13.3"
54
+ "@sentry/core" "6.15.0"
55
+ "@sentry/hub" "6.15.0"
56
+ "@sentry/tracing" "6.15.0"
57
+ "@sentry/types" "6.15.0"
58
+ "@sentry/utils" "6.15.0"
60
59
  cookie "^0.4.1"
61
60
  https-proxy-agent "^5.0.0"
62
61
  lru_map "^0.3.3"
63
62
  tslib "^1.9.3"
64
63
 
65
- "@sentry/tracing@6.13.3":
66
- version "6.13.3"
67
- resolved "https://registry.yarnpkg.com/@sentry/tracing/-/tracing-6.13.3.tgz#ca657d4afa99c50f15e638fe38405bac33e780ee"
68
- integrity sha512-yyOFIhqlprPM0g4f35Icear3eZk2mwyYcGEzljJfY2iU6pJwj1lzia5PfSwiCW7jFGMmlBJNhOAIpfhlliZi8Q==
64
+ "@sentry/tracing@6.15.0":
65
+ version "6.15.0"
66
+ resolved "https://registry.yarnpkg.com/@sentry/tracing/-/tracing-6.15.0.tgz#5a5f08ee6b9cc1189227536fca053cd23488600d"
67
+ integrity sha512-V5unvX8qNEfdawX+m2n0jKgmH/YR2ItWZLH+3UevBTptO+xyfvRtpgGXYWUCo3iGvFgWb1C+iIC7LViR9rTvBg==
69
68
  dependencies:
70
- "@sentry/hub" "6.13.3"
71
- "@sentry/minimal" "6.13.3"
72
- "@sentry/types" "6.13.3"
73
- "@sentry/utils" "6.13.3"
69
+ "@sentry/hub" "6.15.0"
70
+ "@sentry/minimal" "6.15.0"
71
+ "@sentry/types" "6.15.0"
72
+ "@sentry/utils" "6.15.0"
74
73
  tslib "^1.9.3"
75
74
 
76
- "@sentry/types@6.13.3":
77
- version "6.13.3"
78
- resolved "https://registry.yarnpkg.com/@sentry/types/-/types-6.13.3.tgz#63ad5b6735b0dfd90b3a256a9f8e77b93f0f66b2"
79
- integrity sha512-Vrz5CdhaTRSvCQjSyIFIaV9PodjAVFkzJkTRxyY7P77RcegMsRSsG1yzlvCtA99zG9+e6MfoJOgbOCwuZids5A==
75
+ "@sentry/types@6.15.0":
76
+ version "6.15.0"
77
+ resolved "https://registry.yarnpkg.com/@sentry/types/-/types-6.15.0.tgz#a2917f8aed91471bdfd6651384ffcd47b95c43ad"
78
+ integrity sha512-zBw5gPUsofXUSpS3ZAXqRNedLRBvirl3sqkj2Lez7X2EkKRgn5D8m9fQIrig/X3TsKcXUpijDW5Buk5zeCVzJA==
80
79
 
81
- "@sentry/utils@6.13.3":
82
- version "6.13.3"
83
- resolved "https://registry.yarnpkg.com/@sentry/utils/-/utils-6.13.3.tgz#188754d40afe693c3fcae410f9322531588a9926"
84
- integrity sha512-zYFuFH3MaYtBZTeJ4Yajg7pDf0pM3MWs3+9k5my9Fd+eqNcl7dYQYJbT9gyC0HXK1QI4CAMNNlHNl4YXhF91ag==
80
+ "@sentry/utils@6.15.0":
81
+ version "6.15.0"
82
+ resolved "https://registry.yarnpkg.com/@sentry/utils/-/utils-6.15.0.tgz#0c247cb092b1796d39c3d16d8e6977b9cdab9ca2"
83
+ integrity sha512-gnhKKyFtnNmKWjDizo7VKD0/Vx8cgW1lCusM6WI7jy2jlO3bQA0+Dzgmr4mIReZ74mq4VpOd2Vfrx7ZldW1DMw==
85
84
  dependencies:
86
- "@sentry/types" "6.13.3"
85
+ "@sentry/types" "6.15.0"
87
86
  tslib "^1.9.3"
88
87
 
89
- "@tryghost/bunyan-rotating-filestream@0.0.7":
88
+ "@tryghost/bunyan-rotating-filestream@^0.0.7":
90
89
  version "0.0.7"
91
90
  resolved "https://registry.yarnpkg.com/@tryghost/bunyan-rotating-filestream/-/bunyan-rotating-filestream-0.0.7.tgz#3957de91e4e9b58999f0bbe19242080543dcfc4a"
92
91
  integrity sha512-dswM+dxG8J7WpVoSjzAdoWXqqB5Dg0C2T7Zh6eoUvl5hkA8yWWJi/fS4jNXlHF700lWQ0g8/t+leJ7SGSWd+aw==
93
92
  dependencies:
94
93
  long-timeout "^0.1.1"
95
94
 
96
- "@tryghost/elasticsearch-bunyan@0.1.1":
97
- version "0.1.1"
98
- resolved "https://registry.yarnpkg.com/@tryghost/elasticsearch-bunyan/-/elasticsearch-bunyan-0.1.1.tgz#5a36d81dd020825dd563b1357ae6c249580c46f5"
99
- integrity sha512-ILhumzdwJNoRG44S0FkgzZQlkCYioTKWEiY+FFFQpTFWwZ3Jd5a6us5k8tEsd+Wf2rZOvul/ehV45j2c2l1BMw==
95
+ "@tryghost/config@0.2.1":
96
+ version "0.2.1"
97
+ resolved "https://registry.yarnpkg.com/@tryghost/config/-/config-0.2.1.tgz#49cac52281d9cc05fdb22033e5378989ed0923ce"
98
+ integrity sha512-VQVMjjgqEoDX3jtb1wsr/p8I0+lnt6Xo5WDVcuiHAQePBLIP79fZcnq7UkdexAjiotWW2OwbYwIxfFNxQAsdWA==
99
+ dependencies:
100
+ "@tryghost/root-utils" "^0.3.7"
101
+ nconf "^0.11.3"
102
+
103
+ "@tryghost/debug@0.1.9", "@tryghost/debug@^0.1.9":
104
+ version "0.1.9"
105
+ resolved "https://registry.yarnpkg.com/@tryghost/debug/-/debug-0.1.9.tgz#9cb4b5debca96ffb010b73811f01da6ca581935d"
106
+ integrity sha512-//j7JykptEvKWuxNnE8FgjNrUqkZReVEonMvMZdP25JUqza/3gNhju6vcwsl9lZwGk4Lnn/NEGZil7Gg+Y76BQ==
107
+ dependencies:
108
+ "@tryghost/root-utils" "^0.3.7"
109
+ debug "^4.3.1"
110
+
111
+ "@tryghost/elasticsearch@^1.0.0":
112
+ version "1.0.0"
113
+ resolved "https://registry.yarnpkg.com/@tryghost/elasticsearch/-/elasticsearch-1.0.0.tgz#287167c7dd130fa36eb25347a6e1297d12c2de05"
114
+ integrity sha512-iVPQoNzkHUGCc8opEGmqRewwBOtf4c3XqxFyf6Bdpr3RLIwdKoa35HMKbtz5GJUAQ14Q++zJcWCxiKSHUexW+w==
100
115
  dependencies:
101
- "@elastic/elasticsearch" "^7.10.0"
116
+ "@elastic/elasticsearch" "^7.15.0"
117
+ "@tryghost/debug" "^0.1.9"
118
+
119
+ "@tryghost/ignition-errors@0.1.8":
120
+ version "0.1.8"
121
+ resolved "https://registry.yarnpkg.com/@tryghost/ignition-errors/-/ignition-errors-0.1.8.tgz#6d4c4d4e02d32403ca1e574eaa91b3c0d138d6f6"
122
+ integrity sha512-4KYU+kDXZyP7tmzyHiUkfDy9RWxKAtA/6xTGdxYHurE5ZlT++cDDfdUtF0v3308GGUzKlBzRc3jmLjDYpngcBQ==
123
+ dependencies:
124
+ lodash "^4.17.21"
125
+ uuid "^8.3.2"
126
+
127
+ "@tryghost/logging@1.0.1", "@tryghost/logging@^1.0.0":
128
+ version "1.0.1"
129
+ resolved "https://registry.yarnpkg.com/@tryghost/logging/-/logging-1.0.1.tgz#26f8dc45f70550efed583244ee79ff7721e4dc58"
130
+ integrity sha512-e01V4kYlsqKuJsSw3VPWSrGBF2PaZ4NMXhh9jokVksB9EXOgX1DUElHM0nu1vKcewYvQJnMxkPoOSi3SvxeA7w==
131
+ dependencies:
132
+ "@tryghost/bunyan-rotating-filestream" "^0.0.7"
133
+ "@tryghost/elasticsearch" "^1.0.0"
134
+ "@tryghost/pretty-stream" "^0.1.2"
135
+ "@tryghost/root-utils" "^0.3.7"
136
+ bunyan "^1.8.15"
137
+ bunyan-loggly "^1.4.2"
138
+ fs-extra "^10.0.0"
139
+ gelf-stream "^1.1.1"
140
+ json-stringify-safe "^5.0.1"
141
+ lodash "^4.17.21"
102
142
 
103
143
  "@tryghost/pretty-cli@1.2.22":
104
144
  version "1.2.22"
@@ -108,6 +148,15 @@
108
148
  chalk "^4.1.0"
109
149
  sywac "^1.3.0"
110
150
 
151
+ "@tryghost/pretty-stream@^0.1.2":
152
+ version "0.1.2"
153
+ resolved "https://registry.yarnpkg.com/@tryghost/pretty-stream/-/pretty-stream-0.1.2.tgz#30cb24c95ccb8f4af2c5b7095e77947ac7941198"
154
+ integrity sha512-zhnYf3MMuDPlwctliO45yfuuj0G3zYXX34ZorSHOAlCVcUVi3s5mkzMvdZ2ESExDyandyD7mqcI2SYGpB1zKKw==
155
+ dependencies:
156
+ lodash "^4.17.21"
157
+ moment "^2.29.1"
158
+ prettyjson "^1.2.1"
159
+
111
160
  "@tryghost/release-utils@0.6.12":
112
161
  version "0.6.12"
113
162
  resolved "https://registry.yarnpkg.com/@tryghost/release-utils/-/release-utils-0.6.12.tgz#a02c725df910053466d11224e81cec0933f500dd"
@@ -120,14 +169,22 @@
120
169
  request "2.88.2"
121
170
  request-promise "4.2.6"
122
171
 
123
- "@tryghost/root-utils@^0.1.0":
124
- version "0.1.0"
125
- resolved "https://registry.yarnpkg.com/@tryghost/root-utils/-/root-utils-0.1.0.tgz#7578cb5e57953316fef58edd43a152a86b719a8f"
126
- integrity sha512-zy3PSviwytjvjdMso86RYZLE2I4e2yL/s83fIEf/g17C8V8hsCcgE83cFOpCw3ISWDFX3Qi0IX9kI3or2pfGLg==
172
+ "@tryghost/root-utils@^0.3.7":
173
+ version "0.3.7"
174
+ resolved "https://registry.yarnpkg.com/@tryghost/root-utils/-/root-utils-0.3.7.tgz#d56a4a1493b90ce36feb64a99cda86ec8a356b49"
175
+ integrity sha512-iDJzSmAprASm73ncuQBhF9OeieOnC8LUv4gSqObDDSRp1fyoAH8TauJC9Ib9WQ09+77XE9KxFIpS1hK4ReKN7A==
127
176
  dependencies:
128
177
  caller "^1.0.1"
129
178
  find-root "^1.1.0"
130
179
 
180
+ "@tryghost/server@0.1.0":
181
+ version "0.1.0"
182
+ resolved "https://registry.yarnpkg.com/@tryghost/server/-/server-0.1.0.tgz#2d0065b2dd784b6280ee5e01e0b0c7a1e1d99e1c"
183
+ integrity sha512-xHtJdRe+w4w8Or5udVTfyKOqhEurLgzUpwb8uxTpBnGWjCRFjtzIRAropqJwuxWiK6Ymsnqc19tkcXNsuTed/A==
184
+ dependencies:
185
+ "@tryghost/debug" "^0.1.9"
186
+ "@tryghost/logging" "^1.0.0"
187
+
131
188
  "@tryghost/zip@1.1.18":
132
189
  version "1.1.18"
133
190
  resolved "https://registry.yarnpkg.com/@tryghost/zip/-/zip-1.1.18.tgz#1afcf07d1c5404ab38bc42ef9b400eafc4052edc"
@@ -644,7 +701,7 @@ buffer@^5.1.0, buffer@^5.5.0:
644
701
  base64-js "^1.3.1"
645
702
  ieee754 "^1.1.13"
646
703
 
647
- bunyan-loggly@1.4.2:
704
+ bunyan-loggly@^1.4.2:
648
705
  version "1.4.2"
649
706
  resolved "https://registry.yarnpkg.com/bunyan-loggly/-/bunyan-loggly-1.4.2.tgz#dda0fb18f487fa150a79728e906d83e871d235e9"
650
707
  integrity sha512-/fwAO+NPogiPziEk4bQKZhwYo+POrbdAlatpW5r+BQSTHqYyxGFHMtLMp4uSjIdPetXDxvG5qffAePB3hc/6NA==
@@ -652,7 +709,7 @@ bunyan-loggly@1.4.2:
652
709
  json-stringify-safe "^5.0.1"
653
710
  node-loggly-bulk "^2.2.4"
654
711
 
655
- bunyan@1.8.15:
712
+ bunyan@^1.8.15:
656
713
  version "1.8.15"
657
714
  resolved "https://registry.yarnpkg.com/bunyan/-/bunyan-1.8.15.tgz#8ce34ca908a17d0776576ca1b2f6cbd916e93b46"
658
715
  integrity sha512-0tECWShh6wUysgucJcBAoYegf3JJoZWibxdqhTm7OHPeT42qdjkZ29QCMcKwbgU1kiH+auSIasNRXMLWXafXig==
@@ -717,7 +774,7 @@ caller-path@^2.0.0:
717
774
  dependencies:
718
775
  caller-callsite "^2.0.0"
719
776
 
720
- caller@1.0.1, caller@^1.0.1:
777
+ caller@^1.0.1:
721
778
  version "1.0.1"
722
779
  resolved "https://registry.yarnpkg.com/caller/-/caller-1.0.1.tgz#b851860f70e195db3d277395aa1a7e23ea30ecf5"
723
780
  integrity sha1-uFGGD3Dhlds9J3OVqhp+I+ow7PU=
@@ -973,10 +1030,10 @@ commander@^2.19.0:
973
1030
  resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33"
974
1031
  integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==
975
1032
 
976
- common-tags@1.8.0:
977
- version "1.8.0"
978
- resolved "https://registry.yarnpkg.com/common-tags/-/common-tags-1.8.0.tgz#8e3153e542d4a39e9b10554434afaaf98956a937"
979
- integrity sha512-6P6g0uetGpW/sdyUy/iQQCbFF0kWVMSIVSyYz7Zgjcgh8mgw8PQzDNZeyZ5DQ2gM7LBoZPHmnjz8rUthkBG5tw==
1033
+ common-tags@1.8.2:
1034
+ version "1.8.2"
1035
+ resolved "https://registry.yarnpkg.com/common-tags/-/common-tags-1.8.2.tgz#94ebb3c076d26032745fd54face7f688ef5ac9c6"
1036
+ integrity sha512-gk/Z852D2Wtb//0I+kRFNKKE9dIIVirjoqPoA1wJU+XePVXZfGeBpk45+A1rKO4Q43prqWBNY/MiIeRLbPWUaA==
980
1037
 
981
1038
  component-emitter@^1.2.1:
982
1039
  version "1.3.0"
@@ -1265,7 +1322,7 @@ debug@2.6.9, debug@^2.2.0, debug@^2.3.3:
1265
1322
  dependencies:
1266
1323
  ms "2.0.0"
1267
1324
 
1268
- debug@4, debug@4.3.1, debug@^4.1.1:
1325
+ debug@4, debug@^4.1.1:
1269
1326
  version "4.3.1"
1270
1327
  resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.1.tgz#f0d229c505e0c6d8c49ac553d1b13dc183f6b2ee"
1271
1328
  integrity sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==
@@ -1279,6 +1336,13 @@ debug@^3.1.0:
1279
1336
  dependencies:
1280
1337
  ms "^2.1.1"
1281
1338
 
1339
+ debug@^4.3.1:
1340
+ version "4.3.2"
1341
+ resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.2.tgz#f0a49c18ac8779e31d4a0c6029dfb76873c7428b"
1342
+ integrity sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==
1343
+ dependencies:
1344
+ ms "2.1.2"
1345
+
1282
1346
  decamelize@^1.1.1:
1283
1347
  version "1.2.0"
1284
1348
  resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290"
@@ -1820,7 +1884,7 @@ finalhandler@~1.1.2:
1820
1884
  statuses "~1.5.0"
1821
1885
  unpipe "~1.0.0"
1822
1886
 
1823
- find-root@1.1.0, find-root@^1.1.0:
1887
+ find-root@^1.1.0:
1824
1888
  version "1.1.0"
1825
1889
  resolved "https://registry.yarnpkg.com/find-root/-/find-root-1.1.0.tgz#abcfc8ba76f708c42a97b3d685b7e9450bfb9ce4"
1826
1890
  integrity sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==
@@ -1945,6 +2009,15 @@ fs-extra@9.1.0, fs-extra@^9.1.0:
1945
2009
  jsonfile "^6.0.1"
1946
2010
  universalify "^2.0.0"
1947
2011
 
2012
+ fs-extra@^10.0.0:
2013
+ version "10.0.0"
2014
+ resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-10.0.0.tgz#9ff61b655dde53fb34a82df84bb214ce802e17c1"
2015
+ integrity sha512-C5owb14u9eJwizKGdchcDUQeFtlSHHthBk8pbX9Vc1PFZrLombudjDnNns88aYslCyF6IY5SUw3Roz6xShcEIQ==
2016
+ dependencies:
2017
+ graceful-fs "^4.2.0"
2018
+ jsonfile "^6.0.1"
2019
+ universalify "^2.0.0"
2020
+
1948
2021
  fs-mkdirp-stream@^1.0.0:
1949
2022
  version "1.0.0"
1950
2023
  resolved "https://registry.yarnpkg.com/fs-mkdirp-stream/-/fs-mkdirp-stream-1.0.0.tgz#0b7815fc3201c6a69e14db98ce098c16935259eb"
@@ -1971,7 +2044,7 @@ function-bind@^1.1.1:
1971
2044
  resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d"
1972
2045
  integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==
1973
2046
 
1974
- gelf-stream@1.1.1:
2047
+ gelf-stream@^1.1.1:
1975
2048
  version "1.1.1"
1976
2049
  resolved "https://registry.yarnpkg.com/gelf-stream/-/gelf-stream-1.1.1.tgz#9cea9b6386ac301c741838ca3cb91e66dbfbf669"
1977
2050
  integrity sha1-nOqbY4asMBx0GDjKPLkeZtv79mk=
@@ -2021,28 +2094,6 @@ getpass@^0.1.1:
2021
2094
  dependencies:
2022
2095
  assert-plus "^1.0.0"
2023
2096
 
2024
- ghost-ignition@4.6.3:
2025
- version "4.6.3"
2026
- resolved "https://registry.yarnpkg.com/ghost-ignition/-/ghost-ignition-4.6.3.tgz#eea33bbd84e4e26096f9b7c8838f972acdab7533"
2027
- integrity sha512-F9Kms91NG7miRH8FdmvHvWGt9crVHaKYap3gFrGekCi0TTpssN6duGi0NERSqAcf+7gC7QXT3BP/yCWwBr3fqw==
2028
- dependencies:
2029
- "@tryghost/bunyan-rotating-filestream" "0.0.7"
2030
- "@tryghost/elasticsearch-bunyan" "0.1.1"
2031
- "@tryghost/root-utils" "^0.1.0"
2032
- bunyan "1.8.15"
2033
- bunyan-loggly "1.4.2"
2034
- caller "1.0.1"
2035
- debug "4.3.1"
2036
- find-root "1.1.0"
2037
- fs-extra "9.1.0"
2038
- gelf-stream "1.1.1"
2039
- json-stringify-safe "5.0.1"
2040
- lodash "4.17.21"
2041
- moment "2.27.0"
2042
- nconf "0.11.2"
2043
- prettyjson "1.2.1"
2044
- uuid "8.3.2"
2045
-
2046
2097
  glob-parent@^3.1.0:
2047
2098
  version "3.1.0"
2048
2099
  resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae"
@@ -2158,21 +2209,25 @@ graceful-fs@^4.0.0, graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.6,
2158
2209
  resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.4.tgz#2256bde14d3632958c465ebc96dc467ca07a29fb"
2159
2210
  integrity sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==
2160
2211
 
2161
- gscan@4.10.1:
2162
- version "4.10.1"
2163
- resolved "https://registry.yarnpkg.com/gscan/-/gscan-4.10.1.tgz#4375d26295537fbe6d1c721750a3381f33b687a4"
2164
- integrity sha512-Lba8blZ6Yzp2xAxJr8xMFc/SX+jRnZQKnsWiGkFsjZpSgC8SWOkwGiUuFivKYbbMJmbf1bfvixu3QIN5zmfHfQ==
2212
+ gscan@4.11.1:
2213
+ version "4.11.1"
2214
+ resolved "https://registry.yarnpkg.com/gscan/-/gscan-4.11.1.tgz#119450c1aa51ac1a8abb607d8c074f84e36129e7"
2215
+ integrity sha512-anWiynkSEh1FW8SmNIuaWuLrPZ/mVm9ylf3dF60vsnCUQVmtCJFOZhvEbINMAk8j2VEqq2zR8cEfz2VWjN004g==
2165
2216
  dependencies:
2166
- "@sentry/node" "6.13.3"
2217
+ "@sentry/node" "6.15.0"
2218
+ "@tryghost/config" "0.2.1"
2219
+ "@tryghost/debug" "0.1.9"
2220
+ "@tryghost/ignition-errors" "0.1.8"
2221
+ "@tryghost/logging" "1.0.1"
2167
2222
  "@tryghost/pretty-cli" "1.2.22"
2223
+ "@tryghost/server" "0.1.0"
2168
2224
  "@tryghost/zip" "1.1.18"
2169
2225
  bluebird "3.7.2"
2170
2226
  chalk "4.1.2"
2171
- common-tags "1.8.0"
2227
+ common-tags "1.8.2"
2172
2228
  express "4.17.1"
2173
2229
  express-hbs "2.4.0"
2174
2230
  fs-extra "9.1.0"
2175
- ghost-ignition "4.6.3"
2176
2231
  glob "7.2.0"
2177
2232
  lodash "4.17.21"
2178
2233
  multer "1.4.3"
@@ -2886,7 +2941,7 @@ json-stable-stringify-without-jsonify@^1.0.1:
2886
2941
  resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651"
2887
2942
  integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=
2888
2943
 
2889
- json-stringify-safe@5.0.1, json-stringify-safe@5.0.x, json-stringify-safe@^5.0.1, json-stringify-safe@~5.0.1:
2944
+ json-stringify-safe@5.0.x, json-stringify-safe@^5.0.1, json-stringify-safe@~5.0.1:
2890
2945
  version "5.0.1"
2891
2946
  resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb"
2892
2947
  integrity sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=
@@ -3212,12 +3267,7 @@ mkdirp@^0.5.4, mkdirp@~0.5.1:
3212
3267
  dependencies:
3213
3268
  minimist "^1.2.5"
3214
3269
 
3215
- moment@2.27.0:
3216
- version "2.27.0"
3217
- resolved "https://registry.yarnpkg.com/moment/-/moment-2.27.0.tgz#8bff4e3e26a236220dfe3e36de756b6ebaa0105d"
3218
- integrity sha512-al0MUK7cpIcglMv3YF13qSgdAIqxHTO7brRtaz3DlSULbqfazqkc5kEjNrLDOM7fsjshoFIihnU8snrP7zUvhQ==
3219
-
3220
- moment@^2.18.1, moment@^2.19.3:
3270
+ moment@^2.18.1, moment@^2.19.3, moment@^2.29.1:
3221
3271
  version "2.29.1"
3222
3272
  resolved "https://registry.yarnpkg.com/moment/-/moment-2.29.1.tgz#b2be769fa31940be9eeea6469c075e35006fa3d3"
3223
3273
  integrity sha512-kHmoybcPV8Sqy59DwNDY3Jefr64lK/by/da0ViFcuA4DH0vQg5Q6Ze5VimxkfQNSC+Mls/Kx53s7TjP1RhFEDQ==
@@ -3237,7 +3287,7 @@ ms@2.1.2:
3237
3287
  resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009"
3238
3288
  integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==
3239
3289
 
3240
- ms@^2.1.1:
3290
+ ms@^2.1.1, ms@^2.1.3:
3241
3291
  version "2.1.3"
3242
3292
  resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2"
3243
3293
  integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==
@@ -3302,10 +3352,10 @@ nanomatch@^1.2.9:
3302
3352
  snapdragon "^0.8.1"
3303
3353
  to-regex "^3.0.1"
3304
3354
 
3305
- nconf@0.11.2:
3306
- version "0.11.2"
3307
- resolved "https://registry.yarnpkg.com/nconf/-/nconf-0.11.2.tgz#707fa9db383e85ad7e8f1a17be1b053d1bd751c4"
3308
- integrity sha512-gDmn0Fgt0U0esRE8OCF72tO8AA9dtlG9eZhW4/Ex5hozNC2/LgdhWO4vKLGHNfTxcvsv6Aoxk/ROVYJD2SAdyg==
3355
+ nconf@^0.11.3:
3356
+ version "0.11.3"
3357
+ resolved "https://registry.yarnpkg.com/nconf/-/nconf-0.11.3.tgz#4ee545019c53f1037ca57d696836feede3c49163"
3358
+ integrity sha512-iYsAuDS9pzjVMGIzJrGE0Vk3Eh8r/suJanRAnWGBd29rVS2XtSgzcAo5l6asV3e4hH2idVONHirg1efoBOslBg==
3309
3359
  dependencies:
3310
3360
  async "^1.4.0"
3311
3361
  ini "^2.0.0"
@@ -4062,7 +4112,7 @@ pretty-hrtime@^1.0.0:
4062
4112
  resolved "https://registry.yarnpkg.com/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz#b7e3ea42435a4c9b2759d99e0f201eb195802ee1"
4063
4113
  integrity sha1-t+PqQkNaTJsnWdmeDyAesZWALuE=
4064
4114
 
4065
- prettyjson@1.2.1:
4115
+ prettyjson@^1.2.1:
4066
4116
  version "1.2.1"
4067
4117
  resolved "https://registry.yarnpkg.com/prettyjson/-/prettyjson-1.2.1.tgz#fcffab41d19cab4dfae5e575e64246619b12d289"
4068
4118
  integrity sha1-/P+rQdGcq0365eV15kJGYZsS0ok=
@@ -4474,10 +4524,10 @@ sax@~1.2.4:
4474
4524
  resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9"
4475
4525
  integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==
4476
4526
 
4477
- secure-json-parse@^2.1.0:
4478
- version "2.3.1"
4479
- resolved "https://registry.yarnpkg.com/secure-json-parse/-/secure-json-parse-2.3.1.tgz#908aa5e806e223ff8d179d37ad95c2433f5f147d"
4480
- integrity sha512-5uGhQLHSC9tVa7RGPkSwxbZVsJCZvIODOadAimCXkU1aCa1fWdszj2DktcutK8A7dD58PoRdxTYiy0jFl6qjnw==
4527
+ secure-json-parse@^2.4.0:
4528
+ version "2.4.0"
4529
+ resolved "https://registry.yarnpkg.com/secure-json-parse/-/secure-json-parse-2.4.0.tgz#5aaeaaef85c7a417f76271a4f5b0cc3315ddca85"
4530
+ integrity sha512-Q5Z/97nbON5t/L/sH6mY2EacfjVGwrCcSi5D3btRO2GZ8pf1K1UN7Z9H5J57hjVU2Qzxr1xO+FmBhOvEkzCMmg==
4481
4531
 
4482
4532
  secure-keys@^1.0.0:
4483
4533
  version "1.0.0"
@@ -5191,7 +5241,7 @@ utils-merge@1.0.1:
5191
5241
  resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713"
5192
5242
  integrity sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=
5193
5243
 
5194
- uuid@8.3.2:
5244
+ uuid@8.3.2, uuid@^8.3.2:
5195
5245
  version "8.3.2"
5196
5246
  resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2"
5197
5247
  integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==
package/core/app.js CHANGED
@@ -1,14 +1,25 @@
1
1
  const sentry = require('./shared/sentry');
2
2
  const express = require('./shared/express');
3
+ const config = require('./shared/config');
4
+ const urlService = require('./server/services/url');
3
5
 
4
6
  const fs = require('fs');
5
7
  const path = require('path');
6
8
 
9
+ const isMaintenanceModeEnabled = (req) => {
10
+ if (req.app.get('maintenance') || config.get('maintenance').enabled || !urlService.hasFinished()) {
11
+ return true;
12
+ }
13
+
14
+ return false;
15
+ };
16
+
7
17
  // We never want middleware functions to be anonymous
8
18
  const maintenanceMiddleware = (req, res, next) => {
9
- if (!req.app.get('maintenance')) {
19
+ if (!isMaintenanceModeEnabled(req)) {
10
20
  return next();
11
21
  }
22
+
12
23
  res.set({
13
24
  'Cache-Control': 'no-cache, private, no-store, must-revalidate, max-stale=0, post-check=0, pre-check=0'
14
25
  });
@@ -16,10 +27,14 @@ const maintenanceMiddleware = (req, res, next) => {
16
27
  fs.createReadStream(path.resolve(__dirname, './server/views/maintenance.html')).pipe(res);
17
28
  };
18
29
 
19
- const rootApp = express('root');
20
- rootApp.use(sentry.requestHandler);
30
+ const rootApp = () => {
31
+ const app = express('root');
32
+ app.use(sentry.requestHandler);
33
+
34
+ app.enable('maintenance');
35
+ app.use(maintenanceMiddleware);
21
36
 
22
- rootApp.enable('maintenance');
23
- rootApp.use(maintenanceMiddleware);
37
+ return app;
38
+ };
24
39
 
25
40
  module.exports = rootApp;