ghost 5.75.3 → 5.76.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.
- package/PRIVACY.md +1 -5
- package/components/tryghost-adapter-cache-memory-ttl-5.76.1.tgz +0 -0
- package/components/tryghost-adapter-cache-redis-5.76.1.tgz +0 -0
- package/components/{tryghost-adapter-manager-5.75.3.tgz → tryghost-adapter-manager-5.76.1.tgz} +0 -0
- package/components/tryghost-announcement-bar-settings-5.76.1.tgz +0 -0
- package/components/{tryghost-api-framework-5.75.3.tgz → tryghost-api-framework-5.76.1.tgz} +0 -0
- package/components/tryghost-api-version-compatibility-service-5.76.1.tgz +0 -0
- package/components/{tryghost-audience-feedback-5.75.3.tgz → tryghost-audience-feedback-5.76.1.tgz} +0 -0
- package/components/tryghost-bookshelf-repository-5.76.1.tgz +0 -0
- package/components/{tryghost-bootstrap-socket-5.75.3.tgz → tryghost-bootstrap-socket-5.76.1.tgz} +0 -0
- package/components/{tryghost-collections-5.75.3.tgz → tryghost-collections-5.76.1.tgz} +0 -0
- package/components/{tryghost-constants-5.75.3.tgz → tryghost-constants-5.76.1.tgz} +0 -0
- package/components/tryghost-custom-theme-settings-service-5.76.1.tgz +0 -0
- package/components/tryghost-data-generator-5.76.1.tgz +0 -0
- package/components/tryghost-domain-events-5.76.1.tgz +0 -0
- package/components/tryghost-donations-5.76.1.tgz +0 -0
- package/components/tryghost-dynamic-routing-events-5.76.1.tgz +0 -0
- package/components/tryghost-email-addresses-5.76.1.tgz +0 -0
- package/components/tryghost-email-analytics-provider-mailgun-5.76.1.tgz +0 -0
- package/components/tryghost-email-analytics-service-5.76.1.tgz +0 -0
- package/components/tryghost-email-content-generator-5.76.1.tgz +0 -0
- package/components/{tryghost-email-events-5.75.3.tgz → tryghost-email-events-5.76.1.tgz} +0 -0
- package/components/tryghost-email-service-5.76.1.tgz +0 -0
- package/components/tryghost-email-suppression-list-5.76.1.tgz +0 -0
- package/components/tryghost-event-aware-cache-wrapper-5.76.1.tgz +0 -0
- package/components/tryghost-express-dynamic-redirects-5.76.1.tgz +0 -0
- package/components/tryghost-external-media-inliner-5.76.1.tgz +0 -0
- package/components/tryghost-extract-api-key-5.76.1.tgz +0 -0
- package/components/tryghost-html-to-plaintext-5.76.1.tgz +0 -0
- package/components/tryghost-i18n-5.76.1.tgz +0 -0
- package/components/tryghost-importer-handler-content-files-5.76.1.tgz +0 -0
- package/components/tryghost-importer-revue-5.76.1.tgz +0 -0
- package/components/tryghost-in-memory-repository-5.76.1.tgz +0 -0
- package/components/{tryghost-job-manager-5.75.3.tgz → tryghost-job-manager-5.76.1.tgz} +0 -0
- package/components/{tryghost-link-redirects-5.75.3.tgz → tryghost-link-redirects-5.76.1.tgz} +0 -0
- package/components/tryghost-link-replacer-5.76.1.tgz +0 -0
- package/components/tryghost-link-tracking-5.76.1.tgz +0 -0
- package/components/{tryghost-magic-link-5.75.3.tgz → tryghost-magic-link-5.76.1.tgz} +0 -0
- package/components/{tryghost-mail-events-5.75.3.tgz → tryghost-mail-events-5.76.1.tgz} +0 -0
- package/components/tryghost-mailgun-client-5.76.1.tgz +0 -0
- package/components/{tryghost-member-attribution-5.75.3.tgz → tryghost-member-attribution-5.76.1.tgz} +0 -0
- package/components/{tryghost-member-events-5.75.3.tgz → tryghost-member-events-5.76.1.tgz} +0 -0
- package/components/{tryghost-members-api-5.75.3.tgz → tryghost-members-api-5.76.1.tgz} +0 -0
- package/components/tryghost-members-csv-5.76.1.tgz +0 -0
- package/components/{tryghost-members-events-service-5.75.3.tgz → tryghost-members-events-service-5.76.1.tgz} +0 -0
- package/components/tryghost-members-importer-5.76.1.tgz +0 -0
- package/components/{tryghost-members-offers-5.75.3.tgz → tryghost-members-offers-5.76.1.tgz} +0 -0
- package/components/tryghost-members-payments-5.76.1.tgz +0 -0
- package/components/tryghost-members-ssr-5.76.1.tgz +0 -0
- package/components/{tryghost-members-stripe-service-5.75.3.tgz → tryghost-members-stripe-service-5.76.1.tgz} +0 -0
- package/components/tryghost-mentions-email-report-5.76.1.tgz +0 -0
- package/components/tryghost-milestones-5.76.1.tgz +0 -0
- package/components/tryghost-minifier-5.76.1.tgz +0 -0
- package/components/{tryghost-model-to-domain-event-interceptor-5.75.3.tgz → tryghost-model-to-domain-event-interceptor-5.76.1.tgz} +0 -0
- package/components/tryghost-mw-api-version-mismatch-5.76.1.tgz +0 -0
- package/components/tryghost-mw-cache-control-5.76.1.tgz +0 -0
- package/components/{tryghost-mw-error-handler-5.75.3.tgz → tryghost-mw-error-handler-5.76.1.tgz} +0 -0
- package/components/tryghost-mw-session-from-token-5.76.1.tgz +0 -0
- package/components/{tryghost-mw-update-user-last-seen-5.75.3.tgz → tryghost-mw-update-user-last-seen-5.76.1.tgz} +0 -0
- package/components/tryghost-mw-version-match-5.76.1.tgz +0 -0
- package/components/tryghost-mw-vhost-5.76.1.tgz +0 -0
- package/components/tryghost-nql-filter-expansions-5.76.1.tgz +0 -0
- package/components/tryghost-oembed-service-5.76.1.tgz +0 -0
- package/components/tryghost-package-json-5.76.1.tgz +0 -0
- package/components/{tryghost-post-events-5.75.3.tgz → tryghost-post-events-5.76.1.tgz} +0 -0
- package/components/tryghost-post-revisions-5.76.1.tgz +0 -0
- package/components/tryghost-posts-service-5.76.1.tgz +0 -0
- package/components/tryghost-recommendations-5.76.1.tgz +0 -0
- package/components/tryghost-referrers-5.76.1.tgz +0 -0
- package/components/{tryghost-security-5.75.3.tgz → tryghost-security-5.76.1.tgz} +0 -0
- package/components/{tryghost-session-service-5.75.3.tgz → tryghost-session-service-5.76.1.tgz} +0 -0
- package/components/tryghost-settings-path-manager-5.76.1.tgz +0 -0
- package/components/tryghost-slack-notifications-5.76.1.tgz +0 -0
- package/components/{tryghost-staff-service-5.75.3.tgz → tryghost-staff-service-5.76.1.tgz} +0 -0
- package/components/tryghost-stats-service-5.76.1.tgz +0 -0
- package/components/tryghost-tiers-5.76.1.tgz +0 -0
- package/components/{tryghost-update-check-service-5.75.3.tgz → tryghost-update-check-service-5.76.1.tgz} +0 -0
- package/components/tryghost-verification-trigger-5.76.1.tgz +0 -0
- package/components/tryghost-version-notifications-data-service-5.76.1.tgz +0 -0
- package/components/tryghost-webmentions-5.76.1.tgz +0 -0
- package/core/built/admin/assets/admin-x-demo/admin-x-demo.js +2 -2
- package/core/built/admin/assets/admin-x-demo/{index-46cd6bae.mjs → index-3d0e9e6b.mjs} +1337 -1319
- package/core/built/admin/assets/admin-x-demo/{modals-e3fd0bee.mjs → modals-f20fa267.mjs} +2 -2
- package/core/built/admin/assets/admin-x-settings/{CodeEditorView-3275fab6.mjs → CodeEditorView-05a0f378.mjs} +264 -261
- package/core/built/admin/assets/admin-x-settings/admin-x-settings.js +2 -2
- package/core/built/admin/assets/admin-x-settings/{index-02a155fd.mjs → index-1c923713.mjs} +5821 -5670
- package/core/built/admin/assets/admin-x-settings/{index-147f4a79.mjs → index-518e7d26.mjs} +2 -2
- package/core/built/admin/assets/admin-x-settings/{modals-b9d9ac8e.mjs → modals-516e0c98.mjs} +7372 -7345
- package/core/built/admin/assets/{chunk.143.96062ac831a61508aedd.js → chunk.143.16780ac5d51ee6a46eb2.js} +5 -5
- package/core/built/admin/assets/{chunk.178.9cb1465775ad155bbd9a.js → chunk.178.19c31dac4249a6e158b6.js} +4 -4
- package/core/built/admin/assets/{chunk.214.611b4f2521fabe34eea8.js → chunk.664.0bd9e83a6b03130112ae.js} +2126 -2046
- package/core/built/admin/assets/ghost-0704a125141af505d40c5f71e84f33ab.css +1 -0
- package/core/built/admin/assets/{ghost-2fe51d0831dd1694a4e88abd5f38e2fb.js → ghost-971615b195b524bf97f678a350865195.js} +141 -126
- package/core/built/admin/assets/ghost-dark-6ad8cac49f53901201e9210bc1999eeb.css +1 -0
- package/core/built/admin/assets/koenig-lexical/index.css +1 -1
- package/core/built/admin/assets/koenig-lexical/koenig-lexical.js +31741 -36024
- package/core/built/admin/assets/koenig-lexical/koenig-lexical.umd.js +179 -206
- package/core/built/admin/assets/{vendor-f6856af9fcd8ab6533f2a4339ececbc8.js → vendor-6b83da0c6e6fede335947219c59e1543.js} +2 -2
- package/core/built/admin/index.html +6 -6
- package/core/cli/generate-data.js +31 -2
- package/core/frontend/apps/private-blogging/lib/middleware.js +1 -2
- package/core/frontend/helpers/excerpt.js +2 -0
- package/core/frontend/public/robots.txt +1 -0
- package/core/server/api/endpoints/utils/serializers/input/settings.js +1 -0
- package/core/server/data/db/connection.js +10 -0
- package/core/server/data/migrations/versions/5.76/2023-12-05-11-00-add-portal-default-plan-setting.js +8 -0
- package/core/server/data/schema/default-settings/default-settings.json +8 -0
- package/core/server/services/newsletters/emails/verify-email.js +34 -28
- package/core/shared/config/defaults.json +1 -1
- package/core/shared/labs.js +2 -4
- package/core/shared/sentry.js +1 -0
- package/core/shared/settings-cache/public.js +1 -0
- package/package.json +169 -169
- package/yarn.lock +1945 -1743
- package/components/tryghost-adapter-cache-memory-ttl-5.75.3.tgz +0 -0
- package/components/tryghost-adapter-cache-redis-5.75.3.tgz +0 -0
- package/components/tryghost-announcement-bar-settings-5.75.3.tgz +0 -0
- package/components/tryghost-api-version-compatibility-service-5.75.3.tgz +0 -0
- package/components/tryghost-bookshelf-repository-5.75.3.tgz +0 -0
- package/components/tryghost-custom-theme-settings-service-5.75.3.tgz +0 -0
- package/components/tryghost-data-generator-5.75.3.tgz +0 -0
- package/components/tryghost-domain-events-5.75.3.tgz +0 -0
- package/components/tryghost-donations-5.75.3.tgz +0 -0
- package/components/tryghost-dynamic-routing-events-5.75.3.tgz +0 -0
- package/components/tryghost-email-addresses-5.75.3.tgz +0 -0
- package/components/tryghost-email-analytics-provider-mailgun-5.75.3.tgz +0 -0
- package/components/tryghost-email-analytics-service-5.75.3.tgz +0 -0
- package/components/tryghost-email-content-generator-5.75.3.tgz +0 -0
- package/components/tryghost-email-service-5.75.3.tgz +0 -0
- package/components/tryghost-email-suppression-list-5.75.3.tgz +0 -0
- package/components/tryghost-event-aware-cache-wrapper-5.75.3.tgz +0 -0
- package/components/tryghost-express-dynamic-redirects-5.75.3.tgz +0 -0
- package/components/tryghost-external-media-inliner-5.75.3.tgz +0 -0
- package/components/tryghost-extract-api-key-5.75.3.tgz +0 -0
- package/components/tryghost-html-to-plaintext-5.75.3.tgz +0 -0
- package/components/tryghost-i18n-5.75.3.tgz +0 -0
- package/components/tryghost-importer-handler-content-files-5.75.3.tgz +0 -0
- package/components/tryghost-importer-revue-5.75.3.tgz +0 -0
- package/components/tryghost-in-memory-repository-5.75.3.tgz +0 -0
- package/components/tryghost-link-replacer-5.75.3.tgz +0 -0
- package/components/tryghost-link-tracking-5.75.3.tgz +0 -0
- package/components/tryghost-mailgun-client-5.75.3.tgz +0 -0
- package/components/tryghost-members-csv-5.75.3.tgz +0 -0
- package/components/tryghost-members-importer-5.75.3.tgz +0 -0
- package/components/tryghost-members-payments-5.75.3.tgz +0 -0
- package/components/tryghost-members-ssr-5.75.3.tgz +0 -0
- package/components/tryghost-mentions-email-report-5.75.3.tgz +0 -0
- package/components/tryghost-milestones-5.75.3.tgz +0 -0
- package/components/tryghost-minifier-5.75.3.tgz +0 -0
- package/components/tryghost-mw-api-version-mismatch-5.75.3.tgz +0 -0
- package/components/tryghost-mw-cache-control-5.75.3.tgz +0 -0
- package/components/tryghost-mw-session-from-token-5.75.3.tgz +0 -0
- package/components/tryghost-mw-version-match-5.75.3.tgz +0 -0
- package/components/tryghost-mw-vhost-5.75.3.tgz +0 -0
- package/components/tryghost-nql-filter-expansions-5.75.3.tgz +0 -0
- package/components/tryghost-oembed-service-5.75.3.tgz +0 -0
- package/components/tryghost-package-json-5.75.3.tgz +0 -0
- package/components/tryghost-post-revisions-5.75.3.tgz +0 -0
- package/components/tryghost-posts-service-5.75.3.tgz +0 -0
- package/components/tryghost-recommendations-5.75.3.tgz +0 -0
- package/components/tryghost-referrers-5.75.3.tgz +0 -0
- package/components/tryghost-settings-path-manager-5.75.3.tgz +0 -0
- package/components/tryghost-slack-notifications-5.75.3.tgz +0 -0
- package/components/tryghost-stats-service-5.75.3.tgz +0 -0
- package/components/tryghost-tiers-5.75.3.tgz +0 -0
- package/components/tryghost-verification-trigger-5.75.3.tgz +0 -0
- package/components/tryghost-version-notifications-data-service-5.75.3.tgz +0 -0
- package/components/tryghost-webmentions-5.75.3.tgz +0 -0
- package/core/built/admin/assets/ghost-0456ea5c74bd1b27239c11706d1acae9.css +0 -1
- package/core/built/admin/assets/ghost-dark-29863e517e1917a3b0df74979a6cf03f.css +0 -1
- /package/core/built/admin/assets/{chunk.214.611b4f2521fabe34eea8.js.LICENSE.txt → chunk.664.0bd9e83a6b03130112ae.js.LICENSE.txt} +0 -0
|
@@ -9312,7 +9312,7 @@ e.default={content:'<path d="M1.061 2.56v6.257a3 3 0 00.878 2.121L13.5 22.5a1.5
|
|
|
9312
9312
|
Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
|
|
9313
9313
|
e.default={content:'<path clip-rule="evenodd" d="M8 2.706a1 1 0 011-1h15a1 1 0 01.707.293l21 21a1 1 0 01-1.414 1.414L23.586 3.706H9a1 1 0 01-1-1z"/><path clip-rule="evenodd" d="M3.172 8.878A4 4 0 016 7.706h12.258a4 4 0 012.827 1.17l18.328 18.327a4.001 4.001 0 01-1.424 6.573l-7.213 2.707-2.71 7.21a4.002 4.002 0 01-6.573 1.424L3.171 26.791A4 4 0 012 23.962V11.706a4 4 0 011.172-2.828zM6 9.706a2 2 0 00-2 2v12.256a2.003 2.003 0 00.585 1.415l18.322 18.326a2 2 0 003.287-.712l2.87-7.637a1 1 0 01.585-.584l7.638-2.866a2 2 0 00.712-3.287L19.67 10.291a2 2 0 00-1.413-.585H6z"/><path d="M12.25 15.956a2 2 0 100 4 2 2 0 000-4"/>',attrs:{fill:"none",viewBox:"0 0 48 48"}}})),define("ember-svg-jar/inlined/thumbs-down",["exports"],(function(e){"use strict"
|
|
9314
9314
|
Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
|
|
9315
|
-
e.default={content:'<path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="
|
|
9315
|
+
e.default={content:'<path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M22 14.429h-3.445a1.905 1.905 0 00-1.543.794l-4.617 7.095a1.622 1.622 0 01-2.783-.233 1.597 1.597 0 01-.103-1.1l.833-3.142a1.867 1.867 0 00-.993-2.164 1.911 1.911 0 00-.833-.193h-4.63A1.881 1.881 0 012.08 13.06v-.011l1.8-6.008v-.016c.733-2.36 1.992-3.97 4.47-3.97 5.933 0 5.594-.684 12.523 2.818.377.188.752.379 1.126.572V16.5"/>',attrs:{fill:"none",viewBox:"0 0 24 24"}}})),define("ember-svg-jar/inlined/thumbs-up",["exports"],(function(e){"use strict"
|
|
9316
9316
|
Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
|
|
9317
9317
|
e.default={content:'<path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M2.001 10.571h3.443a1.907 1.907 0 001.543-.794l4.618-7.095a1.62 1.62 0 011.992-.537 1.598 1.598 0 01.892 1.871l-.832 3.14a1.867 1.867 0 00.993 2.165c.259.127.544.193.832.194h4.63a1.883 1.883 0 011.807 2.426v.011l-1.8 6.008v.015c-.733 2.36-1.993 3.97-4.47 3.97-5.933 0-5.593.684-12.524-2.818-.375-.188-.75-.38-1.125-.57v-9.89"/>',attrs:{fill:"none",viewBox:"0 0 24 24"}}})),define("ember-svg-jar/inlined/trash",["exports"],(function(e){"use strict"
|
|
9318
9318
|
Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
|
|
@@ -9914,4 +9914,4 @@ e.default=class{constructor(e){if(this._data=new t.default,e)for(let t=0;t<e.len
|
|
|
9914
9914
|
return this}get(e){let t=this._data[e]
|
|
9915
9915
|
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}}}))
|
|
9916
9916
|
|
|
9917
|
-
//# sourceMappingURL=vendor-
|
|
9917
|
+
//# sourceMappingURL=vendor-0462eb4577b6a717a7cadbacd0d3b276.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.
|
|
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.76%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%22c5245f84d0%22%2C%22adminXDemoFilename%22%3A%22admin-x-demo.js%22%2C%22adminXDemoHash%22%3A%22ace375b522%22%2C%22adminXSettingsFilename%22%3A%22admin-x-settings.js%22%2C%22adminXSettingsHash%22%3A%222814ff3e02%22%7D" />
|
|
12
12
|
|
|
13
13
|
<meta name="HandheldFriendly" content="True" />
|
|
14
14
|
<meta name="MobileOptimized" content="320" />
|
|
@@ -37,7 +37,7 @@
|
|
|
37
37
|
</style>
|
|
38
38
|
|
|
39
39
|
<link integrity="" rel="stylesheet" href="assets/vendor-0ede59da8efb5e28fa929557f7ff7154.css">
|
|
40
|
-
<link integrity="" rel="stylesheet" href="assets/ghost-
|
|
40
|
+
<link integrity="" rel="stylesheet" href="assets/ghost-0704a125141af505d40c5f71e84f33ab.css" title="light">
|
|
41
41
|
|
|
42
42
|
|
|
43
43
|
</head>
|
|
@@ -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.
|
|
61
|
-
<script src="assets/chunk.143.
|
|
62
|
-
<script src="assets/ghost-
|
|
59
|
+
<script src="assets/vendor-6b83da0c6e6fede335947219c59e1543.js"></script>
|
|
60
|
+
<script src="assets/chunk.664.0bd9e83a6b03130112ae.js"></script>
|
|
61
|
+
<script src="assets/chunk.143.16780ac5d51ee6a46eb2.js"></script>
|
|
62
|
+
<script src="assets/ghost-971615b195b524bf97f678a350865195.js"></script>
|
|
63
63
|
</body>
|
|
64
64
|
</html>
|
|
@@ -1,15 +1,20 @@
|
|
|
1
|
+
/* eslint-disable ghost/filenames/match-exported-class */
|
|
1
2
|
const Command = require('./command');
|
|
2
3
|
const DataGenerator = require('@tryghost/data-generator');
|
|
3
4
|
const config = require('../shared/config');
|
|
4
5
|
|
|
6
|
+
const schemaTables = require('../server/data/schema').tables;
|
|
7
|
+
|
|
5
8
|
module.exports = class DataGeneratorCommand extends Command {
|
|
6
9
|
setup() {
|
|
7
10
|
this.help('Generates random data to populate the database for development & testing');
|
|
8
11
|
this.argument('--base-data-pack', {type: 'string', defaultValue: '', desc: 'Base data pack file location, imported instead of random content'});
|
|
9
|
-
this.argument('--quantity', {type: 'number', desc: 'When importing a single table, the quantity to import'});
|
|
10
12
|
this.argument('--clear-database', {type: 'boolean', defaultValue: false, desc: 'Clear all entries in the database before importing'});
|
|
11
13
|
this.argument('--tables', {type: 'string', desc: 'Only import the specified list of tables, where quantities can be specified by appending a colon followed by the quantity for each table. Example: --tables=members:1000,posts,tags,members_login_events'});
|
|
14
|
+
this.argument('--quantities', {type: 'string', desc: 'Allows you to specify different default quantities for specific tables without affecting the tables that are generated. Example: --quantities=members:1000'});
|
|
12
15
|
this.argument('--with-default', {type: 'boolean', defaultValue: false, desc: 'Include default tables as well as those specified (simply override quantities)'});
|
|
16
|
+
this.argument('--print-dependencies', {type: 'boolean', defaultValue: false, desc: 'Prints the dependency tree for the data generator and exits'});
|
|
17
|
+
this.argument('--seed', {type: 'number', defaultValue: '', desc: 'Use a seed to reliably generate the same data on multiple runs (timestamps will still change a little bit to remain up to date)'});
|
|
13
18
|
}
|
|
14
19
|
|
|
15
20
|
initializeContext(context) {
|
|
@@ -29,6 +34,8 @@ module.exports = class DataGeneratorCommand extends Command {
|
|
|
29
34
|
}
|
|
30
35
|
|
|
31
36
|
async handle(argv = {}) {
|
|
37
|
+
// If we can't stream, throw an error while creating the connection
|
|
38
|
+
process.env.REQUIRE_INFILE_STREAM = '1';
|
|
32
39
|
const knex = require('../server/data/db/connection');
|
|
33
40
|
|
|
34
41
|
const tables = (argv.tables ? argv.tables.split(',') : []).map(table => ({
|
|
@@ -36,6 +43,24 @@ module.exports = class DataGeneratorCommand extends Command {
|
|
|
36
43
|
quantity: parseInt(table.split(':')[1]) || undefined
|
|
37
44
|
}));
|
|
38
45
|
|
|
46
|
+
/**
|
|
47
|
+
* @type {Record<string, number>}
|
|
48
|
+
*/
|
|
49
|
+
const quantities = {};
|
|
50
|
+
|
|
51
|
+
if (argv.quantities) {
|
|
52
|
+
for (const quantity of argv.quantities.split(',')) {
|
|
53
|
+
const [table, amount] = quantity.split(':');
|
|
54
|
+
|
|
55
|
+
if (amount === undefined || !isFinite(parseInt(amount))) {
|
|
56
|
+
this.fatal(`Missing quantity for table ${table}`);
|
|
57
|
+
return;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
quantities[table] = parseInt(amount);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
|
|
39
64
|
const dataGenerator = new DataGenerator({
|
|
40
65
|
baseDataPack: argv['base-data-pack'],
|
|
41
66
|
knex,
|
|
@@ -51,7 +76,11 @@ module.exports = class DataGeneratorCommand extends Command {
|
|
|
51
76
|
baseUrl: config.getSiteUrl(),
|
|
52
77
|
clearDatabase: argv['clear-database'],
|
|
53
78
|
tables,
|
|
54
|
-
|
|
79
|
+
schemaTables,
|
|
80
|
+
withDefault: argv['with-default'],
|
|
81
|
+
printDependencies: argv['print-dependencies'],
|
|
82
|
+
quantities,
|
|
83
|
+
seed: argv.seed || undefined
|
|
55
84
|
});
|
|
56
85
|
try {
|
|
57
86
|
await dataGenerator.importData();
|
|
@@ -55,8 +55,7 @@ const privateBlogging = {
|
|
|
55
55
|
name: 'ghost-private',
|
|
56
56
|
maxAge: constants.ONE_MONTH_MS,
|
|
57
57
|
signed: false,
|
|
58
|
-
sameSite:
|
|
59
|
-
secure: urlUtils.isSSL(config.get('url'))
|
|
58
|
+
sameSite: 'none'
|
|
60
59
|
})(req, res, next);
|
|
61
60
|
},
|
|
62
61
|
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
const _ = require('lodash');
|
|
2
2
|
const knex = require('knex');
|
|
3
3
|
const os = require('os');
|
|
4
|
+
const fs = require('fs');
|
|
4
5
|
|
|
5
6
|
const logging = require('@tryghost/logging');
|
|
6
7
|
const config = require('../../../shared/config');
|
|
8
|
+
const errors = require('@tryghost/errors');
|
|
7
9
|
let knexInstance;
|
|
8
10
|
|
|
9
11
|
// @TODO:
|
|
@@ -45,6 +47,14 @@ function configure(dbConfig) {
|
|
|
45
47
|
dbConfig.connection.timezone = 'Z';
|
|
46
48
|
dbConfig.connection.charset = 'utf8mb4';
|
|
47
49
|
dbConfig.connection.decimalNumbers = true;
|
|
50
|
+
|
|
51
|
+
if (process.env.REQUIRE_INFILE_STREAM) {
|
|
52
|
+
if (process.env.NODE_ENV === 'development' || process.env.ALLOW_INFILE_STREAM) {
|
|
53
|
+
dbConfig.connection.infileStreamFactory = path => fs.createReadStream(path);
|
|
54
|
+
} else {
|
|
55
|
+
throw new errors.InternalServerError({message: 'MySQL infile streaming is required to run the current process, but is not allowed. Run the script in development mode or set ALLOW_INFILE_STREAM=1.'});
|
|
56
|
+
}
|
|
57
|
+
}
|
|
48
58
|
}
|
|
49
59
|
|
|
50
60
|
return dbConfig;
|
|
@@ -330,6 +330,14 @@
|
|
|
330
330
|
"defaultValue": "[\"free\"]",
|
|
331
331
|
"type": "array"
|
|
332
332
|
},
|
|
333
|
+
"portal_default_plan": {
|
|
334
|
+
"defaultValue": "yearly",
|
|
335
|
+
"validations": {
|
|
336
|
+
"isEmpty": false,
|
|
337
|
+
"isIn": [["yearly", "monthly"]]
|
|
338
|
+
},
|
|
339
|
+
"type": "string"
|
|
340
|
+
},
|
|
333
341
|
"portal_products": {
|
|
334
342
|
"defaultValue": "[]",
|
|
335
343
|
"type": "array"
|
|
@@ -49,6 +49,10 @@ module.exports = ({email, url}) => `
|
|
|
49
49
|
max-width: 100% !important;
|
|
50
50
|
width: auto !important;
|
|
51
51
|
}
|
|
52
|
+
table[class=body] p[class=small],
|
|
53
|
+
table[class=body] a[class=small] {
|
|
54
|
+
font-size: 11px !important;
|
|
55
|
+
}
|
|
52
56
|
}
|
|
53
57
|
/* -------------------------------------
|
|
54
58
|
PRESERVE THESE STYLES IN THE HEAD
|
|
@@ -90,26 +94,30 @@ module.exports = ({email, url}) => `
|
|
|
90
94
|
border-bottom-width: 1px;
|
|
91
95
|
border-bottom-color: #EEF5F8;
|
|
92
96
|
}
|
|
97
|
+
a {
|
|
98
|
+
color: #3A464C;
|
|
99
|
+
}
|
|
93
100
|
</style>
|
|
94
101
|
</head>
|
|
95
|
-
<body style="background-color: #
|
|
96
|
-
<table border="0" cellpadding="0" cellspacing="0" class="body" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%; background-color: #
|
|
102
|
+
<body style="background-color: #FFFFFF; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'; -webkit-font-smoothing: antialiased; font-size: 14px; line-height: 1.5em; margin: 0; padding: 0; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;">
|
|
103
|
+
<table border="0" cellpadding="0" cellspacing="0" class="body" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%; background-color: #FFFFFF;">
|
|
97
104
|
<tr>
|
|
98
105
|
<td style="font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 14px; vertical-align: top;"> </td>
|
|
99
|
-
<td class="container" style="font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 14px; vertical-align: top; display: block;
|
|
100
|
-
<div class="content" style="box-sizing: border-box; display: block;
|
|
106
|
+
<td class="container" style="font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 14px; vertical-align: top; display: block; margin: 0 auto; max-width: 540px; padding: 10px; width: 540px;">
|
|
107
|
+
<div class="content" style="box-sizing: border-box; display: block; margin: 0 auto; max-width: 600px; padding: 30px 20px;">
|
|
101
108
|
|
|
102
109
|
<!-- START CENTERED WHITE CONTAINER -->
|
|
110
|
+
<span class="preheader" style="color: transparent; display: none; height: 0; max-height: 0; max-width: 0; opacity: 0; overflow: hidden; mso-hide: all; visibility: hidden; width: 0;">Confirm your email address</span>
|
|
103
111
|
<table class="main" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%; background: #ffffff; border-radius: 8px;">
|
|
104
112
|
|
|
105
113
|
<!-- START MAIN CONTENT AREA -->
|
|
106
114
|
<tr>
|
|
107
|
-
<td class="wrapper" style="font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 14px; vertical-align: top; box-sizing: border-box;
|
|
115
|
+
<td class="wrapper" style="font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 14px; vertical-align: top; box-sizing: border-box;">
|
|
108
116
|
<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%;">
|
|
109
117
|
<tr>
|
|
110
118
|
<td style="font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 14px; vertical-align: top;">
|
|
111
|
-
<p style="font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 20px; color: #15212A; font-weight: bold; line-height:
|
|
112
|
-
<p style="font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 16px; color: #3A464C; font-weight: normal;
|
|
119
|
+
<p style="font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 20px; color: #15212A; font-weight: bold; line-height: 24px; margin: 0; margin-bottom: 15px;">Hey there,</p>
|
|
120
|
+
<p style="font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 16px; color: #3A464C; font-weight: normal; line-height: 24px; margin: 0; margin-bottom: 32px;">Please confirm your email address with this link:</p>
|
|
113
121
|
<table border="0" cellpadding="0" cellspacing="0" class="btn btn-primary" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%; box-sizing: border-box;">
|
|
114
122
|
<tbody>
|
|
115
123
|
<tr>
|
|
@@ -117,7 +125,7 @@ module.exports = ({email, url}) => `
|
|
|
117
125
|
<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: auto;">
|
|
118
126
|
<tbody>
|
|
119
127
|
<tr>
|
|
120
|
-
<td style="font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 16px; vertical-align: top; background-color: #15212A; border-radius: 5px; text-align: center;"> <a href="${url}" target="_blank" style="display: inline-block;
|
|
128
|
+
<td style="font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 16px; vertical-align: top; background-color: #15212A; border-radius: 5px; text-align: center;"> <a href="${url}" target="_blank" style="display: inline-block; background-color: #15212A; border: solid 1px #15212A; color: #ffffff; border-radius: 5px; box-sizing: border-box; cursor: pointer; text-decoration: none; font-size: 16px; font-weight: normal; margin: 0; padding: 9px 22px 10px; border-color: #15212A;" data-test-verify-link>Confirm email address</a> </td>
|
|
121
129
|
</tr>
|
|
122
130
|
</tbody>
|
|
123
131
|
</table>
|
|
@@ -125,36 +133,34 @@ module.exports = ({email, url}) => `
|
|
|
125
133
|
</tr>
|
|
126
134
|
</tbody>
|
|
127
135
|
</table>
|
|
128
|
-
<p style="font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 16px; color: #3A464C; font-weight: normal;
|
|
136
|
+
<p style="font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 16px; color: #3A464C; font-weight: normal; line-height: 24px; margin: 0; margin-bottom: 11px;">For your security, the link will expire in 24 hours time.</p>
|
|
129
137
|
<hr/>
|
|
130
|
-
<p style="word-break: break-all; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 15px; color: #3A464C; font-weight: normal;
|
|
131
|
-
<p style="word-break: break-all; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size:
|
|
138
|
+
<p style="word-break: break-all; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 15px; color: #3A464C; font-weight: normal; line-height: 24px; margin: 0;">You can also copy & paste this URL into your browser:</p>
|
|
139
|
+
<p style="word-break: break-all; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 15px; line-height: 22px; margin-top: 0; color: #3A464C;">${url}</p>
|
|
132
140
|
</td>
|
|
133
141
|
</tr>
|
|
134
142
|
</table>
|
|
135
143
|
</td>
|
|
136
144
|
</tr>
|
|
137
145
|
|
|
146
|
+
<!-- START FOOTER -->
|
|
147
|
+
|
|
148
|
+
<tr>
|
|
149
|
+
<td style="font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 14px; vertical-align: top; padding-top: 80px;">
|
|
150
|
+
<p class="small" style="font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'; line-height: 16px; font-size: 11px; color: #738A94; font-weight: normal; margin: 0;">If you did not make this request, you can simply delete this message. This email address will not be used.</p>
|
|
151
|
+
</td>
|
|
152
|
+
</tr>
|
|
153
|
+
<tr>
|
|
154
|
+
<td style="font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 14px; vertical-align: top; padding-top: 2px;">
|
|
155
|
+
<p class="small" style="font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'; line-height: 16px; font-size: 11px; color: #738A94; font-weight: normal; margin: 0;">This message was sent to <a class="small" href="mailto:${email}" style="text-decoration: underline; color: #738A94; font-size: 11px;">${email}</a></p>
|
|
156
|
+
</td>
|
|
157
|
+
</tr>
|
|
158
|
+
|
|
159
|
+
<!-- END FOOTER -->
|
|
160
|
+
|
|
138
161
|
<!-- END MAIN CONTENT AREA -->
|
|
139
162
|
</table>
|
|
140
163
|
|
|
141
|
-
<!-- START FOOTER -->
|
|
142
|
-
<div class="footer" style="clear: both; Margin-top: 10px; text-align: center; width: 100%;">
|
|
143
|
-
<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%;">
|
|
144
|
-
<tr>
|
|
145
|
-
<td class="content-block" style="font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'; vertical-align: top; padding-bottom: 5px; padding-top: 15px; font-size: 13px; line-height: 21px; color: #738A94; text-align: center;">
|
|
146
|
-
If you did not make this request, you can simply delete this message.<br/>This email address will not be used.
|
|
147
|
-
</td>
|
|
148
|
-
</tr>
|
|
149
|
-
<tr>
|
|
150
|
-
<td class="content-block" style="font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'; vertical-align: top; padding-bottom: 10px; padding-top: 10px; font-size: 13px; color: #738A94; text-align: center;">
|
|
151
|
-
<span class="recipient-link" style="color: #738A94; font-size: 13px; text-align: center;">Sent to <a href="mailto:${email}" style="text-decoration: underline; color: #738A94; font-size: 13px; text-align: center;">${email}</a></span>
|
|
152
|
-
</td>
|
|
153
|
-
</tr>
|
|
154
|
-
</table>
|
|
155
|
-
</div>
|
|
156
|
-
<!-- END FOOTER -->
|
|
157
|
-
|
|
158
164
|
<!-- END CENTERED WHITE CONTAINER -->
|
|
159
165
|
</div>
|
|
160
166
|
</td>
|
|
@@ -182,7 +182,7 @@
|
|
|
182
182
|
},
|
|
183
183
|
"portal": {
|
|
184
184
|
"url": "https://cdn.jsdelivr.net/ghost/portal@~{version}/umd/portal.min.js",
|
|
185
|
-
"version": "2.
|
|
185
|
+
"version": "2.37"
|
|
186
186
|
},
|
|
187
187
|
"sodoSearch": {
|
|
188
188
|
"url": "https://cdn.jsdelivr.net/ghost/sodo-search@~{version}/umd/sodo-search.min.js",
|
package/core/shared/labs.js
CHANGED
|
@@ -21,7 +21,6 @@ const GA_FEATURES = [
|
|
|
21
21
|
'announcementBar',
|
|
22
22
|
'signupForm',
|
|
23
23
|
'recommendations',
|
|
24
|
-
'editorEmojiPicker',
|
|
25
24
|
'listUnsubscribeHeader',
|
|
26
25
|
'filterEmailDisabled'
|
|
27
26
|
];
|
|
@@ -45,12 +44,11 @@ const ALPHA_FEATURES = [
|
|
|
45
44
|
'tipsAndDonations',
|
|
46
45
|
'importMemberTier',
|
|
47
46
|
'lexicalIndicators',
|
|
48
|
-
'editorEmojiPicker',
|
|
49
47
|
'adminXOffers',
|
|
50
48
|
'filterEmailDisabled',
|
|
51
49
|
'adminXDemo',
|
|
52
|
-
'
|
|
53
|
-
'
|
|
50
|
+
'newEmailAddresses',
|
|
51
|
+
'portalImprovements'
|
|
54
52
|
];
|
|
55
53
|
|
|
56
54
|
module.exports.GA_KEYS = [...GA_FEATURES];
|
package/core/shared/sentry.js
CHANGED
|
@@ -115,6 +115,7 @@ if (sentryConfig && !sentryConfig.disabled) {
|
|
|
115
115
|
}),
|
|
116
116
|
tracingHandler: Sentry.Handlers.tracingHandler(),
|
|
117
117
|
captureException: Sentry.captureException,
|
|
118
|
+
captureMessage: Sentry.captureMessage,
|
|
118
119
|
beforeSend: beforeSend,
|
|
119
120
|
initQueryTracing: (knex) => {
|
|
120
121
|
if (sentryConfig.tracing?.enabled === true) {
|
|
@@ -38,6 +38,7 @@ module.exports = {
|
|
|
38
38
|
portal_signup_terms_html: 'portal_signup_terms_html',
|
|
39
39
|
portal_signup_checkbox_required: 'portal_signup_checkbox_required',
|
|
40
40
|
portal_plans: 'portal_plans',
|
|
41
|
+
portal_default_plan: 'portal_default_plan',
|
|
41
42
|
portal_name: 'portal_name',
|
|
42
43
|
portal_button: 'portal_button',
|
|
43
44
|
comments_enabled: 'comments_enabled',
|