ghost 5.115.1 → 5.116.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 (238) hide show
  1. package/components/{tryghost-api-framework-5.115.1.tgz → tryghost-api-framework-5.116.0.tgz} +0 -0
  2. package/components/tryghost-constants-5.116.0.tgz +0 -0
  3. package/components/tryghost-custom-fonts-5.116.0.tgz +0 -0
  4. package/components/{tryghost-custom-theme-settings-service-5.115.1.tgz → tryghost-custom-theme-settings-service-5.116.0.tgz} +0 -0
  5. package/components/tryghost-domain-events-5.116.0.tgz +0 -0
  6. package/components/tryghost-donations-5.116.0.tgz +0 -0
  7. package/components/tryghost-email-addresses-5.116.0.tgz +0 -0
  8. package/components/tryghost-email-service-5.116.0.tgz +0 -0
  9. package/components/tryghost-email-suppression-list-5.116.0.tgz +0 -0
  10. package/components/tryghost-html-to-plaintext-5.116.0.tgz +0 -0
  11. package/components/tryghost-i18n-5.116.0.tgz +0 -0
  12. package/components/tryghost-job-manager-5.116.0.tgz +0 -0
  13. package/components/tryghost-link-replacer-5.116.0.tgz +0 -0
  14. package/components/tryghost-magic-link-5.116.0.tgz +0 -0
  15. package/components/{tryghost-member-attribution-5.115.1.tgz → tryghost-member-attribution-5.116.0.tgz} +0 -0
  16. package/components/tryghost-member-events-5.116.0.tgz +0 -0
  17. package/components/tryghost-members-api-5.116.0.tgz +0 -0
  18. package/components/tryghost-members-csv-5.116.0.tgz +0 -0
  19. package/components/{tryghost-members-offers-5.115.1.tgz → tryghost-members-offers-5.116.0.tgz} +0 -0
  20. package/components/{tryghost-milestones-5.115.1.tgz → tryghost-milestones-5.116.0.tgz} +0 -0
  21. package/components/{tryghost-mw-error-handler-5.115.1.tgz → tryghost-mw-error-handler-5.116.0.tgz} +0 -0
  22. package/components/tryghost-mw-vhost-5.116.0.tgz +0 -0
  23. package/components/tryghost-post-events-5.116.0.tgz +0 -0
  24. package/components/{tryghost-post-revisions-5.115.1.tgz → tryghost-post-revisions-5.116.0.tgz} +0 -0
  25. package/components/tryghost-posts-service-5.116.0.tgz +0 -0
  26. package/components/{tryghost-prometheus-metrics-5.115.1.tgz → tryghost-prometheus-metrics-5.116.0.tgz} +0 -0
  27. package/components/tryghost-security-5.116.0.tgz +0 -0
  28. package/components/{tryghost-tiers-5.115.1.tgz → tryghost-tiers-5.116.0.tgz} +0 -0
  29. package/components/tryghost-webmentions-5.116.0.tgz +0 -0
  30. package/core/boot.js +0 -42
  31. package/core/built/admin/assets/admin-x-activitypub/admin-x-activitypub.js +24764 -24129
  32. package/core/built/admin/assets/admin-x-demo/admin-x-demo.js +1 -1
  33. package/core/built/admin/assets/admin-x-demo/{index-15df2af5.mjs → index-a9601514.mjs} +3 -3
  34. package/core/built/admin/assets/admin-x-demo/{modals-8ca61d78.mjs → modals-c1789d04.mjs} +2 -2
  35. package/core/built/admin/assets/admin-x-settings/{CodeEditorView-d2e6872f.mjs → CodeEditorView-e9c9deb8.mjs} +2 -2
  36. package/core/built/admin/assets/admin-x-settings/admin-x-settings.js +2 -2
  37. package/core/built/admin/assets/admin-x-settings/{index-8e8821e5.mjs → index-84580c3a.mjs} +2 -2
  38. package/core/built/admin/assets/admin-x-settings/{index-f5cb3db3.mjs → index-f744cab7.mjs} +49 -35
  39. package/core/built/admin/assets/admin-x-settings/{modals-e8ae4d46.mjs → modals-d9ca60c5.mjs} +1198 -1192
  40. package/core/built/admin/assets/chunk.524.8371443ef8f60db429d0.js +35 -0
  41. package/core/built/admin/assets/chunk.582.f90151775f2e53dd21d9.js +37 -0
  42. package/core/built/admin/assets/{chunk.874.461cb3cf5b6b36915f8c.js → chunk.713.e9027c0cc3c56110f5da.js} +125 -98
  43. package/core/built/admin/assets/{ghost-df7b9558260aa27d18b195ee895b487d.js → ghost-03b64c086f3c60cabc85fe7a7e2b640a.js} +144 -145
  44. package/core/built/admin/assets/ghost-ba58e9822f7384461e926c7e23f04a75.css +1 -0
  45. package/core/built/admin/assets/ghost-dark-f1f29683b14ffa11615b3bba8b6ab92c.css +1 -0
  46. package/core/built/admin/assets/koenig-lexical/index.css +1 -1
  47. package/core/built/admin/assets/koenig-lexical/koenig-lexical.js +20563 -20891
  48. package/core/built/admin/assets/koenig-lexical/koenig-lexical.umd.js +139 -139
  49. package/core/built/admin/assets/posts/posts.js +5732 -5667
  50. package/core/built/admin/assets/stats/stats.js +71082 -7533
  51. package/core/built/admin/assets/{vendor-68a4aa424a179a90f5bbc2b750def576.js → vendor-72026232b36d97babc6320917c16c321.js} +36 -34
  52. package/core/built/admin/index.html +6 -6
  53. package/core/cli/generate-data.js +1 -1
  54. package/core/frontend/helpers/ghost_head.js +6 -1
  55. package/core/frontend/public/ghost-stats.js +55 -2
  56. package/core/frontend/services/assets-minification/AdminAuthAssets.js +2 -1
  57. package/core/frontend/services/assets-minification/CardAssets.js +1 -1
  58. package/core/frontend/services/assets-minification/CommentCountsAssets.js +1 -1
  59. package/core/frontend/services/assets-minification/MemberAttributionAssets.js +1 -1
  60. package/core/frontend/services/assets-minification/Minifier.js +191 -0
  61. package/core/frontend/services/routing/controllers/previews.js +2 -1
  62. package/core/server/adapters/cache/Redis.js +1 -1
  63. package/core/server/adapters/lib/redis/AdapterCacheRedis.js +287 -0
  64. package/core/server/adapters/lib/redis/redis-store-factory.js +22 -0
  65. package/core/server/api/endpoints/posts.js +9 -3
  66. package/core/server/api/endpoints/previews.js +35 -1
  67. package/core/server/api/endpoints/utils/serializers/output/utils/post-gating.js +6 -9
  68. package/core/server/api/endpoints/utils/validators/input/settings.js +1 -1
  69. package/core/server/data/db/connection.js +2 -0
  70. package/core/server/data/db/index.js +1 -0
  71. package/core/server/data/importer/handlers/ImporterContentFileHandler.js +90 -0
  72. package/core/server/data/importer/import-manager.js +1 -1
  73. package/core/server/data/seeders/DataGenerator.js +288 -0
  74. package/core/server/data/seeders/importers/BenefitsImporter.js +28 -0
  75. package/core/server/data/seeders/importers/CommentsImporter.js +73 -0
  76. package/core/server/data/seeders/importers/EmailBatchesImporter.js +38 -0
  77. package/core/server/data/seeders/importers/EmailRecipientFailuresImporter.js +67 -0
  78. package/core/server/data/seeders/importers/EmailRecipientsImporter.js +212 -0
  79. package/core/server/data/seeders/importers/EmailsImporter.js +99 -0
  80. package/core/server/data/seeders/importers/LabelsImporter.js +41 -0
  81. package/core/server/data/seeders/importers/MembersClickEventsImporter.js +69 -0
  82. package/core/server/data/seeders/importers/MembersCreatedEventsImporter.js +103 -0
  83. package/core/server/data/seeders/importers/MembersFeedbackImporter.js +45 -0
  84. package/core/server/data/seeders/importers/MembersImporter.js +111 -0
  85. package/core/server/data/seeders/importers/MembersLabelsImporter.js +39 -0
  86. package/core/server/data/seeders/importers/MembersLoginEventsImporter.js +69 -0
  87. package/core/server/data/seeders/importers/MembersNewslettersImporter.js +38 -0
  88. package/core/server/data/seeders/importers/MembersPaidSubscriptionEventsImporter.js +99 -0
  89. package/core/server/data/seeders/importers/MembersProductsImporter.js +42 -0
  90. package/core/server/data/seeders/importers/MembersStatusEventsImporter.js +58 -0
  91. package/core/server/data/seeders/importers/MembersStripeCustomersImporter.js +60 -0
  92. package/core/server/data/seeders/importers/MembersStripeCustomersSubscriptionsImporter.js +259 -0
  93. package/core/server/data/seeders/importers/MembersSubscribeEventsImporter.js +69 -0
  94. package/core/server/data/seeders/importers/MembersSubscriptionCreatedEventsImporter.js +95 -0
  95. package/core/server/data/seeders/importers/NewslettersImporter.js +40 -0
  96. package/core/server/data/seeders/importers/OffersImporter.js +70 -0
  97. package/core/server/data/seeders/importers/PostsAuthorsImporter.js +32 -0
  98. package/core/server/data/seeders/importers/PostsImporter.js +102 -0
  99. package/core/server/data/seeders/importers/PostsProductsImporter.js +35 -0
  100. package/core/server/data/seeders/importers/PostsTagsImporter.js +46 -0
  101. package/core/server/data/seeders/importers/ProductsBenefitsImporter.js +54 -0
  102. package/core/server/data/seeders/importers/ProductsImporter.js +90 -0
  103. package/core/server/data/seeders/importers/RecommendationClickEventsImporter.js +32 -0
  104. package/core/server/data/seeders/importers/RecommendationSubscribeEventsImporter.js +32 -0
  105. package/core/server/data/seeders/importers/RecommendationsImporter.js +34 -0
  106. package/core/server/data/seeders/importers/RedirectsImporter.js +49 -0
  107. package/core/server/data/seeders/importers/RolesUsersImporter.js +42 -0
  108. package/core/server/data/seeders/importers/StripePricesImporter.js +69 -0
  109. package/core/server/data/seeders/importers/StripeProductsImporter.js +34 -0
  110. package/core/server/data/seeders/importers/TableImporter.js +187 -0
  111. package/core/server/data/seeders/importers/TagsImporter.js +41 -0
  112. package/core/server/data/seeders/importers/UsersImporter.js +31 -0
  113. package/core/server/data/seeders/importers/WebMentionsImporter.js +42 -0
  114. package/core/server/data/seeders/importers/index.js +41 -0
  115. package/core/server/data/seeders/utils/JsonImporter.js +39 -0
  116. package/core/server/data/seeders/utils/blog-info.js +3 -0
  117. package/core/server/data/seeders/utils/database-date.js +7 -0
  118. package/core/server/data/seeders/utils/event-generator.js +48 -0
  119. package/core/server/data/seeders/utils/random.js +13 -0
  120. package/core/server/data/seeders/utils/topological-sort.js +33 -0
  121. package/core/server/services/adapter-manager/AdapterManager.js +161 -0
  122. package/core/server/services/adapter-manager/index.js +1 -1
  123. package/core/server/services/announcement-bar-service/AnnouncementBarSettings.js +54 -0
  124. package/core/server/services/announcement-bar-service/AnnouncementVisibilityValues.js +11 -0
  125. package/core/server/services/announcement-bar-service/index.js +1 -1
  126. package/core/server/services/api-version-compatibility/APIVersionCompatibilityService.js +1 -1
  127. package/core/server/services/auth/session/session-service.js +15 -5
  128. package/core/server/services/custom-redirects/index.js +1 -1
  129. package/core/server/services/email-analytics/EmailAnalyticsProviderMailgun.js +1 -1
  130. package/core/server/services/email-service/EmailServiceWrapper.js +4 -4
  131. package/core/server/services/email-suppression-list/MailgunEmailSuppressionList.js +1 -1
  132. package/core/server/services/email-suppression-list/service.js +1 -1
  133. package/core/server/services/lib/DynamicRedirectManager.js +156 -0
  134. package/core/server/services/lib/EmailContentGenerator.js +54 -0
  135. package/core/server/services/lib/InMemoryRepository.js +62 -0
  136. package/core/server/services/lib/InMemoryRepository.ts +80 -0
  137. package/core/server/services/lib/MailgunClient.js +364 -0
  138. package/core/server/services/link-redirection/LinkRedirect.js +26 -0
  139. package/core/server/services/link-redirection/LinkRedirectRepository.js +7 -7
  140. package/core/server/services/link-redirection/LinkRedirectsService.js +123 -0
  141. package/core/server/services/link-redirection/README.md +151 -0
  142. package/core/server/services/link-redirection/RedirectEvent.js +24 -0
  143. package/core/server/services/link-redirection/index.js +1 -1
  144. package/core/server/services/link-tracking/LinkClickTrackingService.js +1 -1
  145. package/core/server/services/mail/index.js +1 -1
  146. package/core/server/services/mail-events/InMemoryMailEventRepository.js +2 -2
  147. package/core/server/services/mail-events/InMemoryMailEventRepository.ts +1 -1
  148. package/core/server/services/members-events/LastSeenAtUpdater.js +1 -1
  149. package/core/server/services/offers/service.js +1 -1
  150. package/core/server/services/recommendations/RecommendationServiceWrapper.js +8 -8
  151. package/core/server/services/recommendations/service/BookshelfClickEventRepository.js +48 -0
  152. package/core/server/services/recommendations/service/BookshelfClickEventRepository.ts +49 -0
  153. package/core/server/services/recommendations/service/BookshelfRecommendationRepository.js +98 -0
  154. package/core/server/services/recommendations/service/BookshelfRecommendationRepository.ts +117 -0
  155. package/core/server/services/recommendations/service/BookshelfRepository.js +134 -0
  156. package/core/server/services/recommendations/service/BookshelfRepository.ts +196 -0
  157. package/core/server/services/recommendations/service/BookshelfSubscribeEventRepository.js +48 -0
  158. package/core/server/services/recommendations/service/BookshelfSubscribeEventRepository.ts +49 -0
  159. package/core/server/services/recommendations/service/ClickEvent.js +33 -0
  160. package/core/server/services/recommendations/service/ClickEvent.ts +32 -0
  161. package/core/server/services/recommendations/service/InMemoryRecommendationRepository.js +19 -0
  162. package/core/server/services/recommendations/service/InMemoryRecommendationRepository.ts +20 -0
  163. package/core/server/services/recommendations/service/IncomingRecommendationController.js +34 -0
  164. package/core/server/services/recommendations/service/IncomingRecommendationController.ts +51 -0
  165. package/core/server/services/recommendations/service/IncomingRecommendationEmailRenderer.js +25 -0
  166. package/core/server/services/recommendations/service/IncomingRecommendationEmailRenderer.ts +37 -0
  167. package/core/server/services/recommendations/service/IncomingRecommendationService.js +93 -0
  168. package/core/server/services/recommendations/service/IncomingRecommendationService.ts +160 -0
  169. package/core/server/services/recommendations/service/Recommendation.js +140 -0
  170. package/core/server/services/recommendations/service/Recommendation.ts +201 -0
  171. package/core/server/services/recommendations/service/RecommendationController.js +208 -0
  172. package/core/server/services/recommendations/service/RecommendationController.ts +258 -0
  173. package/core/server/services/recommendations/service/RecommendationMetadataService.js +86 -0
  174. package/core/server/services/recommendations/service/RecommendationMetadataService.ts +128 -0
  175. package/core/server/services/recommendations/service/RecommendationRepository.js +2 -0
  176. package/core/server/services/recommendations/service/RecommendationRepository.ts +13 -0
  177. package/core/server/services/recommendations/service/RecommendationService.js +228 -0
  178. package/core/server/services/recommendations/service/RecommendationService.ts +281 -0
  179. package/core/server/services/recommendations/service/SubscribeEvent.js +33 -0
  180. package/core/server/services/recommendations/service/SubscribeEvent.ts +32 -0
  181. package/core/server/services/recommendations/service/UnsafeData.js +183 -0
  182. package/core/server/services/recommendations/service/UnsafeData.ts +217 -0
  183. package/core/server/services/recommendations/service/WellknownService.js +36 -0
  184. package/core/server/services/recommendations/service/WellknownService.ts +47 -0
  185. package/core/server/services/recommendations/service/index.js +31 -0
  186. package/core/server/services/recommendations/service/index.ts +15 -0
  187. package/core/server/services/recommendations/service/libraries.d.ts +5 -0
  188. package/core/server/services/slack-notifications/SlackNotifications.js +211 -0
  189. package/core/server/services/slack-notifications/SlackNotificationsService.js +90 -0
  190. package/core/server/services/slack-notifications/service.js +4 -6
  191. package/core/server/web/api/endpoints/admin/app.js +1 -21
  192. package/core/server/web/api/middleware/version-match.js +41 -0
  193. package/core/shared/labs.js +2 -2
  194. package/package.json +87 -104
  195. package/tsconfig.tsbuildinfo +1 -1
  196. package/yarn.lock +1470 -1540
  197. package/components/tryghost-adapter-cache-redis-5.115.1.tgz +0 -0
  198. package/components/tryghost-adapter-manager-5.115.1.tgz +0 -0
  199. package/components/tryghost-announcement-bar-settings-5.115.1.tgz +0 -0
  200. package/components/tryghost-constants-5.115.1.tgz +0 -0
  201. package/components/tryghost-custom-fonts-5.115.1.tgz +0 -0
  202. package/components/tryghost-data-generator-5.115.1.tgz +0 -0
  203. package/components/tryghost-domain-events-5.115.1.tgz +0 -0
  204. package/components/tryghost-donations-5.115.1.tgz +0 -0
  205. package/components/tryghost-email-addresses-5.115.1.tgz +0 -0
  206. package/components/tryghost-email-content-generator-5.115.1.tgz +0 -0
  207. package/components/tryghost-email-events-5.115.1.tgz +0 -0
  208. package/components/tryghost-email-service-5.115.1.tgz +0 -0
  209. package/components/tryghost-email-suppression-list-5.115.1.tgz +0 -0
  210. package/components/tryghost-express-dynamic-redirects-5.115.1.tgz +0 -0
  211. package/components/tryghost-ghost-5.115.1.tgz +0 -0
  212. package/components/tryghost-html-to-plaintext-5.115.1.tgz +0 -0
  213. package/components/tryghost-i18n-5.115.1.tgz +0 -0
  214. package/components/tryghost-importer-handler-content-files-5.115.1.tgz +0 -0
  215. package/components/tryghost-in-memory-repository-5.115.1.tgz +0 -0
  216. package/components/tryghost-job-manager-5.115.1.tgz +0 -0
  217. package/components/tryghost-link-redirects-5.115.1.tgz +0 -0
  218. package/components/tryghost-link-replacer-5.115.1.tgz +0 -0
  219. package/components/tryghost-magic-link-5.115.1.tgz +0 -0
  220. package/components/tryghost-mailgun-client-5.115.1.tgz +0 -0
  221. package/components/tryghost-member-events-5.115.1.tgz +0 -0
  222. package/components/tryghost-members-api-5.115.1.tgz +0 -0
  223. package/components/tryghost-members-csv-5.115.1.tgz +0 -0
  224. package/components/tryghost-members-payments-5.115.1.tgz +0 -0
  225. package/components/tryghost-minifier-5.115.1.tgz +0 -0
  226. package/components/tryghost-mw-version-match-5.115.1.tgz +0 -0
  227. package/components/tryghost-mw-vhost-5.115.1.tgz +0 -0
  228. package/components/tryghost-post-events-5.115.1.tgz +0 -0
  229. package/components/tryghost-posts-service-5.115.1.tgz +0 -0
  230. package/components/tryghost-recommendations-5.115.1.tgz +0 -0
  231. package/components/tryghost-security-5.115.1.tgz +0 -0
  232. package/components/tryghost-slack-notifications-5.115.1.tgz +0 -0
  233. package/components/tryghost-webmentions-5.115.1.tgz +0 -0
  234. package/core/built/admin/assets/chunk.524.2439684964c164c598ab.js +0 -35
  235. package/core/built/admin/assets/chunk.582.bf5a2bbb2c4eb69ef1e7.js +0 -37
  236. package/core/built/admin/assets/ghost-327b17ea23cb8c89bd7e6a51e18e8506.css +0 -1
  237. package/core/built/admin/assets/ghost-dark-f30a597ac19632a118939492591c531b.css +0 -1
  238. /package/core/built/admin/assets/{chunk.874.461cb3cf5b6b36915f8c.js.LICENSE.txt → chunk.713.e9027c0cc3c56110f5da.js.LICENSE.txt} +0 -0
@@ -424,66 +424,62 @@ const l=Ember.HTMLBars.template({id:"JTurKSuN",block:'{"symbols":["@close","@dat
424
424
  let u=e.default=(r=Ember.inject.service,n=(0,i.task)({drop:!0}),a=class extends t.default{constructor(...e){var t,i,r,n
425
425
  super(...e),t=this,i="notifications",n=this,(r=s)&&Object.defineProperty(t,i,{enumerable:r.enumerable,configurable:r.configurable,writable:r.writable,value:r.initializer?r.initializer.call(n):void 0})}*deleteSnippetTask(){try{const{snippet:e}=this.args.data
426
426
  return e.isDeleted||(yield e.destroyRecord(),this.notifications.closeAlerts("snippet.delete")),!0}catch(e){this.notifications.showAPIError(e,{key:"snippet.delete.failed"})}finally{this.args.close()}}},s=o(a.prototype,"notifications",[r],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),o(a.prototype,"deleteSnippetTask",[n],Object.getOwnPropertyDescriptor(a.prototype,"deleteSnippetTask"),a.prototype),a)
427
- Ember._setComponentTemplate(l,u)})),define("ghost-admin/components/editor/modals/preview",["exports","@glimmer/component","ember-concurrency"],(function(e,t,i){var r,n,a,s,o,l,u,d,c,p,m
428
- function h(e,t,i,r){i&&Object.defineProperty(e,t,{enumerable:i.enumerable,configurable:i.configurable,writable:i.writable,value:i.initializer?i.initializer.call(r):void 0})}function b(e,t,i,r,n){var a={}
427
+ Ember._setComponentTemplate(l,u)})),define("ghost-admin/components/editor/modals/preview",["exports","@glimmer/component","ghost-admin/utils/copy-text-to-clipboard","ember-concurrency"],(function(e,t,i,r){var n,a,s,o,l,u,d,c,p,m,h,b,f,g,v,y,w,E,k,P,O,_,j,T,z
428
+ function x(e,t,i,r){i&&Object.defineProperty(e,t,{enumerable:i.enumerable,configurable:i.configurable,writable:i.writable,value:i.initializer?i.initializer.call(r):void 0})}function S(e,t,i,r,n){var a={}
429
429
  return Object.keys(r).forEach((function(e){a[e]=r[e]})),a.enumerable=!!a.enumerable,a.configurable=!!a.configurable,("value"in a||a.initializer)&&(a.writable=!0),a=i.slice().reverse().reduce((function(i,r){return r(e,t,i)||i}),a),n&&void 0!==a.initializer&&(a.value=a.initializer?a.initializer.call(n):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
430
- const f=Ember.HTMLBars.template({id:"7jkDVfWf",block:'{"symbols":["@data","@close"],"statements":[[10,"div"],[14,0,"flex flex-column h-100"],[12],[2,"\\n "],[10,"header"],[14,0,"modal-header gh-post-preview-header"],[14,"data-test-modal","preview-email"],[12],[2,"\\n "],[10,"div"],[14,0,"left"],[12],[2,"\\n "],[11,"button"],[24,0,"gh-btn-editor gh-editor-back-button"],[24,"title","Close"],[24,4,"button"],[4,[38,4],["click",[32,2]],null],[12],[2,"\\n "],[10,"span"],[12],[1,[30,[36,6],["arrow-left"],null]],[2," Editor"],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"gh-post-preview-btn-group"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-contentfilter gh-btn-group"],[12],[2,"\\n "],[11,"button"],[16,0,[31,["gh-btn ",[30,[36,2],[[30,[36,0],[[32,0,["tab"]],"browser"],null],"gh-btn-group-selected"],null]," gh-post-preview-mode"]]],[24,4,"button"],[4,[38,4],["click",[30,[36,5],[[32,0,["changeTab"]],"browser"],null]],null],[12],[10,"span"],[12],[1,[30,[36,6],["desktop"],null]],[13],[13],[2,"\\n "],[11,"button"],[16,0,[31,["gh-btn ",[30,[36,2],[[30,[36,0],[[32,0,["tab"]],"mobile"],null],"gh-btn-group-selected"],null]," gh-post-preview-mode"]]],[24,4,"button"],[4,[38,4],["click",[30,[36,5],[[32,0,["changeTab"]],"mobile"],null]],null],[12],[10,"span"],[12],[1,[30,[36,6],["mobile-phone"],null]],[13],[13],[2,"\\n"],[6,[37,2],[[30,[36,1],[[30,[36,8],[[32,0,["settings","membersSignupAccess"]],"none"],null],[30,[36,8],[[32,0,["settings","editorDefaultEmailRecipients"]],"disabled"],null]],null]],null,[["default"],[{"statements":[[6,[37,2],[[30,[36,1],[[32,1,["publishOptions","post","isPost"]],[30,[36,7],[[32,1,["publishOptions","user","isContributor"]]],null]],null]],null,[["default"],[{"statements":[[2," "],[11,"button"],[16,0,[31,["gh-btn ",[30,[36,2],[[30,[36,0],[[32,0,["tab"]],"email"],null],"gh-btn-group-selected"],null]," gh-post-preview-mode"]]],[24,"data-test-button","email-preview"],[24,4,"button"],[4,[38,4],["click",[30,[36,5],[[32,0,["changeTab"]],"email"],null]],null],[12],[10,"span"],[12],[1,[30,[36,6],["email-unread"],null]],[13],[13],[2,"\\n"]],"parameters":[]}]]]],"parameters":[]}]]],[2," "],[11,"button"],[16,0,[31,["gh-btn ",[30,[36,2],[[30,[36,0],[[32,0,["tab"]],"social"],null],"gh-btn-group-selected"],null]," gh-post-preview-mode"]]],[24,4,"button"],[4,[38,4],["click",[30,[36,5],[[32,0,["changeTab"]],"social"],null]],null],[12],[10,"span"],[12],[1,[30,[36,6],["facebook-logo"],null]],[13],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"right"],[12],[2,"\\n "],[11,"button"],[24,0,"gh-btn gh-btn-editor gh-editor-preview-trigger active"],[24,4,"button"],[4,[38,4],["click",[32,2]],null],[12],[2,"\\n "],[10,"span"],[12],[2,"Preview"],[13],[2,"\\n "],[13],[2,"\\n\\n"],[6,[37,2],[[32,1,["publishOptions","user","isContributor"]]],null,[["default","else"],[{"statements":[[2," "],[8,"gh-task-button",[[24,"data-test-preview-contributor-save",""]],[["@buttonText","@task","@runningText","@class"],["Save",[32,1,["saveTask"]],"Saving","gh-btn gh-btn-icon gh-btn-editor gh-editor-save-trigger contributor-save-button"]],null],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[11,"button"],[24,0,"gh-btn gh-btn-editor darkgrey gh-publish-trigger"],[24,4,"button"],[4,[38,4],["click",[32,1,["togglePreviewPublish"]]],null],[12],[2,"\\n "],[10,"span"],[12],[2,"Publish"],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]}]]],[2,"\\n "],[10,"div"],[14,0,"settings-menu-toggle-spacer"],[12],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n\\n"],[6,[37,2],[[32,0,["saveFirstTask","isRunning"]]],null,[["default","else"],[{"statements":[[2," "],[8,"gh-loading-spinner",[],[[],[]],null],[2,"\\n"]],"parameters":[]},{"statements":[[6,[37,2],[[30,[36,0],[[32,0,["tab"]],"browser"],null]],null,[["default"],[{"statements":[[2," "],[8,"editor/modals/preview/browser",[],[["@post","@skipAnimation"],[[32,1,["publishOptions","post"]],[32,0,["skipAnimation"]]]],null],[2,"\\n"]],"parameters":[]}]]],[2,"\\n"],[6,[37,2],[[30,[36,1],[[30,[36,0],[[32,0,["tab"]],"mobile"],null]],null]],null,[["default"],[{"statements":[[2," "],[8,"editor/modals/preview/mobile",[],[["@post","@skipAnimation"],[[32,1,["publishOptions","post"]],[32,0,["skipAnimation"]]]],null],[2,"\\n"]],"parameters":[]}]]],[2,"\\n"],[6,[37,3],[[32,1,["publishOptions","user","isContributor"]]],null,[["default"],[{"statements":[[6,[37,2],[[30,[36,1],[[30,[36,0],[[32,0,["tab"]],"email"],null],[32,1,["publishOptions","post","isPost"]]],null]],null,[["default"],[{"statements":[[2," "],[8,"editor/modals/preview/email",[],[["@post","@newsletter","@skipAnimation","@savePostTask"],[[32,1,["publishOptions","post"]],[32,1,["publishOptions","newsletter"]],[32,0,["skipAnimation"]],[32,1,["savePostTask"]]]],null],[2,"\\n"]],"parameters":[]}]]]],"parameters":[]}]]],[2,"\\n"],[6,[37,2],[[30,[36,0],[[32,0,["tab"]],"social"],null]],null,[["default"],[{"statements":[[2," "],[8,"editor/modals/preview/social",[],[["@post","@skipAnimation"],[[32,1,["publishOptions","post"]],[32,0,["skipAnimation"]]]],null],[2,"\\n"]],"parameters":[]}]]]],"parameters":[]}]]],[13]],"hasEval":false,"upvars":["eq","and","if","unless","on","fn","svg-jar","not","not-eq"]}',moduleName:"ghost-admin/components/editor/modals/preview.hbs"})
431
- let g=e.default=(r=Ember.inject.service,n=Ember.inject.service,a=Ember._tracked,s=Ember._tracked,o=Ember._action,m=class extends t.default{constructor(){super(...arguments),h(this,"settings",u,this),h(this,"session",d,this),h(this,"tab",c,this),h(this,"isChangingTab",p,this),this.saveFirstTask.perform()}get skipAnimation(){return this.args.data.skipAnimation||this.isChangingTab}changeTab(e){this.tab=e,this.isChangingTab=!0,this.args.data.changeTab?.(e)}*saveFirstTask(){const{saveTask:e,publishOptions:t,hasDirtyAttributes:i}=this.args.data
430
+ const C=Ember.HTMLBars.template({id:"SsqbBbtL",block:'{"symbols":["isContributor","option","@data","@close"],"statements":[[10,"div"],[14,0,"gh-post-preview-modal"],[12],[2,"\\n "],[10,"header"],[14,0,"modal-header gh-post-preview-header"],[14,"data-test-modal","preview-email"],[12],[2,"\\n "],[10,"div"],[14,0,"left"],[12],[2,"\\n "],[10,"h2"],[12],[2,"Preview"],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"gh-post-preview-btn-group"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-contentfilter gh-btn-group"],[12],[2,"\\n "],[11,"button"],[16,0,[31,["gh-btn gh-post-preview-mode ",[30,[36,3],[[30,[36,0],[[32,0,["previewFormat"]],"browser"],null],"gh-btn-group-selected"],null]]]],[24,4,"button"],[4,[38,5],["click",[30,[36,6],[[32,0,["changePreviewFormat"]],"browser"],null]],null],[12],[10,"span"],[12],[2,"Web"],[13],[13],[2,"\\n"],[6,[37,3],[[30,[36,7],[[32,0,["settings","membersEnabled"]],[30,[36,8],[[32,0,["settings","editorDefaultEmailRecipients"]],"disabled"],null]],null]],null,[["default"],[{"statements":[[6,[37,3],[[30,[36,7],[[32,3,["publishOptions","post","isPost"]],[30,[36,1],[[32,3,["publishOptions","user","isContributor"]]],null]],null]],null,[["default"],[{"statements":[[2," "],[11,"button"],[16,0,[31,["gh-btn ",[30,[36,3],[[30,[36,0],[[32,0,["previewFormat"]],"email"],null],"gh-btn-group-selected"],null]," gh-post-preview-mode"]]],[24,"data-test-button","email-preview"],[24,4,"button"],[4,[38,5],["click",[30,[36,6],[[32,0,["changePreviewFormat"]],"email"],null]],null],[12],[10,"span"],[12],[2,"Email"],[13],[13],[2,"\\n"]],"parameters":[]}]]]],"parameters":[]}]]],[2," "],[13],[2,"\\n "],[10,"div"],[14,0,"gh-contentfilter-divider"],[12],[13],[2,"\\n "],[10,"div"],[14,0,"gh-contentfilter gh-btn-group"],[12],[2,"\\n "],[11,"button"],[16,0,[31,["gh-btn ",[30,[36,3],[[30,[36,0],[[32,0,["previewSize"]],"desktop"],null],"gh-btn-group-selected"],null]," gh-post-preview-mode"]]],[24,4,"button"],[4,[38,5],["click",[30,[36,6],[[32,0,["changePreviewSize"]],"desktop"],null]],null],[12],[10,"span"],[12],[1,[30,[36,9],["laptop"],null]],[13],[13],[2,"\\n "],[11,"button"],[16,0,[31,["gh-btn ",[30,[36,3],[[30,[36,0],[[32,0,["previewSize"]],"mobile"],null],"gh-btn-group-selected"],null]," gh-post-preview-mode"]]],[24,4,"button"],[4,[38,5],["click",[30,[36,6],[[32,0,["changePreviewSize"]],"mobile"],null]],null],[12],[10,"span"],[12],[1,[30,[36,9],["mobile-phone"],null]],[13],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"gh-contentfilter-divider"],[12],[13],[2,"\\n "],[10,"span"],[14,0,"gh-select gh-web-preview-segment"],[14,"data-test-select","preview-segment"],[12],[2,"\\n "],[8,"power-select",[],[["@selected","@options","@onChange","@triggerComponent","@triggerClass","@dropdownClass","@matchTriggerWidth","@onOpen"],[[32,0,["selectedPreviewAsOption"]],[32,0,["previewAsOptions"]],[32,0,["changePreviewAsOption"]],[30,[36,10],["gh-power-select/trigger"],null],"gh-preview-segment-trigger","gh-preview-segment-dropdown",false,[32,0,["dropdown","closeDropdowns"]]]],[["default"],[{"statements":[[2,"\\n "],[1,[32,2,["label"]]],[2,"\\n "]],"parameters":[2]}]]],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"right"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-post-test-email-group"],[12],[2,"\\n "],[8,"gh-dropdown-button",[[24,"data-test-button","post-preview-test-email"]],[["@dropdownName","@classNames"],["post-preview-share","gh-btn gh-btn-preview gh-post-preview-url"]],[["default"],[{"statements":[[2,"\\n "],[10,"span"],[12],[1,[30,[36,9],["share"],null]],[13],[2,"\\n "]],"parameters":[]}]]],[2,"\\n "],[8,"gh-dropdown",[],[["@name","@classNames","@onOpen"],["post-preview-share","dropdown-menu gh-post-preview-share-dropdown",[32,0,["focusInput"]]]],[["default"],[{"statements":[[2,"\\n "],[10,"div"],[14,0,"gh-post-preview-share"],[12],[2,"\\n "],[8,"gh-task-button",[[24,"data-test-button","copy-draft-link"]],[["@task","@idleIcon","@buttonText","@runningText","@successText","@successClass","@class"],[[32,0,["copyPreviewUrlTask"]],"copy","Copy preview link","Copy preview link","Copied","","gh-btn gh-btn-icon gh-btn-preview gh-post-copy-url"]],null],[2,"\\n "],[10,"a"],[15,6,[32,3,["publishOptions","post","previewUrl"]]],[14,"target","_blank"],[14,"rel","noopener noreferrer"],[14,0,"gh-btn gh-btn-preview gh-publish-preview-newtab"],[14,"data-test-link","open-draft"],[12],[2,"\\n "],[10,"span"],[12],[1,[30,[36,9],["external"],null]],[2,"Open in new tab"],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "]],"parameters":[]}]]],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"gh-contentfilter-divider"],[12],[13],[2,"\\n "],[11,"button"],[24,0,"gh-btn gh-btn-editor gh-editor-preview-trigger active"],[24,4,"button"],[4,[38,5],["click",[32,4]],null],[12],[2,"\\n "],[10,"span"],[12],[2,"Close"],[13],[2,"\\n "],[13],[2,"\\n\\n"],[6,[37,3],[[32,3,["publishOptions","user","isContributor"]]],null,[["default","else"],[{"statements":[[2," "],[8,"gh-task-button",[[24,"data-test-preview-contributor-save",""]],[["@buttonText","@task","@runningText","@class"],["Save",[32,3,["saveTask"]],"Saving","gh-btn gh-btn-icon gh-btn-editor gh-editor-save-trigger contributor-save-button"]],null],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[11,"button"],[24,0,"gh-btn gh-btn-primary"],[24,4,"button"],[4,[38,5],["click",[32,3,["togglePreviewPublish"]]],null],[12],[2,"\\n "],[10,"span"],[12],[2,"Publish"],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n "],[13],[2,"\\n\\n"],[6,[37,3],[[32,0,["saveFirstTask","isRunning"]]],null,[["default","else"],[{"statements":[[2," "],[8,"gh-loading-spinner",[],[[],[]],null],[2,"\\n"]],"parameters":[]},{"statements":[[6,[37,4],[[32,3,["publishOptions","user","isContributor"]]],null,[["default"],[{"statements":[[6,[37,3],[[30,[36,2],[[32,1],[30,[36,1],[[32,3,["publishOptions","post","isPost"]]],null],[30,[36,0],[[32,0,["previewFormat"]],"browser"],null]],null]],null,[["default","else"],[{"statements":[[2," "],[8,"editor/modals/preview/browser",[],[["@previewUrl","@skipAnimation","@mobile"],[[32,0,["browserPreviewUrl"]],[32,0,["skipAnimation"]],[30,[36,0],[[32,0,["previewSize"]],"mobile"],null]]],null],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[8,"editor/modals/preview/email",[],[["@post","@memberSegment","@newsletter","@skipAnimation","@savePostTask","@mobile"],[[32,3,["publishOptions","post"]],[32,0,["previewAsSegment"]],[32,3,["publishOptions","newsletter"]],[32,0,["skipAnimation"]],[32,3,["saveTask"]],[30,[36,0],[[32,0,["previewSize"]],"mobile"],null]]],null],[2,"\\n"]],"parameters":[]}]]]],"parameters":[1]}]]]],"parameters":[]}]]],[13]],"hasEval":false,"upvars":["eq","not","or","if","let","on","fn","and","not-eq","svg-jar","component"]}',moduleName:"ghost-admin/components/editor/modals/preview.hbs"})
431
+ let M=e.default=(n=Ember.inject.service,a=Ember.inject.service,s=Ember.inject.service,o=Ember._tracked,l=Ember._tracked,u=Ember._tracked,d=Ember._tracked,c=Ember._tracked,p=Ember._tracked,m=Ember._action,h=Ember._action,b=Ember._action,f=Ember._action,g=Ember._action,z=class extends t.default{constructor(){super(...arguments),x(this,"dropdown",y,this),x(this,"settings",w,this),x(this,"session",E,this),x(this,"previewFormat",k,this),x(this,"previewSize",P,this),x(this,"isChangingTab",O,this),x(this,"previewEmailAddress",_,this),x(this,"previewAsSegment",j,this),x(this,"previewAsOptions",T,this),this.saveFirstTask.perform()
432
+ const{initialPreviewAsSegment:e}=this.args.data
433
+ e&&this.changePreviewAsSegment(e),this.setPreviewAsOptions()}get selectedPreviewAsOption(){return this.previewAsOptions.find((e=>e.value===this.previewAsSegment))}get skipAnimation(){return this.args.data.skipAnimation||this.isChangingTab}get browserPreviewUrl(){const e=new URL(this.args.data.publishOptions.post.previewUrl)
434
+ return e.searchParams.set("member_status",this.previewAsSegment),e.toString()}setPreviewAsOptions(){"email"===this.previewFormat?this.previewAsOptions=[{label:"Free member",value:"free"}]:this.previewAsOptions=[{label:"Public visitor",value:"anonymous"},{label:"Free member",value:"free"}],this.settings.paidMembersEnabled&&this.previewAsOptions.push({label:"Paid member",value:"paid"})}changePreviewFormat(e){this.isChangingTab=!0,this.previewFormat=e,this.args.data.changePreviewFormat?.(e),this.setPreviewAsOptions(),"email"===e&&"anonymous"===this.previewAsSegment&&this.changePreviewAsSegment("free")}changePreviewSize(e){this.isChangingTab=!0,this.previewSize=e,this.args.data.changePreviewSize?.(e)}changePreviewAsSegment(e){"email"===this.previewFormat&&"anonymous"===e&&(e="free"),this.previewAsSegment=e,this.args.data.changePreviewAsSegment?.(e)}changePreviewAsOption(e){this.changePreviewAsSegment(e.value)}focusInput(){setTimeout((()=>{document.querySelector("[data-post-preview-email-input]")?.focus()}),100)}*saveFirstTask(){const{saveTask:e,publishOptions:t,hasDirtyAttributes:i}=this.args.data
432
435
  if(e.isRunning)return yield e.last
433
- t.post.isDraft&&i&&(yield e.perform())}},v=m,w={className:"fullscreen-modal-total-overlay publish-modal",omitBackdrop:!0,ignoreBackdropClick:!0},(y=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e
436
+ t.post.isDraft&&i&&(yield e.perform())}*copyPreviewUrlTask(){return(0,i.default)(this.args.data.publishOptions.post.previewUrl),yield!0}},D=z,L={className:"fullscreen-modal-total-overlay publish-modal",omitBackdrop:!0,ignoreBackdropClick:!0},(A=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e
434
437
  var i=e[Symbol.toPrimitive]
435
438
  if(void 0!==i){var r=i.call(e,t||"default")
436
439
  if("object"!=typeof r)return r
437
440
  throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string")
438
- return"symbol"==typeof t?t:t+""}(y="modalOptions"))in v?Object.defineProperty(v,y,{value:w,enumerable:!0,configurable:!0,writable:!0}):v[y]=w,u=b((l=m).prototype,"settings",[r],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),d=b(l.prototype,"session",[n],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),c=b(l.prototype,"tab",[a],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return this.args.data.currentTab||"browser"}}),p=b(l.prototype,"isChangingTab",[s],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return!1}}),b(l.prototype,"changeTab",[o],Object.getOwnPropertyDescriptor(l.prototype,"changeTab"),l.prototype),b(l.prototype,"saveFirstTask",[i.task],Object.getOwnPropertyDescriptor(l.prototype,"saveFirstTask"),l.prototype),l)
439
- var v,y,w
440
- Ember._setComponentTemplate(f,g)})),define("ghost-admin/components/editor/modals/preview/browser",["exports","@glimmer/component","ghost-admin/utils/copy-text-to-clipboard","ember-concurrency"],(function(e,t,i,r){var n
441
- Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
442
- const a=Ember.HTMLBars.template({id:"BpdJmTc/",block:'{"symbols":["@icon","@skipAnimation","@post"],"statements":[[10,"div"],[15,0,[31,["gh-post-preview-container gh-post-preview-browser-container ",[30,[36,2],[[32,2],"fade-in"],null]]]],[12],[2,"\\n "],[10,"div"],[14,0,"gh-browserpreview-browser"],[12],[2,"\\n "],[10,"div"],[14,0,"tabs"],[12],[2,"\\n "],[10,"ul"],[12],[10,"li"],[12],[13],[10,"li"],[12],[13],[10,"li"],[12],[13],[13],[2,"\\n "],[10,"div"],[12],[2,"\\n"],[6,[37,3],[[30,[36,1],[[32,1],[32,0,["settings","icon"]]],null]],null,[["default","else"],[{"statements":[[2," "],[10,"span"],[14,0,"favicon"],[12],[10,"img"],[15,"src",[30,[36,1],[[32,1],[32,0,["settings","icon"]]],null]],[14,"alt","icon"],[12],[13],[13],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[10,"span"],[14,0,"favicon default"],[12],[1,[30,[36,0],["default-favicon"],null]],[13],[2,"\\n"]],"parameters":[]}]]],[2," "],[10,"span"],[14,0,"db truncate w-90"],[12],[1,[32,3,["previewUrl"]]],[13],[2,"\\n "],[11,"button"],[24,0,"gh-post-preview-url"],[24,4,"button"],[4,[38,5],["click",[30,[36,4],[[32,0,["copyPreviewUrl"]]],null]],null],[12],[2,"\\n "],[10,"span"],[14,0,"green-d1"],[12],[2,"\\n"],[6,[37,3],[[32,0,["copyPreviewUrl","isRunning"]]],null,[["default","else"],[{"statements":[[2," "],[1,[30,[36,0],["check-circle"],[["class"],["check v-mid mr1 ml2"]]]],[2," Copied\\n"]],"parameters":[]},{"statements":[[2," "],[1,[30,[36,0],["copy"],[["class"],["w4 ml3 v-mid fill-darkgrey"]]]],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"a"],[15,6,[32,3,["previewUrl"]]],[14,"target","_blank"],[14,"rel","noopener noreferrer"],[14,0,"gh-publish-preview-newtab"],[12],[2,"\\n "],[1,[30,[36,0],["external"],null]],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"gh-browserpreview-iframecontainer"],[12],[2,"\\n "],[10,"iframe"],[14,0,"gh-pe-iframe"],[15,"src",[32,3,["previewUrl"]]],[14,"title","Desktop browser post preview"],[12],[13],[2,"\\n "],[13],[2,"\\n"],[13]],"hasEval":false,"upvars":["svg-jar","or","unless","if","perform","on"]}',moduleName:"ghost-admin/components/editor/modals/preview/browser.hbs"})
443
- let s=e.default=(n=class extends t.default{*copyPreviewUrl(){(0,i.default)(this.args.post.previewUrl),yield(0,r.timeout)(this.isTesting?50:3e3)}},o=n.prototype,l="copyPreviewUrl",u=[r.task],d=Object.getOwnPropertyDescriptor(n.prototype,"copyPreviewUrl"),c=n.prototype,p={},Object.keys(d).forEach((function(e){p[e]=d[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),c&&void 0!==p.initializer&&(p.value=p.initializer?p.initializer.call(c):void 0,p.initializer=void 0),void 0===p.initializer&&(Object.defineProperty(o,l,p),p=null),n)
444
- var o,l,u,d,c,p
445
- Ember._setComponentTemplate(a,s)}))
446
- define("ghost-admin/components/editor/modals/preview/email",["exports","@glimmer/component","validator","ghost-admin/decorators/inject","ember-concurrency"],(function(e,t,i,r,n){var a,s,o,l,u,d,c,p,m,h,b,f,g,v,y,w,E,k,P,O,_,j,T,z,x,S,C,M,D,A,L,N,I,R
447
- function F(e,t,i,r){i&&Object.defineProperty(e,t,{enumerable:i.enumerable,configurable:i.configurable,writable:i.writable,value:i.initializer?i.initializer.call(r):void 0})}function U(e,t,i){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e
441
+ return"symbol"==typeof t?t:t+""}(A="modalOptions"))in D?Object.defineProperty(D,A,{value:L,enumerable:!0,configurable:!0,writable:!0}):D[A]=L,y=S((v=z).prototype,"dropdown",[n],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),w=S(v.prototype,"settings",[a],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),E=S(v.prototype,"session",[s],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),k=S(v.prototype,"previewFormat",[o],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return this.args.data.initialPreviewFormat||"browser"}}),P=S(v.prototype,"previewSize",[l],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return this.args.data.initialPreviewSize||"desktop"}}),O=S(v.prototype,"isChangingTab",[u],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return!1}}),_=S(v.prototype,"previewEmailAddress",[d],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return this.session.user.email}}),j=S(v.prototype,"previewAsSegment",[c],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return"free"}}),T=S(v.prototype,"previewAsOptions",[p],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return[]}}),S(v.prototype,"changePreviewFormat",[m],Object.getOwnPropertyDescriptor(v.prototype,"changePreviewFormat"),v.prototype),S(v.prototype,"changePreviewSize",[h],Object.getOwnPropertyDescriptor(v.prototype,"changePreviewSize"),v.prototype),S(v.prototype,"changePreviewAsSegment",[b],Object.getOwnPropertyDescriptor(v.prototype,"changePreviewAsSegment"),v.prototype),S(v.prototype,"changePreviewAsOption",[f],Object.getOwnPropertyDescriptor(v.prototype,"changePreviewAsOption"),v.prototype),S(v.prototype,"focusInput",[g],Object.getOwnPropertyDescriptor(v.prototype,"focusInput"),v.prototype),S(v.prototype,"saveFirstTask",[r.task],Object.getOwnPropertyDescriptor(v.prototype,"saveFirstTask"),v.prototype),S(v.prototype,"copyPreviewUrlTask",[r.task],Object.getOwnPropertyDescriptor(v.prototype,"copyPreviewUrlTask"),v.prototype),v)
442
+ var D,A,L
443
+ Ember._setComponentTemplate(C,M)})),define("ghost-admin/components/editor/modals/preview/browser",["exports"],(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
444
+ const t=Ember.HTMLBars.template({id:"moQ0IzOm",block:'{"symbols":["@skipAnimation","@previewUrl","@mobile"],"statements":[[6,[37,2],[[32,3]],null,[["default","else"],[{"statements":[[2," "],[10,"div"],[15,0,[31,["modal-body modal-preview-email-content gh-pe-mobile-container gh-post-preview-container h-auto overflow-auto ",[30,[36,0],[[32,1],"fade-in"],null]]]],[12],[2,"\\n "],[10,"div"],[14,0,"gh-pe-mobile-bezel"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-pe-mobile-screen"],[12],[2,"\\n "],[11,"iframe"],[24,0,"gh-post-preview-iframe"],[16,"src",[32,2]],[24,"title","Mobile browser post preview"],[4,[38,1],null,null],[12],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[10,"div"],[15,0,[31,["gh-post-preview-container gh-post-preview-browser-container ",[30,[36,0],[[32,1],"fade-in"],null]]]],[12],[2,"\\n "],[10,"div"],[14,0,"gh-browserpreview-iframecontainer"],[12],[2,"\\n "],[11,"iframe"],[24,0,"gh-pe-iframe"],[16,"src",[32,2]],[24,"title","Desktop browser post preview"],[4,[38,1],null,null],[12],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]}]]]],"hasEval":false,"upvars":["unless","close-dropdowns-on-click","if"]}',moduleName:"ghost-admin/components/editor/modals/preview/browser.hbs"})
445
+ e.default=Ember._setComponentTemplate(t,Ember._templateOnlyComponent())}))
446
+ define("ghost-admin/components/editor/modals/preview/email",["exports","@glimmer/component","validator","ghost-admin/decorators/inject","ember-concurrency"],(function(e,t,i,r,n){var a,s,o,l,u,d,c,p,m,h,b,f,g,v,y,w,E,k,P,O,_,j,T,z,x,S,C,M,D
447
+ function A(e,t,i,r){i&&Object.defineProperty(e,t,{enumerable:i.enumerable,configurable:i.configurable,writable:i.writable,value:i.initializer?i.initializer.call(r):void 0})}function L(e,t,i){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e
448
448
  var i=e[Symbol.toPrimitive]
449
449
  if(void 0!==i){var r=i.call(e,t||"default")
450
450
  if("object"!=typeof r)return r
451
451
  throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string")
452
- return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function B(e,t,i,r,n){var a={}
452
+ return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function N(e,t,i,r,n){var a={}
453
453
  return Object.keys(r).forEach((function(e){a[e]=r[e]})),a.enumerable=!!a.enumerable,a.configurable=!!a.configurable,("value"in a||a.initializer)&&(a.writable=!0),a=i.slice().reverse().reduce((function(i,r){return r(e,t,i)||i}),a),n&&void 0!==a.initializer&&(a.value=a.initializer?a.initializer.call(n):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
454
- const V=Ember.HTMLBars.template({id:"cj5IF5PD",block:'{"symbols":["option","option","@skipAnimation","@post","@savePostTask"],"statements":[[10,"div"],[15,0,[31,["gh-post-preview-container gh-post-preview-email-container ",[30,[36,3],[[32,3],"fade-in"],null]]]],[12],[2,"\\n "],[10,"div"],[14,0,"gh-post-preview-email-mockup"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-post-preview-email-header"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-post-preview-email-columns"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-post-preview-email-group"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-email-preview-newsletter-select"],[14,"data-test-email-preview-newsletter-select-section",""],[12],[2,"\\n "],[10,"p"],[12],[2,"From:"],[13],[2,"\\n"],[6,[37,5],[[30,[36,4],[[32,0,["newslettersList","length"]],1],null]],null,[["default","else"],[{"statements":[[2," "],[8,"power-select",[[24,"data-test-email-preview-newsletter-select",""]],[["@selected","@options","@onChange","@triggerComponent","@triggerClass","@dropdownClass","@extra","@selectedItemComponent"],[[32,0,["newsletter"]],[32,0,["newslettersList"]],[32,0,["setNewsletter"]],[30,[36,0],["gh-power-select/trigger"],null],"gh-preview-newsletter-trigger gh-input-x","gh-publish-newsletter-dropdown gh-preview-newsletter-dropdown",[30,[36,2],["<",[30,[36,1],[[32,0,["newsletter","senderEmail"]]],null],">"],null],[30,[36,0],["editor/modals/preview/selected-newsletter-label"],null]]],[["default"],[{"statements":[[2,"\\n "],[10,"span"],[12],[1,[32,2,["name"]]],[13],[2,"\\n "]],"parameters":[2]}]]],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[10,"p"],[14,0,"gh-preview-newsletter-name"],[12],[1,[32,0,["newsletter","name"]]],[2," "],[10,"span"],[14,0,"gh-preview-email-address"],[12],[2,"<"],[1,[30,[36,1],[[32,0,["newsletter","senderEmail"]]],null]],[2,">"],[13],[13],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n "],[10,"div"],[14,0,"gh-email-preview-newsletter-select"],[14,"data-test-email-preview-segment-select-section",""],[12],[2,"\\n "],[10,"p"],[12],[2,"To:"],[13],[2,"\\n"],[6,[37,5],[[32,0,["paidMembersEnabled"]]],null,[["default","else"],[{"statements":[[2," "],[8,"power-select",[[24,"data-test-email-preview-segment-select",""]],[["@selected","@options","@onChange","@triggerComponent","@triggerClass","@dropdownClass"],[[32,0,["selectedSegment"]],[32,0,["segments"]],[32,0,["setSegment"]],[30,[36,0],["gh-power-select/trigger"],null],"gh-preview-newsletter-trigger gh-input-x","gh-publish-newsletter-dropdown gh-preview-newsletter-dropdown"]],[["default"],[{"statements":[[2,"\\n "],[10,"span"],[12],[1,[32,1,["name"]]],[13],[2,"\\n "]],"parameters":[1]}]]],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[10,"p"],[14,0,"gh-preview-newsletter-name"],[12],[2,"Jamie Larson "],[10,"span"],[14,0,"gh-preview-email-address"],[12],[2,"<jamie@example.com>"],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n "],[13],[2,"\\n\\n "],[10,"div"],[14,0,"gh-post-test-email-group"],[12],[2,"\\n "],[8,"gh-dropdown-button",[[24,"data-test-button","post-preview-test-email"]],[["@dropdownName","@classNames"],["post-preview-test-email","gh-btn gh-btn-text gh-btn-icon gh-post-preview-email-trigger"]],[["default"],[{"statements":[[2,"\\n "],[10,"span"],[12],[2,"Send test email "],[1,[30,[36,6],["arrow-down-small"],null]],[13],[2,"\\n "]],"parameters":[]}]]],[2,"\\n\\n "],[8,"gh-dropdown",[],[["@name","@classNames"],["post-preview-test-email","dropdown-menu dropdown-align-right gh-post-preview-email-test-dropdown"]],[["default"],[{"statements":[[2,"\\n "],[10,"div"],[14,0,"gh-post-preview-email-test"],[12],[2,"\\n "],[8,"input",[[24,0,"gh-input gh-post-preview-email-input"],[24,"placeholder","you@yoursite.com"],[24,"aria-label","Email address to receive preview"],[16,"aria-invalid",[30,[36,5],[[32,0,["sendPreviewEmailError"]],"true"],null]],[16,"aria-describedby",[30,[36,5],[[32,0,["sendPreviewEmailError"]],"sendError"],null]],[24,"data-post-preview-email-input",""],[4,[38,8],["Enter",[30,[36,7],[[32,0,["sendPreviewEmailTask"]]],null]],null]],[["@value"],[[32,0,["previewEmailAddress"]]]],null],[2,"\\n\\n "],[8,"gh-task-button",[[24,"data-test-button","send-test-email"]],[["@task","@buttonText","@successText","@runningText","@class"],[[32,0,["sendPreviewEmailTask"]],"Send","Sent","Sending...","gh-btn gh-btn-icon gh-btn-primary"]],null],[2,"\\n "],[13],[2,"\\n\\n"],[6,[37,5],[[32,0,["sendPreviewEmailError"]]],null,[["default"],[{"statements":[[2," "],[10,"div"],[14,0,"gh-post-preview-email-error"],[12],[2,"\\n "],[10,"span"],[14,0,"response"],[14,1,"sendError"],[12],[1,[32,0,["sendPreviewEmailError"]]],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]}]]],[2," "]],"parameters":[]}]]],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n\\n "],[10,"div"],[14,0,"gh-email-preview-newsletter-select"],[14,"data-test-email-preview-segment-select-section",""],[12],[2,"\\n "],[10,"p"],[12],[2,"Subject:"],[13],[2,"\\n "],[8,"editor/modals/preview/email/email-subject",[],[["@post","@savePostTask"],[[32,4],[32,5]]],null],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[11,"iframe"],[24,0,"gh-pe-iframe"],[24,"title","Email preview"],[24,"sandbox","allow-same-origin allow-popups allow-popups-to-escape-sandbox"],[4,[38,9],[[32,0,["renderEmailPreview"]]],null],[12],[13],[2,"\\n "],[13],[2,"\\n"],[13],[2,"\\n"]],"hasEval":false,"upvars":["component","sender-email-address","concat","unless","gt","if","svg-jar","perform","on-key","did-insert"]}',moduleName:"ghost-admin/components/editor/modals/preview/email.hbs"}),H="status:free",q=[{name:"Free member",value:H},{name:"Paid member",value:"status:-free"}]
455
- let $=e.default=(a=Ember.inject.service,s=Ember.inject.service,o=Ember.inject.service,l=Ember.inject.service,u=Ember.inject.service,d=Ember.inject.service,c=Ember.inject.service,p=Ember._tracked,m=Ember._tracked,h=Ember._tracked,b=Ember._tracked,f=Ember._tracked,g=Ember._tracked,v=Ember._tracked,y=Ember._action,w=Ember._action,E=(0,n.task)({drop:!0}),k=Ember._action,P=class extends t.default{constructor(){super(...arguments),F(this,"ajax",O,this),F(this,"dropdown",_,this),F(this,"feature",j,this),F(this,"ghostPaths",T,this),F(this,"session",z,this),F(this,"settings",x,this),F(this,"store",S,this),F(this,"config",C,this),F(this,"html",M,this),F(this,"subject",D,this),F(this,"memberSegment",A,this),F(this,"previewEmailAddress",L,this),F(this,"sendPreviewEmailError",N,this),F(this,"newsletter",I,this),F(this,"newslettersList",R,this),U(this,"segments",q),this.loadNewslettersTask.perform()}get mailgunIsEnabled(){return this.config.mailgunIsConfigured||!!(this.settings.mailgunApiKey&&this.settings.mailgunDomain&&this.settings.mailgunBaseUrl)}get paidMembersEnabled(){return this.settings.paidMembersEnabled}async renderEmailPreview(e){this._previewIframe=e,await this._fetchEmailData(),await(0,n.timeout)(100),e&&(e.contentWindow.document.open(),e.contentWindow.document.write(this.html),e.contentWindow.document.close(),e.contentWindow.document.removeEventListener("click",this.dropdown.closeDropdowns),e.contentWindow.document.addEventListener("click",this.dropdown.closeDropdowns))}get selectedSegment(){return this.segments.find((e=>e.value===this.memberSegment))}setSegment(e){this.memberSegment=e.value,this._previewIframe&&this.renderEmailPreview(this._previewIframe)}*sendPreviewEmailTask(){try{const e=this.args.post.id,t=this.previewEmailAddress.trim()
454
+ const I=Ember.HTMLBars.template({id:"gAMapx0J",block:'{"symbols":["option","@skipAnimation","@mobile","@memberSegment","@post","@savePostTask"],"statements":[[10,"div"],[15,0,[31,["gh-post-preview-container gh-post-preview-email-container ",[30,[36,4],[[32,3],"gh-pe-mobile-container"],null]," ",[30,[36,3],[[32,2],"fade-in"],null]]]],[12],[2,"\\n "],[10,"div"],[15,0,[31,["gh-post-preview-email ",[30,[36,4],[[32,3],"gh-pe-mobile-bezel"],null]]]],[12],[2,"\\n "],[10,"div"],[15,0,[31,["gh-post-preview-email-mockup ",[30,[36,4],[[32,3],"gh-post-preview-email-mockup-mobile gh-pe-mobile-screen"],null]]]],[12],[2,"\\n "],[10,"div"],[15,0,[31,["gh-post-preview-email-header ",[30,[36,4],[[30,[36,5],[[32,0,["newslettersList","length"]],1],null],"gh-post-preview-multiple-newsletters"],null]]]],[12],[2,"\\n "],[10,"div"],[14,0,"gh-post-preview-email-columns"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-post-preview-email-group"],[12],[2,"\\n "],[10,"form"],[14,0,"gh-email-preview-newsletter-select"],[14,"data-test-email-preview-newsletter-select-section",""],[12],[2,"\\n "],[10,"label"],[14,"for","email-preview-newsletter-select"],[12],[2,"From"],[13],[2,"\\n"],[6,[37,4],[[30,[36,5],[[32,0,["newslettersList","length"]],1],null]],null,[["default","else"],[{"statements":[[2," "],[8,"power-select",[[24,"data-test-email-preview-newsletter-select",""]],[["@selected","@options","@onChange","@triggerComponent","@triggerClass","@dropdownClass","@selectedItemComponent","@matchTriggerWidth"],[[32,0,["newsletter"]],[32,0,["newslettersList"]],[32,0,["setNewsletter"]],[30,[36,1],["gh-power-select/trigger"],null],"gh-preview-newsletter-trigger gh-input-x","gh-dropdown-x gh-publish-newsletter-dropdown gh-preview-newsletter-dropdown",[30,[36,1],["editor/modals/preview/selected-newsletter-label"],null],false]],[["default"],[{"statements":[[2,"\\n "],[10,"span"],[12],[1,[32,1,["name"]]],[2," "],[1,[30,[36,2],["<",[30,[36,0],[[32,1,["senderEmail"]]],null],">"],null]],[13],[2,"\\n "]],"parameters":[1]}]]],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[10,"p"],[14,0,"gh-preview-newsletter-name"],[14,"data-test-text","newsletter-from"],[12],[2,"\\n "],[1,[32,0,["newsletter","name"]]],[2,"\\n "],[10,"span"],[14,0,"gh-preview-email-address"],[12],[2,"<"],[1,[30,[36,0],[[32,0,["newsletter","senderEmail"]]],null]],[2,">"],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n "],[10,"div"],[14,0,"gh-post-test-email-group"],[12],[2,"\\n "],[8,"gh-dropdown-button",[[24,"data-test-button","post-preview-test-email"]],[["@dropdownName","@classNames"],["post-preview-test-email","gh-btn gh-btn-icon gh-post-preview-email-trigger"]],[["default"],[{"statements":[[2,"\\n "],[10,"span"],[12],[1,[30,[36,6],["send-email"],null]],[2,"Test"],[13],[2,"\\n "]],"parameters":[]}]]],[2,"\\n "],[8,"gh-dropdown",[],[["@name","@classNames","@onOpen"],["post-preview-test-email","dropdown-menu gh-post-preview-email-test-dropdown",[32,0,["focusInput"]]]],[["default"],[{"statements":[[2,"\\n "],[10,"div"],[14,0,"gh-post-preview-email-test"],[12],[2,"\\n "],[10,"form"],[14,0,"form-group"],[12],[2,"\\n "],[10,"label"],[14,"for","post-preview-email-input"],[12],[2,"Send test email"],[13],[2,"\\n "],[8,"input",[[24,0,"gh-input gh-input-x gh-post-preview-email-input"],[24,"placeholder","you@yoursite.com"],[24,"aria-label","Email address to receive preview"],[16,"aria-invalid",[30,[36,4],[[32,0,["sendPreviewEmailError"]],"true"],null]],[16,"aria-describedby",[30,[36,4],[[32,0,["sendPreviewEmailError"]],"sendError"],null]],[24,"data-post-preview-email-input",""],[4,[38,7],null,null],[4,[38,9],["Enter",[30,[36,8],[[32,0,["sendPreviewEmailTask"]]],null]],null]],[["@value"],[[32,0,["previewEmailAddress"]]]],null],[2,"\\n "],[10,"p"],[14,0,"description"],[12],[2,"You\'ll receive this as a "],[1,[32,4]],[2," member."],[13],[2,"\\n "],[8,"gh-task-button",[[24,"data-test-button","send-test-email"]],[["@task","@buttonText","@successText","@runningText","@class"],[[32,0,["sendPreviewEmailTask"]],"Send","Sent","Sending...","gh-btn gh-btn-icon gh-btn-primary"]],null],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n\\n"],[6,[37,4],[[32,0,["sendPreviewEmailError"]]],null,[["default"],[{"statements":[[2," "],[10,"div"],[14,0,"gh-post-preview-email-error"],[12],[2,"\\n "],[10,"span"],[14,0,"response"],[14,1,"sendError"],[12],[1,[32,0,["sendPreviewEmailError"]]],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]}]]],[2," "]],"parameters":[]}]]],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n\\n "],[10,"hr"],[12],[13],[2,"\\n\\n "],[10,"form"],[14,0,"gh-email-preview-newsletter-select"],[12],[2,"\\n "],[10,"label"],[14,"for","email-preview-newsletter-select"],[12],[2,"Subject"],[13],[2,"\\n "],[8,"editor/modals/preview/email/email-subject",[],[["@post","@savePostTask","@mobile"],[[32,5],[32,6],[32,3]]],null],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[11,"iframe"],[24,0,"gh-pe-iframe"],[24,"title","Email preview"],[24,"sandbox","allow-same-origin allow-popups allow-popups-to-escape-sandbox"],[4,[38,10],[[32,0,["renderEmailPreview"]]],null],[4,[38,11],[[32,0,["renderEmailPreview"]],[32,4]],null],[4,[38,12],null,null],[12],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n"],[13],[2,"\\n"]],"hasEval":false,"upvars":["sender-email-address","component","concat","unless","if","gt","svg-jar","autofocus","perform","on-key","did-insert","did-update","close-dropdowns-on-click"]}',moduleName:"ghost-admin/components/editor/modals/preview/email.hbs"}),R=[{name:"Free member",value:"status:free",alias:"free"},{name:"Paid member",value:"status:-free",alias:"paid"}]
455
+ let F=e.default=(a=Ember.inject.service,s=Ember.inject.service,o=Ember.inject.service,l=Ember.inject.service,u=Ember.inject.service,d=Ember.inject.service,c=Ember._tracked,p=Ember._tracked,m=Ember._tracked,h=Ember._tracked,b=Ember._tracked,f=Ember._tracked,g=Ember._action,v=(0,n.task)({drop:!0}),y=Ember._action,w=class extends t.default{constructor(){super(...arguments),A(this,"ajax",E,this),A(this,"feature",k,this),A(this,"ghostPaths",P,this),A(this,"session",O,this),A(this,"settings",_,this),A(this,"store",j,this),A(this,"config",T,this),A(this,"html",z,this),A(this,"subject",x,this),A(this,"previewEmailAddress",S,this),A(this,"sendPreviewEmailError",C,this),A(this,"newsletter",M,this),A(this,"newslettersList",D,this),L(this,"segments",R),this.loadNewslettersTask.perform()}get mailgunIsEnabled(){return this.config.mailgunIsConfigured||!!(this.settings.mailgunApiKey&&this.settings.mailgunDomain&&this.settings.mailgunBaseUrl)}get selectedSegment(){return this.segments.find((e=>e.alias===this.args.memberSegment))}async renderEmailPreview(e){this._previewIframe=e,await this._fetchEmailData(),await(0,n.timeout)(100),e&&(e.contentWindow.document.open(),e.contentWindow.document.write(this.html),e.contentWindow.document.close())}*sendPreviewEmailTask(){try{const e=this.args.post.id,t=this.previewEmailAddress.trim(),r=this.selectedSegment.value
456
456
  if(!i.default.isEmail(t))return this.sendPreviewEmailError="Please enter a valid email",!1
457
457
  if(!this.mailgunIsEnabled)return this.sendPreviewEmailError="Please verify your email settings",!1
458
458
  this.sendPreviewEmailError=""
459
- const r=this.ghostPaths.url.api("/email_previews/posts",e),n={data:{emails:[t],memberSegment:this.memberSegment,newsletter:this.newsletter.slug},dataType:"json"}
460
- return yield this.ajax.post(r,n),!0}catch(e){if(e){let t="Email could not be sent, verify mail settings"
461
- throw e.payload&&e.payload.errors&&e.payload.errors[0]&&e.payload.errors[0].message&&(t=Ember.String.htmlSafe(e.payload.errors[0].message)),this.sendPreviewEmailError=t,e}}}async _fetchEmailData(){let{html:e,subject:t,memberSegment:i,newsletter:r}=this,{post:n}=this.args
462
- if(e&&t&&i===this._lastMemberSegment&&r.slug===this._lastNewsletterSlug)return{html:e,subject:t}
463
- if(this._lastMemberSegment=i,this._lastNewsletterSlug=r.slug,n.html&&n.subject)e=n.html,t=n.subject
464
- else if(n.email)e=n.email.html,t=n.email.subject
465
- else{let i=new URL(this.ghostPaths.url.api("/email_previews/posts",n.id),window.location.href)
466
- i.searchParams.set("memberSegment",this.memberSegment),i.searchParams.set("newsletter",this.newsletter.slug)
467
- let r=await this.ajax.request(i.href),[a]=r.email_previews
468
- e=a.html,t=a.subject}let a=(new DOMParser).parseFromString(e,"text/html"),s=a.querySelector("style"),o=s.innerHTML
459
+ const n=this.ghostPaths.url.api("/email_previews/posts",e),a={data:{emails:[t],memberSegment:r,newsletter:this.newsletter.slug},dataType:"json"}
460
+ return yield this.ajax.post(n,a),!0}catch(e){if(e){let t="Email could not be sent, verify mail settings"
461
+ throw e.payload&&e.payload.errors&&e.payload.errors[0]&&e.payload.errors[0].message&&(t=Ember.String.htmlSafe(e.payload.errors[0].message)),this.sendPreviewEmailError=t,e}}}async _fetchEmailData(){let{html:e,subject:t,newsletter:i}=this,{post:r}=this.args
462
+ const n=this.selectedSegment.value
463
+ if(e&&t&&n===this._lastMemberSegment&&i.slug===this._lastNewsletterSlug)return{html:e,subject:t}
464
+ if(this._lastMemberSegment=n,this._lastNewsletterSlug=i.slug,r.html&&r.subject)e=r.html,t=r.subject
465
+ else if(r.email)e=r.email.html,t=r.email.subject
466
+ else{let i=new URL(this.ghostPaths.url.api("/email_previews/posts",r.id),window.location.href)
467
+ i.searchParams.set("memberSegment",n),i.searchParams.set("newsletter",this.newsletter.slug)
468
+ let a=await this.ajax.request(i.href),[s]=a.email_previews
469
+ e=s.html,t=s.subject}let a=(new DOMParser).parseFromString(e,"text/html"),s=a.querySelector("style"),o=s.innerHTML
469
470
  s.innerHTML=`${o}\n\n\nhtml::-webkit-scrollbar {\n display: none;\n width: 0;\n background: transparent\n}\nhtml {\n scrollbar-width: none;\n}\n`
470
471
  e=(new XMLSerializer).serializeToString(a.doctype)+a.documentElement.outerHTML,this.html=e,this.subject=t}*loadNewslettersTask(){const e=yield this.store.query("newsletter",{filter:"status:active"})
471
- this.newslettersList=e}setNewsletter(e){this.newsletter=e,this._previewIframe&&this.renderEmailPreview(this._previewIframe)}},O=B(P.prototype,"ajax",[a],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),_=B(P.prototype,"dropdown",[s],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),j=B(P.prototype,"feature",[o],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),T=B(P.prototype,"ghostPaths",[l],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),z=B(P.prototype,"session",[u],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),x=B(P.prototype,"settings",[d],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),S=B(P.prototype,"store",[c],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),C=B(P.prototype,"config",[r.inject],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),M=B(P.prototype,"html",[p],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return""}}),D=B(P.prototype,"subject",[m],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return""}}),A=B(P.prototype,"memberSegment",[h],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return H}}),L=B(P.prototype,"previewEmailAddress",[b],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return this.session.user.email}}),N=B(P.prototype,"sendPreviewEmailError",[f],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return""}}),I=B(P.prototype,"newsletter",[g],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return this.args.post.newsletter||this.args.newsletter}}),R=B(P.prototype,"newslettersList",[v],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),B(P.prototype,"renderEmailPreview",[y],Object.getOwnPropertyDescriptor(P.prototype,"renderEmailPreview"),P.prototype),B(P.prototype,"setSegment",[w],Object.getOwnPropertyDescriptor(P.prototype,"setSegment"),P.prototype),B(P.prototype,"sendPreviewEmailTask",[E],Object.getOwnPropertyDescriptor(P.prototype,"sendPreviewEmailTask"),P.prototype),B(P.prototype,"loadNewslettersTask",[n.task],Object.getOwnPropertyDescriptor(P.prototype,"loadNewslettersTask"),P.prototype),B(P.prototype,"setNewsletter",[k],Object.getOwnPropertyDescriptor(P.prototype,"setNewsletter"),P.prototype),P)
472
- Ember._setComponentTemplate(V,$)})),define("ghost-admin/components/editor/modals/preview/email/email-subject",["exports","@glimmer/component"],(function(e,t){var i,r,n,a,s
472
+ this.newslettersList=e}setNewsletter(e){this.newsletter=e,this._previewIframe&&this.renderEmailPreview(this._previewIframe)}},E=N(w.prototype,"ajax",[a],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),k=N(w.prototype,"feature",[s],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),P=N(w.prototype,"ghostPaths",[o],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),O=N(w.prototype,"session",[l],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),_=N(w.prototype,"settings",[u],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),j=N(w.prototype,"store",[d],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),T=N(w.prototype,"config",[r.inject],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),z=N(w.prototype,"html",[c],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return""}}),x=N(w.prototype,"subject",[p],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return""}}),S=N(w.prototype,"previewEmailAddress",[m],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return this.session.user.email}}),C=N(w.prototype,"sendPreviewEmailError",[h],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return""}}),M=N(w.prototype,"newsletter",[b],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return this.args.post.newsletter||this.args.newsletter}}),D=N(w.prototype,"newslettersList",[f],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),N(w.prototype,"renderEmailPreview",[g],Object.getOwnPropertyDescriptor(w.prototype,"renderEmailPreview"),w.prototype),N(w.prototype,"sendPreviewEmailTask",[v],Object.getOwnPropertyDescriptor(w.prototype,"sendPreviewEmailTask"),w.prototype),N(w.prototype,"loadNewslettersTask",[n.task],Object.getOwnPropertyDescriptor(w.prototype,"loadNewslettersTask"),w.prototype),N(w.prototype,"setNewsletter",[y],Object.getOwnPropertyDescriptor(w.prototype,"setNewsletter"),w.prototype),w)
473
+ Ember._setComponentTemplate(I,F)})),define("ghost-admin/components/editor/modals/preview/email/email-subject",["exports","@glimmer/component"],(function(e,t){var i,r,n,a,s
473
474
  function o(e,t,i,r,n){var a={}
474
475
  return Object.keys(r).forEach((function(e){a[e]=r[e]})),a.enumerable=!!a.enumerable,a.configurable=!!a.configurable,("value"in a||a.initializer)&&(a.writable=!0),a=i.slice().reverse().reduce((function(i,r){return r(e,t,i)||i}),a),n&&void 0!==a.initializer&&(a.value=a.initializer?a.initializer.call(n):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
475
- const l=Ember.HTMLBars.template({id:"0zMPwUU5",block:'{"symbols":["@post"],"statements":[[10,"div"],[14,0,"gh-email-subject"],[12],[2,"\\n"],[6,[37,5],[[32,0,["isEditing"]]],null,[["default","else"],[{"statements":[[2," "],[11,"input"],[24,"aria-label","Email subject"],[24,0,"gh-input gh-preview-email-subject-input"],[16,"placeholder",[30,[36,2],[[32,1,["title"]],40],null]],[16,2,[32,0,["subject"]]],[24,4,"text"],[4,[38,0],["blur",[32,0,["setSubject"]]],null],[4,[38,3],["Enter",[32,0,["setSubject"]]],null],[4,[38,4],null,null],[12],[13],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[11,"button"],[24,0,"gh-preview-email-subject"],[24,4,"button"],[4,[38,0],["click",[32,0,["editSubject"]]],null],[12],[2,"\\n "],[1,[32,0,["subject"]]],[2," "],[1,[30,[36,1],["pen"],null]],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]}]]],[2,"\\n "],[10,"div"],[14,0,"error"],[12],[2,"\\n "],[8,"gh-error-message",[],[["@errors","@property"],[[32,1,["errors"]],"emailSubject"]],null],[2,"\\n "],[13],[2,"\\n"],[13],[2,"\\n"]],"hasEval":false,"upvars":["on","svg-jar","truncate","on-key","autofocus","if"]}',moduleName:"ghost-admin/components/editor/modals/preview/email/email-subject.hbs"})
476
+ const l=Ember.HTMLBars.template({id:"//BbnTsv",block:'{"symbols":["@post","@mobile"],"statements":[[10,"div"],[14,0,"gh-email-subject"],[12],[2,"\\n"],[6,[37,3],[[32,2]],null,[["default","else"],[{"statements":[[2," "],[10,"p"],[14,0,"gh-preview-email-subject-text"],[12],[1,[32,0,["subject"]]],[13],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[11,"input"],[24,"aria-label","Email subject"],[24,0,"gh-input gh-input-x"],[16,"placeholder",[30,[36,0],[[32,1,["title"]],40],null]],[16,2,[32,0,["subject"]]],[24,4,"text"],[4,[38,1],["blur",[32,0,["setSubject"]]],null],[4,[38,2],["Enter",[32,0,["setSubject"]]],null],[12],[13],[2,"\\n"]],"parameters":[]}]]],[2,"\\n "],[10,"div"],[14,0,"error"],[12],[2,"\\n "],[8,"gh-error-message",[],[["@errors","@property"],[[32,1,["errors"]],"emailSubject"]],null],[2,"\\n "],[13],[2,"\\n"],[13],[2,"\\n"]],"hasEval":false,"upvars":["truncate","on","on-key","if"]}',moduleName:"ghost-admin/components/editor/modals/preview/email/email-subject.hbs"})
476
477
  let u=e.default=(i=Ember._tracked,r=Ember._action,n=Ember._action,a=class extends t.default{constructor(...e){var t,i,r,n
477
478
  super(...e),t=this,i="isEditing",n=this,(r=s)&&Object.defineProperty(t,i,{enumerable:r.enumerable,configurable:r.configurable,writable:r.writable,value:r.initializer?r.initializer.call(n):void 0})}get subject(){const{post:e}=this.args
478
479
  return e.emailSubject||e.title}setSubject(e){this.isEditing&&(this.isEditing=!1)
479
480
  let t=e.target.value,i=this.args.post
480
481
  if(i.get("emailSubject")!==t)return i.set("emailSubject",t),i.validate({property:"emailSubject"}).then((()=>{if(!i.get("isNew"))return this.args.savePostTask.perform()}))}editSubject(){this.isEditing=!0}},s=o(a.prototype,"isEditing",[i],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return!1}}),o(a.prototype,"setSubject",[r],Object.getOwnPropertyDescriptor(a.prototype,"setSubject"),a.prototype),o(a.prototype,"editSubject",[n],Object.getOwnPropertyDescriptor(a.prototype,"editSubject"),a.prototype),a)
481
- Ember._setComponentTemplate(l,u)})),define("ghost-admin/components/editor/modals/preview/mobile",["exports","@glimmer/component","ghost-admin/utils/copy-text-to-clipboard","ember-concurrency"],(function(e,t,i,r){var n
482
- Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
483
- const a=Ember.HTMLBars.template({id:"LUMrxKC2",block:'{"symbols":["@skipAnimation","@post"],"statements":[[10,"div"],[15,0,[31,["modal-body modal-preview-email-content gh-pe-mobile-container gh-post-preview-container h-auto overflow-auto ",[30,[36,0],[[32,1],"fade-in"],null]]]],[12],[2,"\\n "],[10,"div"],[14,0,"gh-pe-mobile-bezel"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-pe-mobile-screen"],[12],[2,"\\n "],[10,"iframe"],[14,0,"gh-post-preview-iframe"],[15,"src",[32,2,["previewUrl"]]],[14,"title","Mobile browser post preview"],[12],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n"],[13]],"hasEval":false,"upvars":["unless"]}',moduleName:"ghost-admin/components/editor/modals/preview/mobile.hbs"})
484
- let s=e.default=(n=class extends t.default{*copyPreviewUrl(){(0,i.default)(this.args.post.previewUrl),yield(0,r.timeout)(this.isTesting?50:3e3)}},o=n.prototype,l="copyPreviewUrl",u=[r.task],d=Object.getOwnPropertyDescriptor(n.prototype,"copyPreviewUrl"),c=n.prototype,p={},Object.keys(d).forEach((function(e){p[e]=d[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),c&&void 0!==p.initializer&&(p.value=p.initializer?p.initializer.call(c):void 0,p.initializer=void 0),void 0===p.initializer&&(Object.defineProperty(o,l,p),p=null),n)
485
- var o,l,u,d,c,p
486
- Ember._setComponentTemplate(a,s)})),define("ghost-admin/components/editor/modals/preview/selected-newsletter-label",["exports"],(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
482
+ Ember._setComponentTemplate(l,u)})),define("ghost-admin/components/editor/modals/preview/selected-newsletter-label",["exports"],(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
487
483
  const t=Ember.HTMLBars.template({id:"4ca+8xPF",block:'{"symbols":["@select","@extra"],"statements":[[1,[32,1,["selected","name"]]],[2," "],[1,[32,2]],[2,"\\n"]],"hasEval":false,"upvars":[]}',moduleName:"ghost-admin/components/editor/modals/preview/selected-newsletter-label.hbs"})
488
484
  e.default=Ember._setComponentTemplate(t,Ember._templateOnlyComponent())})),define("ghost-admin/components/editor/modals/preview/social",["exports","@glimmer/component","ghost-admin/components/gh-image-uploader","ghost-admin/decorators/inject"],(function(e,t,i,r){var n,a,s,o,l,u,d,c,p,m,h,b,f,g,v,y,w,E,k,P,O,_,j,T,z,x,S,C,M,D,A,L,N,I,R,F,U
489
485
  function B(e,t,i,r){i&&Object.defineProperty(e,t,{enumerable:i.enumerable,configurable:i.configurable,writable:i.writable,value:i.initializer?i.initializer.call(r):void 0})}function V(e,t,i){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e
@@ -508,7 +504,7 @@ this.args.post.twitterDescription=e.trim(),this.args.post.save(),this.editingTwi
508
504
  Ember._setComponentTemplate(q,$)})),define("ghost-admin/components/editor/modals/publish-flow",["exports","@glimmer/component","ember-concurrency"],(function(e,t,i){var r,n,a,s,o,l,u,d,c,p,m,h,b,f,g,v
509
505
  function y(e,t,i,r){i&&Object.defineProperty(e,t,{enumerable:i.enumerable,configurable:i.configurable,writable:i.writable,value:i.initializer?i.initializer.call(r):void 0})}function w(e,t,i,r,n){var a={}
510
506
  return Object.keys(r).forEach((function(e){a[e]=r[e]})),a.enumerable=!!a.enumerable,a.configurable=!!a.configurable,("value"in a||a.initializer)&&(a.writable=!0),a=i.slice().reverse().reduce((function(i,r){return r(e,t,i)||i}),a),n&&void 0!==a.initializer&&(a.value=a.initializer?a.initializer.call(n):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
511
- const E=Ember.HTMLBars.template({id:"4RMshygG",block:'{"symbols":["@data","@close"],"statements":[[10,"div"],[14,0,"flex flex-column h-100 items-center overflow-auto"],[14,"data-test-modal","publish-flow"],[12],[2,"\\n "],[10,"header"],[14,0,"gh-publish-header"],[12],[2,"\\n "],[11,"button"],[24,0,"gh-btn-editor gh-publish-back-button"],[24,"title","Close"],[24,4,"button"],[4,[38,1],["click",[32,2]],null],[12],[2,"\\n "],[10,"span"],[12],[1,[30,[36,2],["arrow-left"],null]],[2," Editor"],[13],[2,"\\n "],[13],[2,"\\n\\n"],[6,[37,0],[[30,[36,4],[[30,[36,3],[[32,0,["emailErrorMessage"]]],null],[30,[36,3],[[32,0,["isComplete"]]],null]],null]],null,[["default"],[{"statements":[[2," "],[10,"div"],[14,0,"flex items-center pe-auto h-100"],[12],[2,"\\n "],[11,"button"],[24,0,"gh-btn gh-btn-editor gh-editor-preview-trigger"],[24,"data-test-button","publish-flow-preview"],[24,4,"button"],[4,[38,1],["click",[32,1,["togglePreviewPublish"]]],null],[12],[2,"\\n "],[10,"span"],[12],[2,"Preview"],[13],[2,"\\n "],[13],[2,"\\n "],[11,"button"],[24,0,"gh-btn gh-btn-editor darkgrey gh-publish-trigger active"],[24,"title","Close"],[24,"data-test-button","publish-flow-publish"],[24,4,"button"],[4,[38,1],["click",[32,2]],null],[12],[2,"\\n "],[10,"span"],[12],[2,"Publish"],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"settings-menu-toggle-spacer"],[12],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n\\n "],[10,"div"],[15,0,[31,["gh-publish-settings-container ",[30,[36,5],[[32,1,["skipAnimation"]],"fade-in"],null]]]],[12],[2,"\\n"],[6,[37,0],[[32,0,["emailErrorMessage"]]],null,[["default","else"],[{"statements":[[2," "],[8,"editor/modals/publish-flow/complete-with-email-error",[],[["@emailErrorMessage","@publishOptions","@setCompleted","@close"],[[32,0,["emailErrorMessage"]],[32,1,["publishOptions"]],[32,0,["setCompleted"]],[32,2]]],null],[2,"\\n"]],"parameters":[]},{"statements":[[6,[37,0],[[32,0,["isConfirming"]]],null,[["default","else"],[{"statements":[[2," "],[8,"editor/modals/publish-flow/confirm",[],[["@publishOptions","@recipientType","@saveTask","@setCompleted","@cancel","@close"],[[32,1,["publishOptions"]],[32,0,["recipientType"]],[32,0,["saveTask"]],[32,0,["setCompleted"]],[32,0,["toggleConfirm"]],[32,2]]],null],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[8,"editor/modals/publish-flow/options",[],[["@publishOptions","@recipientType","@confirm","@close"],[[32,1,["publishOptions"]],[32,0,["recipientType"]],[32,0,["toggleConfirm"]],[32,2]]],null],[2,"\\n "]],"parameters":[]}]]]],"parameters":[]}]]],[2," "],[13],[2,"\\n"],[13],[2,"\\n"]],"hasEval":false,"upvars":["if","on","svg-jar","not","and","unless"]}',moduleName:"ghost-admin/components/editor/modals/publish-flow.hbs"})
507
+ const E=Ember.HTMLBars.template({id:"6Ts67AqI",block:'{"symbols":["@data","@close"],"statements":[[10,"div"],[14,0,"flex flex-column h-100 items-center overflow-auto"],[14,"data-test-modal","publish-flow"],[12],[2,"\\n "],[10,"header"],[14,0,"gh-publish-header"],[12],[2,"\\n "],[10,"h2"],[12],[2,"Publish"],[13],[2,"\\n\\n"],[6,[37,0],[[30,[36,3],[[30,[36,2],[[32,0,["emailErrorMessage"]]],null],[30,[36,2],[[32,0,["isComplete"]]],null]],null]],null,[["default"],[{"statements":[[2," "],[10,"div"],[14,0,"gh-btn-group-right"],[12],[2,"\\n "],[11,"button"],[24,0,"gh-btn gh-btn-editor gh-editor-preview-trigger"],[24,"title","Close"],[24,"data-test-button","publish-flow-publish"],[24,4,"button"],[4,[38,1],["click",[32,2]],null],[12],[2,"\\n "],[10,"span"],[12],[2,"Close"],[13],[2,"\\n "],[13],[2,"\\n "],[11,"button"],[24,0,"gh-btn"],[24,"data-test-button","publish-flow-preview"],[24,4,"button"],[4,[38,1],["click",[32,1,["togglePreviewPublish"]]],null],[12],[2,"\\n "],[10,"span"],[12],[2,"Preview"],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n\\n "],[10,"div"],[15,0,[31,["gh-publish-settings-container ",[30,[36,4],[[32,1,["skipAnimation"]],"fade-in"],null]]]],[12],[2,"\\n"],[6,[37,0],[[32,0,["emailErrorMessage"]]],null,[["default","else"],[{"statements":[[2," "],[8,"editor/modals/publish-flow/complete-with-email-error",[],[["@emailErrorMessage","@publishOptions","@setCompleted","@close"],[[32,0,["emailErrorMessage"]],[32,1,["publishOptions"]],[32,0,["setCompleted"]],[32,2]]],null],[2,"\\n"]],"parameters":[]},{"statements":[[6,[37,0],[[32,0,["isConfirming"]]],null,[["default","else"],[{"statements":[[2," "],[8,"editor/modals/publish-flow/confirm",[],[["@publishOptions","@recipientType","@saveTask","@setCompleted","@cancel","@close"],[[32,1,["publishOptions"]],[32,0,["recipientType"]],[32,0,["saveTask"]],[32,0,["setCompleted"]],[32,0,["toggleConfirm"]],[32,2]]],null],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[8,"editor/modals/publish-flow/options",[],[["@publishOptions","@recipientType","@confirm","@close"],[[32,1,["publishOptions"]],[32,0,["recipientType"]],[32,0,["toggleConfirm"]],[32,2]]],null],[2,"\\n "]],"parameters":[]}]]]],"parameters":[]}]]],[2," "],[13],[2,"\\n"],[13],[2,"\\n"]],"hasEval":false,"upvars":["if","on","not","and","unless"]}',moduleName:"ghost-admin/components/editor/modals/publish-flow.hbs"})
512
508
  let k=e.default=(r=Ember.inject.service,n=Ember.inject.service,a=Ember._tracked,s=Ember._tracked,o=Ember._tracked,l=Ember._tracked,u=Ember._action,d=Ember._action,v=class extends t.default{constructor(...e){super(...e),y(this,"store",p,this),y(this,"router",m,this),y(this,"emailErrorMessage",h,this),y(this,"isConfirming",b,this),y(this,"isComplete",f,this),y(this,"postCount",g,this)}get recipientType(){const e=this.args.data.publishOptions.recipientFilter
513
509
  return e?"status:free"===e?"free":"status:-free"===e?"paid":e.includes("status:free")&&e.includes("status:-free")?"all":"specific":"none"}toggleConfirm(){this.isConfirming=!this.isConfirming,this.isConfirming&&this.fetchPostCountTask.perform()}setCompleted(){if(this.emailErrorMessage=void 0,this.isConfirming=!1,this.isComplete=!0,this.args.data.publishOptions.isScheduled){try{localStorage.setItem("ghost-last-scheduled-post",JSON.stringify({id:this.args.data.publishOptions.post.id,type:this.args.data.publishOptions.post.displayName}))}catch(P){}"page"!==this.args.data.publishOptions.post.displayName?this.router.transitionTo("posts"):this.router.transitionTo("pages")}else{try{localStorage.setItem("ghost-last-published-post",JSON.stringify({id:this.args.data.publishOptions.post.id,type:this.args.data.publishOptions.post.displayName}))}catch(P){}"page"!==this.args.data.publishOptions.post.displayName?this.args.data.publishOptions.post.hasEmail?this.router.transitionTo("posts.analytics",this.args.data.publishOptions.post.id):this.router.transitionTo("posts"):this.router.transitionTo("pages")}}*saveTask(){try{yield this.args.data.saveTask.perform(),this.isConfirming=!1,this.isComplete=!0}catch(P){throw"EmailFailedError"===P?.name&&(this.emailErrorMessage=P.message),P}}*fetchPostCountTask(){const e=this.args.data.publishOptions
514
510
  if(e.post.isPage||e.isScheduled||!e.willPublish)return void(this.postCount=null)
@@ -592,7 +588,7 @@ Ember._setComponentTemplate(D,R)})),define("ghost-admin/components/editor/modals
592
588
  const t=Ember.HTMLBars.template({id:"qnrsCdOF",block:'{"symbols":["@close","@data"],"statements":[[10,"div"],[14,0,"modal-content gh-tk-reminder"],[14,"data-test-modal","tk-reminder"],[12],[2,"\\n "],[10,"header"],[14,0,"modal-header"],[12],[2,"\\n "],[10,"h1"],[12],[2,"Forget something?"],[13],[2,"\\n "],[13],[2,"\\n "],[11,"button"],[24,0,"close"],[24,"title","Close"],[24,4,"button"],[4,[38,0],["click",[32,1]],null],[12],[1,[30,[36,1],["close"],null]],[10,"span"],[14,0,"hidden"],[12],[2,"Close"],[13],[13],[2,"\\n\\n "],[10,"div"],[14,0,"modal-body"],[12],[2,"\\n "],[10,"p"],[12],[2,"\\n Looks like you\'ve got some unfinished business.\\n There "],[1,[30,[36,3],[[30,[36,2],[[32,2,["tkCount"]],1],null],"is","are"],null]],[2," "],[10,"strong"],[12],[1,[30,[36,4],[[32,2,["tkCount"]],"TK reminder"],null]],[13],[2," left in your post.\\n "],[13],[2,"\\n "],[13],[2,"\\n\\n "],[10,"div"],[14,0,"modal-footer"],[12],[2,"\\n "],[11,"button"],[24,0,"gh-btn"],[24,4,"button"],[4,[38,0],["click",[30,[36,5],[[32,1],true],null]],null],[12],[10,"span"],[12],[2,"Continue to publish"],[13],[13],[2,"\\n "],[11,"button"],[24,0,"gh-btn gh-btn-black"],[24,4,"button"],[4,[38,0],["click",[32,1]],null],[12],[10,"span"],[12],[2,"Back to editor"],[13],[13],[2,"\\n "],[13],[2,"\\n"],[13]],"hasEval":false,"upvars":["on","svg-jar","eq","if","gh-pluralize","fn"]}',moduleName:"ghost-admin/components/editor/modals/tk-reminder.hbs"})
593
589
  e.default=Ember._setComponentTemplate(t,Ember._templateOnlyComponent())})),define("ghost-admin/components/editor/modals/update-flow",["exports","@glimmer/component","ember-concurrency"],(function(e,t,i){var r,n
594
590
  Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
595
- const a=Ember.HTMLBars.template({id:"YVZ9fNSs",block:'{"symbols":["post","sentAt","publishedAt","countFetcher","post","@close","@data"],"statements":[[10,"div"],[14,0,"flex flex-column h-100 items-center overflow-auto"],[14,"data-test-modal","update-flow"],[12],[2,"\\n "],[10,"header"],[14,0,"gh-publish-header"],[12],[2,"\\n "],[11,"button"],[24,0,"gh-btn-editor gh-publish-back-button"],[24,"title","Close"],[24,4,"button"],[4,[38,2],["click",[32,6]],null],[12],[2,"\\n "],[10,"span"],[12],[1,[30,[36,13],["arrow-left"],null]],[2," Editor"],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"flex"],[12],[2,"\\n"],[6,[37,8],[[32,7,["publishOptions","post"]]],null,[["default"],[{"statements":[[6,[37,4],[[30,[36,3],[[30,[36,9],[[32,5,["isSent"]],[30,[36,3],[[32,5,["isPublished"]]],null]],null]],null]],null,[["default"],[{"statements":[[2," "],[11,"button"],[24,0,"gh-btn gh-btn-editor darkgrey gh-unpublish-trigger active"],[24,"title","Close"],[24,4,"button"],[4,[38,2],["click",[32,6]],null],[12],[2,"\\n "],[10,"span"],[12],[1,[30,[36,4],[[32,5,["isScheduled"]],"Unschedule","Unpublish"],null]],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]}]]]],"parameters":[5]}]]],[2," "],[10,"div"],[14,0,"settings-menu-toggle-spacer"],[12],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n\\n"],[6,[37,8],[[32,7,["publishOptions","post"]]],null,[["default"],[{"statements":[[2," "],[10,"div"],[14,0,"gh-publish-settings-container gh-update-flow fade-in"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-publish-title"],[14,"data-test-update-flow-title",""],[12],[2,"\\n"],[6,[37,4],[[30,[36,9],[[32,1,["isSent"]],[30,[36,3],[[32,1,["isPublished"]]],null]],null]],null,[["default","else"],[{"statements":[[2," This "],[1,[32,1,["displayName"]]],[2," was\\n "],[10,"span"],[14,0,"green"],[12],[1,[32,1,["status"]]],[2," by email"],[13],[2,"\\n"]],"parameters":[]},{"statements":[[2," This "],[1,[32,1,["displayName"]]],[2," has been\\n "],[10,"span"],[14,0,"green"],[12],[1,[32,1,["status"]]],[13],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n\\n "],[10,"div"],[14,0,"gh-publish-confirmation"],[14,"data-test-update-flow-confirmation",""],[12],[2,"\\n "],[10,"p"],[12],[2,"\\n Your\\n "],[1,[32,1,["displayName"]]],[2,"\\n\\n "],[1,[30,[36,4],[[32,1,["isScheduled"]],"will be","was"],null]],[2,"\\n\\n"],[6,[37,4],[[30,[36,12],[[32,1,["hasBeenEmailed"]],[32,1,["willEmail"]]],null]],null,[["default","else"],[{"statements":[[6,[37,4],[[32,1,["emailOnly"]]],null,[["default","else"],[{"statements":[[2," sent to\\n"]],"parameters":[]},{"statements":[[2," published and sent to\\n"]],"parameters":[]}]]],[2,"\\n"],[6,[37,4],[[32,1,["isScheduled"]]],null,[["default","else"],[{"statements":[[6,[37,8],[[30,[36,11],null,[["query"],[[30,[36,0],null,[["filter"],[[32,1,["fullRecipientFilter"]]]]]]]]],null,[["default"],[{"statements":[[2," "],[10,"strong"],[12],[1,[30,[36,10],[[32,4,["count"]],"subscriber"],null]],[13],[2,"\\n "],[6,[37,4],[[32,0,["showNewsletterName"]]],null,[["default"],[{"statements":[[2,"of "],[10,"strong"],[12],[1,[32,1,["newsletter","name"]]],[13]],"parameters":[]}]]],[2,"\\n"]],"parameters":[4]}]]]],"parameters":[]},{"statements":[[2," "],[10,"strong"],[12],[1,[30,[36,10],[[32,1,["email","emailCount"]],"subscriber"],null]],[13],[2,"\\n "],[6,[37,4],[[32,0,["showNewsletterName"]]],null,[["default"],[{"statements":[[2,"of "],[10,"strong"],[12],[1,[32,1,["newsletter","name"]]],[13]],"parameters":[]}]]],[2,"\\n"]],"parameters":[]}]]]],"parameters":[]},{"statements":[[2," published on your site\\n"]],"parameters":[]}]]],[2,"\\n"],[6,[37,8],[[30,[36,7],[[32,1,["publishedAtUTC"]]],null]],null,[["default"],[{"statements":[[2," on\\n "],[1,[30,[36,5],[[32,3],"D MMM YYYY"],null]],[2,"\\n at\\n "],[1,[30,[36,5],[[32,3],"HH:mm"],null]],[2,".\\n"]],"parameters":[3]}]]],[2,"\\n"],[6,[37,4],[[32,1,["isScheduled"]]],null,[["default","else"],[{"statements":[[6,[37,4],[[30,[36,9],[[32,1,["isScheduled"]],[32,1,["email"]]],null]],null,[["default"],[{"statements":[[2," This post was previously emailed to\\n\\n "],[10,"strong"],[12],[1,[30,[36,6],[[32,1,["email","emailCount"]],"subscriber"],null]],[13],[2,"\\n\\n"],[6,[37,4],[[32,0,["showNewsletterName"]]],null,[["default"],[{"statements":[[2," of "],[10,"strong"],[12],[1,[32,1,["newsletter","name"]]],[13],[2,"\\n"]],"parameters":[]}]]],[2,"\\n"],[6,[37,8],[[30,[36,7],[[32,1,["email","createdAtUTC"]]],null]],null,[["default"],[{"statements":[[2," on\\n "],[1,[30,[36,5],[[32,2],"D MMM YYYY"],null]],[2,"\\n at\\n "],[1,[30,[36,5],[[32,2],"HH:mm"],null]],[2,".\\n"]],"parameters":[2]}]]]],"parameters":[]}]]],[2,"\\n "],[10,"br"],[12],[13],[10,"br"],[12],[13],[2,"\\n Need to make a change?\\n "],[11,"button"],[24,0,"gh-revert-to-draft"],[24,"data-test-button","revert-to-draft"],[24,4,"button"],[4,[38,2],["click",[30,[36,1],[[32,6],[30,[36,0],null,[["afterTask"],["revertToDraftTask"]]]],null]],null],[12],[2,"\\n "],[10,"span"],[12],[2,"Unschedule and revert to draft →"],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]},{"statements":[[6,[37,4],[[30,[36,3],[[32,1,["emailOnly"]]],null]],null,[["default"],[{"statements":[[2," "],[10,"br"],[12],[13],[10,"br"],[12],[13],[2,"\\n "],[11,"button"],[24,0,"gh-revert-to-draft"],[24,"data-test-button","revert-to-draft"],[24,4,"button"],[4,[38,2],["click",[30,[36,1],[[32,6],[30,[36,0],null,[["afterTask"],["revertToDraftTask"]]]],null]],null],[12],[2,"\\n "],[10,"span"],[12],[2,"Unpublish and revert to private draft →"],[13],[2,"\\n "],[13],[2,"\\n "]],"parameters":[]}]]]],"parameters":[]}]]],[2," "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[1]}]]],[13],[2,"\\n"]],"hasEval":false,"upvars":["hash","fn","on","not","if","moment-format","pluralize","moment-site-tz","let","and","gh-pluralize","members-count-fetcher","or","svg-jar"]}',moduleName:"ghost-admin/components/editor/modals/update-flow.hbs"})
591
+ const a=Ember.HTMLBars.template({id:"Wd5qK8cR",block:'{"symbols":["post","sentAt","publishedAt","countFetcher","@close","@data"],"statements":[[6,[37,8],[[32,6,["publishOptions","post"]]],null,[["default"],[{"statements":[[2," "],[10,"div"],[14,0,"flex flex-column h-100 items-center overflow-auto"],[14,"data-test-modal","update-flow"],[12],[2,"\\n "],[10,"header"],[14,0,"gh-publish-header"],[12],[2,"\\n "],[10,"h2"],[12],[1,[30,[36,4],[[32,1,["isScheduled"]],"Unschedule","Unpublish"],null]],[13],[2,"\\n "],[10,"div"],[14,0,"flex"],[12],[2,"\\n"],[6,[37,4],[[30,[36,3],[[30,[36,9],[[32,1,["isSent"]],[30,[36,3],[[32,1,["isPublished"]]],null]],null]],null]],null,[["default"],[{"statements":[[2," "],[11,"button"],[24,0,"gh-btn"],[24,"title","Close"],[24,4,"button"],[4,[38,2],["click",[32,5]],null],[12],[2,"\\n "],[10,"span"],[12],[2,"Close"],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n "],[13],[2,"\\n\\n "],[10,"div"],[14,0,"gh-publish-settings-container gh-update-flow fade-in"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-publish-title"],[14,"data-test-update-flow-title",""],[12],[2,"\\n"],[6,[37,4],[[30,[36,9],[[32,1,["isSent"]],[30,[36,3],[[32,1,["isPublished"]]],null]],null]],null,[["default","else"],[{"statements":[[2," This "],[1,[32,1,["displayName"]]],[2," was\\n "],[10,"span"],[14,0,"green"],[12],[1,[32,1,["status"]]],[2," by email"],[13],[2,"\\n"]],"parameters":[]},{"statements":[[2," This "],[1,[32,1,["displayName"]]],[2," has been\\n "],[10,"span"],[14,0,"green"],[12],[1,[32,1,["status"]]],[13],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n\\n "],[10,"div"],[14,0,"gh-publish-confirmation"],[14,"data-test-update-flow-confirmation",""],[12],[2,"\\n "],[10,"p"],[12],[2,"\\n Your\\n "],[1,[32,1,["displayName"]]],[2,"\\n\\n "],[1,[30,[36,4],[[32,1,["isScheduled"]],"will be","was"],null]],[2,"\\n\\n"],[6,[37,4],[[30,[36,12],[[32,1,["hasBeenEmailed"]],[32,1,["willEmail"]]],null]],null,[["default","else"],[{"statements":[[6,[37,4],[[32,1,["emailOnly"]]],null,[["default","else"],[{"statements":[[2," sent to\\n"]],"parameters":[]},{"statements":[[2," published and sent to\\n"]],"parameters":[]}]]],[2,"\\n"],[6,[37,4],[[32,1,["isScheduled"]]],null,[["default","else"],[{"statements":[[6,[37,8],[[30,[36,11],null,[["query"],[[30,[36,0],null,[["filter"],[[32,1,["fullRecipientFilter"]]]]]]]]],null,[["default"],[{"statements":[[2," "],[10,"strong"],[12],[1,[30,[36,10],[[32,4,["count"]],"subscriber"],null]],[13],[2,"\\n "],[6,[37,4],[[32,0,["showNewsletterName"]]],null,[["default"],[{"statements":[[2,"of "],[10,"strong"],[12],[1,[32,1,["newsletter","name"]]],[13]],"parameters":[]}]]],[2,"\\n"]],"parameters":[4]}]]]],"parameters":[]},{"statements":[[2," "],[10,"strong"],[12],[1,[30,[36,10],[[32,1,["email","emailCount"]],"subscriber"],null]],[13],[2,"\\n "],[6,[37,4],[[32,0,["showNewsletterName"]]],null,[["default"],[{"statements":[[2,"of "],[10,"strong"],[12],[1,[32,1,["newsletter","name"]]],[13]],"parameters":[]}]]],[2,"\\n"]],"parameters":[]}]]]],"parameters":[]},{"statements":[[2," published on your site\\n"]],"parameters":[]}]]],[2,"\\n"],[6,[37,8],[[30,[36,7],[[32,1,["publishedAtUTC"]]],null]],null,[["default"],[{"statements":[[2," on\\n "],[1,[30,[36,5],[[32,3],"D MMM YYYY"],null]],[2,"\\n at\\n "],[1,[30,[36,5],[[32,3],"HH:mm"],null]],[2,".\\n"]],"parameters":[3]}]]],[2,"\\n"],[6,[37,4],[[32,1,["isScheduled"]]],null,[["default","else"],[{"statements":[[6,[37,4],[[30,[36,9],[[32,1,["isScheduled"]],[32,1,["email"]]],null]],null,[["default"],[{"statements":[[2," This post was previously emailed to\\n\\n "],[10,"strong"],[12],[1,[30,[36,6],[[32,1,["email","emailCount"]],"subscriber"],null]],[13],[2,"\\n\\n"],[6,[37,4],[[32,0,["showNewsletterName"]]],null,[["default"],[{"statements":[[2," of "],[10,"strong"],[12],[1,[32,1,["newsletter","name"]]],[13],[2,"\\n"]],"parameters":[]}]]],[2,"\\n"],[6,[37,8],[[30,[36,7],[[32,1,["email","createdAtUTC"]]],null]],null,[["default"],[{"statements":[[2," on\\n "],[1,[30,[36,5],[[32,2],"D MMM YYYY"],null]],[2,"\\n at\\n "],[1,[30,[36,5],[[32,2],"HH:mm"],null]],[2,".\\n"]],"parameters":[2]}]]]],"parameters":[]}]]],[2,"\\n "],[10,"br"],[12],[13],[10,"br"],[12],[13],[2,"\\n Need to make a change?\\n "],[11,"button"],[24,0,"gh-revert-to-draft"],[24,"data-test-button","revert-to-draft"],[24,4,"button"],[4,[38,2],["click",[30,[36,1],[[32,5],[30,[36,0],null,[["afterTask"],["revertToDraftTask"]]]],null]],null],[12],[2,"\\n "],[10,"span"],[12],[2,"Unschedule and revert to draft →"],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]},{"statements":[[6,[37,4],[[30,[36,3],[[32,1,["emailOnly"]]],null]],null,[["default"],[{"statements":[[2," "],[10,"br"],[12],[13],[10,"br"],[12],[13],[2,"\\n "],[11,"button"],[24,0,"gh-revert-to-draft"],[24,"data-test-button","revert-to-draft"],[24,4,"button"],[4,[38,2],["click",[30,[36,1],[[32,5],[30,[36,0],null,[["afterTask"],["revertToDraftTask"]]]],null]],null],[12],[2,"\\n "],[10,"span"],[12],[2,"Unpublish and revert to private draft →"],[13],[2,"\\n "],[13],[2,"\\n "]],"parameters":[]}]]]],"parameters":[]}]]],[2," "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[1]}]]]],"hasEval":false,"upvars":["hash","fn","on","not","if","moment-format","pluralize","moment-site-tz","let","and","gh-pluralize","members-count-fetcher","or"]}',moduleName:"ghost-admin/components/editor/modals/update-flow.hbs"})
596
592
  let s=e.default=(n=class extends t.default{get showNewsletterName(){const{publishOptions:e}=this.args.data
597
593
  return!e.onlyDefaultNewsletter||"archived"===e.post.newsletter?.status}*saveTask(){return yield this.args.data.saveTask.perform(),this.args.close(),!0}},o=n,u={className:"fullscreen-modal-total-overlay publish-modal",omitBackdrop:!0,ignoreBackdropClick:!0},(l=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e
598
594
  var i=e[Symbol.toPrimitive]
@@ -610,17 +606,17 @@ let u=e.default=(r=Ember.inject.service,n=(0,i.task)({drop:!0}),a=class extends
610
606
  super(...e),t=this,i="notifications",n=this,(r=s)&&Object.defineProperty(t,i,{enumerable:r.enumerable,configurable:r.configurable,writable:r.writable,value:r.initializer?r.initializer.call(n):void 0})}*updateSnippetTask(){const{snippet:e,updatedProperties:{mobiledoc:t,lexical:i}}=this.args.data
611
607
  try{return t&&(e.mobiledoc=t),i&&(e.lexical=i,e.mobiledoc||(e.mobiledoc={})),yield e.save(),this.notifications.closeAlerts("snippet.save"),this.notifications.showNotification(`Snippet "${e.name}" updated`,{type:"success"}),e}catch(r){throw e.errors.isEmpty||this.notifications.showAlert(`Snippet save failed: ${e.errors.messages.join(". ")}`,{type:"error",key:"snippet.save"}),e.rollbackAttributes(),r}finally{this.args.close()}}},s=o(a.prototype,"notifications",[r],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),o(a.prototype,"updateSnippetTask",[n],Object.getOwnPropertyDescriptor(a.prototype,"updateSnippetTask"),a.prototype),a)
612
608
  Ember._setComponentTemplate(l,u)})),define("ghost-admin/components/editor/publish-buttons",["exports"],(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
613
- const t=Ember.HTMLBars.template({id:"lXIrcMsb",block:'{"symbols":["@publishManagement"],"statements":[[6,[37,1],[[32,1,["publishOptions","user","isContributor"]]],null,[["default","else"],[{"statements":[[6,[37,1],[[32,1,["post","isDraft"]]],null,[["default"],[{"statements":[[2," "],[11,"button"],[24,0,"gh-btn gh-btn-editor gh-editor-preview-trigger"],[24,"data-test-button","contributor-preview"],[24,4,"button"],[4,[38,0],["click",[32,1,["openPreview"]]],null],[4,[38,4],["cmd+p",[32,1,["togglePreview"]]],null],[12],[2,"\\n "],[10,"span"],[12],[2,"Preview"],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]}]]],[2,"\\n "],[8,"gh-task-button",[[24,"data-test-button","contributor-save"]],[["@buttonText","@task","@runningText","@class"],["Save",[32,1,["saveTask"]],"Saving","gh-btn gh-btn-icon gh-btn-editor gh-editor-save-trigger contributor-save-button"]],null],[2,"\\n"]],"parameters":[]},{"statements":[[6,[37,1],[[32,1,["post","isDraft"]]],null,[["default","else"],[{"statements":[[2," "],[11,"button"],[24,0,"gh-btn gh-btn-editor gh-editor-preview-trigger"],[24,"data-test-button","publish-preview"],[24,4,"button"],[4,[38,0],["click",[32,1,["openPreview"]]],null],[4,[38,4],["cmd+p",[32,1,["togglePreview"]]],null],[12],[2,"\\n "],[10,"span"],[12],[2,"Preview"],[13],[2,"\\n "],[13],[2,"\\n\\n "],[11,"button"],[24,0,"gh-btn gh-btn-editor darkgrey gh-publish-trigger"],[16,"disabled",[32,1,["publishOptions","isLoading"]]],[24,"data-test-button","publish-flow"],[24,4,"button"],[4,[38,0],["click",[32,1,["openPublishFlow"]]],null],[4,[38,4],["cmd+shift+p"],null],[12],[2,"\\n "],[10,"span"],[12],[2,"Publish"],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[8,"gh-task-button",[[24,"data-test-button","publish-save"]],[["@task","@buttonText","@runningText","@successText","@class","@idleClass","@runningClass","@successClass","@failureClass","@showIcon","@disabled","@autoReset"],[[32,1,["saveTask"]],"Update","Updating...","Updated","gh-btn gh-btn-editor gh-editor-save-trigger","green","midlightgrey","midlightgrey","red",false,[30,[36,2],[[32,1,["hasUnsavedChanges"]]],null],true]],null],[2,"\\n\\n"],[6,[37,1],[[30,[36,2],[[30,[36,3],[[32,1,["post","isSent"]],[30,[36,2],[[32,1,["post","isPublished"]]],null]],null]],null]],null,[["default"],[{"statements":[[2," "],[11,"button"],[24,0,"gh-btn gh-btn-editor darkgrey gh-unpublish-trigger"],[24,"data-test-button","update-flow"],[24,4,"button"],[4,[38,0],["click",[32,1,["openUpdateFlow"]]],null],[12],[2,"\\n "],[10,"span"],[12],[2,"\\n "],[1,[30,[36,1],[[32,1,["post","isScheduled"]],"Unschedule","Unpublish"],null]],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]}]]]],"parameters":[]}]]]],"parameters":[]}]]]],"hasEval":false,"upvars":["on","if","not","and","on-key"]}',moduleName:"ghost-admin/components/editor/publish-buttons.hbs"})
614
- e.default=Ember._setComponentTemplate(t,Ember._templateOnlyComponent())})),define("ghost-admin/components/editor/publish-management",["exports","@glimmer/component","ghost-admin/errors/email-failed-error","ghost-admin/components/editor/modals/preview","ghost-admin/components/editor/modals/publish-flow","ghost-admin/helpers/publish-options","ghost-admin/components/editor/modals/tk-reminder","ghost-admin/components/editor/modals/update-flow","ghost-admin/config/environment","ember-concurrency","ember-could-get-used-to-this"],(function(e,t,i,r,n,a,s,o,l,u,d){var c,p,m,h,b,f,g,v,y,w,E,k,P,O,_,j,T
615
- function z(e,t,i,r){i&&Object.defineProperty(e,t,{enumerable:i.enumerable,configurable:i.configurable,writable:i.writable,value:i.initializer?i.initializer.call(r):void 0})}function x(e,t,i){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e
609
+ const t=Ember.HTMLBars.template({id:"XLTqJN2Z",block:'{"symbols":["@publishManagement"],"statements":[[6,[37,1],[[32,1,["publishOptions","user","isContributor"]]],null,[["default","else"],[{"statements":[[6,[37,1],[[32,1,["post","isDraft"]]],null,[["default"],[{"statements":[[2," "],[11,"button"],[24,0,"gh-btn gh-btn-editor gh-editor-preview-trigger gh-tooltip-trigger tooltip-bottom no-text"],[24,"data-test-button","contributor-preview"],[24,4,"button"],[4,[38,0],["click",[32,1,["openPreview"]]],null],[4,[38,4],["cmd+p",[32,1,["togglePreview"]]],null],[12],[2,"\\n "],[10,"span"],[12],[2,"Preview"],[13],[2,"\\n "],[8,"gh-tooltip",[],[["@shortcut"],[[30,[36,5],["⌘","P"],null]]],null],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]}]]],[2,"\\n "],[8,"gh-task-button",[[24,"data-test-button","contributor-save"]],[["@buttonText","@task","@runningText","@class"],["Save",[32,1,["saveTask"]],"Saving","gh-btn gh-btn-icon gh-btn-editor gh-editor-save-trigger contributor-save-button"]],null],[2,"\\n"]],"parameters":[]},{"statements":[[6,[37,1],[[32,1,["post","isDraft"]]],null,[["default","else"],[{"statements":[[2," "],[11,"button"],[24,0,"gh-btn gh-btn-editor gh-editor-preview-trigger gh-tooltip-trigger tooltip-bottom no-text"],[24,"data-test-button","publish-preview"],[24,4,"button"],[4,[38,0],["click",[32,1,["openPreview"]]],null],[4,[38,4],["cmd+p",[32,1,["togglePreview"]]],null],[12],[2,"\\n "],[10,"span"],[12],[2,"Preview"],[13],[2,"\\n "],[8,"gh-tooltip",[],[["@shortcut"],[[30,[36,5],["⌘","P"],null]]],null],[2,"\\n "],[13],[2,"\\n\\n "],[11,"button"],[24,0,"gh-btn gh-btn-editor darkgrey gh-publish-trigger gh-tooltip-trigger tooltip-bottom no-text"],[16,"disabled",[32,1,["publishOptions","isLoading"]]],[24,"data-test-button","publish-flow"],[24,4,"button"],[4,[38,0],["click",[32,1,["openPublishFlow"]]],null],[4,[38,4],["cmd+shift+p"],null],[12],[2,"\\n "],[10,"span"],[12],[2,"Publish"],[13],[2,"\\n "],[8,"gh-tooltip",[],[["@shortcut"],[[30,[36,5],["⌘","&#8679;","P"],null]]],null],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[8,"gh-task-button",[[24,"data-test-button","publish-save"]],[["@task","@buttonText","@runningText","@successText","@class","@idleClass","@runningClass","@successClass","@failureClass","@showIcon","@disabled","@autoReset"],[[32,1,["saveTask"]],"Update","Updating...","Updated","gh-btn gh-btn-editor gh-editor-save-trigger","green","midlightgrey","midlightgrey","red",false,[30,[36,2],[[32,1,["hasUnsavedChanges"]]],null],true]],null],[2,"\\n\\n"],[6,[37,1],[[30,[36,2],[[30,[36,3],[[32,1,["post","isSent"]],[30,[36,2],[[32,1,["post","isPublished"]]],null]],null]],null]],null,[["default"],[{"statements":[[2," "],[11,"button"],[24,0,"gh-btn gh-btn-editor darkgrey gh-unpublish-trigger"],[24,"data-test-button","update-flow"],[24,4,"button"],[4,[38,0],["click",[32,1,["openUpdateFlow"]]],null],[12],[2,"\\n "],[10,"span"],[12],[2,"\\n "],[1,[30,[36,1],[[32,1,["post","isScheduled"]],"Unschedule","Unpublish"],null]],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]}]]]],"parameters":[]}]]]],"parameters":[]}]]]],"hasEval":false,"upvars":["on","if","not","and","on-key","array"]}',moduleName:"ghost-admin/components/editor/publish-buttons.hbs"})
610
+ e.default=Ember._setComponentTemplate(t,Ember._templateOnlyComponent())})),define("ghost-admin/components/editor/publish-management",["exports","@glimmer/component","ghost-admin/errors/email-failed-error","ghost-admin/components/editor/modals/preview","ghost-admin/components/editor/modals/publish-flow","ghost-admin/helpers/publish-options","ghost-admin/components/editor/modals/tk-reminder","ghost-admin/components/editor/modals/update-flow","ghost-admin/config/environment","ember-concurrency","ember-could-get-used-to-this"],(function(e,t,i,r,n,a,s,o,l,u,d){var c,p,m,h,b,f,g,v,y,w,E,k,P,O,_,j,T,z,x,S,C,M,D
611
+ function A(e,t,i,r){i&&Object.defineProperty(e,t,{enumerable:i.enumerable,configurable:i.configurable,writable:i.writable,value:i.initializer?i.initializer.call(r):void 0})}function L(e,t,i){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e
616
612
  var i=e[Symbol.toPrimitive]
617
613
  if(void 0!==i){var r=i.call(e,t||"default")
618
614
  if("object"!=typeof r)return r
619
615
  throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string")
620
- return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function S(e,t,i,r,n){var a={}
616
+ return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function N(e,t,i,r,n){var a={}
621
617
  return Object.keys(r).forEach((function(e){a[e]=r[e]})),a.enumerable=!!a.enumerable,a.configurable=!!a.configurable,("value"in a||a.initializer)&&(a.writable=!0),a=i.slice().reverse().reduce((function(i,r){return r(e,t,i)||i}),a),n&&void 0!==a.initializer&&(a.value=a.initializer?a.initializer.call(n):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=e.CONFIRM_EMAIL_POLL_LENGTH=e.CONFIRM_EMAIL_MAX_POLL_LENGTH=void 0
622
- const C=Ember.HTMLBars.template({id:"W0tPxFyR",block:'{"symbols":["@hasUnsavedChanges","@post","&default"],"statements":[[18,3,[[30,[36,0],null,[["post","publishOptions","openPreview","togglePreview","saveTask","savePostTask","saveButtonTaskGroup","hasUnsavedChanges","openPublishFlow","openUpdateFlow"],[[32,2],[32,0,["publishOptions"]],[32,0,["openPreview"]],[32,0,["togglePreview"]],[32,0,["saveTask"]],[32,0,["savePostTask"]],[32,0,["saveButtonTaskGroup"]],[32,1],[32,0,["openPublishFlow"]],[32,0,["openUpdateFlow"]]]]]]],[2,"\\n"]],"hasEval":false,"upvars":["hash"]}',moduleName:"ghost-admin/components/editor/publish-management.hbs"}),M=e.CONFIRM_EMAIL_POLL_LENGTH=1e3,D=e.CONFIRM_EMAIL_MAX_POLL_LENGTH=15e3
623
- let A=e.default=(c=Ember.inject.service,p=Ember.inject.service,m=Ember._tracked,h=Ember._action,b=Ember._action,f=Ember._action,g=Ember._action,v=Ember._action,y=Ember._action,w=(0,u.task)({group:"saveButtonTaskGroup"}),E=(0,u.task)({group:"saveButtonTaskGroup"}),k=class extends t.default{constructor(...e){super(...e),z(this,"modals",P,this),z(this,"notifications",O,this),z(this,"publishOptions",_,this),z(this,"previewTab",j,this),x(this,"publishFlowModal",null),x(this,"updateFlowModal",null),z(this,"saveButtonTaskGroup",T,this)}willDestroy(){super.willDestroy(...arguments),this.publishFlowModal?.close()}async openPublishFlow(e,{skipAnimation:t}={}){e?.preventDefault(),this.updateFlowModal?.close()
618
+ const I=Ember.HTMLBars.template({id:"b78GEebC",block:'{"symbols":["@hasUnsavedChanges","@post","&default"],"statements":[[18,3,[[30,[36,0],null,[["post","publishOptions","openPreview","togglePreview","saveTask","saveButtonTaskGroup","hasUnsavedChanges","openPublishFlow","openUpdateFlow"],[[32,2],[32,0,["publishOptions"]],[32,0,["openPreview"]],[32,0,["togglePreview"]],[32,0,["saveTask"]],[32,0,["saveButtonTaskGroup"]],[32,1],[32,0,["openPublishFlow"]],[32,0,["openUpdateFlow"]]]]]]],[2,"\\n"]],"hasEval":false,"upvars":["hash"]}',moduleName:"ghost-admin/components/editor/publish-management.hbs"}),R=e.CONFIRM_EMAIL_POLL_LENGTH=1e3,F=e.CONFIRM_EMAIL_MAX_POLL_LENGTH=15e3
619
+ let U=e.default=(c=Ember.inject.service,p=Ember.inject.service,m=Ember._tracked,h=Ember._tracked,b=Ember._tracked,f=Ember._action,g=Ember._action,v=Ember._action,y=Ember._action,w=Ember._action,E=Ember._action,k=Ember._action,P=Ember._action,O=(0,u.task)({group:"saveButtonTaskGroup"}),_=(0,u.task)({group:"saveButtonTaskGroup"}),j=class extends t.default{constructor(...e){super(...e),A(this,"modals",T,this),A(this,"notifications",z,this),A(this,"publishOptions",x,this),A(this,"previewFormat",S,this),A(this,"previewSize",C,this),A(this,"previewAsSegment",M,this),L(this,"publishFlowModal",null),L(this,"updateFlowModal",null),A(this,"saveButtonTaskGroup",D,this)}willDestroy(){super.willDestroy(...arguments),this.publishFlowModal?.close()}async openPublishFlow(e,{skipAnimation:t}={}){e?.preventDefault(),this.updateFlowModal?.close()
624
620
  const i=await this._validatePost()
625
621
  if(this.args.tkCount>0){if(!0!==await this.modals.open(s.default,{tkCount:this.args.tkCount}))return}if(i&&(!this.publishFlowModal||this.publishFlowModal?.isClosing)){this.publishOptions.resetPastScheduledAt(),this.publishFlowModal=this.modals.open(n.default,{publishOptions:this.publishOptions,saveTask:this.publishTask,togglePreviewPublish:this.togglePreviewPublish,skipAnimation:t})
626
622
  const e=await this.publishFlowModal
@@ -628,18 +624,18 @@ e?.afterTask&&this[e?.afterTask]&&(await(0,u.timeout)(160),this[e.afterTask].per
628
624
  if(await this._validatePost()&&(!this.updateFlowModal||this.updateFlowModal.isClosing)){this.updateFlowModal=this.modals.open(o.default,{publishOptions:this.publishOptions,saveTask:this.publishTask})
629
625
  const e=await this.updateFlowModal
630
626
  e?.afterTask&&this[e?.afterTask]&&(await(0,u.timeout)(160),this[e.afterTask].perform())}}async openPreview(e,{skipAnimation:t}={}){e?.preventDefault()
631
- !await this._validatePost()||this.previewModal&&!this.previewModal.isClosing||(this.previewModal=this.modals.open(r.default,{publishOptions:this.publishOptions,hasDirtyAttributes:this.args.hasUnsavedChanges,saveTask:this.saveTask,savePostTask:this.args.savePostTask,togglePreviewPublish:this.togglePreviewPublish,currentTab:this.previewTab,changeTab:this.changePreviewTab,skipAnimation:t}))}togglePreview(e){e?.defaultPrevented||(e?.preventDefault(),!this.previewModal||this.previewModal.isClosing?this.publishFlowModal&&!this.publishFlowModal.isClosing?this.togglePreviewPublish():this.openPreview():this.previewModal.close())}changePreviewTab(e){this.previewTab=e}async togglePreviewPublish(e){e?.preventDefault(),this.previewModal&&!this.previewModal.isClosing?(this.openPublishFlow(e,{skipAnimation:!0}),await(0,u.timeout)(160),this.previewModal.close()):this.publishFlowModal&&!this.publishFlowModal.isClosing&&(this.openPreview(e,{skipAnimation:!0}),await(0,u.timeout)(160),this.publishFlowModal.close())}async _validatePost(){this.notifications.closeAlerts("post.save")
627
+ !await this._validatePost()||this.previewModal&&!this.previewModal.isClosing||(this.previewModal=this.modals.open(r.default,{publishOptions:this.publishOptions,hasDirtyAttributes:this.args.hasUnsavedChanges,saveTask:this.saveTask,togglePreviewPublish:this.togglePreviewPublish,initialPreviewFormat:this.previewFormat,changePreviewFormat:this.changePreviewFormat,initialPreviewSize:this.previewSize,changePreviewSize:this.changePreviewSize,initialPreviewAsSegment:this.previewAsSegment,changePreviewAsSegment:this.changePreviewAsSegment,skipAnimation:t}))}togglePreview(e){e?.defaultPrevented||(e?.preventDefault(),!this.previewModal||this.previewModal.isClosing?this.publishFlowModal&&!this.publishFlowModal.isClosing?this.togglePreviewPublish():this.openPreview():this.previewModal.close())}changePreviewFormat(e){this.previewFormat=e}changePreviewSize(e){this.previewSize=e}changePreviewAsSegment(e){this.previewAsSegment=e}async togglePreviewPublish(e){e?.preventDefault(),this.previewModal&&!this.previewModal.isClosing?(this.openPublishFlow(e,{skipAnimation:!0}),await(0,u.timeout)(160),this.previewModal.close()):this.publishFlowModal&&!this.publishFlowModal.isClosing&&(this.openPreview(e,{skipAnimation:!0}),await(0,u.timeout)(160),this.publishFlowModal.close())}async _validatePost(){this.notifications.closeAlerts("post.save")
632
628
  try{return await this.publishOptions.post.validate(),!0}catch(e){if(void 0===e&&0!==this.publishOptions.post.errors.length){const e=`Validation failed: ${this.publishOptions.post.errors.messages[0]}`
633
629
  return this.notifications.showAlert(e,{type:"error",key:"post.save"}),!1}this.notifications.showAPIError(e)}}*publishTask({taskName:e="saveTask"}={}){const t=this.publishOptions.willEmailImmediately
634
630
  yield this.args.beforePublish()
635
631
  const i=yield this.publishOptions[e].perform()
636
632
  return yield this.args.afterPublish(i),t&&this.publishOptions.post.email&&(yield this.confirmEmailTask.perform()),i}*saveTask(){return yield this.args.saveTask.perform(),this.saveButtonTimeoutTask.perform(),!0}*saveButtonTimeoutTask(){yield(0,u.timeout)("test"===l.default.environment?1:3e3)}*confirmEmailTask(){const e=this.publishOptions.post
637
633
  let t=0
638
- if(e.email&&"submitted"!==e.email.status)for(;t<D&&(yield(0,u.timeout)(M),t+=M,yield e.reload(),e.isSent||e.isPublished)&&"submitted"!==e.email.status;)if("failed"===e.email.status)throw new i.default(e.email.error)
634
+ if(e.email&&"submitted"!==e.email.status)for(;t<F&&(yield(0,u.timeout)(R),t+=R,yield e.reload(),e.isSent||e.isPublished)&&"submitted"!==e.email.status;)if("failed"===e.email.status)throw new i.default(e.email.error)
639
635
  return!0}*revertToDraftTask(){try{yield this.publishTask.perform({taskName:"revertToDraftTask"})
640
636
  const e=Ember.String.capitalize(this.args.post.displayName)
641
- return this.notifications.showNotification(`${e} reverted to a draft.`,{type:"success"}),!0}catch(e){this.notifications.showAPIError(e)}}},P=S(k.prototype,"modals",[c],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),O=S(k.prototype,"notifications",[p],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),_=S(k.prototype,"publishOptions",[d.use],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return new a.default((()=>[this.args.post]))}}),j=S(k.prototype,"previewTab",[m],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return"browser"}}),S(k.prototype,"openPublishFlow",[h],Object.getOwnPropertyDescriptor(k.prototype,"openPublishFlow"),k.prototype),S(k.prototype,"openUpdateFlow",[b],Object.getOwnPropertyDescriptor(k.prototype,"openUpdateFlow"),k.prototype),S(k.prototype,"openPreview",[f],Object.getOwnPropertyDescriptor(k.prototype,"openPreview"),k.prototype),S(k.prototype,"togglePreview",[g],Object.getOwnPropertyDescriptor(k.prototype,"togglePreview"),k.prototype),S(k.prototype,"changePreviewTab",[v],Object.getOwnPropertyDescriptor(k.prototype,"changePreviewTab"),k.prototype),S(k.prototype,"togglePreviewPublish",[y],Object.getOwnPropertyDescriptor(k.prototype,"togglePreviewPublish"),k.prototype),S(k.prototype,"publishTask",[u.task],Object.getOwnPropertyDescriptor(k.prototype,"publishTask"),k.prototype),S(k.prototype,"saveTask",[w],Object.getOwnPropertyDescriptor(k.prototype,"saveTask"),k.prototype),S(k.prototype,"saveButtonTimeoutTask",[E],Object.getOwnPropertyDescriptor(k.prototype,"saveButtonTimeoutTask"),k.prototype),T=S(k.prototype,"saveButtonTaskGroup",[u.taskGroup],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),S(k.prototype,"confirmEmailTask",[u.task],Object.getOwnPropertyDescriptor(k.prototype,"confirmEmailTask"),k.prototype),S(k.prototype,"revertToDraftTask",[u.task],Object.getOwnPropertyDescriptor(k.prototype,"revertToDraftTask"),k.prototype),k)
642
- Ember._setComponentTemplate(C,A)})),define("ghost-admin/components/editor/publish-options/email-recipients",["exports"],(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
637
+ return this.notifications.showNotification(`${e} reverted to a draft.`,{type:"success"}),!0}catch(e){this.notifications.showAPIError(e)}}},T=N(j.prototype,"modals",[c],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),z=N(j.prototype,"notifications",[p],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),x=N(j.prototype,"publishOptions",[d.use],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return new a.default((()=>[this.args.post]))}}),S=N(j.prototype,"previewFormat",[m],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return"browser"}}),C=N(j.prototype,"previewSize",[h],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return"desktop"}}),M=N(j.prototype,"previewAsSegment",[b],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return"free"}}),N(j.prototype,"openPublishFlow",[f],Object.getOwnPropertyDescriptor(j.prototype,"openPublishFlow"),j.prototype),N(j.prototype,"openUpdateFlow",[g],Object.getOwnPropertyDescriptor(j.prototype,"openUpdateFlow"),j.prototype),N(j.prototype,"openPreview",[v],Object.getOwnPropertyDescriptor(j.prototype,"openPreview"),j.prototype),N(j.prototype,"togglePreview",[y],Object.getOwnPropertyDescriptor(j.prototype,"togglePreview"),j.prototype),N(j.prototype,"changePreviewFormat",[w],Object.getOwnPropertyDescriptor(j.prototype,"changePreviewFormat"),j.prototype),N(j.prototype,"changePreviewSize",[E],Object.getOwnPropertyDescriptor(j.prototype,"changePreviewSize"),j.prototype),N(j.prototype,"changePreviewAsSegment",[k],Object.getOwnPropertyDescriptor(j.prototype,"changePreviewAsSegment"),j.prototype),N(j.prototype,"togglePreviewPublish",[P],Object.getOwnPropertyDescriptor(j.prototype,"togglePreviewPublish"),j.prototype),N(j.prototype,"publishTask",[u.task],Object.getOwnPropertyDescriptor(j.prototype,"publishTask"),j.prototype),N(j.prototype,"saveTask",[O],Object.getOwnPropertyDescriptor(j.prototype,"saveTask"),j.prototype),N(j.prototype,"saveButtonTimeoutTask",[_],Object.getOwnPropertyDescriptor(j.prototype,"saveButtonTimeoutTask"),j.prototype),D=N(j.prototype,"saveButtonTaskGroup",[u.taskGroup],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),N(j.prototype,"confirmEmailTask",[u.task],Object.getOwnPropertyDescriptor(j.prototype,"confirmEmailTask"),j.prototype),N(j.prototype,"revertToDraftTask",[u.task],Object.getOwnPropertyDescriptor(j.prototype,"revertToDraftTask"),j.prototype),j)
638
+ Ember._setComponentTemplate(I,U)})),define("ghost-admin/components/editor/publish-options/email-recipients",["exports"],(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
643
639
  const t=Ember.HTMLBars.template({id:"hQX9EiP5",block:'{"symbols":["newsletter","@publishOptions"],"statements":[[10,"div"],[14,0,"form-group max-width mb0"],[12],[2,"\\n "],[8,"gh-members-recipient-select",[],[["@filter","@newsletter","@onChange","@renderInPlace","@dropdownClass"],[[32,2,["recipientFilter"]],[32,2,["newsletter"]],[32,2,["setRecipientFilter"]],false,"gh-publish-newsletter-dropdown"]],null],[2,"\\n\\n"],[6,[37,2],[[30,[36,3],[[32,2,["newsletters","length"]],1],null]],null,[["default"],[{"statements":[[2," "],[10,"div"],[14,0,"mt4"],[14,"data-test-select","newsletter"],[12],[2,"\\n "],[10,"label"],[14,0,"gh-main-section-header small bn"],[12],[2,"Newsletter"],[13],[2,"\\n "],[8,"power-select",[],[["@selected","@options","@onChange","@triggerComponent","@triggerClass","@dropdownClass"],[[32,2,["newsletter"]],[32,2,["newsletters"]],[32,2,["setNewsletter"]],[30,[36,1],["gh-power-select/trigger"],null],"gh-publish-newsletter-trigger","gh-publish-newsletter-dropdown"]],[["default"],[{"statements":[[2,"\\n "],[10,"span"],[15,"data-test-select-option",[32,1,["name"]]],[12],[1,[32,1,["name"]]],[13],[2,"\\n"],[6,[37,2],[[32,2,["user","isAdmin"]]],null,[["default"],[{"statements":[[2," "],[10,"span"],[14,0,"gh-newsletter-count"],[12],[1,[30,[36,0],[[32,1,["count","active_members"]]],null]],[13],[2,"\\n"]],"parameters":[]}]]],[2," "]],"parameters":[1]}]]],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]}]]],[13]],"hasEval":false,"upvars":["format-number","component","if","gt"]}',moduleName:"ghost-admin/components/editor/publish-options/email-recipients.hbs"})
644
640
  e.default=Ember._setComponentTemplate(t,Ember._templateOnlyComponent())})),define("ghost-admin/components/editor/publish-options/publish-at",["exports","@glimmer/component","moment-timezone"],(function(e,t,i){var r,n,a,s,o
645
641
  function l(e,t,i,r,n){var a={}
@@ -682,8 +678,7 @@ const a=Ember.HTMLBars.template({id:"HoiavaQO",block:'{"symbols":["api","&defaul
682
678
  let s=(i=Ember.inject.service,r=class extends t.default{constructor(){var e,t,i,r
683
679
  super(...arguments),e=this,t="dropdown",r=this,(i=n)&&Object.defineProperty(e,t,{enumerable:i.enumerable,configurable:i.configurable,writable:i.writable,value:i.initializer?i.initializer.call(r):void 0}),this.dropdown.on("close",this,this.close)}willDestroy(){this.dropdown.off("close",this,this.close)}},o=r.prototype,l="dropdown",u=[i],d={configurable:!0,enumerable:!0,writable:!0,initializer:null},p={},Object.keys(d).forEach((function(e){p[e]=d[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),c&&void 0!==p.initializer&&(p.value=p.initializer?p.initializer.call(c):void 0,p.initializer=void 0),void 0===p.initializer&&(Object.defineProperty(o,l,p),p=null),n=p,r)
684
680
  var o,l,u,d,c,p
685
- e.default=Ember._setComponentTemplate(a,s)}))
686
- define("ghost-admin/components/gh-billing-iframe",["exports","@glimmer/component","ghost-admin/decorators/inject"],(function(e,t,i){var r,n,a,s,o,l,u,d,c,p,m,h,b,f,g,v
681
+ e.default=Ember._setComponentTemplate(a,s)})),define("ghost-admin/components/gh-billing-iframe",["exports","@glimmer/component","ghost-admin/decorators/inject"],(function(e,t,i){var r,n,a,s,o,l,u,d,c,p,m,h,b,f,g,v
687
682
  function y(e,t,i,r){i&&Object.defineProperty(e,t,{enumerable:i.enumerable,configurable:i.configurable,writable:i.writable,value:i.initializer?i.initializer.call(r):void 0})}function w(e,t,i,r,n){var a={}
688
683
  return Object.keys(r).forEach((function(e){a[e]=r[e]})),a.enumerable=!!a.enumerable,a.configurable=!!a.configurable,("value"in a||a.initializer)&&(a.writable=!0),a=i.slice().reverse().reduce((function(i,r){return r(e,t,i)||i}),a),n&&void 0!==a.initializer&&(a.value=a.initializer?a.initializer.call(n):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
689
684
  const E=Ember.HTMLBars.template({id:"ErYely0X",block:'{"symbols":["&attrs"],"statements":[[11,"iframe"],[24,1,"billing-frame"],[24,0,"billing-frame"],[24,"frameborder","0"],[24,"title","Billing"],[24,"allow","clipboard-write"],[17,1],[4,[38,0],[[32,0,["setup"]]],null],[12],[13]],"hasEval":false,"upvars":["did-insert"]}',moduleName:"ghost-admin/components/gh-billing-iframe.hbs"})
@@ -696,7 +691,8 @@ e()}))}_handleForceUpgradeRequest(){let e=null
696
691
  const t=this.billing.ownerUser
697
692
  t&&(e={name:t?.name,email:t?.email}),this.billing.getBillingIframe().contentWindow.postMessage({request:"forceUpgradeInfo",response:{forceUpgrade:this.config.hostSettings?.forceUpgrade,isOwner:this.isOwner,ownerUser:e}},"*")}_handleSubscriptionUpdate(e){if(this.billing.subscription=e.subscription,this.billing.checkoutRoute=e?.checkoutRoute??"/plans","active"===e.subscription.status&&this.config.hostSettings?.forceUpgrade&&(this.config.hostSettings.forceUpgrade=!1),"past_due"===e.subscription.status||"unpaid"===e.subscription.status?this.notifications.showAlert("Billing error: This site is queued for suspension. The owner of this site must update payment information.",{type:"error",key:"billing.overdue"}):this.notifications.closeAlerts("billing.overdue"),e?.exceededLimits&&e?.exceededLimits.length&&e?.exceededLimits.indexOf("members")>=0&&e?.checkoutRoute){const e=this.billing.billingRouteRoot+"?action=checkout"
698
693
  this.notifications.showAlert(Ember.String.htmlSafe(`Your audience has grown! To continue publishing, the site owner must confirm pricing for this number of members <a href="${e}">here</a>`),{type:"warn",key:"billing.exceeded"})}else this.notifications.closeAlerts("billing.exceeded")}},p=w(c.prototype,"ajax",[r],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),m=w(c.prototype,"billing",[n],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),h=w(c.prototype,"ghostPaths",[a],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),b=w(c.prototype,"notifications",[s],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),f=w(c.prototype,"session",[o],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),g=w(c.prototype,"config",[i.inject],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),v=w(c.prototype,"isOwner",[l],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return null}}),w(c.prototype,"setup",[u],Object.getOwnPropertyDescriptor(c.prototype,"setup"),c.prototype),w(c.prototype,"handleIframeMessage",[d],Object.getOwnPropertyDescriptor(c.prototype,"handleIframeMessage"),c.prototype),c)
699
- Ember._setComponentTemplate(E,k)})),define("ghost-admin/components/gh-billing-modal",["exports"],(function(e){var t,i,r,n
694
+ Ember._setComponentTemplate(E,k)}))
695
+ define("ghost-admin/components/gh-billing-modal",["exports"],(function(e){var t,i,r,n
700
696
  function a(e,t,i,r,n){var a={}
701
697
  return Object.keys(r).forEach((function(e){a[e]=r[e]})),a.enumerable=!!a.enumerable,a.configurable=!!a.configurable,("value"in a||a.initializer)&&(a.writable=!0),a=i.slice().reverse().reduce((function(i,r){return r(e,t,i)||i}),a),n&&void 0!==a.initializer&&(a.value=a.initializer?a.initializer.call(n):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
702
698
  const s=Ember.HTMLBars.template({id:"lzYnLSWw",block:'{"symbols":[],"statements":[[10,"div"],[15,0,[31,[[32,0,["visibilityClass"]]]]],[12],[2,"\\n "],[10,"div"],[14,0,"gh-billing-container"],[12],[2,"\\n "],[8,"gh-billing-iframe",[],[[],[]],[["default"],[{"statements":[],"parameters":[]}]]],[2,"\\n "],[13],[2,"\\n"],[13]],"hasEval":false,"upvars":[]}',moduleName:"ghost-admin/components/gh-billing-modal.hbs"})
@@ -755,17 +751,15 @@ var i=e[Symbol.toPrimitive]
755
751
  if(void 0!==i){var r=i.call(e,t||"default")
756
752
  if("object"!=typeof r)return r
757
753
  throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string")
758
- return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function A(e,t,i){return function(e,t,i){if(t.set)t.set.call(e,i)
759
- else{if(!t.writable)throw new TypeError("attempted to set read only private field")
760
- t.value=i}}(e,N(t,e),i),i}function L(e,t){return function(e,t){return t.get?t.get.call(e):t.value}(e,N(t,e))}function N(e,t){return e.get(R(e,t))}function I(e,t,i){return R(t,e),i}function R(e,t,i){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:i
761
- throw new TypeError("Private element is not present on this object")}function F(e,t,i,r,n){var a={}
754
+ return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function A(e,t,i){return e.set(N(e,t),i),i}function L(e,t){return e.get(N(e,t))}function N(e,t,i){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:i
755
+ throw new TypeError("Private element is not present on this object")}function I(e,t,i,r,n){var a={}
762
756
  return Object.keys(r).forEach((function(e){a[e]=r[e]})),a.enumerable=!!a.enumerable,a.configurable=!!a.configurable,("value"in a||a.initializer)&&(a.writable=!0),a=i.slice().reverse().reduce((function(i,r){return r(e,t,i)||i}),a),n&&void 0!==a.initializer&&(a.value=a.initializer?a.initializer.call(n):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
763
- const U=Ember.HTMLBars.template({id:"ZqFocOf3",block:'{"symbols":["&default"],"statements":[[11,"div"],[24,"role","menu"],[24,0,"gh-context-menu-container"],[16,"data-open",[32,0,["isOpen"]]],[4,[38,0],[[32,0,["setup"]]],null],[4,[38,1],["click",[32,0,["stopClicks"]]],null],[12],[2,"\\n "],[10,"div"],[15,0,[31,["gh-context-menu ",[32,0,["class"]]]]],[15,5,[32,0,["style"]]],[12],[2,"\\n "],[18,1,[[32,0],[32,0,["selectionList"]]]],[2,"\\n "],[13],[2,"\\n "],[11,"div"],[24,"role","none"],[24,0,"gh-context-menu-overlay"],[4,[38,1],["click",[32,0,["close"]]],null],[4,[38,1],["contextmenu",[32,0,["onContextMenuOutside"]]],null],[12],[13],[2,"\\n"],[13],[2,"\\n"]],"hasEval":false,"upvars":["did-insert","on"]}',moduleName:"ghost-admin/components/gh-context-menu.hbs"})
764
- let B=e.default=(n=Ember.inject.service,a=Ember.inject.service,s=Ember._tracked,o=Ember._tracked,l=Ember._tracked,u=Ember._tracked,d=Ember._tracked,c=Ember._tracked,p=Ember._action,m=Ember._action,h=Ember._action,b=Ember._action,f=Ember._action,g=Ember._action,T=new WeakMap,z=new WeakMap,x=new WeakSet,v=class extends t.default{constructor(...e){var t,i
765
- super(...e),M(t=this,i=x),i.add(t),S(this,"dropdown",y,this),S(this,"modals",w,this),S(this,"isOpen",E,this),S(this,"left",k,this),S(this,"top",P,this),S(this,"yPlacement",O,this),S(this,"xPlacement",_,this),S(this,"selectionList",j,this),D(this,"element",null),D(this,"state","default"),C(this,T,{writable:!0,value:null}),C(this,z,{writable:!0,value:null})}setState(e){switch(e){case this.state:return
766
- case"default":return this.isOpen=!1,I(this,x,V).call(this),this.selectionList.unfreeze(),void(this.state=e)
757
+ const R=Ember.HTMLBars.template({id:"ZqFocOf3",block:'{"symbols":["&default"],"statements":[[11,"div"],[24,"role","menu"],[24,0,"gh-context-menu-container"],[16,"data-open",[32,0,["isOpen"]]],[4,[38,0],[[32,0,["setup"]]],null],[4,[38,1],["click",[32,0,["stopClicks"]]],null],[12],[2,"\\n "],[10,"div"],[15,0,[31,["gh-context-menu ",[32,0,["class"]]]]],[15,5,[32,0,["style"]]],[12],[2,"\\n "],[18,1,[[32,0],[32,0,["selectionList"]]]],[2,"\\n "],[13],[2,"\\n "],[11,"div"],[24,"role","none"],[24,0,"gh-context-menu-overlay"],[4,[38,1],["click",[32,0,["close"]]],null],[4,[38,1],["contextmenu",[32,0,["onContextMenuOutside"]]],null],[12],[13],[2,"\\n"],[13],[2,"\\n"]],"hasEval":false,"upvars":["did-insert","on"]}',moduleName:"ghost-admin/components/gh-context-menu.hbs"})
758
+ let F=e.default=(n=Ember.inject.service,a=Ember.inject.service,s=Ember._tracked,o=Ember._tracked,l=Ember._tracked,u=Ember._tracked,d=Ember._tracked,c=Ember._tracked,p=Ember._action,m=Ember._action,h=Ember._action,b=Ember._action,f=Ember._action,g=Ember._action,T=new WeakMap,z=new WeakMap,x=new WeakSet,v=class extends t.default{constructor(...e){var t,i
759
+ super(...e),M(t=this,i=x),i.add(t),S(this,"dropdown",y,this),S(this,"modals",w,this),S(this,"isOpen",E,this),S(this,"left",k,this),S(this,"top",P,this),S(this,"yPlacement",O,this),S(this,"xPlacement",_,this),S(this,"selectionList",j,this),D(this,"element",null),D(this,"state","default"),C(this,T,null),C(this,z,null)}setState(e){switch(e){case this.state:return
760
+ case"default":return this.isOpen=!1,N(x,this,U).call(this),this.selectionList.unfreeze(),void(this.state=e)
767
761
  case"open":if("default"!==this.state)return
768
- return this.isOpen=!0,this.selectionList.freeze(),I(this,x,V).call(this),void(this.state=e)
762
+ return this.isOpen=!0,this.selectionList.freeze(),N(x,this,U).call(this),void(this.state=e)
769
763
  case"modal":if("open"!==this.state)return
770
764
  return this.isOpen=!1,this.selectionList.freeze(),void(this.state=e)
771
765
  case"loading":if("open"!==this.state&&"modal"!==this.state)return
@@ -777,9 +771,9 @@ e.off("close",this,this.close),e.off("toggle",this,this.toggle)}open(){this.setS
777
771
  this.name===t?(void 0!==e.left&&(this.left=e.left,this.top=e.top),e.selectionList&&(this.selectionList=e.selectionList),this.calculatePlacement(),this.open()):this.close()}get listElement(){return this.element?.firstElementChild?.firstElementChild}calculatePlacement(){if(!this.element||!this.listElement)return
778
772
  const e=window.innerHeight,t=window.innerWidth,i=this.listElement.offsetHeight,r=this.listElement.offsetWidth
779
773
  this.top+i+10<e?this.yPlacement="bottom":this.yPlacement="top",this.left+r+10<t?this.xPlacement="right":this.xPlacement="left"}stopClicks(e){e.stopPropagation()}*confirmWrapperTask(...e){this.setState("loading")
780
- let t=yield L(this,T).perform(...e)
781
- return A(this,T,null),this.setState("default"),t}openModal(e,t){A(this,T,t.confirm),t.confirm=this.confirmWrapperTask,this.setState("modal"),A(this,z,this.modals.open(e,t)),L(this,z).then((()=>{setTimeout((()=>{this.setState("default")}),10)}))}async performTask(e){this.setState("loading"),await e.perform(),this.setState("default")}},y=F(v.prototype,"dropdown",[n],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),w=F(v.prototype,"modals",[a],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),E=F(v.prototype,"isOpen",[s],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return!1}}),k=F(v.prototype,"left",[o],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return 0}}),P=F(v.prototype,"top",[l],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return 0}}),O=F(v.prototype,"yPlacement",[u],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return"bottom"}}),_=F(v.prototype,"xPlacement",[d],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return"right"}}),j=F(v.prototype,"selectionList",[c],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return new i.default}}),F(v.prototype,"setup",[p],Object.getOwnPropertyDescriptor(v.prototype,"setup"),v.prototype),F(v.prototype,"open",[m],Object.getOwnPropertyDescriptor(v.prototype,"open"),v.prototype),F(v.prototype,"close",[h],Object.getOwnPropertyDescriptor(v.prototype,"close"),v.prototype),F(v.prototype,"onContextMenuOutside",[b],Object.getOwnPropertyDescriptor(v.prototype,"onContextMenuOutside"),v.prototype),F(v.prototype,"toggle",[f],Object.getOwnPropertyDescriptor(v.prototype,"toggle"),v.prototype),F(v.prototype,"stopClicks",[g],Object.getOwnPropertyDescriptor(v.prototype,"stopClicks"),v.prototype),F(v.prototype,"confirmWrapperTask",[r.task],Object.getOwnPropertyDescriptor(v.prototype,"confirmWrapperTask"),v.prototype),v)
782
- function V(){L(this,z)?.close(),A(this,z,null)}Ember._setComponentTemplate(U,B)})),define("ghost-admin/components/gh-custom-view-title",["exports","@glimmer/component"],(function(e,t){var i,r,n,a,s
774
+ let t=yield L(T,this).perform(...e)
775
+ return A(T,this,null),this.setState("default"),t}openModal(e,t){A(T,this,t.confirm),t.confirm=this.confirmWrapperTask,this.setState("modal"),A(z,this,this.modals.open(e,t)),L(z,this).then((()=>{setTimeout((()=>{this.setState("default")}),10)}))}async performTask(e){this.setState("loading"),await e.perform(),this.setState("default")}},y=I(v.prototype,"dropdown",[n],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),w=I(v.prototype,"modals",[a],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),E=I(v.prototype,"isOpen",[s],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return!1}}),k=I(v.prototype,"left",[o],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return 0}}),P=I(v.prototype,"top",[l],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return 0}}),O=I(v.prototype,"yPlacement",[u],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return"bottom"}}),_=I(v.prototype,"xPlacement",[d],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return"right"}}),j=I(v.prototype,"selectionList",[c],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return new i.default}}),I(v.prototype,"setup",[p],Object.getOwnPropertyDescriptor(v.prototype,"setup"),v.prototype),I(v.prototype,"open",[m],Object.getOwnPropertyDescriptor(v.prototype,"open"),v.prototype),I(v.prototype,"close",[h],Object.getOwnPropertyDescriptor(v.prototype,"close"),v.prototype),I(v.prototype,"onContextMenuOutside",[b],Object.getOwnPropertyDescriptor(v.prototype,"onContextMenuOutside"),v.prototype),I(v.prototype,"toggle",[f],Object.getOwnPropertyDescriptor(v.prototype,"toggle"),v.prototype),I(v.prototype,"stopClicks",[g],Object.getOwnPropertyDescriptor(v.prototype,"stopClicks"),v.prototype),I(v.prototype,"confirmWrapperTask",[r.task],Object.getOwnPropertyDescriptor(v.prototype,"confirmWrapperTask"),v.prototype),v)
776
+ function U(){L(z,this)?.close(),A(z,this,null)}Ember._setComponentTemplate(R,F)})),define("ghost-admin/components/gh-custom-view-title",["exports","@glimmer/component"],(function(e,t){var i,r,n,a,s
783
777
  function o(e,t,i,r){i&&Object.defineProperty(e,t,{enumerable:i.enumerable,configurable:i.configurable,writable:i.writable,value:i.initializer?i.initializer.call(r):void 0})}function l(e,t,i,r,n){var a={}
784
778
  return Object.keys(r).forEach((function(e){a[e]=r[e]})),a.enumerable=!!a.enumerable,a.configurable=!!a.configurable,("value"in a||a.initializer)&&(a.writable=!0),a=i.slice().reverse().reduce((function(i,r){return r(e,t,i)||i}),a),n&&void 0!==a.initializer&&(a.value=a.initializer?a.initializer.call(n):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
785
779
  const u=Ember.HTMLBars.template({id:"vBzXYhX+",block:'{"symbols":["@query","@title"],"statements":[[10,"div"],[14,0,"gh-canvas-title-container"],[12],[2,"\\n"],[6,[37,2],[[32,0,["customViews","activeView"]]],null,[["default","else"],[{"statements":[[2," "],[10,"div"],[14,0,"gh-canvas-breadcrumb"],[12],[2,"\\n "],[8,"link-to",[],[["@route","@query"],[[32,0,["router","currentRouteName"]],[32,1]]],[["default"],[{"statements":[[2,"\\n "],[1,[30,[36,0],[[32,2],"No @title provided"],null]],[2,"\\n "]],"parameters":[]}]]],[2,"\\n "],[1,[30,[36,1],["arrow-right-small"],null]],[2," "],[1,[32,0,["customViews","activeView","name"]]],[2,"\\n "],[13],[2,"\\n "],[10,"h2"],[14,0,"gh-canvas-title gh-post-title"],[14,"data-test-screen-title",""],[12],[2,"\\n "],[1,[32,0,["customViews","activeView","name"]]],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[10,"h2"],[14,0,"gh-canvas-title"],[14,"data-test-screen-title",""],[12],[2,"\\n "],[8,"link-to",[],[["@route","@query"],[[32,0,["router","currentRouteName"]],[32,1]]],[["default"],[{"statements":[[1,[30,[36,0],[[32,2],"No @title provided"],null]]],"parameters":[]}]]],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]}]]],[13]],"hasEval":false,"upvars":["or","svg-jar","if"]}',moduleName:"ghost-admin/components/gh-custom-view-title.hbs"})
@@ -965,10 +959,10 @@ return r?Ember.RSVP.resolve(r(e,t)).then((t=>(t.toArray&&(t=t.toArray()),this.ad
965
959
  const r=e.__value__||Ember.get(e,this.valueField)
966
960
  return this.args.onChange?this.args.onChange(r,t,i):this.args.onInput(r,t,i)}filter(e,t){let r
967
961
  return r=this.args.searchField?(e,t)=>this.matcher(Ember.get(e,this.args.searchField),t):(e,t)=>this.matcher(e,t),(0,i.filterOptions)(e||[],t,r)}buildSuggestionForTerm(e){return{__isSuggestion__:!0,__value__:e,text:this.buildSuggestionLabel(e)}}buildSuggestionLabel(e){return this.args.buildSuggestion?this.args.buildSuggestion(e):`Create "${e}"...`}},o=l(s.prototype,"searchEnabled",[r],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return!0}}),l(s.prototype,"searchAndSuggest",[n],Object.getOwnPropertyDescriptor(s.prototype,"searchAndSuggest"),s.prototype),l(s.prototype,"selectOrCreate",[a],Object.getOwnPropertyDescriptor(s.prototype,"selectOrCreate"),s.prototype),s)
968
- Ember._setComponentTemplate(u,d)}))
969
- define("ghost-admin/components/gh-input-with-select/suggested-option",["exports"],(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
962
+ Ember._setComponentTemplate(u,d)})),define("ghost-admin/components/gh-input-with-select/suggested-option",["exports"],(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
970
963
  const t=Ember.HTMLBars.template({id:"g3wZxYUI",block:'{"symbols":["@option"],"statements":[[10,"span"],[14,0,"gh-btn-create-snippet"],[12],[1,[32,1,["text"]]],[1,[30,[36,0],["plus"],null]],[13]],"hasEval":false,"upvars":["svg-jar"]}',moduleName:"ghost-admin/components/gh-input-with-select/suggested-option.hbs"})
971
- e.default=Ember._setComponentTemplate(t,Ember._templateOnlyComponent())})),define("ghost-admin/components/gh-input-with-select/trigger",["exports","@glimmer/component"],(function(e,t){var i,r,n,a,s,o,l,u,d,c
964
+ e.default=Ember._setComponentTemplate(t,Ember._templateOnlyComponent())}))
965
+ define("ghost-admin/components/gh-input-with-select/trigger",["exports","@glimmer/component"],(function(e,t){var i,r,n,a,s,o,l,u,d,c
972
966
  function p(e,t,i){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e
973
967
  var i=e[Symbol.toPrimitive]
974
968
  if(void 0!==i){var r=i.call(e,t||"default")
@@ -1262,11 +1256,11 @@ if(t.get("twitterTitle")!==e)return t.set("twitterTitle",e),t.validate({property
1262
1256
  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
1263
1257
  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()})))}savePost(){this.savePostTask.perform().catch((e=>{this.showError(e),this.post.rollbackAttributes()}))}deletePostInternal(){this.deletePost&&this.deletePost()}setSidebarWidthFromElement(e){const t=e.getBoundingClientRect().width
1264
1258
  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`)}},ve=Ze(ge.prototype,"feature",[s],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),ye=Ze(ge.prototype,"store",[o],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),we=Ze(ge.prototype,"ajax",[l],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Ee=Ze(ge.prototype,"ghostPaths",[u],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),ke=Ze(ge.prototype,"notifications",[d],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Pe=Ze(ge.prototype,"slugGenerator",[c],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Oe=Ze(ge.prototype,"session",[p],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),_e=Ze(ge.prototype,"settings",[m],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),je=Ze(ge.prototype,"themeManagement",[h],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Te=Ze(ge.prototype,"ui",[b],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),ze=Ze(ge.prototype,"config",[r.inject],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),xe=Ze(ge.prototype,"showPostHistory",[f],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return!1}}),Se=Ze(ge.prototype,"canonicalUrlScratch",[g],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Ce=Ze(ge.prototype,"customExcerptScratch",[v],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Me=Ze(ge.prototype,"codeinjectionFootScratch",[y],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),De=Ze(ge.prototype,"codeinjectionHeadScratch",[w],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Ae=Ze(ge.prototype,"metaDescriptionScratch",[E],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Le=Ze(ge.prototype,"metaTitleScratch",[k],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Ne=Ze(ge.prototype,"ogDescriptionScratch",[P],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Ie=Ze(ge.prototype,"ogTitleScratch",[O],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Re=Ze(ge.prototype,"twitterDescriptionScratch",[_],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Fe=Ze(ge.prototype,"twitterTitleScratch",[j],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Ue=Ze(ge.prototype,"slugValue",[T],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Be=Ze(ge.prototype,"uuidValue",[z],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Ve=Ze(ge.prototype,"seoDescription",[x],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),He=Ze(ge.prototype,"facebookDescription",[S],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),qe=Ze(ge.prototype,"facebookImage",[C],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),$e=Ze(ge.prototype,"facebookTitle",[M],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Ye=Ze(ge.prototype,"twitterDescription",[D],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),We=Ze(ge.prototype,"twitterImage",[A],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Ge=Ze(ge.prototype,"twitterTitle",[L],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Ke=Ze(ge.prototype,"showVisibilityInput",[N],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Ze(ge.prototype,"seoTitle",[I],Object.getOwnPropertyDescriptor(ge.prototype,"seoTitle"),ge.prototype),Ze(ge.prototype,"seoURL",[R],Object.getOwnPropertyDescriptor(ge.prototype,"seoURL"),ge.prototype),Ze(ge.prototype,"showSubview",[F],Object.getOwnPropertyDescriptor(ge.prototype,"showSubview"),ge.prototype),Ze(ge.prototype,"closeSubview",[U],Object.getOwnPropertyDescriptor(ge.prototype,"closeSubview"),ge.prototype),Ze(ge.prototype,"discardEnter",[B],Object.getOwnPropertyDescriptor(ge.prototype,"discardEnter"),ge.prototype),Ze(ge.prototype,"toggleFeatured",[V],Object.getOwnPropertyDescriptor(ge.prototype,"toggleFeatured"),ge.prototype),Ze(ge.prototype,"toggleShowTitleAndFeatureImage",[H],Object.getOwnPropertyDescriptor(ge.prototype,"toggleShowTitleAndFeatureImage"),ge.prototype),Ze(ge.prototype,"openPostHistory",[q],Object.getOwnPropertyDescriptor(ge.prototype,"openPostHistory"),ge.prototype),Ze(ge.prototype,"closePostHistory",[$],Object.getOwnPropertyDescriptor(ge.prototype,"closePostHistory"),ge.prototype),Ze(ge.prototype,"updateSlug",[Y],Object.getOwnPropertyDescriptor(ge.prototype,"updateSlug"),ge.prototype),Ze(ge.prototype,"setPublishedAtBlogDate",[W],Object.getOwnPropertyDescriptor(ge.prototype,"setPublishedAtBlogDate"),ge.prototype),Ze(ge.prototype,"setVisibility",[G],Object.getOwnPropertyDescriptor(ge.prototype,"setVisibility"),ge.prototype),Ze(ge.prototype,"setPublishedAtBlogTime",[K],Object.getOwnPropertyDescriptor(ge.prototype,"setPublishedAtBlogTime"),ge.prototype),Ze(ge.prototype,"setCustomExcerpt",[J],Object.getOwnPropertyDescriptor(ge.prototype,"setCustomExcerpt"),ge.prototype),Ze(ge.prototype,"setHeaderInjection",[X],Object.getOwnPropertyDescriptor(ge.prototype,"setHeaderInjection"),ge.prototype),Ze(ge.prototype,"setFooterInjection",[Z],Object.getOwnPropertyDescriptor(ge.prototype,"setFooterInjection"),ge.prototype),Ze(ge.prototype,"setMetaTitle",[Q],Object.getOwnPropertyDescriptor(ge.prototype,"setMetaTitle"),ge.prototype),Ze(ge.prototype,"setMetaDescription",[ee],Object.getOwnPropertyDescriptor(ge.prototype,"setMetaDescription"),ge.prototype),Ze(ge.prototype,"setCanonicalUrl",[te],Object.getOwnPropertyDescriptor(ge.prototype,"setCanonicalUrl"),ge.prototype),Ze(ge.prototype,"setOgTitle",[ie],Object.getOwnPropertyDescriptor(ge.prototype,"setOgTitle"),ge.prototype),Ze(ge.prototype,"setOgDescription",[re],Object.getOwnPropertyDescriptor(ge.prototype,"setOgDescription"),ge.prototype),Ze(ge.prototype,"setTwitterTitle",[ne],Object.getOwnPropertyDescriptor(ge.prototype,"setTwitterTitle"),ge.prototype),Ze(ge.prototype,"setTwitterDescription",[ae],Object.getOwnPropertyDescriptor(ge.prototype,"setTwitterDescription"),ge.prototype),Ze(ge.prototype,"setCoverImage",[se],Object.getOwnPropertyDescriptor(ge.prototype,"setCoverImage"),ge.prototype),Ze(ge.prototype,"clearCoverImage",[oe],Object.getOwnPropertyDescriptor(ge.prototype,"clearCoverImage"),ge.prototype),Ze(ge.prototype,"setOgImage",[le],Object.getOwnPropertyDescriptor(ge.prototype,"setOgImage"),ge.prototype),Ze(ge.prototype,"clearOgImage",[ue],Object.getOwnPropertyDescriptor(ge.prototype,"clearOgImage"),ge.prototype),Ze(ge.prototype,"setTwitterImage",[de],Object.getOwnPropertyDescriptor(ge.prototype,"setTwitterImage"),ge.prototype),Ze(ge.prototype,"clearTwitterImage",[ce],Object.getOwnPropertyDescriptor(ge.prototype,"clearTwitterImage"),ge.prototype),Ze(ge.prototype,"changeAuthors",[pe],Object.getOwnPropertyDescriptor(ge.prototype,"changeAuthors"),ge.prototype),Ze(ge.prototype,"savePost",[me],Object.getOwnPropertyDescriptor(ge.prototype,"savePost"),ge.prototype),Ze(ge.prototype,"deletePostInternal",[he],Object.getOwnPropertyDescriptor(ge.prototype,"deletePostInternal"),ge.prototype),Ze(ge.prototype,"setSidebarWidthFromElement",[be],Object.getOwnPropertyDescriptor(ge.prototype,"setSidebarWidthFromElement"),ge.prototype),fe=ge))||fe)
1265
- Ember._setComponentTemplate(Qe,et)}))
1266
- define("ghost-admin/components/gh-post-settings-menu/ctrl-or-cmd",["exports","@glimmer/component"],(function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
1259
+ Ember._setComponentTemplate(Qe,et)})),define("ghost-admin/components/gh-post-settings-menu/ctrl-or-cmd",["exports","@glimmer/component"],(function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
1267
1260
  const i=Ember.HTMLBars.template({id:"z2l72zp1",block:'{"symbols":[],"statements":[[10,"span"],[15,0,[31,["gh-key ",[32,0,["class"]]]]],[15,"data-tooltip",[32,0,["tooltip"]]],[12],[1,[32,0,["character"]]],[13]],"hasEval":false,"upvars":[]}',moduleName:"ghost-admin/components/gh-post-settings-menu/ctrl-or-cmd.hbs"}),r=window.navigator.platform.startsWith("Mac")
1268
1261
  class n extends t.default{get tooltip(){return r?"Command":""}get character(){const e=r?"&#8984;":"Ctrl"
1269
- return Ember.String.htmlSafe(e)}get class(){return r?"":"mono"}}e.default=n,Ember._setComponentTemplate(i,n)})),define("ghost-admin/components/gh-post-settings-menu/ctrl-or-symbol",["exports","@glimmer/component"],(function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
1262
+ return Ember.String.htmlSafe(e)}get class(){return r?"":"mono"}}e.default=n,Ember._setComponentTemplate(i,n)}))
1263
+ define("ghost-admin/components/gh-post-settings-menu/ctrl-or-symbol",["exports","@glimmer/component"],(function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
1270
1264
  const i=Ember.HTMLBars.template({id:"P+BbARYW",block:'{"symbols":[],"statements":[[10,"span"],[15,0,[31,["gh-key ",[32,0,["class"]]]]],[15,"data-tooltip",[32,0,["tooltip"]]],[12],[1,[32,0,["character"]]],[13]],"hasEval":false,"upvars":[]}',moduleName:"ghost-admin/components/gh-post-settings-menu/ctrl-or-symbol.hbs"}),r=window.navigator.platform.startsWith("Mac")
1271
1265
  class n extends t.default{get tooltip(){return r?"Control":""}get character(){const e=r?"&#8963;":"Ctrl"
1272
1266
  return Ember.String.htmlSafe(e)}get class(){return r?"":"mono"}}e.default=n,Ember._setComponentTemplate(i,n)})),define("ghost-admin/components/gh-post-settings-menu/option-or-alt",["exports","@glimmer/component"],(function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
@@ -1495,7 +1489,9 @@ if(8===e.keyCode&&(e.stopPropagation(),Ember.isBlank(e.target.value))){let t=thi
1495
1489
  if(t){if(this.args.select.actions.select(this.args.buildSelection(t,this.args.select),e),"string"==typeof t)this.args.select.actions.search(t)
1496
1490
  else{let e=this.searchField
1497
1491
  this.args.select.actions.search(Ember.get(t,e))}this.args.select.actions.open(e)}}}}).prototype,"handleOptionMouseDown",[i],Object.getOwnPropertyDescriptor(s.prototype,"handleOptionMouseDown"),s.prototype),o(s.prototype,"handleOptionTouchStart",[r],Object.getOwnPropertyDescriptor(s.prototype,"handleOptionTouchStart"),s.prototype),o(s.prototype,"reorderItems",[n],Object.getOwnPropertyDescriptor(s.prototype,"reorderItems"),s.prototype),o(s.prototype,"handleKeydown",[a],Object.getOwnPropertyDescriptor(s.prototype,"handleKeydown"),s.prototype),s)
1498
- Ember._setComponentTemplate(l,u)})),define("ghost-admin/components/gh-trim-focus-input",["exports","ghost-admin/components/gh-text-input"],(function(e,t){function i(e,t,i){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e
1492
+ Ember._setComponentTemplate(l,u)})),define("ghost-admin/components/gh-tooltip",["exports"],(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
1493
+ const t=Ember.HTMLBars.template({id:"b0yo4GOa",block:'{"symbols":["key","@text","@shortcut","&attrs"],"statements":[[11,"span"],[24,0,"gh-tooltip"],[17,4],[12],[2,"\\n"],[6,[37,3],[[32,3]],null,[["default","else"],[{"statements":[[2," "],[1,[32,2]],[2,"\\n"],[6,[37,2],[[30,[36,1],[[30,[36,1],[[32,3]],null]],null]],null,[["default"],[{"statements":[[2," "],[10,"p"],[14,0,"gh-shortcut-key"],[12],[1,[30,[36,0],[[32,1]],null]],[13],[2,"\\n"]],"parameters":[1]}]]]],"parameters":[]},{"statements":[[2," "],[1,[32,2]],[2,"\\n"]],"parameters":[]}]]],[13]],"hasEval":false,"upvars":["html-safe","-track-array","each","if"]}',moduleName:"ghost-admin/components/gh-tooltip.hbs"})
1494
+ e.default=Ember._setComponentTemplate(t,Ember._templateOnlyComponent())})),define("ghost-admin/components/gh-trim-focus-input",["exports","ghost-admin/components/gh-text-input"],(function(e,t){function i(e,t,i){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e
1499
1495
  var i=e[Symbol.toPrimitive]
1500
1496
  if(void 0!==i){var r=i.call(e,t||"default")
1501
1497
  if("object"!=typeof r)return r
@@ -2178,14 +2174,14 @@ let p=e.default=(i=Ember.inject.service,r=Ember.inject.service,n=Ember.inject.se
2178
2174
  return e&&t&&!i&&r}calculateActionsDropdownPosition(e,t){let{top:i,left:r,width:n,height:a}=e.getBoundingClientRect(),{width:s}=t.firstElementChild.getBoundingClientRect()
2179
2175
  return{style:{left:r+n-s,top:i+a+5}}}},s=d(a.prototype,"customViews",[i],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),o=d(a.prototype,"feature",[r],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),l=d(a.prototype,"router",[n],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),a)
2180
2176
  Ember._setComponentTemplate(c,p)})),define("ghost-admin/components/posts-list/context-menu",["exports","ghost-admin/components/posts-list/modals/add-tag","@glimmer/component","ghost-admin/components/posts-list/modals/delete-posts","ghost-admin/components/posts-list/modals/edit-posts-access","ghost-admin/components/posts-list/modals/unpublish-posts","ghost-admin/components/posts-list/modals/unschedule-posts","ghost-admin/utils/copy-text-to-clipboard","@tryghost/nql","ghost-admin/helpers/capitalize-first-letter","ember-concurrency"],(function(e,t,i,r,n,a,s,o,l,u,d){var c,p,m,h,b,f,g,v,y,w,E,k,P,O,_,j,T,z,x,S,C,M,D,A,L,N
2181
- function I(e,t,i,r){i&&Object.defineProperty(e,t,{enumerable:i.enumerable,configurable:i.configurable,writable:i.writable,value:i.initializer?i.initializer.call(r):void 0})}function R(e,t){(function(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")})(e,t),t.add(e)}function F(e,t,i){return function(e,t,i){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:i
2182
- throw new TypeError("Private element is not present on this object")}(t,e),i}function U(e,t,i,r,n){var a={}
2177
+ function I(e,t,i,r){i&&Object.defineProperty(e,t,{enumerable:i.enumerable,configurable:i.configurable,writable:i.writable,value:i.initializer?i.initializer.call(r):void 0})}function R(e,t){(function(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")})(e,t),t.add(e)}function F(e,t,i){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:i
2178
+ throw new TypeError("Private element is not present on this object")}function U(e,t,i,r,n){var a={}
2183
2179
  return Object.keys(r).forEach((function(e){a[e]=r[e]})),a.enumerable=!!a.enumerable,a.configurable=!!a.configurable,("value"in a||a.initializer)&&(a.writable=!0),a=i.slice().reverse().reduce((function(i,r){return r(e,t,i)||i}),a),n&&void 0!==a.initializer&&(a.value=a.initializer?a.initializer.call(n):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
2184
2180
  const B=Ember.HTMLBars.template({id:"2blJ2rM3",block:'{"symbols":[],"statements":[[10,"ul"],[14,0,"gh-posts-context-menu dropdown-menu dropdown-triangle-top-left"],[14,"data-test-post-context-menu",""],[12],[2,"\\n\\n"],[6,[37,2],[[32,0,["canUnpublishSelection"]]],null,[["default","else"],[{"statements":[[6,[37,2],[[32,0,["canCopySelection"]]],null,[["default"],[{"statements":[[2," "],[10,"li"],[12],[2,"\\n "],[11,"button"],[24,0,"mr2"],[24,"data-test-button","copy-link"],[24,4,"button"],[4,[38,0],["click",[32,0,["copyPostLink"]]],null],[12],[2,"\\n "],[10,"span"],[12],[1,[30,[36,1],["link"],null]],[2,"Copy link to post"],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]}]]],[2," "],[10,"li"],[12],[2,"\\n "],[11,"button"],[24,0,"mr2"],[24,"data-test-button","unpublish"],[24,4,"button"],[4,[38,0],["click",[32,0,["unpublishPosts"]]],null],[12],[2,"\\n "],[10,"span"],[12],[1,[30,[36,1],["undo"],null]],[2,"Unpublish"],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]},{"statements":[[6,[37,2],[[32,0,["canCopySelection"]]],null,[["default"],[{"statements":[[2," "],[10,"li"],[12],[2,"\\n "],[11,"button"],[24,0,"mr2"],[24,"data-test-button","copy-preview"],[24,4,"button"],[4,[38,0],["click",[32,0,["copyPreviewLink"]]],null],[12],[2,"\\n "],[10,"span"],[12],[1,[30,[36,1],["link"],null]],[2,"Copy preview link"],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]}]]],[6,[37,2],[[32,0,["canUnscheduleSelection"]]],null,[["default"],[{"statements":[[2," "],[10,"li"],[12],[2,"\\n "],[11,"button"],[24,0,"mr2"],[24,"data-test-button","unschedule"],[24,4,"button"],[4,[38,0],["click",[32,0,["unschedulePosts"]]],null],[12],[2,"\\n "],[10,"span"],[12],[1,[30,[36,1],["undo"],null]],[2,"Unschedule"],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]}]]]],"parameters":[]}]]],[6,[37,2],[[32,0,["canFeatureSelection"]]],null,[["default"],[{"statements":[[6,[37,2],[[32,0,["shouldFeatureSelection"]]],null,[["default","else"],[{"statements":[[2," "],[10,"li"],[12],[2,"\\n "],[11,"button"],[24,0,"mr2"],[24,"data-test-button","feature"],[24,4,"button"],[4,[38,0],["click",[32,0,["featurePosts"]]],null],[12],[2,"\\n "],[10,"span"],[12],[1,[30,[36,1],["star"],[["class"],["mb1 star"]]]],[2,"Feature"],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[10,"li"],[12],[2,"\\n "],[11,"button"],[24,0,"mr2"],[24,"data-test-button","unfeature"],[24,4,"button"],[4,[38,0],["click",[32,0,["unfeaturePosts"]]],null],[12],[2,"\\n "],[10,"span"],[12],[1,[30,[36,1],["star"],[["class"],["mb1"]]]],[2,"Unfeature"],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]}]]]],"parameters":[]}]]],[2,"\\n "],[10,"li"],[12],[2,"\\n "],[11,"button"],[24,0,"mr2"],[24,"data-test-button","add-tag"],[24,4,"button"],[4,[38,0],["click",[32,0,["addTagToPosts"]]],null],[12],[2,"\\n "],[10,"span"],[12],[1,[30,[36,1],["tag"],null]],[2,"Add a tag"],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n\\n"],[6,[37,2],[[32,0,["membersUtils","isMembersEnabled"]]],null,[["default"],[{"statements":[[2," "],[10,"li"],[12],[2,"\\n "],[11,"button"],[24,0,"mr2"],[24,"data-test-button","change-access"],[24,4,"button"],[4,[38,0],["click",[32,0,["editPostsAccess"]]],null],[12],[2,"\\n "],[10,"span"],[12],[1,[30,[36,1],["lock"],null]],[2,"Change access"],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]}]]],[2,"\\n"],[6,[37,2],[[32,0,["canCopySelection"]]],null,[["default"],[{"statements":[[2," "],[10,"li"],[12],[2,"\\n "],[11,"button"],[24,0,"mr2"],[24,"data-test-button","duplicate"],[24,4,"button"],[4,[38,0],["click",[32,0,["copyPosts"]]],null],[12],[2,"\\n "],[10,"span"],[12],[1,[30,[36,1],["duplicate"],null]],[2,"Duplicate"],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]}]]],[2,"\\n"],[6,[37,2],[[32,0,["session","user","isAdmin"]]],null,[["default"],[{"statements":[[2," "],[10,"li"],[12],[2,"\\n "],[11,"button"],[24,0,"mr2"],[24,"data-test-button","delete"],[24,4,"button"],[4,[38,0],["click",[32,0,["deletePosts"]]],null],[12],[2,"\\n "],[10,"span"],[14,0,"red"],[12],[1,[30,[36,1],["trash"],null]],[2,"Delete"],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]}]]],[13],[2,"\\n"]],"hasEval":false,"upvars":["on","svg-jar","if"]}',moduleName:"ghost-admin/components/posts-list/context-menu.hbs"})
2185
2181
  function V(e,t){for(const i in t)e=e.replace(new RegExp(`{${i}}`,"g"),t[i])
2186
2182
  return e}const H={deleted:{single:"{Type} deleted",multiple:"{count} {type}s deleted"},unpublished:{single:"{Type} reverted to a draft",multiple:"{count} {type}s reverted to drafts"},unscheduled:{single:"{Type} unscheduled",multiple:"{count} {type}s unscheduled"},accessUpdated:{single:"{Type} access updated",multiple:"{Type} access updated for {count} {type}s"},tagsAdded:{single:"Tags added",multiple:"Tags added to {count} {type}s"},tagAdded:{single:"Tag added",multiple:"Tag added to {count} {type}s"},duplicated:{single:"{Type} duplicated",multiple:"{count} {type}s duplicated"},copiedPostUrl:{single:"Post link copied"},copiedPreviewUrl:{single:"Preview link copied"}}
2187
2183
  let q=e.default=(c=Ember.inject.service,p=Ember.inject.service,m=Ember.inject.service,h=Ember.inject.service,b=Ember.inject.service,f=Ember.inject.service,g=Ember.inject.service,v=Ember._action,y=Ember._action,w=Ember._action,E=Ember._action,k=Ember._action,P=Ember._action,O=Ember._action,_=Ember._action,j=Ember._action,T=Ember._action,N=new WeakSet,z=class extends i.default{constructor(...e){super(...e),R(this,N),I(this,"ajax",x,this),I(this,"ghostPaths",S,this),I(this,"session",C,this),I(this,"infinity",M,this),I(this,"store",D,this),I(this,"notifications",A,this),I(this,"membersUtils",L,this)}get menu(){return this.args.menu}get selectionList(){return this.menu.selectionList}get type(){return"page"===this.selectionList.first?.displayName?"page":"post"}async copyPostLink(){this.menu.performTask(this.copyPostLinkTask)}async copyPreviewLink(){this.menu.performTask(this.copyPreviewLinkTask)}async featurePosts(){this.menu.performTask(this.featurePostsTask)}async unfeaturePosts(){this.menu.performTask(this.unfeaturePostsTask)}async addTagToPosts(){await this.menu.openModal(t.default,{type:this.type,selectionList:this.selectionList,confirm:this.addTagToPostsTask})}async deletePosts(){this.menu.openModal(r.default,{type:this.type,selectionList:this.selectionList,confirm:this.deletePostsTask})}async unpublishPosts(){await this.menu.openModal(a.default,{type:this.type,selectionList:this.selectionList,confirm:this.unpublishPostsTask})}async unschedulePosts(){await this.menu.openModal(s.default,{type:this.type,selectionList:this.selectionList,confirm:this.unschedulePostsTask})}async editPostsAccess(){this.menu.openModal(n.default,{type:this.type,selectionList:this.selectionList,confirm:this.editPostsAccessTask})}async copyPosts(){this.menu.performTask(this.copyPostsTask)}*addTagToPostsTask(e){const t=this.selectionList.availableModels
2188
- yield this.performBulkEdit("addTag",{tags:e.map((e=>({id:e.id,name:e.name,slug:e.slug})))}),e.length>1?this.notifications.showNotification(F(this,N,$).call(this,"tagsAdded"),{type:"success"}):this.notifications.showNotification(F(this,N,$).call(this,"tagAdded"),{type:"success"})
2184
+ yield this.performBulkEdit("addTag",{tags:e.map((e=>({id:e.id,name:e.name,slug:e.slug})))}),e.length>1?this.notifications.showNotification(F(N,this,$).call(this,"tagsAdded"),{type:"success"}):this.notifications.showNotification(F(N,this,$).call(this,"tagAdded"),{type:"success"})
2189
2185
  const i=e.toArray().map((e=>({...e.serialize({includeId:!0}),type:"tag"})))
2190
2186
  this.store.peekAll("tag").forEach((e=>{e.isNew&&e.destroyRecord()}))
2191
2187
  let r=null
@@ -2194,18 +2190,18 @@ const e=r.find((e=>e.name===n.name&&e.id))
2194
2190
  e&&(n.id=e.id,n.slug=e.slug)}for(const n of t){const e=n.tags.toArray().map((e=>({...e.serialize({includeId:!0}),type:"tag"})))
2195
2191
  for(const t of i)e.find((e=>e.id===t.id))||e.push(t)
2196
2192
  this.store.push({data:{id:n.id,type:this.type,relationships:{tags:{data:e}}}})}return this.updateFilteredPosts(),!0}*deletePostsTask(){const e=this.selectionList.availableModels
2197
- yield this.performBulkDestroy(),this.notifications.showNotification(F(this,N,$).call(this,"deleted"),{type:"success"})
2193
+ yield this.performBulkDestroy(),this.notifications.showNotification(F(N,this,$).call(this,"deleted"),{type:"success"})
2198
2194
  for(const t in this.selectionList.infinityModel){const i=this.selectionList.infinityModel[t].content.filter((t=>!e.includes(t)))
2199
2195
  this.infinity.replace(this.selectionList.infinityModel[t],i)}return this.selectionList.clearSelection({force:!0}),!0}*unpublishPostsTask(){const e=this.selectionList.availableModels
2200
- yield this.performBulkEdit("unpublish"),this.notifications.showNotification(F(this,N,$).call(this,"unpublished"),{type:"success"})
2196
+ yield this.performBulkEdit("unpublish"),this.notifications.showNotification(F(N,this,$).call(this,"unpublished"),{type:"success"})
2201
2197
  for(const t of e)"published"===t.status&&this.store.push({data:{id:t.id,type:this.type,attributes:{status:"draft"}}})
2202
2198
  return this.updateFilteredPosts(),!0}*unschedulePostsTask(){const e=this.selectionList.availableModels
2203
- yield this.performBulkEdit("unschedule"),this.notifications.showNotification(F(this,N,$).call(this,"unscheduled"),{type:"success"})
2199
+ yield this.performBulkEdit("unschedule"),this.notifications.showNotification(F(N,this,$).call(this,"unscheduled"),{type:"success"})
2204
2200
  for(const t of e)"scheduled"===t.status&&this.store.push({data:{id:t.id,type:this.type,attributes:{status:"draft",published_at:null}}})
2205
2201
  return this.updateFilteredPosts(),!0}updateFilteredPosts(){const e=this.selectionList.availableModels,t=this.selectionList.allFilter,i=(0,l.default)(t,{expansions:[{key:"primary_tag",replacement:"tags.slug",expansion:"posts_tags.sort_order:0+tags.visibility:public"},{key:"primary_author",replacement:"authors.slug",expansion:"posts_authors.sort_order:0+authors.visibility:public"},{key:"authors",replacement:"authors.slug"},{key:"author",replacement:"authors.slug"},{key:"tag",replacement:"tags.slug"},{key:"tags",replacement:"tags.slug"}]})
2206
2202
  for(const r in this.selectionList.infinityModel){const t=this.selectionList.infinityModel[r].content.filter((t=>!e.find((e=>e.id===t.id))||i.queryJSON(t.serialize({includeId:!0}))))
2207
2203
  this.infinity.replace(this.selectionList.infinityModel[r],t)}this.selectionList.clearUnavailableItems()}*editPostsAccessTask(e,{visibility:t,tiers:i}){const r=this.selectionList.availableModels
2208
- yield this.performBulkEdit("access",{visibility:t,tiers:i}),this.notifications.showNotification(F(this,N,$).call(this,"accessUpdated"),{type:"success"})
2204
+ yield this.performBulkEdit("access",{visibility:t,tiers:i}),this.notifications.showNotification(F(N,this,$).call(this,"accessUpdated"),{type:"success"})
2209
2205
  for(const n of r)this.store.push({data:{id:n.id,type:this.type,attributes:{visibility:t,tiers:i}}})
2210
2206
  return this.updateFilteredPosts(),e(),!0}*featurePostsTask(){const e=this.selectionList.availableModels
2211
2207
  yield this.performBulkEdit("feature")
@@ -2216,7 +2212,7 @@ for(const t of e)this.store.push({data:{id:t.id,type:this.type,attributes:{featu
2216
2212
  return this.updateFilteredPosts(),!0}*copyPostsTask(){try{const e=yield this.performCopy()
2217
2213
  this.store.pushPayload(e)
2218
2214
  const t=e["post"===this.type?"posts":"pages"][0],i=this.store.peekRecord(this.type,t.id)
2219
- this.selectionList.infinityModel.draftInfinityModel&&this.selectionList.infinityModel.draftInfinityModel.content.unshiftObject(i),this.notifications.showNotification(F(this,N,$).call(this,"duplicated"),{type:"success"})}catch(e){this.notifications.showAPIError(e,{key:`${this.type}.copy.failed`})}return!0}*copyPostLinkTask(){return(0,o.default)(this.selectionList.availableModels[0].url),this.notifications.showNotification(F(this,N,$).call(this,"copiedPostUrl"),{type:"success"}),yield(0,d.timeout)(1e3),!0}*copyPreviewLinkTask(){return(0,o.default)(this.selectionList.availableModels[0].url),this.notifications.showNotification(F(this,N,$).call(this,"copiedPreviewUrl"),{type:"success"}),yield(0,d.timeout)(1e3),!0}async performBulkDestroy(){const e=this.selectionList.filter
2215
+ this.selectionList.infinityModel.draftInfinityModel&&this.selectionList.infinityModel.draftInfinityModel.content.unshiftObject(i),this.notifications.showNotification(F(N,this,$).call(this,"duplicated"),{type:"success"})}catch(e){this.notifications.showAPIError(e,{key:`${this.type}.copy.failed`})}return!0}*copyPostLinkTask(){return(0,o.default)(this.selectionList.availableModels[0].url),this.notifications.showNotification(F(N,this,$).call(this,"copiedPostUrl"),{type:"success"}),yield(0,d.timeout)(1e3),!0}*copyPreviewLinkTask(){return(0,o.default)(this.selectionList.availableModels[0].url),this.notifications.showNotification(F(N,this,$).call(this,"copiedPreviewUrl"),{type:"success"}),yield(0,d.timeout)(1e3),!0}async performBulkDestroy(){const e=this.selectionList.filter
2220
2216
  let t=this.ghostPaths.url.api("post"===this.type?"posts":"pages")+`?filter=${encodeURIComponent(e)}`
2221
2217
  return await this.ajax.delete(t)}async performBulkEdit(e,t={}){const i=this.selectionList.filter
2222
2218
  let r=this.ghostPaths.url.api("post"===this.type?"posts/bulk":"pages/bulk")+`?filter=${encodeURIComponent(i)}`
@@ -2247,19 +2243,17 @@ this.latestScheduledPost=t.toArray()[0]}*getlatestPublishedPost(){const e=JSON.p
2247
2243
  this.latestPublishedPost=t.toArray()[0]}*getPostCount(){const e=yield this.store.query("post",{filter:"status:published",limit:1,page:1})
2248
2244
  this.postCount=e.meta.pagination.total}},u=b(l.prototype,"store",[n],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),d=b(l.prototype,"modals",[a],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),c=b(l.prototype,"feature",[s],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),p=b(l.prototype,"postCount",[o],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return 0}}),b(l.prototype,"getLatestScheduledPost",[r.task],Object.getOwnPropertyDescriptor(l.prototype,"getLatestScheduledPost"),l.prototype),b(l.prototype,"getlatestPublishedPost",[r.task],Object.getOwnPropertyDescriptor(l.prototype,"getlatestPublishedPost"),l.prototype),b(l.prototype,"getPostCount",[r.task],Object.getOwnPropertyDescriptor(l.prototype,"getPostCount"),l.prototype),l)
2249
2245
  Ember._setComponentTemplate(f,g)})),define("ghost-admin/components/posts-list/modals/add-tag",["exports","@glimmer/component","ember-data","ember-concurrency"],(function(e,t,i,r){var n,a,s,o,l,u,d,c,p,m,h,b
2250
- function f(e,t,i,r){i&&Object.defineProperty(e,t,{enumerable:i.enumerable,configurable:i.configurable,writable:i.writable,value:i.initializer?i.initializer.call(r):void 0})}function g(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")}function v(e,t,i){return k(t,e),i}function y(e,t,i){return function(e,t,i){if(t.set)t.set.call(e,i)
2251
- else{if(!t.writable)throw new TypeError("attempted to set read only private field")
2252
- t.value=i}}(e,E(t,e),i),i}function w(e,t){return function(e,t){return t.get?t.get.call(e):t.value}(e,E(t,e))}function E(e,t){return e.get(k(e,t))}function k(e,t,i){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:i
2253
- throw new TypeError("Private element is not present on this object")}function P(e,t,i,r,n){var a={}
2254
- return Object.keys(r).forEach((function(e){a[e]=r[e]})),a.enumerable=!!a.enumerable,a.configurable=!!a.configurable,("value"in a||a.initializer)&&(a.writable=!0),a=i.slice().reverse().reduce((function(i,r){return r(e,t,i)||i}),a),n&&void 0!==a.initializer&&(a.value=a.initializer?a.initializer.call(n):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
2255
- const O=Ember.HTMLBars.template({id:"cFeYzk6X",block:'{"symbols":["@close"],"statements":[[10,"div"],[14,0,"modal-content"],[14,"data-test-modal","add-tags"],[12],[2,"\\n "],[10,"header"],[14,0,"modal-header"],[12],[2,"\\n "],[10,"h1"],[12],[2,"Add tags"],[13],[2,"\\n "],[13],[2,"\\n "],[11,"button"],[24,0,"close"],[24,"title","Close"],[24,"data-test-button","close"],[24,4,"button"],[4,[38,1],["click",[30,[36,0],[[32,1],false],null]],null],[12],[1,[30,[36,2],["close"],null]],[10,"span"],[14,0,"hidden"],[12],[2,"Close"],[13],[13],[2,"\\n\\n "],[10,"div"],[14,0,"modal-body mb9"],[12],[2,"\\n "],[10,"p"],[12],[2,"\\n "],[8,"gh-form-group",[],[["@errors","@hasValidated","@property"],[[32,0,["errors"]],[32,0,["hasValidated"]],"tags"]],[["default"],[{"statements":[[2,"\\n "],[8,"gh-token-input",[],[["@extra","@onChange","@onCreate","@options","@renderInPlace","@selected","@showCreateWhen","@triggerId","@placeholder"],[[30,[36,4],null,[["tokenComponent"],[[30,[36,3],["gh-token-input/tag-token"],null]]]],[32,0,["handleChange"]],[32,0,["handleCreate"]],[32,0,["availableTags"]],true,[32,0,["selectedTags"]],[32,0,["shouldAllowCreate"]],[32,0,["triggerId"]],"Select or enter tags..."]],null],[2,"\\n "],[8,"gh-error-message",[],[["@errors","@property"],[[32,0,["errors"]],"tags"]],null],[2,"\\n "]],"parameters":[]}]]],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n\\n "],[10,"div"],[14,0,"modal-footer"],[12],[2,"\\n "],[11,"button"],[24,0,"gh-btn"],[24,"data-test-button","cancel"],[24,4,"button"],[4,[38,1],["click",[30,[36,0],[[32,1],false],null]],null],[12],[10,"span"],[12],[2,"Cancel"],[13],[13],[2,"\\n\\n "],[8,"gh-task-button",[[24,"data-test-button","confirm"]],[["@buttonText","@runningText","@showSuccess","@task","@class"],["Add","Adding",false,[32,0,["confirm"]],"gh-btn gh-btn-primary gh-btn-icon"]],null],[2,"\\n\\n "],[13],[2,"\\n"],[13],[2,"\\n"]],"hasEval":false,"upvars":["fn","on","svg-jar","component","hash"]}',moduleName:"ghost-admin/components/posts-list/modals/add-tag.hbs"}),{Errors:_}=i.default
2256
- let j=e.default=(n=Ember.inject.service,a=Ember._tracked,s=Ember._tracked,o=Ember._action,l=Ember._action,u=Ember._action,h=new WeakMap,b=new WeakSet,d=class extends t.default{get availableTags(){return w(this,h)||[]}get hasValidated(){return["tags"]}constructor(){var e,t
2257
- super(...arguments),g(e=this,t=b),t.add(e),f(this,"store",c,this),function(e,t,i){g(e,t),t.set(e,i)}(this,h,{writable:!0,value:null}),f(this,"selectedTags",p,this),f(this,"errors",m,this),this.store.query("tag",{limit:"all"}),y(this,h,this.store.peekAll("tag")),w(this,h).forEach((e=>{e.isNew&&e.destroyRecord()}))}handleChange(e){this.selectedTags.forEach((t=>{!e.includes(t)&&t.isNew&&t.destroyRecord()})),this.selectedTags=e}*confirm(){if(0!==this.selectedTags.length)return this.errors.clear(),yield this.args.data.confirm.perform(this.selectedTags)
2246
+ function f(e,t,i,r){i&&Object.defineProperty(e,t,{enumerable:i.enumerable,configurable:i.configurable,writable:i.writable,value:i.initializer?i.initializer.call(r):void 0})}function g(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")}function v(e,t){return e.get(y(e,t))}function y(e,t,i){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:i
2247
+ throw new TypeError("Private element is not present on this object")}function w(e,t,i,r,n){var a={}
2248
+ return Object.keys(r).forEach((function(e){a[e]=r[e]})),a.enumerable=!!a.enumerable,a.configurable=!!a.configurable,("value"in a||a.initializer)&&(a.writable=!0),a=i.slice().reverse().reduce((function(i,r){return r(e,t,i)||i}),a),n&&void 0!==a.initializer&&(a.value=a.initializer?a.initializer.call(n):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
2249
+ const E=Ember.HTMLBars.template({id:"cFeYzk6X",block:'{"symbols":["@close"],"statements":[[10,"div"],[14,0,"modal-content"],[14,"data-test-modal","add-tags"],[12],[2,"\\n "],[10,"header"],[14,0,"modal-header"],[12],[2,"\\n "],[10,"h1"],[12],[2,"Add tags"],[13],[2,"\\n "],[13],[2,"\\n "],[11,"button"],[24,0,"close"],[24,"title","Close"],[24,"data-test-button","close"],[24,4,"button"],[4,[38,1],["click",[30,[36,0],[[32,1],false],null]],null],[12],[1,[30,[36,2],["close"],null]],[10,"span"],[14,0,"hidden"],[12],[2,"Close"],[13],[13],[2,"\\n\\n "],[10,"div"],[14,0,"modal-body mb9"],[12],[2,"\\n "],[10,"p"],[12],[2,"\\n "],[8,"gh-form-group",[],[["@errors","@hasValidated","@property"],[[32,0,["errors"]],[32,0,["hasValidated"]],"tags"]],[["default"],[{"statements":[[2,"\\n "],[8,"gh-token-input",[],[["@extra","@onChange","@onCreate","@options","@renderInPlace","@selected","@showCreateWhen","@triggerId","@placeholder"],[[30,[36,4],null,[["tokenComponent"],[[30,[36,3],["gh-token-input/tag-token"],null]]]],[32,0,["handleChange"]],[32,0,["handleCreate"]],[32,0,["availableTags"]],true,[32,0,["selectedTags"]],[32,0,["shouldAllowCreate"]],[32,0,["triggerId"]],"Select or enter tags..."]],null],[2,"\\n "],[8,"gh-error-message",[],[["@errors","@property"],[[32,0,["errors"]],"tags"]],null],[2,"\\n "]],"parameters":[]}]]],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n\\n "],[10,"div"],[14,0,"modal-footer"],[12],[2,"\\n "],[11,"button"],[24,0,"gh-btn"],[24,"data-test-button","cancel"],[24,4,"button"],[4,[38,1],["click",[30,[36,0],[[32,1],false],null]],null],[12],[10,"span"],[12],[2,"Cancel"],[13],[13],[2,"\\n\\n "],[8,"gh-task-button",[[24,"data-test-button","confirm"]],[["@buttonText","@runningText","@showSuccess","@task","@class"],["Add","Adding",false,[32,0,["confirm"]],"gh-btn gh-btn-primary gh-btn-icon"]],null],[2,"\\n\\n "],[13],[2,"\\n"],[13],[2,"\\n"]],"hasEval":false,"upvars":["fn","on","svg-jar","component","hash"]}',moduleName:"ghost-admin/components/posts-list/modals/add-tag.hbs"}),{Errors:k}=i.default
2250
+ let P=e.default=(n=Ember.inject.service,a=Ember._tracked,s=Ember._tracked,o=Ember._action,l=Ember._action,u=Ember._action,h=new WeakMap,b=new WeakSet,d=class extends t.default{get availableTags(){return v(h,this)||[]}get hasValidated(){return["tags"]}constructor(){var e,t
2251
+ super(...arguments),g(e=this,t=b),t.add(e),f(this,"store",c,this),function(e,t,i){g(e,t),t.set(e,i)}(this,h,null),f(this,"selectedTags",p,this),f(this,"errors",m,this),this.store.query("tag",{limit:"all"}),function(e,t,i){e.set(y(e,t),i)}(h,this,this.store.peekAll("tag")),v(h,this).forEach((e=>{e.isNew&&e.destroyRecord()}))}handleChange(e){this.selectedTags.forEach((t=>{!e.includes(t)&&t.isNew&&t.destroyRecord()})),this.selectedTags=e}*confirm(){if(0!==this.selectedTags.length)return this.errors.clear(),yield this.args.data.confirm.perform(this.selectedTags)
2258
2252
  this.errors.add("tags","Select at least one tag")}handleCreate(e){let t=e.trim()
2259
- if(!!v(this,b,T).call(this,t,this.selectedTags))return
2260
- let i=v(this,b,T).call(this,t,w(this,h))
2261
- i||(i=this.store.createRecord("tag",{name:t}),i.updateVisibility()),this.selectedTags=this.selectedTags.concat(i)}shouldAllowCreate(e){return!v(this,b,T).call(this,e.trim(),w(this,h))}},c=P(d.prototype,"store",[n],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),p=P(d.prototype,"selectedTags",[a],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return[]}}),m=P(d.prototype,"errors",[s],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return _.create()}}),P(d.prototype,"handleChange",[o],Object.getOwnPropertyDescriptor(d.prototype,"handleChange"),d.prototype),P(d.prototype,"confirm",[r.task],Object.getOwnPropertyDescriptor(d.prototype,"confirm"),d.prototype),P(d.prototype,"handleCreate",[l],Object.getOwnPropertyDescriptor(d.prototype,"handleCreate"),d.prototype),P(d.prototype,"shouldAllowCreate",[u],Object.getOwnPropertyDescriptor(d.prototype,"shouldAllowCreate"),d.prototype),d)
2262
- function T(e,t){return t.find((function(t){return t.name.toLowerCase()===e.toLowerCase()}))}Ember._setComponentTemplate(O,j)})),define("ghost-admin/components/posts-list/modals/delete-posts",["exports"],(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
2253
+ if(!!y(b,this,O).call(this,t,this.selectedTags))return
2254
+ let i=y(b,this,O).call(this,t,v(h,this))
2255
+ i||(i=this.store.createRecord("tag",{name:t}),i.updateVisibility()),this.selectedTags=this.selectedTags.concat(i)}shouldAllowCreate(e){return!y(b,this,O).call(this,e.trim(),v(h,this))}},c=w(d.prototype,"store",[n],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),p=w(d.prototype,"selectedTags",[a],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return[]}}),m=w(d.prototype,"errors",[s],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return k.create()}}),w(d.prototype,"handleChange",[o],Object.getOwnPropertyDescriptor(d.prototype,"handleChange"),d.prototype),w(d.prototype,"confirm",[r.task],Object.getOwnPropertyDescriptor(d.prototype,"confirm"),d.prototype),w(d.prototype,"handleCreate",[l],Object.getOwnPropertyDescriptor(d.prototype,"handleCreate"),d.prototype),w(d.prototype,"shouldAllowCreate",[u],Object.getOwnPropertyDescriptor(d.prototype,"shouldAllowCreate"),d.prototype),d)
2256
+ function O(e,t){return t.find((function(t){return t.name.toLowerCase()===e.toLowerCase()}))}Ember._setComponentTemplate(E,P)})),define("ghost-admin/components/posts-list/modals/delete-posts",["exports"],(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
2263
2257
  const t=Ember.HTMLBars.template({id:"vlaJisPP",block:'{"symbols":["@data","@close"],"statements":[[10,"div"],[14,0,"modal-content"],[14,"data-test-modal","delete-posts"],[12],[2,"\\n "],[10,"header"],[14,0,"modal-header"],[12],[2,"\\n "],[10,"h1"],[12],[2,"Are you sure you want to delete "],[1,[30,[36,1],[[32,1,["selectionList","isSingle"]],[30,[36,0],["this ",[32,1,["type"]]],null],[30,[36,0],["these ",[32,1,["type"]],"s"],null]],null]],[2,"?"],[13],[2,"\\n "],[13],[2,"\\n "],[11,"button"],[24,0,"close"],[24,"title","Close"],[24,"data-test-button","close"],[24,4,"button"],[4,[38,3],["click",[30,[36,2],[[32,2],false],null]],null],[12],[1,[30,[36,4],["close"],null]],[10,"span"],[14,0,"hidden"],[12],[2,"Close"],[13],[13],[2,"\\n\\n "],[10,"div"],[14,0,"modal-body mb9"],[12],[2,"\\n "],[10,"p"],[12],[2,"\\n You’re about to delete "],[10,"strong"],[12],[1,[30,[36,1],[[32,1,["selectionList","isSingle"]],[30,[36,0],["\\"",[32,1,["selectionList","first","title"]],"\\""],null],[30,[36,0],[[32,1,["selectionList","count"]]," ",[32,1,["type"]],"s"],null]],null]],[13],[2,".\\n This is permanent! We warned you, k?\\n "],[13],[2,"\\n "],[13],[2,"\\n\\n "],[10,"div"],[14,0,"modal-footer"],[12],[2,"\\n "],[11,"button"],[24,0,"gh-btn"],[24,"data-test-button","cancel"],[24,4,"button"],[4,[38,3],["click",[30,[36,2],[[32,2],false],null]],null],[12],[10,"span"],[12],[2,"Cancel"],[13],[13],[2,"\\n\\n "],[8,"gh-task-button",[[24,"data-test-button","confirm"]],[["@buttonText","@runningText","@showSuccess","@task","@taskArgs","@class"],["Delete","Deleting",false,[32,1,["confirm"]],[32,2],"gh-btn gh-btn-red gh-btn-icon"]],null],[2,"\\n\\n "],[13],[2,"\\n"],[13],[2,"\\n"]],"hasEval":false,"upvars":["concat","if","fn","on","svg-jar"]}',moduleName:"ghost-admin/components/posts-list/modals/delete-posts.hbs"})
2264
2258
  e.default=Ember._setComponentTemplate(t,Ember._templateOnlyComponent())})),define("ghost-admin/components/posts-list/modals/edit-posts-access",["exports","@glimmer/component","ghost-admin/mixins/validation-engine","ember-concurrency"],(function(e,t,i,r){var n,a,s,o,l,u,d,c,p
2265
2259
  function m(e,t,i,r){i&&Object.defineProperty(e,t,{enumerable:i.enumerable,configurable:i.configurable,writable:i.writable,value:i.initializer?i.initializer.call(r):void 0})}function h(e,t,i,r,n){var a={}
@@ -2279,12 +2273,10 @@ var i=e[Symbol.toPrimitive]
2279
2273
  if(void 0!==i){var r=i.call(e,t||"default")
2280
2274
  if("object"!=typeof r)return r
2281
2275
  throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string")
2282
- return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function b(e,t){return function(e,t){return t.get?t.get.call(e):t.value}(e,g(t,e))}function f(e,t,i){return function(e,t,i){if(t.set)t.set.call(e,i)
2283
- else{if(!t.writable)throw new TypeError("attempted to set read only private field")
2284
- t.value=i}}(e,g(t,e),i),i}function g(e,t){return e.get(function(e,t,i){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:i
2285
- throw new TypeError("Private element is not present on this object")}(e,t))}function v(e,t,i,r,n){var a={}
2276
+ return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function b(e,t){return e.get(g(e,t))}function f(e,t,i){return e.set(g(e,t),i),i}function g(e,t,i){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:i
2277
+ throw new TypeError("Private element is not present on this object")}function v(e,t,i,r,n){var a={}
2286
2278
  return Object.keys(r).forEach((function(e){a[e]=r[e]})),a.enumerable=!!a.enumerable,a.configurable=!!a.configurable,("value"in a||a.initializer)&&(a.writable=!0),a=i.slice().reverse().reduce((function(i,r){return r(e,t,i)||i}),a),n&&void 0!==a.initializer&&(a.value=a.initializer?a.initializer.call(n):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
2287
- e.default=(t=Ember._tracked,i=Ember._tracked,r=Ember._tracked,n=Ember._tracked,d=new WeakMap,c=new WeakMap,a=class e{constructor(e){p(this,"selectedIds",s,this),p(this,"inverted",o,this),p(this,"lastSelectedId",l,this),p(this,"lastShiftSelectionGroup",u,this),h(this,"enabled",!0),h(this,"infinityModel",void 0),m(this,d,{writable:!0,value:!1}),m(this,c,{writable:!0,value:!1}),this.infinityModel=e??{draftInfinityModel:{content:[]}}}freeze(){f(this,d,!0)}unfreeze(){f(this,d,!1),b(this,c)&&(this.clearSelection(),f(this,c,!1))}clearOnNextUnfreeze(){f(this,c,!0)}get allFilter(){const e=this.infinityModel
2279
+ e.default=(t=Ember._tracked,i=Ember._tracked,r=Ember._tracked,n=Ember._tracked,d=new WeakMap,c=new WeakMap,a=class e{constructor(e){p(this,"selectedIds",s,this),p(this,"inverted",o,this),p(this,"lastSelectedId",l,this),p(this,"lastShiftSelectionGroup",u,this),h(this,"enabled",!0),h(this,"infinityModel",void 0),m(this,d,!1),m(this,c,!1),this.infinityModel=e??{draftInfinityModel:{content:[]}}}freeze(){f(d,this,!0)}unfreeze(){f(d,this,!1),b(c,this)&&(this.clearSelection(),f(c,this,!1))}clearOnNextUnfreeze(){f(c,this,!0)}get allFilter(){const e=this.infinityModel
2288
2280
  for(const t in e)return e[t].extraParams?.allFilter??""
2289
2281
  return""}get filter(){return this.inverted?this.allFilter?0===this.selectedIds.size?this.allFilter:`(${this.allFilter})+id:-['${[...this.selectedIds].join("','")}']`:0===this.selectedIds.size?"":`id:-['${[...this.selectedIds].join("','")}']`:0===this.selectedIds.size?"id:nothing":`id:['${[...this.selectedIds].join("','")}']`}cloneEmpty(){return new e(this.infinityModel)}get availableModels(){const e=this.infinityModel,t=[]
2290
2282
  for(const i in e)for(const r of e[i].content)this.isSelected(r.id)&&t.push(r)
@@ -2292,9 +2284,9 @@ return t}get first(){return this.availableModels[0]}get isSingle(){return 1===th
2292
2284
  const e=this.infinityModel
2293
2285
  let t
2294
2286
  for(const i in e)t+=e[i].meta?.pagination?.total
2295
- return Math.max((t??0)-this.selectedIds.size,1)}isSelected(e){return this.inverted?!this.selectedIds.has(e):this.selectedIds.has(e)}toggleItem(e){b(this,d)||(this.lastShiftSelectionGroup=new Set,this.selectedIds.has(e)?(this.selectedIds.delete(e),this.inverted?this.lastSelectedId=e:this.lastSelectedId===e&&(this.lastSelectedId=null)):(this.selectedIds.add(e),this.inverted,this.lastSelectedId=e),this.selectedIds=this.selectedIds)}clearUnavailableItems(){const e=new Set,t=this.infinityModel
2287
+ return Math.max((t??0)-this.selectedIds.size,1)}isSelected(e){return this.inverted?!this.selectedIds.has(e):this.selectedIds.has(e)}toggleItem(e){b(d,this)||(this.lastShiftSelectionGroup=new Set,this.selectedIds.has(e)?(this.selectedIds.delete(e),this.inverted?this.lastSelectedId=e:this.lastSelectedId===e&&(this.lastSelectedId=null)):(this.selectedIds.add(e),this.inverted,this.lastSelectedId=e),this.selectedIds=this.selectedIds)}clearUnavailableItems(){const e=new Set,t=this.infinityModel
2296
2288
  for(const i in t)for(const r of t[i].content)this.selectedIds.has(r.id)&&e.add(r.id)
2297
- this.selectedIds=e}shiftItem(e){if(b(this,d))return
2289
+ this.selectedIds=e}shiftItem(e){if(b(d,this))return
2298
2290
  if(null===this.lastSelectedId)return void this.toggleItem(e)
2299
2291
  for(const n of this.lastShiftSelectionGroup)this.inverted?this.selectedIds.add(n):this.selectedIds.delete(n)
2300
2292
  this.lastShiftSelectionGroup=new Set
@@ -2302,7 +2294,7 @@ let t=!1
2302
2294
  const i=["scheduledInfinityModel","draftInfinityModel","publishedAndSentInfinityModel"],r=this.infinityModel
2303
2295
  for(const n of i){const i=r[n]
2304
2296
  if(i?.content&&0!==i.content.length)for(const r of i.content){if(r.id===this.lastSelectedId||r.id===e){if(t){this.lastShiftSelectionGroup.add(r.id),this.inverted?this.selectedIds.delete(r.id):this.selectedIds.add(r.id),t=!1
2305
- break}if(t=!0,r.id===this.lastSelectedId)continue}t&&(this.lastShiftSelectionGroup.add(r.id),this.inverted?this.selectedIds.delete(r.id):this.selectedIds.add(r.id))}}this.selectedIds=this.selectedIds}selectAll(){b(this,d)||(this.selectedIds=new Set,this.inverted=!this.inverted,this.lastSelectedId=null)}clearSelection(e={}){b(this,d)&&!e.force||(this.selectedIds=new Set,this.inverted=!1,this.lastSelectedId=null)}},s=v(a.prototype,"selectedIds",[t],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return new Set}}),o=v(a.prototype,"inverted",[i],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return!1}}),l=v(a.prototype,"lastSelectedId",[r],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return null}}),u=v(a.prototype,"lastShiftSelectionGroup",[n],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return new Set}}),a)}))
2297
+ break}if(t=!0,r.id===this.lastSelectedId)continue}t&&(this.lastShiftSelectionGroup.add(r.id),this.inverted?this.selectedIds.delete(r.id):this.selectedIds.add(r.id))}}this.selectedIds=this.selectedIds}selectAll(){b(d,this)||(this.selectedIds=new Set,this.inverted=!this.inverted,this.lastSelectedId=null)}clearSelection(e={}){b(d,this)&&!e.force||(this.selectedIds=new Set,this.inverted=!1,this.lastSelectedId=null)}},s=v(a.prototype,"selectedIds",[t],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return new Set}}),o=v(a.prototype,"inverted",[i],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return!1}}),l=v(a.prototype,"lastSelectedId",[r],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return null}}),u=v(a.prototype,"lastShiftSelectionGroup",[n],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return new Set}}),a)}))
2306
2298
  define("ghost-admin/components/posts/analytics",["exports","@glimmer/component","ghost-admin/components/modals/delete-post","ghost-admin/components/modal-post-success","animejs/lib/anime.es.js","ember-concurrency","ghost-admin/decorators/inject"],(function(e,t,i,r,n,a,s){var o,l,u,d,c,p,m,h,b,f,g,v,y,w,E,k,P,O,_,j,T,z,x,S,C,M,D,A,L,N,I,R,F,U,B,V,H,q,$,Y,W,G,K,J,X,Z,Q,ee,te,ie,re,ne,ae,se,oe,le,ue,de,ce,pe,me
2307
2299
  function he(e,t,i,r){i&&Object.defineProperty(e,t,{enumerable:i.enumerable,configurable:i.configurable,writable:i.writable,value:i.initializer?i.initializer.call(r):void 0})}function be(e,t,i){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e
2308
2300
  var i=e[Symbol.toPrimitive]
@@ -2312,11 +2304,9 @@ throw new TypeError("@@toPrimitive must return a primitive value.")}return("stri
2312
2304
  return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function fe(e,t,i,r,n){var a={}
2313
2305
  return Object.keys(r).forEach((function(e){a[e]=r[e]})),a.enumerable=!!a.enumerable,a.configurable=!!a.configurable,("value"in a||a.initializer)&&(a.writable=!0),a=i.slice().reverse().reduce((function(i,r){return r(e,t,i)||i}),a),n&&void 0!==a.initializer&&(a.value=a.initializer?a.initializer.call(n):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
2314
2306
  const ge=Ember.HTMLBars.template({id:"1hYuDOwT",block:'{"symbols":["mention","tabs","publishedAt","@post"],"statements":[[11,"section"],[16,0,[31,["gh-canvas ",[30,[36,0],[[30,[36,14],["audienceFeedback"],null],"feature-audienceFeedback"],null]]]],[4,[38,15],[[32,0,["loadData"]]],null],[12],[2,"\\n "],[8,"gh-canvas-header",[[24,0,"gh-canvas-header gh-post-analytics-header"]],[[],[]],[["default"],[{"statements":[[2,"\\n "],[10,"div"],[14,0,"flex flex-column flex-grow-1"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-canvas-breadcrumb"],[12],[2,"\\n "],[8,"link-to",[],[["@route"],["posts"]],[["default"],[{"statements":[[2,"\\n Posts\\n "]],"parameters":[]}]]],[2,"\\n "],[1,[30,[36,8],["arrow-right-small"],null]],[2,"Analytics\\n "],[13],[2,"\\n "],[10,"h2"],[14,0,"gh-canvas-title gh-post-title"],[12],[2,"\\n "],[1,[32,0,["post","title"]]],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"gh-post-analytics-meta"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-post-analytics-meta-text"],[12],[2,"\\n"],[6,[37,0],[[32,0,["post","hasBeenEmailed"]]],null,[["default","else"],[{"statements":[[6,[37,0],[[32,0,["post","emailOnly"]]],null,[["default","else"],[{"statements":[[2," Sent\\n"]],"parameters":[]},{"statements":[[2," Published and sent\\n"]],"parameters":[]}]]]],"parameters":[]},{"statements":[[2," Published\\n"],[6,[37,0],[[32,4,["didEmailFail"]]],null,[["default","else"],[{"statements":[[2," but failed to send\\n"]],"parameters":[]},{"statements":[[2," on your site\\n"]],"parameters":[]}]]]],"parameters":[]}]]],[2,"\\n"],[6,[37,17],[[30,[36,16],[[32,0,["post","publishedAtUTC"]]],null]],null,[["default"],[{"statements":[[2," on\\n "],[1,[30,[36,13],[[32,3],"D MMM YYYY"],null]],[2,"\\n at\\n "],[1,[30,[36,13],[[32,3],"HH:mm"],null]],[2,"\\n"]],"parameters":[3]}]]],[2," "],[13],[2,"\\n "],[10,"div"],[14,5,"display: flex; gap: 8px;"],[12],[2,"\\n"],[6,[37,0],[[30,[36,19],[[30,[36,18],[[32,0,["session","user"]]],null],[32,0,["config","stats"]]],null]],null,[["default"],[{"statements":[[2," "],[8,"link-to",[[24,0,"gh-btn gh-btn-icon"]],[["@route","@query"],["stats",[30,[36,11],null,[["pathname"],[[30,[36,10],["/",[32,0,["post","slug"]],"/"],null]]]]]],[["default"],[{"statements":[[2,"\\n "],[10,"span"],[12],[1,[30,[36,8],["stats"],[["title"],["Post traffic stats"]]]],[2," Traffic stats"],[13],[2,"\\n "]],"parameters":[]}]]],[2,"\\n"]],"parameters":[]}]]],[2," "],[8,"gh-task-button",[],[["@buttonText","@task","@showIcon","@idleIcon","@successText","@class","@successClass"],["Refresh",[32,0,["fetchPostTask"]],true,"reload","Refreshed","gh-btn gh-btn-icon refresh","gh-btn gh-btn-icon refresh"]],null],[2,"\\n"],[6,[37,4],[[32,0,["post","emailOnly"]]],null,[["default"],[{"statements":[[2," "],[11,"button"],[24,0,"gh-btn gh-btn-icon share"],[24,4,"button"],[4,[38,12],["click",[32,0,["togglePublishFlowModal"]]],null],[12],[2,"\\n "],[10,"span"],[12],[1,[30,[36,8],["share"],[["title"],["Share post"]]]],[2," Share"],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]}]]],[2,"\\n "],[10,"span"],[14,0,"dropdown"],[12],[2,"\\n "],[8,"gh-dropdown-button",[[24,"data-test-button","analytics-actions"]],[["@dropdownName","@classNames","@title"],["analytics-actions-menu","gh-btn gh-btn-icon icon-only gh-btn-action-icon","Analytics Actions"]],[["default"],[{"statements":[[2,"\\n "],[10,"span"],[12],[2,"\\n "],[1,[30,[36,8],["dotdotdot"],null]],[2,"\\n "],[10,"span"],[14,0,"hidden"],[12],[2,"Actions"],[13],[2,"\\n "],[13],[2,"\\n "]],"parameters":[]}]]],[2,"\\n "],[8,"gh-dropdown",[],[["@name","@tagName","@classNames","@closeOnClick"],["analytics-actions-menu","ul","gh-analytics-actions-menu dropdown-menu dropdown-triangle-top-right",true]],[["default"],[{"statements":[[2,"\\n "],[10,"li"],[12],[2,"\\n "],[8,"link-to",[[24,0,"edit-post"]],[["@route","@models"],["lexical-editor.edit",[30,[36,20],[[32,0,["post","displayName"]],[32,0,["post","id"]]],null]]],[["default"],[{"statements":[[2,"Edit post"]],"parameters":[]}]]],[2,"\\n "],[13],[2,"\\n "],[10,"li"],[12],[2,"\\n "],[10,"a"],[14,0,"view-browser"],[15,6,[31,[[32,0,["post","url"]]]]],[14,"target","_blank"],[14,"rel","noopener noreferrer"],[12],[2,"View in browser"],[13],[2,"\\n "],[13],[2,"\\n "],[10,"li"],[12],[2,"\\n "],[11,"button"],[24,0,"delete-post mr2"],[24,"data-test-button","delete-post"],[24,4,"button"],[4,[38,12],["click",[32,0,["confirmDeleteMember"]]],null],[12],[2,"\\n "],[10,"span"],[14,0,"red"],[12],[2,"Delete post"],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "]],"parameters":[]}]]],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "]],"parameters":[]}]]],[2,"\\n\\n "],[8,"tabs/tabs",[[16,0,[31,["gh-tabs-analytics ",[30,[36,0],[[30,[36,21],[[32,0,["post","hasBeenEmailed"]],null],null],"no-tabs"],null]]]]],[["@forceRender"],[true]],[["default"],[{"statements":[[2,"\\n"],[6,[37,0],[[32,0,["post","hasBeenEmailed"]]],null,[["default"],[{"statements":[[2," "],[8,[32,2,["tab"]],[],[[],[]],[["default"],[{"statements":[[2,"\\n "],[10,"h3"],[12],[2,"\\n "],[1,[30,[36,8],["analytics-tab-sent-large"],null]],[2,"\\n "],[11,"span"],[24,0,"animated-number sent"],[4,[38,6],[[32,0,["applyClasses"]],[32,0,["post","email","emailCount"]]],null],[12],[1,[30,[36,7],[[32,0,["post","email","emailCount"]],[32,0,["previousSentCount"]]],null]],[13],[2,"\\n "],[13],[2,"\\n "],[10,"p"],[12],[1,[30,[36,8],["analytics-tab-sent"],null]],[10,"span"],[14,0,"analytics-tab-label"],[12],[2,"Sent"],[13],[13],[2,"\\n "]],"parameters":[]}]]],[2,"\\n\\n "],[8,[32,2,["tabPanel"]],[],[[],[]],[["default"],[{"statements":[[2,"\\n "],[8,"posts/post-activity-feed",[],[["@post","@eventType","@linkQuery"],[[32,0,["post"]],"sent",[30,[36,11],null,[["filterParam"],[[30,[36,10],["emails.post_id:",[32,0,["post","id"]]],null]]]]]],null],[2,"\\n "]],"parameters":[]}]]],[2,"\\n\\n"],[6,[37,0],[[32,0,["post","showEmailOpenAnalytics"]]],null,[["default"],[{"statements":[[2," "],[8,[32,2,["tab"]],[],[[],[]],[["default"],[{"statements":[[2,"\\n "],[10,"h3"],[12],[2,"\\n "],[1,[30,[36,8],["analytics-tab-opened-large"],null]],[2,"\\n "],[11,"span"],[24,0,"animated-number opened"],[4,[38,6],[[32,0,["applyClasses"]],[32,0,["post","email","openedCount"]]],null],[12],[1,[30,[36,7],[[32,0,["post","email","openedCount"]],[32,0,["previousOpenedCount"]]],null]],[13],[2,"\\n "],[13],[2,"\\n "],[10,"p"],[12],[1,[30,[36,8],["analytics-tab-opened"],null]],[10,"span"],[14,0,"analytics-tab-label"],[12],[2,"Opened"],[10,"span"],[14,0,"analytics-tab-percentage"],[12],[2," — "],[1,[32,0,["post","email","openRate"]]],[2,"%"],[13],[13],[13],[2,"\\n "]],"parameters":[]}]]],[2,"\\n\\n "],[8,[32,2,["tabPanel"]],[],[[],[]],[["default"],[{"statements":[[2,"\\n "],[8,"posts/post-activity-feed",[],[["@post","@eventType","@linkQuery"],[[32,0,["post"]],"opened",[30,[36,11],null,[["filterParam"],[[30,[36,10],["opened_emails.post_id:",[32,0,["post","id"]]],null]]]]]],null],[2,"\\n "]],"parameters":[]}]]],[2,"\\n"]],"parameters":[]}]]],[2,"\\n"],[6,[37,0],[[32,0,["post","showEmailClickAnalytics"]]],null,[["default"],[{"statements":[[2," "],[8,[32,2,["tab"]],[],[[],[]],[["default"],[{"statements":[[2,"\\n "],[10,"h3"],[12],[2,"\\n "],[1,[30,[36,8],["analytics-tab-clicked-large"],null]],[2,"\\n "],[11,"span"],[24,0,"animated-number clicked"],[4,[38,6],[[32,0,["applyClasses"]],[32,0,["post","count","clicks"]]],null],[12],[1,[30,[36,7],[[32,0,["post","count","clicks"]],[32,0,["previousClickedCount"]]],null]],[13],[2,"\\n "],[13],[2,"\\n "],[10,"p"],[12],[1,[30,[36,8],["analytics-tab-clicked"],null]],[10,"span"],[14,0,"analytics-tab-label"],[12],[2,"Clicked"],[10,"span"],[14,0,"analytics-tab-percentage"],[12],[2," — "],[1,[32,0,["post","clickRate"]]],[2,"%"],[13],[13],[13],[2,"\\n "]],"parameters":[]}]]],[2,"\\n\\n "],[8,[32,2,["tabPanel"]],[],[[],[]],[["default"],[{"statements":[[2,"\\n "],[8,"posts/post-activity-feed",[],[["@post","@eventType","@linkQuery"],[[32,0,["post"]],"clicked",[30,[36,11],null,[["filterParam"],[[30,[36,10],["clicked_links.post_id:",[32,0,["post","id"]]],null]]]]]],null],[2,"\\n "]],"parameters":[]}]]],[2,"\\n"]],"parameters":[]}]]],[2,"\\n"],[6,[37,0],[[32,0,["post","isFeedbackEnabledForEmail"]]],null,[["default"],[{"statements":[[2," "],[8,[32,2,["tab"]],[],[[],[]],[["default"],[{"statements":[[2,"\\n "],[10,"h3"],[12],[2,"\\n "],[1,[30,[36,8],["analytics-tab-feedback-large"],null]],[2,"\\n "],[11,"span"],[24,0,"animated-number feedback"],[4,[38,6],[[32,0,["applyClasses"]],[32,0,["totalFeedback"]]],null],[12],[1,[30,[36,7],[[32,0,["totalFeedback"]],[32,0,["previousFeedbackCount"]]],null]],[13],[2,"\\n "],[13],[2,"\\n "],[10,"p"],[12],[1,[30,[36,8],["analytics-tab-feedback"],null]],[10,"span"],[14,0,"analytics-tab-label"],[12],[2,"Feedback"],[10,"span"],[14,0,"analytics-tab-percentage"],[12],[2," — "],[1,[32,0,["post","sentiment"]]],[2,"%"],[13],[13],[13],[2,"\\n "]],"parameters":[]}]]],[2,"\\n\\n "],[8,[32,2,["tabPanel"]],[],[[],[]],[["default"],[{"statements":[[2,"\\n "],[8,"posts/post-activity-feed",[],[["@post","@eventType","@data"],[[32,0,["post"]],"feedback",[32,0,["feedbackChartData"]]]],null],[2,"\\n "]],"parameters":[]}]]],[2,"\\n"]],"parameters":[]}]]]],"parameters":[]}]]],[2,"\\n"],[6,[37,0],[[32,0,["post","showAttributionAnalytics"]]],null,[["default"],[{"statements":[[2," "],[8,[32,2,["tab"]],[],[[],[]],[["default"],[{"statements":[[2,"\\n "],[10,"h3"],[12],[2,"\\n "],[1,[30,[36,8],["analytics-tab-conversions-large"],null]],[2,"\\n"],[6,[37,0],[[32,0,["post","hasBeenEmailed"]]],null,[["default","else"],[{"statements":[[2," "],[11,"span"],[24,0,"animated-number conversions"],[4,[38,6],[[32,0,["applyClasses"]],[32,0,["post","count","conversions"]]],null],[12],[1,[30,[36,7],[[32,0,["post","count","conversions"]],[32,0,["previousConversionsCount"]]],null]],[13],[2,"\\n"]],"parameters":[]},{"statements":[[2," Conversions\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n "],[10,"p"],[12],[1,[30,[36,8],["analytics-tab-conversions"],null]],[10,"span"],[14,0,"analytics-tab-label"],[12],[1,[30,[36,9],[[32,0,["post","count","conversions"]],"Conversions"],[["without-count"],[true]]]],[13],[13],[2,"\\n "]],"parameters":[]}]]],[2,"\\n\\n "],[8,[32,2,["tabPanel"]],[],[[],[]],[["default"],[{"statements":[[2,"\\n "],[8,"posts/post-activity-feed",[],[["@post","@eventType"],[[32,0,["post"]],"conversion"]],null],[2,"\\n "]],"parameters":[]}]]],[2,"\\n"]],"parameters":[]}]]],[2," "]],"parameters":[2]}]]],[2,"\\n\\n"],[6,[37,0],[[32,0,["isLoaded"]]],null,[["default","else"],[{"statements":[[2," "],[10,"div"],[15,0,[31,["gh-post-analytics-split ",[30,[36,0],[[32,0,["showMentions"]],"gh-post-analytics-with-mentions"],null]]]],[12],[2,"\\n"],[6,[37,0],[[32,0,["showLinks"]]],null,[["default"],[{"statements":[[6,[37,0],[[30,[36,5],[[32,0,["links"]]],null]],null,[["default","else"],[{"statements":[],"parameters":[]},{"statements":[[2," "],[8,"posts/links-table",[],[["@links","@updateLink","@showSuccess"],[[32,0,["links"]],[32,0,["updateLink"]],[32,0,["showSuccess"]]]],null],[2,"\\n"]],"parameters":[]}]]]],"parameters":[]}]]],[2,"\\n"],[6,[37,0],[[32,0,["showMentions"]]],null,[["default"],[{"statements":[[2," "],[10,"div"],[15,0,[31,["gh-post-analytics-box gh-post-analytics-mentions ",[30,[36,4],[[32,0,["showLinks"]],"is-full-width"],null]]]],[12],[2,"\\n "],[10,"h3"],[14,0,"gh-post-analytics-mentions-header"],[12],[2,"Mentions"],[13],[2,"\\n "],[10,"div"],[14,0,"gh-post-analytics-mentions-list"],[12],[2,"\\n"],[6,[37,0],[[32,0,["mentions"]]],null,[["default","else"],[{"statements":[[6,[37,3],[[30,[36,2],[[30,[36,2],[[32,0,["mentions"]]],null]],null]],null,[["default"],[{"statements":[[2," "],[10,"a"],[15,6,[31,[[32,1,["source"]]]]],[14,0,"gh-post-analytics-mention"],[14,"rel","noreferrer noopener"],[14,"target","_blank"],[12],[2,"\\n "],[10,"img"],[15,"src",[31,[[32,1,["sourceFavicon"]]]]],[15,"alt",[31,[[32,1,["sourceSiteTitle"]]]]],[14,0,"w5 h5 mr2 flex-shrink-0"],[12],[13],[2,"\\n "],[10,"span"],[14,0,"gh-post-analytics-mention-title"],[12],[1,[30,[36,0],[[32,1,["sourceTitle"]],[32,1,["sourceTitle"]],[32,1,["source"]]],null]],[13],[2,"\\n "],[10,"span"],[14,0,"gh-post-analytics-mention-timestamp"],[12],[1,[30,[36,1],[[32,1,["timestamp"]]],null]],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[1]}]]]],"parameters":[]},{"statements":[[2," "],[10,"div"],[12],[2,"\\n "],[10,"p"],[12],[2,"No mentions yet."],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n"],[6,[37,0],[[32,0,["mentions"]]],null,[["default"],[{"statements":[[2," "],[10,"div"],[14,0,"gh-dashboard-list-footer"],[12],[2,"\\n "],[8,"link-to",[],[["@route","@model"],["posts.mentions",[32,0,["post","id"]]]],[["default"],[{"statements":[[2,"View all mentions →"]],"parameters":[]}]]],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n\\n "],[10,"div"],[14,0,"gh-post-analytics-box resources"],[12],[2,"\\n "],[10,"a"],[14,6,"https://ghost.org/help/post-analytics/"],[14,"target","_blank"],[14,0,"gh-post-analytics-resource"],[14,"rel","noopener noreferrer"],[12],[2,"\\n "],[10,"div"],[14,0,"thumbnail"],[14,5,"background-image: url(assets/img/marketing/analytics-1-aa2d72c4e7347a3cb5666d07916b92aa.jpg);"],[12],[13],[2,"\\n "],[10,"div"],[14,0,"flex flex-column justify-between"],[12],[2,"\\n "],[10,"div"],[12],[2,"\\n "],[10,"h4"],[14,0,"gh-main-section-header small bn"],[12],[2,"\\n Ghost help\\n "],[13],[2,"\\n "],[10,"div"],[12],[2,"\\n "],[10,"h3"],[12],[2,"Understanding analytics in Ghost"],[13],[2,"\\n "],[10,"p"],[12],[2,"Find out how to review the performance of your content and get the most out of post analytics in Ghost."],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"gh-btn gh-btn-link"],[12],[2,"Read more →"],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"a"],[14,6,"https://ghost.org/resources/content-distribution/"],[14,"target","_blank"],[14,0,"gh-post-analytics-resource"],[14,"rel","noopener noreferrer"],[12],[2,"\\n "],[10,"div"],[14,0,"thumbnail"],[14,5,"background-image: url(assets/img/marketing/analytics-2-389d53f80041ff98111cce79facf66b8.jpg);"],[12],[13],[2,"\\n "],[10,"div"],[14,0,"flex flex-column justify-between"],[12],[2,"\\n "],[10,"div"],[12],[2,"\\n "],[10,"h4"],[14,0,"gh-main-section-header small bn"],[12],[2,"\\n Ghost resources\\n "],[13],[2,"\\n "],[10,"div"],[12],[2,"\\n "],[10,"h3"],[12],[2,"How to get your content seen online"],[13],[2,"\\n "],[10,"p"],[12],[2,"Use these content distribution tactics to get more people to discover your work and increase engagement."],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"gh-btn gh-btn-link"],[12],[2,"Read more →"],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[10,"div"],[14,0,"gh-post-analytics-loading"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-loading-spinner-outer"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-loading-spinner"],[12],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]}]]],[13]],"hasEval":false,"upvars":["if","moment-from-now","-track-array","each","unless","is-empty","did-update","split-number","svg-jar","gh-pluralize","concat","hash","on","moment-format","feature","did-insert","moment-site-tz","let","gh-user-can-admin","and","array","eq"]}',moduleName:"ghost-admin/components/posts/analytics.hbs"}),ve=[{name:"Free signups",value:"signups"},{name:"Paid conversions",value:"paid"}]
2315
- let ye=e.default=(o=Ember.inject.service,l=Ember.inject.service,u=Ember.inject.service,d=Ember.inject.service,c=Ember.inject.service,p=Ember.inject.service,m=Ember.inject.service,h=Ember.inject.service,b=Ember.inject.service,f=Ember.inject.service,g=Ember.inject.service,v=Ember._tracked,y=Ember._tracked,w=Ember._tracked,E=Ember._tracked,k=Ember._tracked,P=Ember._tracked,O=Ember._tracked,_=Ember._tracked,j=Ember._tracked,T=Ember._tracked,z=Ember._tracked,x=Ember._tracked,S=Ember._tracked,C=Ember._tracked,M=Ember._tracked,D=Ember._action,A=Ember._action,L=Ember._action,N=Ember._action,I=Ember._action,R=Ember._action,F=Ember._action,U=class extends t.default{constructor(){super(...arguments),he(this,"ajax",B,this),he(this,"ghostPaths",V,this),he(this,"settings",H,this),he(this,"membersUtils",q,this),he(this,"utils",$,this),he(this,"feature",Y,this),he(this,"store",W,this),he(this,"router",G,this),he(this,"modals",K,this),he(this,"notifications",J,this),he(this,"session",X,this),he(this,"config",Z,this),he(this,"sources",Q,this),he(this,"links",ee,this),he(this,"mentions",te,this),he(this,"sortColumn",ie,this),he(this,"showSuccess",re,this),he(this,"updateLinkId",ne,this),he(this,"_post",ae,this),he(this,"postCount",se,this),he(this,"showPostCount",oe,this),he(this,"shouldAnimate",le,this),he(this,"previousSentCount",ue,this),he(this,"previousOpenedCount",de,this),he(this,"previousClickedCount",ce,this),he(this,"previousFeedbackCount",pe,this),he(this,"previousConversionsCount",me,this),be(this,"displayOptions",ve),this.checkPublishFlowModal()}openPublishFlowModal(){this.modals.open(r.default,{post:this.post,postCount:this.postCount,showPostCount:this.showPostCount})}async checkPublishFlowModal(){localStorage.getItem("ghost-last-published-post")&&(await this.fetchPostCountTask.perform(),this.showPostCount=!0,this.openPublishFlowModal(),localStorage.removeItem("ghost-last-published-post"))}get post(){return this._post??this.args.post}set post(e){this._post=e}get allowedDisplayOptions(){return this.hasPaidConversionData?this.hasFreeSignups?this.displayOptions:this.displayOptions.filter((e=>"paid"===e.value)):this.displayOptions.filter((e=>"signups"===e.value))}get isDropdownDisabled(){return!this.hasPaidConversionData||!this.hasFreeSignups}get selectedDisplayOption(){return this.hasPaidConversionData?this.hasFreeSignups?this.displayOptions.find((e=>e.value===this.sortColumn))??this.displayOptions[0]:this.displayOptions.find((e=>"paid"===e.value)):this.displayOptions.find((e=>"signups"===e.value))}get selectedSortColumn(){return this.hasPaidConversionData?this.hasFreeSignups?this.sortColumn:"paid":"signups"}get hasPaidConversionData(){return this.sources.some((e=>e.paidConversions>0))}get hasFreeSignups(){return this.sources.some((e=>e.signups>0))}get totalFeedback(){return this.post.count.positive_feedback+this.post.count.negative_feedback}get feedbackChartData(){return{values:[this.post.count.positive_feedback,this.post.count.negative_feedback],labels:["More like this","Less like this"],links:[{filterParam:"(feedback.post_id:'"+this.post.id+"'+feedback.score:1)"},{filterParam:"(feedback.post_id:'"+this.post.id+"'+feedback.score:0)"}],colors:["#F080B2","#8452f633"]}}onDisplayChange(e){this.sortColumn=e.value}setSortColumn(e){this.sortColumn=e}updateLink(e,t){return this._updateLinks.isRunning?this._updateLinks.last:this._updateLinks.perform(e,t)}loadData(){this.showSources?this.fetchReferrersStats():this.sources=[],this.showLinks?this.fetchLinks():this.links=[],this.showMentions?this.fetchMentions():this.mentions=[]}togglePublishFlowModal(){this.showPostCount=!1,this.openPublishFlowModal()}confirmDeleteMember(){this.modals.open(i.default,{post:this.post})}updateLinkData(e){let t
2316
- t=this.links?.length?this.links.map((t=>{let i=e.find((e=>e.link.link_id===t.link.link_id))
2317
- return i?{...i,link:{...i.link,originalTo:i.link.to,to:this.utils.cleanTrackedUrl(i.link.to,!1),title:this.utils.cleanTrackedUrl(i.link.to,!0)}}:t})):e.map((e=>({...e,link:{...e.link,originalTo:e.link.to,to:this.utils.cleanTrackedUrl(e.link.to,!1),title:this.utils.cleanTrackedUrl(e.link.to,!0)}})))
2318
- const i=t.reduce(((e,t)=>(e[t.link.title]?(e[t.link.title].count||(e[t.link.title].count={clicks:0}),e[t.link.title].count.clicks||(e[t.link.title].count.clicks=0),e[t.link.title].count.clicks+=t.count?.clicks??0):e[t.link.title]=t,e)),{})
2319
- this.links=Object.values(i)}async fetchReferrersStats(){try{return this._fetchReferrersStats.isRunning?this._fetchReferrersStats.last:this._fetchReferrersStats.perform()}catch(e){if((0,a.didCancel)(e))return
2307
+ let ye=e.default=(o=Ember.inject.service,l=Ember.inject.service,u=Ember.inject.service,d=Ember.inject.service,c=Ember.inject.service,p=Ember.inject.service,m=Ember.inject.service,h=Ember.inject.service,b=Ember.inject.service,f=Ember.inject.service,g=Ember.inject.service,v=Ember._tracked,y=Ember._tracked,w=Ember._tracked,E=Ember._tracked,k=Ember._tracked,P=Ember._tracked,O=Ember._tracked,_=Ember._tracked,j=Ember._tracked,T=Ember._tracked,z=Ember._tracked,x=Ember._tracked,S=Ember._tracked,C=Ember._tracked,M=Ember._tracked,D=Ember._action,A=Ember._action,L=Ember._action,N=Ember._action,I=Ember._action,R=Ember._action,F=Ember._action,U=class extends t.default{constructor(){super(...arguments),he(this,"ajax",B,this),he(this,"ghostPaths",V,this),he(this,"settings",H,this),he(this,"membersUtils",q,this),he(this,"utils",$,this),he(this,"feature",Y,this),he(this,"store",W,this),he(this,"router",G,this),he(this,"modals",K,this),he(this,"notifications",J,this),he(this,"session",X,this),he(this,"config",Z,this),he(this,"sources",Q,this),he(this,"links",ee,this),he(this,"mentions",te,this),he(this,"sortColumn",ie,this),he(this,"showSuccess",re,this),he(this,"updateLinkId",ne,this),he(this,"_post",ae,this),he(this,"postCount",se,this),he(this,"showPostCount",oe,this),he(this,"shouldAnimate",le,this),he(this,"previousSentCount",ue,this),he(this,"previousOpenedCount",de,this),he(this,"previousClickedCount",ce,this),he(this,"previousFeedbackCount",pe,this),he(this,"previousConversionsCount",me,this),be(this,"displayOptions",ve),this.checkPublishFlowModal()}openPublishFlowModal(){this.modals.open(r.default,{post:this.post,postCount:this.postCount,showPostCount:this.showPostCount})}async checkPublishFlowModal(){localStorage.getItem("ghost-last-published-post")&&(await this.fetchPostCountTask.perform(),this.showPostCount=!0,this.openPublishFlowModal(),localStorage.removeItem("ghost-last-published-post"))}get post(){return this._post??this.args.post}set post(e){this._post=e}get allowedDisplayOptions(){return this.hasPaidConversionData?this.hasFreeSignups?this.displayOptions:this.displayOptions.filter((e=>"paid"===e.value)):this.displayOptions.filter((e=>"signups"===e.value))}get isDropdownDisabled(){return!this.hasPaidConversionData||!this.hasFreeSignups}get selectedDisplayOption(){return this.hasPaidConversionData?this.hasFreeSignups?this.displayOptions.find((e=>e.value===this.sortColumn))??this.displayOptions[0]:this.displayOptions.find((e=>"paid"===e.value)):this.displayOptions.find((e=>"signups"===e.value))}get selectedSortColumn(){return this.hasPaidConversionData?this.hasFreeSignups?this.sortColumn:"paid":"signups"}get hasPaidConversionData(){return this.sources.some((e=>e.paidConversions>0))}get hasFreeSignups(){return this.sources.some((e=>e.signups>0))}get totalFeedback(){return this.post.count.positive_feedback+this.post.count.negative_feedback}get feedbackChartData(){return{values:[this.post.count.positive_feedback,this.post.count.negative_feedback],labels:["More like this","Less like this"],links:[{filterParam:"(feedback.post_id:'"+this.post.id+"'+feedback.score:1)"},{filterParam:"(feedback.post_id:'"+this.post.id+"'+feedback.score:0)"}],colors:["#F080B2","#8452f633"]}}onDisplayChange(e){this.sortColumn=e.value}setSortColumn(e){this.sortColumn=e}updateLink(e,t){return this._updateLinks.isRunning?this._updateLinks.last:this._updateLinks.perform(e,t)}loadData(){this.showSources?this.fetchReferrersStats():this.sources=[],this.showLinks?this.fetchLinks():this.links=[],this.showMentions?this.fetchMentions():this.mentions=[]}togglePublishFlowModal(){this.showPostCount=!1,this.openPublishFlowModal()}confirmDeleteMember(){this.modals.open(i.default,{post:this.post})}updateLinkData(e){const t=e.map((e=>({...e,link:{...e.link,originalTo:e.link.to,to:this.utils.cleanTrackedUrl(e.link.to,!1),title:this.utils.cleanTrackedUrl(e.link.to,!0)}}))).reduce(((e,t)=>(e[t.link.title]?(e[t.link.title].count||(e[t.link.title].count={clicks:0}),e[t.link.title].count.clicks||(e[t.link.title].count.clicks=0),e[t.link.title].count.clicks+=t.count?.clicks??0):e[t.link.title]=t,e)),{})
2308
+ this.links=Object.values(t).sort(((e,t)=>{const i=e.count?.clicks||0
2309
+ return(t.count?.clicks||0)-i}))}async fetchReferrersStats(){try{return this._fetchReferrersStats.isRunning?this._fetchReferrersStats.last:this._fetchReferrersStats.perform()}catch(e){if((0,a.didCancel)(e))return
2320
2310
  throw e}}async fetchLinks(){try{return this._fetchLinks.isRunning?this._fetchLinks.last:this._fetchLinks.perform()}catch(e){if((0,a.didCancel)(e))return
2321
2311
  throw e}}*_updateLinks(e,t){let i
2322
2312
  this.updateLinkId=e,this.links=this.links?.map((r=>r.link.link_id===e?(i=new URL(r.link.originalTo),{...r,link:{...r.link,to:this.utils.cleanTrackedUrl(t,!1),title:this.utils.cleanTrackedUrl(t,!0)}}):r))
@@ -2505,7 +2495,7 @@ return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:i,enum
2505
2495
  return Object.keys(r).forEach((function(e){a[e]=r[e]})),a.enumerable=!!a.enumerable,a.configurable=!!a.configurable,("value"in a||a.initializer)&&(a.writable=!0),a=i.slice().reverse().reduce((function(i,r){return r(e,t,i)||i}),a),n&&void 0!==a.initializer&&(a.value=a.initializer?a.initializer.call(n):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
2506
2496
  const z=Ember.HTMLBars.template({id:"oP+sF5tl",block:'{"symbols":["@os","@pathname","@source","@location","@browser","@device","@audience","@chartRange","@mockData"],"statements":[[10,"div"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-stats-metric-header"],[12],[2,"\\n "],[10,"h5"],[14,0,"gh-stats-metric-label"],[12],[2,"Sources"],[13],[2,"\\n"],[2," "],[13],[2,"\\n\\n "],[11,"div"],[4,[38,3],[[32,0,["ReactComponent"]]],[["props"],[[30,[36,2],null,[["chartRange","audience","device","browser","location","source","pathname","os","mockData"],[[32,8],[32,7],[32,6],[32,5],[32,4],[32,3],[32,2],[32,1],[32,9]]]]]]],[12],[13],[2,"\\n"],[13],[2,"\\n\\n"],[6,[37,4],[[32,0,["showSeeAll"]]],null,[["default"],[{"statements":[[10,"div"],[14,0,"gh-stats-see-all-container"],[12],[2,"\\n "],[11,"button"],[24,0,"gh-btn gh-btn-link gh-stats-see-all-btn"],[24,4,"button"],[4,[38,1],["click",[30,[36,0],[[32,0,["openSeeAll"]],[32,8],[32,7],[32,6],[32,5],[32,4],[32,3],[32,2],[32,1]],null]],null],[12],[2,"\\n "],[10,"span"],[12],[2,"See all →"],[13],[2,"\\n "],[13],[2,"\\n"],[13],[2,"\\n"]],"parameters":[]}]]]],"hasEval":false,"upvars":["fn","on","hash","react-render","if"]}',moduleName:"ghost-admin/components/stats/charts/top-sources.hbs"})
2507
2497
  let x=e.default=(l=Ember.inject.service,u=Ember.inject.service,d=Ember.inject.service,c=Ember._tracked,p=Ember._tracked,m=Ember._tracked,h=Ember._action,b=Ember._action,f=Ember._action,g=class extends i.default{constructor(...e){super(...e),_(this,"config",v,this),_(this,"modals",y,this),_(this,"router",w,this),_(this,"settings",E,this),_(this,"campaignOption",k,this),_(this,"campaignOptions",P,this),_(this,"showSeeAll",O,this),j(this,"ReactComponent",(e=>{const{data:t,meta:i,error:o,loading:l}=(0,n.useQuery)({endpoint:`${this.config.stats.endpoint}/v0/pipes/api_top_sources__v${a.TB_VERSION}.json`,token:this.config.stats.token,params:(0,a.getStatsParams)(this.config,e,{limit:7})})
2508
- return this.updateSeeAllVisibility(t),r.default.createElement(n.BarList,{data:t?t.slice(0,6):[],meta:i,error:o,loading:l,index:"source",indexConfig:{label:r.default.createElement("span",{className:"gh-stats-data-header"},"Source"),renderBarContent:({label:e})=>r.default.createElement("span",{className:"gh-stats-data-label"},r.default.createElement("a",{href:"#",style:{cursor:"default"},onClick:e=>{e.preventDefault()},className:"gh-stats-bar-text-nolink"},r.default.createElement("img",{src:`https://www.faviconextractor.com/favicon/${e||"direct"}?larger=true`,className:"gh-stats-favicon",onError:e=>{e.target.src="https://static.ghost.org/v5.0.0/images/globe-icon.svg"}}),r.default.createElement("span",{title:e||"Direct"},a.STATS_LABEL_MAPPINGS[e]||e||"Direct")),e&&r.default.createElement("a",{href:`https://${e}`,target:"_blank",className:"gh-stats-external-link"},r.default.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},r.default.createElement("path",{d:"M15 3h6v6"}),r.default.createElement("path",{d:"M10 14 21 3"}),r.default.createElement("path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"}))))},categories:["visits"],categoryConfig:{visits:{label:r.default.createElement("span",{className:"gh-stats-data-header"},"Visits"),renderValue:({value:e})=>r.default.createElement("span",{className:"gh-stats-data-value"},(0,s.formatNumber)(e))}},colorPalette:[a.barListColor]})}))}onCampaignOptionChange(e){this.campaignOption=e}openSeeAll(){this.modals.open(t.default,{type:"top-sources",chartRange:this.args.chartRange,audience:this.args.audience})}navigateToFilter(e){this.updateQueryParams({source:e})}updateQueryParams(e){const t={...this.router.currentRoute.queryParams,...e,timezone:this.settings.timezone}
2498
+ return this.updateSeeAllVisibility(t),r.default.createElement(n.BarList,{data:t?t.slice(0,6):[],meta:i,error:o,loading:l,index:"source",indexConfig:{label:r.default.createElement("span",{className:"gh-stats-data-header"},"Source"),renderBarContent:({label:e})=>r.default.createElement("span",{className:"gh-stats-data-label"},r.default.createElement("a",{href:"#",style:{cursor:"default"},onClick:t=>{t.preventDefault(),this.navigateToFilter(e||"direct")},className:"gh-stats-bar-text"},r.default.createElement("img",{src:`https://www.faviconextractor.com/favicon/${e||"direct"}?larger=true`,className:"gh-stats-favicon",onError:e=>{e.target.src="https://static.ghost.org/v5.0.0/images/globe-icon.svg"}}),r.default.createElement("span",{title:e||"Direct"},a.STATS_LABEL_MAPPINGS[e]||e||"Direct")),e&&r.default.createElement("a",{href:`https://${e}`,target:"_blank",className:"gh-stats-external-link"},r.default.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},r.default.createElement("path",{d:"M15 3h6v6"}),r.default.createElement("path",{d:"M10 14 21 3"}),r.default.createElement("path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"}))))},categories:["visits"],categoryConfig:{visits:{label:r.default.createElement("span",{className:"gh-stats-data-header"},"Visits"),renderValue:({value:e})=>r.default.createElement("span",{className:"gh-stats-data-value"},(0,s.formatNumber)(e))}},colorPalette:[a.barListColor]})}))}onCampaignOptionChange(e){this.campaignOption=e}openSeeAll(){this.modals.open(t.default,{type:"top-sources",chartRange:this.args.chartRange,audience:this.args.audience})}navigateToFilter(e){this.updateQueryParams({source:e})}updateQueryParams(e){const t={...this.router.currentRoute.queryParams,...e,timezone:this.settings.timezone}
2509
2499
  this.router.transitionTo({queryParams:t})}updateSeeAllVisibility(e){this.showSeeAll=e&&e.length>6}},v=T(g.prototype,"config",[o.inject],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),y=T(g.prototype,"modals",[l],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),w=T(g.prototype,"router",[u],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),E=T(g.prototype,"settings",[d],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),k=T(g.prototype,"campaignOption",[c],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return a.CAMPAIGN_OPTIONS[0]}}),P=T(g.prototype,"campaignOptions",[p],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return a.CAMPAIGN_OPTIONS}}),O=T(g.prototype,"showSeeAll",[m],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return!0}}),T(g.prototype,"onCampaignOptionChange",[h],Object.getOwnPropertyDescriptor(g.prototype,"onCampaignOptionChange"),g.prototype),T(g.prototype,"openSeeAll",[b],Object.getOwnPropertyDescriptor(g.prototype,"openSeeAll"),g.prototype),T(g.prototype,"navigateToFilter",[f],Object.getOwnPropertyDescriptor(g.prototype,"navigateToFilter"),g.prototype),g)
2510
2500
  Ember._setComponentTemplate(z,x)})),define("ghost-admin/components/stats/kpis-overview",["exports","@glimmer/component","fetch","ghost-admin/utils/stats","ghost-admin/helpers/format-number","ghost-admin/decorators/inject","ember-concurrency"],(function(e,t,i,r,n,a,s){var o,l,u,d,c,p,m,h,b,f,g,v,y,w,E,k,P,O
2511
2501
  function _(e,t,i,r){i&&Object.defineProperty(e,t,{enumerable:i.enumerable,configurable:i.configurable,writable:i.writable,value:i.initializer?i.initializer.call(r):void 0})}function j(e,t,i,r,n){var a={}
@@ -3497,7 +3487,16 @@ return this._super(...arguments).then((i=>{const r=t!==i.url
3497
3487
  return(e||r||this.isDeleted)&&this.search.expireContent(),i}))}})})),define("ghost-admin/models/webhook",["exports","@ember-data/model","ghost-admin/mixins/validation-engine"],(function(e,t,i){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
3498
3488
  e.default=t.default.extend(i.default,{validationType:"webhook",name:(0,t.attr)("string"),event:(0,t.attr)("string"),targetUrl:(0,t.attr)("string"),secret:(0,t.attr)("string"),lastTriggeredAtUTC:(0,t.attr)("moment-utc"),createdAtUTC:(0,t.attr)("moment-utc"),createdBy:(0,t.attr)("number"),updatedAtUTC:(0,t.attr)("moment-utc"),updatedBy:(0,t.attr)("number"),integration:(0,t.belongsTo)("integration")})})),define("ghost-admin/modifiers/autofocus",["exports","ember-modifier"],(function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
3499
3489
  e.default=(0,t.modifier)((e=>e.focus()),{eager:!1})})),define("ghost-admin/modifiers/autoplay",["exports","ember-modifier"],(function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
3500
- e.default=(0,t.modifier)((e=>{e.muted=!0,e.play()}),{eager:!1})})),define("ghost-admin/modifiers/basic-dropdown-trigger",["exports","ember-basic-dropdown/modifiers/basic-dropdown-trigger"],(function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.default}})})),define("ghost-admin/modifiers/css-transition",["exports","ember-css-transitions/modifiers/css-transition"],(function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.default}})})),define("ghost-admin/modifiers/did-insert",["exports","@ember/render-modifiers/modifiers/did-insert"],(function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.default}})})),define("ghost-admin/modifiers/did-update",["exports","@ember/render-modifiers/modifiers/did-update"],(function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.default}})})),define("ghost-admin/modifiers/in-viewport",["exports","ember-in-viewport/modifiers/in-viewport"],(function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.default}})})),define("ghost-admin/modifiers/movable",["exports","ember-modifier"],(function(e,t){var i,r,n,a,s,o,l
3490
+ e.default=(0,t.modifier)((e=>{e.muted=!0,e.play()}),{eager:!1})})),define("ghost-admin/modifiers/basic-dropdown-trigger",["exports","ember-basic-dropdown/modifiers/basic-dropdown-trigger"],(function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.default}})})),define("ghost-admin/modifiers/close-dropdowns-on-click",["exports","ember-modifier"],(function(e,t){var i,r,n
3491
+ function a(e,t,i){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e
3492
+ var i=e[Symbol.toPrimitive]
3493
+ if(void 0!==i){var r=i.call(e,t||"default")
3494
+ if("object"!=typeof r)return r
3495
+ throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string")
3496
+ return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
3497
+ e.default=(i=Ember.inject.service,r=class extends t.default{constructor(e,t){var i,r,s,o
3498
+ super(e,t),i=this,r="dropdown",o=this,(s=n)&&Object.defineProperty(i,r,{enumerable:s.enumerable,configurable:s.configurable,writable:s.writable,value:s.initializer?s.initializer.call(o):void 0}),a(this,"cleanup",(()=>{this.element?.removeEventListener("click",this.onClick)})),Ember._registerDestructor(this,this.cleanup),this.onClick=function(){this.dropdown.closeDropdowns()}.bind(this)}modify(e){"IFRAME"===e.tagName?e.addEventListener("load",(()=>{this.element=e.contentDocument,this.element.addEventListener("click",this.onClick)})):(this.element=e,this.element.addEventListener("click",this.onClick))}},s=r.prototype,o="dropdown",l=[i],u={configurable:!0,enumerable:!0,writable:!0,initializer:null},c={},Object.keys(u).forEach((function(e){c[e]=u[e]})),c.enumerable=!!c.enumerable,c.configurable=!!c.configurable,("value"in c||c.initializer)&&(c.writable=!0),c=l.slice().reverse().reduce((function(e,t){return t(s,o,e)||e}),c),d&&void 0!==c.initializer&&(c.value=c.initializer?c.initializer.call(d):void 0,c.initializer=void 0),void 0===c.initializer&&(Object.defineProperty(s,o,c),c=null),n=c,r)
3499
+ var s,o,l,u,d,c})),define("ghost-admin/modifiers/css-transition",["exports","ember-css-transitions/modifiers/css-transition"],(function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.default}})})),define("ghost-admin/modifiers/did-insert",["exports","@ember/render-modifiers/modifiers/did-insert"],(function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.default}})})),define("ghost-admin/modifiers/did-update",["exports","@ember/render-modifiers/modifiers/did-update"],(function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.default}})})),define("ghost-admin/modifiers/in-viewport",["exports","ember-in-viewport/modifiers/in-viewport"],(function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.default}})})),define("ghost-admin/modifiers/movable",["exports","ember-modifier"],(function(e,t){var i,r,n,a,s,o,l
3501
3500
  function u(e,t,i){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e
3502
3501
  var i=e[Symbol.toPrimitive]
3503
3502
  if(void 0!==i){var r=i.call(e,t||"default")
@@ -3571,12 +3570,12 @@ const r=Ember.Router.extend({location:t.default.locationType,rootURL:(0,i.defaul
3571
3570
  r.map((function(){this.route("home",{path:"/"}),this.route("setup"),this.route("setup.done",{path:"/setup/done"}),this.route("signin"),this.route("signin-verify",{path:"/signin/verify"}),this.route("signout"),this.route("signup",{path:"/signup/:token"}),this.route("reset",{path:"/reset/:token"}),this.route("whatsnew"),this.route("site"),this.route("dashboard"),this.route("launch"),this.route("stats"),this.route("stats-x",(function(){this.route("stats-x",{path:"/*sub"})})),this.route("pro",(function(){this.route("pro-sub",{path:"/*sub"})})),this.route("posts"),this.route("posts.analytics",{path:"/posts/analytics/:post_id"}),this.route("posts.mentions",{path:"/posts/analytics/:post_id/mentions"}),this.route("posts.debug",{path:"/posts/analytics/:post_id/debug"}),this.route("restore-posts",{path:"/restore"}),this.route("pages"),this.route("lexical-editor",{path:"editor"},(function(){this.route("new",{path:":type"}),this.route("edit",{path:":type/:post_id"})})),this.route("tags"),this.route("tag.new",{path:"/tags/new"}),this.route("tag",{path:"/tags/:tag_slug"}),this.route("demo-x",(function(){this.route("demo-x",{path:"/*sub"})})),this.route("posts-x",(function(){this.route("posts-x",{path:"/*sub"})})),this.route("settings-x",{path:"/settings"},(function(){this.route("settings-x",{path:"/*sub"})})),this.route("activitypub-x",{path:"/activitypub"},(function(){this.route("activitypub-x",{path:"/*sub"})})),this.route("explore",(function(){this.route("connect"),this.route("explore-sub",{path:"/*sub"},(function(){this.route("explore-query",{path:"/*query"})}))}))
3572
3571
  this.route("migrate",(function(){this.route("migrate",{path:"/*platform"})})),this.route("members",(function(){this.route("import")})),this.route("member.new",{path:"/members/new"}),this.route("member",{path:"/members/:member_id"}),this.route("members-activity"),this.route("error404",{path:"/*path"}),this.route("designsandbox"),this.route("mentions")}))
3573
3572
  e.default=r})),define("ghost-admin/routes/activitypub-x",["exports","ghost-admin/routes/authenticated"],(function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
3574
- class i extends t.default{}e.default=i})),define("ghost-admin/routes/admin",["exports","ghost-admin/routes/authenticated"],(function(e,t){var i,r,n
3573
+ class i extends t.default{}e.default=i}))
3574
+ define("ghost-admin/routes/admin",["exports","ghost-admin/routes/authenticated"],(function(e,t){var i,r,n
3575
3575
  Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
3576
3576
  e.default=(i=Ember.inject.service,r=class extends t.default{constructor(...e){var t,i,r,a
3577
3577
  super(...e),t=this,i="session",a=this,(r=n)&&Object.defineProperty(t,i,{enumerable:r.enumerable,configurable:r.configurable,writable:r.writable,value:r.initializer?r.initializer.call(a):void 0})}beforeModel(){if(super.beforeModel(...arguments),!this.session.user.isAdmin)return this.transitionTo("home")}},a=r.prototype,s="session",o=[i],l={configurable:!0,enumerable:!0,writable:!0,initializer:null},d={},Object.keys(l).forEach((function(e){d[e]=l[e]})),d.enumerable=!!d.enumerable,d.configurable=!!d.configurable,("value"in d||d.initializer)&&(d.writable=!0),d=o.slice().reverse().reduce((function(e,t){return t(a,s,e)||e}),d),u&&void 0!==d.initializer&&(d.value=d.initializer?d.initializer.call(u):void 0,d.initializer=void 0),void 0===d.initializer&&(Object.defineProperty(a,s,d),d=null),n=d,r)
3578
- var a,s,o,l,u,d}))
3579
- define("ghost-admin/routes/application",["exports","@sentry/ember","ghost-admin/components/admin-x/settings","ember-simple-auth/configuration","react","react-dom","ghost-admin/mixins/shortcuts-route","ghost-admin/utils/ctrl-or-cmd","ghost-admin/utils/window-proxy","ghost-admin/utils/sentry","ghost-admin/components/admin-x/admin-x-component","ghost-admin/decorators/inject","ember-ajax/errors","ghost-admin/services/ajax"],(function(e,t,i,r,n,a,s,o,l,u,d,c,p,m){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
3578
+ var a,s,o,l,u,d})),define("ghost-admin/routes/application",["exports","@sentry/ember","ghost-admin/components/admin-x/settings","ember-simple-auth/configuration","react","react-dom","ghost-admin/mixins/shortcuts-route","ghost-admin/utils/ctrl-or-cmd","ghost-admin/utils/window-proxy","ghost-admin/utils/sentry","ghost-admin/components/admin-x/admin-x-component","ghost-admin/decorators/inject","ember-ajax/errors","ghost-admin/services/ajax"],(function(e,t,i,r,n,a,s,o,l,u,d,c,p,m){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
3580
3579
  let h={esc:{action:"closeMenus",scope:"default"}}
3581
3580
  h[`${o.default}+s`]={action:"save",scope:"all"},window.React=n.default,window.ReactDOM=a.default
3582
3581
  e.default=Ember.Route.extend(s.default,{ajax:Ember.inject.service(),configManager:Ember.inject.service(),feature:Ember.inject.service(),ghostPaths:Ember.inject.service(),notifications:Ember.inject.service(),router:Ember.inject.service(),session:Ember.inject.service(),settings:Ember.inject.service(),ui:Ember.inject.service(),whatsNew:Ember.inject.service(),billing:Ember.inject.service(),shortcuts:h,routeAfterAuthentication:"home",init(){this._super(...arguments),this.router.on("routeDidChange",(()=>{this.notifications.displayDelayed()})),this.ui.initBodyDragHandlers()},config:(0,c.inject)(),async beforeModel(){return await this.session.setup(),this.prepareApp()},async afterModel(e,t){this._super(...arguments),this.get("session.isAuthenticated")&&(this.session.appLoadTransition=t),this._appLoaded=!0},actions:{closeMenus(){this.ui.closeMenus()},didTransition(){this.session.appLoadTransition=null,this.send("closeMenus"),Ember.run.later((()=>{t.setTag("route",this.router.currentRouteName)}),2)},authorizationFailed(){l.default.replaceLocation(r.default.rootURL)},save:function(){return this},error(e,t){if((0,p.isUnauthorizedError)(e))return!1
@@ -3748,7 +3747,8 @@ if(void 0!==i){var r=i.call(e,t||"default")
3748
3747
  if("object"!=typeof r)return r
3749
3748
  throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string")
3750
3749
  return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
3751
- class r extends t.default{constructor(...e){super(...e),i(this,"controllerName","mentions"),i(this,"templateName","mentions")}}e.default=r})),define("ghost-admin/routes/pro",["exports","ghost-admin/routes/authenticated","ghost-admin/decorators/inject"],(function(e,t,i){var r,n,a,s,o,l,u
3750
+ class r extends t.default{constructor(...e){super(...e),i(this,"controllerName","mentions"),i(this,"templateName","mentions")}}e.default=r}))
3751
+ define("ghost-admin/routes/pro",["exports","ghost-admin/routes/authenticated","ghost-admin/decorators/inject"],(function(e,t,i){var r,n,a,s,o,l,u
3752
3752
  function d(e,t,i,r){i&&Object.defineProperty(e,t,{enumerable:i.enumerable,configurable:i.configurable,writable:i.writable,value:i.initializer?i.initializer.call(r):void 0})}function c(e,t,i){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e
3753
3753
  var i=e[Symbol.toPrimitive]
3754
3754
  if(void 0!==i){var r=i.call(e,t||"default")
@@ -3759,8 +3759,7 @@ return Object.keys(r).forEach((function(e){a[e]=r[e]})),a.enumerable=!!a.enumera
3759
3759
  e.default=(r=Ember.inject.service,n=Ember.inject.service,a=Ember._action,s=class extends t.default{constructor(...e){super(...e),d(this,"billing",o,this),d(this,"session",l,this),d(this,"config",u,this),c(this,"queryParams",{action:{refreshModel:!0}})}beforeModel(e){if(super.beforeModel(...arguments),!this.session.user.isOwnerOnly&&!this.config.hostSettings?.forceUpgrade)return this.transitionTo("home")
3760
3760
  this.billing.previousTransition=e}model(e){e.action&&(this.billing.action=e.action),this.billing.toggleProWindow(!0)}willTransition(e){let t=!1
3761
3761
  if(e){let i="string"==typeof e.to?e.to:e.intent?e.intent.url:""
3762
- i?.includes("/pro")&&(t=!0)}this.billing.toggleProWindow(t)}buildRouteInfoMetadata(){return{titleToken:"Ghost(Pro)"}}},o=p(s.prototype,"billing",[r],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),l=p(s.prototype,"session",[n],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),u=p(s.prototype,"config",[i.inject],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),p(s.prototype,"willTransition",[a],Object.getOwnPropertyDescriptor(s.prototype,"willTransition"),s.prototype),s)}))
3763
- define("ghost-admin/routes/reset",["exports","ghost-admin/routes/unauthenticated"],(function(e,t){var i,r,n,a,s
3762
+ i?.includes("/pro")&&(t=!0)}this.billing.toggleProWindow(t)}buildRouteInfoMetadata(){return{titleToken:"Ghost(Pro)"}}},o=p(s.prototype,"billing",[r],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),l=p(s.prototype,"session",[n],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),u=p(s.prototype,"config",[i.inject],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),p(s.prototype,"willTransition",[a],Object.getOwnPropertyDescriptor(s.prototype,"willTransition"),s.prototype),s)})),define("ghost-admin/routes/reset",["exports","ghost-admin/routes/unauthenticated"],(function(e,t){var i,r,n,a,s
3764
3763
  function o(e,t,i,r){i&&Object.defineProperty(e,t,{enumerable:i.enumerable,configurable:i.configurable,writable:i.writable,value:i.initializer?i.initializer.call(r):void 0})}function l(e,t,i,r,n){var a={}
3765
3764
  return Object.keys(r).forEach((function(e){a[e]=r[e]})),a.enumerable=!!a.enumerable,a.configurable=!!a.configurable,("value"in a||a.initializer)&&(a.writable=!0),a=i.slice().reverse().reduce((function(i,r){return r(e,t,i)||i}),a),n&&void 0!==a.initializer&&(a.value=a.initializer?a.initializer.call(n):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
3766
3765
  e.default=(i=Ember.inject.service,r=Ember.inject.service,n=class extends t.default{constructor(...e){super(...e),o(this,"notifications",a,this),o(this,"session",s,this)}beforeModel(){this.session.isAuthenticated&&this.notifications.showAlert("You can't reset your password while you're signed in.",{type:"warn",delayed:!0,key:"password.reset.signed-in"}),super.beforeModel(...arguments)}setupController(e,t){e.token=t.token}deactivate(){super.deactivate(...arguments),this.controller.clearData()}},a=l(n.prototype,"notifications",[i],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),s=l(n.prototype,"session",[r],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),n)})),define("ghost-admin/routes/restore-posts",["exports","ghost-admin/routes/authenticated"],(function(e,t){var i,r,n
@@ -3912,15 +3911,15 @@ throw new TypeError("@@toPrimitive must return a primitive value.")}return("stri
3912
3911
  return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
3913
3912
  class n extends t.default{constructor(...e){super(...e),r(this,"attrs",{createdAtUTC:{key:"created_at"},updatedAtUTC:{key:"updated_at"}})}serialize(){let e=super.serialize(...arguments)
3914
3913
  return delete e.count,e}normalizeResponse(e,t,r,n,a){if("queryRecord"===a){let e=t.modelName,n=(0,i.pluralize)(e)
3915
- r[n]&&(r[e]=r[n][0],delete r[n])}return super.normalizeResponse(...arguments)}}e.default=n})),define("ghost-admin/serializers/member",["exports","ghost-admin/serializers/application","@ember-data/serializer/rest"],(function(e,t,i){function r(e,t,i){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e
3914
+ r[n]&&(r[e]=r[n][0],delete r[n])}return super.normalizeResponse(...arguments)}}e.default=n}))
3915
+ define("ghost-admin/serializers/member",["exports","ghost-admin/serializers/application","@ember-data/serializer/rest"],(function(e,t,i){function r(e,t,i){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e
3916
3916
  var i=e[Symbol.toPrimitive]
3917
3917
  if(void 0!==i){var r=i.call(e,t||"default")
3918
3918
  if("object"!=typeof r)return r
3919
3919
  throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string")
3920
3920
  return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
3921
3921
  class n extends(t.default.extend(i.EmbeddedRecordsMixin)){constructor(...e){super(...e),r(this,"attrs",{createdAtUTC:{key:"created_at"},lastSeenAtUTC:{key:"last_seen_at"},labels:{embedded:"always"},newsletters:{embedded:"always"}})}serialize(){let e=super.serialize(...arguments)
3922
- return delete e.stripe,delete e.geolocation,delete e.status,delete e.last_seen_at,delete e.comped,e.name=e.name||"",e.note=e.note||"",e}}e.default=n}))
3923
- define("ghost-admin/serializers/newsletter",["exports","ghost-admin/serializers/application"],(function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
3922
+ return delete e.stripe,delete e.geolocation,delete e.status,delete e.last_seen_at,delete e.comped,e.name=e.name||"",e.note=e.note||"",e}}e.default=n})),define("ghost-admin/serializers/newsletter",["exports","ghost-admin/serializers/application"],(function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
3924
3923
  class i extends t.default{normalizeResponse(){const e=super.normalizeResponse(...arguments)
3925
3924
  return e.meta&&e.data.attributes&&(e.data.attributes._meta=e.meta),e}serialize(){const e=super.serialize(...arguments)
3926
3925
  return delete e._meta,e}}e.default=i})),define("ghost-admin/serializers/notification",["exports","ghost-admin/serializers/application"],(function(e,t){function i(e,t,i){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e
@@ -4220,7 +4219,8 @@ return Object.keys(r).forEach((function(e){a[e]=r[e]})),a.enumerable=!!a.enumera
4220
4219
  e.default=(r=Ember._action,n=Ember._action,s((a=class extends(Ember.Service.extend(Ember.Evented,i.default)){bodyClick(e){(0,t.default)(e.target).closest(".ember-basic-dropdown-trigger, .ember-basic-dropdown-content").length<=0&&this.closeDropdowns()}closeDropdowns(){this.trigger("close")}toggleDropdown(e,t,i={}){this.trigger("toggle",{target:e,button:t,...i})}}).prototype,"closeDropdowns",[r],Object.getOwnPropertyDescriptor(a.prototype,"closeDropdowns"),a.prototype),s(a.prototype,"toggleDropdown",[n],Object.getOwnPropertyDescriptor(a.prototype,"toggleDropdown"),a.prototype),a)})),define("ghost-admin/services/ella-sparse",["exports","ember-ella-sparse/services/ella-sparse"],(function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.default}})})),define("ghost-admin/services/ember-load-config",["exports","ember-load/services/ember-load-config","ghost-admin/config/environment"],(function(e,t,i){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
4221
4220
  const r=i.default["ember-load"]||{}
4222
4221
  e.default=t.default.extend({loadingIndicatorClass:r.loadingIndicatorClass})})),define("ghost-admin/services/event-bus",["exports"],(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
4223
- class t extends(Ember.Service.extend(Ember.Evented)){publish(){return this.trigger(...arguments)}subscribe(){return this.on(...arguments)}unsubscribe(){return this.off(...arguments)}}e.default=t})),define("ghost-admin/services/explore",["exports","ghost-admin/decorators/inject"],(function(e,t){var i,r,n,a,s,o,l,u,d,c,p,m,h,b
4222
+ class t extends(Ember.Service.extend(Ember.Evented)){publish(){return this.trigger(...arguments)}subscribe(){return this.on(...arguments)}unsubscribe(){return this.off(...arguments)}}e.default=t}))
4223
+ define("ghost-admin/services/explore",["exports","ghost-admin/decorators/inject"],(function(e,t){var i,r,n,a,s,o,l,u,d,c,p,m,h,b
4224
4224
  function f(e,t,i,r){i&&Object.defineProperty(e,t,{enumerable:i.enumerable,configurable:i.configurable,writable:i.writable,value:i.initializer?i.initializer.call(r):void 0})}function g(e,t,i){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e
4225
4225
  var i=e[Symbol.toPrimitive]
4226
4226
  if(void 0!==i){var r=i.call(e,t||"default")
@@ -4232,8 +4232,7 @@ e.default=(i=Ember.inject.service,r=Ember.inject.service,n=Ember.inject.service,
4232
4232
  return this.ghostPaths.url.join(e.host,t).replace(/\/$/,"")}get iframeURL(){let e=this.exploreUrl
4233
4233
  if(window.location.hash&&window.location.hash.includes(this.exploreRouteRoot)){let t=window.location.hash.replace(this.exploreRouteRoot,"")
4234
4234
  t&&!t.includes("connect")&&(e+=t.replace(/^\//,""))}return e}constructor(){super(...arguments),f(this,"router",u,this),f(this,"feature",d,this),f(this,"ghostPaths",c,this),f(this,"config",p,this),g(this,"exploreUrl","https://ghost.org/explore/"),g(this,"exploreRouteRoot","#/explore"),g(this,"submitRoute","submit"),f(this,"exploreWindowOpen",m,this),f(this,"siteData",h,this),f(this,"isIframeTransition",b,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
4235
- 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.config.hostSettings?.forceUpgrade&&e||this.exploreWindowOpen&&e||(this.exploreWindowOpen=e)}openExploreWindow(){this.config.hostSettings?.forceUpgrade||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")}},u=v(l.prototype,"router",[i],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),d=v(l.prototype,"feature",[r],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),c=v(l.prototype,"ghostPaths",[n],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),p=v(l.prototype,"config",[t.inject],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),m=v(l.prototype,"exploreWindowOpen",[a],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return!1}}),h=v(l.prototype,"siteData",[s],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return null}}),b=v(l.prototype,"isIframeTransition",[o],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return!1}}),l)}))
4236
- define("ghost-admin/services/feature",["exports","jquery","ghost-admin/decorators/inject"],(function(e,t,i){var r,n,a,s,o,l,u,d,c,p,m,h,b,f,g,v,y,w,E,k,P,O,_,j,T,z,x,S,C,M,D,A,L,N,I,R,F,U,B,V,H,q,$,Y,W,G,K,J,X,Z,Q,ee,te,ie,re,ne
4235
+ 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.config.hostSettings?.forceUpgrade&&e||this.exploreWindowOpen&&e||(this.exploreWindowOpen=e)}openExploreWindow(){this.config.hostSettings?.forceUpgrade||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")}},u=v(l.prototype,"router",[i],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),d=v(l.prototype,"feature",[r],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),c=v(l.prototype,"ghostPaths",[n],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),p=v(l.prototype,"config",[t.inject],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),m=v(l.prototype,"exploreWindowOpen",[a],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return!1}}),h=v(l.prototype,"siteData",[s],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return null}}),b=v(l.prototype,"isIframeTransition",[o],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return!1}}),l)})),define("ghost-admin/services/feature",["exports","jquery","ghost-admin/decorators/inject"],(function(e,t,i){var r,n,a,s,o,l,u,d,c,p,m,h,b,f,g,v,y,w,E,k,P,O,_,j,T,z,x,S,C,M,D,A,L,N,I,R,F,U,B,V,H,q,$,Y,W,G,K,J,X,Z,Q,ee,te,ie,re,ne
4237
4236
  function ae(e,t,i,r){i&&Object.defineProperty(e,t,{enumerable:i.enumerable,configurable:i.configurable,writable:i.writable,value:i.initializer?i.initializer.call(r):void 0})}function se(e,t,i){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e
4238
4237
  var i=e[Symbol.toPrimitive]
4239
4238
  if(void 0!==i){var r=i.call(e,t||"default")
@@ -4248,7 +4247,7 @@ try{return JSON.parse(e)||{}}catch(t){return{}}}get accessibility(){let e=this.g
4248
4247
  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 r=i.user?"accessibility":"labs",n=this.get(i.user?"_user":"settings"),a=this.get(r)
4249
4248
  return Ember.set(a,e,t),i.requires&&!0===t&&i.requires.forEach((e=>{Ember.set(a,e,!0)})),n.set(r,JSON.stringify(a)),n.save().then((()=>(this.notifyPropertyChange(r),this.get(`${r}.${e}`)))).catch((t=>{if(n.rollbackAttributes(),this.notifyPropertyChange(r),!t)throw new Ember.Error(`Validation of the feature service ${i.user?"user":"settings"} model failed when updating ${r}.`)
4250
4249
  return this.notifications.showAPIError(t),this.get(`${r}.${e}`)}))}_setAdminTheme(e){let i=e
4251
- return void 0===i&&(i=e||this.nightShift),document.documentElement.classList.toggle("dark",i??!1),this.lazyLoader.loadStyle("dark","assets/ghost-dark-f30a597ac19632a118939492591c531b.css",!0).then((()=>{(0,t.default)("link[title=dark]").prop("disabled",!i)})).catch((()=>{(0,t.default)("link[title=dark]").prop("disabled",!0),document.documentElement.classList.remove("dark")}))}},M=oe(C.prototype,"lazyLoader",[r],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),D=oe(C.prototype,"notifications",[n],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),A=oe(C.prototype,"session",[a],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),L=oe(C.prototype,"settings",[s],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),N=oe(C.prototype,"store",[o],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),I=oe(C.prototype,"config",[i.inject],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),R=oe(C.prototype,"emailAnalytics",[l],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),F=oe(C.prototype,"nightShift",[u],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),U=oe(C.prototype,"referralInviteDismissed",[d],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),B=oe(C.prototype,"audienceFeedback",[c],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),V=oe(C.prototype,"webmentions",[p],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),H=oe(C.prototype,"stripeAutomaticTax",[m],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),q=oe(C.prototype,"emailCustomization",[h],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),$=oe(C.prototype,"i18n",[b],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Y=oe(C.prototype,"announcementBar",[f],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),W=oe(C.prototype,"signupCard",[g],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),G=oe(C.prototype,"mailEvents",[v],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),K=oe(C.prototype,"collectionsCard",[y],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),J=oe(C.prototype,"importMemberTier",[w],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),X=oe(C.prototype,"lexicalIndicators",[E],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Z=oe(C.prototype,"adminXDemo",[k],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Q=oe(C.prototype,"ActivityPub",[P],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),ee=oe(C.prototype,"editorExcerpt",[O],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),te=oe(C.prototype,"contentVisibility",[_],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),ie=oe(C.prototype,"contentVisibilityAlpha",[j],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),re=oe(C.prototype,"postsX",[T],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),ne=oe(C.prototype,"statsX",[z],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),oe(C.prototype,"labs",[x],Object.getOwnPropertyDescriptor(C.prototype,"labs"),C.prototype),oe(C.prototype,"accessibility",[S],Object.getOwnPropertyDescriptor(C.prototype,"accessibility"),C.prototype),C)})),define("ghost-admin/services/frontend",["exports","fetch","validator","ghost-admin/decorators/inject"],(function(e,t,i,r){var n,a,s,o,l,u
4250
+ return void 0===i&&(i=e||this.nightShift),document.documentElement.classList.toggle("dark",i??!1),this.lazyLoader.loadStyle("dark","assets/ghost-dark-f1f29683b14ffa11615b3bba8b6ab92c.css",!0).then((()=>{(0,t.default)("link[title=dark]").prop("disabled",!i)})).catch((()=>{(0,t.default)("link[title=dark]").prop("disabled",!0),document.documentElement.classList.remove("dark")}))}},M=oe(C.prototype,"lazyLoader",[r],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),D=oe(C.prototype,"notifications",[n],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),A=oe(C.prototype,"session",[a],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),L=oe(C.prototype,"settings",[s],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),N=oe(C.prototype,"store",[o],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),I=oe(C.prototype,"config",[i.inject],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),R=oe(C.prototype,"emailAnalytics",[l],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),F=oe(C.prototype,"nightShift",[u],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),U=oe(C.prototype,"referralInviteDismissed",[d],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),B=oe(C.prototype,"audienceFeedback",[c],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),V=oe(C.prototype,"webmentions",[p],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),H=oe(C.prototype,"stripeAutomaticTax",[m],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),q=oe(C.prototype,"emailCustomization",[h],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),$=oe(C.prototype,"i18n",[b],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Y=oe(C.prototype,"announcementBar",[f],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),W=oe(C.prototype,"signupCard",[g],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),G=oe(C.prototype,"mailEvents",[v],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),K=oe(C.prototype,"collectionsCard",[y],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),J=oe(C.prototype,"importMemberTier",[w],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),X=oe(C.prototype,"lexicalIndicators",[E],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Z=oe(C.prototype,"adminXDemo",[k],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Q=oe(C.prototype,"ActivityPub",[P],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),ee=oe(C.prototype,"editorExcerpt",[O],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),te=oe(C.prototype,"contentVisibility",[_],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),ie=oe(C.prototype,"contentVisibilityAlpha",[j],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),re=oe(C.prototype,"postsX",[T],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),ne=oe(C.prototype,"statsX",[z],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),oe(C.prototype,"labs",[x],Object.getOwnPropertyDescriptor(C.prototype,"labs"),C.prototype),oe(C.prototype,"accessibility",[S],Object.getOwnPropertyDescriptor(C.prototype,"accessibility"),C.prototype),C)})),define("ghost-admin/services/frontend",["exports","fetch","validator","ghost-admin/decorators/inject"],(function(e,t,i,r){var n,a,s,o,l,u
4252
4251
  function d(e,t,i,r){i&&Object.defineProperty(e,t,{enumerable:i.enumerable,configurable:i.configurable,writable:i.writable,value:i.initializer?i.initializer.call(r):void 0})}function c(e,t,i){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e
4253
4252
  var i=e[Symbol.toPrimitive]
4254
4253
  if(void 0!==i){var r=i.call(e,t||"default")
@@ -4512,16 +4511,16 @@ var i=e[Symbol.toPrimitive]
4512
4511
  if(void 0!==i){var r=i.call(e,t||"default")
4513
4512
  if("object"!=typeof r)return r
4514
4513
  throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string")
4515
- return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function b(e,t,i){return function(e,t,i){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:i
4516
- throw new TypeError("Private element is not present on this object")}(t,e),i}function f(e,t,i,r,n){var a={}
4514
+ return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function b(e,t,i,r,n){var a={}
4517
4515
  return Object.keys(r).forEach((function(e){a[e]=r[e]})),a.enumerable=!!a.enumerable,a.configurable=!!a.configurable,("value"in a||a.initializer)&&(a.writable=!0),a=i.slice().reverse().reduce((function(i,r){return r(e,t,i)||i}),a),n&&void 0!==a.initializer&&(a.value=a.initializer?a.initializer.call(n):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=e.SEARCHABLES=void 0
4518
- const{Document:g}=t.default,v=e.SEARCHABLES=[{name:"Staff",model:"user",fields:["id","slug","url","name","profile_image"],pathField:"slug",titleField:"name",index:["name"]},{name:"Tags",model:"tag",fields:["id","slug","url","name"],pathField:"slug",titleField:"name",index:["name"]},{name:"Posts",model:"post",fields:["id","url","title","status","published_at","visibility"],order:"updated_at desc",pathField:"id",titleField:"title",index:["title"]},{name:"Pages",model:"page",fields:["id","url","title","status","published_at","visibility"],order:"updated_at desc",pathField:"id",titleField:"title",index:["title"]}]
4519
- e.default=(n=Ember.inject.service,a=Ember.inject.service,s=Ember.inject.service,c=new WeakSet,o=class extends Ember.Service{constructor(...e){super(...e),m(this,c),p(this,"ajax",l,this),p(this,"notifications",u,this),p(this,"store",d,this),h(this,"indexes",v.reduce(((e,t)=>(e[t.model]=new g({tokenize:"forward",document:{id:"id",index:t.index,store:!0}}),e)),{}))}*searchTask(e){const t=[]
4520
- return v.forEach((i=>{const r=this.indexes[i.model].search(e,{enrich:!0}),n=new Set,a=[]
4516
+ const{Document:f}=t.default,g=e.SEARCHABLES=[{name:"Staff",model:"user",fields:["id","slug","url","name","profile_image"],pathField:"slug",titleField:"name",index:["name"]},{name:"Tags",model:"tag",fields:["id","slug","url","name"],pathField:"slug",titleField:"name",index:["name"]},{name:"Posts",model:"post",fields:["id","url","title","status","published_at","visibility"],order:"updated_at desc",pathField:"id",titleField:"title",index:["title"]},{name:"Pages",model:"page",fields:["id","url","title","status","published_at","visibility"],order:"updated_at desc",pathField:"id",titleField:"title",index:["title"]}]
4517
+ e.default=(n=Ember.inject.service,a=Ember.inject.service,s=Ember.inject.service,c=new WeakSet,o=class extends Ember.Service{constructor(...e){super(...e),m(this,c),p(this,"ajax",l,this),p(this,"notifications",u,this),p(this,"store",d,this),h(this,"indexes",g.reduce(((e,t)=>(e[t.model]=new f({tokenize:"forward",document:{id:"id",index:t.index,store:!0}}),e)),{}))}*searchTask(e){const t=[]
4518
+ return g.forEach((i=>{const r=this.indexes[i.model].search(e,{enrich:!0}),n=new Set,a=[]
4521
4519
  r.forEach((e=>{e.result.forEach((e=>{const{id:t,doc:r}=e
4522
- n.has(t)||(n.add(t),a.push({groupName:i.name,id:`${i.model}.${r[i.pathField]}`,title:r[i.titleField],url:r.url,status:r.status,visibility:r.visibility,publishedAt:r.published_at}))}))})),Ember.isEmpty(a)||t.push({groupName:i.name,options:a})})),t}*refreshContentTask(){try{const e=v.map((e=>b(this,c,y).call(this,e)))
4523
- yield Ember.RSVP.all(e)}catch(e){console.error(e)}}},l=f(o.prototype,"ajax",[n],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),u=f(o.prototype,"notifications",[a],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),d=f(o.prototype,"store",[s],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),f(o.prototype,"searchTask",[r.task],Object.getOwnPropertyDescriptor(o.prototype,"searchTask"),o.prototype),f(o.prototype,"refreshContentTask",[r.task],Object.getOwnPropertyDescriptor(o.prototype,"refreshContentTask"),o.prototype),o)
4524
- async function y(e){const t=`${this.store.adapterFor(e.model).urlForQuery({},e.model)}/`,r={fields:e.fields,limit:1e4,order:e.order}
4520
+ n.has(t)||(n.add(t),a.push({groupName:i.name,id:`${i.model}.${r[i.pathField]}`,title:r[i.titleField],url:r.url,status:r.status,visibility:r.visibility,publishedAt:r.published_at}))}))})),Ember.isEmpty(a)||t.push({groupName:i.name,options:a})})),t}*refreshContentTask(){try{const e=g.map((e=>function(e,t,i){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:i
4521
+ throw new TypeError("Private element is not present on this object")}(c,this,v).call(this,e)))
4522
+ yield Ember.RSVP.all(e)}catch(e){console.error(e)}}},l=b(o.prototype,"ajax",[n],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),u=b(o.prototype,"notifications",[a],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),d=b(o.prototype,"store",[s],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),b(o.prototype,"searchTask",[r.task],Object.getOwnPropertyDescriptor(o.prototype,"searchTask"),o.prototype),b(o.prototype,"refreshContentTask",[r.task],Object.getOwnPropertyDescriptor(o.prototype,"refreshContentTask"),o.prototype),o)
4523
+ async function v(e){const t=`${this.store.adapterFor(e.model).urlForQuery({},e.model)}/`,r={fields:e.fields,limit:1e4,order:e.order}
4525
4524
  try{(await this.ajax.request(t,{data:r}))[(0,i.pluralize)(e.model)].forEach((t=>{this.indexes[e.model].add(t)}))}catch(n){console.error(n),this.notifications.showAPIError(n,{key:`search.load${e.name}.error`})}}})),define("ghost-admin/services/search",["exports","ember-concurrency"],(function(e,t){var i,r,n,a,s,o,l,u,d,c,p,m,h,b,f,g,v,y
4526
4525
  function w(e,t,i,r){i&&Object.defineProperty(e,t,{enumerable:i.enumerable,configurable:i.configurable,writable:i.writable,value:i.initializer?i.initializer.call(r):void 0})}function E(e,t,i){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e
4527
4526
  var i=e[Symbol.toPrimitive]
@@ -4531,7 +4530,8 @@ throw new TypeError("@@toPrimitive must return a primitive value.")}return("stri
4531
4530
  return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function k(e,t,i,r,n){var a={}
4532
4531
  return Object.keys(r).forEach((function(e){a[e]=r[e]})),a.enumerable=!!a.enumerable,a.configurable=!!a.configurable,("value"in a||a.initializer)&&(a.writable=!0),a=i.slice().reverse().reduce((function(i,r){return r(e,t,i)||i}),a),n&&void 0!==a.initializer&&(a.value=a.initializer?a.initializer.call(n):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
4533
4532
  e.default=(i=Ember.inject.service,r=Ember.inject.service,n=Ember.inject.service,a=Ember.inject.service,s=Ember.inject.service,o=Ember.inject.service,l=Ember.inject.service,u=Ember._action,d=(0,t.task)({restartable:!0}),c=(0,t.task)({drop:!0}),p=class extends Ember.Service{constructor(...e){super(...e),w(this,"ajax",m,this),w(this,"feature",h,this),w(this,"notifications",b,this),w(this,"searchProviderBasic",f,this),w(this,"searchProviderFlex",g,this),w(this,"settings",v,this),w(this,"store",y,this),E(this,"isContentStale",!0)}get provider(){return this.settings.locale?.toLowerCase().startsWith("en")??!0?this.searchProviderFlex:this.searchProviderBasic}expireContent(){this.isContentStale=!0}*searchTask(e){return Ember.isBlank(e)?[]:(this.refreshContentTask.perform(),yield(0,t.timeout)(200),this.refreshContentTask.isRunning&&(yield this.refreshContentTask.lastRunning),yield this.provider.searchTask.perform(e))}*refreshContentTask({forceRefresh:e=!1}={}){if(!e&&!this.isContentStale)return!0
4534
- this.isContentStale=!0,yield this.provider.refreshContentTask.perform(),this.isContentStale=!1}},m=k(p.prototype,"ajax",[i],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),h=k(p.prototype,"feature",[r],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),b=k(p.prototype,"notifications",[n],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),f=k(p.prototype,"searchProviderBasic",[a],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),g=k(p.prototype,"searchProviderFlex",[s],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),v=k(p.prototype,"settings",[o],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),y=k(p.prototype,"store",[l],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),k(p.prototype,"expireContent",[u],Object.getOwnPropertyDescriptor(p.prototype,"expireContent"),p.prototype),k(p.prototype,"searchTask",[d],Object.getOwnPropertyDescriptor(p.prototype,"searchTask"),p.prototype),k(p.prototype,"refreshContentTask",[c],Object.getOwnPropertyDescriptor(p.prototype,"refreshContentTask"),p.prototype),p)})),define("ghost-admin/services/session",["exports","ember-simple-auth/services/session","@sentry/ember","ghost-admin/utils/analytics","ghost-admin/decorators/inject","ember-concurrency"],(function(e,t,i,r,n,a){var s,o,l,u,d,c,p,m,h,b,f,g,v,y,w,E,k,P,O,_,j,T,z,x,S,C,M,D,A,L,N
4533
+ this.isContentStale=!0,yield this.provider.refreshContentTask.perform(),this.isContentStale=!1}},m=k(p.prototype,"ajax",[i],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),h=k(p.prototype,"feature",[r],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),b=k(p.prototype,"notifications",[n],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),f=k(p.prototype,"searchProviderBasic",[a],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),g=k(p.prototype,"searchProviderFlex",[s],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),v=k(p.prototype,"settings",[o],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),y=k(p.prototype,"store",[l],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),k(p.prototype,"expireContent",[u],Object.getOwnPropertyDescriptor(p.prototype,"expireContent"),p.prototype),k(p.prototype,"searchTask",[d],Object.getOwnPropertyDescriptor(p.prototype,"searchTask"),p.prototype),k(p.prototype,"refreshContentTask",[c],Object.getOwnPropertyDescriptor(p.prototype,"refreshContentTask"),p.prototype),p)}))
4534
+ define("ghost-admin/services/session",["exports","ember-simple-auth/services/session","@sentry/ember","ghost-admin/utils/analytics","ghost-admin/decorators/inject","ember-concurrency"],(function(e,t,i,r,n,a){var s,o,l,u,d,c,p,m,h,b,f,g,v,y,w,E,k,P,O,_,j,T,z,x,S,C,M,D,A,L,N
4535
4535
  function I(e,t,i,r){i&&Object.defineProperty(e,t,{enumerable:i.enumerable,configurable:i.configurable,writable:i.writable,value:i.initializer?i.initializer.call(r):void 0})}function R(e,t,i){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e
4536
4536
  var i=e[Symbol.toPrimitive]
4537
4537
  if(void 0!==i){var r=i.call(e,t||"default")
@@ -4541,8 +4541,7 @@ return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:i,enum
4541
4541
  return Object.keys(r).forEach((function(e){a[e]=r[e]})),a.enumerable=!!a.enumerable,a.configurable=!!a.configurable,("value"in a||a.initializer)&&(a.writable=!0),a=i.slice().reverse().reduce((function(i,r){return r(e,t,i)||i}),a),n&&void 0!==a.initializer&&(a.value=a.initializer?a.initializer.call(n):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
4542
4542
  e.default=(s=Ember.inject.service,o=Ember.inject.service("store"),l=Ember.inject.service,u=Ember.inject.service,d=Ember.inject.service,c=Ember.inject.service,p=Ember.inject.service,m=Ember.inject.service,h=Ember.inject.service,b=Ember.inject.service,f=Ember.inject.service,g=Ember.inject.service,v=Ember.inject.service,y=Ember._tracked,w=(0,a.task)({drop:!0}),E=class extends t.default{constructor(...e){super(...e),I(this,"configManager",k,this),I(this,"dataStore",P,this),I(this,"feature",O,this),I(this,"koenig",_,this),I(this,"notifications",j,this),I(this,"router",T,this),I(this,"frontend",z,this),I(this,"settings",x,this),I(this,"ui",S,this),I(this,"upgradeStatus",C,this),I(this,"whatsNew",M,this),I(this,"membersUtils",D,this),I(this,"themeManagement",A,this),I(this,"config",L,this),I(this,"user",N,this),R(this,"skipAuthSuccessHandler",!1)}async populateUser(e={}){if(this.user)return
4543
4543
  const t=e.id||"me",i=await this.dataStore.queryRecord("user",{id:t})
4544
- this.user=i}async postAuthPreparation(){await Ember.RSVP.all([this.configManager.fetchAuthenticated(),this.feature.fetch(),this.settings.fetch(),this.membersUtils.fetch()]),await(0,r.identifyUser)(this.user),this.themeManagement.fetch().catch(console.error),await this.frontend.loginIfNeeded(),this.config.sentry_dsn&&(0,i.configureScope)((e=>{e.addEventProcessor((e=>new Promise((t=>{t({...e,release:`ghost@${this.config.version}`,user:{role:this.user.role.name}})}))))})),this.loadServerNotifications(),this.whatsNew.fetchLatest.perform(),this.koenig.fetch()}async handleAuthentication(){return this.handleAuthenticationTask.isRunning?this.handleAuthenticationTask.last:this.handleAuthenticationTask.perform((()=>{this.skipAuthSuccessHandler?this.skipAuthSuccessHandler=!1:super.handleAuthentication("home")}))}async requireAuthentication(e,t){this.isAuthenticated&&this.user&&(0,r.identifyUser)(this.user),this.isAuthenticated||(e.abort(),this.user&&(await this.setup(),(0,r.identifyUser)(this.user),this.notifications.clearAll(),e.retry())),super.requireAuthentication(e,t)}handleInvalidation(){let e=this.appLoadTransition;(0,r.resetUser)(),e?e.send("authorizationFailed"):Ember.run.scheduleOnce("routerTransitions",this,"triggerAuthorizationFailed")}triggerAuthorizationFailed(){Ember.getOwner(this).lookup(`route:${this.router.currentRouteName}`)?.send("authorizationFailed")}loadServerNotifications(){this.isAuthenticated&&(this.user.isAuthorOrContributor||this.dataStore.findAll("notification",{reload:!0}).then((e=>{e.forEach((e=>{e.top||e.custom?this.notifications.handleNotification(e):this.upgradeStatus.handleUpgradeNotification(e)}))})))}*handleAuthenticationTask(e){if(!this.user){try{yield this.populateUser()}catch(t){yield this.invalidate()}yield this.postAuthPreparation()}e()}},k=F(E.prototype,"configManager",[s],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),P=F(E.prototype,"dataStore",[o],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),O=F(E.prototype,"feature",[l],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),_=F(E.prototype,"koenig",[u],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),j=F(E.prototype,"notifications",[d],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),T=F(E.prototype,"router",[c],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),z=F(E.prototype,"frontend",[p],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),x=F(E.prototype,"settings",[m],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),S=F(E.prototype,"ui",[h],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),C=F(E.prototype,"upgradeStatus",[b],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),M=F(E.prototype,"whatsNew",[f],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),D=F(E.prototype,"membersUtils",[g],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),A=F(E.prototype,"themeManagement",[v],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),L=F(E.prototype,"config",[n.inject],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),N=F(E.prototype,"user",[y],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return null}}),F(E.prototype,"handleAuthenticationTask",[w],Object.getOwnPropertyDescriptor(E.prototype,"handleAuthenticationTask"),E.prototype),E)}))
4545
- define("ghost-admin/services/settings",["exports","ghost-admin/models/setting","ghost-admin/mixins/validation-engine"],(function(e,t,i){var r,n,a,s,o,l,u
4544
+ this.user=i}async postAuthPreparation(){await Ember.RSVP.all([this.configManager.fetchAuthenticated(),this.feature.fetch(),this.settings.fetch(),this.membersUtils.fetch()]),await(0,r.identifyUser)(this.user),this.themeManagement.fetch().catch(console.error),await this.frontend.loginIfNeeded(),this.config.sentry_dsn&&(0,i.configureScope)((e=>{e.addEventProcessor((e=>new Promise((t=>{t({...e,release:`ghost@${this.config.version}`,user:{role:this.user.role.name}})}))))})),this.loadServerNotifications(),this.whatsNew.fetchLatest.perform(),this.koenig.fetch()}async handleAuthentication(){return this.handleAuthenticationTask.isRunning?this.handleAuthenticationTask.last:this.handleAuthenticationTask.perform((()=>{this.skipAuthSuccessHandler?this.skipAuthSuccessHandler=!1:super.handleAuthentication("home")}))}async requireAuthentication(e,t){this.isAuthenticated&&this.user&&(0,r.identifyUser)(this.user),this.isAuthenticated||(e.abort(),this.user&&(await this.setup(),(0,r.identifyUser)(this.user),this.notifications.clearAll(),e.retry())),super.requireAuthentication(e,t)}handleInvalidation(){let e=this.appLoadTransition;(0,r.resetUser)(),e?e.send("authorizationFailed"):Ember.run.scheduleOnce("routerTransitions",this,"triggerAuthorizationFailed")}triggerAuthorizationFailed(){Ember.getOwner(this).lookup(`route:${this.router.currentRouteName}`)?.send("authorizationFailed")}loadServerNotifications(){this.isAuthenticated&&(this.user.isAuthorOrContributor||this.dataStore.findAll("notification",{reload:!0}).then((e=>{e.forEach((e=>{e.top||e.custom?this.notifications.handleNotification(e):this.upgradeStatus.handleUpgradeNotification(e)}))})))}*handleAuthenticationTask(e){if(!this.user){try{yield this.populateUser()}catch(t){yield this.invalidate()}yield this.postAuthPreparation()}e()}},k=F(E.prototype,"configManager",[s],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),P=F(E.prototype,"dataStore",[o],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),O=F(E.prototype,"feature",[l],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),_=F(E.prototype,"koenig",[u],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),j=F(E.prototype,"notifications",[d],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),T=F(E.prototype,"router",[c],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),z=F(E.prototype,"frontend",[p],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),x=F(E.prototype,"settings",[m],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),S=F(E.prototype,"ui",[h],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),C=F(E.prototype,"upgradeStatus",[b],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),M=F(E.prototype,"whatsNew",[f],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),D=F(E.prototype,"membersUtils",[g],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),A=F(E.prototype,"themeManagement",[v],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),L=F(E.prototype,"config",[n.inject],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),N=F(E.prototype,"user",[y],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return null}}),F(E.prototype,"handleAuthenticationTask",[w],Object.getOwnPropertyDescriptor(E.prototype,"handleAuthenticationTask"),E.prototype),E)})),define("ghost-admin/services/settings",["exports","ghost-admin/models/setting","ghost-admin/mixins/validation-engine"],(function(e,t,i){var r,n,a,s,o,l,u
4546
4545
  function d(e,t,i,r){i&&Object.defineProperty(e,t,{enumerable:i.enumerable,configurable:i.configurable,writable:i.writable,value:i.initializer?i.initializer.call(r):void 0})}function c(e,t,i){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e
4547
4546
  var i=e[Symbol.toPrimitive]
4548
4547
  if(void 0!==i){var r=i.call(e,t||"default")
@@ -4678,9 +4677,9 @@ e.default=Ember.HTMLBars.template({id:"OrtUKLm2",block:'{"symbols":[],"statement
4678
4677
  e.default=Ember.HTMLBars.template({id:"5C/w8dFA",block:'{"symbols":["item"],"statements":[[10,"div"],[14,0,"gh-view"],[12],[2,"\\n\\n "],[10,"section"],[14,0,"flex flex-column items-center flex-grow justify-center h-100 nt10"],[12],[2,"\\n "],[10,"div"],[14,0,"absolute error-background nudge-right--5"],[12],[2,"\\n "],[1,[30,[36,3],["desert"],[["class"],["error-background absolute"]]]],[2,"\\n "],[10,"div"],[14,0,"traveler-1"],[12],[1,[30,[36,3],["tumbleweed"],[["class"],["w6 h6 absolute bouncer-1"]]]],[13],[2,"\\n "],[10,"div"],[14,0,"traveler-2"],[12],[1,[30,[36,3],["tumbleweed"],[["class"],["w11 h11 absolute bouncer-2"]]]],[13],[2,"\\n "],[13],[2,"\\n "],[10,"div"],[14,0,"mt5 tc"],[12],[2,"\\n "],[10,"h1"],[14,0,"midlightgrey error-code-size fw6"],[12],[1,[32,0,["code"]]],[13],[2,"\\n "],[10,"h2"],[14,0,"midlightgrey f4 fw3"],[12],[1,[32,0,["message"]]],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n\\n"],[6,[37,0],[[32,0,["stack"]]],null,[["default"],[{"statements":[[2," "],[10,"section"],[14,0,"error-stack"],[12],[2,"\\n "],[10,"h3"],[12],[2,"Stack Trace"],[13],[2,"\\n "],[10,"p"],[12],[10,"strong"],[12],[1,[32,0,["message"]]],[13],[13],[2,"\\n "],[10,"ul"],[14,0,"error-stack-list"],[12],[2,"\\n"],[6,[37,2],[[30,[36,1],[[30,[36,1],[[32,0,["stack"]]],null]],null]],null,[["default"],[{"statements":[[2," "],[10,"li"],[12],[2,"\\n at\\n "],[6,[37,0],[[32,1,["function"]]],null,[["default"],[{"statements":[[10,"em"],[14,0,"error-stack-function"],[12],[1,[32,1,["function"]]],[13]],"parameters":[]}]]],[2,"\\n "],[10,"span"],[14,0,"error-stack-file"],[12],[2,"("],[1,[32,1,["at"]]],[2,")"],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[1]}]]],[2," "],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]}]]],[13],[2,"\\n"]],"hasEval":false,"upvars":["if","-track-array","each","svg-jar"]}',moduleName:"ghost-admin/templates/error.hbs"})})),define("ghost-admin/templates/explore/connect",["exports"],(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
4679
4678
  e.default=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"})})),define("ghost-admin/templates/lexical-editor",["exports"],(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
4680
4679
  e.default=Ember.HTMLBars.template({id:"czwqSzur",block:'{"symbols":["editor","publishManagement","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","@tkCount","@beforePublish","@afterPublish","@saveTask"],[[32,0,["post"]],[32,0,["hasDirtyAttributes"]],[32,0,["tkCount"]],[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"],[24,"data-test-breadcrumb",""]],[["@route","@model"],["posts.analytics",[32,0,["post"]]]],[["default"],[{"statements":[[2,"\\n "],[1,[30,[36,0],["arrow-left"],null]],[2,"\\n "],[10,"span"],[12],[2,"Analytics"],[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]],[24,"data-test-breadcrumb",""]],[["@route"],[[30,[36,3],[[32,0,["post","displayName"]]],null]]],[["default"],[{"statements":[[2,"\\n "],[1,[30,[36,0],["arrow-left"],null]],[2,"\\n "],[10,"span"],[12],[1,[30,[36,4],[[30,[36,3],[[32,0,["post","displayName"]]],null]],null]],[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,3],[32,0,["hasDirtyAttributes"]],[30,[36,2],[[32,0,["autosaveTask","isRunning"]],[32,0,["saveTasks","isRunning"]]],null],[32,3,["openUpdateFlow"]]]],null],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n\\n "],[10,"section"],[14,0,"gh-editor-publish-buttons"],[12],[2,"\\n"],[6,[37,1],[[32,0,["post","isNew"]]],null,[["default"],[{"statements":[[2," "],[8,"editor/publish-buttons",[],[["@publishManagement"],[[32,3]]],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":[3]}]]],[2,"\\n "],[13],[2,"\\n\\n"],[2," "],[8,"gh-koenig-editor-lexical",[],[["@title","@titlePlaceholder","@titleAutofocus","@titleHasTk","@onTitleChange","@onTitleBlur","@excerpt","@excerptHasTk","@setExcerpt","@onExcerptBlur","@excerptErrorMessage","@body","@bodyPlaceholder","@onBodyChange","@updateSecondaryInstanceModel","@headerOffset","@scrollContainerSelector","@scrollOffsetBottomSelector","@onEditorCreated","@updateWordCount","@updatePostTkCount","@updateFeatureImageTkCount","@featureImage","@featureImageAlt","@featureImageCaption","@setFeatureImage","@setFeatureImageAlt","@setFeatureImageCaption","@handleFeatureImageCaptionBlur","@clearFeatureImage","@cardOptions","@postType","@registerAPI","@registerSecondaryAPI","@savePostTask"],[[30,[36,8],[[32,0,["post","titleScratch"]]],null],[30,[36,9],[[30,[36,4],[[32,0,["post","displayName"]]],null]," title"],null],[32,0,["shouldFocusTitle"]],[32,0,["titleHasTk"]],[32,0,["updateTitleScratch"]],[30,[36,6],[[32,0,["saveTitleTask"]]],null],[30,[36,8],[[32,0,["post","customExcerpt"]]],null],[32,0,["excerptHasTk"]],[32,0,["updateExcerpt"]],[30,[36,6],[[32,0,["saveExcerptTask"]]],null],[32,0,["excerptErrorMessage"]],[30,[36,8],[[32,0,["post","lexicalScratch"]]],null],[30,[36,9],["Begin writing your ",[32,0,["post","displayName"]],"..."],null],[32,0,["updateScratch"]],[32,0,["updateSecondaryInstanceModel"]],[32,1,["headerHeight"]],".gh-koenig-editor",".gh-mobile-nav-bar",[32,0,["setKoenigEditor"]],[32,0,["updateWordCount"]],[32,0,["updatePostTkCount"]],[32,0,["updateFeatureImageTkCount"]],[32,0,["post","featureImage"]],[32,0,["post","featureImageAlt"]],[32,0,["post","featureImageCaption"]],[32,0,["setFeatureImage"]],[32,0,["setFeatureImageAlt"]],[32,0,["setFeatureImageCaption"]],[32,0,["handleFeatureImageCaptionBlur"]],[32,0,["clearFeatureImage"]],[30,[36,10],null,[["post","snippets","deleteSnippet","createSnippet"],[[32,0,["post"]],[32,0,["snippets"]],[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"]],[32,0,["registerSecondaryEditorAPI"]],[32,0,["savePostTask"]]]],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 "],[10,"div"],[14,0,"gh-editor-mobile-menu"],[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,"gh-editor-wordcount"],[12],[2,"\\n "],[1,[30,[36,11],[[32,0,["wordCount"]],"word"],null]],[2,"\\n "],[13],[2,"\\n "],[10,"section"],[14,0,"gh-editor-publish-buttons"],[12],[2,"\\n"],[6,[37,1],[[32,0,["post","isNew"]]],null,[["default"],[{"statements":[[2," "],[8,"editor/publish-buttons",[],[["@publishManagement"],[[32,2]]],null],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n "]],"parameters":[2]}]]],[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","@secondaryEditorAPI","@toggleSettingsMenu"],[[32,0,["post"]],[32,0,["openDeletePostModal"]],[32,0,["updateSlugTask"]],[32,0,["savePostTask"]],[32,0,["editorAPI"]],[32,0,["secondaryEditorAPI"]],[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,["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"})})),define("ghost-admin/templates/lexical-editor/edit-loading",["exports"],(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
4681
- e.default=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"})})),define("ghost-admin/templates/member",["exports"],(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
4682
- e.default=Ember.HTMLBars.template({id:"NSWHNtjk",block:'{"symbols":[],"statements":[[10,"section"],[14,0,"gh-canvas"],[12],[2,"\\n "],[8,"gh-canvas-header",[[24,0,"gh-canvas-header sticky gh-member-header"]],[[],[]],[["default"],[{"statements":[[2,"\\n "],[10,"div"],[14,0,"flex flex-column"],[12],[2,"\\n"],[6,[37,4],[[32,0,["fromAnalytics"]]],null,[["default","else"],[{"statements":[[2," "],[10,"div"],[14,0,"gh-canvas-breadcrumb"],[12],[2,"\\n "],[8,"link-to",[],[["@route"],["posts"]],[["default"],[{"statements":[[2,"\\n Posts\\n "]],"parameters":[]}]]],[2,"\\n "],[1,[30,[36,0],["arrow-right-small"],null]],[2,"\\n "],[8,"link-to",[],[["@route","@models"],["posts.analytics",[32,0,["fromAnalytics"]]]],[["default"],[{"statements":[[2,"\\n Analytics\\n "]],"parameters":[]}]]],[2,"\\n\\n"],[6,[37,2],[[32,0,["directlyFromAnalytics"]]],null,[["default"],[{"statements":[[2," "],[1,[30,[36,0],["arrow-right-small"],null]],[2,"\\n "],[8,"link-to",[[24,"data-test-link","members-back"]],[["@route","@query"],["members",[30,[36,5],null,[["postAnalytics"],[[32,0,["postAnalytics"]]]]]]],[["default"],[{"statements":[[2,"\\n Members\\n "]],"parameters":[]}]]],[2,"\\n"]],"parameters":[]}]]],[2,"\\n "],[1,[30,[36,0],["arrow-right-small"],null]],[2," "],[1,[30,[36,4],[[32,0,["member","isNew"]],"New member","Edit member"],null]],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[10,"div"],[14,0,"gh-canvas-breadcrumb"],[12],[2,"\\n "],[8,"link-to",[[24,"data-test-link","members-back"]],[["@route"],["members"]],[["default"],[{"statements":[[2,"\\n Members\\n "]],"parameters":[]}]]],[2,"\\n "],[1,[30,[36,0],["arrow-right-small"],null]],[2," "],[1,[30,[36,4],[[32,0,["member","isNew"]],"New member","Edit member"],null]],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]}]]],[2," "],[10,"h2"],[14,0,"gh-canvas-title"],[14,"data-test-screen-title",""],[12],[2,"\\n"],[6,[37,4],[[32,0,["member","isNew"]]],null,[["default","else"],[{"statements":[[2," New"],[10,"span"],[14,0,"gh-canvas-title-hide-for-mobile"],[12],[2," member"],[13],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[1,[30,[36,3],[[32,0,["member","name"]],[32,0,["member","email"]]],null]],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n "],[13],[2,"\\n\\n "],[10,"section"],[14,0,"view-actions"],[12],[2,"\\n"],[6,[37,4],[[32,0,["session","user","canManageMembers"]]],null,[["default"],[{"statements":[[6,[37,2],[[32,0,["member","isNew"]]],null,[["default"],[{"statements":[[2," "],[10,"span"],[14,0,"dropdown"],[12],[2,"\\n "],[8,"gh-dropdown-button",[[24,"data-test-button","member-actions"]],[["@dropdownName","@classNames","@title"],["members-actions-menu","gh-btn gh-btn-icon icon-only gh-btn-action-icon","Members Actions"]],[["default"],[{"statements":[[2,"\\n "],[10,"span"],[12],[2,"\\n "],[1,[30,[36,0],["settings"],null]],[2,"\\n "],[10,"span"],[14,0,"hidden"],[12],[2,"Actions"],[13],[2,"\\n "],[13],[2,"\\n "]],"parameters":[]}]]],[2,"\\n "],[8,"gh-dropdown",[],[["@name","@tagName","@classNames"],["members-actions-menu","ul","gh-member-actions-menu dropdown-menu dropdown-triangle-top-right"]],[["default"],[{"statements":[[2,"\\n "],[10,"li"],[12],[2,"\\n "],[11,"button"],[24,0,"mr2"],[24,"data-test-button","impersonate"],[24,4,"button"],[4,[38,1],["click",[32,0,["toggleImpersonateMemberModal"]]],null],[12],[2,"\\n "],[10,"span"],[12],[2,"Impersonate"],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"li"],[12],[2,"\\n "],[11,"button"],[24,0,"mr2"],[24,"data-test-button","logout-member"],[24,4,"button"],[4,[38,1],["click",[32,0,["confirmLogoutMember"]]],null],[12],[2,"\\n "],[10,"span"],[12],[2,"Sign out of all devices"],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"li"],[12],[2,"\\n "],[11,"button"],[24,0,"mr2"],[24,"data-test-button","delete-member"],[24,4,"button"],[4,[38,1],["click",[32,0,["confirmDeleteMember"]]],null],[12],[2,"\\n "],[10,"span"],[14,0,"red"],[12],[2,"Delete member"],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "]],"parameters":[]}]]],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]}]]]],"parameters":[]}]]],[2,"\\n "],[8,"gh-task-button",[],[["@class","@type","@task","@data-test-button"],["gh-btn gh-btn-primary gh-btn-icon","button",[32,0,["saveTask"]],"save"]],null],[2,"\\n "],[13],[2,"\\n "]],"parameters":[]}]]],[2,"\\n\\n "],[10,"div"],[12],[2,"\\n "],[10,"form"],[14,0,"member-basic-info-form"],[12],[2,"\\n "],[8,"gh-member-settings-form",[],[["@member","@scratchMember","@setProperty","@onLabelEdit","@saveMember","@isSaveRunning","@isLoading"],[[32,0,["member"]],[32,0,["scratchMember"]],[32,0,["setProperty"]],[32,0,["editLabel"]],[32,0,["save"]],[32,0,["saveTask","isRunning"]],[32,0,["isLoading"]]]],null],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n"],[13],[2,"\\n\\n"],[6,[37,4],[[32,0,["showImpersonateMemberModal"]]],null,[["default"],[{"statements":[[2," "],[8,"gh-fullscreen-modal",[],[["@modal","@model","@close","@modifier"],["impersonate-member",[32,0,["member"]],[32,0,["toggleImpersonateMemberModal"]],"action wide"]],null],[2,"\\n"]],"parameters":[]}]]],[2,"\\n"],[6,[37,4],[[32,0,["showLabelModal"]]],null,[["default"],[{"statements":[[2," "],[8,"gh-fullscreen-modal",[],[["@modal","@model","@close","@modifier"],["members-label-form",[32,0,["labelModalData"]],[32,0,["toggleLabelModal"]],"action wide"]],null],[2,"\\n"]],"parameters":[]}]]]],"hasEval":false,"upvars":["svg-jar","on","unless","or","if","hash"]}',moduleName:"ghost-admin/templates/member.hbs"})}))
4683
- define("ghost-admin/templates/members-activity",["exports"],(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
4680
+ e.default=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"})}))
4681
+ define("ghost-admin/templates/member",["exports"],(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
4682
+ e.default=Ember.HTMLBars.template({id:"NSWHNtjk",block:'{"symbols":[],"statements":[[10,"section"],[14,0,"gh-canvas"],[12],[2,"\\n "],[8,"gh-canvas-header",[[24,0,"gh-canvas-header sticky gh-member-header"]],[[],[]],[["default"],[{"statements":[[2,"\\n "],[10,"div"],[14,0,"flex flex-column"],[12],[2,"\\n"],[6,[37,4],[[32,0,["fromAnalytics"]]],null,[["default","else"],[{"statements":[[2," "],[10,"div"],[14,0,"gh-canvas-breadcrumb"],[12],[2,"\\n "],[8,"link-to",[],[["@route"],["posts"]],[["default"],[{"statements":[[2,"\\n Posts\\n "]],"parameters":[]}]]],[2,"\\n "],[1,[30,[36,0],["arrow-right-small"],null]],[2,"\\n "],[8,"link-to",[],[["@route","@models"],["posts.analytics",[32,0,["fromAnalytics"]]]],[["default"],[{"statements":[[2,"\\n Analytics\\n "]],"parameters":[]}]]],[2,"\\n\\n"],[6,[37,2],[[32,0,["directlyFromAnalytics"]]],null,[["default"],[{"statements":[[2," "],[1,[30,[36,0],["arrow-right-small"],null]],[2,"\\n "],[8,"link-to",[[24,"data-test-link","members-back"]],[["@route","@query"],["members",[30,[36,5],null,[["postAnalytics"],[[32,0,["postAnalytics"]]]]]]],[["default"],[{"statements":[[2,"\\n Members\\n "]],"parameters":[]}]]],[2,"\\n"]],"parameters":[]}]]],[2,"\\n "],[1,[30,[36,0],["arrow-right-small"],null]],[2," "],[1,[30,[36,4],[[32,0,["member","isNew"]],"New member","Edit member"],null]],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[10,"div"],[14,0,"gh-canvas-breadcrumb"],[12],[2,"\\n "],[8,"link-to",[[24,"data-test-link","members-back"]],[["@route"],["members"]],[["default"],[{"statements":[[2,"\\n Members\\n "]],"parameters":[]}]]],[2,"\\n "],[1,[30,[36,0],["arrow-right-small"],null]],[2," "],[1,[30,[36,4],[[32,0,["member","isNew"]],"New member","Edit member"],null]],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]}]]],[2," "],[10,"h2"],[14,0,"gh-canvas-title"],[14,"data-test-screen-title",""],[12],[2,"\\n"],[6,[37,4],[[32,0,["member","isNew"]]],null,[["default","else"],[{"statements":[[2," New"],[10,"span"],[14,0,"gh-canvas-title-hide-for-mobile"],[12],[2," member"],[13],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[1,[30,[36,3],[[32,0,["member","name"]],[32,0,["member","email"]]],null]],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n "],[13],[2,"\\n\\n "],[10,"section"],[14,0,"view-actions"],[12],[2,"\\n"],[6,[37,4],[[32,0,["session","user","canManageMembers"]]],null,[["default"],[{"statements":[[6,[37,2],[[32,0,["member","isNew"]]],null,[["default"],[{"statements":[[2," "],[10,"span"],[14,0,"dropdown"],[12],[2,"\\n "],[8,"gh-dropdown-button",[[24,"data-test-button","member-actions"]],[["@dropdownName","@classNames","@title"],["members-actions-menu","gh-btn gh-btn-icon icon-only gh-btn-action-icon","Members Actions"]],[["default"],[{"statements":[[2,"\\n "],[10,"span"],[12],[2,"\\n "],[1,[30,[36,0],["settings"],null]],[2,"\\n "],[10,"span"],[14,0,"hidden"],[12],[2,"Actions"],[13],[2,"\\n "],[13],[2,"\\n "]],"parameters":[]}]]],[2,"\\n "],[8,"gh-dropdown",[],[["@name","@tagName","@classNames"],["members-actions-menu","ul","gh-member-actions-menu dropdown-menu dropdown-triangle-top-right"]],[["default"],[{"statements":[[2,"\\n "],[10,"li"],[12],[2,"\\n "],[11,"button"],[24,0,"mr2"],[24,"data-test-button","impersonate"],[24,4,"button"],[4,[38,1],["click",[32,0,["toggleImpersonateMemberModal"]]],null],[12],[2,"\\n "],[10,"span"],[12],[2,"Impersonate"],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"li"],[12],[2,"\\n "],[11,"button"],[24,0,"mr2"],[24,"data-test-button","logout-member"],[24,4,"button"],[4,[38,1],["click",[32,0,["confirmLogoutMember"]]],null],[12],[2,"\\n "],[10,"span"],[12],[2,"Sign out of all devices"],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"li"],[12],[2,"\\n "],[11,"button"],[24,0,"mr2"],[24,"data-test-button","delete-member"],[24,4,"button"],[4,[38,1],["click",[32,0,["confirmDeleteMember"]]],null],[12],[2,"\\n "],[10,"span"],[14,0,"red"],[12],[2,"Delete member"],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "]],"parameters":[]}]]],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]}]]]],"parameters":[]}]]],[2,"\\n "],[8,"gh-task-button",[],[["@class","@type","@task","@data-test-button"],["gh-btn gh-btn-primary gh-btn-icon","button",[32,0,["saveTask"]],"save"]],null],[2,"\\n "],[13],[2,"\\n "]],"parameters":[]}]]],[2,"\\n\\n "],[10,"div"],[12],[2,"\\n "],[10,"form"],[14,0,"member-basic-info-form"],[12],[2,"\\n "],[8,"gh-member-settings-form",[],[["@member","@scratchMember","@setProperty","@onLabelEdit","@saveMember","@isSaveRunning","@isLoading"],[[32,0,["member"]],[32,0,["scratchMember"]],[32,0,["setProperty"]],[32,0,["editLabel"]],[32,0,["save"]],[32,0,["saveTask","isRunning"]],[32,0,["isLoading"]]]],null],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n"],[13],[2,"\\n\\n"],[6,[37,4],[[32,0,["showImpersonateMemberModal"]]],null,[["default"],[{"statements":[[2," "],[8,"gh-fullscreen-modal",[],[["@modal","@model","@close","@modifier"],["impersonate-member",[32,0,["member"]],[32,0,["toggleImpersonateMemberModal"]],"action wide"]],null],[2,"\\n"]],"parameters":[]}]]],[2,"\\n"],[6,[37,4],[[32,0,["showLabelModal"]]],null,[["default"],[{"statements":[[2," "],[8,"gh-fullscreen-modal",[],[["@modal","@model","@close","@modifier"],["members-label-form",[32,0,["labelModalData"]],[32,0,["toggleLabelModal"]],"action wide"]],null],[2,"\\n"]],"parameters":[]}]]]],"hasEval":false,"upvars":["svg-jar","on","unless","or","if","hash"]}',moduleName:"ghost-admin/templates/member.hbs"})})),define("ghost-admin/templates/members-activity",["exports"],(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
4684
4683
  e.default=Ember.HTMLBars.template({id:"2iefqHS/",block:'{"symbols":["eventsFetcher"],"statements":[[10,"section"],[15,0,[31,["gh-canvas gh-members-activity ",[30,[36,2],[[32,0,["memberRecord"]],"gh-members-activity-single"],null]," feature-memberAttribution"]]],[12],[2,"\\n "],[8,"gh-canvas-header",[[24,0,"gh-canvas-header"]],[[],[]],[["default"],[{"statements":[[2,"\\n"],[6,[37,2],[[32,0,["memberRecord"]]],null,[["default","else"],[{"statements":[[2," "],[10,"div"],[14,0,"flex flex-column"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-canvas-breadcrumb"],[12],[2,"\\n "],[8,"link-to",[[24,"data-test-link","members-activity-back"]],[["@route","@query"],["members-activity",[30,[36,4],["members-activity"],null]]],[["default"],[{"statements":[[2,"\\n Member activity\\n "]],"parameters":[]}]]],[2,"\\n "],[1,[30,[36,5],["arrow-right-small"],null]],[2," "],[1,[30,[36,0],[[32,0,["memberRecord","name"]],[32,0,["memberRecord","email"]]],null]],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[10,"h2"],[14,0,"gh-canvas-title"],[14,"data-test-screen-title",""],[12],[2,"\\n Member activity\\n "],[13],[2,"\\n"]],"parameters":[]}]]],[2,"\\n "],[10,"div"],[14,0,"view-actions"],[12],[2,"\\n "],[8,"members-activity/event-type-filter",[],[["@excludedEvents","@hiddenEvents","@onChange"],[[32,0,["excludedEvents"]],[32,0,["hiddenEvents"]],[32,0,["changeExcludedEvents"]]]],null],[2,"\\n\\n "],[8,"members-activity/member-filter",[],[["@selected","@onChange"],[[32,0,["memberRecord"]],[32,0,["changeMember"]]]],null],[2,"\\n "],[13],[2,"\\n "]],"parameters":[]}]]],[2,"\\n "],[10,"div"],[14,0,"view-container"],[12],[2,"\\n"],[6,[37,8],[[30,[36,7],null,[["filter","pageSize","memberId"],[[30,[36,6],null,[["excludedEvents","member"],[[32,0,["fullExcludedEvents"]],[32,0,["member"]]]]],50,[32,0,["member"]]]]]],null,[["default"],[{"statements":[[6,[37,2],[[32,1,["data"]]],null,[["default","else"],[{"statements":[[6,[37,2],[[32,0,["memberRecord"]]],null,[["default"],[{"statements":[[2," "],[8,"gh-member-details-activity",[],[["@member"],[[32,0,["memberRecord"]]]],null],[2,"\\n"]],"parameters":[]}]]],[2," "],[10,"div"],[14,0,"gh-list-scrolling"],[12],[2,"\\n "],[8,"members-activity/table",[],[["@hideMemberColumn","@events","@hasMultipleNewsletters"],[[30,[36,2],[[32,0,["member"]],true],null],[32,1,["data"]],[32,1,["hasMultipleNewsletters"]]]],null],[2,"\\n\\n"],[6,[37,2],[[30,[36,3],[[30,[36,0],[[32,1,["isLoading"]],[32,1,["hasReachedEnd"]]],null]],null]],null,[["default"],[{"statements":[[2," "],[8,"gh-scroll-trigger",[],[["@enter","@triggerOffset"],[[32,1,["loadNextPage"]],250]],null],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n"]],"parameters":[]},{"statements":[[6,[37,1],[[32,1,["isLoading"]]],null,[["default"],[{"statements":[[2," "],[8,"members-activity/no-events",[],[["@filter"],[[30,[36,0],[[32,0,["member"]],[32,0,["excludedEvents"]]],null]]],null],[2,"\\n"]],"parameters":[]}]]]],"parameters":[]}]]],[2,"\\n"],[6,[37,2],[[32,1,["isLoading"]]],null,[["default"],[{"statements":[[2," "],[10,"div"],[14,0,"no-posts-box"],[12],[8,"gh-loading-spinner",[],[[],[]],null],[13],[2,"\\n"]],"parameters":[]}]]]],"parameters":[1]}]]],[2," "],[13],[2,"\\n"],[13],[2,"\\n\\n"],[1,[30,[36,10],[[30,[36,9],null,null]],null]],[2,"\\n"]],"hasEval":false,"upvars":["or","unless","if","not","reset-query-params","svg-jar","members-event-filter","members-event-fetcher","let","-outlet","component"]}',moduleName:"ghost-admin/templates/members-activity.hbs"})})),define("ghost-admin/templates/members",["exports"],(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
4685
4684
  e.default=Ember.HTMLBars.template({id:"L6a1aELS",block:'{"symbols":["member","column"],"statements":[[10,"section"],[14,0,"gh-canvas"],[12],[2,"\\n "],[8,"gh-canvas-header",[[24,0,"gh-canvas-header break tablet members-header"]],[[],[]],[["default"],[{"statements":[[2,"\\n "],[10,"div"],[14,0,"flex flex-column"],[12],[2,"\\n"],[6,[37,3],[[32,0,["fromAnalytics"]]],null,[["default"],[{"statements":[[2," "],[10,"div"],[14,0,"gh-canvas-breadcrumb"],[12],[2,"\\n "],[8,"link-to",[],[["@route"],["posts"]],[["default"],[{"statements":[[2,"\\n Posts\\n "]],"parameters":[]}]]],[2,"\\n "],[1,[30,[36,1],["arrow-right-small"],null]],[2,"\\n "],[8,"link-to",[],[["@route","@models"],["posts.analytics",[32,0,["fromAnalytics"]]]],[["default"],[{"statements":[[2,"\\n Analytics\\n "]],"parameters":[]}]]],[2,"\\n "],[1,[30,[36,1],["arrow-right-small"],null]],[2,"Members\\n "],[13],[2,"\\n"]],"parameters":[]}]]],[2," "],[10,"h2"],[14,0,"gh-canvas-title"],[14,"data-test-screen-title",""],[12],[2,"Members"],[13],[2,"\\n "],[13],[2,"\\n "],[10,"section"],[14,0,"view-actions"],[12],[2,"\\n "],[10,"div"],[15,0,[31,["view-actions-bottom-row ",[30,[36,3],[[32,0,["hideSearchBar"]],"hidden"],null]]]],[12],[2,"\\n "],[10,"div"],[14,0,"relative gh-members-header-search"],[12],[2,"\\n "],[1,[30,[36,1],["search"],[["class"],["gh-input-search-icon"]]]],[2,"\\n "],[11,"input"],[24,"placeholder","Search members..."],[16,2,[32,0,["searchParam"]]],[24,"aria-label","Search members"],[16,0,[31,["gh-input gh-members-list-searchfield ",[30,[36,3],[[32,0,["searchParam"]],"active"],null]]]],[24,"data-test-input","members-search"],[24,4,"text"],[4,[38,11],["input",[32,0,["search"]]],null],[4,[38,11],["focus",[30,[36,13],[[30,[36,12],[[32,0,["searchIsFocused"]]],null],true],null]],null],[4,[38,11],["blur",[30,[36,13],[[30,[36,12],[[32,0,["searchIsFocused"]]],null],false],null]],null],[4,[38,14],[[30,[36,13],[[30,[36,12],[[32,0,["searchIsFocused"]]],null],false],null]],null],[12],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n\\n "],[10,"div"],[14,0,"view-actions-top-row"],[12],[2,"\\n "],[8,"members/filter",[],[["@isFiltered","@onApplyFilter","@defaultFilterParam","@onApplySoftFilter","@onApplyParsedFilter","@onResetSoftFilter","@onResetFilter","@onLabelEdit","@parseFilterParamCounter"],[[32,0,["isFiltered"]],[32,0,["applyFilter"]],[32,0,["filterParam"]],[32,0,["applySoftFilter"]],[32,0,["applyParsedFilter"]],[32,0,["resetSoftFilter"]],[32,0,["resetFilter"]],[32,0,["editLabel"]],[32,0,["parseFilterParamCounter"]]]],null],[2,"\\n "],[10,"span"],[14,0,"dropdown members-actions-dropdown"],[12],[2,"\\n "],[8,"gh-dropdown-button",[[24,"data-test-button","members-actions"]],[["@dropdownName","@classNames","@title"],["members-actions-menu","gh-btn gh-btn-icon icon-only gh-btn-action-icon","Members Actions"]],[["default"],[{"statements":[[2,"\\n "],[10,"span"],[12],[2,"\\n "],[1,[30,[36,1],["settings"],null]],[2,"\\n "],[10,"span"],[14,0,"hidden"],[12],[2,"Actions"],[13],[2,"\\n "],[13],[2,"\\n "]],"parameters":[]}]]],[2,"\\n "],[8,"gh-dropdown",[],[["@name","@tagName","@classNames"],["members-actions-menu","ul","gh-member-actions-menu dropdown-menu dropdown-triangle-top-right"]],[["default"],[{"statements":[[2,"\\n"],[6,[37,3],[[30,[36,4],[[32,0,["settings","membersSignupAccess"]],"none"],null]],null,[["default"],[{"statements":[[2," "],[10,"li"],[12],[2,"\\n "],[8,"link-to",[[24,0,"mr2"],[24,"data-test-link","import-csv"]],[["@route"],["members.import"]],[["default"],[{"statements":[[2,"\\n "],[10,"span"],[12],[2,"Import members"],[13],[2,"\\n "]],"parameters":[]}]]],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]}]]],[2," "],[10,"li"],[15,0,[31,[[30,[36,3],[[32,0,["members","length"]],"","disabled"],null]]]],[12],[2,"\\n"],[6,[37,3],[[32,0,["members","length"]]],null,[["default","else"],[{"statements":[[2," "],[11,"button"],[24,0,"mr2"],[24,"data-test-button","export-members"],[24,4,"button"],[4,[38,11],["click",[32,0,["exportData"]]],null],[12],[2,"\\n"],[6,[37,3],[[32,0,["showingAll"]]],null,[["default","else"],[{"statements":[[2," "],[10,"span"],[12],[2,"Export all members"],[13],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[10,"span"],[12],[2,"Export selected members ("],[1,[32,0,["members","length"]]],[2,")"],[13],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[10,"button"],[14,0,"mr2"],[14,"disabled","true"],[14,"data-test-button","export-members"],[14,4,"button"],[12],[2,"\\n "],[10,"span"],[12],[2,"Export selected members (0)"],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n"],[6,[37,3],[[30,[36,5],[[32,0,["members","length"]],[32,0,["isFiltered"]]],null]],null,[["default"],[{"statements":[[2," "],[10,"li"],[14,0,"divider"],[12],[13],[2,"\\n "],[10,"li"],[12],[2,"\\n "],[11,"button"],[24,0,"mr2"],[24,"data-test-button","add-label-selected"],[24,4,"button"],[4,[38,11],["click",[32,0,["bulkAddLabel"]]],null],[12],[2,"\\n "],[10,"span"],[12],[2,"Add label for selected members ("],[1,[32,0,["members","length"]]],[2,")"],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[10,"li"],[12],[2,"\\n "],[11,"button"],[24,0,"mr2"],[24,"data-test-button","remove-label-selected"],[24,4,"button"],[4,[38,11],["click",[32,0,["bulkRemoveLabel"]]],null],[12],[2,"\\n "],[10,"span"],[12],[2,"Remove label from selected members ("],[1,[32,0,["members","length"]]],[2,")"],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n"],[6,[37,3],[[30,[36,4],[[32,0,["settings","membersSignupAccess"]],"none"],null]],null,[["default"],[{"statements":[[2," "],[10,"li"],[12],[2,"\\n "],[11,"button"],[24,0,"mr2"],[24,"data-test-button","unsubscribe-selected"],[24,4,"button"],[4,[38,11],["click",[32,0,["bulkUnsubscribe"]]],null],[12],[2,"\\n "],[10,"span"],[12],[2,"Unsubscribe selected members ("],[1,[32,0,["members","length"]]],[2,")"],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]}]]],[6,[37,3],[[32,0,["isBulkDeletePermitted"]]],null,[["default"],[{"statements":[[2," "],[10,"li"],[14,0,"divider"],[12],[13],[2,"\\n "],[10,"li"],[12],[2,"\\n "],[11,"button"],[24,0,"mr2"],[24,"data-test-button","delete-selected"],[24,4,"button"],[4,[38,11],["click",[32,0,["bulkDelete"]]],null],[12],[2,"\\n "],[10,"span"],[14,0,"red"],[12],[2,"Delete selected members ("],[1,[32,0,["members","length"]]],[2,")"],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]}]]]],"parameters":[]}]]],[2," "]],"parameters":[]}]]],[2,"\\n "],[13],[2,"\\n"],[6,[37,3],[[30,[36,4],[[32,0,["settings","membersSignupAccess"]],"none"],null]],null,[["default"],[{"statements":[[2," "],[8,"link-to",[[24,0,"gh-btn gh-btn-primary"],[24,"data-test-new-member-button","true"]],[["@route"],["member.new"]],[["default"],[{"statements":[[10,"span"],[12],[2,"New member"],[13],[10,"span"],[14,0,"gh-btn-text-hide-for-mobile"],[12],[2,"New"],[13]],"parameters":[]}]]],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n "],[13],[2,"\\n "]],"parameters":[]}]]],[2,"\\n\\n"],[6,[37,3],[[32,0,["members","loading"]]],null,[["default","else"],[{"statements":[[2," "],[10,"div"],[14,0,"gh-content"],[12],[2,"\\n "],[8,"gh-loading-spinner",[],[[],[]],null],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[10,"section"],[15,0,[31,["view-container ",[30,[36,3],[[30,[36,10],[[30,[36,9],[[32,0,["members"]]],null],[30,[36,6],[[32,0,["members","length"]],6],null]],null],"members-list-container-stretch"],null]]]],[12],[2,"\\n"],[6,[37,3],[[32,0,["members"]]],null,[["default","else"],[{"statements":[[2," "],[10,"div"],[15,0,[31,["gh-list-scrolling ",[30,[36,3],[[30,[36,6],[[32,0,["members","length"]],6],null],"gh-list-with-helpsection"],null]]]],[14,"data-test-table","members"],[12],[2,"\\n "],[10,"table"],[14,0,"gh-list"],[12],[2,"\\n "],[10,"thead"],[12],[2,"\\n "],[10,"tr"],[12],[2,"\\n "],[10,"th"],[12],[1,[32,0,["listHeader"]]],[13],[2,"\\n "],[10,"th"],[14,"data-test-table-column","status"],[12],[2,"Status"],[13],[2,"\\n"],[6,[37,3],[[30,[36,5],[[30,[36,4],[[32,0,["settings","editorDefaultEmailRecipients"]],"disabled"],null],[32,0,["settings","emailTrackOpens"]]],null]],null,[["default"],[{"statements":[[2," "],[10,"th"],[14,"data-test-table-column","email_open_rate"],[12],[2,"Open rate"],[13],[2,"\\n"]],"parameters":[]}]]],[2," "],[10,"th"],[14,"data-test-table-column","location"],[12],[2,"Location"],[13],[2,"\\n "],[10,"th"],[14,"data-test-table-column","created"],[12],[2,"Created"],[13],[2,"\\n"],[6,[37,8],[[30,[36,7],[[30,[36,7],[[32,0,["filterColumns"]]],null]],null]],null,[["default"],[{"statements":[[2," "],[10,"th"],[15,"data-test-table-column",[32,2,["name"]]],[12],[1,[32,2,["label"]]],[13],[2,"\\n"]],"parameters":[2]}]]],[2," "],[13],[2,"\\n "],[13],[2,"\\n "],[8,"vertical-collection",[],[["@tagName","@items","@key","@containerSelector","@estimateHeight","@staticHeight","@bufferSize","@renderAll"],["tbody",[32,0,["members"]],"id",".gh-list-scrolling",75,true,5,false]],[["default"],[{"statements":[[2,"\\n"],[6,[37,3],[[32,1,["is_loading"]]],null,[["default","else"],[{"statements":[[2," "],[8,"members/list-item-loading",[],[["@newsletterEnabled","@filterColumns"],[[30,[36,5],[[30,[36,4],[[32,0,["settings","editorDefaultEmailRecipients"]],"disabled"],null],[32,0,["settings","emailTrackOpens"]]],null],[32,0,["filterColumns"]]]],null],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[8,"members/list-item",[[16,"data-test-member",[32,1,["id"]]]],[["@newsletterEnabled","@member","@filterColumns","@query"],[[30,[36,5],[[30,[36,4],[[32,0,["settings","editorDefaultEmailRecipients"]],"disabled"],null],[32,0,["settings","emailTrackOpens"]]],null],[32,1,["content"]],[32,0,["filterColumns"]],[30,[36,0],null,[["postAnalytics"],[[32,0,["postAnalytics"]]]]]]],null],[2,"\\n"]],"parameters":[]}]]],[2," "]],"parameters":[1]}]]],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]},{"statements":[[6,[37,3],[[32,0,["showingAll"]]],null,[["default","else"],[{"statements":[[2," "],[8,"gh-members-no-members",[],[["@afterCreate","@members"],[[32,0,["refreshData"]],[32,0,["members"]]]],null],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[10,"div"],[14,0,"gh-members-empty"],[14,"data-test-no-matching-members",""],[12],[2,"\\n "],[1,[30,[36,1],["members-placeholder"],[["class"],["gh-members-placeholder"]]]],[2,"\\n "],[10,"h4"],[12],[2,"No members match the current filter"],[13],[2,"\\n "],[8,"link-to",[[24,0,"gh-btn mt4"],[24,"data-test-button","show-all-members"]],[["@route","@query"],["members",[30,[36,2],["members.index"],null]]],[["default"],[{"statements":[[2,"\\n "],[10,"span"],[12],[2,"Show all members"],[13],[2,"\\n "]],"parameters":[]}]]],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]}]]]],"parameters":[]}]]],[6,[37,3],[[30,[36,6],[[32,0,["members","length"]],6],null]],null,[["default"],[{"statements":[[2," "],[10,"div"],[14,0,"gh-main-section gh-members-help"],[12],[2,"\\n "],[10,"h2"],[14,0,"gh-main-section-header small bn"],[12],[2,"Get started with memberships"],[13],[2,"\\n "],[10,"div"],[14,0,"gh-main-section-block"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-main-section-content bordered"],[12],[2,"\\n "],[10,"a"],[14,6,"https://ghost.org/resources/build-audience-subscriber-signups/"],[14,"target","_blank"],[14,0,"gh-members-help-card"],[14,"rel","noopener noreferrer"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-members-help-content"],[12],[2,"\\n "],[10,"div"],[14,0,"thumbnail"],[14,5,"background-image: url(assets/img/marketing/members-1-8b89a1f48fe7b336754e91a429531f65.jpg);"],[12],[13],[2,"\\n "],[10,"div"],[14,0,"text"],[12],[2,"\\n "],[10,"h3"],[12],[2,"Building your audience with subscriber signups"],[13],[2,"\\n "],[10,"p"],[12],[2,"Learn how to turn anonymous visitors into logged-in members with memberships in Ghost."],[13],[2,"\\n "],[10,"div"],[14,0,"gh-btn gh-btn-link"],[12],[2,"Start building →"],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n\\n "],[10,"a"],[14,6,"https://ghost.org/resources/first-100-email-subscribers/"],[14,"target","_blank"],[14,0,"gh-members-help-card"],[14,"rel","noopener noreferrer"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-members-help-content"],[12],[2,"\\n "],[10,"div"],[14,0,"thumbnail right"],[14,5,"background-image: url(assets/img/marketing/members-2-791205c82d5cf221f8c99a74f9ee1739.jpg);"],[12],[13],[2,"\\n "],[10,"div"],[14,0,"text"],[12],[2,"\\n "],[10,"h3"],[12],[2,"Get your first 100 email subscribers"],[13],[2,"\\n "],[10,"p"],[12],[2,"Starting from zero? Use this guide to find your founding audience members."],[13],[2,"\\n "],[10,"div"],[14,0,"gh-btn gh-btn-link"],[12],[2,"Become an expert →"],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n"]],"parameters":[]}]]],[13],[2,"\\n\\n"],[1,[30,[36,16],[[30,[36,15],null,null]],null]],[2,"\\n\\n"],[6,[37,3],[[32,0,["showUnsubscribeMembersModal"]]],null,[["default"],[{"statements":[[2," "],[8,"gh-fullscreen-modal",[],[["@modal","@model","@confirm","@close","@modifier"],["unsubscribe-members",[30,[36,0],null,[["memberCount"],[[32,0,["members","length"]]]]],[32,0,["unsubscribeMembers"]],[32,0,["toggleUnsubscribeMembersModal"]],"action wide"]],null],[2,"\\n"]],"parameters":[]}]]],[2,"\\n"],[6,[37,3],[[32,0,["showLabelModal"]]],null,[["default"],[{"statements":[[2," "],[8,"gh-fullscreen-modal",[],[["@modal","@model","@close","@modifier"],["members-label-form",[32,0,["labelModalData"]],[32,0,["toggleLabelModal"]],"action wide"]],null],[2,"\\n"]],"parameters":[]}]]]],"hasEval":false,"upvars":["hash","svg-jar","reset-query-params","if","not-eq","and","lt","-track-array","each","not","or","on","mut","fn","will-destroy","-outlet","component"]}',moduleName:"ghost-admin/templates/members.hbs"})})),define("ghost-admin/templates/members/import",["exports"],(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
4686
4685
  e.default=Ember.HTMLBars.template({id:"oWi45bKX",block:'{"symbols":[],"statements":[[8,"gh-fullscreen-modal",[],[["@modal","@confirm","@close","@modifier"],["import-members",[32,0,["refreshMembers"]],[32,0,["close"]],"action import-members"]],null],[2,"\\n"]],"hasEval":false,"upvars":[]}',moduleName:"ghost-admin/templates/members/import.hbs"})})),define("ghost-admin/templates/mentions",["exports"],(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
@@ -4709,10 +4708,10 @@ e.default=Ember.HTMLBars.template({id:"d4mHUhIz",block:'{"symbols":["tag"],"stat
4709
4708
  e.default=Ember.HTMLBars.template({id:"hXA35Lud",block:'{"symbols":["entry"],"statements":[[11,"section"],[24,0,"gh-canvas js-settings-content gh-whats-new-canvas"],[4,[38,4],null,null],[12],[2,"\\n "],[8,"gh-canvas-header",[[24,0,"gh-canvas-header"]],[[],[]],[["default"],[{"statements":[[2,"\\n "],[10,"h2"],[14,0,"gh-whats-new-heading"],[12],[1,[30,[36,5],["gift"],null]],[2," What’s new?"],[13],[2,"\\n "],[10,"a"],[14,6,"https://ghost.org/changelog/#/portal/signup"],[14,0,"gh-btn gh-btn-primary"],[14,"target","_blank"],[14,"rel","noopener noreferrer"],[14,4,"button"],[12],[10,"span"],[12],[2,"Turn on notifications"],[13],[13],[2,"\\n "]],"parameters":[]}]]],[2,"\\n "],[10,"section"],[14,0,"view-container"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-about-container"],[12],[2,"\\n "],[11,"section"],[24,0,"gh-whats-new gh-about-box"],[4,[38,7],[[30,[36,6],[[32,0,["whatsNew","updateLastSeen"]]],null]],null],[12],[2,"\\n"],[6,[37,9],[[30,[36,8],[[30,[36,8],[[32,0,["whatsNew","entries"]]],null]],null]],null,[["default"],[{"statements":[[2," "],[11,"div"],[24,0,"gh-wn-entry"],[4,[38,1],null,[["when"],[[30,[36,0],[[32,1,["slug"]],[32,0,["entry"]]],null]]]],[12],[2,"\\n "],[10,"a"],[15,6,[31,[[32,1,["url"]]]]],[12],[2,"\\n "],[10,"h4"],[12],[1,[30,[36,2],[[32,1,["published_at"]],"DD MMMM YYYY"],null]],[13],[2,"\\n "],[10,"h1"],[12],[1,[32,1,["title"]]],[13],[2,"\\n"],[6,[37,3],[[32,1,["feature_image"]]],null,[["default"],[{"statements":[[2," "],[10,"img"],[14,0,"mb5"],[15,"src",[32,1,["feature_image"]]],[12],[13],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n "],[10,"div"],[14,0,"gh-wn-content"],[12],[2,"\\n"],[6,[37,3],[[32,1,["custom_excerpt"]]],null,[["default","else"],[{"statements":[[2," "],[10,"p"],[12],[1,[32,1,["custom_excerpt"]]],[13],[2,"\\n "],[10,"a"],[15,6,[32,1,["url"]]],[14,0,"dib fw6 mb6"],[14,"target","_blank"],[14,"rel","noopener noreferrer"],[12],[2,"Read the full post →"],[13],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[2,[32,1,["html"]]],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[1]}]]],[2," "],[10,"a"],[14,0,"green"],[14,6,"https://ghost.org/changelog"],[14,"target","_blank"],[14,"rel","noopener noreferrer"],[12],[2,"View all updates →"],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n"],[13],[2,"\\n"]],"hasEval":false,"upvars":["eq","scroll-to","moment-format","if","scroll-top","svg-jar","perform","did-insert","-track-array","each"]}',moduleName:"ghost-admin/templates/whatsnew.hbs"})})),define("ghost-admin/transforms/boolean",["exports","@ember-data/serializer/-private"],(function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.BooleanTransform}})})),define("ghost-admin/transforms/date",["exports","@ember-data/serializer/-private"],(function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.DateTransform}})})),define("ghost-admin/transforms/facebook-url-user",["exports","@ember-data/serializer/transform"],(function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
4710
4709
  class i extends t.default{deserialize(e){if(e){let[,t]=e.match(/(\S+)/)||[]
4711
4710
  return`https://www.facebook.com/${t}`}return e}serialize(e){if(e){let[,t]=e.match(/(?:https:\/\/)(?:www\.)(?:facebook\.com)\/(?:#!\/)?(\w+\/?\S+)/im)||[]
4712
- return t}return e}}e.default=i})),define("ghost-admin/transforms/json-string",["exports","@ember-data/serializer/transform"],(function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
4711
+ return t}return e}}e.default=i}))
4712
+ define("ghost-admin/transforms/json-string",["exports","@ember-data/serializer/transform"],(function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
4713
4713
  class i extends t.default{deserialize(e){let t=""===e?null:e
4714
- return JSON.parse(t)}serialize(e){return e?JSON.stringify(e):null}}e.default=i}))
4715
- define("ghost-admin/transforms/member-subscription",["exports","ghost-admin/models/member-subscription","@ember-data/serializer/transform"],(function(e,t,i){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
4714
+ return JSON.parse(t)}serialize(e){return e?JSON.stringify(e):null}}e.default=i})),define("ghost-admin/transforms/member-subscription",["exports","ghost-admin/models/member-subscription","@ember-data/serializer/transform"],(function(e,t,i){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
4716
4715
  class r extends i.default{deserialize(e){let i,r
4717
4716
  return r=e||[],i=r.map((e=>t.default.create(e))),Ember.A(i)}serialize(e){let t
4718
4717
  return t=Ember.isArray(e)?e.map((e=>e)).compact():[],t}}e.default=r})),define("ghost-admin/transforms/member-tier",["exports","ghost-admin/models/member-tier","@ember-data/serializer/transform"],(function(e,t,i){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
@@ -4739,9 +4738,9 @@ t&&t.focus()}}))}})),define("ghost-admin/utils/analytics",["exports"],(function(
4739
4738
  if(e&&e.get("email")){const t=e.get("email"),i=await async function(e){try{const t=await window.crypto.subtle.digest("SHA-256",(new TextEncoder).encode(e.trim().toLowerCase())),i=Array.from(new Uint8Array(t)).map((e=>e.toString(16).padStart(2,"0"))).join("")
4740
4739
  return 64===i.length?i:null}catch(t){return null}}(t),r=window.posthog.get_distinct_id()
4741
4740
  if(i&&i!==r){const t={}
4742
- e.get("id")&&(t.id=e.get("id")),e.get("role").name&&(t.role=e.get("role").name.toLowerCase()),e.get("createdAtUTC")&&(t.created_at=e.get("createdAtUTC").toISOString()),window.posthog.identify(i,t)}}},e.resetUser=function(){t()&&window.posthog.reset()},e.trackEvent=function(e,i={}){window.plausible=window.plausible||function(){(window.plausible.q=window.plausible.q||[]).push(arguments)},window.plausible(e,{props:i}),t()&&window.posthog.capture(e,i)}})),define("ghost-admin/utils/bound-one-way",["exports"],(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,t){"function"!=typeof t&&(t=function(e){return e})
4743
- return Ember.computed(e,{get(){return t(this.get(e))},set:(e,t)=>t})}}))
4744
- define("ghost-admin/utils/caja-sanitizers",["exports"],(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
4741
+ e.get("id")&&(t.id=e.get("id")),e.get("role").name&&(t.role=e.get("role").name.toLowerCase()),e.get("createdAtUTC")&&(t.created_at=e.get("createdAtUTC").toISOString()),window.posthog.identify(i,t)}}},e.resetUser=function(){t()&&window.posthog.reset()},e.trackEvent=function(e,i={}){window.plausible=window.plausible||function(){(window.plausible.q=window.plausible.q||[]).push(arguments)},window.plausible(e,{props:i}),t()&&window.posthog.capture(e,i)}}))
4742
+ define("ghost-admin/utils/bound-one-way",["exports"],(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,t){"function"!=typeof t&&(t=function(e){return e})
4743
+ return Ember.computed(e,{get(){return t(this.get(e))},set:(e,t)=>t})}})),define("ghost-admin/utils/caja-sanitizers",["exports"],(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
4745
4744
  e.default={url:function(e){if(e=e.toString().replace(/['"]+/g,""),/^https?:\/\//.test(e)||/^\//.test(e))return e},id:function(e){return e}}})),define("ghost-admin/utils/calculate-position",["exports","ember-basic-dropdown/utils/calculate-position"],(function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.default}})})),define("ghost-admin/utils/copy-text-to-clipboard",["exports"],(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e){navigator.clipboard.writeText(e)}})),define("ghost-admin/utils/ctrl-or-cmd",["exports"],(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
4746
4745
  e.default=-1!==navigator.userAgent.indexOf("Mac")?"command":"ctrl"})),define("ghost-admin/utils/currency",["exports"],(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.currencies=void 0,e.getCurrencyOptions=function(){const e=t.slice(0,5).map((e=>({value:e.isoCode.toLowerCase(),label:`${e.isoCode} - ${e.name}`,isoCode:e.isoCode}))),i=t.slice(5,t.length).map((e=>({value:e.isoCode.toLowerCase(),label:`${e.isoCode} - ${e.name}`,isoCode:e.isoCode})))
4747
4746
  return[{groupName:"—",options:e},{groupName:"—",options:i}]},e.getNonDecimal=function(e){return e/100},e.getSymbol=function(e){if(!e)return""
@@ -4857,7 +4856,7 @@ c&&(b.os=c)
4857
4856
  h&&(b.timezone=h)
4858
4857
  return b},e.hexToRgba=function(e,t=1){const i=parseInt(e.slice(1,3),16),r=parseInt(e.slice(3,5),16),n=parseInt(e.slice(5,7),16)
4859
4858
  return`rgba(${i}, ${r}, ${n}, ${t})`},e.statsStaticColors=void 0
4860
- e.TB_VERSION=7,e.RANGE_OPTIONS=[{name:"Today",value:1},{name:"Last 7 days",value:7},{name:"Last 30 days",value:31},{name:"Last 3 months",value:91},{name:"Year to date",value:366},{name:"Last 12 months",value:372},{name:"All time",value:1e3}],e.CONTENT_OPTIONS=[{name:"Posts & pages",value:"all"},{name:"Posts",value:"posts"},{name:"Pages",value:"pages"}],e.CAMPAIGN_OPTIONS=[{name:"All campaigns",value:"all"},{name:"UTM Medium",value:"utm-medium"},{name:"UTM Source",value:"utm-source"},{name:"UTM Campaign",value:"utm-campaign"},{name:"UTM Content",value:"utm-content"},{name:"UTM Term",value:"utm-term"}],e.AUDIENCE_TYPES=[{name:"Anonymous visitors",value:"undefined"},{name:"Free members",value:"free"},{name:"Paid members",value:"paid"}],e.STATS_LABEL_MAPPINGS={US:"United States",TWN:"Taiwan","mobile-ios":"iOS","mobile-android":"Android",macos:"macOS","google.com":"Google","ghost.org":"Ghost","bing.com":"Bing","bsky.app":"Bluesky","yahoo.com":"Yahoo","duckduckgo.com":"DuckDuckGo"}
4859
+ e.TB_VERSION=8,e.RANGE_OPTIONS=[{name:"Today",value:1},{name:"Last 7 days",value:7},{name:"Last 30 days",value:31},{name:"Last 3 months",value:91},{name:"Year to date",value:366},{name:"Last 12 months",value:372},{name:"All time",value:1e3}],e.CONTENT_OPTIONS=[{name:"Posts & pages",value:"all"},{name:"Posts",value:"posts"},{name:"Pages",value:"pages"}],e.CAMPAIGN_OPTIONS=[{name:"All campaigns",value:"all"},{name:"UTM Medium",value:"utm-medium"},{name:"UTM Source",value:"utm-source"},{name:"UTM Campaign",value:"utm-campaign"},{name:"UTM Content",value:"utm-content"},{name:"UTM Term",value:"utm-term"}],e.AUDIENCE_TYPES=[{name:"Anonymous visitors",value:"undefined"},{name:"Free members",value:"free"},{name:"Paid members",value:"paid"}],e.STATS_LABEL_MAPPINGS={US:"United States",TWN:"Taiwan","mobile-ios":"iOS","mobile-android":"Android",macos:"macOS","google.com":"Google","ghost.org":"Ghost","bing.com":"Bing","bsky.app":"Bluesky","yahoo.com":"Yahoo","duckduckgo.com":"DuckDuckGo"}
4861
4860
  e.barListColor="#F1F3F4",e.statsStaticColors=["#A568FF","#7B7BFF","#B3CEFF","#D4ECF7","#EFFDFD","#F7F7F7"]
4862
4861
  function i(e){const i=Intl.DateTimeFormat().resolvedOptions().timeZone,r=(0,t.default)().tz(i).endOf("day")
4863
4862
  return{startDate:(0,t.default)().tz(i).subtract(e-1,"days").startOf("day"),endDate:r,timezone:i}}e.getCountryFlag=e=>e&&null!==e&&"ᴺᵁᴸᴸ"!==e.toUpperCase()?e.toUpperCase().replace(/./g,(e=>String.fromCodePoint(e.charCodeAt(0)+127397))):"🏳️"})),define("ghost-admin/utils/subscription-data",["exports","moment-timezone","ghost-admin/utils/currency"],(function(e,t,i){function r(e){return("canceled"!==e.status||e.cancel_at_period_end)&&e.current_period_end?(0,t.default)(e.current_period_end).format("D MMM YYYY"):""}function n(e){return["active","trialing","past_due","unpaid"].includes(e.status)}function a(e){return!e.id}function s(e){return"canceled"===e.status}function o(e){return e.cancel_at_period_end&&n(e)}function l(e){if(!e.id&&e.tier&&e.tier.expiry_at)return(0,t.default)(e.tier.expiry_at).utc().format("D MMM YYYY")}function u(e){if(e.trial_end_at&&(0,t.default)(e.trial_end_at).isAfter(new Date,"day"))return(0,t.default)(e.trial_end_at).format("D MMM YYYY")}function d(e,t=!1){const i=t?" – ":"",r=e.validUntil?" ":""
@@ -4873,7 +4872,8 @@ Ember.isBlank(t)&&(e.errors.add("role","Please select a role."),e.hasValidated.p
4873
4872
  e.default=t.default.create({properties:["name"],name(e){Ember.isBlank(e.name)&&(e.errors.add("name","Please enter a name"),e.hasValidated.pushObject("name"),this.invalidate())}})})),define("ghost-admin/validators/member",["exports","ghost-admin/validators/base","validator"],(function(e,t,i){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
4874
4873
  e.default=t.default.create({properties:["name","email","note"],name(e){i.default.isLength(e.name||"",0,191)||(e.errors.add("name","Name cannot be longer than 191 characters."),this.invalidate())},email(e){let t=e.email
4875
4874
  Ember.isBlank(t)?(e.errors.add("email","Please enter an email."),this.invalidate()):i.default.isEmail(t)||(e.errors.add("email","Invalid Email."),this.invalidate()),i.default.isLength(e.email||"",0,191)||(e.errors.add("email","Email cannot be longer than 191 characters."),this.invalidate()),e.hasValidated.addObject("email")},note(e){let t=e.note
4876
- i.default.isLength(t||"",0,500)||(e.errors.add("note","Note is too long."),this.invalidate()),e.hasValidated.addObject("note")}})})),define("ghost-admin/validators/mixins/password",["exports","validator"],(function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
4875
+ i.default.isLength(t||"",0,500)||(e.errors.add("note","Note is too long."),this.invalidate()),e.hasValidated.addObject("note")}})}))
4876
+ define("ghost-admin/validators/mixins/password",["exports","validator"],(function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
4877
4877
  const i=["1234567890","qwertyuiop","qwertzuiop","asdfghjkl;","abcdefghij","0987654321","1q2w3e4r5t","12345asdfg"],r=["ghost","password","passw0rd"]
4878
4878
  e.default=Ember.Mixin.create({_characterOccurance(e){let t,i={},r=!0
4879
4879
  t=e.length/2
@@ -4881,8 +4881,7 @@ for(let n=0;n<e.length;n+=1)i[e[n]]?i[e[n]]+=1:i[e[n]]=1
4881
4881
  for(let n in i)if(i[n]>=t)return r=!1,r
4882
4882
  return r},passwordValidation(e,n,a){let s,o=e.config?.blogUrl||window.location.host,l=e.blogTitle||e.config?.blogTitle
4883
4883
  if(n=n||e.password,a=a||"password",o=o.replace(/^http(s?):\/\//,""),s=o.match(/\/$/)?o:`${o}/`,l=l?l.trim().toLowerCase():l,!t.default.isLength(n||"",10))return e.errors.add(a,"Password must be at least 10 characters long."),this.invalidate()
4884
- n=n.toString(),i.forEach((t=>{t===n&&(e.errors.add(a,"Sorry, you cannot use an insecure password."),this.invalidate())})),n.toLowerCase()===e.email.toLowerCase()&&(e.errors.add(a,"Sorry, you cannot use an insecure password."),this.invalidate()),r.forEach((t=>{n.toLowerCase().indexOf(t)>=0&&(e.errors.add(a,"Sorry, you cannot use an insecure password."),this.invalidate())})),n.toLowerCase()===l&&(e.errors.add(a,"Sorry, you cannot use an insecure password."),this.invalidate()),n.toLowerCase()!==o&&n.toLowerCase()!==s||(e.errors.add(a,"Sorry, you cannot use an insecure password."),this.invalidate()),this._characterOccurance(n)||(e.errors.add(a,"Sorry, you cannot use an insecure password."),this.invalidate())}})}))
4885
- define("ghost-admin/validators/nav-item",["exports","ghost-admin/validators/base","validator"],(function(e,t,i){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
4884
+ n=n.toString(),i.forEach((t=>{t===n&&(e.errors.add(a,"Sorry, you cannot use an insecure password."),this.invalidate())})),n.toLowerCase()===e.email.toLowerCase()&&(e.errors.add(a,"Sorry, you cannot use an insecure password."),this.invalidate()),r.forEach((t=>{n.toLowerCase().indexOf(t)>=0&&(e.errors.add(a,"Sorry, you cannot use an insecure password."),this.invalidate())})),n.toLowerCase()===l&&(e.errors.add(a,"Sorry, you cannot use an insecure password."),this.invalidate()),n.toLowerCase()!==o&&n.toLowerCase()!==s||(e.errors.add(a,"Sorry, you cannot use an insecure password."),this.invalidate()),this._characterOccurance(n)||(e.errors.add(a,"Sorry, you cannot use an insecure password."),this.invalidate())}})})),define("ghost-admin/validators/nav-item",["exports","ghost-admin/validators/base","validator"],(function(e,t,i){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
4886
4885
  e.default=t.default.create({properties:["label","url"],label(e){let t=e.label,i=e.hasValidated
4887
4886
  Ember.isBlank(t)&&(e.errors.add("label","You must specify a label"),this.invalidate()),i.addObject("label")},url(e){let t=e.url,r=e.hasValidated,n=new RegExp(/^(\/|#|[a-zA-Z0-9-]+:)/)
4888
4887
  Ember.isBlank(t)?(e.errors.add("url","You must specify a URL or relative path"),this.invalidate()):(t.match(/\s/)||!i.default.isURL(t,{require_protocol:!0})&&!t.match(n))&&(e.errors.add("url","You must specify a valid URL or relative path"),this.invalidate()),r.addObject("url")}})})),define("ghost-admin/validators/new-user",["exports","ghost-admin/validators/base","ghost-admin/validators/mixins/password","validator"],(function(e,t,i,r){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
@@ -4940,6 +4939,6 @@ this.passwordChange(e),e.hasValidated.addObject("password"),Ember.isBlank(t)&&(e
4940
4939
  e.default=n.create()})),define("ghost-admin/validators/webhook",["exports","ghost-admin/validators/base","validator"],(function(e,t,i){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
4941
4940
  e.default=t.default.create({properties:["name","event","targetUrl","secret"],name(e){Ember.isBlank(e.name)?(e.errors.add("name","Please enter a name"),e.hasValidated.pushObject("name"),this.invalidate()):i.default.isLength(e.name,0,191)||(e.errors.add("name","Name is too long, max 191 chars"),e.hasValidated.pushObject("name"),this.invalidate())},event(e){Ember.isBlank(e.event)&&(e.errors.add("event","Please select an event"),e.hasValidated.pushObject("event"),this.invalidate())},targetUrl(e){Ember.isBlank(e.targetUrl)?e.errors.add("targetUrl","Please enter a target URL"):i.default.isURL(e.targetUrl||"",{require_protocol:!1})?i.default.isLength(e.targetUrl,0,2e3)||e.errors.add("targetUrl","Target URL is too long, max 2000 chars"):e.errors.add("targetUrl","Please enter a valid URL"),e.hasValidated.pushObject("targetUrl"),e.errors.has("targetUrl")&&this.invalidate()},secret(e){Ember.isBlank(e.secret)||i.default.isLength(e.secret,0,191)||(e.errors.add("secret","Secret is too long, max 191 chars"),e.hasValidated.pushObject("secret"),this.invalidate())}})})),define("ghost-admin/views/application",["exports"],(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
4942
4941
  e.default=Ember.Component.extend({})})),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))}
4943
- return Object.defineProperty(i,"__esModule",{value:!0}),i}catch(r){throw new Error('Could not read config from meta tag with name "'+e+'".')}})),runningTests||require("ghost-admin/app").default.create({version:"5.115",name:"ghost-admin"})
4942
+ return Object.defineProperty(i,"__esModule",{value:!0}),i}catch(r){throw new Error('Could not read config from meta tag with name "'+e+'".')}})),runningTests||require("ghost-admin/app").default.create({version:"5.116",name:"ghost-admin"})
4944
4943
 
4945
- //# sourceMappingURL=ghost-c704473dc7abe643b8e6d070b9fcff9e.map
4944
+ //# sourceMappingURL=ghost-5d2e6a4ac00a4d90b3395e56717b9f7a.map