ghost 5.82.8 → 5.82.9
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.
- package/components/tryghost-adapter-cache-memory-ttl-5.82.9.tgz +0 -0
- package/components/tryghost-adapter-cache-redis-5.82.9.tgz +0 -0
- package/components/tryghost-adapter-manager-5.82.9.tgz +0 -0
- package/components/tryghost-announcement-bar-settings-5.82.9.tgz +0 -0
- package/components/tryghost-api-framework-5.82.9.tgz +0 -0
- package/components/tryghost-api-version-compatibility-service-5.82.9.tgz +0 -0
- package/components/tryghost-audience-feedback-5.82.9.tgz +0 -0
- package/components/tryghost-bookshelf-repository-5.82.9.tgz +0 -0
- package/components/tryghost-bootstrap-socket-5.82.9.tgz +0 -0
- package/components/{tryghost-collections-5.82.8.tgz → tryghost-collections-5.82.9.tgz} +0 -0
- package/components/tryghost-constants-5.82.9.tgz +0 -0
- package/components/{tryghost-custom-theme-settings-service-5.82.8.tgz → tryghost-custom-theme-settings-service-5.82.9.tgz} +0 -0
- package/components/tryghost-data-generator-5.82.9.tgz +0 -0
- package/components/tryghost-domain-events-5.82.9.tgz +0 -0
- package/components/tryghost-donations-5.82.9.tgz +0 -0
- package/components/tryghost-dynamic-routing-events-5.82.9.tgz +0 -0
- package/components/{tryghost-email-addresses-5.82.8.tgz → tryghost-email-addresses-5.82.9.tgz} +0 -0
- package/components/tryghost-email-analytics-provider-mailgun-5.82.9.tgz +0 -0
- package/components/tryghost-email-analytics-service-5.82.9.tgz +0 -0
- package/components/tryghost-email-content-generator-5.82.9.tgz +0 -0
- package/components/tryghost-email-events-5.82.9.tgz +0 -0
- package/components/{tryghost-email-service-5.82.8.tgz → tryghost-email-service-5.82.9.tgz} +0 -0
- package/components/tryghost-email-suppression-list-5.82.9.tgz +0 -0
- package/components/tryghost-express-dynamic-redirects-5.82.9.tgz +0 -0
- package/components/tryghost-external-media-inliner-5.82.9.tgz +0 -0
- package/components/tryghost-extract-api-key-5.82.9.tgz +0 -0
- package/components/tryghost-ghost-5.82.9.tgz +0 -0
- package/components/tryghost-html-to-plaintext-5.82.9.tgz +0 -0
- package/components/tryghost-i18n-5.82.9.tgz +0 -0
- package/components/tryghost-importer-handler-content-files-5.82.9.tgz +0 -0
- package/components/tryghost-importer-revue-5.82.9.tgz +0 -0
- package/components/tryghost-in-memory-repository-5.82.9.tgz +0 -0
- package/components/tryghost-job-manager-5.82.9.tgz +0 -0
- package/components/tryghost-link-redirects-5.82.9.tgz +0 -0
- package/components/tryghost-link-replacer-5.82.9.tgz +0 -0
- package/components/{tryghost-link-tracking-5.82.8.tgz → tryghost-link-tracking-5.82.9.tgz} +0 -0
- package/components/tryghost-magic-link-5.82.9.tgz +0 -0
- package/components/tryghost-mail-events-5.82.9.tgz +0 -0
- package/components/tryghost-mailgun-client-5.82.9.tgz +0 -0
- package/components/tryghost-member-attribution-5.82.9.tgz +0 -0
- package/components/tryghost-member-events-5.82.9.tgz +0 -0
- package/components/{tryghost-members-api-5.82.8.tgz → tryghost-members-api-5.82.9.tgz} +0 -0
- package/components/tryghost-members-csv-5.82.9.tgz +0 -0
- package/components/tryghost-members-events-service-5.82.9.tgz +0 -0
- package/components/tryghost-members-importer-5.82.9.tgz +0 -0
- package/components/tryghost-members-offers-5.82.9.tgz +0 -0
- package/components/tryghost-members-payments-5.82.9.tgz +0 -0
- package/components/tryghost-members-ssr-5.82.9.tgz +0 -0
- package/components/{tryghost-members-stripe-service-5.82.8.tgz → tryghost-members-stripe-service-5.82.9.tgz} +0 -0
- package/components/tryghost-mentions-email-report-5.82.9.tgz +0 -0
- package/components/tryghost-milestones-5.82.9.tgz +0 -0
- package/components/{tryghost-minifier-5.82.8.tgz → tryghost-minifier-5.82.9.tgz} +0 -0
- package/components/tryghost-model-to-domain-event-interceptor-5.82.9.tgz +0 -0
- package/components/tryghost-mw-api-version-mismatch-5.82.9.tgz +0 -0
- package/components/tryghost-mw-cache-control-5.82.9.tgz +0 -0
- package/components/tryghost-mw-error-handler-5.82.9.tgz +0 -0
- package/components/tryghost-mw-session-from-token-5.82.9.tgz +0 -0
- package/components/tryghost-mw-update-user-last-seen-5.82.9.tgz +0 -0
- package/components/{tryghost-mw-version-match-5.82.8.tgz → tryghost-mw-version-match-5.82.9.tgz} +0 -0
- package/components/tryghost-mw-vhost-5.82.9.tgz +0 -0
- package/components/tryghost-nql-filter-expansions-5.82.9.tgz +0 -0
- package/components/tryghost-oembed-service-5.82.9.tgz +0 -0
- package/components/tryghost-package-json-5.82.9.tgz +0 -0
- package/components/tryghost-post-events-5.82.9.tgz +0 -0
- package/components/tryghost-post-revisions-5.82.9.tgz +0 -0
- package/components/tryghost-posts-service-5.82.9.tgz +0 -0
- package/components/tryghost-recommendations-5.82.9.tgz +0 -0
- package/components/tryghost-referrers-5.82.9.tgz +0 -0
- package/components/tryghost-security-5.82.9.tgz +0 -0
- package/components/tryghost-session-service-5.82.9.tgz +0 -0
- package/components/tryghost-settings-path-manager-5.82.9.tgz +0 -0
- package/components/tryghost-slack-notifications-5.82.9.tgz +0 -0
- package/components/{tryghost-staff-service-5.82.8.tgz → tryghost-staff-service-5.82.9.tgz} +0 -0
- package/components/tryghost-stats-service-5.82.9.tgz +0 -0
- package/components/tryghost-tiers-5.82.9.tgz +0 -0
- package/components/{tryghost-update-check-service-5.82.8.tgz → tryghost-update-check-service-5.82.9.tgz} +0 -0
- package/components/tryghost-verification-trigger-5.82.9.tgz +0 -0
- package/components/tryghost-version-notifications-data-service-5.82.9.tgz +0 -0
- package/components/tryghost-webmentions-5.82.9.tgz +0 -0
- package/core/app.js +1 -1
- package/core/built/admin/assets/admin-x-activitypub/admin-x-activitypub.js +1 -1
- package/core/built/admin/assets/admin-x-demo/admin-x-demo.js +1 -1
- package/core/built/admin/assets/admin-x-demo/{index-e30bf632.mjs → index-f544d6cb.mjs} +3 -3
- package/core/built/admin/assets/admin-x-demo/{modals-44d6f757.mjs → modals-6544d395.mjs} +2 -2
- package/core/built/admin/assets/admin-x-settings/{CodeEditorView-c72ff915.mjs → CodeEditorView-a1b9ba69.mjs} +2 -2
- package/core/built/admin/assets/admin-x-settings/admin-x-settings.js +1 -1
- package/core/built/admin/assets/admin-x-settings/{index-c91e5b06.mjs → index-8d83c7e9.mjs} +2 -2
- package/core/built/admin/assets/admin-x-settings/{index-ab6aea43.mjs → index-d54677fb.mjs} +4 -4
- package/core/built/admin/assets/admin-x-settings/{modals-839cba44.mjs → modals-73b6c803.mjs} +3125 -3105
- package/core/built/admin/assets/{chunk.524.784dc858253af4b339a9.js → chunk.524.cad7f24c33927f31923c.js} +5 -5
- package/core/built/admin/assets/{chunk.582.22b04d2b8d1fb7e2256c.js → chunk.582.a3046e5a9e7ea94bda16.js} +4 -4
- package/core/built/admin/assets/{chunk.799.5012e659e3d64d043636.js → chunk.799.5bcf6feef26f9fe94f0a.js} +523 -517
- package/core/built/admin/assets/{ghost-e16d0c67f0a0262f4cbe0d2745f90f5a.js → ghost-377ce682ddf6e53f0ccb91aeae235f29.js} +70 -58
- package/core/built/admin/assets/koenig-lexical/index.css +1 -1
- package/core/built/admin/assets/koenig-lexical/koenig-lexical.js +2015 -1951
- package/core/built/admin/assets/koenig-lexical/koenig-lexical.umd.js +46 -46
- package/core/built/admin/assets/{vendor-5ef343f0a55366497ef903095548a0d5.js → vendor-96853bcc300bd0b0cda2913c8edb0d14.js} +13 -11
- package/core/built/admin/index.html +5 -5
- package/core/frontend/meta/og-image.js +1 -1
- package/core/frontend/meta/twitter-image.js +1 -1
- package/core/frontend/services/routing/ParentRouter.js +3 -3
- package/core/frontend/web/middleware/error-handler.js +1 -1
- package/core/frontend/web/site.js +4 -2
- package/core/server/GhostServer.js +1 -1
- package/core/server/api/endpoints/actions.js +4 -1
- package/core/server/api/endpoints/announcements.js +4 -1
- package/core/server/api/endpoints/authentication.js +4 -1
- package/core/server/api/endpoints/authors-public.js +4 -1
- package/core/server/api/endpoints/collections-public.js +4 -1
- package/core/server/api/endpoints/collections.js +4 -1
- package/core/server/api/endpoints/comments-members.js +6 -3
- package/core/server/api/endpoints/comments.js +4 -1
- package/core/server/api/endpoints/config.js +4 -1
- package/core/server/api/endpoints/custom-theme-settings.js +4 -1
- package/core/server/api/endpoints/db.js +4 -1
- package/core/server/api/endpoints/email-post.js +4 -1
- package/core/server/api/endpoints/email-previews.js +4 -1
- package/core/server/api/endpoints/emails.js +4 -1
- package/core/server/api/endpoints/explore.js +4 -1
- package/core/server/api/endpoints/feedback-members.js +4 -1
- package/core/server/api/endpoints/files.js +4 -1
- package/core/server/api/endpoints/identities.js +4 -1
- package/core/server/api/endpoints/images.js +4 -1
- package/core/server/api/endpoints/incoming-recommendations.js +4 -1
- package/core/server/api/endpoints/integrations.js +4 -1
- package/core/server/api/endpoints/invites.js +4 -1
- package/core/server/api/endpoints/labels.js +4 -1
- package/core/server/api/endpoints/links.js +4 -1
- package/core/server/api/endpoints/mail-events.js +4 -1
- package/core/server/api/endpoints/mail.js +4 -19
- package/core/server/api/endpoints/media.js +4 -1
- package/core/server/api/endpoints/member-signin-urls.js +5 -1
- package/core/server/api/endpoints/members-stripe-connect.js +4 -1
- package/core/server/api/endpoints/members.js +4 -1
- package/core/server/api/endpoints/mentions.js +4 -1
- package/core/server/api/endpoints/newsletters-public.js +4 -1
- package/core/server/api/endpoints/newsletters.js +4 -1
- package/core/server/api/endpoints/notifications.js +4 -1
- package/core/server/api/endpoints/oembed.js +4 -1
- package/core/server/api/endpoints/offers-public.js +4 -1
- package/core/server/api/endpoints/offers.js +4 -1
- package/core/server/api/endpoints/pages-public.js +4 -1
- package/core/server/api/endpoints/pages.js +4 -1
- package/core/server/api/endpoints/posts-public.js +11 -1
- package/core/server/api/endpoints/posts.js +4 -1
- package/core/server/api/endpoints/previews.js +4 -1
- package/core/server/api/endpoints/recommendations-public.js +4 -1
- package/core/server/api/endpoints/recommendations.js +4 -1
- package/core/server/api/endpoints/redirects.js +4 -1
- package/core/server/api/endpoints/roles.js +4 -1
- package/core/server/api/endpoints/schedules.js +4 -2
- package/core/server/api/endpoints/session.js +5 -4
- package/core/server/api/endpoints/settings-public.js +4 -1
- package/core/server/api/endpoints/settings.js +4 -1
- package/core/server/api/endpoints/site.js +3 -2
- package/core/server/api/endpoints/slack.js +4 -1
- package/core/server/api/endpoints/slugs.js +4 -1
- package/core/server/api/endpoints/snippets.js +4 -1
- package/core/server/api/endpoints/stats.js +4 -1
- package/core/server/api/endpoints/tags-public.js +4 -1
- package/core/server/api/endpoints/tags.js +4 -1
- package/core/server/api/endpoints/themes.js +4 -1
- package/core/server/api/endpoints/tiers-public.js +4 -1
- package/core/server/api/endpoints/tiers.js +4 -1
- package/core/server/api/endpoints/users.js +4 -1
- package/core/server/api/endpoints/utils/index.js +9 -1
- package/core/server/api/endpoints/utils/permissions.js +2 -2
- package/core/server/api/endpoints/utils/serializers/input/pages.js +31 -3
- package/core/server/api/endpoints/utils/serializers/input/posts.js +30 -2
- package/core/server/api/endpoints/utils/serializers/input/utils/url.js +2 -2
- package/core/server/api/endpoints/utils/serializers/output/mappers/activity-feed-events.js +1 -1
- package/core/server/api/endpoints/utils/serializers/output/members.js +5 -10
- package/core/server/api/endpoints/utils/serializers/output/settings.js +4 -2
- package/core/server/api/endpoints/utils/serializers/output/tiers.js +3 -6
- package/core/server/api/endpoints/utils/validators/input/password_reset.js +1 -1
- package/core/server/api/endpoints/utils/validators/utils/json-schema.js +1 -2
- package/core/server/api/endpoints/webhooks.js +4 -1
- package/core/server/data/importer/import-manager.js +8 -0
- package/core/server/services/comments/CommentsController.js +1 -1
- package/core/server/services/url/UrlService.js +2 -4
- package/core/server/web/admin/app.js +5 -1
- package/core/server/web/admin/controller.js +6 -7
- package/core/server/web/admin/middleware/redirect-admin-urls.js +6 -0
- package/core/server/web/announcement/routes.js +3 -0
- package/core/server/web/api/app.js +3 -0
- package/core/server/web/api/endpoints/admin/app.js +4 -1
- package/core/server/web/api/endpoints/admin/middleware.js +14 -1
- package/core/server/web/api/endpoints/admin/routes.js +3 -0
- package/core/server/web/api/endpoints/content/app.js +3 -0
- package/core/server/web/api/endpoints/content/middleware.js +2 -0
- package/core/server/web/api/endpoints/content/routes.js +3 -0
- package/core/server/web/api/middleware/upload.js +26 -2
- package/core/server/web/comments/routes.js +3 -0
- package/core/server/web/members/app.js +15 -4
- package/core/server/web/parent/app.js +3 -0
- package/core/server/web/parent/backend.js +1 -1
- package/core/server/web/parent/frontend.js +1 -1
- package/core/server/web/parent/middleware/emit-events.js +5 -0
- package/core/server/web/parent/middleware/ghost-locals.js +7 -2
- package/core/server/web/parent/middleware/log-request.js +4 -0
- package/core/server/web/parent/middleware/queue-request.js +6 -1
- package/core/server/web/parent/middleware/request-id.js +4 -0
- package/core/server/web/webmentions/routes.js +3 -0
- package/core/shared/express.js +5 -0
- package/core/shared/labs.js +1 -1
- package/core/shared/sentry.js +30 -24
- package/package.json +152 -152
- package/yarn.lock +612 -574
- package/components/tryghost-adapter-cache-memory-ttl-5.82.8.tgz +0 -0
- package/components/tryghost-adapter-cache-redis-5.82.8.tgz +0 -0
- package/components/tryghost-adapter-manager-5.82.8.tgz +0 -0
- package/components/tryghost-announcement-bar-settings-5.82.8.tgz +0 -0
- package/components/tryghost-api-framework-5.82.8.tgz +0 -0
- package/components/tryghost-api-version-compatibility-service-5.82.8.tgz +0 -0
- package/components/tryghost-audience-feedback-5.82.8.tgz +0 -0
- package/components/tryghost-bookshelf-repository-5.82.8.tgz +0 -0
- package/components/tryghost-bootstrap-socket-5.82.8.tgz +0 -0
- package/components/tryghost-constants-5.82.8.tgz +0 -0
- package/components/tryghost-data-generator-5.82.8.tgz +0 -0
- package/components/tryghost-domain-events-5.82.8.tgz +0 -0
- package/components/tryghost-donations-5.82.8.tgz +0 -0
- package/components/tryghost-dynamic-routing-events-5.82.8.tgz +0 -0
- package/components/tryghost-email-analytics-provider-mailgun-5.82.8.tgz +0 -0
- package/components/tryghost-email-analytics-service-5.82.8.tgz +0 -0
- package/components/tryghost-email-content-generator-5.82.8.tgz +0 -0
- package/components/tryghost-email-events-5.82.8.tgz +0 -0
- package/components/tryghost-email-suppression-list-5.82.8.tgz +0 -0
- package/components/tryghost-express-dynamic-redirects-5.82.8.tgz +0 -0
- package/components/tryghost-external-media-inliner-5.82.8.tgz +0 -0
- package/components/tryghost-extract-api-key-5.82.8.tgz +0 -0
- package/components/tryghost-ghost-5.82.8.tgz +0 -0
- package/components/tryghost-html-to-plaintext-5.82.8.tgz +0 -0
- package/components/tryghost-i18n-5.82.8.tgz +0 -0
- package/components/tryghost-importer-handler-content-files-5.82.8.tgz +0 -0
- package/components/tryghost-importer-revue-5.82.8.tgz +0 -0
- package/components/tryghost-in-memory-repository-5.82.8.tgz +0 -0
- package/components/tryghost-job-manager-5.82.8.tgz +0 -0
- package/components/tryghost-link-redirects-5.82.8.tgz +0 -0
- package/components/tryghost-link-replacer-5.82.8.tgz +0 -0
- package/components/tryghost-magic-link-5.82.8.tgz +0 -0
- package/components/tryghost-mail-events-5.82.8.tgz +0 -0
- package/components/tryghost-mailgun-client-5.82.8.tgz +0 -0
- package/components/tryghost-member-attribution-5.82.8.tgz +0 -0
- package/components/tryghost-member-events-5.82.8.tgz +0 -0
- package/components/tryghost-members-csv-5.82.8.tgz +0 -0
- package/components/tryghost-members-events-service-5.82.8.tgz +0 -0
- package/components/tryghost-members-importer-5.82.8.tgz +0 -0
- package/components/tryghost-members-offers-5.82.8.tgz +0 -0
- package/components/tryghost-members-payments-5.82.8.tgz +0 -0
- package/components/tryghost-members-ssr-5.82.8.tgz +0 -0
- package/components/tryghost-mentions-email-report-5.82.8.tgz +0 -0
- package/components/tryghost-milestones-5.82.8.tgz +0 -0
- package/components/tryghost-model-to-domain-event-interceptor-5.82.8.tgz +0 -0
- package/components/tryghost-mw-api-version-mismatch-5.82.8.tgz +0 -0
- package/components/tryghost-mw-cache-control-5.82.8.tgz +0 -0
- package/components/tryghost-mw-error-handler-5.82.8.tgz +0 -0
- package/components/tryghost-mw-session-from-token-5.82.8.tgz +0 -0
- package/components/tryghost-mw-update-user-last-seen-5.82.8.tgz +0 -0
- package/components/tryghost-mw-vhost-5.82.8.tgz +0 -0
- package/components/tryghost-nql-filter-expansions-5.82.8.tgz +0 -0
- package/components/tryghost-oembed-service-5.82.8.tgz +0 -0
- package/components/tryghost-package-json-5.82.8.tgz +0 -0
- package/components/tryghost-post-events-5.82.8.tgz +0 -0
- package/components/tryghost-post-revisions-5.82.8.tgz +0 -0
- package/components/tryghost-posts-service-5.82.8.tgz +0 -0
- package/components/tryghost-recommendations-5.82.8.tgz +0 -0
- package/components/tryghost-referrers-5.82.8.tgz +0 -0
- package/components/tryghost-security-5.82.8.tgz +0 -0
- package/components/tryghost-session-service-5.82.8.tgz +0 -0
- package/components/tryghost-settings-path-manager-5.82.8.tgz +0 -0
- package/components/tryghost-slack-notifications-5.82.8.tgz +0 -0
- package/components/tryghost-stats-service-5.82.8.tgz +0 -0
- package/components/tryghost-tiers-5.82.8.tgz +0 -0
- package/components/tryghost-verification-trigger-5.82.8.tgz +0 -0
- package/components/tryghost-version-notifications-data-service-5.82.8.tgz +0 -0
- package/components/tryghost-webmentions-5.82.8.tgz +0 -0
- /package/core/built/admin/assets/{chunk.799.5012e659e3d64d043636.js.LICENSE.txt → chunk.799.5bcf6feef26f9fe94f0a.js.LICENSE.txt} +0 -0
|
@@ -7011,7 +7011,7 @@ const s=function(){const e=n.GLOBAL_OBJ
|
|
|
7011
7011
|
return e.__sentryEmberConfig=e.__sentryEmberConfig??{},e.__sentryEmberConfig}()
|
|
7012
7012
|
Object.assign(s,i),o.init(i)}Object.keys(t).forEach((function(r){"default"!==r&&"__esModule"!==r&&(Object.prototype.hasOwnProperty.call(i,r)||r in e&&e[r]===t[r]||Object.defineProperty(e,r,{enumerable:!0,get:function(){return t[r]}}))}))
|
|
7013
7013
|
e.getActiveTransaction=()=>o.getCurrentScope().getTransaction()
|
|
7014
|
-
e.instrumentRoutePerformance=e=>{const n=async(e,n,i,o)=>(0,t.startSpan)({attributes:{[r.SEMANTIC_ATTRIBUTE_SENTRY_SOURCE]:"ember"},op:e,name:n},(()=>i(...o))),i=e.name
|
|
7014
|
+
e.instrumentRoutePerformance=e=>{const n=async(e,n,i,o)=>(0,t.startSpan)({attributes:{[r.SEMANTIC_ATTRIBUTE_SENTRY_SOURCE]:"custom",[r.SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN]:"auto.ui.ember"},op:e,name:n,onlyIfParent:!0},(()=>i(...o))),i=e.name
|
|
7015
7015
|
return{[i]:class extends e{beforeModel(...e){return n("ui.ember.route.before_model",this.fullRouteName,super.beforeModel.bind(this),e)}async model(...e){return n("ui.ember.route.model",this.fullRouteName,super.model.bind(this),e)}afterModel(...e){return n("ui.ember.route.after_model",this.fullRouteName,super.afterModel.bind(this),e)}setupController(...e){return n("ui.ember.route.setup_controller",this.fullRouteName,super.setupController.bind(this),e)}}}[i]}
|
|
7016
7016
|
e.InitSentryForEmber=s})),define("@sentry/ember/instance-initializers/sentry-performance",["exports","@sentry/browser","@sentry/utils"],(function(e,t,r){"use strict"
|
|
7017
7017
|
function n(){const e=r.GLOBAL_OBJ
|
|
@@ -7022,15 +7022,15 @@ if(t?.isFastBoot)return
|
|
|
7022
7022
|
if(n().disablePerformance)return
|
|
7023
7023
|
c(e)}function o(){return Ember.run.backburner||Ember.run.backburner?Ember.run.backburner:{on(){},off(){}}}function s(e,r,n,i,s){const{disableRunloopPerformance:a}=n,l=r.location
|
|
7024
7024
|
let u,c
|
|
7025
|
-
const
|
|
7025
|
+
const h=n.browserTracingOptions||n.sentry.browserTracingOptions||{},p=function(e){if(!e||!e.getURL||!e.formatURL)return""
|
|
7026
7026
|
const t=e.formatURL(e.getURL())
|
|
7027
|
-
return"hash"===e.implementation?`${e.rootURL}${t}`:t}(l),
|
|
7028
|
-
if(!
|
|
7029
|
-
if(
|
|
7030
|
-
u=i(
|
|
7031
|
-
!1===
|
|
7027
|
+
return"hash"===e.implementation?`${e.rootURL}${t}`:t}(l),f=(0,t.getClient)()
|
|
7028
|
+
if(!f)return
|
|
7029
|
+
if(p&&!1!==h.startTransactionOnPageLoad&&!1!==h.instrumentPageLoad){const r=e.recognize(p)
|
|
7030
|
+
u=i(f,{name:`route:${r.name}`,origin:"auto.pageload.ember",attributes:{[t.SEMANTIC_ATTRIBUTE_SENTRY_SOURCE]:"route"},tags:{url:p,toRoute:r.name,"routing.instrumentation":"@sentry/ember"}})}const m=(e,t)=>{t||(u?.end(),o().off("end",m))}
|
|
7031
|
+
!1===h.startTransactionOnLocationChange&&!1===h.instrumentNavigation||(e.on("routeWillChange",(r=>{const{fromRoute:n,toRoute:i}=function(e,t){const r=e?.from?.name
|
|
7032
7032
|
return{fromRoute:r,toRoute:e?.to?.name||t.currentRouteName}}(r,e)
|
|
7033
|
-
u?.end(),u=s(
|
|
7033
|
+
d(r)||(u?.end(),u=s(f,{name:`route:${i}`,origin:"auto.navigation.ember",attributes:{[t.SEMANTIC_ATTRIBUTE_SENTRY_SOURCE]:"route"},tags:{fromRoute:n,toRoute:i,"routing.instrumentation":"@sentry/ember"}}),c=(0,t.startInactiveSpan)({attributes:{[t.SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN]:"auto.ui.ember"},op:"ui.ember.transition",name:`route:${n} -> route:${i}`,onlyIfParent:!0}))})),e.on("routeDidChange",(e=>{c&&u&&!d(e)&&(c.end(),a?u.end():o().on("end",m))})))}function a(e,t){const n={payload:e,now:(0,r.timestampInSeconds)()}
|
|
7034
7034
|
t[e.object]=n}function l(e,n,i,o){const s=n[e.object]
|
|
7035
7035
|
if(!s)return
|
|
7036
7036
|
const a=(0,r.timestampInSeconds)()
|
|
@@ -7062,7 +7062,9 @@ l.forEach((e=>{Ember.run.scheduleOnce(e,null,o,e)}))})),o().on("end",((e,t)=>{t|
|
|
|
7062
7062
|
if(t)return
|
|
7063
7063
|
const i=r??2,o={},s={}
|
|
7064
7064
|
Ember.Instrumentation.subscribe("render.component",{before(e,t,r){a(r,o)},after(e,t,r,n){l(r,o,"ui.ember.component.render",i)}}),n&&Ember.Instrumentation.subscribe("render.getComponentDefinition",{before(e,t,r){a(r,s)},after(e,t,r,n){l(r,s,"ui.ember.component.definition",0)}})}(i),u(i)}Object.defineProperty(e,"__esModule",{value:!0}),e._instrumentEmberRouter=s,e.default=void 0,e.initialize=i,e.instrumentForPerformance=c
|
|
7065
|
-
e.default={initialize:i}
|
|
7065
|
+
e.default={initialize:i}
|
|
7066
|
+
function d(e){const t=e.isIntermediate
|
|
7067
|
+
return"boolean"==typeof t?t:"loading"===e.to?.localName||"error"===e.to?.localName}})),define("@sentry/ember/types",["exports"],(function(e){"use strict"
|
|
7066
7068
|
Object.defineProperty(e,"__esModule",{value:!0})})),define("@tryghost/ember-promise-modals/components/modal-container",["exports","@tryghost/ember-promise-modals/templates/components/modal-container"],(function(e,t){"use strict"
|
|
7067
7069
|
Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
|
|
7068
7070
|
e.default=Ember.Component.extend({layout:t.default,tagName:"",modals:Ember.inject.service()})})),define("@tryghost/ember-promise-modals/components/modal",["exports","focus-trap","@tryghost/ember-promise-modals/templates/components/modal"],(function(e,t,r){"use strict"
|
|
@@ -9176,7 +9178,7 @@ e.default={content:'<defs><style>.labs_svg__a{fill:none;stroke:currentColor;stro
|
|
|
9176
9178
|
Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
|
|
9177
9179
|
e.default={content:'<path stroke="currentColor" d="M14.5 12.5l.086.086a2 2 0 002.828 0l3.965-3.964a3.01 3.01 0 000-4.243l-1.758-1.757a3.008 3.008 0 00-4.242 0l-3.965 3.964a2 2 0 000 2.829l.086.085m-2 2l-.086-.085a2 2 0 00-2.828 0l-3.965 3.964a3.01 3.01 0 000 4.243l1.758 1.757a3.008 3.008 0 004.242 0l3.965-3.964a2 2 0 000-2.829L12.5 14.5m-4.389 1.389l7.778-7.778" fill="none"/>',attrs:{viewBox:"0 0 24 24"}}})),define("ember-svg-jar/inlined/lock-filled",["exports"],(function(e){"use strict"
|
|
9178
9180
|
Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
|
|
9179
|
-
e.default={content:'<path d="M19.5 9.5h-.75V6.75a6.75 6.75 0 00-13.5 0V9.5H4.5a2 2 0 00-2 2V22a2 2 0 002 2h15a2 2 0 002-2V11.5a2 2 0 00-2-2zm-7.5 9a2 2 0 112-2 2 2 0 01-2 2zM16.25 9a.5.5 0 01-.5.5h-7.5a.5.5 0 01-.5-.5V6.75a4.25 4.25 0 018.5 0z"/>',attrs:{viewBox:"0 0 24 24"}}})),define("ember-svg-jar/inlined/lock",["exports"],(function(e){"use strict"
|
|
9181
|
+
e.default={content:'<path d="M19.5 9.5h-.75V6.75a6.75 6.75 0 00-13.5 0V9.5H4.5a2 2 0 00-2 2V22a2 2 0 002 2h15a2 2 0 002-2V11.5a2 2 0 00-2-2zm-7.5 9a2 2 0 112-2 2 2 0 01-2 2zM16.25 9a.5.5 0 01-.5.5h-7.5a.5.5 0 01-.5-.5V6.75a4.25 4.25 0 018.5 0z" fill="currentColor"/>',attrs:{viewBox:"0 0 24 24"}}})),define("ember-svg-jar/inlined/lock",["exports"],(function(e){"use strict"
|
|
9180
9182
|
Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
|
|
9181
9183
|
e.default={content:'<rect width="16.5" height="13.5" x="3.75" y="9.75" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" rx="1.5" ry="1.5"/><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" d="M6.75 9.75V6a5.25 5.25 0 0110.5 0v3.75M12 15v3"/>',attrs:{"stroke-width":"1.5",viewBox:"0 0 24 24"}}})),define("ember-svg-jar/inlined/megaphone",["exports"],(function(e){"use strict"
|
|
9182
9184
|
Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
|
|
@@ -9924,4 +9926,4 @@ e.default=class{constructor(e){if(this._data=new t.default,e)for(let t=0;t<e.len
|
|
|
9924
9926
|
return this}get(e){let t=this._data[e]
|
|
9925
9927
|
return t===r.UNDEFINED_KEY?void 0:t}set(e,t){return this._data[e]=t,this}delete(e){return this._data[e]=r.UNDEFINED_KEY,!0}}}))
|
|
9926
9928
|
|
|
9927
|
-
//# sourceMappingURL=vendor-
|
|
9929
|
+
//# sourceMappingURL=vendor-184a0eb190eeca86128313ada2ad7e97.map
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
<title>Ghost Admin</title>
|
|
9
9
|
|
|
10
10
|
|
|
11
|
-
<meta name="ghost-admin/config/environment" content="%7B%22modulePrefix%22%3A%22ghost-admin%22%2C%22environment%22%3A%22production%22%2C%22cdnUrl%22%3A%22%22%2C%22editorUrl%22%3A%22%22%2C%22rootURL%22%3A%22%22%2C%22locationType%22%3A%22trailing-hash%22%2C%22EmberENV%22%3A%7B%22FEATURES%22%3A%7B%7D%2C%22EXTEND_PROTOTYPES%22%3A%7B%22Date%22%3Afalse%2C%22Array%22%3Atrue%2C%22String%22%3Atrue%2C%22Function%22%3Afalse%7D%2C%22_APPLICATION_TEMPLATE_WRAPPER%22%3Afalse%2C%22_JQUERY_INTEGRATION%22%3Atrue%2C%22_TEMPLATE_ONLY_GLIMMER_COMPONENTS%22%3Atrue%7D%2C%22APP%22%3A%7B%22version%22%3A%225.82%22%2C%22name%22%3A%22ghost-admin%22%7D%2C%22ember-simple-auth%22%3A%7B%7D%2C%22ember-websockets%22%3A%7B%22socketIO%22%3Atrue%7D%2C%22%40sentry%2Fember%22%3A%7B%22disablePerformance%22%3Atrue%2C%22sentry%22%3A%7B%7D%7D%2C%22ember-cli-mirage%22%3A%7B%22usingProxy%22%3Afalse%2C%22useDefaultPassthroughs%22%3Atrue%7D%2C%22exportApplicationGlobal%22%3Afalse%2C%22ember-load%22%3A%7B%22loadingIndicatorClass%22%3A%22ember-load-indicator%22%7D%2C%22editorFilename%22%3A%22koenig-lexical.umd.js%22%2C%22editorHash%22%3A%
|
|
11
|
+
<meta name="ghost-admin/config/environment" content="%7B%22modulePrefix%22%3A%22ghost-admin%22%2C%22environment%22%3A%22production%22%2C%22cdnUrl%22%3A%22%22%2C%22editorUrl%22%3A%22%22%2C%22rootURL%22%3A%22%22%2C%22locationType%22%3A%22trailing-hash%22%2C%22EmberENV%22%3A%7B%22FEATURES%22%3A%7B%7D%2C%22EXTEND_PROTOTYPES%22%3A%7B%22Date%22%3Afalse%2C%22Array%22%3Atrue%2C%22String%22%3Atrue%2C%22Function%22%3Afalse%7D%2C%22_APPLICATION_TEMPLATE_WRAPPER%22%3Afalse%2C%22_JQUERY_INTEGRATION%22%3Atrue%2C%22_TEMPLATE_ONLY_GLIMMER_COMPONENTS%22%3Atrue%7D%2C%22APP%22%3A%7B%22version%22%3A%225.82%22%2C%22name%22%3A%22ghost-admin%22%7D%2C%22ember-simple-auth%22%3A%7B%7D%2C%22ember-websockets%22%3A%7B%22socketIO%22%3Atrue%7D%2C%22%40sentry%2Fember%22%3A%7B%22disablePerformance%22%3Atrue%2C%22sentry%22%3A%7B%7D%7D%2C%22ember-cli-mirage%22%3A%7B%22usingProxy%22%3Afalse%2C%22useDefaultPassthroughs%22%3Atrue%7D%2C%22exportApplicationGlobal%22%3Afalse%2C%22ember-load%22%3A%7B%22loadingIndicatorClass%22%3A%22ember-load-indicator%22%7D%2C%22editorFilename%22%3A%22koenig-lexical.umd.js%22%2C%22editorHash%22%3A%22de6c86d49f%22%2C%22adminXDemoFilename%22%3A%22admin-x-demo.js%22%2C%22adminXDemoHash%22%3A%22e3e5407d53%22%2C%22adminXSettingsFilename%22%3A%22admin-x-settings.js%22%2C%22adminXSettingsHash%22%3A%223b683fe57d%22%2C%22adminXActivitypubFilename%22%3A%22admin-x-activitypub.js%22%2C%22adminXActivitypubHash%22%3A%2298cba57561%22%7D" />
|
|
12
12
|
|
|
13
13
|
<meta name="HandheldFriendly" content="True" />
|
|
14
14
|
<meta name="MobileOptimized" content="320" />
|
|
@@ -56,9 +56,9 @@
|
|
|
56
56
|
|
|
57
57
|
<div id="ember-basic-dropdown-wormhole"></div>
|
|
58
58
|
|
|
59
|
-
<script src="assets/vendor-
|
|
60
|
-
<script src="assets/chunk.799.
|
|
61
|
-
<script src="assets/chunk.524.
|
|
62
|
-
<script src="assets/ghost-
|
|
59
|
+
<script src="assets/vendor-96853bcc300bd0b0cda2913c8edb0d14.js"></script>
|
|
60
|
+
<script src="assets/chunk.799.5bcf6feef26f9fe94f0a.js"></script>
|
|
61
|
+
<script src="assets/chunk.524.cad7f24c33927f31923c.js"></script>
|
|
62
|
+
<script src="assets/ghost-377ce682ddf6e53f0ccb91aeae235f29.js"></script>
|
|
63
63
|
</body>
|
|
64
64
|
</html>
|
|
@@ -5,7 +5,7 @@ const settingsCache = require('../../shared/settings-cache');
|
|
|
5
5
|
|
|
6
6
|
function getOgImage(data) {
|
|
7
7
|
const context = data.context ? data.context : null;
|
|
8
|
-
const contextObject = getContextObject(data, context
|
|
8
|
+
const contextObject = getContextObject(data, context);
|
|
9
9
|
|
|
10
10
|
if (_.includes(context, 'home')) {
|
|
11
11
|
const imgUrl = settingsCache.get('og_image') || settingsCache.get('cover_image');
|
|
@@ -5,7 +5,7 @@ const settingsCache = require('../../shared/settings-cache');
|
|
|
5
5
|
|
|
6
6
|
function getTwitterImage(data) {
|
|
7
7
|
const context = data.context ? data.context : null;
|
|
8
|
-
const contextObject = getContextObject(data, context
|
|
8
|
+
const contextObject = getContextObject(data, context);
|
|
9
9
|
|
|
10
10
|
if (_.includes(context, 'home')) {
|
|
11
11
|
const imgUrl = settingsCache.get('twitter_image') || settingsCache.get('cover_image');
|
|
@@ -56,7 +56,7 @@ class ParentRouter {
|
|
|
56
56
|
/**
|
|
57
57
|
* @description Helper function to find the site router in the express router stack.
|
|
58
58
|
* @param {Object} req
|
|
59
|
-
* @returns {
|
|
59
|
+
* @returns {import('express').Router}
|
|
60
60
|
* @private
|
|
61
61
|
*/
|
|
62
62
|
_getSiteRouter(req) {
|
|
@@ -116,8 +116,8 @@ class ParentRouter {
|
|
|
116
116
|
|
|
117
117
|
/**
|
|
118
118
|
* @description Mount a router on a router (sub-routing)
|
|
119
|
-
* @param {String} path
|
|
120
|
-
* @param {
|
|
119
|
+
* @param {String | import('express').Router} path
|
|
120
|
+
* @param {import('express').Router} [router]
|
|
121
121
|
*/
|
|
122
122
|
mountRouter(path, router) {
|
|
123
123
|
if (arguments.length === 1) {
|
|
@@ -34,7 +34,7 @@ const errorFallbackMessage = err => `<h1>${tpl(messages.oopsErrorTemplateHasErro
|
|
|
34
34
|
<br ><p>${tpl(messages.whilstTryingToRender)}</p>
|
|
35
35
|
${err.statusCode} <pre>${escapeExpression(err.message || err)}</pre>`;
|
|
36
36
|
|
|
37
|
-
const themeErrorRenderer = (err, req, res, next)
|
|
37
|
+
const themeErrorRenderer = function themeErrorRenderer(err, req, res, next) {
|
|
38
38
|
// If the error code is explicitly set to STATIC_FILE_NOT_FOUND,
|
|
39
39
|
// Skip trying to render an HTML error, and move on to the basic error renderer
|
|
40
40
|
// We do this because customised 404 templates could reference the image that's missing
|
|
@@ -50,7 +50,7 @@ module.exports = function setupSiteApp(routerConfig) {
|
|
|
50
50
|
// enable CORS headers (allows admin client to hit front-end when configured on separate URLs)
|
|
51
51
|
siteApp.use(mw.cors);
|
|
52
52
|
|
|
53
|
-
siteApp.use(async (req, res, next)
|
|
53
|
+
siteApp.use(async function nestApp(req, res, next) {
|
|
54
54
|
if (labs.isSet('NestPlayground') || labs.isSet('ActivityPub')) {
|
|
55
55
|
const originalExpressApp = req.app;
|
|
56
56
|
const app = await GhostNestApp.getApp();
|
|
@@ -112,7 +112,9 @@ module.exports = function setupSiteApp(routerConfig) {
|
|
|
112
112
|
siteApp.use(
|
|
113
113
|
'/members/.well-known',
|
|
114
114
|
shared.middleware.cacheControl('public', {maxAge: config.get('caching:wellKnown:maxAge')}),
|
|
115
|
-
(req, res, next)
|
|
115
|
+
function lazyWellKnownMw(req, res, next) {
|
|
116
|
+
return membersService.api.middleware.wellKnown(req, res, next);
|
|
117
|
+
}
|
|
116
118
|
);
|
|
117
119
|
|
|
118
120
|
// Recommendations well-known
|
|
@@ -67,7 +67,7 @@ class GhostServer {
|
|
|
67
67
|
* Starts the ghost server listening on the configured port.
|
|
68
68
|
* Requires an express app to be passed in
|
|
69
69
|
*
|
|
70
|
-
* @param {
|
|
70
|
+
* @param {import('express').Application} rootApp - Required express app instance.
|
|
71
71
|
* @return {Promise} Resolves once Ghost has started
|
|
72
72
|
*/
|
|
73
73
|
start(rootApp) {
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
const models = require('../../models');
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
/** @type {import('@tryghost/api-framework').Controller} */
|
|
4
|
+
const controller = {
|
|
4
5
|
docName: 'actions',
|
|
5
6
|
|
|
6
7
|
browse: {
|
|
@@ -20,3 +21,5 @@ module.exports = {
|
|
|
20
21
|
}
|
|
21
22
|
}
|
|
22
23
|
};
|
|
24
|
+
|
|
25
|
+
module.exports = controller;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
const announcementBarSettings = require('../../services/announcement-bar-service');
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
/** @type {import('@tryghost/api-framework').Controller} */
|
|
4
|
+
const controller = {
|
|
4
5
|
docName: 'announcement',
|
|
5
6
|
|
|
6
7
|
browse: {
|
|
@@ -13,3 +14,5 @@ module.exports = {
|
|
|
13
14
|
}
|
|
14
15
|
}
|
|
15
16
|
};
|
|
17
|
+
|
|
18
|
+
module.exports = controller;
|
|
@@ -18,7 +18,8 @@ const messages = {
|
|
|
18
18
|
notTheBlogOwner: 'You are not the site owner.'
|
|
19
19
|
};
|
|
20
20
|
|
|
21
|
-
|
|
21
|
+
/** @type {import('@tryghost/api-framework').Controller} */
|
|
22
|
+
const controller = {
|
|
22
23
|
docName: 'authentication',
|
|
23
24
|
|
|
24
25
|
setup: {
|
|
@@ -250,3 +251,5 @@ module.exports = {
|
|
|
250
251
|
}
|
|
251
252
|
}
|
|
252
253
|
};
|
|
254
|
+
|
|
255
|
+
module.exports = controller;
|
|
@@ -19,7 +19,8 @@ const rejectPrivateFieldsTransformer = input => mapQuery(input, function (value,
|
|
|
19
19
|
};
|
|
20
20
|
});
|
|
21
21
|
|
|
22
|
-
|
|
22
|
+
/** @type {import('@tryghost/api-framework').Controller} */
|
|
23
|
+
const controller = {
|
|
23
24
|
docName: 'authors',
|
|
24
25
|
|
|
25
26
|
browse: {
|
|
@@ -92,3 +93,5 @@ module.exports = {
|
|
|
92
93
|
}
|
|
93
94
|
}
|
|
94
95
|
};
|
|
96
|
+
|
|
97
|
+
module.exports = controller;
|
|
@@ -6,7 +6,8 @@ const messages = {
|
|
|
6
6
|
collectionNotFound: 'Collection not found.'
|
|
7
7
|
};
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
/** @type {import('@tryghost/api-framework').Controller} */
|
|
10
|
+
const controller = {
|
|
10
11
|
docName: 'collections',
|
|
11
12
|
|
|
12
13
|
readBySlug: {
|
|
@@ -51,3 +52,5 @@ module.exports = {
|
|
|
51
52
|
}
|
|
52
53
|
}
|
|
53
54
|
};
|
|
55
|
+
|
|
56
|
+
module.exports = controller;
|
|
@@ -6,7 +6,8 @@ const messages = {
|
|
|
6
6
|
collectionNotFound: 'Collection not found.'
|
|
7
7
|
};
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
/** @type {import('@tryghost/api-framework').Controller} */
|
|
10
|
+
const controller = {
|
|
10
11
|
docName: 'collections',
|
|
11
12
|
|
|
12
13
|
browse: {
|
|
@@ -136,3 +137,5 @@ module.exports = {
|
|
|
136
137
|
}
|
|
137
138
|
}
|
|
138
139
|
};
|
|
140
|
+
|
|
141
|
+
module.exports = controller;
|
|
@@ -2,7 +2,8 @@ const commentsService = require('../../services/comments');
|
|
|
2
2
|
const ALLOWED_INCLUDES = ['member', 'replies', 'replies.member', 'replies.count.likes', 'replies.liked', 'count.replies', 'count.likes', 'liked', 'post', 'parent'];
|
|
3
3
|
const UNSAFE_ATTRS = ['status'];
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
/** @type {import('@tryghost/api-framework').Controller} */
|
|
6
|
+
const controller = {
|
|
6
7
|
docName: 'comments',
|
|
7
8
|
|
|
8
9
|
browse: {
|
|
@@ -143,8 +144,8 @@ module.exports = {
|
|
|
143
144
|
}
|
|
144
145
|
},
|
|
145
146
|
permissions: true,
|
|
146
|
-
query(
|
|
147
|
-
return commentsService.controller.destroy(
|
|
147
|
+
query() {
|
|
148
|
+
return commentsService.controller.destroy();
|
|
148
149
|
}
|
|
149
150
|
},
|
|
150
151
|
|
|
@@ -207,3 +208,5 @@ module.exports = {
|
|
|
207
208
|
}
|
|
208
209
|
}
|
|
209
210
|
};
|
|
211
|
+
|
|
212
|
+
module.exports = controller;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
const models = require('../../models');
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
/** @type {import('@tryghost/api-framework').Controller} */
|
|
4
|
+
const controller = {
|
|
4
5
|
docName: 'comments',
|
|
5
6
|
|
|
6
7
|
edit: {
|
|
@@ -26,3 +27,5 @@ module.exports = {
|
|
|
26
27
|
}
|
|
27
28
|
}
|
|
28
29
|
};
|
|
30
|
+
|
|
31
|
+
module.exports = controller;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
const publicConfig = require('../../services/public-config');
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
/** @type {import('@tryghost/api-framework').Controller} */
|
|
4
|
+
const controller = {
|
|
4
5
|
docName: 'config',
|
|
5
6
|
|
|
6
7
|
read: {
|
|
@@ -13,3 +14,5 @@ module.exports = {
|
|
|
13
14
|
}
|
|
14
15
|
}
|
|
15
16
|
};
|
|
17
|
+
|
|
18
|
+
module.exports = controller;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
const customThemeSettingsService = require('../../services/custom-theme-settings');
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
/** @type {import('@tryghost/api-framework').Controller} */
|
|
4
|
+
const controller = {
|
|
4
5
|
docName: 'custom_theme_settings',
|
|
5
6
|
|
|
6
7
|
browse: {
|
|
@@ -23,3 +24,5 @@ module.exports = {
|
|
|
23
24
|
}
|
|
24
25
|
}
|
|
25
26
|
};
|
|
27
|
+
|
|
28
|
+
module.exports = controller;
|
|
@@ -8,7 +8,8 @@ const {pool} = require('@tryghost/promise');
|
|
|
8
8
|
const models = require('../../models');
|
|
9
9
|
const settingsCache = require('../../../shared/settings-cache');
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
/** @type {import('@tryghost/api-framework').Controller} */
|
|
12
|
+
const controller = {
|
|
12
13
|
docName: 'db',
|
|
13
14
|
|
|
14
15
|
backupContent: {
|
|
@@ -173,3 +174,5 @@ module.exports = {
|
|
|
173
174
|
}
|
|
174
175
|
}
|
|
175
176
|
};
|
|
177
|
+
|
|
178
|
+
module.exports = controller;
|
|
@@ -7,7 +7,8 @@ const messages = {
|
|
|
7
7
|
postNotFound: 'Post not found.'
|
|
8
8
|
};
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
/** @type {import('@tryghost/api-framework').Controller} */
|
|
11
|
+
const controller = {
|
|
11
12
|
docName: 'email_post',
|
|
12
13
|
|
|
13
14
|
read: {
|
|
@@ -46,3 +47,5 @@ module.exports = {
|
|
|
46
47
|
}
|
|
47
48
|
}
|
|
48
49
|
};
|
|
50
|
+
|
|
51
|
+
module.exports = controller;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
const emailService = require('../../services/email-service');
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
/** @type {import('@tryghost/api-framework').Controller} */
|
|
4
|
+
const controller = {
|
|
4
5
|
docName: 'email_previews',
|
|
5
6
|
|
|
6
7
|
read: {
|
|
@@ -47,3 +48,5 @@ module.exports = {
|
|
|
47
48
|
}
|
|
48
49
|
}
|
|
49
50
|
};
|
|
51
|
+
|
|
52
|
+
module.exports = controller;
|
|
@@ -12,7 +12,8 @@ const messages = {
|
|
|
12
12
|
const allowedBatchIncludes = ['count.recipients'];
|
|
13
13
|
const allowedFailureIncludes = ['member', 'email_recipient'];
|
|
14
14
|
|
|
15
|
-
|
|
15
|
+
/** @type {import('@tryghost/api-framework').Controller} */
|
|
16
|
+
const controller = {
|
|
16
17
|
docName: 'emails',
|
|
17
18
|
|
|
18
19
|
browse: {
|
|
@@ -180,3 +181,5 @@ module.exports = {
|
|
|
180
181
|
}
|
|
181
182
|
}
|
|
182
183
|
};
|
|
184
|
+
|
|
185
|
+
module.exports = controller;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
const exploreService = require('../../services/explore');
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
/** @type {import('@tryghost/api-framework').Controller} */
|
|
4
|
+
const controller = {
|
|
4
5
|
docName: 'explore',
|
|
5
6
|
|
|
6
7
|
read: {
|
|
@@ -13,3 +14,5 @@ module.exports = {
|
|
|
13
14
|
}
|
|
14
15
|
}
|
|
15
16
|
};
|
|
17
|
+
|
|
18
|
+
module.exports = controller;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
const feedbackService = require('../../services/audience-feedback');
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
/** @type {import('@tryghost/api-framework').Controller} */
|
|
4
|
+
const controller = {
|
|
4
5
|
docName: 'feedback',
|
|
5
6
|
|
|
6
7
|
add: {
|
|
@@ -24,3 +25,5 @@ module.exports = {
|
|
|
24
25
|
}
|
|
25
26
|
}
|
|
26
27
|
};
|
|
28
|
+
|
|
29
|
+
module.exports = controller;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
const storage = require('../../adapters/storage');
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
/** @type {import('@tryghost/api-framework').Controller} */
|
|
4
|
+
const controller = {
|
|
4
5
|
docName: 'files',
|
|
5
6
|
upload: {
|
|
6
7
|
statusCode: 201,
|
|
@@ -20,3 +21,5 @@ module.exports = {
|
|
|
20
21
|
}
|
|
21
22
|
}
|
|
22
23
|
};
|
|
24
|
+
|
|
25
|
+
module.exports = controller;
|
|
@@ -23,7 +23,8 @@ const sign = async (claims, options) => {
|
|
|
23
23
|
}, options));
|
|
24
24
|
};
|
|
25
25
|
|
|
26
|
-
|
|
26
|
+
/** @type {import('@tryghost/api-framework').Controller} */
|
|
27
|
+
const controller = {
|
|
27
28
|
docName: 'identities',
|
|
28
29
|
read: {
|
|
29
30
|
headers: {
|
|
@@ -36,3 +37,5 @@ module.exports = {
|
|
|
36
37
|
}
|
|
37
38
|
}
|
|
38
39
|
};
|
|
40
|
+
|
|
41
|
+
module.exports = controller;
|
|
@@ -6,7 +6,8 @@ const imageTransform = require('@tryghost/image-transform');
|
|
|
6
6
|
const storage = require('../../adapters/storage');
|
|
7
7
|
const config = require('../../../shared/config');
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
/** @type {import('@tryghost/api-framework').Controller} */
|
|
10
|
+
const controller = {
|
|
10
11
|
docName: 'images',
|
|
11
12
|
upload: {
|
|
12
13
|
statusCode: 201,
|
|
@@ -80,3 +81,5 @@ module.exports = {
|
|
|
80
81
|
}
|
|
81
82
|
}
|
|
82
83
|
};
|
|
84
|
+
|
|
85
|
+
module.exports = controller;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
const recommendations = require('../../services/recommendations');
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
/** @type {import('@tryghost/api-framework').Controller} */
|
|
4
|
+
const controller = {
|
|
4
5
|
docName: 'recommendations',
|
|
5
6
|
|
|
6
7
|
browse: {
|
|
@@ -18,3 +19,5 @@ module.exports = {
|
|
|
18
19
|
}
|
|
19
20
|
}
|
|
20
21
|
};
|
|
22
|
+
|
|
23
|
+
module.exports = controller;
|
|
@@ -12,7 +12,8 @@ const integrationsService = getIntegrationsServiceInstance({
|
|
|
12
12
|
ApiKeyModel: models.ApiKey
|
|
13
13
|
});
|
|
14
14
|
|
|
15
|
-
|
|
15
|
+
/** @type {import('@tryghost/api-framework').Controller} */
|
|
16
|
+
const controller = {
|
|
16
17
|
docName: 'integrations',
|
|
17
18
|
browse: {
|
|
18
19
|
headers: {
|
|
@@ -163,3 +164,5 @@ module.exports = {
|
|
|
163
164
|
}
|
|
164
165
|
}
|
|
165
166
|
};
|
|
167
|
+
|
|
168
|
+
module.exports = controller;
|
|
@@ -10,7 +10,8 @@ const messages = {
|
|
|
10
10
|
inviteNotFound: 'Invite not found.'
|
|
11
11
|
};
|
|
12
12
|
|
|
13
|
-
|
|
13
|
+
/** @type {import('@tryghost/api-framework').Controller} */
|
|
14
|
+
const controller = {
|
|
14
15
|
docName: 'invites',
|
|
15
16
|
|
|
16
17
|
browse: {
|
|
@@ -127,3 +128,5 @@ module.exports = {
|
|
|
127
128
|
}
|
|
128
129
|
}
|
|
129
130
|
};
|
|
131
|
+
|
|
132
|
+
module.exports = controller;
|
|
@@ -9,7 +9,8 @@ const messages = {
|
|
|
9
9
|
|
|
10
10
|
const ALLOWED_INCLUDES = ['count.members'];
|
|
11
11
|
|
|
12
|
-
|
|
12
|
+
/** @type {import('@tryghost/api-framework').Controller} */
|
|
13
|
+
const controller = {
|
|
13
14
|
docName: 'labels',
|
|
14
15
|
|
|
15
16
|
browse: {
|
|
@@ -161,3 +162,5 @@ module.exports = {
|
|
|
161
162
|
}
|
|
162
163
|
}
|
|
163
164
|
};
|
|
165
|
+
|
|
166
|
+
module.exports = controller;
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
const linkTrackingService = require('../../services/link-tracking');
|
|
2
2
|
const INVALIDATE_ALL_REDIRECTS = '/r/*';
|
|
3
3
|
|
|
4
|
-
|
|
4
|
+
/** @type {import('@tryghost/api-framework').Controller} */
|
|
5
|
+
const controller = {
|
|
5
6
|
docName: 'links',
|
|
6
7
|
browse: {
|
|
7
8
|
headers: {
|
|
@@ -59,3 +60,5 @@ module.exports = {
|
|
|
59
60
|
}
|
|
60
61
|
}
|
|
61
62
|
};
|
|
63
|
+
|
|
64
|
+
module.exports = controller;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
const mailEvents = require('../../services/mail-events');
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
/** @type {import('@tryghost/api-framework').Controller} */
|
|
4
|
+
const controller = {
|
|
4
5
|
docName: 'mail_events',
|
|
5
6
|
add: {
|
|
6
7
|
headers: {
|
|
@@ -12,3 +13,5 @@ module.exports = {
|
|
|
12
13
|
}
|
|
13
14
|
}
|
|
14
15
|
};
|
|
16
|
+
|
|
17
|
+
module.exports = controller;
|
|
@@ -35,7 +35,8 @@ _private.sendMail = (object) => {
|
|
|
35
35
|
});
|
|
36
36
|
};
|
|
37
37
|
|
|
38
|
-
|
|
38
|
+
/** @type {import('@tryghost/api-framework').Controller} */
|
|
39
|
+
const controller = {
|
|
39
40
|
docName: 'mail',
|
|
40
41
|
|
|
41
42
|
send: {
|
|
@@ -46,23 +47,7 @@ module.exports = {
|
|
|
46
47
|
query(frame) {
|
|
47
48
|
return _private.sendMail(frame.data);
|
|
48
49
|
}
|
|
49
|
-
},
|
|
50
|
-
|
|
51
|
-
sendTest(frame) {
|
|
52
|
-
return mailService.utils.generateContent({template: 'test'})
|
|
53
|
-
.then((content) => {
|
|
54
|
-
const payload = {
|
|
55
|
-
mail: [{
|
|
56
|
-
message: {
|
|
57
|
-
to: frame.user.get('email'),
|
|
58
|
-
subject: tpl(messages.testGhostEmail),
|
|
59
|
-
html: content.html,
|
|
60
|
-
text: content.text
|
|
61
|
-
}
|
|
62
|
-
}]
|
|
63
|
-
};
|
|
64
|
-
|
|
65
|
-
return _private.sendMail(payload);
|
|
66
|
-
});
|
|
67
50
|
}
|
|
68
51
|
};
|
|
52
|
+
|
|
53
|
+
module.exports = controller;
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
const path = require('path');
|
|
2
2
|
const storage = require('../../adapters/storage');
|
|
3
3
|
|
|
4
|
-
|
|
4
|
+
/** @type {import('@tryghost/api-framework').Controller} */
|
|
5
|
+
const controller = {
|
|
5
6
|
docName: 'media',
|
|
6
7
|
upload: {
|
|
7
8
|
statusCode: 201,
|
|
@@ -47,3 +48,5 @@ module.exports = {
|
|
|
47
48
|
}
|
|
48
49
|
}
|
|
49
50
|
};
|
|
51
|
+
|
|
52
|
+
module.exports = controller;
|