ghost 5.60.0 → 5.61.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 (202) hide show
  1. package/components/tryghost-adapter-cache-memory-ttl-5.61.0.tgz +0 -0
  2. package/components/tryghost-adapter-cache-redis-5.61.0.tgz +0 -0
  3. package/components/tryghost-adapter-manager-5.61.0.tgz +0 -0
  4. package/components/tryghost-announcement-bar-settings-5.61.0.tgz +0 -0
  5. package/components/tryghost-api-framework-5.61.0.tgz +0 -0
  6. package/components/tryghost-api-version-compatibility-service-5.61.0.tgz +0 -0
  7. package/components/tryghost-audience-feedback-5.61.0.tgz +0 -0
  8. package/components/tryghost-bookshelf-repository-5.61.0.tgz +0 -0
  9. package/components/tryghost-bootstrap-socket-5.61.0.tgz +0 -0
  10. package/components/tryghost-collections-5.61.0.tgz +0 -0
  11. package/components/tryghost-constants-5.61.0.tgz +0 -0
  12. package/components/tryghost-custom-theme-settings-service-5.61.0.tgz +0 -0
  13. package/components/{tryghost-data-generator-5.60.0.tgz → tryghost-data-generator-5.61.0.tgz} +0 -0
  14. package/components/tryghost-domain-events-5.61.0.tgz +0 -0
  15. package/components/tryghost-donations-5.61.0.tgz +0 -0
  16. package/components/tryghost-dynamic-routing-events-5.61.0.tgz +0 -0
  17. package/components/tryghost-email-analytics-provider-mailgun-5.61.0.tgz +0 -0
  18. package/components/{tryghost-email-analytics-service-5.60.0.tgz → tryghost-email-analytics-service-5.61.0.tgz} +0 -0
  19. package/components/tryghost-email-content-generator-5.61.0.tgz +0 -0
  20. package/components/tryghost-email-events-5.61.0.tgz +0 -0
  21. package/components/{tryghost-email-service-5.60.0.tgz → tryghost-email-service-5.61.0.tgz} +0 -0
  22. package/components/tryghost-email-suppression-list-5.61.0.tgz +0 -0
  23. package/components/tryghost-event-aware-cache-wrapper-5.61.0.tgz +0 -0
  24. package/components/tryghost-express-dynamic-redirects-5.61.0.tgz +0 -0
  25. package/components/{tryghost-external-media-inliner-5.60.0.tgz → tryghost-external-media-inliner-5.61.0.tgz} +0 -0
  26. package/components/{tryghost-extract-api-key-5.60.0.tgz → tryghost-extract-api-key-5.61.0.tgz} +0 -0
  27. package/components/tryghost-html-to-plaintext-5.61.0.tgz +0 -0
  28. package/components/tryghost-i18n-5.61.0.tgz +0 -0
  29. package/components/tryghost-importer-handler-content-files-5.61.0.tgz +0 -0
  30. package/components/{tryghost-importer-revue-5.60.0.tgz → tryghost-importer-revue-5.61.0.tgz} +0 -0
  31. package/components/tryghost-in-memory-repository-5.61.0.tgz +0 -0
  32. package/components/tryghost-job-manager-5.61.0.tgz +0 -0
  33. package/components/tryghost-link-redirects-5.61.0.tgz +0 -0
  34. package/components/tryghost-link-replacer-5.61.0.tgz +0 -0
  35. package/components/tryghost-link-tracking-5.61.0.tgz +0 -0
  36. package/components/tryghost-magic-link-5.61.0.tgz +0 -0
  37. package/components/tryghost-mail-events-5.61.0.tgz +0 -0
  38. package/components/tryghost-mailgun-client-5.61.0.tgz +0 -0
  39. package/components/{tryghost-member-attribution-5.60.0.tgz → tryghost-member-attribution-5.61.0.tgz} +0 -0
  40. package/components/tryghost-member-events-5.61.0.tgz +0 -0
  41. package/components/tryghost-members-api-5.61.0.tgz +0 -0
  42. package/components/tryghost-members-csv-5.61.0.tgz +0 -0
  43. package/components/tryghost-members-events-service-5.61.0.tgz +0 -0
  44. package/components/tryghost-members-importer-5.61.0.tgz +0 -0
  45. package/components/tryghost-members-offers-5.61.0.tgz +0 -0
  46. package/components/tryghost-members-payments-5.61.0.tgz +0 -0
  47. package/components/tryghost-members-ssr-5.61.0.tgz +0 -0
  48. package/components/{tryghost-members-stripe-service-5.60.0.tgz → tryghost-members-stripe-service-5.61.0.tgz} +0 -0
  49. package/components/tryghost-mentions-email-report-5.61.0.tgz +0 -0
  50. package/components/tryghost-milestones-5.61.0.tgz +0 -0
  51. package/components/tryghost-minifier-5.61.0.tgz +0 -0
  52. package/components/{tryghost-model-to-domain-event-interceptor-5.60.0.tgz → tryghost-model-to-domain-event-interceptor-5.61.0.tgz} +0 -0
  53. package/components/tryghost-mw-api-version-mismatch-5.61.0.tgz +0 -0
  54. package/components/tryghost-mw-cache-control-5.61.0.tgz +0 -0
  55. package/components/tryghost-mw-error-handler-5.61.0.tgz +0 -0
  56. package/components/tryghost-mw-session-from-token-5.61.0.tgz +0 -0
  57. package/components/tryghost-mw-update-user-last-seen-5.61.0.tgz +0 -0
  58. package/components/tryghost-mw-version-match-5.61.0.tgz +0 -0
  59. package/components/tryghost-mw-vhost-5.61.0.tgz +0 -0
  60. package/components/tryghost-nql-filter-expansions-5.61.0.tgz +0 -0
  61. package/components/tryghost-oembed-service-5.61.0.tgz +0 -0
  62. package/components/tryghost-package-json-5.61.0.tgz +0 -0
  63. package/components/tryghost-post-events-5.61.0.tgz +0 -0
  64. package/components/tryghost-post-revisions-5.61.0.tgz +0 -0
  65. package/components/tryghost-posts-service-5.61.0.tgz +0 -0
  66. package/components/tryghost-recommendations-5.61.0.tgz +0 -0
  67. package/components/tryghost-referrers-5.61.0.tgz +0 -0
  68. package/components/tryghost-security-5.61.0.tgz +0 -0
  69. package/components/tryghost-session-service-5.61.0.tgz +0 -0
  70. package/components/tryghost-settings-path-manager-5.61.0.tgz +0 -0
  71. package/components/tryghost-slack-notifications-5.61.0.tgz +0 -0
  72. package/components/tryghost-staff-service-5.61.0.tgz +0 -0
  73. package/components/tryghost-stats-service-5.61.0.tgz +0 -0
  74. package/components/{tryghost-tiers-5.60.0.tgz → tryghost-tiers-5.61.0.tgz} +0 -0
  75. package/components/tryghost-update-check-service-5.61.0.tgz +0 -0
  76. package/components/tryghost-verification-trigger-5.61.0.tgz +0 -0
  77. package/components/tryghost-version-notifications-data-service-5.61.0.tgz +0 -0
  78. package/components/tryghost-webmentions-5.61.0.tgz +0 -0
  79. package/core/boot.js +6 -1
  80. package/core/built/admin/assets/{chunk.143.88cad5b682130d4a2e2e.js → chunk.143.b297dc36977ec0b8aa47.js} +5 -5
  81. package/core/built/admin/assets/{chunk.178.cf63585e0c59dc316a42.js → chunk.178.308d80b60fce060ca358.js} +4 -4
  82. package/core/built/admin/assets/{ghost-fc7b85b759f27e607667914dcd685402.js → ghost-4416ac3815c54eac76c2590d1154a628.js} +33 -36
  83. package/core/built/admin/assets/ghost-8a4e981c272f793157133814ca7c7e84.css +1 -0
  84. package/core/built/admin/assets/ghost-dark-084169b0e968ef763dfbbf63b253e0c6.css +1 -0
  85. package/core/built/admin/assets/{vendor-fff5b0b3c122441beb3170947ae27b9d.js → vendor-3631184082d609038638c1e169a002e7.js} +666 -666
  86. package/core/built/admin/index.html +6 -6
  87. package/core/frontend/src/cards/css/header_v2.css +10 -9
  88. package/core/frontend/src/cards/css/signup.css +13 -12
  89. package/core/frontend/web/middleware/cors.js +1 -1
  90. package/core/frontend/web/middleware/handle-image-sizes.js +1 -1
  91. package/core/frontend/web/middleware/serve-public-file.js +4 -4
  92. package/core/frontend/web/site.js +5 -2
  93. package/core/server/api/endpoints/index.js +8 -0
  94. package/core/server/api/endpoints/recommendations-public.js +24 -0
  95. package/core/server/api/endpoints/recommendations.js +71 -0
  96. package/core/server/api/endpoints/utils/serializers/input/settings.js +2 -1
  97. package/core/server/data/exporter/table-lists.js +2 -1
  98. package/core/server/data/migrations/versions/5.61/2023-08-29-10-17-add-recommendations-crud-permissions.js +50 -0
  99. package/core/server/data/migrations/versions/5.61/2023-08-29-11-39-10-add-recommendations-table.js +18 -0
  100. package/core/server/data/migrations/versions/5.61/2023-08-30-07-37-04-add-recommendations-enabled-settings.js +8 -0
  101. package/core/server/data/schema/default-settings/default-settings.json +10 -0
  102. package/core/server/data/schema/fixtures/fixtures.json +35 -5
  103. package/core/server/data/schema/schema.js +12 -0
  104. package/core/server/models/base/plugins/raw-knex.js +4 -3
  105. package/core/server/models/post.js +1 -1
  106. package/core/server/models/recommendation.js +10 -0
  107. package/core/server/services/api-version-compatibility/index.js +2 -2
  108. package/core/server/services/api-version-compatibility/mw-version-rewrites.js +1 -1
  109. package/core/server/services/auth/api-key/admin.js +3 -3
  110. package/core/server/services/collections/service.js +5 -3
  111. package/core/server/services/members/middleware.js +10 -10
  112. package/core/server/services/mentions/WebmentionMetadata.js +2 -1
  113. package/core/server/services/mentions/service.js +4 -0
  114. package/core/server/services/{collections/intercept-events.js → model-to-domain-event-interceptor/index.js} +9 -1
  115. package/core/server/services/recommendations/RecommendationServiceWrapper.js +57 -0
  116. package/core/server/services/recommendations/index.js +3 -0
  117. package/core/server/web/admin/app.js +2 -2
  118. package/core/server/web/api/endpoints/admin/middleware.js +1 -1
  119. package/core/server/web/api/endpoints/admin/routes.js +9 -3
  120. package/core/server/web/api/endpoints/content/routes.js +3 -0
  121. package/core/server/web/api/middleware/cors.js +1 -1
  122. package/core/server/web/api/middleware/upload.js +2 -2
  123. package/core/server/web/parent/middleware/request-id.js +1 -1
  124. package/core/server/web/shared/middleware/uncapitalise.js +1 -1
  125. package/core/server/web/shared/middleware/url-redirects.js +3 -3
  126. package/core/server/web/well-known.js +1 -1
  127. package/core/shared/labs.js +2 -1
  128. package/core/shared/settings-cache/public.js +2 -1
  129. package/index.js +5 -0
  130. package/newrelic.js +53 -0
  131. package/package.json +162 -159
  132. package/yarn.lock +2513 -1166
  133. package/components/tryghost-adapter-cache-memory-ttl-5.60.0.tgz +0 -0
  134. package/components/tryghost-adapter-cache-redis-5.60.0.tgz +0 -0
  135. package/components/tryghost-adapter-manager-5.60.0.tgz +0 -0
  136. package/components/tryghost-announcement-bar-settings-5.60.0.tgz +0 -0
  137. package/components/tryghost-api-framework-5.60.0.tgz +0 -0
  138. package/components/tryghost-api-version-compatibility-service-5.60.0.tgz +0 -0
  139. package/components/tryghost-audience-feedback-5.60.0.tgz +0 -0
  140. package/components/tryghost-bootstrap-socket-5.60.0.tgz +0 -0
  141. package/components/tryghost-collections-5.60.0.tgz +0 -0
  142. package/components/tryghost-constants-5.60.0.tgz +0 -0
  143. package/components/tryghost-custom-theme-settings-service-5.60.0.tgz +0 -0
  144. package/components/tryghost-domain-events-5.60.0.tgz +0 -0
  145. package/components/tryghost-donations-5.60.0.tgz +0 -0
  146. package/components/tryghost-dynamic-routing-events-5.60.0.tgz +0 -0
  147. package/components/tryghost-email-analytics-provider-mailgun-5.60.0.tgz +0 -0
  148. package/components/tryghost-email-content-generator-5.60.0.tgz +0 -0
  149. package/components/tryghost-email-events-5.60.0.tgz +0 -0
  150. package/components/tryghost-email-suppression-list-5.60.0.tgz +0 -0
  151. package/components/tryghost-event-aware-cache-wrapper-5.60.0.tgz +0 -0
  152. package/components/tryghost-express-dynamic-redirects-5.60.0.tgz +0 -0
  153. package/components/tryghost-html-to-plaintext-5.60.0.tgz +0 -0
  154. package/components/tryghost-i18n-5.60.0.tgz +0 -0
  155. package/components/tryghost-importer-handler-content-files-5.60.0.tgz +0 -0
  156. package/components/tryghost-in-memory-repository-5.60.0.tgz +0 -0
  157. package/components/tryghost-job-manager-5.60.0.tgz +0 -0
  158. package/components/tryghost-link-redirects-5.60.0.tgz +0 -0
  159. package/components/tryghost-link-replacer-5.60.0.tgz +0 -0
  160. package/components/tryghost-link-tracking-5.60.0.tgz +0 -0
  161. package/components/tryghost-magic-link-5.60.0.tgz +0 -0
  162. package/components/tryghost-mail-events-5.60.0.tgz +0 -0
  163. package/components/tryghost-mailgun-client-5.60.0.tgz +0 -0
  164. package/components/tryghost-member-events-5.60.0.tgz +0 -0
  165. package/components/tryghost-members-api-5.60.0.tgz +0 -0
  166. package/components/tryghost-members-csv-5.60.0.tgz +0 -0
  167. package/components/tryghost-members-events-service-5.60.0.tgz +0 -0
  168. package/components/tryghost-members-importer-5.60.0.tgz +0 -0
  169. package/components/tryghost-members-offers-5.60.0.tgz +0 -0
  170. package/components/tryghost-members-payments-5.60.0.tgz +0 -0
  171. package/components/tryghost-members-ssr-5.60.0.tgz +0 -0
  172. package/components/tryghost-mentions-email-report-5.60.0.tgz +0 -0
  173. package/components/tryghost-milestones-5.60.0.tgz +0 -0
  174. package/components/tryghost-minifier-5.60.0.tgz +0 -0
  175. package/components/tryghost-mw-api-version-mismatch-5.60.0.tgz +0 -0
  176. package/components/tryghost-mw-cache-control-5.60.0.tgz +0 -0
  177. package/components/tryghost-mw-error-handler-5.60.0.tgz +0 -0
  178. package/components/tryghost-mw-session-from-token-5.60.0.tgz +0 -0
  179. package/components/tryghost-mw-update-user-last-seen-5.60.0.tgz +0 -0
  180. package/components/tryghost-mw-version-match-5.60.0.tgz +0 -0
  181. package/components/tryghost-mw-vhost-5.60.0.tgz +0 -0
  182. package/components/tryghost-nql-filter-expansions-5.60.0.tgz +0 -0
  183. package/components/tryghost-oembed-service-5.60.0.tgz +0 -0
  184. package/components/tryghost-package-json-5.60.0.tgz +0 -0
  185. package/components/tryghost-post-events-5.60.0.tgz +0 -0
  186. package/components/tryghost-post-revisions-5.60.0.tgz +0 -0
  187. package/components/tryghost-posts-service-5.60.0.tgz +0 -0
  188. package/components/tryghost-referrers-5.60.0.tgz +0 -0
  189. package/components/tryghost-security-5.60.0.tgz +0 -0
  190. package/components/tryghost-session-service-5.60.0.tgz +0 -0
  191. package/components/tryghost-settings-path-manager-5.60.0.tgz +0 -0
  192. package/components/tryghost-slack-notifications-5.60.0.tgz +0 -0
  193. package/components/tryghost-staff-service-5.60.0.tgz +0 -0
  194. package/components/tryghost-stats-service-5.60.0.tgz +0 -0
  195. package/components/tryghost-update-check-service-5.60.0.tgz +0 -0
  196. package/components/tryghost-verification-trigger-5.60.0.tgz +0 -0
  197. package/components/tryghost-version-notifications-data-service-5.60.0.tgz +0 -0
  198. package/components/tryghost-webmentions-5.60.0.tgz +0 -0
  199. package/core/built/admin/assets/chunk.208.735d31e95ce6fbd467b8.js +0 -12512
  200. package/core/built/admin/assets/chunk.208.735d31e95ce6fbd467b8.js.LICENSE.txt +0 -250
  201. package/core/built/admin/assets/ghost-c2c2b6cf53d999c72995cafa4166b9fb.css +0 -1
  202. package/core/built/admin/assets/ghost-dark-d44be1f4bc4e8920af2416d1e56a341f.css +0 -1
@@ -188,7 +188,7 @@ if("object"!=typeof n)return n
188
188
  throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string")
189
189
  return"symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function o(e,t,i,n,r){var a={}
190
190
  return Object.keys(n).forEach((function(e){a[e]=n[e]})),a.enumerable=!!a.enumerable,a.configurable=!!a.configurable,("value"in a||a.initializer)&&(a.writable=!0),a=i.slice().reverse().reduce((function(i,n){return n(e,t,i)||i}),a),r&&void 0!==a.initializer&&(a.value=a.initializer?a.initializer.call(r):void 0,a.initializer=void 0),void 0===a.initializer&&(Object.defineProperty(e,t,a),a=null),a}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
191
- const l=Ember.HTMLBars.template({id:"xT1sdqfh",block:'{"symbols":["uploader","error","@setting","@index"],"statements":[[10,"div"],[15,0,[31,["gh-stack-item ",[30,[36,3],[[30,[36,6],[[32,4],0],null],"gh-setting-first","gh-setting"],null]]]],[12],[2,"\\n "],[8,"gh-uploader",[],[["@extensions","@onComplete"],[[32,0,["imageExtensions"]],[32,0,["imageUploaded"]]]],[["default"],[{"statements":[[2,"\\n "],[10,"div"],[15,0,[31,[[30,[36,3],[[32,3,["value"]],"","flex flex-grow-1 items-center justify-between"],null]]]],[12],[2,"\\n "],[10,"div"],[14,0,"gh-setting-content"],[12],[2,"\\n "],[10,"div"],[15,0,[31,["gh-setting-title mb0 ",[30,[36,3],[[32,3,["value"]],"gh-theme-setting-title"],null]]]],[12],[1,[30,[36,7],[[32,3,["key"]]],null]],[13],[2,"\\n"],[6,[37,9],[[30,[36,8],[[30,[36,8],[[32,1,["errors"]]],null]],null]],null,[["default"],[{"statements":[[2," "],[10,"div"],[14,0,"gh-setting-error"],[14,"data-test-error","icon"],[12],[1,[30,[36,5],[[32,2,["context"]],[32,2,["message"]]],null]],[13],[2,"\\n"]],"parameters":[2]}]]],[6,[37,3],[[32,3,["description"]]],null,[["default"],[{"statements":[[2," "],[10,"div"],[14,0,"gh-setting-desc"],[14,5,"margin-top: 8px"],[12],[1,[30,[36,4],[[32,3,["description"]],100],null]],[13],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n "],[10,"div"],[14,0,"gh-setting-action gh-uploadbutton-container flex flex-column items-stretch"],[12],[2,"\\n"],[6,[37,3],[[32,1,["isUploading"]]],null,[["default","else"],[{"statements":[[2," "],[1,[32,1,["progressBar"]]],[2,"\\n"]],"parameters":[]},{"statements":[[6,[37,3],[[32,3,["value"]]],null,[["default","else"],[{"statements":[[2," "],[10,"div"],[14,0,"gh-branding-image-container largeimg justify-start"],[12],[2,"\\n "],[11,"img"],[24,0,"blog-cover"],[16,"src",[32,3,["value"]]],[4,[38,0],["click",[32,1,["triggerFileDialog"]]],null],[12],[13],[2,"\\n "],[11,"button"],[24,0,"gh-setting-action-largeimg-delete"],[24,"data-test-delete-image","icon"],[24,4,"button"],[4,[38,0],["click",[30,[36,1],[[32,0,["updateValue"]],null],null]],null],[12],[2,"\\n "],[1,[30,[36,2],["trash"],[["class"],["w4 h4 fill-white"]]]],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[11,"button"],[24,0,"gh-btn gh-btn-white self-start"],[24,"data-test-image-upload-btn","icon"],[24,4,"button"],[4,[38,0],["click",[32,1,["triggerFileDialog"]]],null],[12],[2,"\\n "],[10,"span"],[12],[2,"Upload"],[13],[2,"\\n "],[13],[2,"\\n "]],"parameters":[]}]]]],"parameters":[]}]]],[2," "],[10,"div"],[14,5,"display:none"],[12],[2,"\\n "],[8,"gh-file-input",[[24,"data-test-file-input","icon"]],[["@multiple","@action","@accept","@onInsert"],[false,[32,1,["setFiles"]],[32,0,["imageMimeTypes"]],[32,1,["registerFileInput"]]]],null],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "]],"parameters":[1]}]]],[2,"\\n"],[13]],"hasEval":false,"upvars":["on","fn","svg-jar","if","truncate","or","eq","humanize-setting-key","-track-array","each"]}',moduleName:"ghost-admin/components/custom-theme-settings/image.hbs"})
191
+ const l=Ember.HTMLBars.template({id:"bki4F2+h",block:'{"symbols":["uploader","error","@setting","@index"],"statements":[[10,"div"],[15,0,[31,["gh-stack-item ",[30,[36,3],[[30,[36,6],[[32,4],0],null],"gh-setting-first","gh-setting"],null]]]],[12],[2,"\\n "],[8,"gh-uploader",[],[["@extensions","@onComplete"],[[32,0,["imageExtensions"]],[32,0,["imageUploaded"]]]],[["default"],[{"statements":[[2,"\\n "],[10,"div"],[15,0,[31,[[30,[36,3],[[32,3,["value"]],"","flex flex-grow-1 items-center justify-between"],null]]]],[12],[2,"\\n "],[10,"div"],[14,0,"gh-setting-content"],[12],[2,"\\n "],[10,"div"],[15,0,[31,["gh-setting-title mb0 ",[30,[36,3],[[32,3,["value"]],"gh-theme-setting-title"],null]]]],[12],[1,[30,[36,7],[[32,3,["key"]]],null]],[13],[2,"\\n"],[6,[37,9],[[30,[36,8],[[30,[36,8],[[32,1,["errors"]]],null]],null]],null,[["default"],[{"statements":[[2," "],[10,"div"],[14,0,"gh-setting-error"],[14,"data-test-error","icon"],[12],[1,[30,[36,5],[[32,2,["context"]],[32,2,["message"]]],null]],[13],[2,"\\n"]],"parameters":[2]}]]],[6,[37,3],[[32,3,["description"]]],null,[["default"],[{"statements":[[2," "],[10,"div"],[14,0,"gh-setting-desc"],[14,5,"margin-top: 8px"],[12],[1,[30,[36,4],[[32,3,["description"]],100],null]],[13],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n "],[10,"div"],[14,0,"gh-setting-action gh-uploadbutton-container flex flex-column items-stretch"],[12],[2,"\\n"],[6,[37,3],[[32,1,["isUploading"]]],null,[["default","else"],[{"statements":[[2," "],[1,[32,1,["progressBar"]]],[2,"\\n"]],"parameters":[]},{"statements":[[6,[37,3],[[32,3,["value"]]],null,[["default","else"],[{"statements":[[2," "],[10,"div"],[14,0,"gh-branding-image-container largeimg justify-start"],[12],[2,"\\n "],[11,"img"],[24,0,"blog-cover"],[16,"src",[32,3,["value"]]],[4,[38,0],["click",[32,1,["triggerFileDialog"]]],null],[12],[13],[2,"\\n "],[11,"button"],[24,0,"gh-setting-action-largeimg-delete"],[24,"data-test-delete-image","icon"],[24,4,"button"],[4,[38,0],["click",[30,[36,1],[[32,0,["updateValue"]],null],null]],null],[12],[2,"\\n "],[1,[30,[36,2],["trash"],[["class"],["w4 h4 fill-white-no-conflict"]]]],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[11,"button"],[24,0,"gh-btn gh-btn-white self-start"],[24,"data-test-image-upload-btn","icon"],[24,4,"button"],[4,[38,0],["click",[32,1,["triggerFileDialog"]]],null],[12],[2,"\\n "],[10,"span"],[12],[2,"Upload"],[13],[2,"\\n "],[13],[2,"\\n "]],"parameters":[]}]]]],"parameters":[]}]]],[2," "],[10,"div"],[14,5,"display:none"],[12],[2,"\\n "],[8,"gh-file-input",[[24,"data-test-file-input","icon"]],[["@multiple","@action","@accept","@onInsert"],[false,[32,1,["setFiles"]],[32,0,["imageMimeTypes"]],[32,1,["registerFileInput"]]]],null],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "]],"parameters":[1]}]]],[2,"\\n"],[13]],"hasEval":false,"upvars":["on","fn","svg-jar","if","truncate","or","eq","humanize-setting-key","-track-array","each"]}',moduleName:"ghost-admin/components/custom-theme-settings/image.hbs"})
192
192
  let u=(n=Ember._action,r=Ember._action,o((a=class extends t.default{constructor(...e){super(...e),s(this,"inputId",`input-${Ember.guidFor(this)}`),s(this,"inputName",Ember.String.camelize(this.args.setting.key)),s(this,"imageExtensions",i.IMAGE_EXTENSIONS),s(this,"imageMimeTypes",i.IMAGE_MIME_TYPES)}imageUploaded(e){e[0]&&this.updateValue(e[0].url)}updateValue(e){this.args.setting.set("value",e),this.args.onChange?.()}}).prototype,"imageUploaded",[n],Object.getOwnPropertyDescriptor(a.prototype,"imageUploaded"),a.prototype),o(a.prototype,"updateValue",[r],Object.getOwnPropertyDescriptor(a.prototype,"updateValue"),a.prototype),a)
193
193
  e.default=u,Ember._setComponentTemplate(l,u)})),define("ghost-admin/components/custom-theme-settings/select",["exports","@glimmer/component"],(function(e,t){var i,n
194
194
  function r(e,t,i){return(t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e
@@ -1310,7 +1310,7 @@ if(e.origin===t.origin){if("apiUrl"===e.data?.request)return void await this._ha
1310
1310
  if(e.data?.route)return void this._handleRouteUpdate(e.data)
1311
1311
  if(e.data?.siteData)return void this._handleSiteDataUpdate(e.data)}}_handleRouteUpdate(e){const t=e.route
1312
1312
  this.migrate.isIframeTransition=t?.includes("/migrate"),this.migrate.toggleMigrateWindow(this.migrate.isIframeTransition),this.router.transitionTo(t)}async _handleUrlRequest(){const e=await this.migrate.apiToken()
1313
- this.migrate.getMigrateIframe().contentWindow.postMessage({request:"initialData",response:{apiUrl:this.migrate.apiUrl,apiToken:e,darkMode:this.feature.nightShift,stripe:this.migrate.isStripeConnected}},new URL(this.migrate.getIframeURL()).origin)}_handleSiteDataUpdate(e){this.migrate.siteData=e?.siteData??{},this.migrate.siteData?.migrationComplete}},u=h(l.prototype,"migrate",[i],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),c=h(l.prototype,"router",[n],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),d=h(l.prototype,"feature",[r],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),p=h(l.prototype,"notifications",[a],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),h(l.prototype,"setup",[s],Object.getOwnPropertyDescriptor(l.prototype,"setup"),l.prototype),h(l.prototype,"handleIframeMessage",[o],Object.getOwnPropertyDescriptor(l.prototype,"handleIframeMessage"),l.prototype),l)
1313
+ this.migrate.getMigrateIframe().contentWindow.postMessage({request:"initialData",response:{apiUrl:this.migrate.apiUrl,apiToken:e,darkMode:this.feature.nightShift,stripe:this.migrate.isStripeConnected}},new URL(this.migrate.getIframeURL()).origin)}_handleSiteDataUpdate(e){this.migrate.siteData=e?.siteData??{},this.migrate.siteData}},u=h(l.prototype,"migrate",[i],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),c=h(l.prototype,"router",[n],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),d=h(l.prototype,"feature",[r],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),p=h(l.prototype,"notifications",[a],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),h(l.prototype,"setup",[s],Object.getOwnPropertyDescriptor(l.prototype,"setup"),l.prototype),h(l.prototype,"handleIframeMessage",[o],Object.getOwnPropertyDescriptor(l.prototype,"handleIframeMessage"),l.prototype),l)
1314
1314
  e.default=g,Ember._setComponentTemplate(b,g)})),define("ghost-admin/components/gh-migrate-modal",["exports","@glimmer/component"],(function(e,t){var i,n,r
1315
1315
  Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
1316
1316
  const a=Ember.HTMLBars.template({id:"wYd7sOL3",block:'{"symbols":[],"statements":[[10,"div"],[15,0,[31,[[32,0,["visibilityClass"]]]]],[12],[2,"\\n "],[10,"div"],[14,0,"gh-migrate-container"],[12],[2,"\\n "],[8,"gh-migrate-iframe",[],[[],[]],[["default"],[{"statements":[],"parameters":[]}]]],[2,"\\n "],[13],[2,"\\n"],[13]],"hasEval":false,"upvars":[]}',moduleName:"ghost-admin/components/gh-migrate-modal.hbs"})
@@ -1436,7 +1436,7 @@ if(t.get("ogDescription")!==e)return t.set("ogDescription",e),t.validate({proper
1436
1436
  if(t.get("twitterTitle")!==e)return t.set("twitterTitle",e),t.validate({property:"twitterTitle"}).then((()=>{if(!t.get("isNew"))return this.savePostTask.perform()}))}setTwitterDescription(e){let t=this.post
1437
1437
  if(t.get("twitterDescription")!==e)return t.set("twitterDescription",e),t.validate({property:"twitterDescription"}).then((()=>{if(!t.get("isNew"))return this.savePostTask.perform()}))}setCoverImage(e){this.set("post.featureImage",e),this.get("post.isNew")||this.savePostTask.perform().catch((e=>{this.showError(e),this.post.rollbackAttributes()}))}clearCoverImage(){this.set("post.featureImage",""),this.get("post.isNew")||this.savePostTask.perform().catch((e=>{this.showError(e),this.post.rollbackAttributes()}))}setOgImage(e){this.set("post.ogImage",e),this.get("post.isNew")||this.savePostTask.perform().catch((e=>{this.showError(e),this.post.rollbackAttributes()}))}clearOgImage(){this.set("post.ogImage",""),this.get("post.isNew")||this.savePostTask.perform().catch((e=>{this.showError(e),this.post.rollbackAttributes()}))}setTwitterImage(e){this.set("post.twitterImage",e),this.get("post.isNew")||this.savePostTask.perform().catch((e=>{this.showError(e),this.post.rollbackAttributes()}))}clearTwitterImage(){this.set("post.twitterImage",""),this.get("post.isNew")||this.savePostTask.perform().catch((e=>{this.showError(e),this.post.rollbackAttributes()}))}changeAuthors(e){let t=this.post
1438
1438
  e.mapBy("id").join()!==t.get("authors").mapBy("id").join()&&(t.set("authors",e),t.validate({property:"authors"}),t.get("isNew")||this.savePostTask.perform().catch((e=>{this.showError(e),t.rollbackAttributes()})))}deletePostInternal(){this.deletePost&&this.deletePost()}setSidebarWidthFromElement(e){const t=e.getBoundingClientRect().width
1439
- this.setSidebarWidthVariable(t)}showError(e){e&&this.notifications.showAPIError(e)}setSidebarWidthVariable(e){document.documentElement.style.setProperty("--editor-sidebar-width",`${e}px`)}},fe=Xe(ge.prototype,"feature",[s],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),ve=Xe(ge.prototype,"store",[o],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),ye=Xe(ge.prototype,"ajax",[l],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),we=Xe(ge.prototype,"ghostPaths",[u],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),ke=Xe(ge.prototype,"notifications",[c],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Ee=Xe(ge.prototype,"slugGenerator",[d],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Pe=Xe(ge.prototype,"session",[p],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Oe=Xe(ge.prototype,"settings",[m],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),je=Xe(ge.prototype,"themeManagement",[h],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),_e=Xe(ge.prototype,"ui",[b],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Te=Xe(ge.prototype,"config",[n.inject],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),ze=Xe(ge.prototype,"showPostHistory",[g],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return!1}}),xe=Xe(ge.prototype,"canonicalUrlScratch",[f],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Se=Xe(ge.prototype,"customExcerptScratch",[v],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Ce=Xe(ge.prototype,"codeinjectionFootScratch",[y],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Me=Xe(ge.prototype,"codeinjectionHeadScratch",[w],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),De=Xe(ge.prototype,"metaDescriptionScratch",[k],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Ae=Xe(ge.prototype,"metaTitleScratch",[E],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Ie=Xe(ge.prototype,"ogDescriptionScratch",[P],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Ne=Xe(ge.prototype,"ogTitleScratch",[O],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Le=Xe(ge.prototype,"twitterDescriptionScratch",[j],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Re=Xe(ge.prototype,"twitterTitleScratch",[_],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Ue=Xe(ge.prototype,"slugValue",[T],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Fe=Xe(ge.prototype,"uuidValue",[z],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Be=Xe(ge.prototype,"seoDescription",[x],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Ve=Xe(ge.prototype,"facebookDescription",[S],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),He=Xe(ge.prototype,"facebookImage",[C],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),qe=Xe(ge.prototype,"facebookTitle",[M],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),$e=Xe(ge.prototype,"twitterDescription",[D],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Ye=Xe(ge.prototype,"twitterImage",[A],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),We=Xe(ge.prototype,"twitterTitle",[I],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Ge=Xe(ge.prototype,"showVisibilityInput",[N],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Xe(ge.prototype,"seoTitle",[L],Object.getOwnPropertyDescriptor(ge.prototype,"seoTitle"),ge.prototype),Xe(ge.prototype,"seoURL",[R],Object.getOwnPropertyDescriptor(ge.prototype,"seoURL"),ge.prototype),Xe(ge.prototype,"showSubview",[U],Object.getOwnPropertyDescriptor(ge.prototype,"showSubview"),ge.prototype),Xe(ge.prototype,"closeSubview",[F],Object.getOwnPropertyDescriptor(ge.prototype,"closeSubview"),ge.prototype),Xe(ge.prototype,"discardEnter",[B],Object.getOwnPropertyDescriptor(ge.prototype,"discardEnter"),ge.prototype),Xe(ge.prototype,"toggleFeatured",[V],Object.getOwnPropertyDescriptor(ge.prototype,"toggleFeatured"),ge.prototype),Xe(ge.prototype,"toggleShowTitleAndFeatureImage",[H],Object.getOwnPropertyDescriptor(ge.prototype,"toggleShowTitleAndFeatureImage"),ge.prototype),Xe(ge.prototype,"openPostHistory",[q],Object.getOwnPropertyDescriptor(ge.prototype,"openPostHistory"),ge.prototype),Xe(ge.prototype,"closePostHistory",[$],Object.getOwnPropertyDescriptor(ge.prototype,"closePostHistory"),ge.prototype),Xe(ge.prototype,"updateSlug",[Y],Object.getOwnPropertyDescriptor(ge.prototype,"updateSlug"),ge.prototype),Xe(ge.prototype,"setPublishedAtBlogDate",[W],Object.getOwnPropertyDescriptor(ge.prototype,"setPublishedAtBlogDate"),ge.prototype),Xe(ge.prototype,"setVisibility",[G],Object.getOwnPropertyDescriptor(ge.prototype,"setVisibility"),ge.prototype),Xe(ge.prototype,"setPublishedAtBlogTime",[K],Object.getOwnPropertyDescriptor(ge.prototype,"setPublishedAtBlogTime"),ge.prototype),Xe(ge.prototype,"setCustomExcerpt",[J],Object.getOwnPropertyDescriptor(ge.prototype,"setCustomExcerpt"),ge.prototype),Xe(ge.prototype,"setHeaderInjection",[X],Object.getOwnPropertyDescriptor(ge.prototype,"setHeaderInjection"),ge.prototype),Xe(ge.prototype,"setFooterInjection",[Z],Object.getOwnPropertyDescriptor(ge.prototype,"setFooterInjection"),ge.prototype),Xe(ge.prototype,"setMetaTitle",[Q],Object.getOwnPropertyDescriptor(ge.prototype,"setMetaTitle"),ge.prototype),Xe(ge.prototype,"setMetaDescription",[ee],Object.getOwnPropertyDescriptor(ge.prototype,"setMetaDescription"),ge.prototype),Xe(ge.prototype,"setCanonicalUrl",[te],Object.getOwnPropertyDescriptor(ge.prototype,"setCanonicalUrl"),ge.prototype),Xe(ge.prototype,"setOgTitle",[ie],Object.getOwnPropertyDescriptor(ge.prototype,"setOgTitle"),ge.prototype),Xe(ge.prototype,"setOgDescription",[ne],Object.getOwnPropertyDescriptor(ge.prototype,"setOgDescription"),ge.prototype),Xe(ge.prototype,"setTwitterTitle",[re],Object.getOwnPropertyDescriptor(ge.prototype,"setTwitterTitle"),ge.prototype),Xe(ge.prototype,"setTwitterDescription",[ae],Object.getOwnPropertyDescriptor(ge.prototype,"setTwitterDescription"),ge.prototype),Xe(ge.prototype,"setCoverImage",[se],Object.getOwnPropertyDescriptor(ge.prototype,"setCoverImage"),ge.prototype),Xe(ge.prototype,"clearCoverImage",[oe],Object.getOwnPropertyDescriptor(ge.prototype,"clearCoverImage"),ge.prototype),Xe(ge.prototype,"setOgImage",[le],Object.getOwnPropertyDescriptor(ge.prototype,"setOgImage"),ge.prototype),Xe(ge.prototype,"clearOgImage",[ue],Object.getOwnPropertyDescriptor(ge.prototype,"clearOgImage"),ge.prototype),Xe(ge.prototype,"setTwitterImage",[ce],Object.getOwnPropertyDescriptor(ge.prototype,"setTwitterImage"),ge.prototype),Xe(ge.prototype,"clearTwitterImage",[de],Object.getOwnPropertyDescriptor(ge.prototype,"clearTwitterImage"),ge.prototype),Xe(ge.prototype,"changeAuthors",[pe],Object.getOwnPropertyDescriptor(ge.prototype,"changeAuthors"),ge.prototype),Xe(ge.prototype,"deletePostInternal",[me],Object.getOwnPropertyDescriptor(ge.prototype,"deletePostInternal"),ge.prototype),Xe(ge.prototype,"setSidebarWidthFromElement",[he],Object.getOwnPropertyDescriptor(ge.prototype,"setSidebarWidthFromElement"),ge.prototype),be=ge))||be)
1439
+ this.setSidebarWidthVariable(t)}showError(e){e&&this.notifications.showAPIError(e)}setSidebarWidthVariable(e){document.documentElement.style.setProperty("--editor-sidebar-width",`${e}px`),document.documentElement.style.setProperty("--kg-breakout-adjustment",`${e}px`)}},fe=Xe(ge.prototype,"feature",[s],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),ve=Xe(ge.prototype,"store",[o],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),ye=Xe(ge.prototype,"ajax",[l],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),we=Xe(ge.prototype,"ghostPaths",[u],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),ke=Xe(ge.prototype,"notifications",[c],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Ee=Xe(ge.prototype,"slugGenerator",[d],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Pe=Xe(ge.prototype,"session",[p],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Oe=Xe(ge.prototype,"settings",[m],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),je=Xe(ge.prototype,"themeManagement",[h],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),_e=Xe(ge.prototype,"ui",[b],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Te=Xe(ge.prototype,"config",[n.inject],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),ze=Xe(ge.prototype,"showPostHistory",[g],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return!1}}),xe=Xe(ge.prototype,"canonicalUrlScratch",[f],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Se=Xe(ge.prototype,"customExcerptScratch",[v],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Ce=Xe(ge.prototype,"codeinjectionFootScratch",[y],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Me=Xe(ge.prototype,"codeinjectionHeadScratch",[w],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),De=Xe(ge.prototype,"metaDescriptionScratch",[k],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Ae=Xe(ge.prototype,"metaTitleScratch",[E],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Ie=Xe(ge.prototype,"ogDescriptionScratch",[P],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Ne=Xe(ge.prototype,"ogTitleScratch",[O],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Le=Xe(ge.prototype,"twitterDescriptionScratch",[j],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Re=Xe(ge.prototype,"twitterTitleScratch",[_],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Ue=Xe(ge.prototype,"slugValue",[T],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Fe=Xe(ge.prototype,"uuidValue",[z],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Be=Xe(ge.prototype,"seoDescription",[x],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Ve=Xe(ge.prototype,"facebookDescription",[S],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),He=Xe(ge.prototype,"facebookImage",[C],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),qe=Xe(ge.prototype,"facebookTitle",[M],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),$e=Xe(ge.prototype,"twitterDescription",[D],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Ye=Xe(ge.prototype,"twitterImage",[A],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),We=Xe(ge.prototype,"twitterTitle",[I],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Ge=Xe(ge.prototype,"showVisibilityInput",[N],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Xe(ge.prototype,"seoTitle",[L],Object.getOwnPropertyDescriptor(ge.prototype,"seoTitle"),ge.prototype),Xe(ge.prototype,"seoURL",[R],Object.getOwnPropertyDescriptor(ge.prototype,"seoURL"),ge.prototype),Xe(ge.prototype,"showSubview",[U],Object.getOwnPropertyDescriptor(ge.prototype,"showSubview"),ge.prototype),Xe(ge.prototype,"closeSubview",[F],Object.getOwnPropertyDescriptor(ge.prototype,"closeSubview"),ge.prototype),Xe(ge.prototype,"discardEnter",[B],Object.getOwnPropertyDescriptor(ge.prototype,"discardEnter"),ge.prototype),Xe(ge.prototype,"toggleFeatured",[V],Object.getOwnPropertyDescriptor(ge.prototype,"toggleFeatured"),ge.prototype),Xe(ge.prototype,"toggleShowTitleAndFeatureImage",[H],Object.getOwnPropertyDescriptor(ge.prototype,"toggleShowTitleAndFeatureImage"),ge.prototype),Xe(ge.prototype,"openPostHistory",[q],Object.getOwnPropertyDescriptor(ge.prototype,"openPostHistory"),ge.prototype),Xe(ge.prototype,"closePostHistory",[$],Object.getOwnPropertyDescriptor(ge.prototype,"closePostHistory"),ge.prototype),Xe(ge.prototype,"updateSlug",[Y],Object.getOwnPropertyDescriptor(ge.prototype,"updateSlug"),ge.prototype),Xe(ge.prototype,"setPublishedAtBlogDate",[W],Object.getOwnPropertyDescriptor(ge.prototype,"setPublishedAtBlogDate"),ge.prototype),Xe(ge.prototype,"setVisibility",[G],Object.getOwnPropertyDescriptor(ge.prototype,"setVisibility"),ge.prototype),Xe(ge.prototype,"setPublishedAtBlogTime",[K],Object.getOwnPropertyDescriptor(ge.prototype,"setPublishedAtBlogTime"),ge.prototype),Xe(ge.prototype,"setCustomExcerpt",[J],Object.getOwnPropertyDescriptor(ge.prototype,"setCustomExcerpt"),ge.prototype),Xe(ge.prototype,"setHeaderInjection",[X],Object.getOwnPropertyDescriptor(ge.prototype,"setHeaderInjection"),ge.prototype),Xe(ge.prototype,"setFooterInjection",[Z],Object.getOwnPropertyDescriptor(ge.prototype,"setFooterInjection"),ge.prototype),Xe(ge.prototype,"setMetaTitle",[Q],Object.getOwnPropertyDescriptor(ge.prototype,"setMetaTitle"),ge.prototype),Xe(ge.prototype,"setMetaDescription",[ee],Object.getOwnPropertyDescriptor(ge.prototype,"setMetaDescription"),ge.prototype),Xe(ge.prototype,"setCanonicalUrl",[te],Object.getOwnPropertyDescriptor(ge.prototype,"setCanonicalUrl"),ge.prototype),Xe(ge.prototype,"setOgTitle",[ie],Object.getOwnPropertyDescriptor(ge.prototype,"setOgTitle"),ge.prototype),Xe(ge.prototype,"setOgDescription",[ne],Object.getOwnPropertyDescriptor(ge.prototype,"setOgDescription"),ge.prototype),Xe(ge.prototype,"setTwitterTitle",[re],Object.getOwnPropertyDescriptor(ge.prototype,"setTwitterTitle"),ge.prototype),Xe(ge.prototype,"setTwitterDescription",[ae],Object.getOwnPropertyDescriptor(ge.prototype,"setTwitterDescription"),ge.prototype),Xe(ge.prototype,"setCoverImage",[se],Object.getOwnPropertyDescriptor(ge.prototype,"setCoverImage"),ge.prototype),Xe(ge.prototype,"clearCoverImage",[oe],Object.getOwnPropertyDescriptor(ge.prototype,"clearCoverImage"),ge.prototype),Xe(ge.prototype,"setOgImage",[le],Object.getOwnPropertyDescriptor(ge.prototype,"setOgImage"),ge.prototype),Xe(ge.prototype,"clearOgImage",[ue],Object.getOwnPropertyDescriptor(ge.prototype,"clearOgImage"),ge.prototype),Xe(ge.prototype,"setTwitterImage",[ce],Object.getOwnPropertyDescriptor(ge.prototype,"setTwitterImage"),ge.prototype),Xe(ge.prototype,"clearTwitterImage",[de],Object.getOwnPropertyDescriptor(ge.prototype,"clearTwitterImage"),ge.prototype),Xe(ge.prototype,"changeAuthors",[pe],Object.getOwnPropertyDescriptor(ge.prototype,"changeAuthors"),ge.prototype),Xe(ge.prototype,"deletePostInternal",[me],Object.getOwnPropertyDescriptor(ge.prototype,"deletePostInternal"),ge.prototype),Xe(ge.prototype,"setSidebarWidthFromElement",[he],Object.getOwnPropertyDescriptor(ge.prototype,"setSidebarWidthFromElement"),ge.prototype),be=ge))||be)
1440
1440
  e.default=Qe,Ember._setComponentTemplate(Ze,Qe)})),define("ghost-admin/components/gh-post-settings-menu/visibility-segment-select",["exports","@glimmer/component","ember-concurrency"],(function(e,t,i){var n,r,a,s,o,l,u,c,d,p
1441
1441
  function m(e,t,i,n){i&&Object.defineProperty(e,t,{enumerable:i.enumerable,configurable:i.configurable,writable:i.writable,value:i.initializer?i.initializer.call(n):void 0})}function h(e,t,i,n,r){var a={}
1442
1442
  return Object.keys(n).forEach((function(e){a[e]=n[e]})),a.enumerable=!!a.enumerable,a.configurable=!!a.configurable,("value"in a||a.initializer)&&(a.writable=!0),a=i.slice().reverse().reduce((function(i,n){return n(e,t,i)||i}),a),r&&void 0!==a.initializer&&(a.value=a.initializer?a.initializer.call(r):void 0,a.initializer=void 0),void 0===a.initializer&&(Object.defineProperty(e,t,a),a=null),a}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
@@ -2891,17 +2891,12 @@ const g=Ember.HTMLBars.template({id:"3RaOzrBE",block:'{"symbols":["@post","@hide
2891
2891
  let f=(n=Ember.inject.service,r=Ember.inject.service,a=Ember.inject.service,s=Ember._tracked,o=Ember._action,l=Ember._action,u=class extends t.default{constructor(...e){super(...e),h(this,"feature",c,this),h(this,"session",d,this),h(this,"settings",p,this),h(this,"isHovered",m,this)}get post(){return this.args.post}get errorClass(){return this.post.didEmailFail?"error":""}get scheduledText(){let e=[],t=(0,i.formatPostTime)(this.post.publishedAtUTC,{timezone:this.settings.timezone,scheduled:!0})
2892
2892
  return e.push(t),e.join(" ")}mouseOver(){this.isHovered=!0}mouseLeave(){this.isHovered=!1}},c=b(u.prototype,"feature",[n],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),d=b(u.prototype,"session",[r],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),p=b(u.prototype,"settings",[a],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),m=b(u.prototype,"isHovered",[s],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return!1}}),b(u.prototype,"mouseOver",[o],Object.getOwnPropertyDescriptor(u.prototype,"mouseOver"),u.prototype),b(u.prototype,"mouseLeave",[l],Object.getOwnPropertyDescriptor(u.prototype,"mouseLeave"),u.prototype),u)
2893
2893
  e.default=f,Ember._setComponentTemplate(g,f)})),define("ghost-admin/components/posts-list/list-item",["exports","@glimmer/component","ghost-admin/helpers/gh-format-post-time"],(function(e,t,i){var n,r,a,s,o,l,u,c,d,p,m
2894
- function h(e,t,i,n){i&&Object.defineProperty(e,t,{enumerable:i.enumerable,configurable:i.configurable,writable:i.writable,value:i.initializer?i.initializer.call(n):void 0})}function b(e,t,i){return(t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e
2895
- var i=e[Symbol.toPrimitive]
2896
- if(void 0!==i){var n=i.call(e,t||"default")
2897
- if("object"!=typeof n)return n
2898
- throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string")
2899
- return"symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function g(e,t,i,n,r){var a={}
2894
+ function h(e,t,i,n){i&&Object.defineProperty(e,t,{enumerable:i.enumerable,configurable:i.configurable,writable:i.writable,value:i.initializer?i.initializer.call(n):void 0})}function b(e,t,i,n,r){var a={}
2900
2895
  return Object.keys(n).forEach((function(e){a[e]=n[e]})),a.enumerable=!!a.enumerable,a.configurable=!!a.configurable,("value"in a||a.initializer)&&(a.writable=!0),a=i.slice().reverse().reduce((function(i,n){return n(e,t,i)||i}),a),r&&void 0!==a.initializer&&(a.value=a.initializer?a.initializer.call(r):void 0,a.initializer=void 0),void 0===a.initializer&&(Object.defineProperty(e,t,a),a=null),a}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
2901
- const f=Ember.HTMLBars.template({id:"eGiebSe3",block:'{"symbols":["@post","@hideAuthor","&attrs"],"statements":[[11,"li"],[24,0,"gh-list-row gh-posts-list-item gh-post-list-plain-status"],[17,3],[4,[38,14],["mouseover",[32,0,["mouseOver"]]],null],[4,[38,14],["mouseleave",[32,0,["mouseLeave"]]],null],[12],[2,"\\n\\n"],[6,[37,1],[[30,[36,3],[[32,0,["session","user","isContributor"]],[32,1,["isPublished"]]],null]],null,[["default","else"],[{"statements":[[2," "],[10,"a"],[15,6,[32,1,["url"]]],[14,0,"permalink gh-list-data gh-post-list-title"],[14,"target","_blank"],[14,"rel","noopener noreferrer"],[12],[2,"\\n "],[10,"h3"],[14,0,"gh-content-entry-title"],[12],[2,"\\n "],[1,[32,1,["title"]]],[2,"\\n "],[13],[2,"\\n"],[6,[37,16],[[32,2]],null,[["default"],[{"statements":[[2," "],[10,"p"],[14,0,"gh-content-entry-meta"],[12],[2,"\\n "],[10,"span"],[14,0,"gh-content-entry-author"],[12],[2,"\\n By "],[1,[30,[36,11],[[32,1]],null]],[2,"\\n\\n"],[6,[37,1],[[32,1,["primaryTag"]]],null,[["default"],[{"statements":[[2," in "],[10,"span"],[14,0,"midgrey-l2 fw5"],[12],[1,[32,1,["primaryTag","name"]]],[13],[2,"\\n"]],"parameters":[]}]]],[2,"\\n -\\n "],[13],[2,"\\n "],[10,"span"],[14,0,"gh-content-entry-date"],[12],[2,"\\n"],[6,[37,1],[[32,0,["isHovered"]]],null,[["default","else"],[{"statements":[[2," "],[1,[30,[36,10],[[32,1,["updatedAtUTC"]]],[["format"],["D MMM YYYY"]]]],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[1,[30,[36,10],[[32,1,["updatedAtUTC"]]],[["draft"],[true]]]],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"p"],[14,0,"gh-content-entry-status"],[12],[2,"\\n "],[10,"span"],[14,0,"published"],[12],[2,"\\n Published\\n"],[6,[37,1],[[32,1,["hasEmail"]]],null,[["default"],[{"statements":[[6,[37,1],[[32,0,["isHovered"]]],null,[["default","else"],[{"statements":[[2," and sent to "],[1,[30,[36,8],[[32,1,["email","emailCount"]],"member"],null]],[2,"\\n"]],"parameters":[]},{"statements":[[2," and sent\\n"]],"parameters":[]}]]]],"parameters":[]}]]],[2," "],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[8,"link-to",[[24,0,"permalink gh-list-data gh-post-list-title"]],[["@route","@models"],[[32,0,["editorRoute"]],[30,[36,0],[[32,0,["post","displayName"]],[32,0,["post","id"]]],null]]],[["default"],[{"statements":[[2,"\\n "],[10,"h3"],[14,0,"gh-content-entry-title"],[12],[2,"\\n"],[6,[37,1],[[32,1,["featured"]]],null,[["default"],[{"statements":[[2," "],[1,[30,[36,2],["star-fill"],[["class"],["gh-featured-post"]]]],[2,"\\n"]],"parameters":[]}]]],[2," "],[1,[32,1,["title"]]],[2,"\\n\\n"],[6,[37,1],[[30,[36,15],["convertToLexical"],null]],null,[["default"],[{"statements":[[6,[37,1],[[32,1,["lexical"]]],null,[["default"],[{"statements":[[2," "],[10,"span"],[14,0,"gh-lexical-indicator"],[12],[2,"L"],[13],[2,"\\n"]],"parameters":[]}]]],[6,[37,1],[[32,1,["mobiledoc"]]],null,[["default"],[{"statements":[[2," "],[10,"span"],[14,0,"gh-lexical-indicator"],[12],[2,"M"],[13],[2,"\\n"]],"parameters":[]}]]]],"parameters":[]}]]],[2," \\n "],[13],[2,"\\n"],[6,[37,16],[[32,2]],null,[["default"],[{"statements":[[2," "],[10,"p"],[14,0,"gh-content-entry-meta"],[12],[2,"\\n "],[10,"span"],[14,0,"gh-content-entry-author"],[12],[2,"\\n By "],[1,[30,[36,11],[[32,1]],null]],[2,"\\n\\n"],[6,[37,1],[[32,1,["primaryTag"]]],null,[["default"],[{"statements":[[2," in "],[10,"span"],[14,0,"midgrey-l2 fw5"],[12],[1,[32,1,["primaryTag","name"]]],[13],[2,"\\n"]],"parameters":[]}]]],[2," -\\n "],[13],[2,"\\n "],[11,"span"],[24,0,"gh-content-entry-date"],[4,[38,14],["mouseover",[30,[36,13],[[30,[36,12],[[32,0,["isDateHovered"]]],null],true],null]],null],[4,[38,14],["mouseleave",[30,[36,13],[[30,[36,12],[[32,0,["isDateHovered"]]],null],false],null]],null],[12],[2,"\\n "],[1,[30,[36,10],[[32,1,["updatedAtUTC"]]],[["draft"],[true]]]],[2,"\\n"],[6,[37,1],[[32,0,["isDateHovered"]]],null,[["default"],[{"statements":[[2," "],[11,"span"],[4,[38,7],["anim-fade-in-scale"],null],[12],[2,"on "],[1,[30,[36,10],[[32,1,["updatedAtUTC"]]],[["format"],["D MMM YYYY"]]]],[13],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n"],[2," "],[13],[2,"\\n "],[10,"p"],[14,0,"gh-content-entry-status"],[12],[2,"\\n"],[6,[37,1],[[32,1,["isScheduled"]]],null,[["default"],[{"statements":[[2," "],[10,"span"],[14,0,"scheduled"],[12],[2,"\\n Scheduled\\n"],[6,[37,1],[[32,0,["isHovered"]]],null,[["default"],[{"statements":[[2," "],[11,"span"],[24,0,"schedule-details"],[4,[38,7],["anim-fade-in-scale"],null],[12],[2,"\\n"],[6,[37,1],[[32,1,["emailOnly"]]],null,[["default","else"],[{"statements":[[2," to be sent\\n"]],"parameters":[]},{"statements":[[2," to be published "],[1,[30,[36,1],[[32,1,["newsletter"]],"and sent "],null]],[2,"\\n"]],"parameters":[]}]]],[2," "],[1,[32,0,["scheduledText"]]],[2," to "],[1,[30,[36,9],[[32,1,["emailSegment"]]],null]],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n"]],"parameters":[]}]]],[2,"\\n"],[6,[37,1],[[32,1,["isDraft"]]],null,[["default"],[{"statements":[[2," "],[10,"span"],[14,0,"draft"],[12],[2,"\\n Draft\\n "],[13],[2,"\\n"]],"parameters":[]}]]],[2,"\\n"],[6,[37,1],[[32,1,["isPublished"]]],null,[["default"],[{"statements":[[2," "],[10,"span"],[15,0,[31,["published ",[32,0,["errorClass"]]]]],[12],[2,"\\n Published\\n"],[6,[37,1],[[32,1,["didEmailFail"]]],null,[["default","else"],[{"statements":[[2," but failed to send newsletter\\n"]],"parameters":[]},{"statements":[[6,[37,1],[[32,1,["hasBeenEmailed"]]],null,[["default"],[{"statements":[[2," and sent\\n"],[6,[37,1],[[32,0,["isHovered"]]],null,[["default"],[{"statements":[[2," "],[11,"span"],[4,[38,7],["anim-fade-in-scale"],null],[12],[2,"to "],[1,[30,[36,8],[[32,1,["email","emailCount"]],"member"],null]],[13],[2,"\\n"]],"parameters":[]}]]],[2," "]],"parameters":[]}]]]],"parameters":[]}]]],[2," "],[13],[2,"\\n"]],"parameters":[]}]]],[2,"\\n"],[6,[37,1],[[32,1,["isSent"]]],null,[["default"],[{"statements":[[2," "],[10,"span"],[15,0,[31,["sent ",[32,0,["errorClass"]]]]],[12],[2,"\\n"],[6,[37,1],[[32,1,["didEmailFail"]]],null,[["default","else"],[{"statements":[[2," Failed to send newsletter\\n"]],"parameters":[]},{"statements":[[2," Sent\\n"],[6,[37,1],[[32,0,["isHovered"]]],null,[["default"],[{"statements":[[2," "],[11,"span"],[4,[38,7],["anim-fade-in-scale"],null],[12],[2,"to "],[1,[30,[36,8],[[32,1,["email","emailCount"]],"member"],null]],[13],[2,"\\n"]],"parameters":[]}]]]],"parameters":[]}]]],[2," "],[13],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n"]],"parameters":[]}]]],[2," "]],"parameters":[]}]]],[2,"\\n"]],"parameters":[]}]]],[2,"\\n"],[6,[37,1],[[30,[36,3],[[32,1,["showEmailOpenAnalytics"]],[32,1,["showEmailClickAnalytics"]]],null]],null,[["default","else"],[{"statements":[[2," "],[8,"link-to",[[24,0,"permalink gh-list-data gh-post-list-metrics"]],[["@route","@query"],["members",[30,[36,6],null,[["filterParam"],[[30,[36,5],["opened_emails.post_id:",[32,1,["id"]]],null]]]]]],[["default"],[{"statements":[[2,"\\n "],[10,"span"],[14,0,"gh-content-email-stats-value"],[12],[2,"\\n"],[6,[37,1],[[32,0,["isHovered"]]],null,[["default","else"],[{"statements":[[2," "],[1,[30,[36,4],[[32,1,["email","openedCount"]]],null]],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[1,[32,1,["email","openRate"]]],[10,"sup"],[12],[2,"%"],[13],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n "],[10,"span"],[14,0,"gh-content-email-stats"],[12],[2,"\\n opened\\n "],[13],[2,"\\n "]],"parameters":[]}]]],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[8,"link-to",[[24,0,"permalink gh-list-data"]],[["@route","@models"],[[32,0,["editorRoute"]],[30,[36,0],[[32,0,["post","displayName"]],[32,0,["post","id"]]],null]]],[["default"],[{"statements":[[2,"\\n"],[2," "]],"parameters":[]}]]],[2,"\\n"]],"parameters":[]}]]],[2,"\\n"],[6,[37,1],[[32,1,["showEmailClickAnalytics"]]],null,[["default","else"],[{"statements":[[2," "],[8,"link-to",[[24,0,"permalink gh-list-data gh-post-list-metrics"]],[["@route","@query"],["members",[30,[36,6],null,[["filterParam"],[[30,[36,5],["clicked_links.post_id:",[32,1,["id"]]],null]]]]]],[["default"],[{"statements":[[2,"\\n "],[10,"span"],[14,0,"gh-content-email-stats-value"],[12],[2,"\\n"],[6,[37,1],[[32,0,["isHovered"]]],null,[["default","else"],[{"statements":[[2," "],[1,[30,[36,4],[[32,1,["count","clicks"]]],null]],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[1,[32,1,["clickRate"]]],[10,"sup"],[12],[2,"%"],[13],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n "],[10,"span"],[14,0,"gh-content-email-stats"],[12],[2,"\\n clicked\\n "],[13],[2,"\\n "]],"parameters":[]}]]],[2,"\\n"]],"parameters":[]},{"statements":[[6,[37,1],[[32,1,["showEmailOpenAnalytics"]]],null,[["default","else"],[{"statements":[[2," "],[8,"link-to",[[24,0,"permalink gh-list-data gh-post-list-metrics"]],[["@route","@query"],["members",[30,[36,6],null,[["filterParam"],[[30,[36,5],["opened_emails.post_id:",[32,1,["id"]]],null]]]]]],[["default"],[{"statements":[[2,"\\n "],[10,"span"],[14,0,"gh-content-email-stats-value"],[12],[2,"\\n"],[6,[37,1],[[32,0,["isHovered"]]],null,[["default","else"],[{"statements":[[2," "],[1,[30,[36,4],[[32,1,["email","openedCount"]]],null]],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[1,[32,1,["email","openRate"]]],[10,"sup"],[12],[2,"%"],[13],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n "],[10,"span"],[14,0,"gh-content-email-stats"],[12],[2,"\\n opened\\n "],[13],[2,"\\n "]],"parameters":[]}]]],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[8,"link-to",[[24,0,"permalink gh-list-data"]],[["@route","@models"],[[32,0,["editorRoute"]],[30,[36,0],[[32,0,["post","displayName"]],[32,0,["post","id"]]],null]]],[["default"],[{"statements":[[2,"\\n"],[2," "]],"parameters":[]}]]],[2,"\\n"]],"parameters":[]}]]]],"parameters":[]}]]],[2,"\\n"],[6,[37,1],[[32,1,["hasAnalyticsPage"]]],null,[["default","else"],[{"statements":[[2," "],[8,"link-to",[[24,0,"permalink gh-list-data gh-post-list-button"],[24,"title",""]],[["@route","@model"],["posts.analytics",[32,1,["id"]]]],[["default"],[{"statements":[[2,"\\n "],[10,"span"],[15,0,[31,["gh-post-list-cta stats ",[30,[36,1],[[32,0,["isHovered"]],"is-hovered"],null]]]],[14,"title","Go to Analytics"],[14,"data-ignore-select",""],[12],[2,"\\n "],[1,[30,[36,2],["stats"],[["title"],["Go to Analytics"]]]],[2,"\\n "],[13],[2,"\\n "]],"parameters":[]}]]],[2,"\\n"]],"parameters":[]},{"statements":[[6,[37,1],[[30,[36,3],[[32,0,["session","user","isContributor"]],[32,1,["isPublished"]]],null]],null,[["default","else"],[{"statements":[[2," "],[10,"a"],[15,6,[32,1,["url"]]],[14,0,"permalink gh-list-data gh-post-list-button"],[14,"target","_blank"],[14,"rel","noopener noreferrer"],[12],[2,"\\n "],[10,"span"],[15,0,[31,["gh-post-list-cta view ",[30,[36,1],[[32,0,["isHovered"]],"is-hovered"],null]]]],[14,"title","View post"],[14,"data-ignore-select",""],[12],[2,"\\n "],[1,[30,[36,2],["arrow-top-right"],[["title"],["View post"]]]],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[8,"link-to",[[24,0,"permalink gh-list-data gh-post-list-button"],[24,"title",""]],[["@route","@models"],[[32,0,["editorRoute"]],[30,[36,0],[[32,0,["post","displayName"]],[32,0,["post","id"]]],null]]],[["default"],[{"statements":[[2,"\\n "],[10,"span"],[15,0,[31,["gh-post-list-cta edit ",[30,[36,1],[[32,0,["isHovered"]],"is-hovered"],null]]]],[14,"title","Go to Editor"],[14,"data-ignore-select",""],[12],[2,"\\n "],[1,[30,[36,2],["pen"],[["title"],["Go to Editor"]]]],[2,"\\n "],[13],[2,"\\n "]],"parameters":[]}]]],[2,"\\n"]],"parameters":[]}]]]],"parameters":[]}]]],[13],[2,"\\n"]],"hasEval":false,"upvars":["array","if","svg-jar","and","format-number","concat","hash","css-transition","gh-pluralize","humanize-recipient-filter","gh-format-post-time","post-author-names","mut","fn","on","feature","unless"]}',moduleName:"ghost-admin/components/posts-list/list-item.hbs"})
2902
- let v=(n=Ember.inject.service,r=Ember.inject.service,a=Ember.inject.service,s=Ember._tracked,o=Ember._action,l=Ember._action,u=class extends t.default{constructor(...e){super(...e),h(this,"feature",c,this),h(this,"session",d,this),h(this,"settings",p,this),h(this,"isHovered",m,this),b(this,"editorRoute",this.feature.get("convertToLexical")?"lexical-editor.edit":"editor.edit")}get post(){return this.args.post}get errorClass(){return this.post.didEmailFail?"error":""}get scheduledText(){let e=[],t=(0,i.formatPostTime)(this.post.publishedAtUTC,{timezone:this.settings.timezone,scheduled:!0})
2903
- return e.push(t),e.join(" ")}mouseOver(){this.isHovered=!0}mouseLeave(){this.isHovered=!1}},c=g(u.prototype,"feature",[n],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),d=g(u.prototype,"session",[r],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),p=g(u.prototype,"settings",[a],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),m=g(u.prototype,"isHovered",[s],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return!1}}),g(u.prototype,"mouseOver",[o],Object.getOwnPropertyDescriptor(u.prototype,"mouseOver"),u.prototype),g(u.prototype,"mouseLeave",[l],Object.getOwnPropertyDescriptor(u.prototype,"mouseLeave"),u.prototype),u)
2904
- e.default=v,Ember._setComponentTemplate(f,v)})),define("ghost-admin/components/posts-list/list",["exports","@glimmer/component"],(function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
2896
+ const g=Ember.HTMLBars.template({id:"c+EOdkes",block:'{"symbols":["@post","@hideAuthor","&attrs"],"statements":[[11,"li"],[24,0,"gh-list-row gh-posts-list-item gh-post-list-plain-status"],[17,3],[4,[38,14],["mouseover",[32,0,["mouseOver"]]],null],[4,[38,14],["mouseleave",[32,0,["mouseLeave"]]],null],[12],[2,"\\n\\n"],[6,[37,1],[[30,[36,3],[[32,0,["session","user","isContributor"]],[32,1,["isPublished"]]],null]],null,[["default","else"],[{"statements":[[2," "],[10,"a"],[15,6,[32,1,["url"]]],[14,0,"permalink gh-list-data gh-post-list-title"],[14,"target","_blank"],[14,"rel","noopener noreferrer"],[12],[2,"\\n "],[10,"h3"],[14,0,"gh-content-entry-title"],[12],[2,"\\n "],[1,[32,1,["title"]]],[2,"\\n "],[13],[2,"\\n"],[6,[37,16],[[32,2]],null,[["default"],[{"statements":[[2," "],[10,"p"],[14,0,"gh-content-entry-meta"],[12],[2,"\\n "],[10,"span"],[14,0,"gh-content-entry-author"],[12],[2,"\\n By "],[1,[30,[36,11],[[32,1]],null]],[2,"\\n\\n"],[6,[37,1],[[32,1,["primaryTag"]]],null,[["default"],[{"statements":[[2," in "],[10,"span"],[14,0,"midgrey-l2 fw5"],[12],[1,[32,1,["primaryTag","name"]]],[13],[2,"\\n"]],"parameters":[]}]]],[2,"\\n -\\n "],[13],[2,"\\n "],[10,"span"],[14,0,"gh-content-entry-date"],[12],[2,"\\n"],[6,[37,1],[[32,0,["isHovered"]]],null,[["default","else"],[{"statements":[[2," "],[1,[30,[36,10],[[32,1,["updatedAtUTC"]]],[["format"],["D MMM YYYY"]]]],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[1,[30,[36,10],[[32,1,["updatedAtUTC"]]],[["draft"],[true]]]],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"p"],[14,0,"gh-content-entry-status"],[12],[2,"\\n "],[10,"span"],[14,0,"published"],[12],[2,"\\n Published\\n"],[6,[37,1],[[32,1,["hasEmail"]]],null,[["default"],[{"statements":[[6,[37,1],[[32,0,["isHovered"]]],null,[["default","else"],[{"statements":[[2," and sent to "],[1,[30,[36,8],[[32,1,["email","emailCount"]],"member"],null]],[2,"\\n"]],"parameters":[]},{"statements":[[2," and sent\\n"]],"parameters":[]}]]]],"parameters":[]}]]],[2," "],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[8,"link-to",[[24,0,"permalink gh-list-data gh-post-list-title"]],[["@route","@models"],["editor.edit",[30,[36,0],[[32,0,["post","displayName"]],[32,0,["post","id"]]],null]]],[["default"],[{"statements":[[2,"\\n "],[10,"h3"],[14,0,"gh-content-entry-title"],[12],[2,"\\n"],[6,[37,1],[[32,1,["featured"]]],null,[["default"],[{"statements":[[2," "],[1,[30,[36,2],["star-fill"],[["class"],["gh-featured-post"]]]],[2,"\\n"]],"parameters":[]}]]],[2," "],[1,[32,1,["title"]]],[2,"\\n\\n"],[6,[37,1],[[30,[36,15],["lexicalIndicators"],null]],null,[["default"],[{"statements":[[6,[37,1],[[32,1,["lexical"]]],null,[["default","else"],[{"statements":[[2," "],[10,"span"],[14,0,"gh-lexical-indicator"],[12],[2,"L"],[13],[2,"\\n"]],"parameters":[]},{"statements":[[6,[37,1],[[32,1,["mobiledoc"]]],null,[["default"],[{"statements":[[2," "],[10,"span"],[14,0,"gh-lexical-indicator"],[12],[2,"M"],[13],[2,"\\n "]],"parameters":[]}]]]],"parameters":[]}]]]],"parameters":[]}]]],[2,"\\n "],[13],[2,"\\n"],[6,[37,16],[[32,2]],null,[["default"],[{"statements":[[2," "],[10,"p"],[14,0,"gh-content-entry-meta"],[12],[2,"\\n "],[10,"span"],[14,0,"gh-content-entry-author"],[12],[2,"\\n By "],[1,[30,[36,11],[[32,1]],null]],[2,"\\n\\n"],[6,[37,1],[[32,1,["primaryTag"]]],null,[["default"],[{"statements":[[2," in "],[10,"span"],[14,0,"midgrey-l2 fw5"],[12],[1,[32,1,["primaryTag","name"]]],[13],[2,"\\n"]],"parameters":[]}]]],[2," -\\n "],[13],[2,"\\n "],[11,"span"],[24,0,"gh-content-entry-date"],[4,[38,14],["mouseover",[30,[36,13],[[30,[36,12],[[32,0,["isDateHovered"]]],null],true],null]],null],[4,[38,14],["mouseleave",[30,[36,13],[[30,[36,12],[[32,0,["isDateHovered"]]],null],false],null]],null],[12],[2,"\\n "],[1,[30,[36,10],[[32,1,["updatedAtUTC"]]],[["draft"],[true]]]],[2,"\\n"],[6,[37,1],[[32,0,["isDateHovered"]]],null,[["default"],[{"statements":[[2," "],[11,"span"],[4,[38,7],["anim-fade-in-scale"],null],[12],[2,"on "],[1,[30,[36,10],[[32,1,["updatedAtUTC"]]],[["format"],["D MMM YYYY"]]]],[13],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n"],[2," "],[13],[2,"\\n "],[10,"p"],[14,0,"gh-content-entry-status"],[12],[2,"\\n"],[6,[37,1],[[32,1,["isScheduled"]]],null,[["default"],[{"statements":[[2," "],[10,"span"],[14,0,"scheduled"],[12],[2,"\\n Scheduled\\n"],[6,[37,1],[[32,0,["isHovered"]]],null,[["default"],[{"statements":[[2," "],[11,"span"],[24,0,"schedule-details"],[4,[38,7],["anim-fade-in-scale"],null],[12],[2,"\\n"],[6,[37,1],[[32,1,["emailOnly"]]],null,[["default","else"],[{"statements":[[2," to be sent\\n"]],"parameters":[]},{"statements":[[2," to be published "],[1,[30,[36,1],[[32,1,["newsletter"]],"and sent "],null]],[2,"\\n"]],"parameters":[]}]]],[2," "],[1,[32,0,["scheduledText"]]],[2," to "],[1,[30,[36,9],[[32,1,["emailSegment"]]],null]],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n"]],"parameters":[]}]]],[2,"\\n"],[6,[37,1],[[32,1,["isDraft"]]],null,[["default"],[{"statements":[[2," "],[10,"span"],[14,0,"draft"],[12],[2,"\\n Draft\\n "],[13],[2,"\\n"]],"parameters":[]}]]],[2,"\\n"],[6,[37,1],[[32,1,["isPublished"]]],null,[["default"],[{"statements":[[2," "],[10,"span"],[15,0,[31,["published ",[32,0,["errorClass"]]]]],[12],[2,"\\n Published\\n"],[6,[37,1],[[32,1,["didEmailFail"]]],null,[["default","else"],[{"statements":[[2," but failed to send newsletter\\n"]],"parameters":[]},{"statements":[[6,[37,1],[[32,1,["hasBeenEmailed"]]],null,[["default"],[{"statements":[[2," and sent\\n"],[6,[37,1],[[32,0,["isHovered"]]],null,[["default"],[{"statements":[[2," "],[11,"span"],[4,[38,7],["anim-fade-in-scale"],null],[12],[2,"to "],[1,[30,[36,8],[[32,1,["email","emailCount"]],"member"],null]],[13],[2,"\\n"]],"parameters":[]}]]],[2," "]],"parameters":[]}]]]],"parameters":[]}]]],[2," "],[13],[2,"\\n"]],"parameters":[]}]]],[2,"\\n"],[6,[37,1],[[32,1,["isSent"]]],null,[["default"],[{"statements":[[2," "],[10,"span"],[15,0,[31,["sent ",[32,0,["errorClass"]]]]],[12],[2,"\\n"],[6,[37,1],[[32,1,["didEmailFail"]]],null,[["default","else"],[{"statements":[[2," Failed to send newsletter\\n"]],"parameters":[]},{"statements":[[2," Sent\\n"],[6,[37,1],[[32,0,["isHovered"]]],null,[["default"],[{"statements":[[2," "],[11,"span"],[4,[38,7],["anim-fade-in-scale"],null],[12],[2,"to "],[1,[30,[36,8],[[32,1,["email","emailCount"]],"member"],null]],[13],[2,"\\n"]],"parameters":[]}]]]],"parameters":[]}]]],[2," "],[13],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n"]],"parameters":[]}]]],[2," "]],"parameters":[]}]]],[2,"\\n"]],"parameters":[]}]]],[2,"\\n"],[6,[37,1],[[30,[36,3],[[32,1,["showEmailOpenAnalytics"]],[32,1,["showEmailClickAnalytics"]]],null]],null,[["default","else"],[{"statements":[[2," "],[8,"link-to",[[24,0,"permalink gh-list-data gh-post-list-metrics"]],[["@route","@query"],["members",[30,[36,6],null,[["filterParam"],[[30,[36,5],["opened_emails.post_id:",[32,1,["id"]]],null]]]]]],[["default"],[{"statements":[[2,"\\n "],[10,"span"],[14,0,"gh-content-email-stats-value"],[12],[2,"\\n"],[6,[37,1],[[32,0,["isHovered"]]],null,[["default","else"],[{"statements":[[2," "],[1,[30,[36,4],[[32,1,["email","openedCount"]]],null]],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[1,[32,1,["email","openRate"]]],[10,"sup"],[12],[2,"%"],[13],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n "],[10,"span"],[14,0,"gh-content-email-stats"],[12],[2,"\\n opened\\n "],[13],[2,"\\n "]],"parameters":[]}]]],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[8,"link-to",[[24,0,"permalink gh-list-data"]],[["@route","@models"],[[32,0,["editorRoute"]],[30,[36,0],[[32,0,["post","displayName"]],[32,0,["post","id"]]],null]]],[["default"],[{"statements":[[2,"\\n"],[2," "]],"parameters":[]}]]],[2,"\\n"]],"parameters":[]}]]],[2,"\\n"],[6,[37,1],[[32,1,["showEmailClickAnalytics"]]],null,[["default","else"],[{"statements":[[2," "],[8,"link-to",[[24,0,"permalink gh-list-data gh-post-list-metrics"]],[["@route","@query"],["members",[30,[36,6],null,[["filterParam"],[[30,[36,5],["clicked_links.post_id:",[32,1,["id"]]],null]]]]]],[["default"],[{"statements":[[2,"\\n "],[10,"span"],[14,0,"gh-content-email-stats-value"],[12],[2,"\\n"],[6,[37,1],[[32,0,["isHovered"]]],null,[["default","else"],[{"statements":[[2," "],[1,[30,[36,4],[[32,1,["count","clicks"]]],null]],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[1,[32,1,["clickRate"]]],[10,"sup"],[12],[2,"%"],[13],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n "],[10,"span"],[14,0,"gh-content-email-stats"],[12],[2,"\\n clicked\\n "],[13],[2,"\\n "]],"parameters":[]}]]],[2,"\\n"]],"parameters":[]},{"statements":[[6,[37,1],[[32,1,["showEmailOpenAnalytics"]]],null,[["default","else"],[{"statements":[[2," "],[8,"link-to",[[24,0,"permalink gh-list-data gh-post-list-metrics"]],[["@route","@query"],["members",[30,[36,6],null,[["filterParam"],[[30,[36,5],["opened_emails.post_id:",[32,1,["id"]]],null]]]]]],[["default"],[{"statements":[[2,"\\n "],[10,"span"],[14,0,"gh-content-email-stats-value"],[12],[2,"\\n"],[6,[37,1],[[32,0,["isHovered"]]],null,[["default","else"],[{"statements":[[2," "],[1,[30,[36,4],[[32,1,["email","openedCount"]]],null]],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[1,[32,1,["email","openRate"]]],[10,"sup"],[12],[2,"%"],[13],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n "],[10,"span"],[14,0,"gh-content-email-stats"],[12],[2,"\\n opened\\n "],[13],[2,"\\n "]],"parameters":[]}]]],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[8,"link-to",[[24,0,"permalink gh-list-data"]],[["@route","@models"],[[32,0,["editorRoute"]],[30,[36,0],[[32,0,["post","displayName"]],[32,0,["post","id"]]],null]]],[["default"],[{"statements":[[2,"\\n"],[2," "]],"parameters":[]}]]],[2,"\\n"]],"parameters":[]}]]]],"parameters":[]}]]],[2,"\\n"],[6,[37,1],[[32,1,["hasAnalyticsPage"]]],null,[["default","else"],[{"statements":[[2," "],[8,"link-to",[[24,0,"permalink gh-list-data gh-post-list-button"],[24,"title",""]],[["@route","@model"],["posts.analytics",[32,1,["id"]]]],[["default"],[{"statements":[[2,"\\n "],[10,"span"],[15,0,[31,["gh-post-list-cta stats ",[30,[36,1],[[32,0,["isHovered"]],"is-hovered"],null]]]],[14,"title","Go to Analytics"],[14,"data-ignore-select",""],[12],[2,"\\n "],[1,[30,[36,2],["stats"],[["title"],["Go to Analytics"]]]],[2,"\\n "],[13],[2,"\\n "]],"parameters":[]}]]],[2,"\\n"]],"parameters":[]},{"statements":[[6,[37,1],[[30,[36,3],[[32,0,["session","user","isContributor"]],[32,1,["isPublished"]]],null]],null,[["default","else"],[{"statements":[[2," "],[10,"a"],[15,6,[32,1,["url"]]],[14,0,"permalink gh-list-data gh-post-list-button"],[14,"target","_blank"],[14,"rel","noopener noreferrer"],[12],[2,"\\n "],[10,"span"],[15,0,[31,["gh-post-list-cta view ",[30,[36,1],[[32,0,["isHovered"]],"is-hovered"],null]]]],[14,"title","View post"],[14,"data-ignore-select",""],[12],[2,"\\n "],[1,[30,[36,2],["arrow-top-right"],[["title"],["View post"]]]],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[8,"link-to",[[24,0,"permalink gh-list-data gh-post-list-button"],[24,"title",""]],[["@route","@models"],[[32,0,["editorRoute"]],[30,[36,0],[[32,0,["post","displayName"]],[32,0,["post","id"]]],null]]],[["default"],[{"statements":[[2,"\\n "],[10,"span"],[15,0,[31,["gh-post-list-cta edit ",[30,[36,1],[[32,0,["isHovered"]],"is-hovered"],null]]]],[14,"title","Go to Editor"],[14,"data-ignore-select",""],[12],[2,"\\n "],[1,[30,[36,2],["pen"],[["title"],["Go to Editor"]]]],[2,"\\n "],[13],[2,"\\n "]],"parameters":[]}]]],[2,"\\n"]],"parameters":[]}]]]],"parameters":[]}]]],[13],[2,"\\n"]],"hasEval":false,"upvars":["array","if","svg-jar","and","format-number","concat","hash","css-transition","gh-pluralize","humanize-recipient-filter","gh-format-post-time","post-author-names","mut","fn","on","feature","unless"]}',moduleName:"ghost-admin/components/posts-list/list-item.hbs"})
2897
+ let f=(n=Ember.inject.service,r=Ember.inject.service,a=Ember.inject.service,s=Ember._tracked,o=Ember._action,l=Ember._action,u=class extends t.default{constructor(...e){super(...e),h(this,"feature",c,this),h(this,"session",d,this),h(this,"settings",p,this),h(this,"isHovered",m,this)}get post(){return this.args.post}get errorClass(){return this.post.didEmailFail?"error":""}get scheduledText(){let e=[],t=(0,i.formatPostTime)(this.post.publishedAtUTC,{timezone:this.settings.timezone,scheduled:!0})
2898
+ return e.push(t),e.join(" ")}mouseOver(){this.isHovered=!0}mouseLeave(){this.isHovered=!1}},c=b(u.prototype,"feature",[n],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),d=b(u.prototype,"session",[r],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),p=b(u.prototype,"settings",[a],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),m=b(u.prototype,"isHovered",[s],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return!1}}),b(u.prototype,"mouseOver",[o],Object.getOwnPropertyDescriptor(u.prototype,"mouseOver"),u.prototype),b(u.prototype,"mouseLeave",[l],Object.getOwnPropertyDescriptor(u.prototype,"mouseLeave"),u.prototype),u)
2899
+ e.default=f,Ember._setComponentTemplate(g,f)})),define("ghost-admin/components/posts-list/list",["exports","@glimmer/component"],(function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
2905
2900
  const i=Ember.HTMLBars.template({id:"jL25VlRn",block:'{"symbols":["menu","list","post","&default","@list","@model"],"statements":[[8,"multi-list/list",[[16,0,[31,["posts-list gh-list ",[30,[36,0],[[32,6],"no-posts"],null]," feature-memberAttribution"]]]],[["@model"],[[32,5]]],[["default"],[{"statements":[[2,"\\n"],[6,[37,2],[[30,[36,1],[[30,[36,1],[[32,6]],null]],null]],null,[["default","else"],[{"statements":[[2," "],[8,[32,2,["item"]],[[24,0,"gh-posts-list-item-group"]],[["@id"],[[32,3,["id"]]]],[["default"],[{"statements":[[2,"\\n "],[8,"posts-list/list-item",[[16,"data-test-post-id",[32,3,["id"]]]],[["@post"],[[32,3]]],null],[2,"\\n "]],"parameters":[]}]]],[2,"\\n"]],"parameters":[3]},{"statements":[[2," "],[18,4,null],[2,"\\n"]],"parameters":[]}]]]],"parameters":[2]}]]],[2,"\\n\\n"],[8,"gh-context-menu",[],[["@name"],["context-menu"]],[["default"],[{"statements":[[2,"\\n "],[8,"posts-list/context-menu",[],[["@menu"],[[32,1]]],null],[2,"\\n"]],"parameters":[1]}]]],[2,"\\n"]],"hasEval":false,"upvars":["unless","-track-array","each"]}',moduleName:"ghost-admin/components/posts-list/list.hbs"})
2906
2901
  class n extends t.default{get list(){return this.args.list}}e.default=n,Ember._setComponentTemplate(i,n)})),define("ghost-admin/components/posts-list/modals/add-tag",["exports","@glimmer/component","ember-data","ember-concurrency"],(function(e,t,i,n){var r,a,s,o,l,u,c,d,p,m,h,b
2907
2902
  function g(e,t,i,n){i&&Object.defineProperty(e,t,{enumerable:i.enumerable,configurable:i.configurable,writable:i.writable,value:i.initializer?i.initializer.call(n):void 0})}function f(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")}function v(e,t,i){if(!t.has(e))throw new TypeError("attempted to get private field on non-instance")
@@ -3522,7 +3517,7 @@ const Me="(Untitled)"
3522
3517
  let De=["post.scratch","post.titleScratch","post.hasDirtyAttributes","post.tags.[]","post.isError"]
3523
3518
  r.default.eachAttribute((function(e){De.push(`post.${e}`)}))
3524
3519
  const Ae={errors:{post:{published:{published:"Update failed",draft:"Saving failed",scheduled:"Scheduling failed"},draft:{published:"Publish failed",draft:"Saving failed",scheduled:"Scheduling failed"},scheduled:{scheduled:"Update failed",draft:"Unscheduling failed",published:"Publish failed"}}},success:{post:{published:{published:"Updated",draft:"Saved",scheduled:"Scheduled",sent:"Sent"},draft:{published:"Published",draft:"Saved",scheduled:"Scheduled",sent:"Sent"},scheduled:{scheduled:"Updated",draft:"Unscheduled",published:"Published",sent:"Sent"},sent:{sent:"Updated"}}}}
3525
- let Ie=(v=Ember.inject.controller,y=Ember.inject.service,w=Ember.inject.service,k=Ember.inject.service,E=Ember.inject.service,P=Ember.inject.service,O=Ember.inject.service,j=Ember.inject.service,_=Ember.inject.service,T=Ember.inject.service,z=Ember.computed.alias("model"),x=(0,l.default)("post.isPublished"),S=(0,l.default)("post.isScheduled"),C=(0,h.taskGroup)().enqueue(),M=Ember.computed.mapBy("post.tags","name"),D=Ember.computed(...De),A=Ember.computed,I=Ember.computed("_snippets.@each.{name,isNew}"),N=Ember.computed("session.user.{isAdmin,isEditor}"),L=Ember.computed("_autosaveTask.isRunning","_timedSaveTask.isRunning"),R=Ember.computed("post.isDraft"),U=Ember._action,F=Ember._action,B=Ember._action,V=Ember._action,H=Ember._action,q=Ember._action,$=Ember._action,Y=Ember._action,W=Ember._action,G=Ember._action,K=Ember._action,J=Ember._action,X=Ember._action,Z=Ember._action,Q=Ember._action,ee=Ember._action,te=Ember._action,ie=Ember._action,ne=Ember._action,re=(0,h.task)({group:"saveTasks"}),ae=(0,h.task)({group:"saveTasks"}),se=(0,h.task)({group:"saveTasks"}),oe=Ember._action,le=(0,h.task)((function*(){if(this._canAutosave){if(this.get("post.isNew"))return this.autosaveTask.perform()
3520
+ let Ie=(v=Ember.inject.controller,y=Ember.inject.service,w=Ember.inject.service,k=Ember.inject.service,E=Ember.inject.service,P=Ember.inject.service,O=Ember.inject.service,j=Ember.inject.service,_=Ember.inject.service,T=Ember.inject.service,z=Ember.computed.alias("model"),x=(0,l.default)("post.isPublished"),S=(0,l.default)("post.isScheduled"),C=(0,h.taskGroup)().keepLatest(),M=Ember.computed.mapBy("post.tags","name"),D=Ember.computed(...De),A=Ember.computed,I=Ember.computed("_snippets.@each.{name,isNew}"),N=Ember.computed("session.user.{isAdmin,isEditor}"),L=Ember.computed("_autosaveTask.isRunning","_timedSaveTask.isRunning"),R=Ember.computed("post.isDraft"),U=Ember._action,F=Ember._action,B=Ember._action,V=Ember._action,H=Ember._action,q=Ember._action,$=Ember._action,Y=Ember._action,W=Ember._action,G=Ember._action,K=Ember._action,J=Ember._action,X=Ember._action,Z=Ember._action,Q=Ember._action,ee=Ember._action,te=Ember._action,ie=Ember._action,ne=Ember._action,re=(0,h.task)({group:"saveTasks"}),ae=(0,h.task)({group:"saveTasks"}),se=(0,h.task)({group:"saveTasks"}),oe=Ember._action,le=(0,h.task)((function*(){if(this._canAutosave){if(this.get("post.isNew"))return this.autosaveTask.perform()
3526
3521
  yield(0,h.timeout)(3e3),this.autosaveTask.perform()}})).restartable(),ue=(0,h.task)((function*(){if(this._canAutosave)for(;"test"!==u.default.environment;)yield(0,h.timeout)(6e4),this.autosaveTask.perform()})).drop(),ce=class extends Ember.Controller{constructor(...e){super(...e),xe(this,"application",de,this),xe(this,"feature",pe,this),xe(this,"membersCountCache",me,this),xe(this,"modals",he,this),xe(this,"notifications",be,this),xe(this,"router",ge,this),xe(this,"slugGenerator",fe,this),xe(this,"session",ve,this),xe(this,"settings",ye,this),xe(this,"ui",we,this),xe(this,"config",ke,this),Se(this,"shouldFocusTitle",!1),Se(this,"showSettingsMenu",!1),Se(this,"fromAnalytics",!1),Se(this,"wordcount",null),Se(this,"_leaveConfirmed",!1),Se(this,"_previousTagNames",null),xe(this,"post",Ee,this),xe(this,"willPublish",Pe,this),xe(this,"willSchedule",Oe,this),xe(this,"saveTasks",je,this),xe(this,"_tagNames",_e,this),xe(this,"_autosaveTask",Te,this),xe(this,"_timedSaveTask",ze,this)}get hasDirtyAttributes(){return this._hasDirtyAttributes()}set hasDirtyAttributes(e){return e}get _snippets(){return this.store.peekAll("snippet")}get snippets(){return this._snippets.reject((e=>e.get("isNew"))).reject((e=>["{}",'"{}"'].includes(JSON.stringify(e.mobiledoc)))).sort(((e,t)=>e.name.localeCompare(t.name)))}get canManageSnippets(){let{user:e}=this.session
3527
3522
  return!(!e.get("isAdmin")&&!e.get("isEditor"))}get _autosaveRunning(){let e=this.get("_autosaveTask.isRunning"),t=this.get("_timedSaveTask.isRunning")
3528
3523
  return e||t}get _canAutosave(){return"test"!==u.default.environment&&this.get("post.isDraft")}updateScratch(e){this.set("post.scratch",e),this._autosaveTask.perform(),this._timedSaveTask.perform()}updateTitleScratch(e){this.set("post.titleScratch",e)}setSaveType(e){"publish"===e?(this.set("willPublish",!0),this.set("willSchedule",!1)):"draft"===e?(this.set("willPublish",!1),this.set("willSchedule",!1)):"schedule"===e&&(this.set("willSchedule",!0),this.set("willPublish",!1))}save(e){return this.saveTask.perform(e)}cancelAutosave(){this._autosaveTask.cancelAll(),this._timedSaveTask.cancelAll()}leaveEditor(){let e=this.leaveEditorTransition
@@ -3625,7 +3620,7 @@ const Ue="(Untitled)"
3625
3620
  let Fe=["post.lexicalScratch","post.titleScratch","post.hasDirtyAttributes","post.tags.[]","post.isError"]
3626
3621
  a.default.eachAttribute((function(e){Fe.push(`post.${e}`)}))
3627
3622
  const Be={errors:{post:{published:{published:"Update failed",draft:"Saving failed",scheduled:"Scheduling failed"},draft:{published:"Publish failed",draft:"Saving failed",scheduled:"Scheduling failed"},scheduled:{scheduled:"Update failed",draft:"Unscheduling failed",published:"Publish failed"}}},success:{post:{published:{published:"Updated",draft:"Saved",scheduled:"Scheduled",sent:"Sent"},draft:{published:"Published",draft:"Saved",scheduled:"Scheduled",sent:"Sent"},scheduled:{scheduled:"Updated",draft:"Unscheduled",published:"Published",sent:"Sent"},sent:{sent:"Updated"}}}}
3628
- let Ve=(y=Ember.inject.controller,w=Ember.inject.service,k=Ember.inject.service,E=Ember.inject.service,P=Ember.inject.service,O=Ember.inject.service,j=Ember.inject.service,_=Ember.inject.service,T=Ember.inject.service,z=Ember.inject.service,x=Ember.computed.alias("model"),S=(0,u.default)("post.isPublished"),C=(0,u.default)("post.isScheduled"),M=(0,h.taskGroup)().enqueue(),D=Ember.computed.mapBy("post.tags","name"),A=Ember.computed(...Fe),I=Ember.computed,N=Ember.computed("_snippets.@each.{name,isNew,mobiledoc,lexical}"),L=Ember.computed,R=Ember.computed("session.user.{isAdmin,isEditor}"),U=Ember.computed("_autosaveTask.isRunning","_timedSaveTask.isRunning","_revisionSaveTask.isRunning"),F=Ember.computed("post.isDraft"),B=Ember._action,V=Ember._action,H=Ember._action,q=Ember._action,$=Ember._action,Y=Ember._action,W=Ember._action,G=Ember._action,K=Ember._action,J=Ember._action,X=Ember._action,Z=Ember._action,Q=Ember._action,ee=Ember._action,te=Ember._action,ie=Ember._action,ne=Ember._action,re=Ember._action,ae=Ember._action,se=Ember._action,oe=Ember._action,le=(0,h.task)({group:"saveTasks"}),ue=(0,h.task)({group:"saveTasks"}),ce=(0,h.task)({group:"saveTasks"}),de=Ember._action,pe=Ember._action,me=(0,h.task)((function*(){if(this._canAutosave){if(this.get("post.isNew"))return this.autosaveTask.perform()
3623
+ let Ve=(y=Ember.inject.controller,w=Ember.inject.service,k=Ember.inject.service,E=Ember.inject.service,P=Ember.inject.service,O=Ember.inject.service,j=Ember.inject.service,_=Ember.inject.service,T=Ember.inject.service,z=Ember.inject.service,x=Ember.computed.alias("model"),S=(0,u.default)("post.isPublished"),C=(0,u.default)("post.isScheduled"),M=(0,h.taskGroup)().keepLatest(),D=Ember.computed.mapBy("post.tags","name"),A=Ember.computed(...Fe),I=Ember.computed,N=Ember.computed("_snippets.@each.{name,isNew,mobiledoc,lexical}"),L=Ember.computed,R=Ember.computed("session.user.{isAdmin,isEditor}"),U=Ember.computed("_autosaveTask.isRunning","_timedSaveTask.isRunning","_revisionSaveTask.isRunning"),F=Ember.computed("post.isDraft"),B=Ember._action,V=Ember._action,H=Ember._action,q=Ember._action,$=Ember._action,Y=Ember._action,W=Ember._action,G=Ember._action,K=Ember._action,J=Ember._action,X=Ember._action,Z=Ember._action,Q=Ember._action,ee=Ember._action,te=Ember._action,ie=Ember._action,ne=Ember._action,re=Ember._action,ae=Ember._action,se=Ember._action,oe=Ember._action,le=(0,h.task)({group:"saveTasks"}),ue=(0,h.task)({group:"saveTasks"}),ce=(0,h.task)({group:"saveTasks"}),de=Ember._action,pe=Ember._action,me=(0,h.task)((function*(){if(this._canAutosave){if(this.get("post.isNew"))return this.autosaveTask.perform()
3629
3624
  yield(0,h.timeout)(3e3),this.autosaveTask.perform()}})).restartable(),he=(0,h.task)((function*(){if(this._canAutosave)for(;"test"!==c.default.environment;)yield(0,h.timeout)(6e4),this.autosaveTask.perform()})).drop(),be=(0,h.task)((function*(){if(this._canAutosave)for(;"test"!==c.default.environment;)yield(0,h.timeout)(6e5),this.autosaveTask.perform({saveRevision:this._canAutosave})})).drop(),ge=class extends Ember.Controller{constructor(...e){super(...e),Ne(this,"application",fe,this),Ne(this,"feature",ve,this),Ne(this,"membersCountCache",ye,this),Ne(this,"modals",we,this),Ne(this,"notifications",ke,this),Ne(this,"router",Ee,this),Ne(this,"slugGenerator",Pe,this),Ne(this,"session",Oe,this),Ne(this,"settings",je,this),Ne(this,"ui",_e,this),Ne(this,"config",Te,this),Le(this,"shouldFocusTitle",!1),Le(this,"showSettingsMenu",!1),Le(this,"fromAnalytics",!1),Le(this,"wordCount",0),Le(this,"_leaveConfirmed",!1),Le(this,"_previousTagNames",null),Ne(this,"post",ze,this),Ne(this,"willPublish",xe,this),Ne(this,"willSchedule",Se,this),Ne(this,"saveTasks",Ce,this),Ne(this,"_tagNames",Me,this),Ne(this,"_autosaveTask",De,this),Ne(this,"_timedSaveTask",Ae,this),Ne(this,"_revisionSaveTask",Ie,this)}get hasDirtyAttributes(){return this._hasDirtyAttributes()}set hasDirtyAttributes(e){return e}get _snippets(){return this.store.peekAll("snippet")}get snippets(){return this._snippets.reject((e=>e.get("isNew"))).sort(((e,t)=>e.name.localeCompare(t.name))).filter((e=>null!==e.lexical)).map((e=>(e.value=JSON.stringify(e.lexical),e)))}get collections(){return this.store.peekAll("collection")}get canManageSnippets(){let{user:e}=this.session
3630
3625
  return!(!e.get("isAdmin")&&!e.get("isEditor"))}get _autosaveRunning(){let e=this.get("_autosaveTask.isRunning"),t=this.get("_timedSaveTask.isRunning"),i=this.get("_revisionSaveTask.isRunning")
3631
3626
  return e||t||i}get _canAutosave(){return"test"!==c.default.environment&&this.get("post.isDraft")}updateScratch(e){this.set("post.lexicalScratch",JSON.stringify(e)),this._autosaveTask.perform(),this._timedSaveTask.perform(),this._revisionSaveTask.perform()}updateTitleScratch(e){this.set("post.titleScratch",e)}setSaveType(e){"publish"===e?(this.set("willPublish",!0),this.set("willSchedule",!1)):"draft"===e?(this.set("willPublish",!1),this.set("willSchedule",!1)):"schedule"===e&&(this.set("willSchedule",!0),this.set("willPublish",!1))}save(e){return this.saveTask.perform(e)}cancelAutosave(){this._autosaveTask.cancelAll(),this._timedSaveTask.cancelAll(),this._revisionSaveTask.cancelAll()}leaveEditor(){let e=this.leaveEditorTransition
@@ -3667,14 +3662,15 @@ let i=JSON.parse(t).root.children
3667
3662
  const n={namespace:"KoenigEditor",nodes:i}
3668
3663
  n.syncedAt=p.default.utc().toISOString(),e.lexical=n,e.save()}}))}setPost(e){e!==this.post?(this.reset(),this.set("post",e),this.backgroundLoaderTask.perform(),this.set("shouldFocusTitle",e.get("isNew")),e.set("titleScratch",e.get("title")),e.set("lexicalScratch",e.get("lexical")),this._previousTagNames=this._tagNames,window.onbeforeunload=()=>{if(this.hasDirtyAttributes)return"==============================\n\nHey there! It looks like you're in the middle of writing something and you haven't saved all of your content.\n\nSave before you go!\n\n=============================="}):this.set("shouldFocusTitle",e.get("isNew"))}async willTransition(e){let t=this.post
3669
3664
  if(!t)return
3665
+ if(this.saveTask.isRunning)return e.abort(),await this.saveTask.last,e.retry()
3666
+ if(this.savePostTask.isRunning)return e.abort(),await this.savePostTask.last,e.retry()
3670
3667
  if(this.updateSlugTask.isRunning)return e.abort(),await this.updateSlugTask.last,e.retry()
3671
- let n=this.hasDirtyAttributes,r=t.getProperties("isDeleted","isSaving","hasDirtyAttributes","isNew"),a=t.get("postRevisions").toArray(),s=a[a.length-1],o=t.get("lexical")!==s.get("lexical"),l="lexical-editor.new"===this.router.currentRouteName&&"lexical-editor.edit"===e.targetName&&e.intent.contexts&&e.intent.contexts[0]&&e.intent.contexts[0].id===t.id,u=r.isDeleted&&(r.isSaving||!r.hasDirtyAttributes)
3668
+ let n=this.hasDirtyAttributes,r=t.getProperties("isDeleted","isSaving","hasDirtyAttributes","isNew"),a=t.get("postRevisions").toArray(),s=a[a.length-1],o=!t.isNew&&t.lexical!==s.lexical,l="lexical-editor.new"===this.router.currentRouteName&&"lexical-editor.edit"===e.targetName&&e.intent.contexts&&e.intent.contexts[0]&&e.intent.contexts[0].id===t.id,u=r.isDeleted&&(r.isSaving||!r.hasDirtyAttributes)
3672
3669
  if(o)return e.abort(),this._autosaveRunning&&(this.cancelAutosave(),this.autosaveTask.cancelAll()),await this.autosaveTask.perform({leavingEditor:!0,backgroundSave:!1}),e.retry()
3673
3670
  if(!this._leaveConfirmed&&!l&&!u&&n){if(e.abort(),this.saveTasks.isRunning)return await this.saveTasks.last,e.retry()
3674
3671
  if(this._autosaveRunning)return this.cancelAutosave(),this.autosaveTask.cancelAll(),await this.autosaveTask.perform({leavingEditor:!0}),e.retry()
3675
3672
  this.post&&Object.assign(this._leaveModalReason,{status:this.post.status}),console.log("showing leave editor modal",this._leaveModalReason)
3676
- if(!0!==await this.modals.open(i.default))return
3677
- this._leaveConfirmed=!0,e.retry()}l||"lexical-editor.edit"===e.targetName||this.reset()}reset(){let e=this.post
3673
+ return!0!==await this.modals.open(i.default)?void 0:(this._leaveConfirmed=!0,e.retry())}l||"lexical-editor.edit"===e.targetName||this.reset()}reset(){let e=this.post
3678
3674
  this.cancelAutosave(),e&&(e.updateTags(),e.get("isNew")?e.deleteRecord():e.rollbackAttributes()),this._previousTagNames=[],this._leaveConfirmed=!1,this.set("post",null),this.set("hasDirtyAttributes",!1),this.set("shouldFocusTitle",!1),this.set("showSettingsMenu",!1),this.set("wordCount",null),window.onbeforeunload=null}_hasDirtyAttributes(){let e=this.post
3679
3675
  if(!e)return!1
3680
3676
  if(e.get("isError"))return this._leaveModalReason={reason:"isError",context:e.errors.messages},!0
@@ -3754,10 +3750,8 @@ let n=(0,o.ghPluralize)(i.length,"member")
3754
3750
  return t&&t.slug?i.length>1?`${n} match current filter`:`${n} matches current filter`:n}get hideSearchBar(){return!this.members.length&&!this.searchParam&&!this.searchIsFocused}get showingAll(){return!(this.searchParam||this.paidParam||this.label||this.filterParam||this.softFilterParam)}get availableOrders(){return this.feature.get("emailAnalytics")?[{name:"Newest",value:null},{name:"Open rate",value:"email_open_rate"}]:[]}get selectedOrder(){return this.availableOrders.find((e=>e.value===this.orderParam))}get availableLabels(){let e=this._availableLabels.filter((e=>!e.isNew)).filter((e=>null!==e.id)).sort(((e,t)=>e.name.localeCompare(t.name,void 0,{ignorePunctuation:!0}))).toArray()
3755
3751
  return e.unshiftObject({name:"All labels",slug:null}),e}get selectedLabel(){let{label:e,availableLabels:t}=this
3756
3752
  return t.findBy("slug",e)}get labelModalData(){return{label:this.modalLabel,labels:this.availableLabels}}get selectedPaidParam(){return this.paidParams.findBy("value",this.paidParam)||{value:"!unknown"}}get isFiltered(){return!!(this.label||this.paidParam||this.searchParam||this.filterParam)}get availableFilters(){return this.softFilters.length?this.softFilters:this.filters}get filterColumns(){const e=this.availableFilters.flatMap((e=>e.properties?.getColumns?e.properties?.getColumns(e).map((t=>({label:e.properties.columnLabel,...t,name:e.type}))):e.properties?.columnLabel?[{name:e.type,label:e.properties.columnLabel,getValue:e.properties.getColumnValue?t=>e.properties.getColumnValue(t,e):null}]:[]))
3757
- return e.filter(((t,i)=>e.findIndex((e=>e.label===t.label))===i)).splice(0,2)}includeTierQuery(){return(this.filters.length?this.filters:this.softFilters).some((e=>"tier"===e.type))}refineFilterParam(e){const t=new RegExp("\\(([^)]*[,+\\-]?email_disabled[^)]*)\\)(?![+\\-]|:\\'[^']*\\'|:\\\"[^\"]*\\\")","g")
3758
- return e.replace(t,"$1")}getApiQueryObject({params:e,extraFilters:t=[]}={}){let{label:i,paidParam:n,searchParam:r,filterParam:a}=e||this
3759
- a&&(a=this.refineFilterParam(a))
3760
- let s=[]
3753
+ return e.filter(((t,i)=>e.findIndex((e=>e.label===t.label))===i)).splice(0,2)}includeTierQuery(){return(this.filters.length?this.filters:this.softFilters).some((e=>"tier"===e.type))}getApiQueryObject({params:e,extraFilters:t=[]}={}){let{label:i,paidParam:n,searchParam:r,filterParam:a}=e||this
3754
+ if(a){const e=/^\(newsletters\.slug:[^()]+[+,]email_disabled:[01]\)$/;(/^\(subscribed:(?:true|false)[+,]email_disabled:[01]\)$/.test(a)||e.test(a))&&(a=a.slice(1,-1))}let s=[]
3761
3755
  s=s.concat(t),i&&s.push(`label:'${i}'`),null!==n&&("true"===n?s.push("status:-free"):s.push("status:free")),a&&s.push(a)
3762
3756
  let o=r?{search:r}:{}
3763
3757
  return Object.assign({},{filter:s.join("+")},o)}refreshData(){this.fetchMembersTask.perform(),this.fetchLabelsTask.perform(),this.membersStats.invalidate(),this.membersStats.fetchCounts(),this.membersStats.fetchMemberCount()}changeOrder(e){this.orderParam=e.value}applyFilter(e,t){this.softFilters=Ember.A([]),this.filterParam=e||null,this.filters=t}applyParsedFilter(e){this.softFilters=Ember.A([]),this.filters=e}applySoftFilter(e,t){this.softFilters=t,this.softFilterParam=e||null
@@ -4891,7 +4885,9 @@ function s(e,t,i,n){i&&Object.defineProperty(e,t,{enumerable:i.enumerable,config
4891
4885
  return Object.keys(n).forEach((function(e){a[e]=n[e]})),a.enumerable=!!a.enumerable,a.configurable=!!a.configurable,("value"in a||a.initializer)&&(a.writable=!0),a=i.slice().reverse().reduce((function(i,n){return n(e,t,i)||i}),a),r&&void 0!==a.initializer&&(a.value=a.initializer?a.initializer.call(r):void 0,a.initializer=void 0),void 0===a.initializer&&(Object.defineProperty(e,t,a),a=null),a}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
4892
4886
  let l=(i=Ember.inject.service,n=class extends Ember.Route{constructor(...e){super(...e),s(this,"store",r,this),s(this,"config",a,this)}beforeModel(){if(super.beforeModel(...arguments),!this.config.enableDeveloperExperiments)return this.transitionTo("home")}model(){return this.store.queryRecord("post",{limit:1,order:"published_at DESC"})}},r=o(n.prototype,"store",[i],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),a=o(n.prototype,"config",[t.inject],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),n)
4893
4887
  e.default=l})),define("ghost-admin/routes/editor",["exports","jquery","ghost-admin/routes/authenticated"],(function(e,t,i){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
4894
- var n=i.default.extend({feature:Ember.inject.service(),notifications:Ember.inject.service(),ui:Ember.inject.service(),classNames:["editor"],activate(){this._super(...arguments),this.ui.set("isFullScreen",!0)},setupController(e,t,i){"posts.analytics"===i.from?.name&&"editor.new"!==i.to?.name&&(e.fromAnalytics=!0)},resetController(e){e.fromAnalytics=!1},deactivate(){this._super(...arguments),this.ui.set("isFullScreen",!1)},actions:{save(){this._blurAndScheduleAction((function(){this.controller.send("save")}))},authorizationFailed(){},willTransition(e){if(this.get("upgradeStatus.isRequired"))return this._super(...arguments)
4888
+ var n=i.default.extend({feature:Ember.inject.service(),notifications:Ember.inject.service(),ui:Ember.inject.service(),classNames:["editor"],beforeModel(e){if(this.feature.lexicalEditor){const{name:t}=e.to,{type:i,post_id:n}=e.to.params
4889
+ if("editor.new"===t)return this.router.transitionTo("lexical-editor.new",i)
4890
+ if("editor.edit"===t)return this.router.transitionTo("lexical-editor.edit",i,n)}},activate(){this._super(...arguments),this.ui.set("isFullScreen",!0)},setupController(e,t,i){"posts.analytics"===i.from?.name&&"editor.new"!==i.to?.name&&(e.fromAnalytics=!0)},resetController(e){e.fromAnalytics=!1},deactivate(){this._super(...arguments),this.ui.set("isFullScreen",!1)},actions:{save(){this._blurAndScheduleAction((function(){this.controller.send("save")}))},authorizationFailed(){},willTransition(e){if(this.get("upgradeStatus.isRequired"))return this._super(...arguments)
4895
4891
  this.controller.willTransition(e)}},buildRouteInfoMetadata(){return{titleToken:()=>this.get("controller.post.title")||"Editor",bodyClasses:["gh-body-fullscreen"],mainClasses:["gh-main-white"]}},_blurAndScheduleAction(e){let i=(0,t.default)(document.activeElement)
4896
4892
  i.is('input[type="text"]')&&i.trigger("focusout"),Ember.run.scheduleOnce("actions",this,e)}})
4897
4893
  e.default=n})),define("ghost-admin/routes/editor/edit",["exports","ghost-admin/routes/authenticated","ghost-admin/decorators/inject","ember-inflector"],(function(e,t,i,n){var r,a,s,o
@@ -4961,7 +4957,7 @@ e.set("post",null),e.reset()}}async model(e,t){let{type:i,post_id:n}=e
4961
4957
  if(!["post","page"].includes(i)){let e=t.intent.url.replace(/^\//,"")
4962
4958
  return this.replaceWith("error404",{path:e,status:404})}let r={id:n}
4963
4959
  let a=(await this.store.query(i,r)).firstObject
4964
- if(a.mobiledoc){if(!this.feature.get("convertToLexical")||!this.feature.get("lexicalEditor"))return this.replaceWith("editor.edit",a)
4960
+ if(a.mobiledoc){if(!this.feature.get("lexicalEditor"))return this.replaceWith("editor.edit",a)
4965
4961
  a=await a.save({adapterOptions:{convertToLexical:1}})}return a}afterModel(e){super.afterModel(...arguments)
4966
4962
  const t=this.session.user,n=(0,i.pluralize)(e.constructor.modelName)
4967
4963
  return t.isAuthorOrContributor&&!e.isAuthoredByUser(t)||t.isContributor&&!e.isDraft?this.replaceWith(n):void 0}serialize(e){return{type:e.constructor.modelName,post_id:e.id}}setupController(e,t){this.controllerFor("lexical-editor").setPost(t)}},o=r.prototype,l="feature",u=[n],c={configurable:!0,enumerable:!0,writable:!0,initializer:null},p={},Object.keys(c).forEach((function(e){p[e]=c[e]})),p.enumerable=!!p.enumerable,p.configurable=!!p.configurable,("value"in p||p.initializer)&&(p.writable=!0),p=u.slice().reverse().reduce((function(e,t){return t(o,l,e)||e}),p),d&&void 0!==p.initializer&&(p.value=p.initializer?p.initializer.call(d):void 0,p.initializer=void 0),void 0===p.initializer&&(Object.defineProperty(o,l,p),p=null),a=p,r)
@@ -5827,23 +5823,24 @@ return this.ghostPaths.url.join(e.host,t).replace(/\/$/,"")}get iframeURL(){let
5827
5823
  if(window.location.hash&&window.location.hash.includes(this.exploreRouteRoot)){let t=window.location.hash.replace(this.exploreRouteRoot,"")
5828
5824
  t&&!t.includes("connect")&&(e+=t.replace(/^\//,""))}return e}constructor(){super(...arguments),h(this,"router",l,this),h(this,"feature",u,this),h(this,"ghostPaths",c,this),b(this,"exploreUrl","https://ghost.org/explore/"),b(this,"exploreRouteRoot","#/explore"),b(this,"submitRoute","submit"),h(this,"exploreWindowOpen",d,this),h(this,"siteData",p,this),h(this,"isIframeTransition",m,this),this.exploreUrl&&window.addEventListener("message",(e=>{e&&e.data&&e.data.route&&this.handleRouteChangeInIframe(e.data.route)}))}handleRouteChangeInIframe(e){if(this.exploreWindowOpen){let t=this.exploreRouteRoot
5829
5825
  e.match(/^\/explore(\/.*)?/)&&(e=e.replace(/\/explore/,"")),"/"!==e&&(t+=e),window.location.hash!==t&&window.history.replaceState(window.history.state,"",t)}}sendRouteUpdate(e){this.getExploreIframe().contentWindow.postMessage({query:"routeUpdate",response:e},"*")}sendUIUpdate(e){this.getExploreIframe().contentWindow.postMessage({query:"uiUpdate",response:e},"*")}toggleExploreWindow(e){this.exploreWindowOpen&&e||(this.exploreWindowOpen=e)}openExploreWindow(){this.exploreWindowOpen||(this.ensureIframeIsLoaded(),window.location.hash="/explore",this.router.transitionTo("/explore"),this.toggleExploreWindow(!0))}ensureIframeIsLoaded(){this.getExploreIframe()&&!this.getExploreIframe()?.src&&(this.getExploreIframe().src=this.iframeURL)}getExploreIframe(){return document.getElementById("explore-frame")}},l=g(o.prototype,"router",[t],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),u=g(o.prototype,"feature",[i],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),c=g(o.prototype,"ghostPaths",[n],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),d=g(o.prototype,"exploreWindowOpen",[r],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return!1}}),p=g(o.prototype,"siteData",[a],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return null}}),m=g(o.prototype,"isIframeTransition",[s],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return!1}}),o)
5830
- e.default=f})),define("ghost-admin/services/feature",["exports","jquery","ghost-admin/decorators/inject"],(function(e,t,i){var n,r,a,s,o,l,u,c,d,p,m,h,b,g,f,v,y,w,k,E,P,O,j,_,T,z,x,S,C,M,D,A,I,N,L,R,U,F,B,V,H,q,$,Y,W,G,K,J,X,Z,Q,ee,te,ie,ne,re,ae,se
5831
- function oe(e,t,i,n){i&&Object.defineProperty(e,t,{enumerable:i.enumerable,configurable:i.configurable,writable:i.writable,value:i.initializer?i.initializer.call(n):void 0})}function le(e,t,i){return(t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e
5826
+ e.default=f})),define("ghost-admin/services/feature",["exports","jquery","ghost-admin/decorators/inject"],(function(e,t,i){var n,r,a,s,o,l,u,c,d,p,m,h,b,g,f,v,y,w,k,E,P,O,j,_,T,z,x,S,C,M,D,A,I,N,L,R,U,F,B,V,H,q,$,Y,W,G,K,J,X,Z,Q,ee,te,ie,ne,re,ae,se,oe,le
5827
+ function ue(e,t,i,n){i&&Object.defineProperty(e,t,{enumerable:i.enumerable,configurable:i.configurable,writable:i.writable,value:i.initializer?i.initializer.call(n):void 0})}function ce(e,t,i){return(t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e
5832
5828
  var i=e[Symbol.toPrimitive]
5833
5829
  if(void 0!==i){var n=i.call(e,t||"default")
5834
5830
  if("object"!=typeof n)return n
5835
5831
  throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string")
5836
- return"symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function ue(e,t,i,n,r){var a={}
5837
- return Object.keys(n).forEach((function(e){a[e]=n[e]})),a.enumerable=!!a.enumerable,a.configurable=!!a.configurable,("value"in a||a.initializer)&&(a.writable=!0),a=i.slice().reverse().reduce((function(i,n){return n(e,t,i)||i}),a),r&&void 0!==a.initializer&&(a.value=a.initializer?a.initializer.call(r):void 0,a.initializer=void 0),void 0===a.initializer&&(Object.defineProperty(e,t,a),a=null),a}function ce(e,t={}){let{user:i,onChange:n}=t,r=i?[`accessibility.${e}`]:[`config.${e}`,`labs.${e}`]
5832
+ return"symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function de(e,t,i,n,r){var a={}
5833
+ return Object.keys(n).forEach((function(e){a[e]=n[e]})),a.enumerable=!!a.enumerable,a.configurable=!!a.configurable,("value"in a||a.initializer)&&(a.writable=!0),a=i.slice().reverse().reduce((function(i,n){return n(e,t,i)||i}),a),r&&void 0!==a.initializer&&(a.value=a.initializer?a.initializer.call(r):void 0,a.initializer=void 0),void 0===a.initializer&&(Object.defineProperty(e,t,a),a=null),a}function pe(e,t={}){let{user:i,onChange:n}=t,r=i?[`accessibility.${e}`]:[`config.${e}`,`labs.${e}`]
5838
5834
  return Ember.computed.apply(Ember,r.concat({get(){let t=!1
5839
- return t=i?this.get(`accessibility.${e}`):"boolean"==typeof this.get(`config.${e}`)?this.get(`config.${e}`):this.get(`labs.${e}`)||!1,t},set(e,i){return this.update(e,i,t),n&&this.get(n).bind(this)(i),i}}))}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,e.feature=ce
5840
- let de=(n=Ember.inject.service,r=Ember.inject.service,a=Ember.inject.service,s=Ember.inject.service,o=Ember.inject.service,l=ce("emailAnalytics"),u=ce("nightShift",{user:!0,onChange:"_setAdminTheme"}),c=ce("referralInviteDismissed",{user:!0}),d=ce("urlCache"),p=ce("lexicalEditor"),m=ce("lexicalMultiplayer"),h=ce("audienceFeedback"),b=ce("webmentions"),g=ce("websockets"),f=ce("stripeAutomaticTax"),v=ce("emailCustomization"),y=ce("i18n"),w=ce("announcementBar"),k=ce("signupCard"),E=ce("signupForm"),P=ce("collections"),O=ce("adminXSettings"),j=ce("mailEvents"),_=ce("collectionsCard"),T=ce("importMemberTier"),z=ce("tipsAndDonations"),x=ce("convertToLexical"),S=Ember.computed("settings.labs"),C=Ember.computed("_user.accessibility"),M=class extends Ember.Service{constructor(...e){super(...e),oe(this,"lazyLoader",D,this),oe(this,"notifications",A,this),oe(this,"session",I,this),oe(this,"settings",N,this),oe(this,"store",L,this),oe(this,"config",R,this),oe(this,"emailAnalytics",U,this),oe(this,"nightShift",F,this),oe(this,"referralInviteDismissed",B,this),oe(this,"urlCache",V,this),oe(this,"lexicalEditor",H,this),oe(this,"lexicalMultiplayer",q,this),oe(this,"audienceFeedback",$,this),oe(this,"webmentions",Y,this),oe(this,"websockets",W,this),oe(this,"stripeAutomaticTax",G,this),oe(this,"emailCustomization",K,this),oe(this,"i18n",J,this),oe(this,"announcementBar",X,this),oe(this,"signupCard",Z,this),oe(this,"signupForm",Q,this),oe(this,"collections",ee,this),oe(this,"adminXSettings",te,this),oe(this,"mailEvents",ie,this),oe(this,"collectionsCard",ne,this),oe(this,"importMemberTier",re,this),oe(this,"tipsAndDonations",ae,this),oe(this,"convertToLexical",se,this),le(this,"_user",null)}get labs(){let e=this.settings.labs
5835
+ return t=i?this.get(`accessibility.${e}`):"boolean"==typeof this.get(`config.${e}`)?this.get(`config.${e}`):this.get(`labs.${e}`)||!1,t},set(e,i){return this.update(e,i,t),n&&this.get(n).bind(this)(i),i}}))}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,e.feature=pe
5836
+ let me=(n=Ember.inject.service,r=Ember.inject.service,a=Ember.inject.service,s=Ember.inject.service,o=Ember.inject.service,l=pe("emailAnalytics"),u=pe("nightShift",{user:!0,onChange:"_setAdminTheme"}),c=pe("referralInviteDismissed",{user:!0}),d=pe("urlCache"),p=pe("lexicalEditor"),m=pe("lexicalMultiplayer"),h=pe("audienceFeedback"),b=pe("webmentions"),g=pe("websockets"),f=pe("stripeAutomaticTax"),v=pe("emailCustomization"),y=pe("i18n"),w=pe("announcementBar"),k=pe("signupCard"),E=pe("signupForm"),P=pe("collections"),O=pe("adminXSettings"),j=pe("mailEvents"),_=pe("collectionsCard"),T=pe("importMemberTier"),z=pe("tipsAndDonations"),x=pe("recommendations"),S=pe("lexicalIndicators"),C=Ember.computed("settings.labs"),M=Ember.computed("_user.accessibility"),D=class extends Ember.Service{constructor(...e){super(...e),ue(this,"lazyLoader",A,this),ue(this,"notifications",I,this),ue(this,"session",N,this),ue(this,"settings",L,this),ue(this,"store",R,this),ue(this,"config",U,this),ue(this,"emailAnalytics",F,this),ue(this,"nightShift",B,this),ue(this,"referralInviteDismissed",V,this),ue(this,"urlCache",H,this),ue(this,"lexicalEditor",q,this),ue(this,"lexicalMultiplayer",$,this),ue(this,"audienceFeedback",Y,this),ue(this,"webmentions",W,this),ue(this,"websockets",G,this),ue(this,"stripeAutomaticTax",K,this),ue(this,"emailCustomization",J,this),ue(this,"i18n",X,this),ue(this,"announcementBar",Z,this),ue(this,"signupCard",Q,this),ue(this,"signupForm",ee,this),ue(this,"collections",te,this),ue(this,"adminXSettings",ie,this),ue(this,"mailEvents",ne,this),ue(this,"collectionsCard",re,this),ue(this,"importMemberTier",ae,this),ue(this,"tipsAndDonations",se,this),ue(this,"recommendations",oe,this),ue(this,"lexicalIndicators",le,this)
5837
+ ce(this,"_user",null)}get labs(){let e=this.settings.labs
5841
5838
  try{return JSON.parse(e)||{}}catch(t){return{}}}get accessibility(){let e=this.get("_user.accessibility")
5842
5839
  try{return JSON.parse(e)||{}}catch(t){return{}}}fetch(){return this.settings.fetch().then((()=>(this.set("_user",this.session.user),this._setAdminTheme().then((()=>!0)))))}update(e,t,i={}){let n=i.user?"accessibility":"labs",r=this.get(i.user?"_user":"settings"),a=this.get(n)
5843
5840
  return Ember.set(a,e,t),i.requires&&!0===t&&i.requires.forEach((e=>{Ember.set(a,e,!0)})),r.set(n,JSON.stringify(a)),r.save().then((()=>(this.notifyPropertyChange(n),this.get(`${n}.${e}`)))).catch((t=>{if(r.rollbackAttributes(),this.notifyPropertyChange(n),!t)throw new Ember.Error(`Validation of the feature service ${i.user?"user":"settings"} model failed when updating ${n}.`)
5844
5841
  return this.notifications.showAPIError(t),this.get(`${n}.${e}`)}))}_setAdminTheme(e){let i=e
5845
- return void 0===i&&(i=e||this.nightShift),this.lazyLoader.loadStyle("dark","assets/ghost-dark-d44be1f4bc4e8920af2416d1e56a341f.css",!0).then((()=>{(0,t.default)("link[title=dark]").prop("disabled",!i)})).catch((()=>{(0,t.default)("link[title=dark]").prop("disabled",!0)}))}},D=ue(M.prototype,"lazyLoader",[n],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),A=ue(M.prototype,"notifications",[r],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),I=ue(M.prototype,"session",[a],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),N=ue(M.prototype,"settings",[s],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),L=ue(M.prototype,"store",[o],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),R=ue(M.prototype,"config",[i.inject],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),U=ue(M.prototype,"emailAnalytics",[l],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),F=ue(M.prototype,"nightShift",[u],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),B=ue(M.prototype,"referralInviteDismissed",[c],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),V=ue(M.prototype,"urlCache",[d],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),H=ue(M.prototype,"lexicalEditor",[p],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),q=ue(M.prototype,"lexicalMultiplayer",[m],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),$=ue(M.prototype,"audienceFeedback",[h],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Y=ue(M.prototype,"webmentions",[b],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),W=ue(M.prototype,"websockets",[g],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),G=ue(M.prototype,"stripeAutomaticTax",[f],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),K=ue(M.prototype,"emailCustomization",[v],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),J=ue(M.prototype,"i18n",[y],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),X=ue(M.prototype,"announcementBar",[w],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Z=ue(M.prototype,"signupCard",[k],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Q=ue(M.prototype,"signupForm",[E],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),ee=ue(M.prototype,"collections",[P],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),te=ue(M.prototype,"adminXSettings",[O],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),ie=ue(M.prototype,"mailEvents",[j],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),ne=ue(M.prototype,"collectionsCard",[_],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),re=ue(M.prototype,"importMemberTier",[T],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),ae=ue(M.prototype,"tipsAndDonations",[z],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),se=ue(M.prototype,"convertToLexical",[x],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),ue(M.prototype,"labs",[S],Object.getOwnPropertyDescriptor(M.prototype,"labs"),M.prototype),ue(M.prototype,"accessibility",[C],Object.getOwnPropertyDescriptor(M.prototype,"accessibility"),M.prototype),M)
5846
- e.default=de})),define("ghost-admin/services/frontend",["exports","fetch","validator","ghost-admin/decorators/inject"],(function(e,t,i,n){var r,a,s,o,l,u
5842
+ return void 0===i&&(i=e||this.nightShift),this.lazyLoader.loadStyle("dark","assets/ghost-dark-084169b0e968ef763dfbbf63b253e0c6.css",!0).then((()=>{(0,t.default)("link[title=dark]").prop("disabled",!i)})).catch((()=>{(0,t.default)("link[title=dark]").prop("disabled",!0)}))}},A=de(D.prototype,"lazyLoader",[n],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),I=de(D.prototype,"notifications",[r],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),N=de(D.prototype,"session",[a],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),L=de(D.prototype,"settings",[s],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),R=de(D.prototype,"store",[o],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),U=de(D.prototype,"config",[i.inject],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),F=de(D.prototype,"emailAnalytics",[l],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),B=de(D.prototype,"nightShift",[u],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),V=de(D.prototype,"referralInviteDismissed",[c],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),H=de(D.prototype,"urlCache",[d],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),q=de(D.prototype,"lexicalEditor",[p],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),$=de(D.prototype,"lexicalMultiplayer",[m],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Y=de(D.prototype,"audienceFeedback",[h],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),W=de(D.prototype,"webmentions",[b],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),G=de(D.prototype,"websockets",[g],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),K=de(D.prototype,"stripeAutomaticTax",[f],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),J=de(D.prototype,"emailCustomization",[v],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),X=de(D.prototype,"i18n",[y],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Z=de(D.prototype,"announcementBar",[w],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Q=de(D.prototype,"signupCard",[k],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),ee=de(D.prototype,"signupForm",[E],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),te=de(D.prototype,"collections",[P],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),ie=de(D.prototype,"adminXSettings",[O],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),ne=de(D.prototype,"mailEvents",[j],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),re=de(D.prototype,"collectionsCard",[_],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),ae=de(D.prototype,"importMemberTier",[T],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),se=de(D.prototype,"tipsAndDonations",[z],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),oe=de(D.prototype,"recommendations",[x],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),le=de(D.prototype,"lexicalIndicators",[S],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),de(D.prototype,"labs",[C],Object.getOwnPropertyDescriptor(D.prototype,"labs"),D.prototype),de(D.prototype,"accessibility",[M],Object.getOwnPropertyDescriptor(D.prototype,"accessibility"),D.prototype),D)
5843
+ e.default=me})),define("ghost-admin/services/frontend",["exports","fetch","validator","ghost-admin/decorators/inject"],(function(e,t,i,n){var r,a,s,o,l,u
5847
5844
  function c(e,t,i,n){i&&Object.defineProperty(e,t,{enumerable:i.enumerable,configurable:i.configurable,writable:i.writable,value:i.initializer?i.initializer.call(n):void 0})}function d(e,t,i){return(t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e
5848
5845
  var i=e[Symbol.toPrimitive]
5849
5846
  if(void 0!==i){var n=i.call(e,t||"default")
@@ -6218,7 +6215,7 @@ var t=Ember.HTMLBars.template({id:"5C/w8dFA",block:'{"symbols":["item"],"stateme
6218
6215
  e.default=t})),define("ghost-admin/templates/explore/connect",["exports"],(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
6219
6216
  var t=Ember.HTMLBars.template({id:"n36rtDb3",block:'{"symbols":[],"statements":[[10,"div"],[15,0,[31,[[32,0,["visibilityClass"]]]]],[12],[2,"\\n "],[10,"div"],[14,0,"explore-close"],[12],[2,"\\n "],[11,"a"],[24,6,"javascript:void(0)"],[24,"data-test-button","close-explore"],[4,[38,0],["click",[32,0,["closeConnect"]]],null],[12],[2,"\\n "],[1,[30,[36,1],["close"],null]],[10,"span"],[14,0,"hidden"],[12],[2,"Close"],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"explore-content"],[12],[2,"\\n\\n "],[10,"div"],[14,0,"explore-header"],[12],[2,"\\n "],[1,[30,[36,1],["ghost-orb-pink"],[["alt","class"],["Ghost","w25 v-mid"]]]],[2,"\\n "],[10,"h1"],[12],[2,"Connect to Ghost Explore."],[13],[2,"\\n "],[10,"p"],[14,0,"explore-api"],[12],[1,[32,0,["apiUrl"]]],[13],[2,"\\n "],[13],[2,"\\n\\n "],[10,"div"],[14,0,"explore-permissions"],[12],[2,"\\n "],[10,"div"],[12],[2,"\\n "],[10,"span"],[12],[1,[30,[36,1],["check-circle"],[["class","alt"],["w6 v-mid","checkmark"]]]],[13],[2,"\\n "],[10,"p"],[12],[2,"Allow read-only access to your site data to create a directory listing."],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[12],[2,"\\n "],[10,"span"],[12],[1,[30,[36,1],["check-circle"],[["class","alt"],["w6 v-mid","checkmark"]]]],[13],[2,"\\n "],[10,"p"],[12],[2,"You’ll be able to choose what data is shown publicly or hidden."],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[12],[2,"\\n "],[10,"span"],[12],[1,[30,[36,1],["check-circle"],[["class","alt"],["w6 v-mid","checkmark"]]]],[13],[2,"\\n "],[10,"p"],[12],[2,"Your site will be promoted across the entire Ghost ecosystem."],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n\\n "],[11,"button"],[24,0,"gh-btn gh-btn-black gh-btn-large gh-btn-icon-right"],[24,"data-test-button","submit-explore"],[24,4,"button"],[4,[38,0],["click",[32,0,["submitExploreSite"]]],null],[12],[2,"\\n "],[10,"span"],[12],[2,"Connect data & edit listing "],[1,[30,[36,1],["arrow-right-tail"],null]],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n"],[13]],"hasEval":false,"upvars":["on","svg-jar"]}',moduleName:"ghost-admin/templates/explore/connect.hbs"})
6220
6217
  e.default=t})),define("ghost-admin/templates/lexical-editor",["exports"],(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
6221
- var t=Ember.HTMLBars.template({id:"RFruw/t9",block:'{"symbols":["editor","publishManagement"],"statements":[[6,[37,5],[[32,0,["post"]]],null,[["default"],[{"statements":[[2," "],[10,"div"],[14,0,"flex flex-row"],[12],[2,"\\n "],[8,"gh-editor",[],[["@tagName","@class"],["section","gh-editor gh-view relative"]],[["default"],[{"statements":[[2,"\\n "],[10,"header"],[14,0,"gh-editor-header br2 pe-none"],[12],[2,"\\n "],[8,"editor/publish-management",[],[["@post","@hasUnsavedChanges","@beforePublish","@afterPublish","@saveTask"],[[32,0,["post"]],[32,0,["hasDirtyAttributes"]],[30,[36,6],[[32,0,["beforeSaveTask"]]],null],[32,0,["afterSave"]],[32,0,["saveTask"]]]],[["default"],[{"statements":[[2,"\\n "],[10,"div"],[14,0,"flex items-center pe-auto h-100"],[12],[2,"\\n"],[6,[37,5],[[32,0,["ui","isFullScreen"]]],null,[["default"],[{"statements":[[6,[37,5],[[32,0,["fromAnalytics"]]],null,[["default","else"],[{"statements":[[2," "],[8,"link-to",[[24,0,"gh-btn-editor gh-editor-back-button"]],[["@route","@model"],["posts.analytics",[32,0,["post"]]]],[["default"],[{"statements":[[2,"\\n "],[10,"span"],[12],[2,"\\n "],[1,[30,[36,0],["arrow-left"],null]],[2,"\\n Analytics\\n "],[13],[2,"\\n "]],"parameters":[]}]]],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[8,"link-to",[[24,0,"gh-btn-editor gh-editor-back-button"],[16,"data-test-link",[30,[36,3],[[32,0,["post","displayName"]]],null]]],[["@route"],[[30,[36,3],[[32,0,["post","displayName"]]],null]]],[["default"],[{"statements":[[2,"\\n "],[10,"span"],[12],[2,"\\n "],[1,[30,[36,0],["arrow-left"],null]],[2,"\\n "],[1,[30,[36,4],[[30,[36,3],[[32,0,["post","displayName"]]],null]],null]],[2,"\\n "],[13],[2,"\\n "]],"parameters":[]}]]],[2,"\\n"]],"parameters":[]}]]]],"parameters":[]}]]],[6,[37,5],[[30,[36,2],[[30,[36,7],[[32,0,["ui","isFullScreen"]]],null],[30,[36,7],[[32,0,["fromAnalytics"]]],null],[32,0,["post","didEmailFail"]]],null]],null,[["default"],[{"statements":[[2," "],[10,"div"],[14,0,"gh-editor-post-status"],[12],[2,"\\n "],[10,"span"],[12],[2,"\\n "],[8,"gh-editor-post-status",[],[["@post","@publishManagement","@hasDirtyAttributes","@isSaving","@openUpdateFlow"],[[32,0,["post"]],[32,2],[32,0,["hasDirtyAttributes"]],[30,[36,2],[[32,0,["autosaveTask","isRunning"]],[32,0,["saveTasks","isRunning"]]],null],[32,2,["openUpdateFlow"]]]],null],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n\\n "],[10,"section"],[14,0,"flex items-center pe-auto h-100"],[12],[2,"\\n"],[6,[37,1],[[32,0,["post","isNew"]]],null,[["default"],[{"statements":[[2," "],[8,"editor/publish-buttons",[],[["@publishManagement"],[[32,2]]],null],[2,"\\n"],[6,[37,1],[[32,0,["showSettingsMenu"]]],null,[["default"],[{"statements":[[2," "],[10,"div"],[14,0,"settings-menu-toggle-spacer"],[12],[13],[2,"\\n"]],"parameters":[]}]]]],"parameters":[]}]]],[2," "],[13],[2,"\\n "]],"parameters":[2]}]]],[2,"\\n "],[13],[2,"\\n\\n"],[2," "],[8,"gh-koenig-editor-lexical",[],[["@title","@titleAutofocus","@titlePlaceholder","@onTitleChange","@onTitleBlur","@body","@bodyPlaceholder","@onBodyChange","@headerOffset","@scrollContainerSelector","@scrollOffsetBottomSelector","@onEditorCreated","@updateWordCount","@featureImage","@featureImageAlt","@featureImageCaption","@setFeatureImage","@setFeatureImageAlt","@setFeatureImageCaption","@clearFeatureImage","@cardOptions","@postType","@registerAPI"],[[30,[36,8],[[32,0,["post","titleScratch"]]],null],[32,0,["shouldFocusTitle"]],[30,[36,9],[[30,[36,4],[[32,0,["post","displayName"]]],null]," title"],null],[32,0,["updateTitleScratch"]],[30,[36,6],[[32,0,["saveTitleTask"]]],null],[30,[36,8],[[32,0,["post","lexicalScratch"]]],null],[30,[36,9],["Begin writing your ",[32,0,["post","displayName"]],"..."],null],[32,0,["updateScratch"]],[32,1,["headerHeight"]],".gh-koenig-editor",".gh-mobile-nav-bar",[32,0,["setKoenigEditor"]],[32,0,["updateWordCount"]],[32,0,["post","featureImage"]],[32,0,["post","featureImageAlt"]],[32,0,["post","featureImageCaption"]],[32,0,["setFeatureImage"]],[32,0,["setFeatureImageAlt"]],[32,0,["setFeatureImageCaption"]],[32,0,["clearFeatureImage"]],[30,[36,10],null,[["post","snippets","collections","deleteSnippet","createSnippet"],[[32,0,["post"]],[32,0,["snippets"]],[32,0,["collections"]],[30,[36,5],[[32,0,["canManageSnippets"]],[32,0,["confirmDeleteSnippet"]]],null],[30,[36,5],[[32,0,["canManageSnippets"]],[32,0,["createSnippet"]]],null]]]],[32,0,["post","displayName"]],[32,0,["registerEditorAPI"]]]],null],[2,"\\n\\n "],[8,"feedback-lexical/editor-dropdown",[],[["@post"],[[32,0,["post"]]]],null],[2,"\\n\\n "],[10,"div"],[14,0,"gh-editor-wordcount-container"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-editor-wordcount"],[12],[2,"\\n "],[1,[30,[36,11],[[32,0,["wordCount"]],"word"],null]],[2,"\\n "],[13],[2,"\\n"],[6,[37,5],[[30,[36,12],["convertToLexical"],null]],null,[["default"],[{"statements":[[2," "],[10,"a"],[14,6,"https://github.com/TryGhost/Koenig/tree/main/packages/koenig-lexical"],[14,"target","_blank"],[14,"rel","noopener noreferrer"],[14,0,"gh-lexical-indicator"],[12],[2,"Lexical"],[13],[2,"\\n"]],"parameters":[]}]]],[2," "],[10,"a"],[14,6,"https://ghost.org/help/using-the-editor/"],[14,0,"flex"],[14,"target","_blank"],[14,"rel","noopener noreferrer"],[12],[1,[30,[36,0],["help"],null]],[13],[2,"\\n "],[13],[2,"\\n\\n "]],"parameters":[1]}]]],[2,"\\n\\n"],[6,[37,5],[[32,0,["showSettingsMenu"]]],null,[["default"],[{"statements":[[2," "],[8,"gh-post-settings-menu",[],[["@post","@deletePost","@updateSlugTask","@savePostTask","@editorAPI","@toggleSettingsMenu"],[[32,0,["post"]],[32,0,["openDeletePostModal"]],[32,0,["updateSlugTask"]],[32,0,["savePostTask"]],[32,0,["editorAPI"]],[32,0,["toggleSettingsMenu"]]]],null],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n\\n "],[11,"button"],[24,0,"settings-menu-toggle gh-btn gh-btn-editor gh-btn-icon icon-only gh-btn-action-icon"],[24,"title","Settings"],[24,"data-test-psm-trigger",""],[24,4,"button"],[4,[38,13],["click",[32,0,["toggleSettingsMenu"]]],null],[12],[2,"\\n"],[6,[37,5],[[32,0,["showSettingsMenu"]]],null,[["default","else"],[{"statements":[[2," "],[10,"span"],[14,0,"settings-menu-open"],[12],[1,[30,[36,0],["sidemenu-open"],null]],[13],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[10,"span"],[12],[1,[30,[36,0],["sidemenu"],null]],[13],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n\\n"],[6,[37,5],[[32,0,["showReAuthenticateModal"]]],null,[["default"],[{"statements":[[2," "],[8,"gh-fullscreen-modal",[],[["@modal","@close","@modifier"],["re-authenticate",[32,0,["toggleReAuthenticateModal"]],"action wide"]],null],[2,"\\n"]],"parameters":[]}]]],[6,[37,5],[[32,0,["showPostHistory"]]],null,[["default"],[{"statements":[[2," "],[8,"gh-fullscreen-modal",[],[["@modal","@model","@close","@modifier"],["post-history",[32,0,["post"]],[32,0,["closePostHistory"]],"total-overlay post-history"]],null],[2,"\\n"]],"parameters":[]}]]]],"parameters":[]}]]],[2,"\\n"],[1,[30,[36,15],[[30,[36,14],null,null]],null]],[2,"\\n"]],"hasEval":false,"upvars":["svg-jar","unless","or","pluralize","capitalize","if","perform","not","readonly","concat","hash","gh-pluralize","feature","on","-outlet","component"]}',moduleName:"ghost-admin/templates/lexical-editor.hbs"})
6218
+ var t=Ember.HTMLBars.template({id:"OuKWNraX",block:'{"symbols":["editor","publishManagement"],"statements":[[6,[37,5],[[32,0,["post"]]],null,[["default"],[{"statements":[[2," "],[10,"div"],[14,0,"flex flex-row"],[12],[2,"\\n "],[8,"gh-editor",[],[["@tagName","@class"],["section","gh-editor gh-view relative"]],[["default"],[{"statements":[[2,"\\n "],[10,"header"],[14,0,"gh-editor-header br2 pe-none"],[12],[2,"\\n "],[8,"editor/publish-management",[],[["@post","@hasUnsavedChanges","@beforePublish","@afterPublish","@saveTask"],[[32,0,["post"]],[32,0,["hasDirtyAttributes"]],[30,[36,6],[[32,0,["beforeSaveTask"]]],null],[32,0,["afterSave"]],[32,0,["saveTask"]]]],[["default"],[{"statements":[[2,"\\n "],[10,"div"],[14,0,"flex items-center pe-auto h-100"],[12],[2,"\\n"],[6,[37,5],[[32,0,["ui","isFullScreen"]]],null,[["default"],[{"statements":[[6,[37,5],[[32,0,["fromAnalytics"]]],null,[["default","else"],[{"statements":[[2," "],[8,"link-to",[[24,0,"gh-btn-editor gh-editor-back-button"]],[["@route","@model"],["posts.analytics",[32,0,["post"]]]],[["default"],[{"statements":[[2,"\\n "],[10,"span"],[12],[2,"\\n "],[1,[30,[36,0],["arrow-left"],null]],[2,"\\n Analytics\\n "],[13],[2,"\\n "]],"parameters":[]}]]],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[8,"link-to",[[24,0,"gh-btn-editor gh-editor-back-button"],[16,"data-test-link",[30,[36,3],[[32,0,["post","displayName"]]],null]]],[["@route"],[[30,[36,3],[[32,0,["post","displayName"]]],null]]],[["default"],[{"statements":[[2,"\\n "],[10,"span"],[12],[2,"\\n "],[1,[30,[36,0],["arrow-left"],null]],[2,"\\n "],[1,[30,[36,4],[[30,[36,3],[[32,0,["post","displayName"]]],null]],null]],[2,"\\n "],[13],[2,"\\n "]],"parameters":[]}]]],[2,"\\n"]],"parameters":[]}]]]],"parameters":[]}]]],[6,[37,5],[[30,[36,2],[[30,[36,7],[[32,0,["ui","isFullScreen"]]],null],[30,[36,7],[[32,0,["fromAnalytics"]]],null],[32,0,["post","didEmailFail"]]],null]],null,[["default"],[{"statements":[[2," "],[10,"div"],[14,0,"gh-editor-post-status"],[12],[2,"\\n "],[10,"span"],[12],[2,"\\n "],[8,"gh-editor-post-status",[],[["@post","@publishManagement","@hasDirtyAttributes","@isSaving","@openUpdateFlow"],[[32,0,["post"]],[32,2],[32,0,["hasDirtyAttributes"]],[30,[36,2],[[32,0,["autosaveTask","isRunning"]],[32,0,["saveTasks","isRunning"]]],null],[32,2,["openUpdateFlow"]]]],null],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n\\n "],[10,"section"],[14,0,"flex items-center pe-auto h-100"],[12],[2,"\\n"],[6,[37,1],[[32,0,["post","isNew"]]],null,[["default"],[{"statements":[[2," "],[8,"editor/publish-buttons",[],[["@publishManagement"],[[32,2]]],null],[2,"\\n"],[6,[37,1],[[32,0,["showSettingsMenu"]]],null,[["default"],[{"statements":[[2," "],[10,"div"],[14,0,"settings-menu-toggle-spacer"],[12],[13],[2,"\\n"]],"parameters":[]}]]]],"parameters":[]}]]],[2," "],[13],[2,"\\n "]],"parameters":[2]}]]],[2,"\\n "],[13],[2,"\\n\\n"],[2," "],[8,"gh-koenig-editor-lexical",[],[["@title","@titleAutofocus","@titlePlaceholder","@onTitleChange","@onTitleBlur","@body","@bodyPlaceholder","@onBodyChange","@headerOffset","@scrollContainerSelector","@scrollOffsetBottomSelector","@onEditorCreated","@updateWordCount","@featureImage","@featureImageAlt","@featureImageCaption","@setFeatureImage","@setFeatureImageAlt","@setFeatureImageCaption","@clearFeatureImage","@cardOptions","@postType","@registerAPI"],[[30,[36,8],[[32,0,["post","titleScratch"]]],null],[32,0,["shouldFocusTitle"]],[30,[36,9],[[30,[36,4],[[32,0,["post","displayName"]]],null]," title"],null],[32,0,["updateTitleScratch"]],[30,[36,6],[[32,0,["saveTitleTask"]]],null],[30,[36,8],[[32,0,["post","lexicalScratch"]]],null],[30,[36,9],["Begin writing your ",[32,0,["post","displayName"]],"..."],null],[32,0,["updateScratch"]],[32,1,["headerHeight"]],".gh-koenig-editor",".gh-mobile-nav-bar",[32,0,["setKoenigEditor"]],[32,0,["updateWordCount"]],[32,0,["post","featureImage"]],[32,0,["post","featureImageAlt"]],[32,0,["post","featureImageCaption"]],[32,0,["setFeatureImage"]],[32,0,["setFeatureImageAlt"]],[32,0,["setFeatureImageCaption"]],[32,0,["clearFeatureImage"]],[30,[36,10],null,[["post","snippets","collections","deleteSnippet","createSnippet"],[[32,0,["post"]],[32,0,["snippets"]],[32,0,["collections"]],[30,[36,5],[[32,0,["canManageSnippets"]],[32,0,["confirmDeleteSnippet"]]],null],[30,[36,5],[[32,0,["canManageSnippets"]],[32,0,["createSnippet"]]],null]]]],[32,0,["post","displayName"]],[32,0,["registerEditorAPI"]]]],null],[2,"\\n\\n "],[8,"feedback-lexical/editor-dropdown",[],[["@post"],[[32,0,["post"]]]],null],[2,"\\n\\n "],[10,"div"],[14,0,"gh-editor-wordcount-container"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-editor-wordcount"],[12],[2,"\\n "],[1,[30,[36,11],[[32,0,["wordCount"]],"word"],null]],[2,"\\n "],[13],[2,"\\n "],[10,"a"],[14,6,"https://ghost.org/help/using-the-editor/"],[14,0,"flex"],[14,"target","_blank"],[14,"rel","noopener noreferrer"],[12],[1,[30,[36,0],["help"],null]],[13],[2,"\\n "],[13],[2,"\\n\\n "]],"parameters":[1]}]]],[2,"\\n\\n"],[6,[37,5],[[32,0,["showSettingsMenu"]]],null,[["default"],[{"statements":[[2," "],[8,"gh-post-settings-menu",[],[["@post","@deletePost","@updateSlugTask","@savePostTask","@editorAPI","@toggleSettingsMenu"],[[32,0,["post"]],[32,0,["openDeletePostModal"]],[32,0,["updateSlugTask"]],[32,0,["savePostTask"]],[32,0,["editorAPI"]],[32,0,["toggleSettingsMenu"]]]],null],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n\\n "],[11,"button"],[24,0,"settings-menu-toggle gh-btn gh-btn-editor gh-btn-icon icon-only gh-btn-action-icon"],[24,"title","Settings"],[24,"data-test-psm-trigger",""],[24,4,"button"],[4,[38,12],["click",[32,0,["toggleSettingsMenu"]]],null],[12],[2,"\\n"],[6,[37,5],[[32,0,["showSettingsMenu"]]],null,[["default","else"],[{"statements":[[2," "],[10,"span"],[14,0,"settings-menu-open"],[12],[1,[30,[36,0],["sidemenu-open"],null]],[13],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[10,"span"],[12],[1,[30,[36,0],["sidemenu"],null]],[13],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n\\n"],[6,[37,5],[[32,0,["showReAuthenticateModal"]]],null,[["default"],[{"statements":[[2," "],[8,"gh-fullscreen-modal",[],[["@modal","@close","@modifier"],["re-authenticate",[32,0,["toggleReAuthenticateModal"]],"action wide"]],null],[2,"\\n"]],"parameters":[]}]]],[6,[37,5],[[32,0,["showPostHistory"]]],null,[["default"],[{"statements":[[2," "],[8,"gh-fullscreen-modal",[],[["@modal","@model","@close","@modifier"],["post-history",[32,0,["post"]],[32,0,["closePostHistory"]],"total-overlay post-history"]],null],[2,"\\n"]],"parameters":[]}]]]],"parameters":[]}]]],[2,"\\n"],[1,[30,[36,14],[[30,[36,13],null,null]],null]],[2,"\\n"]],"hasEval":false,"upvars":["svg-jar","unless","or","pluralize","capitalize","if","perform","not","readonly","concat","hash","gh-pluralize","on","-outlet","component"]}',moduleName:"ghost-admin/templates/lexical-editor.hbs"})
6222
6219
  e.default=t})),define("ghost-admin/templates/lexical-editor/edit-loading",["exports"],(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
6223
6220
  var t=Ember.HTMLBars.template({id:"ElnCuz5d",block:'{"symbols":[],"statements":[[11,"div"],[24,0,"gh-view"],[4,[38,1],[[30,[36,0],[[32,0,["ui","setMainClass"]],"gh-main-white"],null]],null],[12],[2,"\\n "],[10,"div"],[14,0,"gh-content"],[12],[2,"\\n "],[8,"gh-loading-spinner",[],[[],[]],null],[2,"\\n "],[13],[2,"\\n"],[13],[2,"\\n"]],"hasEval":false,"upvars":["fn","did-insert"]}',moduleName:"ghost-admin/templates/lexical-editor/edit-loading.hbs"})
6224
6221
  e.default=t})),define("ghost-admin/templates/lexicalsandbox",["exports"],(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
@@ -6305,7 +6302,7 @@ var t=Ember.HTMLBars.template({id:"x5mP0xv7",block:'{"symbols":[],"statements":[
6305
6302
  e.default=t})),define("ghost-admin/templates/settings/labs-loading",["exports"],(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
6306
6303
  var t=Ember.HTMLBars.template({id:"k/w92WvT",block:'{"symbols":[],"statements":[[10,"section"],[14,0,"gh-canvas"],[12],[2,"\\n "],[8,"gh-canvas-header",[[24,0,"gh-canvas-header"]],[[],[]],[["default"],[{"statements":[[2,"\\n "],[10,"div"],[14,0,"flex flex-column"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-canvas-breadcrumb"],[12],[2,"\\n "],[8,"link-to",[],[["@route"],["settings"]],[["default"],[{"statements":[[2,"\\n Settings\\n "]],"parameters":[]}]]],[2,"\\n "],[1,[30,[36,0],["arrow-right-small"],null]],[2," Labs\\n "],[13],[2,"\\n "],[10,"h2"],[14,0,"gh-canvas-title"],[14,"data-test-screen-title",""],[12],[2,"\\n Labs\\n "],[13],[2,"\\n "],[13],[2,"\\n "]],"parameters":[]}]]],[2,"\\n\\n "],[10,"div"],[14,0,"gh-content"],[12],[2,"\\n "],[8,"gh-loading-spinner",[],[[],[]],null],[2,"\\n "],[13],[2,"\\n"],[13],[2,"\\n"]],"hasEval":false,"upvars":["svg-jar"]}',moduleName:"ghost-admin/templates/settings/labs-loading.hbs"})
6307
6304
  e.default=t})),define("ghost-admin/templates/settings/labs",["exports"],(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
6308
- var t=Ember.HTMLBars.template({id:"N8HifT4e",block:'{"symbols":["uploader","error","uploader","error"],"statements":[[10,"section"],[14,0,"gh-canvas"],[12],[2,"\\n "],[8,"gh-canvas-header",[[24,0,"gh-canvas-header"]],[[],[]],[["default"],[{"statements":[[2,"\\n "],[10,"div"],[14,0,"flex flex-column"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-canvas-breadcrumb"],[12],[2,"\\n "],[8,"link-to",[],[["@route"],["settings"]],[["default"],[{"statements":[[2,"\\n Settings\\n "]],"parameters":[]}]]],[2,"\\n "],[1,[30,[36,1],["arrow-right-small"],null]],[2," Labs\\n "],[13],[2,"\\n "],[10,"h2"],[14,0,"gh-canvas-title"],[14,"data-test-screen-title",""],[12],[2,"\\n Labs\\n "],[13],[2,"\\n "],[13],[2,"\\n "]],"parameters":[]}]]],[2,"\\n\\n "],[10,"section"],[14,0,"view-container settings-debug"],[12],[2,"\\n "],[10,"p"],[14,0,"gh-box gh-box-tip"],[12],[1,[30,[36,1],["idea"],null]],[2,"This is a testing ground for new or experimental features. They may change, break or inexplicably disappear at any time."],[13],[2,"\\n\\n "],[10,"div"],[14,0,"gh-main-section"],[12],[2,"\\n "],[10,"h4"],[14,0,"gh-main-section-header small bn"],[12],[2,"Migration options"],[13],[2,"\\n "],[10,"div"],[15,0,[31,["gh-expandable ",[30,[36,2],[[32,0,["importErrors"]],"overflow-hidden"],null]]]],[12],[2,"\\n "],[10,"div"],[14,0,"gh-expandable-block"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-expandable-header"],[12],[2,"\\n "],[10,"div"],[12],[2,"\\n "],[10,"h4"],[14,0,"gh-expandable-title"],[12],[2,"Import content"],[13],[2,"\\n "],[10,"p"],[14,0,"gh-expandable-description"],[12],[2,"Import posts from a JSON or zip file"],[13],[2,"\\n "],[13],[2,"\\n "],[8,"link-to",[[24,0,"gh-btn"],[24,"data-test-link","import-content"]],[["@route"],["settings.labs.import"]],[["default"],[{"statements":[[2,"\\n "],[10,"span"],[12],[2,"Open Importer"],[13],[2,"\\n "]],"parameters":[]}]]],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n\\n "],[10,"div"],[14,0,"gh-expandable-block"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-expandable-header"],[12],[2,"\\n "],[10,"div"],[12],[2,"\\n "],[10,"h4"],[14,0,"gh-expandable-title"],[12],[2,"Export your content"],[13],[2,"\\n "],[10,"p"],[14,0,"gh-expandable-description"],[12],[2,"Download all of your posts and settings in a single, glorious JSON file"],[13],[2,"\\n "],[13],[2,"\\n "],[11,"button"],[24,0,"gh-btn"],[24,4,"button"],[4,[38,3],[[32,0],"downloadFile","db"],null],[12],[10,"span"],[12],[2,"Export"],[13],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n\\n "],[10,"div"],[14,0,"gh-expandable-block"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-expandable-header"],[12],[2,"\\n "],[10,"div"],[12],[2,"\\n "],[10,"h4"],[14,0,"gh-expandable-title"],[12],[2,"Delete all content"],[13],[2,"\\n "],[10,"p"],[14,0,"gh-expandable-description"],[12],[2,"Permanently delete all posts and tags from the database, a hard reset"],[13],[2,"\\n "],[13],[2,"\\n "],[11,"button"],[24,0,"gh-btn gh-btn-red"],[24,"data-test-button","delete-all"],[24,4,"button"],[4,[38,4],["click",[32,0,["confirmDeleteAll"]]],null],[12],[10,"span"],[12],[2,"Delete"],[13],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n\\n "],[10,"div"],[14,0,"gh-main-section"],[12],[2,"\\n "],[10,"h4"],[14,0,"gh-main-section-header small bn"],[12],[2,"Beta features"],[13],[2,"\\n "],[10,"div"],[14,0,"gh-expandable"],[12],[2,"\\n "],[8,"labs/lexical",[],[[],[]],null],[2,"\\n\\n "],[10,"div"],[14,0,"gh-expandable-block"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-expandable-header"],[12],[2,"\\n "],[10,"div"],[12],[2,"\\n "],[10,"h4"],[14,0,"gh-expandable-title"],[12],[2,"Substack migrator"],[13],[2,"\\n "],[10,"p"],[14,0,"gh-expandable-description"],[12],[2,"A "],[10,"a"],[14,6,"https://ghost.org/help/importing-from-substack/"],[14,"target","_blank"],[14,"rel","noopener noreferrer"],[12],[2,"step-by-step tool"],[13],[2," to easily import all your content, members and paid subscriptions"],[13],[2,"\\n "],[13],[2,"\\n "],[8,"link-to",[[24,0,"gh-btn"],[24,"data-test-link","migrate"]],[["@route"],["migrate"]],[["default"],[{"statements":[[2,"\\n "],[10,"span"],[12],[2,"Open"],[13],[2,"\\n "]],"parameters":[]}]]],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n\\n "],[10,"div"],[14,0,"gh-expandable-block"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-expandable-header"],[12],[2,"\\n "],[10,"div"],[12],[2,"\\n "],[10,"h4"],[14,0,"gh-expandable-title"],[12],[2,"Portal translation"],[13],[2,"\\n "],[10,"p"],[14,0,"gh-expandable-description"],[12],[2,"\\n Translate your membership flows into your publication language ("],[10,"a"],[14,6,"https://github.com/TryGhost/Ghost/tree/main/ghost/i18n/locales"],[14,"target","_blank"],[14,"rel","noopener noreferrer"],[12],[2,"supported languages"],[13],[2,"). Don’t see yours? "],[10,"a"],[14,6,"https://forum.ghost.org/t/help-translate-ghost-beta/37461"],[14,"target","_blank"],[14,"rel","noopener noreferrer"],[12],[2,"Get involved"],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"for-switch"],[12],[2,"\\n "],[8,"gh-feature-flag",[],[["@flag"],["i18n"]],null],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n\\n "],[10,"div"],[14,0,"gh-expandable-block"],[12],[2,"\\n "],[8,"gh-uploader",[],[["@extensions","@uploadUrl","@paramName","@onUploadSuccess","@onUploadFailure"],[[32,0,["redirectsFileExtensions"]],"/redirects/upload/","redirects",[30,[36,5],[[32,0,["redirectUploadResult"]],true],null],[30,[36,5],[[32,0,["redirectUploadResult"]],false],null]]],[["default"],[{"statements":[[2,"\\n "],[10,"div"],[14,0,"gh-expandable-header"],[12],[2,"\\n "],[10,"div"],[12],[2,"\\n "],[10,"h4"],[14,0,"gh-expandable-title"],[12],[2,"Redirects"],[13],[2,"\\n "],[10,"p"],[14,0,"gh-expandable-description"],[12],[2,"Configure redirects for old or moved content, more info in "],[10,"a"],[14,6,"https://ghost.org/tutorials/implementing-redirects/"],[14,"target","_blank"],[14,"rel","noopener noreferrer"],[12],[2,"the docs"],[13],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"gh-setting-action flex flex-column items-end"],[12],[2,"\\n"],[6,[37,2],[[32,3,["isUploading"]]],null,[["default","else"],[{"statements":[[2," "],[1,[32,3,["progressBar"]]],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[10,"button"],[15,0,[31,["gh-btn gh-btn-icon ",[30,[36,2],[[32,0,["redirectSuccess"]],"gh-btn-green"],null]," ",[30,[36,2],[[32,0,["redirectFailure"]],"gh-btn-red"],null]]]],[15,"onclick",[30,[36,3],[[32,0],"triggerFileDialog"],null]],[14,"data-test-button","upload-redirects"],[14,4,"button"],[12],[2,"\\n "],[10,"span"],[12],[2,"\\n"],[6,[37,2],[[32,0,["redirectSuccess"]]],null,[["default","else"],[{"statements":[[2," "],[1,[30,[36,1],["check-circle"],null]],[2," Uploaded\\n"]],"parameters":[]},{"statements":[[6,[37,2],[[32,0,["redirectFailure"]]],null,[["default","else"],[{"statements":[[2," "],[1,[30,[36,1],["retry"],null]],[2," Upload Failed\\n"]],"parameters":[]},{"statements":[[2," Upload redirects YAML/JSON\\n "]],"parameters":[]}]]]],"parameters":[]}]]],[2," "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[12],[11,"a"],[24,6,"#"],[24,"data-test-link","download-redirects"],[4,[38,3],[[32,0],"downloadFile","redirects/download"],null],[12],[2,"Download current redirects"],[13],[13],[2,"\\n"]],"parameters":[]}]]],[2,"\\n"],[6,[37,7],[[30,[36,6],[[30,[36,6],[[32,3,["errors"]]],null]],null]],null,[["default"],[{"statements":[[2," "],[10,"div"],[14,0,"gh-setting-error"],[14,"data-test-error","redirects"],[12],[1,[30,[36,0],[[32,4,["context"]],[32,4,["message"]]],null]],[13],[2,"\\n"]],"parameters":[4]}]]],[2,"\\n "],[10,"div"],[14,5,"display:none"],[12],[2,"\\n "],[8,"gh-file-input",[[24,"data-test-file-input","redirects"]],[["@multiple","@action","@accept"],[false,[32,3,["setFiles"]],[32,0,["redirectsFileMimeTypes"]]]],null],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "]],"parameters":[3]}]]],[2,"\\n "],[13],[2,"\\n\\n "],[10,"div"],[14,0,"gh-expandable-block"],[12],[2,"\\n "],[8,"gh-uploader",[],[["@extensions","@uploadUrl","@paramName","@onUploadSuccess","@onUploadFailure"],[[32,0,["yamlExtension"]],"/settings/routes/yaml/","routes",[30,[36,5],[[32,0,["routesUploadResult"]],true],null],[30,[36,5],[[32,0,["routesUploadResult"]],false],null]]],[["default"],[{"statements":[[2,"\\n "],[10,"div"],[14,0,"gh-expandable-header"],[12],[2,"\\n "],[10,"div"],[12],[2,"\\n "],[10,"h4"],[14,0,"gh-expandable-title"],[12],[2,"Routes"],[13],[2,"\\n "],[10,"p"],[14,0,"gh-expandable-description"],[12],[2,"Configure dynamic routing by modifying the routes.yaml file"],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"gh-setting-action flex flex-column items-end"],[12],[2,"\\n"],[6,[37,2],[[32,1,["isUploading"]]],null,[["default","else"],[{"statements":[[2," "],[1,[32,1,["progressBar"]]],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[10,"button"],[15,0,[31,["gh-btn gh-btn-icon ",[30,[36,2],[[32,0,["routesSuccess"]],"gh-btn-green"],null]," ",[30,[36,2],[[32,0,["routesFailure"]],"gh-btn-red"],null]]]],[15,"onclick",[30,[36,3],[[32,0],"triggerFileDialog"],null]],[14,"data-test-button","upload-routes"],[14,4,"button"],[12],[2,"\\n "],[10,"span"],[12],[2,"\\n"],[6,[37,2],[[32,0,["routesSuccess"]]],null,[["default","else"],[{"statements":[[2," "],[1,[30,[36,1],["check-circle"],null]],[2," Uploaded\\n"]],"parameters":[]},{"statements":[[6,[37,2],[[32,0,["routesFailure"]]],null,[["default","else"],[{"statements":[[2," "],[1,[30,[36,1],["retry"],null]],[2," Upload Failed\\n"]],"parameters":[]},{"statements":[[2," Upload routes YAML\\n "]],"parameters":[]}]]]],"parameters":[]}]]],[2," "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[12],[11,"a"],[24,6,"#"],[24,"data-test-link","download-routes"],[4,[38,3],[[32,0],"downloadFile","settings/routes/yaml"],null],[12],[2,"Download current routes.yaml"],[13],[13],[2,"\\n"]],"parameters":[]}]]],[2,"\\n"],[6,[37,7],[[30,[36,6],[[30,[36,6],[[32,1,["errors"]]],null]],null]],null,[["default"],[{"statements":[[2," "],[10,"div"],[14,0,"gh-setting-error"],[14,"data-test-error","routes"],[12],[1,[30,[36,0],[[32,2,["context"]],[32,2,["message"]]],null]],[13],[2,"\\n"]],"parameters":[2]}]]],[2,"\\n "],[10,"div"],[14,5,"display:none"],[12],[2,"\\n "],[8,"gh-file-input",[[24,"data-test-file-input","routes"]],[["@multiple","@action","@accept"],[false,[32,1,["setFiles"]],[32,0,["yamlAccept"]]]],null],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "]],"parameters":[1]}]]],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n\\n\\n"],[6,[37,2],[[30,[36,8],null,null]],null,[["default"],[{"statements":[[2," "],[10,"div"],[14,0,"gh-main-section"],[12],[2,"\\n "],[10,"h4"],[14,0,"gh-main-section-header small bn"],[12],[2,"Alpha Features"],[13],[2,"\\n "],[10,"div"],[14,0,"gh-expandable"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-expandable-block"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-expandable-header"],[12],[2,"\\n "],[10,"div"],[12],[2,"\\n "],[10,"h4"],[14,0,"gh-expandable-title"],[12],[2,"URL cache"],[13],[2,"\\n "],[10,"p"],[14,0,"gh-expandable-description"],[12],[2,"\\n Enable URL Caching\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"for-switch"],[12],[2,"\\n "],[8,"gh-feature-flag",[],[["@flag"],["urlCache"]],null],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n\\n "],[10,"div"],[14,0,"gh-expandable-block"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-expandable-header"],[12],[2,"\\n "],[10,"div"],[12],[2,"\\n "],[10,"h4"],[14,0,"gh-expandable-title"],[12],[2,"Lexical multiplayer"],[13],[2,"\\n "],[10,"p"],[14,0,"gh-expandable-description"],[12],[2,"\\n Enables multiplayer editing in the lexical editor.\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"for-switch"],[12],[2,"\\n "],[8,"gh-feature-flag",[],[["@flag"],["lexicalMultiplayer"]],null],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"gh-expandable-block"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-expandable-header"],[12],[2,"\\n "],[10,"div"],[12],[2,"\\n "],[10,"h4"],[14,0,"gh-expandable-title"],[12],[2,"Webmentions"],[13],[2,"\\n "],[10,"p"],[14,0,"gh-expandable-description"],[12],[2,"\\n Allows viewing received mentions on the dashboard.\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"for-switch"],[12],[2,"\\n "],[8,"gh-feature-flag",[],[["@flag"],["webmentions"]],null],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"gh-expandable-block"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-expandable-header"],[12],[2,"\\n "],[10,"div"],[12],[2,"\\n "],[10,"h4"],[14,0,"gh-expandable-title"],[12],[2,"Websockets"],[13],[2,"\\n "],[10,"p"],[14,0,"gh-expandable-description"],[12],[2,"\\n Test out Websockets functionality at "],[10,"code"],[12],[2,"/ghost/#/websockets"],[13],[2,".\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"for-switch"],[12],[2,"\\n "],[8,"gh-feature-flag",[],[["@flag"],["websockets"]],null],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"gh-expandable-block"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-expandable-header"],[12],[2,"\\n "],[10,"div"],[12],[2,"\\n "],[10,"h4"],[14,0,"gh-expandable-title"],[12],[2,"Stripe Automatic Tax"],[13],[2,"\\n "],[10,"p"],[14,0,"gh-expandable-description"],[12],[2,"\\n Use Stripe Automatic Tax at Stripe Checkout. Needs to be enabled in Stripe\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"for-switch"],[12],[2,"\\n "],[8,"gh-feature-flag",[],[["@flag"],["stripeAutomaticTax"]],null],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"gh-expandable-block"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-expandable-header"],[12],[2,"\\n "],[10,"div"],[12],[2,"\\n "],[10,"h4"],[14,0,"gh-expandable-title"],[12],[2,"Email customization"],[13],[2,"\\n "],[10,"p"],[14,0,"gh-expandable-description"],[12],[2,"\\n Adding more control over the newsletter template\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"for-switch"],[12],[2,"\\n "],[8,"gh-feature-flag",[],[["@flag"],["emailCustomization"]],null],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n\\n "],[10,"div"],[14,0,"gh-expandable-block"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-expandable-header"],[12],[2,"\\n "],[10,"div"],[12],[2,"\\n "],[10,"h4"],[14,0,"gh-expandable-title"],[12],[2,"Collections"],[13],[2,"\\n "],[10,"p"],[14,0,"gh-expandable-description"],[12],[2,"\\n Enables Collections 2.0\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"for-switch"],[12],[2,"\\n "],[8,"gh-feature-flag",[],[["@flag"],["collections"]],null],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n\\n "],[10,"div"],[14,0,"gh-expandable-block"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-expandable-header"],[12],[2,"\\n "],[10,"div"],[12],[2,"\\n "],[10,"h4"],[14,0,"gh-expandable-title"],[12],[2,"Collections Card"],[13],[2,"\\n "],[10,"p"],[14,0,"gh-expandable-description"],[12],[2,"\\n Enables the Collections Card for pages - requires Collections and the beta Editor to be enabled\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"for-switch"],[12],[2,"\\n "],[8,"gh-feature-flag",[],[["@flag"],["collectionsCard"]],null],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n\\n "],[10,"div"],[14,0,"gh-expandable-block"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-expandable-header"],[12],[2,"\\n "],[10,"div"],[12],[2,"\\n "],[10,"h4"],[14,0,"gh-expandable-title"],[12],[2,"Admin X"],[13],[2,"\\n "],[10,"p"],[14,0,"gh-expandable-description"],[12],[2,"\\n Enables Admin X, the new admin UI for Ghost\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"for-switch"],[12],[2,"\\n "],[8,"gh-feature-flag",[],[["@flag"],["adminXSettings"]],null],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n\\n "],[10,"div"],[14,0,"gh-expandable-block"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-expandable-header"],[12],[2,"\\n "],[10,"div"],[12],[2,"\\n "],[10,"h4"],[14,0,"gh-expandable-title"],[12],[2,"Mail Events"],[13],[2,"\\n "],[10,"p"],[14,0,"gh-expandable-description"],[12],[2,"\\n Enables processing of mail events\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"for-switch"],[12],[2,"\\n "],[8,"gh-feature-flag",[],[["@flag"],["mailEvents"]],null],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n\\n "],[10,"div"],[14,0,"gh-expandable-block"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-expandable-header"],[12],[2,"\\n "],[10,"div"],[12],[2,"\\n "],[10,"h4"],[14,0,"gh-expandable-title"],[12],[2,"Convert to Lexical"],[13],[2,"\\n "],[10,"p"],[14,0,"gh-expandable-description"],[12],[2,"\\n Convert mobiledoc posts to lexical upon opening in the editor.\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"for-switch"],[12],[2,"\\n "],[8,"gh-feature-flag",[],[["@flag"],["convertToLexical"]],null],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n\\n "],[10,"div"],[14,0,"gh-expandable-block"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-expandable-header"],[12],[2,"\\n "],[10,"div"],[12],[2,"\\n "],[10,"h4"],[14,0,"gh-expandable-title"],[12],[2,"Import Member Tier"],[13],[2,"\\n "],[10,"p"],[14,0,"gh-expandable-description"],[12],[2,"\\n Enables tier to be specified when importing members\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"for-switch"],[12],[2,"\\n "],[8,"gh-feature-flag",[],[["@flag"],["importMemberTier"]],null],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n\\n "],[10,"div"],[14,0,"gh-expandable-block"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-expandable-header"],[12],[2,"\\n "],[10,"div"],[12],[2,"\\n "],[10,"h4"],[14,0,"gh-expandable-title"],[12],[2,"Tips & donations"],[13],[2,"\\n "],[10,"p"],[14,0,"gh-expandable-description"],[12],[2,"\\n Enables publishers to collect one-time payments\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"for-switch"],[12],[2,"\\n "],[8,"gh-feature-flag",[],[["@flag"],["tipsAndDonations"]],null],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n"],[13],[2,"\\n"]],"hasEval":false,"upvars":["or","svg-jar","if","action","on","perform","-track-array","each","enable-developer-experiments"]}',moduleName:"ghost-admin/templates/settings/labs.hbs"})
6305
+ var t=Ember.HTMLBars.template({id:"Hw7Th1NZ",block:'{"symbols":["uploader","error","uploader","error"],"statements":[[10,"section"],[14,0,"gh-canvas"],[12],[2,"\\n "],[8,"gh-canvas-header",[[24,0,"gh-canvas-header"]],[[],[]],[["default"],[{"statements":[[2,"\\n "],[10,"div"],[14,0,"flex flex-column"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-canvas-breadcrumb"],[12],[2,"\\n "],[8,"link-to",[],[["@route"],["settings"]],[["default"],[{"statements":[[2,"\\n Settings\\n "]],"parameters":[]}]]],[2,"\\n "],[1,[30,[36,1],["arrow-right-small"],null]],[2," Labs\\n "],[13],[2,"\\n "],[10,"h2"],[14,0,"gh-canvas-title"],[14,"data-test-screen-title",""],[12],[2,"\\n Labs\\n "],[13],[2,"\\n "],[13],[2,"\\n "]],"parameters":[]}]]],[2,"\\n\\n "],[10,"section"],[14,0,"view-container settings-debug"],[12],[2,"\\n "],[10,"p"],[14,0,"gh-box gh-box-tip"],[12],[1,[30,[36,1],["idea"],null]],[2,"This is a testing ground for new or experimental features. They may change, break or inexplicably disappear at any time."],[13],[2,"\\n\\n "],[10,"div"],[14,0,"gh-main-section"],[12],[2,"\\n "],[10,"h4"],[14,0,"gh-main-section-header small bn"],[12],[2,"Migration options"],[13],[2,"\\n "],[10,"div"],[15,0,[31,["gh-expandable ",[30,[36,2],[[32,0,["importErrors"]],"overflow-hidden"],null]]]],[12],[2,"\\n "],[10,"div"],[14,0,"gh-expandable-block"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-expandable-header"],[12],[2,"\\n "],[10,"div"],[12],[2,"\\n "],[10,"h4"],[14,0,"gh-expandable-title"],[12],[2,"Import content"],[13],[2,"\\n "],[10,"p"],[14,0,"gh-expandable-description"],[12],[2,"Import posts from a JSON or zip file"],[13],[2,"\\n "],[13],[2,"\\n "],[8,"link-to",[[24,0,"gh-btn"],[24,"data-test-link","import-content"]],[["@route"],["settings.labs.import"]],[["default"],[{"statements":[[2,"\\n "],[10,"span"],[12],[2,"Open Importer"],[13],[2,"\\n "]],"parameters":[]}]]],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n\\n "],[10,"div"],[14,0,"gh-expandable-block"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-expandable-header"],[12],[2,"\\n "],[10,"div"],[12],[2,"\\n "],[10,"h4"],[14,0,"gh-expandable-title"],[12],[2,"Export your content"],[13],[2,"\\n "],[10,"p"],[14,0,"gh-expandable-description"],[12],[2,"Download all of your posts and settings in a single, glorious JSON file"],[13],[2,"\\n "],[13],[2,"\\n "],[11,"button"],[24,0,"gh-btn"],[24,4,"button"],[4,[38,3],[[32,0],"downloadFile","db"],null],[12],[10,"span"],[12],[2,"Export"],[13],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n\\n "],[10,"div"],[14,0,"gh-expandable-block"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-expandable-header"],[12],[2,"\\n "],[10,"div"],[12],[2,"\\n "],[10,"h4"],[14,0,"gh-expandable-title"],[12],[2,"Delete all content"],[13],[2,"\\n "],[10,"p"],[14,0,"gh-expandable-description"],[12],[2,"Permanently delete all posts and tags from the database, a hard reset"],[13],[2,"\\n "],[13],[2,"\\n "],[11,"button"],[24,0,"gh-btn gh-btn-red"],[24,"data-test-button","delete-all"],[24,4,"button"],[4,[38,4],["click",[32,0,["confirmDeleteAll"]]],null],[12],[10,"span"],[12],[2,"Delete"],[13],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n\\n "],[10,"div"],[14,0,"gh-main-section"],[12],[2,"\\n "],[10,"h4"],[14,0,"gh-main-section-header small bn"],[12],[2,"Beta features"],[13],[2,"\\n "],[10,"div"],[14,0,"gh-expandable"],[12],[2,"\\n "],[8,"labs/lexical",[],[[],[]],null],[2,"\\n\\n "],[10,"div"],[14,0,"gh-expandable-block"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-expandable-header"],[12],[2,"\\n "],[10,"div"],[12],[2,"\\n "],[10,"h4"],[14,0,"gh-expandable-title"],[12],[2,"Substack migrator"],[13],[2,"\\n "],[10,"p"],[14,0,"gh-expandable-description"],[12],[2,"A "],[10,"a"],[14,6,"https://ghost.org/help/importing-from-substack/"],[14,"target","_blank"],[14,"rel","noopener noreferrer"],[12],[2,"step-by-step tool"],[13],[2," to easily import all your content, members and paid subscriptions"],[13],[2,"\\n "],[13],[2,"\\n "],[8,"link-to",[[24,0,"gh-btn"],[24,"data-test-link","migrate"]],[["@route"],["migrate"]],[["default"],[{"statements":[[2,"\\n "],[10,"span"],[12],[2,"Open"],[13],[2,"\\n "]],"parameters":[]}]]],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n\\n "],[10,"div"],[14,0,"gh-expandable-block"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-expandable-header"],[12],[2,"\\n "],[10,"div"],[12],[2,"\\n "],[10,"h4"],[14,0,"gh-expandable-title"],[12],[2,"Portal translation"],[13],[2,"\\n "],[10,"p"],[14,0,"gh-expandable-description"],[12],[2,"\\n Translate your membership flows into your publication language ("],[10,"a"],[14,6,"https://github.com/TryGhost/Ghost/tree/main/ghost/i18n/locales"],[14,"target","_blank"],[14,"rel","noopener noreferrer"],[12],[2,"supported languages"],[13],[2,"). Don’t see yours? "],[10,"a"],[14,6,"https://forum.ghost.org/t/help-translate-ghost-beta/37461"],[14,"target","_blank"],[14,"rel","noopener noreferrer"],[12],[2,"Get involved"],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"for-switch"],[12],[2,"\\n "],[8,"gh-feature-flag",[],[["@flag"],["i18n"]],null],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n\\n "],[10,"div"],[14,0,"gh-expandable-block"],[12],[2,"\\n "],[8,"gh-uploader",[],[["@extensions","@uploadUrl","@paramName","@onUploadSuccess","@onUploadFailure"],[[32,0,["redirectsFileExtensions"]],"/redirects/upload/","redirects",[30,[36,5],[[32,0,["redirectUploadResult"]],true],null],[30,[36,5],[[32,0,["redirectUploadResult"]],false],null]]],[["default"],[{"statements":[[2,"\\n "],[10,"div"],[14,0,"gh-expandable-header"],[12],[2,"\\n "],[10,"div"],[12],[2,"\\n "],[10,"h4"],[14,0,"gh-expandable-title"],[12],[2,"Redirects"],[13],[2,"\\n "],[10,"p"],[14,0,"gh-expandable-description"],[12],[2,"Configure redirects for old or moved content, more info in "],[10,"a"],[14,6,"https://ghost.org/tutorials/implementing-redirects/"],[14,"target","_blank"],[14,"rel","noopener noreferrer"],[12],[2,"the docs"],[13],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"gh-setting-action flex flex-column items-end"],[12],[2,"\\n"],[6,[37,2],[[32,3,["isUploading"]]],null,[["default","else"],[{"statements":[[2," "],[1,[32,3,["progressBar"]]],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[10,"button"],[15,0,[31,["gh-btn gh-btn-icon ",[30,[36,2],[[32,0,["redirectSuccess"]],"gh-btn-green"],null]," ",[30,[36,2],[[32,0,["redirectFailure"]],"gh-btn-red"],null]]]],[15,"onclick",[30,[36,3],[[32,0],"triggerFileDialog"],null]],[14,"data-test-button","upload-redirects"],[14,4,"button"],[12],[2,"\\n "],[10,"span"],[12],[2,"\\n"],[6,[37,2],[[32,0,["redirectSuccess"]]],null,[["default","else"],[{"statements":[[2," "],[1,[30,[36,1],["check-circle"],null]],[2," Uploaded\\n"]],"parameters":[]},{"statements":[[6,[37,2],[[32,0,["redirectFailure"]]],null,[["default","else"],[{"statements":[[2," "],[1,[30,[36,1],["retry"],null]],[2," Upload Failed\\n"]],"parameters":[]},{"statements":[[2," Upload redirects YAML/JSON\\n "]],"parameters":[]}]]]],"parameters":[]}]]],[2," "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[12],[11,"a"],[24,6,"#"],[24,"data-test-link","download-redirects"],[4,[38,3],[[32,0],"downloadFile","redirects/download"],null],[12],[2,"Download current redirects"],[13],[13],[2,"\\n"]],"parameters":[]}]]],[2,"\\n"],[6,[37,7],[[30,[36,6],[[30,[36,6],[[32,3,["errors"]]],null]],null]],null,[["default"],[{"statements":[[2," "],[10,"div"],[14,0,"gh-setting-error"],[14,"data-test-error","redirects"],[12],[1,[30,[36,0],[[32,4,["context"]],[32,4,["message"]]],null]],[13],[2,"\\n"]],"parameters":[4]}]]],[2,"\\n "],[10,"div"],[14,5,"display:none"],[12],[2,"\\n "],[8,"gh-file-input",[[24,"data-test-file-input","redirects"]],[["@multiple","@action","@accept"],[false,[32,3,["setFiles"]],[32,0,["redirectsFileMimeTypes"]]]],null],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "]],"parameters":[3]}]]],[2,"\\n "],[13],[2,"\\n\\n "],[10,"div"],[14,0,"gh-expandable-block"],[12],[2,"\\n "],[8,"gh-uploader",[],[["@extensions","@uploadUrl","@paramName","@onUploadSuccess","@onUploadFailure"],[[32,0,["yamlExtension"]],"/settings/routes/yaml/","routes",[30,[36,5],[[32,0,["routesUploadResult"]],true],null],[30,[36,5],[[32,0,["routesUploadResult"]],false],null]]],[["default"],[{"statements":[[2,"\\n "],[10,"div"],[14,0,"gh-expandable-header"],[12],[2,"\\n "],[10,"div"],[12],[2,"\\n "],[10,"h4"],[14,0,"gh-expandable-title"],[12],[2,"Routes"],[13],[2,"\\n "],[10,"p"],[14,0,"gh-expandable-description"],[12],[2,"Configure dynamic routing by modifying the routes.yaml file"],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"gh-setting-action flex flex-column items-end"],[12],[2,"\\n"],[6,[37,2],[[32,1,["isUploading"]]],null,[["default","else"],[{"statements":[[2," "],[1,[32,1,["progressBar"]]],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[10,"button"],[15,0,[31,["gh-btn gh-btn-icon ",[30,[36,2],[[32,0,["routesSuccess"]],"gh-btn-green"],null]," ",[30,[36,2],[[32,0,["routesFailure"]],"gh-btn-red"],null]]]],[15,"onclick",[30,[36,3],[[32,0],"triggerFileDialog"],null]],[14,"data-test-button","upload-routes"],[14,4,"button"],[12],[2,"\\n "],[10,"span"],[12],[2,"\\n"],[6,[37,2],[[32,0,["routesSuccess"]]],null,[["default","else"],[{"statements":[[2," "],[1,[30,[36,1],["check-circle"],null]],[2," Uploaded\\n"]],"parameters":[]},{"statements":[[6,[37,2],[[32,0,["routesFailure"]]],null,[["default","else"],[{"statements":[[2," "],[1,[30,[36,1],["retry"],null]],[2," Upload Failed\\n"]],"parameters":[]},{"statements":[[2," Upload routes YAML\\n "]],"parameters":[]}]]]],"parameters":[]}]]],[2," "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[12],[11,"a"],[24,6,"#"],[24,"data-test-link","download-routes"],[4,[38,3],[[32,0],"downloadFile","settings/routes/yaml"],null],[12],[2,"Download current routes.yaml"],[13],[13],[2,"\\n"]],"parameters":[]}]]],[2,"\\n"],[6,[37,7],[[30,[36,6],[[30,[36,6],[[32,1,["errors"]]],null]],null]],null,[["default"],[{"statements":[[2," "],[10,"div"],[14,0,"gh-setting-error"],[14,"data-test-error","routes"],[12],[1,[30,[36,0],[[32,2,["context"]],[32,2,["message"]]],null]],[13],[2,"\\n"]],"parameters":[2]}]]],[2,"\\n "],[10,"div"],[14,5,"display:none"],[12],[2,"\\n "],[8,"gh-file-input",[[24,"data-test-file-input","routes"]],[["@multiple","@action","@accept"],[false,[32,1,["setFiles"]],[32,0,["yamlAccept"]]]],null],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "]],"parameters":[1]}]]],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n\\n\\n"],[6,[37,2],[[30,[36,8],null,null]],null,[["default"],[{"statements":[[2," "],[10,"div"],[14,0,"gh-main-section"],[12],[2,"\\n "],[10,"h4"],[14,0,"gh-main-section-header small bn"],[12],[2,"Alpha Features"],[13],[2,"\\n "],[10,"div"],[14,0,"gh-expandable"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-expandable-block"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-expandable-header"],[12],[2,"\\n "],[10,"div"],[12],[2,"\\n "],[10,"h4"],[14,0,"gh-expandable-title"],[12],[2,"URL cache"],[13],[2,"\\n "],[10,"p"],[14,0,"gh-expandable-description"],[12],[2,"\\n Enable URL Caching\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"for-switch"],[12],[2,"\\n "],[8,"gh-feature-flag",[],[["@flag"],["urlCache"]],null],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n\\n "],[10,"div"],[14,0,"gh-expandable-block"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-expandable-header"],[12],[2,"\\n "],[10,"div"],[12],[2,"\\n "],[10,"h4"],[14,0,"gh-expandable-title"],[12],[2,"Lexical multiplayer"],[13],[2,"\\n "],[10,"p"],[14,0,"gh-expandable-description"],[12],[2,"\\n Enables multiplayer editing in the lexical editor.\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"for-switch"],[12],[2,"\\n "],[8,"gh-feature-flag",[],[["@flag"],["lexicalMultiplayer"]],null],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"gh-expandable-block"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-expandable-header"],[12],[2,"\\n "],[10,"div"],[12],[2,"\\n "],[10,"h4"],[14,0,"gh-expandable-title"],[12],[2,"Webmentions"],[13],[2,"\\n "],[10,"p"],[14,0,"gh-expandable-description"],[12],[2,"\\n Allows viewing received mentions on the dashboard.\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"for-switch"],[12],[2,"\\n "],[8,"gh-feature-flag",[],[["@flag"],["webmentions"]],null],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"gh-expandable-block"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-expandable-header"],[12],[2,"\\n "],[10,"div"],[12],[2,"\\n "],[10,"h4"],[14,0,"gh-expandable-title"],[12],[2,"Websockets"],[13],[2,"\\n "],[10,"p"],[14,0,"gh-expandable-description"],[12],[2,"\\n Test out Websockets functionality at "],[10,"code"],[12],[2,"/ghost/#/websockets"],[13],[2,".\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"for-switch"],[12],[2,"\\n "],[8,"gh-feature-flag",[],[["@flag"],["websockets"]],null],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"gh-expandable-block"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-expandable-header"],[12],[2,"\\n "],[10,"div"],[12],[2,"\\n "],[10,"h4"],[14,0,"gh-expandable-title"],[12],[2,"Stripe Automatic Tax"],[13],[2,"\\n "],[10,"p"],[14,0,"gh-expandable-description"],[12],[2,"\\n Use Stripe Automatic Tax at Stripe Checkout. Needs to be enabled in Stripe\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"for-switch"],[12],[2,"\\n "],[8,"gh-feature-flag",[],[["@flag"],["stripeAutomaticTax"]],null],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"gh-expandable-block"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-expandable-header"],[12],[2,"\\n "],[10,"div"],[12],[2,"\\n "],[10,"h4"],[14,0,"gh-expandable-title"],[12],[2,"Email customization"],[13],[2,"\\n "],[10,"p"],[14,0,"gh-expandable-description"],[12],[2,"\\n Adding more control over the newsletter template\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"for-switch"],[12],[2,"\\n "],[8,"gh-feature-flag",[],[["@flag"],["emailCustomization"]],null],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n\\n "],[10,"div"],[14,0,"gh-expandable-block"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-expandable-header"],[12],[2,"\\n "],[10,"div"],[12],[2,"\\n "],[10,"h4"],[14,0,"gh-expandable-title"],[12],[2,"Collections"],[13],[2,"\\n "],[10,"p"],[14,0,"gh-expandable-description"],[12],[2,"\\n Enables Collections 2.0\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"for-switch"],[12],[2,"\\n "],[8,"gh-feature-flag",[],[["@flag"],["collections"]],null],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n\\n "],[10,"div"],[14,0,"gh-expandable-block"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-expandable-header"],[12],[2,"\\n "],[10,"div"],[12],[2,"\\n "],[10,"h4"],[14,0,"gh-expandable-title"],[12],[2,"Collections Card"],[13],[2,"\\n "],[10,"p"],[14,0,"gh-expandable-description"],[12],[2,"\\n Enables the Collections Card for pages - requires Collections and the beta Editor to be enabled\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"for-switch"],[12],[2,"\\n "],[8,"gh-feature-flag",[],[["@flag"],["collectionsCard"]],null],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n\\n "],[10,"div"],[14,0,"gh-expandable-block"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-expandable-header"],[12],[2,"\\n "],[10,"div"],[12],[2,"\\n "],[10,"h4"],[14,0,"gh-expandable-title"],[12],[2,"Admin X"],[13],[2,"\\n "],[10,"p"],[14,0,"gh-expandable-description"],[12],[2,"\\n Enables Admin X, the new admin UI for Ghost\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"for-switch"],[12],[2,"\\n "],[8,"gh-feature-flag",[],[["@flag"],["adminXSettings"]],null],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n\\n "],[10,"div"],[14,0,"gh-expandable-block"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-expandable-header"],[12],[2,"\\n "],[10,"div"],[12],[2,"\\n "],[10,"h4"],[14,0,"gh-expandable-title"],[12],[2,"Mail Events"],[13],[2,"\\n "],[10,"p"],[14,0,"gh-expandable-description"],[12],[2,"\\n Enables processing of mail events\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"for-switch"],[12],[2,"\\n "],[8,"gh-feature-flag",[],[["@flag"],["mailEvents"]],null],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n\\n "],[10,"div"],[14,0,"gh-expandable-block"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-expandable-header"],[12],[2,"\\n "],[10,"div"],[12],[2,"\\n "],[10,"h4"],[14,0,"gh-expandable-title"],[12],[2,"Lexical indicators"],[13],[2,"\\n "],[10,"p"],[14,0,"gh-expandable-description"],[12],[2,"\\n Show L/M indicator on posts list for easier debugging\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"for-switch"],[12],[2,"\\n "],[8,"gh-feature-flag",[],[["@flag"],["lexicalIndicators"]],null],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n\\n "],[10,"div"],[14,0,"gh-expandable-block"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-expandable-header"],[12],[2,"\\n "],[10,"div"],[12],[2,"\\n "],[10,"h4"],[14,0,"gh-expandable-title"],[12],[2,"Import Member Tier"],[13],[2,"\\n "],[10,"p"],[14,0,"gh-expandable-description"],[12],[2,"\\n Enables tier to be specified when importing members\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"for-switch"],[12],[2,"\\n "],[8,"gh-feature-flag",[],[["@flag"],["importMemberTier"]],null],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n\\n "],[10,"div"],[14,0,"gh-expandable-block"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-expandable-header"],[12],[2,"\\n "],[10,"div"],[12],[2,"\\n "],[10,"h4"],[14,0,"gh-expandable-title"],[12],[2,"Tips & donations"],[13],[2,"\\n "],[10,"p"],[14,0,"gh-expandable-description"],[12],[2,"\\n Enables publishers to collect one-time payments\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"for-switch"],[12],[2,"\\n "],[8,"gh-feature-flag",[],[["@flag"],["tipsAndDonations"]],null],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n\\n "],[10,"div"],[14,0,"gh-expandable-block"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-expandable-header"],[12],[2,"\\n "],[10,"div"],[12],[2,"\\n "],[10,"h4"],[14,0,"gh-expandable-title"],[12],[2,"Recommendations"],[13],[2,"\\n "],[10,"p"],[14,0,"gh-expandable-description"],[12],[2,"\\n Enables publishers to recommend sites to their audience\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"for-switch"],[12],[2,"\\n "],[8,"gh-feature-flag",[],[["@flag"],["recommendations"]],null],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n"],[13],[2,"\\n"]],"hasEval":false,"upvars":["or","svg-jar","if","action","on","perform","-track-array","each","enable-developer-experiments"]}',moduleName:"ghost-admin/templates/settings/labs.hbs"})
6309
6306
  e.default=t})),define("ghost-admin/templates/settings/labs/import",["exports"],(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
6310
6307
  var t=Ember.HTMLBars.template({id:"EMFXufEV",block:'{"symbols":[],"statements":[[8,"gh-fullscreen-modal",[],[["@modal","@confirm","@close","@modifier"],["import-content",[32,0,["close"]],[32,0,["close"]],"action import-content"]],null],[2,"\\n"]],"hasEval":false,"upvars":[]}',moduleName:"ghost-admin/templates/settings/labs/import.hbs"})
6311
6308
  e.default=t})),define("ghost-admin/templates/settings/membership",["exports"],(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
@@ -6579,6 +6576,6 @@ var n=t.default.create({properties:["name","event","targetUrl","secret"],name(e)
6579
6576
  e.default=n})),define("ghost-admin/views/application",["exports"],(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
6580
6577
  var t=Ember.Component.extend({})
6581
6578
  e.default=t})),define("ghost-admin/config/environment",[],(function(){try{var e="ghost-admin/config/environment",t=document.querySelector('meta[name="'+e+'"]').getAttribute("content"),i={default:JSON.parse(decodeURIComponent(t))}
6582
- return Object.defineProperty(i,"__esModule",{value:!0}),i}catch(n){throw new Error('Could not read config from meta tag with name "'+e+'".')}})),runningTests||require("ghost-admin/app").default.create({version:"5.60",name:"ghost-admin"})
6579
+ return Object.defineProperty(i,"__esModule",{value:!0}),i}catch(n){throw new Error('Could not read config from meta tag with name "'+e+'".')}})),runningTests||require("ghost-admin/app").default.create({version:"5.61",name:"ghost-admin"})
6583
6580
 
6584
- //# sourceMappingURL=ghost-fc7b85b759f27e607667914dcd685402.map
6581
+ //# sourceMappingURL=ghost-4416ac3815c54eac76c2590d1154a628.map