ghost 4.47.2 → 4.47.3

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.
@@ -2187,12 +2187,16 @@ this.args.onChange?.(t)}*fetchOptionsTask(){const e=yield[]
2187
2187
  if(this.feature.get("multipleProducts")){const t=yield this.store.query("product",{filter:"type:paid",limit:"all",include:"monthly_price,yearly_price,benefits"})
2188
2188
  if(this.products=t,t.length>0){const n={groupName:"Tiers",options:[]}
2189
2189
  t.forEach((e=>{n.options.push({name:e.name,id:e.id,count:e.count?.members,class:"segment-product"})})),e.push(n),this.args.selectDefaultProduct&&!this.args.tiers&&this.setSegment([n.options[0]])}}this._options=e}},u=h(l.prototype,"store",[i],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),d=h(l.prototype,"feature",[r],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),c=h(l.prototype,"_options",[a],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return[]}}),p=h(l.prototype,"products",[s],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return[]}}),h(l.prototype,"setSegment",[o],Object.getOwnPropertyDescriptor(l.prototype,"setSegment"),l.prototype),h(l.prototype,"fetchOptionsTask",[n.task],Object.getOwnPropertyDescriptor(l.prototype,"fetchOptionsTask"),l.prototype),l)
2190
- e.default=g,Ember._setComponentTemplate(b,g)})),define("ghost-admin/components/vertical-collection",["exports","@html-next/vertical-collection/components/vertical-collection/component"],(function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.default}})})),define("ghost-admin/components/x-file-input",["exports","emberx-file-input/components/x-file-input"],(function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.default}})})),define("ghost-admin/controllers/application",["exports"],(function(e){var t,n,i,r,a,s,o,l,u,d,c,p,m,h,b,g,f,v,y,w
2191
- function E(e,t,n,i){n&&Object.defineProperty(e,t,{enumerable:n.enumerable,configurable:n.configurable,writable:n.writable,value:n.initializer?n.initializer.call(i):void 0})}function k(e,t,n,i,r){var a={}
2190
+ e.default=g,Ember._setComponentTemplate(b,g)})),define("ghost-admin/components/vertical-collection",["exports","@html-next/vertical-collection/components/vertical-collection/component"],(function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.default}})})),define("ghost-admin/components/x-file-input",["exports","emberx-file-input/components/x-file-input"],(function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.default}})})),define("ghost-admin/controllers/application",["exports"],(function(e){var t,n,i,r,a,s,o,l,u,d,c,p,m,h,b,g,f,v,y,w,E,k,P,O,j,_,z
2191
+ function S(e,t,n,i){n&&Object.defineProperty(e,t,{enumerable:n.enumerable,configurable:n.configurable,writable:n.writable,value:n.initializer?n.initializer.call(i):void 0})}function T(e,t,n,i,r){var a={}
2192
2192
  return Object.keys(i).forEach((function(e){a[e]=i[e]})),a.enumerable=!!a.enumerable,a.configurable=!!a.configurable,("value"in a||a.initializer)&&(a.writable=!0),a=n.slice().reverse().reduce((function(n,i){return i(e,t,n)||n}),a),r&&void 0!==a.initializer&&(a.value=a.initializer?a.initializer.call(r):void 0,a.initializer=void 0),void 0===a.initializer&&(Object.defineProperty(e,t,a),a=null),a}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
2193
- let P=(t=Ember.inject.service,n=Ember.inject.service,i=Ember.inject.service,r=Ember.inject.service,a=Ember.inject.service,s=Ember.inject.service,o=Ember.inject.service,l=Ember.inject.service,u=Ember.computed.reads("config.hostSettings.billing.enabled"),d=Ember.computed("router.currentRouteName","session.{isAuthenticated,user}","ui.isFullScreen"),c=class extends Ember.Controller{constructor(){super(...arguments),E(this,"billing",p,this),E(this,"config",m,this),E(this,"dropdown",h,this),E(this,"feature",b,this),E(this,"router",g,this),E(this,"session",f,this),E(this,"settings",v,this),E(this,"ui",y,this),E(this,"showBilling",w,this)}get showNavMenu(){let{router:e,session:t,ui:n}=this
2194
- return!n.isFullScreen&&(!(!t.isAuthenticated||!t.user)&&(("error404"!==e.currentRouteName||t.isAuthenticated)&&!e.currentRouteName.match(/(signin|signup|setup|reset)/)))}},p=k(c.prototype,"billing",[t],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),m=k(c.prototype,"config",[n],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),h=k(c.prototype,"dropdown",[i],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),b=k(c.prototype,"feature",[r],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),g=k(c.prototype,"router",[a],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),f=k(c.prototype,"session",[s],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),v=k(c.prototype,"settings",[o],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),y=k(c.prototype,"ui",[l],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),w=k(c.prototype,"showBilling",[u],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),k(c.prototype,"showNavMenu",[d],Object.getOwnPropertyDescriptor(c.prototype,"showNavMenu"),c.prototype),c)
2195
- e.default=P})),define("ghost-admin/controllers/billing",["exports"],(function(e){var t,n,i
2193
+ let x=(t=Ember.inject.service,n=Ember.inject.service,i=Ember.inject.service,r=Ember.inject.service,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.computed.reads("config.hostSettings.update.enabled"),p=Ember.computed.reads("config.hostSettings.billing.enabled"),m=Ember.computed("router.currentRouteName","session.{isAuthenticated,user}","ui.isFullScreen"),h=Ember._action,b=class extends Ember.Controller{constructor(){super(...arguments),S(this,"ajax",g,this),S(this,"billing",f,this),S(this,"config",v,this),S(this,"dropdown",y,this),S(this,"feature",w,this),S(this,"ghostPaths",E,this),S(this,"router",k,this),S(this,"session",P,this),S(this,"settings",O,this),S(this,"ui",j,this),S(this,"showUpdateLink",_,this),S(this,"showBilling",z,this)}get showNavMenu(){let{router:e,session:t,ui:n}=this
2194
+ return!n.isFullScreen&&(!(!t.isAuthenticated||!t.user)&&(("error404"!==e.currentRouteName||t.isAuthenticated)&&!e.currentRouteName.match(/(signin|signup|setup|reset)/)))}openUpdateTab(){const e=window.open("","_blank")
2195
+ e.document.write("Loading...")
2196
+ const t=new URL(this.config.get("hostSettings.update.url")),n=this.ghostPaths.url.api("identities")
2197
+ this.ajax.request(n).then((n=>{const i=n?.identities?.[0]?.token
2198
+ t.searchParams.append("jwt",i),e.location.href=t.toString()}))}},g=T(b.prototype,"ajax",[t],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),f=T(b.prototype,"billing",[n],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),v=T(b.prototype,"config",[i],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),y=T(b.prototype,"dropdown",[r],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),w=T(b.prototype,"feature",[a],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),E=T(b.prototype,"ghostPaths",[s],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),k=T(b.prototype,"router",[o],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),P=T(b.prototype,"session",[l],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),O=T(b.prototype,"settings",[u],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),j=T(b.prototype,"ui",[d],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),_=T(b.prototype,"showUpdateLink",[c],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),z=T(b.prototype,"showBilling",[p],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),T(b.prototype,"showNavMenu",[m],Object.getOwnPropertyDescriptor(b.prototype,"showNavMenu"),b.prototype),T(b.prototype,"openUpdateTab",[h],Object.getOwnPropertyDescriptor(b.prototype,"openUpdateTab"),b.prototype),b)
2199
+ e.default=x})),define("ghost-admin/controllers/billing",["exports"],(function(e){var t,n,i
2196
2200
  function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
2197
2201
  let a=(t=Ember.computed.alias("model"),n=class extends Ember.Controller{constructor(){var e,t,n,a
2198
2202
  super(...arguments),r(this,"queryParams",["action"]),r(this,"action",null),e=this,t="guid",a=this,(n=i)&&Object.defineProperty(e,t,{enumerable:n.enumerable,configurable:n.configurable,writable:n.writable,value:n.initializer?n.initializer.call(a):void 0})}},s=n.prototype,o="guid",l=[t],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),i=c,n)
@@ -3781,7 +3785,7 @@ try{return JSON.parse(e)||{}}catch(t){return{}}}get accessibility(){let e=this.g
3781
3785
  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){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i=n.user?"accessibility":"labs",r=this.get(n.user?"_user":"settings"),a=this.get(i)
3782
3786
  return Ember.set(a,e,t),n.requires&&!0===t&&n.requires.forEach((e=>{Ember.set(a,e,!0)})),r.set(i,JSON.stringify(a)),r.save().then((()=>(this.notifyPropertyChange(i),this.get(`${i}.${e}`)))).catch((t=>{if(r.rollbackAttributes(),this.notifyPropertyChange(i),!t)throw new Ember.Error(`Validation of the feature service ${n.user?"user":"settings"} model failed when updating ${i}.`)
3783
3787
  return this.notifications.showAPIError(t),this.get(`${i}.${e}`)}))}_setAdminTheme(e){let n=e
3784
- return void 0===n&&(n=e||this.nightShift),this.lazyLoader.loadStyle("dark","assets/ghost-dark-155e039c0d991b7af75dea8cd3846b11.css",!0).then((()=>{(0,t.default)("link[title=dark]").prop("disabled",!n)})).catch((()=>{(0,t.default)("link[title=dark]").prop("disabled",!0)}))}},S=X(z.prototype,"store",[n],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),T=X(z.prototype,"config",[i],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),x=X(z.prototype,"session",[r],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),M=X(z.prototype,"settings",[a],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),C=X(z.prototype,"notifications",[s],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),D=X(z.prototype,"lazyLoader",[o],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),A=X(z.prototype,"emailAnalytics",[l],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),I=X(z.prototype,"nightShift",[u],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),L=X(z.prototype,"multipleProducts",[d],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),R=X(z.prototype,"dashboardV5",[c],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),N=X(z.prototype,"oauthLogin",[p],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),U=X(z.prototype,"membersActivity",[m],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),F=X(z.prototype,"urlCache",[h],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),B=X(z.prototype,"beforeAfterCard",[b],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),V=X(z.prototype,"multipleNewsletters",[g],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),H=X(z.prototype,"multipleNewslettersUI",[f],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),q=X(z.prototype,"tweetGridCard",[v],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),$=X(z.prototype,"improvedOnboarding",[y],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Y=X(z.prototype,"tierWelcomePages",[w],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),W=X(z.prototype,"tierName",[E],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),K=X(z.prototype,"membersTableStatus",[k],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),G=X(z.prototype,"selectablePortalLinks",[P],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Z=X(z.prototype,"publishingFlow",[O],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),X(z.prototype,"labs",[j],Object.getOwnPropertyDescriptor(z.prototype,"labs"),z.prototype),X(z.prototype,"accessibility",[_],Object.getOwnPropertyDescriptor(z.prototype,"accessibility"),z.prototype),z)
3788
+ return void 0===n&&(n=e||this.nightShift),this.lazyLoader.loadStyle("dark","assets/ghost-dark-c94ae212747200ca4bafc37cfb0714d8.css",!0).then((()=>{(0,t.default)("link[title=dark]").prop("disabled",!n)})).catch((()=>{(0,t.default)("link[title=dark]").prop("disabled",!0)}))}},S=X(z.prototype,"store",[n],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),T=X(z.prototype,"config",[i],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),x=X(z.prototype,"session",[r],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),M=X(z.prototype,"settings",[a],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),C=X(z.prototype,"notifications",[s],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),D=X(z.prototype,"lazyLoader",[o],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),A=X(z.prototype,"emailAnalytics",[l],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),I=X(z.prototype,"nightShift",[u],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),L=X(z.prototype,"multipleProducts",[d],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),R=X(z.prototype,"dashboardV5",[c],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),N=X(z.prototype,"oauthLogin",[p],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),U=X(z.prototype,"membersActivity",[m],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),F=X(z.prototype,"urlCache",[h],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),B=X(z.prototype,"beforeAfterCard",[b],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),V=X(z.prototype,"multipleNewsletters",[g],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),H=X(z.prototype,"multipleNewslettersUI",[f],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),q=X(z.prototype,"tweetGridCard",[v],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),$=X(z.prototype,"improvedOnboarding",[y],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Y=X(z.prototype,"tierWelcomePages",[w],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),W=X(z.prototype,"tierName",[E],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),K=X(z.prototype,"membersTableStatus",[k],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),G=X(z.prototype,"selectablePortalLinks",[P],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),Z=X(z.prototype,"publishingFlow",[O],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),X(z.prototype,"labs",[j],Object.getOwnPropertyDescriptor(z.prototype,"labs"),z.prototype),X(z.prototype,"accessibility",[_],Object.getOwnPropertyDescriptor(z.prototype,"accessibility"),z.prototype),z)
3785
3789
  e.default=ee})),define("ghost-admin/services/frontend",["exports","fetch","validator"],(function(e,t,n){var i,r,a,s,o,l,u
3786
3790
  function d(e,t,n,i){n&&Object.defineProperty(e,t,{enumerable:n.enumerable,configurable:n.configurable,writable:n.writable,value:n.initializer?n.initializer.call(i):void 0})}function c(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function p(e,t,n,i,r){var a={}
3787
3791
  return Object.keys(i).forEach((function(e){a[e]=i[e]})),a.enumerable=!!a.enumerable,a.configurable=!!a.configurable,("value"in a||a.initializer)&&(a.writable=!0),a=n.slice().reverse().reduce((function(n,i){return i(e,t,n)||n}),a),r&&void 0!==a.initializer&&(a.value=a.initializer?a.initializer.call(r):void 0,a.initializer=void 0),void 0===a.initializer&&(Object.defineProperty(e,t,a),a=null),a}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
@@ -4048,7 +4052,7 @@ var t=Ember.HTMLBars.template({id:"4hzreQ8R",block:'{"symbols":[],"statements":[
4048
4052
  e.default=t})),define("ghost-admin/templates/application-error",["exports"],(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
4049
4053
  var t=Ember.HTMLBars.template({id:"BCoM6owz",block:'{"symbols":[],"statements":[[10,"div"],[14,0,"gh-view"],[12],[2,"\\n "],[10,"section"],[14,0,"error-content error-404 js-error-container"],[12],[2,"\\n "],[10,"section"],[14,0,"error-details"],[12],[2,"\\n "],[10,"img"],[14,0,"error-ghost"],[14,"src","assets/img/404-ghost@2x-34c1119ed15cc3ea71e4406f80c8e810.png"],[14,"srcset","assets/img/404-ghost-e112dbfadde79cf30dbca8e8cfe7a21a.png 1x, assets/img/404-ghost@2x-34c1119ed15cc3ea71e4406f80c8e810.png 2x"],[12],[13],[2,"\\n "],[10,"section"],[14,0,"error-message"],[12],[2,"\\n "],[10,"h1"],[14,0,"error-code"],[12],[1,[32,0,["model","code"]]],[13],[2,"\\n "],[10,"h2"],[14,0,"error-description"],[12],[2,"\\n "],[1,[30,[36,0],[[32,0,["model","payload","errors","firstObject","message"]],[32,0,["model","message"]]],null]],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n "],[13],[2,"\\n"],[13],[2,"\\n\\n"],[8,"ember-load-remover",[],[[],[]],null],[2,"\\n"]],"hasEval":false,"upvars":["or"]}',moduleName:"ghost-admin/templates/application-error.hbs"})
4050
4054
  e.default=t})),define("ghost-admin/templates/application",["exports"],(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
4051
- var t=Ember.HTMLBars.template({id:"E/QGpekN",block:'{"symbols":[],"statements":[[8,"gh-app",[],[[],[]],[["default"],[{"statements":[[2,"\\n "],[8,"gh-skip-link",[],[["@anchor"],[".gh-main"]],[["default"],[{"statements":[[2,"Skip to main content"]],"parameters":[]}]]],[2,"\\n\\n "],[8,"gh-alerts",[],[[],[]],null],[2,"\\n\\n "],[10,"div"],[15,0,[31,["gh-viewport ",[30,[36,1],[[32,0,["ui","showMobileMenu"]],"mobile-menu-expanded"],null]]]],[12],[2,"\\n"],[6,[37,1],[[32,0,["showNavMenu"]]],null,[["default"],[{"statements":[[2," "],[8,"gh-nav-menu",[],[[],[]],null],[2,"\\n"]],"parameters":[]}]]],[2,"\\n "],[10,"main"],[15,0,[31,["gh-main ",[32,0,["ui","mainClass"]]]]],[12],[2,"\\n "],[1,[30,[36,3],[[30,[36,2],null,null]],null]],[2,"\\n\\n"],[6,[37,1],[[32,0,["showBilling"]]],null,[["default"],[{"statements":[[2," "],[8,"gh-billing-modal",[],[["@billingWindowOpen"],[[32,0,["billing","billingWindowOpen"]]]],null],[2,"\\n"]],"parameters":[]}]]],[2,"\\n "],[13],[2,"\\n\\n "],[8,"gh-notifications",[],[[],[]],null],[2,"\\n\\n "],[8,"gh-content-cover",[],[[],[]],null],[2,"\\n\\n"],[6,[37,4],[[32,0,["session","user","isContributor"]]],null,[["default"],[{"statements":[[2," "],[8,"gh-mobile-nav-bar",[],[[],[]],null],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n\\n"],[6,[37,1],[[32,0,["settings","accentColor"]]],null,[["default"],[{"statements":[[2," "],[10,"style"],[12],[2,"\\n :root {\\n --accent-color: "],[1,[32,0,["settings","accentColor"]]],[2,";\\n --adjusted-accent-color: "],[1,[32,0,["ui","adjustedAccentColor"]]],[2,";\\n }\\n .koenig-editor__editor a:not([class]) {\\n color: var(--adjusted-accent-color);\\n }\\n .koenig-editor__editor blockquote {\\n border-left: 0.25rem solid var(--adjusted-accent-color);\\n }\\n\\n .gh-btn-accent {\\n background-color: var(--adjusted-accent-color);\\n color: #fff;\\n }\\n\\n .gh-btn-accent:hover {\\n background-color: "],[1,[30,[36,0],[[32,0,["ui","adjustedAccentColor"]]],[["l"],[-15]]]],[2,";\\n color: #fff;\\n }\\n\\n "],[13],[2,"\\n"]],"parameters":[]}]]]],"parameters":[]}]]],[2,"\\n\\n"],[10,"div"],[14,1,"unsplash-selector-wormhole"],[12],[13],[2,"\\n\\n"],[8,"epm-modal-container",[],[[],[]],null],[2,"\\n"],[8,"ember-load-remover",[],[[],[]],null]],"hasEval":false,"upvars":["hex-adjust","if","-outlet","component","unless"]}',moduleName:"ghost-admin/templates/application.hbs"})
4055
+ var t=Ember.HTMLBars.template({id:"YtZI66Ec",block:'{"symbols":[],"statements":[[8,"gh-app",[],[[],[]],[["default"],[{"statements":[[2,"\\n "],[8,"gh-skip-link",[],[["@anchor"],[".gh-main"]],[["default"],[{"statements":[[2,"Skip to main content"]],"parameters":[]}]]],[2,"\\n\\n"],[6,[37,3],[[30,[36,2],[[32,0,["session","user","isOwnerOnly"]],[32,0,["showUpdateLink"]]],null]],null,[["default"],[{"statements":[[2," "],[10,"aside"],[14,0,"gh-update-banner"],[12],[2,"\\n "],[10,"div"],[14,0,"gh-alert-content"],[12],[2,"\\n Your site is ready for a major update!\\n "],[13],[2,"\\n "],[11,"a"],[24,6,"#"],[4,[38,1],["click",[32,0,["openUpdateTab"]]],null],[12],[2,"Update to Ghost 5.0 →"],[13],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]}]]],[2,"\\n "],[8,"gh-alerts",[],[[],[]],null],[2,"\\n\\n "],[10,"div"],[15,0,[31,["gh-viewport ",[30,[36,3],[[32,0,["ui","showMobileMenu"]],"mobile-menu-expanded"],null]]]],[12],[2,"\\n"],[6,[37,3],[[32,0,["showNavMenu"]]],null,[["default"],[{"statements":[[2," "],[8,"gh-nav-menu",[],[[],[]],null],[2,"\\n"]],"parameters":[]}]]],[2,"\\n "],[10,"main"],[15,0,[31,["gh-main ",[32,0,["ui","mainClass"]]]]],[12],[2,"\\n "],[1,[30,[36,5],[[30,[36,4],null,null]],null]],[2,"\\n\\n"],[6,[37,3],[[32,0,["showBilling"]]],null,[["default"],[{"statements":[[2," "],[8,"gh-billing-modal",[],[["@billingWindowOpen"],[[32,0,["billing","billingWindowOpen"]]]],null],[2,"\\n"]],"parameters":[]}]]],[2,"\\n "],[13],[2,"\\n\\n "],[8,"gh-notifications",[],[[],[]],null],[2,"\\n\\n "],[8,"gh-content-cover",[],[[],[]],null],[2,"\\n\\n"],[6,[37,6],[[32,0,["session","user","isContributor"]]],null,[["default"],[{"statements":[[2," "],[8,"gh-mobile-nav-bar",[],[[],[]],null],[2,"\\n"]],"parameters":[]}]]],[2," "],[13],[2,"\\n\\n"],[6,[37,3],[[32,0,["settings","accentColor"]]],null,[["default"],[{"statements":[[2," "],[10,"style"],[12],[2,"\\n :root {\\n --accent-color: "],[1,[32,0,["settings","accentColor"]]],[2,";\\n --adjusted-accent-color: "],[1,[32,0,["ui","adjustedAccentColor"]]],[2,";\\n }\\n .koenig-editor__editor a:not([class]) {\\n color: var(--adjusted-accent-color);\\n }\\n .koenig-editor__editor blockquote {\\n border-left: 0.25rem solid var(--adjusted-accent-color);\\n }\\n\\n .gh-btn-accent {\\n background-color: var(--adjusted-accent-color);\\n color: #fff;\\n }\\n\\n .gh-btn-accent:hover {\\n background-color: "],[1,[30,[36,0],[[32,0,["ui","adjustedAccentColor"]]],[["l"],[-15]]]],[2,";\\n color: #fff;\\n }\\n\\n "],[13],[2,"\\n"]],"parameters":[]}]]]],"parameters":[]}]]],[2,"\\n\\n"],[10,"div"],[14,1,"unsplash-selector-wormhole"],[12],[13],[2,"\\n\\n"],[8,"epm-modal-container",[],[[],[]],null],[2,"\\n"],[8,"ember-load-remover",[],[[],[]],null]],"hasEval":false,"upvars":["hex-adjust","on","and","if","-outlet","component","unless"]}',moduleName:"ghost-admin/templates/application.hbs"})
4052
4056
  e.default=t}))
4053
4057
  define("ghost-admin/templates/components/basic-dropdown-content",["exports","ember-basic-dropdown/templates/components/basic-dropdown-content"],(function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.default}})})),define("ghost-admin/templates/components/basic-dropdown-trigger",["exports","ember-basic-dropdown/templates/components/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/templates/components/basic-dropdown",["exports","ember-basic-dropdown/templates/components/basic-dropdown"],(function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.default}})})),define("ghost-admin/templates/components/draggable-object-target",["exports"],(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
4054
4058
  var t=Ember.HTMLBars.template({id:"ds+gecsL",block:'{"symbols":["&default"],"statements":[[6,[37,2],[[35,1]],null,[["default","else"],[{"statements":[[2," "],[11,"a"],[24,6,"#"],[4,[38,0],[[32,0],"acceptForDrop"],null],[12],[2,"\\n "],[18,1,null],[2,"\\n "],[13],[2,"\\n"]],"parameters":[]},{"statements":[[2," "],[18,1,null],[2,"\\n"]],"parameters":[]}]]]],"hasEval":false,"upvars":["action","enableClicking","if"]}',moduleName:"ghost-admin/templates/components/draggable-object-target.hbs"})
@@ -4352,4 +4356,4 @@ var t=Ember.Component.extend({})
4352
4356
  e.default=t})),define("ghost-admin/config/environment",[],(function(){try{var e="ghost-admin/config/environment",t=document.querySelector('meta[name="'+e+'"]').getAttribute("content"),n={default:JSON.parse(decodeURIComponent(t))}
4353
4357
  return Object.defineProperty(n,"__esModule",{value:!0}),n}catch(i){throw new Error('Could not read config from meta tag with name "'+e+'".')}})),runningTests||require("ghost-admin/app").default.create({version:"4.47",name:"ghost-admin"})
4354
4358
 
4355
- //# sourceMappingURL=ghost.min-d8c670eb115c0acc183584e9d1dfd25b.map
4359
+ //# sourceMappingURL=ghost.min-a2a47979b0b61d15a3914042a7b1cd20.map
@@ -54,7 +54,7 @@ const getReplyToAddress = (fromAddress, replyAddressOption) => {
54
54
  * @param {ValidAPIVersion} options.apiVersion - api version to be used when serializing email data
55
55
  */
56
56
  const getEmailData = async (postModel, options) => {
57
- let newsletter = await postModel.related('newsletter').fetch();
57
+ let newsletter = postModel.relations.newsletter ? postModel.relations.newsletter : (await postModel.related('newsletter').fetch());
58
58
  if (!newsletter) {
59
59
  newsletter = await models.Newsletter.getDefaultNewsletter();
60
60
  }
@@ -216,7 +216,7 @@ const addEmail = async (postModel, options) => {
216
216
  const knexOptions = _.pick(options, ['transacting', 'forUpdate']);
217
217
  const filterOptions = {...knexOptions, limit: 1};
218
218
 
219
- const newsletter = await postModel.related('newsletter').fetch({require: true, ..._.pick(options, ['transacting'])});
219
+ const newsletter = postModel.relations.newsletter ? postModel.relations.newsletter : (await postModel.related('newsletter').fetch({require: true, ..._.pick(options, ['transacting'])}));
220
220
 
221
221
  const emailRecipientFilter = postModel.get('email_recipient_filter');
222
222
  filterOptions.filter = transformEmailRecipientFilter(emailRecipientFilter, {errorProperty: 'email_recipient_filter'}, newsletter);
@@ -428,7 +428,7 @@ async function getEmailMemberRows({emailModel, memberSegment, options}) {
428
428
 
429
429
  let newsletter = null;
430
430
  if (labsService.isSet('multipleNewsletters')) {
431
- newsletter = await emailModel.related('newsletter').fetch(Object.assign({}, {require: false}, _.pick(options, ['transacting'])));
431
+ newsletter = await emailModel.relations.newsletter ? emailModel.relations.newsletter : (emailModel.related('newsletter').fetch(Object.assign({}, {require: false}, _.pick(options, ['transacting']))));
432
432
  }
433
433
  const recipientFilter = transformEmailRecipientFilter(emailModel.get('recipient_filter'), {errorProperty: 'recipient_filter'}, newsletter);
434
434
  filterOptions.filter = recipientFilter;
@@ -22,8 +22,8 @@ class PostsService {
22
22
 
23
23
  // Make sure the newsletter_id is matching an active newsletter
24
24
  if (frame.options.newsletter_id) {
25
- const newsletter = await this.models.Newsletter.findOne({id: frame.options.newsletter_id, filter: 'status:active'}, {transacting: frame.options.transacting});
26
- if (!newsletter) {
25
+ const newsletter = await this.models.Newsletter.findOne({id: frame.options.newsletter_id}, {transacting: frame.options.transacting});
26
+ if (!newsletter || newsletter.get('status') !== 'active') {
27
27
  throw new BadRequestError({
28
28
  message: messages.invalidNewsletterId
29
29
  });
@@ -38,7 +38,7 @@
38
38
 
39
39
 
40
40
  <link rel="stylesheet" href="assets/vendor.min-ba66b98f7c24fa40e061c7ffc94f4e23.css">
41
- <link rel="stylesheet" href="assets/ghost.min-bd8cd0185fd5dfc8291502f801e443e6.css" title="light">
41
+ <link rel="stylesheet" href="assets/ghost.min-4084931bc22e794fe3722139050a80b3.css" title="light">
42
42
 
43
43
 
44
44
 
@@ -57,7 +57,7 @@
57
57
 
58
58
 
59
59
  <script src="assets/vendor.min-97fd438f4772c5ec6bb30ad779b8530e.js"></script>
60
- <script src="assets/ghost.min-d8c670eb115c0acc183584e9d1dfd25b.js"></script>
60
+ <script src="assets/ghost.min-a2a47979b0b61d15a3914042a7b1cd20.js"></script>
61
61
 
62
62
  </body>
63
63
  </html>
@@ -38,7 +38,7 @@
38
38
 
39
39
 
40
40
  <link rel="stylesheet" href="assets/vendor.min-ba66b98f7c24fa40e061c7ffc94f4e23.css">
41
- <link rel="stylesheet" href="assets/ghost.min-bd8cd0185fd5dfc8291502f801e443e6.css" title="light">
41
+ <link rel="stylesheet" href="assets/ghost.min-4084931bc22e794fe3722139050a80b3.css" title="light">
42
42
 
43
43
 
44
44
 
@@ -57,7 +57,7 @@
57
57
 
58
58
 
59
59
  <script src="assets/vendor.min-97fd438f4772c5ec6bb30ad779b8530e.js"></script>
60
- <script src="assets/ghost.min-d8c670eb115c0acc183584e9d1dfd25b.js"></script>
60
+ <script src="assets/ghost.min-a2a47979b0b61d15a3914042a7b1cd20.js"></script>
61
61
 
62
62
  </body>
63
63
  </html>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ghost",
3
- "version": "4.47.2",
3
+ "version": "4.47.3",
4
4
  "description": "The professional publishing platform",
5
5
  "author": "Ghost Foundation",
6
6
  "homepage": "https://ghost.org",